今年3月终于下了决心买回人生的第一台PSP。其实买PSP除了玩游戏外,也有研究下PSP平台编程技术的打算;至于机器破解和自制系统开发之类的高科技技术咱没能力去研究,姑且先做个小游戏来熟悉下PSP Programming吧。在网上查找资料的过程中,我发现中文的PSP编程资料非常少,大部分只是停留在Hello World的阶段,极少有更加深入的探讨与示范,而国外的相关资料就丰富许多,有很多非常专业的论坛和wiki,也有很多实用的sample。我准备以在网络上搜集整理的这些资料为指导,开发一个PSP上的小游戏,以此来熟悉PSP图形编程的技术。

研究的第一步自然是配置开发环境。虽然Sony没有对外放出PSP SDK,但是国外的各路大神们早就通过某些渠道弄出了非官方版的SDK,还有一些实用的lib,对于我们的常规开发来说应该是绰绰有余。但是由于某些原因,这个SDK不是很容易下载到,许多以前的链接早已经失效了。目前PSP SDK的svn被放在http://psp.jim.sh上面,上面包括编译链接工具链、头文件、lib文件和一些文档,需要注意的是它提供的toolchain链接出来都是Linux下的elf文件,由于本人是Linux盲,不知道是否可以将其链接成PE文件放到Windows下用,好在在Windows下我们也有解决方案。

一般来说,开发机的OS无非是Linux和Windows两种,Linux下开发的好处是可以通过svn随时checkout最新的SDK文件,Windows下开发的好处是可以用到Visual Studio + Visual Assist X这个无敌组合(不要跟我说vim和Emacs,说了我是Linux盲……)。我选择的开发环境是Windows + Visual Studio,但是在VMware中的Ubuntu下也成功配置了环境。我的PSP3000主机自制系统的版本是6.35 PRO-B2。

For Windows

在Windows下进行PSP编程需要用到老外提供的一个叫做minpsp的安装包,它相当于PSP SDK的非官方安装程序,目前最新版本是0.11.2,不过似乎不太好使,所以我仍然使用0.11.1版本,下载地址请自行google。将其安装到某个路径后,会看到一个名为pspsdk的文件夹,\bin目录存放了编译链接工具链;\psp\sdk下是我们要的头文件和lib文件,不要被其它的include和lib文件夹迷惑;\psp\sdk\samples下面有一些实例可供参考。

安装好PSP SDK后,在Visual Studio中新建一个Makefile Project工程,Debug Configuration Settings的设置如图所示:

Release Configuration Settings与Debug Configuration Settings的设置相同。

接下来编辑build.bat、clean.bat和rebuild.bat三个批处理文件:

1、build.bat

set PATH=D:\pspsdk\bin;%PATH%
make

2、clean.bat

set PATH=D:\pspsdk\bin;%PATH%
make clean

3、rebuild.bat

set PATH=D:\pspsdk\bin;%PATH%
make clean
make

将这三个文件放到工程所在目录下,然后即可通过Build按钮或Ctrl + Shift + B来build我们的工程。

For Linux

在Linux下有点小复杂,我们要通过svn工具来获得PSP SDK,然后make之。按照这篇wiki[1]的指导,很容易就能完成这个工作。

1、准备临时目录:

$ mkdir psptmp
$ cd psptmp

2、下载PSP SDK:

$ svn checkout http://psp.jim.sh/svn/psp/trunk/psptoolchain

3、替换网址:

$ cd psptoolchain
$ find ./ -name "*.sh" -exec sed -i 's%svn://svn\.ps2dev\.org%http://psp\.jim\.sh/svn%g' {} \;
$ cd scripts
$ find ./ -name "*.sh" -exec sed -i 's%svn://svn\.ps2dev\.org%http://psp\.jim\.sh/svn%g' {} \;
$ cd ../

4、编辑~/.bashrc文件,增加以下三行:

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

然后在终端运行source ~/.bashrc使其生效。

5、下载一些必要的工具:

$ sudo apt-get install build-essential autoconf automake bison flex libncurses5-dev libreadline-dev libusb-dev texinfo libgmp3-dev libmpfr-dev subversion

6、安装PSP SDK:

$ sudo ./toolchain-sudo.sh

安装结束后,用$ psp-gcc -v测试是否安装成功,如在输出的最后一行看见“gcc version 4.3.2 (GCC)”的字样,则代表成功。

7、安装psplibraries,过程类似,不再细述:

$ svn checkout http://psp.jim.sh/svn/psp/trunk/psplibraries

$ cd psplibraries
$ find ./ -name "*.sh" -exec sed -i 's%svn://svn\.ps2dev\.org%http://psp\.jim\.sh/svn%g' {} \;
$ cd scripts
$ find ./ -name "*.sh" -exec sed -i 's%svn://svn\.ps2dev\.org%http://psp\.jim\.sh/svn%g' {} \;
$ cd ../

$ sudo apt-get install libtool

sudo ./libraries-sudo.sh

===========cotaku的分割线===========

按照前文所述的步骤即可成功配置好开发环境。下文将会创建一个最简单的Hello World,包括Makefile的写法和向屏幕打印文字的方法。

参考资料:
[1] PSP自作ソフトプログラミング/開発wiki – 開発環境/linux/ubuntu-10.10

» 转载请注明来源及链接:未来代码研究所

Related Posts:

8 Responses to “PSP图形编程研究手记1:开发环境配置”

Leave a Reply

World Line
Time Machine
Friendly Links
Online Tools