Вышла вторая alpha-версия эмулятора Sony PlayStation 3 — RPCS3 0.0.3 (Украдено с L.O.R.)
Почему я решила напомнить про эмуль и скопипастила новость. В этой сборке существенно улучшена производительность и совместимость. У меня теперь вместо 100% загрузки проца (3770k 4.5GHz) идет всего 70%. А значит есть запас по прочности до проседания фпс. Также оно теперь (у меня лично) перестало падать на загрузке второй локации после тренировочной. И ещё оно запускается фактически теперь одним кликом. Единственное что я сама меняла в настройках эмулятора для демонс соулс это рендер через вулкан и включила xInput. Всё остальное - автоматически.
RPCS3 — это эмулятор игровой консоли Sony PlayStation 3 (и, возможно, PlayStation Vita в будущем). RPCS3 работает под ОС Windows и GNU/Linux (поддержка macOS пока не планируется из-за отсутствия поддержки в macOS Direct3D 12 или OpenGL 4.5/4.6 или Vulkan) Несмотря на высокую производительность Cell Broadband Engine (Cell BE) и RSX Reality Synthesizer, авторы RPCS3 уже смогли запустить около сотни игр, причём с кадровой частотой от 30 до 60 кадров в секунду. На текущий момент RPCS3 является LLE (Low level emulation) эмулятором и требует firmware оригинальной консоли. В будущем планируется переход к HLE (High level emulation), поэтому прошивка больше не будет нужна.
Основные изменения:
Для PowerPC Processing Unit (PPU) теперь используется LLVM 4.0.
Для Synergistic Processing Unit (SPU) теперь корректно обрабатываются инструкции FCGT и FCMGT.
Множество улучшений в ASMJIT для Synergistic Processing Unit (SPU).
Множество улучшений в ядре эмулятора — реализована проверка на наличие AVX инструкций для Intel CPU, улучшена работа автозагрузки LLE модулей и т.д.
Для Low Level Emulation (LLE) добавлена поддержка автоматической загрузки следующих библиотек libdtslbrdec, libssl, libhttp, libfs (это библиотеки встроены в оригинальную прошивку PS3 или находятся вместе с играми).
Для High Level Emulation (HLE) реализованы следующие функции — cellHddGameGetSizeKB, cellGameDataGetSizeKB, cellGameGetSizeKB, cellPadGetDataExtra, cellPadPeriphGetData, cellHttpUtilParseUri, sys_fs_disk_free.
В RSX добавлены спидхаки, исправлена обработка инструкции BRK и RET, множество улучшений в обработке вершин.Множество улучшений в трёх графических бэкендах — OpenGL, Direct3D 12 и Vulkan.
В Crypto-модуле исправлена загрузка некоторых файлов SPRX.Добавлена поддержка DualShock 4.Для XInput добавлена поддержка вибрации.
Начато портирование на xBSD системы.
Для Linux добавлена поддержка Vulkan, реализован вывод звука через ALSA, улучшена совместимость с OpenSource (Mesa) видеодрайверами, добавлены бинарные сборки с помощью AppImages.
GUI переписан на Qt.
Для PowerPC Processing Unit (PPU) исправлена обработка таких инструкций как FCTIW, FCTID, FCTIWZ, FCTIDZ, MULLW, DIVD, DIVDU, DIVW, DIVWU, MULHW, добавлена эмуляция новых инструкций, таких как STSWI, LSWI.
Основные планы развития эмулятора:
В августе 2017 года — улучшить генерацию шейдеров, реализовать недостающие системные вызовы для liblv2 и sys_net, исправить ошибки связанные с регистрами RawSPU.
В среднесрочной перспективе планируется реализовать поддержку ASIO для Windows, добавить поддержку MSAA, разрешение 4k, добавить LLVM бэкенда для SPU.
В долгосрочной перспективе — реализовать загрузку игр с лицензионных blu-ray дисков без оригинальной прошивки Sony PlayStation 3 (сейчас, для корректной работы эмулятора, нужно установить прошивку из файла PS3UPDAT.PUP через меню File и пункт Install Firmware, если этого не сделать, то игры работать не будут).
В сентябре 2017 года — добавить поддержку ASLR, улучшить рекомпилятор PPU LLVM и начать реализацию SPU LLVM, улучшить эмуляция пиксельного конвейера.