Listing of file='IDS2PR31' on disk='vmedia/701-2716B.wvd.zip'
# Sector 406, program filename = 'IDS2PR31' 1000 REM "IDS2PR31" - REPORT MASK DOCUMENTATION (REPORT MASK - PART 2) 1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM" : DIM J0$11,J1$5,J2$8,J3$4 : GOSUB '39(D9$,3) : J6=P : LIMITS T#J6,D9$,D1,D2,D2,D2 : IF D2<>2OR J0<9OR J1<1OR J2<0OR D9<0OR D1<2THEN 1020 : GOTO 1030 1020 F0$="Invalid report control file -- Exec to continue" : GOSUB '53(F0$) : GOSUB '34(250) : $CLOSE#1 : COM CLEAR J3 : LOAD T#2,"IDS2MR01"1000, 1030 D4,D5=0 : J8,D7=0 : GOSUB 1220 : IF D9<1THEN 1200 1040 MAT REDIM F$(256)1 : DATA LOAD BA T#J6,(D1+J0+D4)F$() : MAT REDIM F$(E9)1 1050 J1$=STR(F$(),(J2+5)*D5+1,5) : J2$=ALL(00) 1090 KEYIN E6$,1090,1100 : GOTO 1110 1100 IF VAL(E6$)<>31THEN 1110 : COM CLEAR J3 : LOAD T#2,R3$(1)1000, 1110 HEXUNPACKSTR(J1$,,2)TO J2$ : $TRAN(STR(J2$,3),HEX(2030))R : E$=STR(J2$,,2) : STR(E$,11)=STR(J2$,3,1)&" "&STR(J2$,4,1) : J2$=STR(J1$,3,3)&ALL(00) : FOR I=1TO 4 : ROTATEC(STR(J2$,I),-2) : NEXT I : ADD(STR(J2$,,4),20) : STR(E$,4,6)=STR(J2$,,1)&" "&STR(J2$,2,1)&" "&STR(J2$,3,2) : CONVERT D5+D4*J7+1TO STR(E$,16,2),(##) : IF J2<81THEN I=MIN(64,J2) : ELSE I=J2-17 1120 STR(E0$(),2)=E$ : STR(E0$(),19)=STR(F$(),(J2+5)*D5+6,I)AND ALL(7F) : STR(E0$(),,1)=BIN(LEN(E0$())) : GOTO 1140 1130 STR(E$,18)=STR(F$(),(J2+5)*D5+5,I) 1140 D6=D6+1 : GOSUB '49(0) : IF J2>99THEN 1160 : IF D6<48THEN 1180 : GOTO 1170 1160 IF D6<49THEN 1180 1170 J8=1 : GOSUB 1260 : J8=0 : GOSUB 1230 : D5=D5+1 : IF D4*J7+D5>=D9THEN 1210 : GOTO 1190 1180 D5=D5+1 : IF D4*J7+D5>=D9THEN 1200 1190 IF D5<>J7THEN 1050 : D5=0 : D4=D4+1 : GOTO 1040 1200 J8=1 : GOSUB 1260 1210 LOAD T#2,"IDS2PR32"1000, 1220 IF J2<117AND D6>40THEN 1230 : IF J2>116AND D6>38THEN 1230 : E0$()=HEX(01) : D6=D6+2 : GOSUB '49(0) : GOSUB '49(0) : GOTO 1240 1230 E0$()=HEX(01) : J4=J4+1 : GOSUB '48(0,HEX(0C),0) : GOSUB '49(0) : E$="Report "&HEX(22)&STR(E$(),2,8)&HEX(22)&" - "&STR(E$(),18,32) : GOSUB '48(2,E$,0) : E$=STR(R2$,1,2)&"/"&STR(R2$,3,2)&"/"&STR(R2$,5,2)&" Page ## of ##" : CONVERT J4TO STR(E$,16,2),(##) : CONVERT J9TO STR(E$,22,2),(##) : GOSUB '48(57,E$,0) : D6=1 : GOSUB '49(0) 1240 D7=D7+1 : GOSUB '48(0," ",0) : D6=D6+1 : GOSUB '49(0) : GOSUB '48(0,"Print control Line Format Image Window",0) : D6=D6+1 : GOSUB '49(0) : IF J2<117THEN I=45 : ELSE I=43 : I=1+MIN(I*(D7-1),D9) : CONVERT ITO J3$,(####) : L=POS(J3$<>HEX(30)) : E$="No T L FS B A Window below displays lines" 1250 E$=E$&" "&STR(J3$,L)&" to" : CONVERT MIN(I+43,D9)TO J3$,(####) : I=MAX(POS(J3$<>HEX(30)),1) : E$=E$&" "&STR(J3$,I)&", columns 1 to" : CONVERT MAX(J2-17,63)TO J3$,(####) : I=MAX(POS(J3$<>HEX(30)),1) : E$=E$&" "&STR(J3$,I) : GOSUB '48(0,E$,0) : D6=D6+1 : GOSUB '49(0) : GOSUB '48(0,"-- - - -- - -",0) : D6=D6+1 : GOSUB '49(0) 1260 J0$="0123456789" : IF J8=0THEN FOR D3=1TO 3 : ELSE FOR D3=3TO 1STEP -1 : E0$()=BIN(MAX(80,J2)+1) : IF D3<>1THEN FOR I=1TO MIN(15,MAX(8,INT(J2/10))) : ELSE IF J2>99THEN FOR I=10TO MIN(INT(J2/10),15) : ELSE GOTO 1290 : K=I-INT(I/10)*10+1 1270 IF D3=1THEN STR(E0$(),I*10+18,1)="1" : ELSE IF D3=2THEN STR(E0$(),I*10+18,1)=STR(J0$,K,1) : ELSE STR(E0$(),(I-1)*10+19,10)=STR(J0$,2,9)&"0" : NEXT I : IF D3<>3THEN 1280 : IF J2<64THEN L=J2-INT(J2/10)*10 : ELSE L=(J2-17)-INT((J2-17)/10)*10 : IF L=0OR J2<81THEN 1280 : IF J2<64THEN J=60 : ELSE J=INT((J2-17)/10)*10 : STR(E0$(),J+19)=STR(J0$,2,L) 1280 D6=D6+1 : GOSUB '49(0) 1290 NEXT D3 : E0$()=HEX(01) : IF J8=0THEN 1330 : GOSUB '48(0,"T = Line type L = Level FS = SYSFLAG# & state for B = Extra line feeds",0) : D6=D6+1 : GOSUB '49(0) : GOSUB '48(0," B=Banner Blank optional sysflag test be fore line is printed",0) : D6=D6+1 : GOSUB '49(0) 1300 GOSUB '48(0," D=Detail 0-9 if used, line prints A = Extra line feeds",0) : D6=D6+1 : GOSUB '49(0) : GOSUB '48(0," F=Footer P = Page only if sysflag state af ter line is printed,",0) : D6=D6+1 : GOSUB '49(0) 1310 GOSUB '48(0," H=Header R = Report AND level are correct. in addition to the 1,",0) : D6=D6+1 : GOSUB '49(0) 1320 E$=" T=Test N=Null State"&HEX(3A2022)&"Y"&HEX(22)&"=ON, "& HEX(22)&"N"&HEX(22)&"=OFF issued automatically." : GOSUB '48(0,E$,0) : D6=D6+1 : GOSUB '49(0) 1330 RETURN 3699 ON ERRORE1$,E2$GOTO 3700 3700 DEFFN'31 : E$="IDS2PR31" : IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000, : STOP "ERROR"