EmbDev.net

Forum: µC & Digital Electronics Emulating a Floppy disk controller?


von Josef (Guest)


Rate this post
useful
not useful
'morning,

I've found numerous articles discussing how to emulate a floppy disk 
DRIVE, here and elsewehere and there even seem to exist commerial 
solutions.

Yesterday I revived an old SB180FX (HD64180 CPU with a CP/M compatible 
OS) and had been contemplating beforehand what to do if the floppy 
drives or the disks failed. I was wondering if it were possible to 
replace the floppy controller (FDC9266) by a microcontroller that 
emulated the FDC (register read/write, DMA) and stored the data blocks 
on an SD card or such (anyone know if SD cards with 1.44MB capacity 
exist? ;-) ).
I would read/write the raw data on my PC, so the controller would just 
map the floppy's blocks 1:1 to the SD card or even map all four drives 
to separate sections on the SD card.

The bus speed to the processor (running a ~12MHz) would need some 
attention, maybe adding hardware support in the form of a flipflop which 
generates WAIT cycles (within reasonable limits) by being set 
automatically by any access and which is then reset by the 
microcontroller. This only affects the reading/writing of commands and 
status, after that the microcontroller would work internally 
transferring data via (emulated) DMA.

I'd prefer an ATmega of sorts.

Question: has anyone done this before?

Josef

von KarlKurtz (Guest)


Rate this post
useful
not useful

von beric (Guest)


Rate this post
useful
not useful

von Josef M. (Company: Privat) (jmoellers)


Rate this post
useful
not useful
Using a floppy drive emulator is all nice and well if you have a 
floppy controller to attach your drive emulator to. Unfortunately the 
FDC9266 I had has turned out not to bee 12V-resistant :-(
I have ordered a few 9268s from Mr. Chinaman but the order is still 
pending.
In the event of non-delivery, I will have to dig up something that is 
able to replace the 9266. So, unless someone has a 9266 (or 9268) that 
(s)he wants to part from, I'll try to emulate the controller.

Josef

PS Getting the data off the original disk(s) is another problem: 1024 
Bps, 5spt ... Maybe I can convince the Linux floppy.c driver to read the 
disk(s).

von Josef M. (Company: Privat) (jmoellers)


Rate this post
useful
not useful
Josef M. wrote:

> PS Getting the data off the original disk(s) is another problem: 1024
> Bps, 5spt ... Maybe I can convince the Linux floppy.c driver to read the
> disk(s).

This drive might be a solution: "TEAC FD-235HS 1111 SCSI Drive": 
According to the datasheet it can, indeed, read 1024 Bps.

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.