Well, at least the memory protection feature is worth using. kind of
Basically, sending a magic byte to .System/debug triggers special behaviour, marking memory as readonly, escalating privs to write to readonly memory, or printing out a pretty backtrace.
Not backwards compatible unfortunately, so I added a metadata flag to allow for selective compilation depending on whether the code is being run in a generic #uxn emulator or Bur's builtin one.
Devine Lu Linvega
in reply to Kiëd Llaentenn • • •maybe this could make its way to the other emulators, if you're up for it, you should explain what you need in the mailing list 😀
(when sourcehut is back)
Kiëd Llaentenn
in reply to Devine Lu Linvega • • •@neauoire Happy to! I'm curious whether you think this should be an unofficial extension that emulators can implement optionally, or something part of the official spec.
If the former, I'll need to think of a way to make this backwards-compatible so that running a rom on an emulator that doesn't implement this won't be constantly printing out debug statements.
If the latter, then the current design probably isn't too bad. Maybe we could even discuss adding a new port to .System for this.