Some engine problems/codes don't cause the CEL to turn ON. Has the mechanic checked for stored codes? Find a mechanic who knows the 1990-1996 Nissan 300ZX.
What spark plugs are installed and how old are they? The EGR tubes are probably clogged.
My ECM seems to display only one at a time, with another popping up only after the cause of the first one has been addressed.
Check for vacuum leaks. Vacuum hoses are getting brittle and starting to crack. Due to a vacuum leak, my engine would idle when it was cold, but not after it had warmed up.
Know for a fact that the engine will crank, but not start if the TPS or one of the connectors near the battery are disconnected. One bad wire/connection is all it takes. Disconnect, clean and remake connectors under the hood, coating contacts with dielectric grease. Clean the battery terminals and cable connectors. The good news is that a lot can be accomplished by replacing inexpensive parts and simply cleaning others.
And then there is always this:
http://www.pexcom.com.au/z32cms/e107_pl ... ontent.335
Download and print this out for your mechanic:
http://www.mdsmarthome.com/z/Z%20Tech/Z ... 20Idle.pdf
Good luck!