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

Re: ProDOS misc. questions



In article <webmaster-0108961047500001@pm10-059.sct.fr>,
Michael Guitton <webmaster@cardshow.com> wrote:
>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

Right... the limitation is that there is a fixed size of the volume
directory, as opposed to subdirectories which are of variable length.


-- 
                                      --- Rev. SPQR (wbaguhn@nyx.net)