ErikPshat
06.05.2012, 11:09
Pandora Service Pack v1.1
Комплект Пандор и сервисных программ,
для восстановления прошивки и сервисного обслуживания PSP.
7021
Инструкция по проверке IPL в хекс-редакторе HxD
ВНИМАНИЕ!
Прежде, чем приступать к изготовлению данной «Расширенной сборки "Pandora Service Pack"», вы должны знать и понимать механизм простейшего изготовления и принципа работы обычной Пандоры, о чём более подробнее изложено в теме PANDORA 5.00 М33-6 SLIM&FAT (https://www.pspx.ru/forum/showthread.php?t=77904)
Как это работает:
Данный комплект предназначен только для системно прошиваемых PSP-100x и PSP-200x с матплатой до ТА-088v3 (https://www.pspx.ru/forum/showthread.php?t=81203)!
Для работы данного комплекта, требуется запандоренная батарея, которая работает только на вышеупомянутых моделях.
Для тех, кто не понял первые 2 строчки, повторяю: на PSPgo, PSP-300x, PSP-200x с матплатой ТА-088v3 и PSP-E100x - Пандора не работает!
Инструкция по использованию находится в программе по кнопке "Как пользоваться".
Комплект содержит 4 версии Пандор и сборку сервисных программ, устанавливающихся на карту памяти по своим папкам.
Во время установки, автоматически пандорится карта памяти, если на ней свободно место под загрузчик IPL.
Требуемая версия Пандоры запускается во время включения PSP при удержании соответствующей кнопки:
:up: <=> 6.60 ME-1.8 (обновлено на 6.61 ME-2.3 в Pandora Service Pack v1.1)
:left: <=> 5.50 GEN-D3
:right: <=> 5.00 М33-6
:down: <=> Pandora ELF Menu
Для восстановления требуемой прошивки, необходимо закинуть соответствующий файл прошивки EBOOT.PBP в корень карты памяти, переименовав его цифрами версии прошивки, например 660.PBP (уже копируется при установке), 550.PBP, 500.PBP.
Скачать: :download: Pandora Service Pack v1.0 (https://www.pspx.ru/forum/attachment.php?attachmentid=6991) (77.05 Мб)
Скачать: :download: Pandora Service Pack v1.1 (https://www.pspx.ru/forum/attachment.php?attachmentid=14869) (76.96 Мб)
ВНИМАНИЕ!
Комплект содержит Pandora ELF Menu (https://www.pspx.ru/forum/showthread.php?t=81243), которым крайне опасно пользоваться неосведомлённым юзерам, т.к. оно содержит набор сервисных программ, влияющих на работу железа PSP, например, программа "Brightness Fixer v0.9" тут же, после запуска и без запроса подтверждения, пишет в служебную область ключ IDStorage 0х0008.bin, который на европейских моделях приводит к нарушению порядка включения уровня подсветки. Другие программы, как например "IdStorage Manager (https://www.pspx.ru/forum/showthread.php?t=97290)", при неумелом обращении, могут сменить оригинальный MAC-адрес, испортить работу UMD-диска или вообще стереть ваши индивидуальные ключи, генерируемые индивидуально для каждой консоли на заводе, при выходе с конвейера. Это может привести к неработоспособности сетевых подключений, чтения дисков и прочим неполадкам. Хотя сейчас всё возможно обратно восстановить, с помощью этого же комплекта, однако, не обладая соответствующими знаниями, не следует необдуманно баловаться программами.
Обязательно, в первую очередь, сделайте резервную копию(nand-dump) вашей оригинальной системы с помощью программы "nandTool 0.4 NEO (https://www.pspx.ru/forum/showthread.php?t=89830)", так же входящей в состав "Pandora ELF Menu".
Принцип работы Пандоры
Процедура перехода в сервисный режим следующая:
При включении, PSP в первую очередь запрашивает у аккумулятора по среднему контакту уровень заряда и следом серийный номер.
То есть, PSP начинает общаться с батареей и ведёт вполне осмысленную беседу.
Если заряд достаточен и получен стандартный серийник, тогда PSP включается в обычном режиме.
Но, если серийный номер в аккумуляторе изменить на 0хFFFFFFFF, тогда PSP включается в сервисном режиме.
Она начинает искать загрузчик IPL (Initial Program Loader) не как обычно - во внутренней памяти на матплате, а в специальной неразмеченной скрытой области на карте памяти.
Затем IPL стартует и начинает грузить с карты драйверы для функционирования консоли и далее файлы ядра, необходимые для загрузки программы-оболочки сервисной Пандоры, либо любой другой программы.
В кратце, далее приведу поэтапно этот процесс...
Этап 1. Переход в сервисный режим
На первом этапе, при включении PSP, происходит разговор PSP с батареей (https://www.pspx.ru/forum/showpost.php?p=882921&postcount=146).
Чтобы было более понятно, покажу нагляднее, как именно происходит этот разговор.
Мы перехватили этот разговор с помощью K-Line (https://chiptuner.ru/content/kline/) и получили вот такую последовательность цифр и букв:
PSP-2000 СЕРИЙНИК FFFFFFFF
5A0201A2A5050610C306765A020C97A50606FFFFFFFF525A0B80086F79E697135D7E8F30A5120692
3B9BDB45A0ECBE266E7BFE7EFD7EEE7C5A0201A2A5050610C306765A020C97A50606FFFFFFFF525A
0B800243028AE981A40569CDA5120605382E3E8B6A6341888C410B8211F10E0E5A0A812D3060D49F
8FDF007CA50A064E96EAB61277B5C8C05A0201A2A5050600C306865A0B80023A593A77FBE1175988
A5120625E95A9A2960665D1B71B00EAEC8BCC3B55A0A81764E66FF03E68C85F7A50A0621A78247F9
6B47937B5A0201A2A5050600C306865A0203A0A504064510FB5A0B800281507B7E1201E36EEAA512
06AE0FE3C01E80BB5992EE96FEFB96146E095A0A816953B5980E994E9F7DA50A0666E2EFB9A535A0
27B900
Немного почесав затылком задние лапки, мы пришли к выводу, что этот набор бессмысленных символов не совсем не имеет смысла, а очень даже вполне подвергается человеческой логике. Таким образом, разложив эти символы на строчки и посчитав каждую строчку на своих 16-ти пальцах, оказалось, что сумма каждой строки всегда равна FF.
Чтобы избавиться от ручного древневекового труда разбивки по строчкам и подсчёту правильности строки, нашими девелоперами была написана программа, с помощью которой удалось автоматизировать этот процесс.
Если этот сырой код разговора PSP с батарейкой, поместить в программу "psp bat v1.1 (https://www.pspx.ru/forum/attachment.php?attachmentid=6730)", то наглядно увидим целенаправленный разговор.
Так что, если кто думает, что батарейка - тупой брусок из пластмассы и химикатов, тот глубоко заблуждается...
7020 (https://www.pspx.ru/forum/attachment.php?attachmentid=6730)
Расшифровка вертикальных столбцов программы:
Direct - Направление запроса от PSP/от BATарейки
Head - Код запроса/ответа: 5A - запрос от PSP; A5 - ответ от батареи
Len - Длина запроса/ответа: Code + Message + Cb
Code - Код по спецификации, расшифровка в столбце Operation
Message - Сообщение запроса/ответа
Cb - Корректирующий байт: сумма всего запроса/ответа должна быть равна FF
Summ - Подсчёт программой верности всего кода запроса/ответа: FF - верно.
Operation - Расшифровка кодов операций из секции Code
Этап 2. Загрузка Пандоры из TM-IPL
Итак, PSP пошептавшись с батарейкой и поняв, что она требует секретный режим, начинает искать секретный IPL,
но не как обычно, в чипе памяти на материнской плате, а именно в скрытой неразмеченной области на карточке памяти.
Если там ничего не находится, то PSP просто не сможет из ничего загрузиться, а если там есть загрузчик, то конечно с него и загрузится.
IPL содержит в себе микропрограмму - асмический код ввода-вывода, т.е. командные коды-инструкции процессора, с помощью которых процессор исполняет последовательную цепочку команд на включение и выполнение различных действий. А всему набору инструкций процессор железно обучен на стадии производства и заложен был ещё на этапе разработки.
Но просто посылать определённые коды процессору из IPL ещё не достаточно, ведь окончательный смысл имеет именно запуск определённой программы. Поэтому, после подготовки процессора к работе, посылается окончательная команда на исполнение программы по определённому пути. Вот так выглядит этот путь в конце IPL: /TM/config.txt
7019
Стартовый адрес IPL всегда начинается с 16-го сектора [0x10].
7023По этим картинкам вы можете со 100%-ой уверенностью определить, записался-ли IPL на карту памяти.
Для этого нужно подключить карту памяти к компьютеру через PSP или картридер и открыть в Хекс-редакторе физический диск карты памяти.
Вообще TM IPL занимает минимальное значение, ровно 1 блок = 32 сектора по 512 байт, всего 16384 байт (с 16-го по 47 сектора включительно)
Если в Hex Workshop не понятно, как пользоваться, тогда воспользуйтесь бесплатным HxD (https://mh-nexus.de/en/downloads.php?product=HxD)
IPL в хекс-редактореPANDORA_IPL
Подключаете флешку к компьютеру
Запускаете хекс-редактор HxD (https://mh-nexus.de/en/downloads.php?product=HxD20) или HEX Workshop (https://www.pspx.ru/forum/showthread.php?t=91953)
Нажимаете кнопку "Открыть диск":
7500
В открывшемся окне смотрите и выбираете ваш "Съёмный диск" карты памяти НЕ в области "Логические диски" (помечено красным крестиком), а там, где "Физические диски" (помечено зелёной галочкой):
7501
Листаете до 16-го сектора и должны увидеть такую картину стартового сектора IPL-TM:
7502
Затем листаете до 39-го сектора и должны увидеть путь к конфигу Пандоры: /TM/config.txt:
7503
Этап 3. Перенаправление из config.txt
Итак, мы проследили цепочку от разговора батареи и перехода в сервисный режим, после чего грузится IPL, предварительно записанный в скрытую область карточки памяти. Далее, IPL стартует процессор и активирует прочее железо и лампочки к работе. И наконец происходит исполнение прописанного в IPL следующего пути: /TM/config.txt
Но теперь, в этом файле происходит выполнение команды, так же прописанной в IPL, когда при удержании определённой клавиши происходит запуск ipl.bin из папки, указанной уже в этом текстовике:
UP = "/TM/660/ipl.bin";
LEFT = "/TM/550/ipl.bin";
RIGHT = "/TM/DC8/ipl.bin";
DOWN = "/TM/pandora.bin";
То есть, если вы заметили на скринах выше, в IPL так же прописаны названия кнопок, которые можно использовать в текстовике, как команды.
Естесственно, эти названия, понятные человеку, процессор не понимает и конечно же, соответственно каждому названию, в IPL сопоставлены инструкции в виде кодов кнопок (https://www.pspx.ru/forum/showthread.php?t=85749).
Этап 4. Запуск ipl.bin
Удерживая определённую кнопку, прописанную в файле config.txt, нас перенаправляет на папку с файлом ipl.bin.
Этот файл выполняет единственную функцию - определение модели PSP.
Определив модель PSP, запускается соответствующий файл ipl_01g.bin для PSP-100x, либо ipl_02g.bin для PSP-200x.
А ipl_0Xg.bin является ничем иным, как копией кастомного IPL, устанавливаемого в NAND PSP загрузчиком кастомной прошивки.
Таким образом запускается окружение Пандоры, откуда можно просто запустить прошивку прямо с карты памяти, либо обновление прошивки.
*****
Комплект Пандор и сервисных программ,
для восстановления прошивки и сервисного обслуживания PSP.
7021
Инструкция по проверке IPL в хекс-редакторе HxD
ВНИМАНИЕ!
Прежде, чем приступать к изготовлению данной «Расширенной сборки "Pandora Service Pack"», вы должны знать и понимать механизм простейшего изготовления и принципа работы обычной Пандоры, о чём более подробнее изложено в теме PANDORA 5.00 М33-6 SLIM&FAT (https://www.pspx.ru/forum/showthread.php?t=77904)
Как это работает:
Данный комплект предназначен только для системно прошиваемых PSP-100x и PSP-200x с матплатой до ТА-088v3 (https://www.pspx.ru/forum/showthread.php?t=81203)!
Для работы данного комплекта, требуется запандоренная батарея, которая работает только на вышеупомянутых моделях.
Для тех, кто не понял первые 2 строчки, повторяю: на PSPgo, PSP-300x, PSP-200x с матплатой ТА-088v3 и PSP-E100x - Пандора не работает!
Инструкция по использованию находится в программе по кнопке "Как пользоваться".
Комплект содержит 4 версии Пандор и сборку сервисных программ, устанавливающихся на карту памяти по своим папкам.
Во время установки, автоматически пандорится карта памяти, если на ней свободно место под загрузчик IPL.
Требуемая версия Пандоры запускается во время включения PSP при удержании соответствующей кнопки:
:up: <=> 6.60 ME-1.8 (обновлено на 6.61 ME-2.3 в Pandora Service Pack v1.1)
:left: <=> 5.50 GEN-D3
:right: <=> 5.00 М33-6
:down: <=> Pandora ELF Menu
Для восстановления требуемой прошивки, необходимо закинуть соответствующий файл прошивки EBOOT.PBP в корень карты памяти, переименовав его цифрами версии прошивки, например 660.PBP (уже копируется при установке), 550.PBP, 500.PBP.
Скачать: :download: Pandora Service Pack v1.0 (https://www.pspx.ru/forum/attachment.php?attachmentid=6991) (77.05 Мб)
Скачать: :download: Pandora Service Pack v1.1 (https://www.pspx.ru/forum/attachment.php?attachmentid=14869) (76.96 Мб)
ВНИМАНИЕ!
Комплект содержит Pandora ELF Menu (https://www.pspx.ru/forum/showthread.php?t=81243), которым крайне опасно пользоваться неосведомлённым юзерам, т.к. оно содержит набор сервисных программ, влияющих на работу железа PSP, например, программа "Brightness Fixer v0.9" тут же, после запуска и без запроса подтверждения, пишет в служебную область ключ IDStorage 0х0008.bin, который на европейских моделях приводит к нарушению порядка включения уровня подсветки. Другие программы, как например "IdStorage Manager (https://www.pspx.ru/forum/showthread.php?t=97290)", при неумелом обращении, могут сменить оригинальный MAC-адрес, испортить работу UMD-диска или вообще стереть ваши индивидуальные ключи, генерируемые индивидуально для каждой консоли на заводе, при выходе с конвейера. Это может привести к неработоспособности сетевых подключений, чтения дисков и прочим неполадкам. Хотя сейчас всё возможно обратно восстановить, с помощью этого же комплекта, однако, не обладая соответствующими знаниями, не следует необдуманно баловаться программами.
Обязательно, в первую очередь, сделайте резервную копию(nand-dump) вашей оригинальной системы с помощью программы "nandTool 0.4 NEO (https://www.pspx.ru/forum/showthread.php?t=89830)", так же входящей в состав "Pandora ELF Menu".
Принцип работы Пандоры
Процедура перехода в сервисный режим следующая:
При включении, PSP в первую очередь запрашивает у аккумулятора по среднему контакту уровень заряда и следом серийный номер.
То есть, PSP начинает общаться с батареей и ведёт вполне осмысленную беседу.
Если заряд достаточен и получен стандартный серийник, тогда PSP включается в обычном режиме.
Но, если серийный номер в аккумуляторе изменить на 0хFFFFFFFF, тогда PSP включается в сервисном режиме.
Она начинает искать загрузчик IPL (Initial Program Loader) не как обычно - во внутренней памяти на матплате, а в специальной неразмеченной скрытой области на карте памяти.
Затем IPL стартует и начинает грузить с карты драйверы для функционирования консоли и далее файлы ядра, необходимые для загрузки программы-оболочки сервисной Пандоры, либо любой другой программы.
В кратце, далее приведу поэтапно этот процесс...
Этап 1. Переход в сервисный режим
На первом этапе, при включении PSP, происходит разговор PSP с батареей (https://www.pspx.ru/forum/showpost.php?p=882921&postcount=146).
Чтобы было более понятно, покажу нагляднее, как именно происходит этот разговор.
Мы перехватили этот разговор с помощью K-Line (https://chiptuner.ru/content/kline/) и получили вот такую последовательность цифр и букв:
PSP-2000 СЕРИЙНИК FFFFFFFF
5A0201A2A5050610C306765A020C97A50606FFFFFFFF525A0B80086F79E697135D7E8F30A5120692
3B9BDB45A0ECBE266E7BFE7EFD7EEE7C5A0201A2A5050610C306765A020C97A50606FFFFFFFF525A
0B800243028AE981A40569CDA5120605382E3E8B6A6341888C410B8211F10E0E5A0A812D3060D49F
8FDF007CA50A064E96EAB61277B5C8C05A0201A2A5050600C306865A0B80023A593A77FBE1175988
A5120625E95A9A2960665D1B71B00EAEC8BCC3B55A0A81764E66FF03E68C85F7A50A0621A78247F9
6B47937B5A0201A2A5050600C306865A0203A0A504064510FB5A0B800281507B7E1201E36EEAA512
06AE0FE3C01E80BB5992EE96FEFB96146E095A0A816953B5980E994E9F7DA50A0666E2EFB9A535A0
27B900
Немного почесав затылком задние лапки, мы пришли к выводу, что этот набор бессмысленных символов не совсем не имеет смысла, а очень даже вполне подвергается человеческой логике. Таким образом, разложив эти символы на строчки и посчитав каждую строчку на своих 16-ти пальцах, оказалось, что сумма каждой строки всегда равна FF.
Чтобы избавиться от ручного древневекового труда разбивки по строчкам и подсчёту правильности строки, нашими девелоперами была написана программа, с помощью которой удалось автоматизировать этот процесс.
Если этот сырой код разговора PSP с батарейкой, поместить в программу "psp bat v1.1 (https://www.pspx.ru/forum/attachment.php?attachmentid=6730)", то наглядно увидим целенаправленный разговор.
Так что, если кто думает, что батарейка - тупой брусок из пластмассы и химикатов, тот глубоко заблуждается...
7020 (https://www.pspx.ru/forum/attachment.php?attachmentid=6730)
Расшифровка вертикальных столбцов программы:
Direct - Направление запроса от PSP/от BATарейки
Head - Код запроса/ответа: 5A - запрос от PSP; A5 - ответ от батареи
Len - Длина запроса/ответа: Code + Message + Cb
Code - Код по спецификации, расшифровка в столбце Operation
Message - Сообщение запроса/ответа
Cb - Корректирующий байт: сумма всего запроса/ответа должна быть равна FF
Summ - Подсчёт программой верности всего кода запроса/ответа: FF - верно.
Operation - Расшифровка кодов операций из секции Code
Этап 2. Загрузка Пандоры из TM-IPL
Итак, PSP пошептавшись с батарейкой и поняв, что она требует секретный режим, начинает искать секретный IPL,
но не как обычно, в чипе памяти на материнской плате, а именно в скрытой неразмеченной области на карточке памяти.
Если там ничего не находится, то PSP просто не сможет из ничего загрузиться, а если там есть загрузчик, то конечно с него и загрузится.
IPL содержит в себе микропрограмму - асмический код ввода-вывода, т.е. командные коды-инструкции процессора, с помощью которых процессор исполняет последовательную цепочку команд на включение и выполнение различных действий. А всему набору инструкций процессор железно обучен на стадии производства и заложен был ещё на этапе разработки.
Но просто посылать определённые коды процессору из IPL ещё не достаточно, ведь окончательный смысл имеет именно запуск определённой программы. Поэтому, после подготовки процессора к работе, посылается окончательная команда на исполнение программы по определённому пути. Вот так выглядит этот путь в конце IPL: /TM/config.txt
7019
Стартовый адрес IPL всегда начинается с 16-го сектора [0x10].
7023По этим картинкам вы можете со 100%-ой уверенностью определить, записался-ли IPL на карту памяти.
Для этого нужно подключить карту памяти к компьютеру через PSP или картридер и открыть в Хекс-редакторе физический диск карты памяти.
Вообще TM IPL занимает минимальное значение, ровно 1 блок = 32 сектора по 512 байт, всего 16384 байт (с 16-го по 47 сектора включительно)
Если в Hex Workshop не понятно, как пользоваться, тогда воспользуйтесь бесплатным HxD (https://mh-nexus.de/en/downloads.php?product=HxD)
IPL в хекс-редактореPANDORA_IPL
Подключаете флешку к компьютеру
Запускаете хекс-редактор HxD (https://mh-nexus.de/en/downloads.php?product=HxD20) или HEX Workshop (https://www.pspx.ru/forum/showthread.php?t=91953)
Нажимаете кнопку "Открыть диск":
7500
В открывшемся окне смотрите и выбираете ваш "Съёмный диск" карты памяти НЕ в области "Логические диски" (помечено красным крестиком), а там, где "Физические диски" (помечено зелёной галочкой):
7501
Листаете до 16-го сектора и должны увидеть такую картину стартового сектора IPL-TM:
7502
Затем листаете до 39-го сектора и должны увидеть путь к конфигу Пандоры: /TM/config.txt:
7503
Этап 3. Перенаправление из config.txt
Итак, мы проследили цепочку от разговора батареи и перехода в сервисный режим, после чего грузится IPL, предварительно записанный в скрытую область карточки памяти. Далее, IPL стартует процессор и активирует прочее железо и лампочки к работе. И наконец происходит исполнение прописанного в IPL следующего пути: /TM/config.txt
Но теперь, в этом файле происходит выполнение команды, так же прописанной в IPL, когда при удержании определённой клавиши происходит запуск ipl.bin из папки, указанной уже в этом текстовике:
UP = "/TM/660/ipl.bin";
LEFT = "/TM/550/ipl.bin";
RIGHT = "/TM/DC8/ipl.bin";
DOWN = "/TM/pandora.bin";
То есть, если вы заметили на скринах выше, в IPL так же прописаны названия кнопок, которые можно использовать в текстовике, как команды.
Естесственно, эти названия, понятные человеку, процессор не понимает и конечно же, соответственно каждому названию, в IPL сопоставлены инструкции в виде кодов кнопок (https://www.pspx.ru/forum/showthread.php?t=85749).
Этап 4. Запуск ipl.bin
Удерживая определённую кнопку, прописанную в файле config.txt, нас перенаправляет на папку с файлом ipl.bin.
Этот файл выполняет единственную функцию - определение модели PSP.
Определив модель PSP, запускается соответствующий файл ipl_01g.bin для PSP-100x, либо ipl_02g.bin для PSP-200x.
А ipl_0Xg.bin является ничем иным, как копией кастомного IPL, устанавливаемого в NAND PSP загрузчиком кастомной прошивки.
Таким образом запускается окружение Пандоры, откуда можно просто запустить прошивку прямо с карты памяти, либо обновление прошивки.
*****