Commit graph pcjs/modules/pcjs/lib/x86func.js
Author SHA1 Message Date
Jeff Parsons
a5b9e0cae7 Some improvements for FOOTBALL, including support for the 386 LOADALL instruction 2016-01-28 22:22:36 -08:00
Jeff Parsons
763b02794b When halting on faults in the Debugger, interrupt the instruction in the same manner as the actual fault would 2016-01-27 13:04:52 -08:00
Jeff Parsons
adb2b9aa90 Force all segment register writes to be 16-bit, even when the operand size is 32-bit 2016-01-27 10:58:01 -08:00
Jeff Parsons
7e8180982c Don't halt on #SS faults anymore 2016-01-22 21:10:30 -08:00
Jeff Parsons
46046fc64b Halt on all SS faults in the Debugger (for now) 2016-01-21 11:52:53 -08:00
Jeff Parsons
5cb676e501 Updated Computer constants 2016-01-16 14:37:39 -08:00
Jeff Parsons
c792895b10 v1.20.3: The Happy 2016 Release 2015-12-31 15:51:14 -08:00
Jeff Parsons
6360fda120 Fixed inspections 2015-12-15 11:09:21 -08:00
Jeff Parsons
b1bea17aef More disk images 2015-11-26 11:34:14 -08:00
Jeff Parsons
10d2551bc0 Fix SGDT/SIDT for the 80386 2015-11-23 17:07:56 -08:00
Jeff Parsons
2b1b62d565 New skeleton for x86fpu.js 2015-11-13 18:20:20 -08:00
Jeff Parsons
0c6db1df46 Preliminary groundwork for FPU support 2015-11-11 18:11:30 -08:00
Jeff Parsons
55c3236380 Fixed lingering code inspection issues 2015-11-09 08:22:08 -08:00
Jeff Parsons
39af7dbe32 Fixed Closure Compiler build (the compiler gets easily confused when objects in different class hierarchies have identical method names) 2015-11-08 21:38:15 -08:00
Jeff Parsons
8c67a50f92 Fixed 16-bit unsigned division overflow detection 2015-10-31 07:31:32 -07:00
Jeff Parsons
a22bf5dc85 32-bit signed division fixes 2015-10-30 18:09:04 -07:00
Jeff Parsons
05c261f849 Eliminated test386 multiplication differences, now on to division differences 2015-10-30 13:23:57 -07:00
Jeff Parsons
8bd1794928 Added placeholders for IBTS and XBTS (80386 opcodes on A0-B0 steppings only) 2015-10-29 22:44:33 -07:00
Jeff Parsons
6dcb644a05 Added support for machine configs with a specific CPU stepping (also, fixed IMUL reg,r/m,imm disassembly) 2015-10-28 16:57:55 -07:00
Jeff Parsons
8e71267747 Updated Closure Compiler, fixed some constant inlining problems, and turned PREFETCH off for now 2015-10-27 13:02:43 -07:00
Jeff Parsons
526da018d0 Working prefetch support (speeds up 80386 operation when paging) 2015-10-27 11:25:02 -07:00
Jeff Parsons
645241b634 Removed old traceLog() support (being replaced by tests in /tests/pc that dump results to a COM port) 2015-10-21 13:40:43 -07:00
Jeff Parsons
caccae5cc8 Rolling out v1.19.8 (and cleaning up how gate frame size is tracked) 2015-10-21 10:47:37 -07:00
Jeff Parsons
7babb15868 Fixed WDEB386 fielding of V86-mode exceptions 2015-10-20 19:23:45 -07:00
Jeff Parsons
b0ada4229d Make far calls restartable when they trigger a fault pushing the return address onto the stack 2015-10-18 17:40:29 -07:00
Jeff Parsons
d1d733e38b Fixed divide-by-zero and data breakpoint exception dispatching 2015-10-18 10:57:51 -07:00
Jeff Parsons
a3107a73ef Make IMULD more compatible in overflow cases 2015-10-17 08:39:38 -07:00
Jeff Parsons
a774fb983e v1.19.7: Windows 95 boots to the desktop 2015-09-21 18:37:44 -07:00
Jeff Parsons
646acf3a8d Simplified the NODE tests 2015-09-16 15:32:49 -07:00
Jeff Parsons
deeac4902d v1.19.6: Improved restartability of stack-related instructions 2015-09-14 16:53:57 -07:00
Jeff Parsons
b00b524e01 v1.19.5 update (fixes a CALLF bug and a VGA ATC bug, and adds improved WDEB386-style load notifications) 2015-09-12 02:05:05 -07:00
Jeff Parsons
cb9e330cfa Fixed a stack-size bug uncovered by a PUSH SS/POP SS sequence in Windows 95 kernel 2015-09-11 15:13:08 -07:00
Jeff Parsons
e207cabc0a v1.19.5: Finally bit the bullet and throw JavaScript exceptions for improved CPU exception handling 2015-09-10 17:59:46 -07:00
Jeff Parsons
09295a1a27 v1.19.5 checkpoint (includes a fix to the "pop mem" instruction) 2015-09-10 15:18:20 -07:00
Jeff Parsons
40709af7f5 Fixed problems with SHRD, SHLD (need to use unsigned shifts) and BT* instructions that use signed bit offsets 2015-09-05 16:03:49 -07:00
Jeff Parsons
8d83504d9a Added support for "call breaks", and fixed BTC, BTR and BTS (hopefully correctly this time), 2015-09-04 14:13:09 -07:00
Jeff Parsons
3f52d18182 Corrected frame size for 32-bit INT gates, fixed BT/BTC/BTR/BTS instructions for bit indexes > 31, and disabled the Debugger's IF clear warning when IOPL < CPL 2015-09-03 18:47:40 -07:00
Jeff Parsons
ee2f5ff761 Revamped dump extensions to accept argument arrays, added probeDesc() for Debugger-safe segment descriptor loading 2015-09-03 09:07:40 -07:00
Jeff Parsons
1a67c7acbd v1.19.3: More Windows 95-related updates 2015-09-01 16:19:20 -07:00
Jeff Parsons
63121a1768 Fixed save/restore (hopefully) when A20 is off, as well as when HDC I/O is in progress (although the latter needs more testing) 2015-08-29 15:22:36 -07:00
Jeff Parsons
f5cd98a7e6 Made DEBUG-only code, um, DEBUG-only 2015-08-27 17:13:27 -07:00
Jeff Parsons
f56815c11b Added WDEB386 service simulation (INT 0x41) 2015-08-27 16:23:12 -07:00
Jeff Parsons
8c945bac17 Fixed ECX corruption in LOOP instructions 2015-08-26 14:54:59 -07:00
Jeff Parsons
95f7db7c94 Reorged interrupt info, added MS-DOS 3.21 images, and increased memory size of OS/2 1.0 machine to 2Mb 2015-08-26 13:25:34 -07:00
Jeff Parsons
c18fd50ffc Don't halt on any GP_FAULT by default 2015-08-24 19:00:04 -07:00
Jeff Parsons
927a71d681 v1.19.2: Added support for timer Read-Back command, segment probes, and improved instruction restartability 2015-08-24 17:27:34 -07:00
Jeff Parsons
5b64488286 Made RETF restartable when the target segment is not present 2015-08-21 15:19:16 -07:00
Jeff Parsons
b52f27f35f Cleaned up fCall handling a bit 2015-08-16 09:38:05 -07:00
Jeff Parsons
a3f1df0ba7 Removed fSuppress hack from general-purpose segment register operations 2015-08-16 08:41:13 -07:00
Jeff Parsons
8fef77f067 Added support for user-defined Debugger variables (see 'let' and 'print' commands) 2015-08-12 14:25:45 -07:00