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
208 stars 32 forks source link

Machine code monitor #248

Closed BacchusFLT closed 3 years ago

BacchusFLT commented 3 years ago

In order to search for where problems arise within the emulation, a machine code monitor would be MOST helpful.

lgblgblgb commented 3 years ago

This will be never implemented. This is a design choice. But let me explain why! And debugger must be external (that is, I haven't said you cannot have debugger with Xemu, just it's not an Xemu issue as it's external to Xemu), as with the real MEGA65, in fact, the same external debugger can connect to both of a real MEGA65 and Xemu. There is no need for "internal" debugger in Xemu, what I wanted to say, and also would go against the goal to emulate a real MEGA65 which has external debugger for this purpose, so its emulation must be too. In this respect, Xemu emulation of MEGA65 is very different from (eg) a C64 emulator, since a C64 is a well established "old" machine, however MEGA65 is a new design to allow remote debugging even in its "physical" form without any emulation but the real machine. Thus, the emulation of MEGA65 must follow that route to, in the name of good emulation. It also allows to develop external debuggers even multiple ones, by anybody who wants.

Currently, m65dbg is the utility which can be connected to both of a real MEGA65 and Xemu, though indeed, I admit, it's not so user friendly and multi-purpose as some people would like, however that's a question of m65dbg not Xemu's.

lgblgblgb commented 3 years ago

Thanks for your report, however I close this, since it's considered "invalid" request, as debugger is not something should be in Xemu, as I explained above. However, please do not feel this being a negative feedback, thanks for your time to write your idea. Maybe I should create a FAQ, to write about questions like this, since indeed, new users are may not familiar with concepts like this and indeed, then it's a natural wish to have debugger in Xemu now knowing this.

BacchusFLT commented 3 years ago

There is a need for a machine code monitor/debugger, but how it's implemented is another matter. I would hope there is an interface that will allow an external monitor to access the machine.

lgblgblgb commented 3 years ago

There is even currently, using the same protocol as MEGA65, can be used with m65dbg. It's another question that in this state, we have multiple problems, like: