diff options
Diffstat (limited to 'src/devices/bus/einstein/pipe/tk02.cpp')
-rw-r--r-- | src/devices/bus/einstein/pipe/tk02.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/devices/bus/einstein/pipe/tk02.cpp b/src/devices/bus/einstein/pipe/tk02.cpp index 311c3099011..4b14e9b3391 100644 --- a/src/devices/bus/einstein/pipe/tk02.cpp +++ b/src/devices/bus/einstein/pipe/tk02.cpp @@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(TK02_80COL, tk02_device, "tk02", "TK02 80 Column Monochrome U void tk02_device::map(address_map &map) { -// AM_RANGE(0x00, 0x07) AM_SELECT(0xff00) AM_READWRITE(ram_r, ram_w) // no AM_SELECT (or AM_MASK) support here +// map(0x00, 0x07).select(0xff00).rw(FUNC(tk02_device::ram_r), FUNC(tk02_device::ram_w)); // no select() (or mask()) support here map(0x08, 0x08).mirror(0xff00).w(m_crtc, FUNC(mc6845_device::address_w)); map(0x09, 0x09).mirror(0xff00).w(m_crtc, FUNC(mc6845_device::register_w)); map(0x0c, 0x0c).mirror(0xff00).r(FUNC(tk02_device::status_r)); @@ -111,7 +111,7 @@ void tk02_device::device_add_mconfig(machine_config &config) m_crtc->set_screen("mono"); m_crtc->set_show_border_area(false); m_crtc->set_char_width(8); - m_crtc->set_update_row_callback(FUNC(tk02_device::crtc_update_row), this); + m_crtc->set_update_row_callback(FUNC(tk02_device::crtc_update_row)); m_crtc->out_de_callback().set(FUNC(tk02_device::de_w)); TATUNG_PIPE(config, m_pipe, DERIVED_CLOCK(1, 1), tatung_pipe_cards, nullptr); @@ -160,7 +160,7 @@ void tk02_device::device_start() void tk02_device::device_reset() { io_space().install_device(0x40, 0x4f, *this, &tk02_device::map); - io_space().install_readwrite_handler(0x40, 0x47, 0, 0, 0xff00, read8_delegate(FUNC(tk02_device::ram_r), this), write8_delegate(FUNC(tk02_device::ram_w), this)); + io_space().install_readwrite_handler(0x40, 0x47, 0, 0, 0xff00, read8sm_delegate(*this, FUNC(tk02_device::ram_r)), write8sm_delegate(*this, FUNC(tk02_device::ram_w))); } @@ -185,35 +185,35 @@ MC6845_UPDATE_ROW( tk02_device::crtc_update_row ) if (i == cursor_x) data ^= 0xff; - bitmap.pix32(y, i * 8 + 0) = pen[BIT(data, 7)]; - bitmap.pix32(y, i * 8 + 1) = pen[BIT(data, 6)]; - bitmap.pix32(y, i * 8 + 2) = pen[BIT(data, 5)]; - bitmap.pix32(y, i * 8 + 3) = pen[BIT(data, 4)]; - bitmap.pix32(y, i * 8 + 4) = pen[BIT(data, 3)]; - bitmap.pix32(y, i * 8 + 5) = pen[BIT(data, 2)]; - bitmap.pix32(y, i * 8 + 6) = pen[BIT(data, 1)]; - bitmap.pix32(y, i * 8 + 7) = pen[BIT(data, 0)]; + bitmap.pix(y, i * 8 + 0) = pen[BIT(data, 7)]; + bitmap.pix(y, i * 8 + 1) = pen[BIT(data, 6)]; + bitmap.pix(y, i * 8 + 2) = pen[BIT(data, 5)]; + bitmap.pix(y, i * 8 + 3) = pen[BIT(data, 4)]; + bitmap.pix(y, i * 8 + 4) = pen[BIT(data, 3)]; + bitmap.pix(y, i * 8 + 5) = pen[BIT(data, 2)]; + bitmap.pix(y, i * 8 + 6) = pen[BIT(data, 1)]; + bitmap.pix(y, i * 8 + 7) = pen[BIT(data, 0)]; } } -WRITE_LINE_MEMBER( tk02_device::de_w ) +void tk02_device::de_w(int state) { m_de = state; } // lower 3 bits of address define a 256-byte "row" // upper 8 bits define the offset in the row -READ8_MEMBER( tk02_device::ram_r ) +uint8_t tk02_device::ram_r(offs_t offset) { return m_ram[((offset & 0x07) << 8) | ((offset >> 8) & 0xff)]; } -WRITE8_MEMBER( tk02_device::ram_w ) +void tk02_device::ram_w(offs_t offset, uint8_t data) { m_ram[((offset & 0x07) << 8) | ((offset >> 8) & 0xff)] = data; } -READ8_MEMBER( tk02_device::status_r ) +uint8_t tk02_device::status_r() { // 7654---- unused // ----3--- link M001 |