image of READY prompt

Wang2200.org

Listing of file='ISS.024U' on disk='vmedia/701-2423D.wvd.zip'

# Sector 308, program filename = 'ISS.024U'
0010 REM  ISS.024U, RELEASE 5-1, (11/07/79) - COPYRIGHT WANG LABS. INC.
0069 DIM N1$8,N2$8,Z5$48
   : DIM E$(8)64,E1$(2)2,H1$64,H2$48,L$20
0120 % THIS MUST BE STATEMENT 120
0170 S1$="ISS.254SISS.226SISS.229SISS.217S"
   : LOAD DC T#0,<LEN(S1$)/8>S1$10,0BEG 190
0190 SELECT #4<S$(1)>
   : IF F9$=" "THEN 260
0220 PRINT AT(1,0);"MOUNT INPUT DISK",TAB(S0)
   : GOSUB '254
   : DATA LOAD BA T#1,(0)E$()
   : ERRORGOTO 220
0260 P=1
   : N1$=HEX(0000000000000000)
0290 SELECT PRINT 005
   : GOSUB '91
   : IF N1$=HEX(0000000000000000)THEN 630
0340 DEFFN'0
   : LIMITS T#1,N1$,D2,D3,D3,D4
   : IF D4<>1THEN 290
   : DATA LOAD BA T#1,(D2,D2)E$()
   : AND (STR(E$(),1,1),F0)
   : IF STR(E$(),1,1)<>HEX(50)THEN 470
   : H2$="FILE "&N1$&" IS PROTECTED"
   : GOSUB '92(H2$)
   : GOTO 290
0470 D3=D2+D3-3
   : GOSUB 3100
   : GOSUB '94
   : SELECT PRINT <S$(1)>
   : GOSUB 780
   : KEYIN I0$,580,580
0580 IF I0$="H"THEN GOSUB 3080
   : P=P+1
   : GOTO 290
0630 DEFFN'31
   : SELECT PRINT 005
   : $CLOSE#4
   : PRINT HEX(03)
   : IF Z8$<>" "THEN GOSUB '219(Z8$,3,S2," ",0)
   : COM CLEAR Z9$
0690 LOAD DC T#0,"ISS.100M"
   : ERRORGOTO 700
0700 PRINT HEX(010A);"MOUNT ISS DISK AT ADDRESS ";S$
   : GOSUB '254
   : GOTO 690
0780 D,F1=0
   : F=100
   : GOSUB 3170
0830 IF D2>D3THEN RETURN
   : GOSUB 3270
   : GOSUB 1010
   : IF POS(E$()=3A)=0THEN 940
   : GOSUB 1140
   : GOSUB 1320
0940 GOSUB 1600
   : GOTO 830
1010 I=1
   : E2$=HEX(FB22FC272020)
   : L$=HEX(FF)
1040 MAT SEARCHE$()<I,385-I>,=L$TO E1$()
   : IF E1$(1)=HEX(0000)THEN RETURN
   : I=I+VAL(E1$(),2)
   : $TRAN(E$()<I,2>,E2$)R
   : GOTO 1040
1140 E2$=HEX(FC272020)
   : E1$=" "
   : L$=HEX(CE)
   : GOSUB 1200
   : L$=HEX(9A)
1200 I=1
1210 MAT SEARCHE$()<I,385-I>,=L$TO E1$()
   : IF E1$(1)=HEX(0000)THEN RETURN
   : I=I+VAL(E1$(),2)
   : MAT SEARCHE$()<I,257-I>,<>E1$TO E1$()
   : I=I+VAL(E1$(),2)-1
   : $TRAN(E$()<I,1>,E2$)R
   : GOTO 1210
1320 E2$=HEX(22FB27FCFA3AFB22FC27FDA2FED82020)
   : $TRAN(E$()<1,E>,E2$)R
   : I=0
1350 I=I+1
1370 I1=POS(STR(E$(),I,E-I)>FA)
   : IF I1=0THEN RETURN
   : I=I+I1-1
   : L$=STR(E$(),I,1)
   : IF L$=HEX(FF)THEN 1350
   : IF L$>HEX(FC)THEN 1510
   : I1=POS(STR(E$(),I+1,E-I)=L$)+1
   : IF I1=1THEN 1510
