Mesen-SX/Docs/content/debugging/_index.md
2020-06-30 16:51:13 -04:00

24 lines
No EOL
1.8 KiB
Markdown

---
title: Debugging Tools
weight: 5
chapter: false
toc: false
---
The debugging capabilities of Mesen are split across a number of different tools, including the debugger itself:
[Assembler](/debugging/assembler.html): Allows you to edit a game's code or run custom code on-the-fly.
[Debugger](/debugging/debugger.html): View the code, add breakpoints, labels, watch values, and much more. A separate debugger window exists for each supported CPU.
[Debug Log](/debugging/debuglog.html): Displays a log of various emulation-related events (uninitialized memory reads, SGB packets, etc.)
[Event Viewer](/debugging/eventviewer.html): Visualize the timing of a variety of events (register read/writes, nmi, irq, etc.).
[Memory Tools](/debugging/memorytools.html): Contains a hex editor and access counters for all memory types.
[Performance Profiler](/debugging/performanceprofiler.html): Profiles the CPU's execution to help find bottlenecks in code.
[PPU Viewers](/debugging/ppuviewers.html): Tools to display tiles, tilemaps, sprites and palettes.
[Register Viewer](/debugging/registerviewer.html): Displays register/state information for most chips in the SNES/cartridge.
[Script Window](/debugging/scriptwindow.html): Allows the execution of Lua scripts, which can communicate with the emulation via an API.
[Trace Logger](/debugging/tracelogger.html): View or log to a file the execution trace of any of the supported CPUs.
Additionally, some other smaller features are available from the main debugger window. e.g:
- [Import labels from CA65/CC65/bass/RGBDS](/debugging/debuggerintegration.html)
- Save any modification done to ROM via the [Assembler](/debugging/assembler.html) or the [Memory Viewer](/debugging/memorytools.html#memory-viewer) as a new `.sfc` file, or as an `.ips` patch file