Commit graph

  • 8ceb92db82 Fixed Linux build broken by last commit. TomW 2014-11-23 20:53:53 +00:00
  • 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. TomW 2014-11-23 20:27:41 +00:00
  • 55b51a4a55 Implemented segment limit checks on FSTP double - fixes LBA2 on Pentium. TomW 2014-11-19 18:12:42 +00:00
  • ca67e8adba Changed data ordering in S3 acceleration in 32bpp modes, fixes display with some drivers. Patch from Battler. TomW 2014-11-18 19:25:06 +00:00
  • 2be271d050 Added menu option to send CTRL-ALT-DELETE to emulated machine. Patch from GeeDee. TomW 2014-11-18 18:38:12 +00:00
  • 13226a2bd4 Added Pentium and Pentium MMX emulation. TomW 2014-11-17 20:41:02 +00:00
  • aecf865c2c Re-added FCOMPP 80387 detection hack accidentally removed in FPU reorganisation. TomW 2014-11-17 20:23:29 +00:00
  • d13caf1b8a HLT now reduces CPU usage in recompiler. TomW 2014-11-16 15:09:27 +00:00
  • ac01998c1e LOCK prefix on recompiler no longer causes following instruction to be executed twice - fixes Windows 2000. TomW 2014-11-16 15:01:31 +00:00
  • 2905c43db8 Cycle counts for recompiled blocks now generated at compile time. TomW 2014-11-12 19:33:49 +00:00
  • 087f412d3f Reorganised FPU emulation. TomW 2014-11-09 14:07:03 +00:00
  • 0aa0887c58 Interpreter is default build. TomW 2014-11-05 21:27:56 +00:00
  • 4676daade4 Initial commit of dynamic recompiler. Various CPU changes to support dynamic recompiler. TomW 2014-11-05 21:24:16 +00:00
  • 17cae8a2d7 Implemented 256kb wrapping on S3 cards. TomW 2014-11-05 18:17:39 +00:00
  • 6a72839c59 Enabled write to CRTC R7 bit 4 when protection is enabled - fixes scrolling on DOS/V 6.2. TomW 2014-11-04 20:14:50 +00:00
  • e00e489d5a Fixed MMX PANDN instruction. TomW 2014-10-08 20:43:36 +01:00
  • 26152e6522 Updated version number to v9. Updated documentation for next release. TomW 2014-10-04 19:39:09 +01:00
  • dc7bf986d6 Fixed frequency control on ViRGE/DX TomW 2014-10-04 17:51:51 +01:00
  • 008c795834 Further fixes to IMUL flags. TomW 2014-10-02 19:52:56 +01:00
  • b9d132a506 Fixed PC1640 video timings, fixes hang on startup. TomW 2014-09-28 11:48:52 +01:00
  • b96dabbe98 Silence PC speaker output at very high frequencies - fixes Lemmings and other games that use high frequency as "speaker off". TomW 2014-09-28 11:33:08 +01:00
  • 7eacf1408a Implemented NMI mask register for XT machines. Fixed PC200 NMI stuff. TomW 2014-09-27 18:39:06 +01:00
  • 8ce24651f1 Fixed incorrect flags on some versions of IMUL. TomW 2014-09-27 12:13:46 +01:00
  • f6e6e6b4e3 Removed DEVICE_NOT_WORKING flag from ViRGE. TomW 2014-09-22 19:28:42 +01:00
  • c1ca4ec29e ViRGE hardware cursor now supports X11 format cursors, and uses colour registers. TomW 2014-09-20 18:00:54 +01:00
  • f98af7b525 Mach64 now identifies correctly as PCI when used with a PCI system. TomW 2014-09-20 17:24:23 +01:00
  • ae7c3185c9 Restricted available range of attribute and sequencer registers on ViRGE, XFree86 now detects card correctly. TomW 2014-09-18 21:14:15 +01:00
  • 44743a4dfe Implemented RTC update interrupt, fixes hang on startup on RedHat Seawolf (and probably some other Linux distros) TomW 2014-09-17 21:50:57 +01:00
  • 052974fa76 Further tweaking to AT keyboard handler to fix stuck keys. TomW 2014-09-15 15:07:48 +01:00
  • 50ec7fde8d Add check for pthread in configure. Patch from kurumushi. TomW 2014-09-14 21:40:46 +01:00
  • 20581186b9 Fixed SGDT/SIDT on 286, Windows 3.0 detects CPU correctly again. TomW 2014-09-05 21:40:21 +01:00
  • 56b455844e Initial port to Linux (using Allegro). 64-bit fixes. Some changes to aid portability. A few other tweaks. TomW 2014-09-04 21:07:24 +01:00
  • 4b3f77c926 Fixed Z range on ViRGE S3D, fixes Grim Fandango. TomW 2014-08-25 15:22:51 +01:00
  • 4817a53619 Fixed terminal count on auto-init DMA. Fixed sound on All New World of Lemmings when using GUS. TomW 2014-08-24 14:08:17 +01:00
  • 66b9ccf1ab Added configuration load/save options. TomW 2014-08-23 21:32:36 +01:00
  • 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. TomW 2014-08-23 16:28:16 +01:00
  • 63adb3a9ae Pause emulator before resetting emulator after changing CD-ROM type - fixes crash. TomW 2014-08-22 19:58:17 +01:00
  • 048d332949 Force CD-ROM TOC to be loaded on startup, booting from CD-ROM should be more reliable. TomW 2014-08-21 20:44:18 +01:00
  • 6fb56149f9 Fixed IDE transfers of 256 sectors, Windows 2000 now works. TomW 2014-08-20 19:37:23 +01:00
  • 7dfce428f2 Fixed keyboard in Windows NT. TomW 2014-08-18 20:28:31 +01:00
  • 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. TomW 2014-08-17 15:23:26 +01:00
  • 1c9b6e45f3 Tweaked AT keyboard handler, fixes stuck/missing keys in Doom. TomW 2014-08-16 21:19:02 +01:00
  • 5b35d58c27 Fixed default selector in instruction following MOV SS instruction, fixes Windows 3.1 installer TomW 2014-08-16 17:36:50 +01:00
  • cd2c3b47ed Implemented selector limits on some instructions - fixes LBA2. GPFs in real mode now work. Selectors correctly zeroed on far return to lower privilege. TomW 2014-08-13 20:33:56 +01:00
  • 624ef9ba3c Fixed PCjr 640x200x2 mode. TomW 2014-08-03 20:38:04 +01:00
  • 7515a76c8c Restricted PIIX PCI config registers. Windows 98 no longer forces drives into compatibility mode. TomW 2014-07-31 18:23:40 +01:00
  • a1a3068ac0 Serial controller is no longer reset when serial port/IRQ updated - fixes mouse on 430VX in Windows 98. TomW 2014-07-31 15:57:24 +01:00
  • ea3844acf1 Tweaked ET4000/W32p blitter, no longer hangs in Windows NT. TomW 2014-07-28 21:14:13 +01:00
  • ff56f01516 Improved ET4000 CRTC emulation, Windows NT no longer misdetects ET4000/W32 or hangs. TomW 2014-07-28 20:32:56 +01:00
  • 83644002ae Improved Trident TVGA CRTC emulation, Windows NT no longer detects as ET4000. TomW 2014-07-27 14:41:18 +01:00
  • 8cd1b2d29c Mach64 changes : No longer implements CRTC registers beyond 0x18 - NT no longer detects ET4000. RGBA8888 mode supported - fixes NT 32-bit colour mode. Bit order controls supported for CPU 1-bit data - fixes NT 24-bit colour mode. TomW 2014-07-24 21:30:17 +01:00
  • f0eafa60c9 Added missing thread.h. TomW 2014-07-23 08:15:35 +01:00
  • 1c3d1039ff ViRGE S3D triangle rendering now uses worker thread. Fixed clipping bug on ViRGE. Fixed status window crash. TomW 2014-07-22 21:10:39 +01:00
  • 67cb9e3781 Improvements to PC speaker - fixes sound on Beyond Castle Wolfenstein and probably other games as well. TomW 2014-07-16 20:44:29 +01:00
  • 967feffbc0 Fixed memory mapping on ISA video cards - should now work on Award 430VX PCI. TomW 2014-07-16 20:00:34 +01:00
  • 0ed6193b70 Clear key queue on keyboard reset - fixes CMOS setup on Award 430VX PCI. TomW 2014-07-15 20:42:48 +01:00
  • 4657e9f2c5 Added configurable VRAM for Mach64, ET4000/w32p, Oak and Trident graphics cards. TomW 2014-07-14 21:56:10 +01:00
  • 8283d3ee73 Implemented ATAPI Read CD-ROM Capacity command, fixes CD usage in OS/2. TomW 2014-07-12 14:22:54 +01:00
  • 71f47a4e07 Removed RIDEV_NOLEGACY. TomW 2014-07-11 21:00:43 +01:00
  • a90ca3c83b IDE drives now read 0 when not present - fixes some hangs when detecting drives. TomW 2014-07-11 20:55:26 +01:00
  • 4cdb0d9d82 Fixed hang when opening status window. TomW 2014-07-11 20:52:18 +01:00
  • c7ce01085c Keyboard now uses raw input. Should fix international keyboard. Based on patch from Battler. TomW 2014-07-11 20:35:37 +01:00
  • b89e792f8f Fixed PIT timer reads. TomW 2014-07-10 21:32:49 +01:00
  • b491d70a58 Added Phoenix Trio64. S3 cards now report FPM memory - allows 4 MB on Phoenix Trio64. TomW 2014-07-10 20:25:10 +01:00
  • 0c2efae9c3 Fixed cursor in interlaced modes on S3 Vision864/Trio32/Trio64. TomW 2014-07-09 22:12:59 +01:00
  • c18f7fffb0 Added emulation of Phoenix Trio32. Based on patch from Battler. Paradise Bahamas 64, Number Nine 9FX and Phoenix Trio32 now have configurable memory sizes. TomW 2014-07-09 21:45:42 +01:00
  • adc0ef008b Video cards defines replaced with enumerator. Patch from SA1988. TomW 2014-07-09 19:21:16 +01:00
  • 8f030e12e3 Added REP NOP / PAUSE instruction, needed for Windows 2000 installer. Patch from SA1988. TomW 2014-07-08 22:06:48 +01:00
  • 8ad8d1e2f9 Fixed crash when selecting no sound card. Fixed number of heads when creating a new hard disc for drive C. TomW 2014-07-08 21:03:34 +01:00
  • c4860ab55c Switched IBM AT to more recent BIOS. Added 8 MHz option. Patch from SA1988. TomW 2014-07-08 20:35:39 +01:00
  • 4f11821ee6 Port 0x3da diagnostic bits now held static during blanking, fixes DOS 6.2/V hang. TomW 2014-07-06 21:40:28 +01:00
  • e74519ea4e ViRGE S3D improvements : - 24 bpp mode implemented - Improved subpixel correction - fixes polygon gaps in some games - Implemented dithering - Z Update bit now has an effect - fixes Tomb Raider 2 - Improved mipmapping TomW 2014-07-06 12:45:35 +01:00
  • 2207f704dd Added per-device configuration. Reworked configuration parser a bit. Added configuration for S3 ViRGE and 8-bit Sound Blasters. IRQ 2 routed to IRQ 9 on AT machines. TomW 2014-06-30 21:31:28 +01:00
  • 3c8a675d01 Reorganised Windows-specific code a bit. TomW 2014-06-24 21:15:42 +01:00
  • b0320ae16c Moved PIT to common timer API. TomW 2014-06-19 21:02:59 +01:00
  • f1e1cc0b25 Initial S3 ViRGE video overlay emulation. TomW 2014-06-13 18:43:25 +01:00
  • 62afac2a71 Reverted revision 107. TomW 2014-06-09 18:13:57 +01:00
  • e6abe5f50d Added DIRECTINPUT_VERSION to joystick code. TomW 2014-06-08 22:03:04 +01:00
  • c9fbb6e934 Bodged PIT reads slightly, fixed Lotus III hangs. TomW 2014-06-08 15:53:09 +01:00
  • 4cb7d58d53 Added joystick emulation TomW 2014-06-08 13:45:26 +01:00
  • 9ba75bd910 Minor memory optimisations. TomW 2014-06-07 15:57:57 +01:00
  • a66dddfb43 S3D optimisations - between 15% and 30% faster on my machine. TomW 2014-06-04 19:45:12 +01:00
  • e09b68b242 S3 ViRGE S3D emulation. Currently very slow, bugs, features missing. Added S3 ViRGE/DX emulation, as the DX drivers are better than those for the original chip. TomW 2014-05-26 18:13:23 +01:00
  • 2ff2210b3b Innovation SSI-2001 emulation. Using ReSID-FP. TomW 2014-05-11 14:09:13 +01:00
  • 8c8d70c3cf S3 changes : Altered endianness of multi-word image transfers - fixes icons on Windows NT Current position registers now updated at the end of commands - fixes some drawing issues on Windows NT Hack to reset indicator of which half of colour registers will be accessed - fixed intermittent 32-bit colour issues TomW 2014-05-03 13:39:03 +01:00
  • b22dc91f67 Fixed inverted vertical axis on Amstrad mouse. TomW 2014-04-28 21:01:38 +01:00
  • 81e24b9cb5 Register operands on BOUND/LEA/LDS/LES/LFS/LGS/LSS now cause invalid opcode faults. Fixes NTVDM. TomW 2014-04-27 11:40:03 +01:00
  • 876db9f38c Cancel IDE callback on early IDE reset. TomW 2014-04-18 11:54:52 +01:00
  • 491a885ab2 Slowed down serial transfer - fixes mouse on OS/2. TomW 2014-04-09 20:32:54 +01:00
  • 1493306d5e Restore correct ESP value on fault during IRET - fixes issues in at least Windows NT 3.51, NT 4.0, OS/2 2.0, OS/2 Warp. Thanks to SA1988. Hack to mirror IDE register writes to both drives, fixes IDE issues on NT. Fixed occasional PCem crash when accessing a faulting page, fixes crash in OS/2 2.0. TomW 2014-04-09 19:55:14 +01:00
  • 06c003f3d4 Return sane values for absolute & relative addresses in CD-ROM Get Subchannel command. Fixes display in Windows 9x CD player. TomW 2014-04-08 20:45:09 +01:00
  • 7bfadae7f2 Fixed trap handling. TomW 2014-03-29 17:35:50 +00:00
  • b4bea10c06 Set transmitter shift register empty bit in serial LSR. Windows 3.1 no longer hangs when DOS mouse driver loaded. TomW 2014-03-29 15:17:23 +00:00
  • e737d2fa45 Loading a segment register in real mode no longer clears USE32. CR3 no longer masks values written to it. Real mode interrupts now take IDT base into account. Fixes 'huge unreal' mode (flat assembler). TomW 2014-03-29 14:28:13 +00:00
  • 2610c6c230 Added 32-bit command registers for S3 864/Trio64. TomW 2014-03-26 22:14:13 +00:00
  • 62eff69ab4 Marked RAM areas as 'internal only'. Fixed bugs in mem_mapping_recalc(). Should no longer cause problems when peripherals map over main memory (Trio64). TomW 2014-03-26 21:52:53 +00:00
  • cb5f14349d Added ability to eject hard drive. ALT no longer opens menus when mouse captured or in fullscreen mode. Patches from HalfMinute. TomW 2014-03-24 19:15:11 +00:00
  • 0a1c4dcdf0 Fixed dirty screen updating in high resolution modes. TomW 2014-03-22 19:10:00 +00:00
  • 43d7050c9c Fixed vblankstart on Mach64, ET4000/W32p and ViRGE. Implemented clock generation on ViRGE. TomW 2014-03-22 17:04:25 +00:00
  • f51d8bead4 Fixed vblank start on S3 864/Trio64 - fixes 1280x1024. TomW 2014-03-22 15:37:36 +00:00