[Coco] R+DOS/16 IDE support: I learned about the $052DDC offset the hard way.

Juan Castro jccyc1965 at gmail.com
Sat Apr 4 20:09:20 EDT 2015


I tried to use a compiled-from-sources 16 KB LBA HDB-DOS ROM with my
BASIC goodies in my MiniIDE, and got nothing. Then I remembered about
the FF70 port thing, changed it to FF50 -- nopw I got gibberish from
the disk instead of a lockup.

I backtracked EVERY change in the ROM, one by one. At some point I
even thought the recent TFSIDE patch was the culprit. After taking
everything out (and burning some 20 EPROMs in the process). After much
disappointment, I got to a difference of 3 bytes between my compiled
ROM and the one that worked.

Those bytes were 00 00 00 in my ROM, and 05 2D DC in the working ROM
that came with the MiniIDE. Yeah. Hard-coded sector offset.

Now I FINALLY have a 16K HDB-DOS derivative for the CoCo 1/2 with the
BASIC enhancements I had before (except DW support) working on an IDE
interface. It should work in a Glenside IDE or a SuperIDE if you can
coax the hardware into seeing a 16K Disk ROM. Here's it:

https://dl.dropboxusercontent.com/u/15643089/16k-hdblba.rom

And below is the source patch. On its face, it's a less invasive patch
-- it just creates 16k ROMs and leaves disk support as-is. I imagine
ROM 16k-xxxxxx.rom should work pretty much as well as the plain 8k
xxxxxx.rom, for every xxxxxx.

https://dl.dropboxusercontent.com/u/15643089/16k-ide-rom.patch

Next challenge is to reintroduce DW support into an IDE ROM as an
add-on. That will be tricky, but, I imagine, less than introducing IDE
support into a DW ROM.

Also, I didn't hack my MiniIDE; I used an MPI.

Juan Castro
Enviado do meu Olivetti Programma 101


More information about the Coco mailing list