image of READY prompt

Wang2200.org

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

# Sector 601, program filename = 'IDS2PU07'
1000 REM "IDS2PU07" -  Convert TC file to IDEAS2 file - module one - 10/19/81

1010 IF F6$(17)<"^"THEN SELECT @PART"IDS2SUBM"
   : COM C1,C1$8,C2,C2$3,C3,C4,C5
   : DIM C8$45,D$(9)83,D1$2,D2$3,D3$4,D4$8,D5$8,D6$80,D7$8,D7$(16)8,D8$8
   : GOSUB 1350
   : C1$=E$
   : GOSUB 1280
   : IF F6$(20)="Z"THEN GOSUB 1540
   : STR(E2$(1),5,1)=AND HEX(FE)
1030 F=1
1040 F=F+1
   : GOSUB '34(F)
   : ON FGOTO 1040,1050,1060,1070,1080,1100,1120
   : GOTO 1030
1050 D4$=E$
   : GOTO 1040
1060 GOSUB 1400
   : IF F=2THEN 1040
   : GOSUB 1290
   : GOTO 1040
1070 C1=Q
   : IF C1=1OR C1=2THEN 1040
   : GOSUB '38(63," ")
   : F=F-1
   : GOTO 1040
1080 F6$(22)=E$
   : IF POS("123"=E$)>0THEN 1040
1090 GOSUB '38(64," ")
   : F=F-1
   : GOTO 1040
1100 F6$(23)=E$
   : IF POS("123"=E$)>0THEN 1110
   : GOTO 1090
1110 GOSUB '38(65," ")
   : GOTO 1040
1120 ON Q-31GOTO 1130,1030
   : GOSUB '38(65," ")
   : F=F-1
   : GOTO 1040
1130 IF F6$(21)="C"THEN GOSUB 1540
   : LOAD T#2,"IDS2PU08"1000,
1280 D5$=C1$OR ALL(20)
   : GOSUB '39(D5$,5)
   : C7=P
   : C8=A
   : MAT REDIM D$(6)83
   : DATA LOAD DA T#P,(A)D$()
   : CONVERT STR(D$(),93,4)TO C4
   : D7$()=STR(D$(),275,128)
   : MAT SEARCHE1$(),=C1$TO D1$STEP 56
   : C3=(VAL(D1$,2)+55)/56
   : IF C3<1THEN C3=0
   : RETURN
1290 LIMITS T#6,D4$,C2,C5,D1,D1
   : ON D1+3GOTO 1300,1310,1320,1330
   : RETURN
1300 O=66
   : GOTO 1340
1310 O=67
   : GOTO 1340
1320 O=68
   : GOTO 1340
1330 O=69
1340 GOSUB '38(O,D4$)
   : F=F-2
   : RETURN
