Nanashi-softプログラマ専用PSPでプログラミング


◇PSPでプログラミング-ビルドしてみる-

まずは、Hello Worldを PSP上で動かしてみよう。

●ファイルの置き方
この手の怪しげなツール群を使用する際には、お約束があります。
・ドライブは C:を使用すること
・フォルダ名にスペースや日本語を含めない
・フルパスをできるだけ短く保つ
・展開したフォルダ名はそのまま使用する
こうする事で、無用なトラブルをかなり防ぐ事ができます。

c:ドライブ直下に、フォルダaを作成して、そこにhellopsp_src_Rel1.zipを展開する。
c:\a\hellopsp_srcフォルダが作成され、その中にファイル群が展開される形になる。

●ビルドする
mk.batを実行する(ダブルクリックする)だけでビルドが完了します。


ここで
『cygwin1.dll が見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。』
と表示されたら、ps2devにうまくパスが通っていない事が原因です。
大抵はインストール後にパソコンを再起動し忘れている事が原因です。

どうしても動作しない時は、mk.batの先頭に
PATH=.\;C:\PS2Dev\gcc\ee\bin
を追加する事でコンパイル可能になります。

これで、PSP用実行ファイル ourpが出来ます。
ですが、このままでは実機で動作させる事はできません。

●EBOOT.PBPにする
elf2pbp.exeをフォルダ内にコピーして下さい。
そして、mk.batの最後に以下のスクリプトを追記して下さい。
elf2pbp outp

この状態で mk.batを実行すると、outpがelf2pbpに通されて、EBOOT.PBPファイルが作成されます。
このファイルのみを実機に転送して実行します。

●EBOOT.PBPをメモリースティックDUOに書き込む
PSPとパソをUSBケーブルで繋ぐなり、メモリライタを使うなりして、メモリースティックDUOの中身を表示して下さい。

\PSP\GAME\任意の文字列
の階層フォルダを作成して下さい(全部大文字で作成すること)
任意の文字列は何でも良いです(UPDATEとだけは書かないこと)

作成したフォルダ内にEBOOT.PBPをコピーして下さい。

例)
\PSP\GAME\A\EBOOT.PBP

PSPのメニューより、ゲーム→メモリースティックを選択する。
そうすると、PSPDev Applicationがありますので、それを実行して下さい。
うまく起動したら成功です☆

そうそう、終了は電源を切る以外にありません(汗)
HOMEボタンを有効にするには、プログラムを書いておく必要がある為です(HOMEボタンでメニューに戻るページを参照のこと)


○devkitProを使用する方法

ファイル名やパスが違うので mk.batを書き換える必要があります
test.cをビルドするバッチは以下のようになります

PATH=.\;C:\devkitPro\devkitPSP\bin
C:\devkitPro\devkitPSP\bin\psp-gcc -march=r4000 -g -mgp32 -mlong32 -c test.c
C:\devkitPro\devkitPSP\bin\psp-gcc -march=r4000 -g -mgp32 -c -xassembler -O -o startup.o startup.s
C:\devkitPro\devkitPSP\bin\psp-ld -O0 startup.o test.o -M -Ttext 8900000 -q -o out > hellopsp.map
outpatch
@echo you got outp as psp elf

elf2pbp outp
pause

オプションは、あえてそのままで記述しました
gccのオプションがそのまま使えるようになったようです
例えば -O2を付けて最適化する事もできるそうです


TOPプログラマ専用PSPでプログラミング