Add scan line register to Shaolin's Road & Kicker [smf, jotego]

This commit is contained in:
smf- 2021-12-10 21:44:06 +00:00
parent ec401fec51
commit 7d753ec6d3
2 changed files with 10 additions and 7 deletions

View File

@ -127,6 +127,7 @@ void shaolins_state::shaolins_map(address_map &map)
map(0x0000, 0x0000).w(FUNC(shaolins_state::nmi_w)); /* bit 0 = flip screen, bit 1 = nmi enable, bit 2 = ? */
/* bit 3, bit 4 = coin counters */
map(0x0100, 0x0100).w("watchdog", FUNC(watchdog_timer_device::reset_w));
map(0x0200, 0x02ff).lr8(NAME([this]() -> u8 { return m_screen->vpos(); }));
map(0x0300, 0x0300).w("sn1", FUNC(sn76489a_device::write)); /* trigger chip to read from latch. The program always */
map(0x0400, 0x0400).w("sn2", FUNC(sn76489a_device::write)); /* writes the same number as the latch, so we don't */
/* bother emulating them. */
@ -293,13 +294,13 @@ void shaolins_state::shaolins(machine_config &config)
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(shaolins_state::screen_update));
screen.set_palette(m_palette);
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(32*8, 32*8);
m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
m_screen->set_screen_update(FUNC(shaolins_state::screen_update));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_shaolins);
PALETTE(config, m_palette, FUNC(shaolins_state::shaolins_palette), 16*8*16+16*8*16, 256);

View File

@ -15,6 +15,7 @@ public:
shaolins_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_maincpu(*this,"maincpu"),
m_screen(*this,"screen"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_spriteram(*this, "spriteram"),
@ -27,6 +28,7 @@ public:
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;