Commit graph

413 commits

Author SHA1 Message Date
TomW
2ca86ba028 Added support for Tandy 1000 HX and SL/2. As part of this commit :
- FDC now selects drive number from DOR (0x3f2)
- FDC now fails seeks on drives > 1
- XT systems no longer have BIOS mapping at E0000-EFFFF
- SN76489 now distinguishes between SN76496 (PCjr and early Tandy 1000), NCR8496 (later Tandy 1000 - different noise handling) and PSSJ
- Removed redundant limits on memory configuration - allows selection of 768k for Tandy 1000 SL/2
2015-12-03 21:48:10 +00:00
TomW
79202cc5c0 Changed timer base frequency on XT models to 14.318MHz - PIT, CGA and 4.77MHz CPU should now stay in perfect sync. 2015-11-25 21:50:38 +00:00
TomW
0b06c15ae5 Added missing SETALC instruction to 808x.c 2015-11-25 21:25:21 +00:00
TomW
3d35442da7 Removed duplicate PIT counting from 808x.c - fixes some timing issues with XT machines. 2015-11-25 21:25:01 +00:00
TomW
ccd502719b Added clipping to DirectDraw blit function. 2015-11-25 21:23:33 +00:00
TomW
f17c9dbb22 PSG noise latch only reset on change of noise type, not on any noise control write (not sure if this change is strictly correct).
Tweaked noise frequency.
Fixes noise in Zak McKracken.
2015-11-24 20:47:49 +00:00
TomW
1129e1c630 PSG period 0 now handled as 1024 - fixes bassline in Zak McKracken. 2015-11-24 20:46:37 +00:00
TomW
96ef9f6259 Tandy PSG is mirrored at ports 0xc1-0xc8. 2015-11-24 20:44:41 +00:00
TomW
7b7e9139aa Fixed Tandy memory configurations less than 640kb. 2015-11-22 21:11:31 +00:00
TomW
ffae0f5caa Fixed Mach64 Y coordinate when tiling enabled. 2015-11-20 20:59:37 +00:00
TomW
24e6c2555e Added Mach64 polygon command. 2015-11-20 20:59:12 +00:00
TomW
37a6f796de Fix crash on loading with invalid mem_size values in config. 2015-11-19 19:44:38 +00:00
TomW
92a53df150 Clip Mach64 drawing coordinates to 12-bit - fixes issues with some Win9x drivers. 2015-11-18 21:19:46 +00:00
TomW
f1fd9ddc18 Fixed Mach64 15-bit mode. 2015-11-18 20:47:14 +00:00
TomW
c47df21a82 XT models can now have less than 640kB RAM. 2015-11-18 20:28:57 +00:00
TomW
e9bea8ab7e Added recompiled versions of PUSH [mem], PUSH seg, NOP, CLD, STD, JMP indirect, CALL indirect. 2015-11-17 20:52:51 +00:00
TomW
d76da7de70 FDC read address command now uses drive current track rather than FDC current track, fixes 360k discs in 1.2M drive in Windows 9x. 2015-11-15 14:44:52 +00:00
TomW
d3c2d455b9 Improve FDC reset handling. Fixes floppy access in Windows 9x. 2015-11-15 14:08:39 +00:00
TomW
b459fc9815 High PC speaker frequencies treated as constant level.
Improved timing for port 0x61 writes.
2015-11-14 18:14:32 +00:00
TomW
22f20e3595 Fixed typo that broke 8088 timing. 2015-11-13 20:51:10 +00:00
TomW
c45a33a97f Corrected size of Advanced/EV BIOS. Patch from ecksemmess. 2015-11-13 20:44:46 +00:00
TomW
4464ef0afc Fixed PIIX code broken in rev 385. 2015-11-07 12:13:07 +00:00
TomW
fa7e77b013 Fix Linux configure/makefile. Bump version number up to v10.1. 2015-11-07 11:19:29 +00:00
TomW
67dea77677 Added command line option to specify config file to use on startup. 2015-11-06 21:23:46 +00:00
TomW
79bf197d34 Don't create Voodoo memory dump in release build. 2015-11-02 18:06:34 +00:00
TomW
8e9adf91de Added command line option to start in fullscreen mode. 2015-11-02 18:05:23 +00:00
TomW
4f46befaff Removed redundant memcpy from rev 385. 2015-11-02 18:04:58 +00:00
TomW
685d6f2c33 Add range checks to PIIX read/write functions. 2015-10-31 18:35:56 +00:00
TomW
36793f18db Add range checks to ET4000/W32p VRAM read/write functions. 2015-10-31 18:23:39 +00:00
TomW
15a1631ba0 Clear _mem_exec array on init/reset.
Do not add (junk) entries to _mem_exec if mapping is not executable.
Do not fatal() on attempting to execute from non-executable memory; return page of 0xff instead.
Fixes emulator crash in Premiere/PCI when leaving BIOS setup without a valid CMOS setup.
2015-10-31 17:55:40 +00:00
TomW
30826ba98a Bumped version number up to v10.
Updated readme file.
2015-10-31 17:49:22 +00:00
TomW
774115c6ca Implement PPI switch read correctly for IBM PC. 2015-10-23 20:40:28 +01:00
TomW
a78d20333a Implemented keyboard Enable Mouse Port command. Fixes PS/2 mouse in Windows NT. 2015-10-21 21:39:41 +01:00
TomW
a2046fe37f Fixed stupid typos in FPU rounding - Unreal software mode works again. 2015-10-19 20:34:58 +01:00
TomW
30f92469d1 CD-ROM drive is now secondary master if no hard drive is present in that position. 2015-10-19 18:39:00 +01:00
TomW
2352033b48 Implemented PS/2 mouse Status Request command. 2015-10-19 18:31:12 +01:00
TomW
cd091a61c0 Amplified EMU8000 output a bit. 2015-10-18 15:36:06 +01:00
TomW
71a2af82c4 Tweaked PIT GATE handling, fixes Lemmings 2. 2015-10-18 15:35:56 +01:00
TomW
7341cf2a20 Disabled opcode 0x86 (XCHG byte) on x86-64 recompiler. 2015-10-15 19:40:53 +01:00
TomW
75536e184f Fix ATAPI interrupt status following Mode Select command - fixes OS/2 Warp 3 CD installer. 2015-10-13 17:56:54 +01:00
TomW
9d2dd22d6d Initialise A20 gate correctly at startup.
Keyboard controller self-test command enables A20.
HIMEM.SYS included with Windows/286 now works.
2015-10-12 13:42:09 +01:00
TomW
d574a4f5eb Correct S3 class code.
Limit S3 attribute registers to those actually present.
Don't update current position registers at the end of BitBlt command.
Fixes S3 on SUSE 6.3.
2015-10-11 20:36:18 +01:00
TomW
25ac41fbde Ignore odd/even mode when loading VGA latches on memory read. Fixes Jazz Jackrabbit. 2015-10-10 14:33:36 +01:00
TomW
6602a32304 Reverted rev 339. Fixes Adlib Gold jukebox.
Disable PIT timer operation between write of control word and initial count. Lemmings High Performance PC mode now works without incorrect rev 339 commit.
2015-10-10 14:32:50 +01:00
TomW
b79be95623 Force PCem to leave fullscreen mode when losing focus.
DirectInput mouse initialisation no longer fails if mouse can not be immediately acquired.
2015-10-08 19:41:52 +01:00
TomW
b9a0084792 Don't reset IDE block size on IDE soft reset. 2015-10-06 21:54:54 +01:00
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