/ Directorio / Playground / Gearboy
● Comunidad drhelius ⚡ Instantáneo

Gearboy

por drhelius · drhelius/Gearboy

Emulador de Game Boy/Game Boy Color con un servidor MCP integrado para depuración asistida por IA y análisis de ROM.

Gearboy es un emulador multiplataforma de Game Boy, Game Boy Color y Super Game Boy escrito en C++ con un servidor MCP integrado. Los agentes de IA pueden controlar la ejecución (pausar, avanzar, reanudar), inspeccionar la memoria, establecer puntos de interrupción, desensamblar código y monitorear el estado del hardware en tiempo real. Admite transporte stdio y HTTP (puerto 7777). Se ejecuta en macOS, Windows, Linux, BSD y RetroArch.

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

gearboy-2.replay ▶ listo
0/0

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "gearboy-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/drhelius/Gearboy"
      ]
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "gearboy-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/drhelius/Gearboy"
      ]
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "gearboy-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/drhelius/Gearboy"
      ]
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "gearboy-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/drhelius/Gearboy"
      ]
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "gearboy-2",
      "command": "TODO",
      "args": [
        "See README: https://github.com/drhelius/Gearboy"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "gearboy-2": {
      "command": {
        "path": "TODO",
        "args": [
          "See README: https://github.com/drhelius/Gearboy"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add gearboy-2 -- TODO 'See README: https://github.com/drhelius/Gearboy'

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: Gearboy

Cómo depurar una ROM de Game Boy con asistencia de IA usando Gearboy

👤 Desarrolladores de Homebrew Game Boy y hackers de ROM ⏱ ~30 min intermediate

Cuándo usarlo: Estás desarrollando una ROM casera de Game Boy y necesitas depurar problemas de tiempo de ejecución.

Requisitos previos
  • Gearboy construido con soporte MCP — Compilación desde el código fuente siguiendo el archivo README de GitHub
  • Un archivo ROM de Game Boy (.gb o .gbc) — Tu propia ROM casera o una ROM que poseas legalmente
Flujo
  1. Cargar ROM y conectar
    Conéctese al servidor Gearboy MCP y cargue mi ROM. Muéstrame el estado actual de la CPU y el desmontaje en el contador del programa.✓ Copiado
    → Registros de CPU, banderas e instrucciones desensambladas en la PC
  2. Establecer un punto de interrupción e investigar
    Establezca un punto de interrupción en la dirección 0x0150 (después del encabezado). Recorra la ejecución y explique qué hace cada instrucción.✓ Copiado
    → Ejecución paso a paso con explicaciones de instrucciones.
  3. inspeccionar la memoria
    Muéstrame el contenido de WRAM de 0xC000 a 0xC0FF. ¿Existe alguna estructura de datos reconocible?✓ Copiado
    → Volcado de memoria con análisis de patrones de datos.

Resultado: Una comprensión clara de cómo se ejecuta la ROM, con errores identificados y explicados.

Errores comunes
  • Los puntos de interrupción en direcciones afectadas con frecuencia ralentizan drásticamente la ejecución — Utilice puntos de interrupción condicionales o configúrelos solo cuando esté cerca del error
Combinar con: filesystem

Aprenda la arquitectura de Game Boy de forma interactiva con AI y Gearboy

👤 Estudiantes aprenden hardware y montaje de consolas retro. ⏱ ~45 min intermediate

Cuándo usarlo: Quieres entender cómo funcionan de forma práctica la CPU, la memoria y los gráficos de Game Boy.

Requisitos previos
  • Gearboy con servidor MCP — Construir desde la fuente
  • Una ROM de prueba sencilla — Utilice una ROM de prueba casera o las ROM de prueba de Blargg
Flujo
  1. Explora el mapa de la memoria
    Muéstrame el mapa de memoria de Game Boy. Lea el encabezado de la ROM en 0x0100-0x014F y explique cada campo.✓ Copiado
    → Encabezado anotado con título, tipo de cartucho y tamaños de ROM/RAM
  2. Mira VRAM en acción
    Revise el controlador de interrupciones de Vblank y explique cómo se cargan los mosaicos en VRAM.✓ Copiado
    → Explicación paso a paso de la carga de mosaicos con estado VRAM

Resultado: Comprensión práctica del hardware de Game Boy a través de exploración interactiva.

Errores comunes
  • El montaje puede resultar abrumador para los principiantes — Comience con ROM de prueba simples que ejerciten una función de hardware a la vez.

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

gearboy-2 + filesystem

Export memory dumps and debug logs for offline analysis

Dump the entire VRAM contents to a file and annotate the tile data layout.✓ Copiado

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
pause/resume/step none / step_count? Controlar la ejecución del emulador 0
read_memory address: int, size: int Leer la memoria del emulador en cualquier dirección. 0
write_memory address: int, data: bytes Escribir en la memoria del emulador 0
set_breakpoint address: int, type?: str Establecer un punto de interrupción de CPU o memoria 0
disassemble address: int, count: int Instrucciones de desmontaje en una dirección. 0
get_cpu_state none Obtenga registros y banderas de CPU actuales 0

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
N/A — fully local
Tokens por llamada
100–500 tokens per debug command
Monetario
Free and open source (MIT license)
Consejo
Use targeted memory reads instead of full dumps to keep token usage low.

Seguridad

Permisos, secretos, alcance

Almacenamiento de credenciales: N/A
Salida de datos: Fully local — no network calls

Resolución de problemas

Errores comunes y soluciones

MCP server not responding

Ensure Gearboy was built with MCP support enabled. Check that the server port (default 7777) is not in use.

Verificar: curl http://localhost:7777/health
ROM fails to load

Verify the ROM file is a valid .gb or .gbc file. Check the file isn't corrupted.

Verificar: Check the ROM header with a hex editor
Breakpoint never hits

Verify the address is in the execution path. Use the disassembler to check if code actually runs at that address.

Verificar: Disassemble around the target address

Alternativas

Gearboy vs otros

AlternativaCuándo usarlaContrapartida
GeargrafxYou want to debug PC Engine / TurboGrafx-16 ROMs instead of Game BoyDifferent console, same MCP-enabled emulator approach by the same developer

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills