.PSECT ALWAYS 02SEP0 OFFSET .MCALL DIR$ ;************************************************************************ ;* * ;* MODULE: OFFSET - ASSIGN A VALUE TO OFFST * ;* * ;* AUTHOR: KEVIN ANGLEY * ;* * ;* DATE: 02-SEP-80 * ;* * ;* INPUT PARAMETERS: * ;* * ;* R0 POINTS TO THE COMMAND LINE IN PROCESS * ;* * ;* OUTPUT PARAMETERS: * ;* * ;* R0 POINTS JUST BEYOND THE LAST CHARACTER OF THE OFFSET * ;* * ;* DESTROYS: R1 * ;* * ;* IF NO VALUE IS SPECIFIED, THE OFFSET VALUE IS DISPLAYED. * ;************************************************************************ OFFSET:: TSTB (R0) ; VALUE SPECIFIED? BEQ 10$ ; NO - JUST OUTPUT THE VALUE CALL GETHX4 ; GET A 4-DIGIT HEX VALUE FROM COMMAND LINE BCS 250$ ; CS: ERROR ; MOV R1,OFFST ; ESTABLISH NEW OFFSET VALUE 10$: PUSH R0 ; SAVE COMMAND STRING POINTER MOV OFFST,R1 ; PREPARE FOR CONVERSION MOV #OFF+OFFLEN-4,R0 ; PUT INTO MESSAGE CALL PUTHX4 ; CONVERT TO HEX - PUT IN MESSAGE OUTPUT OFF POP R0 ; RESTORE COMMAND STRING POINTER BR 250$ ; EXIT 250$: CALL$R EXTRA ; PURGE COMMAND LINE OF SUPERFLUOUS JUNK ; AND RETURN FROM THERE .END