64kramsystem / 64kramsystem/ghidra-vice-connector
Create interrupt vectors at $FFFA-$FFFF
- Lingua principale
- Python
- Stelle
- 1
- Fork
- 0
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Add a convenience action that reads the six interrupt vector bytes at \$FFFA–\$FFFF and creates labelled entry points / functions in the current program:
| Address | Vector | Label |
|---------|--------|-------|
| \$FFFA–\$FFFB | NMI | `NMI_VECTOR` |
| \$FFFC–\$FFFD | RESET | `RESET_VECTOR` |
| \$FFFE–\$FFFF | IRQ/BRK | `IRQ_VECTOR` |
Steps:
1. Read the 6 bytes from the live VICE memory (or the loaded program image).
2. Dereference each 16-bit pointer.
3. Create a label and disassemble at the target address.
This gives immediate entry points for game disassembly — NMI and IRQ handlers contain most of the timing-critical game logic.
Can be a Ghidra script alongside `RebaseToC64Load.java`, or a remote method callable from the debugger.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Esamina lo script esistente `RebaseToC64Load.java` per comprendere il modello di scripting di Ghidra. Il lavoro consiste nel leggere la memoria di VICE agli indirizzi $FFFA-$FFFF, dereferenziare i puntatori e creare etichette in Ghidra. Inizia verificando in che modo il connettore accede alla memoria live e crea etichette. Esegui un test eseguendo uno script in Ghidra su un'immagine ROM C64.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- cli, tooling
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 65/100