But Danks was pulled after he walked Clete Thomas and Pedro Florimon to open the Minnesota seventh. Matt Lindstrom came in and struck out Brian Dozier and the White Sox again changed pitchers, going with Donnie Veal.
Veal (1-3) walked Joe Mauer on five pitches, loading the bases, and Chicago replaced him with Nate Jones. Jones also got a strikeout but Morneau fouled off several pitches before cranking his 12th home run of the season deep into the seats beyond right field for the grand slam.
All but the last two runs in the game came on home runs. Minnesota started the derby with a second-inning homer from Chris Colabello and Konerko tied the score in the bottom of the inning with his home run. Ramirez made the score 3-1 with his homer in the fifth.
Oswaldo Arcia had a solo shot in the eighth and Moreau hit his second homer in the ninth for the Twins. Ramirez had a two-run single with two outs in the ninth.
Brian Duensing (5-1), who struck out the only batter he faced when he came on in the sixth, collected the win.
Minnesota managed just seven hits but was helped by eight walks from White Sox pitchers. Danks walked five in six-plus innings. Danks had nine of the 13 strikeouts by the White Sox.