PS2 Эмуляция Memory Card на IDE HDD

Тема в разделе "PlayStation 5", создана пользователем romka, 22 янв 2006.

Статус темы:
Закрыта.
  1. ps2fan

    ps2fan Долбанутый консольщик

    Сообщения:
    2.346
    Симпатии:
    112
    Баллы:
    123
    Я вижу плюс в том что не придется долго ждать во время надписей "Do not remove mc" =)
     
  2. mod

    mod Well-Known Member

    Сообщения:
    451
    Симпатии:
    32
    Баллы:
    73
    Подскажи, где можно качнуть эту сырую версию эмулятора карты памяти.
     
  3. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    Публичного релиза пока не было. То, что есть сейчас - это всего лишь "proof of concept" и не пригодно для бытового применения. Нет смысла выкладывать софт, так как всё равно он позволяет только загружать сохранения с "образа" карты памяти, но не позволяет ничего сохранить. Даже форматирование карты памяти пока ещё не работает.
     
  4. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    Желающим потестировать бета-версию эмулятора карты памяти могу выдать имеющуюся демонстрационную версию программы. Работает эмулятор сейчас конечно ещё далеко не идеально, но парочка игр вроде нормально работает (потестировал на Unlimited SaGa и Manhunt).
     
  5. pvc1

    pvc1 Т-101

    Сообщения:
    6.840
    Симпатии:
    379
    Баллы:
    303
    Как им пользоваться ?
     
  6. -v-

    -v- Well-Known Member

    Сообщения:
    241
    Симпатии:
    8
    Баллы:
    63
    а можно ли вместо HDD на USB-флешку сохраняться ? Если да то я б непротив потестировать.
     
  7. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    При первом запуске на HDD создаётся pfs-партиция на 128 мегабайт. Там с помощью загрузчика можно создать пустую виртуальную карту памяти или сделать там образ реальной карты памяти.

    Для запуска игр нужно создать файл текстовый mceboots.cnf и записать его в папку MemoryCards на созданной партиции или в папку BEDATA-SYSTEM на карте памяти. Формат записей в mceboots.cnf такой:
    <название запускаемого файла игры>,<путь к файлу IOPRP>.
    Например:
    SLUS_206.78,cdrom0:\IOPRP252.IMG;1
    SCUS_972.03,cdrom0:\MODULES\IOPRP242.IMG;1


    Текущая версия эмулятора поддерживает только игры, использующие MCMAN.IRX. Игры, использующие MC2_D.IRX или MC2_S1.IRX не поддерживаются, так как эмулятор в этом случае блокирует доступ игры к джойстику (будет исправлено позже).
     
  8. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    В данный момент нельзя, сейчас поддерживаются только pfs-партиции на HDD. И даже не исключено, что сохранение на USB-флэшку будет работать плохо, то есть медленнее, чем на карту памяти.
     
  9. SAMuel

    SAMuel Alpian Warrior Glegleddore Gleglezavr

    Сообщения:
    660
    Симпатии:
    13
    Баллы:
    68
    А ведь хорошая идея, я за то чтоб была возможность сохранения и на USB-Flashку, тоже по мере возможности тестил бы :D
     
  10. ps2fan

    ps2fan Долбанутый консольщик

    Сообщения:
    2.346
    Симпатии:
    112
    Баллы:
    123
    romka, а как скорость записи/чтения? Больше чем на карте памяти? Для меня реальный интерес представляет именно ускорение процесса сохранения/загрузки.
     
  11. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    Специально скорости не замерял, но чтение на вид существенно быстрее работает. Запись работает не шибко быстро, но вроде тоже побыстрее, чем на реальной карте памяти. Сейчас эмулятор работает с pfs-партицией, смонитрованной в режиме robust (т.е. всё кэширование записи отключено), да и все операции чтения делаются с минимальным кэшированием в целях экономии памяти, так что расчитывать на большой прирост скорости пока не приходится. В будущем конечно предполагается переход на raw-партиции и оптимизации операций чтения/записи, вот тогда, видимо, будет очень заметная разница.
     
  12. cx2

    cx2 Well-Known Member

    Сообщения:
    426
    Симпатии:
    6
    Баллы:
    68
    В будущем не планируется эмуляция MC на USB Flash?
     
  13. ps2fan

    ps2fan Долбанутый консольщик

    Сообщения:
    2.346
    Симпатии:
    112
    Баллы:
    123
    romka, А принцип работы какой? Грузишь программу, а потом ставишь диск с игрой и она подменяет модуль карты памяти? Или отдельный модуль?
    Если первый вариант, то реально ли реализовать отдельный модуль которй потом можно засунуть в iso? И потом еще все это подружить с HDL?
     
  14. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    В основе лежит такой же принцип предварительного обновления системных модулей (плюс запуск дополнительных IRX) и блокировки перезагрузки I/O процессора, как и в программе HDD Enabler. Способ этот конечно не очень хороший, но зато практичный. Поэтому и нужно вручную указывать расположение IOPRP-файла для каждой игры. Ещё один недостаток данного способа в том, что врядли будут работать игры, которые в процессе работы запускают новые ELF-файлы, так как удачно блокирует обычно только первая попытка перезапустить IOP.

    Эмулятор в текущем состоянии просто работает с файлом на PFS-партиции, поэтому кроме самого эмулятора запускаются модули DEV9.IRX, ATAD.IRX, HDD.IRX и PFS.IRX. Из этого следуют две проблемы: во первых, игры которые поддерживают network adaptor (то есть сами запускают свой DEV9.IRX) могут и даже скорее всего "завесят" эмулятор, во-вторых, некоторым играм может внезапно нехватить памяти на IOP (хотя это маловероятно, так как расходы памяти на кэширование минимизированы, но всё же возможно).

    Эмулятор выполнен в виде отдельного IRX, который подменяет некоторые записи в таблицах экспортируемых функций драйвера устройства SIO2, которыми пользуются драйвера карт памяти, в результате чего запросы от драйвера карт памяти до реального устройства не доходят, а эмулируются. Проблема только в том, что этими же функциями пользуются драйвера джойстиков, а распознование целевого устройства на SIO2 пока не доведено до ума, так что перехват вызово от MC_D.IRX и MC_S1.IRX пока отключён, чтобы не блокировался доступ к джойстику.

    С HD loader это подружить нельзя, так как он монополизирует доступ к HDD. Когда-то потом этот эмулятор будет добавлен в состав нового загрузчика игр с HDD.
     
  15. ps2fan

    ps2fan Долбанутый консольщик

    Сообщения:
    2.346
    Симпатии:
    112
    Баллы:
    123
    Спасибо, все понятно.
    Остается надеяться что новый загрузчик с HDD будет.
     
  16. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    Список файлов, в которых производится поиск настроек для запуска игры:
    pfs0:/MemoryCards/mceboots.cnf (PFS-партиция MCSIOEMU на HDD)
    mc0:/BADATA-SYSTEM/mceboots.cnf
    mc0:/BEDATA-SYSTEM/mceboots.cnf
    mc1:/BADATA-SYSTEM/mceboots.cnf
    mc1:/BEDATA-SYSTEM/mceboots.cnf
    host0:mceboots.cnf (папка на компьютере доступна при подключении NapLink-совместимого кабеля и запуска клиента ПК)
     
  17. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    На всякий случай для выкладываю свою виртуальную карту памяти с несколькими сэйвами (Virtua Fighter, Manhunt, Unlimited SaGa).
     

    Вложения:

    • memorycard0.zip
      Размер файла:
      76,5 КБ
      Просмотров:
      535
  18. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
    Обнаружил первую глючащую при работе с данным эмулятором игру - Resident Evil 4.
     
  19. romka

    romka Очень главный

    Сообщения:
    4.450
    Симпатии:
    184
    Баллы:
    203
Статус темы:
Закрыта.