ASMB,Q,C * NAME: $CVT3 * SOURCE: 92071-18322 * RELOC: 92071-1X322 * PGMR: DJN * * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1980. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * **************************************************************** * * NAM $CVT3,6 92071-1X322 REV. 2041 800530 ENT $CVT3,$CVT EXT .ZPRV A EQU 0 B EQU 1 * * INTEGER TO ASCII CONVERSION. NUMBER IN A, * RESULT IN $CVT,$CVT+1,$CVT+2, WITH LEADING * ZEROES SUPRESSED. * DCVT DEF $CVT DCVT2 DEF $CVT+2 $CVT BSS 3 .B NOP TEMP NOP PRIO NOP $CVT3 NOP JSB .ZPRV SHARABLE DEF EXIT STB .B SAVE B LDB DCVT2 INIT LOCATION OF BUFFER STB TEMP LDB =A FILL BUFFER WITH SPACES STB $CVT STB $CVT+1 STB $CVT+2 LDB =D8 ASSUME BASE 8 SEZ BASE 10? LDB =D10 YES IT IS STB PRIO SET CONVERSION PRIOR ADDRESS CLE DPCRL CLB DIV PRIO DIVIDE BY PRIO ADB =B20 CONVERT TO ASCII BLANK SEZ IF HIGH DIGIT BLF,BLF THEN ROTATE ADB TEMP,I ADD CURRENT VALUE STB TEMP,I STORE THE CONVERTED VALUE CCB,SEZ PREPARE FOR SUBTRACT ADB TEMP IF HIGH CHAR. BACKUP SEZ STB TEMP TEMP IS NOW THE BUFFER POINTER CME,SZA IF MORE DIGITS JMP DPCRL THEN SET THE NEXT ONE * CCE LDA DCVT LDB .B EXIT JMP $CVT3,I RETURN DEF $CVT3 END