Dosius wrote: > In Dapple 0.8 I implemented a special 1.4 MB disk format. It was > ProDOS order with MS-DOS sector ordering (H0C0, H1C0, H0C1, H1C1, ..., > H1C78, H0C79, H1C79). > > Does anyone know what the real 1.4 MB ProDOS format is, from (say) a > Mac or a Mark ][ or some other system with a Superdrive that supports > the ProDOS FS? For a 3.5" disk (any capacity), the ProDOS block ordering (actually the ordering imposed by the drive controller, of which ProDOS is unaware) directly corresponds to the sector ordering within each track. The mapping of physical sectors to logical block numbers goes through all the sectors on the track (cylinder 0, head 0), then changes heads, then increments tracks e.g. for an 800K disk, the block to sector mapping is as follows: Block Cyl Hd Sec 0 0 0 0 1 0 0 1 2 0 0 2 ... 11 0 0 11 (12 sectors per track for cylinders 0-15) 12 0 1 0 ... 23 0 1 11 24 1 0 0 ... 1599 79 1 7 (8 sectors per track for cylinders 64-79) The same general ordering applies to MFM formatted disks in a SuperDrive (720K or 1440K), except that the physical sectors are numbered starting at 1 in each track, and there are the same number of sectors in every track. One other point that may be relevant: the Apple II generally formats 3.5" disk using physically interleaved sectors. The original default interleave for an 800K disk was 4:1, and this is the recommended value for a UniDisk 3.5 on all operating systems and for an Apple 3.5 Drive on ProDOS-8 or ProDOS-16. For an Apple 3.5 Drive on GS/OS, the recommended interleave is 2:1. Using 4:1 will slow down write performance but won't have a huge effect on reading, because GS/OS reads the entire track into memory in one pass (the same applies to the SuperDrive card, and to the built-in SmartPort firmware on the ROM 3 IIgs). If you use a 2:1 interleave disk in a UniDisk 3.5, it performs really badly, because an extra revolution is generally needed to get the next sector, due to the overhead of transferring the data to/from the computer (as well as the GCR nibble/denibble operation). The ROM 1 IIgs is borderline with 2:1 disks in an Apple 3.5 Drive - in some cases it is OK, but is usually better to stick to 4:1. The system software generally supports formatting either 4:1 or 2:1 on an 800K disk. For a 1.44 MB disk in a SuperDrive, the default interleave is 2:1, but 1:1 is also an option. Writing to a 1:1 disk is very slow, because the computer cannot supply data fast enough. Reading is no problem, due to the track caching done by the card's firmware. Preformatted MS-DOS disks use a 1:1 interleave, and I found that I got much better average performance with my PC Transporter if I reformatted the disk on the Apple II using the default 2:1 interleave. All of this interleaving is done at the physical sector level - there is no "software interleaving" (logical renumbering), as done by DOS 3.3 for example. A 2:1 interleave 800K disk would have the sectors physically ordered something like this on track 0: 0, 6, 1, 7, 2, 8, 3, 9, 4, 10, 5, 11 This doesn't change the block to sector mapping - physical sector 1 is still logical block 1. A PC would typically be unaware of the interleave, because it handled automatically by the drive controller. -- David Empson dempson@actrix.gen.nz