; RMPBLD ; ====== ; .; Command file to build the RTL/2 Macro Processor. Five parameters are .; passed from DLV1 or asked for by this command file. These are :- .; 1) What partition is being used ? .; 2) Is memory resident workfile available ? .; 3) Is memory resident FCS available ? .; 4) Are you building tasks to run in I- & D- Space ? .; 5) Do you have FCSRES or FCSFSL ? .; .enable substitution .disable lowercase .gosub setcli .; .if P1 ne "" .goto gotpar .asks [::"GEN"] P1 In which partition is the macro processor to run .gotpar: ; .if P2 ne "" .goto gotwrk .sets P2 "DISK" .ask WRK Should the macro processor workfile be memory-resident (default is disk) .ift WRK .sets P2 "MEM" .gotwrk: ; .if P3 ne "" .goto gotfcs .sets P3 "LIB" .ask FCS Should the macro processor use memory-resident FCS (default is library) .ift FCS .sets P3 "MEM" .gotfcs: ; .if P4 ne "" .goto gotrsx .sets P4 "M" .ask MPLUS Will the macro processor run in separate I- & D- spaces .ift MPLUS .sets P4 "MPLUS" .gotrsx: .; .if P3 ne "MEM" .goto nomlib .if P5 ne "" .goto gottyp .settyp: .sets P5 "FCSRES" .if P4 ne "MPLUS" .goto gottyp ; .asks TYP Build the macro processor using FCSRES or FCSFSL (enter RES or FSL) .sets P5 "FCS"+TYP .gottyp: .if P5 ne "FCSRES" .and .if P5 ne "FCSFSL" .goto settyp .if P5 eq "FCSRES" .sets MEMLIB "LIBR=FCSRES:RO" .if P5 eq "FCSFSL" .sets MEMLIB "SUPLIB=FCSFSL:SV" .nomlib: ; .sets TABLES "RMPTABS" .if P4 eq "MPLUS" .sets TABLES "IDRMPTABS" lbr rmptabs.obj=rmplibrsx/ex:'TABLES' .; .sets CIPW "CIP9" .if P2 eq "MEM" .sets CIPW "CIP8" lbr cipw.obj=rmpciplib/ex:'CIPW' .; .; .sets SWITCH "" .if P4 eq "MPLUS" .sets SWITCH "/ID" ; ; Creating taskbuild command file. ; .open #1 rmpbld.lnk .enable data #1 RMP.TSK/CP'SWITCH',RMP/-SP=RMP/MP PAR='P1' TASK=...RMP UNITS=7 ASG=SY:2:3:4:5:6 ASG=TI:1:7 WNDWS=1 STACK=1024 GBLDEF=STKCTL:0 GBLPAT=RSXBA1:PAGING:74 .disable data #1 .if P3 ne "MEM" .goto nmemlb .if P2 eq "MEM" .and .if P5 eq "FCSRES" .data #1 GBLPAT=RSXBA1:WINDOW:6 .data #1 'MEMLIB' .nmemlb: .data #1 // .close #1 ; ; Build the Macro Processor. ; tkb @rmpbld.lnk .setn exst .if exst ne 1 .goto done ; ; Delete unwanted files. ; pip rmpbld.lnk;0/de pip rmptabs.obj;0/de pip cipw.obj;0/de .; .done: 'rstcli' .exit 'exst' .; .; Subroutine to determine current CLI; set it to DCL if possible .; .setcli: .sett isdcl .sets rstcli ";" .sets oldcli "''" .if oldcli eq "DCL" .return .if oldcli ne "MCR" .goto lsc1 .ifnins dcl .setf isdcl .iff isdcl .return .sets rstcli "mcr set /mcr=ti:" .lsc1: dcl set /dcl .if rstcli eq ";" .sets rstcli "set term/cli:"+oldcli .return