mirror of
https://github.com/holub/mame
synced 2025-04-18 22:49:58 +03:00
bt431, bt45x: make accessors public
This commit is contained in:
parent
faffe13522
commit
56ecdf4249
@ -54,15 +54,6 @@ public:
|
||||
};
|
||||
|
||||
void map(address_map &map) ATTR_COLD;
|
||||
bool cur_r(unsigned x, unsigned y) const;
|
||||
|
||||
protected:
|
||||
static constexpr u16 ADDRESS_MASK = 0x01ff;
|
||||
|
||||
// device_t overrides
|
||||
virtual void device_start() override ATTR_COLD;
|
||||
virtual void device_reset() override ATTR_COLD;
|
||||
|
||||
template <unsigned S> u8 addr_r() { return m_address >> S; }
|
||||
template <unsigned S> void addr_w(u8 data) { m_address = ((m_address & (0xff00 >> S)) | (u16(data) << S)) & ADDRESS_MASK; }
|
||||
|
||||
@ -72,6 +63,15 @@ protected:
|
||||
u8 reg_r();
|
||||
void reg_w(u8 data);
|
||||
|
||||
bool cur_r(unsigned x, unsigned y) const;
|
||||
|
||||
protected:
|
||||
static constexpr u16 ADDRESS_MASK = 0x01ff;
|
||||
|
||||
// device_t overrides
|
||||
virtual void device_start() override ATTR_COLD;
|
||||
virtual void device_reset() override ATTR_COLD;
|
||||
|
||||
private:
|
||||
void update();
|
||||
|
||||
|
@ -44,12 +44,6 @@ public:
|
||||
|
||||
virtual void map(address_map &map) ATTR_COLD;
|
||||
|
||||
protected:
|
||||
bt45x_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const u32 palette_colors, const u32 overlay_colors);
|
||||
|
||||
virtual void device_start() override ATTR_COLD;
|
||||
virtual void device_reset() override ATTR_COLD;
|
||||
|
||||
u8 address_r();
|
||||
void address_w(u8 data);
|
||||
virtual u8 palette_r(address_space &space) = 0;
|
||||
@ -59,6 +53,12 @@ protected:
|
||||
virtual u8 overlay_r(address_space &space) = 0;
|
||||
virtual void overlay_w(u8 data) = 0;
|
||||
|
||||
protected:
|
||||
bt45x_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const u32 palette_colors, const u32 overlay_colors);
|
||||
|
||||
virtual void device_start() override ATTR_COLD;
|
||||
virtual void device_reset() override ATTR_COLD;
|
||||
|
||||
// helpers
|
||||
virtual void increment_address(const bool side_effects = false);
|
||||
virtual u8 get_mask() const { return m_palette_colors - 1; }
|
||||
@ -79,6 +79,12 @@ protected:
|
||||
|
||||
class bt45x_rgb_device_base : public bt45x_device_base, public device_palette_interface
|
||||
{
|
||||
public:
|
||||
virtual u8 palette_r(address_space &space) override;
|
||||
virtual void palette_w(u8 data) override;
|
||||
virtual u8 overlay_r(address_space &space) override;
|
||||
virtual void overlay_w(u8 data) override;
|
||||
|
||||
protected:
|
||||
bt45x_rgb_device_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const u32 palette_colors, const u32 overlay_colors);
|
||||
|
||||
@ -86,17 +92,17 @@ protected:
|
||||
|
||||
virtual u32 palette_entries() const noexcept override { return m_palette_colors + m_overlay_colors; }
|
||||
|
||||
virtual u8 palette_r(address_space &space) override;
|
||||
virtual void palette_w(u8 data) override;
|
||||
virtual u8 overlay_r(address_space &space) override;
|
||||
virtual void overlay_w(u8 data) override;
|
||||
|
||||
std::unique_ptr<std::array<u8, 3>[]> m_color_ram;
|
||||
};
|
||||
|
||||
class bt45x_mono_device_base : public bt45x_device_base
|
||||
{
|
||||
public:
|
||||
virtual u8 palette_r(address_space &space) override;
|
||||
virtual void palette_w(u8 data) override;
|
||||
virtual u8 overlay_r(address_space &space) override;
|
||||
virtual void overlay_w(u8 data) override;
|
||||
|
||||
// helper instead of device_palette_interface
|
||||
u8 lookup(u8 pixel, u8 overlay = 0) const
|
||||
{
|
||||
@ -111,11 +117,6 @@ protected:
|
||||
|
||||
virtual void device_start() override ATTR_COLD;
|
||||
|
||||
virtual u8 palette_r(address_space &space) override;
|
||||
virtual void palette_w(u8 data) override;
|
||||
virtual u8 overlay_r(address_space &space) override;
|
||||
virtual void overlay_w(u8 data) override;
|
||||
|
||||
std::unique_ptr<u8[]> m_color_ram;
|
||||
};
|
||||
|
||||
@ -161,12 +162,12 @@ class bt457_device : public bt45x_mono_device_base
|
||||
public:
|
||||
bt457_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
protected:
|
||||
virtual u8 palette_r(address_space &space) override;
|
||||
virtual void palette_w(u8 data) override;
|
||||
virtual u8 overlay_r(address_space &space) override;
|
||||
virtual void overlay_w(u8 data) override;
|
||||
|
||||
protected:
|
||||
virtual void increment_address(const bool side_effects = false) override;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user