BALTIMORE, SEPT. 12 -- Ben McDonald pitched a complete-game three-hitter tonight. After trailing for seven innings, he even wound up a winner when the run-starved Baltimore Orioles scored twice in the eighth to defeat Jack Morris and the Detroit Tigers, 2-1.

If McDonald (7-4) has been given limited support by the Orioles, Morris (11-18) has grounds for a lawsuit. He has pitched three straight complete games -- all losses.

Morris was breezing with a two-hit shutout when Jeff McKnight hit his first pitch of the eighth inning just beyond right fielder John Shelby's leaping form at the 376-foot sign. It was the first major league homer for McKnight, who looked bad striking out his first two at-bats and was one for 20 since being recalled from Rochester on Sept. 1.

"I was just trying to get a hit, get on base and get something started," McKnight said. "He had been pitching me down and away, so I moved up on the plate and he put one a little up in the zone. When it left the bat, I thought it had a chance, but I didn't slow down to watch it."

Rattled a bit, Morris walked David Segui on a 3-2 pitch. After Bill Ripken bunted into a force play, Steve Finley sent a broken-bat single to right, with Ripken racing to third.

Finley moved up on a wild pitch, although Ripken had to stay at third. Then Detroit Manager Sparky Anderson elected to walk Brady Anderson, filling the bases for Cal Ripken.

Ripken sent a grounder between short and third. Shortstop Alan Trammell tried to backhand it, but it popped free. Even if he had played it perfectly, he had nothing more than a force at second, with Bill Ripken scoring.

It was Ripken's fifth hit in his last eight bases-loaded situations, after starting the season one for 17. It also marked the 36th time he has driven in the tying or go-ahead run.

The Orioles -- who had scored only once in 30 innings and had gone zero for 21 with men in scoring position -- got no more, however, as Sam Horn struck out for the second time and Mickey Tettleton grounded out to first.

"Even though we don't put runs on the board, we get opportunities," Manager Frank Robinson said. "You're always hoping you'll turn one of those opportunities into runs, and we finally did."

The Tigers, attempting to sweep the three-game series, jumped in front in the first inning. Tony Phillips walked, advanced on two infield outs and scored on Cecil Fielder's single to left-center, the 117th RBI for the major league leader.

Detroit's only other base runners came in the third and seventh innings. In the third Phillips walked with one out and reached third base on Lou Whitaker's hit-and-run single. Trammell then lined a shot at center fielder Anderson, whose throw on the fly nailed Phillips at the plate.

Fielder led off the seventh with a single into the left field corner and took second on a one-out walk to Gary Ward. But McDonald, who walked three and struck out seven, induced Shelby and Mike Heath to loft fly balls and he wound up retiring the last eight Tigers.

"It was an outstanding pitching effort by McDonald," Robinson said. "He's only pitched one bad ballgame and he could easily be 10-1 instead of 7-4. We haven't given him much support. He gave us a tremendous effort tonight and we needed it."

Said McDonald: "I was just trying to stay in the game as long as I could and hope we'll score some runs at the end. I used to worry about whether the guys could score runs, but it's hard enough to concentrate on the hitters.

"I'm at the point where I try to keep my team in the game and if we score, we score. I feel like I'm throwing the ball much better. I'm more relaxed and I'm getting my curveball over the plate as well as the change-up."

If McDonald had worried about the Orioles' offensive potential, he might have had a nervous breakdown.

After Morris retired the first 10 batters, Anderson was safe on first baseman Fielder's error. Anderson stole second and third on the first two pitches to Cal Ripken, who walked on four. When Horn walked on five, the bases were full. But Tettleton, while checking his swing, accidentally stroked a low outside pitch on one hop to third baseman Phillips, who turned it into a double play.

Segui got the first Baltimore hit, a two-out double in the fifth. Then Finley led off the sixth with a single to center. Although Anderson entered the game with a .538 lifetime average against Morris, Robinson called for a bunt. Anderson put his first attempt on the screen, then popped one to Morris, who doubled Finley off first.