Guest User

Untitled

a guest
Jun 20th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. #include <pspdisplay.h>
  2. #include <pspctrl.h>
  3. #include <pspkernel.h>
  4. #include <pspdebug.h>
  5. #include <pspaudio.h>
  6. #include <pspaudiolib.h>
  7. #include <psppower.h>
  8. #include <pspgu.h>
  9. #include <png.h>
  10. #include <stdio.h>
  11.  
  12. #include "graphics.h"
  13. #include "mp3player.h"
  14.  
  15. #define printf pspDebugScreenPrintf
  16. #define black 0xFF000000
  17.  
  18. PSP_MODULE_INFO("Final Fantasy: FM", 0, 1, 0);
  19.  
  20. /* Exit callback */
  21. int exit_callback(int arg1, int arg2, void *common) {
  22. sceKernelExitGame();
  23. return 0;
  24. }
  25.  
  26. /* Callback thread */
  27. int CallbackThread(SceSize args, void *argp) {
  28. int cbid;
  29.  
  30. cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
  31. sceKernelRegisterExitCallback(cbid);
  32.  
  33. sceKernelSleepThreadCB();
  34.  
  35. return 0;
  36. }
  37.  
  38. /* Sets up the callback thread and returns its thread id */
  39. int SetupCallbacks(void) {
  40. int thid = 0;
  41.  
  42. thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
  43. if(thid >= 0) {
  44. sceKernelStartThread(thid, 0, 0);
  45. }
  46.  
  47. return thid;
  48. }
  49.  
  50. int main() {
  51. pspDebugScreenInit();
  52. SetupCallbacks();
  53. initGraphics();
  54. pspAudioInit();
  55.  
  56. SceCtrlData pad;
  57. scePowerSetClockFrequency(333, 333, 166);
  58.  
  59. MP3_Init(1);
  60. MP3_Load("test.mp3");
  61.  
  62. Image* Figur;
  63. Image* Hintergrund;
  64.  
  65. Figur = loadImage("cursor.png");
  66. Hintergrund = loadImage("title.png");
  67.  
  68. int x = 192;
  69. int y = 198;
  70.  
  71. while(1) {
  72.  
  73. sceCtrlReadBufferPositive(&pad, 1);
  74. sceDisplayWaitVblankStart();
  75.  
  76. MP3_Play();
  77.  
  78. //Ich setze den Cursor nach oben/unten
  79.  
  80. if(pad.Buttons & PSP_CTRL_UP) {
  81. x = 192, y = 198;
  82. clearScreen(black);
  83. }
  84.  
  85. if(pad.Buttons & PSP_CTRL_DOWN) {
  86. x = 208, y = 228;
  87. clearScreen(black);
  88. }
  89.  
  90. //Die Syntax um ein Bild anzuzeigen sieht so aus: blitAlphaImageToScreen( XY Position im Bildfeld, Bildgröße, Image* , Position auf dem Bildschirm);
  91. blitAlphaImageToScreen( 0, 0, 480, 272, Hintergrund, 0, 0);
  92.  
  93. //Da ein Code immer von oben nach unten gelesen wird, muss der Hintergrund vor der Figur sein
  94. blitAlphaImageToScreen( 0, 0, 48, 24, Figur, x, y);
  95.  
  96. //Bildschirmanzeige
  97. flipScreen();
  98. }
  99.  
  100. sceKernelExitGame();
  101. return 0;
  102.  
  103. }
Add Comment
Please, Sign In to add comment