What we learned ...
Kyle Orton has a lot of work to do: Reports that Orton has struggled in Broncos training camp were backed up by a shaky performance against the 49ers. Orton completed six of his first seven passes before throwing a red-zone interception to Nate Clements. Orton also had passes intercepted on each of the Broncos' next two drives. His counterpart, Chris Simms, was much steadier behind center, completing 11 of 17 passes for 142 yards and both of Denver's touchdowns.
The 49ers' QB race is too close to call: Neither Shaun Hill nor Alex Smith did much to distinguish themselves, but they didn't make too many mistakes either. Hill started, but he played only one series and completed both of his pass attempts for 41 yards on the 49ers' first scoring drive. Smith played the remainder of the first half, but his only scoring drive consisted of a 3-yard touchdown pass to Brit Miller after the 49ers' defense intercepted an Orton pass.
It might be Miller's time: The undrafted rookie played linebacker at Illinois, but he's trying to make the 49ers' roster as a fullback. He's off to a good start. The 6-foot, 243-pound Miller caught two passes -- both for touchdowns. Miller followed his second-quarter touchdown catch from Smith with a 40-yard catch-and-run with a Damon Huard pass in the fourth quarter.