TomW
1fb4de4507
Dynamic recompiler now works on Linux (32-bit only)
2015-04-11 18:31:51 +01:00
TomW
6caeca2c7c
Tweaks to generated code, should reduce size slightly.
2015-04-11 16:06:50 +01:00
TomW
feaf399a2d
Cache setting now handled correctly on startup.
2015-04-07 18:06:03 +01:00
TomW
644d17fc7f
Fixed bug which ejected discs on hard reset.
2015-04-02 19:54:47 +01:00
TomW
1098b1f870
Fixed stupid typo which broke hard reset with dynamic recompiler.
2015-04-01 19:38:22 +01:00
TomW
a97e89e857
Added code generation for register and immediate PUSH/POP, RET, relative CALL and JMP instructions.
2015-03-30 20:42:33 +01:00
TomW
42155b4c6a
Added correct Voodoo dithering.
2015-03-23 21:03:42 +00:00
TomW
d6908a5450
Slight bugfix to Voodoo subpixel correction.
2015-03-22 13:56:03 +00:00
TomW
95dd53e4d7
Implement more faithful Voodoo PCI FIFO emulation - slight slowdown, but fixes issues with Unreal and probably other games.
2015-03-21 20:41:12 +00:00
TomW
883ad5da23
Fixed Voodoo swap count when vsync disabled. Quake III now works.
2015-03-21 11:31:53 +00:00
TomW
a8159f8c09
Various changes to FDC emulation.
...
Support for multiple disc image formats.
Added preliminary FDI support.
2015-03-19 21:33:19 +00:00
TomW
37fe4a56be
Fixed missing return value in sis496_init()
2015-03-19 21:08:31 +00:00
TomW
80add6415c
Added TLB miss penalties.
2015-03-09 20:31:17 +00:00
TomW
faec4da733
All CALL/RET/JMP/IRET/INT instruction cycles should now be counted in recompiler.
2015-03-09 19:54:02 +00:00
TomW
708cf896d1
Added usable 3DFX emulation.
2015-03-08 15:55:03 +00:00
TomW
c11a771530
Fixed crashes in fastread*()
2015-02-16 20:00:16 +00:00
TomW
4ebd447e89
Fixed carry flag in DAA/DAS.
2015-02-13 21:06:54 +00:00
TomW
c7b6fde58c
Added code generation for memory source versions of AND, OR, XOR and TEST (that was intended for rev 199).
2015-02-09 21:21:48 +00:00
TomW
d6c177a3c0
DMA now causes page dirty mask to be updated.
2015-02-09 18:26:59 +00:00
TomW
68df72958c
MOV EAX/AX/AL with immediate address now has correct PC when aborting.
2015-02-09 18:09:46 +00:00
TomW
d1422eee39
Fixed loaded CPL on interrupt, Coherent now works.
2015-02-09 15:37:09 +00:00
TomW
ac9b5a9927
Fixed missing CD audio.
2015-02-09 12:33:52 +00:00
TomW
bc5ce43519
Memory-source arithmetic instructions now have correct PC when aborting. Fixes Discworld 2.
...
Removed some debug junk from last commit.
2015-02-09 12:17:54 +00:00
TomW
ba715706b6
Added code generation for memory versions of MOV, and memory source versions of ADD, SUB, AND, OR, XOR and CMP.
2015-02-08 17:17:14 +00:00
TomW
7a7f586cd3
64-bit fixes.
2015-02-03 18:47:16 +00:00
TomW
47db0646c1
Fixed typo in x87 opcode tables.
2015-02-03 18:42:09 +00:00
TomW
ea5e96569d
Lazy flags code now handles carry flag.
2015-02-02 19:54:01 +00:00
TomW
b4592cdea3
Implemented new memory mapping to improve performance of self modifying code.
...
New scheme allows code blocks to cross pages.
Reduced code block size down to 2kB.
2015-01-28 21:58:02 +00:00
TomW
798c24d7c4
Fixed flag on recompiled 8-bit SUB reg,imm - Windows 95 setup works again
2015-01-26 21:58:14 +00:00
TomW
f38e2be43f
Implemented trap flag on dynamic recompiler.
2015-01-18 17:13:49 +00:00
TomW
95640bb4bb
SGDT now stores all 32 bits of the base address, even in 16-bit mode. Fixes Win32s.
2015-01-18 15:36:30 +00:00
TomW
17ee2a7d9e
FLAGS bit 15 now always clear on 386+ CPUs. Fixes HX DOS extender CPU type test.
2015-01-18 14:50:55 +00:00
TomW
19c318675a
FCOM/FUCOM now use inline assembler on x86 targets. Unreal now works.
2015-01-17 22:06:32 +00:00
TomW
630592125c
Added code generation for immediate->register and register versions of MOV, XCHG, ADD, SUB, AND, OR, XOR, TEST, CMP, INC and DEC.
2015-01-16 21:22:14 +00:00
TomW
00f6271ec8
Recompiled code blocks are no longer allowed to cross pages.
...
Recompiling of blocks is aborted if the code page becomes dirty.
Fixes Windows 98 setup.
2014-12-06 16:35:45 +00:00
TomW
4855071ead
Effective address calculations now implemented by recompiled code. Up to 30% performance gain seen.
2014-11-30 17:48:10 +00:00
TomW
436c5b8cc2
Added Pentium Overdrive support. Patch from nerd73.
2014-11-24 18:23:03 +00:00
TomW
8ceb92db82
Fixed Linux build broken by last commit.
2014-11-23 20:53:53 +00:00
TomW
84ac04d2df
Added Intel Premiere/PCI (Batman's Revenge) and Advanced/EV (Endeavor) motherboards.
...
Added emulation of i430LX and i430FX chipsets.
Added support for PCI configuration type 2, used by i430LX.
Added AT disable keyboard command, and fixed enable keyboard command.
Added emulation of Intel 28F001BXT flash ROM, used by Advanced/EV.
Fixed a bug in REP when using multiple 66/67 prefixes.
2014-11-23 20:27:41 +00:00
TomW
55b51a4a55
Implemented segment limit checks on FSTP double - fixes LBA2 on Pentium.
2014-11-19 18:12:42 +00:00
TomW
ca67e8adba
Changed data ordering in S3 acceleration in 32bpp modes, fixes display with some drivers. Patch from Battler.
2014-11-18 19:25:06 +00:00
TomW
2be271d050
Added menu option to send CTRL-ALT-DELETE to emulated machine. Patch from GeeDee.
2014-11-18 18:38:12 +00:00
TomW
13226a2bd4
Added Pentium and Pentium MMX emulation.
2014-11-17 20:41:02 +00:00
TomW
aecf865c2c
Re-added FCOMPP 80387 detection hack accidentally removed in FPU reorganisation.
2014-11-17 20:23:29 +00:00
TomW
d13caf1b8a
HLT now reduces CPU usage in recompiler.
2014-11-16 15:09:27 +00:00
TomW
ac01998c1e
LOCK prefix on recompiler no longer causes following instruction to be executed twice - fixes Windows 2000.
2014-11-16 15:01:31 +00:00
TomW
2905c43db8
Cycle counts for recompiled blocks now generated at compile time.
2014-11-12 19:33:49 +00:00
TomW
087f412d3f
Reorganised FPU emulation.
2014-11-09 14:07:03 +00:00
TomW
0aa0887c58
Interpreter is default build.
2014-11-05 21:27:56 +00:00
TomW
4676daade4
Initial commit of dynamic recompiler.
...
Various CPU changes to support dynamic recompiler.
2014-11-05 21:24:16 +00:00