This project is motivated by several ideas and notices:
- I crack Apple II programs (http://www.hackzapple.com/phpBB2/viewforum.php?f=13)
- The list of Apple II protections and disk formats is verrryyy long (my next Juiced.GS article)
- I have written other GS/OS File System Translators I cannot test :-(
- How it works
- Know its features
- List its limits
- Enhance it to provide new features
Dear Santa, I would like to...
- handle 13-sectors disks
- format 13-sectors disks
- format DOS 3.3 16-sectors disks (I know, it is the job of a FST...)
- create a 4*4 nibbles 10-sectors disk (why not?)
- be able to create disk images with Ninjaforce's Asimov or Eric Sheperd's ImageMaker
Nov. 19, 2008
I would like to thank all of you who answered to my
announcement on comp.sys.apple2. That is nice to know
that some people are still interested in software
projects. Huge stuff has been performed during the
previous days (nights mainly) and I have been able to
confirm the...
- AppleDisk5.25 driver limits:
- 342 6*2 encoded-nibbles per sector
- 16 sectors per track
- 35 tracks
- 256 or 512 bytes long per block
repeat
call DInfo to get device information
call Volume to get volume information
until DInfo returns no more devices
Volume is the GS/OS call which does the following::
repeat
call the Volume function of a FST
if that is the right FST, end process
if there has been an I/O error, END PROCESS
until there are no more FSTs
That process would be fine if the disk format was unique, but I would like to handle both 16 and 13-sectors disks. And the first-ever FST that is called is the ProDOS one and you want it to access a 13-sector disk, then you get an I/O error. The FST list is not browsed entirely. Bad news
Hopefully, there is good news: the AppleDisk5.25 driver now handles 1024-bytes per block and v0.1 of the CP/M FST is stable ;-)
Dec. 16, 2008
Long time, no see... I have been able to bypass the
16-sectors' limit of the AppleDisk5.25 driver. It can now
handle 13-sec disks as well. But that has been difficult
to upgrade the driver as the bla-blah written in mid-Nov
was correct. The objective was to find an error code that
would be interpreted by GS/OS as "please go to the next
FST" but another issue came: the block to track/13-sec
from the driver and the track/13-sec to block from the
FST translation routines which I believed were working
properly... were not counting properly. Instead of adding
or substracting 13 (the number of sectors per track), I
did the calculations with 12 (hum)... Do not ask me
why... Once I corrected that, whenever I mounted a DOS
3.2 disk, the Finder went into an infinite loop: there
was a bug with the free blocks calculation routine due to
the fact that there are now 13 sectors per track and not
16...
Hopefully, there is good news: the AppleDisk5.25 driver now handles 13-sec disks and v1.0 of the DOS 3.2 FST is stable ;-)
Jan. 11, 2009
Happy new year to all of you and your family, I am sure
the new year will bring us some new interesting Apple II
projects ;-)
The good and the bad news:
- The good news:
- The DOS 3.3 FST now supports the Format/Erase commands and that works well. We can now format DOS 3.3 disks directly from the Finder.
- The DOS 3.2 FST works pretty well, all previous bugs have been removed.
- The AppleDisk 5.25 driver now contains DOS 3.2 (or 13-sectors) Read/Write/Format routines. I have removed some limitations so that RDOS 3.2 disks can be read, that is one the next step: create the RDOS 3.2 FST.
- The bad news:
- I am unable to format a DOS 3.2 (or 13-sectors) disk with my code (I only format the first track ;-). And I cannot use my preferred emulator to format disks as well, Sweet16 does not allow me to format DOS 3.2/DOS 3.3 disks, it appears there are some limitations on the 5.25 driver code.
- Formatting 16-sectors disk needs a special focus as I am quite sure that it writes sectors with a 2:1 interleave only which is efficient but does not follow the different OS rules. I checked with a DOS 3.3 formatted disk and reading the disk is correct but I am sure there is something to do there...
- I did not work on the CP/M FST, maybe later, I am still waiting for a good soul to send a 800 KB CP/M disk to me, please...
Feb. 2nd, 2009
No news is good news! I am late because I was busy
working on the disassembly of the IIgs ROM. A job focused
on the toolsets included in the ROM of a ROM 01 machine.
That is another project I am working on and I will
introduce you to it once I am done with the AppleDisk5.25
driver update.
So, what's new, pussycat?
- The driver now reads and formats 13-sec disks!
- The driver is still unable to write 13-sec sectors, quite weird: the nibblize routine is correct but the data written is bad: timing issue maybe!
- The RDOS 3.2 FST is written but I think I will not make it public because RDOS 3.2 disks contain a lot of different header nibbles and I do not want to pollute my routines.
- I must finalize the 13-sec write routine before I go back to work on the CP/M FST.
Antoine, February 2009