Listing of file='609QINDX' on disk='vmedia/701-2739G.wvd.zip'
# Sector 826, program filename = '609QINDX'
0010 REM % 609QINDX, Release 02-00, (12/28/81) - Copyright Wang Laboratories,
Inc.
0135 DIM Q$(256)1,Q1$(256)1,Q3$(256)1,Q1$2,Q2$2,Q$10,Q9(8),Q3,Q8,Q9
: DIM Q4$(5)50,Q1(2)
: DIM C3$(200)10,C4$(25)10,T2$2,C1$122,C0$2
: PRINT HEX(0306)
: GOSUB 2020
: GOSUB 1530
: IF Q2$="0"THEN 190
: GOTO 1650
0190 J4=0
: D4=0
0205 Q1=1
: Q1$="05"
: GOSUB '200
: IF Q2$="0"THEN 250
: IF Q2$="1"THEN GOSUB 2320
: ELSE GOSUB 2260
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: IF Q2$<>"5"THEN 1650
: KEYIN D9$
: IF D9$=HEX(82)THEN 205
: ELSE GOSUB '31
0250 J4=Q
: IF J4>0THEN 285
0265 GOSUB 2300
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: GOTO 1650
0285 J9=1
0290 GOSUB 1530
: IF Q2$<>"0"THEN 1650
0305 Q1$="01"
: IF J4<=25THEN Q=J4
: ELSE Q=25
: Q1=J9
: GOSUB '200
: IF Q2$="0"THEN 360
: IF Q2$="1"THEN GOSUB 2320
: ELSE GOSUB 2260
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: IF Q2$<>"5"THEN 1650
: KEYIN D9$
: IF D9$=HEX(82)THEN 305
: ELSE GOSUB '31
0360 C4$()=" "
: C4$()=Q4$()
: C9=0
: C6,C2=1
: D3=4
: C7=Q
: FOR D0=1TO C7
: GOSUB 1530
: IF Q2$<>"0"THEN 1650
0435 Q1$="03"
: Q$=C4$(D0)
: GOSUB '200
: IF Q2$="0"THEN 485
: IF Q2$="1"THEN GOSUB 2320
: IF Q2$="3"THEN GOSUB 2340
: ELSE GOSUB 2260
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: IF Q2$<>"5"THEN 520
: KEYIN D9$
: IF D9$=HEX(82)THEN 435
: ELSE GOSUB '31
0485 IF VER(STR(Q4$(1),1,5),"####A")<>5AND STR(Q4$(1),1,5)<>"INDEX"THEN 535
: D4=D4+1
: C3$(D4)=C4$(D0)
: IF D4>6THEN 535
: ELSE GOSUB 1565
0520 D3=D3+3
: C1=C1+1
: IF C9=D4THEN C6=6
0535 NEXT D0
: C9=D4
: IF C7<25THEN 580
: J9=J9+25
: J4=J4-25
: IF J4=0THEN 580
: GOTO 290
0580 C3=INT(D4/6)+SGN(MOD(D4,6))
: IF D4>0THEN 725
: ELSE GOTO 265
0600 C1=0
: FOR C6=1TO 6
: C9=C9+1
: GOSUB 1530
: IF Q2$<>"0"THEN 1650
0635 Q1$="03"
: Q$=C3$(C9)
: GOSUB '200
: IF Q2$="0"THEN 690
: IF Q2$="1"THEN GOSUB 2320
: IF Q2$="3"THEN GOSUB 2340
: ELSE GOSUB 2260
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: IF Q2$<>"5"THEN 700
: KEYIN D9$
: IF D9$=HEX(82)THEN 635
: ELSE GOSUB '31
0690 GOSUB 1565
0700 D3=D3+3
: C1=C1+1
: IF C9=D4THEN C6=6
: NEXT C6
0725 GOSUB 2160
: PRINT AT(23,4);B2$;C2;AT(4,0);HEX(05);
: C6=1
: D3=4
0755 PRINT HEX(06);AT(D3,0);HEX(05);
: KEYIN C0$,,865
: PRINT HEX(06);AT(23,40,);
: ON POS(HEX(2008820D)=C0$)GOTO 890,890,805,805
: PRINT HEX(07);
: GOTO 755
0805 Q1$="03"
: Q$=C3$((C2-1)*6+C6)
: GOSUB '200
: IF Q2$="0"THEN 845
: IF Q2$="1"THEN GOSUB 2320
: IF Q2$="3"THEN GOSUB 2340
: ELSE GOSUB 2260
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
: GOTO 1655
0845 IF VER(STR(Q4$(1),1,5),"####A")=5THEN R5$=STR(Q4$(1),1,5)
: GOSUB '31
0865 ON POS(HEX(46454342F00F)=C0$)GOTO 890,890,975,940,905,915
: PRINT HEX(07);
: GOTO 755
0890 GOSUB 1025
: GOTO 755
0905 GOSUB '31
0915 GOSUB 1150
: PRINT HEX(0306)
: GOSUB 2020
: GOTO 600
0940 IF C2-1<1THEN 955
: C2=C2-1
: GOTO 1000
0955 GOSUB 2180
: PRINT AT(23,40,40);B5$(2);HEX(070E);B2$;B5$(1);
: GOTO 755
0975 IF C2+1<=C3THEN 995
: GOSUB 2200
: PRINT AT(23,40,40);B5$(2);HEX(070E);B2$;B5$(1);
: GOTO 755
0995 C2=C2+1
1000 PRINT HEX(0306)
: C9=(C2-1)*6
: GOSUB 2020
: GOTO 600
1025 PRINT HEX(06);
: ON POS(HEX(20450846)=C0$)GOTO 1040,1040,1085,1085
1040 C6=C6+1
: IF C6>C1THEN C6=1
: C7=D3+3
: IF C7>19OR C7>3*(C6+1)THEN C7=4
: D3=C7
: GOTO 1135
1085 C6=C6-1
: IF C6>0THEN 1120
: C6=7
1100 C6=C6-1
: IF C6>C1THEN 1100
1120 C7=D3-3
: IF C7<4THEN C7=3*(C6+1)-2
: D3=C7
1135 PRINT AT(D3,0);HEX(05);
: RETURN
1150 GOSUB 2220
: PRINT HEX(06);AT(0,58);B5$(2);HEX(0E);B2$;AT(23,40,40);B5$(1);
: GOSUB '100(1,2,0,70," ")
: PRINT HEX(06);AT(0,48,32);AT(23,40,20);
: IF STR(C1$,1,2)=" "THEN 1195
: CONVERT STR(C1$,1,2)TO C2
: IF C2=0THEN C2=1
: IF C2>C3THEN C2=C3
: GOTO 1200
1195 C2=1
1200 C9=(C2-1)*6
: RETURN
1220 DEFFN'100(D2,J4,J7,C0,C1$)
1225 D8=1
: C0$=ALL(20)
: PRINT AT(J7,C0);
1245 PRINT HEX(05);
: KEYIN C0$,,1275
: IF C0$>=HEX(30)AND C0$<=HEX(39)THEN 1455
: ON POS(HEX(080DE582)=C0$)GOTO 1415,1375,1395,1390
1275 PRINT HEX(06);AT(23,60,20);
: ON POS(HEX(F04C4D)=C0$)GOTO 1310,1330,1350
: GOSUB 2240
: PRINT HEX(0607);AT(23,60);B5$(2);HEX(0E);B2$;AT(J7,C0+D8-1);B5$(1);
: GOTO 1245
1310 PRINT HEX(06);AT(23,60,20);AT(0,40,40);
: RETURN CLEAR
1325 GOTO 755
1330 D8=D8+1
: IF D8>J4THEN D8=J4
: PRINT HEX(06);AT(J7,C0+D8-1);
: GOTO 1245
1350 D8=D8-1
: IF D8<1THEN D8=1
: PRINT HEX(06);AT(J7,C0+D8-1);
: GOTO 1245
1370 GOTO 1245
1375 $TRAN(C1$,HEX(2020))R
: RETURN
1390 RETURN
1395 C1$=ALL(20)
: PRINT HEX(06);AT(J7,C0);STR(C1$,1,J4);
: GOTO 1225
1415 D8=D8-1
: IF D8>=1THEN 1440
: PRINT HEX(06);
: GOTO 1225
1440 PRINT HEX(082008);
: STR(C1$,D8,1),C0$=" "
: GOTO 1515
1455 STR(C1$,D8,1)=C0$
: IF C0$=" "THEN C0$=HEX(20)
: PRINT HEX(06);C0$;
: IF D8=1THEN 1500
: C0$=" "
: D8=D8+1
: IF D8>J4THEN 1375
: GOTO 1515
1500 STR(C1$,2,J4-1)=ALL(20)
: PRINT STR(C1$,2,J4-1);AT(J7,C0+1);
: D8=D8+1
1515 PRINT HEX(06);AT(23,60,20);AT(J7,C0+D8-1);
: GOTO 1245
1530 Q=5
: GOSUB '204
: IF Q2$="0"THEN 1555
: GOSUB 2280
: PRINT AT(23,0,80);B5$(2);B2$;B5$(1);HEX(07);
1555 RETURN
1565 PRINT AT(D3,0);HEX(85);AT(D3,2);STR(Q4$(1),1,5);
: PRINT AT(D3,10);STR(Q4$(1),11,25);
: IF STR(Q4$(1),1,5)="INDEX"THEN 1615
: CONVERT STR(Q4$(3),37,4)TO D
: ERRORD=0
1585 PRINT AT(D3,47);D;
: GOSUB 2100
: PRINT AT(D3,60);STR(B2$,1,10);
: PRINT AT(D3+1,2);STR(B2$,11,20);
: GOTO 1640
1615 CONVERT STR(Q4$(4),1,1)TO D
: ERRORD=0
1620 PRINT AT(D3,47);D;
: GOSUB 2100
: PRINT AT(D3,60);STR(B2$,1,10);
: PRINT AT(D3+1,2);STR(B2$,11,20);
1640 RETURN
1650 KEYIN D9$
1655 IF D9$=HEX(F0)THEN 1670
: PRINT HEX(07);
: GOTO 1650
1670 DEFFN'31
: COM CLEAR C
: LOAD TA5$
2020 PRINT B6$(2)
: PRINT AT(1,11);"Document Name";AT(1,43);"Printer No.";AT(1,60);"Status";
: C1$=ALL(CC)
: PRINT STR(C1$,1,80);B6$(1);
: D3=4
: C6=-1
: RETURN
2100 IF STR(Q$,4,1)="P"THEN STR(B2$,1,10)="queued"
: IF STR(Q$,4,1)="R"THEN STR(B2$,1,10)="printing"
: IF STR(Q$,4,1)="I"THEN STR(B2$,1,10)="incomplete"
: IF STR(Q$,4,1)="C"THEN STR(B2$,1,10)="cancelled"
: IF STR(Q4$(2),15,1)="C"THEN STR(B2$,11,20)="Character Printer"
: ELSE STR(B2$,11,20)="Line Printer"
: RETURN
2160 B2$="Page"
: RETURN
2180 B2$="No previous page"
: RETURN
2200 B2$="No next page"
: RETURN
2220 B2$="Which page?"
: RETURN
2240 B2$="Digits only!"
: RETURN
2260 B2$="Queue file locked - Press CANCEL or EXECUTE to try again"
: RETURN
2280 B2$="Queue file not found - Press CANCEL"
: RETURN
2300 B2$="Cannot find one - Press CANCEL"
: RETURN
2320 B2$="Invalid read to queue file - Press CANCEL"
: RETURN
2340 B2$="Record not found in queue file - Press CANCEL"
: RETURN