Автор Тема: Как пользоваться функцией Rewind в эмуляторе MAME  (Прочитано 2347 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Rover

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Подскажите пожалуйста, не могу использовать функцию перемотки, в настройках включил ее, задал кнопку для нее, но когда нажимаю - пишет это Rewind error occured. See error.log for details. Функция сохранения работает, но ревайнд нет. Кстати, функция перемотки работает в ретроарх, но там старое ядро маме и я хочу пользоваться именно автономным эмулятором маме. Подскажите кто знает?
На реддите такой же вопрос без внятного ответа - https://www.reddit.com/r/MAME/comments/f83w1k/how_can_i_use_the_rewind_feature/
почему в ретроарх перемотка работает у меня а в эмуле самом нет.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5124
    • Просмотр профиля
На реддите такой же вопрос без внятного ответа - https://www.reddit.com/r/MAME/comments/f83w1k/how_can_i_use_the_rewind_feature/
Вообще-то там есть внятный ответ: эта фича для отладки, а не игры как в RetroArch.
там старое ядро маме
Ядро MAME там последнее, просто есть задержка в обновлении: https://github.com/libretro/mame. В коммитах добавили 0.219 (Merge tag 'mame0219' into mame-0.219).

Оффлайн RRR

  • Пользователь
  • Сообщений: 53
    • Просмотр профиля
Sharpnull, я правильно понял, что на локальной маме никак не задействовать перемотку? Каким образом тогда ретроарх маме робит?

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5124
    • Просмотр профиля
на локальной маме никак не задействовать перемотку?
Не знаю, я только перевёл слова по ссылке. Там есть перемотка, но похоже не такая удобная.
Каким образом тогда ретроарх маме робит?
Как я понимаю, там реализовано на основе savestate: каждые несколько кадров сохраняется savestate и во время перемотки происходит возврат по ним. RetroArch - фроненд для libretro, где все ядра имеют унифицированный интерфейс, поэтому везде, где есть savestate, может быть перемотка. В разделе по ядрам на https://docs.libretro.com можно заметить, что если нет savestate, то нет и rewind.
Также эту версию подтверждает настройка в BizHawk, где можно узнать оставшееся место для savestate и сколько примерно осталось записи с учётом размера буфера. Этот скриншот для Genesis Plus GX, поэтому нужно включить Medium savestates, иначе записи не будет (внизу можно настроить понятие Small/Medium/Large).
219901-0
« Последнее редактирование: 18 Март 2020, 14:56:14 от Sharpnull »

Оффлайн RRR

  • Пользователь
  • Сообщений: 53
    • Просмотр профиля
Не знаю, я только перевёл слова по ссылке.
(Ссылка на вложение)
если эта фича для отладки и без приписки "только для разработчиков", почему это висит в настройках системы и даже размер буфера можно задать, как-то странно всё это. Тем не менее, спасибо за разъяснения

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9387
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
RRR, разработчики (наивно) предполагают, что интересующиеся пользователи способны читать руководство / документацию, где описано что эти ключи делают.
https://docs.mamedev.org/commandline/commandline-all.html#core-state-playback-options