могу ли я перезалить PrxEncrypter для англоязычных "коллег", так сказать? Авторство, разумеется, укажу.
Ну вот, начинается, не успел выложить в паблик свою версию, как её сразу хотят раскидать по всему миру
Да можешь отдать, только не надо говорить, что это мой энкриптер, там из названия папки убери мой ник, я папку просто так обозвал чтобы не спутать с другими сборками. Потом так и выложил, влом было переименовывать.
Вообще это не мой энкриптер. Скажу по секрету - это обычный энкриптер классический, который прилагается с исходниками прошивки PRO: http://code.google.com/p/procfw/sour...b/PrxEncrypter
Я только вырезал из него лишних 2 хедера, которые мне мешали и которые без моего ведома пытались вставить свой заголовок. Ну и я просто вручную заменяю на нужные мне хедеры и кирки в main.c
Как скачать исходники и как компилировать энкриптер, написано в этой инструкции: https://www.pspx.ru/forum/showthread.php?t=90993
Экзешник энкриптера так же компилируется с помощью PSPSDK, как и обычные хомки для PSP
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Теги идут по группам. И работают по принадлежности к группе и у одной группы свой порядковый скрамблер-код. Вот этот 3-ий байт в группе меняется только от прошивки к прошивке. В остальном одна группа выполняет свойственные ей привилегии, независимо от 3-его байта.
Например D9160AF0 знает прошивка 5.50 и выше, а тег D9160ВF0 знает прошивка 5.55 и выше, но прошивка 5.50 уже не знает о нём, поэтому с последним тегом подписанная игра не запустится на 5.50 и ниже.
Сообщение от riku.kh3
Самой только PRXDecrypter MOD нигде нету, единственное место где была - pspcfw.de, помер((
Ага, отыскал я модификацию от Yoti, смотри вложение. Этот мод вообще появился, когда ломали голову, как сделать Permanent Patch на 6.20, чтобы подписать vshmain.prx. Кирк-то и так можно было отловить дамперами памяти, но тут автоматизировали этот процесс.
FAQ
Короче, как обычно, кидаете в корневую папку "enc" один зашифрованный файл, например: прошивки, модуля vshmain.prx, psmfplayer.prx, libfont.prx, libheap.prx, EBOOT.BIN или DATA.PSP игры, или чего-то там ещё.
Запускаете декриптор и декриптуете файл. На экране увидите сообщения, сдампился ли kirk.buff...
PrxDecrypter декриптит те же самые теги, что и стандартный v2.6b. Но там Yoti добавил ещё новых тегов с ключами для новых прошивок и что-то ещё подхимичил, известное только ему )))
Для декриптовки не обязательно кидать целиком файл, а достаточно бросить только заголовок 0х150 и кирк всё-равно клюнет на него, поэтому не просто так я создал эту тему с заголовками: https://www.pspx.ru/forum/showthread.php?t=103063
Сдампленный кирк будет лежать в папке "enc" рядом с уже декриптованным файлом.
Открываете kirk.buff в HexWorkshop v6.7, нажимаете "File => Export" и выбираете формат "C Source (*.c, *.cpp)", сохраняете где-то поблизости с исходниками PRXEncrypter, как kirk.c
Так же в HexWorkshop открываете шифрованный файл, с которого был снят этот кирк, выделяете ровно 0х150 (336 байт) и так же делаете экспорт в "C Source (*.c, *.cpp)", сохраняете например как DATA.c
Открываете оба *.с файла в текстовом редакторе и открываете main.c в папке с исходниками PRXEncrypter.
В main.c букваьно в начале видите этот самый PSP-хейдер шифрованного файла 0х150 [336] байт, разложенного побайтно, типа так:
Переходите к вашему kirk.c. Так же выделяете код и меняете в main.c
Сохраняетесь и компилите новый PRXEncrypter.exe. Там в папке уже есть батник для компиляции zMAKE.BAT и батник для очистки остатков предыдущей компиляции zCLEAN.BAT.
Всегда после компиляции делайте очистку перед следующей компиляции.
Подписываете им необходимые файлы, подходящие по размеру, проставленному в позиции 0х2C хедера донора.
Хе-хе, хотел сдампить кирк с Brainpipe 9,99 МБ (10*481*216 байт), но декриптер тут же вешался с сообщением "estimating output size".
Ну собсно та же история, как тогда была с EDecrypt от mc707, тогда тоже голову ломали, что тег известный и есть ключ, но не декриптовался никак
Увеличил буфер с 10 до 12 Мб и всё пошло. Залил ещё одну сборку в FAQ.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 11.04.2013 в 01:53.
Далее предложат выбрать сервер, который поближе к России. Выбирай немецкий сервер .de и лучше http, чем ftp.
В большом открывшемся окне нажимай на чёрный значёк круглешка обновления и выбери "All default"
Далее будет качаться долго и упорно, часа 2-3-4-5 смотря какая скорость.
Если скорость будет меньше положенной, чем пропускная способность твоего канала, то отключись и подключись к другому серверу, пока не получишь хорошую скорость.
После этого у тебя по идее должно компилиться всё подряд, даже прошивка PRO
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Вообщем под PS3 конвертил Disgaea Infinite (ULJS00286), после лого minis приставка вешалась на малевиче.. Сама игра под 6.20 и грузится через OPNSSMP.BIN. Декриптнул EBOOT, переподписал методом выше заголовком от Angry Birds minis, пересобрал образ без ненужного теперь OPNSSMP.BIN и после этого она пошла на PS3, мдя))
[Гайд] Запускаем хомбрю на PS3 через эмулятор PSP (minis)
Честно говоря, такое название темы с такой инструкцией меня несколько смутило, потому что те, кто имеет представление о Homebrew для PSP, особенно кто имеет представление о компиляции программ для PSP, то просто покрутили бы пальцем у виска. Вот если бы ты назвал тему несколько по другому, тогда бы всё встало на свои места. Нужно переименовать тему так:
[Гайд] Запускаем старые хомбрю, написанные под ядро 1.00/1.50 на PS3 через эмулятор PSP (minis)
Я понял почему у меня все подписанные хомки, минисы, образы ISO на официальной прошивке работают, а у тебя постоянно что-то не так: выползают ошибки, чёрные экраны и отсутствие текста. Видимо мы друг друга не совсем понимаем. И мне вообще показались странными и загадочными твои вопросы в теме.
Сейчас объясню почему...
Я так понял, что у тебя нет PSP, но зато есть PS3 и ты просто заменяешь PSP эмулятором JPCSP
А в этом эмуляторе лежат Homebrew, написаны уж очень давно, ещё под ядро 1.00/1.50, которые писались 6-7-8 лет назад. Такие Homebrew могут вообще не запускаться даже на PSP с CFW. Дело в том, что:
Я провожу свои эксперименты на Homebrew 3.xx (3.03 - 6.60) - именно с тех пор Sony изменила способ компиляции программ, и способ их упаковки в EBOOT.PBP и запуска, а так же, внесла изменения в модули прошивки. Поэтому, теперь все "новые" программы Homebrew на прошивках 3.xx/4.xx/5.xx/6.xx работают по принципу, сформулированному для ядра 3.хх.
А ты проводишь эксперименты на Homebrew 1.00/1.50 - поэтому у тебя не так запускается и не так подписывается. Например Homebrew под ядро 1.50 вообще состояли из двух папок и в каждой папке находился свой EBOOT.PBP, один из которых являлся обычным PRX в чистом виде, а второй содержал только PARAM.SFO и ресурсы.
Взять к примеру вот это твоё сообщение:
Сообщение от BlackDaemon
Такс, результаты первых тестов.
прошли fake_np:
- ProShell - запускается на оф. прошивке, но на PS3 текст не выводится (сначала подумал, что не работает, а вот оно что!)
- 2dstudio.prx - запускается на оф. прошивке, на пс3 текста нет
скриншот
дошли до этапа с fake_np:
- lines.pbp - работает под кастомом, на оф. прошивке 0x80020148
- logic.pbp - см. выше
- skinning.pbp - см. выше
после подписывания ELF неработают:
PSPong 0.1.pbp - подписал и засунул в образ, при запуске на кастоме чёрный экран, приставка зависает.
basic.pbp (из SDK 2.0) - ведёт себя аналогично
dragon.pbp (из SDK 2.0) - ведёт себя аналогично
Все эти Homebrew написаны были очень давно под ядро 1.00/1.50 и используют функции тех старых прошивок, которые могут не работать на новых прошивках 3.xx-6.xx. Поначалу я не понял, откуда ты взял эти программы, т.к. я не пользуюсь JPCSP, потому что у меня есть живые PSP-1004 и PSP-3004
Когда мы тестировали "Cube", я смотрел твою попытку подписать его и у тебя он не работал, вот твоя работа: https://www.pspx.ru/forum/showpost.ph...3&postcount=22
Я посмотрел на PRX (ELF) и там прекрасно видна принадлежность к сырому виду ELF прошивок 1.xx. У таких ELF в самом начале отсутствуют смещения на секции, там один нули:
Это происходит потому, что при компиляции был создан только сырой ELF.
А при компиляции для прошивок 3.xx и выше, происходит так же создание сырого ELF, но потом из него происходит пересоздание в готовый PRX. У него в начале файла уже нету нулей и там всё забито смещениями на адреса секций.
Посмотри разницу:
Поэтому я сразу так и подумал, что ты не правильно откомпилировал исходники (хотя теперь понимаю, что ты брал готовые программы из JPCSP), поэтому я тебе написал, что нужно сделать:
Сообщение от ErikPshat
У кубика похоже статический, т.к. видно по ELF-файлу, что структура другая, там в начале нету секций релокации, а только одни нули. Такие статичные Эльфы действительно просто так после подписи не запустятся.
Чтобы этого избежать, то нужно при компиляции добавить в Makefile строчку: BUILD_PRX = 1
И возможно понадобится это: PSP_FW_VERSION = 371 (иначе оно при компиляции показывает FW = 150), хотя думаю это не важно.
И я тебе скомпилировал по нормальному, подписал и он заработал у тебя.
Исходный код Cube лежит в PSPSDK по пути C:\pspsdk\psp\sdk\samples\gu\cube
Поэтому видимо ты воспринял это так, что нужно производить такое действие со всеми Homebrew, наверное.
На самом деле уже давным-давно, с 2007-го года, такие программы перестали писать и все перешли на ядро 3.xx, поэтому сейчас основная масса Homebrew уже и так скомпилирована с использованием BUILD_PRX = 1 и в программах используются новые названия функций.
Кто имеет давно PSP, конечно про такие нюансы все знают, поэтому об этом никто и не пишет в инструкциях, все и так понимают, что для запуска старых программ необходимо иметь Kernel_Addon_1.5 или плагин LEDA.
Сейчас конечно остались с тех времён много старых программ и хороших эмуляторов, про которые все давно забыли. И если есть исходный код, то их можно перекомпилировать под 3.xx и вероятно ещё придётся исправлять старые функции на их новые аналоги.
Сорри, что так много написал не по теме. Просто старался объяснить ситуацию, чтобы было наиболее понятно.
А название темы исправь или инструкцию переделай, и на PS3Hax.net тоже исправь название темы, а то засмеют ведь
Да и людей вводишь в заблуждение. А ведь некоторые так и подумают, что для подписи Homebrew обязательно нужно найти исходники, скомпилировать заново с BUILD_PRX = 1 и только после этого подписывать.
Репутация: 229 
(весьма и весьма положительная личность)
Ой-ёй...многабукав. Но попробую по-порядку на всё ответить.
1. Название темы - первое, что пришло в голову. Если оно вам кажется невменяемым - измените на своё усмотрение, я не против.
2. По поводу наличия консолей - в наличии PSP, PS3 и Vita. Первым делом я проверял на PSP, т.к. нужно было убедиться, что приложение может работать под OFW 6.60.
3. По поводу хомбрю - да, вначале я взял что было - сэпмлы из папки в комплекте с Jpcsp, а они там как оказалось древнющие. Вчера дошли руки (додумался таки проверить, нет ли там исходников сэпмлов ) собрать несколько сэмплов из комплекта с PSPSDK- они замечательно работает (кроме текста, увы - судя по всему эмулятор дебаг текст не держит). И да, если взять PSP отдельно, так можно воспользоваться загрузчиком с sceKernelLoadExec - старьё - PSPong, PSPuzzle таким способом работает. На PS3 в эмуляторе использование этой функции (в том числе sceKernelLoadModule+sceKernelStartModule) судя по всему ограничено или заблокировано вовсе.
В продолжение темы на PS3Hax.net - я в общем выложил только то, что работает - PSPSDK + описание как правильно собрать сэмплы в комплекте с ним. А то, что таким образом запустится очень ограниченное кол-во хомбрю - так это очевидно. Для пс3 сцены в любом случае это уже плюс (учитывая, насколько жёстко эмулятор защищён и ограничен), по крайней мере появилась возможность исследовать, на что способен эмулятор (даже таким образом).
Прошу прощения, если пропустил что-либо - текста много, немного на соображалку давит.
И да, в свою защиту могу ещё добавить, что хомбрю переводится как самопал. Самопал есть самопал, неважно в каком он виде.
Если оно вам кажется невменяемым - измените на своё усмотрение, я не против.
Ну это твоя тема - ты и изменяй.
А тебе не кажется странным?
Там с 1-го по 5-ый пункт относится только к Homebrew 1.xx.
В большинстве случаев, начинать с 1-го пункта абсолютно лишено смысла.
Поэтому более вменяемым было бы переименовать тему, либо 1-4 пункты сделать только как примечание, типа:
Если вы хотите подписать Homebrew 1.xx и у вас есть исходный код, тогда выполните первоначально эти 4 пункта...
Отличить Homebrew 1.xx от Homebrew 3.xx(6.xx) вы можете по этим двум скриншотам: Скрин1 и Скрин2
Если у вас обычная Homebrew 3.xx, тогда сразу переходите к пункту №5.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Репутация: 229 
(весьма и весьма положительная личность)
ErikPshat,
tag0 - работает на PSP с OFW и PS3.
tag26 - неработает на PSP с OFW (вылетает со "старой, знакомой" ошибкой), на PS3 при запуске в логе дебаггера говорится об unhandled exception.
На всякий случай оставляю закриптованый куб с последним тегом - надеюсь, что подписал правильно. http://rghost.ru/45157914
Edit: сейчас перезакачаю.
Edit2: сравнил закриптованые файлы на выходе - побайтово одинаковые, т.е. tag26 неработает.
Edit3: ради интереса сравнил закриптованые файлы с tag0 и tag26 - а изменений, то совсем немного.
Отлично, тег 0 - это самый первый ключ, использовавшийся в прошивках 2.xx, соответственно он до сих пор поддерживается, иначе те старые официальные игры не смогли бы работать.
Сообщение от BlackDaemon
tag26 - неработает на PSP с OFW
Странно, это последний ключ на прошивке 6.60 и в прошивке он присутствует.
В общем убрал этот тег 0xd91690f0, последняя ревизия во вложении...
Можешь отдать своим коллегам