Skip to content

Disassembly Pane #3

@CTalkobt

Description

@CTalkobt
  1. No indicator that PC-follow mode is off: Navigating to an address (OnGoToAddress) or pressing Page Up/Down silently sets m_followPC = false. Nothing in the UI indicates follow is disabled; the user may be confused why the view is no longer tracking execution.

    • Suggestion: Add a toggle button ("Follow PC") in the toolbar that visually toggles and shows its current state.
  2. Page Up scrolls by a fixed 0x100 bytes, not by visible instructions: Because 6502 instructions are variable-length, subtracting 0x100 bytes from the base address does not guarantee the view scrolls up by one screenful; it may land in the middle of an instruction. The code notes "we just subtract some bytes and hope for the best."

    • Suggestion: Page Up should re-disassemble backwards starting from the first visible address by walking backward a fixed number of rows, not bytes.
  3. Breakpoint toggle via double-click only: OnToggleBreakpoint is bound to wxEVT_LIST_ITEM_ACTIVATED (double-click). Single-click selects; double-click on the same row toggles the BP. This makes it easy to accidentally trigger the BP toggle when trying to select an instruction.

    • Suggestion: Toggle breakpoint on single-click in the BP gutter column (col 0) only; reserve double-click for other actions (e.g., navigate to address in memory view).
  4. No context menu on instructions: There is no right-click menu offering "Set PC here", "Go to address in Memory View", "Add to Watch List", or "Go to definition (symbol)".

    • Suggestion: Add a right-click context menu with these actions.
  5. Current PC row is highlighted blue which obscures the breakpoint indicator: When the PC is on a line that also has a breakpoint, the blue row background makes the "●" in the BP column barely visible.

    • Suggestion: Use a combined color (e.g., highlighted row with a red dot still clearly visible) or show the BP indicator as a separate color on the PC row.
  6. No search / find in disassembly: There is no way to search for a mnemonic, operand, or address pattern across the disassembled output.

    • Suggestion: Add a search/filter bar (Ctrl+F) that highlights matching rows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions