Commit Graph

120 Commits

Author SHA1 Message Date
OBattler
411a64553d Implemented S3 Cursor Right Addressing. 2021-09-14 02:08:11 +02:00
TC1995
04e48a071e S3 changes part 3:
Added the Phoenix S3 Vision968 (IBM RGB) and the MiroCRYSTAL 20SD VLB (864, SDAC) (alongside their BIOSes).
Added the vendor specific bits of CRTC5c used by the MiroVIDEO 40SV Ergo (968), Phoenix 868 and Phoenix 968.
Restored FIFO in the pre-964 cards, but without threading (Warning, code might be bloated for this).
Fixed horizontal issue with the SPEA Mercury P64V (968).
2021-09-11 22:02:31 +02:00
TC1995
293cb6a3cf My dword/byte mode fix doesn't apply to the Trio64V+ and up (Trio64V2/DX). 2021-09-06 22:11:09 +02:00
TC1995
4f5a78a8b9 Added a force byte mode variable to prevent dword mode from operating due to glitches in the S3 acceleration using said mode. 2021-09-06 13:03:50 +02:00
TC1995
b9cdf0521f Fix 3 for the dword mode for duke3d/lxpic/standard and miro drivers for win3.1 (I swear).
Re-added the byte swap bit in pix trans write word mode that was accidentally removed, fixes buttons in pifedit using the 968 in Win3.1.
2021-09-05 23:17:38 +02:00
TC1995
e37f477ebf S3 dword mode:
CRTC14 bit 6 (standard dword mode) has the highest priority over CRTC31 bit 3 (S3 dword mode), so if the latter is enabled while the former is disabled, it's byte mode. Fixes both Duke3D, LXPIC and Win3.1 running at the same time (once and for all).
2021-09-05 19:53:03 +02:00
TC1995
1c634759c5 Fix the dword mode fix in the S3 code. 2021-09-05 19:25:16 +02:00
TC1995
0ae17cbb3e S3 changes/improvements:
Overhauled the read portion of the PIX TRANS command (fixes white corruption in some instances while keeping everything already working fine).
Fixed Miro 10SD recalctimings issue about losing graphics mode.
DWORD mode SVGA CRTC bit fixed when S3 DWORD mode bit is enabled.
2021-09-05 18:10:54 +02:00
OBattler
2415673c7a Some small S3 fixes (bugs found by clang). 2021-09-03 00:41:10 +02:00
TC1995
229e61b74d Minor pix trans fixes to the S3 code (R/W). 2021-09-03 00:27:08 +02:00
TC1995
391c6a3571 S3 & TVP3026: Part 2.
Reworked the pix tranfer register to allow a word in a byte transfer.
Added an alternative bios selection for the SPEA Mirage 801 card (3.05I and 4.01, the latter being the default now.
Added the MiroCrystal 10SD 805 VLB, Phoenix 801 ISA, MiroVideo 40SV 968 VLB/PCI, SPEA Mercury P64V 968 PCI , SPEA Mirage P64 Trio64 VLB cards.
Removed some non-working S3 cards like the Trio64V+ VLB and Elsa Winner 2000 Pro X VLB (only PCI variants of these cards are now in)
2021-09-03 00:05:43 +02:00
TC1995
74d88ec6bb Fixed display start address on S3 pre-ViRGE and ViRGE cards upon recalculation of its timings plus when the banking register is enabled, this also fixes the flickering of Quake while having Commander Keen working without glitches. 2021-08-08 13:24:11 +02:00
TC1995
fc832333fc Fixed S3 Trio32 PCI ID. 2021-07-19 00:11:45 +02:00
OBattler
7047517408 Video threads are now woken before the wait for termination, fixes the hangs. 2021-07-16 19:22:58 +02:00
OBattler
78c3f6759f Removed all usage of TerminateThread()/thread_kill(), thread_wait() is used instead now. 2021-07-16 06:45:32 +02:00
TC1995
fd5ac14f26 Fixed scrolling anomalies in the EGA and SVGA card cores for Commander Keen to work right without glitches. 2021-07-12 22:12:27 +02:00
TC1995
ef0eae56e7 Fixed bit 12 of the cur_x/y coordinates in the s3 cards which fixes the wrong fonts position in the trio64v+/trio64v2 under win9x. 2021-07-12 11:32:41 +02:00
Daniel Gurney
f2cd3756dd Revert "Merge branch 'feature/machine_and_kb' into master"
This reverts commit 6604a29d7e, reversing
changes made to 1d7fca0abd.
2021-07-04 18:22:52 +03:00
OBattler
fd4817a87b All the current WIP work (warning: the PIT is currently using some temporary test rewrite that is going to be undone). 2021-06-29 19:11:19 +02:00
TC1995
3cad7d88fe The Trio64V2 seems closer to the ViRGE more than I thought and now CRTC regs 0x6B and 0x6C no longer are aliases to 0x59 and 0x5a (only for the trio64v2, the rest is fine as is). 2021-06-18 17:45:18 +02:00
TC1995
f423e07f13 Made all the non-ViRGE S3 cards disable double word access due annoying acceleration issues in some instances of the software cursor for now. 2021-06-15 17:25:36 +02:00
TC1995
c3c8da49db Removed log excess. 2021-06-05 20:52:10 +02:00
TC1995
76271ddd08 Fixed 256 color modes in the Oak OTI cards.
Made the New MMIO-capable S3 cards behave like the ViRGE for the double word/packed chain-4 addressing.
2021-06-05 20:50:38 +02:00
TC1995
d63ce5ab82 Port of the reworked svga memory addressing, normal chain4 mapping and ma13/14 mapping for non-CGA modes.
Fixed ET4000/W32 (without letters) hardware cursor.
Fixed non-interlaced 1280x1024x8bpp Cirrus mode in the 5434.
Added a note regarding the Radius (HT209) 8bpp render.
Reworked the TGUI9440, but still WIP.
2021-05-30 01:52:43 +02:00
TC1995
ee9dd9ab3f Fixed 1280x1024x8/16bpp and 1600x1200x8/16bpp video modes in the S3 trio class cards.
The 1990 Spock BIOS uses ID 6 for the boot drive.
2021-05-24 23:13:30 +02:00
TC1995
d2c6452ff5 Reworked the HTVGA/Video7 clocks. Fixes the HT209 2401 error on MCA.
Fixed 16 color in the Realtek 3106 card.
Reworked the Sierra 1148x for the second time.
Registers that only exist on 928/80x and up are not used by the 911/924 anymore.
2021-05-20 20:57:54 +02:00
TC1995
1b642b4aba Port 0x105 on the ISA-based HT209 is only initialized from port 0x46e8 to avoid conflicts with the IBM PS/1 2011 and 2121's already existing initialization of the ports.
Reworked the Sierra SC1148x and AT&T49x ramdacs to use the RS2 signal when available.
Added the Realtek RTG3106 video card.
2021-05-12 18:51:02 +02:00
TC1995
0fa19c3387 Made the 868 properly recognize itself as a true 868, instead of 866 (should also fix NT 4.0's graphical bugs with it) 2021-04-26 22:48:42 +02:00
TC1995
3edf20b48b Fix accidental horizontal bug in the 8bpp portion of the S3 recalc timing function using the 80x (1280x1024x8bpp). 2021-04-15 16:42:40 +02:00
TC1995
cf67dc4fc5 Fixed "purple pixels" under Win95 using the built-in S3 928 driver. 2021-04-15 02:28:32 +02:00
RichardG867
d344fce4d4 S3 DPMS shouldn't engage if both hsync and vsync are high 2021-04-14 16:08:45 -03:00
RichardG867
94eae848a3 Add DPMS support to S3 chips 2021-04-13 15:21:55 -03:00
David Hrdlička
dfbbe08a07 rewrite the emulator to use UTF-8 internally 2021-03-30 09:46:49 +02:00
OBattler
283908df11 Fixed warnings in vid_s3.c. 2021-03-25 02:17:39 +01:00
TC1995
95976a2b26 Added Tseng specific variants of the GenDAC ramdac (ICS 53x1).
Fixed (at least in a more correct way) software cursor under OS/2 Warp with the s3 trio/vision drivers.
Implemented 128x128 sprite/hwcursor on the et4000w32 cards per manual.
2021-03-24 03:51:56 +01:00
TC1995
9d700ce8d2 Fixed 1280x1024x8bpp mode in the 928.
Added the Tseng ET4000/W32 and its blitter.
Brought back the Tseng ET4000/W32i from the old days of being unused.
2021-03-16 16:48:24 +01:00
David Hrdlička
57d0c7d5ae Remove non-standard d suffix for double literals 2020-12-27 02:58:19 +01:00
OBattler
c68a36c2bb Renamed the RGB525 DAC file to the correct RGB528 name and remove excess pclog lines. 2020-12-22 14:58:28 +01:00
TC1995
eeabeeb2bb Added the latest fixes to support the 868/968 video engine and the 868 itself. 2020-12-22 14:17:22 +01:00
OBattler
2dc7b95496 Fix conflict. 2020-12-19 16:25:44 +01:00
OBattler
7733bc826d Fixed the new MMIO mapping size of the S3 Virge968, Paintbrush no longer hangs but does not display correctly, pending the implementation of the Video engine. 2020-12-19 16:23:47 +01:00
OBattler
fd044440b3 S3 Vision968 work. 2020-12-19 16:22:51 +01:00
OBattler
a00b82cdf8 Fixed S3 linear mapping on Vision964 and earlier. 2020-12-19 16:09:32 +01:00
OBattler
13689ca958 Fixed the new MMIO mapping size of the S3 Virge968, Paintbrush no longer hangs but does not display correctly, pending the implementation of the Video engine. 2020-12-19 16:09:32 +01:00
OBattler
645429e5f2 S3 Vision968 work. 2020-12-19 16:09:32 +01:00
OBattler
d0bdee2d69 Fixed S3 linear mapping on Vision964 and earlier. 2020-12-19 12:40:23 +01:00
OBattler
2c0a7113c3 Fixed the new MMIO mapping size of the S3 Virge968, Paintbrush no longer hangs but does not display correctly, pending the implementation of the Video engine. 2020-12-19 12:40:23 +01:00
OBattler
0626c0a698 S3 Vision968 work. 2020-12-19 12:40:23 +01:00
Miran Grča
39043ffb9c Merge pull request #1110 from richardg867/master
I2C/SMBus overhaul
2020-11-25 23:14:32 +01:00
RichardG867
64249d50a3 I2C overhaul part 7: S3 Trio and Cirrus Logic 2020-11-25 00:16:42 -03:00