Listing of file='IDS2PU03' on disk='vmedia/701-2715B.wvd.zip'
# Sector 521, program filename = 'IDS2PU03'
1000 REM "IDS2PU03" CHANGE DEVICE ADDRESSES
1020 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
: DIM C1$3,C2$8,C3$3,C4$3,C6$3,D3$8,D4$8,D5$3,D6$8,D7$8,J1$48,J7$(9)3,J6$(9
)3,J5$(9)3,J4$(1)2
: MAT REDIM E3$(9)83,F$(256)1
: C2$="IDS2fs "
: A=(R0-#PART)/16+1
: CONVERT ATO STR(C2$,7,2),(##)
: DATA LOAD DC OPEN T#2,C2$
: DATA LOAD DC #2,E3$()
: GOSUB '32("IDS2sU03")
1070 GOSUB '45(1,E9$(3))
: F6$(13)="Y"
1080 GOSUB '34(1)
: C2$=E$
: E9$(3)=E$
: C1$=STR(E3$(),#PART*45-14,3)
: C3$=STR(E3$(),#PART*45-8,3)
: GOSUB '45(2,C3$)
1110 GOSUB '34(2)
: IF F=1THEN 1070
: I=3
: GOSUB '77(E$)
: IF I=9THEN 1110
: SELECT #4<E$>
: C3$=E$
: LIMITS T#4,C2$,C6,D,D,D
: DATA LOAD BA T#4,(C6+1)STR(F$(),1,256)
: IF STR(F$(),1,8)=HEX(00FF1000A2E92022)AND D=1THEN 1130
: GOSUB '38(99," ")
: GOTO 1080
1130 DATA LOAD BA T#4,(C6+2)F$()
: J1$=STR(F$(),110,27)
: STR(F$(),95,3)=C1$
: STR(F$(),101,3)=C3$
: FOR J1=1TO 15
: C5$=STR(F$(),92+3*(J1-1),3)
: GOSUB '45(J1+3,C5$)
: GOSUB '45(J1+18,C5$)
: NEXT J1
: F=18
1190 F=F+1
: IF F>33THEN 1230
: GOSUB '34(F)
: IF F<19THEN 1070
: IF F=24THEN 1210
: IF F<>19THEN 1200
: GOSUB '76(E$)
: IF I=9THEN 1190
: GOTO 1210
1200 GOSUB '77(E$)
: IF I=9THEN 1190
1210 STR(F$(),35+3*F,3)=E$
: GOTO 1190
1230 F6$(13)="N"
: GOSUB '38(116," ")
: GOSUB '34(250)
: IF Q=32THEN 1240
: IF Q=31THEN 1640
: IF Q=33THEN 1070
: GOTO 1230
1240 LIMITS T#4,C2$,C7,D,D,D
: IF C6=C7THEN 1250
: GOSUB '38(100," ")
: END
1250 DATA SAVE BA T#4,(C6+2)F$()
: C1$=STR(F$(),95,3)
: DATA LOAD BA T#4,(C6+1)F$()
: MAT SEARCHF$(),=HEX(A5D7)TO F9$
: STR(F$(),5+VAL(F9$,2),3)=C1$
: DATA SAVE BA T#4,(C6+1)F$()
1270 GOSUB '34(36)
: IF F<>36THEN 1270
: IF E$<>"Y"AND E$<>"y"AND E$<>"1"THEN 1640
1280 C4$=STR(E3$(),#PART*45-5,3)
: GOSUB '45(3,C4$)
: GOSUB '34(37)
: IF F<>37THEN 1280
: I=3
: GOSUB '77(E$)
: IF I=9THEN 1280
: SELECT #5<E$>
: C4$=E$
: FOR N=0TO 8
: J7$(N+1)=STR(J1$,1+3*N,3)
: NEXT N
: C2=0
: C9=0
: FOR N=1TO 9
: C9=0
: FOR C1=1TO C2
: IF J7$(N)=J6$(C1)THEN C9=9
: NEXT C1
: IF C9=9THEN 1330
: C2=C2+1
: J6$(C2)=J7$(N)
1330 NEXT N
1340 J5$()=J6$()
: FOR C1=1TO C2
: E$=STR(J6$(),3*C1-2,3)
: GOSUB '45(34,E$)
1350 GOSUB '45(35,E$)
: GOSUB '34(35)
: IF F<>35THEN 1350
: GOSUB '77(E$)
: IF I=9THEN 1350
: C1$=E$
1360 GOSUB '38(117," ")
: GOSUB '34(250)
: IF Q=32THEN STR(J5$(),3*C1-2,3)=C1$
: IF Q=31THEN 1640
: IF Q=33THEN 1350
: IF Q<>32THEN 1360
: NEXT C1
1370 GOSUB '38(118," ")
: GOSUB '34(250)
: IF Q=32THEN 1390
: IF Q=31THEN 1640
: IF Q=33THEN 1340
: GOTO 1370
1390 DATA LOAD BA T#4,(C6+2)F$()
: E$()=STR(F$(),251,1)
: DATA LOAD BA T#4,(C6+3)F$()
: E$()=E$()&STR(F$(),7,245)
: DATA LOAD BA T#4,(C6+4)F$()
: E$()=E$()&STR(F$(),7,240)
: CONVERT STR(E$(),1,2)TO C1
: IF C1=0THEN 1640
: MAT REDIM E3$(6)83
: MAT REDIM E2$(6)83
: FOR N1=1TO C1
: D6$=STR(E$(),7+8*(N1-1),8)
: GOSUB '38(119,D6$)
1430 D7$=D6$OR ALL(20)
: GOSUB '39(D7$,5)
: C6=A
: IF Q=2THEN 1440
: GOSUB '38(120,D7$)
: END
1440 DATA LOAD DA T#P,(C6)E2$()
: D5$=STR(E2$(),105,3)
: GOSUB '71(D5$)
: STR(E2$(),105,3)=D5$
: CONVERT STR(E2$(),217,1)TO V
: IF V=1THEN 1540
: FOR C9=1TO V-1
: D5$=STR(E2$(),251+3*C9,3)
: GOSUB '71(D5$)
: MAT SEARCHSTR(E2$(),251,3*C9),=D5$TO F9$
: IF VAL(F9$)=0AND D5$<>STR(E2$(),105,3)THEN 1530
: CONVERT C9+1TO C1$,(#)
1500 GOSUB '38(121,C1$)
: GOSUB '34(250)
: IF Q=32THEN 1510
: GOTO 1500
1510 GOSUB '38(122,D6$)
: GOSUB '34(250)
: IF Q=32THEN 1530
: GOTO 1500
1530 STR(E2$(),251+3*C9,3)=D5$
: NEXT C9
1540 GOSUB '39(D7$,5)
: IF C6=ATHEN 1550
: GOSUB '38(101,D7$)
: END
1550 DATA SAVE DA T#P,(C6)E2$()
: FOR C9=1TO 16
: D3$=STR(E2$(),275+8*(C9-1),8)
: IF D3$<>" "THEN 1570
: C9=16
: GOTO 1620
1570 GOSUB '38(119,D3$)
: D4$=D3$OR ALL(20)
: GOSUB '39(D4$,5)
: C6=A
: IF Q=2THEN 1580
: GOSUB '38(123,D4$)
: END
1580 D4$=D3$OR ALL(20)
: GOSUB '39(D4$,5)
: C6=A
: DATA LOAD DA T#P,(C6)E3$()
: D5$=STR(E3$(),105,3)
: GOSUB '71(D5$)
: STR(E3$(),105,3)=D5$
: GOSUB '39(D4$,5)
: IF C6=ATHEN 1610
: GOSUB '38(101,D4$)
: END
1610 DATA SAVE DA T#P,(C6)E3$()
1620 NEXT C9
: NEXT N1
1640 IF F6$(20)="S"THEN 1645
: MAT REDIM E3$(249)8
: LOAD T#2,R3$(1)1000,
1645 GOSUB '38(115," ")
: END
1650 DEFFN'71(D5$)
: FOR C3=1TO C2
: IF J6$(C3)<>D5$THEN 1670
: D5$=J5$(C3)
: C3=C2
1670 NEXT C3
: RETURN
1690 DEFFN'77(C6$)
: J4$()=ALL(00)
: MAT SEARCH"310320330350360370B10B20B30B50B60B70D10D11D12D13D14D15D20D21D2
2D23D24D25D30D31D32D33D34D35D50D51D52D53D54D55D60D61D62D63D64D65D70D71D72
D73D74D75",=STR(C6$,1,3)TO J4$()STEP 3
: IF VAL(J4$(1),2)=0THEN 1700
: IF I=3THEN 1695
: I=0
: RETURN
1695 SELECT #15<C6$>
: LIMITS T#15,"START",Q,Q,Q,Q
: ERRORX=ERR
: IF X=48OR X=91OR X=95THEN 1700
1698 I=0
: RETURN
1700 I=9
: GOSUB '38(102," ")
: F=F-1
: RETURN
1710 DEFFN'76(C6$)
: I=0
: J4$()=ALL(00)
: MAT SEARCH"000005204211212213214215216",=STR(C6$,1,3)TO J4$()STEP 3
: IF VAL(J4$(1),2)<>0THEN RETURN
: GOTO 1700
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
: E$="IDS2PU03"
: IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
: STOP "ERROR"