There are two fans in an ATX, both should be running at the same time. They can run at low or high speed. You can make them run regardless of what temperature the computer thinks the engine is by turning on the (working) AC on a warm day. Otherwise, they won't run unless the coolant is measuring hot (a different sensor than the gauge). Read more:
https://shoforum.com/index.php?threads/electric-cooling-fan-rebuilt-atx-mtx-thru-95.139477/
The engine symptom is like O2 sensor, but the codes are all wrong. Tranny code is not good, we can hope it is overheating from no fan, or perhaps speed sensor.
There are two separate code tests to perform,
key-on-engine-off (which tests a handful of sensors, then reads those codes, then displays stored memory codes), and
key-on-engine-running (where you must start the warm engine, do some stuff at the right time, and then you get engine running codes).
Follow along at:
http://yamahasho.com/eec/eec.htm
The first thing to do is to clear memory codes in the computer. To do that, plug the diagnostic jumper in, turn the key on but don't start, then after 10 seconds when the codes start flashing, quickly go disconnect the jumper; then turn off the key. Now you have a baseline.
Then do the
KOEO procedure. Any obviously malfunctioning sensors will set a code. Otherwise, your codes should read 111, 111 (KOEO OK, repeated), 1 (spacer), 111, 111 (OK, empty memory). Understand what the flashes look like. In each section, "live" and "memory", the codes will repeat.
Then drive your car 15 minutes until it is warm. Some malfunctions will set a code but not light the check engine. Then read the
KOEO codes again, paying attention to the second set of memory codes.
Only then do the KOER test, providing the proper steering, brake, gas pedal pulse, O/D button input at the right time. Then get the KOER "live test" codes, a single flash, and again memory codes.