PSP编程环境&破解个人研究笔记——HelloWorld

话说上次已经搭建好环境后貌似也没什么比较实际的用途,那么这次就来写个简单的程序玩玩吧!当然写程序的话当然就是从HelloWorld开始了,这次就看看所有的国外破解前人每次破解完后的运行HelloWolrd是如何跑起来的!
按照惯例先介绍测试环境:
PSP-2000v3型+CYGWIN+5.03Prometheus4
一、编写HelloWorld代码&Makefile文件。
首先放出HelloWorld代码如下(我存的文件名是main.c,可随意起,保存格式为*.c):

// Hello World - My First App for the PSP

#include <pspkernel h="">
#include <pspdebug h="">

PSP_MODULE_INFO("Hello World", 0, 1, 0);
PSP_HEAP_SIZE_KB(20480);

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

// Callback thread
int CallbackThread(SceSize args, void *argp)
{
int cbid;

cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);

sceKernelSleepThreadCB();

return 0;
}

// Sets up the callback thread and returns its thread id
int SetupCallbacks(void)
{
int thid = 0;

thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
if(thid >= 0)
{
sceKernelStartThread(thid, 0, 0);
}

return thid;
}

int main()
{
pspDebugScreenInit();
SetupCallbacks();

pspDebugScreenPrintf("Hello World");

sceKernelSleepThread();
return 0;
}
</pspdebug></pspkernel>

然后是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)
BUILD_PRX = 1
PSP_FW_VERSION = 371
include $(PSPSDK)/lib/build.mak
	

这样代码部分就编写完毕了,至于用什么编写,这个就不多做介绍了,编写的东西非常多,你可以用上一篇我提到安装的VIM文本工具编写(当然我觉得会写吐血OTZ),也可以在windows上面使用UE、或者直接用Visual Studio、Netbeans、eclipse等等各种工具,看你的喜好了!

二、利用CYGWIN进行编译。
接下来就是将你写好的main.c和Makefile放到搭建好的CYGWIN下面,最简单的就是直接复制这两个文件到你的/home/Administrator/HelloWorld目录下(HelloWorld目录自己在windows的对应目录下建立一个就可以了OTZ),放到HelloWorld下后启动CYGWIN,cd切换至HelloWorld目录,直接运行make即可。如果一切顺利,将会生成类似下图的样子:

然后我们用命令ls查看一下生成的文件:

这样就算编译完成了。


三、将编译完成的程序放到PSP上进行测试。
现在编译已经完毕了,当然我这里只是演示了最常用的方法,对于编译来说Makefile有一些讲究,Makefile可以编写出很老之前1.50时代的程序,当然make的时候也需要加一些命令参数,这里就不多讲述了,毕竟看看目前自制程序爱好者制作的程序也都是差不多按照现在的方式来做了(本人研究的不够深入,所以只表明个人观点)。现在你可以从目录里面拷贝出EBOOT.PBP和hello.prx文件,然后把你的PSP连接至PC,到你的PSP/GAME目录下建立一个文件夹,起名为Hello(随便起啥无所谓了=3=),把这两个文件拷贝进去!然后你就可以在小P里面看到自己的HelloWorld程序了,运行一下吧!如何?看到了熟悉的界面了吧!^_Y 至此基本的东西就已经结束了,之后我会继续编写自己的研究心得,当然一个人能力有限,一直希望认识 hrimfaxi(其实就是大家称之为的大神),他对PSP的各个环节基本是了解的很深入了,不过貌似没机会T_T只能自己慢慢研究了,希望能有自己的一番突破,以后将会陆续放出一些PSP开发或者破解方面的研究心得,但愿能帮助到想学习破解和PSP开发方面的新人。^O^

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值