Диски для первой PlayStation стареют, приводы сбиваются, а оригинальная консоль занимает место под телевизором. Эмуляция позволяет сохранить доступ к любимым играм и пройти их с комфортом: с масштабированием, сохранениями и современным геймпадом. DuckStation — один из самых удобных эмуляторов PS1 для Linux. Ниже — установка, подготовка образов, настройка графики и разбор типичных проблем.
Что умеет DuckStation
DuckStation эмулирует PlayStation 1 на x86-64 и ARM, делает упор на совместимость и точность геометрии, а не на минимальные требования. Эмулятор понимает образы BIN/CUE, CHD и PBP, а многодисковые наборы подхватывает через M3U. Он умеет масштабировать внутреннее разрешение, исправлять дрожание полигонов через PGXP, подменять текстуры и вести библиотеку с обложками. Есть сохранения состояния, перемотка, турбо-режим и достижения RetroAchievements.
Эмулятор распространяется бесплатно и не содержит игр или BIOS. Использовать можно только собственные копии дисков и прошивку, снятую со своей консоли. Скачивание образов со сторонних сайтов и чужих BIOS нарушает авторские права, поэтому в статье таких ссылок нет.
Установка
Самый простой путь в Linux — Flatpak: сборка не зависит от версии библиотек дистрибутива и обновляется отдельно. В Linux Mint Flatpak уже установлен; в Debian или Ubuntu при необходимости добавьте поддержку.
flatpak install flathub org.duckstation.DuckStation
flatpak run org.duckstation.DuckStation
Альтернативы — AppImage с официальных релизов и пакет из AUR для Arch. После первого запуска мастер предложит выбрать каталог BIOS, папку с играми и создать карту памяти. Не указывайте системные каталоги целиком: эмулятору достаточно отдельной папки с образами.
BIOS и регион
BIOS отвечает за загрузку, работу карт памяти и часть служебных функций. Без него часть игр может не запуститься, а совместимость и поведение сохранений будут отличаться, поэтому лучше использовать дамп собственной консоли. Файлы принято называть по модели: scph5500.bin для Японии, scph5501.bin для Северной Америки, scph5502.bin для Европы.
Регион прошивки должен соответствовать региону диска. Европейские игры рассчитаны на 50 Гц, американские и японские — на 60 Гц; при несовпадении возможны ускорение, чёрно-белая картинка или отказ запуска. В настройках укажите каталог BIOS и включите Fast Boot, если хотите пропускать заставку.
Образы дисков
Формат BIN/CUE удобен, но состоит из двух файлов, которые легко потерять. CHD хранит диск в одном контейнере со сжатием и контрольными суммами, поэтому подходит для долгого хранения. Конвертация выполняется утилитой chdman из пакета mame-tools; исходники лучше не удалять до проверки.
sudo apt install mame-tools
chdman createcd -i "Game.cue" -o "Game.chd"
chdman verify -i "Game.chd"
Для многодисковых игр создайте плейлист M3U: текстовый файл со списком CUE или CHD по порядку. DuckStation покажет его как один диск и предложит смену носителя в нужный момент.
printf '%s\n' "Disc 1.cue" "Disc 2.cue" > "Game.m3u"
Графика и производительность
В разделе Graphics доступны Vulkan, OpenGL и программный рендер. Vulkan обычно быстрее и стабильнее на современных видеокартах, OpenGL выручает на старом железе и проприетарных драйверах. Внутреннее разрешение поднимайте постепенно: 2x–4x уже дают чистую картинку, а 8x и выше нужны скорее для скриншотов.
PGXP исправляет «плавающие» текстуры и дрожание вершин. Включайте геометрическую коррекцию и коррекцию перспективы, но не ждите чуда в играх, где разработчики намеренно использовали искажения. Широкоэкранные хаки меняют пропорции и могут ломать интерфейс, поэтому включайте их для конкретной игры, а не глобально.
sudo apt install vulkan-tools mesa-utils
vulkaninfo --summary
glxinfo -B
Если картинка дёргается, проверьте режим vsync и частоту монитора. На 60-герцовом экране игры NTSC идут ровно, а PAL требуют другого подхода. MangoHud помогает увидеть загрузку GPU и кадровое время: для Flatpak установите расширение VulkanLayer.MangoHud и запускайте с MANGOHUD=1.
Управление
Геймпады DualShock и DualSense определяются через SDL. В Flatpak доступ к устройствам ввода может быть ограничен; если контроллер не виден, выдайте разрешение на устройства. Помните, что —device=all открывает приложению больше доступа, чем нужно, поэтому используйте его осознанно.
lsusb | grep -i sony
flatpak override --user --device=all org.duckstation.DuckStation
evtest
Для проверки кнопок удобен evtest: он показывает события конкретного устройства. В настройках назначьте крестовину, стики, вибрацию и горячие клавиши. Клавиатура подходит для пошаговых игр, но для платформеров и гонок лучше взять геймпад.
Сохранения и карты памяти
Карта памяти — общий файл для группы игр, поэтому её стоит хранить вместе с образами и периодически копировать. Сохранения состояния мгновенны, но привязаны к версии эмулятора и настройкам: после обновления старый слот может не открыться. Для достижений RetroAchievements включайте хардкорный режим, который отключает перемотку и состояния. Отдельный профиль настроек удобно держать для каждой игры: тогда экспериментальный патч или широкий экран не испортят конфигурацию остальной библиотеки.
- Создайте отдельную карту памяти на каждую игру или серию.
- Храните резервную копию каталога memcards.
- Не полагайтесь только на save state.
- Проверяйте сохранение загрузкой после перезапуска.
Типичные проблемы
Чёрный экран чаще всего означает неверный регион BIOS или повреждённый образ. Проверьте контрольную сумму CHD, попробуйте другой рендер и запустите игру без патчей. Треск звука лечится увеличением буфера и сменой аудиовыхода; в PulseAudio помогает переменная PULSE_LATENCY_MSEC=60. Заикание на первом запуске связано с компиляцией шейдеров — дайте эмулятору прогреться.
Если Flatpak не видит папку с играми, проверьте права через flatpak override. Логи и настройки лежат в каталоге данных приложения внутри ~/.var/app/org.duckstation.DuckStation. Перед экспериментами скопируйте этот каталог, чтобы вернуться к рабочей конфигурации.
Чек-лист
- Установлен Flatpak или AppImage, игра запускается.
- BIOS соответствует региону диска.
- Образы проверены, для хранения выбран CHD.
- Рендер и разрешение подобраны без просадок.
- Геймпад настроен, горячие клавиши проверены.
- Карты памяти и настройки включены в резервную копию.
Итог
DuckStation даёт аккуратный способ играть в PS1 на Linux без возни с оригинальной консолью и без потери качества. Начните с одного диска, проверьте BIOS и образ, затем подберите рендер и масштаб. Когда база заработает стабильно, добавьте библиотеку, обложки и резервное копирование — и эмулятор станет таким же обычным приложением, как музыкальный плеер.