pureikyubu 1.9.1 — заметки о релизе

Сентябрь 2026 · предыдущий релиз 1.9 (сентябрь 2026) · Версия в Markdown

Версия 1.9.1 — сопроводительный релиз, который доводит до конца то, что начала 1.9. Встроенные Game Boy Advance и Game Boy теперь звучат и отсчитывают время так, как это делает железо: LCD Game Boy работает на собственной частоте 4.194304 МГц, APU Game Boy переписан по руководствам и впервые обзавёлся тестами, звуковой контроллер GBA и его звуковой драйвер BIOS на стороне хоста соответствуют официальному IPL, а проверки таймингов картриджа ресурсных испытаний проходят. На стороне GameCube релиз посвящён интерфейсу и сборке: устаревшая отладочная консоль и Win32-интерфейс убраны в пользу единственного SDL2-интерфейса, порт SDL получает недостающие ему диалоги настроек и карт памяти, TEV обзаводится своими таблицами перестановки, а рекомпиляторы работают на 32-битных хостах и в Windows 7. Портативный стенд закрывается на 362 из 362 тестов.

The Legend of Zelda: The Minish Cap, запущенная собственным boot ROM эмулятора
The Minish Cap.Запущена собственным boot ROM эмулятора (без официального образа BIOS): вступительная музыка идёт на собственной частоте движка, а библиотека сохранений EEPROM работает. Именно её саундтрек позволил докопаться до прерывания совпадения V-Counter.
Metroid Fusion на встроенном Game Boy Advance
Metroid Fusion.На высокоуровневом BIOS игра теперь рисует те же кадры, пиксель в пиксель, что и на официальном образе BIOS, причём образ не поставляется: HuffUnComp, контракт IRQ и микшер были считаны из официального IPL.

Главное

Добавлено

Сторона Game Boy портативного ядра

Сборка и инструменты

Изменено

SDL-интерфейс — единственный (задачи #421, #422, #420)

Ядро GBA/Game Boy

HLE BIOS для GBA

Gekko, TEV и сборка

Исправлено

Портативные машины

Ядро, стенд и оболочка

Известные проблемы

Что дальше

Портативное ядро — работа и следующего релиза: картинка Game Boy Color, оставшиеся проверки картриджа ресурсных испытаний (модель задержек и настоящий буфер предвыборки) и задачи GBA Link и Game Boy Player, ради которых существует встроенная машина, — игра для GameCube с GBA в её порту связи и есть тот тест, который их доказывает.

1.9.1 — сопроводительный релиз внутри линии 1.9. Релиз 2.0 остаётся следующим мажорным релизом — релизом периферии: шина EXI и устройства на ней (карты памяти, Broadband Adapter, RTC), последовательный интерфейс и контроллеры, дисковый интерфейс и привод, а также порт связи, который уже есть у стороны GBA. После этого проект переходит в своё устойчивое состояние планомерного, методичного улучшения.

Сборка

Windows. Откройте scripts/VS2026/pureikyubu.sln в Visual Studio 2026 и нажмите Build. Эмулятор — это SDL2-интерфейс в любой конфигурации — второго порта больше нет, — и solution содержит те же четыре проекта: pureikyubu, SDL2 (статическая библиотека), GBA и gba_bench. Собираются и x64, и x86 (Win32), рекомпиляторы следуют за хостом, а проекты нацелены на Windows 7. Цель pureikyubu_headless входит в solution, но не собирается командой «Build Solution».

Linux.

sudo apt install libglew-dev libsdl2-dev
git clone https://github.com/emu-russia/pureikyubu.git
cd pureikyubu
git submodule update --init
cd build && cmake .. && make
./pureikyubu pong.dol
cmake -DHEADLESS=ON .. && make          # цель без окна

Тесты.

MSBuild scripts/VS2026/pureikyubu_test.slnx -p:Configuration=Release -p:Platform=x64
vstest.console.exe scripts/VS2026/x64/Release/pureikyubu_test.dll /Platform:x64

У портативных машин собственный стенд — проходят 362 из 362 тестов:

testing/gba_bench/check.sh
testing/gba_bench/get_test_roms.sh     # публичные тестовые ROM и две картинки Acid2

Прошлые релизы по-прежнему доступны: Release Notes 1.9 · Заметки о релизе 1.9 · Заметки о релизе 1.8 · Заметки о релизе 1.7 · Версия в Markdown. Долгая история работы после релиза 1.6 — в дайджесте.