Прогресс эмуляции (сентябрь 2017)

Немного запоздали на этот раз с новостью, но на то были свои причины. Итак, приступаем к обзору того, что произошло с эмуляторами в сентябре.

RPCS3
Эмулятор PlayStation 3, как обычно, радует своим стабильным прогрессом:
  1. Реализована эмуляция нескольких sys_spu_* сисколлов, отныне рекомендуется использовать режим "Load liblv2.sprx only". Данный режим соответствует тому, что делает реальная консоль: сначала загружается модуль lv2, и уже затем, по мере вызова, происходит загрузка остальных модулей.
  2. Исправлен баг в рекомпиляторе PPU, при котором шло обращение к нулевому указателю
  3. Множество фиксов в sys_fs_* сисколлах, переписана реализация большинства sys_libc сисколлов.
  4. Улучшения в эмуляции RSX и рендерерах:
    • реализован аппаратный blit engine в Vulkan рендерере
    • теперь поток RSX попытается продолжить работу, если в процессе эмуляции наткнется на неизвестную / неправильную команду
    • унифицированный текстурный кэш для Vulkan и OpenGL рендереров
    • реализовано пакетное исполнение вызовов отрисовки: некоторые игры делают тысячи мизерных вызовов отрисовки в секунду, и по этой причине работают очень медленно. Данное изменение дает огромные улучшения производительности подобным играм (например, Resident Evil 4)
    • исправлены некоторые баги в декомпиляторах шейдеров
    • исправлены вылеты в некоторых играх при использовании аппаратного масштабирования текстур
    • реализован апскейлинг текстур: теперь можно играть в любимые игры в разрешении! (на данные момент изменения еще не слиты в основную ветвь развития)
Есть еще некоторые замечательные новости, про которые пока рано говорить, но будьте к ним готовы;)
Также под конец месяца произошло одно не очень приятное событие: Atlus, разработчик популярной серии игр Persona, пожаловалась на RPCS3 и потребовала удалить любые упоминания о Persona 5 с официального сайта и youtube-канала эмулятора. Претензии на этом пока, вроде бы, прекратились, и, будем надеяться, ситуация не получит дальнейшего развития.


Dolphin
Эмулятор GameCube / Wii выдал около 170 коммитов за месяц. Из заметного:
  1. Исправления в ускорителе DSP. Данная железяка отвечает за все операции доступа ядра DSP к памяти консоли, и до настоящего момента была изучена недостаточно хорошо. Решена проблема с одним из древнейших багов в эмуляторе - хрип в некоторых играх, таких как Harry Potter and the Sorcerer's Stone, Conflict: Desert Storm, Red Steel и многих других.
  2. Исправление чтения 0 байтов DVD плагином. После исправления таймингов в ядре эмулятора всплыла проблема, которую очень сложно было отладить: игра могла зависнуть и вылететь, даже не показав загрузочные экраны! Решение оказалось достаточно неожиданным. Реальный DVD-ридер консоли мог читать диск, но при этом не возвращать никаких данных, однако в коде эмуляторе возврат 0 байт при чтении с сектора диска считался ошибкой. Устранение этого недоразумения вылечило неожиданные зависания в некоторых играх.
  3. Добавлена поддержка LogicOps в D3D рендерер. Поддержка логических операций очень просто реализуема в OpenGL и Vulkan рендерерах, однако D3D11 никогда не поддерживал данный функционал, и приходилось обходиться хаками, чтобы хоть как то это сэмулировать. Полноценная поддержка логических операций была добавлена в D3D11.1, однако в WDDM драйвер Windows 7 поддержку LogicOps так и не завезли, хотя сам D3D11.1 операционной системой поддерживается... Как итог - разработчики приняли решение отказаться от поддержки Windows 7 в D3D рендерере. Поздравляем.
  4. Оптимизация поиска символов. Таблицы символов очень полезны для отладки и профилирования, т.к. позволяют увидеть стек вызовов функций игры с их реальными названиями. Однако при очень больших размерах символьных таблиц, в силу плохой реализации этого функционала в эмуляторе, выборка символов может приводить к падениям производительности даже в тех случаях, когда не производится отладка. Поэтому теперь JIT по умолчанию генерирует не такие удобочитаемые названия блоков кода, как раньше, однако это решает проблему с производительностью.
  5. Добавлена поддержка извлечения диска. Это начало новой эры в жизни эмулятора, реализация самого эпичного функционала консоли!

