64kramsystem / 64kramsystem/ghidra-vice-connector
Drive CPU registers and memory (1541 drive)
- Lenguaje dominante
- Python
- Estrellas
- 1
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## Description
VICE exposes registers and memory for floppy drive CPUs (drive 8, 9, etc.) via different `memspace` values in the BMP protocol. The 1541 drive has its own 6502 CPU that can be debugged.
## Proposed implementation
- Add a second thread object in the trace for the drive CPU (e.g., `C64.Threads[1]` with display "1541 Drive 8")
- Query drive registers via `registers_get(memspace=MEMSPACE_DRIVE8)`
- Read drive memory via `memory_get(..., memspace=MEMSPACE_DRIVE8)`
- Add drive-specific memory regions (2KB RAM at $0000-$07FF, ROM, etc.)
- Update event handling to distinguish which CPU stopped
## Why this matters
Useful for debugging fast loaders, copy protection routines, and custom drive code — a niche but important C64 development area.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
El issue describe la incorporación de un segundo thread para la CPU de la unidad 1541 al conector Ghidra-VICE. Empieza examinando el código existente de gestión de trazas y threads, probablemente en el módulo principal del conector. Busca dónde se llama a `registers_get` y `memory_get` con parámetros `memspace`. Comprende la integración del protocolo BMP y cómo se gestionan los distintos espacios de memoria (como MEMSPACE_DRIVE8). Añadir regiones de memoria específicas de la unidad (2KB RAM, ROM) requerirá mapear estas direcciones. Revisa la gestión de eventos para ver cómo se distinguen actualmente las paradas de la CPU y cómo se amplían. Las pruebas consistirán en conectarse a VICE y verificar que el estado de la CPU de la unidad se lee correctamente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- cli, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100