Bad fuel milage/running ruff

I just purchased a 1993 gmc suburban 1500 sle 5.7 liter v-8. It was running bad and the code said 32 which is the egr valve. I have replaced it with the plugs, the ignition coil and the pvc vavle. It is getting at best 5 miles to the gallon, running a little ruff and has a little amount of black smoke coming out of the tail pipe. It is now showing 12 on the code which means it is ok but can`t figure it out. I also put a new air filter in. Help please

Running that badly, it’s not going into closed loop operation (fuel flow actively controlled by the engine computer). A mechanic needs to check it out. He’d check the sensors, vacuum, timing, fuel injectors, fuel pressure, MAF (or, MAP), etc. For example, an engine coolant temperature sensor which tells the engine computer that the engine is always cold, will prevent the system from going into closed loop; a faulty oxygen sensor would be a problem; fuel injectors which flow an excessive amount are another possibility; etc.

I would check the ignition wires and take a good look at the distributor. The timing sounds like its off to me. I have just thrown a timing light on my truck without jumping the shunt, just to see if its close. You can set it at an idle and go from there. Good luck.

Running this badly and puffing black smoke, I’d check the fuel pressure. I’m guessing the regulator is bad, and the fuel pressure is way too high.