.TITLE BIN2D CONVERT ONE WORD TO DECIMAL .IDENT /02MAY7/ ;13:25:00 LV ; .ENTRY BIN2D CONVERT ONE WORD TO DECIMAL ;+ ; B I N 2 D ; ; PURPOSE: CONVERT ONE BINARY WORD TO DECIMAL CHARACTERS ; ; INTERFACE: CALLING SEQUENCE: ; CALL BIN2D ; ; INPUT: R0 -- CHARACTER COUNT ; R1 -- DATA WORD ; ; OUTPUT: R2 -- OUTPUT BUFFER POINTER ; ; LANGUAGE: MACRO-11 ; ; RESTRICTIONS: NOT FORTRAN-CALLABLE ; ;- ; REVISIONS: ; 10-SEP-76 SS MAKE INDEPENDENT OF SPECIAL MACROS ; 02-MAY-77 LV UPDATED TO CONFORM TO STANDARDS ; ; MACRO CALLS .MCALL RETURN ; BIN2D:: MOV R3,-(SP) ;SAVE WORKING REGISTERS MOV R4,-(SP) MOV R5,-(SP) MOV R0,R3 ;COPY CHARACTER COUNT MOV R1,R5 ;SET DATA WORD IN DIVIDE REGISTER BIT #100000,R5 BEQ 20$ NEG R5 MOVB '-,(R2)+ DEC R0 20$: CLR R4 ;CLEAR HIGH ORDER DIVIDEND DIV #10.,R4 ;DIVIDE OUT THE DIGIT ADD #60,R5 ;MAKE REMAINDER INTO A CHARACTER MOV R5,-(SP) ;SAVE THE DIGIT MOV R4,R5 SOB R3,20$ 30$: MOVB (SP)+,(R2)+ ;RETURN DIGITS TO USER SOB R0,30$ MOV (SP)+,R5 MOV (SP)+,R4 MOV (SP)+,R3 RETURN .END