Advanced Error Handler and Debugger

Discussion in 'Utilities' started by vladikcomper, Apr 5, 2016.

  1. fuzzy

    fuzzy Inconsistent Member

    Joined:
    Oct 30, 2022
    Messages:
    12
    I've been using in-development versions of this in my hack, and it's helped me lots ever since the newer version was installed. Update your debugger, you won't regret!
     
    giovanni.gen and vladikcomper like this.
  2. JGamer2151

    JGamer2151 Well-Known Member/Lurker Member

    Joined:
    Dec 1, 2020
    Messages:
    96
    I’ve never even expected a new update of the error handler from the last version I’ve used for the past few years or so (I have been using v2.0 since then), it’s nice to see that it’s still alive in development! Can’t wait for a brand-new update on this error handler!

    Also btw, I have the pre-release version of this new error handler update on GitHub on a test ROM hack based on Sonic 2 and it works perfectly. Great drop-in replacement for the older version (2.0) with some minor changes to make it work.
     
    vladikcomper likes this.
  3. JGamer2151

    JGamer2151 Well-Known Member/Lurker Member

    Joined:
    Dec 1, 2020
    Messages:
    96
    (Sorry for the double-post)

    In regards to how it looks like on older Sonic 2 disassemblies (those with an older AS version), here's the screenshot: bandicam 2023-06-14 23-06-36-263.png
    To properly use the symbols with the correct case, case-sensitivity must be enabled in the build script. You may need to rename some labels in the disassembly afterwards (such as Mapunc_Sonic, etc.).
     
    Last edited: Jun 15, 2023
  4. JGamer2151

    JGamer2151 Well-Known Member/Lurker Member

    Joined:
    Dec 1, 2020
    Messages:
    96
    (Double-double posting in case vlad didn't update the thread for a new version)

    So a brand-new version of the Error Handler has finally been released after five years since the last one, and what time of effort it has been! Check it out here!

    I'm sure Vladikcomper will be able to make a post here once they have the time to do so, as I've just received an update from the GitHub page via email notifications. This is why I was able to do this post.

    And now I am implementing this new version into my own hacks that has the old version of the Error Handler. They should be compatible.
    Also, 69th post.
     
    Last edited: Jul 2, 2023
    Hame likes this.
  5. vladikcomper

    vladikcomper Well-Known Member Member

    Joined:
    Dec 2, 2009
    Messages:
    415
    Major update: Version 2.5 is here!
    - Stable AS support, Backtrace, debug logging, benchmarking and much more!

    NOTICE: The first post was also updated!

    [​IMG]

    It's sure been a while: over 5 years since version 2.0 release in 2018, but development was slowly but surely going~
    Remember how I few weeks ago I've posted that upon release, v.2.5 won't be a ground-breaking update? I lied. Sort of. During the last few weeks of development I managed to include more big features than I've initially planned.

    Feature highlights
    • Stable AS support
      • Better integration with AS projects, stable debug symbol extraction.
    • Backtrace, address registers analysis and custom built-in debuggers
      • On any exception screen, press B to display backtrace, A for address registers, Start to return;
      • You can map A/B/C buttons to your custom debuggers;
    • Log in-game events, benchmark code, breakpoint with KDebug integration
      • Blastem-nightly and Gens KMod allow you to log debug messages in emulator's console/window;
      • No side-effects on unsupported emulators and the real hardware.
    • Debugger now supports assertions.
    • ConvSym, the debug symbol extraction utility, is now fully cross-platform.
    • Slightly improved exception display, many QoL and stability improvements.
    See MD Debugger's version history for the detailed changelog.

    Version 2.0 to 2.5 migration guide

    If you were already using version 2.0, migration is really simple as the new version is 100% backwards compatible.
    1. Download the correct version for your project (errorhandler-as.7z or errorhandler-asm68k.7z).
    2. Replace the old files; remove ErrorHandler.bin from the old installation because it's now inlined into ErrorHandler.asm.
    3. Download and replace convsym utility for your platform:
    4. Everything should work already, but to support features like assertions and KDebug integration you need to modify your build system to generate DEBUG builds. Just find an installation guide for your disassembly and follow the "Install ConvSym to generate debug symbols" step.
    Installation guides, documentation and help

    MD Debugger comes with exhaustive documentation, installation guides and usage examples. See the following links for details:
     
    Last edited: Jul 2, 2023
  6. JGamer2151

    JGamer2151 Well-Known Member/Lurker Member

    Joined:
    Dec 1, 2020
    Messages:
    96
    Awesome new version. Already got this new version put in my own hacks replacing the old 2.0 version. This has been a well five years worth of wait! I've been using this error handler way back since version 2.0 came out in 2018, and I'm ecstatic that this new update has gone full-circle! Congrats!

    And this is my 70th post overall.
     
    Last edited: Jul 3, 2023
    vladikcomper likes this.