Другие консоли: PSP Fat,PSPSlim&Lite, PS3,Wii,XBOX360
Регистрация: 30.12.2006
Адрес: деревня скрытого листа
Возраст: 33
Сообщений: 1,349
Вы сказали Спасибо: 610
Поблагодарили 733 раз(а) в 358 сообщениях
Сила репутации: 1
Репутация: 738 
(луч света в тёмном царстве)
Half Byte Loader эксплоит - запуск HomeBrew на официальных прошивках 5.00-6.20
Half-Byte Loader
Запуск HomeBrew на официальных прошивках 5.00-6.20
Итак, свершилось! Вроде бы ничего не предвещавший очередной сейв-эксплоит, выложенный Malloxis (тема находится здесь), под официально выпущеную демку игры Patapon2, теперь превратился в почти полноценный загрузчик Homebrew (не подписанных Sony приложений и игр).
Что такое HB Loader?
Что такое HB Loader?
HB Loader это Open-Source (с открытым исходным кодом) проект по созданию загрузчика homebrew с user (пользовательскими) правами, запускаемого с помощью игрового эксплойта.
Зачем нужен HB Loader?
Чтобы дать возможность пользователям с "непрошиваемыми" PSP пользоваться homebrew.
Можно ли будет сделать даунгрейд?
Нет, этого НИКОГДА не будет!!!
Можно ли будет перевести консоль в режим HEN/CFW?
Нет, этого НИКОГДА не будет!!!
Можно ли будет получить доступ к ядру?
Нет, этого НИКОГДА не будет!!!
Можно ли будет работать с образами ISO/CSO?
Нет, сомневаюсь, что это будет возможно.
Значит ли это, что я смогу использовать эмуляторы?
Пока нет, но я надеюсь, что в ближайшее время это будет возможно.
Если вы являетесь разработчиком, но вам трудно понять HBL исходники, обратитесь к активных разработчикам, чтобы они могли помочь вам понять их.
Попробуйте запускать различные homebrew с HBL и напишите отчет, о том работают они или нет. Просьба приложить как можно больше информации о запуске homebrew, включая и отладочную информацию
Могу ли я вносить изменения/использовать исходный код для себя?
Да, можете, на самом деле это ваше право. Но вы должны также выложить исходные тексты с изменениями. Вы не можете распространять только исполняемые файлы.
Как я могу изготовить самостоятельно этот ваш HBL?
Папку с игрой "UCUS98734" (можно переименовать на любое название, например "Patapon 2 Demo") скопируйте на карту памяти в папку ms0:/PSP/GAME/
Второе, что вам понадобится - это само сохранение игры, которое было изменено специальным образом, дающее использование уязвимости для запуска eLoader'a. Это сохранение "UCUS98732_DATA02" специально переименовано на конце под номером 02, чтобы случайно не затереть его оригинальным сохранением, которое будет предлагаться сделать при первом запуске демки или при каждом запуске, если его не делать. Оригинальное-же сохранение у вас создастся один раз под названием "UCUS98732_DATA00", не затирая сохранение-эксплоит Wololo, оно даже не будет отображаться в списке сохранений в игре и тем самым избавит вас от лишних запросов при последующих запусках демки.
Папку сохранения "UCUS98732_DATA02" скопируйте на карту памяти в папку ms0:/PSP/SAVEDATA/
Третье, что вам понадобится - собственно сам "Half Byte Loader", сокращённо "HBL" - EBOOT-Loader, позволяющий запускать программы HomeBrew на официальной прошивке.
Скачайте и разархивируйте архив с последней ревизией HBL. Ссылку на последнюю ревизию смотрите ниже, крупно выделенной.
Содержимое архива (файл "h.bin" и папку "hbl") скопируйте в корень карты памяти.
Использование:
Запустите игру Demo Patapon2 из меню "Игра -> Memory Stick™"
Сразу вам будет предложено создать новый сейв. Вам нужно выбрать "Yes":
Скрин
При появлении меню игры, выбрать "Continue":
Скрин
Появится меню выбора сейва, где выбираем сейв Wolo:
Скрин
Ждем загрузки сейва и видим надпись "Load completed":
Скрин
Нажимаем , чтобы выйти и видим справа внизу моргающую надпись "PUSH ANY BUTTON":
Скрин
Нажимаем любую кнопку и оказываемся в новом окне с моргающей буквой "R" в правом верхнем углу:
Если в самом начале работы лоадера, до начала очистки памяти консоль виснет, то чаще всего это связано с попыткой вывести меню, которое не работает на 6.20. Поместите файл EBOOT.PBP программы в папку "ms0:/HBL/GAME" напрямую.
Если в конце работы лоадера, происходит выход в XMB, проверьте правильность расположение папок "libs". Это одна из основных причин такого вылета.
Если после появления восьми сообщений о возможных ошибках "syscall" консоль виснет, значит не хватило памяти для загрузки программы, так как в лоадере из-за ошибок в системных вызовах прошивок 6.хх невозможно контролировать объем оперативной памяти. Попробуйте еще 2-3 раза. Если не выйдет и так же все будет виснуть, то возьмите программу меньшего размера.
Еще бывают возникают ошибки, которые принято называть "typo". Они связаны с банальными опечатками. В таком случае обычно вслед за одной ревизией сразу же следует другая.
На свой страх и риск все возможные ревизии вы можете найти тут.
Чем отличаются сборки в каждой ревизии?
Debug = HBL with full debugging output. This version is larger than the rest and has a longer loading time too. This is recommended for HBL developers only, or for hunting NID/syscall-related bugs.
Distrib = HBL with no debugging output. Extremely quick and minuscule in size. This versions is great if you're planning on using HBL privately, but don't ask for help with any issues you have as there's no way for any of the devs to know what has gone wrong.
NoNIDs (recommended) = HBL with no NIDs debugging. This version is in-between the two others in terms of speed and size. This is the recommended build to use; it loads fairly fast, whilst, at the same time, generates a log file that the devs can use to help you with any problems you may have.
Source = HBL source code in C. Not much else to say about this, if you can code it then you should be able to get it straight from the SVN yourself.
Изменения
r112
Date: Dec 20, 2010
JJS
- added lowest syscall memory offsets for sukkiri on 6.35
- added code to close all files left open by the exploitet game
у меня тоже маленькая проблема на 3008 6.10 работает только та игра которая идёт в шапке... другие не пашут дайте хоть ссылочки на игры которые 100 % работают !
Репутация: 206 
(весьма и весьма положительная личность)
На счёт 6.XX прошивок:
С учётом этой статьи http://pspfaqs.ru/news/670-pochemu-n...li-novaya.html то вообще ничего из homebrew'ок нормально не будет работать до тех пор, пока полностью не будет импортированы все модули, которые были специально убраны в 6.XX прошивках
Репутация: 206 
(весьма и весьма положительная личность)
Еще можно взять игру PONG со состава эмулятора JPCPS - он тоже работает на 6.20. Но ИМХО, если взять на усмотрение ссылку, которую я дал чуть выше - на 6.XX работать будут самые наипримитивнейшие игры. В 5.XX прошивках ситуация намного лучше.
Что такое корень карты памяти? Куда кидать файлы. подскажите?
StrangerYAN добавил 03-04-2010 в 11:25
Корень карты памяти,как я понял, это место где лежат все папки-Game, Music и т.д.. Кидаю туда все файлы (файл сохранения в SaveData), запускаю демо Патапуна 2 и выбираю продолжить и он мне выдает, что нет файлов сохранения! В чем может быть дело?
StrangerYAN добавил 03-04-2010 в 11:26
прошивка офф. 6.20
Последний раз редактировалось StrangerYAN; 03.04.2010 в 11:26.
Причина: добавил, подумав
Другие консоли: PSP Fat,PSPSlim&Lite, PS3,Wii,XBOX360
Регистрация: 30.12.2006
Адрес: деревня скрытого листа
Возраст: 33
Сообщений: 1,349
Вы сказали Спасибо: 610
Поблагодарили 733 раз(а) в 358 сообщениях
Сила репутации: 1
Репутация: 738 
(луч света в тёмном царстве)
StrangerYAN,
Что такое ms0:/, ISO и CSO
ms0:/ - расшифровывается как MemoryStick0:/, тоже самое как на компьютере диск с:\, то есть это корень карты памяти Memory Stick.
То есть, ms0:/ - это не какая-нибудь папка, а ваша карта памяти.
Такое обозначение - это официальная спецификация Sony по стандартизации названия карт памяти Memory Stick™.
Корень карты памяти - это когда вы подключаете PSP к компьютеру по USB, то открывается первым делом корень карты, откуда всё начинается, где лежат ваши папки и файлы. То есть "корень", это не когда вы заходите в какую-либо папку, например в папку ISO или PSP. Вот как раз папки ISO и PSP находятся в корне, а когда вы любую из них открываете, то уже попадаете не в корень, а в конкретную папку.
В обозначении путей к папкам, используется Правый наклонный слеш "/", т.к. путь ведёт на внешний съёмный носитель.
На PC например, все пути к папкам на жестком диске отделяются Левым наклонным слешем "\", т.к. пути ведут на внутренний собственный носитель.
Путь ms0:/ISO/ означает, что когда открываете карточку памяти на компьютере, то сразу в корне создаёте папку ISO. Не в какой-нибудь другой папке, а именно в корне. В эту папку и ложатся впоследствии игры формата ISO или CSO.
Может ты неправильно сохранку кинул? Сохранку кидать ms0:/PSP/SAVEDATE/ а игру ms0:/PSP/GAME/.
Жду взлома PSVita!!!
Последний раз редактировалось ErikPshat; 03.04.2010 в 13:14.
VityokWohoo, ну потихоньку продвижения идут. Недавно разговор шёл о совсем крошечных простейших играх, а теперь уже 20 Мб ещё нарыли.
К 6.20 нужно НИДы вычислять. А их никто толком не знает. SilverSpring раньше все ниды до 5.00 высчитал и выложил.
В этом эксплоите специально встроен дебаггер, который как раз и вылавливает все НИДы, и сохраняет в корне в специальный файл.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Раньше Sony указывала функции по явным названиям и по ним можно было ориентироваться и использовать в программах в качестве указателя, например так: sceAmctrl_driver, sceATA_ATAPI_driver, sceMediaSync, sceUtilsGetLoadModuleCLength, sceUtilsGetLoadModuleNLengthByPolling...
Но потом перестала явно указывать названия функций, а перешла к цифрам, которые сливаются с остальным кодом: 0x84a04017, 0xa86d5005, 0x0785C974, 0x198fd3be...
Причём 0x перед цифрами - это только на бумажке так обозначают, что означает, что перед нами шестнадцатеричное число. То есть, виртуальное обозначение (между программистами). Если 0x перед цифрами не указывается, значит понятно, что речь идёт о десятичных числах, а не шестнадцатеричных.
Ведь число 10 - это просто 10, а 0х10 - это уже 16.
Вот и попробуй вычислить в файлах прошивки, какая функция какую вызывает и из какого файла.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 03.04.2010 в 16:21.