Centurion: An assured hundred from Hashim Amla put South Africa in command of the first Test as England closed day four a distant 353 from victory at 11-1.
South Africa resumed on 9-1 and England claimed three wickets by lunch to trail by only 108, but Amla shared 119 with AB de Villiers who struck a fluent 64.
Boucher was in sparkling form as he made his 63 not out off 72 balls with nine fours and a six.
Morkel cracked an unbeaten 22 off 13 balls, including 18 in an over from Broad. Sharing the new ball with Makhaya Ntini he made his second delivery lift sharply and move away from Strauss, who edged it to wicketkeeper Boucher as the Proteas declared on 301-7 to set England a formidable target of 364 in minimum 96 overs (if no rain).
Skipper Andrew Strauss then edged a sharply rising ball in the second over.
Midway through the penultimate day all results were still possible but after dominating the morning session, England saw things slip away from them.
There have been only three fourth innings scores above 300 to win a Test match in South Africa and the highest winning total on this ground is the 251-8 England made in 2000 after the late Hansie Cronje's infamous 'sporting' declaration.
At the start of the third day when a ball shot along the ground and bowled Strauss the pitch was expected to misbehave with increasing regularity.
But it offered few demons on day four until James Anderson took the second new ball and centurion Amla was bowled with one that bounced only a few inches.
With Strauss departing to a Morne Morkel delivery that lifted up to shoulder height from nowhere, England will surely be battling merely for survival on Sunday.
It all began so encouragingly for the tourists, however, as they reduced South Africa to 46-4.
Brief scores
South Africa: 418 (Kallis 120, Swann 5-110) and 301 for 6 dec (Amla 100, Anderson 4-73)
England: 356 (Swann 81, Harris 5-123) and 11 for 1
Status: England need 353 runs to win