/ Diretório / Playground / Gearboy
● Comunidade drhelius ⚡ Instantâneo

Gearboy

por drhelius · drhelius/Gearboy

Emulador de Game Boy / Game Boy Color com um servidor MCP integrado para depuração assistida por IA e análise de ROM.

Gearboy é um emulador multiplataforma de Game Boy, Game Boy Color e Super Game Boy escrito em C++ com um servidor MCP integrado. Os agentes de IA podem controlar a execução (pausar, avançar, retomar), inspecionar a memória, definir pontos de interrupção, desmontar código e monitorar o estado do hardware em tempo real. Suporta transporte stdio e HTTP (porta 7777). Funciona em macOS, Windows, Linux, BSD e RetroArch.

Por que usar

Principais recursos

Demo ao vivo

Como fica na prática

gearboy-2.replay ▶ pronto
0/0

Instalar

Escolha seu 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"
      ]
    }
  }
}

Abra Claude Desktop → Settings → Developer → Edit Config. Reinicie após salvar.

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

Cursor usa o mesmo esquema mcpServers que o Claude Desktop. Config de projeto vence a global.

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

Clique no ícone MCP Servers na barra lateral do Cline, depois "Edit Configuration".

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

Mesmo formato do Claude Desktop. Reinicie o Windsurf para aplicar.

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

O Continue usa um array de objetos de servidor em vez de um map.

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

Adicione em context_servers. Zed recarrega automaticamente ao salvar.

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

Uma linha só. Verifique com claude mcp list. Remova com claude mcp remove.

Casos de uso

Usos do mundo real: Gearboy

Como depurar uma ROM de Game Boy com assistência de IA usando Gearboy

👤 Desenvolvedores de Homebrew Game Boy e hackers de ROM ⏱ ~30 min intermediate

Quando usar: Você está desenvolvendo uma ROM homebrew do Game Boy e precisa depurar problemas de tempo de execução.

Pré-requisitos
  • Gearboy construído com suporte MCP — Construa a partir do código-fonte seguindo o README do GitHub
  • Um arquivo ROM do Game Boy (.gb ou .gbc) — Sua própria ROM homebrew ou uma ROM que você possui legalmente
Fluxo
  1. Carregue a ROM e conecte
    Conecte-se ao servidor Gearboy MCP e carregue minha ROM. Mostre-me o estado atual da CPU e desmontagem no contador do programa.✓ Copiado
    → Registros de CPU, sinalizadores e instruções desmontadas no PC
  2. Defina um ponto de interrupção e investigue
    Defina um ponto de interrupção no endereço 0x0150 (após o cabeçalho). Percorra a execução e explique o que cada instrução faz.✓ Copiado
    → Execução passo a passo com explicações de instruções
  3. Inspecionar memória
    Mostre-me o conteúdo do WRAM de 0xC000 a 0xC0FF. Existem estruturas de dados reconhecíveis?✓ Copiado
    → Despejo de memória com análise de padrões de dados

Resultado: Uma compreensão clara de como a ROM é executada, com bugs identificados e explicados.

Armadilhas
  • Pontos de interrupção em endereços frequentemente atingidos retardam drasticamente a execução — Use pontos de interrupção condicionais ou defina-os apenas quando estiver próximo do bug
Combine com: filesystem

Aprenda a arquitetura do Game Boy de forma interativa com IA e Gearboy

👤 Alunos aprendendo hardware e montagem de console retrô ⏱ ~45 min intermediate

Quando usar: Você quer entender como a CPU, a memória e os gráficos do Game Boy funcionam na prática.

Pré-requisitos
  • Gearboy com servidor MCP — Construir a partir da fonte
  • Uma ROM de teste simples — Use uma ROM de teste homebrew ou ROMs de teste da Blargg
Fluxo
  1. Explore o mapa da memória
    Mostre-me o mapa de memória do Game Boy. Leia o cabeçalho da ROM em 0x0100-0x014F e explique cada campo.✓ Copiado
    → Cabeçalho anotado com título, tipo de cartucho, tamanhos de ROM/RAM
  2. Veja VRAM em ação
    Percorra o manipulador de interrupção VBlank e explique como os blocos são carregados na VRAM.✓ Copiado
    → Explicação passo a passo do carregamento de blocos com estado VRAM

Resultado: Compreensão prática do hardware do Game Boy por meio da exploração interativa.

Armadilhas
  • A montagem pode ser opressora para iniciantes — Comece com ROMs de teste simples que exercitam um recurso de hardware por vez

Combinações

Combine com outros MCPs para 10× de alavancagem

gearboy-2 + filesystem

Exporte despejos de memória e logs de depuração para análise offline

Despeje todo o conteúdo da VRAM em um arquivo e anote o layout dos dados do bloco.✓ Copiado

Ferramentas

O que este MCP expõe

FerramentaEntradasQuando chamarCusto
pause/resume/step none / step_count? Controlar a execução do emulador 0
read_memory address: int, size: int Leia a memória do emulador em qualquer endereço 0
write_memory address: int, data: bytes Gravar na memória do emulador 0
set_breakpoint address: int, type?: str Defina um ponto de interrupção de CPU ou memória 0
disassemble address: int, count: int Desmontar instruções em um endereço 0
get_cpu_state none Obtenha registros e sinalizadores atuais da CPU 0

Custo e limites

O que custa rodar

Cota de API
N/A – totalmente local
Tokens por chamada
100–500 tokens por comando de depuração
Monetário
Gratuito e de código aberto (licença MIT)
Dica
Use leituras de memória direcionadas em vez de dumps completos para manter baixo o uso de token.

Segurança

Permissões, segredos, alcance

Armazenamento de credenciais: N / D
Saída de dados: Totalmente local – sem chamadas de rede

Solução de problemas

Erros comuns e correções

MCP server not responding

Certifique-se de que o Gearboy foi construído com suporte MCP habilitado. Verifique se a porta do servidor (padrão 7777) não está em uso.

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

Verifique se o arquivo ROM é um arquivo .gb ou .gbc válido. Verifique se o arquivo não está corrompido.

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

Verifique se o endereço está no caminho de execução. Use o desmontador para verificar se o código realmente é executado nesse endereço.

Verificar: Disassemble around the target address

Alternativas

Gearboy vs. outros

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

Mais

Recursos

📖 Leia o README oficial no GitHub

🐙 Ver issues abertas

🔍 Ver todos os 400+ servidores MCP e Skills