برنامه نویسی PSP/اولین برنامه
صفحه ۳ ►◄ برنامه نویسی PSP ►◄ صفحه ۵
برنامه درود دنیا! (Hello World)
ویرایشکد برنامه :
#include <pspkernel.h>
#include <pspdebug.h>
#include <pspdisplay.h>
// PSP_MODULE_INFO is required
PSP_MODULE_INFO("Hello World", 0, 1, 0);
PSP_MAIN_THREAD_ATTR(PSP_THREAD_ATTR_USER);
int exit_callback(int arg1, int arg2, void *common) {
sceKernelExitGame();
return 0;
}
int callback_thread(SceSize args, void *argp) {
int cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
int setup_callbacks(void) {
int thid = sceKernelCreateThread("update_thread", callback_thread, 0x11, 0xFA0, 0, 0);
if(thid >= 0)
sceKernelStartThread(thid, 0, 0);
return thid;
}
int main(void) {
// Use above functions to make exiting possible
setup_callbacks();
// Print Hello World! on a debug screen on a loop
pspDebugScreenInit();
while(1) {
pspDebugScreenSetXY(0, 0);
pspDebugScreenPrintf("Hello World!");
sceDisplayWaitVblankStart();
}
return 0;
}
فایل CMakeLists.txt:
cmake_minimum_required(VERSION 3.5)
project(hello)
add_executable(${PROJECT_NAME} main.c)
target_link_libraries(${PROJECT_NAME} PRIVATE
pspdebug
pspdisplay
pspge
)
# Create an EBOOT.PBP file
create_pbp_file(
TARGET ${PROJECT_NAME}
ICON_PATH NULL
BACKGROUND_PATH NULL
PREVIEW_PATH NULL
TITLE ${PROJECT_NAME}
VERSION 01.00
)
اجرای برنامه :
- کد زیر را در ترمینال اجرا کنید :
mkdir build && cd build psp-cmake .. make
نتایج در یک فایل به نام EBOOT.PBP ذخیره میشود.
آن را در دایرکتوری /ms0:/PSP/GAME قرار دهید و با psp اجرا کنید.