Commit Graph

1270 Commits

Author SHA1 Message Date
Cacodemon345
2b3ebf9101 vid_cl54xx: Revert changes made to special blanking mode 2024-01-11 11:08:11 +06:00
OBattler
553e58f8ef Remove an unnecessary subtraction proven to be wrong by the S3 and IBM documentation and that was a result of VGADOC being vague. 2024-01-11 02:11:23 +01:00
OBattler
3010ce4f8a Minor ATi fixes. 2024-01-11 02:07:21 +01:00
OBattler
c4aa4e8889 A minor change to video/vid_svga.c. 2024-01-11 01:56:32 +01:00
OBattler
fe52ecc3da GreaseMonkey's comments in vid_svga.c. 2024-01-10 23:44:27 +01:00
OBattler
d00dafcf16 Apply it to ATi 28800 and Mach 8 as well. 2024-01-10 23:30:48 +01:00
OBattler
0090000f85 HT216-32: Apply the blanking calculation. 2024-01-10 23:25:16 +01:00
OBattler
03a1f783f2 ATi Mach64: Override (S)VGA horizontal blanking calculation in accelerator CRTC mode. 2024-01-10 22:41:13 +01:00
Cacodemon345
8e9a2e0b79 Apply blanking extensions to more SVGA cards.
* Fix duplicated logic in vid_svga.c
* Voodoo 3/Banshee emulation now has blanking extensions applied
* S3 ViRGE and Matrox video cards as well
* Tseng ET4000-series cards as well
* Fix off-by-one error in vid_cl54xx.c

