Commit Graph

49 Commits

Author SHA1 Message Date
Stanislav Shwartsman
1924780b06 added ability to dump Bochs param tree in XML format 2014-11-15 22:03:52 +00:00
Stanislav Shwartsman
09414f2f4b implemented access to opmask AVX-512 registers from debugger, fixed enhdbg buffer overflow with EVEX enabled 2014-02-11 20:51:18 +00:00
Stanislav Shwartsman
8602804086 another fix for commands debugger parser 2013-11-20 18:40:10 +00:00
Stanislav Shwartsman
ee40564a5f remove unneeded vga keyword from lexer 2013-11-20 16:56:26 +00:00
Stanislav Shwartsman
ab87549b6b Updates to Bochs debugger:
AVX command split into two: YMM command and ZMM command for AVX-256 and AVX-512.
Later new command AVX will be added whch will print complete AVX state according to what is defined currently, including OPMASK registers

info device <name>
and
info device <name> <string>

could be also used now without having to include device name in quotes as "name".
old style "qouted" option also still working

added missing info cpu command to the help
2013-11-19 21:53:55 +00:00
Stanislav Shwartsman
a8068812df add 'tlb' command to debugger to do TLB lookup 2013-01-14 17:02:07 +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
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
Volker Ruppert
086266d033 - implemented new debugger command 'info device [string]' that shows the state
of the device specified in 'string'. Added register mechanism and chained
  list to store the device name and pointer. Replace hardcoded debug info
  implementations for pic, pci and vga by the new one.
- TODO #1: improve existing debug_dump() output and add more devices
- TODO #2: add support for additional arguments and replace the NE2k print_info()
2012-03-10 17:14:07 +00:00
Stanislav Shwartsman
b16d71175d Fixed 'show off' command in internal debugger
Removed not working record/playback obsolete commands from internal debugger
2011-10-09 19:26:30 +00:00
Stanislav Shwartsman
2e6d8c09ed update autogenerated files 2011-05-06 08:30:44 +00:00
Stanislav Shwartsman
7ced718040 implemented AVX instructions support
many changes - some cleanup will follow
please report ay found bugs !
2011-03-19 20:09:34 +00:00
Stanislav Shwartsman
64a30a15fa Adding Id and Rev property to all files 2011-02-25 20:16:02 +00:00
Stanislav Shwartsman
c67f6eddc7 Applied patch :
[2926072] Indirection operators in expressions by Derek Peschel
2010-01-05 13:59:08 +00:00
Stanislav Shwartsman
069ea6228e disasm displacements and offsets by default now printed as "relative" signed integers and not as unsigned offsets
could toggle it back with disasm command.
help disasm in debugger
2009-12-28 13:44:32 +00:00
Stanislav Shwartsman
b71eb23145 remove redundant stuff 2009-11-20 12:15:21 +00:00
Stanislav Shwartsman
27e3f6fda0 implemented range watchpoints - GUI debugger still can only do 1-byte length watches 2009-11-20 12:02:57 +00:00
Stanislav Shwartsman
98b51805d5 updates for Bochs debugger 2009-10-29 15:49:50 +00:00
Stanislav Shwartsman
3dbb1da68a remove "dirty" pages tracking - it is too memory consuming and can fit with >4G phy addr space 2009-10-15 20:50:33 +00:00
Stanislav Shwartsman
e912b328c2 enhances to gui debugger and integrated debugger 2009-08-07 08:26:41 +00:00
Stanislav Shwartsman
4fc66aab31 Fixes for compilation by Visual Studio 2008 2009-04-07 16:12:19 +00:00
Stanislav Shwartsman
981c2e595d Improve internal debugger commands parsing.
Now possible to set read/write watchpoits using 'r' and 'w' shortcuts instead of full 'read' and 'write' words
2009-04-03 17:36:24 +00:00
Stanislav Shwartsman
abe5309ab9 Clean 'info registres' command - use only direct aliases.
instead of 'info fpu' - just use 'fpu'
and etc
2008-05-01 19:10:07 +00:00
Stanislav Shwartsman
003c23e7ea Added aliases for some debugger command
fp|fpu - same as info fpu
sse - same as info sse
mmx - same as info mmx
sreg - same as info sreg
2008-04-26 18:50:32 +00:00
Stanislav Shwartsman
bdaef81603 Added debugger memory trace functionality. Enable by 'trace-mem on' command 2008-04-19 13:21:23 +00:00
Stanislav Shwartsman
041ae54724 Fixed lexer bug 2008-03-30 05:45:42 +00:00
Stanislav Shwartsman
46e7ca44dc dded patch with symbols support in bochs-debugger 2008-03-29 21:32:18 +00:00
Stanislav Shwartsman
6d7134ef99 Remove dump_cpu debugger function, CPI method and all related structures.
Extended 'info' command in debugger to have all functionality of dump_cpu if needed. Also param tree print always could be used !
2007-10-23 21:51:44 +00:00
Stanislav Shwartsman
e9801ef501 Support for restore cpu (and any other device from bochs root) from debugger 2007-10-14 19:04:51 +00:00
Stanislav Shwartsman
f6ed95785f added cpu state param - for future use and for dbg info
started to move debugger to info bx_param interface -> info sse and info mmx commands modified
2007-10-11 18:12:00 +00:00
Stanislav Shwartsman
9e3a969239 Fixed lb/pb methods for platforms with BX_HAVE_STRTOULL=0 2006-10-19 17:51:58 +00:00
Stanislav Shwartsman
bfebb40326 Fixed bug report:
[ 1503978 ] movsb/w/d doesn't work when direction is stored
2006-06-11 18:03:45 +00:00
Stanislav Shwartsman
c5d3070a60 I once already did this change ... strange, how it could gone ...
Replace strtoul by strtoull to support 64-bit values
2006-05-29 19:56:29 +00:00
Stanislav Shwartsman
a6d2ccffba Fixed typo 2006-02-27 06:14:42 +00:00
Stanislav Shwartsman
d37f62d2b4 Support for 64-bit registers set reg = expr command
Print found guard cs_eip in more nice way, it was too mane leading zeroes in x86-64 mode ON
2006-02-13 18:28:14 +00:00
Stanislav Shwartsman
bc30171d4a Remove parenthesis around 'show command' arguments
Fixed in lexer and parser
2006-02-11 21:19:22 +00:00
Stanislav Shwartsman
e8ec9e854b Remove redundant 0x from FMT_ADDRX macro for cygwin
Moved 'show "tab"' command to 'info' (use 'info tab' now)
Fixed printing of the command
2006-02-11 20:47:22 +00:00
Stanislav Shwartsman
1d4fa8b327 Available back ability to use eip register as source in 'set reg = <expr>' cmd.
Setting the eip register still not available (deliberatelly).
I don't want to enable it util I find some easy interface to do it.
I don't want to allow setting of part of RIP register using 'set eip=<expr>' and leave the upper part unchanged ....

