.ENABLE GLOBAL .ENABLE SUBSTITUTION .SETS MCR "" .IF NE "MCR" .SETS MCR "MCR " .SETS UIC .IFDF .IF NE "[]" .SETS UIC !Named directory ; ; Building OPA -- Online Pool Analyzer ; ; Nota bene: OPA is only for RSX11M, not RSX11M-Plus! ; .SETF SRCDEV .IFDF $SRC .GOTO SRCOK .SETS $SRC COMMAN .PARSE $SRC " " $SRC DUMMY .PARSE $SRC "/" $SRC DUMMY .PARSE $SRC "." $SRC EXT .IF EXT EQ "" .SETS EXT "CMD" .TESTFILE '$SRC'.'EXT' .PARSE ":" $SRC TEMP .TESTFILE SY: .PARSE ":" SYDEV TEMP .IF $SRC EQ SYDEV .SETT SRCDEV .SETS $SRC $SRC+":" .SRCOK: .SETF Q .IFDF $LST .AND .IFDF $MP .GOTO CHKMP .ASK Q Generate listings .IFT Q .SETS $LST "" .IFF Q .SETS $LST "NL:" .SETF Q .ASK Q Generate maps .IFT Q .SETS $MP "" .IFF Q .SETS $MP "NL:" .CHKMP: .IFNINS ...SLP INS $SLP .IF NE .GOTO OPAEX 'mcr'SLP @'$SRC'OPA.COR .IF NE .GOTO OPAEX 'mcr'MAC OPA,'$LST'OPA/-SP=LB:[1,1]EXEMC/ML,[11,10]RSXMC,SY:'UIC'OPA .IF NE .GOTO OPAEX 'mcr'PIP OPA.MAC;*/DE .OPEN OPATKB.CMD .DATA OPA/PR,'$MP'OPA/-SP=OPA,LB:[1,54]RSX11M.STB/SS,[1,1]EXELIB/LB .DATA / .DATA STACK=20 .DATA TASK=...OPA .DATA ASG=TI:1 .DATA UNITS=1 .DATA PRI=100 .DATA // .CLOSE 'mcr'TKB @OPATKB .IF NE .GOTO OPAEX 'mcr'PIP OPATKB.CMD;*/DE,OPA.OBJ;* .GOTO 10 .OPAEX: ; ; An error has occured building COR or SPC. Please correct and retry ; .10: .SETN STATUS .EXIT STATUS