floppy_bios icon indicating copy to clipboard operation
floppy_bios copied to clipboard

BIOS does not function on newer architectures

Open dribgnikcom opened this issue 4 years ago • 11 comments

Tested motherboards:

Asus P2B-S QDI P6I440BX/B1S

Expected Behaviour: After executing the OpROM, the system should boot from an inserted MS-DOS 6.22 boot diskette.

Result: The system boots and loads the OpROM, the drive light comes on, but it does not proceed to boot.

Other relevant info:

  1. The card works fine without the option ROM enabled. In order for this to work, "onboard FDC controller" must be disabled in the BIOS but the drive should still remain configured in "Standard Bios Settings" (i.e. - drive should not be set to "none". )

  2. The card's ROM got corrupted on one (or both) of these motherboards and I had to re-program it externally... I don't know if this info helps you or not.

dribgnikcom avatar Aug 09 '21 17:08 dribgnikcom

Do you have any type of caching or shadow memory enabled for the address range where Floppy BIOS ROM is located?

skiselev avatar Jan 21 '22 00:01 skiselev

I can test this on an Asus TX98-XV Pentium MMX if you have a newer version. The Phoenix/Award BIOS only supports one floppy drive at a time (either 3.5" or 5.25"), but I have several of each available and would like to enable more than one if that's possible.

tervadh avatar Feb 13 '22 02:02 tervadh

There's! Get floppy_bios.bin from. This repo. The latest version is 2.6. It worked ok on a 486 board. It should work with the built-in controller (unless motherboard manufacturer did not route MOTOR ON and DRIVE SELECT signal for the second drive). You'll need some kind of way to add a "Boot ROM", e.g. using an Ethernet card EPROM socket, or XT-IDE with only the ROM part populated.

Let me know how it goes. Thanks for testing!

skiselev avatar Feb 13 '22 03:02 skiselev

Hi sir... The latest BIN is 2.6? Hex editor shows it as 2.5, is this the one from January 2022? Thanks, I will test it.

dribgnikcom avatar Feb 14 '22 22:02 dribgnikcom

My apologies, I forgot git push on my end. The binary should be v2.6 now

skiselev avatar Feb 14 '22 23:02 skiselev

Hi sir,

Please see my issue here that I encountered while testing version 2.6:

https://github.com/skiselev/floppy_bios/issues/5

Once I solve that I shall be able to test this on my Pentium 3 class hardware (both Award BIOS 4.51 and 6.00).

Thanks

dribgnikcom avatar Feb 15 '22 01:02 dribgnikcom

I can confirm, the BIOS works on my Asus P2B-DS (Celeron 433Mhz). I will follow up this ticket with some speed results:

https://github.com/skiselev/floppy_bios/issues/1

dribgnikcom avatar Feb 15 '22 14:02 dribgnikcom

You'll need some kind of way to add a "Boot ROM", e.g. using an Ethernet card EPROM socket, or XT-IDE with only the ROM part populated.

Though I've been tinkering with computers since before floppy drives, modding an Ethernet EPROM socket would be new to me. Any idea how to do that (or if I need to)? What's in there now is an Intel PRO/100+ Ethernet card with a Pulse H1012 module in a PCI slot, but I could put another card in too (the board has 3 PCI slots and 2 ISA slots).

tervadh avatar Feb 15 '22 16:02 tervadh

@tervadh that depends on the Ethernet card. Intel PRO/100+ might already have soldered down Flash ROM, and perhaps you can find a utility to flash it. Many other Ethernet cards accept 27C256/27C512 or similar EPROMs. They are 32/64 KB size. These cards might not support writing to Flash ROMs or EEPROMs (/WE signal might not be connected), and the pinout of Flash ROMs or EEPROMs is slightly different from 27C256 ROMs too. In this case you'd likely need to flash 27C256 using an EPROM programmer

skiselev avatar Feb 16 '22 05:02 skiselev

May be not the right place to ask , the question is for "older" hardware. Does Floppy BIOS still work on 8088 ? I have IBM XT clone computer which works with 2.2 bios , but with 2.5 just freeze after loading floppy BIOS and message "INT 13 ... " I see that there is already 2.6 will check and write again

help40 avatar Mar 10 '22 08:03 help40