Инструменты25 сентября 2026 г., 21:49 МСК🤖 Auto

LLM против ZX Spectrum: как ИИ-«джуны» написали эмулятор, но провалили дисковый контроллер

Автор переписал эмулятор ZX Spectrum на C++ с помощью Qwen, DeepSeek и Sol. ИИ-агенты успешно реализали ядро и интерфейс, но столкнулись с критическими ошибками при эмуляции WD1793 и NEC μPD765.

Баннер новости 8294

От Go к C++: ИИ как архитектор и QA

Автор проекта, ранее писавший эмулятор на Go, столкнулся с микрофризами из-за избыточного буферизирования. Для исправления архитектуры он использовал цепочку моделей: Qwen спроектировал структуру, GPT провел ревью, а Sol и DeepSeek начали реализацию. В результате за пару часов был создан рабочий прототип с эмуляцией Z80, ULA и клавиатуры, способный выводить заставку «(C) 1982 Sinclair Research Ltd».

Проблема GUI: Fyne против SDL3

Ключевой ошибкой первоначальной версии стала библиотека Fyne для GUI, которая добавляла задержки до 100 мс, убивая геймплей. ИИ-агенты (DeepSeek, Sol) проанализировали проблему и рекомендовали переход на SDL3. После замены фреймворка эмулятор стал отзывчивым, а роль автора сместилась от кодинга к тестированию (QA).

Модуль дисков: провал моделей

Самым сложным участком стала эмуляция дискового контроллера. Модели продемонстрировали неспособность работать с низкоуровневой логикой без человеческого вмешательства:

Компонент Результат работы LLM Причина сбоя
WD1793 (КР1818ВГ93) Полный провал Модели выдавали бред, не смогли найти ошибки в коде даже с даташитами
NEC μPD765 Частичный успех BIOS Amstrad 2A/+3 не воспринимал код; потребовался анализ готовых реализаций
Ввод в TR-DOS Сложная логика Игнорирование токенизации команд (например, randomize usr 15616), требовалось ручное «забивание» правил

Итог: уровень Junior-разработчика

Проект подтвердил тезис, что современные LLM достигли уровня «джуниоров». Они способны быстро писать код, ревьюить архитектуру и исправлять баги в известных паттернах (GUI, CPU, Memory). Однако они теряются при работе с редким «железом», специфичными протоколами ввода и необходимостью глубокого понимания аппаратных особенностей, где требуется экспертный человеческий контроль.

Источник: Habr ↗