//----------------------------------------------------------------------------- //* ProcessDList //! This function is called when there is a Dlist to be processed. (High level GFX list) //----------------------------------------------------------------------------- EXPORT void CALL ProcessDList() { Logger::getSingleton().printMsg("ProcessDList\n"); try { g_graphicsPlugin.viStatusChanged(); g_graphicsPlugin.processDisplayList(); } catch (...) { Logger::getSingleton().printMsg("Unknown Error processing DisplayList", M64MSG_WARNING); //MessageBox(0, "Unknown Error processing DisplayList", "Arachnoid Graphics Plugin", MB_OK|MB_SETFOREGROUND); g_graphicsPlugin.dispose(); g_graphicsPlugin.initialize(&g_graphicsInfo); //Trigger Interupts *(g_graphicsInfo.MI_INTR_REG) |= MI_INTR_DP; g_graphicsInfo.CheckInterrupts(); *(g_graphicsInfo.MI_INTR_REG) |= MI_INTR_SP; g_graphicsInfo.CheckInterrupts(); } }
//----------------------------------------------------------------------------- //* Rom Closed //! This function is called when a rom is closed. //----------------------------------------------------------------------------- EXPORT void CALL RomClosed() { //Logger::getSingleton().printMsg("RomClosed\n"); //Destroy g_graphicsPlugin.dispose(); }