i had the same problem on my turbo stang.
do this and it will be solved
1. The car must be at operating temps. If you can't keep it idling, drive it until it reaches full water temp.
2. Turn ON the headlights.
3. Turn OFF any accessories, like a/c, heater, defrost.
4. Unplug the IAC connector. The IAC is the small cylinder attached to the throttle body.
Note: If you unplug the IAC and the engine stalls, then you know the TB was not open enough causing an over rich condition. Leave everything as is, just open-up the throttle screw a bunch so that the engine can breathe while you set the idle rpm. Restart the car, and continue with #5 below:
5. Adjust the throttle stop screw until you have the idle rpm you desire. then shut the car off and reset your TPS
6. Plug the IAC connector back in.
Make sure the TPS is right
The TPS is another issue. Generally, you want to try and get it as close to 0.97-0.98 at idle as possible. Make sure that when you open the throttle all the way it hits 4.60 volts. Now, with the advent of the 04 PMS, you can "fudge" with those numbers. If you cannot get the TPS to read under 1.00, for example, you can set the PMS to tell the EEC it is seeing idle at 1.01. You should always try to get the idle reading below 0.99, but if you cannot, then this feature is really useful. The same is true for WOT, you can use the TPS option in the PMS to set the WOT tps voltage. Say you cannot get it to read 4.6, or you want earlier WOT tuning to take effect. Then you can set the WOT to say, 4.0 volts at 30% error. There are more detailed threads on this.