Listing of file='SCAT010A' on disk='vmedia/701-2048D.wvd.zip'
# Sector 220, program filename = 'SCAT010A'
0010 REM SCAT010A,00-00(02/18/76),12003A - COPYRIGHT WANG LABS. INC., 1976
0060 COM O,P,F,A1$3,H$32
: DIM Q6$64,R9$(16)
: PRINT HEX(03)
: DATA LOAD DC OPEN T#0,"SCATF010"
: DATA LOAD DC #0,O,P,A1$,F
: GOSUB '97(A1$)
: IF Q6$="Y"THEN 160
: F$="N"
: GOSUB 560
0160 GOSUB 1070
0190 GOSUB '243("ARE THE PARAMETERS OK? (Y/N)",1)
: IF Q6$="N"THEN 240
: IF Q6$="Y"THEN 770
: GOSUB 1790
: GOTO 190
0240 F$="N"
0270 GOSUB '245("ENTER THE NUMBER OF THE ITEM TO CHANGE. (0 = END)",1,0)
: IF Q9=0THEN 770
: IF (Q9-1)*(Q9-2)*(Q9-3)*(Q9-4)=0THEN 320
: GOSUB 1790
: GOTO 270
0320 ON Q9GOSUB 360,430,560,660
: GOSUB 1070
: GOTO 270
0360 GOSUB '245("ENTER THE SORTING OPTION. 0 - NAME 2 - STARTING SECTOR",1,
0)
: IF Q9*(Q9-2)<>0THEN 400
: O=Q9
: RETURN
0400 GOSUB 1790
: GOTO 360
0430 GOSUB '248(11,0,4)
: PRINT ," FILE TYPE"
: PRINT ,"0 - ALL"
: PRINT ,"1 - ACTIVE"
: PRINT ,"2 - SCRATCHED"
0480 GOSUB '245("ENTER THE TYPE OF FILE TO LIST.",1,0)
: IF Q9*(Q9-1)*(Q9-2)=0THEN 520
: GOSUB 1790
: GOTO 480
0520 F=Q9
: GOSUB '248(11,0,4)
: RETURN
0560 GOSUB '243("ENTER THE INPUT ADDRESS.",3)
: IF STR(Q6$,1,1)="B"THEN 590
: IF STR(Q6$,1,1)<>"3"THEN 630
0590 A1$=Q6$
: GOSUB '97(A1$)
: IF Q6$="N"THEN 630
: RETURN
0630 GOSUB 1790
: GOTO 560
0660 GOSUB '245("ENTER THE OUTPUT DEVICE OPTION. 0 - CRT 1 - PRINTER",1,0)
: P=Q9
: IF P=0THEN 720
: IF P<>1THEN 730
: GOSUB '97("215")
: IF Q6$="N"THEN 730
0720 RETURN
0730 GOSUB 1790
: GOTO 660
0770 IF F$=" "THEN 860
0780 GOSUB '243("DO YOU WISH TO SAVE THESE VALUES AS THE SYSTEM DEFAULTS? (Y/N
)",1)
: IF Q6$="N"THEN 860
: IF Q6$="Y"THEN 830
: GOSUB 1790
: GOTO 780
0830 DATA LOAD DC OPEN T#0,"SCATF010"
: DATA SAVE DC #0,O,P,A1$,F
0860 GOSUB '98(880,2,A1$)
: LOAD DC T#0,"SELECT"880,880
0880 % SELECT #2 GOES HERE
0890 GOSUB '243("ENTER TITLE FOR LIST",32)
: H$=Q6$
: GOSUB 1010
: LOAD DC T#0,"SCAT020A"
0960 DEFFN'15
: COM CLEAR O
: GOSUB 1010
: LOAD DC T#0,"START040"
1010 GOSUB '248(0,0,4)
: PRINT HEX(010A);"REMOUNT ISS PLATTER IF REMOVED"
: INPUT "KEY RETURN(EXEC) TO RESUME",Q9
: RETURN
1070 PRINT HEX(010A0A0A0A0A0A);," ISS SORT DISK CATALOG"
: PRINT
: PRINT " 1. SORT OPTION = ";
: IF O=2THEN 1130
: PRINT "NAME";
: GOTO 1140
1130 PRINT "STARTING SECTOR";
1140 PRINT TAB(36);"3. INPUT ADDRESS = ";A1$
: PRINT " 2. FILE TYPE = ";
: ON FGOTO 1190,1210
: PRINT "ALL";
: GOTO 1220
1190 PRINT "ACTIVE";
: GOTO 1220
1210 PRINT "SCRATCHED";
1220 PRINT TAB(36);"4. OUTPUT DEVICE = ";
: IF P=1THEN 1260
: PRINT "CRT";TAB(63)
: GOTO 1270
1260 PRINT "PRINTER";TAB(63)
1270 RETURN
1300 DEFFN'242(W0,Q6$)
: IF W0<=0THEN 1350
: IF W0=1THEN 1340
: STR(Q6$,2)=STR(Q6$,1,W0-1)
1340 PRINT Q6$;
1350 RETURN
1370 DEFFN'243(Q6$,Q0)
: GOSUB 1820
1390 SELECT CO 205
: Q6$=" "
: INPUT Q6$
: IF Q0=0THEN 1890
: IF LEN(Q6$)<=Q0THEN 1890
: GOSUB 1790
1460 DEFFN'244(Q0)
: GOSUB 1870
: GOSUB 1840
: GOTO 1390
1510 DEFFN'245(Q6$,Q2,Q3)
: Q0=ABS(Q2)+Q3+1
: GOSUB 1820
1540 IF ABS(Q2)+ABS(Q3)=0THEN 1580
: GOSUB '242(ABS(Q2)+2,HEX(09))
: PRINT "/"
: GOTO 1590
1580 PRINT ,," "
1590 GOSUB 1870
: SELECT CO 205
: Q9,W0=-1E-99
: INPUT Q9
: IF W0=Q9THEN 1670
: IF ABS(Q2)+Q3=0THEN 1770
: IF Q9>=0THEN 1740
: IF Q2<=0THEN 1740
1670 GOSUB 1790
1690 DEFFN'246(Q2,Q3)
: Q0=ABS(Q2)+Q3+1
: GOSUB 1870
: GOSUB 1840
: GOTO 1540
1740 IF ABS(Q9)>=10^ABS(Q2)THEN 1670
: W0=ABS(Q9*10^Q3)
: IF INT(W0)<>W0THEN 1670
1770 GOSUB '248(3,0,1)
: RETURN
1790 GOSUB '248(3,0,1)
: PRINT "RE-ENTER"
: RETURN
1820 SELECT PRINT 005(64),CO 005
: PRINT HEX(010A);STR(Q6$,1);
1840 SELECT PRINT 005(64),CO 005
: GOSUB '242(Q0+2,"-")
: PRINT TAB(64)
1870 PRINT HEX(010A0A)
: RETURN
1890 PRINT HEX(0A);TAB(64)
: SELECT PRINT 005(64),CO 005
: RETURN
1930 DEFFN'248(Q6,Q7,Q8)
: GOSUB 2070
: IF Q8<1THEN 2040
: GOSUB 2040
: SELECT PRINT 205
: Q6$=" "
: PRINT STR(Q6$,Q7+1)
: IF Q8<2THEN 2040
: FOR W0=2TO Q8
: PRINT HEX(0A);STR(Q6$,1)
: NEXT W0
2040 PRINT HEX(01)
: GOSUB '242(Q7,HEX(09))
: GOSUB '242(Q6,HEX(0A))
2070 SELECT PRINT 005(64),CO 005
: RETURN
2110 DEFFN'97(Q6$)
: STR(Q6$,4)=HEX(00300131023203330434053506360737083809390A410B420C430D440E
450F462020)
: $TRAN(Q6$<2,2>,Q6$<4>)R
: IF STR(Q6$,2,1)>HEX(0F)THEN 2250
: IF STR(Q6$,3,1)>HEX(0F)THEN 2250
: ROTATE(STR(Q6$,2,1),4)
2180 STR(Q6$,4,1)=STR(Q6$,2,1)
: OR (STR(Q6$,4,1),STR(Q6$,3,1))
: $GIO(02000316122273404400,Q6$)
: IF STR(Q6$,8,1)<>HEX(00)THEN 2250
: Q6$="Y"
: RETURN
2250 Q6$="N"
: RETURN
2290 DEFFN'98(Q8,Q9,Q6$)
: R9$(1)=HEX(20FF0000A5D7313331300D0000FE)
: PACK(####)STR(R9$(1),3,2)FROMQ8
: CONVERT Q9TO STR(R9$(1),7,1),(#)
: STR(R9$(1),8,3)=Q6$
: LIMITS T#0,"SELECT",Q8,Q9,Q9
: DATA SAVE BA T#0,(Q8+1,Q9)R9$()
: RETURN