[Coco] [Color Computer] Re: From virtual disk to real disk

John E. Malmberg wb8tyw at qsl.net
Wed Nov 5 21:48:00 EST 2003


Neil Morrison wrote:
> FWIW, the trick under MSDOS is to alter a table of parameters kept in
> ram on the PC. This lets the PC read Coco sectors. The program deals
> with the result. Also, AnaDisk from Sybex can read most any
> reasonable format the hardware can handle.

That is exactly what I did.  There is a BIOS call to retrieve the 
address of the table, and another one to set a new address.

The recommended procedure is to copy the table, change it, and then 
temporarily change the address to the new table.

That works under DOS 2.x, but under 3.x the size of the table changed 
and the change was not documented, so in order to make it work you had 
to modify the real table values and restore them afterword.

Under Windows on a 386, you are not modifying the real BIOS table, but a 
process private copy of it.  In virual 86 mode all the calls are 
simulated, so if the program is calling BIOS calls, it should still work.

There is a documented BIOS write_track function for formatting a disk, 
but I never tried it.

A look at my now out of date MSDN documentation shows that they have 
removed the definitions of the BIOS call wrappers from the Microsoft C 
RTL documentation, but apparently they will still work from assembler, 
and that there are replacement routines to support FAT32.  An iteresting 
note is that they state the new FAT32 may not work for some functions 
and to fall back on the functions that I am having problems finding 
documentation for.


If you can get to the hardware, you should be able to do a raw track 
read, and then try to decipher the binary.  With a raw track read, you 
will probably get a bunch of packed bytes, but the data may skewed up to 
7 bits off, and you have to parse out all the sector overhead.

The Catweasel card was available in PCI format the last time I looked, 
and it has the capability to read / write almost any format of floppy.

-John
wh8tyw at qsl.net
Personal Opinion Only






More information about the Coco mailing list