Только в ядре 1.50 можно грузить прогу напрямую в Кернел-мод.
На 3.ХХ, если надо чо из кернела - нада подгружать внешнюю либу. Т.е. не напрямую. |
Уважаемые! А подскажите как можно из программки проиграть flash-ролик? есть ли какие нибудь наработки на сях по этому делу?
А так же есть ли у кого исходники по воспроизведению MP3 на PSP Заранее спасибо! |
мр3 есть. флеша не видел. если мр3 надо то в приват давай.
|
Ну хорошо, дабы подвести черту. Рассказываю как юзать кернел-мод в 3.ХХ хомках. По крайней мере как я это понял читая ps2dev.org
Фактически, на нужно сделать 2 проги. 1) Kernel mode PRX - обычная библиотека, она будет вызываться из нашей главной программы. 2) EBOOT.PBP - по сути простой PRX лоадер, загружающийся в USER-режиме. Также, как это сделано на ps2dev разбираем на прмере Nand-дампера. Делаем библиотеку. main.c Код:
#include <pspsdk.h> Код:
PSP_MODULE_INFO("NandDumper", 0x1006, 1, 1); 1,1 - версия нашей библиотеке (пофиг какая) Также обратите внимание, что у нашей библиотеки есть функции module_start() и module_stop() - они обязательны для внешних библиотек. Также важно, что в нашей библиотеке нету точки входа main(). pspSdkSetK1() - устанавливаем в 0, чтобы не дать Кернелу упасть при обращении к областям памяти юзер-режима.. Makefile делаем следущим образом - Код:
TARGET = nanddumper а просто библиотека и все это нам не надо. Также обращаем внимание на подключаемые библиотеки. Да, и у нас появляется строчка "PRX_EXPORTS = nanddumper.exp" - в этом файлике указаны функции нашей библиотеки, функции которые будут видимы после её загрузки. nanddumper.exp - Код:
# Define the exports for the prx именно этими строчками вы указываете ваши функции экспортируемые из вашей библиотеки. Да, и не забываем что строчка "PSP_EXPORT_START(NandDumper, 0, 0x4001)" должна соответствовать тому, что вы написали в модульинфе в файле main.c. Значит этот файлег "nanddumper.exp" нам нужен для того, чтобы сгенерить .S файл, который в свою очередь юзается нашей прогой для доступа к экспортированным функциям. Чтобы сгенерить S файл идём в Пуск->выполнить вбиваем "cmd", заходим в папку с установленным PSPSDK и выполняем команду- Код:
psp-build-exports -s nanddumper.exp Т.е. вся процедура отображена здесь - [IMG]http://img521.**************/img521/8778/54330844wh4.jpg[/IMG] Получившийся .S - файл будет выглядеть примерно так - Код:
.set noreorder Ну а теперь делаем наш EBOOT.PBP - главную программу, которая грузит нашу библиотеку. Код:
#include <pspsdk.h> Код:
PSP_MODULE_INFO("NandDumperMain", 0, 1, 0); Внимание, необходимо задекларировать все функции которые будем юзать из внешней библиотеки Код:
int ReadBlock(u32 page, u8 *buffer); Код:
SceUID mod = pspSdkLoadStartModule("nanddumper.prx", PSP_MEMORY_PARTITION_KERNEL); и голова у нас об этом не болит. Ну и makefile Код:
TARGET = nanddumpermain Закидываете на стик и всё готово. (С)Перевод мой) Оригинал на ps2dev Писал, не проверяя на PSP, вечерком возможно проверю. Если есть каменты, пожелания/исправления - пишите. |
Уважаемые, у кого-нибудь пробовал скомпилить плагин Mp3prx?
есть исходники но непонятно под какую SDK? при компиляции арет что файл psputility_avmodules.h не найден какие есть идеи? |
Цитата:
|
*UPDATE по компиляции хомок для 3ХХ
Идём в папку pspdev/psp/sdk/lib Находим там файлег build.mak, открываем его, смотрим в самом низу - $(PACK_PBP) EBOOT.PBP $(PSP_EBOOT_SFO) $(PSP_EBOOT_ICON) \ $(PSP_EBOOT_ICON1) $(PSP_EBOOT_UNKPNG) $(PSP_EBOOT_PIC1) \ $(PSP_EBOOT_SND0) strip_$(FINAL_TARGET) $(PSP_EBOOT_PSAR) Приставку strip_ перед $(FINAL_TARGET) удаляем и сохраняем файл. Вот теперь ебуты будут собираться правильно, если этого не сделать, то полученные хомки будут вываливаться в XMB с формулировкой Unsupported prx type. |
Цитата:
Ладно, будем грызть кактус дальше. |
что у меня получилось:
1) всё поставил 2) успешно скомпилил готовый сэмпл под 1,50 3) успешно скомпилил Превед Мир! под 1,50 4) успешно скомпилил Превед Мир! под 3,71 5) безуспешно попытался скомпилить Нанд Дампер. ошибки при комплиляции PRX следующие: Код:
****************************************** |
Цитата:
Вобщем ну его к черту этот НАНДДампер. Это был лишь пример того как использовать внешние библиотеки, к тому же я скорее всего в инструкции чот не так написал(по мелочи)))). Но это не главное, главное что в ДевКите чевота нехватает, подозреваю что этого самого nand_driver2 Разбирацца было лень, такчто ща сделал простенькую пару prx/pbp - всё компилица и работает. Надеюсь там будет всё понятно ибо уж упростил до предела. Потом может и инструкцию под это перепишу. http://www.rapidshare.ru/448787 http://www.rapidshare.ru/448790 З.Ы. Кстати, нечто похожее лежит в сэмплах в папке prx. Не совсем то что нужно, правда, но для общего развития советую посмотреть. |
Люди, скажите ламеру, реально написать дебаггер под PSP (хотя бы просто окно дизасма, вьювер памяти/регистров, возможность бряков) так, чтобы на PSP скомпилить плагин, который будет обмениваться данными с софтиной на PC через USB? Или есть какие-нибудь другие рабочие дебаггеры, в которых можно дебажить UMD-шные игры?
|
psplink+usbhost+pcterm+psp-gdb. Это всё описано в мануале к псп линку.
|
Есть ещё CWCheats который имеет встроенную фанукцию дизасма. Однако отладки там нет.
Ваще RISC для меня китайская грамота, скока не пытался хоть чевота понять. |
Цитата:
И вообще реально ли мне это сделать?.. Цитата:
Цитата:
|
Цитата:
Я о RISC, упрощённом наборе инструкций для процессоров. RХХХХ в частности. CISC на х86 у меня вопросов не вызывает, я с ним работал. Если знаешь по риску полезное чтиво, буду рад ознакомиться. |
Цитата:
Цитата:
Смотрел инструкции R4000 - не сильно отличается от 3k, но вот дебаггера нет :( С удовольствием бы написал сам, да вот нет необходимых знаний и умений :( Насколько я понимаю, достаточно написать плагин, который будет дежурить во время игры и связываться с прогой на PC, при требовании отсылая ей данные о регистрах, памяти и т.п. А прога в свою очередь будет обладать юзверьским интерфейсом, дизасмом и т.п. Реально ли такое сделать?... Если всё получится - выйдет немало хороших переводов :) |
люди подскажите плиз, у меня сабж psplink - не работает!
все настроил, и никак... пишет что к псп никак не подключиться. делал всё шаг в шаг как писал камрад Pspowner. псп fat прошивка 3.71 m33 - 3 очень хотелось бы откомпилированный код запускать сразу на железяке! psplink ставил 2.0 из набора что выкладывал Pspowner у меня когда его запускаешь, на компе зыза определяется просто зыза, НЕ type B. пробовал и 3.0 с ней определяется как type B но все равно не работает. что пробовать сделать? |
Поставить драйвера PSP type b. найти пральный psplink.ini или выправить его самому.
Попробуй снять/установить галку на Запускать "USBHost в Daemon-режиме". Вобще ща уже не помню всех этих плясок с бубном... Но кароч работает он. А запускать на железяке - ну скомпили, перепиши да запускай. |
спасибо, ждал! сейчас попробую. я кстати раздобыл дрова для psp type B
и поставил но когда просто втыкаю её она определяется как PSP. напрочь грохнуть обычные дрова я не решаюсь ... или она как тип Б должна определяться только в psplink ? |
только после запуска псплинк на псп.
|
Текущее время: 01:40. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.