Commit Graph

99 Commits

Author SHA1 Message Date
RichardG867
6c933dd157 Voodoo: Implement missing AGP CMDFIFO features
Note that the reproduction cases for command 6 currently appear to be a result of CMDFIFO corruption instead of actual usage.
2025-02-20 18:24:38 -03:00
Jasmine Iwanek
d5d1d5c449 More cleanups to device structs 2025-02-08 01:28:25 -05:00
Jasmine Iwanek
5b894c32e6 Macro Cleaning 2025-02-08 01:28:24 -05:00
Jasmine Iwanek
5f273265ae Assorted warning fixes 2025-02-02 03:24:50 -05:00
Jasmine Iwanek
81b8038bc5 Clean up .available & .poll 2025-02-01 03:38:52 -05:00
OBattler
50c97f0158 Voodoo 3/Banshee: Some CMDFIFO fixes. 2025-01-06 16:59:15 +01:00
OBattler
bace3fe900 Voodoo Recomiler -> Dynamic Recompiler. 2024-11-10 02:35:27 +01:00
OBattler
7b6e5e5ad9 Implements the second CMDFIFO2 queue for Voodoo 3, fixing BeOS's Voodoo 3/Banshee drivers, fixes #4794. 2024-09-04 15:22:24 +02:00
Miran Grča
d2214bbbb0 Update vid_voodoo_banshee.c
Fix heap corruption.
2024-08-09 00:39:42 +02:00
OBattler
404def23e8 Voodoo 3 1000 and Velocity 200: Hardcoded to 16 MB because our BIOS'es are 16 MB-only BIOS'es with the RAM amount check gutted out, closes #4406. 2024-05-08 03:35:51 +02:00
Miran Grča
22441a2302 Add sanity check to Voodoo 3/Banshee hardware cursor drawing
Fixes #4351.
2024-04-16 19:18:50 +02:00
OBattler
5af0ccd145 Assorted Voodoo and warning fixes. 2024-02-29 06:48:16 +01:00
OBattler
4c3cceec69 Fixed off by one errors in (S)VGA horizontal blanking start calculation. 2024-02-18 17:54:14 +01:00
OBattler
3f8952a558 More (S)VGA horizontal blanking fixes and CPU CR0 bit 4 fixes. 2024-02-09 18:02:33 +01:00
OBattler
f3d585a1e1 Fix horizontal blanking calculation, fixes some S3 blanking excesses. 2024-02-07 00:11:02 +01:00
Alexander Babikov
6b9fbcba8b Correct capitalization of 3Dfx for Voodoo 1/2/Banshee
Voodoo 3 left unchanged to match their new logo
2024-01-29 00:49:14 +05:00
OBattler
2354a25231 Voodoo 3/Banshee: Disable SVGA line doubling in video processing modes, fixes #2629. 2024-01-15 03:55:06 +01:00
OBattler
b1c292a9e9 Sanitized the horizontal blanking adjustments a bit and fixed 640x480x8bpp on some S3 cards. 2024-01-13 22:04:20 +01:00
OBattler
996530a94e Horizontal blanking calculation now takes into account horizontal timings multiplications and divisions, fixes a lot of S3 (and ViRGE) modes. 2024-01-13 03:54:56 +01:00
OBattler
ca4f5bad13 More horizontal blanking calculation fixes (and actually use blank start, not retrace start), fixes graphics cut-off on Voodoo on Windows 98 SE. 2024-01-13 00:41:45 +01:00
OBattler
cd0636ee04 Fixed horizontal retrace start and end extensions on almost every applicable card, fixes #4025. 2024-01-11 14:42:54 +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
Cacodemon345
ddb43a78c1 vid_voodoo_banshee: Implement gamma correction for 16bpp 2023-12-30 12:52:21 +06:00
GreaseMonkey
d3897b57e8 Handle SVGA 8bit RAMDAC for Voodoo Banshee cards 2023-11-26 11:54:01 +13:00
Jasmine Iwanek
506d548b38 More linting in src/video 2023-08-23 00:50:52 -04:00
OBattler
9f4ae7030e ACPI and Vodoo 3/Banshee PCI/AGP card adding fixes, fixes #3535. 2023-08-10 16:10:59 +02:00
Jasmine Iwanek
b52df9e201 sonarlint voodoo stuff 2023-08-09 16:52:12 -04:00
OBattler
c30d5d90b7 PCI and IRQ rework, pci.c rewritten from ground up, fixes numerous issues such as the bridge being added when the number of normal PCI devices equals the number of normal PCI slots, Windows 95 PCI operation on Intel 430NX, sharing of PCI IRQ's with non-PCI level-triggered devices, having both configuration mechanisms operating at the same time (ALi M1435), etc., and makes the code much more readable. 2023-08-07 03:04:52 +02:00
Jasmine Iwanek
ee695e71f9 More sonarlint work 2023-07-25 17:59:22 -04:00
Jasmine Iwanek
1116aadb6f Another round of sonarlint work 2023-07-04 10:53:44 -04:00
Jasmine Iwanek
d1127e68fa Even more sonarlint work 2023-06-04 23:39:14 -04:00
Cacodemon345
8e54488f22 vid_voodoo_banshee: Extend screen filter buffers to 2048 * 3 bytes
Fixes crashes when screen filtering is enabled and AmigaSport V3.0 drivers for Windows XP are used.
2023-03-07 14:30:33 +06:00
Jasmine Iwanek
610401de7a Yet more clang-formatting 2023-02-28 23:53:57 -05:00
Marek Knápek
4248d80040 Port PR#199 from pcem to 86Box.
Source: https://github.com/sarah-walker-pcem/pcem/pull/199
2023-02-19 18:47:43 +01:00
Cacodemon345
7898109b66 Add SVGA multi-monitor support
Cirrus Logic CL-GD5436/CL-GD5446 works as secondary video adapters
2023-01-22 16:50:21 +06:00
Jasmine Iwanek
1860700eab Fix some small issues 2023-01-07 17:02:23 -05:00
Jasmine Iwanek
a40630ba63 Even more tabs to spaces 2023-01-07 14:09:51 -05:00
Jasmine Iwanek
dd3959587b Improve a couple of comments 2022-12-20 19:33:42 -05:00
Jasmine Iwanek
3fe4f75108 A bit more clang-format 2022-11-19 11:53:07 -05:00
Cacodemon345
4a8c3119df banshee: Implement cmdBaseSize0 readback 2022-11-18 11:27:32 +06:00
Jasmine Iwanek
b6466ba266 Voodoo3 3500 SI 2022-11-10 18:10:17 -05:00
Jasmine Iwanek
7c2c1e985d Falcon Northwest Voodoo3 3500 SE 2022-11-10 18:10:10 -05:00
Jasmine Iwanek
5a462053fd Compaq Voodoo 3 3500 2022-11-10 18:10:10 -05:00
Jasmine Iwanek
7176d7c66c Velocity 200 AGP 2022-11-10 17:03:13 -05:00
Jasmine Iwanek
381f9d11fc Voodoo 3 3500 TV 2022-11-10 17:03:13 -05:00
Jasmine Iwanek
6f031c34df Voodoo 3 1000 2022-11-10 15:49:20 -05:00
Jasmine Iwanek
ac48f84a23 Cleanups in vid_voodoo_banshee.c 2022-11-10 12:17:24 -05:00
Cacodemon345
954e022244 voodoo: Partial implementation of cmdStatus0 register 2022-11-06 12:52:43 +06:00
Cacodemon345
b049f65b8e voodoo: Fix misleading pixel format error message 2022-11-04 14:05:23 +06:00
Cacodemon345
c5f7cf5fa2 Improve Banshee error reporting
Stubbed Banshee AGP registers
2022-11-04 01:49:20 +06:00