static WRITE16_HANDLER( io_control_w ) { neogeo_state *state = space->machine().driver_data<neogeo_state>(); switch (offset) { case 0x00: select_controller(space->machine(), data & 0x00ff); break; case 0x18: set_output_latch(space->machine(), data & 0x00ff); break; case 0x20: set_output_data(space->machine(), data & 0x00ff); break; case 0x28: upd4990a_control_16_w(state->m_upd4990a, 0, data, mem_mask); break; // case 0x30: break; // coin counters // case 0x31: break; // coin counters // case 0x32: break; // coin lockout // case 0x33: break; // coui lockout default: logerror("PC: %x Unmapped I/O control write. Offset: %x Data: %x\n", cpu_get_pc(&space->device()), offset, data); break; } }
static WRITE16_HANDLER( io_control_w ) { const device_config *upd4990a = devtag_get_device(space->machine, "upd4990a"); switch (offset) { case 0x00: select_controller(data & 0x00ff); break; case 0x18: set_output_latch(space->machine, data & 0x00ff); break; case 0x20: set_output_data(data & 0x00ff); break; case 0x28: upd4990a_control_16_w(upd4990a, 0, data, mem_mask); break; // case 0x30: break; // coin counters // case 0x31: break; // coin counters // case 0x32: break; // coin lockout // case 0x33: break; // coui lockout default: logerror("PC: %x Unmapped I/O control write. Offset: %x Data: %x\n", cpu_get_pc(space->cpu), offset, data); break; } }