/* Execute the actions for the current `autostartmode', advancing to the next mode if necessary. */ void autostart_advance(void) { if (!autostart_enabled) { return; } if ( orig_drive_true_emulation_state == -1) { orig_drive_true_emulation_state = get_true_drive_emulation_state(); } if (maincpu_clk < autostart_initial_delay_cycles) { autostart_wait_for_reset = 0; return; } if (autostart_wait_for_reset) { return; } switch (autostartmode) { case AUTOSTART_HASTAPE: advance_hastape(); break; case AUTOSTART_PRESSPLAYONTAPE: advance_pressplayontape(); break; case AUTOSTART_LOADINGTAPE: advance_loadingtape(); break; case AUTOSTART_HASDISK: advance_hasdisk(); break; case AUTOSTART_HASSNAPSHOT: advance_hassnapshot(); break; case AUTOSTART_WAITLOADREADY: advance_waitloadready(); break; case AUTOSTART_WAITLOADING: advance_waitloading(); break; case AUTOSTART_WAITSEARCHINGFOR: advance_waitsearchingfor(); break; case AUTOSTART_INJECT: advance_inject(); break; default: return; } if (autostartmode == AUTOSTART_ERROR && handle_drive_true_emulation_overridden) { log_message(autostart_log, "Now turning true drive emulation %s.", orig_drive_true_emulation_state ? "on" : "off"); set_true_drive_emulation_mode(orig_drive_true_emulation_state); } }
/* Execute the actions for the current `autostartmode', advancing to the next mode if necessary. */ void autostart_advance(void) { if (!autostart_enabled) return; if( orig_drive_true_emulation_state == -1) { orig_drive_true_emulation_state = get_true_drive_emulation_state(); } if (maincpu_clk < min_cycles) { autostart_wait_for_reset = 0; return; } if (autostart_wait_for_reset) return; switch (autostartmode) { case AUTOSTART_HASTAPE: advance_hastape(); break; case AUTOSTART_PRESSPLAYONTAPE: advance_pressplayontape(); break; case AUTOSTART_LOADINGTAPE: advance_loadingtape(); break; case AUTOSTART_HASDISK: advance_hasdisk(); break; case AUTOSTART_HASSNAPSHOT: advance_hassnapshot(); break; default: return; } if (autostartmode == AUTOSTART_ERROR && handle_drive_true_emulation) { log_message(autostart_log, "Now turning true drive emulation %s.", orig_drive_true_emulation_state ? "on" : "off"); set_true_drive_emulation_mode(orig_drive_true_emulation_state); } }