Regenerator 2000


Un désassembleur 6502 moderne et interactif pour les machines 8-bit Commodore. Une version modernisée de Regenerator.
- 🕹️ Analyse manuelle — Une ILC (interface en ligne de commande) rapide et centrée sur le clavier pour une exploration pratique : naviguer dans le code, définir les données, étiqueter les sous-routines, ajouter des commentaires et affiner itérativement votre désassemblage.
- 🤖 Analyse automatisée — Un serveur MCP intégré permet aux assistants IA de piloter le désassembleur par programmation. Associé à des compétences spécialement conçues, il peut analyser des programmes entiers — classer des blocs, tracer des routines et nommer des symboles — avec une intervention humaine minimale.
Utilisez l'un ou l'autre flux de travail seul, ou combinez-les : laissez l'IA faire un premier passage, puis affinez les résultats de manière interactive.
Consultez les Exemples pour voir ce qui peut être accompli, avec des jeux pré-désassemblés sur différentes plateformes Commodore !
Fonctionnalités
Regenerator 2000 apporte des outils modernes au désassemblage 6502 :
- Désassemblage : Prise en charge complète du 6502, y compris les opcodes non documentés.
- Vue hexadécimale :
- Affichage côte à côte avec le désassemblage.
- Navigation synchronisée ou indépendante.
- Jeu de caractères PETSCII non décalé ou décalé et Screencode.
- Sprites :
- Affichage côte à côte avec le désassemblage.
- Multicolore ou monochrome
- Bitmap :
- Affichage côte à côte avec le désassemblage.
- Haute résolution (320x200) et multicolore (160x200).
- Utilise le rendu par blocs de quadrants pour une résolution complète dans l'ILC.
- Jeu de caractères :
- Affichage côte à côte avec le désassemblage.
- Multicolore ou monochrome
- Blocs :
- Affichage côte à côte avec le désassemblage.
- Débogueur : Connectez-vous à VICE pour un désassemblage en direct, points d'arrêt, exécution/pas à pas (F2–F9) ; panneau de débogage dans le volet de droite.
- Mini-carte : Mini-carte du fichier en cours d'analyse.
- Systèmes : Prend en charge les machines 8-bit Commodore : C64, C128, VIC-20, Plus/4, PET 4.0, PET 2.0 et 1541.
- Importation : Charger les formats de fichier suivants
- PRG : Fichiers PRG
- CRT : Images de cartouche avec support de sélection de banque
- D64 : Images de disque 35/40/42 pistes
- D71 : Images de disque double face 70/80 pistes
- D81 : Images de disque 80 pistes
- T64 : Images de cassette
- VSF : Fichiers de session VICE
- RAW / BIN : Fichiers binaires bruts
- DIS65 : Fichiers de projet 6502bench
- REGEN2000PROJ : Fichiers de projet Regenerator 2000
- Décompresseur binaire : Émule un bac à sable 6502 précis au cycle près en arrière-plan pour décompresser automatiquement les programmes C64 compressés.
- Exportation vers .asm ou HTML. Assembleurs pris en charge :
- 64tass
- ACME
- Kick Assembler
- ca65
- Gestion de projet : Sauvegarder et charger votre travail
- Analyse : Analyse automatique pour identifier les régions de code et de données.
- Édition :
- Étiquettes : Ajouter, modifier et supprimer des étiquettes locales et globales.
- Énumérations : Définir et appliquer des mappages valeur-nom à trois niveaux (Système, Global, Projet) pour remplacer les nombres magiques dans le désassemblage et les données par des noms sémantiques.
- Commentaires : Ajouter des commentaires latéraux et des commentaires de ligne.
- Origine : Modifier l'adresse de chargement/origine du binaire.
- Types de données : Convertir des régions en Code, Octet, Mot, Adresse, Adresse Lo/Hi, Adresse Hi/Lo, Mot Lo/Hi, Mot Hi/Lo, Texte PETSCII, Texte Screencode, Fichier externe ou Indéfini.
- Annuler/Rétablir : Prise en charge complète de l'historique pour toutes les actions.
- Navigation :
- Sauter : Aller à des adresses spécifiques, des numéros de ligne spécifiques, ou suivre les opérandes.
- Réf. croisées : Inspecter les références croisées pour les étiquettes/adresses.
- Historique : Revenir aux emplacements précédents.
- Personnalisation :
- Configurer les paramètres du document (max réf. croisées, système, assembleur).
- Options d'affichage personnalisables (afficher/masquer toutes les étiquettes, etc.).
- ILC (Interface en Ligne de Commande) :
- Interface utilisateur textuelle
- Tout peut être fait depuis le clavier
- Mode visuel : Sélection de type Vim pour les opérations par lots.
- Serveur MCP :
- Prise en charge du serveur Model Context Protocol (MCP) pour un accès programmatique
- Modes de transport HTTP et stdio
- Outils pour la manipulation du désassemblage, la recherche en mémoire, les opérations sur les blocs
- Ressources pour accéder aux données binaires et aux vues
- Compétences d'analyse intégrées qui automatisent la classification des blocs, le traçage des routines et le nommage des symboles
- Rapide :

Prérequis
Terminaux recommandés
Pour garantir la meilleure expérience, notamment en ce qui concerne les raccourcis clavier et le rendu, nous recommandons d'utiliser un terminal moderne.
| Plateforme | Terminaux recommandés |
|---|
| Windows | Windows Terminal, Alacritty, WezTerm |
| macOS | iTerm2, Ghostty, Alacritty, kitty, WezTerm |
| Linux | Ghostty, Alacritty, kitty, WezTerm, GNOME Terminal |
Installation
Depuis Crates.io
cargo install regenerator2000
Depuis les sources
git clone https://github.com/ricardoquesada/regenerator2000.git
cd regenerator2000
cargo install --path .
Démarrage rapide avec les agents IA
Pour commencer rapidement à analyser des binaires à l'aide d'un agent IA (tel qu'Antigravity ou Claude Code), vous pouvez utiliser le dépôt regenerator2000-template. Il est préconfiguré avec toutes les compétences et autorisations d'agent nécessaires pour que vous puissiez commencer à analyser et rétro-ingénierer des binaires immédiatement.
Utilisation
Lancez l'application avec un fichier optionnel à charger :
regenerator2000 [OPTIONS] [path/to/file.prg]
Options en ligne de commande