Trident cards are yet to be investigated. XGA and 8514/A are yet to be made blanking extensions compliant. Mach64, Paradise/WDC and OAK OTI cards remain as-is for now.
2024-01-11 01:48:49 +06:00
OBattler
d125caf776 Applied the blanking extensions to S3 Trio64V+ and V2/DX. 2024-01-10 09:27:07 +01:00
OBattler
0a8b4d061c Conflict resolution. 2024-01-10 08:59:46 +01:00
OBattler
79874ad3d5 EGA and (S)VGA: Removed a leftover if block around overscan Y, fixes garbage overscan Y values causing crashes. 2024-01-09 17:38:54 +01:00
GreaseMonkey
bad7c6490e Rework EGA overscan to be compatible with the unit tester
By the way, text mode scrolling at least seems to be correct now
2024-01-09 17:32:38 +13:00
GreaseMonkey
22ead81b80 Fixes for EGA scrolling 2024-01-09 17:20:31 +13:00
OBattler
39258ecdeb And added even more sanity checks. 2024-01-08 13:27:24 +01:00
OBattler
1e5aa13529 Default the previous pixel to black if prev < 0. 2024-01-08 13:23:48 +01:00
OBattler
354c537469 Added 3 CGA line doubling types, in order from the lowest to the highest quality, and the IBM 5153 monitor (per VileR's colors) which is now default, closes #3105. 2024-01-08 00:07:00 +01:00
OBattler
67d8ebba51 S3: Correct line lengths and introduce s3_log(). 2024-01-07 20:54:48 +01:00
TC1995
c5e321ca92 S3 changes again:
1. Moved the wraparound fix to the respective recalctimings, makes Commander Keen still playable without flickering and, at the same time, making Solaris work right in 640x480x8bpp+ mode (including 1024x768x8bpp).
2. The multifunction index 0x0e bit that can be toggled in 32bpp mode is now initialized properly, should fix the pinkness on Solaris' 32bpp mode.
2024-01-07 20:36:50 +01:00
GreaseMonkey
258c55dcd3 EGA, (S)VGA: Fix vertical fine scroll behaviour
Ref: GH-4001
2024-01-07 09:04:25 +13:00
OBattler
a1ef3c47fc 8514/a and ATi Mach 8: Fix the recently introduced warnings. 2024-01-06 00:05:43 +01:00
TC1995
4b52a514bd Huge fixes to 8514/A compatibles:
1. Properly implemented polygon filling in the BitBLT side of the ATI 8514/A compatibles (Mach8/32), this allows games like Mj8514 and demos like HDIDEMO from IBM to run under ATI's hdiload 1.1 properly.
2. Finally figured out the polygon filling command in the IBM one about read and write masks (Command 5 and Command 2 with polygon filling bits on, currently only for the read mask one), this allows the above samples to render properly with IBM's original hdiload 1.0 from 1987.
2024-01-05 21:22:01 +01:00
TC1995
6b1d0b9e88 S3 mode fixes 2 and one small accel cleanup:
1. Fixed 16bpp modes (including 15-bit) of the Trio32/64 that were doubling their horizontal resolution.
2. Made Bresenham Line easier to work with.
2024-01-05 21:11:49 +01:00
TC1995
4317155167 S3 mode fixes (1.5):
1. Actually fix the one in 32bpp mode (968 only).
2024-01-04 00:27:50 +01:00
TC1995
45df94c954 S3 mode fixes (1):
1. Fixed the Elsa Winner 2000 Pro-X/8 (964 and 968) 15/16/32bpp modes at 1280x1024+.
2024-01-04 00:22:47 +01:00
OBattler
356ac8acbe Fixed the two warnings in video/vid_s3.c. 2024-01-03 23:56:58 +01:00
TC1995
b7a4fa2a7c S3 refactoring:
1. Made the 924 BIOS use the AT&T 491 ramdac since it supports such (tested).
2. Tweaks to the 928 Brooktree ID detection to make sure the cursor is shown correctly in 16bpp+ modes (it uses the BT485 ID detection so that it knows what BT is using to accommodate the cursor model).
3. Refactored the mode (CRTC50) and pitch timing stuff (moved to recalctimings for example) so that drivers/games/operating systems and what not can be used normally. (Warning, more stuff is to be tested due to a gazillion of combinations used by said stuff).
4. VRAM wraparound is now working as it should, fixes Commander Keen games.
5. Indentation fixes.
6. Attempt to fix 15/16bpp mode acceleration used by the 911/924 chips (not perfect and still has bugs).
7. Added the remaining missing stuff of the Sierra SC1502x RAMDAC including its 8BIT setting.
8. Some drivers use FIFO bits in non-FIFO configurations, should fix hang ups in some instances (namely the 928 S3 2.3 NT 3.1 drivers and possibly more).
9. Separated the 911/924 acceleration from the 80x/928+ one though the use of a function pointer.
10. Fixed the inverted colors in some instances using the S3 Trio64 driver in Win9x (mainly on soft reboots).
11. CX/CY (non-Blits) and DX/DY (Blits) wraparound correctly during their respective operations, fixes OS/2 software cursor once again while keeping existing stuff working.
12. Added some comments to keep track of some anomalies.
13. Fixed some badly formatted if's and switches.
14. Limited the SPEA Mercury Lite VRAM to 1MB per real world configurations.
2024-01-03 22:58:18 +01:00
Miran Grča
72ff425fe0 Merge pull request #3981 from Cacodemon345/mga-g100
Make Matrox Productiva G100 usable as secondary display
2024-01-02 11:37:38 +01:00
Cacodemon345
64c930f95f G100 is now correctly added as AGP device 2024-01-02 14:34:12 +06:00
Cacodemon345
318403b133 Fix G100 VBIOS mapping 2024-01-02 14:12:02 +06:00
Cacodemon345
af5aafbc0e Make Matrox Productiva G100 usable as secondary display
Confirmed working in Windows 98 SE at least
2024-01-02 13:49:22 +06:00
Miran Grča
4324650a4e Merge pull request #3979 from Cacodemon345/mga-g100
MGA: Fix busmastering under Windows 2000
2023-12-31 17:54:00 +01:00
Cacodemon345
941d5bfdf8 Fix busmastering under Windows 2000 2023-12-31 22:46:21 +06:00
Miran Grča
05b974cd35 Merge pull request #3978 from Cacodemon345/mga-g100
MGA G100: Fix fog acceleration
2023-12-31 14:54:18 +01:00
Cacodemon345
f8e55d0edc MGA G100: Fix fog acceleration
Minor variable cleanups
2023-12-31 19:47:25 +06:00
Miran Grča
a59431a940 Merge pull request #3977 from Cacodemon345/mga-g100
Fix detection of MGA G100 video RAM when 16MB
2023-12-31 14:27:40 +01:00
Cacodemon345
7b75d6f11d Fix detection of MGA G100 video RAM when 16MB 2023-12-31 19:18:20 +06:00
OBattler
89f395ded1 MGA: Fixed two warnings. 2023-12-31 12:10:34 +01:00
Cacodemon345
0ee66c4be8 Whitespace removal 2023-12-31 16:45:52 +06:00
Cacodemon345
b1cf6c8657 Remove logging 2023-12-31 16:44:54 +06:00
Cacodemon345
6366e1c58c Implement proper alpha stipple 2023-12-31 16:43:01 +06:00
Cacodemon345
ca21ea528a Matrox Productiva G100 working (expect maybe alpha stipple) 2023-12-31 14:54:00 +06:00
Cacodemon345
bd1a5e03b0 Somewhat-working Matrox Productiva G100 2023-12-31 02:19:11 +06:00
Cacodemon345
26c1c77758 Fix yet another dumb copy-paste mistake 2023-12-30 20:50:17 +06:00
Cacodemon345
bdae2ace60 Fix a dumb copy-paste mistake 2023-12-30 18:03:26 +06:00
Cacodemon345
08428d497b Disable 32-bit Z buffer on Mystique 220 and earlier 2023-12-30 16:10:28 +06:00
Cacodemon345
ddb43a78c1 vid_voodoo_banshee: Implement gamma correction for 16bpp 2023-12-30 12:52:21 +06:00
OBattler
bfee63da82 Fixes a warning in the TVP3026 RAM DAC code. 2023-12-30 00:08:44 +01:00
Miran Grča
7a63363a57 Merge pull request #3964 from Cacodemon345/mga-millennium-ii
TVP3026: Implement gamma correction for 15/16 bpp modes
2023-12-30 00:07:19 +01:00
OBattler
c40d30d027 Merge branch 'master' of https://github.com/86Box/86Box 2023-12-30 00:05:04 +01:00