TC1995
dd5c5f4a07
More ViRGE fixes (August 29th, 2024)
...
Apparently the extended sequencer registers (>= 0x20) are required to have sane values on the STREAMS engine on GX2 and probably other chips in the ViRGE range.
2024-08-29 00:51:28 +02:00
TC1995
47ee1c4ead
Some fixes to the Streams engine of the ViRGE/Trio3D
...
Make sure the ViRGE GX2 and up (including the Trio3D/2X) use the secondary stream only per what was found in the past.
2024-08-27 22:17:52 +02:00
Miran Grča
d67d86d266
Merge pull request #4723 from MaxwellS04/mirocrystal_3d
...
Add miroCRYSTAL 3D video card
2024-08-26 06:38:22 +02:00
OBattler
ba859d7351
S3: Fixed CRTC to PCI BAR mapping, fixes #4745 .
2024-08-26 04:36:23 +02:00
OBattler
f9e457f3e8
Give the AP440FX the original ViRGE instead, fixes #4740 .
2024-08-22 04:59:51 +02:00
MaxwellS04
eabfc12290
Merge branch '86Box:master' into mirocrystal_3d
2024-08-21 07:22:01 +07:00
OBattler
71ff5c8c63
ViRGE: Fixed some warnings that only appear when compiling a debug binary.
2024-08-21 01:33:54 +02:00
TC1995
aebaabb6b8
ViRGE changes of the day (August 20th, 2024)
...
1. ROM updated to 1.03.
2. Re-apply more fixes that were missed during the restructuring to be on par with PCem's speed.
3. Implemented Command DMA bus mastering required by Diamond Stealth 3D specific drivers (especially the GX2-based 4000).
4. Some indentation fixes.
2024-08-20 15:45:56 +02:00
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
MaxwellS04
a02b4e52c3
Fixed configuration
2024-08-17 00:53:02 +07:00
MaxwellS04
24e2c65c40
Fixed a compile-breaking mistake
2024-08-16 20:44:51 +07:00
MaxwellS04
ab71f9d3e2
Added the miroCRYSTAL 3D, based on a S3 ViRGE.
2024-08-16 20:36:26 +07: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