bbc-fdc
bbc-fdc copied to clipboard
Add some common disk image formats to output types
The .SSD and .DSD files work fine in emulators except they don't support copy protected disks very well and also lots of potentially valuable information is not stored.
Some potential other disk image formats I could support are :
- .DSK (libdisk) disk image file format
- .DFI DiscFerret flux dump
- Kryoflux STREAM
- .IMD ImageDisk - Dave Dunfield's format to replace Teledisk
- .HFE HxC Floppy Emulator
- .SCP Supercard Pro
- .IPF (Interchangeable Preservation Format) Software Preservation Society
- .FSD Bill Carr's "Flexible Sector Dump" BBC Micro disc image (seems to only be single sided - due to lack of distinction between logical and physical heads)
- .TD0 Sydex Teledisk
- .FDI Formatted Disk Image
- .UEF Unified emulator format (0x02XX disc chunks don't support copy protection)
- .ADS / .ADM / .ADL / .ADF e.t.c ADFS disk images
Added basic .FSD output support
Added basic .DFI - "DiscFerrect flux dump" DFE2 output support
Hi @picosonic,
awesome project! I tried to accomplish sth. similar with the proprietary Kryoflux board (s. https://github.com/tkurbad/kryofluxer) to sample my large collection of Amiga floppies before they've become completely deteriorated...
However, your solution would be much more "native" to the RPi than mine.
To come to the question of image formats, I would be very interested in the following:
- .IPF
- .HFE (version 3, if possible)
- .ADF
On a side note: Can your board (i.e. the raw circuit board, w/o components) be bought somewhere?
Thanks in advance! Torsten
Hi @tkurbad,
Thanks for the message. My project involves a single PCB which essentially just converts the RPi GPIO from 3.3v to 5v and vice versa. The data is sampled via a fast SPI transfer.
In essence any 34-pin shugart compatible floppy drive should work with it. I've never tried Amiga floppies but I understand that they are standard MFM, 80 tracks, 11 sectors/track, 512 bytes/sector. So should be no problem to read.
In terms of output formats, I've tended to support the ones which allowed me to write the disks I have to a format which could be loaded in an emulator. But so long as the format isn't too complicated I can support serveral other output formats. I'd probably need either an original disk or a sample of the data from one at the flux level. I've been looking at the .WOZ and .A2R outputs from the AppleSauce device recently for Apple II disks.
The .ADF file I had listed was for ADFS format floppies, rather than amiga. But it sounds like it's just a sector dump of the entire disk. Which my code can do at present when using the .IMG output format. You'd just need to rename it to .ADF. Although this wouldn't work with many copy-protected discs with non-standard formatting.
You may find this page interesting .. http://amiga.robsmithdev.co.uk/history
I got a run of 10 of my PCBs made and have one unpopulated board left if you're interested in it.
Cheers
Jasper
Hi @picosonic,
The .ADF file I had listed was for ADFS format floppies, rather than amiga. But it sounds like it's just a sector dump of the entire disk. Which my code can do at present when using the .IMG output format. You'd just need to rename it to .ADF. Although this wouldn't work with many copy-protected discs with non-standard formatting.
Yes, to my understanding, an .adf is a raw sector dump. The copy-protection problem was the reason for asking about HFEv3 support, which preserves the physical structure much more closely.
In the end, I want to be able to use all my Amiga disks with the Gotek Floppy emulator I bought, which is equipped with @keirf's phantastic FlashFloppy firmware.
You may find this page interesting .. http://amiga.robsmithdev.co.uk/history
Looks very interesting indeed. However, I'm not THAT deep into the matter, yet. Nonetheless, I probably should be, especially because the possibilities of formatting / copy protecting Amiga disks seem virtually unlimited. The solution I'm using right now is struggling very hard to distinguish between intentionally "broken", i.e. copy protected, and really broken floppy disks. The fact that all of my floppies are at least 25 years old, doesn't make this any easier.
I got a run of 10 of my PCBs made and have one unpopulated board left if you're interested in it.
Yes, I definitely am! All the components are in my drawer. I even got some SN7406N left over from a previous project. Please name the amount of money I'd have to transfer to you so you'd be comfortably parting from the last board and sending it to Germany :-).
Best, Torsten
Added basic .TD0 output support
I would like to suggest some more disk image formats:
- D88: NEC PC-88 disk image
- DMK: Protected disk image (TRS-80 and MSX)
- XDF: Sharp X68000 disk image
Hi @sdsnatcher
Are you able to provide some sample .RFI files which have been captured from the disk formats you are interested in.
I can then take a look at the data and work out the transcoding process involved.
Thanks
Jasper
I still have to build the interface, so this might take a while. :)
I was given an Amiga disk to image, and have managed to extract data.
I've added basic .ADF output support for Amiga formatted disks.
@tkurbad - Something you may be interested in.
SCP would play nicely with most extant tool chains. IPF is probably a can of worms you don't want to get into! Keir Fraser's disk analyser can convert to that for amiga format floppies if necessary, as well as many other formats, and the HxC floppy emulator software does mop up the gaps quite effectively.
I have a lot of old Atari ST disks and I wonder if the BBC-FDC could capture AtariST format disks. It looks like the popular image formats are: .MSA , .ST and maybe: .DSK
I also have some TRS-80 disks (made on EACA Video Genie) which I haven't tried out yet, but I will.
I don't see why not. It captures raw flux data from the disk in the same way the FDC chip would get it.
The extraction of sectors to disk images shouldn't be too difficult. The AtariST low level format is documented in great detail here