;AT Modem communication program written by Doug Cox, January 1990 (using A86) PREGETSTATUS: CALL CLSCRN GETSTATUS: MOV DX,03FD ;LINE STATUS REGISTER IN AL,DX AND AL,1 JZ >L1 ;IF NOTHING FROM MODEM MOV DX,03F8 ;RECEIVE/TRANSMIT DATA REGISTER IN AL,DX ;RECEIVE IT MOV AH,0E ;FUNCTION TO WRITE CHAR ON SCREEN INT 010 JMP SHORT GETSTATUS L1: MOV AH,1 ;FUNCTION TO GET KEYBOARD STATUS INT 016 JZ GETSTATUS ;IF NO KEYBOARD INPUT MOV AH,0 ;FUNCTION TO GET KEYBOARD CHAR INT 016 CMP AX,02E00 ;ALT-C JE PREGETSTATUS CMP AX,02D00 ;ALT-X JE EXIT CMP AL,01B ;ESC KEY JE EXIT MOV DX,03F8 ;RECEIVE/TRANSMIT DATA REGISTER OUT DX,AL ;SEND IT JMP SHORT GETSTATUS EXIT: CLSCRN: MOV AX,0700 ;FUNCTION TO CLEAR SCREEN BY SCROLLING IT MOV BH,7 ;ATTRIBUTE SUB CX,CX MOV DX,0184F INT 010 MOV AH,2 ;FUNCTION TO MOVE CURSOR SUB BX,BX SUB DX,DX INT 010 RET