void asic65_reset(running_machine &machine, int state) { address_space &space = machine.device("maincpu")->memory().space(AS_PROGRAM); /* rom-based means reset and clear states */ if (asic65.cpu != NULL) asic65.cpu->execute().set_input_line(INPUT_LINE_RESET, state ? ASSERT_LINE : CLEAR_LINE); /* otherwise, do it manually */ else { machine.device<cpu_device>("asic65")->suspend(SUSPEND_REASON_DISABLE, 1); /* if reset is being signalled, clear everything */ if (state && !asic65.reset_state) asic65.command = -1; /* if reset is going high, latch the command */ else if (!state && asic65.reset_state) { if (asic65.command != -1) asic65_data_w(space, 1, asic65.command, 0xffff); } /* update the state */ asic65.reset_state = state; } }
void asic65_reset(running_machine *machine, int state) { const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); /* rom-based means reset and clear states */ if (asic65.cpu != NULL) cpu_set_input_line(asic65.cpu, INPUT_LINE_RESET, state ? ASSERT_LINE : CLEAR_LINE); /* otherwise, do it manually */ else { cputag_suspend(machine, "asic65", SUSPEND_REASON_DISABLE, 1); /* if reset is being signalled, clear everything */ if (state && !asic65.reset_state) asic65.command = -1; /* if reset is going high, latch the command */ else if (!state && asic65.reset_state) { if (asic65.command != -1) asic65_data_w(space, 1, asic65.command, 0xffff); } /* update the state */ asic65.reset_state = state; } }
void asic65_reset(int state) { /* if reset is being signalled, clear everything */ if (state && !asic65_reset_state) asic65_command = -1; /* if reset is going high, latch the command */ else if (!state && asic65_reset_state) { if (asic65_command != -1) asic65_data_w(1, asic65_command, 0); } /* update the state */ asic65_reset_state = state; }