Sandbox
@ricardoquesada/regenerator2000

6502 disassembler with TUI and MCP server

Regenerator 2000 helps you inspect, label, comment, and export 6502 disassemblies for Commodore machines. You can work in the TUI by hand, or connect an agent through the MCP server to automate analysis, block classification, and symbol naming.

164 starsโ€ข9 forksโ€ขRustโ€ขUpdated 23d ago
Who it's for

Builders who analyze Commodore 8-bit binaries and want a disassembler their agent can drive.

What it delivers

You can turn raw Commodore binaries into labeled, reviewable disassembly with either keyboard work or agent automation.

What it does

Interactive TUI disassembly

Browse code with a keyboard-driven terminal UI, x-refs, undo/redo, history, and visual selection.

Commodore file support

Load PRG, CRT, D64, D71, D81, T64, VSF, RAW/BIN, DIS65, and REGEN2000PROJ files.

VICE debugger support

Connect to VICE for live disassembly, breakpoints, and step controls.

Automatic analysis

Classify code and data regions, trace routines, and name symbols with built-in analysis tools.

Export and roundtrip checks

Export assembly or HTML for 64tass, ACME, Kick Assembler, and ca65, with verification support.

MCP server access

Expose disassembly operations, memory search, block tools, and resources over HTTP or stdio for agents.

Binary unpacking

Use a cycle-accurate 6502 sandbox to unpack packed C64 programs automatically.

How to get it

  1. 1Run
    cargo install regenerator2000
  2. 2Run
    git clone https://github.com/ricardoquesada/regenerator2000.git
    cd regenerator2000
    cargo install --path .
  3. 3Start the application with an optional file to load
    regenerator2000 [OPTIONS] [path/to/file.prg]

README

Regenerator 2000

Rust Crates.io Version discord

logo

A modern, interactive 6502 disassembler for Commodore 8-bit machines. A modern take on Regenerator.

  • ๐Ÿ•น๏ธ Manual Analysis โ€” A fast, keyboard-centric TUI for hands-on exploration: navigate code, define data, label subroutines, add comments, and iteratively refine your disassembly.
  • ๐Ÿค– Automated Analysis โ€” A built-in MCP Server lets AI assistants drive the disassembler programmatically. Paired with purpose-built skills, it can analyze entire programs โ€” classifying blocks, tracing routines, and naming symbols โ€” with minimal human intervention.

Use either workflow on its own, or combine them: let the AI do a first pass, then refine the results interactively.

Check out the Examples to see what can be accomplished, featuring pre-disassembled games across different Commodore platforms!

Features

Regenerator 2000 brings modern conveniences to 6502 disassembly:

  • Disassembly: Full 6502 support including undocumented opcodes.
  • Hex Dump:
    • Side-by-side view with disassembly.
    • Synchronized or independent navigation.
    • Unshifted or Shifted PETSCII and Screencode charset.
  • Sprites:
    • Side-by-side view with disassembly.
    • Multicolor or Single Color
  • Bitmap:
    • Side-by-side view with disassembly.
    • High-Resolution (320x200) and Multicolor (160x200).
    • Uses quadrant-block rendering for full resolution in TUI.
  • Charset:
    • Side-by-side view with disassembly.
    • Multicolor or Single Color
  • Blocks:
    • Side-by-side view with disassembly.
  • Debugger: Connect to VICE for live disassembly, breakpoints, run/step (F2โ€“F9); Debugger panel in the right pane.
  • Mini map: Mini map of the file being analyzed.
  • Systems: Supports Commodore 8-bit machines: C64, C128, VIC-20, Plus/4, PET 4.0, PET 2.0, and 1541.
  • Import: Load the following file formats
    • PRG: Standard Commodore program files
    • CRT: Cartridge images with bank selection support
    • D64: 35/40/42-track disk images
    • D71: 70/80-track double-sided disk images
    • D81: 80-track disk images
    • T64: Tape images
    • VSF: VICE Session files
    • RAW / BIN: Raw binary files
    • DIS65: 6502bench project files
    • REGEN2000PROJ: Regenerator 2000 project files
  • Binary Unpacker: Emulate a cycle-accurate 6502 background sandbox to automatically decompress packed C64 programs.
  • Export to .asm or HTML. Supported assemblers:
    • 64tass
    • ACME
    • Kick Assembler
    • ca65
  • Project Management: Save and load your work
  • Analysis: Auto-analysis to identify code and data regions.
  • Editing:
    • Labels: Add, edit, and remove local and global labels.
    • Enums: Define and apply three-tiered value-to-name mappings (System, Global, Project-specific) to replace magic numbers in disassembly and data with semantic names.
    • Comments: Add side comments and line comments.
    • Origin: Change the load address/origin of the binary.
    • Data Types: Convert regions to Code, Byte, Word, Address, Lo/Hi Address, Hi/Lo Address, Lo/Hi Word, Hi/Lo Word, PETSCII Text, Screencode Text, External File, or Undefined.
    • Undo/Redo: Full history support for all actions.
  • Navigation:
    • Jump: Go to specific addresses, specific line numbers, or follow operands.
    • X-Ref: Inspect cross-references for labels/addresses.
    • History: Navigate back to previous locations.
  • Customization:
    • Configure document settings (max x-refs, system, assembler).
    • Customizable display options (show/hide all labels, etc.).
  • TUI:
    • Text User interface
    • Everything can be done from the keyboard
    • Visual Mode: Vim-like selection for batch operations.
  • MCP Server:
    • Model Context Protocol (MCP) server support for programmatic access
    • HTTP and stdio transport modes
    • Tools for disassembly manipulation, memory search, block operations
    • Resources for accessing binary data and views
    • Bundled analysis skills that automate block classification, routine tracing, and symbol naming

