home *** CD-ROM | disk | FTP | other *** search
- ; __TR_HEXP.ASM
- ;
- ; by Ralph Davis, Leonard Zerman
- ;
- ; Placed in the public domain by Tom Rettig Associates, 10/22/1990.
- ;
-
- PUBLIC __TR_HEXPRINT
-
- ;*************************************
- _TR_HEXP_TEXT SEGMENT BYTE PUBLIC 'CODE'
- ASSUME CS:_TR_HEXP_TEXT
- ;-------------------------------------
- ;
- ; SYNTAX: __tr_hexprint(i, n);
- ;
- ; void __tr_hexprint();
- ; int i;
- ; int n;
- ;
- ; Prints i with n hexadecimal digits.
- ;--------------------
- __TR_HEXPRINT PROC FAR
- PUSH BP
- MOV BP,SP
- PUSH CX
- MOV AX,[BP+6] ; Pick up number to print
- MOV CX,[BP+8]
- CMP CX,2 ; Only two digits?
- JNZ HEXCNVT2 ; No, we're OK.
- XCHG AH,AL ; Yes, switch AH and AL
- HEXCNVT2:
- ROL AX,1
- ROL AX,1
- ROL AX,1
- ROL AX,1
- PUSH AX
- AND AX,000FH
- ADD AL,90H
- DAA
- ADC AL,40H
- DAA
- MOV AH,0EH
- INT 10H
- POP AX
- LOOP HEXCNVT2
- POP CX
- POP BP
- RET
- __TR_HEXPRINT ENDP
- ;--------------------------------------------
- _TR_HEXP_TEXT ENDS
- ;********************************************
- END
-
-