You guys are great. My intermittent stall was, in fact, related to the ignition control module. The module was not bad, though.
We now have two 88 GT Fieros. I pulled the distributor cap for the first time on both within the past 4 months. I have never seen so much rust. The rotor on the red one broke when removing it because the rust was so bad and the plastic was so old. The white one also had a ton of rust inside the cap.
It turns out that the symptoms are reallly weird and I hope to save y'all some of the grief I encountered. The short version is that the connector for the cylinder position pick up coil inside the distributor was rusted and would make intermittent contact when it would warm up. Worked great in winter, but when it warmed up, the contacts would stop working. The contacts on the coil and ECM side were bright and shiny!!! The contacts inside were red and green with corrosion. I just went ahead and replaced the module even though I could have cleaned up the contacts.
The first time it dies, it just quit. We were going and about 75 MPH and the engine just completely quit with the tach showing zero. This scenario repeated many times.
After I changed the rotor and cap, all *seemed* well for about a month. It died once more, but wiggling the wires to the ICM seemed to fix it. I figured I might have a bad wire or connection in a harness that I would get to soon. Then it started to ping really badly. I figured it was just bad gas. I put in premium and the pinging was almost gone. Then it came back again. Finally, it just stopped dead again with no tach and no ignition.
So, if your engine starts pinging for no apparent reason, open the distributor cap and look for rust inside. Check the little brown connector to see if the contacts on the ICM are corroded.
My guess is that the corrosion causes the pins to make connection only when the voltage is really high from the pickup coil and it jumps across the corrosion. That causes the timing to be off because the ECM and ICM get the signal too late.