Here is a list of the 2 digit error codes which you get from pre MY00 Subaru engines, plus a bit of info on where each sensor, etc is positioned/ Left and right refer to as you look at the engine from the pulley end:

11 Crank Position Sensor (behind crank pulley)

12 Starter Switch (cold start circuit)

13 Cam Position Sensor (behind top of RH cam pulley)

14 Fuel Injector #1

15 Fuel Injector #2

16 Fuel Injector #3

17 Fuel Injector #4

21 Engine Coolant Sensor (multi pin sensor in coolant manifold)

22 Knock Sensor

23 MAF Sensor (airflow meter)

24 Idle Speed Control Valve (on inlet manifold to left (n/a), right (turbo) of throttle body)

35 CPC (canister purge control) Solenoid (screwed to under side of inlet manifold)

41 Fuel Trim (problem affecting fuel mixture - check fuel system for faults and induction system for air leaks, etc)

42 Idle Switch (inside throttle position sensor, early engine with 4 with TPS only) also check TPS hasn’t been turned

44 Wastegate Control Valve (turbo only)

45 Pressure Exchange Solenoid (turbo only)

To read your error codes, plug the single pin black ‘error code read’ connectors together. Turn on the ignition without starting the engine. Watch the engine check / error code / malfunction indicator light. It will flash the error code(s). Long flashes are the 10’s, and shore flashes are the units in the above codes. It’s a bit like morse code, eg:

---.. =32-...... =16

If you have one error code, it will repeat after a gap. If you have more than one they will be flashed sequentially with a gap between each, and the whole sequence will repeat after a longer gap. In both cases, this continues until you turn the ignition off: