Commit Graph

1845 Commits

Author SHA1 Message Date
OBattler
2947e0fd89 Fix a build failure on NetBSD. 2024-11-20 01:32:05 +01:00
TC1995
afe95cd20c Video changes of the day (November 13th, 2024)
1. Finally add the ATI 8514/A Ultra add-on BIOS in both ISA and MCA variants (despite the ROM page failure on POST).
2. Fixed a mode switch bug in the Mach8 (both add-on and vga combo) when exiting the Win3.x GUI using the native drivers.
3. Corrected (best possible) the eeprom load of the Mach8 products.
4. Partial implementation of the FIFO on the 8514/A compatible products including Mach8/32 and plain IBM 8514/A.
2024-11-13 22:55:16 +01:00
TC1995
12a57ffeac Changes to 8514/A compatible stuff (November 2nd, 2024)
1. vga_on global variable removed, as it didn't play well with 2 subsystems at once (8514/A and XGA both enabled).
2. Emulate the Foreground/Background Color aliases of PIX_TRANS properly when not executing a command.
3. Voodoo 3D override now works properly (again) with Mach32 PCI cards and others by turning the 8514/A timer off and on accordingly.
2024-11-02 20:50:06 +01:00
RichardG867
7b786a98fa scsi_disk: Report image read/write errors 2024-10-29 12:13:04 -03:00
RichardG867
416125390b hdd_image: Add framework for reporting I/O errors, and stop removing drives with locked images 2024-10-29 11:41:59 -03:00
TC1995
4f472445f2 Video and emulator GUI changes of the day (October 28th, 2024)
IBM 8514/A (MCA/ISA).
Added a configure button to the QT frontend for the amount of memory used by said add-on chips.

XGA:
Forgot a change about the 4mb aperture.
2024-10-28 22:14:58 +01:00
TC1995
8a7e0ea547 Small but important video changes of the day (October 27th, 2024)
8514/A compatibles:
1. The mode switch (from VGA to 8514/A/ATI and vice-versa) has been fixed again (for the Nth time).
2. Removed a pattern hack used on DPCONFIG = 0x5211 on bitblt, now patterns work properly using the ATI Mach8 3.0 win3.1x drivers.
3. Clipping regs are more accurate for acceleration.

XGA 1-2:
A picky OS is a picky OS, fixes to the Win95 fonts (which uses the pattern sources) applied.
2024-10-27 23:36:11 +01:00
RichardG867
aeaaa09b16 CD-ROM: Report image backend I/O errors as media CRC errors to the drive 2024-10-27 13:17:55 -03:00
TC1995
9c111584b5 Big video changes of the day (October 26th, 2024)
8514/A/Mach8/32:
Reworked the acceleration a bit as well as the mode switches from VGA to ATI/8514/A mode and viceversa based on the documentation. Fixes the Linux GUI fonts using the Mach32 driver (possibly Mach8 too) and other anomalies (still needs more work on the acceleration though).

PVGA:
Minor fixes to the banking.

S3-based (Pre-ViRGE):
1. Made the chip class use its own banking so that the Enhanced Mode mapping (equivalent to 64K-based A0000) is taken into account (per bit 3 of CRTC31, which forces the mapping to be 64K A0000, regardless of the GDCREG6 bits). Fixes NT 3.1 347.1's S3 driver.
2. Initial rework on 15bpp/16bpp accelerated mode of the 911/924 chips (currently not 100% bug free, I need help with this chips).

XGA-1/2:
Get rid of the linear endian reverse variable hack used by OS/2 and, instead, use the already declared ones more wisely, fixes OS/2 2.1 reversed fonts and keeps everything else working as it should.

Misc:
Added the BT481 RAMDAC for future card use.
2024-10-26 21:32:47 +02:00
TC1995
f102fee497 Major video changes of the day (October 3rd, 2024)
8514/A changes:
1. Correct interlaced display resolution.
2. Added a limit to cursor coordinates.
3. Test/WIP features of the add-on Mach8 side (ATI 8514/A Ultra) such as configurable BIOS.
4. Made the CMD 5 of the acceleration (Polygon Boundary) more accurate per manual (as much as I could regarding the clipping).

Cirrus related:
1. Added SUBSYS PCI vendor/device ID of the 5480 (per manual).

IBM VGA:
1. Built-in/option rom-less VGA don't need the "available" flag.