Remove unused test registres from debugger
Fix compilation error in cpu.h
Change trace-on/trace-off commands. Make one 'trace' command with usage of 'trace on/trace off'
2006-01-31 19:45:34 +00:00
Stanislav Shwartsman
067f23e3da Fix set 'ah,bh,ch,dh' registers from debugger
Enable disasm by default - in adds some useful information to debug messages in log file
Remove defines for 8bit registers from cpu.h, the x86 arch defines not match defines used by set_reg and get_reg methods.
2006-01-27 19:50:00 +00:00
Stanislav Shwartsman
37eb82c69c Totally remove the cosimulation code from Bochs.
The Bochs anyway even doesn't compile if cosimulation configured enabled.
But in the same time the cosimulation code only disturbs to the future development of Bochs debugger, for example adding x86-64 functionality ...
For those of you who still may want to see the cosimulation code inside I put it in patch and upload it Bochs CVS patches folder. Read comments for the patch ! ----------------------------------------------------------------------
2006-01-25 22:20:00 +00:00
Stanislav Shwartsman
83b4f7ba05 1. remove the ability of using regnames as symbols !
'set $eax = <value>' is stupid when you could do expr like 'set eax = ebx + 4'

2. cleanup and optimize Bochs debugger parsing, fixed several memory leaks
2006-01-25 18:13:44 +00:00
Stanislav Shwartsman
d257f548b9 1. implemented 'set register <name>=<expr>' command, old style 'registers <name>=<exp> command' removed, now 'r|reg|regs|registers' command shows CPU registers contents (same as 'info cpu')
2. new command 'u|disasm|disassemble mode-switch' - switch between Intel and AT&T disasm syntax

3. new command 'u|disasm|disassemble size=n' should be used instead of old 'set $disassembler_size=n'

4. 'h' is a new alias for 'help' command
2006-01-24 21:37:37 +00:00
Stanislav Shwartsman
18afa9fd2d This is cumulative patch for bochs debugger, it is only very first step towards working debugger supporting all new simulator functionalitieS.
- move crc.cc from debugger to bochs folder and make it projct-wide and not local for debugger
 - added new 'info sse' command for debugger
 - extend 'modebp' command to break on any mode change
 - remove unimplemened 'info program' function, it is always printed fixed text
 - move debugger help to parser, cleanup and simplify it
2006-01-24 19:03:55 +00:00
Stanislav Shwartsman
21352e50a9 Fix some bugs in debugger parser, cleanup
Add some debugger functionality
2006-01-23 21:44:44 +00:00
Stanislav Shwartsman
694a568fb1 1. Make info cpu debugger command 2x shorter
2. More corrrect fix for bx_yyinput function in debugger.
It should read all available bytes but no more than max_size bytes
and it is no needed to modify lex_input_size.
2005-04-16 21:43:06 +00:00
Stanislav Shwartsman
ce35b6ec3a Fixed logic bug caused SIGSEGV in debugger when gcc 3.4.0 is used.
Thanks to Robin Green for fixing the issue
2005-04-10 19:53:42 +00:00
Volker Ruppert
03b9d07d52 - unused vga function dump_status() rewritten for the use with the debugger ("info vga") 2004-08-24 10:15:56 +00:00
Christophe Bothamy
b69d0f43e7 - apply patch by Newt : adds escaped characters to string tokens and
semicolon delimited commands to the debugger language
2004-06-21 10:45:38 +00:00
Daniel Gimpelevich
fff74a6f83 Fixed incompatibility with gcc3.3, I think. 2003-11-28 15:07:29 +00:00