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

Re: ProDOS misc. questions



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!)

Limitations also apply to subdirectories, and they can be fixed in the same way...
 
> > > o Would it be possible to overcome the 32MB partition size limit of > > ProDOS?  


> > Theoretically yes, practically no.

[...]

> > To overcome this limitation,you'd have to rewrite about everything.
> > Strangely enough, the SmartPort can deal with volumes as large as 8Gb because
> > the extended SmartPort protocol supports 32-bit block numbers.

[...]
 
> An Apple II expert could then hack a new 24-bit addressing version of
> ProDOS, couldn't he? Is there a need for this?

Yes, but breach of copyright might cause a few problems. The question of backward 
compatibility might raise its head... It requires a change of the boot loader (blocks 00 
& 01) on the partition as well as the code to drive larger partitions.  As to need...  No 
on the GS (use HFS - Apple's done the work for you), No on the //e (what on earth would 
you do with that much storage space?!?).

> > I hope the Mac will once get rid of this logical block business. With 64-bit
> > architecture, there's really no need for that.

Compatibility problems... (especially for the popular removable disks...)

You lose disk space by increasing the size of the BAM (only 4096 entries per block which 
represents 2048k). For a 4Gb drive (largest acceptable HFS partition at the moment) 
that's a BAM of 1Mb. (compared to 8k for logical blocks of 64k) Yes, you lose some space, 
but which is the lesser of the two evils? (depends on how many small files you have...)

cheers
ntt@dove