Modules/debug/Usage
From MSX Game Library
Contents
Emulators
Emulicious
Emulicious support all avaible debug functions. Messages sent by the game are displayed in the debugger's “Console” tab.
For profiling your program with Emulicious, you don't need to modify any thing in your code. Emulicious provide many debug tools, including a Profiler which lets you see which parts of your code take the longest (Call Tree), or which functions cost the most (Hot Spots).
It is recommended to call the DEBUG_INIT() function at the beginning of your program to mark the memory area reserved by the BIOS and let know the emulator to don't through warning when accessing this uninitialized memory.
openMSX
When DEBUG_TOOL is set to DEBUG_OPENMSX_P, you also need to setup additionnal emulator command line in your project configuration (project_config.js):
//-- Emulator extra parameters to be add to command-line (string). Emulator sotfware specific EmulExtraParam= `-script ${ToolsDir}script/openMSX/debugger_pvm.tcl`;
When PROFILE_TOOL is set to PROFILE_OPENMSX_G (Grauw's profiler), you also need to setup additionnal emulator command line in your project configuration (project_config.js):
//-- Emulator extra parameters to be add to command-line (string). Emulator sotfware specific EmulExtraParam= `-script ${ToolsDir}script/openMSX/profiler_grauw.tcl`;
When PROFILE_TOOL is set to PROFILE_OPENMSX_S (Sallute's profiler), you also need to setup additionnal emulator command line in your project configuration (project_config.js):
//-- Emulator extra parameters to be add to command-line (string). Emulator sotfware specific EmulExtraParam= `-script ${ToolsDir}script/openMSX/profiler_salute.tcl -command "profile::section_scope_bp frame 0xFD9F; profile_osd ms;"`;