[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ProDOS misc. questions



In article <33001E0E.10D6@dove.mtx.net.au>, ntt <ntt@dove.mtx.net.au> wrote:

> Michael Guitton wrote:
> > 
> > Henrik 'Ratte' Gudat wrote:
> > >
> > > In <31FDD36C.B59@cardshow.com> Michael writes:
> > >
> > > > o Why the root directory of a ProDOS volume is limited to 51 files?
> 
> > Why this root structure has to fit entirely into Block 2?
> 
> It is actually blocks 2, 3, 4 & 5. Block 6 holds the first block of the
BAM (block 
> availability map). In order to overcome this limitation (which is only a
limitation 
> because of the way the disk is set up at initialization) all you need to
do is block edit 
> block 5 to point to a free block (this is bytes $02 & $03 of block 5).
You then get 13 
> extra directory entries. This can be done ad nauseum to give you as many
"root" entries 
> as you like. _BUT_... You _must_ deallocate the blocks you then use, you
_must_ point to 
> them correctly (bytes $00 & $01 point to the previous block, bytes $02 &
$03 point to the 
> next directory block), you _must_ zero the rest of the new directory
blocks (to avoid 
> ProDOS errors) and you _must not_ make mistakes. (not a recommended
procedure for boot 
> disks!)
>
Oops, you're right. Shame on me! There are in fact 4 blocks for the root
structure with room for 13 files each, which make a total of 52 files
minus 1 for the volume name.

Since ProDOS could accept more than 51 files in root directory, why Apple
Engineers decided that root structure should only take 4 blocks (speed,
transfer rate, etc.)?

> Limitations also apply to subdirectories, and they can be fixed in the
same way...
>  
Hum, I don't think there is such limitation. You can store more than 51
files in a subdirectory on a ProDOS volume.

> [deletia]

-- 
Michael
webmaster@cardshow.com