Patch is attached. It does the following:
- Adds ability to force 4:3 ratio;
- Adds ability to disable CGA RGBI brown circuitry;
- Adds EGA/(S)VGA overscan border emulation;
- Makes most if not all (S)VGA graphics cards sanitize writes to registers;
- Fixes Chain2 VRAM write mode so DOS box is no longer broken when using EGA.DRV on Windows 3.1 on a (S)VGA card;
- Does a lot of EGA fixes;
- Adds Chips & Technology SuperEGA, Compaq EGA, and Compaq/Paradise VGA emulation;
- Replaces CGA composite code with much better code by reenigne;
- Some CGA emulation bug fixes by reenigne;
- Fixes ET4000/ET4000W32 RAM DAC bugs, as well as bugs with Trident TGUI and TVGA (credit goes to SA1988);
- Adds ability to disable disk activity flash;
- Adds ability to disable CGA color burst;
- Adds emulation of New CGA card (differs from emulated Old CGA only in composite mode colors though);
- Adds emulation of Enable/Disable VRAM, Enable/Disable Extended VRAM, and Odd/Even Page for both EGA and (S)VGA.
[PATCH] Video improvements
[PATCH] Video improvements
- Attachments
-
- pcem_video.rar
- (22.44 KiB) Downloaded 375 times
Re: [PATCH] Video improvements
Updated patch attached. Adds fixed by SA1988 for the cursor on the S3 Trio in interlaced modes.
- Attachments
-
- pcem_video.rar
- (22.56 KiB) Downloaded 362 times
Re: [PATCH] Video improvements
Another update. Fixes the behavior of S3 Trio64 and S3 Virge when force 4:3 and/or overscan border are enabled.
- Attachments
-
- pcem_video.rar
- (29.14 KiB) Downloaded 374 times
Re: [PATCH] Video improvements
Going to upload a new version of this soon, as I have done several fixes since, and applied the ET4000 DAC fix I forgot in the above patch versions.
Edit: And as regards moochmcgee's Video RAM limit fix request, I agree that it's best to get rid of the limit entirely, or increase it if the former is impossible. I also think all the places with addresses get AND'ed with vrammask, should instead do a modulo vram_limit as bit masks fail to produce the desired results when memory sizes are not powers of 2, and I'm quite sure a few of the emulated cards support memory sizes such as 3 MB or 6 MB, even more so if we ever add cards such as S3 Vision 964 (which I have incomplete code for, it's missing the DAC, but I have a datasheet of the correct DAC so that should be easy) which definitely support such sizes.
Edit: And as regards moochmcgee's Video RAM limit fix request, I agree that it's best to get rid of the limit entirely, or increase it if the former is impossible. I also think all the places with addresses get AND'ed with vrammask, should instead do a modulo vram_limit as bit masks fail to produce the desired results when memory sizes are not powers of 2, and I'm quite sure a few of the emulated cards support memory sizes such as 3 MB or 6 MB, even more so if we ever add cards such as S3 Vision 964 (which I have incomplete code for, it's missing the DAC, but I have a datasheet of the correct DAC so that should be easy) which definitely support such sizes.
- MiraiMiracle
- Posts: 53
- Joined: Fri 06 Jul, 2018 4:42 pm