Substantially refactor ~everything to separate concerns and improve flow clarity

Highlights:
- Remove all use of malloc and friends
- Refactor message handling functions to work with references
- Move core message read => triage => respond logic loop to main
  function
- Improve message triage and support follow-up messages
- Refactor hex byte parsing
- Disable periodic interrupt when not playing
This commit is contained in:
Allen Hill
2026-05-08 12:59:42 -07:00
parent bdb1a8af0d
commit 4de22e01f3
7 changed files with 558 additions and 356 deletions
+3 -6
View File
@@ -3,7 +3,7 @@
{
"name": "AVR toolchain",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/base:alpine-3.18",
"image": "mcr.microsoft.com/devcontainers/base:alpine-3.22",
// Features to add to the dev container. More info: https://containers.dev/features.
"features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
@@ -14,12 +14,9 @@
"customizations": {
"vscode": {
"extensions": [
"ms-vscode.cpptools",
"ms-vscode.cmake-tools",
"rockcat.avr-support",
"harikrishnan94.cxx-compiler-explorer",
"ms-vscode.cpptools-extension-pack",
"twxs.cmake"
"rockcat.avr-support",
"harikrishnan94.cxx-compiler-explorer"
],
"settings": {
"editor.formatOnSave": true,