; SUBROUTINES ATTACH AND DETACH FOR FORTRAN ; FORTRAN CALL: ; CALL ATTACH(LUN,IST[,IER]) OR ; CALL DETACH(LUN,IST[,IER]) ; WHERE: ; LUN = LOGICAL UNIT TO BE ATTACHED OR DETACHED ; IST = 1 -> OK ; = 2 -> REQUEST REJECTED ; IER = ERROR CODE (OPTIONAL) .TITLE ATTDET .GLOBL ATTACH DETACH .MCALL QIOW$ DIR$ .CSECT QIOTAB: QIOW$ IO.ATT,0,1,,STATUS STATUS: .BLKW 2 ATTACH: MOV #IO.ATT,QIOTAB+Q.IOFN BR COMMON DETACH: MOV #IO.DET,QIOTAB+Q.IOFN COMMON: MOV @2(R5),QIOTAB+Q.IOLU DIR$ #QIOTAB,ERRST MOV @#0,R0 BMI ERRST MOVB STATUS,R0 BMI ERRST MOV #1,@4(R5) CLR @6(R5) RTS PC ERRST: MOV #2,@4(R5) CMP (R5),#2 BLE 1$ MOV R0,@6(R5) 1$: RTS PC .END