dolphin/Source/Core/DolphinWX/Src/Debugger
skidau a60a0825a3 Merged 'FifoBusy' branch. Thanks
to marcosvitali.

Added an external exception check when the CPU writes to the FIFO.  This allows
the CPU time to service FIFO overflows.  Fixes random hangs caused by FIFO
overflows and desyncs like in "The Last Story" and "Battalion Wars 2".  Thanks
to marcosvitali for the research.

Added some code to unlink invalidated blocks so that the recompiled block can be
linked (speed-up).

This release still fixed the hangs produced by fifo overflow without sacrifice
performance. For example you can test Tutorial moves at the beginning of The last history now
is fluid 30/60.

Fixed possibles random hangs in DC mode.
Fixed hangs in DC mode in (Simpsons, Monkey Island, Pokemon XD, etc)
Implemented accurate management of Pixel Engine Interrupts.  Now the GPU loop
is stopped when a PE Interrupt needs to be managed and resumed when Pixel Engine
finish.

Fixed Metroid Prime 3 and 2 desync. And other games with desync because of
FIFO Reset. That happens because  FIFO_RW_DISTANCE_HI must be written first, for checking
fifo.CPReadWriteDistance == 0, so some fifo resets was not managed in the right
way.

Fixed Super Monkey Ball in some cases when the game write the
WriteReadDistance need to be safe like the SafeCPRead.

Improved the CheckException for the GatherPipe writes in JIT, now only the
External Exceptions are processed.

Fixed definitely Pokemon XD in dual core mode. This game is doing something
not allowed. It attach to CPU the same fifo attached to the GPU in multibuffer
mode. I added a check to prevent overwrite the GPU FIFO with the CPU FIFO. If
the game do that on breakpoint the solution can fail.

Fixed ReadWriteDistance calc when CPRead > CPWrite.

Added Token and Finish cause to GP Jit checking.

Additional cleanup in CommandProcessor.



Fixes issue 5209
Fixes issue 5055
Fixes issue 4889
Fixes issue 4061
Fixes issue 4010
Fixes issue 3902
2012-03-20 19:37:25 +11:00
..
BreakpointDlg.cpp Finish making dialogs close when escape is pressed. Fixes issue 4265. At least I think I got them all. 2011-03-17 04:26:01 +00:00
BreakpointDlg.h Finish making dialogs close when escape is pressed. Fixes issue 4265. At least I think I got them all. 2011-03-17 04:26:01 +00:00
BreakpointView.cpp Make the break point window toolbar a real toolbar, and general debugger gui cleanup. 2011-02-27 23:03:08 +00:00
BreakpointView.h Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases. 2011-02-28 20:40:15 +00:00
BreakpointWindow.cpp Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases. 2011-02-28 20:40:15 +00:00
BreakpointWindow.h Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases. 2011-02-28 20:40:15 +00:00
CodeView.cpp Adjust the character counts in the debug views to more closely resemble the original pixel counts 2011-07-03 20:47:18 +00:00
CodeView.h Clean up the debugger gui a bit. In general do not call SetSizeHints on a window unless it is a top level window. It isn't supposed to do anything for non top level windows, but it causes glitches on linux. Removing these calls does not affect the end result on windows. 2011-02-24 05:05:25 +00:00
CodeWindow.cpp Sped up to the Dolphin debugger by not checking for breakpoints when stepping. 2012-03-16 20:08:05 +11:00
CodeWindow.h Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases. 2011-02-28 20:40:15 +00:00
CodeWindowFunctions.cpp Fixed the in-built Dolphin profiler. 2012-03-10 16:24:13 +11:00
DebuggerPanel.cpp Various UI and documentation improvements to the GFX debugger. 2011-07-01 20:59:57 +00:00
DebuggerPanel.h Various UI and documentation improvements to the GFX debugger. 2011-07-01 20:59:57 +00:00
DebuggerUIUtil.cpp
DebuggerUIUtil.h
DSPDebugWindow.cpp Clean up the debugger gui a bit. In general do not call SetSizeHints on a window unless it is a top level window. It isn't supposed to do anything for non top level windows, but it causes glitches on linux. Removing these calls does not affect the end result on windows. 2011-02-24 05:05:25 +00:00
DSPDebugWindow.h
DSPRegisterView.cpp fix an ascii/wxstring in gamelistctrl, replace fromascii("") with wxemptystring, don't push_back 0 at the end of wstrings 2011-12-22 14:28:12 -08:00
DSPRegisterView.h
JitWindow.cpp Fix a segmentation fault when the wiimote source is changed to a real wiimote in the config dialog. 2011-02-25 03:56:14 +00:00
JitWindow.h Fix a segmentation fault when the wiimote source is changed to a real wiimote in the config dialog. 2011-02-25 03:56:14 +00:00
MemoryCheckDlg.cpp Finish making dialogs close when escape is pressed. Fixes issue 4265. At least I think I got them all. 2011-03-17 04:26:01 +00:00
MemoryCheckDlg.h Finish making dialogs close when escape is pressed. Fixes issue 4265. At least I think I got them all. 2011-03-17 04:26:01 +00:00
MemoryView.cpp Improve text positioning in debug views by adding a static pixel offset 2011-07-01 18:32:18 +00:00
MemoryView.h Clean up the debugger gui a bit. In general do not call SetSizeHints on a window unless it is a top level window. It isn't supposed to do anything for non top level windows, but it causes glitches on linux. Removing these calls does not affect the end result on windows. 2011-02-24 05:05:25 +00:00
MemoryWindow.cpp Wrapped fopen/close/read/write functions inside a simple "IOFile" class. Reading, writing, and error checking became simpler in most cases. It should be near impossible to forget to close a file now that the destructor takes care of it. (I hope this fixes Issue 3635) I have tested the functionality of most things, but it is possible I broke something. :p 2011-03-11 10:21:46 +00:00
MemoryWindow.h
RegisterView.cpp fix an ascii/wxstring in gamelistctrl, replace fromascii("") with wxemptystring, don't push_back 0 at the end of wstrings 2011-12-22 14:28:12 -08:00
RegisterView.h
RegisterWindow.cpp Clean up the debugger gui a bit. In general do not call SetSizeHints on a window unless it is a top level window. It isn't supposed to do anything for non top level windows, but it causes glitches on linux. Removing these calls does not affect the end result on windows. 2011-02-24 05:05:25 +00:00
RegisterWindow.h