home *** CD-ROM | disk | FTP | other *** search
- ; PRNSTAT.ASM
- ;
- ; by Ralph Davis, Leonard Zerman
- ;
- ; Placed in the public domain by Tom Rettig Associates, 10/22/1990.
- ;
-
- INCLUDE EXTENDA.INC
-
- CLpublic <PRNSTATUS>
-
- CLfunc int PRNSTATUS
-
- CLcode
- ;-----------------------------------------------------------------
- ; SYNTAX: PRNSTATUS()
- ;
- ; Checks status of LPT1
- ;
- ; RETURNS: 0: Printer OK
- ; 1: Printer hooked up and off-line
- ; 2: Printer hooked up and turned off
- ; 3: Printer not hooked up or out of paper
- ; -1: I can't tell
- ;
- ;
- PUSH DS
- PUSH ES
- MOV AH,2
- XOR DX,DX
- INT 17H ; Get printer status
- CMP AH,90H ; Printer hooked up & OK?
- JNE PS2
- MOV AX,0 ;
- JMP SHORT EXIT
- PS2:
- CMP AH,18H ; Hooked up, off-line
- JNE PS3
- MOV AX,1
- JMP SHORT EXIT
- PS3:
- CMP AH,0F8H ; Hooked up, turned off
- JNE PS4
- MOV AX,2
- JMP SHORT EXIT
- PS4:
- CMP AH,0B0H ; Not hooked up or out of paper
- JNE PS5
- MOV AX,3
- JMP SHORT EXIT
- PS5:
- MOV AX,-1 ; Huh?
-
- EXIT:
- POP ES
- POP DS
- CLret AX
- ;******************************************
- END
-
-