Check Engine light - '93 Dodge Intrepid 3.3L

For the past year or so the check engine light comes on while driving. Not every time. The light then stays on until I turn the car off. This is not dependent on temperature, speed, time of day, etc. What I think is related is the electrical load on the car. I can pretty reliably make the light come on by leaving the rear defrost on for 5 minutes or so. Sometimes cranking up the volume on my stereo (with 400w amp) will also do it. The error code (and what the internet tells me it means) is:



43 Peak primary coil current not achieved with max dwell time

OR

43 Cylinder misfire

OR

43 Problem in power module to logic module interface



The car is not misfiring. I had the auto parts store check the alternator. They said I have a bad diode, but the alternator is still regulating the voltage well. The battery is new and putting out appropriate I’ve checked the ignition coil resistance - all coils are within specs. The car recently got new plugs and wires. There are never any other error codes (I check periodically to make sure nothing new is going on). I am at a loss on where to look next. Any ideas? Thanks.

The car is not misfiring. I had the auto parts store check the alternator. They said I have a bad diode, but the alternator is still regulating the voltage well.

How do you know it is not misfiring? Many cars run rather well with a misfire.

If you have a bad diode, you are not getting full capacity out of the charging system.