Commit Graph

53 Commits

Author SHA1 Message Date
Jasmine Iwanek
927c26f496 Fix some variant type comparisons 2023-05-02 02:18:17 -04: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
Jasmine Iwanek
fab1632cee Fixes almost all the logging options which were previously broken 2022-10-27 11:23:10 -04:00
Jasmine Iwanek
883e7c256a clang format in src/video (#2654) 2022-08-31 20:19:29 -03:00
Cacodemon345
8a3367ff6f Multi-monitor support (backend preparation part) 2022-07-03 01:18:23 +06:00
Jasmine Iwanek
d28cec126a src/video 2022-04-12 17:26:07 -04:00
Jasmine Iwanek
036f1ce74b src/video 2022-04-12 17:26:06 -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
OBattler
6f2b93923c A lot of fixes - everything now seems to work properly. 2022-02-03 03:10:06 +01:00
Jess Lovelace
f18615ae87 refactored device_t and all declarations 2022-02-02 16:31:22 -05:00
OBattler
b7f5d4a773 Video 7 fixes, fixes RAMDAC 6-bit/8-bit switching on the Radius SVGA MultiView. 2021-10-06 18:12:22 +02:00
TC1995
8572739a55 S3 changes part 8:
Properly fixed text/graphics mode of the S3 pre-ViRGE cards.
PIX TRANS cleanups.
Added a sanity check to banking, per bit 0 of CRTC31.
Initial implementation of Enhanced 4-bit mode.
911/924 chips use CRTC43 bit 3 for enabling 15/16bpp mode.
fb_only variable used correctly as of now (depending if on 4bit or 8bit+ modes).

S3 ViRGE changes part 2:
Made the Trio3D/2X AGP use the PCI_ADD_AGP part accordingly

RAMDAC changes:
Sierra 11483 and 11487 don't have an RS2 signal so the four times reading scheme of 0x3c6 is used instead, per documentation.
Fixed AT&T 49x bpp selection.

Other changes:
Fixed remaining rendering issues with the Radius SVGA HT209 card.
2021-10-05 22:24:26 +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
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
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
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
OBattler
dfb8c92557 More Video 7/Headland fixes. 2021-04-28 06:05:30 +02:00
TC1995
109427298e Minor fixes to the ht209 code. 2021-04-28 01:27:34 +02:00
TC1995
94daad1887 Add the HT209/D-based Radius SVGA Multiview card and its "quirks". 2021-04-27 23:54:33 +02:00
OBattler
4fb1c8e51f More Headland/Video 7 fixes. 2021-04-25 06:50:38 +02:00
OBattler
ca30709428 More HT-216 fixes. 2021-04-25 05:38:15 +02:00
OBattler
8a4faebd85 Various fixes to the Video 7 family of cards (including HT216-32). 2021-04-25 03:33:49 +02:00
David Hrdlička
dfbbe08a07 rewrite the emulator to use UTF-8 internally 2021-03-30 09:46:49 +02:00
OBattler
0e206a977e Added monitor type selection on the standalone HT-216 with BIOS auto-patching. 2021-03-27 04:39:45 +01:00
OBattler
b0e68f94a7 Removed the redundant case 0x3c2 from ht216_in(). 2021-03-27 03:35:12 +01:00
OBattler
586a72c2bb Fixed the Video 7/Headland hardware cursor with the Windows 3.1 drivers, and added the standalone HT216-32. 2021-03-26 23:06:42 +01:00
TC1995
37def45e0e More skew changes, fixed the missing pixels in hdisp in 24bpp mode as well as properly organized hdisp in other bpp modes.
Clear bit 7 of attr reg 0x10 in the v7 code otherwise it would scramble the colors in 8-bit graphics mode if issued.
2021-03-25 21:46:39 +01:00
TC1995
15b79fa0ac Reworked some stuff to make the ht216-32 640x400 8bpp mode working, alongside the 1024x768 mono driver as well as the standard VGA 320x200 8bpp mode. 2021-02-24 20:16:15 +01:00
OBattler
0dfdf7075c Merge branch 'master' of https://github.com/86Box/86Box 2021-02-18 21:55:54 +01:00
OBattler
cd0f344221 Video fixes and added the Tseng ET2000. 2021-02-18 21:55:39 +01:00
TC1995
fb167f6f98 Improved code style as well as fixed the video memory size on the ht216-32 (pb410a). 2021-02-18 19:07:57 +01:00
TC1995
ec8d46ae61 Fix memory size on the ht216 pb410a card. 2021-02-18 19:04:46 +01:00
TC1995
828a935e67 Fixed V7 HT216 mapping on OS/2 and implemented fast latch load to make sure there won't be corruption all over the place on Win3.0 RC2. 2021-02-18 19:02:32 +01:00
OBattler
fb015c3f76 Fixed the hardware cursor on divided-by-two clock modes. 2021-01-29 23:36:16 +01:00
TC1995
257890ed83 Fixed the solid foreground/background mode of the v7vga, makes the Windows 2.x/286 v7 1024i 4bpp drivers look correct.
Partial fix for the too wide Win3.0 built-in v7 8bpp drivers as well as cursor movement (v7 1024i only)
2021-01-29 23:09:10 +01:00
TC1995
b9664c83d6 Implemented masked writes to the v7vga code, fixes NT December 1991/July 1992 v7vga drivers in 1024x768 4bpp mode. 2021-01-27 16:41:41 +01:00
TC1995
e39709696e Experimental rework of the video 7 code (HT216). 2021-01-24 03:36:46 +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
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
3027422e88 PCI graphics cards now correctly use PCI timings instead of VLB timings. 2020-05-06 00:23:07 +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
Daniel Gurney
0c509fd551 Remove version tree-wide 2020-03-25 00:46:02 +02:00
OBattler
490c04fcae Current WIP code. 2020-02-29 19:12:23 +01:00
OBattler
e121515458 Fixed the Video 7 / HT-2xx code so that it compiles again. 2019-12-04 07:36:08 +01:00
OBattler
a495faec59 Direct3D in full-screen mode now transfers control of input to the full screen window, fixes #429;
Unified screenshot code and moved it to video.c, it is now independent of both renderer and platform;
The EGA/(S)VGA overscan now also works for CGA, PCjr, Tandy, and CGA-using Amstrads;
Fixed EGA/(S)VGA overscan operation so it works correctly with scrolling and panning;
Fixed 320x200x32K and 320x200x64K modes on the ET4000/W32p;
Fixed the Video 7 1024i chip ID and video memory options, fixes #431;
Fixed a banking bug in the S3 cards, fixes Windows 9x and NeoPaint.
2019-10-20 15:09:38 +02:00