image of READY prompt

Wang2200.org

Listing of file='609Escm3' on disk='vmedia/731-0067G.wvd.zip'

# Sector 867, program filename = '609Escm3'
0010 REM ************************ 609Escm3 ********************************
0020 COM A,F
   : DIM I2$2,I2$(123)2,V4$1
   : UNPACK(############)STR(D8$(),191,6)TO F
   : IF POS(HEX(50F0)=D1$)>0THEN 1245
   : GOTO 1210
1000 DEFFN'101(V1$(),E)
   : I2$()=ALL(00)
   : C=C4
   : IF E=CTHEN RETURN
1010 C=C+1
   : IF C>7THEN 1020
   : IF STR(V1$(),2*C-1,2)>HEX(0000)THEN I2$(C)=BIN(ABS(V4),2)
   : GOTO 1010
1020 I2$(C)=BIN(ABS(V4),2)
   : IF C<ETHEN STR(I2$(),C*2+1,(E-C)*2)=STR(I2$(),C*2-1,(E-C)*2)
   : IF V4>0THEN V1$()=ADDCI2$()
   : ELSE V1$()=SUBCI2$()
   : RETURN
1030 V4$="P"
   : GOSUB '221(A1,1,1,1,1)
   : IF R1$<>HEX(00)THEN 2540
   : RETURN
1050 DEFFN'100(C3,V1$(),G)
   : C4$=" "
   : IF C3<1THEN C3=8
   : IF C3>123OR STR(V1$(),C3*2-1,2)=HEX(FFFF)THEN C3=INT((POS(-STR(V1$(),15,2
     32)<FF)-1)/2)+8
   : IF STR(V1$(),2*C3-1,2)=HEX(0000)THEN 1080
   : C5=VAL(STR(V1$(),2*C3-1),2)
   : IF C3=123OR STR(V1$(),2*C3+1,2)=HEX(FFFF)THEN 1070
   : GOSUB 1090
   : C6=VAL(STR(V1$(),2*C-1,2),2)-VAL(STR(V1$(),2*C3-1,2),2)
   : RETURN
1070 C6=G-C5+1
   : C4$="E"
   : RETURN
1080 C5$="S"
   : RETURN
1090 C=C3
1100 C=C+1
   : IF STR(V1$(),2*C-1,2)=HEX(0000)THEN 1100
   : RETURN
1210 IF J0(2)<>C4OR V0$(J0(4))=HEX(8F)THEN 1430
   : IF LEN(J2$())+(J0(4)-J0(1))+LEN(J3$())<=J8-1THEN 1270
1230 C5$="F"
1235 D1$=HEX(F0)
1245 LOAD T"609Escm4"
1255 C5$="T"
   : GOTO 1235
1270 IF J2$()<>" "THEN 1315
   : E=J0(4)-J0(1)
   : IF E<0THEN 1307
   : IF J6(1)+E+1>J8-1OR J8-(J6(1)+E)<1THEN 1230
   : MAT COPY -STR(J3$(),J6(1),J8-(J6(1)+E))TO -STR(J3$(),J6(1)+E+1,J8-(J6(1)+
     E))
   : STR(J3$(),J6(1),E+1)=STR(V0$(),J0(1))
   : GOTO 1345
1307 V0$()=J3$()
   : GOTO 1245
1315 E=J0(4)-J0(1)+LEN(J2$())+1
   : IF E<0THEN 1307
   : IF LEN(J3$())-J6(1)+1>0THEN MAT COPY -STR(J3$(),J6(1),LEN(J3$())-J6(1)+1)
     TO -STR(J3$(),J6(1)+E,LEN(J3$())-J6(1)+1)
   : STR(J3$(),J6(1),E)=J2$()&STR(V0$(),J0(1))
1345 IF J7(1)=9THEN 1390
   : STR(V0$(),J0(1))=STR(V0$(),J0(4)+1)
   : GOSUB '100(C4,J1$(),V0)
   : GOSUB '226(A1,LEN(V0$()),C6,C5)
   : IF POS(HEX(0028)=R1$)=0THEN 2520
   : V4=V4-C6
   : GOSUB '101(J1$(),A0(3))
   : GOSUB 1030
   : J1$()=V1$()
1390 V0$()=J3$()
   : J1=J6(1)+J0(4)-J0(1)+1
   : IF J2$(1)<>" "THEN J1=J1+LEN(J2$())
   : D1$=HEX(50)
   : GOTO 1245
1430 IF LEN(J3$())-J6(1)+J0(4)>=J8-1THEN 1230
   : IF V0$(J0(4))=HEX(8F)THEN C=1
   : ELSE C=0
   : IF J0(5)-J0(2)+C+(INT(POS(-D9$()<FF)/2-.5)+1)>123THEN 1255
   : IF J7(1)=10AND J0(1)+(LEN(V0$())-J0(4))>=J8-1THEN 1230
   : V0$()=" "
   : C4=J0(2)
   : GOSUB '100(C4,J1$(),V0)
   : GOSUB '220(A1,1,C5,C6,2)
   : IF POS(HEX(0028)=R1$)=0THEN 2510
1495 IF J6(1)+LEN(V0$())-J0(1)+LEN(J2$())>=J8-1THEN 1230
   : D7=V0
   : V0=J6(4)
   : C4=J6(2)
   : GOSUB '100(J6(2),D9$(),J6(4))
   : GOSUB '223(J6(3),C5,C6)
   : IF POS(HEX(0028)=R1$)=0THEN 2535
   : STR(D9$(),2*J6(2)-1)=STR(D9$(),2*J6(2)+1)
   : V4=-C6
   : D9$(123)=ALL(FF)
   : IF F=C3THEN 1585
   : GOSUB '101(D9$(),F-1)
   : D9$()=V1$()
1575 D9$(C3)=BIN(VAL(D9$(C3),2)-C6,2)
1585 J6(4)=V0
   : V0=D7
   : C4=J0(2)
   : C8=C5
   : FOR A=J0(2)TO J0(5)
   : IF A>J0(2)THEN 1675
   : IF J2$()<>" "THEN 1650
   : IF J6(1)>J0(1)THEN MAT COPY -STR(V0$(),J0(1),LEN(V0$())-J0(1)+1)TO -STR(V
     0$(),J6(1),LEN(V0$())-J0(1)+1)
   : ELSE STR(V0$(),J6(1))=STR(V0$(),J0(1))
   : GOTO 1655
1650 IF J6(1)+LEN(J2$())>J0(1)THEN MAT COPY -STR(V0$(),J0(1),LEN(V0$())-J0(1)+
     1)TO -STR(V0$(),J6(1)+LEN(J2$()),LEN(V0$())-J0(1)+1)
   : ELSE STR(V0$(),J6(1)+LEN(J2$()))=STR(V0$(),J0(1))
1655 IF J2$()=" "THEN STR(V0$(),,J6(1)-1)=STR(J3$(),,J6(1)-1)
   : ELSE STR(V0$(),,J6(1)-1+LEN(J2$()))=STR(J3$(),,J6(1)-1)&J2$()
   : GOTO 1705
1675 V0$()=" "
   : C4=A
   : GOSUB '100(C4,J1$(),V0)
   : GOSUB '220(A1,1,C5,C6,2)
   : IF POS(HEX(0028)=R1$)=0THEN 2510
1705 IF A<J0(5)THEN 1745
   : IF V0$(J0(4))=HEX(8F)OR J0(2)=J0(5)THEN J0(6)=1
   : ELSE J0(6)=0
   : ON J0(6)GOTO 1745
   : V0$()=STR(V0$(),,J0(4))&STR(J3$(),J6(1))
1745 D7=V0
   : V0=J6(4)
   : C4=J6(2)
   : GOSUB '222(J6(3),1,C8,INT((LEN(V0$())-1)/246)+1,2)
   : IF POS(HEX(0028)=R1$)=0THEN 2530
   : J6(2)=J6(2)+1
   : F=F+1
   : C3=J6(2)-1
   : V4,C6=INT((LEN(V0$())-1)/246+1)
   : IF C3<123THEN MAT COPY -STR(D9$(),2*C3-1,246-2*C3)TO -STR(D9$(),2*C3+1,24
     6-2*C3)
   : D9$(C3)=BIN(C8,2)
   : GOSUB '101(D9$(),F-1)
   : D9$()=V1$()
1825 J6(4)=V0
   : V0=D7
   : C8=C8+INT((LEN(V0$())-1)/246)+1
   : NEXT A
   : V1$()="609Escm5REC.page"
   : LOAD T<2>V1$()
2510 B2$="Error reading page"
   : CONVERT C3TO STR(B2$,LEN(B2$)+2),(###)
   : GOTO 2550
2520 B2$="Error replacing page"
   : GOTO 2550
2530 B2$="Error saving new page"
   : GOTO 2550
2535 B2$="Error deleting page"
   : GOTO 2550
2540 B2$="Error rewriting page table"
2550 IF R1$>HEX(29)THEN CONVERT VAL(R1$)TO I2$,(##)
   : ELSE HEXUNPACKR1$TO I2$
   : B2$=B2$&" - error = "&I2$
   : IF Y5$=" "THEN B2$=B2$&" - please Cancel"
   : IF Y5$<>" "THEN GOSUB '31
2560 PRINT AT(23,0,80);HEX(0607);B5$(2);B2$;B5$(1);
   : KEYIN S2$,,2570
   : GOTO 2560
2570 IF POS(HEX(F050)=S2$)>0THEN GOSUB '31
   : GOTO 2560
3000 DEFFN'31
   : A5=0
   : A5$()="609CloseJCATSMAL"
   : A5$=R3$()
   : R3$()=STR(R3$(),10)
   : LOAD T<2>A5$()