"I was just trying to get outs any way I can," Alexander said. "In that situation, such a great game, everybody played great, you don't want to be the one to blow it. I was just doing everything I can to keep that run from scoring or at least not give up the lead."

It was Moss's fourth career grand slam and his first since July 24, 2014. He has nine RBIs in his past three games.

"I don't think you can ever go up to the plate with the bases loaded and not be excited," Moss said. "That's always a fun situation to hit in. The ultimate goal is always a grand slam. You don't hit with the bases loaded very often. You're trying to get a pitch to drive."

Covey allowed just one more hit, a double to Eric Hosmer to lead off the sixth, before leaving after 5 2/3 innings. He threw 34 of his 83 pitches in the first inning and walked only one, Moss in the fourth, after the first.

"I was struggling with command early on," Covey said. "You'd like to make the adjustment the next pitch, but it came a little later for me. It was halfway through the Moss at-bat when I started to get a little bit of rhythm. Unfortunately he got hold of one, but it was the walks that did me in."

Sam Gaviglio (4-5) picked up his first Royals victory in his second start after being picked up on waivers Sept. 1 from Seattle. He yielded two runs on seven hits over five innings.

Sanchez's double in the third scored Rymer Liriano, who had singled and stole second, for the first White Sox run.

Delmonico and Avisail Garcia led off the White Sox fourth with singles. Tim Anderson's one-out single scored Delmonico and advanced Garcia to third. Anderson swiped second, his 10th stolen base in 11 attempts. Gaviglio prevented further damage by striking out Lirano and retiring Engel on a grounder.

The White Sox trimmed the lead to one run in the eighth when Rob Brantly's double off Peter Moylan scored Delmonico.

"We got down early, but our starter bounces back and gives us a great rest of the game," Engel said. "He really settled in. The offense chipped away, and we put ourselves in a good situation there late."

MARCH MADNESS

The White Sox and Royals will start the 2018 season on March 29 at Kauffman Stadium.

SMALL CROWD

The announced attendance of 17,727 was the smallest for a Royals' home game this season.

ROYALS ADD MORIN

The Royals claimed RHP Mike Morin off waivers from the Angels. He was 0-0 with a 6.91 ERA in 10 relief appearances this season with the Angels. He spent most of the season with Triple-A Salt Lake, where he was 0-1 with a 3.20 ERA in 22 games. Morin, 26, went to Shawnee Mission South High, a Kansas City suburb, and was drafted in the 40th round in 2009, but chose to go to North Carolina. To make roster room for Morin, the Royals designated for assignment LHP Onelki Garcia, who was 0-1 with a 13.50 ERA in two appearances.

TRAINER'S ROOM

Royals: CF Lorenzo Cain (quads) and 3B Mike Moustakas (right knee) did not play. "We've had an off day planned for Cain and Moose for four or five days because this is a quick turnaround," Royals manager Ned Yost said of a noon game after a night game. "The training staff is here early. They're here early to do everything they can to get on the field." Paulo Orlando started in center and Cheslor Cuthbert at third base.

UP NEXT

White Sox: RHP Lucas Giolito. He was ejected by plate umpire Gabe Morales in the sixth inning in his Friday start for arguing balls and strikes.

Royals: LHP Eric Skoglund. He has not pitched since Sept. 2 when he threw 81 pitches in three innings of relief against the Twins, giving up a three-run homer to Brian Dozier.