Commit graph pcjs/modules/pcjs/lib/x86cpu.js
Author SHA1 Message Date
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
b8ddedd9cf Improved the Debugger edit command 2015-08-28 23:17:21 -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
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
712ecb7eaf Fixed read/write breakpoint checking, added support for file table rebuilds, and improved BACKTRACK support for MOVSD operations 2015-08-15 16:10:05 -07:00
Jeff Parsons
69c8133384 v1.18.8: Update of the Windows 95 Setup test machine 2015-08-13 18:16:52 -07:00
Jeff Parsons
cffa72205a More Debug register tweaks 2015-08-03 17:13:43 -07:00
Jeff Parsons
9fa2941394 Limited Debug register support 2015-08-02 21:11:19 -07:00
Jeff Parsons
72a9b8ef8c Applied some more breakpoint fixes 2015-08-01 01:03:49 -07:00
Jeff Parsons
6003e948b6 First v1.18.8 change: preliminary support for 80386 debug registers 2015-07-31 18:25:37 -07:00
Jeff Parsons
2150744668 Added support for DRn and TRn instructions (although they're effectively NOPs for now) 2015-07-27 11:29:57 -07:00
Jeff Parsons
4bb34eb81d CPU caches CPL now (independent of segCS.cpl) 2015-07-26 12:14:30 -07:00
Jeff Parsons
fc9a2a903f Added separate dumpers for physical and linear address space, added more information to the TSS dump, fixed breakpoint updates when the address(es) are not yet valid, fixed recursion error when an UNPAGED block is accessed, made string instructions restartable after a fault, and enabled port-trapping in V86-mode. 2015-07-25 16:42:39 -07:00
Jeff Parsons
afcdd055e1 Assorted V86-mode fixes and IOPM support 2015-07-24 16:53:39 -07:00
Jeff Parsons
f8d7c5d518 Updated reset to reset page tables, fixed RET[F]n instructions, and added some Debugger improvements 2015-07-23 16:58:01 -07:00
Jeff Parsons
4102ef0514 Added support for both 80286 and 80386 gates and TSS segments 2015-07-22 16:03:21 -07:00
Jeff Parsons
8d98dedd1c More instruction history fixes 2015-07-20 16:00:57 -07:00
Jeff Parsons
c2187e1e1b Assorted Debugger fixes 2015-07-20 13:11:46 -07:00
Jeff Parsons
0e22c02b6b Fixed pre-80386 control panels 2015-07-18 16:34:41 -07:00
Jeff Parsons
ad9585b346 Speed up uncompiled code by "IFDEF'ing" disabled code, rare asserts, etc. 2015-07-18 14:21:09 -07:00
Jeff Parsons
b6e8eb8877 Fixed handling of redundant address/data override prefixes 2015-07-17 10:14:17 -07:00
Jeff Parsons
6295c112fe Improved DOS message output (use "m dos on" Debugger command) 2015-07-15 09:09:28 -07:00
Jeff Parsons
75d8e1e193 80386 CPU detection fix 2015-07-14 16:32:41 -07:00
Jeff Parsons
74bb240255 Fix opcode 0x6A (PUSH imm8) 2015-07-09 18:28:22 -07:00
Jeff Parsons
dea84bc0ee Whitespace 2015-06-27 12:13:32 -07:00
Jeff Parsons
a0d89e5071 Generic write mode 0 function was missing set/reset capability 2015-06-27 10:31:26 -07:00
Jeff Parsons
badaaa307e Fix pushing/popping at the limits of the stack segment 2015-06-02 15:39:13 -07:00
Jeff Parsons
f7e93fbeb3 Finally, some progress with the IBM VGA ROM 2015-06-02 14:09:59 -07:00
Jeff Parsons
0639e8cbd2 Initial v1.18.2 delta: added support for ROM notification parameters that the Video component will accept 2015-05-22 12:33:33 -07:00
Jeff Parsons
cfd02bb4ae Improvements to code and stack limit checks (still not perfect, but better) 2015-05-21 15:45:26 -07:00
Jeff Parsons
e3a582976a Fix broken live register display 2015-05-18 16:29:43 -07:00
Jeff Parsons
42cf78b8e0 Fix segment ACCESSED tracking 2015-05-12 15:01:03 -07:00
Jeff Parsons
33f75e5610 Fixed save/restore for I386 2015-05-11 18:46:48 -07:00
Jeff Parsons
5eed275008 Update ACCESSED bits in GDT/LDT descriptors (finally) 2015-05-11 13:11:30 -07:00
Jeff Parsons
83f2218e27 More debugger paging improvements 2015-05-08 12:58:53 -07:00
Jeff Parsons
ab0399064e Changed Debugger and diagnostic functions to call probeAddr() to safely probe linear addresses 2015-05-08 12:22:12 -07:00
Jeff Parsons
f3646d206f Fixed MOVSX,MOVZX, and passed initial paging test 2015-05-07 16:00:38 -07:00
Jeff Parsons
df838b8f86 Improved segment compatibility across mode changes 2015-05-06 19:48:26 -07:00
Jeff Parsons
9ab1f92adc Fixed 32-bit protected-mode test code 2015-05-05 18:26:19 -07:00
Jeff Parsons
380db6ef7d 32-bit operand fixes 2015-05-05 11:45:24 -07:00
Jeff Parsons
73086a7ac8 Moved paging functions from Bus to CPU 2015-05-05 10:32:04 -07:00
Jeff Parsons
2784934491 Cleaned up conditional jump handling 2015-05-04 19:26:06 -07:00
Jeff Parsons
e057bd7a05 Wired up CR0 and CR3 to the new Bus paging functions 2015-05-04 11:28:10 -07:00
Jeff Parsons
73e52134ac Assorted 80386 and Debugger fixes 2015-05-01 14:21:23 -07:00
Jeff Parsons
6108fb25ab Initial scaffolding for paged memory 2015-04-28 17:45:29 -07:00