VOGONS


First post, by superfury

User metadata
Rank l33t++
Rank
l33t++

Anyone knows of some universal Compaq Deskpro 386 compatible BIOSes? The main issue with the plain Compaq BIOS I currently have is it's lack of 1.44MB Floppy disk support, making installing Linux from it pretty much impossible due to Linux detecting the floppy as being 720K instead, failing to boot due to it's 9sectors/track instead of 18/track.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 1 of 6, by digger

User metadata
Rank Oldbie
Rank
Oldbie

I hope you can find one that is both compatible and truly open source! 😀 Not only would that possibly help you out with your problem, it would also allow PCEm to be legally distributed with such a BIOS. The Compaq Deskpro 386 is one of the machines that PCEm can emulate, but it requires the (copyrighted and closed source) original BIOS to work. Right now, none of the implemented PCs in PCEm work out of the box, due to the ROMs not being included. And most people who need an emulator don't have access to the original hardware, and therefore no legal source from which to obtain the required ROMs.

Reply 2 of 6, by superfury

User metadata
Rank l33t++
Rank
l33t++

Well, I know of one possible one(the SeaBIOS BIOS), but am not sure if it'll work on a Compaq Deskpro 386 at all? Does it require extra I/O ports to be emulated to work properly(e.g. for BIOS ROM remapping)?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 3 of 6, by Stenzek

User metadata
Rank Newbie
Rank
Newbie

I'm using SeaBIOS in my emulator, but if I remember correctly it relies on the remapping support in the chipset to decompress itself to RAM.

Edit: IIRC the *legacy* Bochs BIOS doesn't rely on this, and is only 64K so it fits in the F000 segment.

Reply 4 of 6, by digger

User metadata
Rank Oldbie
Rank
Oldbie
Stenzek wrote:

I'm using SeaBIOS in my emulator, but if I remember correctly it relies on the remapping support in the chipset to decompress itself to RAM.

Ah, that probably explains why I couldn't get the SeaBIOS image to work with the emulated machine types in PCEm that I tried it with. There is also an image of SeaBIOS on top of Coreboot, which is meant for physical hardware, but I couldn't get that one to work in PCEm either.

Edit: IIRC the *legacy* Bochs BIOS doesn't rely on this, and is only 64K so it fits in the F000 segment.

Yeah, with that one, the Compaq Deskpro 386 emulator in PCEm would POST, but the floppy support is the one thing that didn't work with it. It would hang on emulated 386 systems with some kind of fatal Int 13h error. 🙁 So I assume the result would be the same on an actual Deskpro 386. See the topic in the PCEm forum for details: https://pcem-emulator.co.uk/phpBB3/viewtopic.php?t=330

Still, having a mostly working open source BIOS would at least be a reasonable starting point when trying to hack a solution.

Reply 6 of 6, by superfury

User metadata
Rank l33t++
Rank
l33t++

Just been thinking... The only actual issue with the Compaq Deskpro 386 BIOS is it's FDC support. Are there any FDC(Plain 82077AA) BIOS ROMs that suppirt 1.44/2.88MB floppy disks as well? I seem to remember that the Generic Super PC/Turbo XT BIOS had some in it's option ROMs bundled with it?

Edit: It's apparently some FDC-344 BIOS from 1990 Ably-tech corporation, according to it's contents? Could that combined with proper CMOS(1.44MB instead of 720KB) fix the FDC issue?

Edit: Mame sheds some more light on it:
https://github.com/mamedev/mame/blob/master/s … s/isa/mufdc.cpp

It looks(without looking at the controller code itself handling port I/O) like it uses a normal 82077AA-compatible interface at 170-177 with DMA 2 and IRQ 6?

Edit: It might require a bit of patching(translation) on the values in the r/o values of the port 3f0 2-bit values? It seems to use the ordering: 1.2,360,1.44,720 instead of 1.2,720K,2.88,1.44?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io