Why would the following lines of code cause a program to run fine the first time, and crash the second time it was run? do { if(_rowread(0xfffd & 128) break; } while(!(_rowread(0xFFFE) & 16)); And I know these lines are the problem, because when my friend took them out, his program ran fine every time he ran it. Yet, when he put them in, it crashed on the second run. Thanks, -Matthew Landry