Even with PCI IRQs disabled (using legacy IRQs 14/15 as seems to be the case for that chipset), booting 2000 and ReactOS (now testing with ReactOS due to logging support through the serial port) still fails when the kernel starts?
Is there something going on with the BARs themselves that I'm unaware of?
Currently the BARs are plainly ignored (any value can be set and (with some bits cleared) read back by the OS detecting BAR size), but are they supposed to be used in some cases? If so, when are the values to be used?
The BIOS never seems to set the values to 0x0001, so that won't trigger legacy I/O ports to be used?
Their values is always E800/E400/E000/D800/D400 (in order from BAR0-5). So definitely not legacy IDE required to boot?
But the OS requires the I/O ports to be at those registers when the kernel starts running (in other words, it's in PCI mode and not in legacy mode anymore).