psp mp3 implementation
[libpicofe.git] / psp / main.c
index 0d12196..4f51516 100644 (file)
@@ -1,6 +1,7 @@
 #include "psp.h"
 #include "emu.h"
 #include "menu.h"
+#include "mp3.h"
 #include "../common/menu.h"
 #include "../common/emu.h"
 #include "../common/lprintf.h"
@@ -8,12 +9,15 @@
 
 int main()
 {
+       int mp3_ret;
+
        lprintf("\nPicoDrive v" VERSION " " __DATE__ " " __TIME__ "\n");
        psp_init();
 
        emu_ReadConfig(0, 0);
        emu_Init();
        menu_init();
+       mp3_ret = mp3_init();
 
        engineState = PGS_Menu;
 
@@ -26,9 +30,11 @@ int main()
                                break;
 
                        case PGS_ReloadRom:
-                               if (emu_ReloadRom())
+                               if (emu_ReloadRom()) {
                                        engineState = PGS_Running;
-                               else {
+                                       if (mp3_last_error != 0)
+                                               engineState = PGS_Menu; // send to menu to display mp3 error
+                               } else {
                                        lprintf("PGS_ReloadRom == 0\n");
                                        engineState = PGS_Menu;
                                }
@@ -52,6 +58,7 @@ int main()
 
        endloop:
 
+       if (mp3_ret == 0) mp3_deinit();
        emu_Deinit();
        psp_finish();