X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fpsp%2Fmain.c;h=bad56a9a8cfddaf0a3bd2ba865639542f2a14ce7;hb=8b99ab90aa519639a87c302c9a26fef526febde9;hp=0d121965b69f923eb95fc95eb3259af17acdac0a;hpb=9caf44b59bf20d0beb614d4249cf908c7fb7434d;p=picodrive.git diff --git a/platform/psp/main.c b/platform/psp/main.c index 0d12196..bad56a9 100644 --- a/platform/psp/main.c +++ b/platform/psp/main.c @@ -1,19 +1,46 @@ +// (c) Copyright 2007 notaz, All rights reserved. +// Free for non-commercial use. + +// For commercial use, separate licencing terms must be obtained. + +#include #include "psp.h" #include "emu.h" #include "menu.h" +#include "mp3.h" #include "../common/menu.h" #include "../common/emu.h" #include "../common/lprintf.h" #include "version.h" +#define GPROF 0 +#define GCOV 0 + +#if GPROF +#include +#endif + +#if GCOV +#include +#include + +void dummy(void) +{ + engineState = atoi(romFileName); + setbuf(NULL, NULL); + getenv(NULL); +} +#endif + int main() { lprintf("\nPicoDrive v" VERSION " " __DATE__ " " __TIME__ "\n"); psp_init(); - emu_ReadConfig(0, 0); emu_Init(); menu_init(); + // moved to emu_Loop(), after CPU clock change.. + //mp3_init(); engineState = PGS_Menu; @@ -22,13 +49,20 @@ int main() switch (engineState) { case PGS_Menu: +#if !GPROF menu_loop(); +#else + strcpy(romFileName, currentConfig.lastRomFile); + engineState = PGS_ReloadRom; +#endif 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; } @@ -39,6 +73,9 @@ int main() case PGS_Running: emu_Loop(); +#if GPROF + goto endloop; +#endif break; case PGS_Quit: @@ -52,8 +89,14 @@ int main() endloop: + mp3_deinit(); emu_Deinit(); +#if GPROF + gprof_cleanup(); +#endif +#if !GCOV psp_finish(); +#endif return 0; }