Assembler


         

- 6


0024 SET_INTERRUPT ENDP ; ,
 
;-----
 
0024 INT_HANDLER PROC FAR
0024 50 PUSH AX ;
0025 53 PUSH BX
0026 52 PUSH DX
0027 BA 03FD MOV DX,3FDH ;
002A EC IN AL,DX
002B A8 01 TEST AL,01H ; ?
002D 74 12 JZ INT_RETURN ; ,
002F BA 03F8 MOV DX,3F8H ;
0032 EC IN AL,DX ;
0033 2E: 8B 1E 0000 R MOV BX,BUFFER_POINTER
0038 2E: 88 07 MOV CS:[BX],AL ;
003B 43 INC BX
003C 2E: 89 1E 0000 R MOV BUFFER_POINTER,BX
0041 INT_RETURN:
0041 5A POP DX ;
0042 5B POP BX
0043 B0 20 MOV AL,20H ;
 
. 8.17 ()
0045 E6 20 OUT 20H,AL
0047 58 POP AX
0048 CF IRET ;
0049 INT_HANDLER ENDP
0049 0080[ BUFFER DB 128 DUP (?)