This keyboard handler will handle (I think) up to 5 keys at a time and is WAY faster that the CRT unit keypressed/Readkey().
*NOTE* this is a keyboard handler, so if you don't end your program, it will have full control of the keyboard! no CTRL-ALT-DEL, etc ***
Example on how to use it:
USES KeyHandler;
Begin
Set_New_Int9;
Repeat
If Keypressed Then
Begin
If Keys[kLeftCtrl] Then WriteLn('You pressed the Left Control Key');
If Keys[k1] Then WriteLn('You pressed the Number 1 Key');
If Keys[kUArrow] Then WriteLn('You pressed the Up Arrow Key');
End;
Until Keys[kESC] = true;
Set_Old_Int9;
End.
This is a very basic example. Have fun and don't forget to keep it named KEYHANDL.PAS