davidgiven / fluxengine

PSOC5 floppy disk imaging interface
MIT License
362 stars 70 forks source link

add support for ensoniq EPS disk format (and EPS-16, SD-1 VFX-SD) #204

Open jbrandeb opened 3 years ago

jbrandeb commented 3 years ago

Hi! First, thank you for this project! I got started on this because I was no longer able to find any old PCs to run alternate software using existing solutions for reading/writing EPS disks.

I've successfully bought and built a working fluxengine setup, and read my first disk(s). I'm now trying to figure out the right steps to archive the disks for the ensoniq EPS sampler I have.

So, in asking you to support this disk format, I'm also trying to help as much as possible, which is why this is so long, it's kinda half bug/support request, and half "hey, what about this format?"

I got to save disk: ./fluxengine.exe read ibm --ibm-sector-id-base=0 -s :d=1:s=0-1:t=0-79 -o test.img --write-flux=osimage.flux

decode disk to image: ./fluxengine.exe read ibm --ibm-sector-id-base=0 -s osimage.flux:s=0-1:t=0-79 -o myosimage.img

but it doesn't seem like it is quite the right format, as the expected file should start with a fully sector of '6d b6'. There is also a cool 'test sector" which seems to have the full 0-9 A-Z a-z sequence in a correctly formed image, but there is some missing data in a similar block in my .flux file. I suspect I'm doing something wrong, but have dug pretty deeply into the web and your instruction pages, and still don't know what exactly.

My eventual goal here is to have the ability to create new versions of the original disks on fresh media, until the day that I can figure out how to get the stupid SCSI emulator working with my setup so I can eliminate the floppy. Ideally I'd be able to extract out files from my floppies and copy them into the (emulated) scsi drive even outside of the synth.

If you're interested in helping me read/write this format, I'm fully capable of building or trying any suggested fixes, and here is a link to the fully documented disk format: https://www.deepsonic.ch/deep/docs_manuals/ensoniq_floppy_diskette_formats.pdf

I've also attached my .flux file from a read of an OS boot disk, as well as a "blank floppy" image that I found online, there are also some further images of disks hosted here: http://zine.r-massive.com/ensoniq-asr-eps-archive/

jbrandeb commented 3 years ago

myosimage_img.zip Ensoniq EPS & EPS16 blank floppy (IMG & HFE).zip

davidgiven commented 3 years ago

Hello! Sorry about the delay...

The flux image looks like almost completely standard DSDD IBM scheme disks --- the only difference between them and 720kB PC disks is the start sector ID, which you've already discovered. There should be no problems reading or writing these.

However the flux file you sent me is horrifyingly corrupt, with only 26% good sectors. Does it work on the synth? Either it's bitrotted or something really odd is going on.