_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

TIDY DIRECTORY

FILE INFORMATION

FILENAME(S): TIDY DIRECTORY

FILE TYPE(S): PRG

FILE SIZE: 5K

FIRST SEEN: 2025-11-30 21:29:00

APPEARS ON: 1 disk(s)

FILE HASH

eb113b4665d2c9e32968e057671741d1949813bce0da477c31f7c096e8c075c1

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
FORMATEREN TIDY DIRECTORY PRG DuncanTwain 28 16 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)

00000000: 01 08 27 08 64 00 8F 20  2A 2A 2A 2A 2A 2A 2A 2A  |..'.d.. ********|
00000010: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000020: 2A 2A 2A 2A 2A 2A 2A 00  4D 08 65 00 8F 20 2A 20  |*******.M.e.. * |
00000030: 44 49 52 45 43 54 4F 52  59 20 54 49 44 59 20 46  |DIRECTORY TIDY F|
00000040: 4F 52 20 31 35 34 31 20  20 20 20 20 2A 00 73 08  |OR 1541     *.s.|
00000050: 66 00 8F 20 2A 20 57 2E  4F 57 45 4E 20 4D 55 52  |f.. * W.OWEN MUR|
00000060: 43 4F 54 54 20 31 39 38  33 20 20 20 20 20 20 20  |COTT 1983       |
00000070: 20 20 2A 00 99 08 67 00  8F 20 2A 20 52 45 41 44  |  *...g.. * READ|
00000080: 20 2F 20 53 4F 52 54 20  2F 20 52 45 57 52 49 54  | / SORT / REWRIT|
00000090: 45 20 20 20 20 20 20 20  2A 00 BF 08 68 00 8F 20  |E       *...h.. |
000000A0: 2A 20 43 4F 4D 4D 4F 44  4F 52 45 20 43 4F 4D 50  |* COMMODORE COMP|
000000B0: 55 54 49 4E 47 20 41 55  47 20 38 33 20 20 2A 00  |UTING AUG 83  *.|
000000C0: E5 08 69 00 8F 20 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |..i.. **********|
000000D0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000000E0: 2A 2A 2A 2A 2A 00 02 09  6E 00 97 35 33 32 38 30  |*****...n..53280|
000000F0: 2C 31 35 3A 97 35 33 32  38 31 2C 31 35 3A 99 22  |,15:.53281,15:."|
00000100: 1F 22 00 21 09 78 00 99  C7 28 31 34 29 22 93 20  |.".!.x...(14)". |
00000110: 20 D4 C9 C4 D9 A0 C4 C9  D2 C5 C3 D4 CF D2 D9 20  | .............. |
00000120: 22 00 2B 09 7D 00 8D 33  30 30 30 00 6E 09 82 00  |".+.}..3000.n...|
00000130: 99 22 11 11 20 20 CC 4F  41 44 20 44 49 53 4B 20  |."..  .OAD DISK |
00000140: 49 4E 20 44 52 49 56 45  2E 22 3A 99 22 11 11 20  |IN DRIVE.":.".. |
00000150: 20 D0 52 45 53 53 20 12  20 D3 D0 C1 C3 C5 20 92  | .RESS . ..... .|
00000160: 20 57 48 45 4E 20 52 45  41 44 59 2E 1F 22 00 83  | WHEN READY.."..|
00000170: 09 8C 00 A1 5A 24 3A 8B  5A 24 B3 B1 22 20 22 A7  |....Z$:.Z$.." ".|
00000180: 31 34 30 00 A9 09 96 00  8F 20 2A 2A 2A 2A 2A 2A  |140...... ******|
00000190: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001A0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 00 CF 09 97 00 8F 20  |*********...... |
000001B0: 2A 20 4F 50 45 4E 20 46  49 4C 45 53 20 26 20 42  |* OPEN FILES & B|
000001C0: 55 46 46 45 52 20 43 48  41 4E 4E 45 4C 20 2A 00  |UFFER CHANNEL *.|
000001D0: F5 09 98 00 8F 20 2A 20  53 45 54 20 55 50 20 49  |..... * SET UP I|
000001E0: 4E 49 54 49 41 4C 20 50  41 52 41 4D 45 54 45 52  |NITIAL PARAMETER|
000001F0: 53 20 20 20 2A 00 1B 0A  99 00 8F 20 2A 2A 2A 2A  |S   *...... ****|
00000200: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000210: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 00 43 0A A0 00  |***********.C...|
00000220: 44 4E B2 38 3A 44 B2 30  3A 43 32 B2 32 3A 43 43  |DN.8:D.0:C2.2:CC|
00000230: B2 31 35 3A 54 B2 31 38  3A 53 B2 30 3A 42 50 B2  |.15:T.18:S.0:BP.|
00000240: 31 34 34 00 60 0A AA 00  9F 43 43 2C 44 4E 2C 43  |144.`....CC,DN,C|
00000250: 43 3A 98 43 43 2C 22 49  30 22 3A 8D 31 30 30 30  |C:.CC,"I0":.1000|
00000260: 00 78 0A B4 00 9F 43 32  2C 44 4E 2C 43 32 2C 22  |.x....C2,DN,C2,"|
00000270: 23 22 3A 8D 31 30 30 30  00 9E 0A C9 00 8F 20 2A  |#":.1000...... *|
00000280: 20 47 45 54 20 44 49 53  4B 20 49 44 20 3A 20 54  | GET DISK ID : T|
00000290: 52 41 43 4B 20 31 38 20  53 45 43 30 20 2A 00 BB  |RACK 18 SEC0 *..|
000002A0: 0A D2 00 98 43 43 2C 22  55 31 3A 22 3B 43 32 3B  |....CC,"U1:";C2;|
000002B0: 44 3B 54 3B 53 3A 8D 31  30 30 30 00 D0 0A DC 00  |D;T;S:.1000.....|
000002C0: 98 43 43 2C 22 42 2D 50  3A 22 3B 43 32 3B 42 50  |.CC,"B-P:";C2;BP|
000002D0: 00 ED 0A E6 00 49 44 24  B2 22 22 3A 4E B2 32 30  |.....ID$."":N.20|
000002E0: 3A 8D 31 30 33 30 3A 49  44 24 B2 5A 24 00 0B 0B  |:.1030:ID$.Z$...|
000002F0: F0 00 99 22 93 11 11 20  C4 49 53 4B 20 4C 4F 41  |..."... .ISK LOA|
00000300: 44 45 44 20 3A 20 20 22  49 44 24 00 31 0B 2C 01  |DED :  "ID$.1.,.|
00000310: 8F 20 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |. **************|
00000320: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000330: 2A 00 57 0B 2D 01 8F 20  2A 20 53 45 54 20 55 50  |*.W.-.. * SET UP|
00000340: 20 44 49 52 45 43 54 4F  52 59 20 41 52 52 41 59  | DIRECTORY ARRAY|
00000350: 53 20 20 20 20 20 2A 00  7D 0B 2E 01 8F 20 2A 20  |S     *.}.... * |
00000360: 41 4E 44 20 53 45 43 54  4F 52 20 54 52 41 49 4C  |AND SECTOR TRAIL|
00000370: 20 20 20 20 20 20 20 20  20 20 20 20 2A 00 A3 0B  |            *...|
00000380: 2F 01 8F 20 2A 20 41 4C  4C 4F 57 20 46 4F 52 20  |/.. * ALLOW FOR |
00000390: 31 39 20 53 45 43 54 4F  52 53 20 20 20 20 20 20  |19 SECTORS      |
000003A0: 20 20 2A 00 C9 0B 30 01  8F 20 2A 20 41 4C 4C 4F  |  *...0.. * ALLO|
000003B0: 57 20 46 4F 52 20 31 34  34 20 45 4E 54 52 49 45  |W FOR 144 ENTRIE|
000003C0: 53 20 20 20 20 20 20 20  2A 00 EF 0B 31 01 8F 20  |S       *...1.. |
000003D0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000003E0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 00  |***************.|
000003F0: 13 0C 36 01 86 53 25 28  31 39 29 3A 8F 20 4E 45  |..6..S%(19):. NE|
00000400: 58 54 20 44 49 52 45 43  54 4F 52 59 20 53 45 43  |XT DIRECTORY SEC|
00000410: 54 4F 52 00 2D 0C 37 01  86 46 54 24 28 31 34 34  |TOR.-.7..FT$(144|
00000420: 29 3A 8F 20 46 49 4C 45  20 54 59 50 45 00 55 0C  |):. FILE TYPE.U.|
00000430: 38 01 86 54 53 24 28 31  34 34 29 3A 8F 20 54 26  |8..TS$(144):. T&|
00000440: 53 20 4F 46 20 46 49 52  53 54 20 44 41 54 41 20  |S OF FIRST DATA |
00000450: 42 4C 4F 43 4B 00 6F 0C  39 01 86 4E 46 24 28 31  |BLOCK.o.9..NF$(1|
00000460: 34 34 29 3A 8F 20 46 49  4C 45 20 4E 41 4D 45 00  |44):. FILE NAME.|
00000470: 8C 0C 3A 01 86 46 45 24  28 31 34 34 29 3A 8F 20  |..:..FE$(144):. |
00000480: 46 49 4C 45 20 45 4E 54  52 49 45 53 00 A6 0C 3B  |FILE ENTRIES...;|
00000490: 01 86 53 4B 24 28 31 34  34 29 3A 8F 20 53 4F 52  |..SK$(144):. SOR|
000004A0: 54 20 4B 45 59 53 00 B1  0C 40 01 86 54 24 28 34  |T KEYS...@..T$(4|
000004B0: 29 00 E5 0C 41 01 54 24  28 31 29 B2 22 53 45 51  |)...A.T$(1)."SEQ|
000004C0: 22 3A 54 24 28 32 29 B2  22 50 52 47 22 3A 54 24  |":T$(2)."PRG":T$|
000004D0: 28 33 29 B2 22 55 53 52  22 3A 54 24 28 34 29 B2  |(3)."USR":T$(4).|
000004E0: 22 52 45 4C 22 00 14 0D  4A 01 81 49 B2 31 A4 33  |"REL"...J..I.1.3|
000004F0: 30 3A 5A 30 24 B2 5A 30  24 AA C7 28 30 29 3A 82  |0:Z0$.Z0$..(0):.|
00000500: 3A 8F 20 46 4F 52 20 42  4C 41 4E 4B 20 45 4E 54  |:. FOR BLANK ENT|
00000510: 52 49 45 53 00 3A 0D 5E  01 8F 20 2A 2A 2A 2A 2A  |RIES.:.^.. *****|
00000520: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000530: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 00 60 0D 5F 01 8F  |**********.`._..|
00000540: 20 2A 20 52 45 41 44 20  44 49 52 45 43 54 4F 52  | * READ DIRECTOR|
00000550: 59 20 45 4E 54 52 49 45  53 20 20 20 20 20 20 2A  |Y ENTRIES      *|
00000560: 00 86 0D 60 01 8F 20 2A  2A 2A 2A 2A 2A 2A 2A 2A  |...`.. *********|
00000570: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000580: 2A 2A 2A 2A 2A 2A 00 9D  0D 68 01 53 B2 31 3A 8F  |******...h.S.1:.|
00000590: 20 53 54 41 52 54 20 53  45 43 54 4F 52 00 B8 0D  | START SECTOR...|
000005A0: 72 01 45 B2 31 3A 8F 20  53 54 41 52 54 20 46 49  |r.E.1:. START FI|
000005B0: 4C 45 20 45 4E 54 52 59  00 DA 0D 7C 01 98 43 43  |LE ENTRY...|..CC|
000005C0: 2C 22 55 31 3A 22 3B 43  32 3B 44 3B 54 3B 53 3A  |,"U1:";C2;D;T;S:|
000005D0: 8D 31 30 30 30 3A 42 50  B2 31 00 0F 0E 86 01 98  |.1000:BP.1......|
000005E0: 43 43 2C 22 42 2D 50 3A  22 3B 43 32 3B 42 50 3A  |CC,"B-P:";C2;BP:|
000005F0: 8D 31 31 30 30 3A 53 25  28 53 29 B2 41 3A 8F 20  |.1100:S%(S).A:. |
00000600: 47 45 54 20 4E 45 58 54  20 53 45 43 54 4F 52 00  |GET NEXT SECTOR.|
00000610: 3F 0E 90 01 98 43 43 2C  22 42 2D 50 3A 22 3B 43  |?....CC,"B-P:";C|
00000620: 32 3B 42 50 3A 8D 31 31  30 30 3A 46 54 B2 41 3A  |2;BP:.1100:FT.A:|
00000630: 8F 20 47 45 54 20 46 49  4C 45 20 54 59 50 45 00  |. GET FILE TYPE.|
00000640: 6D 0E 9A 01 8B 20 46 54  B2 30 B0 46 54 B2 31 32  |m.... FT.0.FT.12|
00000650: 38 A7 42 50 B2 42 50 AA  33 31 3A 89 35 30 30 3A  |8.BP.BP.31:.500:|
00000660: 8F 20 42 4C 41 4E 4B 20  45 4E 54 52 59 00 9C 0E  |. BLANK ENTRY...|
00000670: A4 01 8B 20 46 54 B3 31  32 38 20 A7 99 22 11 20  |... FT.128 ..". |
00000680: C6 C9 CC C5 20 C5 D2 D2  CF D2 20 20 CE 4F 54 20  |.... .....  .OT |
00000690: 43 4C 4F 53 45 44 22 3A  89 39 39 39 00 AA 0E AE  |CLOSED":.999....|
000006A0: 01 46 54 24 28 45 29 B2  41 24 00 CC 0E B8 01 4E  |.FT$(E).A$.....N|
000006B0: B2 32 3A 8D 31 30 34 30  3A 54 53 24 28 45 29 B2  |.2:.1040:TS$(E).|
000006C0: 5A 24 3A 8F 20 47 45 54  20 54 26 53 00 F0 0E C2  |Z$:. GET T&S....|
000006D0: 01 4E B2 31 36 3A 8D 31  30 34 30 3A 4E 46 24 28  |.N.16:.1040:NF$(|
000006E0: 45 29 B2 5A 24 3A 8F 20  47 45 54 20 4E 41 4D 45  |E).Z$:. GET NAME|
000006F0: 00 1C 0F CC 01 4E B2 31  31 3A 8D 31 30 34 30 3A  |.....N.11:.1040:|
00000700: 46 45 24 28 45 29 B2 5A  24 3A 8F 20 47 45 54 20  |FE$(E).Z$:. GET |
00000710: 46 49 4C 45 20 45 4E 54  52 49 45 53 00 42 0F D6  |FILE ENTRIES.B..|
00000720: 01 8F 20 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |.. *************|
00000730: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000740: 2A 2A 00 68 0F D7 01 8F  20 2A 20 50 52 49 4E 54  |**.h.... * PRINT|
00000750: 20 44 49 52 45 43 54 4F  52 59 20 45 4E 54 52 59  | DIRECTORY ENTRY|
00000760: 20 20 20 20 20 20 20 2A  00 8E 0F D8 01 8F 20 2A  |       *...... *|
00000770: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000780: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 00 B0  |**************..|
00000790: 0F E0 01 99 2C 22 20 20  20 20 22 4E 46 24 28 45  |....,"    "NF$(E|
000007A0: 29 22 20 3A 20 22 54 24  28 46 54 AB 31 32 38 29  |)" : "T$(FT.128)|
000007B0: 00 C2 0F EA 01 42 50 B2  42 50 AA 32 3A 45 B2 45  |.....BP.BP.2:E.E|
000007C0: AA 31 00 E3 0F F4 01 8B  42 50 B3 32 35 36 89 34  |.1......BP.256.4|
000007D0: 30 30 3A 8F 20 46 4F 52  20 4E 45 58 54 20 45 4E  |00:. FOR NEXT EN|
000007E0: 54 52 59 00 0E 10 FE 01  8B 53 25 28 53 29 B3 B1  |TRY......S%(S)..|
000007F0: 32 35 35 A7 53 B2 53 25  28 53 29 3A 89 33 38 30  |255.S.S%(S):.380|
00000800: 3A 8F 20 4E 45 58 54 20  53 45 43 54 4F 52 00 2D  |:. NEXT SECTOR.-|
00000810: 10 08 02 8D 31 31 33 30  3A 8F 20 47 45 54 20 4F  |....1130:. GET O|
00000820: 4B 20 54 4F 20 43 4F 4E  54 49 4E 55 45 00 55 10  |K TO CONTINUE.U.|
00000830: 12 02 45 B2 45 AB 31 3A  8B 45 B2 30 89 37 33 30  |..E.E.1:.E.0.730|
00000840: 3A 8F 20 44 49 52 45 43  54 4F 52 59 20 49 53 20  |:. DIRECTORY IS |
00000850: 45 4D 50 54 59 00 77 10  1C 02 99 22 20 C7 52 4F  |EMPTY.w...." .RO|
00000860: 55 50 20 42 59 20 46 49  4C 45 20 54 59 50 45 20  |UP BY FILE TYPE |
00000870: 3F 20 28 59 2F 4E 29 00  92 10 26 02 A1 5A 24 3A  |? (Y/N)...&..Z$:|
00000880: 46 54 24 B2 5A 24 3A 8B  5A 24 B2 22 59 22 89 35  |FT$.Z$:.Z$."Y".5|
00000890: 37 30 00 A3 10 30 02 8B  5A 24 B3 B1 22 4E 22 A7  |70...0..Z$.."N".|
000008A0: 35 35 30 00 C9 10 3A 02  8F 20 2A 2A 2A 2A 2A 2A  |550...:.. ******|
000008B0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000008C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 00 EF 10 3B 02 8F 20  |*********...;.. |
000008D0: 2A 20 53 45 54 20 53 4F  52 54 20 4B 45 59 53 20  |* SET SORT KEYS |
000008E0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 2A 00  |              *.|
000008F0: 15 11 3C 02 8F 20 2A 20  53 4F 52 54 20 44 49 52  |..<.. * SORT DIR|
00000900: 45 43 54 4F 52 59 20 45  4E 54 52 49 45 53 20 20  |ECTORY ENTRIES  |
00000910: 20 20 20 20 2A 00 3B 11  3D 02 8F 20 2A 20 55 53  |    *.;.=.. * US|
00000920: 45 53 20 53 48 45 4C 4C  20 53 4F 52 54 20 20 20  |ES SHELL SORT   |
00000930: 20 20 20 20 20 20 20 20  20 20 2A 00 61 11 3E 02  |          *.a.>.|
00000940: 8F 20 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |. **************|
00000950: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000960: 2A 00 76 11 44 02 99 22  11 20 D3 4F 52 54 49 4E  |*.v.D..". .ORTIN|
00000970: 47 20 2E 2E 2E 22 00 86  11 4E 02 81 49 B2 31 A4  |G ..."...N..I.1.|
00000980: 45 3A 4B B2 31 36 00 B3  11 58 02 81 4A B2 31 A4  |E:K.16...X..J.1.|
00000990: 31 36 3A 8B CA 28 4E 46  24 28 49 29 2C 4A 2C 31  |16:..(NF$(I),J,1|
000009A0: 29 B2 C7 28 31 36 30 29  A7 4B B2 4A AB 31 3A 4A  |)..(160).K.J.1:J|
000009B0: B2 31 36 00 CD 11 62 02  82 4A 3A 53 4B 24 28 49  |.16...b..J:SK$(I|
000009C0: 29 B2 C8 28 4E 46 24 28  49 29 2C 4B 29 00 EF 11  |)..(NF$(I),K)...|
000009D0: 6C 02 8B 46 54 24 B2 22  59 22 A7 53 4B 24 28 49  |l..FT$."Y".SK$(I|
000009E0: 29 B2 46 54 24 28 49 29  AA 53 4B 24 28 49 29 00  |).FT$(I).SK$(I).|
000009F0: FA 11 76 02 82 49 3A 4D  B2 45 00 10 12 80 02 4D  |..v..I:M.E.....M|
00000A00: B2 B5 28 4D AD 32 29 3A  8B 4D B2 30 89 37 33 30  |..(M.2):.M.0.730|
00000A10: 00 1E 12 8A 02 4B B2 45  AB 4D 3A 4A B2 30 00 2B  |.....K.E.M:J.0.+|
00000A20: 12 94 02 8B 4A B1 4B 89  36 34 30 00 33 12 9E 02  |....J.K.640.3...|
00000A30: 49 B2 4A 00 40 12 A8 02  8B 49 B3 30 89 37 30 30  |I.J.@....I.0.700|
00000A40: 00 59 12 B2 02 8B 53 4B  24 28 49 AA 4D 29 B3 53  |.Y....SK$(I.M).S|
00000A50: 4B 24 28 49 29 89 37 31  30 00 68 12 BC 02 4A B2  |K$(I).710.h...J.|
00000A60: 4A AA 31 3A 89 36 36 30  00 92 12 C6 02 41 24 B2  |J.1:.660.....A$.|
00000A70: 46 54 24 28 49 29 3A 46  54 24 28 49 29 B2 46 54  |FT$(I):FT$(I).FT|
00000A80: 24 28 49 AA 4D 29 3A 46  54 24 28 49 AA 4D 29 B2  |$(I.M):FT$(I.M).|
00000A90: 41 24 00 BC 12 C7 02 41  24 B2 54 53 24 28 49 29  |A$.....A$.TS$(I)|
00000AA0: 3A 54 53 24 28 49 29 B2  54 53 24 28 49 AA 4D 29  |:TS$(I).TS$(I.M)|
00000AB0: 3A 54 53 24 28 49 AA 4D  29 B2 41 24 00 E6 12 C8  |:TS$(I.M).A$....|
00000AC0: 02 41 24 B2 4E 46 24 28  49 29 3A 4E 46 24 28 49  |.A$.NF$(I):NF$(I|
00000AD0: 29 B2 4E 46 24 28 49 AA  4D 29 3A 4E 46 24 28 49  |).NF$(I.M):NF$(I|
00000AE0: AA 4D 29 B2 41 24 00 10  13 C9 02 41 24 B2 46 45  |.M).A$.....A$.FE|
00000AF0: 24 28 49 29 3A 46 45 24  28 49 29 B2 46 45 24 28  |$(I):FE$(I).FE$(|
00000B00: 49 AA 4D 29 3A 46 45 24  28 49 AA 4D 29 B2 41 24  |I.M):FE$(I.M).A$|
00000B10: 00 3A 13 CA 02 41 24 B2  53 4B 24 28 49 29 3A 53  |.:...A$.SK$(I):S|
00000B20: 4B 24 28 49 29 B2 53 4B  24 28 49 AA 4D 29 3A 53  |K$(I).SK$(I.M):S|
00000B30: 4B 24 28 49 AA 4D 29 B2  41 24 00 49 13 D0 02 49  |K$(I.M).A$.I...I|
00000B40: B2 49 AB 4D 3A 89 36 38  30 00 6F 13 DA 02 8F 20  |.I.M:.680.o.... |
00000B50: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000B60: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 00  |***************.|
00000B70: 95 13 DB 02 8F 20 2A 20  57 52 49 54 45 20 44 49  |..... * WRITE DI|
00000B80: 52 45 43 54 4F 52 59 20  45 4E 54 52 49 45 53 20  |RECTORY ENTRIES |
00000B90: 20 20 20 20 2A 00 BB 13  DC 02 8F 20 2A 2A 2A 2A  |    *...... ****|
00000BA0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000BB0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 00 DB 13 E4 02  |***********.....|
00000BC0: 99 22 91 20 D7 52 49 54  49 4E 47 20 2E 2E 2E 20  |.". .RITING ... |
00000BD0: 3A 20 20 22 49 44 24 22  20 20 22 00 0D 14 EE 02  |:  "ID$"  ".....|
00000BE0: 5A 24 B2 C7 28 30 29 AA  C7 28 32 35 35 29 3A 8F  |Z$..(0)..(255):.|
00000BF0: 20 54 4F 20 54 45 52 4D  49 4E 41 54 45 20 44 49  | TO TERMINATE DI|
00000C00: 52 45 43 54 4F 52 59 20  43 48 41 49 4E 00 28 14  |RECTORY CHAIN.(.|
00000C10: F8 02 53 B2 31 3A 4E B2  31 3A 8F 20 53 54 41 52  |..S.1:N.1:. STAR|
00000C20: 54 20 53 45 43 54 4F 52  00 5D 14 02 03 98 43 43  |T SECTOR.]....CC|
00000C30: 2C 22 55 31 3A 22 3B 43  32 3B 44 3B 54 3B 53 3A  |,"U1:";C2;D;T;S:|
00000C40: 8D 31 30 30 30 3A 8F 20  52 45 41 44 20 44 49 52  |.1000:. READ DIR|
00000C50: 45 43 54 4F 52 59 20 53  45 43 54 4F 52 00 74 14  |ECTORY SECTOR.t.|
00000C60: 0C 03 42 50 B2 32 3A 8F  20 46 49 52 53 54 20 45  |..BP.2:. FIRST E|
00000C70: 4E 54 52 59 00 98 14 16  03 8B 4E B1 45 89 38 39  |NTRY......N.E.89|
00000C80: 30 3A 8F 20 4E 4F 20 4D  4F 52 45 20 4C 49 56 45  |0:. NO MORE LIVE|
00000C90: 20 45 4E 54 52 49 45 53  00 B7 14 20 03 8B 42 50  | ENTRIES... ..BP|
00000CA0: B3 32 35 36 89 38 34 30  3A 8F 20 4E 4F 54 20 46  |.256.840:. NOT F|
00000CB0: 55 4C 4C 20 59 45 54 00  ED 14 34 03 98 43 43 2C  |ULL YET...4..CC,|
00000CC0: 22 55 32 3A 22 3B 43 32  3B 44 3B 54 3B 53 3A 8D  |"U2:";C2;D;T;S:.|
00000CD0: 31 30 30 30 3A 8F 20 57  52 49 54 45 20 44 49 52  |1000:. WRITE DIR|
00000CE0: 45 43 54 4F 52 59 20 53  45 43 54 4F 52 00 0C 15  |ECTORY SECTOR...|
00000CF0: 3E 03 53 B2 53 25 28 53  29 3A 89 37 37 30 3A 8F  |>.S.S%(S):.770:.|
00000D00: 20 4E 45 58 54 20 53 45  43 54 4F 52 00 3D 15 48  | NEXT SECTOR.=.H|
00000D10: 03 98 43 43 2C 22 42 2D  50 3A 22 3B 43 32 3B 42  |..CC,"B-P:";C2;B|
00000D20: 50 3A 8F 20 53 45 54 20  50 4F 49 4E 54 45 52 20  |P:. SET POINTER |
00000D30: 54 4F 20 4E 45 58 54 20  45 4E 54 52 59 00 66 15  |TO NEXT ENTRY.f.|
00000D40: 52 03 99 2C 22 20 20 20  20 22 4E 46 24 28 4E 29  |R..,"    "NF$(N)|
00000D50: 22 20 3A 20 22 54 24 28  C6 28 46 54 24 28 4E 29  |" : "T$(.(FT$(N)|
00000D60: 29 AB 31 32 38 29 00 9D  15 5C 03 98 43 32 2C 46  |).128)...\..C2,F|
00000D70: 54 24 28 4E 29 3B 54 53  24 28 4E 29 3B 4E 46 24  |T$(N);TS$(N);NF$|
00000D80: 28 4E 29 3B 46 45 24 28  4E 29 3B 3A 8F 20 44 49  |(N);FE$(N);:. DI|
00000D90: 52 45 43 54 4F 52 59 20  45 4E 54 52 59 00 B5 15  |RECTORY ENTRY...|
00000DA0: 66 03 42 50 B2 42 50 AA  33 32 3A 4E B2 4E AA 31  |f.BP.BP.32:N.N.1|
00000DB0: 3A 89 37 39 30 00 D3 15  7A 03 8B 42 50 B1 32 35  |:.790...z..BP.25|
00000DC0: 35 89 39 33 30 3A 8F 20  46 55 4C 4C 20 53 45 43  |5.930:. FULL SEC|
00000DD0: 54 4F 52 00 E8 15 84 03  98 43 43 2C 22 42 2D 50  |TOR......CC,"B-P|
00000DE0: 3A 22 3B 43 32 3B 42 50  00 03 16 8E 03 98 43 32  |:";C2;BP......C2|
00000DF0: 2C 5A 30 24 3B 3A 8F 20  42 4C 41 4E 4B 20 45 4E  |,Z0$;:. BLANK EN|
00000E00: 54 52 59 00 15 16 98 03  42 50 B2 42 50 AA 33 32  |TRY.....BP.BP.32|
00000E10: 3A 89 38 39 30 00 2F 16  A2 03 42 50 B2 30 3A 98  |:.890./...BP.0:.|
00000E20: 43 43 2C 22 42 2D 50 3A  22 3B 43 32 3B 42 50 00  |CC,"B-P:";C2;BP.|
00000E30: 54 16 AC 03 98 43 32 2C  5A 24 3B 3A 8F 20 45 4E  |T....C2,Z$;:. EN|
00000E40: 44 20 4F 46 20 44 49 52  45 43 54 4F 52 59 20 43  |D OF DIRECTORY C|
00000E50: 48 41 49 4E 00 8A 16 B6  03 98 43 43 2C 22 55 32  |HAIN......CC,"U2|
00000E60: 3A 22 3B 43 32 3B 44 3B  54 3B 53 3A 8D 31 30 30  |:";C2;D;T;S:.100|
00000E70: 30 3A 8F 20 57 52 49 54  45 20 44 49 52 45 43 54  |0:. WRITE DIRECT|
00000E80: 4F 52 59 20 53 45 43 54  4F 52 00 B6 16 C0 03 5A  |ORY SECTOR.....Z|
00000E90: 24 B2 C8 28 5A 30 24 2C  32 29 3A 8F 20 42 4C 41  |$..(Z0$,2):. BLA|
00000EA0: 4E 4B 53 20 46 4F 52 20  46 55 52 54 48 45 52 20  |NKS FOR FURTHER |
00000EB0: 43 48 41 49 4E 53 00 D8  16 CA 03 53 B2 53 25 28  |CHAINS.....S.S%(|
00000EC0: 53 29 3A 8B 53 B2 32 35  35 89 39 39 39 3A 8F 20  |S):.S.255.999:. |
00000ED0: 46 49 4E 49 53 48 45 44  00 0E 17 D4 03 98 43 43  |FINISHED......CC|
00000EE0: 2C 22 55 31 3A 22 3B 43  32 3B 44 3B 54 3B 53 3A  |,"U1:";C2;D;T;S:|
00000EF0: 8D 31 30 30 30 3A 8F 20  45 4D 50 54 59 20 44 49  |.1000:. EMPTY DI|
00000F00: 52 45 43 54 4F 52 59 20  53 45 43 54 4F 52 00 32  |RECTORY SECTOR.2|
00000F10: 17 DE 03 42 50 B2 32 3A  89 39 30 30 3A 8F 20 54  |...BP.2:.900:. T|
00000F20: 4F 20 43 4C 45 41 52 20  4F 55 54 20 53 45 43 54  |O CLEAR OUT SECT|
00000F30: 4F 52 00 5A 17 E7 03 A0  43 32 3A A0 43 43 3A 99  |OR.Z....C2:.CC:.|
00000F40: 22 11 20 12 20 D0 D2 CF  C7 D2 C1 CD 20 C3 CF CD  |". . ....... ...|
00000F50: D0 CC C5 D4 C5 C4 20 22  3A 80 00 7F 17 E8 03 8F  |...... ":.......|
00000F60: 20 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  | ***************|
00000F70: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 00  |***************.|
00000F80: A4 17 E9 03 8F 20 2A 20  49 4E 50 55 54 20 45 52  |..... * INPUT ER|
00000F90: 52 4F 52 20 43 48 41 4E  4E 45 4C 20 53 54 41 54  |ROR CHANNEL STAT|
00000FA0: 55 53 20 2A 00 C9 17 EA  03 8F 20 2A 2A 2A 2A 2A  |US *...... *****|
00000FB0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000FC0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 00 E6 17 F2 03 84 43  |*********......C|
00000FD0: 43 2C 45 4E 2C 45 4D 24  2C 45 54 2C 45 53 3A 8B  |C,EN,EM$,ET,ES:.|
00000FE0: 45 4E B2 30 A7 8E 00 0C  18 FC 03 99 22 93 20 C4  |EN.0........". .|
00000FF0: C9 D3 CB 20 C5 D2 D2 CF  D2 20 22 45 4E 3B 45 4D  |... ..... "EN;EM|
00001000: 24 3B 45 54 3B 45 53 3A  89 39 39 39 00 31 18 06  |$;ET;ES:.999.1..|
00001010: 04 8F 20 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |.. *************|
00001020: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00001030: 2A 00 56 18 07 04 8F 20  2A 20 47 45 54 20 4E 20  |*.V.... * GET N |
00001040: 43 48 41 52 41 43 54 45  52 53 20 20 20 20 20 20  |CHARACTERS      |
00001050: 20 20 20 20 20 2A 00 7B  18 08 04 8F 20 2A 20 46  |     *.{.... * F|
00001060: 52 4F 4D 20 42 55 46 46  45 52 20 20 20 20 20 20  |ROM BUFFER      |
00001070: 20 20 20 20 20 20 20 20  20 20 2A 00 A0 18 09 04  |          *.....|
00001080: 8F 20 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |. **************|
00001090: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000010A0: 00 AA 18 10 04 5A 24 B2  22 22 00 BB 18 1A 04 81  |.....Z$.""......|
000010B0: 49 B2 31 A4 4E 3A 8D 31  31 30 30 00 CC 18 24 04  |I.1.N:.1100...$.|
000010C0: 5A 24 B2 5A 24 AA 41 24  3A 82 3A 8E 00 F1 18 4C  |Z$.Z$.A$:.:....L|
000010D0: 04 8F 20 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |.. *************|
000010E0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000010F0: 2A 00 16 19 4D 04 8F 20  2A 20 49 4E 50 55 54 20  |*...M.. * INPUT |
00001100: 46 52 4F 4D 20 42 55 46  46 45 52 20 20 20 20 20  |FROM BUFFER     |
00001110: 20 20 20 20 20 2A 00 3B  19 4E 04 8F 20 2A 2A 2A  |     *.;.N.. ***|
00001120: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00001130: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 00 56 19 56 04  |***********.V.V.|
00001140: A1 23 43 32 2C 41 24 3A  8B 41 24 B2 22 22 A7 41  |.#C2,A$:.A$."".A|
00001150: 24 B2 C7 28 30 29 00 6C  19 60 04 41 B2 C6 28 41  |$..(0).l.`.A..(A|
00001160: 24 29 3A 42 50 B2 42 50  AA 31 3A 8E 00 91 19 6A  |$):BP.BP.1:....j|
00001170: 04 8F 20 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |.. *************|
00001180: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00001190: 2A 00 B6 19 6B 04 8F 20  2A 20 47 45 54 20 4F 4B  |*...k.. * GET OK|
000011A0: 20 54 4F 20 43 4F 4E 54  49 4E 55 45 20 20 20 20  | TO CONTINUE    |
000011B0: 20 20 20 20 20 2A 00 DB  19 6C 04 8F 20 2A 2A 2A  |     *...l.. ***|
000011C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000011D0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 00 FA 19 74 04  |***********...t.|
000011E0: 99 22 11 20 CF CB 20 54  4F 20 43 4F 4E 54 49 4E  |.". .. TO CONTIN|
000011F0: 55 45 20 3F 20 5B 59 2F  4E 5D 00 0E 1A 7E 04 A1  |UE ? [Y/N]...~..|
00001200: 5A 24 3A 8B 5A 24 B2 22  4E 22 89 39 39 39 00 20  |Z$:.Z$."N".999. |
00001210: 1A 88 04 8B 5A 24 B3 B1  22 59 22 89 31 31 35 30  |....Z$.."Y".1150|
00001220: 00 43 1A 92 04 99 22 91  20 20 20 20 20 20 20 20  |.C....".        |
00001230: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 91  |               .|
00001240: 22 3A 8E 00 68 1A B8 0B  8F 20 2A 2A 2A 2A 2A 2A  |":..h.... ******|
00001250: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00001260: 2A 2A 2A 2A 2A 2A 2A 2A  00 8D 1A C2 0B 8F 20 2A  |********...... *|
00001270: 20 50 52 4F 47 52 41 4D  20 44 45 53 43 52 49 50  | PROGRAM DESCRIP|
00001280: 54 49 4F 4E 20 20 20 20  20 20 20 20 2A 00 B2 1A  |TION        *...|
00001290: CC 0B 8F 20 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |... ************|
000012A0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000012B0: 2A 2A 00 CC 1A D0 0B 99  22 20 20 C0 C0 C0 C0 C0  |**......"  .....|
000012C0: C0 C0 C0 C0 C0 C0 C0 C0  C0 C0 C0 22 00 E7 1A D1  |..........."....|
000012D0: 0B 99 22 11 20 20 31 35  34 31 20 44 52 49 56 45  |..".  1541 DRIVE|
000012E0: 20 4F 4E 4C 59 2E 22 00  02 1B D3 0B 99 22 11 20  | ONLY."......". |
000012F0: 20 36 34 20 53 45 52 49  45 53 20 20 4F 4E 4C 59  | 64 SERIES  ONLY|
00001300: 2E 22 00 1C 1B D4 0B 99  22 20 20 C0 C0 C0 C0 C0  |."......"  .....|
00001310: C0 C0 C0 C0 C0 C0 C0 C0  C0 C0 C0 22 00 4C 1B D6  |...........".L..|
00001320: 0B 99 22 11 20 20 D4 48  49 53 20 50 52 4F 47 52  |..".  .HIS PROGR|
00001330: 41 4D 20 52 45 57 52 49  54 45 53 20 41 20 44 49  |AM REWRITES A DI|
00001340: 53 4B 20 44 49 52 45 43  54 4F 52 59 00 7B 1B E0  |SK DIRECTORY.{..|
00001350: 0B 99 22 20 20 49 4E 54  4F 20 41 4C 50 48 41 42  |.."  INTO ALPHAB|
00001360: 45 54 49 43 41 4C 20 4F  52 44 45 52 2E 20 D4 48  |ETICAL ORDER. .H|
00001370: 45 20 4F 50 54 49 4F 4E  20 49 53 00 A6 1B EA 0B  |E OPTION IS.....|
00001380: 99 22 20 20 41 4C 53 4F  20 47 49 56 45 4E 20 54  |."  ALSO GIVEN T|
00001390: 4F 20 47 52 4F 55 50 20  42 59 20 46 49 4C 45 20  |O GROUP BY FILE |
000013A0: 54 59 50 45 53 2E 00 D7  1B F4 0B 99 22 11 20 20  |TYPES.......".  |
000013B0: C0 C0 C0 C0 C0 C0 C0 C0  C0 C0 C0 C0 C0 C0 C0 C0  |................|
000013C0: C0 C0 C0 C0 C0 C0 C0 C0  C0 C0 C0 C0 C0 C0 C0 C0  |................|
000013D0: C0 C0 C0 C0 C0 C0 90 00  DD 1B 1C 0C 8E 00 00 00  |................|
000013E0: 4C 57 FF 00 B8 13 A5                              |LW.....         |
..'.D.. *******************************.
M.E.. * DIRECTORY TIDY FOR 1541     *.S.
F.. * W.OWEN MURCOTT 1983         *...G.
. * READ / SORT / REWRITE       *...H.. 
* COMMODORE COMPUTING AUG 83  *...I.. **
*****************************...N..53280
,15:.53281,15:.".".!.X..G(14)".  TIDY DI
RECTORY ".+.}..3000.N...."..  LOAD DISK 
IN DRIVE.":."..  PRESS . SPACE . WHEN RE
ADY.."......Z$:.Z$.." ".140...... ******
*************************.O.... * OPEN F
ILES & BUFFER CHANNEL *...... * SET UP I
NITIAL PARAMETERS   *...... ************
*******************.C. .DN.8:D.0:C2.2:CC
.15:T.18:S.0:BP.144.`....CC,DN,CC:.CC,"I
0":.1000.X....C2,DN,C2,"#":.1000...I.. *
 GET DISK ID : TRACK 18 SEC0 *...R..CC,"
U1:";C2;D;T;S:.1000.P....CC,"B-P:";C2;BP
.....ID$."":N.20:.1030:ID$.Z$......"... 
DISK LOADED :  "ID$.1.,.. **************
*****************.W.-.. * SET UP DIRECTO
RY ARRAYS     *.}.... * AND SECTOR TRAIL
            *.../.. * ALLOW FOR 19 SECTO
RS        *.I.0.. * ALLOW FOR 144 ENTRIE
S       *...1.. ************************
*******...6..S%(19):. NEXT DIRECTORY SEC
TOR.-.7..FT$(144):. FILE TYPE.U.8..TS$(1
44):. T&S OF FIRST DATA BLOCK.O.9..NF$(1
44):. FILE NAME...:..FE$(144):. FILE ENT
RIES...;..SK$(144):. SORT KEYS...@..T$(4
)...A.T$(1)."SEQ":T$(2)."PRG":T$(3)."USR
":T$(4)."REL"...J..I.1.30:Z0$.Z0$.G(0):.
:. FOR BLANK ENTRIES.:.^.. *************
******************.`._.. * READ DIRECTOR
Y ENTRIES      *...`.. *****************
**************...H.S.1:. START SECTOR...
R.E.1:. START FILE ENTRY.Z.|..CC,"U1:";C
2;D;T;S:.1000:BP.1......CC,"B-P:";C2;BP:
.1100:S%(S).A:. GET NEXT SECTOR.?....CC,
"B-P:";C2;BP:.1100:FT.A:. GET FILE TYPE.
M.... FT.0.FT.128.BP.BP.31:.500:. BLANK 
ENTRY...... FT.128 ..". FILE ERROR  NOT 
CLOSED":.999.....FT$(E).A$.L...N.2:.1040
:TS$(E).Z$:. GET T&S...B.N.16:.1040:NF$(
E).Z$:. GET NAME...L.N.11:.1040:FE$(E).Z
$:. GET FILE ENTRIES.B.V.. *************
******************.H.W.. * PRINT DIRECTO
RY ENTRY       *...X.. *****************
**************......,"    "NF$(E)" : "T$
(FT.128).B...BP.BP.2:E.E.1......BP.256.4
00:. FOR NEXT ENTRY......S%(S)..255.S.S%
(S):.380:. NEXT SECTOR.-....1130:. GET O
K TO CONTINUE.U...E.E.1:.E.0.730:. DIREC
TORY IS EMPTY.W...." GROUP BY FILE TYPE 
? (Y/N)...&..Z$:FT$.Z$:.Z$."Y".570...0..
Z$.."N".550.I.:.. **********************
*********...;.. * SET SORT KEYS         
      *...<.. * SORT DIRECTORY ENTRIES  
    *.;.=.. * USES SHELL SORT           
  *.A.>.. ******************************
*.V.D..". SORTING ..."...N..I.1.E:K.16..
.X..J.1.16:.J(NF$(I),J,1).G(160).K.J.1:J
.16.M.B..J:SK$(I).H(NF$(I),K)...L..FT$."
Y".SK$(I).FT$(I).SK$(I)...V..I:M.E.....M
..(M.2):.M.0.730.....K.E.M:J.0.+....J.K.
640.3...I.J.@....I.0.700.Y....SK$(I.M).S
K$(I).710.H...J.J.1:.660...F.A$.FT$(I):F
T$(I).FT$(I.M):FT$(I.M).A$...G.A$.TS$(I)
:TS$(I).TS$(I.M):TS$(I.M).A$...H.A$.NF$(
I):NF$(I).NF$(I.M):NF$(I.M).A$...I.A$.FE
$(I):FE$(I).FE$(I.M):FE$(I.M).A$.:.J.A$.
SK$(I):SK$(I).SK$(I.M):SK$(I.M).A$.I.P.I
.I.M:.680.O.Z.. ************************
*******...... * WRITE DIRECTORY ENTRIES 
    *...... ****************************
***......". WRITING ... :  "ID$"  ".....
Z$.G(0).G(255):. TO TERMINATE DIRECTORY 
CHAIN.(...S.1:N.1:. START SECTOR.]....CC
,"U1:";C2;D;T;S:.1000:. READ DIRECTORY S
ECTOR.T...BP.2:. FIRST ENTRY......N.E.89
0:. NO MORE LIVE ENTRIES... ..BP.256.840
:. NOT FULL YET...4..CC,"U2:";C2;D;T;S:.
1000:. WRITE DIRECTORY SECTOR...>.S.S%(S
):.770:. NEXT SECTOR.=.H..CC,"B-P:";C2;B
P:. SET POINTER TO NEXT ENTRY.F.R..,"   
 "NF$(N)" : "T$(F(FT$(N)).128)...\..C2,F
T$(N);TS$(N);NF$(N);FE$(N);:. DIRECTORY 
ENTRY...F.BP.BP.32:N.N.1:.790.S.Z..BP.25
5.930:. FULL SECTOR......CC,"B-P:";C2;BP
......C2,Z0$;:. BLANK ENTRY.....BP.BP.32
:.890./...BP.0:.CC,"B-P:";C2;BP.T....C2,
Z$;:. END OF DIRECTORY CHAIN......CC,"U2
:";C2;D;T;S:.1000:. WRITE DIRECTORY SECT
OR.....Z$.H(Z0$,2):. BLANKS FOR FURTHER 
CHAINS.X.J.S.S%(S):.S.255.999:. FINISHED
...T..CC,"U1:";C2;D;T;S:.1000:. EMPTY DI
RECTORY SECTOR.2...BP.2:.900:. TO CLEAR 
OUT SECTOR.Z... C2: CC:.". . PROGRAM COM
PLETED ":...... ***********************
*******...... * INPUT ERROR CHANNEL STAT
US *.I.... *****************************
*......CC,EN,EM$,ET,ES:.EN.0........". D
ISK ERROR "EN;EM$;ET;ES:.999.1.... *****
*************************.V.... * GET N 
CHARACTERS           *.{.... * FROM BUFF
ER                *. .... **************
****************.....Z$.""......I.1.N:.1
100.L.$.Z$.Z$.A$:.:....L.. *************
*****************...M.. * INPUT FROM BUF
FER          *.;.N.. *******************
***********.V.V..#C2,A$:.A$."".A$.G(0).L
.`.A.F(A$):BP.BP.1:....J.. *************
*****************...K.. * GET OK TO CONT
INUE         *...L.. *******************
***********...T..". OK TO CONTINUE ? [Y/
N]...~..Z$:.Z$."N".999. ....Z$.."Y".1150
.C....".                       .":..H...
. ******************************...B.. *
 PROGRAM DESCRIPTION        *...L.. ****
**************************.L.P.."  .....
..........."...Q..".  1541 DRIVE ONLY.".
..S..".  64 SERIES  ONLY."...T.."  .....
...........".L.V..".  THIS PROGRAM REWRI
TES A DISK DIRECTORY.{...."  INTO ALPHAB
ETICAL ORDER. THE OPTION IS......"  ALSO
 GIVEN TO GROUP BY FILE TYPES..W....".  
........................................
........LW.....
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL