Энтузиасты с помощью Claude запустили эмулятор PS2 прямо во вкладке браузера – GTA San Andreas идет почти на полной скорости
Двое энтузиастов под никами yousriii и aegyptiacus11 представили TabStationToo – эмулятор PlayStation 2, который работает прямо во вкладке браузера. Большую часть кода написала модель Claude Opus 5.5 от Anthropic, а сами разработчики решали, что делать, тестировали игры и сообщали ИИ об ошибках.
В основе TabStationToo лежит ядро популярного эмулятора PCSX2, распространяемого по лицензии GPL-3.0. Энтузиасты перенесли его в браузер и построили вокруг новый интерфейс. Пользователь открывает страницу, выбирает файл BIOS и папку с образами своих дисков – и можно запускать игры.
Все файлы остаются на компьютере пользователя и никуда не загружаются, игра читается напрямую из образа диска. Лучше всего эмулятор работает в Chrome, а в браузерах на базе Firefox возможны проблемы с картами памяти.
Разработчики проверили TabStationToo на нескольких тайтлах:
Guitar Hero
GTA San Andreas
Final Fantasy XII
Dragon Ball Z: Budokai Tenkaichi 3
Naruto Shippuden: Ultimate Ninja 5
Resident Evil 4
Тесты проходили в основном на Mac с чипом M1 Max и системе на Linux с процессором Ryzen 7 7840U. Первые пользователи уже запустили King of Fighters 2002, Ring of Red, Front Mission 4 и SmackDown! Here Comes the Pain.
Работу с Claude разработчики выстроили по четким правилам. В репозитории лежит файл CLAUDE.md/AGENTS.md, который ИИ читает в начале каждой сессии. Там описаны сама разработка, ограничения браузера, порядок сборки и тестирования, а также требования указывать PCSX2 в качестве источника и никогда не заявлять, что что-то работает, без проверки.
Для автоматического тестирования Claude собрал отдельную версию эмулятора без браузера. Она загружает BIOS PS2, прогоняет несколько сотен кадров и делает скриншот после каждого изменения в коде. Бенчмарки шли в фоне и не занимали экран, пока энтузиасты занимались другими задачами.
Главной сложностью стала скорость. На ПК эмулятор PCSX2 работает быстро за счет динамической рекомпиляции – перевода кода PS2 в машинный код процессора компьютера, а браузер такого не позволяет. Вместе с Claude разработчики написали замену, которая на лету переводит код PS2 в WebAssembly, и сверили результаты с оригинальным кодом PCSX2 до полного совпадения.
Графический рендерер PCSX2 перенесли на WebGPU. Больше всего времени ушло на оптимизацию: для каждой идеи Claude проверял, остается ли картинка идентичной до пикселя, и вел журнал всех попыток, включая неудачные, которых было много.
PCSX2 превращает код PS2 прямо в машинный код вашего процессора и использует хитрые трюки с памятью и процессором, которые браузер не разрешает. Нам пришлось переделать эти части, чтобы они работали внутри браузера, но это стоило определенной скорости.
По словам разработчиков, Guitar Hero, Resident Evil 4 и Dragon Ball Z: Budokai Tenkaichi 3 на их машинах идут на 100% скорости, а GTA San Andreas держит в среднем 98–99%. Для таких случаев в эмуляторе есть функция понижения частоты эмулируемого процессора – она помогает добраться до полной скорости, хотя в некоторых играх может вызывать глюки.
Самые тяжелые сцены пока работают медленнее. Один из пользователей пожаловался на низкую скорость Tekken Tag Tournament, и yousriii выпустил обновление, после которого игра на его машине ускорилась примерно с 40% до 80%.
Need for Speed: Underground тоже запускается, но первый запуск и первый круг на трассе идут очень медленно. Эмулятор заставляет браузер запоминать уже скомпилированные участки кода, так что повторные запуски проходят заметно плавнее.
Сохранения работают так же, как на настоящей консоли. Пользователь создает виртуальную карту памяти объемом 8 МБ, которая сохраняется файлом на компьютере. Количество карт не ограничено, их можно подписывать. Для быстрых сохранений есть функция снапшотов.
Играть можно на клавиатуре с переназначением клавиш или на геймпаде. Пользователи подтвердили работу контроллеров от PS5 и Xbox Series X без дополнительной настройки, а для игры вдвоем клавиатуру можно назначить второму игроку. Если многократно вставлять диск в виртуальную консоль, сработает пасхалка, напоминающая о детских мучениях с PS2.
Главным преимуществом браузерной версии разработчики называют отсутствие установки и кроссплатформенность – эмулятор работает в Windows, Linux и macOS. Еще одну причину выбора браузера энтузиасты пока держат в секрете и обещают раскрыть позже.
В сообществе, естественно, возник вопрос – зачем создавать отдельный эмулятор, если есть RomM. yousriii пояснил, что RomM – менеджер ROM-файлов, а для игры в браузере он использует EmulatorJS, который не поддерживает PS2.
BIOS и образы игр пользователь должен предоставить сам. Разработчики отметили, что TabStationToo распространяется с открытым исходным кодом, не содержит защищенных авторским правом материалов Sony, а легально использовать эмулятор можно только с BIOS и играми, снятыми с собственной консоли и дисков.
TabStationToo не связан ни с Sony, ни с командой PCSX2, так что о найденных ошибках разработчики просят сообщать им, а не создателям PCSX2. Энтузиасты отдельно поблагодарили команду PCSX2 за более чем 20 лет работы, без которой их эмулятор бы не существовал.
- Моддеры потратили 4 года и вскрыли чип MechaCon – последний крупный секрет PlayStation 2
- Фотографии 26-летней давности с очередями за PS2 напомнили о временах, когда стояли ради приставки, а не ради перепродажи
- Владелец PS2 снял драматическое видео про отказ графического чипа прямо во время гонки