void Sys_Quit (void) { aptUnhook(&sysAptCookie); Host_Shutdown(); gfxExit(); exit (0); }
int sf2d_fini() { if (!sf2d_initialized) return 0; aptUnhook(&apt_hook_cookie); gfxExit(); shaderProgramFree(&shader); DVLB_Free(dvlb); linearFree(pool_addr); linearFree(gpu_cmd); vramFree(gpu_fb_addr); vramFree(gpu_depth_fb_addr); sf2d_initialized = 0; return 1; }
void ndspExit(void) { if (AtomicDecrement(&ndspRefCount)) return; if (!bDspReady) return; ndspThreadRun = false; if (bSleeping) svcSignalEvent(sleepEvent); threadJoin(ndspThread, U64_MAX); svcCloseHandle(sleepEvent); aptUnhook(&aptCookie); if (!bSleeping) ndspFinalize(false); bSleeping = false; bNeedsSync = false; dspExit(); if (componentFree) { free((void*)componentBin); componentBin = NULL; } }
static void ctr_free(void* data) { ctr_video_t* ctr = (ctr_video_t*)data; if (!ctr) return; aptUnhook(&ctr->lcd_aptHook); shaderProgramFree(&ctr->shader); DVLB_Free(ctr->dvlb); linearFree(ctr->display_list); linearFree(ctr->texture_linear); linearFree(ctr->texture_swizzled); linearFree(ctr->frame_coords); linearFree(ctr->menu.texture_linear); linearFree(ctr->menu.texture_swizzled); linearFree(ctr->menu.frame_coords); linearFree(ctr->empty_framebuffer); linearFree(ctr); // gfxExit(); }