MACRO 00001000 RIOGEN &CONS=,&ALTCONS=,&SRF= 00002500 .* THIS MACRO GENERATES THE DMKRIOCT AND REAL PRINTER AND PUNCH TABLES 00003000 GBLA &RCHCNT,&RCUCNT,&RDVCNT,&RPRTCNT,&RPUNCNT,&RRDRCNT 00004000 GBLA &RPCCNT 00004500 GBLC &CHTBL(16),&RPRNTRS(32),&RPUNCHS(32) 00005000 GBLC &RREADRS(32) 00006000 GBLC &RPCCU(16) @V2D3931 00006500 LCLA &INDEX,&SRFCNT,&ALTCNT 00007150 SPACE 00008000 ENTRY DMKRIOCT 00009000 SPACE 00010000 DMKRIOCT DS 0D 00011000 &INDEX SETA 1 00012000 &ALTCNT SETA N'&ALTCONS 00012100 &SRFCNT SETA N'&SRF 00012150 .LOOP ANOP 00013000 AIF ('&CHTBL(&INDEX)' EQ '').SKIP 00014000 DC AL2(&CHTBL(&INDEX)-DMKRIOCH) 00015000 AGO .CONT 00016000 .SKIP ANOP 00017000 DC H'-1' 00018000 .CONT ANOP 00019000 &INDEX SETA &INDEX+1 00020000 AIF (&INDEX LE 16).LOOP 00021000 SPACE 2 00022000 ENTRY DMKRIOCC,DMKRIOUC,DMKRIODC 00023000 SPACE 00024000 DMKRIOCC DC H'&RCHCNT' 00025000 DMKRIOUC DC H'&RCUCNT' 00026000 DMKRIODC DC H'&RDVCNT' 00027000 SPACE 2 00028000 ENTRY DMKRIOCN 00029000 SPACE 00030000 DMKRIOCN DS 0F 00031000 DC AL2((RDV&CONS-DMKRIODV)/8),XL2'&CONS' 00032000 DC F'&ALTCNT' 00032100 &INDEX SETA 1 00033000 .LALTC AIF (&INDEX GT N'&ALTCONS).RPRT 00033500 DC AL2((RDV&ALTCONS(&INDEX)-DMKRIODV)/8) 00034000 DC XL2'&ALTCONS(&INDEX)' 00034500 &INDEX SETA &INDEX+1 00035000 AGO .LALTC 00035500 .RPRT ANOP 00037000 SPACE 2 00038000 ENTRY DMKRIOPR 00039000 SPACE 00040000 DMKRIOPR DC F'&RPRTCNT' 00041000 &INDEX SETA 1 00042000 .LPRT ANOP 00043000 AIF (&INDEX GT &RPRTCNT).RPUN 00044000 DC AL2((RDV&RPRNTRS(&INDEX)-DMKRIODV)/8) 00045300 DC XL2'&RPRNTRS(&INDEX)' 00045700 &INDEX SETA &INDEX+1 00046000 AGO .LPRT 00047000 .RPUN ANOP 00048000 SPACE 2 00049000 ENTRY DMKRIOPU 00050000 SPACE 00051000 DMKRIOPU DC F'&RPUNCNT' 00052000 &INDEX SETA 1 00053000 .LPUN ANOP 00054000 AIF (&INDEX GT &RPUNCNT).RRDR 00055000 DC AL2((RDV&RPUNCHS(&INDEX)-DMKRIODV)/8) 00056300 DC XL2'&RPUNCHS(&INDEX)' 00056700 &INDEX SETA &INDEX+1 00057000 AGO .LPUN 00058000 .RRDR ANOP 00059000 SPACE 2 00060000 ENTRY DMKRIORD 00061000 SPACE 00062000 DMKRIORD DC F'&RRDRCNT' 00063000 &INDEX SETA 1 00064000 .LRDR ANOP 00065000 AIF (&INDEX GT &RRDRCNT).PCCU 00066100 DC AL2((RDV&RREADRS(&INDEX)-DMKRIODV)/8) 00067300 DC XL2'&RREADRS(&INDEX)' 00067700 &INDEX SETA &INDEX+1 00068000 AGO .LRDR 00069000 .PCCU ANOP 00069300 SPACE 2 00069400 ENTRY DMKRIORN 00069500 SPACE 00069600 DMKRIORN DC F'&RPCCNT' 00069700 &INDEX SETA 1 00069800 .LPCC AIF (&INDEX GT &RPCCNT).SRF 00069950 DC AL2((RDV&RPCCU(&INDEX)-DMKRIODV)/8) 00070030 DC XL2'&RPCCU(&INDEX)' 00070070 &INDEX SETA &INDEX+1 00070100 AGO .LPCC 00070120 .SRF ANOP 00070140 SPACE 2 00070160 ENTRY DMKRIOSF 00070180 SPACE 00070200 DMKRIOSF DS 0F 00070222 DC F'&SRFCNT' 00070240 &INDEX SETA 1 00070245 .LSRF AIF (&INDEX GT N'&SRF).MEND 00070250 DC AL2((RDV&SRF(&INDEX)-DMKRIODV)/8) 00070255 DC XL2'&SRF(&INDEX)' 00070260 &INDEX SETA &INDEX+1 00070265 AGO .LSRF 00070270 .MEND ANOP 00070300 EJECT 00070310 COPY NETWORK @V2D3931 00070410 EJECT 00071000 COPY DEVTYPES 00072000 EJECT 00073000 COPY RBLOKS 00074000 AIF (N'&SRF GT 32).ERR1 00074100 MEXIT 00074200 .ERR1 MNOTE 0,'MORE THAN 32 SRF DEVICES SPECIFIED' 00074300 MEND 00075000