void actionreplay2_freeze(void) { roml_bank = 0; ar_enabled = 1; ar_cap_enable = 0; ar_cap_disable = 0; DBG(("freeze\n")); cart_config_changed_slotmain((BYTE)(3 | (roml_bank << CMODE_BANK_SHIFT)), (BYTE)(3 | (roml_bank << CMODE_BANK_SHIFT)), CMODE_READ); cartridge_release_freeze(); }
static void set_int(unsigned int int_num, int value) { static int old; int isirq; isirq = (((tpi_context->c_tpi[TPI_ILR]) & tpi_context->c_tpi[TPI_IMR]) & 0x0f); if (old != isirq) { #ifdef IRQDEBUG DBG(("MV: TPI set NMI %d num:%02x val:%02x ILR:%02x IMR:%02x\n", isirq, int_num, value, tpi_context->c_tpi[TPI_ILR], tpi_context->c_tpi[TPI_IMR])); #endif #if 1 if (isirq) { cart_trigger_nmi(); } else { cartridge_release_freeze(); } #endif } old = isirq; }
/* hooked to callback of t6721 chip */ static void set_dtrd(t6721_state *t6721) { static int old; if (old != t6721->dtrd) { #ifdef IRQDEBUG DBG(("MV: set dtrd IRQ:%x\n", t6721->dtrd)); #endif /* DTRD = t6721->dtrd; */ update_dtrd(); tpicore_set_int(tpi_context, NMI_DTRD, t6721->dtrd); tpicore_set_int(tpi_context, NMI_DTRD, t6721->dtrd ^ 1); #if 0 if (t6721->dtrd) { cart_trigger_nmi(); } else { cartridge_release_freeze(); } #endif old = t6721->dtrd; } }
void final_v1_freeze(void) { DBG(("freeze enable\n")); cart_config_changed_slotmain(3, 3, CMODE_READ | CMODE_RELEASE_FREEZE); cartridge_release_freeze(); }