An abrupt batting collapse by Zimbabwe against No 1-ranked South Africa saw them reach 141 for seven at tea on day four of the one-off Test.
Morne Morkel and Dane Piedt took two wickets apiece as Zimbabwe lost five wickets for 26 runs in 10 overs after lunch on Tuesday, but Richmond Mutumbami and John Nyumbu dug in to leave the scores level at the tea break.
Mutumbami received the biggest cheer of the day when he drove Piedt through the covers for three to scratch out Zimbabwe's 141-run first-innings deficit.
That saw him reach tea unbeaten on 15, while Nyumbu was four not out.
Resuming on their overnight total of 28 for one, the Zimbabweans had frustrated South Africa through the opening session, with nightwatchman Donald Tiripano the only batsman to fall.
However Dale Steyn trapped Mark Vermeulen lbw in the fifth over after lunch, sparking a procession in which the hosts fell from 98 for two to 124 for seven.
While Piedt caught and bowled opener Vusi Sibanda for 45 and also grabbed the prize wicket of Brendan Taylor, Morkel bowled Regis Chakabva and then had Sean Williams brilliantly caught at backward point by JP Duminy.
Morkel went to tea with figures of 3 for 15, while Piedt had 3 for 60 in the innings and 7 for 150 in the match.