ATI Mach8/32:
1. As with 8514/A, corrected interlaced display.

XGA-1/-2:
1. Moved the XGA R/W memory size tests out of the SVGA R/W routines to reflect the per card basis, although anything that uses its own SVGA mapping would call the tests there (such as Cirrus, Headland and ATI) when not accessing the LFB. This finally puts an end to the XGA MCA mapping enabling bugs.
2. Re-organized the ISA standalone and non-standalone (INMOS) sides of the chips so that they work properly and remove the FILE rom loading hack from init.
3. The Memory Mapped R/W sides now account for instance in their address range.
4. INMOS only: prevent any ROM address access to anything lower than 0xc8000 to not conflict with the main BIOS rom loading.
5. Fixed native pitch by using the correct register, this fixes non 1024x768 resolutions under NT.
6. More logs when enabled to see any future bugs.
2024-10-03 14:56:23 +02:00
OBattler
9ff72338d1 Voodoo: Attempt to implement the 16bpp + depth combined writes. 2024-09-28 13:33:43 +02:00
OBattler
d6a01a102b CGA and Tandy 1000 HX/SX: Properly implement the light pen strobe. Jungle Hunt's palette changed area still moves, that's a PIT bug, I'm going to look into that again in 5.0 when I go back to porting 808x etc. from MartyPC. 2024-09-25 14:13:00 +02:00
OBattler
7068655343 CD-ROM: Implement not ready to ready transition in a cleaner and better way, fixes #4805. 2024-09-18 08:01:38 +02:00
TC1995
cb6286a1de Add a proper 1MB capable ATI 28800-6 BIOS
The ATI VGA Wonder 1024D XL Plus.
2024-09-15 19:48:58 +02:00
TC1995
f4303dfce2 XGA changes of the day (September 5th, 2024)
Don't overwrite the VGA DAC mask in XGA mode, instead, using dedicated variables for it.
2024-09-05 01:06:34 +02:00
OBattler
7b6e5e5ad9 Implements the second CMDFIFO2 queue for Voodoo 3, fixing BeOS's Voodoo 3/Banshee drivers, fixes #4794. 2024-09-04 15:22:24 +02:00
OBattler
91cf90c63a Olivetti M19's video adapter has control register on port 3DBh instead of 3DEh, fixes #4739. 2024-08-30 07:52:55 +02:00
OBattler
db94601573 Voodoo 3/Banshee: Implement XRGB8888 LFB format, fixes POD. 2024-08-30 05:22:33 +02:00
OBattler
f19a5447be Improved the SCO Xenix fix, fixes OS/2 booting, fixes #4762. 2024-08-29 01:26:32 +02:00
OBattler
c0037eaa2f Media history implementation for the remaining devices: Part 1. 2024-08-27 03:15:54 +02:00
Miran Grča
d67d86d266 Merge pull request #4723 from MaxwellS04/mirocrystal_3d
Add miroCRYSTAL 3D video card
2024-08-26 06:38:22 +02:00
OBattler
cdd01eceea QT: Restore RichardG's hard reset workaround. 2024-08-24 04:24:06 +02:00
OBattler
f9e457f3e8 Give the AP440FX the original ViRGE instead, fixes #4740. 2024-08-22 04:59:51 +02:00
MaxwellS04
ab71f9d3e2 Added the miroCRYSTAL 3D, based on a S3 ViRGE. 2024-08-16 20:36:26 +07:00
TC1995
5247214061 Video changes of the day (August 12th, 2024, S3/TGUI/SVGA))
SVGA: Added an indicator of the internal line to make matters easier for some vertical resolution problems.
TGUI 9400CXi: Fixed the basic acceleration as much as I could.
TGUI 9440AGi+: As with the line indicator, make matters easier for some resolution problems plus some refactoring of the bpp. Added write protection to some regs based on some documentation on the vt8601.
TGUI cursor: fixed the left edge of the cursor X offset.
S3: Apply the vblankstart = dispend statement only on enhanced modes, fixes vertical display on The Incredible Machine for DOS.
Commented out some excess logs.
2024-08-12 19:52:52 +02:00
Jasmine Iwanek
719efd3aa4 More DEV_BRANCH related cleaning 2024-08-09 21:46:37 -04:00
Jasmine Iwanek
892f066ffa Don't depend on DEV_BRANCH
Allows things to be compiled independently
2024-08-08 20:25:03 -04:00
Jasmine Iwanek
0219547a16 Put Wacom tablets on dev branch 2024-08-08 19:31:49 -04:00
OBattler
b172df6498 Fix SN76489 behavior and make the Tandy 1000 SX use the NCR sound chip instead (as some revisions of it shipped with that), fixes #4700. 2024-08-08 18:56:05 +02:00
OBattler
37ceea4ed0 Fix emulator-handled UI keyboard combinations when keyboard requires capture and is not captured, also fix keyboard input in full screen in such situations, fixes #4697. 2024-08-07 06:11:50 +02:00
Jasmine Iwanek
837c16f546 Less magic numbers in PIT code 2024-08-06 20:12:18 -04:00
Jasmine Iwanek
834bcd09c1 Tidy up tandy 1000 SX 2024-08-06 20:12:18 -04:00
TC1995
885a92ae62 AMD/DC390 SCSI fixes of the day (August 4th, 2024)
Ported the latest changes/fixes to the above controller from QEMU and added a bios-less AMD Am53c974 device (non-DC390).
The latest changes fix the AMD-branded DOS ASPI drivers on both cards (even without bios).
2024-08-04 22:28:39 +02:00
OBattler
6979b6a6c0 Assorted MIDI and MPU-401 intelligent mode fixes, fixes #4419. 2024-08-04 05:13:24 +02:00
OBattler
4ae901c901 Genoa Unknown 486: Port 92h controls the exact same gate as the KBC, fixes #4660. 2024-07-28 02:26:43 +02:00
OBattler
760c720352 Assorted FDC and PCjr video fixes, fixes #4659. 2024-07-28 01:00:58 +02:00
Jos van Mourik
04a7a35f27 Microtouch: add option to turn off visible mouse crosshair for people using touchscreens 2024-07-26 20:12:10 +02:00
OBattler
e377e58881 Assorted fixes and Dev branched the Matrox G100 and the PCL printer. 2024-07-26 00:39:11 +02:00
Jasmine Iwanek
81ae79c3ca Remove dead code in scsi_ncr5380.h 2024-07-24 13:11:41 -04:00
Miran Grča
79bf0b94b3 Merge pull request #4643 from Cacodemon345/libsndfile
Libsndfile
2024-07-23 19:21:54 +02:00
OBattler
59c743ed07 Implement ESS activity flags and improve the timed IRQ triggering via SB DSP commands F2 and F3, fixes ESSCFG 2.01C and the LBA 2 ES(1)688 driver. 2024-07-23 03:26:10 +02:00
OBattler
8225f270f3 Fix the generation of instantiated NVR paths, fixes #4642. 2024-07-22 19:24:15 +02:00
OBattler
95894198bf Genoa Unknown 486: Reset BIOS memory state on soft reset, fixes hangs on soft reset after saving CMOS Setup. 2024-07-22 18:26:10 +02:00
OBattler
91874e231a The monster FDC ROM is now optionally writable (also finally made the SCSI NVR's per-instance), closes #4623. 2024-07-22 03:19:40 +02:00
OBattler
3ccca3991f More moving of SB IRQ's onto a rimer, fixes #1942. 2024-07-22 02:43:24 +02:00
OBattler
fd00bcca8b Backported the kbc_at_set_ps2() function required by the VL82c113. 2024-07-22 00:12:12 +02:00
OBattler
fc714e7270 Backported the VLSI 82c113 Super I/O chip from my branch because of two machines we already had that require it. 2024-07-22 00:07:39 +02:00
Miran Grča
72527a61ee Merge pull request #4325 from izne/pravetz16s
Adding Pravetz-16S definition
2024-07-21 23:46:43 +02:00
rilysh
189be035d2 Mark plat_vidapi() argument as const and remove the NULL
* plat_vidapi() accepts char pointer, which never gets modifed
later on. Mark it as const.

* In src/config.c, va_name is initialized as NULL, however,
plat_vidapi_name() never returns a NULL pointer, nor it was
initialized under a condition branch. Removing NULL, might
save one instruction, which requires zeroing the register
before setting its initial value.
2024-07-21 12:49:06 +05:30
OBattler
1205392e4f Wells AT, DataExpert 386WB, Genoa Unknown 486, Gigabyte GA-486L, Alaris Cougar, and updates to CMakeLists.txt and chipset.h. to finally include opti391.c and opti499.c. 2024-07-21 06:09:03 +02:00