1470 E2$=HEX(3AFA22FB27FCA2FDD8FE2020)
   : $TRAN(E$()<I,I1>,E2$)R
   : GOTO 1370
1510 I1=POS(STR(E$(),I+1,E-I)=0D)
   : I2=POS(STR(E$(),I+1,I1)=FA)
   : IF L$=HEX(FE)THEN 1470
   : IF I2<>0THEN I1=I2
   : GOTO 1470
1600 MAT COPY -E$()<1,513-P2>TO -E$()
   : E2$=HEX(22FB27FCFD0DFEFD2020)
   : $TRAN(E$(),E2$)R
1630 J2,J3=0
   : J4=1
1660 I=POS(STR(E$(),1,P4/J4)>7F)
   : IF I=0THEN 2160
1700 L$=STR(E$(),I,1)
   : IF L$=HEX(FD)THEN 2500
   : IF L$=HEX(FA)THEN 2210
   : IF L$=HEX(FF)THEN 2340
   : IF L$=HEX(FE)THEN RETURN
   : J=VAL(L$)-127
   : J1=LEN(E9$(J))+SGN(1+SGN(64-J))
   : IF I+J1>P4/J4THEN 2170
   : E2$=HEX(00950096009B009C00A12020)
   : $TRAN(L$,E2$)R
   : J3=(1-J2)*(1-SGN(VAL(L$)))+J3
   : J2=1
   : MAT COPY -E$()<I,514-(I+J1)>TO -E$()<I+J1,513-(I+J1)>
1910 MAT COPY E9$()<11*(J-1)+1,J1>TO E$()<I,J1>
   : IF L$<>HEX(A2)THEN 1660
   : L$=STR(E$(),I+4,2)
   : IF STR(L$,1,1)<>"%"THEN 1660
   : I=I+5
   : IF L$="%^"THEN I=I+1
   : GOSUB 2750
   : IF STR(L$,2,1)=HEX(FD)THEN 2090
   : IF L$="%^"THEN F=100
   : J3=1
   : GOSUB 2670
   : STR(E$(),P2/2+2,2)=HEX(200E)
2090 J4=2
   : J3=1
   : IF F+4<P3THEN 1660
   : F=100
   : GOTO 1660
2160 I=P4/J4+1
2170 GOSUB 2750
   : GOTO 1630
2210 I1=POS(STR(E$(),I+1)<>20)
   : L$=STR(E$(),I+I1,1)
   : IF L$<>HEX(A2)THEN 2170
   : STR(E$(),I,1)=":"
   : MAT COPY -STR(E$(),I+I1,509-I-I1)TO -STR(E$(),I+I1+4)
   : STR(E$(),I+I1,5)=" REM "
   : I=I+I1+4
   : I1=POS(STR(E$(),I+1,P4/J4-I)>7F)
   : IF I1=0THEN 2160
   : I=I+I1
   : GOTO 1700
