OBattler
dc8d237126
S3 ViRGE: Force bit 2 of CRTC register 33h to be set when read, fixes Windows 95 GX2 lock-ups.
2024-08-17 19:46:29 +02:00
OBattler
366ebea651
S3 ViRGE fixes by TC995 and switched threads on Windows builds back to Win32 threads since the C++ threads were breaking the ViRGE blitting in some cases (eg. CD Gamer on 24 bpp).
2024-08-17 01:22:06 +02:00
OBattler
88741b021e
S3 ViRGE: Some minor memory mask fixes.
2024-08-16 05:58:24 +02:00
OBattler
537e6f76de
S3 ViRGE: Replace code with re-cleaned-up PCem code with our changes manually re-applied, also revert hardware cursor offset checks, which fixes black bars in games.
2024-08-16 05:43:55 +02:00
TC1995
a0d662e9c5
S3 changes (and TVP3026) of the day (August 15th, 2024)
...
1. TVP3026: disable lut mapping on 24bpp modes (mainly the S3 Vision968 drivers which use the TVP3026 ramdac).
2. S3 Vision968 (MiroVideo 40SV Ergo): Corrected 1280x1024 24bpp resolution.
3. ViRGE class: limit the FIFO entries in the bitblt regs to less than 16 entries and make the Image Transfers FIFO writes wraparound to 1 and reads to 0 (to allow at least a read to a write in the thread without hanging the entire emulator). Fixes Win3.1 PBRUSH colors while keeping performance on par with PCem.
2024-08-15 23:04:48 +02:00
OBattler
08fc20bcc5
S3 Virge: Bring the threading completely up to par with PCem.
2024-08-14 22:47:06 +02:00
TC1995
a7b7b1af67
Attempt at fixing the threading of the ViRGE.
2024-08-14 20:33:32 +02:00
TC1995
70c622aecd
S3 ViRGE class: Rethreading for future investigation.
2024-08-14 19:24:55 +02:00
OBattler
e377e58881
Assorted fixes and Dev branched the Matrox G100 and the PCL printer.
2024-07-26 00:39:11 +02:00
TC1995
b91a0d1a14
Initial implementation of the timed FIFO on the ViRGE
...
See above.
2024-07-25 21:40:37 +02:00
OBattler
a369bc2d05
Reimplement S3 ViRGE reset and move PCI TRC CPU reset to outside the recompiled block, fixes #2903 .
2024-06-12 20:46:27 +02:00
TC1995
eff32906c5
Fix onboard flag for actual onboard ViRGE BIOSes.
...
So that ViRGE cards can work again without black screening.
2024-05-30 16:35:32 +02:00
TC1995
0897eea7df
Plus a compile fix.
2024-05-30 00:43:00 +02:00
TC1995
11d7afd578
Video changes part 3 (minor though)
...
1. Added an on-board S3 ViRGE DX (375) video card to the Intel AP440FX socket 8-based machine alongside its on-board CS4236B audio.
2. Sanity check for on-board S3 ViRGE devices.
2024-05-30 00:13:29 +02:00
Cacodemon345
a0ef980a2c
S3 ViRGE/GX2: Fix frozen display when stream processors are enabled
2024-02-25 14:33:17 +06:00
TC1995
c00e854fce
Fix compile.
...
See above.
2024-02-24 21:52:06 +01:00
TC1995
21230f933e
Temporary solution to a 24bpp issue and hblank.
...
So that 24bpp color is not discolored anymore as well as hblank bugs being nulled.
2024-02-24 21:50:01 +01:00
Cacodemon345
b49cd0baf4
S3 ViRGE: Buffer flips no longer trigger recalctimings
2024-02-24 02:51:42 +06:00
Cacodemon345
181ffbcffb
S3 ViRGE: a bit of cleanup
2024-02-23 20:47:27 +06:00
Cacodemon345
45dff17d58
S3 ViRGE/GX2: Fix screen overlay staying on Windows XP
2024-02-23 16:25:50 +06:00
Cacodemon345
a893aba1ca
S3 ViRGE: Respect blend control compose modes on pre-GX2 ViRGE
...
Fixes video overlay staying on-screen on Linux.
2024-02-23 14:27:26 +06: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
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
Jasmine Iwanek
506d548b38
More linting in src/video
2023-08-23 00:50:52 -04:00
OBattler
15281b22b6
Some S3 ViRGE fixes.
2023-08-22 21:41:08 +02:00
Jasmine Iwanek
81bb5e564b
Better fallthrough annotation macro.
2023-08-09 20:09:36 -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
OBattler
a8578203cc
Virge FIFO waiting fixes - slots limit, and undocumented behavior to make Linux work.
2023-08-06 03:37:35 +02:00
Jasmine Iwanek
d2f42198fd
Fix clang build failure
2023-07-26 12:41:18 -04:00
Jasmine Iwanek
db66543959
Apple build fix
2023-07-25 17:59:22 -04:00
Jasmine Iwanek
ee695e71f9
More sonarlint work
2023-07-25 17:59:22 -04:00
TC1995
5d07468a67
S3 ViRGE change:
...
Attempt at fixing a small but breaking bug reported by a Discord user.
2023-07-15 00:06:57 +02:00
Jasmine Iwanek
d1127e68fa
Even more sonarlint work
2023-06-04 23:39:14 -04:00
Jasmine Iwanek
610401de7a
Yet more clang-formatting
2023-02-28 23:53:57 -05:00
luennix
a0d853ff1f
Actually implement on-board ViRGE/DX for Infinia 7200 and TC430HX
2023-02-17 22:09:17 +03: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
3fe4f75108
A bit more clang-format
2022-11-19 11:53:07 -05:00
Cacodemon345
7e44372b75
vid_s3_virge: Give FIFO R/W indices the stdatomic.h treatment
2022-11-07 13:11:36 +06:00
Jasmine Iwanek
883e7c256a
clang format in src/video ( #2654 )
2022-08-31 20:19:29 -03:00
Cacodemon345
8a3367ff6f
Multi-monitor support (backend preparation part)
2022-07-03 01:18:23 +06:00
TC1995
30e0201174
When linear framebuffer base is mapped, it's fb_only time, fixes gibberish fonts and corrupt mouse cursor on BeOS releases using the S3 Trio/Virge cards.
...
Slight cleanup of the XGA card and fixed more possible cursor issues.
2022-07-01 17:58:56 +02:00
David Hrdlička
e60af6c29d
Clean up plat.h a bit
2022-04-20 01:03:39 +02:00
Alexander Babikov
eba088c692
Remove trailing whitespace + indentation consistency fixes
2022-04-14 07:10:18 +05:00