GDB Remote Serial Protocol support #27

Open
redoste wants to merge 17 commits from redoste/gint:gdb into dev
First-time contributor

This pull request implements support for the GDB remote serial protocol over USB using the fxlink protocol.

While it's far from complete, it should be good enough for debugging most add-ins. Currently the main issue preventing long debugging sessions is a bug causing 2 messages sent from the calculator to be merged by libfxlink: this was discussed on the projets shoutbox channel last week and a minimal working example of the bug is attached.

A few TODOs were left but they shouldn't impact the user and are mostly design decisions that can be discussed here.

The UBC driver has been tested on Graph 90+E (fx-CG50) and Graph 35+E II (fx-9860G III) and is not guaranteed to work on non-SH7305 calculators.

The feature can be tried using the gdb branch of my gintctl fork and the bridge running on the computer with GDB.

This pull request implements support for the GDB remote serial protocol over USB using the fxlink protocol. While it's far from complete, it should be good enough for debugging most add-ins. Currently the main issue preventing long debugging sessions is a bug causing 2 messages sent from the calculator to be merged by libfxlink: this was discussed on the `projets` shoutbox channel last week and a minimal working example of the bug is attached. A few `TODO`s were left but they shouldn't impact the user and are mostly design decisions that can be discussed here. The UBC driver has been tested on Graph 90+E (fx-CG50) and Graph 35+E II (fx-9860G III) and is not guaranteed to work on non-SH7305 calculators. The feature can be tried using the [`gdb` branch of my gintctl fork](https://gitea.planet-casio.com/redoste/gintctl/src/branch/gdb) and the [bridge](https://gitea.planet-casio.com/redoste/fxlink-gdb-proxy) running on the computer with GDB.
1.8 KiB
redoste added 12 commits 2023-06-04 20:11:33 +02:00
redoste force-pushed gdb from cb9373e873 to 6f53fa7842 2023-06-04 23:22:27 +02:00 Compare
This pull request can be merged automatically.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
You can also view command line instructions.

Step 1:

From your project repository, check out a new branch and test the changes.
git checkout -b redoste-gdb dev
git pull gdb

Step 2:

Merge the changes and update on Gitea.
git checkout dev
git merge --no-ff redoste-gdb
git push origin dev
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Lephenixnoir/gint#27
No description provided.