1350 IF F6$(53)="Y"THEN 1360
   : MAT REDIM D$(9)83
   : IF R0<#PARTTHEN 1380
   : D8$="IDS2fs##"
   : CONVERT 1+(R0-#PART)/16TO STR(D8$,7,2),(##)
   : DATA LOAD DC OPEN T#2,D8$
   : DATA LOAD DC #2,D$()
   : C2$=STR(D$(),#PART*45-2,3)
   : C8$=STR(D$(),#PART*45-17,45)
   : GOTO 1370
1360 LIMITS T#4,STR(F4$,4,8),D8,J,J,J
   : DATA LOAD BA T#4,(D8+2)STR(D$(),,256)
   : C2$=STR(D$(),107,3)
   : C8$=STR(D$(),92,45)
1370 IF F6$(20)="X"THEN F6$(20)="Z"
   : IF R3$(1)="IDS2PU11"THEN RETURN
   : X=LEN(STR(R3$()))-9
   : MAT COPY -R3$()<1,X>TO -R3$()<10,X>
   : R3$(1)="IDS2PU11"
   : RETURN
1380 GOSUB '38(70," ")
   : END
1400 MAT SEARCH"310320330B10B20B30350360370B50B60B70D10D11D12D13D14D15D50D51D5
     2D53D54D55D20D21D22D23D24D25D60D61D62D63D64D65D30D31D32D33D34D35D70D71D72
     D73D74D75",=STR(E$,1,3)TO D1$STEP 3
   : PRINT AT(23,0,80);HEX(0F06);
   : IF D1$<>HEX(0000)THEN 1420
   : GOSUB '38(46," ")
   : GOTO 1530
1420 SELECT #6<E$>
   : $OPEN 1440,#6
   : GOTO 1450
1440 $CLOSE#6
   : GOSUB '38(71,E$)
   : GOTO 1530
1450 $CLOSE#6
   : RETURN
1460 ON ERRORD2$,D3$GOTO 1470
1470 IF D2$<>"P48"THEN 1480
   : GOSUB '38(72,E$)
   : GOTO 1520
1480 IF STR(D2$,2,2)<"90"OR STR(D2$,2,2)>"98"THEN 1490
   : GOSUB '38(73,D2$)
   : GOTO 1520
1490 IF D2$<>"P56"THEN 1500
   : IF D3$<>"7000"AND D3$<>"7010"THEN 1500
   : GOSUB '38(80," ")
   : END
1500 GOSUB '38(74,D2$)
   : END
1520 F=F-1
   : GOTO 1040
1530 F=F-1
   : RETURN
1540 DATA LOAD DA T#C7,(C8)D$()
   : ERRORGOSUB '38(75,C1$)
   : GOTO 1660
1550 J2=0
   : IF F6$(20)="Z"THEN J2=C3-1
   : J3=J2+1
   : CONVERT STR(D$(),217,1)TO J1
   : STR(D$(),251,3)=STR(D$(),105)
   : FOR J9=1TO J1
   : J2=J2+1
   : D2$=STR(D$(),248+3*J9)
   : MAT SEARCHC8$,=D2$TO D1$STEP 3
   : IF D1$>HEX(0000)THEN 1570
1560 GOSUB '38(76,D2$)
   : GOTO 1650
1570 J6=(VAL(D1$,2)+2)/3
   : LIMITS T#J6,C1$,D6,J,D7,J
   : IF J=2THEN 1580
   : CONVERT J9TO E$,(#)
   : GOSUB '38(77,E$)
   : GOTO 1650
1580 D7$=C1$
   : GOSUB 1680
   : IF J9=1THEN GOSUB 1690
   : ELSE GOSUB 1710
   : NEXT J9
   : FOR J9=0TO 15
   : D7$=D7$(J9+1)
   : IF D7$=" "THEN 1630
   : J2=J2+1
   : D8$=D7$OR ALL(20)
   : LIMITS T#C7,D8$,D6,J,J,J
   : IF J=2THEN 1600
   : GOSUB '38(78,D8$)
   : GOTO 1650
1600 DATA LOAD DA T#C7,(D6)D$()
   : D2$=STR(D$(),105)
   : MAT SEARCHC8$,=D2$TO D1$STEP 3
   : IF D1$>HEX(0000)THEN 1610
   : GOTO 1560
1610 J6=(VAL(D1$,2)+2)/3
   : LIMITS T#J6,D7$,D6,J,D7,J
   : IF J=2THEN 1620
   : GOSUB '38(79,D7$)
   : GOTO 1650
1620 GOSUB 1680
   : GOSUB 1690
   : GOSUB 1730
   : GOTO 1640
1630 J9=15
1640 NEXT J9
   : C3=1
   : GOTO 1670
1650 J9=15
   : NEXT J9
1660 J9=-1
1670 RETURN
1680 E1$(J2)=STR(D7$,,8)&BIN(J6)&BIN(J3,2)&STR(D$(),403,1)&STR(D$(),405,42)&BI
     N(D6,2)
   : RETURN
1690 A=VAL(STR(E1$(J2),50))
   : B=VAL(STR(E1$(J2),51))
   : UNPACK(####)STR(E1$(J2),13)TO Q
   : STR(E1$(J2),13,2)=BIN(Q,2)
   : GOSUB 1700
   : RETURN
1700 S=(D7-2)/VAL(STR(E1$(J2),43),2)
   : STR(E1$(J2),46,2)=BIN(S,2)
   : S=S-VAL(STR(E1$(J2),45))
   : STR(E1$(J2),19,2)=BIN(MIN(S*B/A,VAL(STR(E1$(J2),48),2)),2)
   : RETURN
1710 A=VAL(STR(E1$(J2),50))
   : B=VAL(STR(E1$(J2),51))
   : STR(E1$(J2),12,1)=HEX(00)
   : STR(E1$(J2),13,2)=STR(E1$(J3),13)
   : GOSUB 1720
   : RETURN
1720 D1$=BIN((D7-2)/VAL(STR(E1$(J2),43),2),2)
   : S=VAL(D1$,2)
   : STR(E1$(J2),45,5)=HEX(00)&D1$&BIN(S*B/A,2)
   : STR(E1$(J2),19,2)=STR(E1$(J2),48)
   : RETURN
1730 STR(E1$(J2),52,2)=STR(E1$(VAL(STR(E1$(J2),10),2)),52,2)
   : STR(E1$(J2),13,2)=STR(E1$(VAL(STR(E1$(J2),10),2)),13,2)
   : RETURN
3699 ON ERRORE1$,E2$GOTO 3700
3700 DEFFN'31
   : E$="IDS2PU07"
   : IF E5$<"Y"THEN LOAD T#2,"IDS2PER1"1000,
   : STOP "ERROR"