mirror of
https://github.com/holub/mame
synced 2025-04-17 05:53:36 +03:00
blockhl: use bankdev, clean up driver
This commit is contained in:
parent
83f2c9fa33
commit
389fbaf2f0
@ -1737,7 +1737,6 @@ files {
|
|||||||
MAME_DIR .. "src/mame/drivers/bladestl.c",
|
MAME_DIR .. "src/mame/drivers/bladestl.c",
|
||||||
MAME_DIR .. "src/mame/video/bladestl.c",
|
MAME_DIR .. "src/mame/video/bladestl.c",
|
||||||
MAME_DIR .. "src/mame/drivers/blockhl.c",
|
MAME_DIR .. "src/mame/drivers/blockhl.c",
|
||||||
MAME_DIR .. "src/mame/video/blockhl.c",
|
|
||||||
MAME_DIR .. "src/mame/drivers/bottom9.c",
|
MAME_DIR .. "src/mame/drivers/bottom9.c",
|
||||||
MAME_DIR .. "src/mame/video/bottom9.c",
|
MAME_DIR .. "src/mame/video/bottom9.c",
|
||||||
MAME_DIR .. "src/mame/drivers/chqflag.c",
|
MAME_DIR .. "src/mame/drivers/chqflag.c",
|
||||||
|
@ -22,41 +22,112 @@
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
|
#include "cpu/m6809/konami.h"
|
||||||
#include "cpu/z80/z80.h"
|
#include "cpu/z80/z80.h"
|
||||||
#include "cpu/m6809/konami.h" /* for the callback and the firq irq definition */
|
#include "machine/bankdev.h"
|
||||||
|
#include "video/k052109.h"
|
||||||
|
#include "video/k051960.h"
|
||||||
|
#include "video/konami_helper.h"
|
||||||
#include "sound/2151intf.h"
|
#include "sound/2151intf.h"
|
||||||
#include "includes/konamipt.h"
|
#include "includes/konamipt.h"
|
||||||
#include "includes/blockhl.h"
|
|
||||||
|
|
||||||
|
|
||||||
|
class blockhl_state : public driver_device
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
blockhl_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||||
|
: driver_device(mconfig, type, tag),
|
||||||
|
m_maincpu(*this, "maincpu"),
|
||||||
|
m_bankedram(*this, "bankedram"),
|
||||||
|
m_audiocpu(*this, "audiocpu"),
|
||||||
|
m_k052109(*this, "k052109"),
|
||||||
|
m_k051960(*this, "k051960"),
|
||||||
|
m_bankedrom(*this, "bankedrom") { }
|
||||||
|
|
||||||
|
DECLARE_WRITE8_MEMBER(blockhl_sh_irqtrigger_w);
|
||||||
|
DECLARE_READ8_MEMBER(k052109_051960_r);
|
||||||
|
DECLARE_WRITE8_MEMBER(k052109_051960_w);
|
||||||
|
UINT32 screen_update_blockhl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||||
|
INTERRUPT_GEN_MEMBER(blockhl_interrupt);
|
||||||
|
K052109_CB_MEMBER(tile_callback);
|
||||||
|
K051960_CB_MEMBER(sprite_callback);
|
||||||
|
DECLARE_WRITE8_MEMBER(banking_callback);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void machine_start();
|
||||||
|
|
||||||
|
private:
|
||||||
|
required_device<cpu_device> m_maincpu;
|
||||||
|
required_device<address_map_bank_device> m_bankedram;
|
||||||
|
required_device<cpu_device> m_audiocpu;
|
||||||
|
required_device<k052109_device> m_k052109;
|
||||||
|
required_device<k051960_device> m_k051960;
|
||||||
|
required_memory_bank m_bankedrom;
|
||||||
|
|
||||||
|
// video-related
|
||||||
|
static const int LAYER_COLORBASE[3];
|
||||||
|
static const int SPRITE_COLORBASE;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
const int blockhl_state::LAYER_COLORBASE[] = { 0, 16, 32 };
|
||||||
|
const int blockhl_state::SPRITE_COLORBASE = 48;
|
||||||
|
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
|
||||||
|
Callbacks for the K052109
|
||||||
|
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
K052109_CB_MEMBER(blockhl_state::tile_callback)
|
||||||
|
{
|
||||||
|
*code |= ((*color & 0x0f) << 8);
|
||||||
|
*color = LAYER_COLORBASE[layer] + ((*color & 0xe0) >> 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
|
||||||
|
Callbacks for the K051960
|
||||||
|
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
K051960_CB_MEMBER(blockhl_state::sprite_callback)
|
||||||
|
{
|
||||||
|
if(*color & 0x10)
|
||||||
|
*priority = 0xfe; // under K052109_tilemap[0]
|
||||||
|
else
|
||||||
|
*priority = 0xfc; // under K052109_tilemap[1]
|
||||||
|
|
||||||
|
*color = SPRITE_COLORBASE + (*color & 0x0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
UINT32 blockhl_state::screen_update_blockhl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||||
|
{
|
||||||
|
screen.priority().fill(0, cliprect);
|
||||||
|
|
||||||
|
m_k052109->tilemap_update();
|
||||||
|
|
||||||
|
m_k052109->tilemap_draw(screen, bitmap, cliprect, 2, TILEMAP_DRAW_OPAQUE, 0); // tile 2
|
||||||
|
m_k052109->tilemap_draw(screen, bitmap, cliprect, 1, 0, 1); // tile 1
|
||||||
|
m_k052109->tilemap_draw(screen, bitmap, cliprect, 0, 0, 2); // tile 0
|
||||||
|
|
||||||
|
m_k051960->k051960_sprites_draw(bitmap, cliprect, screen.priority(), 0, -1);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
INTERRUPT_GEN_MEMBER(blockhl_state::blockhl_interrupt)
|
INTERRUPT_GEN_MEMBER(blockhl_state::blockhl_interrupt)
|
||||||
{
|
{
|
||||||
if (m_k052109->is_irq_enabled() && m_rombank == 0) /* kludge to prevent crashes */
|
if (m_k052109->is_irq_enabled() && m_bankedrom->entry() == 0) /* kludge to prevent crashes */
|
||||||
device.execute().set_input_line(KONAMI_IRQ_LINE, HOLD_LINE);
|
device.execute().set_input_line(KONAMI_IRQ_LINE, HOLD_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(blockhl_state::bankedram_r)
|
|
||||||
{
|
|
||||||
if (m_palette_selected)
|
|
||||||
return m_paletteram[offset];
|
|
||||||
else
|
|
||||||
return m_ram[offset];
|
|
||||||
}
|
|
||||||
|
|
||||||
WRITE8_MEMBER(blockhl_state::bankedram_w)
|
|
||||||
{
|
|
||||||
if (m_palette_selected)
|
|
||||||
m_palette->write(space, offset, data);
|
|
||||||
else
|
|
||||||
m_ram[offset] = data;
|
|
||||||
}
|
|
||||||
|
|
||||||
WRITE8_MEMBER(blockhl_state::blockhl_sh_irqtrigger_w)
|
WRITE8_MEMBER(blockhl_state::blockhl_sh_irqtrigger_w)
|
||||||
{
|
{
|
||||||
m_audiocpu->set_input_line_and_vector(0, HOLD_LINE, 0xff);
|
m_audiocpu->set_input_line_and_vector(0, HOLD_LINE, 0xff);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* special handlers to combine 052109 & 051960 */
|
/* special handlers to combine 052109 & 051960 */
|
||||||
READ8_MEMBER(blockhl_state::k052109_051960_r)
|
READ8_MEMBER(blockhl_state::k052109_051960_r)
|
||||||
{
|
{
|
||||||
@ -95,9 +166,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockhl_state )
|
|||||||
AM_RANGE(0x1f98, 0x1f98) AM_READ_PORT("DSW2")
|
AM_RANGE(0x1f98, 0x1f98) AM_READ_PORT("DSW2")
|
||||||
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
|
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
|
||||||
AM_RANGE(0x4000, 0x57ff) AM_RAM
|
AM_RANGE(0x4000, 0x57ff) AM_RAM
|
||||||
AM_RANGE(0x5800, 0x5fff) AM_READWRITE(bankedram_r, bankedram_w) AM_SHARE("ram")
|
AM_RANGE(0x5800, 0x5fff) AM_DEVICE("bankedram", address_map_bank_device, amap8)
|
||||||
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")
|
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bankedrom")
|
||||||
AM_RANGE(0x8000, 0xffff) AM_ROM
|
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000)
|
||||||
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
|
static ADDRESS_MAP_START( bankedram_map, AS_PROGRAM, 8, blockhl_state )
|
||||||
|
AM_RANGE(0x0000, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette")
|
||||||
|
AM_RANGE(0x0800, 0x0fff) AM_RAM
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockhl_state )
|
static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockhl_state )
|
||||||
@ -165,36 +241,21 @@ INPUT_PORTS_END
|
|||||||
|
|
||||||
void blockhl_state::machine_start()
|
void blockhl_state::machine_start()
|
||||||
{
|
{
|
||||||
UINT8 *ROM = memregion("maincpu")->base();
|
// the first 0x8000 are banked, the remaining 0x8000 are directly accessible
|
||||||
|
m_bankedrom->configure_entries(0, 4, memregion("maincpu")->base(), 0x2000);
|
||||||
membank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
|
|
||||||
|
|
||||||
m_paletteram.resize(m_palette->entries() * 2);
|
|
||||||
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
|
|
||||||
|
|
||||||
save_item(NAME(m_paletteram));
|
|
||||||
save_item(NAME(m_palette_selected));
|
|
||||||
save_item(NAME(m_rombank));
|
|
||||||
}
|
|
||||||
|
|
||||||
void blockhl_state::machine_reset()
|
|
||||||
{
|
|
||||||
m_palette_selected = 0;
|
|
||||||
m_rombank = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER( blockhl_state::banking_callback )
|
WRITE8_MEMBER( blockhl_state::banking_callback )
|
||||||
{
|
{
|
||||||
/* bits 0-1 = ROM bank */
|
/* bits 0-1 = ROM bank */
|
||||||
m_rombank = data & 0x03;
|
m_bankedrom->set_entry(data & 0x03);
|
||||||
membank("bank1")->set_entry(m_rombank);
|
|
||||||
|
|
||||||
/* bits 3/4 = coin counters */
|
/* bits 3/4 = coin counters */
|
||||||
coin_counter_w(machine(), 0, data & 0x08);
|
coin_counter_w(machine(), 0, data & 0x08);
|
||||||
coin_counter_w(machine(), 1, data & 0x10);
|
coin_counter_w(machine(), 1, data & 0x10);
|
||||||
|
|
||||||
/* bit 5 = select palette RAM or work RAM at 5800-5fff */
|
/* bit 5 = select palette RAM or work RAM at 5800-5fff */
|
||||||
m_palette_selected = ~data & 0x20;
|
m_bankedram->set_bank(BIT(data, 5));
|
||||||
|
|
||||||
/* bit 6 = enable char ROM reading through the video RAM */
|
/* bit 6 = enable char ROM reading through the video RAM */
|
||||||
m_k052109->set_rmrd_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
m_k052109->set_rmrd_line((data & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||||
@ -215,6 +276,13 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
|
|||||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", blockhl_state, blockhl_interrupt)
|
MCFG_CPU_VBLANK_INT_DRIVER("screen", blockhl_state, blockhl_interrupt)
|
||||||
MCFG_KONAMICPU_LINE_CB(WRITE8(blockhl_state, banking_callback))
|
MCFG_KONAMICPU_LINE_CB(WRITE8(blockhl_state, banking_callback))
|
||||||
|
|
||||||
|
MCFG_DEVICE_ADD("bankedram", ADDRESS_MAP_BANK, 0)
|
||||||
|
MCFG_DEVICE_PROGRAM_MAP(bankedram_map)
|
||||||
|
MCFG_ADDRESS_MAP_BANK_ENDIANNESS(ENDIANNESS_BIG)
|
||||||
|
MCFG_ADDRESS_MAP_BANK_DATABUS_WIDTH(8)
|
||||||
|
MCFG_ADDRESS_MAP_BANK_ADDRBUS_WIDTH(12)
|
||||||
|
MCFG_ADDRESS_MAP_BANK_STRIDE(0x0800)
|
||||||
|
|
||||||
MCFG_CPU_ADD("audiocpu", Z80, 3579545)
|
MCFG_CPU_ADD("audiocpu", Z80, 3579545)
|
||||||
MCFG_CPU_PROGRAM_MAP(audio_map)
|
MCFG_CPU_PROGRAM_MAP(audio_map)
|
||||||
|
|
||||||
@ -255,12 +323,11 @@ MACHINE_CONFIG_END
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
ROM_START( blockhl )
|
ROM_START( blockhl )
|
||||||
ROM_REGION( 0x18000, "maincpu", 0 ) /* code + banked roms + space for banked RAM */
|
ROM_REGION( 0x10000, "maincpu", 0 ) /* code + banked roms */
|
||||||
ROM_LOAD( "973l02.e21", 0x10000, 0x08000, CRC(e14f849a) SHA1(d44cf178cc98998b72ed32c6e20b6ebdf1f97579) )
|
ROM_LOAD( "973l02.e21", 0x00000, 0x10000, CRC(e14f849a) SHA1(d44cf178cc98998b72ed32c6e20b6ebdf1f97579) )
|
||||||
ROM_CONTINUE( 0x08000, 0x08000 )
|
|
||||||
|
|
||||||
ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the sound CPU */
|
ROM_REGION( 0x08000, "audiocpu", 0 ) /* 32k for the sound CPU */
|
||||||
ROM_LOAD( "973d01.g6", 0x0000, 0x8000, CRC(eeee9d92) SHA1(6c6c324b1f6f4fba0aa12e0d1fc5dbab133ef669) )
|
ROM_LOAD( "973d01.g6", 0x00000, 0x08000, CRC(eeee9d92) SHA1(6c6c324b1f6f4fba0aa12e0d1fc5dbab133ef669) )
|
||||||
|
|
||||||
ROM_REGION( 0x20000, "k052109", 0 ) /* tiles */
|
ROM_REGION( 0x20000, "k052109", 0 ) /* tiles */
|
||||||
ROM_LOAD32_BYTE( "973f07.k15", 0x00000, 0x08000, CRC(1a8cd9b4) SHA1(7cb7944d24ac51fa6b610542d9dec68697cacf0f) )
|
ROM_LOAD32_BYTE( "973f07.k15", 0x00000, 0x08000, CRC(1a8cd9b4) SHA1(7cb7944d24ac51fa6b610542d9dec68697cacf0f) )
|
||||||
@ -279,12 +346,11 @@ ROM_START( blockhl )
|
|||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
ROM_START( quarth )
|
ROM_START( quarth )
|
||||||
ROM_REGION( 0x18000, "maincpu", 0 ) /* code + banked roms + space for banked RAM */
|
ROM_REGION( 0x10000, "maincpu", 0 ) /* code + banked roms */
|
||||||
ROM_LOAD( "973j02.e21", 0x10000, 0x08000, CRC(27a90118) SHA1(51309385b93db29b9277d14252166c4ea1746303) )
|
ROM_LOAD( "973j02.e21", 0x00000, 0x10000, CRC(27a90118) SHA1(51309385b93db29b9277d14252166c4ea1746303) )
|
||||||
ROM_CONTINUE( 0x08000, 0x08000 )
|
|
||||||
|
|
||||||
ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the sound CPU */
|
ROM_REGION( 0x08000, "audiocpu", 0 ) /* 32k for the sound CPU */
|
||||||
ROM_LOAD( "973d01.g6", 0x0000, 0x8000, CRC(eeee9d92) SHA1(6c6c324b1f6f4fba0aa12e0d1fc5dbab133ef669) )
|
ROM_LOAD( "973d01.g6", 0x00000, 0x08000, CRC(eeee9d92) SHA1(6c6c324b1f6f4fba0aa12e0d1fc5dbab133ef669) )
|
||||||
|
|
||||||
ROM_REGION( 0x20000, "k052109", 0 ) /* tiles */
|
ROM_REGION( 0x20000, "k052109", 0 ) /* tiles */
|
||||||
ROM_LOAD32_BYTE( "973e07.k15", 0x00000, 0x08000, CRC(0bd6b0f8) SHA1(6c59cf637354fe2df424eaa89feb9c1bc1f66a92) )
|
ROM_LOAD32_BYTE( "973e07.k15", 0x00000, 0x08000, CRC(0bd6b0f8) SHA1(6c59cf637354fe2df424eaa89feb9c1bc1f66a92) )
|
||||||
|
@ -1,56 +0,0 @@
|
|||||||
// license:BSD-3-Clause
|
|
||||||
// copyright-holders:Nicola Salmoria
|
|
||||||
/*************************************************************************
|
|
||||||
|
|
||||||
Block Hole
|
|
||||||
|
|
||||||
*************************************************************************/
|
|
||||||
|
|
||||||
#include "video/k052109.h"
|
|
||||||
#include "video/k051960.h"
|
|
||||||
#include "video/konami_helper.h"
|
|
||||||
|
|
||||||
class blockhl_state : public driver_device
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
blockhl_state(const machine_config &mconfig, device_type type, const char *tag)
|
|
||||||
: driver_device(mconfig, type, tag),
|
|
||||||
m_ram(*this, "ram"),
|
|
||||||
m_maincpu(*this, "maincpu"),
|
|
||||||
m_audiocpu(*this, "audiocpu"),
|
|
||||||
m_k052109(*this, "k052109"),
|
|
||||||
m_k051960(*this, "k051960"),
|
|
||||||
m_palette(*this, "palette") { }
|
|
||||||
|
|
||||||
/* memory pointers */
|
|
||||||
required_shared_ptr<UINT8> m_ram;
|
|
||||||
std::vector<UINT8> m_paletteram;
|
|
||||||
|
|
||||||
/* video-related */
|
|
||||||
int m_layer_colorbase[3];
|
|
||||||
int m_sprite_colorbase;
|
|
||||||
|
|
||||||
/* misc */
|
|
||||||
int m_palette_selected;
|
|
||||||
int m_rombank;
|
|
||||||
|
|
||||||
/* devices */
|
|
||||||
required_device<cpu_device> m_maincpu;
|
|
||||||
required_device<cpu_device> m_audiocpu;
|
|
||||||
required_device<k052109_device> m_k052109;
|
|
||||||
required_device<k051960_device> m_k051960;
|
|
||||||
required_device<palette_device> m_palette;
|
|
||||||
DECLARE_READ8_MEMBER(bankedram_r);
|
|
||||||
DECLARE_WRITE8_MEMBER(bankedram_w);
|
|
||||||
DECLARE_WRITE8_MEMBER(blockhl_sh_irqtrigger_w);
|
|
||||||
DECLARE_READ8_MEMBER(k052109_051960_r);
|
|
||||||
DECLARE_WRITE8_MEMBER(k052109_051960_w);
|
|
||||||
virtual void machine_start();
|
|
||||||
virtual void machine_reset();
|
|
||||||
virtual void video_start();
|
|
||||||
UINT32 screen_update_blockhl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
|
||||||
INTERRUPT_GEN_MEMBER(blockhl_interrupt);
|
|
||||||
K052109_CB_MEMBER(tile_callback);
|
|
||||||
K051960_CB_MEMBER(sprite_callback);
|
|
||||||
DECLARE_WRITE8_MEMBER(banking_callback);
|
|
||||||
};
|
|
@ -1,62 +0,0 @@
|
|||||||
// license:BSD-3-Clause
|
|
||||||
// copyright-holders:Nicola Salmoria
|
|
||||||
#include "emu.h"
|
|
||||||
#include "includes/blockhl.h"
|
|
||||||
|
|
||||||
|
|
||||||
/***************************************************************************
|
|
||||||
|
|
||||||
Callbacks for the K052109
|
|
||||||
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
K052109_CB_MEMBER(blockhl_state::tile_callback)
|
|
||||||
{
|
|
||||||
*code |= ((*color & 0x0f) << 8);
|
|
||||||
*color = m_layer_colorbase[layer] + ((*color & 0xe0) >> 5);
|
|
||||||
}
|
|
||||||
|
|
||||||
/***************************************************************************
|
|
||||||
|
|
||||||
Callbacks for the K051960
|
|
||||||
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
K051960_CB_MEMBER(blockhl_state::sprite_callback)
|
|
||||||
{
|
|
||||||
if(*color & 0x10)
|
|
||||||
*priority = 0xfe; // under K052109_tilemap[0]
|
|
||||||
else
|
|
||||||
*priority = 0xfc; // under K052109_tilemap[1]
|
|
||||||
|
|
||||||
*color = m_sprite_colorbase + (*color & 0x0f);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/***************************************************************************
|
|
||||||
|
|
||||||
Start the video hardware emulation.
|
|
||||||
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
void blockhl_state::video_start()
|
|
||||||
{
|
|
||||||
m_layer_colorbase[0] = 0;
|
|
||||||
m_layer_colorbase[1] = 16;
|
|
||||||
m_layer_colorbase[2] = 32;
|
|
||||||
m_sprite_colorbase = 48;
|
|
||||||
}
|
|
||||||
|
|
||||||
UINT32 blockhl_state::screen_update_blockhl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
|
||||||
{
|
|
||||||
screen.priority().fill(0, cliprect);
|
|
||||||
|
|
||||||
m_k052109->tilemap_update();
|
|
||||||
|
|
||||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 2, TILEMAP_DRAW_OPAQUE, 0); // tile 2
|
|
||||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 1, 0, 1); // tile 1
|
|
||||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 0, 0, 2); // tile 0
|
|
||||||
|
|
||||||
m_k051960->k051960_sprites_draw(bitmap, cliprect, screen.priority(), 0, -1);
|
|
||||||
return 0;
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user