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

DIR READ.C

FILE INFORMATION

FILENAME(S): DIR READ.C

FILE TYPE(S): PRG

FILE SIZE: 1.9K

FIRST SEEN: 2025-11-30 01:08:03

APPEARS ON: 3 disk(s)

FILE HASH

80710d2e79f302f1ef2d4067080a6035c6b7c8656c563f4fb81a8a1b1fa91e9d

FOUND ON DISKS (3 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
FREESOFT DISK NR DIR READ.C PRG Treasure Chest - Wolfgang Rauprich 14 1 DOWNLOAD FILE
D IVERSE DIR READ.C PRG Treasure Chest - Wolfgang Rauprich 14 1 DOWNLOAD FILE
TPUG MAY 84 C DIR READ.C PRG DuncanTwain 14 1 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

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

00000000: 01 08 1D 08 64 00 8F 3A  20 43 36 34 20 44 49 52  |....d..: C64 DIR|
00000010: 45 43 54 4F 52 59 20 52  45 41 44 45 52 00 39 08  |ECTORY READER.9.|
00000020: 6E 00 8F 3A 20 55 53 45  53 20 46 41 53 54 47 45  |n..: USES FASTGE|
00000030: 54 20 52 4F 55 54 49 4E  45 00 4B 08 78 00 8F 3A  |T ROUTINE.K.x..:|
00000040: 20 50 41 55 4C 20 42 4C  41 49 52 00 65 08 82 00  | PAUL BLAIR.e...|
00000050: 8F 3A 20 43 41 4E 42 45  52 52 41 20 41 55 53 54  |.: CANBERRA AUST|
00000060: 52 41 4C 49 41 00 77 08  8C 00 8F 3A 20 34 20 4A  |RALIA.w....: 4 J|
00000070: 41 4E 20 31 39 38 34 00  7D 08 96 00 3A 00 AE 08  |AN 1984.}...:...|
00000080: A0 00 8B C2 28 35 32 38  35 30 29 B2 31 36 39 A7  |....(52850).169.|
00000090: 31 38 30 20 20 20 20 20  20 3A 8F 3A 43 48 45 43  |180      :.:CHEC|
000000A0: 4B 20 4D 2F 43 20 49 4E  20 50 4C 41 43 45 00 EA  |K M/C IN PLACE..|
000000B0: 08 AA 00 93 22 44 49 52  20 52 45 41 44 20 4D 4C  |...."DIR READ ML|
000000C0: 2E 44 22 2C 38 2C 31 3A  8A 20 20 20 20 20 20 20  |.D",8,1:.       |
000000D0: 20 20 20 20 20 20 3A 8F  3A 4F 54 48 45 52 57 49  |      :.:OTHERWI|
000000E0: 53 45 20 4C 4F 41 44 20  49 54 00 1D 09 B4 00 4B  |SE LOAD IT.....K|
000000F0: B2 35 33 32 38 30 3A 97  4B 2C 31 3A 97 4B AA 31  |.53280:.K,1:.K.1|
00000100: 2C 31 3A 86 46 24 28 31  34 34 29 3A 4E 4C 24 B2  |,1:.F$(144):NL$.|
00000110: C7 28 30 29 3A 51 24 B2  C7 28 33 34 29 00 63 09  |.(0):Q$..(34).c.|
00000120: BE 00 42 4C 24 B2 22 20  20 20 20 20 20 20 20 20  |..BL$."         |
00000130: 20 20 20 20 20 20 20 20  22 3A 99 22 1C 93 20 20  |        ":."..  |
00000140: 44 49 52 45 43 54 4F 52  59 20 53 55 42 52 4F 55  |DIRECTORY SUBROU|
00000150: 54 49 4E 45 2E 2E 20 50  41 55 4C 20 42 4C 41 49  |TINE.. PAUL BLAI|
00000160: 52 11 22 00 92 09 C8 00  9F 31 35 2C 38 2C 31 35  |R."......15,8,15|
00000170: 3A 98 31 35 2C 22 49 30  22 20 20 20 20 20 20 20  |:.15,"I0"       |
00000180: 3A 8F 3A 53 45 54 20 55  50 20 45 52 52 4F 52 20  |:.:SET UP ERROR |
00000190: 43 48 00 C2 09 D2 00 9F  31 2C 38 2C 30 2C 22 24  |CH......1,8,0,"$|
000001A0: 30 22 3A 97 35 32 38 31  37 2C 31 20 20 20 20 20  |0":.52817,1     |
000001B0: 3A 8F 3A 55 53 49 4E 47  20 43 48 41 4E 4E 45 4C  |:.:USING CHANNEL|
000001C0: 20 31 00 EE 09 DC 00 97  35 32 38 31 36 2C 33 32  | 1......52816,32|
000001D0: 3A 9E 35 32 38 35 30 20  20 20 20 20 20 20 20 20  |:.52850         |
000001E0: 20 3A 8F 3A 47 45 54 20  48 45 41 44 45 52 00 1B  | :.:GET HEADER..|
000001F0: 0A E6 00 4D 44 24 B2 CA  28 49 50 24 2C 35 29 3A  |...MD$..(IP$,5):|
00000200: 99 4D 44 24 22 12 20 20  20 97 22 20 20 3A 8F 3A  |.MD$".   ."  :.:|
00000210: 44 49 53 4B 20 48 45 41  44 45 52 00 43 0A F0 00  |DISK HEADER.C...|
00000220: 56 5A 24 B2 CA 28 4D 44  24 2C 32 33 2C 32 29 3A  |VZ$..(MD$,23,2):|
00000230: 4D 44 24 B2 56 5A 24 AA  CA 28 4D 44 24 2C 35 2C  |MD$.VZ$..(MD$,5,|
00000240: 31 36 29 00 82 0A FA 00  9E 35 32 38 35 30 3A 41  |16)......52850:A|
00000250: 51 24 B2 49 50 24 20 20  20 20 20 20 20 20 20 20  |Q$.IP$          |
00000260: 20 20 20 20 20 20 3A 8F  3A 49 4E 50 55 54 20 49  |      :.:INPUT I|
00000270: 53 20 49 4E 20 49 50 24  20 45 41 43 48 20 54 49  |S IN IP$ EACH TI|
00000280: 4D 45 00 B5 0A 04 01 8B  53 54 A7 34 30 30 3A 20  |ME......ST.400: |
00000290: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000002A0: 20 3A 8F 3A 43 48 45 43  4B 20 46 49 4C 45 20 53  | :.:CHECK FILE S|
000002B0: 54 41 54 55 53 00 E2 0A  0E 01 41 51 24 B2 C8 28  |TATUS.....AQ$..(|
000002C0: 41 51 24 2C C3 28 41 51  24 29 AB 31 29 20 20 20  |AQ$,.(AQ$).1)   |
000002D0: 20 20 20 20 20 3A 8F 3A  54 52 49 4D 20 49 54 20  |     :.:TRIM IT |
000002E0: 55 50 00 11 0B 18 01 42  4C B2 C6 28 CA 28 41 51  |UP.....BL..(.(AQ|
000002F0: 24 2C 33 2C 31 29 AA 4E  4C 24 29 AA C6 28 CA 28  |$,3,1).NL$)..(.(|
00000300: 41 51 24 2C 34 2C 31 29  AA 4E 4C 24 29 AC 32 35  |AQ$,4,1).NL$).25|
00000310: 36 00 43 0B 22 01 42 4B  24 B2 C9 28 22 20 20 20  |6.C.".BK$..("   |
00000320: 22 AA C4 28 42 4C 29 2C  33 29 20 20 20 20 20 3A  |"..(BL),3)     :|
00000330: 8F 3A 42 4C 4F 43 4B 53  2F 44 49 52 2E 20 45 4E  |.:BLOCKS/DIR. EN|
00000340: 54 52 59 00 73 0B 2C 01  46 24 B2 CA 28 41 51 24  |TRY.s.,.F$..(AQ$|
00000350: 2C 31 31 AB C3 28 C4 28  42 4C 29 29 2C 31 37 29  |,11..(.(BL)),17)|
00000360: 20 3A 8F 3A 48 55 4E 54  20 54 48 45 20 51 55 4F  | :.:HUNT THE QUO|
00000370: 54 45 53 00 98 0B 36 01  81 49 B2 31 37 A4 31 A9  |TES...6..I.17.1.|
00000380: AB 31 3A 8B CA 28 46 24  2C 49 2C 31 29 B2 51 24  |.1:..(F$,I,1).Q$|
00000390: A7 4A B2 49 3A 49 B2 30  00 9E 0B 40 01 82 00 BB  |.J.I:I.0...@....|
000003A0: 0B 4A 01 8B A8 49 A7 A0  31 35 3A 80 20 20 20 20  |.J...I..15:.    |
000003B0: 20 20 20 3A 8F 3A 45 52  52 4F 52 00 E6 0B 54 01  |   :.:ERROR...T.|
000003C0: 8B C9 28 41 51 24 2C 31  29 B2 22 20 22 A7 41 51  |..(AQ$,1)." ".AQ|
000003D0: 24 B2 C8 28 41 51 24 2C  C3 28 41 51 24 29 AB 31  |$..(AQ$,.(AQ$).1|
000003E0: 29 3A 89 33 34 30 00 1A  0C 5E 01 46 24 B2 C8 28  |):.340...^.F$..(|
000003F0: 46 24 2C 4A AB 31 29 3A  50 54 24 B2 22 22 20 20  |F$,J.1):PT$.""  |
00000400: 20 20 20 20 20 20 20 20  3A 8F 3A 51 55 4F 54 45  |        :.:QUOTE|
00000410: 4C 45 53 53 20 54 49 54  4C 45 00 41 0C 68 01 81  |LESS TITLE.A.h..|
00000420: 54 B2 33 A4 31 A9 AB 31  3A 50 54 24 B2 50 54 24  |T.3.1..1:PT$.PT$|
00000430: AA C7 28 C6 28 C9 28 41  51 24 2C 54 29 29 29 3A  |..(.(.(AQ$,T))):|
00000440: 82 00 82 0C 72 01 51 B2  51 AA 31 3A 46 24 28 51  |....r.Q.Q.1:F$(Q|
00000450: 29 B2 56 5A 24 AA 50 54  24 AA 42 4B 24 AA 46 24  |).VZ$.PT$.BK$.F$|
00000460: 20 20 20 20 20 20 20 3A  8F 3A 54 4F 20 4D 41 4B  |       :.:TO MAK|
00000470: 45 20 43 4F 4D 50 52 45  53 53 45 44 20 41 52 52  |E COMPRESSED ARR|
00000480: 41 59 00 BA 0C 7C 01 99  42 4B 24 22 20 22 C8 28  |AY...|..BK$" ".(|
00000490: 46 24 AA 42 4C 24 2C 31  37 29 50 54 24 22 20 22  |F$.BL$,17)PT$" "|
000004A0: 56 5A 24 3A 8F 3A 53 48  4F 57 20 44 49 52 45 43  |VZ$:.:SHOW DIREC|
000004B0: 54 4F 52 59 20 45 4E 54  52 59 00 E8 0C 86 01 89  |TORY ENTRY......|
000004C0: 32 35 30 3A 20 20 20 20  20 20 20 20 20 20 20 20  |250:            |
000004D0: 20 20 20 20 20 20 20 20  20 20 20 20 3A 8F 3A 4D  |            :.:M|
000004E0: 4F 52 45 54 4F 20 44 4F  00 22 0D 90 01 42 46 24  |ORETO DO."...BF$|
000004F0: B2 C9 28 22 20 20 20 22  AA C4 28 C6 28 CA 28 41  |..("   "..(.(.(A|
00000500: 51 24 2C 33 29 AA 4E 4C  24 29 AA C6 28 CA 28 41  |Q$,3).NL$)..(.(A|
00000510: 51 24 2C 34 29 AA 4E 4C  24 29 AC 32 35 36 29 2C  |Q$,4).NL$).256),|
00000520: 34 29 00 42 0D 9A 01 A0  31 3A A0 31 35 3A 99 22  |4).B....1:.15:."|
00000530: 11 46 52 45 45 20 42 4C  4F 43 4B 53 20 3D 22 42  |.FREE BLOCKS ="B|
00000540: 46 24 00 68 0D A4 01 99  22 11 12 1C 20 50 52 45  |F$.h...."... PRE|
00000550: 53 53 20 41 4E 59 20 4B  45 59 20 54 4F 20 43 4F  |SS ANY KEY TO CO|
00000560: 4E 54 49 4E 55 45 20 22  00 7B 0D AE 01 A1 59 24  |NTINUE ".{....Y$|
00000570: 3A 8B 59 24 B2 22 22 A7  34 33 30 00 A9 0D B8 01  |:.Y$."".430.....|
00000580: 99 22 11 11 1F 20 20 54  48 45 20 50 52 4F 47 52  |."...  THE PROGR|
00000590: 41 4D 20 4D 41 4B 45 53  20 55 50 20 41 20 43 4F  |AM MAKES UP A CO|
000005A0: 4D 50 52 45 53 53 45 44  22 00 D0 0D C2 01 99 22  |MPRESSED"......"|
000005B0: 20 20 4C 49 53 54 20 54  48 41 54 20 4C 4F 4F 4B  |  LIST THAT LOOK|
000005C0: 53 20 4C 49 4B 45 20 54  48 49 53 3A 2D 11 95 22  |S LIKE THIS:-.."|
000005D0: 00 E1 0D CC 01 81 44 4C  B2 31 A4 32 30 30 30 3A  |......DL.1.2000:|
000005E0: 82 00 F5 0D D6 01 81 4B  B2 31 A4 51 3A 99 46 24  |.......K.1.Q:.F$|
000005F0: 28 4B 29 3A 82 00 1A 0E  E0 01 99 22 91 12 22 46  |(K):.......".."F|
00000600: 24 28 4B AB 31 29 22 92  1E 5F 45 4E 54 52 59 20  |$(K.1)".._ENTRY |
00000610: 4C 45 4E 47 54 48 95 22  3A 99 00 47 0E EA 01 99  |LENGTH.":..G....|
00000620: 22 5E 20 5E 20 20 20 20  5E 5E 22 3A 99 22 DD 20  |"^ ^    ^^":.". |
00000630: DD 20 20 20 20 DD AD 20  1E 50 52 4F 47 52 41 4D  |.    .. .PROGRAM|
00000640: 20 4E 41 4D 45 95 22 00  66 0E F4 01 99 22 DD 20  | NAME.".f....". |
00000650: DD 20 20 20 20 AD C0 20  1E 42 4C 4F 43 4B 53 20  |.    .. .BLOCKS |
00000660: 55 53 45 44 95 22 00 83  0E FE 01 99 22 DD 20 AD  |USED."......". .|
00000670: C0 C0 C0 C0 C0 C0 20 1E  46 49 4C 45 20 54 59 50  |...... .FILE TYP|
00000680: 45 95 22 00 9D 0E 08 02  99 22 AD C0 C0 C0 C0 C0  |E."......"......|
00000690: C0 C0 C0 20 1E 44 49 53  4B 20 49 44 22 00 CC 0E  |... .DISK ID"...|
000006A0: 12 02 99 3A 99 22 90 20  20 54 48 49 53 20 53 45  |...:.".  THIS SE|
000006B0: 47 4D 45 4E 54 20 43 4F  55 4C 44 20 42 45 20 55  |GMENT COULD BE U|
000006C0: 53 45 44 20 46 4F 52 20  41 4E 59 22 00 F5 0E 1C  |SED FOR ANY"....|
000006D0: 02 99 22 20 20 50 52 4F  47 52 41 4D 20 54 48 41  |.."  PROGRAM THA|
000006E0: 54 20 52 45 51 55 49 52  45 53 20 41 43 43 45 53  |T REQUIRES ACCES|
000006F0: 53 20 54 4F 22 00 21 0F  26 02 99 22 20 20 44 45  |S TO".!.&.."  DE|
00000700: 54 41 49 4C 53 20 43 4F  4E 54 41 49 4E 45 44 20  |TAILS CONTAINED |
00000710: 49 4E 20 54 48 45 20 44  49 52 45 43 54 4F 52 59  |IN THE DIRECTORY|
00000720: 22 00 4F 0F 30 02 99 3A  99 22 20 20 4C 45 41 56  |".O.0..:."  LEAV|
00000730: 45 20 4F 55 54 20 54 48  45 20 50 41 52 54 53 20  |E OUT THE PARTS |
00000740: 59 4F 55 20 44 4F 4E 27  54 20 57 41 4E 54 22 00  |YOU DON'T WANT".|
00000750: 78 0F 3A 02 99 22 20 20  20 2D 20 49 54 20 57 49  |x.:.."   - IT WI|
00000760: 4C 4C 20 53 50 45 45 44  20 55 50 20 54 48 45 20  |LL SPEED UP THE |
00000770: 50 52 4F 47 52 41 4D 22  00 99 0F 44 02 99 3A 99  |PROGRAM"...D..:.|
00000780: 22 20 20 20 20 20 20 20  20 20 20 20 20 20 48 41  |"             HA|
00000790: 56 45 20 46 55 4E 21 21  22 00 00 00              |VE FUN!!"...    |
....D..: C64 DIRECTORY READER.9.N..: USE
S FASTGET ROUTINE.K.X..: PAUL BLAIR.E...
.: CANBERRA AUSTRALIA.W....: 4 JAN 1984.
}...:... ..B(52850).169.180      :.:CHEC
K M/C IN PLACE......"DIR READ ML.D",8,1:
.             :.:OTHERWISE LOAD IT.....K
.53280:.K,1:.K.1,1:.F$(144):NL$.G(0):Q$.
G(34).C...BL$."                 ":."..  
DIRECTORY SUBROUTINE.. PAUL BLAIR."...H.
.15,8,15:.15,"I0"       :.:SET UP ERROR 
CH.B.R..1,8,0,"$0":.52817,1     :.:USING
 CHANNEL 1......52816,32:.52850         
 :.:GET HEADER.....MD$.J(IP$,5):.MD$".  
 ."  :.:DISK HEADER.C...VZ$.J(MD$,23,2):
