💾 Archived View for mirrors.apple2.org.za › archive › apple.cabi.net › Z80.CPM › A2.CPM.files › cpmd… captured on 2023-03-20 at 23:40:14.

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

The following contains information about how the file directory in CP/M is
organized.  There are some references to Apple dos and Apple CP/M, but the
information in general applies to all CP/M systems.

The Apple CP/M directory tracks are located on track 3, sectors 0 to 5.
Although sectors 6 to 7 are consider to be part of the directory, they are
unused.

There are 4 sectors per CP/M block.  In terms of blocks, the directory is
allocated in blocks 0 and 1.  There is no header in the start of each sector,
like Apple dos.

Each file entry has 32 bytes/file and 8 files/sector.
Here is the description of entry:

  offset     description

   +00       user number ($e5 if files is deleted).
     1 to 8  filename.
     9 to 12 filename extension. (note no '.' is stored).
    13       extent number, 16 blocks/extent which equals 1 directory entry.
    14 to 15 unsed.
    16       number of 128 byte records. (max. $80).
    17 to 31 block allocation.

The block allocation is like Apple dos track/sector list.

The initial extent number for each file is 0.  If the file is longer than 16
blocks, a new directory entry is made.  The new entry's extent number is
incremented by 1.