diff options
author | 2017-01-21 01:46:24 +0100 | |
---|---|---|
committer | 2017-01-21 01:46:33 +0100 | |
commit | 41e4bb5797be19b7af5d6d3868506770bfc8ff82 (patch) | |
tree | 2d053df65da991c66a2a90b397bb93c88f3ead32 /src/devices | |
parent | 31ae79c107e380d560a0a56e0f3fb3886e690160 (diff) |
added hlcd0515 skeleton device (nw)
Diffstat (limited to 'src/devices')
-rw-r--r-- | src/devices/video/hlcd0515.cpp | 67 | ||||
-rw-r--r-- | src/devices/video/hlcd0515.h | 50 |
2 files changed, 117 insertions, 0 deletions
diff --git a/src/devices/video/hlcd0515.cpp b/src/devices/video/hlcd0515.cpp new file mode 100644 index 00000000000..638d18f95dd --- /dev/null +++ b/src/devices/video/hlcd0515.cpp @@ -0,0 +1,67 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/* + + Hughes HLCD 0515/0569 LCD Driver + + TODO: + - x + +*/ + +#include "video/hlcd0515.h" + + +const device_type HLCD0515 = &device_creator<hlcd0515_device>; +const device_type HLCD0569 = &device_creator<hlcd0569_device>; + +//------------------------------------------------- +// constructor +//------------------------------------------------- + +hlcd0515_device::hlcd0515_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + : device_t(mconfig, HLCD0515, "HLCD 0515 LCD Driver", tag, owner, clock, "hlcd0515", __FILE__) +{ +} + +hlcd0515_device::hlcd0515_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, u32 clock, const char *shortname, const char *source) + : device_t(mconfig, type, name, tag, owner, clock, shortname, source) +{ +} + +hlcd0569_device::hlcd0569_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + : hlcd0515_device(mconfig, HLCD0569, "HLCD 0569 LCD Driver", tag, owner, clock, "hlcd0569", __FILE__) +{ +} + + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void hlcd0515_device::device_start() +{ + // resolve callbacks + + // zerofill + m_cs = 0; + + // register for savestates + save_item(NAME(m_cs)); +} + + +//------------------------------------------------- +// device_reset - device-specific reset +//------------------------------------------------- + +void hlcd0515_device::device_reset() +{ +} + + + +//------------------------------------------------- +// handlers +//------------------------------------------------- diff --git a/src/devices/video/hlcd0515.h b/src/devices/video/hlcd0515.h new file mode 100644 index 00000000000..f0637e7ff9a --- /dev/null +++ b/src/devices/video/hlcd0515.h @@ -0,0 +1,50 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/* + + Hughes HLCD 0515/0569 LCD Driver + +*/ + +#ifndef _HLCD0515_H_ +#define _HLCD0515_H_ + +#include "emu.h" + + +class hlcd0515_device : public device_t +{ +public: + hlcd0515_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hlcd0515_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, u32 clock, const char *shortname, const char *source); + + // static configuration helpers + //template<class _Object> static devcb_base &set_write_x_callback(device_t &device, _Object object) { return downcast<hlcd0515_device &>(device).m_write_x.set_callback(object); } + + //DECLARE_WRITE_LINE_MEMBER(write_cs); + +protected: + // device-level overrides + virtual void device_start() override; + virtual void device_reset() override; + + int m_cs; + + // callbacks + //devcb_write32 m_write_x; +}; + + +class hlcd0569_device : public hlcd0515_device +{ +public: + hlcd0569_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); +}; + + + +extern const device_type HLCD0515; +extern const device_type HLCD0569; + + +#endif /* _HLCD0515_H_ */ |