furan wrote on 2026-04-21, 18:17:
CGA will work fine on the PCI bus. But the memory and I/O ranges overlap between VGA and CGA. Potentially you could enable/disable memory & I/O decode on them programatically and juggle the vga cable between two cards. It sounds like what you want is a VGA that has better CGA support for whatever feature gpcga.exe is using.
Maybe not that big of a show stopper, with some forethought?
It stands to reason that the vga and cga/ega functions would be mutually exclusive.
As such, having the equivalent of bank switching, performed when 'any' technology specific register or IO port gets read or written to, should ensure the 'appropriate' bios and memory devices are in the system's memory space before service is performed, with some sanity checks in silicon to prevent silly hacker shit that could blow up monitors.
Eg, system defaults in vga mode, but can be effectively switched into a fully hardware compliant implementation mode by attempting a register read or write for that hardware type.
A simple commandline utility could thus be used to select the persona at runtime as needed.
Maybe supply a useful logic latch with some select lines to effectively port-replicate the video output for multiple connected monitors? (Say, 15pin Dsub, +4 pin IDC, that leads to well marked connectors?
Based on the 4 additional IDC pins, the latch knows which lead to output through?