Commit Graph

62 Commits

Author SHA1 Message Date
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
RichardG867
64249d50a3 I2C overhaul part 7: S3 Trio and Cirrus Logic 2020-11-25 00:16:42 -03:00
RichardG867
d6b1d2c63a I2C overhaul part 5: late, but there's still stuff to do 2020-11-23 14:49:49 -03:00
OBattler
0faf6692c9 WARNING: CONFIGS MIGHT PARTIALLY BREAK WHERE DEVICE NAMES HAVE CHANGED.
Changes to device_t struct to accomodate the upcoming PCI IRQ arbitration rewrite;
Added device.c/h API to obtain name from the device_t struct;
Significant changes to win/win_settings.c to clean up the code a bit and fix bugs;
Ported all the CPU and AudioPCI commits from PCem;
Added an API call to allow ACPI soft power off to gracefully stop the emulator;
Removed the Siemens PCD-2L from the Dev branch because it now works;
Removed the Socket 5 HP Vectra from the Dev branch because it now works;
Fixed the Compaq Presario and the Micronics Spitfire;
Give the IBM PC330 its own list of 486 CPU so it can have DX2's with CPUID 0x470;
SMM fixes;
Rewrote the SYSENTER, SYSEXIT, SYSCALL, and SYSRET instructions;
Changed IDE reset period to match the specification, fixes #929;
The keyboard input and output ports are now forced in front of the queue when read, fixes a number of bugs, including the AMI Apollo hanging on soft reset;
Added the Intel AN430TX but Dev branched because it does not work;
The network code no longer drops packets if the emulated network card has failed to receive them (eg. when the buffer is full);
Changes to PCI card adding and renamed some PCI slot types, also added proper AGP bridge slot types;
USB UHCI emulation is no longer a stub (still doesn't fully work, but at least Windows XP chk with Debug no longer ASSERT's on it);
Fixed NVR on the the SMC FDC37C932QF and APM variants;
A number of fixes to Intel 4x0 chipsets, including fixing every register of the 440LX and 440EX;
Some ACPI changes.
2020-11-16 00:01:21 +01:00
OBattler
6b884112fa The Matrox code now actually uses the DMA bus master API instead of directly accessing the RAM array. 2020-06-07 07:21:27 +02:00
OBattler
3027422e88 PCI graphics cards now correctly use PCI timings instead of VLB timings. 2020-05-06 00:23:07 +02:00
David Hrdlička
2a5382a97b Remove mutex names, fixes #722
Named mutexes are used for inter-process synchronization, using them to synchronize threads of a single process is just begging for trouble when running multiple instances of the application.
2020-04-27 13:24:43 +02:00
TC1995
77140b874a Ported the latest Win9x MGA fix from PCem. 2020-04-01 00:40:29 +02:00
TC1995
e9710d4b25 Ported the latest Matrox MGA fixes from PCem.
Removed useless header.
2020-03-31 00:33:49 +02:00
David Hrdlička
a505894a10 Move all include files to src/include
- 86Box's own headers go to /86box
- munt's public interface goes to /mt32emu
- all slirp headers go to /slirp (might want to consider using only its public inteface)
- single file headers from other projects go in include root
2020-03-29 19:53:29 +02:00