home *** CD-ROM | disk | FTP | other *** search
- ; PCKEY() function for Clipper WHATKEY program
- ;
- ; Keyboard i/o ROM routine, waits for keypress and returns
- ; 2 bytes, a scan code and an ASCII code (or a 00)
- ; See Assembly Language Primer for the IBM PC&XT, R. Lafore,
- ; the Waite Group, pp. 277-279
- ; and Programmer's Guide to the IBM PC, P. Norton,
- ; Microsoft Press, pp. 134-136,204
- ;
- PUBLIC PCKEY
- EXTRN _PARNI:FAR
- EXTRN _RETNI:FAR
- PRO_NAM SEGMENT
- ASSUME CS:PRO_NAM
- PCKEY PROC FAR
- PUSH BP ;STANDARD SAVES ETC.
- MOV BP,SP
- PUSH DS
- PUSH ES
-
- MOV AH,0 ;READ CHARACTER FUNCT
- INT 16H ;KEYBOARD I/O ROM CALL
- ;LEAVES DESIRED 2-BYTE RESULT IN AX
- ;CONSISTING OF SCAN CODE - ASCII VALUE
-
- POP ES ;STANDARD RESTORES BEFORE CALLING _RETs
- POP DS
- POP BP
- PUSH AX
- CALL _RETNI
- ADD SP,2
- RET
- PCKEY ENDP
- PRO_NAM ENDS
- END ;END OF ASSEMBLY