Are you sure this is not the reason for the slow code?
Code:
HSERIN [WAIT($07,$06), str DATAIN\7]
After all, no matter how you code the checks, the pic will not take a noticable time to process that. If it compiled to 1000 lines of code, @4Mhz clock it would only take 1mSec

What clock speed?