SarahW
51c4a1455e
Fix clock selection on S3 Vision864 w/SDAC (Bahamas 64).
2019-05-12 17:59:21 +01:00
SarahW
bd8cade1fb
Remove 4 MB option from Bahamas 64; this card only supports up to 2 MB.
2019-05-12 17:58:37 +01:00
SarahW
a7d006b637
Rewrote timer code.
...
The new code is based on timestamps, rather than delays. This eliminates the
need to update every timer in timer_process(), which cost a non-trivial amount
of CPU time on low-end machines.
This involved changes to every user of the timer code, so this change almost
certainly introduces bugs.
2018-08-02 22:06:10 +01:00
SarahW
9dc02e7185
Implemented Trio32-only host data mode. Fixes text in Windows 3.1.
2018-04-12 21:31:01 +01:00
SarahW
4cea5cc59f
Implemented Trio64 polygon fill commands. Fixes issues with Paintbrush on Windows 3.1.
2018-04-12 21:26:45 +01:00
SarahW
138430ad8f
Fixes to Trio64 read mask handling. Fixes some graphics issues in OS/2 Warp.
2018-04-10 16:20:48 +01:00
SarahW
38fa1cbfd1
Trio64 maps 32-bits to colour & mask registers even when 32-bit registers are disabled. Fixes bad colours in OS/2 Warp in 32-bit colour mode.
2018-04-10 16:20:17 +01:00
SarahW
8186a884d7
S3 BitBlt commands don't update current X/Y registers at the end of a blit. Fixes some S3 graphics issues in OS/2.
2018-04-04 21:25:47 +01:00
SarahW
b840d79691
Force S3 blitter busy bit to be high for a while after the start of a command, to compensate for timing variations between main and blitter threads. Fixes S3 blitter lockups on OS/2.
2018-04-04 21:25:00 +01:00
SarahW
9f8eed95c2
Implement read & write masks on S3 blitter. Fixes text rendering on OS/2 and XFree86 with S3 cards.
2018-04-04 21:24:04 +01:00
SarahW
63b431cc9e
Fix S3 Vision864 & Trio cursor colours in XFree86.
2018-03-20 22:10:52 +00:00
SarahW
fc7ac47954
Various fixes to SDAC RAMDAC emulation. Fixes Paradise Bahamas 64 with Xfree86, UNIVBE RAMDAC detection, and probably others.
2018-03-20 22:09:50 +00:00
SarahW
e12eb0ff0d
Don't mirror VRAM at 1 MB for Phoenix Trio64 with 1 MB. Fixes memory size detection.
...
This is most likely a difference in memory mapping between FPM and EDO Trio64 configurations.
2017-11-28 19:47:46 +00:00
SarahW
4974c9cfb1
Use standard VGA RAMDAC on Trio32/64 instead of SDAC - the internal Trio RAMDAC does not implement any extended registers.
2017-10-25 21:09:03 +01:00
SarahW
4a489dab1b
Remove 512kb configuration from Trio64 - this is not actually supported by the chip.
2017-10-22 12:41:38 +01:00
SarahW
39a68d757b
Rework video memory handling to cater for open bus and VRAM address wrapping. Fixes more hangs with Trio64 and Windows 95.
2017-10-22 12:41:10 +01:00
SarahW
da6e537b31
Add S3 Enhanced Mode Mappings address override. Fixes some hangs with Trio64 and Windows 95.
2017-10-22 12:40:09 +01:00
SarahW
807b710a5d
Improvements to path handling. Patch from bit.
2017-07-06 21:25:10 +01:00
SarahW
617cfd7ef2
Added preliminary IRQ support for ATI Mach64, S3 Vision864/Trio32/Trio64, and S3 ViRGE.
2017-06-01 21:51:02 +01:00
SarahW
34679d4273
Tweaked S3 PIXTRANS register. Fixes text rendering in Line Wars II and problems with some S3 drivers.
2017-05-18 20:56:59 +01:00
SarahW
bc5b6d63f7
All ROM image file names now lower case. Patch from tomaszkam.
2017-04-19 16:35:07 +01:00
SarahW
c466cfa24b
Clean up FIFO threads on 2D cards on exit/reset. Patch from bit.
2017-04-12 20:46:21 +01:00
SarahW
2b892d2a7a
Fixed compiler warnings for Windows builds.
...
Added -Werror to Windows makefiles.
2017-04-11 19:34:41 +01:00
SarahW
f79d6ca3fe
Correct PCI ID for Bahamas 64 - now works with Premiere/PCI and Advanced/EV.
2017-01-17 21:46:26 +00:00
SarahW
1e8bc05795
Move S3 Vision864/Trio32/Trio64 blitter to seperate thread.
2016-04-28 21:58:28 +01:00
TomW
d574a4f5eb
Correct S3 class code.
...
Limit S3 attribute registers to those actually present.
Don't update current position registers at the end of BitBlt command.
Fixes S3 on SUSE 6.3.
2015-10-11 20:36:18 +01:00
TomW
ca67e8adba
Changed data ordering in S3 acceleration in 32bpp modes, fixes display with some drivers. Patch from Battler.
2014-11-18 19:25:06 +00:00
TomW
17cae8a2d7
Implemented 256kb wrapping on S3 cards.
2014-11-05 18:17:39 +00:00
TomW
6a72839c59
Enabled write to CRTC R7 bit 4 when protection is enabled - fixes scrolling on DOS/V 6.2.
2014-11-04 20:14:50 +00:00
TomW
56b455844e
Initial port to Linux (using Allegro).
...
64-bit fixes.
Some changes to aid portability.
A few other tweaks.
2014-09-04 21:07:24 +01:00
TomW
1c3d1039ff
ViRGE S3D triangle rendering now uses worker thread.
...
Fixed clipping bug on ViRGE.
Fixed status window crash.
2014-07-22 21:10:39 +01:00
TomW
b491d70a58
Added Phoenix Trio64.
...
S3 cards now report FPM memory - allows 4 MB on Phoenix Trio64.
2014-07-10 20:25:10 +01:00
TomW
0c2efae9c3
Fixed cursor in interlaced modes on S3 Vision864/Trio32/Trio64.
2014-07-09 22:12:59 +01:00
TomW
c18f7fffb0
Added emulation of Phoenix Trio32. Based on patch from Battler.
...
Paradise Bahamas 64, Number Nine 9FX and Phoenix Trio32 now have configurable memory sizes.
2014-07-09 21:45:42 +01:00
TomW
f1e1cc0b25
Initial S3 ViRGE video overlay emulation.
2014-06-13 18:43:25 +01:00
TomW
8c8d70c3cf
S3 changes :
...
Altered endianness of multi-word image transfers - fixes icons on Windows NT
Current position registers now updated at the end of commands - fixes some drawing issues on Windows NT
Hack to reset indicator of which half of colour registers will be accessed - fixed intermittent 32-bit colour issues
2014-05-03 13:39:03 +01:00
TomW
2610c6c230
Added 32-bit command registers for S3 864/Trio64.
2014-03-26 22:14:13 +00:00
TomW
0a1c4dcdf0
Fixed dirty screen updating in high resolution modes.
2014-03-22 19:10:00 +00:00
TomW
f51d8bead4
Fixed vblank start on S3 864/Trio64 - fixes 1280x1024.
2014-03-22 15:37:36 +00:00
TomW
2ca4ead570
Implemented preliminary S3 ViRGE 2D blitter emulation.
...
Misc ViRGE fixes.
Changes to memory mapping.
Changes to PCI handling.
Disabled 'AMI WinBIOS 486 PCI' due to incomplete chipset emulation.
Invalid GUS register reads no longer kill the emulator.
2014-03-20 14:03:55 +00:00
TomW
cb4d1ad67d
Fixed MIX bug on S3.
2014-03-04 21:34:27 +00:00
TomW
8252a0c066
Set FIFO empty flag on S3 graphics cards.
2014-03-04 19:48:38 +00:00
TomW
657aa19dd1
Devices can now be marked as not working, and disabled in release builds.
...
Video card menu now build dynamically from list.
2013-11-28 20:03:59 +00:00
TomW
a8b286a2ec
Added correct clock support for S3 Trio64 (Number Nine 9FX).
...
Seperated TGUI9440 and TVGA8900D implementations.
Modes > 8 bpp now handled more logically in SVGA core.
Fixed broken status window for most SVGA cards.
Masking of address on 'legacy' VGA memory ranges now handled better.
2013-11-20 21:34:09 +00:00
TomW
8cad0222bb
S3 line draw now uses correct foreground/background mix.
2013-11-16 17:25:44 +00:00
TomW
bd873de9ac
New 'available' function in device API, to determine whether required ROMs are available. Currently used when building soundcard menu, to remove AWE32 when required ROM dump is not present.
2013-11-04 18:23:15 +00:00
TomW
7735e82085
Altered device memory mapping.
2013-10-19 17:06:55 +01:00
TomW
72f934d141
Direct3D video output. Fixed redraw when DirectDraw/Direct3D device is lost.
2013-08-13 19:20:28 +01:00
TomW
f431e74917
Video optimisations. Fixed VRAM mask on S3.
2013-07-09 19:30:53 +01:00
TomW
58085bcc87
Re-organisation of video emulation.
2013-06-24 20:42:35 +01:00