A fiery Morne Morkel spell helped South Africa maintain a stranglehold of the second Test against Australia as the visitors limped to third day lunch on 205 for eight at St George's Park on Saturday.
Australia still trail their hosts by 218 on the first innings as Morkel found pace and bounce on a wicket that had appeared lifeless for the tourists' much-vaunted pace attack when South Africa ground their way to 423.
Steve Smith (49 not out) is the last remaining batsman South Africa will be concerned about, though he received some good fortune when he was carelessly dropped by substitute fielder Robin Peterson at square-leg when the batsman was on 24.
Smith will resume following the interval with Ryan Harris after Mitchell Johnson (27) was out on the stroke of lunch, bowled by the part-time off-spin of JP Duminy.
The tourists resumed on 112-4 as Morkel opened the bowling in the morning session and terrorised nightwatchman Nathan Lyon (15) by landing some sickening body blows.
David Warner decided scoring would be easier at the other end and when he chased a wide Vernon Philander delivery, edged the ball to Graeme Smith at first slip with his score on 70.
Lyon's stomach for the fight against Morkel had gone and the South African got his man when the batsman backed well to leg, attempted to leave a rising delivery and ended up playing the ball onto his stumps.
It was the first time the regular number 11 has been dismissed in nine innings dating back to the fourth Ashes test against England at Chester-le-Street in August 2013.
Brad Haddin (nine) offered a sharp chance to Amla in the gully that was put down and led to a dislocated finger for the fielder. Amla left the field for treatment but is expected to be fit enough to bat.
Dale Steyn eventually removed Haddin with a superb off-cutter that nipped back into the batsman and found the gate between bat and pad to smash into middle stump.
There will have been some satisfaction for the South Africans late in the session when a Morkel delivery crashed into helmet of Mitchell Johnson, who had put Ryan McLaren out of this Test with a similarly vicious blow in Pretoria.
Wayne Parnell, who took two wickets in his first over of test cricket in four years on Day 2, limped off the field midway through his ninth over with a left groin strain and has been sent to hospital to have a scan that will reveal the severity of the injury.
Australia won the first Test of the three-match series by 281 runs in Pretoria.