notaz.gp2x.de
/
libpicofe.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
psp fixes, gamma
[libpicofe.git]
/
psp
/
main.c
diff --git
a/psp/main.c
b/psp/main.c
index
606ca02
..
befc427
100644
(file)
--- a/
psp/main.c
+++ b/
psp/main.c
@@
-1,17
+1,43
@@
+// (c) Copyright 2007 notaz, All rights reserved.
+// Free for non-commercial use.
+
+// For commercial use, separate licencing terms must be obtained.
+
+#include <string.h>
#include "psp.h"
#include "emu.h"
#include "menu.h"
#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 "../common/menu.h"
#include "../common/emu.h"
#include "../common/lprintf.h"
+#include "version.h"
+
+#ifdef GPROF
+#include <pspprof.h>
+#endif
-int main()
+#ifdef GCOV
+#include <stdio.h>
+#include <stdlib.h>
+
+void dummy(void)
{
{
- psp_init();
+ engineState = atoi(romFileName);
+ setbuf(NULL, NULL);
+ getenv(NULL);
+}
+#endif
+int pico_main(void)
+{
+ lprintf("\nPicoDrive v" VERSION " " __DATE__ " " __TIME__ "\n");
+ psp_init();
emu_ReadConfig(0, 0);
emu_Init();
menu_init();
emu_ReadConfig(0, 0);
emu_Init();
menu_init();
+ // moved to emu_Loop(), after CPU clock change..
+ //mp3_init();
engineState = PGS_Menu;
engineState = PGS_Menu;
@@
-20,13
+46,20
@@
int main()
switch (engineState)
{
case PGS_Menu:
switch (engineState)
{
case PGS_Menu:
+#ifndef GPROF
menu_loop();
menu_loop();
+#else
+ strcpy(romFileName, currentConfig.lastRomFile);
+ engineState = PGS_ReloadRom;
+#endif
break;
case PGS_ReloadRom:
break;
case PGS_ReloadRom:
- if (emu_ReloadRom())
+ if (emu_ReloadRom())
{
engineState = PGS_Running;
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;
}
lprintf("PGS_ReloadRom == 0\n");
engineState = PGS_Menu;
}
@@
-37,6
+70,9
@@
int main()
case PGS_Running:
emu_Loop();
case PGS_Running:
emu_Loop();
+#ifdef GPROF
+ goto endloop;
+#endif
break;
case PGS_Quit:
break;
case PGS_Quit:
@@
-50,8
+86,14
@@
int main()
endloop:
endloop:
+ mp3_deinit();
emu_Deinit();
emu_Deinit();
+#ifdef GPROF
+ gprof_cleanup();
+#endif
+#ifndef GCOV
psp_finish();
psp_finish();
+#endif
return 0;
}
return 0;
}