.TITLE HCMAG .ENABL LC ; ; CALL HCMAG -- This subroutine provides scaling of plots. ; When call as is, the scaling is set to provide true inches ; on the hard copies of the plots, i.e. as when using a ; TEKTRONIX 4631. If called with the optional single real ; argument, the scaling is set equal to that argument. ; .PSECT HCMAG ; ; HCMAG:: TST (R5) ;ANY ARGUMENTS? BEQ NONE ;BRANCH IF NONE ; MOV 2(R5),R0 ;GET ADDRESS OF ARGUMENT BR DOIT ;BRANCH TO SET EVERYTHING ; NONE: MOV IsTerm,R0 ;GET DEVICE TYPE ASL R0 ;SHIFT LEFT TWICE ASL R0 ;TO MULTIPLY BY TWO ADD #TABLE,R0 ;ADD TABLE ADDRESS TO OFFSET ; DOIT: MOV (R0)+,CMag ;SET CMag MOV (R0),CMag+2 ; CONT. ; MOV R5,-(SP) ;SAVE R5 MOV #LIST0,R5 ;SET ARGUMENT LIST FOR SIZEUP JSR PC,SIZEUP ;RESCALE MOV (SP)+,R5 ;RESTORE R5 RTS PC ;RETURN ; ;MAGNIFICATION FACTORS FOR INCHES ON HARD COPIES LIST0: .WORD 2,CSize,Upsiln ;ARGUMENT LIST FOR SIZEUP .PSECT TABLE,RW,GBL,OVR,D,REL TABLE: ;TABLE OF MAGINIFACTION FACTORS