PSP開発環境の整備


初期型PSPでのソフト開発についてまとめておきます。

スペック


 ■CPU Core
  MIPS R4000 32bitCore
  128bit Bus
  1~333MHz@1.2V
 ■メモリ
  eDRAM 8MB
 ■その他
  Bus Bandwidth 2.6GB/sec
  R4000のそれぞれのコアは違う役目を担当?

PC用PSPエミュレータ


Potemkin
・PSPカーネルをシミュレートできる
・VFPUエミュレーションは不可能
・ISOファイルとCSOファイルのマウントが可能(DAXファイルは不可)
・Windowsのディレクトリをマウント出来る
・PSP-SDKのデモを実行出来る
・幾つかのゲームはほぼ完璧に動作する

 現在ほぼ完璧に動作するゲームは、
  (1)パズルボブルポケット
  (2)ピンボール
  (3)ぷよぷよ

 必要な物
  (1)Potemkin本体
  (2)Visual C++ 2005SP1 ランタイム
  (3)Windows PC

 動作手順
  (1)VC++ 2005をダウンロードし、インストールする
  (2)Potemkinをダウンロードし、解凍する
  (3)解凍して出来たフォルダ内にあるDaSHRelease.exeを起動する
  (4)メニューのFile→Openを選択し、動作させたいPSPのISOファイルかELFファイルを選択する
  (5)メニューのEmulation→Runでうまくいけば起動する


ダウングレード

PSPおぼえがき

開発環境 ~PSPSDKの導入~


■構築手順
適当な場所に作業ディレクトリを作って、コマンドライン上からそこへ移動する
$ mkdir psptmp
$ cd psptmp

psptoolchain と呼ばれる PSP 開発環境の自動構築ツールの最新版を、SVN を使ってチェックアウトする
$ svn checkout svn://svn.pspdev.org/psp/trunk/psptoolchain

生成された psptoolchain ディレクトリに入り、toolchain.sh を実行する。/usr/local/pspdev 以下にインストールされるので、必要なら chown や chmod で権限を手に入れておく
$ cd psptoolchain
$ sh toolchain.sh

処理が終わるまでかなり時間がかかるので、PSP でもしながらしばらく待つ。このとき最初に以下のファイルをダウンロードしに行くので、あらかじめ手に入れておき psptoolchain ディレクトリにいれておくとちょっとは早いと思う。また、そうしておけば wget が入ってなくても大丈夫。gdb はデフォルトでは使わないのでなくても OK
binutils-2.16.1.tar.gz
gcc-4.0.2.tar.bz2
newlib-1.13.0.tar.gz
gdb-6.3.tar.bz
エラーが出たら途中からやりなおし。toolchain.sh にオプションを渡すことで一部だけ処理できる (詳細は README.TXT 参照のこと)。ここで binutils の make に失敗する場合は、toolchain.sh を以下のように修正する
## Build the source.
$MAKE clean; $MAKE || { echo "ERROR BUILDING BINUTILS"; exit; }

$MAKE clean; $MAKE -r || { echo "ERROR BUILDING BINUTILS"; exit; }

構築処理が無事終了したら /usr/local/pspdev/bin にパスを通しておく (以下は bash の例)。.bash_profile などに書いておくと便利

$ export PSPDEV="/usr/local/pspdev"
$ export PATH="$PATH:$PSPDEV/bin"/usr/local/pspdev/psp/sdk/samples

以下にある好きなサンプルをコンパイルしてみる。EBOOT.PBP をはじめとするいくつかのファイルができればコンパイル成功
$ cd /usr/local/pspdev/psp/sdk/samples/controller/basic
$ ls
Makefile main.c
$ make
(省略)
$ ls
EBOOT.PBP PARAM.SFO main.c
Makefile controller_basic.elf main.o


PSP のバージョンが v1.5 の人は以下のようにして v1.5 用の実行ファイルを生成する。末尾に「%」が付いたディレクトリとついてないディレクトリが生成され、それぞれの中に EBOOT.PBP が入っていれば成功

$ make kxploit
(省略)
$ls
EBOOT.PBP controller_basic main.c
Makefile controller_basic% main.o
PARAM.SFO controller_basic.elf

v1.0 の人は EBOOT.PBP を適当なディレクトリにいれてそのディレクトリを、v1.5 の人は前述のディレクトリ2つを、 PSP のメモリースティックの「/PSP/GAME/」に入れて、無事にサンプルアプリが起動すれば環境構築完了

コメント(0)

コメントを投稿する