Zimbabwe’s military has placed President Robert Mugabe under house arrest in the capital Harare, South African President Jacob Zuma says.
Mr Mugabe told Mr Zuma in a phone call that he was fine, the South African leader’s office said.
Troops are patrolling the capital, Harare, after they seized state TV and said they were targeting “criminals”.
The move may be a bid to replace Mr Mugabe with his sacked deputy, Emmerson Mnangagwa, BBC correspondents say.
Mr Mnangagwa’s dismissal last week left Mr Mugabe’s wife Grace as the president’s likely successor.
Heavy gun and artillery fire could be heard in northern parts of Harare early on Wednesday.
Mr Mugabe, 93, has dominated the impoverished country’s political scene since it gained independence from the UK in 1980.
The UK Foreign Office advised Britons “currently in Harare to remain safely at home or in their accommodation until the situation becomes clearer”, while the US embassy in Harare advised US citizens in Zimbabwe to “shelter in place” until further notice.
China, Zimbabwe’s biggest trading partner, says it is closely watching the situation and hopes that the relevant parties can properly handle their internal affairs.
“As soon as we have accomplished our mission, we expect that the situation will return to normalcy.”
Maj Gen Moyo also called on the security services to co-operate “for the good” of the country and warned that any provocation would “be met with an appropriate response”.
It is not clear who is leading the military action.
Army chief Gen Constantino Chiwenga, who visited China last week, said on Monday the army was prepared to act to end purges within the ruling Zanu-PF party.
In Harare, some people greeted the news with delight. “We are going to have a good life, we are looking forward to Christmas, because of what has happened,” one woman told BBC News.
“I want to thank the general for removing this tyrant,” said a man. “He was ruling the country as if it belonged to his family.”