Listing of file='IDS2PP12' on disk='vmedia/701-2717B.wvd.zip'
# Sector 269, program filename = 'IDS2PP12'
1000 REM "IDS2PP12" - Release 2.1 - PROGRAM GENERATOR - TABLE LOOK-UP / REPLAC
E
1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
1015 DEFFNZ(Z)=LEN(F$())+1
: $TRAN(E$()<127,428>,HEX(2080))R
: F5$=STR(E$(),98,8)
: F9$=STR(E$(),106)
: IF F9$<>" "THEN CONVERT F9$TO T
: ELSE T=0
: F9$=STR(E$(),334)
: IF F9$<>" "THEN CONVERT F9$TO R
: ELSE R=0
: L=MAX(T,R)
: IF F5$=" "THEN 3000
: IF F5$="LSTFNKEY"THEN 1115
: ELSE GOSUB 3080
1110 E4$()=STR(E$(),127,199)
: STR(F$(),FNZ(Z))=HEX(9A)&"'43("&E8$&"):"
: E$=STR(E$(),111,8)
: IF E4$()=" "THEN 2010
: IF T=1THEN 1500
: GOTO 1120
1115 E4$()=STR(E$(),127,199)
: IF E4$()=" "THEN 2000
: STR(F$(),FNZ(Z))="H,J1="&HEX(DF22)&E4$()&HEX(22)&"=F6$(15)):"
: GOTO 2000
1120 STR(F$(),FNZ(Z))="F$()="&HEX(22)&E4$()&HEX(223A)
: Q=T*ABS(INT(-LEN(E4$())/T))
: GOSUB 3090
: C4$=E8$
: Q=T
: GOSUB 3090
: F9$=E8$
: STR(F$(),FNZ(Z))=HEX(A8)&"SEARCHF$()<,"&C4$&">,="&HEX(D3)&"E$,,"&F9$&HEX(
29B2)&"F9$"&HEX(B0)&F9$&":"
: Q=T-1
: GOSUB 3090
: C4$=E8$
1140 STR(F$(),FNZ(Z))="H,J1="&HEX(C528DC)&"F9$,2)+"&C4$&")/"&F9$&"):"
: GOTO 2000
1500 STR(F$(),FNZ(Z))="H,J1="&HEX(DF22)&E4$()&HEX(22)&"=E$):"
2000 E$=STR(E$(),111,8)
: IF E$=" "THEN 3000
: IF E4$()>" "THEN F$()=F$()&"Q=0:"
: STR(F$(),FNZ(Z))=HEX(9F)&"H=0"&HEX(B1)
2010 STR(F$(),FNZ(Z))=HEX(9A)&"'41("&HEX(22)&E$&HEX(22)&",E$,0):"
: IF STR(E$(),119,8)=" "THEN 3000
2030 F5$=E$OR ALL(20)
: GOSUB '39(F5$,5)
: IF Q=0THEN 2100
: MAT REDIM E2$(6)83
: DATA LOAD DA T#P,(A)E2$()
: IF STR(E2$(),10,1)<"5"THEN 2040
: E$=STR(E2$(),82)
: GOTO 2030
2040 MAT REDIM E2$(24)83
: DATA LOAD DA T#P,(A+8)E2$()
: MAT SEARCHE2$(),=STR(E$(),119,8)TO F9$STEP 8
: IF F9$=HEX(0000)THEN 2100
: DATA LOAD DA T#P,(A)E2$()
: X=INT((VAL(F9$,2)+7)/8)
: IF X=0THEN 2100
: Q=INT(VAL(STR(E2$(),X*6+493),2)/16)
: GOSUB 3090
: J5$=E8$
: Q=VAL(STR(E2$(),X*6+495))
: GOSUB 3090
: C4$=E8$
2070 F5$=STR(E$(),326)
: GOSUB 3080
: STR(F$(),FNZ(Z))=HEX(9F)&"Q<>0"&HEX(B19A)&"'45("&E8$&","&HEX(D3)&"F$(),"&
J5$&","&C4$&")):"
2100 GOSUB '33(C7$)
3000 F5$=STR(E$(),326)
: IF F5$=" "THEN 3050
: E4$()=STR(E$(),339,215)
: IF E4$()=" "THEN 3050
: Q=R
: GOSUB 3090
: J5$=E8$
: Q=R-1
: GOSUB 3090
: C4$=E8$
: GOSUB 3080
: STR(F$(),FNZ(Z))="F$()="&HEX(22)&E4$()&HEX(223A9F)&"J1>0"&HEX(B19A)&"'45(
"&E8$&","&HEX(D3)&"F$(),J1*"&J5$&"-"&C4$&","&J5$&")):"
3050 $TRAN(F$()<,LEN(F$())>,HEX(1A3A))R
: LOAD DA T#2,(D$(29))1000,
3060 STOP "LOAD P/F'S"
: STOP "END IT"
3080 MAT SEARCHE3$(),=STR(F5$,,8)TO F9$STEP 8
: IF F9$=HEX(0000)THEN IF VER(F5$,"@TSTFLD#")=8THEN F9$=BIN(VAL(STR(F5$,8))
*8+1619,2)
: Q=INT((VAL(F9$,2)+7)/8)
: IF Q=0THEN Q=250
3090 E8$=" "
: $PACK(F=HEX(1006))E8$FROMQ
: E8$=STR(E8$,2)
: RETURN
3100 E$=STR(E$(),I*56+J*28+110,16)
: F0$=HEX(22)&E$&HEX(22)
: IF NUM(E$)>LEN(E$)THEN X=1
: ELSE X=0
: IF X=1THEN CONVERT E$TO Q
: RETURN
3110 F$(FNZ(Z))=HEX(9F)
: IF J=1AND E$(I*56+109)<>" "THEN STR(F$(),FNZ(Z))=E7$&"1"&E$(I*56+126)
: RETURN
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PP12"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"