Glamorgan 407 (Cooke 136, Lloyd 65, Carlson 54) and 205 for 4 (Selman 69, Root 56) lead Northamptonshire 364 (Rossington 76, Berg 69) by 248 runs By
Nick Selman found his LV= Insurance County Championship form with a half-century as Glamorgan piled on the runs to set up an intriguing final day at Wantage Road.
Opener Selman had experienced a wretched opening five innings of the season, with a run of 4, 0, 0, 11 and 17 before he terminated his poor form with a solid 69.
His efforts, along with Billy Root's 56, helped Glamorgan reach close on 205 for four, 248 ahead, although an increasingly flat pitch is likely to stand in the way of victory over Northamptonshire.
Earlier, Gareth Berg and debutant Wayne Parnell both scored half-centuries to give Northants a first-innings deficit of 43 - having been 56 for five.
Adam Rossington and Saif Zaib had rebuilt phenomenally on the second day, but Berg and Parnell's eighth-wicket stand of 108 pulled the match towards parity.
The experienced pair scored freely despite an early new ball, as they chalked up previously unlikely batting points for passing 300 and 350.
Parnell reached his half-century first, from 81 balls, thanks to a wonderfully caressed cover drive, before the experienced duo touched gloves on a three-figure stand.
Berg was forced to wait to follow his partner to the milestone as he dropped twice in the same over by James Weighell, off his own bowling, before Parnell departed - the South African all-rounder yorked by Weighell for 54.
Berg did eventually get to fifty in 83 balls as he and Nathan Buck added 34 together.
Northants' innings ended when Buck was snaffled at backward point, with Weighell managing to get his fingers underneath a dipping ball, and Ben Sanderson was castled - leaving Berg unbeaten on 69.
As with the first-innings, Glamorgan's openers David Lloyd and Selman moved past 50 together without an ounce of fuss.
Selman was dropped on 15 by Rossington, who damaged a finger on his left hand in the process and was forced to off the field for the remainder of the day.
Ricardo Vasconcelos kept and captained in Rossington's place and almost immediately was called upon as Buck found Lloyd's outside edge.
Buck struck again in his following over, to keep up the flurry of wickets trend which has shaped the match so far, as Andy Balbirnie mistimed a pull to the short legside boundary.
Selman, having past 50 in 124 balls, departed for 69 when he flicked Berg down the leg side to give Vasconcelos a second grab with the gloves.
Root, having begun the season with a century against Yorkshire, past his half-century in 103 balls before he was also caught behind, for 56 off Sanderson.