RSemaphore initSemaphore;\r
RSemaphore pauseSemaphore;\r
RSemaphore loadWaitSemaphore;\r
-int pico_was_reset = 0;\r
static CPicolAppView *appView = 0;\r
\r
\r
\r
case PicoMsgReset: \r
if(rom_loaded) {\r
- PicoReset();\r
- pico_was_reset = 1;\r
- return ChangeRunState(PGS_Running);\r
+ return ChangeRunState(PGS_Reset);\r
}\r
return 1;\r
\r
// If successful, in will enter PGS_Running state by itself.\r
loadrom_fname = (char *)writeBuf.PtrZ();\r
loadrom_result = 0;\r
+ loadWaitSemaphore.Wait(1); // make sure sem is not set\r
ret = ChangeRunState(PGS_ReloadRom);\r
if(ret) return ret;\r
\r
- loadWaitSemaphore.Wait(20*1000*1000);\r
+ loadWaitSemaphore.Wait(60*1000*1000);\r
\r
if (loadrom_result == 0)\r
- return PicoErrNotRom;\r
+ return PicoErrRomOpenFailed;\r
\r
emu_getGameName(buff);\r
TPtrC8 buff8((TUint8*) buff);\r
\r
// debug\r
#ifdef __DEBUG_PRINT\r
- TInt cells = User::CountAllocCells();\r
- TInt mem;\r
+ TInt mem, cells = User::CountAllocCells();\r
User::AllocSize(mem);\r
DEBUGPRINT(_L("comm: cels=%d, size=%d KB"), cells, mem/1024);\r
- ChangeRunState(PGS_DebugHeap, PGS_Running);\r
#endif\r
\r
return 0;\r