Вход

Просмотр полной версии : Расположение IPL Пандоры на карточке памяти


ErikPshat
20.02.2008, 03:59
По поводу сообщения об ошибке:

Too few free sector<16>. 32 at least required

Что нужно перевести так: "Слишком мало свободных секторов <имеется всего 16>. Необходимо минимум 32 свободных сектора после 16-го."

Заметил много вопросов по этому поводу.

Объясняю:
Как известно, файл msipl.bin, получающийся с помощью "Despertar Cementerio 1-4", имеет размер 241664 байта.
А так как один сектор равен 512 байт, то сделав вычисление 241664:512 получаем 472. Такое количество секторов необходимо было для установки msipl.bin от DC 1-4. Поэтому необходимо было предварительно на карточке памяти делать "двойное дно", т.е. отодвигать загрузочный сектор карточки памяти дальше 487-го (16+472), чтобы зарезервировать место под msipl.bin.

Затем Booster сделал мультилоадер, в котором файл msipl.bin от DC1-4 он поместил на карточку памяти в папку ipl, а свой маленький мультилоадер, размером 16384 байта записывал перед загрузочным сектором в сектора 16-47 включительно (16384:512=32).
В результате такого маленького файла, отпадала необходимость в резервировании свободного места перед загрузочным сектором. Но не всегда, об этом позже...

Теперь Dark AleX, выпускает Time Machine v0.1 (http://pspupdates.qj.net/Dark-AleX-releases-Time-Machine-v0-1-load-previous-FW-CFW-from-memstick/pg/49/aid/113797), в которой его Мульти-IPL-лоадер уже встроен в программу и который весит ровно столько же, сколько и от Booster-a - 16384 байта или 32 сектора. И пишется так же в физические сектора с 16-го по 47-ой включительно.
Замечу, что Мультилоадер Dark Alex-a отличается от мультизагрузчика от Booster-a, причём даже компактнее код (короче), просто последние несколько секторов забиты нулями, но всё равно занимает ровно 32 сектора (кратное 8-ми).
В результате такого маленького файла, отпадает необходимость в резервировании свободного места перед загрузочным сектором. Но не всегда...
Сейчас именно об этом:

Расположение загрузочного сектора на карточках памяти:

Загрузочный сектор содержит в себе данные о формате файловой системы и его размере, туда записывается информация о папках и файлах, имеющихся на карточке, а так же содержит прочую служебную информацию.

Sony Memory Stick Pro Duo™ 1 Gb - начинается с 369-го сектора. (Спасибо GVr2 за информацию)
Карточки такой не имею - и скрина нема.
Sony Memory Stick Pro Duo™ 2 Gb - начинается с 1663-го сектора.
2964
Sony Memory Stick Pro Duo™ 4 Gb - начинается с 36-го сектора.
2965


Владельцы карточек памяти на 4 Гига!
Обратите внимание, что у вас загрузочный сектор MS Pro Duo начинается с 36-го сектора!
А как известно, IPL пишется в сектора 16-47.
Но, как раз в этой области находится загрузочный сектор карточки памяти. Отсюда у вас и появляется сообщение о том, что мало свободного места, что необходимо для записи IPL 32 свободных сектора, начиная с 16-го.

То же самое происходит и с мультилоадером от Booster-a, только там в DOS-окне появляется сообщение: Check free reserved sector : to small reserved sectors.
Прогой Pandora Installer for 3.xx -R3a- от HellCat можно насильно записать файл msipl.bin без резервирования свободного места, но на карточках 4 Гб, затрётся начало загрузочного сектора и карточка памяти становится вообще не читаемой, тогда потребуется новое форматирование для восстановления структуры диска.

Для этого необходимо создать зарезервированную свободную область.
Это можно сделать так:

Запустите программу "Pandora Installer for 3.xx -R3a-" из меню "Игра -> Memory Stick™". Имейте ввиду, что эта программа и никакой другой софт - не запустится на официальной прошивке!

2970
*
Нажмите R+X (Правый прозрачный триггер + Крест)

2966
*
Подтвердите выполнение операции, нажав L+R+X (Левый триггер + Правый триггер + Крест)
Таким образом вы отформатируете заново карточку памяти и создадите свободную резервную область для записи в неё впоследствии IPL. После выполнения этой операции все данные на карточке памяти будут удалены.

2967
*
Нажмите Х для выхода из программы и выключения PSP.

2968

Расположение IPL Пандоры на карточке памяти:

Иногда бывает необходимость проверить наверняка, записался ли IPL Пандоры на карточку памяти. Возникают частые вопросы типа: "Я всё сделал правильно, но когда вставляю Пандора батарею, горит зелёный индикатор, но Пандора не запускается."
Здесь ответ заключается в том, что однозначно не запандорилась карточка памяти. То есть IPL Пандоры не записался в нужное место.

Как же проверить, записался IPL или нет?
Для этого вам потребуется любой HEX-редактор. Я обычно пользуюсь Hex Workshop.
Подойдёт и бесплатный H&D (http://mh-nexus.de/en/downloads.php?product=HxD).
Подробную инструкцию я уже нарисовал на скрине ниже, но всё же продублирую по порядку:
Подключаете PSP или картридер к компьютеру и запускаете HEX-редактор.

Нажимаете кнопку "Open Drive" (Открыть диск) и выбираете обязательно "Physical Disks" (Физические диски)
В списке физических дисков находите свою карту памяти.
С помощью "Стрелочек перемещения по секторам" перемещаемся вправо и следим за показаниями номера сектора.
Перемещаетесь на 16-ый сектор и смотрим в правую колонку, отображающую "текстовую информацию" кода.
Наверху видим буквы "R...:RY" - это и есть отличительный признак IPL Пандоры, так как IPL Пандоры всегда записывается в 16-ый сектор физического диска.


2969В других HEX-редакторах символы между R и RY могут отображаться по другому, в зависимости от выбранной кодировки и шрифта.

Так же замечу, что код в 16-ричном хекс-редакторе всегда нужно просматривать в 16 колонок (от 0 до 15 (от 0 до F)), как у меня на скрине, тогда вы будете читать и узнавать весь код в правильном представлении. Код всегда имеет чётную структуру.
Если окно редактора было сужено или наоборот расширено и вместо 16-ти столбцов отображается например 15, то таким образом все "чётные" смещения получаются сдвинутыми и код становится трудно читаемым и узнаваемым.