You are correct in saying that you should not have to train the IAC valve. There are baseline settings that should work out well, but you're dealing with a 35 year old vehicle with unknown repair history. You set the base idle speed when it is fully warmed with all loads turned off. This sets how much base air the engine needs and then the IAC just adds a small amount to bring it up to the correct idle speed, depending on engine temperature. Then when the engine is cold the PCM opens it more to act like the fast idle speed on a carburetor, and there is a slight delay function programmed into the PCM that mimics the dash pot that slows the return to idle speed. It constantly monitors idle speed and adjust the IAC accordingly.

I am not as experienced with the OBD I systems as I am the later model OBD II, but if it is surging at idle the IAC valve is overshooting the target idle speed. If your vehicle is stock then there is a problem with the engine, IAC valve sticking, vacuum leak, EGR flow, spark timing, or fuel. If the truck has a "tune" in it, posting the tune file here we could look at it and see if there's something wrong.

If it is rich as you stated originally, might clear all the adaptive values by disconnecting the battery cables from the battery and shorting them together with a 10 amp fused lead for 10 minutes with the key in the "on" position. Then disconnect your oxygen sensors and turn the key off. Re-connect your battery and start the vehicle. This will put it in the baseline settings and prevented from changing the fuel mixture. It should run pretty good if the "tune " is correct. It should not be rich or surge.