From a95f496a16f28f6c1bfc5f524df869f17d2107a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikolas=20H=C3=A4m=C3=A4l=C3=A4inen?= Date: Mon, 26 Oct 2026 23:31:54 +0200 Subject: [PATCH] feat: add Amiga custom register bitfield auto-comments and call-graph cycle propagation - Decode immediate .w and paired .l writes to DMACON, INTENA, INTREQ, ADKCON, BPLCON0, BLTCON0, BLTCON1, and BLTSIZE into persistent auto-comments that survive emit - Propagate self and inclusive (+callees) MC68000 cycle bounds (+loop, +ind) across the static call graph (hunks cg) - Surface inclusive subroutine cycle bounds in TUI v/V selection status bar, jsr/bsr callee timing hints, and the Functions (f) modal - Fix labels.type column name in FunctionLabelAddrs() --- MANUAL.md | 13 +- README.md | 6 +- internal/amiga/bitfields.go | 286 +++++++++++++++++++++++++++ internal/amiga/bitfields_test.go | 42 ++++ internal/analyzer/analyzer_test.go | 33 ++++ internal/analyzer/baseregs.go | 13 ++ internal/analyzer/format.go | 45 +++++ internal/callgraph/callgraph.go | 141 ++++++++++++- internal/callgraph/callgraph_test.go | 15 ++ internal/db/controller.go | 2 +- internal/tui/app.go | 232 ++++++++++++++++++++-- internal/tui/popups.go | 6 +- internal/tui/render.go | 10 +- internal/tui/tui_test.go | 68 ++++++- internal/tui/types.go | 17 +- 15 files changed, 886 insertions(+), 43 deletions(-) create mode 100644 internal/amiga/bitfields.go create mode 100644 internal/amiga/bitfields_test.go diff --git a/MANUAL.md b/MANUAL.md index 7b0a992..06c56fa 100644 --- a/MANUAL.md +++ b/MANUAL.md @@ -420,11 +420,14 @@ Emitted `; XREF:` comments above labels list the **enclosing caller label** and Every caller listed in `; XREF:` can be jumped to immediately in `src/hunk*.asm` via `rg "^