image of READY prompt

Wang2200.org

Listing of file='IDS2PS96' on disk='vmedia/701-2715B.wvd.zip'

# Sector 429, program filename = 'IDS2PS96'
1000 REM "IDS2PS96" - Release 2.1 - SCREEN/REPORT COPY EDIT BY SEQUENCE #
1010 DIM J9$17,J9$(10)1
   : J9$()="ABCDRUVWXY"
   : E6$=F6$(17)AND HEX(02)
   : IF E6$=HEX(00)THEN LOAD T#2,"IDS2SUB8"3701,3899BEG 1060
1060 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
   : DIM J9$17,J9$(10)1
   : J9$()="ABCDRUVWXY"
   : F8=0
   : E7$=F5$
   : MAT SEARCHE3$(),=STR(C9$,9,8)TO F9$STEP 8
   : J0=VAL(F9$,2)
   : IF J0=0THEN J0=Z*8+1
   : F6$(14)="N"
   : J9$=STR(E$(),82)
   : CONVERT STR(E$(),2073,2)TO I
   : STR(J9$,17)=BIN(I+31)
   : CONVERT VAL(STR(E$(),78,1))-31TO STR(E$(),2073,2),(##)
   : STR(E$(),82,16)=C9$
1100 IF VAL(STR(J9$,17))-31<>0THEN 1180
   : STR(J9$,17,1)=HEX(00)
1120 GOSUB '60(E1$(2),J9$)
   : GOSUB '62(E1$(2),1,0)
   : IF STR(F$(),7,16)<>STR(J9$,,16)THEN 1603
   : IF STR(F$(),,1)=STR(E$(),76,1)THEN 1155
   : STR(J9$,17)=STR(F$(),3,1)
   : STR(J9$,17,1)=ADDHEX(01)
   : GOTO 1120
1155 STR(J9$,17)=STR(F$(),3)
1180 GOSUB '60(E1$(2),STR(C9$,,17))
   : GOSUB '62(E1$(2),1,0)
   : IF STR(F$(),7,16)<>STR(C9$,,16)OR STR(F$(),3,1)<>STR(C9$,17,1)THEN 1230
   : E$="An edit already exists, execute to continue"
   : F8=0
   : GOTO 1610
1230 GOSUB '60(E1$(2),J9$)
   : F8=0
1240 GOSUB '62(E1$(2),1,0)
   : IF Q=0OR STR(F$(),7,16)<>STR(J9$,,16)OR STR(F$(),3,1)>STR(J9$,17)THEN 140
     0
   : IF F$(1)<>E$(76)THEN 1240
   : IF F8=0THEN STR(E$(),98,1944)=" "
   : IF F8=0THEN F8=VAL(F$(3))
   : ELSE IF F8<>VAL(F$(3))THEN 1400
   : CONVERT F$(2)TO Q
   : ON QGOTO 1310,1320,1330,1340,1350,1360,1370,1380
   : STR(E$(),98,228)=STR(F$(),23)
   : STR(E$(),79,3)=STR(F$(),4)
   : GOTO 1390
1310 STR(E$(),326,228)=STR(F$(),23)
   : GOTO 1390
1320 STR(E$(),554,228)=STR(F$(),23)
   : GOTO 1390
1330 STR(E$(),782,228)=STR(F$(),23)
   : GOTO 1390
1340 STR(E$(),1010,228)=STR(F$(),23)
   : GOTO 1390
1350 STR(E$(),1238,228)=STR(F$(),23)
   : GOTO 1390
1360 STR(E$(),1466,192)=STR(F$(),23)
   : GOTO 1390
1370 STR(E$(),1658,192)=STR(F$(),23)
   : GOTO 1390
1380 STR(E$(),1850,192)=STR(F$(),23)
1390 GOTO 1240
1400 MAT REDIM E3$(24)83
   : DATA LOAD DA T#3,(E4+17)E3$()
   : MAT REDIM E3$(249)8
   : STR(E3$(),J0,8)=STR(C9$,8)
   : F6$(14)="Y"
   : IF F8=0THEN 1601
   : J1=0
   : IF C5$="S"THEN 1510
   : FOR I=1TO 10
1450 MAT SEARCHSTR(E$(),555,900),=J9$(I)TO F9$STEP 18
   : IF F9$=HEX(0000)THEN 1500
   : STR(E$(),VAL(F9$,2)+553,18)=" "
   : J1=J1+1
   : GOTO 1450
1500 NEXT I
1510 IF STR(J9$,9,8)=STR(C9$,9,8)THEN 1570
   : IF C5$<>"S"THEN 1514
   : CONVERT STR(E$(),76,1)TO I
   : ON I+1GOSUB ,1860,1870,1880,1890,1900,1910,1920
1514 X=536
   : FOR L=0TO 49
   : IF C5$="R"AND POS("QR"=STR(E$(),L*18+555))=0THEN 1515
   : IF STR(E$(),L*18+556,8)=STR(J9$,9,8)THEN STR(E$(),L*18+556,8)=STR(C9$,9,8
     )
   : IF STR(E$(),L*18+564,8)=STR(J9$,9,8)THEN STR(E$(),L*18+564,8)=STR(C9$,9,8
     )
1515 NEXT L
   : IF STR(C9$,,8)=STR(J9$,,8)THEN 1570
   : I=555
1523 MAT SEARCHSTR(E$(),I),="I"TO F9$STEP 18
   : IF F9$=HEX(0000)THEN 1570
   : IF STR(E$(),VAL(F9$,2)+I,8)=STR(J9$,,8)THEN STR(E$(),VAL(F9$,2)+I,8)=STR(
     C9$,,8)
   : IF STR(E$(),VAL(F9$,2)+I+8,8)=STR(J9$,,8)THEN STR(E$(),VAL(F9$,2)+I+8,8)=
     STR(C9$,,8)
   : I=VAL(F9$,2)+17+I
   : GOTO 1523
1570 IF STR(E$(),76,1)="3"THEN GOSUB 1780
   : F=0
   : GOSUB '36
   : IF STR(E$(),76,1)="6"THEN GOSUB 1670
1601 IF J1=0THEN 1603
   : CONVERT J1TO E$,(##)
   : E$=E$&" pass/fail actions not valid for reports and not copied, exec. to
     continue"
   : IF F8=0THEN E8$(1)="!"
   : ELSE E8$(1)=" "
   : GOSUB '63(STR(E$,,16),STR(E$,17),E8$(1))
   : GOSUB '34(250)
   : IF Q<>32THEN 1601
   : GOTO 1630
1603 E$="Edit library spec. "&STR(J9$,,8)&"-"&STR(J9$,9,8)
   : CONVERT VAL(STR(J9$,17))-31TO STR(E$,37),(###)
   : STR(E$,37,1)="-"
   : IF F8=0THEN E$=E$&" not"
   : E$=E$&" found, exec. to continue"
1610 IF F8=0THEN E8$(1)="!"
   : ELSE E8$(1)=" "
   : GOSUB '63(STR(E$,,16),STR(E$,17),E8$(1))
   : GOSUB '34(250)
   : IF Q<>32THEN 1603
1630 PRINT AT(23,0,80);
   : LOAD T#2,E7$1000,
1650 STOP #
1670 GOSUB '43(15)
   : C0=Q
   : GOSUB '43(18)
   : C4=Q
   : GOSUB '43(14)
   : F4=Q
   : GOSUB '43(17)
   : F5=Q
   : PRINT HEX(0202020F)
   : PRINT HEX(06);
   : FOR I=12TO 16
   : PRINT AT(I,0,80);AT(I+6,0,80);
   : NEXT I
   : IF C4>0AND STR(E$(),111,8)=" "OR C0>0THEN 1700
   : Q=0
   : RETURN
1700 IF C4>0AND C0>0THEN X=MIN(C4,C0)
   : ELSE X=MAX(C4,C0)
   : Y=MAX(F4,F5)
   : F0=20+(SGN(C0)+SGN(C4))*X
   : $TRAN(E$()<127,199>,HEX(8020))R
   : $TRAN(E$()<339,215>,HEX(8020))R
1750 IF C0=0THEN 1760
   : N=INT(79/(Y+1))
   : FOR I=0TO X-1
   : C=MOD(I,N)*(Y+1)+1
   : R=12+INT(I/N)
   : P=I*F4+127
   : E2$(21+I)=BIN(F4)&BIN(P*16,2)&BIN(R*8)&BIN(C*2+1)&HEX(70800000)
   : GOSUB '37(21+I)
   : NEXT I
1760 IF C4=0THEN 1770
   : N=INT(79/(Y+1))
   : FOR I=0TO X-1
   : C=MOD(I,N)*(Y+1)+1
   : R=18+INT(I/N)
   : P=I*F5+339
   : E2$(21+I+X*SGN(C0))=BIN(F5)&BIN(P*16,2)&BIN(R*8)&BIN(C*2+1)&HEX(70800000)
   : GOSUB '37(21+I+SGN(C0)*X)
   : NEXT I
1770 RETURN
1780 FOR I=0TO 6
   : E6$=E$(126+I*28)
   : IF E6$="A"THEN STR(E$(),2050+I*3,3)="AND"
   : ELSE IF E6$="O"THEN STR(E$(),2050+I*3,3)="OR"
   : ELSE STR(E$(),2050+I*3,3)=" "
   : NEXT I
   : RETURN
1860 X=99
   : FOR I=1TO 4
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : X=X+9
   : FOR L=1TO 5
   : IF STR(E$(),X,18)=STR(J9$,9,8)AND STR(E$(),X-1,1)="F"THEN STR(E$(),X,18)=
     STR(C9$,9,8)
   : X=X+21
   : NEXT L
   : IF X<>326THEN X=X-1
   : NEXT I
   : RETURN
1870 IF STR(E$(),113,8)=STR(J9$,9,8)THEN STR(E$(),113,8)=STR(C9$,9,8)
   : IF STR(E$(),121,8)=STR(J9$,9,8)THEN STR(E$(),121,8)=STR(C9$,9,8)
   : FOR L=131TO 287STEP 39
   : IF STR(E$(),L,1)="F"AND STR(E$(),L+1,8)=STR(J9$,9,8)THEN STR(E$(),L+1,8)=
     STR(C9$,9,8)
   : NEXT L
   : RETURN
1880 X=99
   : FOR I=1TO 8
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : X=X+11
   : IF STR(E$(),X,16)=STR(J9$,9,8)AND STR(E$(),X-1,1)="F"THEN STR(E$(),X,16)=
     STR(C9$,9,8)
   : X=X+17
   : NEXT I
   : RETURN
1890 X=142
   : FOR I=1TO 8
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : X=X+11
   : FOR L=1TO 4
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : X=X+9
   : NEXT L
   : X=X-1
   : IF X=326THEN X=370
   : NEXT I
   : RETURN
1900 X=101
   : FOR I=1TO 6
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : X=X+9
   : FOR L=1TO 2
   : IF STR(E$(),X,13)=STR(J9$,9,8)AND STR(E$(),X-1,1)="F"THEN STR(E$(),X,13)=
     STR(C9$,9,8)
   : X=X+14
   : NEXT L
   : X=X-1
   : NEXT I
   : RETURN
1910 IF STR(E$(),326,8)=STR(J9$,9,8)THEN STR(E$(),326,8)=STR(C9$,9,8)
   : IF STR(E$(),98,8)=STR(J9$,9,8)THEN STR(E$(),98,8)=STR(C9$,9,8)
   : RETURN
1920 X=222
   : FOR L=1TO 4
   : IF STR(E$(),X,8)=STR(J9$,9,8)THEN STR(E$(),X,8)=STR(C9$,9,8)
   : IF L<3THEN X=X+33
   : ELSE X=X+29
   : NEXT L
   : RETURN
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
   : E$="IDS2PS96"
   : IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
   : STOP "ERROR"