Also it may be the thermostat is stuck open and the engine takes a long time to come up to temperature if it does at all. The PCM has a programed temperature where when below this preset temperature, it runs the engine at what I'm going to call, warm up mode where teh PCM commands running a richer mixture among other things, and when above this temperature it runs in what I'm going to call normal mode.
depending on how easy or difficult it is to access the thermostat, it is sometimes just faster to change the thermostat than try to trouble shoot it.