hexdump screenshot charset screenshot sprites screenshot bitmap screenshot debugger screenshot

Requirements

Recommended Terminals

To ensure the best experience, especially regarding keyboard shortcuts and rendering, we recommend using a modern terminal.

PlatformRecommended Terminals
WindowsWindows Terminal, Alacritty, WezTerm
macOSiTerm2, Ghostty, Alacritty, kitty, WezTerm
LinuxGhostty, Alacritty, kitty, WezTerm, GNOME Terminal

Installation

From Crates.io

cargo install regenerator2000

From Source

git clone https://github.com/ricardoquesada/regenerator2000.git
cd regenerator2000
cargo install --path .

Quick Start with AI Agents

To quickly start analyzing binaries using an AI agent (such as Antigravity or Claude Code), you can use the regenerator2000-template repository. It comes pre-configured with all the required skills and agent permissions so you can start analyzing and reverse-engineering binaries immediately.

Usage

Start the application with an optional file to load:

regenerator2000 [OPTIONS] [path/to/file.prg]

CLI Options

  • --help: Print help message
  • --version: Print version information
  • --import_lbl <PATH>: Import VICE labels from the specified file
  • --export_lbl <PATH>: Export labels to the specified file (after analysis/import)
  • --export_asm <PATH>: Export assembly to the specified file (after analysis/import)
  • --export_html <PATH>: Export HTML to the specified file (after analysis/import)
  • --assembler <NAME>: Override the assembler format for export. Valid values: 64tass, acme, ca65, kick
  • --headless: Run in headless mode (no TUI), useful for batch processing
  • --verify: Verify export roundtrip (export โ†’ assemble โ†’ diff) for all assemblers. Implies --headless
  • --mcp-server: Run MCP server (HTTP on port 3000)
  • --mcp-server-stdio: Run MCP server via stdio
  • --vice <HOST:PORT>: Auto-connect to VICE binary monitor at startup (e.g. --vice localhost:6502)
  • --dump-system-config-files <PATH>: Dump all built-in system config files (system-*.toml) to the specified directory and exit. Useful for inspecting or customizing system definitions.
  • --dump-theme-files <PATH>: Dump all built-in theme files (theme-*.toml) to the specified directory and exit. Edit them and place in the config directory to create custom themes.
  • --dump-enum-files <PATH>: Dump all built-in enum files (enum-*.toml) to the specified directory and exit. Edit them and place in the config directory to create custom enums.

Supported file formats: .prg, .crt, .d64, .d71, .d81, .t64, .vsf, 6502bench (.dis65), .bin, .raw, and .regen2000proj.

Keyboard Shortcuts

All the keyboard shortcuts are documented here: keyboard_shortcuts

Support and Documentation

  • Documentation
  • Examples: Disassembled Commodore games and software showcase, demonstrating what can be achieved with Regenerator 2000 on various supported platforms.
  • Support in Discord (join the #regenerator2000 channel, under "Misc Projects")

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Acknowledgements

License

Dual license: MIT and Apache 2

Files in the repo

Repository payloadโ€ข25 top-level entries
  • .agent
  • .github
  • crates
  • docs
  • examples
  • src
  • tests
  • tools
  • .gitignore
  • .mcp.json
  • .pre-commit-config.yaml
  • .readthedocs.yaml
  • AGENTS.md
  • AUTHORS
  • build.rs
  • Cargo.lock
  • Cargo.toml
  • CHANGELOG.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • LICENSE-APACHE
  • LICENSE-MIT
  • mkdocs.yml
  • README.md
  • ROADMAP.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

๐Ÿชจ why use many token when few token do trick โ€” Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k