.TITLE VIRABS - ROUTINE TO CONVERT VIRT # TO ABS INTEGER .IDENT 'VITA00' .PSECT VIRABS ; KEN DEMERS ; UTRC ; NOVEMBER 1979 ; THIS ROUTINE CONVERTS A F.P. VIRTUAL NUMBER ; TO A ABSOLUTE INTEGER SCREEN COORDINATE. THE ; CONVERSION IS DONE USING THE COORDINATE SYSTEM ; (WINDOW) ESTABLISHED BY GRID ; ON ENTRY: ; AC0 = F.P. OF ABSOLUTE INTEGER MAX ; AC1 = F.P. OF MAX RANGE ; R0 = A(VIRTUAL F.P. # TO BE CONVERTED) ; INTERNAL GLOBALS .GLOBL V$IRABS ; ASSIGNMENTS AC0 = 0 ;FPP ACCUMULATOR 0 AC1 = 1 AC2 = 2 V$IRABS: MULF (R0),AC0 ;VIRT # * MAX OF AXIS STF AC1,RANGE ;GET RANGE CFCC ;GET COND CODES BGE VIR10 ;RANGE WAS POS NEGF RANGE ;MAKE IT POS VIR10: DIVF RANGE,AC0 ;GET ABS # STCFI AC0,R0 ;ON EXIT R0= INT OF RESULT RETURN RANGE: .WORD 0,0 ;F.P. RANGE .END