Listing of file='609Gpage' on disk='vmedia/731-0067F-disk2.wvd.zip'
# Sector 554, program filename = '609Gpage' 0010 REM 609Gpage, RELEASE 1-0, (03/01/81) - COPYRIGHT WANG LABS. INC. 0020 DIM I$2,I2$1,I1$(246)1,I2$(123)2,V4$1,I1$50 : PRINT HEX(06);AT(23,48,32); : IF J0(1)=0THEN J0(1)=LEN(V0$())+2 0030 I1$()=" " : GOSUB 2010 : KEYIN D1$,,32 : GOSUB 2260 : GOTO 40 0032 IF D1$=HEX(4F)OR D1$=HEX(5F)THEN D1$=HEX(03) 0040 IF J7(1)<7THEN GOSUB 2020 : IF I1$()>" "THEN 60 : IF D1$>=HEX(20)AND D1$<HEX(7B)AND POS(HEX(5C5E5F)=D1$)=0THEN 100 : ON POS(HEX(F050)=D1$)GOTO 320,320 : I7=POS(HEX(0010011102120313040515061607170C1C0D1D7E7F)=D1$) : IF I7>0THEN 50 : GOSUB 2030 : GOTO 30 0050 FOR C=1TO I7 : READ I1$() : NEXT C 0060 GOSUB 330 : I4=LEN(I1$()) : IF I4>POS(-V0$()=20)-J1-2THEN 470 : STR(V0$(),J1,I4)=I1$() : J1=J1+I4 : GOTO 300 0100 IF B3$=" "THEN 410 : GOSUB '220(A4,1,1,1,1) : IF R1$<>HEX(00)THEN 420 : I6=VAL(STR(V1$(),209)) : IF STR(V1$(),210,1)<>"Y"THEN 430 : IF VAL(STR(V1$(),211))<>1THEN 440 : GOSUB '220(A4,1,2,1,1) : IF R1$<>HEX(00)THEN 450 : MAT SEARCHV1$(),=D1$TO I$STEP I6 : I7=VAL(I$,2) : IF I7=0THEN 460 0140 I2=VAL(STR(V1$(),I7+1),2) : IF I7=244OR STR(V1$(),I7+3,3)=HEX(000000)THEN I3=V0-I2+1 : ELSE I3=VAL(STR(V1$(),I7+4),2)-I2 : GOSUB 330 : IF J7(1)<>0THEN IF J9+J7+246*I3>=J8-1THEN 475 : ELSE IF J1+246*I3>=J8-1THEN 475 : FOR I1=I2TO I2+I3-1 : GOSUB '220(A4,1,I1,1,1) : IF POS(HEX(0028)=R1$)=0THEN 2140 : IF I1=I2THEN I1$()=STR(V1$(),5) : ELSE I1$()=V1$() 0210 I5=LEN(I1$()) : I4=POS(I1$()=HEX(8F)) : IF I4>0THEN 220 : IF I5>I7-2THEN 470 : IF I5>0THEN STR(V0$(),J1,I5)=I1$() : J1=J1+I5 : I7=I7-I5 : NEXT I1 : GOTO 300 0220 IF I4>I7-2THEN 470 : IF C3<8THEN 480 : IF A0(3)=123THEN 490 : D2=1 : STR(V0$(),J1,I4)=I1$() : I1$()=STR(I1$(),I4+1) : J9=POS(STR(V0$(),2)=HEX(8F))+1 : I8=INT((J9-1)/246)+1 : V4$="T" : FOR C=1TO I8 : D6=MIN(246,J9) : V1$()=STR(V0$(),246*(C-1)+1,D6) : J9=J9-D6 : GOSUB '222(A1,1,C5,1,1) : IF R1$<>HEX(00)THEN 2160 : C5=C5+1 : NEXT C 0250 A0(3)=A0(3)+1 : C3,C4=C3+1 : IF C3<A0(3)THEN MAT COPY -STR(J1$(),C3*2-1,246-C3*2)TO -STR(J1$(),C3*2+1, 246-C3*2) : J1$(C3)=BIN(C5,2) : GOSUB 360 : IF J7(1)=0THEN 270 : J0(5)=C3 : J0(4)=POS(V0$()=" ")-1 : J0(3)=1 0270 I0=LEN(A5$()) : IF I0>1THEN 272 : A5$()=STR(V0$(),,POS(V0$()=83)) : GOTO 270 0272 K=POS(-V0$()=HEX(8F))+1 : IF J7(1)<>0THEN 274 : D1=LEN(V0$())-K+1 : IF D1>0THEN STR(V0$(),I0+1,D1)=STR(V0$(),K,D1) 0274 STR(V0$(),,I0)=STR(A5$(),,I0) : IF J7(1)=0THEN STR(V0$(),I0+D1+1)=" " : ELSE STR(V0$(),I0+1,J8-J7-I0-1)=" " : V0$(1)=HEX(8F) : J0(1)=MAX(J0(1)-J9,1) : J0(1)=J0(1)+I0 : J1=I0+1 : J9=LEN(V0$()) : GOSUB 390 : IF I1$()<>" "THEN 210 : NEXT I1 0300 IF J7(1)<>0THEN 310 : J9=LEN(V0$()) : IF I2$=HEX(8F)AND V0$(J9)<>I2$THEN V0$(J9+1)=I2$ : GOTO 320 0310 IF J1>J9THEN J1=9E99 0320 IF J7(1)=0THEN J7=0 : J7(3)=2 : IF J7(1)>6THEN 327 : LOAD DA T(D7$(1)) 0327 V1$()="609Eentr609Eline609Eplin609Eprnt" : IF D7$="H"THEN V1$()="609EENTR609Eline609EPLIN609EPRNT609EPOS 609EFRMT" : LOAD T<INT((LEN(V1$())+7)/8)>V1$() 0330 IF J7(1)<>0THEN 350 : I2$=V0$(J9) : IF I2$<>HEX(8F)THEN 340 : V0$(J9)=" " : J9=J9-1 : IF J0(1)>J9+1THEN J0(1)=J9+1 0340 I7=J8-J0(1) : RETURN 0350 I7=J0(4)-J9-1 : RETURN 0360 IF I8=0OR C3=A0(3)THEN RETURN : I2$()=ALL(00) : C=C3 0370 C=C+1 : IF C>7THEN 380 : IF J1$(C)>HEX(0000)THEN I2$(C)=BIN(ABS(I8),2) : GOTO 370 0380 I2$(C)=BIN(ABS(I8),2) : IF C<A0(3)THEN STR(I2$(),C*2+1,(A0(3)-C)*2)=STR(I2$(),C*2-1,(A0(3)-C)*2) : IF I8>0THEN J1$()=ADDCI2$() : ELSE J1$()=SUBCI2$() : RETURN 0390 V1$()=J1$() : V4$="P" : GOSUB '221(A1,1,1,1,1) : IF R1$<>HEX(00)THEN 2170 : RETURN 0410 GOSUB 2040 : GOTO 30 0420 GOSUB 2050 : GOTO 30 0430 GOSUB 2060 : GOTO 30 0440 GOSUB 2070 : GOTO 30 0450 GOSUB 2080 : GOTO 30 0460 GOSUB 2090 : GOTO 30 0470 GOSUB 2100 : GOTO 510 0475 GOSUB 2100 : GOTO 300 0480 GOSUB 2110 : GOTO 500 0490 GOSUB 2120 0500 I7=I4-1 0510 IF I7>1THEN STR(V0$(),J1,I7-1)=I1$() : GOTO 300 2000 % This is line 2000 - do not renumber lines 2000-2999 2010 PRINT AT(0,63,17);B5$(2);"Which Entry?";B5$(1); : RETURN 2020 PRINT HEX(07);AT(0,63,17); : I1$="Loading the Editor" : GOTO 2095 2030 I1$="Invalid Key - ignored" : GOTO 2095 2040 I1$="No glossary attached" : GOTO 2095 2050 I1$="Error reading gloss. admin" : GOTO 2200 2060 I1$="Glossary not verified" : GOTO 2095 2070 I1$="Gloss. index exceeds one sector" : GOTO 2095 2080 I1$="Error in gloss. index page read" : GOTO 2200 2090 I1$="No such glossary entry" : GOTO 2095 2095 PRINT HEX(07);AT(23,48,32);B5$(2);I1$;B5$(1); : RETURN 2100 I1$="Insufficient room" : GOTO 2190 2110 I1$="No page breaks on special pages" : GOTO 2190 2120 I1$="Too many pages" : GOTO 2190 2130 I1$="Incomplete format line" : GOTO 2190 2140 B2$,I1$="Error reading glossary item" : GOTO 2180 2150 B2$,I1$="Error replacing page" : GOTO 2180 2160 B2$,I1$="Error saving new page" : GOTO 2180 2170 B2$,I1$="Error rewriting page table" : GOTO 2180 2180 GOSUB 2210 : GOSUB 2220 : IF B2$<>" "THEN B2$=I1$ : IF Y5$<>" "THEN GOSUB '31 : GOSUB 2230 : GOSUB 2240 : GOSUB '31 2190 GOSUB 2220 : GOSUB 2230 : GOSUB 2240 : RETURN 2200 GOSUB 2210 : GOSUB 2230 : RETURN 2210 IF R1$>HEX(29)THEN CONVERT VAL(R1$)TO I$,(##) : ELSE HEXUNPACKR1$TO I$ : I1$=I1$&" - error = "&I$ : RETURN 2220 I1$=I1$&" - Cancel" : RETURN 2230 PRINT HEX(07);AT(23,0,80);B5$(2);I1$;B5$(1); : RETURN 2240 KEYIN S2$,,2250 : GOTO 2240 2250 IF POS(HEX(F050)=S2$)>0THEN RETURN : GOTO 2240 2260 IF D1$=HEX(0D)THEN I1$()="\A8\AD\D2\C5\D4\D5\D2\CE\AD\A9" : IF D1$=HEX(08)THEN I1$()="\A8\AD\C2\C1\C3\CB\D3\D0\C1\C3\C5\AD\A9" : IF D1$=HEX(FF)THEN I1$()="\A8\AD\D5\CE\C4\C5\D2\D3\C3\CF\D2\C5\AD\A9" : RETURN 2270 DATA "\A8\AD\C9\CE\C4\C5\CE\D4\AD\A9","\A8\AD\C9\CE\C4\C5\CE\D4\AD\A9","\ A8\AD\D0\C1\C7\C5\AD\A9","\A8\AD\D0\C1\C7\C5\AD\A9","\A8\AD\C3\C5\CE\D4\C 5\D2\AD\A9","\A8\AD\C3\C5\CE\D4\C5\D2\AD\A9","\A8\AD\C4\C5\C3\AD\D4\C1\C2 \AD\A9","\A8\AD\C4\C5\C3\AD\D4\C1\C2\AD\A9","\A8\AD\C6\CF\D2\CD\C1\D4\AD\ A9","\A8\AD\CD\C5\D2\C7\C5\AD\A9","\A8\AD\C4\CF\CE\A7\D4\AD\CD\C5\D2\C7\C 5\AD\A9","\A8\AD\CE\CF\D4\C5\AD\A9","\A8\AD\CE\CF\D4\C5\AD\A9","\A8\AD\D3 \D4\CF\D0\AD\A9","\A8\AD\D3\D4\CF\D0\AD\A9","\A8\AD\C3\CF\CD\CD\C1\CE\C4\ AD\A9","\A8\AD\C3\CF\CD\CD\C1\CE\C4\AD\A9" 2280 DATA "\A8\AD\D3\D5\C2\D3\C3\D2\C9\D0\D4\AD\A9","\A8\AD\D3\D5\D0\C5\D2\D3\ C3\D2\C9\D0\D4\AD\A9","\A8\AD\D4\C1\C2\AD\A9","\A8\AD\D4\C1\C2\AD\A9" 3000 DEFFN'31 : A5=0 : A5$()="609CloseJCATSMAL" : A5$=R3$() : R3$()=STR(R3$(),10) : IF A1>-1OR A2>-1THEN LOAD T<2>A5$() : COM CLEAR C : LOAD TA5$