lgblgblgb / xemu

Emulations (running on Linux/Unix/Windows/macOS, utilizing SDL2) of some - mainly - 8 bit machines, including the Commodore LCD, Commodore 65, and the MEGA65 as well.
https://github.com/lgblgblgb/xemu/wiki
GNU General Public License v2.0
201 stars 31 forks source link

MEGA65: trace continue (t0) crashes xemu #333

Closed ki-bo closed 2 years ago

ki-bo commented 2 years ago

Xemu crashes when using t0 command in uartmon

Found in next branch

To Reproduce

  1. Start Xemu with uartmon (I used unix domain sockets on macOS)
  2. Enter trace mode with t1
  3. Exit trace mode with t0 Xemu crashes
lgblgblgb commented 2 years ago

@ki-bo I think, the same issue as with the previous one we have discussed, that it's even a miracle that currently anything still works from debugging, so I am not so much surprised. The reason what I mentioned in the other issue as well (#332): at the time of merging the VIC-IV improvements, I had the choice to have several month of delay in merging and do a proper integration so debugging won't be broken, or do the merge ASAP sacrificing the debugging subsystem partly or even totally, at least on short/mid-term. Because the pressure was high that Xemu/MEGA65 at that time almost could not run anything (so many VIC-IV emulation problems), I've decided that's the important part to remedy first, as debugging has no value if there is not so much program works with the emulator at all to begin with, which is worth to debug then ;)

By the way I am even thinking now to totally disable the uartmon subsystem (at least for a while, as I've mentioned in the other issue as well, surely this debug/uartmon problem must have been fixed sometime!!!), as it can be hugely misleading it seems if someone want to use it now and finding large amount of problems with it. At the time of the mentioned merge, the only thing I've checked at all, if Xemu still compiles, so no wonder about the serious problems can be experienced with it now.

By the way, I am not sure, but I have the faint memory that even @gurcei from Discord mentioned this problem before already, surely I have him the same answer. He has some pending changes as well (as far as I know and remember) which is not yet in my repositories yet, because of all of these, we're discussing now.

Also please check out this really old issue: #11 in nutshell, the goal would be (for me) to finish the new umon (in contrast of the name uartmon so we can know the difference) interface, which is multi-platform (though uartmon itself was hacked somewhat to be able to work without unix domain sockets as well, since then) and multi-target. It means, that first of all should work very well on all OSes (UNIX-like including eg Linux, MacOS and also Windows), and should be a framework level entity thus can be used by all emulators in Xemu (not just the MEGA65 emulator). Surely, the actual command handling can be emulator target specific then.

lgblgblgb commented 2 years ago

Please comment/append at #335

lgblgblgb commented 2 years ago

Closing this, moved to #335