The tourists batted freely on the placid wicket to carry their overnight score of 304-4 to 404-5 by lunch on the second day at the Chidambaram stadium.
Amla, 85 overnight, reached his fourth Test century half-an hour after the start with the last of his three cover-driven boundaries in one over from seamer Shanthakumaran Sreesanth.
The bearded 24-year-old from Natal has so far hit 15 fours as the Indian bowlers toiled in vain on a barren pitch that offered them no help.
Wicket-keeper Mark Boucher was the other batsman at the crease on 26, having so far added 47 runs for the sixth wicket with Amla.
Boucher survived a loud shout for leg-before by Sreesanth when he was on 10 as umpire Tony Hill of New Zealand gave the benefit of doubt to the batsman for a ball that pitched outside the off-stump.
Amla and his overnight partner Abraham de Villiers hammered 53 in as many minutes, 34 of those runs coming from the rampaging blade of de Villiers.
The right-hander slammed eight boundaries before he edged Sreesanth to wicket-keeper Mahendra Dhoni in the fifth over with the second new ball.
De Villiers contributed a hard-hitting 44 in a 66-run stand for the fifth wicket with Amla.
Indian captain Anil Kumble was forced to claim the second new ball after the first three overs of the day from the spinners fetched 19 runs.
But the slow wicket hampered both Sreesanth and his new ball partner Rudra Pratap Singh, who has so far gone wicketless in 20 overs that have cost 97 runs.
South Africa took advantage of winning the toss and batting first, with Neil McKenzie making 94 and captain Graeme Smith 73 on the first day.