skiselev / 8088_bios

BIOS for Intel 8088 based computers
GNU General Public License v3.0
513 stars 61 forks source link

Crash on floppy write with PC-DOS 3.30 #25

Closed TzOk83 closed 1 year ago

TzOk83 commented 1 year ago

I've encountered a 100% repetitive crash when trying to write anything to floppy disk when booting to PC-DOS 3.30. When I try to format a floppy, it goes to 100% and crashes at the end (creating file system). The computer I use is Micro 8088. When I use GLaBIOS with your Multi-Floppy BIOS Extension v2.6, it works normally. Also, under PC-DOS 5.00 it works fine with your BIOS, as well as with any other BIOS.

skiselev commented 1 year ago

Thank you for this bug report. I'll try to find time to reproduce it on my end

skiselev commented 1 year ago

I booted my Micro 8088 system with PC-DOS 3.30 and formatted a floppy disk without any problems. I am also able to create files on the diskette. That's all using the floppy support built in the 8088 BIOS

Just to verify, are you seeing this issue with Micro 8088 running 8088 BIOS only, or you also have Multi-Floppy BIOS extension?

PC-DOS-3 30-Disk_Write

TzOk83 commented 1 year ago

I was running a V20 CPU on Micro 8088 board with your BIOS, and no other extensions. I was using PC-DOS 3.30 and a GOTEK floppy emulator. I will try to repeat the experiment, but I've already tried 2 different DOS 3.30 boot disk images.

skiselev commented 1 year ago

I've used this one. I am using a real 3.5" / 1.44MB floppy drive. The DOS image itself is 720KB diskette, while all diskettes I have are 1.44 MB. So I covered the "density detect" hole on the disk with a piece of tape, and reformatted it as 720 KB. I created the bootable disk from the image on the Micro 8088 itself using the rawrite utility.

With that being said, I haven't tested GOTEK floppy emulator with my BIOS. I have one, I just need to set it up...

TzOk83 commented 1 year ago

Ok, so I will test with real floppy, as now, I have XT-CF, so I will be able to make a disk. One of the Images I've tried is the same you have linked.

dos-330


I've done some additional tests, and I have the same outcome with real floppy. Sometimes it freezes with motor on in floppy, sometimes it displays a "Divide overflow" error and returns to DOS, but is no longer able to read anything from floppy (but content on floppy is untouched, and after reboot it reads it again). Once I've got "file creation error" after copy con file.txt, and this was whe CPU was running at 4,77 MHz. dos-330

skiselev commented 1 year ago

I ported my Multi-floppy BIOS code back to 8088 BIOS. It fixes some re-read errors mentioned here https://github.com/skiselev/8088_bios/issues/17. Please give it a try.

TzOk83 commented 1 year ago

I may confirm, that problem with writing to floppy in PC-DOS 3.30 is now fixed.