Commit Graph

9024 Commits

Author SHA1 Message Date
Volker Ruppert
bea07c65b1 - regenerated parser files 2012-04-24 17:50:41 +00:00
Volker Ruppert
a11e5713d7 - updated help texts 2012-04-24 17:48:38 +00:00
Stanislav Shwartsman
e1611e717e Implemented feature request:
[3519794] debugger's ability to save physical/linear memory dumps
2012-04-24 11:01:59 +00:00
Stanislav Shwartsman
8871aa5da3 removed unused variable - fixing gcc warning 2012-04-23 18:52:11 +00:00
Volker Ruppert
6428ce38be - updated generated lexer and parser files 2012-04-23 17:13:23 +00:00
Volker Ruppert
f65c4e66b8 - debugger command 'info device': implemented support for additional arguments
- ne2k: replaced debugger command 'info ne2k' completely by a new version based
  on 'info device' with additional arguments and removed all of the now obsolete
  stuff (ne2k device stub, macro for print_info())
- pci: added option 'dump=full' for the debugger command 'info device' to show
  the whole PCI config space
- TODO: some other devices could have support for additional options in
  debug_dump()
2012-04-23 17:06:19 +00:00
Stanislav Shwartsman
d71ed03ba1 fixed buffer overflow in serial.cc 2012-04-21 18:13:10 +00:00
Volker Ruppert
d364f22c3c - don't panic in debugger if the iodebug plugin is not loaded
- iodebug: fixed some warnings
- development.dbk: updated iodebug documentation
2012-04-19 18:03:13 +00:00
Stanislav Shwartsman
32be4c9b61 fix .bochsrc example 2012-04-18 18:30:00 +00:00
Volker Ruppert
bdfe4ae1bb - added debug_dump() (prints the same as 'info ne2k' without arguments)
- removed FILE parameter from print_info() (unused - since dbg_printf() doesn't
  need it)
- converted tabs to spaces
- TODO: implement 'info device' with optional arguments to get rid of the
  print_info() method
2012-04-18 17:03:00 +00:00
Stanislav Shwartsman
07a50eac31 closing SF bug #3518753: update dump after manual chages to memory contents 2012-04-17 14:32:57 +00:00
Stanislav Shwartsman
e12494bf7b fixed segfault when setting ESP/EIP in GUI debugger 2012-04-16 19:18:23 +00:00
Volker Ruppert
99a31bd150 - devices 'parallel' and 'serial':
- added to optional plugin control
  - moved config parameter creation and bochsrc option parsing to the plugin
    device code
2012-04-16 19:17:10 +00:00
Volker Ruppert
679f980b39 - updated override-ask example
- fixed path in user plugin example
2012-04-15 12:51:33 +00:00
Volker Ruppert
b433f4072b - updated user plugin example 2012-04-14 14:47:08 +00:00
Stanislav Shwartsman
39e4335d6d forgot one instance 2012-04-11 19:02:12 +00:00
Stanislav Shwartsman
c7c431f88e bx_instr_mem_data_access became completely obsolete with new stack optimization merged into SVN.
It already had limited usability before. With stack direct access optimization the callback won't be called for stack accesses as well.
See note by Brian Slechta:

=== Cut Hete ===
While using Bochs as a reference model for simulations, the simulator needs
information about what loads/stores are taking place with each instruction.
Presumably,  that  is  what  the BX_INSTR_MEM_DATA() instrumentation macros
cover (which is the place where our simulator hooks up).

The RETnear_xxx() functions call access_linear() directly, rather than call
read_virtual_xxx()  functions. This is a problem for code making use of the
BX_INSTR_MEM_DATA()   hook  because  it  does  not  get  called  for  these
instructions.  Should  this  be  changed along with some other instructions
that exhibit this?
=== Cut Hete ===

For Bryan's usage bx_instr_lin_access and bx_instr_phy_read/bx_instr_phy_write callbacks should be used.
2012-04-11 19:01:25 +00:00
Stanislav Shwartsman
59e13d5299 fixed compilation error with 386/486 and internal dbger enabled 2012-04-11 18:11:14 +00:00
Volker Ruppert
7e67845ac8 - pcidev: enable support for Linux kernel 3.x (Debian patch by Guillem Jover)
- don't clean docbook directories if building documentation is disabled
2012-04-11 16:53:38 +00:00
Volker Ruppert
fe37b61c18 - pcidev: enable support for Linux kernel 3.x (Debian patch by Guillem Jover)
- don't clean docbook directories if building documentation is disabled
2012-04-11 16:53:02 +00:00
Stanislav Shwartsman
6bfad819de bugfix 2012-04-11 14:47:47 +00:00
Stanislav Shwartsman
83d1e1ee0f update CHANGES 2012-04-10 14:18:54 +00:00
Stanislav Shwartsman
077b691296 correctly fix SF #3516029 : bug stepping not working in debugger GUI in case of smp vm
reverted buggy SF patch #3502052: Added refresh of debugger gui when stepping

