diff options
author | Vas Crabb <vas@vastheman.com> | 2018-12-29 05:53:50 +1100 |
---|---|---|
committer | Vas Crabb <vas@vastheman.com> | 2018-12-29 05:53:50 +1100 |
commit | f1f0591f43f381123e8d9ec20c52eb7c0c332c79 (patch) | |
tree | 97c8dd30a6ea292c3189f372b8103a2e303c0b2d /src/mame/etc | |
parent | 65bfb2654f0c73235f114e9145c766245bed9790 (diff) |
Start cleaning up palette configuration:
* Basically, initialisers go in the constructor arguments, and things for setting format go in set_format.
* Initialisation patterns can be specified with an enum discriminator or with a FUNC and optionally a tag.
* Formats can be specified with an enum discriminator or a size and function pointer.
* You must always supply the number of entries when setting the format.
* When initislising with a paletter initialisation member, you can specify the entries and indirecte entries together.
* The palette_device now has a standard constructor, so use .set_entries if you are specifying entry count with no format/initialisation.
* Also killed an overload on delegates that wasn't being useful.
Diffstat (limited to 'src/mame/etc')
-rw-r--r-- | src/mame/etc/template_driver.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mame/etc/template_driver.cpp b/src/mame/etc/template_driver.cpp index 967bdb33314..d126c66ee16 100644 --- a/src/mame/etc/template_driver.cpp +++ b/src/mame/etc/template_driver.cpp @@ -35,15 +35,15 @@ protected: virtual void video_start() override; private: - // devices - required_device<cpu_device> m_maincpu; + // screen updates + uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + void xxx_palette(palette_device *palette) const; void xxx_io(address_map &map); void xxx_map(address_map &map); - // screen updates - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - DECLARE_PALETTE_INIT(xxx); + // devices + required_device<cpu_device> m_maincpu; }; void xxx_state::video_start() @@ -146,7 +146,7 @@ void xxx_state::machine_reset() } -PALETTE_INIT_MEMBER(xxx_state, xxx) +void xxx_state::xxx_palette(palette_device &palette) const { } @@ -170,7 +170,7 @@ void xxx_state::xxx(machine_config &config) GFXDECODE(config, "gfxdecode", "palette", gfx_xxx); - PALETTE(config, "palette", 8).set_init(palette_init_delegate(FUNC(xxx_state::xxx), this)); + PALETTE(config, "palette", FUNC(xxx_state::xxx_palette), 8); /* sound hardware */ SPEAKER(config, "mono").front_center(); |