Как починить ошибку сохранения в GBA-эмуляторе с Flash 128K
Если GBA-игра в iGBA пишет, что сохранение не удалось, почти всегда дело в памяти: игра работает на Flash 64K, а ей нужен Flash 128K. Обновите iGBA до версии 2.14.0 или новее — там режим Авто сам считывает нужный размер из файла игры. Если ошибка не уходит, в Настройки → Сохранение поставьте Размер флэш-памяти на Флэш-память 128K и откройте игру снова.
Быстрое решение
- Обновите iGBA через App Store. Версия 2.14.0 изменила определение объёма памяти для сохранений, и большинство таких ошибок с ней пропадает.
- Откройте Настройки → Сохранение и найдите Размер флэш-памяти. Сначала оставьте Авто.
- Полностью закройте игру и откройте снова. Подпись под настройкой гласит «Применяется при следующем запуске игры» — и это буквально так: смена настройки посреди сессии ничего не меняет.
- Сохранитесь через меню самой игры. Если она всё равно жалуется, вернитесь назад, выберите Флэш-память 128K, откройте игру снова и сохранитесь ещё раз.
Почему некоторым GBA-играм нужно 128K памяти для сохранений
Картриджи GBA хранили сохранения на одном из трёх типов чипов: SRAM, EEPROM или flash. Большой flash-чип держит 128K, разбитых на два банка по 64K, и игра переключается между ними особой командой.
Дайте такой игре чип на 64K — и переключение банка никуда не ведёт. Запись ложится прямо на первый банк, игра считывает данные обратно для проверки, находит не то, что записывала, и показывает собственную ошибку сохранения. Отсюда и фразы вроде «обменяйте резервную память»: игра винит картридж, потому что на настоящем железе это было единственным объяснением.
Это же объясняет и то, когда вылезает ошибка — а меня это долго сбивало с толку. Первые сохранения помещаются в первый банк, так что часами всё работает нормально. Ошибка появляется только тогда, когда игра впервые пишет запись, которая должна попасть во второй банк — часто уже глубоко в сюжете.
До версии 2.14.0 iGBA включал 128K только для игр из своего встроенного списка или если файл .sav на диске уже занимал 131 072 байта. Фанатские хаки и несколько региональных релизов в этот список не попадали и работали на 64K. Начиная с 2.14.0 режим Авто считывает тип flash-памяти прямо из файла игры, а ручная настройка на 64K игнорируется, если игра объявляет, что ей нужен 128K.
Проверьте, с чем сейчас работает ваша игра
Гадать не нужно. Откройте игру, которая не сохраняется, зайдите в Настройки → Сохранение и прокрутите до Диагностика сохранения, сразу под настройкой flash-памяти. Если игра не открыта, там просто предложат сначала открыть игру.
Важны две строки: та, что начинается с core: (чип, с которым на самом деле работает эмулятор), и та, что начинается с file: (размер вашего .sav).
| Что видно | Что это значит | Что делать |
|---|---|---|
core: flash 128K и файл на 131072 байт | Память верная | Если игра всё равно не сохраняется — повреждено само сохранение: смотрите следующий раздел |
core: flash 64K у игры, которая падает поздно | Работает на половине памяти | Поставьте Авто на 2.14.0 или новее, либо Флэш-память 128K, и откройте игру снова |
| Файл на 64K у картриджа на 128K | Старая сессия сохранилась на 64K | Половина этого сохранения никогда не была записана; верните более старую копию |
file: no .sav on disk yet | Игра ещё не сохранялась ни разу | Сохранитесь один раз через меню игры, потом проверьте снова |
Панель только считывает данные — никуда ничего не отправляется, если вы не скопируете текст сами. Если обращаетесь к нам за помощью, именно этот текст полезнее всего прислать.
Сохранение GBA-эмулятора повреждено: как вернуть старую копию
Вот неприятная часть. Если игра уже записала сохранение, работая на 64K, смена настройки этот файл не восстановит. Настройка решает, как будут записаны будущие сохранения — она не может воссоздать данные, которые так и не попали в файл.
Дальше — от самого мягкого варианта к последнему средству:
- Восстановление внутриигровых сохранений в меню паузы возвращает сохранение, каким оно было до автозагрузки. Пункт появляется только если у iGBA есть такая копия — если его нет, значит копии не осталось.
- Быстрое сохранение, сделанное до ошибки: загрузите его из Быстрые сохранения, затем сохранитесь через меню самой игры с правильным размером памяти. На 2.14.0 старое быстрое сохранение загружается с тем размером памяти, который нужен игре, а не с тем 64K, с которым его создавали.
- Резервная копия из Настройки → Резервное копирование. Восстановление перезаписывает сохранения с тем же именем, так что сначала экспортируйте текущее.
- Перезапуск и загрузка сохранения игры в меню паузы запускает игру прямо из .sav, минуя автосохранение — если подозреваете, что проблема именно в нём.
Обычное сохранение и быстрое сохранение в этой ситуации
Быстрое сохранение замораживает всю консоль целиком, поэтому оно никогда не падает так, как падает собственное сохранение игры. Это подталкивает перестать сохраняться в игре и жить на одних быстрых сохранениях. Я бы не стал: именно .sav игры вы экспортируете, бэкапите и используете для связи между устройствами, а повреждённый файл останется повреждённым под любыми быстрыми сохранениями сверху.
Импорт .sav из другого эмулятора
Импорт .sav в меню ⋯ раздела Библиотека игр применяет сохранение к подходящей игре. Сначала проверьте его размер. Сохранение для игры на 128K должно весить 131 072 байта; если другой эмулятор записал 65 536 байт, он уже работал там на половине памяти. iGBA запустит игру на 128K, но недостающую половину файла восстановить не получится.
iGBA не включает в себя никаких игр. Используйте только файлы игр, на которые у вас есть право.
Вопросы и ответы
Почему ошибка сохранения появляется только в конце игры?
Стоит ли держать Flash 128K включённым всегда?
Исправляет ли Flash 128K уже повреждённое сохранение?
Влияет ли эта настройка на игры GBC?
Другие инструкции по iGBA
- Как сделать и загрузить быстрое сохранение в эмуляторе GBA
- Как отмотать ошибку назад и ускорить эмулятор GBA
- Как использовать чит-коды в эмуляторе GBA или GBC
- Как пользоваться GBA-кабелем связи рядом или онлайн и как обменяться с самим собой на одном iPhone
- Как подключить геймпад Xbox или PS5 к эмулятору GBA на iPhone
- Как играть в игры GBA и GBC на Apple Watch
- Как создать резервную копию сохранений GBA перед переустановкой или новым телефоном
- Как перенести сохранения GBA между iPhone и Android
- Как пропатчить ROM на iPhone в iGBA и запустить хак
- Radical Red на iPhone: от патча до файла сохранения
- Unbound на iPhone: переносим старое сохранение
- Белый экран ROM-хака: что делает плохой патч и как это починить
- Все вопросы о iGBA
- Назад к iGBA