re-generated bx_debugger lex/yacc files
2012-04-10 12:44:06 +00:00
Volker Ruppert
34ca44cbcd - sb16 / es1370: fixed possible segfaults when unloading plugin 2012-04-09 08:48:10 +00:00
Volker Ruppert
c24080c92a - more accurate horizontal retrace emulation (based on the DOSBox implementation) 2012-04-08 14:21:18 +00:00
Volker Ruppert
fc482db353 - improved documentation for the 'log options by device" feature 2012-04-07 10:52:36 +00:00
Volker Ruppert
70a38a8a3d - apply 'log actions by device' to the existing modules before editing them
in the config interface. Applied settings are marked as 'done' with the value
  -1 to avoid unwanted modification. NOTE: Not all Bochs modules exist when
  running the start menu / dialog.
2012-04-06 13:15:27 +00:00
Stanislav Shwartsman
a68ad9a7f6 small code optimization 2012-04-06 09:41:58 +00:00
Stanislav Shwartsman
60e92204b1 update CHANGES 2012-04-04 19:59:26 +00:00
Stanislav Shwartsman
a6f0ca70ff more robust SVM fix 2012-04-04 19:55:36 +00:00
Stanislav Shwartsman
72a00ce9dd improved debug prints in MOV to/from CR
SVM bugfix
remove redundant TLB flush call from SVM and VMX code
2012-04-04 19:31:02 +00:00
Volker Ruppert
56cce60be8 - improved device log prefix table (list all existing prefixes, added column
with log function name)
- TODO: move table to a new section under "Tips & Techniques" and add reference
  from the bochsrc log controls to it.
2012-04-03 18:41:28 +00:00
Volker Ruppert
e82fa719fb - at runtime the log options dialog starts up with "log options per device"
enabled
2012-04-02 21:30:37 +00:00
Volker Ruppert
a3f7a30422 - ioapic: added debug_dump() (prints redirection table) 2012-04-01 18:53:16 +00:00
Volker Ruppert
5a983a3ea0 - disable the "close" button for the Bochs main window - only the "power" button
should be used to terminate Bochs
2012-04-01 16:50:42 +00:00
Volker Ruppert
601bb7e084 - only quit Bochs simulation after pressing the "Quit" button in the runtime
config dialog. Now the close button and the ESC key let the simulation
  continue in the runtime case (fixes SF bug #3510403).
2012-03-29 17:05:44 +00:00
Stanislav Shwartsman
279c61dc67 updated + fixed instrumentation example for instr histogram, code cleanup in the cpu 2012-03-28 21:11:19 +00:00
Stanislav Shwartsman
fa03e8b925 added const to several class members 2012-03-27 21:30:34 +00:00
Stanislav Shwartsman
90fc12d9e4 switching between compatibility and long64 mode also affect SS.BASE which is always zero in long64 mode 2012-03-27 15:21:40 +00:00
Stanislav Shwartsman
e7a4a1bec8 surprisingly, opensuse 12.1 requre alignment check support in hardware so I can't disable it by default for all configurations.
but in case you want a few %% of extra emulation performance - it is still possible to disable it with configure option.
most guests I saw do not use it !
2012-03-26 19:33:38 +00:00
Stanislav Shwartsman
8b78f6ca2c fixed prev commit 2012-03-26 19:24:20 +00:00
Stanislav Shwartsman
97a6d0ad46 missed ; 2012-03-26 19:08:28 +00:00
Stanislav Shwartsman
547678e8bd fixed compilation error in 386 config. also fixed bugs in tasking code found by new assertion added in stack.cc new code 2012-03-26 19:05:58 +00:00
Stanislav Shwartsman
bfca96f8ce added TLB contents to param tree for debugger purposes. Nopw the TLB could be browsed through param-tree in debugger and GUI debugger as well 2012-03-25 20:56:18 +00:00
Stanislav Shwartsman
6cd7d08c34 added new stack.cc into MSVCPP2008 workspaces 2012-03-25 20:21:15 +00:00
Volker Ruppert
4c253c8cd6 - more accurate vertical retrace emulation (based on the DOSBox implementation) 2012-03-25 19:16:44 +00:00
Stanislav Shwartsman
d4688e8b95 - Do not compile support for alignment check (#AC exception) by default
for CPU emulation performance reasons, the alignment check compilation
    still can be enabled using configure option --enable-alignment-check.

There is no software in the world which enable #AC exception checking, this
x86 feature is completely legacy but its emulation support costs up to 3-5%
emulation speed.

The checking for #AC exception enable still will be done, if

 CPL == 3, EFLAGS.AC = 1 and CR0.AM = 1

but the alignment check is not compiled in, the Bochs will PANIC with corresponding message.
You can press 'always continue' and ignore the PANIC, the simulation will continue as if alignment checking is not enabled.
2012-03-25 19:07:17 +00:00
Stanislav Shwartsman
3ca29cbdf3 stack direct access optimization - 5% emu speedup to all 32-bit guests, for 64-bit guests speedup is less because they have less stack accesses 2012-03-25 11:54:32 +00:00
Volker Ruppert
c43cf378f4 - floppy: added debug_dump() 2012-03-23 17:22:30 +00:00
Volker Ruppert
51cba8776d - improved debug_dump()
- small code cleanup
2012-03-20 18:29:49 +00:00