Dale Steyn completed his 24th Test five-wicket haul as South Africa bowled Zimbabwe out for 256 in their first innings and then eased to 62 for one in reply at lunch on the second day of the one-off contest at Harare Sports Club on Sunday.
Alviro Petersen (32) was the only wicket to fall in the South African innings as his desperate run of low scores continued.
The right-hander was caught by wicketkeeper Richmond Mutumbami off the bowling of debutant off-spinner John Nyumbu.
Dean Elgar (25) and Faf du Plessis (five) will seek to close in on the home total in the afternoon session as South Africa look to bat once on a deteroriating wicket.
After Zimbabwe resumed on 248 for nine, Steyn strangled Nyumbu down the leg-side as he had the home tailender caught by wicketkeeper Quinton de Kock for two from 29 deliveries.
Zimbabwe's other debutant, Donald Tiripano was not out at the other end with 15 after almost two hours at the crease.
Steyn finished with figures of five for 46 from 22.4 overs, a worthy effort on a pitch that is flat for the quick bowlers, but offering assistance to the spinners.
Taking advantage of that turn was off-spinner Dane Piedt, who recorded figures of four for 90 in 24 overs in his first test match for the Proteas after replacing Imran Tahir. - Reuters