SOUTH PORTLAND — Caleb Viola’s line single through the shortstop hole drove in Jacob Kulig in the 11th inning Saturday and gave undefeated South Portland a 6-5 victory against Portland in an SMAA baseball game.

Hunter Owen and Bradley McMains of South Portland (8-0) combined for nine strikeouts while holding the Bulldogs (4-4) to two hits. But they were victimized by seven errors.

Portland pitcher Donnie Tocci gave up five runs in the second, then combined with reliever Brian Riley to hold South Portland scoreless for the next eight innings. Tocci and Riley totaled 10 strikeouts.

Tyler Small keyed the Riots’ five-run second, hitting an RBI double and scoring on Anthony Poole’s two-run single. Portland tied it with two outs in the sixth when Jacob Loranger stole home on the front end of a double steal while Danny Tocci avoided being tagged until Loranger crossed the plate.

THORNTON ACADEMY 10, BONNY EAGLE 8: Calvin Christoforo drove in three runs and Thornton Academy (7-2) held off Bonny Eagle (7-2) at Saco.

The Trojans scored six runs in the second inning and and opened a 10-0 lead before holding on.

Ethan Hamilton went 3 for 5 with two doubles and four RBI for Bonny Eagle, which scored four runs in the fourth to start its rally.

The Scots added a run in the sixth and three in the seventh.

Tim Smith added three hits and two RBI for Thornton.

CHEVERUS 2, BIDDEFORD 1: Hayden O’Donnell broke a scoreless tie with a two-run single in the fourth inning as the Stags (6-3) defeated the Tigers (4-4) at Biddeford.

Biddeford scored its run in the seventh.

Nick Giancotti pitched four scoreless innings to get the win for Cheverus.

Hunter Demeule of Biddeford allowed six hits and struck out five.

TRAIP ACADEMY 11, ST. DOMINIC 1: The Rangers (6-3) scored five times in the fourth inning, then ended the game in the fifth on a solo home run by Bobby Lane against the Saints (4-3) at Kittery.

Teddy Driscoll and Trevor Fournier each added a pair of hits for Traip.

SANFORD 5, WESTBROOK 1: Ethan Hogue struck out four for the Spartans (1-7), who built a 5-0 lead en route to a win over the Blue Blazes (1-8) at Sanford.

Sol Demers went 2 for 3 with a double and two RBI for Sanford.

Matt Eugley of Westbrook allowed two earned runs on five hits and three walks, striking out five.

FREEPORT 10, LINCOLN ACADEMY 0: Liam Holt hit a two-run single in a five-run third inning, and Toby Holt ended the game with an RBI single in the fifth as the Falcons (7-2) defeated the Eagles (2-5) at Freeport.

Anthony Panciocco had two hits for Freeport, including an RBI single in the third.

Shea Wagner pitched 31/3 innings for the Falcons, striking out six.

Adam Sirois and Nathan True had singles for Lincoln.

POLAND 3, YARMOUTH 1: Adrien Melanson needed 65 pitches for a complete game as the Knights (2-7) defeated Yarmouth (3-4) at Poland.

Melanson also contributed a pair of hits and freshman Hunter Gibson drove in a run with a two-out double in the sixth for the Knights.

Jack Romano had two hits, including a double, and Jack McGrath added a double for the Clippers.

OXFORD HILLS 6, GREELY 4: Cam Slicer doubled home Jonny Pruett with the go-ahead run in the eighth inning, then came across on Rod Bean’s single to give Oxford Hills (10-0) an extra-inning win against the Rangers (5-2) at Cumberland.

Greely tied the game in the seventh when Jacob Whiting singled home Nick Butler. A perfect relay throw from shortstop Janek Luksza cut down the potential winning run at the plate on the play.

FRYEBURG ACADEMY 3, LEAVITT 2: Eddie Thurston’s two-run single in the third inning gave the Raiders (7-1) a 3-2 lead against the Hornets (4-4) at Fryeburg.

Tucker Buzzell hit an RBI single earlier in the inning to make it 2-1.

Darin Hewitt and Austin Taylor scored on errors in the first and third innings to give Leavitt a 2-0 lead.

Hewitt struck out five.

Dawson Jones of Fryeburg allowed three hits with nine strikeouts.

NOBLE 10, MASSABESIC 2: Will Shapleigh had three hits and three RBI for the Knights (4-5) against Massabesic (1-8) at North Berwick.

Coby Johnson added two hits and Owen Padolec had two RBI for Noble. Ben Carroll and Jason Guinard were repeat hitters for the Mustangs.

RICHMOND 23, FOREST HILLS 0: Justin Vachon and Mitch Couturier combined on a no-hitter, and Vachon also homered to lift the Bobcats (5-3) over Forest Hills (4-3)at Richmond.

Couturier added a double among three hits, and Chance Taylor doubled and had four hits for the Bobcats. Andrew Vachon hit a triple and Dakotah Gilpatric added a double for Richmond, and Ben Gardner and Derek Barrett had a pair of singles.

GORHAM 4, KENNEBUNK 0: Aaron Goschke doubled twice, drove in two runs and pitched six shutout innings to lead Gorham (4-6) past Kennebunk (6-3) at Gorham.

Goschke struck out 10, and allowed four hits and three walks. His double in the third inning put Gorham ahead 2-0.

Thomas Lazos had two hits, including a double ,for Kennebunk. Oliver Leonard allowed three runs on seven hits.

FALMOUTH 7, MARSHWOOD 3: Connor Coffin drove in two runs, and Garrett Tracy had two of the six hits for the Yachtsmen (3-3) against the Hawks (4-5) at South Berwick.

Trevor Chase had a pair of hits for Marshwood.

LACROSSE

FREEPORT 12, CAMDEN HILLS 8: Sam Larochelle recorded four goals and six assists as the Falcons (5-2) downed the Windjammers (1-6) at Freeport.

Evan Owen added three goals, and Steel Crawford had two goals and two assists for Freeport, which led 6-5 at halftime.

PORTLAND 8, YORK 5: Miki Silva scored four goals as the Bulldogs (6-1) defeated the Wildcats (2-4) at York.

Evan Bay added two goals and John Sylvain finished with 11 saves for Portland, which led 5-1 at halftime.