Temba Bavuma made history on day four of the second Test against England, becoming the first black South African to score a Test century.

On a day lacking in overall quality, Bavuma (102 not out) illuminated the contest and sealed a piece of history for himself when he smashed Steven Finn's delivery for four to carry him over the 100-run mark.

South Africa declared 627-7 to give themselves a chance of drawing level in the four-match series, with Bavuma and Chris Morris (69) sharing a profitable 167-run wicket partnership to haul their side back into the contest. A second successive victory now appears beyond England with a draw the most likely outcome.

Earlier in the afternoon, Hashim Amla frustrated the tourists with a double century before he was dismissed by Stuart Broad.

Starting the day 157 not out, Amla defied the England bowlers to push over the 200 mark before he was dismissed by Broad for 201 after a thick inside edge on to his leg stump brought an end to his resilient innings – one which was also the third-slowest in Test history. England had been made to wait all morning to start taking wickets but another followed less than five minutes later when Ben Stokes caught Faf Du Plessis' (86) low drive with a fine catch off Anderson's delivery to reduce the hosts to 439-5.

That slow start suddenly looked like it was moving into a procession as Quinton De Kock soon followed for five after lofting a wild hook tamely into the waiting arms of Anderson.

But the introduction of Bavuma steadied the South African ship. The 25-year-old was perhaps lucky to survive one of eight dropped catches from England, but alongside Morris, he helped steer his side to 627 before declaring.

England resumed and saw out the contest unscathed 16-0, an overall lead of just 18 going into the final day.