hth313 / Calypsi-tool-chains

Overview of the Calypsi tool chain and open source support packages
17 stars 0 forks source link

dbg65816 interpreter #8

Closed Papakura closed 1 year ago

Papakura commented 1 year ago

Hi, Running dbg65816 with -i mi1 or -i mi2 results in

option -i: unexpected '1' expecting end of input

option -i: unexpected '2' expecting end of input

hth313 commented 1 year ago

It is a bug in the command line parse, I will fix in the next release. Use -i mi.

Papakura commented 1 year ago

I discovered this while using "CLion". It seems to be set up to use MI2

hth313 commented 1 year ago

Is there a way around it in CLion? Otherwise I can look into making an update on my side. In that case let me know which host platform you are using.

Papakura commented 1 year ago

It doesn't seem to be configurable.

Calypsi debugger for 65816 version 3.6.10. Windows 10

hth313 commented 1 year ago

MI2 is treated the same as MI in db65816. I have made an update that should be able to parse the command line properyly with -i mi2. https://drive.google.com/file/d/1nwf5zhhyKmNxxgtTuP2AopDNCV4hVp0y/view?usp=share_link (edit: correct link)

Papakura commented 1 year ago

That link is to calypsi-nut-3.6.11.msi, where previously i downloaded calypsi-X.X.X.msi. What does the "nut" mean?

hth313 commented 1 year ago

Sorry about that, I took the wrong file, this should be correct: https://drive.google.com/file/d/1nwf5zhhyKmNxxgtTuP2AopDNCV4hVp0y/view?usp=share_link

Papakura commented 1 year ago

Hi, That wasn't much successful. I now get Failed to process MI record:

<

mismatched input '' expecting {'^', '', '+', '=', 'stopped,changelist=[', '=memory-changed', '=breakpoint-modified', '=library-loaded', '~', '@', '&', DIGIT_SEQ} in "" line 1 position 0

I suppose CLion is expecting full MI compliance

hth313 commented 1 year ago

Yes, I kind of feared that would be the outcome. I implement what is needed by Emacs/MI and VS Code as I have encountered it a few years back.

I believe lldb has its own MI dialect, or is partial as well, I do not remember exactly.

Your goal is to use an IDE and you have tried CLion and VS Code, is that a correct understanding?

It has worked before with VS Code, but as mentioned in the other issue it seems to have changed. The easiest would be to work with the vs-cpptools team, which I did some years back. Ideally there should be a specific driver, be it Calypsi or some generic gdb-alike, but I have no idea how open they are to that. One reason why I did not try to pursue that is that it using a project called MIEngine which can only be built on Windows and I have no experience with C# (which I think they used) and I do not have any Windows work environment.

Regarding CLion it seems to be a commercial product. Not sure if it is worth pursuing making it work with it as I believe the few users of Calypsi are hobbyists.

It is not impossible for me to add more support for MI commands, but I would like a clear idea on what the best way forward would be, and probably some desire from the IDE side, whoever it may be, to pursue it. It would also take some time.

VS Code is probably the closest to working as it worked in the past.

How do you feel about these two IDEs, if you compare them?

Papakura commented 1 year ago

I have no experience, but I think the best choice might be platformIO It is built on VSCode, and is targeted to bespoke/ embedded development

Papakura commented 1 year ago

N/A