PCSX2
Даже не знаю, что и сказать... Эмулятор PlayStation 2 откровенно схалтурил в этом месяце. Можно упомянуть, разве что, исправление вылета в GSdx-OGL плагине на видеокартах Intel, а также добавление поддержки карт памяти PSX. На этом всё, последние 2 недели в основной ветке никаких изменений не было.


PPSSPP
Эмулятор PSP выдал 23 коммита, негусто. Из заметного: добавлена поддержка смарт-клавиатур (наподобие iPad Pro Smart Keyboard), использование SDL для тестирования графики с помощью Headless, а также добавлена поддержка геймпада Horipad One.


Xenia
Эмулятор Xbox 360 в этом месяце тоже халтурил. Добавлена поддержка Python 3, мелкий фикс в кэше текстур Vulkan рендерера, а также реализация извлечения градиента текстур в SPIR-V трансляторе шейдеров.


Cxbx-Reloaded
Эмулятор XBox в сентябре дал жару: 87 коммитов, да каких! Из наиболее заметного:
  • добавлены OOVPA таблицы DSound 4039
  • исправлена проблема, при которой EEPROM.bin был сгенерирован с неправильным параметром Factory AV Region
  • теперь игры с многими XBE файлами правильно работают
  • большие улучшения в декодере текстур
  • частичное портирование эмуляции NV2A с XQEMU: теперь некоторые из D3D функций работают в LLE режиме и не требуют HLE эмуляции!
  • портирован конвертер пиксельных шейдеров с Dxbx
  • еще множество мелких изменений, которые в сумме могут дать хорошие результаты

Cemu
Публичный релиз версии 1.10.0. Полностью переписана эмуляция звука, добавлена поддержка патчей из папки mlc01, добавлена поддержка RDTSC, прочие исправления багов.

+73

Комментарии 7

  1. Vorfeed от 5 октября 2017 06:40
    Да уж, разрабы PCSX2 вообще не радуют в последнее время.
    1. Гость yarosan
      Гость yarosan от 5 октября 2017 09:57
      Да там просто работы уже и нет особо
      1. Vorfeed от 5 октября 2017 13:39
        Это у ePSXe "работы особо нет", а вот у PCSX2 её - непочатый край, хотя бы потому что от хаков до сих пор еще не отказались и косяки большие и малые в 75 процентах игр всё еще присутствуют.
  2. DenLeon
    DenLeon от 5 октября 2017 13:00
    А про Citra будете что-нибудь писать в будущем? Тоже очень интересно было бы почитать о его развитии.

    По Дельфину - так обрадовался узнав что починили DSP. Полетел сразу же проверять пропали ли косяки со звуком в моем любимом Resident Evil 2. Нифига. Все такая же бодяга, звуки обрываются.
  3. Хотелось бы узнать про Citra,  очень жду его только из-за Monster Hunter))

  4. Darkriot от 8 октября 2017 13:05
    И снова привет))

    P.S. как насчёт (в виде экслюзива для emuplace) ракрыть нам секрет сообщения с патреона?))
    ($3000 Acknowledgement)
    --------------------
    Мой ПК:
    Intel Core i7-3770K 3500 GHz.
    Nvidia GTX 1070 8GB Gigabyte. (NEW UPGRADE!)
    8GB RAM 1333. (Kingston 4GBx2)
    1. Гость stalker4
      Гость stalker4 от 8 октября 2017 13:30
      Боюсь после этого всё русское комьюнити эмулятора пойдет в ЧС на патреоне
Добавить комментарий

Оставить комментарий