Here is an example of Ted Ersek's RootSearch package that you can get from the Wolfram Library Archive. I did slightly modify his package so it's in an Ersek folder in my Applications folder. And I think I may have added several Quiet statements.
<< Ersek`RootSearch`
f1[x_] := Sin[4 x] - (1 + x)/8;
Plot[f1[x], {x, -13, 12}]
RootSearch[f1[x] == 0, {x, -13, 12}]
giving:
{{x -> -8.34829}, {x -> -8.12893}, {x -> -6.86295}, {x -> -6.47147},
{x -> -5.35392}, {x -> -4.83746}, {x -> -3.83638}, {x -> -3.21162},
{x -> -2.31492}, {x -> -1.58923}, {x -> -0.791902}, {x -> 0.0323512},
{x -> 0.730877}, {x -> 1.65538}, {x -> 2.25155}, {x -> 3.28282},
{x -> 3.76739}, {x -> 4.92069}, {x -> 5.27249}, {x -> 6.59611}, {x -> 6.73982}}
Ted's code will find all the roots within a specified range of the parameter. It even finds roots where the function just touches zero but doesn't cross it. Mathematica has many ways of finding roots, some of them based of algebraic methods or Solve or Reduce. But it lacks a simple 1-dimensional numerical search. Ted's program is very good at that.