First post, by vasyl
A couple weeks ago I started discussion about multiple SVGA chipset choices in DOSBox. To prove that those were not just empty words on my side I started coding and actually got something working. Right now I have some deadlines looming in my daily job so I may not be able to spend any time on this thing (not that I had that much time before but it was just enough). I don't want this code to be lost and I think some people may be interested, so I've submitted a patch (#1191552).
This is not a complete solution but basic stuff works and does it sufficiently well. You can switch between ET3000, ET4000, S3, and <none> in dosbox.conf, configure RAM size for ET4000. WHATVGA recognizes chipsets correctly, Deluxe Paint IIe works fine, those pesky Legend games have no problems at all. Again, this is not 100% implementation but it is a good start. The entire SVGA support is modularized and new chipsets can be added with no effort (basic support for a new chipset would take 30-45 minutes to implement). If you don't want to use it, just don't modify dosbox.conf and DOSBox will work exactly as it did before. I don't think there is any measurable performance impact with my patch.
Some interesting side notes:
- As I remember, there are two versions of Deluxe Paint IIe -- one with VESA support and the other (older) without. The older one actually does not even have support for ET4000 or more than 512K of videoram. Interestingly enough, the gallery.exe app was never updated, so it is incompatible with "stock" DOSBox. Works in ET3000 mode just fine. Unfortunately, I don't have the older version anymore but I vividly remember patching ET3000 bank switching to work on my ET4000.
- The thing that started all this, Eric the Unready, gave me a surprise. That was really bad example to start with. Floppy and CD versions are quite different but report the same version number. CD version supports VESA and runs in 800x600x16 mode (called SVGA) in slightly patched DOSBox. 640x480x256 mode (called XGA) is completely broken in that version, regardless of chipset. Floppy version does not support VESA at all (neither does it support S3) but both SVGA and XGA modes work fine with my patch. Said that, that XGA mode is useless... and not documented in the manual.