Marmol took his first loss and his ERA skyrocketed to 1.67. He had pitched 13 straight scoreless innings.
"It was one mistake," Marmol said. "I'm not perfect."
Neither was the other Carlos, who made more than one mistake as he sputtered to his shortest outing of the season. Zambrano gave up five runs (four earned) in four-plus innings, allowing seven hits and walking three. In a familiar sign of frustration, he broke a bat over his knee after striking out in the fourth.
"It was rough today," he said. "It was obviously not a good game."
Soriano hasn't had a bad game too often lately. His slow start now a distant memory, the Cubs' $136 million man is hitting .541 (20-for-37) during the current homestand, with seven homers, four doubles and 15 RBIs. And that's with one start off.
"I'm very comfortable with myself," said Soriano, who was pilloried around town when he went on the disabled list with a calf strain and a sub-.200 average in mid-April. "I have a pretty strong heart and mind, so I knew when I was going bad that it's a long season. I knew I wanted to come back strong and help the team."
Soriano came into the Arizona series last week hitting .188, but that average is now up to .295. He's sharing the team lead in homers with Derrek Lee at 10, and he has 25 RBIs from the leadoff spot.
Soriano's single in the three-run second scored two runs, though he was only credited with one RBI because of a fielding error by left fielder Jason Bay. He admired his first homer, a shot off Zach Duke in the fourth, as it landed in the left-field bleachers.
"It's fun to watch," Lee said. "I don't know if I've ever seen anyone as hot as he is. He's carrying us right now."
Soriano picked up his fifth hit with two outs in the ninth and the Cubs trailing, 7-5. He doubled to left-center and scored on Ryan Theriot's single to right. Lee then jumped on Pirates closer Matt Capps' first pitch, but it settled into Xavier Nady's glove at the warning track in right.
"With us swinging the bats the way we are, we knew we had a chance to come back, especially with Soriano getting a chance to hit," Lee said. "But I wasn't able get it done right there."
There was a season-high 41,686 fans crammed into the sun-kissed stadium, most of whom gave Soriano a curtain call after his game-tying homer. And few, if any, are calling for Cubs manager Lou Piniella to move him down in the lineup. Soriano is showing why he hits better when he's comfortable at the top of the order.
"Oh man, I want to have the most at-bats I can because of the way I feel right now," Soriano said. "I want to have a lot of at-bats."
Leading, 3-1, in the third, the Cubs missed another chance to score when Mark DeRosa doubled to left and Geovany Soto was nailed trying to slide at the plate on a relay throw from shortstop Brian Bixler. Piniella came out to argue but later relented.
"The catcher made a good play, the umpire made a correct call," Piniella said. "I don't think [Soto's] foot ever got to home plate."
Zambrano struck out in the fourth just before Soriano's home run, and after running to first on a dropped third strike, he snapped his bat over his right knee. Piniella, who was not happy about the incident, wondered if he took that frustration back with him on the mound in the next inning, when he gave up three runs and was pulled.
"It makes you wonder," he said. "I hope not."
Zambrano walked Duke to start the fifth and gave up a single to Freddy Sanchez. McLouth scored Duke with a single and Bay walked. Then struggling cleanup hitter Adam LaRoche scored McLouth with another single, ending Zambrano's day. Nady hit a sac fly to right off Michael Wuertz to put the Pirates up, 5-4.
"Obviously, I was behind in the count too much in the last inning," Zambrano said. "This is the big leagues. And when you're behind in the count and you don't have your best stuff, you're not going to get it done."