📄 ppu_main.c
字号:
#include <stdlib.h>#include <pthread.h>#include <libspe2.h>typedef struct ppu_pthread_data{ spe_context_ptr_t spe_ctx; pthread_t pthread; unsigned long long argp;} ppu_pthread_data_t;extern spe_program_handle_t spu_main; // outside SPU binaryvoid *ppu_pthread_function(void *arg) { ppu_pthread_data_t *datap=(ppu_pthread_data_t *)arg; unsigned int entry = SPE_DEFAULT_ENTRY; if(spe_context_run(datap->spe_ctx, &entry, 0, (void *)datap->argp, NULL, NULL) < 0){ perror ("Failed running context"); exit (1); } pthread_exit(NULL);}int main(){ ppu_pthread_data_t data; data.spe_ctx = spe_context_create (0, NULL); data.argp = (unsigned long long)NULL; spe_program_load (data.spe_ctx, &spu_main); pthread_create (&(data.pthread), NULL, ppu_pthread_function, &data); pthread_join(data.pthread, NULL); spe_context_destroy(data.spe_ctx); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -