Jon Lester and Jeff Locke each pitched four solid innings. Steven Wright still has some fine-tuning ahead.
Lester, projected to start for the Red Sox on opening day, gave up one run Wednesday in Boston's 9-3 loss to the Pittsburgh Pirates.
Lester allowed two hits and three walks while striking out three.
"Good four innings of work today," Boston manager John Farrell said. "I thought he used his curveball a little more today than he had in the previous two outings, part by design, part by some of the situations that arose. Might not have been as sharp as his last time out. But still, 52 pitches in four innings, a good day of work."
Locke faced the Red Sox for the second straight start. He permitted one run on three hits and two walks with three strikeouts.
"Today was kind of just like last week, but it went a lot better," the lefty said. "I was able to throw more pitches in the strike zone and keep the ball down a lot better. There were some pretty well-stroked balls, but that's just a part of baseball.
"For me, personally, with it being spring training and you're preparing yourself for the season, it was definitely a step in the right direction today. I mixed up my pitches and I was able to get quality work from the windup and the stretch," he said.
Manager Clint Hurdle was satisfied.
"The fact that he made pitches, he stayed away from the big inning, they scratched him for the one run, no more damage than that, he went out there four times, it was a good step forward for him," Hurdle said.
Red Sox knuckleballer Steven Wright permitted five runs on five hits and three walks in two innings. He was watched by former Boston knuckleballer Tim Wakefield, who started out as an infielder in the Pirates' organization before becoming a pitcher.
Wright realized during his outing he was having a problem with his mechanics, something he was able to discuss with Wakefield as soon as he came out.
"Working with Wake has definitely helped," Wright said. "I was talking to him now about the mechanical issues I was having. It's just trying to stay within and not trying got throw it hard and just trying to throw it right. Whatever the velocity is, it is what it is."
Andrew McCutchen drove in two runs for the Pirates.
NOTES: OF Ryan Westmoreland, a former top prospect with the Red Sox whose career was interrupted by twice undergoing brain surgery, announced his retirement at age 22. Westmoreland was diagnosed with a cavernous malformation of the brain during spring training in 2010. He was a fifth-round draft pick in 2008. In his only pro season, he hit .296 with seven homers, 35 RBIs and 19 steals in 60 games in Class A in 2009. ... Red Sox DH David Ortiz, making his way back from an Achilles strain that limited him to 90 games last season, had a scheduled off-day from running. There is no schedule yet for him to get into a game. ... Boston RHP Daniel Bard is scheduled to get into Thursday's game against the Twins. He has not pitched in a game since Feb. 25, working on his mechanics. ... Boston CF Jacoby Ellsbury was out of camp with illness. ... Jensen Millar, brother of former Red Sox 1B Kevin Millar, handled the public address duties for the game. He is a finalist for the PA job at Fenway Park. ... The Pirates used a lineup that was fairly representative of what they will have opening day, with at least seven starters. "We think it's time," Hurdle said. "Spring training is a little more complicated than when I played. Now we have night games, day games after night games, more split-squad games. But we're definitely going to start getting our guys out there that we need to get more reps from."