Fans who have been reading about Brian Hoyer’s training-camp heroics may be wondering what the fuss is about.
The 49ers’ starting quarterback, who has looked masterful on the practice field, including during mid-week scrimmages with the Denver Broncos, seemed almost clownish on Saturday, especially during back-to-back snaps in which he tripped over his own feet on one play and then lost his grip on the ball as he was attempting a pass on the other.
“I was getting ready to rip it to (Jeremy) Kerley,” Hoyer said afterward, a sheepish look on his face. “... Then I went to throw it, and I think even my arm was moving forward. And I’m looking around and it’s, ‘What happened to the ball?’”
The Broncos recovered the fumble and turned it into a field goal. On the ensuing series, Hoyer’s over-the-middle pass to Marquise Goodwin was slightly behind the receiver, who couldn’t control the ball and allowed cornerback Chris Lewis-Harris to wrestle it free for an interception.
Never miss a local story.
"Marquise has to catch that ball,” Kyle Shanahan said afterward. “He threw it to him.”
That, too, turned into three points for the Broncos. Backup running back Tim Hightower lost the ball on the 49ers’ next offensive possession, meaning four first-half series from San Francisco’s starters ended with: punt, fumble, interception, fumble.
“Five turnovers in the game, four turnovers in the first half, struggling to run the ball there, too -- it’s really tough to win in that situation,” said Shanahan, who for the first time since taking over as 49ers head coach showed a glimmer of frustration.
Adding to San Francisco’s dud: The Broncos began the game without seven defensive starters, including Super Bowl MVP Von Miller. The four regulars who did begin the game were on the sideline early in the second quarter.
Hoyer finished the half a respectable 8-11 for 89 yards, but the interception left him with a 58.5 passer rating. He did connect three times for 44 yards with Goodwin, whom the Broncos had trouble covering in Wednesday’s joint practice. Fullback Kyle Juszczyk, who promises to be a big part of Shanahan’s offense, had his first catch of the preseason, one that went 21 yards and which Juszczyk punctuated by bulldozing a Broncos linebacker.
Rookie starter -- Rookie Lorenzo Jerome made his second straight start at free safety, stopping a short pass play for a 1-yard gain on the game’s first play and then making a tackle at the goal line on Denver’s second series.
Jerome, who played at St. Francis University, has been substituting for Jimmie Ward, who is expected to return from a hamstring injury in the upcoming week. He’s one of several undrafted players who have made an impression this summer and, of that group, he has the best chance of landing a spot on the 53-man roster.
Ward, DeForest Buckner (ankle) and Joshua Garnett (knee) are would-be starters who did not play. Ward and Buckner are expected to be ready for the Sept. 10 opener against the Carolina Panthers; Garnett could take a little longer to come back from surgery earlier this month.
Defensive ends Aaron Lynch (ankle) and Ronald Blair (groin) also did not play, nor did receiver Aaron Burbridge (hamstring) or cornerback Will Redmond (ankle).
Harold over Brooks -- Eli Harold, not Ahmad Brooks, started Saturday’s game at strong-side linebacker. Brooks was perfectly healthy and entered the game with the second-string defense.
Afterward, Shanahan said the two are competing for the starting spot. “We gave Ahmad the first game and then Eli got this one,” he said.
Brooks has taken the lion’s share of the first-team repetitions throughout the offseason and training camp. He finished with a quarterback hit; Harold did not appear on the post-game stat sheet.
Familiar faces -- The 49ers’ team captains for Saturday’s game -- guard Zane Beadles, running back Kapri Bibbs, defensive end Elvis Dumervil and linebacker Dekoda Watson -- had a theme: They all played for Denver earlier in their career.
Bibbs and Watson were with the Broncos last season. Beadles, who started the game at left guard, was there from 2010-13, and Dumervil played in Denver from 2006-12.
On the other side, Broncos tight ends coach Geep Chryst served as San Francisco’s offensive coordinator in 2015. Their head coach, Vance Joseph, was a 49ers assistant from 2005-10.
Et cetera -- Last week against the Chiefs, the 49ers were victimized by a blocked punt and a blocked field goal. On Saturday, they had a turnover on Denver’s first punt of the game when it was ruled that the ball touched Jaquiski Tartt as he was running downfield. The unit made up for it in the second half when rookie receiver Victor Bolden caught a kickoff in his own end zone and then ran 104 yards for a touchdown.
* Matt Breida, who was the second 49ers running back to enter the game last week, did not play against the Broncos. Shanahan said he wanted to give the others who played sparingly or not at all last week -- Carlos Hyde, Hightower and Kapri Bibbs -- more action. The 49ers had only 37 yards rushing Saturday.
* Defensive end Pita Taumoepenu, who had a second-half sack, had the wind knocked out of him but returned to the game. Tight end Vance McDonald had an injury but it did not appear serious, Shanahan said.
* Unlike last year when prominent 49ers and Broncos kneeled during the anthem, all the players on both sides were on their feet Saturday.