Commit graph

367 commits

Author SHA1 Message Date
TomW
ea2898d045 Voodoo now always allocates 4MB for framebuffer memory, though only 2MB may be accessible. Fixes crash in Need For Speed III when using 800x600 (no Z-buffer) with 2MB of framebuffer memory configured. 2015-10-06 21:19:04 +01:00
TomW
9ed4cf8582 Voodoo floating point parameters are converted to fixed point on register write instead of on triangle command. Fixes health bar in Tomb Raider. 2015-10-06 21:07:24 +01:00
TomW
fba5891d95 Re-implemented FDC Read a Track command. King's Quest 1 booter works again. 2015-10-04 17:52:38 +01:00
TomW
e34daca27d Removed bad Num Lock handling code. 2015-10-04 11:36:49 +01:00
TomW
5e08d53c73 Voodoo texture processing now dependent on texturing being enabled in fbzColorPath. Fixes transparency issues in Tomb Raider, might cause speedup in games that use non-textured triangles. 2015-10-04 11:33:13 +01:00
TomW
5a1f5769e2 Cancel FDC ready state change reports from reset on submission of recalibrate command. Phoenix XT clone now boots from floppy. 2015-10-02 21:51:28 +01:00
TomW
b466ad9f42 Starting Sound Blaster DMA now clears pause status.
Implemented dummy ASP/CSP upload command (DSP command 0x01).
Fixes issues with SB16/AWE32 drivers in Windows 3.x.
2015-10-01 21:41:25 +01:00
TomW
9bcd23c614 Corrected MSF->LBA conversion for CD audio. 2015-10-01 20:15:44 +01:00
TomW
60d75012df Implement ATAPI Stop Play/Scan command.
Stop CD audio playback on IDE reset, ATAPI reset, and hard reset.
2015-09-30 20:45:47 +01:00
TomW
33685c3318 More changes to FPU nearest rounding, Unreal works again. 2015-09-28 20:33:36 +01:00
TomW
3e314ccdfb Implemented ViRGE 2D Polygon Fill command.
Improvements to ViRGE line draw.
2015-09-26 17:56:55 +01:00
TomW
299f6c8dfb Nearest FPU rounding mode now handles negative numbers correctly. Fixes Retro City Rampage 486. 2015-09-26 17:54:25 +01:00
TomW
986476b9db FPU rounding modes now have effect in FADD double precision. Fixes rendering in Interstate '76. 2015-09-21 21:54:43 +01:00
TomW
ea13ae015b Added FPREM1 instruction for Interstate '76. 2015-09-21 08:14:53 +01:00
TomW
99060248b2 First FDC Sense Interrupt Status command after post-reset ready state change results is now zero. Fixes Grey Cat Linux. 2015-09-19 19:01:32 +01:00
TomW
8d3c6fb195 Implemented VGA attribute enable bit in attribute index - VGA grabber in Windows 3.x now works properly. 2015-09-18 20:42:37 +01:00
TomW
38d9b45177 Clear PIC interrupt service registers on writing ICW1. 2015-09-16 20:44:34 +01:00
TomW
1554c9929a Fixed display size on ViRGE. 2015-09-16 20:01:47 +01:00
TomW
1e45ba5f34 Removed a bunch of old #defines. Cleaned up some dead code. 2015-09-16 19:08:50 +01:00
TomW
6b82be0624 Tweaks to PIT latch operation - Juko XT now boots again. 2015-09-15 21:53:45 +01:00
TomW
cedad6dba0 Re-ordered ROM set enum - recently added XT clones now actually act as XTs. 2015-09-15 21:52:31 +01:00
TomW
46ca59f2a6 Fixed race condition in Voodoo FIFO thread. 2015-09-15 20:15:24 +01:00
TomW
77cc248147 Implemented Voodoo performance counters. 2015-09-13 12:10:44 +01:00
TomW
1e4c58fee8 Implemented Voodoo vertical retrace status bit. 2015-09-13 11:42:12 +01:00
TomW
2e6a5c3f90 ViRGE display height when stream processor enabled now clipped to CRTC display height. 2015-09-13 11:06:16 +01:00
TomW
133c9d389a MMX 64-bit MOV instructions now handle faults correctly. 2015-09-12 18:57:38 +01:00
TomW
05d9cc34a8 FDC track number is incremented when hitting end of track when operation is not multi-track. Fixes BasicLinux. 2015-09-12 16:45:20 +01:00
TomW
5260f5f5cd PIC clears pending flag when acknowledging interrupt.
PIT latch mode works correctly.
Fixes 'High Performance PC' mode in Lemmings.
2015-09-12 14:57:14 +01:00
TomW
276650c145 Timers now always processed in correct order. Fixes sound in Lion King and probably some other timing related issues. 2015-09-12 14:54:40 +01:00
TomW
390c5e2999 S3 ViRGE 256kb RAM mask now only applied in VGA mode. 2015-09-10 21:10:50 +01:00
TomW
8206a2ea0b IDE reset now resets both devices on the affected channel.
IDE reset now works when only slave device is present.
ATAPI signature now set on IDE reset.
2015-09-10 20:40:45 +01:00
TomW
4c8e892872 Windows x86 32-bit recompiler should now work with DEP enabled. 2015-09-03 18:35:58 +01:00
TomW
096f498be3 Fullscreen mouse pointer workaround now only applied when the PCem window is in focus. 2015-09-01 21:15:04 +01:00
TomW
4a279b8452 Fixed Mach64 32-bit mode. 2015-09-01 20:05:28 +01:00
TomW
2efc56e882 Reset triggered by keyboard controller should now be handled correctly by dynamic recompiler. 2015-08-31 19:31:23 +01:00
TomW
2323962168 Workarounds for mouse pointer issues when entering/exiting fullscreen. Patch from ecksemmess. 2015-08-31 12:40:25 +01:00
TomW
5ac8fd496a Fixed bug preventing FXAM from clearing C1 flag - fixes bugs in Half-Life, Final Fantasy VII, DEU and probably others. 2015-08-29 14:41:32 +01:00
TomW
f90c4053c4 Nested Task flag is cleared on JMP to task gate. Fixes GO32. 2015-08-29 10:57:15 +01:00
TomW
115e829480 AWE32 onboard RAM size now configurable.
Also fixed a memory leak in the EMU8000.
2015-08-27 20:39:38 +01:00
TomW
e7695122b2 Expanded MODEL cpu array to 4 entries. 2015-08-27 19:20:34 +01:00
TomW
91eaa9c83b Writing PIT control byte with mode 0 resets PIT output. Fixes 103 error on PS/1. 2015-08-26 20:34:05 +01:00
TomW
5005e43b80 FDC sector number is always reset when hitting end of track, regardless of whether operation is multi-track or not. Fixes floppy disc on Windows 2000. 2015-08-26 20:32:39 +01:00
TomW
b53c7d32f9 Added dummy RDPMC implementation. 2015-08-25 19:32:15 +01:00
TomW
e6bd0093bd Masked off drive select. 2015-08-25 19:20:57 +01:00
TomW
4e9ee6e927 Can now select to emulate 1.2MB 5.25" disc drive, with double stepping. 2015-08-24 21:09:35 +01:00
TomW
9fe79c1827 Fixed drive select for disc poll function. 2015-08-24 20:47:48 +01:00
TomW
25286c8f0b Windows MIDI out device now selectable. 2015-08-23 20:59:15 +01:00
TomW
8b572111da CD audio processing now performed on a dedicated thread.
Sound Blaster mixer now affect CD volume.
2015-08-23 15:35:37 +01:00
TomW
df2a1bfe07 Out of bounds sectors on .img disc images now cause sector not found errors. 2015-08-22 19:00:38 +01:00
TomW
5b1e7aece0 Added simulation of PCI access timing to Voodoo. 2015-08-22 17:03:37 +01:00