Listing of file='IDS2PR53' on disk='vmedia/701-2716B.wvd.zip'
# Sector 592, program filename = 'IDS2PR53' 1000 REM "IDS2PR53" - Release 2.1 - RETRIEVE ARCHIVED REPORTS 1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM" : DIM F2$(32)8,J3$4 : F6$(14)="N" : IF C5$="R"THEN J3$=HEX(8201D3D2) : ELSE J3$=HEX(8201D3C2) : GOSUB '43(1) : J1=Q : GOSUB '43(5) : E1$=E$ : GOSUB '43(6) : E2$=E$ : DATA LOAD BA T#D1,(0)F2$() : J2=VAL(STR(F2$(),2))-1 : FOR I=0TO J2 1045 PRINT HEX(06020402000E);AT(19,15);"Scanning disk catalog for files in sec tor";I; : DATA LOAD BA T#D1,(I)F2$() : FOR J3=2TO 32STEP 2 : IF VAL(F2$(J3))=0OR STR(F2$(J3-1),1,2)<>HEX(1000)OR VER(F2$(J3),"IDS2wS## ")=8THEN 2270 : IF F2$(J3)<E1$THEN 2270 : IF E2$<>" "AND F2$(J3)>E2$THEN 2270 1150 LIMITS T#D1,F2$(J3),A,B,C,D : IF D=0THEN 2270 : DATA LOAD BA T#D1,(A)E4$() : IF STR(E4$(),,4)<>J3$THEN 2270 : IF E$(29)<>" "AND E$(29)<>STR(E4$(),65,1)THEN 2270 : IF J1$<>" "AND J1$<>STR(E4$(),66,3)THEN 2270 : IF J2$<>" "AND J2$<>STR(E4$(),69,4)THEN 2270 : IF STR(E$(),37,3)<>" "AND STR(E$(),37,3)<>STR(E4$(),62,3)THEN 2270 1190 IF STR(E4$(),74,3)<>" "AND STR(E4$(),74,3)<>R4$THEN 2270 : F8=A : MAT REDIM F$(18)83 : DATA LOAD DA T#D1,(F8)F$() : MAT REDIM F$(E9)1 : E$=STR(F$(),18,32) : PRINT AT(19,0,80);"Processing file: ";HEX(22);STR(F2$(J3),1,8);HEX(22);" Description: ";HEX(22);STR(E$,1,32);HEX(22) : E1=0 1225 CONVERT STR(F$(),152,3)TO J : CONVERT STR(F$(),155,3)TO N : CONVERT STR(F$(),157,3)TO O : CONVERT STR(F$(),845,3)TO M : Z=ABS(INT(-9*J/249)) : J=ABS(INT(-8*J/249)) : O=MAX(1,ABS(INT(-9*O/249))) : M=INT(256/(M+5)) : N=MAX(1,ABS(INT(-N/M))) : IF C5$="B"THEN N=0 : E3=8+Z+J+O+N : LIMITS T#D1,F2$(J3),F8,B,C,D : E4=F8+E3-2 1240 PRINT AT(20,63); : PRINTUSING 1250,E1 1250 %#### edit records 1260 IF E4-F8>=C-2THEN 1500 : E4$()=" " : MAT REDIM E4$(3)83 : DATA LOAD DA T#D1,(E4)E4$() : IF END THEN 1500 : E1=E1+1 : E4=E4+1 : GOTO 1240 1500 MAT REDIM E4$(16)16 1510 E$=F2$(J3)OR ALL(20) : LIMITS T#3,E$,A,B,C,D : IF D=2AND B-A+1>=E3THEN 2110 : IF D=0THEN 1900 : E$="File is a" : IF D<0THEN E$=E$&" scratched" : IF ABS(D)=2THEN E$=E$&" data" : ELSE E$=E$&" program" : E$=E$&" file - EXEC=Overwrite, FN'0=Bypass, FN'31=Cancel" : GOSUB '63(STR(E$,1,16),STR(E$,17),"!") : GOSUB '34(250) 1570 IF Q<>31THEN 1580 : F6$(14)="Y" : COM CLEAR D1 : LOAD T#2,R3$(1)1000, 1580 IF Q=0THEN 2260 : E$=F2$(J3)OR ALL(20) : SCRATCH T#3,E$ : LIMITS T#3,E$,A,B,C,D : IF B-A+1>=E3THEN 1800 : F5$="JUNK" : Z=-1 1630 Z=Z+1 : CONVERT ZTO STR(F5$,5,4),(####) : LIMITS T#3,F5$,A,B,C,D : IF D<>0THEN 1630 : DATA SAVE DC OPEN T#3,(E$)F5$ : DATA SAVE DC #3,END : SCRATCH T#3,F5$ : GOTO 1510 1800 DATA SAVE DC OPEN T#3,(E$),E$ : DSKIP #3,E3S : DATA SAVE DC #3,END : GOTO 1510 1900 J=E3 : DATA SAVE DC OPEN T#3,(J)E$ : ERRORF6$(14)="Y" : GOSUB '35("Not enough room on screen disk") : COM CLEAR D1 : LOAD T#2,R3$(1)1000, 1910 DSKIP #3,E3-2S : DATA SAVE DC #3,END : GOTO 1510 2110 LIMITS T#3,E$,C2,Z,Z,Z : LIMITS T#D1,F2$(J3),F8,J7,C1,Z : COPY T#D1,(F8,F8+E3-3)TO T#3,(C2) : E4=F8+E3-2 : MAT REDIM F$(256)1 : DATA LOAD BA T#3,(C2)F$() : IF STR(F$(),,4)<>J3$THEN 2140 : STR(F$(),4,1)=OR HEX(20) : DATA SAVE BA T#3,(C2)F$() : GOTO 2160 2140 GOSUB '35("Error in archived file -- bypassing") : GOTO 2270 2160 IF E1=0THEN 2240 : V=2 : GOSUB '47 : FOR J8=1TO E1 : MAT REDIM F$(E9)1 : F$()=" " : IF E4-F8>=C1-2THEN 2240 : MAT REDIM F$(3)83 : DATA LOAD DA T#D1,(E4,E4)F$() : MAT REDIM F$(E9)1 : PRINT AT(20,0); : PRINTUSING 2200,J8,STR(F$(),14) 2200 %Retrieving edit number ##### Operation = "########" 2210 GOSUB '66(2,0) : STR(E$(),999)=F$() : F6$(14)="N" : E$=STR(F$(),7,16)&STR(F$(),3,1)&STR(F$(),,2) : GOSUB '41(E1$(2),E$,.5) : F$()=STR(E$(),999) : GOSUB '42(E1$(2),0) : F6$(14)="Y" : NEXT J8 2240 GOSUB 2290 : IF E1$<E2$OR E2$=" "THEN 2260 : J3=32 : I=J2 2260 PRINT AT(19,0,80);AT(20,0,80) 2270 NEXT J3,I : F6$(14)="Y" : LOAD T#2,"IDS2PS51"1000, 2290 X=VAL(STR(E1$(2),48),2)*VAL(STR(E1$(2),43),2) : Y=0 : FOR J8=0TO VAL(STR(E1$(2),43),2)-1 : DATA LOAD BA T#2,(VAL(STR(E1$(2),55),2)+J8*VAL(STR(E1$(2),46),2))E4$() : Y=Y+VAL(STR(E4$(),9),2) : NEXT J8 : GOSUB '55(3,Y*100/X) : GOSUB '55(4,X-Y) : RETURN 3699 ON ERRORE1$,E2$GOTO 3700 3700 DEFFN'31 : E$="IDS2PR53" : IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000, : STOP "ERROR"