2340 IF I+3>P4/J4THEN 2170
   : L$=STR(E$(),I+1,2)
   : UNPACK(####)L$TO L
   : MAT COPY -E$()<I,512-I>TO -E$()<I+1,512-I>
   : L$="    0"
   : IF L=0THEN 2430
   : CONVERT LTO L$,(#####)
   : STR(L$,1,POS(L$<>"0")-1)=" "
2430 STR(E$(),I,4)=STR(L$,2,4)
   : IF J2>0THEN 1660
   : MAT COPY -E$()<I+4,508-I>TO -E$()<I+5,508-I>
   : STR(E$(),I+4,1)=" "
   : GOTO 1660
2500 IF I<>P2/J4+3THEN 2170
   : I=I+1
   : GOSUB 2790
   : GOTO 1630
2600 F=F+1
   : IF F>P3THEN 2860
   : $GIO#4(A000400D4230,A9$)E$()<1,I-1>
   : IF J3>0THEN 2670
   : RETURN
2670 F=F+1
   : IF F>P3THEN RETURN
   : $GIO#4(400D4230,A9$)
   : J3=J3-1
   : IF J3>0THEN 2670
   : RETURN
2750 GOSUB 2600
   : IF L$=HEX(FD)THEN I=I+2
2790 STR(E$(),1,P2+3)=" "
   : MAT COPY E$()<I,513-I>TO E$()<P2+4*ABS(SGN(VAL(L$)-253)),509-P2>
   : E2$=HEX(3AFA2020)
   : $TRAN(E$()<P2+4,1>,E2$)R
   : RETURN
2860 GOSUB 2920
   : GOTO 2600
2920 F1=F1+1
   : CONVERT F1TO STR(H1$,P4/2-4),(###)
   : STR(H1$,P4/2-4,POS(STR(H1$,P4/2-4)<>"0")-1)=" "
   : KEYIN I0$,2970,2970
2970 IF I0$="P"THEN GOSUB 3080
   : $GIO#4(400D400C400EA000400D4230,A9$)H1$<1,P4/2>
   : $GIO#4(A000400D4230400D4230,A9$)H2$
   : F=3
   : RETURN
3080 I0$=" "
   : GOSUB '254
3100 PRINT AT(1,0,3*S0);"LISTING FILE";P;"NAME ";N1$
   : RETURN
3170 H1$=Q1$
   : STR(H1$,P4/4-4,8)=N1$
   : STR(H1$,P4/2-8,4)="PAGE"
   : H2$="PROGRAM LISTING"
   : RETURN
3270 DATA LOAD BA T#1,(D2,D2)E$()
   : STR(E$())=STR(E$(),2)
   : E2$=HEX(FDFE2020)
   : $TRAN(E$(),E2$)R
   : E=POS(E$()=FD)
   : E2$=" "
   : $TRAN(E$()<E+1>,E2$)00
   : RETURN
3390 DEFFN'91
   : IF Z9$="INDIRECT"THEN 3660
   : IF Z9$="PART"THEN 3570
   : IF Z9=0THEN N1$=ALL(HEX(00))
   : IF Z9=0THEN Z9=1
3470 GOSUB '226(1,N1$)
   : N1$=R9$
   : IF N1$=HEX(0000000000000000)THEN RETURN
   : IF R<>1THEN 3470
   : IF N1$<Z1$(1)THEN 3470
   : IF N1$>Z2$(1)THEN 3470
   : RETURN
3570 Z8=Z8+1
   : IF Z8>Z9THEN 3630
   : N1$=Z1$(Z8)
   : RETURN
3630 N1$=ALL(00)
   : RETURN
3660 MAT REDIM Z1$(14)8,Z2$(14)8,Z3$(14)1
   : IF Z9=1THEN 3740
3690 GOSUB '217(Z8$,3,S2,-2,2,"ISS 4.0 REF"," ",0)
   : IF Q$<>" "THEN 3870
   : Z9=1
   : Z8=0
3740 IF Z8=0THEN DATA LOAD DC #3,STR(Z1$(),1),STR(Z2$(),1),STR(Z3$(),1)
   : IF END THEN 3830
   : Z8=Z8+1
   : N1$=Z1$(Z8)
   : IF Z8=14THEN Z8=0
   : IF N1$=" "THEN 3740
   : RETURN
3830 N1$=ALL(HEX(00))
   : GOSUB '219(Z8$,3,S2," ",0)
   : RETURN
3870 PRINT AT(1,0);"ERROR IN REFERENCE FILE OPEN = ";Q$
   : GOSUB '254
   : GOTO 3690
3930 DEFFN'92(Z5$)
   : IF S$(1)=" "THEN 4010
   : GOSUB '94
   : SELECT PRINT <S$(1)>
   : PRINT HEX(0C);Z5$
   : RETURN
4010 PRINT AT(1,0);Z5$
   : GOSUB '254
   : RETURN
4070 DEFFN'94
4090 $OPEN 4160,#4
4100 $GIO#4(010A02001212400040004000,A$)
   : IF STR(A$,8,1)=HEX(00)THEN RETURN
   : PRINT AT(1,0,S0);"SELECT PRINTER"
   : GOSUB '254
   : GOTO 4100
4160 PRINT AT(1,0,S0);"PRINTER HOGGED"
   : GOSUB '254
   : GOTO 4090