Zimbabwe stifled South Africa's usually fluent top six but the world's top-ranked Test side remained in control by reaching 201 for four, 55 runs behind, at stumps on the second day of the one-off Test at Harare Sports Club.
Zimbabwe first innings 256
South Africa first innings
D Elgar c Mutumbami b Tiripano 61
A Petersen c Mutumbami b Nyumbu 32
F du Plessis not out 69
H Amla c Sibanda b Chatara 4
AB de Villiers c Sibanda b Nyumbu 7
Q de Kock not out 27
Extras (nb 1) 1
Total (4 wickets; 84 overs) 201
Fall of wickets: 1-57, 2-132, 3-146, 4-157
The day yielded just 209 runs in the 90 overs on a pitch that is becoming increasingly difficult to bat on as Zimbabwe posted 256 in the morning session.
Faf du Plessis (69) and Quinton de Kock (27) will resume on day three.
In the hour after tea, South Africa scored 11 runs for the loss of Hashim Amla and AB de Villiers as the home sided packed the offside field and bowled wide of off-stump, daring the South African batsmen to blast their way through the ring of men.
Amla (four) tried, but succeeded only in picking out Vusi Sibanda at cover off the bowling of seamer Tendai Chatara.
It was the perfect execution of home captain Brendan Taylor's plan, hatched no doubt given his limited bowling options.
Earlier, Dale Steyn completed his 24th five-wicket haul in Tests to end the Zimbabwe innings. Steyn finished with five for 46 from 22.4 overs to take his tally of Test wickets to 380, three short of Ian Botham in 13th place on the all-time list.