Closed Vutshi closed 2 months ago
This error message is not coming from the BIOS. It is typically printed by the boot sector code, when it cannot read the disk or find DOS files (IO.SYS, and MSDOS.SYS) as the first two entries in the root directory of the boot device. For example, see this MS-DOS 5 boot sector analysis.
I see that your BIOS is configured with 1.44 MB floppies, while it appears that 4.00M disks are 360 KB disks. Potentially this can be the source of the issue (or not, but worth checking).
Also, I can't seem to find the DOS image at the link provided above. I found this: https://github.com/jeffpar/pcjs-diskettes/tree/master/pcx86/sys/dos/microsoft/4.0M, but it is in JSON format, and I don't know how to convert it to just a binary image. I would appreciate a link to the binary MS-DOS 4.00M images.
Here is the link to the DOS-4.0M image https://github.com/user-attachments/files/15754189/MSDOS400M-DISK1%2Bgame.img.zip
This error message is not coming from the BIOS. It is typically printed by the boot sector code, when it cannot read the disk or find DOS files (IO.SYS, and MSDOS.SYS) as the first two entries in the root directory of the boot device. For example, see this MS-DOS 5 boot sector analysis.
Hmm... With GLaBIOS and the original IBM BIOS I can boot this DOS image in MartyPC.
Hmm... With GLaBIOS and the original IBM BIOS I can boot this DOS image in MartyPC.
Potentially because neither GLaBIOS nor the original IBM BIOS support 1.44 MB drives. And their floppy disk subsystem is configured to support 360KB disks (160K/180K/320K... maybe 720K disks would work too).
It appears that you're using the XT image of the 8088 BIOS (and Book8088 image). Both are configured to use 1.44 MB diskettes by default. You can modify that. Change the DEFAULT_FLOPPIES setting here https://github.com/skiselev/8088_bios/blob/32f82ebde058d5f92dab9f1da4e5b1906e72c9df/src/config.inc#L120 to something like 11h and recompile the BIOS code.
Another question: How do you write (or emulate) the floppy image? Particularly for Book8088, did you write the provided 360 KB image to a 1.44 MB disk? That will not work properly... You can try writing it to a diskette formatted for 720 KB, that should work, since 720 KB disks have the same number of sectors as 360 KB disks - 9 sectors.
Caveats:
In case of the emulator (MartyPC) - it might or might not properly select and emulate the floppy disk type. Perhaps it should be told that the disk size is 720 KB... Generally 360 KB disk in a 1.44 MB drive is not a supported configuration, so that might confuse the emulator. Perhaps if you pad the 360 KB image to 720 KB size, the emulator will correctly configure the floppy as 720 KB one...
It appears that you're using the XT image of the 8088 BIOS (and Book8088 image). Both are configured to use 1.44 MB diskettes by default. You can modify that. Change the DEFAULT_FLOPPIES setting here
to something like 11h and recompile the BIOS code.
Thank you, that did the trick for MartyPC. I will take a closer look at my Book8088 later and return if I have questions.
It seems the BIOS does not recognize MS-DOS-4.0M as bootable. This affects the Book8088 and the MartyPC emulator:
The Multitasking DOS image can be found here. I have also attached it to this issue in MartyPC, where it revealed a bug in another BIOS.