Did you replace the plug wires? Did you replace the coil wire?
The pick up coil receives a signal from the reluctor/magnet in the distributor. When running * the ICM reads that signal and sends the signal to the ECM. The ECM uses that signal to pulse the injectors and after advancing it depending on programming sends it back to the ICM. The ICM receives the signal and fires the coil.
When cranking the ICM doesn't look at the ECM's signal for spark. It instead just passes it through internally until 400 RPM. Then the ECM tells the ICM to allow it to take over the advance.
If the ICM sees the signal drop during operation, the ICM has a fail back function that allows the vehicle to 'limp' home. It then uses it's internal signal directly. When this happens you are supposed to get a check engine light and a code 42. - http://www.fiero.nl/cgi-bin/main.cgi?ECMCodes
When this trouble happens the ECM clearly is still getting the ignition signal. It keeps on firing the injectors and loads the exhaust system with fuel. That is why you get the pop. So by that it seems clear the primary side of the ignition system is working. The problem must be somewhere starting from the circuitry that generates the advanced timing in the ECM and then forward to the plugs. Since all fail at the same time anything from rotor forward can be eliminated.
Loose connectors on the 4 pin connector are the most likely problem. Look at the White wire specifically
It could be bad pins at the ECM or a bad ECM
The ignition signal is sent from the ICM to the ECM on the Purple/White wire
The ECM applies 5V on the Tan/Black wire when it wants to control timing (over 400 RPM)
The ECM sends the modified (advanced) ignition signal to the ICM on the White wire
The Black wire is grounded at the ECM letting the ICM know it is present.
[This message has been edited by phonedawgz (edited 05-13-2014).]