Their season careening down a disastrous path, the Rockies desperately needed someone to pull them out of the ditch. That someone was first baseman Justin Morneau, who is making a strong bid for a spot in the All-Star Game next month.

Conjuring up the sweet swing that made him the American League MVP in 2006, Morneau went 3-for-5 with a season-high six RBIs, leading the Rockies to a 10-5 victory over the St. Louis Cardinals on Tuesday night at Coors Field. The victory snapped the Rockies' seven-game losing streak and gave them just their fourth victory in their past 15 games at home.

"This was obviously a game we needed," Morneau said. "It gives us a chance to win the series tomorrow, so that's huge. We obviously haven't been playing that well, but you can't go back in time and you can't change things.

"We haven't taken advantage of opportunities. We have had some chances (tonight), but then we came through to win the ballgame."

Morneau's three-run homer to right-center in the fourth off Nick Greenwood put the Rockies in front 6-4. His bases-loaded single to right off lefty Sam Freeman in the seventh gave the Rockies an 8-5 comfort zone.