Listing of file='609.VER2' on disk='vmedia/731-0067G.wvd.zip'
# Sector 2744, program filename = '609.VER2'
0010 REM 609.VER2 238-08/07/86 Copyright Wang Laboratories, INC. 1986
0020 COM D6$(20)10
0030 DIM J0$2,J1$(256)1,J2$(256)1,J3$(256)1,C1$(256)1,D0$2,C1$2,C2$2,D1$2,C5$2
,D6(3),C6(3),D3$(128)2,J2$1,D5$(3)16,D8$(2)8,J4$1,C7$(4)2,J9$80,J8$10
: T=0
: J0$=HEX(0002)
: J4$="S"
0650 C6(1)=0
: L=1
: A=VAL(J0$,2)
: C7$(1)=J0$ADDCHEX(01)
: GOSUB 1400
: IF D0$<>HEX(0004)THEN GOSUB 1130
: ELSE GOSUB 1560
0660 C6(1)=C6(1)+1
: IF C6(1)=1THEN J1$()=C1$()
: IF C6(1)>D6(1)THEN 690
: ELSE GOTO 710
0690 IF STR(J1$(),4,2)=HEX(0000)THEN 959
: J0$=STR(J1$(),4,2)
: J4$="B"
: GOTO 650
0710 J0$=STR(J1$(),5+18*C6(1)-1)
: J4$="S"
0730 C6(2)=0
: L=2
: A=VAL(J0$,2)
: C7$(2)=J0$ADDCHEX(01)
: GOSUB 1400
: IF D0$<>HEX(0004)THEN GOSUB 1130
: IF D0$<>HEX(0004)THEN 750
: ELSE GOSUB 1560
: J2$()=C1$()
0750 C6(2)=C6(2)+1
: IF C6(2)>D6(2)THEN 770
: ELSE GOTO 790
0770 IF STR(J2$(),4,2)=HEX(0000)THEN 660
: J0$=STR(J2$(),4,2)
: J4$="B"
: GOTO 730
0790 J0$=STR(J2$(),5+18*C6(2)-1)
: J4$="S"
0810 C6(3)=0
: L=3
: A=VAL(J0$,2)
: C7$(3)=J0$ADDCHEX(01)
: GOSUB 1400
: IF D0$<>HEX(0004)THEN GOSUB 1130
: IF D0$<>HEX(0004)THEN 820
: ELSE GOSUB 1560
0820 C6(3)=C6(3)+1
: J3$()=C1$()
0840 IF C6(3)>D6(3)THEN 850
: ELSE GOTO 870
0850 IF STR(J3$(),4,2)=HEX(0000)THEN 750
: J0$=STR(J3$(),4,2)
: J4$="B"
: GOTO 810
0870 J0$=STR(J3$(),5+18*C6(3)-1)
: L=4
: A=VAL(J0$,2)
: J4$="S"
: C7$(4)=J0$ADDCHEX(01)
: GOSUB 1400
: IF D0$<>HEX(0004)THEN GOSUB 1130
: IF D0$<>HEX(0004)THEN 930
: ELSE GOSUB 1560
: D1$=STR(C1$(),34,2)
: D3$()=ALL(FF)
: MAT SEARCHSTR(D1$(),1,LEN(D1$())),=STR(D1$,,2)TO D3$()STEP 2
: MAT SEARCHD3$(),=HEX(0000)TO C2$
: S=INT((VAL(C2$,2)-1)/2)
: IF S<=0THEN 930
: GOSUB 1040
0930 C6(3)=C6(3)+1
: GOTO 840
0959 IF P+Q+T=0THEN GOSUB 2040
: ELSE GOSUB 2050
0960 KEYIN J2$,,970
0970 IF POS(HEX(F00D82)=J2$)=0THEN 960
: IF P+Q+T=0OR J2$=HEX(F0)THEN D8$()="609@VER Prime 62"
: ELSE D8$()="609.VERPPrime 62"
: PRINT HEX(03)
: LOAD T<2>D8$()
1040 Q=Q+1
: IF Q>20THEN 2020
: J0$=J0$ADDCHEX(01)
: D2$(Q)=STR(J0$)&STR(D1$)&STR(C1$(),61,49)
: L=3
: RETURN
1130 T=T+1
: IF T>20THEN 2020
: IF L=1THEN D6$(T)=HEX(01)&J4$&STR(C7$(1))&ALL(00)
: IF L=2THEN D6$(T)=HEX(02)&J4$&STR(C7$(1))&STR(C7$(2))&ALL(00)
: IF L=3THEN D6$(T)=HEX(03)&J4$&STR(C7$(1))&STR(C7$(2))&STR(C7$(3))&ALL(00)
: IF L=4THEN D6$(T)=HEX(04)&J4$&C7$()
: IF L=4THEN L=3
: C6(L)=C6(L)+1
: RETURN
1400 D0$=HEX(0000)
: DATA LOAD BA T#5,(J0+A)C1$()
: ERRORD0$=BIN(ERR)
: GOTO 2100
1420 IF L<4THEN D6(L)=VAL(STR(C1$(),1),2)
: D0$=STR(C1$(),255)
: IF L>=4THEN RETURN
: ELSE IF D6(L)>13THEN D6(L)=13
: RETURN
1560 C1$=BIN(A,2)ADDCHEX(01)
: MAT SEARCHSTR(D9$()),=STR(C1$,1,2)TO C5$STEP 5
: STR(D9$(),VAL(C5$,2)+4,1)=ADDHEX(80)
: RETURN
1630 PRINT AT(23,3);J9$
: GOSUB 2100
1650 PRINT HEX(0601);AT(23,59);J9$;HEX(07);
1660 KEYIN J2$,1670,1670
: GOTO 1660
1670 IF J2$=HEX(F0)THEN 1680
: ELSE GOTO 1650
1680 COM CLEAR C5
: D8$()="609@VER Prime 62"
: LOAD DC T<2>D8$()
2020 J9$="Number of errors exceeds the limit."
: GOTO 1630
2040 PRINT AT(21,29,51);BOX(-1,-50.7);AT(21,3,);"Volume is intact
Execute/Cancel";HEX(0D06)
: RETURN
2050 PRINT AT(21,42,);"Number of errors in name tree =";T
: J9$="Cancel for Menu or Execute to continue with Recovery "
: PRINT AT(23,3,);J9$;HEX(0D06);
: RETURN
2100 J9$="Please Cancel"
: RETURN