PSP xvi

PSPプログラミングを教えるブログ(本気で頑張る人アクセス大歓迎サイト)

PSP-X.gif

記事の間違いを報告  新アップローダー
記事修正情報 PSPプログラミング資料 自作ゲーム PSP用エミュレータ リンク

公認リンク
公式PSP専科 公式PSVita専科 はじめるPSPSDK PSP EXEC GAME M@STER PSP 猫山のYouTubeチャンネル

TAG
全記事にタグをつけています  http://nekoyama2gillien.blog36.fc2.com/?tag=タグ
PSP PSPプログラミング DXライブラリPortable OSLib ショートプログラム ハローワールド
PSP自作ゲーム PSP自作ソフト エミュレータ ゲームアーカイブス PSP動画
動画 初音ミク ミクミクダンス MMDドラマ ゲーム 魔法少女まどか☆マギカ 侵略!イカ娘
アイドルマスター

このブログについて

このブログでは、非公式のPSPソフト、いわゆる自作ソフト( PSP Homebrew )を作る事を目的とします。

著作権などの こまかい利用規約については、こちらを開いてお読み下さい

このブログについて知りたい方、初めて来訪された方はこちらを開いてお読みください
お問い合わせは 猫山猫宗(nekomune@gmail.com)までどうぞ


当ブログはリンクフリーです。ブログ名は、アルファベットで「PSP xvi」と書いて『ピーエスピー・エクシビ』とお読みください。
相互リンクを希望されるブログ運営者様は、ココで申請して下さい。


このブログで全記事から探し物の方は、ここをクリックして下さい。
http://nekoyama2gillien.blog36.fc2.com/?all

スポンサーサイト 

--/--/--
--. --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[edit]

CM: --
TB: --

page top

この記事は、PSP各種 に対応した Homebrew の作成方法について書きます。


CFW導入済みPSP-1000 は、カーネルモードの抑止機能が無いので、カーネルモードで書かれたプログラムの起動と、ユーザーモードで書かれたプログラムの起動が出来ます。

CFW導入済みPSP-2000 以降では、カーネルモードに対して抑止機能が働くので、ユーザーモードで書かれたプログラムの起動しか出来ません。

ただし、eLoader v1.000LEDA - Legacy Software Loader beta 0.2カーネル1.50のソフトをCFW3.xx用に変換するソフト Ver.0.2 などのアプリによって、カーネルモードのプログラムを CFW導入済みPSP-2000 でも起動させる事は可能です。

2009年 2月 5日に QJ.net に登録された LEDA - Legacy Software Loader beta 0.2 は、ベータ版ですが、バージョン2ですYO!



CFW導入済みPSP-1000専用のコーディング方法は、カーネルモードで作成すればよいので、プログラムソースの冒頭にて、下記の例のように記述します。

PSP_MODULE_INFO("NICEGAME1", PSP_MODULE_KERNEL, 0, 0);
PSP_MAIN_THREAD_ATTR(0);

↑↑ 赤色部分は自由に書き換えて下さい。

CFW導入済みPSP-2000以降にも対応した実行モジュールを作成するコーディング方法は、ユーザーモードで作成します。
プログラムソースの冒頭にて、下記の例のように記述します。

PSP_MODULE_INFO("NICEGAME2", PSP_MODULE_USER, 0, 0);
PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER);

↑↑ 赤色部分は自由に書き換えて下さい。
↑↑ この記述でプログラムをコーディングすると、全ての CFW導入済みPSP に対応した Homebrew の作成が可能です。


P.S.
コンパイルオプションのパラメータにて、
 -D_PSP_FW_VERSION=300

MAKEFILE内での記述にて、
 PSP_FW_VERSION=300

のどっちかを指定すると、CFW導入済みPSP-2000 にも対応した(ファームウェア3.00用) Homebrew が作れる、というのは間違いです(検証済み@カーネルモードのには無意味でした)。

PSPSDK では、暗号化された ~PSP は生成できませんよ、と書いておきます(前の記事を参照)。
暗号化で どう違うのかは バイナリエディタでダンプして閲覧したり、逆アセンブラで閲覧したりすると解るかも知れません。

[注意] PSP関連に対しては、リバースエンジニアリングの禁止という禁止項目が無いようですが(UMDソフトの説明書には書かれていませんが)、ソフトウェア一般には適応されている事が多いのです。
 リバースエンジニアリングの禁止とは、ソフトウェアを逆アセンブルとか逆コンパイルしてソースにしたり、解析しちゃ、ダメよ、って命令の事です。

リバースエンジニアリング
「リバースエンジニアリング禁止」の是非
つまり、PSPのファームウェアのリバースエンジニアリングが禁止と宣言されていたら、解析しちゃダメなのでっす。新しいカスタムファームウェアが作れない、という罠…Orz。


後で紹介する、DXライブラリPortable を利用してのプログラミングでは、mp3 をハードウェアエンコードさせる処理があるので、MediaEngine側のCPUでmp3音声をデコードしているので、ユーザーモードで記述しないとダメですよっ

訂正。

【 関連記事 】
PSP の 1.50カーネルとか、3.xxカーネルとか についての講釈
PSPプログラミング EBOOT.PBP 生成用 Makefile 記述方法
PSPプログラミング プラグイン生成用 Makefile 記述方法

関連記事
スポンサーサイト

[edit]

CM: 2
TB: 0

page top

この記事に対するコメント

MP3のハードウェアエンコードはやってません
MediaEngine側のCPUでデコードしています

憂煉 #- | URL | 2009/11/08 20:27 * edit *

修正!

そもそも、エンコードでなくてデコードなのだが。

猫山猫宗 #jjrqi.Ao | URL | 2009/11/08 22:46 * edit *

page top

コメントの投稿

Secret

page top

トラックバック

トラックバックURL
→http://nekoyama2gillien.blog36.fc2.com/tb.php/185-2af10de9
この記事にトラックバックする(FC2ブログユーザー)

page top


h o m e |


 

2017-04