void retro_deinit(void) { NDS_DeInit(); #ifdef PERF_TEST rarch_perf_log(); #endif }
int main(int argc, char ** argv) { static unsigned short keypad = 0; u32 last_cycle; #ifdef DEBUG LogStart(); #endif NDS_Init(); SPU_ChangeSoundCore(SNDCORE_SDL, 735 * 4); if (argc < 2) { fprintf(stderr, "usage: %s filename\n", argv[0]); return 1; } if (NDS_LoadROM(argv[1], MC_TYPE_AUTODETECT, 1) < 0) { fprintf(stderr, "error while loading %s\n", argv[1]); return 2; } /* // This has to get fixed yet strcpy(szRomPath, dirname(argv[1])); cflash_close(); cflash_init(); */ execute = TRUE; if(SDL_Init(SDL_INIT_VIDEO) == -1) { fprintf(stderr, "Error trying to initialize SDL: %s\n", SDL_GetError()); return 1; } SDL_WM_SetCaption("Desmume SDL", NULL); /* Initialize joysticks */ if(!init_joy()) return 1; /* Load our own keyboard configuration */ set_kb_keys(cli_kb_cfg); surface = SDL_SetVideoMode(256, 384, 32, SDL_SWSURFACE); while(!sdl_quit) { /* Look for queued events and update keypad status */ keypad = process_ctrls_events(keypad); /* Update mouse position and click */ if(mouse.down) NDS_setTouchPos(mouse.x, mouse.y); if(mouse.click) { NDS_releasTouch(); mouse.click = FALSE; } update_keypad(keypad); /* Update keypad */ last_cycle = NDS_exec((560190 << 1) - last_cycle, FALSE); SPU_Emulate(); Draw(); } /* Unload joystick */ uninit_joy(); SDL_Quit(); NDS_DeInit(); #ifdef DEBUG LogStop(); #endif return 0; }
void desmume_free() { execute = FALSE; NDS_DeInit(); }
void desmume_free() { execute = false; NDS_DeInit(); }