Bryan Parkoff wrote: > > Bryan, it is not necessary for a disk to be addressed below the block > level, > > which for ProDOS is 512 bytes. Simply adding another high-order disk > > address byte will get you 256x32MB or 8GB addressable capacity. > > What do you mean 256x32MB? Is it like 256 sectors? It may be over > hundred thousand sectors. It will allow 1024 bytes per sector instead of > 512 bytes per sector or higher that will improve performance when it > accesses to read and write faster. If you change the block size, you will have to rewrite _all_ ProDOS-8 applications, because the open file interface to the ProDOS kernel only provides a 512 byte buffer for holding the current block being accessed. (The alternative would be to store the sector buffer elsewhere in memory, but there isn't any memory available in a 128K Apple II to do this, without breaking compatibility with existing applications in some other way.) You would also have to rewrite the firmware on all disk controller cards (including SCSI interface cards, etc.), as they also assume a block size of 512 bytes. There are quite a few cards available (e.g. Apple's SCSI cards) which support the SmartPort firmware interface. SmartPort is a well established standard which supports accessing block devices with 512 bytes per block and up to 24 bits for the block number (32 bits for a SCSI card running on a IIgs). A 24-bit block number will allow up to 8 GB of data to be addressed. (A 32-bit block number would be 2 TB.) It would probably be a good idea to limit the maximum file size to 2 GB or 4 GB, so that applications don't have to deal with numbers larger than 32 bits for keeping track of file positions, etc. The volume size could be larger, as that doesn't need to count bytes, only blocks. -- David Empson dempson@actrix.gen.nz "Joel" wrote: > I was thinking of a somewhat less ambitious approach to handling a 2GB drive > on my IIgs. > > Make 60 or so 32 Mb partitions. > > System 6.01 can handle over 32 partitions, (though after about 30, the > finder puts them all on top of each other on the desktop and you have to > manually separate them.) It is limited to 63 hard drive partitions in total over all drives on all SCSI cards, because the driver data structures have a 6 bit limit on the volume number for the driver. (You could also have 63 CD-ROM partitions, because that is a separate driver.) > My idea is PU - a SCSI Partition Utility. > This would let you rewrite the partition table to rearrange the order of the > partitions. > ProDOS 8 only allows you to see at most 14 partitions (fewer if you're using > any other disk devices). > PU would allow you to pick which ones and also to change which one is the > boot partition. > With that feature, I might also want to allow DOS3.3, CP/M and Pascal boot > partitions as well. > > This approach is probably a lot easier to implement and presents few > compatibility problems. > > Anybody have any thoughts on this idea? Sounds reasonable, assuming that nothing will complain about partitions being in a different physical order from their listings in the partition table. You would have to reboot in order to get the SCSI card and drivers to update their tables (it might be possible to do this without forcing a reboot, but it could be tricky). In the case of ProDOS-8 2.x with an Apple High-Speed SCSI card, an even simpler technique should be possible to allow use of more than 14 partitions. The ProDOS kernel sets up an internal table which maps from ProDOS unit numbers to SmartPort unit numbers. All you need to do is patch the table to access other partitions. (The High-Speed SCSI card is limited to 110 partitions, so no problem there.) The original Apple SCSI card only supports 7 partitions (much less RAM available on the card to hold the partition table) so this trick wouldn't work. It also wouldn't let you change the boot partition. -- David Empson dempson@actrix.gen.nz