Commit Graph

71 Commits

Author SHA1 Message Date
Cacodemon345
3ba6e337c5 Revert "MGA: Count for cases where DMA header data is not immediately available"
This reverts commit efe9784aad.
2023-12-19 12:02:58 +06:00
Cacodemon345
efe9784aad MGA: Count for cases where DMA header data is not immediately available
Fixes crashes on NT 4.0
2023-12-19 11:42:01 +06:00
Cacodemon345
111b623811 Fix logical error 2023-12-19 03:00:54 +06:00
Cacodemon345
12d5d6c260 Matrox Mystique: Bus-mastering fixes
* Make all bus-mastering-related variables atomic
* Do not, under any circumstances, attempt to read beyond PRIMEND and SECEND

This allows NT 4.0's Mystique drivers to work with busmastering enabled.
2023-12-19 02:18:08 +06:00
Miran Grča
394a62d880 Merge pull request #3901 from 86Box/tc1995
MGA fixes 2:
2023-12-18 13:57:54 +01:00
OBattler
c7f4e59e49 Restoring the old changes. 2023-12-18 13:57:33 +01:00
TC1995
718fb759af There, log excess disabled. 2023-12-18 13:47:23 +01:00
TC1995
f5642ab1c3 MGA fixes 2:
1. Reverted the packed chain4 and fb_only sides to 1 when extended mode is set, but with the call to svga_recalctimings removed from port 0x3df due to mode issues, this should fix all the MGA mode issues I know.
2. Cleaned up the rendering order in svga_recalctimings, especially 4bpp and 8bpp.
2023-12-18 13:42:32 +01:00
OBattler
80e5c4f5ac Temporarily reverted all the Matrox mode changes since they broke even standard SVGA modes. 2023-12-18 10:02:18 +01:00
TC1995
9573d37364 And warning fixes. 2023-12-18 00:41:51 +01:00
TC1995
c1ba150e3c Oops, they actually can mix together, but not with plain (non-packed) chain4 stuff enabled, should fix more mode issues in the MGA Millennium card. 2023-12-18 00:40:31 +01:00
TC1995
c62182cd2e MGA Fixes:
1. LFB access is now done properly through the right svga_read/write linear calls.
2. Lowres 8bpp mode and Packed/Extended 8bpp+ mode don't mix together, fixes Debian Woody matroxfb module when testing the modes while keeping other compatibility intact (basically enable packed stuff only when gdcreg5 bits 5-6 are 0 when extended mode is set).
3. Small cleanup in the line accel stuff.
2023-12-18 00:08:51 +01:00
RichardG867
4b402c22cd vid_mga: Implement DDC on the Millennium 2023-12-16 18:26:39 -03:00
GreaseMonkey
0848f4a38e Disable blink in 8bpp modes on MGA; Re-instate main 8bpp hires renderer
I don't actually know if 8bpp blink is a thing on a Matrox Millennium, but the video BIOS seems to act like it's not.
2023-12-17 08:46:12 +13:00
TC1995
d3fbd93848 Fixed warning in vid_mga.c. 2023-12-16 20:36:34 +01:00
TC1995
e4696aa2e9 Undev branch the Matrox Millennium since it is now mostly usable. 2023-12-16 20:17:55 +01:00
Jasmine Iwanek
506d548b38 More linting in src/video 2023-08-23 00:50:52 -04:00
OBattler
3462e563b8 Fixed the reversed PCI card add types in video/vid_mga.c. 2023-08-10 05:14:43 +02:00
Jasmine Iwanek
8d3f5b7b27 Fix a mistake found in vid_mga.c 2023-08-09 20:09:36 -04: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
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
Jasmine Iwanek
d1127e68fa Even more sonarlint work 2023-06-04 23:39:14 -04:00
Cacodemon345
03a578708c vid_mga: Make Matrox Millennium multi-monitor compatible 2023-03-07 22:03:04 +06:00
Jasmine Iwanek
610401de7a Yet more clang-formatting 2023-02-28 23:53:57 -05:00
Cacodemon345
85f38ef7c0 vid_mga: Fix opaque pattern blits 2023-02-17 17:24:04 +06:00
Cacodemon345
68ac52c190 vid_mga: Pattern drawing now works correctly on OS/2 2023-02-17 16:10:06 +06:00
Cacodemon345
104d21f806 vid_mga: Fix Matrox Mystique MGA modes
Clock selection now works properly
2023-01-12 14:00:10 +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
3fe4f75108 A bit more clang-format 2022-11-19 11:53:07 -05:00
Cacodemon345
9c775510df video: Make the rest of the FIFO variables atomic 2022-11-07 13:03:19 +06:00
Jasmine Iwanek
883e7c256a clang format in src/video (#2654) 2022-08-31 20:19:29 -03:00
David Hrdlička
e60af6c29d Clean up plat.h a bit 2022-04-20 01:03:39 +02:00
Jasmine Iwanek
d28cec126a src/video 2022-04-12 17:26:07 -04:00
Jasmine Iwanek
3b73ce330c src/video 2022-03-18 18:07:09 -04:00
Jasmine Iwanek
801f81fbda clean up device_config_t formatting 2022-02-26 23:31:28 -05:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
TC1995
012046bd89 Added the Matrox Millennium card to dev branch and its respective bitblt additions and ROM. 2022-02-03 20:08:46 +01:00
Jess Lovelace
f18615ae87 refactored device_t and all declarations 2022-02-02 16:31:22 -05:00
David Hrdlička
7381ab6928 Minor changes to threading
- Renamed `cpp11_thread.cpp` to `thread.cpp`
- Removed features that are only supported by Win32 threads (`thread_wait` with timeout and mutex with spinlock)
- Fixed formatting in `thread.cpp`
2021-12-17 19:59:25 +01: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
RichardG867
aed2b179ab Add DPMS support to Mystique 2021-04-13 15:26:12 -03:00
David Hrdlička
dfbbe08a07 rewrite the emulator to use UTF-8 internally 2021-03-30 09:46:49 +02:00
OBattler
cd0f344221 Video fixes and added the Tseng ET2000. 2021-02-18 21:55:39 +01:00
OBattler
6e233f4ac8 SDL renderer improvements and fixes and added SDL OpenGL option;
Various performance improvements;
Fixed USB UHCI HCHalt;
Cirrus Logic CL-GD 5422/24 fixes and removed them from the Dev branch;
The Storage controllers sections of Settings now has its own corresponding section of the configuration file;
Fixed the AT clock divisors for some Pentium OverDrive CPU's;
Added the ACPI RTC status (no ACPI RTC alarm event yet).
2020-11-26 18:20:24 +01:00