Углубляемся в PSP – Часть 2: Прошивка, HEN, Devhook, pre-IPL и IPL
28.01.2010, 13:14
Автор текста:sk8-maN
Продолжаем
погружаться в дебри. В этот раз речь пойдет о таких понятиях, как
официальная и кастом прошивка (знаю, что было, но закрепить не
помешает), HEN, Devhook, IPL и pre-IPL. Про Devhook вспомнить
особенно полезно, потому как многие из вас наверняка и не слышали про
эту программу, а, тем временем, её аналоги могут стать основным
средством запуска ISO`шек на непрошиваемых PSP.
Официальная прошивка - OFFICIAL FIRMWARE
Официальная
прошивка – это прошивка (операционная система), созданная и
предустановленная SONY. Крайняя версия официальной прошивки на момент
написания статьи - 5.50. Запуск ISO, CSO, сторонних (хоумбрю) программ
на ней невозможен.
Кастом
прошивка была создана испанцем Dark_Alex. Вдохновение дала программа
UMDEmulator, написанная Humma Kavula, позволяющая запускать ISO.
Dark_Alex создал Proof of Concept 1.50 (показательный пример на основе
прошивки 1.50) со встроенным HEN (запуск хоумбрю). После этого
Dark_Alex модифицировал все важные официальные прошивки, добавляя в них
новые возможности, такие как:
* 4 различных драйвера запуска ISO и CSO (OE, M33, Sony, UMD) * HEN-D * Возможность обновления на новые кастом прошивки по сети * Рекавери меню – меню, позволяющее сделать множество настроек * VSH меню – небольшое меню для управления включенной консолью * Подмена текущей версии прошивки * Popsloader – продвинутый модуль для запуска PSX игр * Возможность управлять частотой процессора * Разблокирована максимальная яркость экрана * Возможность использования ISO образов UMD-видео
HEN
HEN (HomeBrew Enabler) позволяет запускать программы, неподписанные SONY. В
частности HEN может работать на официальной прошивке при наличии в ней
Кернел-эксплоита (программа, использующая ошибку, дающую доступ к
ядру). Текущая версия - HEN-D (с возможными модификациями, при
изменении кастом прошивок).
HEN в частности позволяет запускать
программу ISO loader – загрузчик ISO/CSO образов, а также установщик
кастом прошивки. HEN сам по себе не запускает ISO/CSO.
Девхук - Devhook
Devhook
это эмулятор, работающий через HEN. Devhook это неподписанная хоумбрю,
созданная Booster – некогда главным конкурентом Dark_Alex’a.
Devhook
эмулирует официальную прошивку с добавленными в нее возможностями HEN и
ISO loader. Последняя версия Devhook - 0.6F, работающая только на 3.10
OE (а следовательно только на PSP-1000) и эмулирующая официальные
прошивки 2.71 - 3.11. Ввиду того, что автор отошел от сцены, а также
великолепной серии кастомных прошивок M33 (от Dark_Alex’a), развитие
Devhook остановилось.
Эксплоит пользовательского уровня - User Mode Exploit
Эксплоит
пользовательского уровня дает частичный доступ к функциям запущенной
прошивки. Доступ к аппаратной части PSP заблокирован. При помощи
эксплоита пользовательского уровня можно запустить Кернел-эксплоит или
специально написанные хоумбрю, с ограниченными возможностями.
Эксплоит, дающий доступ к ядру прошивки - Kernel Mode Exploit
Эксплоит,
дающий доступ к ядру прошивки, дает доступ к аппаратной части PSP, а
именно внутренней памяти PSP - Flash0, 1, 2, 3. Это дает возможность
установить кастом прошивку. Также это означает, что HEN будет работать.
Кернел-эксплоит дает полный доступ к ресурсам PSP. Без кернел-эксплоита
HEN работать не будет.
Pre-IPL
Pre-IPL запускается
сразу при включении PSP (являясь BIOS’ом). Pre-IPL указывает
процессору, где находится прошивка PSP, а именно IPL.
Pre-IPL
– это аппаратная часть PSP, без возможности программного обновления. В
зависимости от версии материнской платы PSP, Pre-IPL расположен в самой
материнской плате, либо в процессоре и материнской плате (различные
модули).
Благодаря специальной хакерской атаке на Pre-IPL, стало
возможным использование сервисного режима PSP. Тем не менее, последние
версии Pre-IPL (TA-088 v3 PSP-2000 и TA-090 v2 PSP-3000) не подвержены
данной атаке, в связи с чем сервисный режим заблокирован. Данные версии
Pre-IPL проверяют целостность IPL (см. ниже), поэтому установка кастом
прошивки через Кернел-эксплоит приведет к поломке PSP.
IPL
IPL
(Initial Program Loader) – отвечает за загрузку ПСП, настраивая
прошивку так, чтобы она могла работать с конкретной версией аппаратной
части PSP. Хранится в памяти PSP. IPL обновляется для каждой новой
версии прошивки. Существует IPL, записываемый на специально
подготовленную карточку Memory Stick для работы в сервисном режиме
(комплект Пандоры).