diff options
Diffstat (limited to 'src/devices/bus/isa/cga.h')
-rw-r--r-- | src/devices/bus/isa/cga.h | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/src/devices/bus/isa/cga.h b/src/devices/bus/isa/cga.h index d482859fbb4..ca799d9b8cc 100644 --- a/src/devices/bus/isa/cga.h +++ b/src/devices/bus/isa/cga.h @@ -31,12 +31,7 @@ public: isa8_cga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); virtual MC6845_UPDATE_ROW( crtc_update_row ); - MC6845_UPDATE_ROW( cga_text_inten_update_row ); - MC6845_UPDATE_ROW( cga_text_inten_comp_grey_update_row ); - MC6845_UPDATE_ROW( cga_text_inten_alt_update_row ); - MC6845_UPDATE_ROW( cga_text_blink_update_row ); - MC6845_UPDATE_ROW( cga_text_blink_update_row_si ); - MC6845_UPDATE_ROW( cga_text_blink_alt_update_row ); + template<bool blink, bool si, bool comp, bool alt, int width> MC6845_UPDATE_ROW( cga_text ); MC6845_UPDATE_ROW( cga_gfx_4bppl_update_row ); MC6845_UPDATE_ROW( cga_gfx_4bpph_update_row ); MC6845_UPDATE_ROW( cga_gfx_2bpp_update_row ); @@ -285,15 +280,34 @@ public: MC6845_RECONFIGURE(reconfigure); protected: + isa8_cga_m24_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); virtual void device_reset() override; // optional information overrides virtual void device_add_mconfig(machine_config &config) override; - -private: + virtual const tiny_rom_entry *device_rom_region() const override; uint8_t m_mode2, m_index; }; // device type definition DECLARE_DEVICE_TYPE(ISA8_CGA_M24, isa8_cga_m24_device) +class isa8_cga_cportiii_device : + public isa8_cga_m24_device +{ +public: + isa8_cga_cportiii_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + DECLARE_READ8_MEMBER(port_13c6_r); + DECLARE_WRITE8_MEMBER(port_13c6_w); + DECLARE_READ8_MEMBER(port_23c6_r); + DECLARE_WRITE8_MEMBER(port_23c6_w); + DECLARE_READ8_MEMBER(char_ram_read); + DECLARE_WRITE8_MEMBER(char_ram_write); +protected: + virtual void device_reset() override; + virtual void device_add_mconfig(machine_config &config) override; + virtual const tiny_rom_entry *device_rom_region() const override; +}; + +DECLARE_DEVICE_TYPE(ISA8_CGA_CPORTIII, isa8_cga_cportiii_device) + #endif // MAME_BUS_ISA_CGA_H |