void machine_specific_reset(void) { int iecreset = 1; resources_get_int("IECReset", &iecreset); serial_traps_reset(); ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); rs232drv_reset(); /* driver is used by both user- and expansion port ? */ rsuser_reset(); printer_reset(); /* FIXME: whats actually broken here? */ /* reset_reu(); */ /* The VIC-II must be the *last* to be reset. */ vicii_reset(); cartridge_reset(); if (reset_poweron || iecreset) { drive_reset(); } scpu64_hardware_reset(); sampler_reset(); reset_poweron = 0; }
/* C64-specific reset sequence. */ void machine_specific_reset(void) { serial_traps_reset(); ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); rs232drv_reset(); /* driver is used by both user- and expansion port ? */ rsuser_reset(); printer_reset(); /* FIXME: whats actually broken here? */ /* reset_reu(); */ /* The VIC-II must be the *last* to be reset. */ vicii_reset(); cartridge_reset(); drive_reset(); datasette_reset(); plus60k_reset(); plus256k_reset(); c64_256k_reset(); }
/* C128-specific reset sequence. */ void machine_specific_reset(void) { serial_traps_reset(); ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); rs232drv_reset(); rsuser_reset(); printer_reset(); vdc_reset(); /* The VIC-II must be the *last* to be reset. */ vicii_reset(); cartridge_reset(); drive_reset(); datasette_reset(); z80mem_initialize(); z80_reset(); }
void iec_drive_reset(struct drive_context_s *drv) { if (drv->drive->type == DRIVE_TYPE_1541 || drv->drive->type == DRIVE_TYPE_1541II || drv->drive->type == DRIVE_TYPE_1570 || drv->drive->type == DRIVE_TYPE_1571 || drv->drive->type == DRIVE_TYPE_1571CR) { viacore_reset(drv->via1d1541); } else { viacore_disable(drv->via1d1541); } if (drv->drive->type == DRIVE_TYPE_1570 || drv->drive->type == DRIVE_TYPE_1571 || drv->drive->type == DRIVE_TYPE_1571CR) { ciacore_reset(drv->cia1571); } else { ciacore_disable(drv->cia1571); } if (drv->drive->type == DRIVE_TYPE_1581) { ciacore_reset(drv->cia1581); wd1770_reset(drv->wd1770); } else { ciacore_disable(drv->cia1581); } if (drv->drive->type == DRIVE_TYPE_2000 || drv->drive->type == DRIVE_TYPE_4000) { viacore_reset(drv->via4000); pc8477_reset(drv->pc8477, drv->drive->type == DRIVE_TYPE_4000); } else { viacore_disable(drv->via4000); } }
/* CBM-II-specific initialization. */ void machine_specific_reset(void) { ciacore_reset(machine_context.cia1); tpicore_reset(machine_context.tpi1); tpicore_reset(machine_context.tpi2); acia1_reset(); sid_reset(); if (!cbm2_isC500) { crtc_reset(); } else { c500_powerline_clk = maincpu_clk + C500_POWERLINE_CYCLES_PER_IRQ; alarm_set(c500_powerline_clk_alarm, c500_powerline_clk); vicii_reset(); } printer_reset(); rs232drv_reset(); drive_reset(); datasette_reset(); mem_reset(); }
/* C64-specific reset sequence. */ void machine_specific_reset(void) { ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); /* The VIC-II must be the *last* to be reset. */ vicii_reset(); if (psid_basic_rsid_to_autostart(&vsid_autostart_load_addr, &vsid_autostart_data, &vsid_autostart_length)) { vsid_autostart_delay = (int)(machine_timing.rfsh_per_sec * 23 / 10); } else { vsid_autostart_delay = 0; /* disables it */ psid_init_driver(); psid_init_tune(1); } }
/* C64-specific reset sequence. */ void machine_specific_reset(void) { serial_traps_reset(); ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); if (!vsid_mode) { tpicore_reset(machine_context.tpi1); acia1_reset(); rs232drv_reset(); rsuser_reset(); printer_reset(); /* FIXME */ /* reset_reu(); */ } /* The VIC-II must be the *last* to be reset. */ vicii_reset(); if (vsid_mode) { psid_init_tune(); return; } cartridge_reset(); drive_reset(); datasette_reset(); reu_reset(); georam_reset(); ramcart_reset(); plus60k_reset(); plus256k_reset(); c64_256k_reset(); mmc64_reset(); }
/* C64DTV-specific reset sequence. */ void machine_specific_reset(void) { serial_traps_reset(); flash_traps_reset(); ciacore_reset(machine_context.cia1); ciacore_reset(machine_context.cia2); sid_reset(); rs232drv_reset(); printer_reset(); /* FIXME */ /* reset_reu(); */ /* The VIC-II must be the *last* to be reset. */ vicii_reset(); drive_reset(); c64dtvmem_reset(); }
/* CBM-II-specific initialization. */ void machine_specific_reset(void) { ciacore_reset(machine_context.cia1); tpicore_reset(machine_context.tpi1); tpicore_reset(machine_context.tpi2); acia1_reset(); sid_reset(); crtc_reset(); printer_reset(); rs232drv_reset(); drive_reset(); datasette_reset(); mem_reset(); }