First post, by superfury
I'm trying to get my floppy disk controller properly and accurately(except time-based events, like seek times) working. I'm creating a 1.44MB floppy disk, mount it in my emulator and try to get it fully working again.
My source code: https://bitbucket.org/superfury/x86emu/src/69 … ppy.c?at=master
For some reason the floppy errors out (using the Generic Super PC/Turbo XT BIOS with XT-IDE harddisk ROMs. The ATA/IDE device works accurately and without errors. When I try to do anything to the floppy (reading/writing it, using MS-DOS 5.0 dir, echo to file and type (also format fails with a message it's the wrong format for the disk, detecting it as 360KB without /f:1.44 parameter)).
Do I need some NEC µPD765 ROM for this to work with 1.44MB/2MB disk images?
When executing dir/type/copy etc. on the floppy, it errors out with a message that track 0 couldn't be found? My latest additions are the verification on data rates against the floppy disk(failing reads, writes and read ID commands if not matched to the floppy's specifications in it's geometry). Also proper ST3 emulation has been added according to specs on the u765 chip.
Anyone can see what's going wrong? Reads used to work previously(with writes giving corrupted file data).
Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io