int aciacart_snapshot_read_module(struct snapshot_s *p) { #if defined(HAVE_RS232DEV) || defined(HAVE_RS232NET) if (acia1_snapshot_read_module(p) < 0) { acia_enabled = 0; return -1; } /* FIXME: Why do we need to do so??? */ if (acia1_enable() == 0) { aciacart_reset(); /* Clear interrupts. */ acia_enabled = 1; } #endif return 0; }
void cartridge_reset(void) { switch (mem_cartridge_type) { case CARTRIDGE_VIC20_GENERIC: generic_reset(); break; case CARTRIDGE_VIC20_UM: vic_um_reset(); break; case CARTRIDGE_VIC20_FP: vic_fp_reset(); break; case CARTRIDGE_VIC20_MEGACART: megacart_reset(); break; case CARTRIDGE_VIC20_FINAL_EXPANSION: finalexpansion_reset(); break; } #ifdef HAVE_TFE if (tfe_cart_enabled()) { tfe_reset(); } #endif if (aciacart_cart_enabled()) { aciacart_reset(); } if (digimax_cart_enabled()) { digimax_reset(); } if (ds12c887rtc_cart_enabled()) { ds12c887rtc_reset(); } if (sfx_soundexpander_cart_enabled()) { sfx_soundexpander_reset(); } if (sfx_soundsampler_cart_enabled()) { sfx_soundsampler_reset(); } if (georam_cart_enabled()) { georam_reset(); } }