sqpat
Veteran Member
The most advanced (fastest?) tier of ISA VGA cards (Cirrus CL-GD5434, S3 928, ATI Mach64) all have 386 instructions in their BIOS and do not run on a 286, which is unfortunate. All prior cirrus cards worked fine on a 286 so I assumed that was the best bet to investigate a 286 compatible bios hack.
The BIOS didn't actually need a lot of work. There was a half dozen spots or so where 32 bit registers were used to attempt to interact with the pci bus. It was easy to just patch these with returning the carry flag or jumping past (the default behavior when the card is not found on the PCI bus). Perhaps the same BIOS was used for the PCI version of the card.
Then there was one spot where dword string instructions were used for scanning and testing video memory at startup. This was patched pretty lazily, but the end result worked. I tested on 86box and then on my card on real hardware and both worked, and the performance on real hardware shows a 3-4% performance bump on heavy vga benchmarks in general compared to a CL-GD5429 which is another very fast card.
Some other people have said the card does not work for them, so I am kind of curious about collecting some data points and seeing if I can produce a working version for everyone.
I think the CL-GD5434 has some pretty advanced 2d acceleration/windowing features. I also know some people have been creating and modifying windows drivers relatively recently. I'm not so familiar with that realm but am in general kind of curious as to how many hardware drivers out there might work for this card. I might enjoy contributing to windows drivers for the card.
The BIOS can be found here
The BIOS didn't actually need a lot of work. There was a half dozen spots or so where 32 bit registers were used to attempt to interact with the pci bus. It was easy to just patch these with returning the carry flag or jumping past (the default behavior when the card is not found on the PCI bus). Perhaps the same BIOS was used for the PCI version of the card.
Then there was one spot where dword string instructions were used for scanning and testing video memory at startup. This was patched pretty lazily, but the end result worked. I tested on 86box and then on my card on real hardware and both worked, and the performance on real hardware shows a 3-4% performance bump on heavy vga benchmarks in general compared to a CL-GD5429 which is another very fast card.
Some other people have said the card does not work for them, so I am kind of curious about collecting some data points and seeing if I can produce a working version for everyone.
I think the CL-GD5434 has some pretty advanced 2d acceleration/windowing features. I also know some people have been creating and modifying windows drivers relatively recently. I'm not so familiar with that realm but am in general kind of curious as to how many hardware drivers out there might work for this card. I might enjoy contributing to windows drivers for the card.
The BIOS can be found here