PSP开发环境配置

1:安装 devkitpro

 

下载 http://sourceforge.net/projects/devkitpro/files/Automated%20Installer/

  选择 devkitProUpdater-1.5.0.exe

URL:http://211.167.112.9:9203/2D11738C7F5FBDD2DBC1C3B9070C9A62E15918C1C1F093F5/ncu.dl.sourceforge.net/project/devkitpro/Automated%20Installer/devkitProUpdater-1.5.0.exe

 

  a.运行DevkitProUpdater-1.*.*.exe
  b.选download and install(下载并安装)
  c.Keep downloaded files是保存下载的安装文件,remove downloaded files是安装完后删除下载的文件,这个随便
  d.在Select the type of install的地方选devkitPSP,也可以选full,如果也要给GBA或NDS编程的话
  e.安装地址可以选在任何地方。

 

2  helloworld

 

在任意目录下(不一定是安装devkitpro的目录)建立一个名为projects的文件夹(名字是什么其实无所谓)
在文件夹内建立多个子文件夹,每个文件夹是将来要编的一个程序
  例如:projects
         -helloworld
           -main.c
           -makefile

这里面的“helloworld”程序名称命名的文件夹,“main.c”是程序的源代码,“makefile”是为编译所作的信息文件

每一个程序编译前都要有main.c和makefile放在“程序名称”的文件夹内

先说makefile:
makefile没有后缀,里面写上:


TARGET = hello
OBJS = main.o
CFLAGS = -O2 -G0 -Wall
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = Hello World
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak


这里目前每个程序不一样的就是倒数第三行“PSP_EBOOT_TITLE = Hello World”里的“Hello World”,它是你的程序名称,显示在PSP上。
所以每做一个新程序,需要改变的就是makefile里的“PSP_EBOOT_TITLE”

 

再说main.c:
main.c的格式主要为:
#include <pspkernel.h>                                         //PSP程序必不可少的头文件
#include <pspdebug.h>                                          //我认为有些类似于stdio.h
#include <pspctrl.h>                                           //按键有关函数的头文件

PSP_MODULE_INFO("Hello World", 0, 1, 1);                       //不会被编译,写上你的程序名和版本号

#define printf pspDebugScreenPrintf                            //定义函数pspDebugScreenPrintf为printf,以后好用


int exit_callback(int arg1,int arg2,void *common)
{sceKernelExitGame();
return 0;}/* Exit callback */

 

int CallbackThread(SceSize args,void *argp)
{int cbid;
cbid=sceKernelCreateCallback("Exit Callback",exit_callback,NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;}/* Callback thread */

 

int SetupCallbacks(void)
{int thid=0;
thid=sceKernelCreateThread("update_thread",CallbackThread,0x11,0xFA0,0,0);
if(thid>=0)sceKernelStartThread(thid,0,0);
return thid;}/* Sets up the callback thread and returns its thread id */

     

//以上这三个函数先不用管,是为了能按home时退出用的

 

int main()                             //终于到main函数了
{
pspDebugScreenInit();                  //设置PSP屏幕,这样就可以显示文本了
SetupCallbacks();                      //设置按home可以退出

 

//这里才是写程序内容的地方!!!!

pspDebugScreenClear();            //清屏函数,清除屏幕上所有内容并把光标复位到左上角
pspDebugScreenSetXY(20,10);       //设置光标,左上角为(0,0),PSP一共有34行68列,所以右下角是(67,33)

printf("hello world");      //就是打出一个“hello world”

 

sceKernelSleepThread();                //让程序运行完后停到这里
return 0;
}

 

 

现在开始编译啦!!

新建一个run.bat,里面写上:(假设程序安装到C:/devkitpro)
set path=%path%;C:/devkitpro/devkitpsp/bin;
cmd

现在将这个run.bat文件放入projects文件夹,运行


输入cd hello world回车(这代表进入hello world文件夹)
再输入make回车,就开始编译了!


如果看到附件里图片那样的文字并且在hello world里生成了四个文件就代表成功了!


在PSP/GAME里新建一个文件夹,名字随意,把刚才生成的EBOOT.PBP放入就可以了,要是嫌麻烦就直接把hello world拖到PSP/GAME

其实也可以将*.bat放入hello world文件夹,运行然后直接输入make就行了

如果想编译出1.50上的双文件夹,要把输入的make改成kploit make

如果想编译出PSP-2000上的prx文件用于3.71以上版本,需要在makefile里开头加上这样两行:
BUILD_PRX=1
PSP_FW_VERSION=371
同样还是输入make编译

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值