** INT 21h may be used to invoke a large number of DOS functions ; a particular function is requested by placing a function number in the AH register and invoking INT 21h. Here we are interested in the following functions :
1 Single-key input
2 Single-Character Output
9 Character String Output
INT 21h functions expect input values to be in certain registers and return output values in other registers. There are listed as we describe each function.
Single-Key input
Input : AH = 1
output : AL = ASCII code if character key is pressed
= 0 if non-character key is pressed
To invoke the routine, execute these instructions :
MOV AH,1 ;input key function
INT 21h ;ASCII code in AL
The processor will wait for the user to hit a key if necessary. if a character key is pressed, AL gets its ASCII code; the character is also displayed on the screen. If any other key is pressed, such as an arrow key, F1-F10, and so on, AI, will contain 0. The instructions following the INT 21h can examine AL and take appropriate action.
Because INT 21h, function 1, doesn't prompt the user for input, he or she might not know whether the computer is waiting for input or is occupied by some computation. The next function can be used to generate an input prompt.
Display a character or execute a control function
Input : AH = 2
DL = ASCII code of the display character or control character
Output : AL = ASCII code of the display character or control character
Function Number Routine
1 Single-key input
2 Single-Character Output
9 Character String Output
INT 21h functions expect input values to be in certain registers and return output values in other registers. There are listed as we describe each function.
Function 1:
Input : AH = 1
output : AL = ASCII code if character key is pressed
= 0 if non-character key is pressed
To invoke the routine, execute these instructions :
MOV AH,1 ;input key function
INT 21h ;ASCII code in AL
The processor will wait for the user to hit a key if necessary. if a character key is pressed, AL gets its ASCII code; the character is also displayed on the screen. If any other key is pressed, such as an arrow key, F1-F10, and so on, AI, will contain 0. The instructions following the INT 21h can examine AL and take appropriate action.
Because INT 21h, function 1, doesn't prompt the user for input, he or she might not know whether the computer is waiting for input or is occupied by some computation. The next function can be used to generate an input prompt.
Function 2 :
Display a character or execute a control function
Input : AH = 2
DL = ASCII code of the display character or control character
Output : AL = ASCII code of the display character or control character