diff options
author | 2010-02-11 23:59:36 +0000 | |
---|---|---|
committer | 2010-02-11 23:59:36 +0000 | |
commit | 0898987bc3f7c308b7088d7dd259e6e65a3ca152 (patch) | |
tree | 588dfbf14040ac0424dbd56048b85778e26fe3a0 /src/emu/mame.c | |
parent | f09bcbeec3e2f2fa9c56acb81b3df8f3aecbb66f (diff) |
Internal debugger using the mame rendering infrastructure
- added support for arbitrary number of containers for render_target
- added command-line parameter -debug_internal (-di) to use the internal debugger when in debug mode
- internal debugger supports all views except memory view
- added "Debug" view to layout/vertical.lay to create more place for debug views in vertical games.
The colors are ugly. Font rendering needs improvement. There are no shortcut keys right now. There is still a lot of room for more improvements.
However, it works and does not depend on any ui toolkit. The interface has been designed to support displaying views programmatically e.g. from the ui.
Currently, the ui render target is used. In order to support views being displayed in separate windows further changes are needed:
- the osd layer must support creating and closing windows (render targets) on demand.
- There must be a mode for render targets where their bounds follows the window size - Currently the render target size depends on the aspect of currently selected "artwork" view.
- Render target needs a name property.
Short HowTo:
- Start MAME with "-debug -di"
- Console, register and disasm views will be shown. Place them by dragging the view on the title bar.
- Views can be resized by dragging the bottom-right yellow square.
- The view having the focus has a green background title bar.
- Hit "Tab" (IPT_UI_CONFIGURE) to show the menu.
- Console and disasm views support a very simple facility to support entering commands and addresses. Just start typing. Hit "enter" when finished.
Diffstat (limited to 'src/emu/mame.c')
-rw-r--r-- | src/emu/mame.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/emu/mame.c b/src/emu/mame.c index 6d679764d65..9a7876a7b38 100644 --- a/src/emu/mame.c +++ b/src/emu/mame.c @@ -1317,7 +1317,10 @@ running_machine::running_machine(const game_driver *driver) /* fetch core options */ sample_rate = options_get_int(mame_options(), OPTION_SAMPLERATE); - debug_flags = options_get_bool(mame_options(), OPTION_DEBUG) ? (DEBUG_FLAG_ENABLED | DEBUG_FLAG_OSD_ENABLED | DEBUG_FLAG_CALL_HOOK) : 0; + if (options_get_bool(mame_options(), OPTION_DEBUG)) + debug_flags = (DEBUG_FLAG_ENABLED | DEBUG_FLAG_CALL_HOOK) | (options_get_bool(mame_options(), OPTION_DEBUG_INTERNAL) ? 0 : DEBUG_FLAG_OSD_ENABLED); + else + debug_flags = 0; } catch (std::bad_alloc &) { |