Bruce Ruffin gave up six hits in eight innings and the Philadelphia Phillies defeated the Houston Astros and Nolan Ryan, 2-1, last night in Philadelphia before 56,825, the largest crowd in the National League this season.

Ryan (4-9) has lost his last four starts. He allowed seven hits in seven innings and struck out 10 to surpass J.R. Richard as the Astros' all-time strikeout leader with 1,502.

Before the game, Houston shortstop Dickie Thon, frustrated by his slow comeback from a beaning three years ago, left the Astros and said he would not play for the remainder of the season.

Expos 2, Padres 1:

Floyd Youmans gave up four hits over 6 2/3 innings and drove in two runs in his first appearance in nearly a month to lead Montreal to a victory at home over San Diego.

Youmans (5-3) struck out six and walked two. His last start was June 9 when he was forced to leave the game because of a strained back muscle.

Reds 8, Mets 3:

In Cincinnati, Guy Hoffman pitched six innings and hit a tie breaking single and Bo Diaz homered and drove in four runs to lead the Reds over New York.

Hoffman (7-2) gave up five hits and earned his seventh victory in his last eight decisions. Bill Landrum pitched 1 1/3 innings for his second save.

Ron Darling (2-6) gave up five runs and seven hits in six innings. He has lost a career-high six straight decisions and not won in 14 starts since April 22.

Meantime, outfielder Mookie Wilson requested a trade because he is unhappy sharing playing time with Len Dykstra.

"I've requested to be traded because I want to play every day and it's evident to me there's no way I'll be playing regularly," Wilson said. "Given the situation, I feel it's in my best interest to play elsewhere."

Mets Manager Davey Johnson said he did not want to trade Wilson and added he was disappointed Wilson was putting himself ahead of the team.

Pirates 6, Dodgers 0:

Rick Reuschel pitched a five-hitter for his second consecutive shutout and Bobby Bonilla hit two homers and drove in five runs as Pittsburgh ended a four-game losing streak with a win at home over Fernando Valenzuela and Los Angeles.

Bonilla became the first Pittsburgh player to hit home runs from both sides of the plate in the same game. He hit a three-run homer from the right side in the third inning against Valenzuela (7-6) and a one-run homer in the seventh off Ken Howell.

Reuschel (7-4) lowered his NL-leading earned run average to 2.17 and won for the third time in his last four decisions.

Cardinals 9, Braves 1:

Jack Clark homered and drove in four runs and Bob Forsch and Ken Dayley pitched a three-hitter in St. Louis' victory in Atlanta.

Clark leads the major league with 77 runs batted in. He hit a three-run homer in the fifth inning, tying Atlanta's Dale Murphy for the NL lead at 24.

Giants 3, Cubs 1:

Jeffrey Leonard stole home, and Robby Thompson hit a two-out single to break an eighth-inning tie, leading San Francisco to a win over Chicago at Wrigley Field.

Kelly Downs (7-4) allowed one run on seven hits, striking out six in seven innings to earn the victory. Jeff Robinson earned his ninth save.