MD$.VZ$.J(MD$,5,16)......52850:AQ$.IP$  
              :.:INPUT IS IN IP$ EACH TI
ME......ST.400:                  :.:CHEC
K FILE STATUS.....AQ$.H(AQ$,C(AQ$).1)   
     :.:TRIM IT UP.....BL.F(J(AQ$,3,1).N
L$).F(J(AQ$,4,1).NL$).256.C.".BK$.I("   
".D(BL),3)     :.:BLOCKS/DIR. ENTRY.S.,.
F$.J(AQ$,11.C(D(BL)),17) :.:HUNT THE QUO
TES...6..I.17.1..1:.J(F$,I,1).Q$.J.I:I.0
...@.....J...I. 15:.       :.:ERROR...T.
.I(AQ$,1)." ".AQ$.H(AQ$,C(AQ$).1):.340..
.^.F$.H(F$,J.1):PT$.""          :.:QUOTE
LESS TITLE.A.H..T.3.1..1:PT$.PT$.G(F(I(A
Q$,T))):....R.Q.Q.1:F$(Q).VZ$.PT$.BK$.F$
       :.:TO MAKE COMPRESSED ARRAY...|..
BK$" "H(F$.BL$,17)PT$" "VZ$:.:SHOW DIREC
TORY ENTRY......250:                    
    :.:MORETO DO."...BF$.I("   ".D(F(J(A
Q$,3).NL$).F(J(AQ$,4).NL$).256),4).B... 
1: 15:.".FREE BLOCKS ="BF$.H...."... PRE
SS ANY KEY TO CONTINUE ".{....Y$:.Y$."".
430......"...  THE PROGRAM MAKES UP A CO
MPRESSED".P.B.."  LIST THAT LOOKS LIKE T
HIS:-.."...L..DL.1.2000:....V..K.1.Q:.F$
(K):.......".."F$(K.1)".._ENTRY LENGTH."
:..G...."^ ^    ^^":.". .    .. .PROGRAM
 NAME.".F....". .    .. .BLOCKS USED."..
....". ....... .FILE TYPE."......"......
... .DISK ID".L....:.".  THIS SEGMENT CO
ULD BE USED FOR ANY"......"  PROGRAM THA
T REQUIRES ACCESS TO".!.&.."  DETAILS CO
NTAINED IN THE DIRECTORY".O.0..:."  LEAV
E OUT THE PARTS YOU DON'T WANT".X.:.."  
 - IT WILL SPEED UP THE PROGRAM"...D..:.
"             HAVE FUN!!"...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL