Разработчик и мой друг rock88 завершил работу над портированием на платформу MotoMAGX выдающегося эмулятора первой PlayStation: pcsx4all. Этот эмулятор был разработан двумя испаноговорящими программистами, скрывающимися под никами Franxis и Chui, в рамках мероприятия GP2X Wiz programming contest, проводимого ресурсом GP32Spain.com в 2010 году.
Благосклонные разработчики выложили исходный код эмулятора, что повлекло за собой портирование на самые разнообразные платформы.
Эмулятор пока еще сыроват, не работает динамическая рекомпиляция, не запускаются некоторые игры, но в кое-что уже можно более-менее нормально поиграть, даже со звуком (например, Final Fantasy 8 и Resident Evil 3). Для более быстрой работы pcsx4all следует использовать библиотеку SDL HW (RC 4) и разгон процессора до 532-740 MHz.
Демонстрации скорости эмуляции:
Опции эмулятора:
CPU Type:
Interpreter: режим интерпретации, медленный;
Recompiler: режим рекомпиляции — инструкции PSX процессора переводятся в понятный нашему процессору вид, за счет чего скорость намного выше (на MotoMAGX пока не доступно).
CPU Clock: частота процессора эмулируемой консоли. Значение может изменяться от 10% до 200%. Нормальное значение — 100%, при нем процессор эмулируется точно. Меньшие значения используются для увеличения быстродействия (некоторые игры не используют полностью мощь процессора PSX), значения выше используются для замедления в особо «шустрых» играх.
CPU Bias: умножитель циклов CPU. Он может быть задан числом от 2 до 16. Значение по умолчанию — 4 и оно должно подойти для большинства игр, но конкретное значение зависит от конкретной игры. Чем больше значение, тем более быстро пойдет игра на эмуляторе в случае малого использования ею процессора эмулируемой консоли. Чем больше используется процессор в игре, тем меньшее значение BIAS надо ставить. BIAS = 1 — это реальная эмуляция консоли один в один. Но если у вас проблемы с запуском игры — попробуйте использовать BIAS 2 или 3.
CPU Core:
HLE (Interpreter): медленный интерпретатор, эмулирует BIOS через HLE.
BIOS (Interpreter): медленный интерпретатор, требуется PSX BIOS (scph1001.bin). Нужен для более точной эмуляции игр (с более правильным звуком, с проблемами совместимости).
Frame-Limit:
ON: ограничение кадров до максимально возможного на реальной консоли PSX.
OFF: в игре будет столько кадров, сколько потянет телефон и максимум ограничиваться не будет.
Frame-Skip:
0 to 9: настраивает количество пропущенных кадров, если игра медленно идет.
FPS algorithm:
Normal: пропуск кадров на основе частоты развёртки (NTSC=60 Hz или PAL=50 Hz).
Alternative: пропуск кадров на основе Framerate игры.
Interlace:
OFF: интерлейс отключен.
Simple: простой интерлейсинг (половина строк всегда показывается).
Progressive: прогрессивный интерлейсинг (чётные и нечётные строки показываются последовательно).
Sound:
OFF: звук отключен.
ON (basic): простой звук включен (FM и WAVE).
ON (XA): добавочно к basic включено XA-Audio (звук в видео-вставках).
ON (CD-Audio): добавочно к basic включено CD-Audio (аудио-дорожки).
ON (XA+CD-Audio): добавочно к basic включено XA-Audio и CD-Audio.
GPU Type:
Software: обычный, программный режим.
No Light: не просщитывается освещение.
No Blend: текстуры не смешиваются.
No Light+Blend: не просщитывается освещение + текстуры не смешиваются.
Game Fixes: различные фиксы для игр (Sio Irq Always Enabled, Spu Irq Always Enabled, Parasite Eve 2, Vandal Hearts 1/2 fix, InuYasha Sengoku Battle fix, Abbe’s Odyssey fix). Следует включать в предназначенных для фикса играх.
Sound Buffer Size:
1024 — 20480: размер звукового буфера, чем меньше, тем быстрее будет выводиться звук, но и задержки звука будут частыми, но не большими.
Стандартное управление:
- Up/Down/Left/Right — Джойстик;
- Square — 5;
- Circle — 6;
- Triangle — Громкость ‘-‘;
- Cross — Громкость ‘+’;
- Start — Центр джойстика;
- Select — Правый софт;
- L1 — 1;
- L2 — 7;
- R1 — 4;
- R2 — 8;
- SAVE — Решётка (#);
- LOAD — Звёздочка (*);
- SHOWFPS — 0.
Стандартный конфигурационный файл находится по пути conf/default.conf относительно директории установленного пакета. При необходимости в нём можно изменить управление и настройки. Далее для каждой игры будет создаваться свой конфигурационный файл на базе стандартного.
Требования для образов дисков:
- Один из форматов: ISO, BIN, BIN + CUE, BIN + TOC, IMG + CCD, MDF + MDS, IMG + SUB;
- Расширение файлов-образов обязательно должно задаваться в нижнем регистре;
- Не удаляйте CUE, TOC, CCD, MDS и SUB файлы, так как они нужны для проигрывания CD-Audio;
- Формат ISO со сжатием данных эмулятором не поддерживается;
- Поддерживается запуск исполняемых файлов PSX;
- Все образы следует загружать в директорию ./isos/ относительно директории установленного эмулятора.
Дополнительную информацию можно прочитать здесь. Список протестированных игр и их настройки можно посмотреть здесь.
Изменения в версии pcsx4all 2.2:
- Оптимизация в SPU;
- Улучшения и оптимизация в GPU;
- Поправлена совместимость в HLE, благодаря Notaz‘у;
- Исправлена ошибка в ограничителе FPS.
Скачать MGX-пакет для MotoMAGX, Motorola ZN5, версия 2.2
Скачать MGX-пакет для MotoMAGX, Motorola E8, версия 2.2
Скачать PEP-пакет для MotoMAGX, Motorola Z6, версия 2.2
Изменения в версии pcsx4all 2.3:
rock88 добавил поддержку сжатых образов в формате EBOOT.PBP (образы для PSP). Сжимать можно через такие программы как IceTea 1.3 или PSX2PSP. Загрузка происходит дольше, а в целом скорость эмуляции такая же, как и раньше. Но теперь можно экономить место в памяти!
Скачать MGX-пакет для MotoMAGX
Скачать исполнительный файл для MotoMAGX