The home side were by far the better team in the first half with Sean Grady heading home a Kevin McLeish cross on three minutes. They then squandered several good chances to go further ahead and paid the penalty after 35 minutes. Kevin McLeish tripped Paul Woods, who equalised from the spot. Just on half time Ritchie Burke shot home to put the visitors 2–1 up.
Early in the second half poor defending let Steve McGladrigan in for Petershill’s third. Stuart Roseburgh scored Rose’s second but slack defending let McGladrigan in for another in 70 minutes. Five minutes later Steve O’Keane grabbed a fifth. Kris Renton headed in for the Rose but Petershill sub Sean McKenna got a sixth in injury time.
Bonnyrigg: Carlin, McLeish, Gray, Dunn, Woodburn, Burrell, King, Roseburgh, Archibald, Grady, Renton. Subs: Thomson, Hamilton, Hendrie, Ellison.
Petershill: White, Haddon, Palmer, McCabe, Jordan, Murch, Finnigan, O’Keane, McGladrigan, Woods, Burke. Subs: Craig, McKenna, Girvan, Galt, Black.