/ Каталог / Песочница / Gearboy
● Сообщество drhelius ⚡ Сразу

Gearboy

автор drhelius · drhelius/Gearboy

Эмулятор Game Boy / Game Boy Color со встроенным сервером MCP для отладки с помощью искусственного интеллекта и анализа ПЗУ.

Gearboy — это кроссплатформенный эмулятор Game Boy, Game Boy Color и Super Game Boy, написанный на C++ со встроенным сервером MCP. Агенты ИИ могут контролировать выполнение (пауза, шаг, возобновление), проверять память, устанавливать точки останова, дизассемблировать код и отслеживать состояние оборудования в режиме реального времени. Поддерживает транспорт stdio и HTTP (порт 7777). Работает на macOS, Windows, Linux, BSD и RetroArch.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

gearboy-2.replay ▶ готово
0/0

Установка

Выберите клиент

~/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"
      ]
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

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

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

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

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

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

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

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

Continue использует массив объектов серверов, а не map.

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

Добавьте в context_servers. Zed перезагружается автоматически.

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

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: Gearboy

Как отладить ПЗУ Game Boy с помощью искусственного интеллекта с помощью Gearboy

👤 Разработчики Homebrew Game Boy и хакеры ROM ⏱ ~30 min intermediate

Когда использовать: Вы разрабатываете самодельное ПЗУ для Game Boy и вам необходимо устранить проблемы во время выполнения.

Предварительные требования
  • Gearboy создан с поддержкой MCP — Сборка из исходного кода в соответствии с README GitHub.
  • Файл ПЗУ Game Boy (.gb или .gbc). — Ваш собственный доморощенный ROM или ROM, которым вы владеете на законных основаниях.
Поток
  1. Загрузите ROM и подключите
    Подключитесь к серверу Gearboy MCP и загрузите мой ПЗУ. Покажите мне текущее состояние процессора и дизассемблирование на счетчике программ.✓ Скопировано
    → Регистры ЦП, флаги и дизассемблированные инструкции на ПК
  2. Установите точку останова и исследуйте
    Установите точку останова по адресу 0x0150 (после заголовка). Пошаговое выполнение и объясните, что делает каждая инструкция.✓ Скопировано
    → Пошаговое выполнение с пояснениями инструкций.
  3. Проверить память
    Покажите мне содержимое WRAM от 0xC000 до 0xC0FF. Существуют ли какие-либо узнаваемые структуры данных?✓ Скопировано
    → Дамп памяти с анализом закономерностей данных

Итог: Четкое понимание того, как работает ПЗУ, с выявленными и объясненными ошибками.

Подводные камни
  • Точки останова на часто используемых адресах значительно замедляют выполнение. — Используйте условные точки останова или устанавливайте их только тогда, когда вы близки к ошибке.
Сочетать с: filesystem

Изучите архитектуру Game Boy в интерактивном режиме с помощью AI и Gearboy

👤 Студенты изучают оборудование и сборку ретро-консолей ⏱ ~45 min intermediate

Когда использовать: Вы хотите на практике понять, как работают процессор, память и графика Game Boy.

Предварительные требования
  • Gearboy с сервером MCP — Сборка из исходного кода
  • Простой тестовый ROM — Используйте доморощенный тестовый ROM или тестовые ROM от Blargg.
Поток
  1. Изучите карту памяти
    Покажи мне карту памяти Game Boy. Прочтите заголовок ПЗУ по адресу 0x0100-0x014F и объясните каждое поле.✓ Скопировано
    → Аннотированный заголовок с названием, типом картриджа, размерами ПЗУ/ОЗУ.
  2. Посмотрите VRAM в действии
    Просмотрите обработчик прерываний VBlank и объясните, как фрагменты загружаются во VRAM.✓ Скопировано
    → Пошаговое объяснение загрузки тайлов с состоянием VRAM

Итог: Практическое понимание аппаратного обеспечения Game Boy посредством интерактивного исследования.

Подводные камни
  • Сборка может оказаться сложной задачей для новичков. — Начните с простых тестовых ПЗУ, которые одновременно проверяют одну аппаратную функцию.

Комбинации

Сочетайте с другими MCP — эффект x10

gearboy-2 + filesystem

Экспорт дампов памяти и журналов отладки для автономного анализа.

Сохраните все содержимое VRAM в файл и добавьте аннотации к макету данных плитки.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
pause/resume/step none / step_count? Управление выполнением эмулятора 0
read_memory address: int, size: int Чтение памяти эмулятора по любому адресу 0
write_memory address: int, data: bytes Запись в память эмулятора 0
set_breakpoint address: int, type?: str Установите точку останова процессора или памяти 0
disassemble address: int, count: int Инструкции по дизассемблированию по адресу 0
get_cpu_state none Получить текущие регистры и флаги ЦП 0

Стоимость и лимиты

Во что обходится

Квота API
Н/Д — полностью локально
Токенов на вызов
100–500 токенов на команду отладки
Деньги
Бесплатный и открытый исходный код (лицензия MIT)
Совет
Используйте целевое чтение памяти вместо полных дампов, чтобы снизить использование токенов.

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: Н/Д
Исходящий трафик: Полностью локальный — никаких сетевых вызовов

Устранение неполадок

Частые ошибки и исправления

MCP server not responding

Убедитесь, что Gearboy создан с включенной поддержкой MCP. Убедитесь, что порт сервера (7777 по умолчанию) не используется.

Проверить: curl http://localhost:7777/health
ROM fails to load

Убедитесь, что файл ПЗУ является допустимым файлом .gb или .gbc. Убедитесь, что файл не поврежден.

Проверить: Check the ROM header with a hex editor
Breakpoint never hits

Убедитесь, что адрес находится в пути выполнения. Используйте дизассемблер, чтобы проверить, действительно ли код выполняется по этому адресу.

Проверить: Disassemble around the target address

Альтернативы

Gearboy в сравнении

АльтернативаКогда использоватьКомпромисс
GeargrafxВы хотите отлаживать ПЗУ PC Engine/TurboGrafx-16 вместо Game Boy.Different console, same MCP-enabled emulator approach by the same developer

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills