void bitgraph_state::bg_ppu(machine_config &config) { i8035_device &ppu(I8035(config, PPU_TAG, XTAL(6'900'000))); ppu.set_addrmap(AS_IO, &bitgraph_state::ppu_io); // ppu.t0_in_cb().set(FUNC(bitgraph_state::ppu_t0_r)); ppu.prog_out_cb().set("i8243", FUNC(i8243_device::prog_w)); i8243_device &i8243(I8243(config, "i8243")); i8243.read_handler().set_nop(); i8243.write_handler().set(FUNC(bitgraph_state::ppu_i8243_w)); CENTRONICS(config, m_centronics, centronics_devices, "printer"); m_centronics->ack_handler().set("cent_status_in", FUNC(input_buffer_device::write_bit6)); m_centronics->busy_handler().set("cent_status_in", FUNC(input_buffer_device::write_bit7)); m_centronics->fault_handler().set("cent_status_in", FUNC(input_buffer_device::write_bit4)); m_centronics->perror_handler().set("cent_status_in", FUNC(input_buffer_device::write_bit5)); INPUT_BUFFER(config, "cent_status_in"); output_latch_device ¢_data_out(OUTPUT_LATCH(config, "cent_data_out")); m_centronics->set_output_latch(cent_data_out); }