I just cracked a subtle bug! This was the situation:
This product runs correctly on a 16bit HHT (Hand Held Terminal).
I was forced to change from 'Medium Memory Model' to Large Memory Model and started getting error 7 (E2BIG: Argument list exceeds 1024 bytes) returned from:
err = _spawnlp( P_WAIT, "B:TSCS.EXE", "TSCS", NULL);
What was the bug and how did I fix it?