summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/dooyong.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/dooyong.cpp')
-rw-r--r--src/mame/drivers/dooyong.cpp56
1 files changed, 24 insertions, 32 deletions
diff --git a/src/mame/drivers/dooyong.cpp b/src/mame/drivers/dooyong.cpp
index cf5b92ee7c4..d3545a18b82 100644
--- a/src/mame/drivers/dooyong.cpp
+++ b/src/mame/drivers/dooyong.cpp
@@ -57,7 +57,7 @@ because one of interrupt sources is _dead_ (timer never restarts).
Music tempo and audio pitch depends on (unknown) YM clocks.
Sound cpu runs currently at 8 MHz to avoid jerky music when there's (too)
-many sfx scheduled.
+many SFX scheduled.
Currently there's some workaround implemented - both YM lines are OR-ed to
allow nested (and in fact - delayed) interrupts. It's temporary solution
@@ -65,7 +65,7 @@ until we find real PCB and verify clocks and trace int lines.
Pollux:
Many (all? at least pollux, primella and flying tiger) use some kind of
-banked palette ram. Bit 1 at address 0xf008 controls banking (both palettes
+banked palette RAM. Bit 1 at address 0xf008 controls banking (both palettes
are almost identical, except for much darker BG layer colors).
@@ -1497,11 +1497,10 @@ MACHINE_CONFIG_START(dooyong_z80_ym2203_state::lastday)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_ym2203_state, screen_update_lastday)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram8_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_lastday)
- MCFG_PALETTE_ADD("palette", 1024)
- MCFG_PALETTE_FORMAT(xxxxBBBBGGGGRRRR)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_lastday);
+ PALETTE(config, m_palette).set_format(palette_device::xBGR_444, 1024);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 2, "gfx5", 0x00000);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 3, "gfx6", 0x00000);
m_fg[0]->set_transparent_pen(15);
@@ -1550,11 +1549,10 @@ MACHINE_CONFIG_START(dooyong_z80_ym2203_state::gulfstrm)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_ym2203_state, screen_update_gulfstrm)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram8_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_lastday)
- MCFG_PALETTE_ADD("palette", 1024)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_lastday);
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 1024);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 2, "gfx5", 0x00000);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 3, "gfx6", 0x00000);
m_fg[0]->set_transparent_pen(15);
@@ -1588,11 +1586,10 @@ MACHINE_CONFIG_START(dooyong_z80_ym2203_state::pollux)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_ym2203_state, screen_update_pollux)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram8_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_lastday)
- MCFG_PALETTE_ADD("palette", 1024*2)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_lastday);
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 1024*2);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 2, "gfx5", 0x00000);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 3, "gfx6", 0x00000);
m_fg[0]->set_transparent_pen(15);
@@ -1626,11 +1623,10 @@ MACHINE_CONFIG_START(dooyong_z80_state::bluehawk)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_state, screen_update_bluehawk)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram8_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bluehawk)
- MCFG_PALETTE_ADD("palette", 1024)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_bluehawk);
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 1024);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 2, "gfx3", 0x3c000);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 3, "gfx4", 0x3c000);
m_fg[0]->set_transparent_pen(15);
@@ -1666,11 +1662,10 @@ MACHINE_CONFIG_START(dooyong_z80_state::flytiger)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_state, screen_update_flytiger)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram8_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_flytiger)
- MCFG_PALETTE_ADD("palette", 1024*2)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_flytiger);
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 1024*2);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 2, "gfx3", 0x3c000);
m_bg[0]->set_transparent_pen(15);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 3, "gfx4", 0x3c000);
@@ -1702,11 +1697,10 @@ MACHINE_CONFIG_START(dooyong_z80_state::primella)
MCFG_SCREEN_SIZE(64*8, 32*8)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 0*8, 32*8-1 )
MCFG_SCREEN_UPDATE_DRIVER(dooyong_z80_state, screen_update_primella)
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_primella)
- MCFG_PALETTE_ADD("palette", 1024)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_primella);
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 1024);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 1, "gfx2", -0x4000);
m_bg[0]->set_primella_code_bits(10);
DOOYONG_ROM_TILEMAP(config, m_fg[0], m_gfxdecode, 2, "gfx3", -0x4000);
@@ -1752,11 +1746,10 @@ MACHINE_CONFIG_START(rshark_state::dooyong_68k)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(rshark_state, screen_update_rshark)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram16_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_rshark)
- MCFG_PALETTE_ADD("palette", 2048)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 2048);
RSHARK_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 4, "gfx5", 0x00000, "gfx6", 0x60000);
RSHARK_ROM_TILEMAP(config, m_bg[1], m_gfxdecode, 3, "gfx4", 0x00000, "gfx6", 0x40000);
@@ -1804,11 +1797,10 @@ MACHINE_CONFIG_START(popbingo_state::popbingo)
MCFG_SCREEN_VISIBLE_AREA(8*8, (64-8)*8-1, 1*8, 31*8-1)
MCFG_SCREEN_UPDATE_DRIVER(popbingo_state, screen_update_popbingo)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(m_spriteram, buffered_spriteram16_device, vblank_copy_rising))
- MCFG_SCREEN_PALETTE("palette")
+ MCFG_SCREEN_PALETTE(m_palette)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_popbingo)
- MCFG_PALETTE_ADD("palette", 2048)
- MCFG_PALETTE_FORMAT(xRRRRRGGGGGBBBBB)
+ PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 2048);
DOOYONG_ROM_TILEMAP(config, m_bg[0], m_gfxdecode, 1, "gfx2", 0x00000);
m_bg[0]->set_primella_code_bits(11);