CarlKenner
f54d9e33c2
Fix many bugs with the Symbols menu (when run with -d argument).
...
The Symbols menu is now fully useable.
2014-12-17 01:11:36 +10:30
Lioncash
20fc2d5674
MemoryWindow: Remove wxSprintf call, use wxString::Format instead.
2014-12-12 10:29:07 -05:00
Lioncash
04ee0245e2
WatchView: Pass string by reference in SetWatchName
2014-11-15 14:06:12 -05:00
Lioncash
ffc00b42e9
MemoryView: Fix a dealloc of a stack reference
...
stack allocation only works with the root menu. Any other children must be
heap allocated.
These however, will be freed by wxWidgets.
2014-11-13 20:10:40 -05:00
Lioncash
892bbdade6
DolphinWX: Eliminate some memory leaks
...
Since the menus aren't actually assigned a parent, they would not be freed by wx. Plus, these should have initially been constructed on the stack in the first place.
Technically any time someone right-clicked the game list they would be leaking memory.
2014-11-11 09:50:16 -05:00
Lioncash
ac387031a4
DolphinWX: Kill off trivial event tables
...
Also fixes some of the wonky stuff in Main where we would fire an event to do post-init stuff which isn't necessary anymore.
2014-11-09 00:08:33 -05:00
Lioncash
210567a919
DolphinWX: Remove unnecessary forward declarations
2014-11-07 22:16:13 -05:00
Lioncash
ee22d091a0
DolphinWX: Eliminate most usages of event tables in the debugger.
...
Moves things over to Bind.
2014-11-05 23:03:06 -05:00
Jasper St. Pierre
dd0aadac97
MemoryWindow: Use p_pFakeVMEM, not the virtual mirror
...
They point to the same contents, so there's no reason to use the
mirror. This lets us make all the mirrors static.
2014-11-02 16:34:17 -08:00
skidau
dbddc5f8e2
Fixed a warning in the add memcheck from Watch window
2014-10-31 11:26:17 +11:00
Rohit Nirmal
55f91ecba4
DolphinWX: Fix -Wsign-compare warnings.
2014-10-28 21:07:48 -05:00
Rohit Nirmal
b70a75776e
DolphinWX: Remove unused variable.
2014-10-28 21:02:47 -05:00
skidau
4570dd7eeb
Fixed a crash that would occur if a new watch were added by entering a watch name.
...
Code style updates.
2014-10-26 23:23:45 +11:00
skidau
73dca1ca33
Added a new option to add memchecks from the Watch window.
...
Fixed watch labels from being truncated at the first whitespace.
2014-10-26 16:14:17 +11:00
skidau
8d2931cf18
Breakpoints and watches are now loaded and saved on start/stop.
...
Saved Breakpoints and watches per game in the game ini.
2014-10-26 14:56:03 +11:00
skidau
b73130af77
Added Load/Save function for the Watch window.
...
Made the floating windows toolbars dockable.
Scaled down the breakpoint toolbar icons to 16x16.
2014-10-26 14:56:03 +11:00
skidau
b34e220086
Added a "Delete watch" context menu to the Watch window.
...
Added a "View memory" command to the context menu.
2014-10-26 14:56:03 +11:00
skidau
290e1bed37
Disable block linking while debugger stepping or if there are breakpoints
2014-10-26 14:56:02 +11:00
skidau
d0a3bb7650
Added "Add to watch" context menu items to the Memory and Register windows.
...
Added "View memory" context menu item to the Register window.
2014-10-26 14:56:02 +11:00
skidau
613cae613a
Added a RAM Watch window to the debugger
...
Conflicts:
Source/Core/Core/HW/Memmap.cpp
Source/Core/Core/HW/Memmap.h
Source/Core/DolphinWX/Debugger/CodeWindow.h
2014-10-26 14:56:02 +11:00
skidau
df37649b9f
Changed the step over routine to a single stepping version that steps until a blr is encountered.
...
Cleared out all temporary breakpoints on each step to prevent phantom breakpoints from stopping the debugger.
2014-10-26 14:56:02 +11:00
skidau
219a5078e8
Added a "Step Out" (aka "Step return") function to the debugger.
...
Conflicts:
Source/Core/DolphinWX/Debugger/CodeWindow.h
2014-10-26 14:56:01 +11:00
Ryan Houdek
cb10bef9a4
Implements LLVM based disassembler for the debugger.
...
This will work for all of our platforms, x86, ARMv7, and AArch64.
Main issue with this is that LLVM's cmake files aren't correctly finding the LLVM install.
Not sure if this is Ubuntu's issue or not, it may just work on other operating systems.
We could potentially improve this, you can pass in a specific CPU in to the LLVM disassembler. This would probably affect latency times that are
reported by LLVM's disassembly? This needs to be further investigated later.
2014-10-24 18:10:21 -05:00
Ryan Houdek
ecf65d6f1f
Cleans up the JIT block viewer in the WX UI.
...
This code was an absolute mess. It had allocated an arbitrarily large string buffer to hold instructions that were disassembled.
Strip out all of the nasty raw C string manipulation and replaces it with ostringstream usage.
Fixes an issue where if you didn't have a JIT recompiler running then Dolphin would instantly crash if you tried comparing PPC to x86 code.
Changed the disassembly of the host side code from being inline to the function to instead being in a class, this will be required when I add support
for ARMv7 and AArch64 to this window.
2014-10-21 12:27:59 -05:00
Lioncash
635408b686
Debugger: Fix class indentation
2014-10-18 22:55:23 -04:00
skidau
fc774f0232
Merge pull request #1062 from zhuowei/master
...
Parse input as hex instead of decimal to match display values in the register view
2014-10-16 13:58:56 +11:00
comex
47faf7c4fd
Merge branch 'Remove-MMU-Speed-Hack-option' of https://github.com/skidau/dolphin into skidau-Remove-MMU-Speed-Hack-option
...
Conflicts:
Source/Core/Core/PowerPC/Jit64/JitAsm.cpp
2014-10-14 01:08:20 -04:00
skidau
01359a481b
Merge pull request #1265 from skidau/debugger-registers-mmu
...
Added some of the MMU registers into the debugger Register window
2014-10-14 12:47:47 +11:00
Lioncash
9f2b48ab07
Core: Use an enum for indicating CPU cores
2014-10-13 10:35:31 -04:00
skidau
6d9990585c
Added some of the MMU registers into the debugger Register window
2014-10-12 20:03:29 +11:00
skidau
8738b1879c
Removed the MMU Speed Hack option. The TLBHack is now enabled if the MMU option is disabled. This will help catch cases where a game requires the TLBHack but the option has not been set in the game ini. It also removes the possibility to mistakenly enable both the MMU and TLBHack.
2014-10-11 11:31:16 +11:00
Fiora
8bf2cf0641
Debug: fix disable block linking option
...
Previously it did the opposite of what it was supposed to; when checked, it'd
turn block linking on, and when unchecked, it'd turn it off.
Also update JITIL's block linking disabling in debug mode to match the behavior
of the regular JIT.
2014-10-08 19:03:25 -07:00
Fiora
85547d94be
JIT: properly remove FIFO write addresses when code is invalidated
...
Fixes a bug caused by interaction with carry optimizations; might fix other
issues too.
2014-09-30 01:00:23 -07:00
skidau
6379d3983a
Merge pull request #1137 from lioncash/debugger-crash
...
DolphinWX: Fix case where the debugger would crash on hiding a pane.
2014-09-22 14:48:29 +10:00
Lioncash
95660a5563
DolphinWX: Fix case where the debugger would crash on hiding a pane.
...
These ID values would clash with the window parent IDs of all the actual debugger panes (they are in the 350 range as well).
For example, attempting to show and then close the memory window would cause an assertion, because it would attempt to destroy the text control for searching through memory, rather than destroying the actual parent window it's attached to.
These IDs are only used locally, so their value doesn't matter.
2014-09-21 14:06:27 -04:00
Lioncash
dc65ef33ba
DolphinWX: Fix the memory view in the debugger
2014-09-21 11:47:52 -04:00
Ryan Houdek
2e1377ab7e
Merge pull request #1107 from FioraAeterna/opcodesearch
...
Debugger: make opcode search a bit better
2014-09-19 15:50:54 -05:00
Fiora
20c3a0f2d8
Debugger: scroll by multiples of 4 bytes
...
Avoids that weird effect where scrolling offsets code from 4-byte boundaries,
showing nonsense 75% of the time.
2014-09-18 03:54:57 -07:00
Fiora
8ce4676605
Debugger: make opcode search a bit better
...
Search a wider range (not all games fit in the originally searched range).
Print a notice if the opcode isn't found, instead of silently failing.
2014-09-18 03:47:46 -07:00
Zhuowei Zhang
3eaeeee41d
Parse input as hex instead of decimal to match display values in the debugger's register view
2014-09-12 00:21:49 -04:00
Rohit Nirmal
c0f7cab3f5
Remove extra semicolons at the ends of some lines.
2014-09-10 12:17:38 -04:00
Ryan Houdek
71cb09f1ca
Merge pull request #1027 from rohit-n/change-include
...
Include CommonTypes.h instead of Common.h.
2014-09-10 00:35:16 -05:00
Rachel Bryk
f93aa7087c
Kill Core::g_CoreStartupParameter.
2014-09-09 00:24:49 -04:00
Rohit Nirmal
fbc64984ca
Include CommonTypes.h instead of Common.h.
2014-09-08 15:39:58 -04:00
Lioncash
9db370ea40
DolphinWX: Use std::string over char arrays in MemoryView
2014-09-07 20:36:02 -04:00
shuffle2
46c1a0f03b
Merge pull request #733 from lioncash/readability
...
DolphinWX: More readable variable names in BreakpointView
2014-09-03 01:28:17 -07:00
Lioncash
8553b0f27b
DolphinWX: Clean up brace placements
2014-08-30 18:06:48 -04:00
Lioncash
1d706b2311
Get rid of C-style empty function parameter indicators
2014-08-30 15:23:48 -04:00
Lioncash
f239ea3853
DolphinWX: Parenthesize some expressions in CodeView.cpp
2014-08-24 15:40:19 -04:00
Lioncash
c3e41809d9
DolphinWX: Move the CodeView debugger view over to wxGraphicsContext
...
This is a more advanced drawing 'backend' over the previous one and allows us to control things like transparency and anti-aliasing, etc.
2014-08-24 15:40:05 -04:00
Lioncash
6a74f5e8f6
Merge pull request #817 from archshift/disabledcolor
...
Fixed toolbar's disabled button color.
2014-08-23 05:08:26 -04:00
Lioncash
6a8dfda0ea
DolphinWX: Use the typesafe equivalents for declaring wx event types
...
The others were used when wx 2.4 was around
2014-08-17 16:18:58 -04:00
archshift
b7f3797689
Wx: further cleanup to toolbar creation process
2014-08-17 12:57:44 -07:00
archshift
b74a34795b
Fixed toolbar's disabled button color.
2014-08-17 12:57:44 -07:00
Dolphin Bot
1d88091e0b
Merge pull request #821 from FioraAeterna/fixjitcompare
...
Debugger: fix JIT block viewer PPC view
2014-08-17 07:29:25 +02:00
Fiora
a317dac089
Debugger: fix JIT block viewer PPC view
...
The JIT block compare code didn't set the same options for the PPCAnalyzer
as the actual JIT did, which made the PPC side of the JIT block viewer stop
at the first branch instead of the end of the block.
2014-08-16 22:25:49 -07:00
Lioncash
07f72b1afc
Merge pull request #811 from FioraAeterna/fixblowup
...
Debugger: fix blowup calculation again
2014-08-16 12:42:27 -04:00
Lioncash
cf46ac7dc9
Core: Kill off Host_ShowJitResults
...
Another host function that can be killed off by simple wx event handling
2014-08-15 15:18:28 -04:00
Fiora
56cc0227c3
Debugger: fix blowup calculation again
...
Wasn't quiiite right in 3c2567 either.
2014-08-15 10:24:35 -07:00
lioncash
77ccfa1967
DolphinWX: Fix variable styling in BreakpointView
2014-08-15 09:51:29 -04:00
Lioncash
2848ff342f
DolphinWX: More readable variable names in BreakpointView
...
Also doesn't make everything rely on a single temp variable.
2014-08-15 09:49:09 -04:00
Fiora
6741cdbe84
Debugger: fix blowup calculation
2014-08-14 13:40:34 -07:00
shuffle2
0b27e0f3f0
Merge pull request #761 from archshift/better-toolbar
...
Changed main toolbar to be flush with the rest of the window.
2014-08-11 20:12:24 -07:00
Lioncash
a04809b4d1
DolphinWX: Fix scrolling in hex mode for the memory view
...
Prior to this after painting the hex values, it would increment the curAddress by 32. This is not only a bug, but unnecessary, since the OnMouseDownL and OnScrollWheel functions should be the only things to handle address incrementing for scrolling purposes.
2014-08-10 03:06:06 -04:00
archshift
b81617fba1
Removed TBDebug, using TBMain instead. Fixed debugger assert.
2014-08-09 03:40:56 -07:00
archshift
b8b72861b5
Removed AuiTB, moved functions to menubar (Debug->Perspectives)
2014-08-09 03:40:56 -07:00
Lioncash
7bf82f1989
Core: Kill off Host_UpdateLogDisplay()
...
This was actually never used as far as I can tell. There was no wx event handling done whatsoever for the global ID, So this is basically a dead function.
2014-08-08 19:21:40 -04:00
Lioncash
d4eb0684f7
Core: Kill off Host_UpdateBreakPointView()
...
Uses wxWidgets event propagation to the parent window which then appropriately handles the breakpoint list updating.
2014-08-08 19:21:29 -04:00
archshift
6cd0ebab93
Included toolbar headers, preventing forward-decl errors
2014-08-08 15:04:58 -07:00
archshift
019d5aee49
Changed toolbar to be static, increasing UI integration
2014-08-08 03:43:13 -07:00
Lioncash
c051ae3338
DolphinWX: Ensure the code view string vector is always a size of two.
...
This way if any entries are not populated, then an empty string will be used.
2014-08-04 03:15:29 -04:00
Pierre Bourdon
6befa34b60
Merge pull request #647 from lioncash/disasm
...
Common: Introduce the new Gekko disassembler to Common.
2014-08-03 21:52:08 -07:00
Lioncash
0718937237
Common: Introduce the new Gekko disassembler to Common.
...
This moves the Gekko disassembler to Common where it should be. Having it in the Bochs disassembly Externals is incorrect.
Unlike the PowerPC disassembler prior however, this one is updated to have an API that is more fitting for C++. e.g. Not needing to specify a string buffer and size. It does all of this under the hood.
This modifies all the DebuggingInterfaces as necessary to handle this.
2014-08-04 00:45:07 -04:00
Pierre Bourdon
497de04c52
Merge pull request #671 from lioncash/non-panic
...
DolphinWX: Use a regular wxMessageBox instead of a PanicAlert for non-panic errors.
2014-08-03 21:27:27 -07:00
Ryan Houdek
21ee61d7fc
Remove x86_32 from DolphinWX.
2014-08-03 13:44:37 -05:00
Lioncash
0ed29e1fac
DolphinWX: Use a regular wxMessageBox instead of a PanicAlert for non-panic errors.
2014-08-02 13:49:51 -04:00
Lioncash
298425920a
DolphinWX: Fix a possible crash when setting debugger memory values.
2014-07-19 19:59:44 -04:00
Lioncash
fa2944898f
DolphinWX: Move some public variables to be private in CodeView
...
It's not used outside of the class, and it also shouldn't be modified
outside of it either (considering it holds all the blr instructions inserted by the user).
2014-07-19 17:23:43 -04:00
Dolphin Bot
5df45dfbba
Merge pull request #650 from lioncash/scrolling
...
DolphinWX: Implement scrolling in the memory views
2014-07-19 19:31:41 +02:00
Lioncash
a00c7bdb9e
DolphinWX: Implement scrolling in the memory views
2014-07-18 22:42:03 -04:00
Lioncash
bc172f4883
DolphinWX: Enable certain Code View context options only when the core is running.
...
Prior to this, attempting to execute these contextual menu options would
crash the application.
2014-07-17 04:50:53 -04:00
Lioncash
48ca800b13
DolphinWX: Mild readability clean up of CodeView.
...
- Gets rid of the underscore in some function names
- Appends the 'm_' prefix to class member variables.
Now it isn't a pain to see what is being modified in terms of state. Especially in the OnPaint call.
2014-07-15 23:01:17 -04:00
Lioncash
9c1b427687
DolphinWX: Implement scrolling in the code view and DSP disassembly view.
2014-07-15 21:35:11 -04:00
Scott Mansell
d4cfddcf8d
Revert "DolphinWX: Use non-deprecated flags for the monospace debugger font"
2014-07-14 21:37:27 +12:00
Lioncash
5c57a1ef4b
DolphinWX: Remove the use of some wx 1.0 compatibility functions.
...
Uses the recommended replacements.
2014-07-13 23:42:37 -04:00
Pierre Bourdon
0563960dbc
Merge pull request #603 from lioncash/debugger-font
...
DolphinWX: Use non-deprecated flags for the monospace debugger font
2014-07-13 06:21:02 +02:00
Lioncash
26f3867e20
DolphinWX: Allow short-hand searching in the code window
...
Lessens the restrictions on the searching in the code view.
Now typing out the full 8 digit hex number isn't needed. For example, you don't need to type 000000FF to go to FF, you just literally type FF.
Also makes JumpToAddress a boolean function to remain consistent with the DSP code view.
This will also change the address search box to have a red background if
either an invalid hex number is given, or if it's longer than 8 characters
2014-07-11 18:32:32 -04:00
Lioncash
6885bac05f
DolphinWX: Use non-deprecated flags for the monospace debugger font
2014-07-11 13:11:11 -04:00
degasus
7e79806efc
remove unused globals
...
Also change globals into statics which are only used in one file
2014-07-11 16:10:20 +02:00
degasus
81ed17be53
avoid the extern keyword in .cpp files
2014-07-11 16:10:20 +02:00
degasus
22e1aa5bb4
mark all local functions as static
2014-07-11 16:07:23 +02:00
Lioncash
6f9483d161
DolphinWX: Remove unnecessary true within event Skip calls
2014-07-10 20:39:26 -04:00
Lioncash
32d53c7d1d
DolphinWX: Get rid of an unneccessary cast in CodeWindow
...
CFrame inherits from CRenderFrame which inherits from wxFrame which
eventually inherits from wxWindow, so this cast is not required.
2014-07-10 20:29:55 -04:00
Jules Blok
db7e746cb4
Check whether the core is running instead of checking if it is unitialized.
...
This properly handles the stopping state and more accurately represents the intended check.
2014-07-08 22:30:44 +02:00
Pierre Bourdon
b0b70381f7
Revert "Don't add segfault handler in interpreter mode"
2014-07-07 05:30:06 +02:00
Tillmann Karras
311e9e655a
CoreParameter: add enum CPUBackend
2014-07-05 11:02:41 +02:00
Lioncash
f05d3f6e5d
Use only section-based ini reading.
2014-06-16 01:31:23 -04:00
lioncash
efdcfe404f
Fix a typo in a function prototype in PowerPCDisasm.h
...
Should be GetGPRName not GetGRPName.
Removed an unnecessary extern declaration of GetGRPName in RegisterWindow.cpp.
Also added GetFPRName to the PowerPCDisasm header for consistency.
2014-06-04 12:12:28 -04:00
Lioncash
554207a87c
Remove an unnecessary null check in CodeWindow.cpp.
...
The validity of ToolBar is checked at the beginning of the function
2014-05-18 11:43:21 -04:00
Lioncash
75cb8a7452
Fix a typo in the JIT debugger window
2014-05-18 10:31:39 -04:00