Commit graph

193 commits

Author SHA1 Message Date
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
TomW
17cae8a2d7 Implemented 256kb wrapping on S3 cards. 2014-11-05 18:17:39 +00:00
TomW
6a72839c59 Enabled write to CRTC R7 bit 4 when protection is enabled - fixes scrolling on DOS/V 6.2. 2014-11-04 20:14:50 +00:00
TomW
e00e489d5a Fixed MMX PANDN instruction. 2014-10-08 20:43:36 +01:00
TomW
26152e6522 Updated version number to v9.
Updated documentation for next release.
2014-10-04 19:39:09 +01:00
TomW
dc7bf986d6 Fixed frequency control on ViRGE/DX 2014-10-04 17:51:51 +01:00
TomW
008c795834 Further fixes to IMUL flags. 2014-10-02 19:52:56 +01:00
TomW
b9d132a506 Fixed PC1640 video timings, fixes hang on startup. 2014-09-28 11:48:52 +01:00
TomW
b96dabbe98 Silence PC speaker output at very high frequencies - fixes Lemmings and other games that use high frequency as "speaker off". 2014-09-28 11:33:08 +01:00
TomW
7eacf1408a Implemented NMI mask register for XT machines.
Fixed PC200 NMI stuff.
2014-09-27 18:39:06 +01:00
TomW
8ce24651f1 Fixed incorrect flags on some versions of IMUL. 2014-09-27 12:13:46 +01:00
TomW
f6e6e6b4e3 Removed DEVICE_NOT_WORKING flag from ViRGE. 2014-09-22 19:28:42 +01:00
TomW
c1ca4ec29e ViRGE hardware cursor now supports X11 format cursors, and uses colour registers. 2014-09-20 18:00:54 +01:00
TomW
f98af7b525 Mach64 now identifies correctly as PCI when used with a PCI system. 2014-09-20 17:24:23 +01:00
TomW
ae7c3185c9 Restricted available range of attribute and sequencer registers on ViRGE, XFree86 now detects card correctly. 2014-09-18 21:14:15 +01:00
TomW
44743a4dfe Implemented RTC update interrupt, fixes hang on startup on RedHat Seawolf (and probably some other Linux distros) 2014-09-17 21:50:57 +01:00
TomW
052974fa76 Further tweaking to AT keyboard handler to fix stuck keys. 2014-09-15 15:07:48 +01:00
TomW
50ec7fde8d Add check for pthread in configure. Patch from kurumushi. 2014-09-14 21:40:46 +01:00
TomW
20581186b9 Fixed SGDT/SIDT on 286, Windows 3.0 detects CPU correctly again. 2014-09-05 21:40:21 +01:00
TomW
56b455844e Initial port to Linux (using Allegro).
64-bit fixes.
Some changes to aid portability.
A few other tweaks.
2014-09-04 21:07:24 +01:00
TomW
4b3f77c926 Fixed Z range on ViRGE S3D, fixes Grim Fandango. 2014-08-25 15:22:51 +01:00
TomW
4817a53619 Fixed terminal count on auto-init DMA. Fixed sound on All New World of Lemmings when using GUS. 2014-08-24 14:08:17 +01:00
TomW
66b9ccf1ab Added configuration load/save options. 2014-08-23 21:32:36 +01:00
TomW
262b188790 Implemented CR4 register for Winchip. Currently only Time Stamp Disable (TSD) has an effect.
Fixed stupid bug in WRMSR - MSRs can now be written with values other than zero.
2014-08-23 16:28:16 +01:00
TomW
63adb3a9ae Pause emulator before resetting emulator after changing CD-ROM type - fixes crash. 2014-08-22 19:58:17 +01:00
TomW
048d332949 Force CD-ROM TOC to be loaded on startup, booting from CD-ROM should be more reliable. 2014-08-21 20:44:18 +01:00
TomW
6fb56149f9 Fixed IDE transfers of 256 sectors, Windows 2000 now works. 2014-08-20 19:37:23 +01:00
TomW
7dfce428f2 Fixed keyboard in Windows NT. 2014-08-18 20:28:31 +01:00
TomW
18512b310f Disable keyboard input when main window out of focus - entry into dialogs no longer picked up by emulator.
Set RIDEV_NOHOTKEYS when registering raw input devices - Windows key and some other shortcuts no longer affect emulator.
2014-08-17 15:23:26 +01:00
TomW
1c9b6e45f3 Tweaked AT keyboard handler, fixes stuck/missing keys in Doom. 2014-08-16 21:19:02 +01:00
TomW
5b35d58c27 Fixed default selector in instruction following MOV SS instruction, fixes Windows 3.1 installer 2014-08-16 17:36:50 +01:00