From 65054fc4f1681ca8b52fe7bde9559a2ffda91968 Mon Sep 17 00:00:00 2001 From: Robbbert Date: Mon, 22 Jul 2019 01:22:40 +1000 Subject: (nw) split binbug into 3 sources. --- src/devices/bus/s100/dg640.h | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/devices/bus/s100/dg640.h (limited to 'src/devices/bus/s100/dg640.h') diff --git a/src/devices/bus/s100/dg640.h b/src/devices/bus/s100/dg640.h new file mode 100644 index 00000000000..0ad7dc2e2b0 --- /dev/null +++ b/src/devices/bus/s100/dg640.h @@ -0,0 +1,47 @@ +// license:BSD-3-Clause +// copyright-holders:Robbbert +/********************************************************************** + + DG640 Video Card + +**********************************************************************/ + +#ifndef MAME_BUS_S100_DG640_H +#define MAME_BUS_S100_DG640_H + +#pragma once + +#include "bus/s100/s100.h" + +class dg640_device : public device_t, public device_s100_card_interface +{ +public: + // construction/destruction + dg640_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + +protected: + // device-level overrides + virtual void device_start() override; + virtual void device_add_mconfig(machine_config &config) override; + virtual const tiny_rom_entry *device_rom_region() const override; + + // device_s100_card_interface overrides + virtual u8 s100_smemr_r(offs_t offset) override; + virtual void s100_mwrt_w(offs_t offset, u8 data) override; + +private: + u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + + // object finders + required_region_ptr m_p_chargen; + + // internal state + std::unique_ptr m_p_videoram; + std::unique_ptr m_p_attribram; + u8 m_framecnt; +}; + + +DECLARE_DEVICE_TYPE(S100_DG640, device_s100_card_interface) + +#endif // MAME_BUS_S100_DG640_H -- cgit v1.2.3