mirror of
https://github.com/holub/mame
synced 2025-06-07 13:23:50 +03:00
fix level 2-4 boss in hrdtimes (MT5220)
This commit is contained in:
parent
f0b29eb92a
commit
2d852cebc9
@ -315,9 +315,12 @@ static ADDRESS_MAP_START( hrdtimes_main_map, AS_PROGRAM, 16, playmark_state )
|
|||||||
AM_RANGE(0x000000, 0x07ffff) AM_ROM
|
AM_RANGE(0x000000, 0x07ffff) AM_ROM
|
||||||
AM_RANGE(0x080000, 0x0bffff) AM_RAM
|
AM_RANGE(0x080000, 0x0bffff) AM_RAM
|
||||||
AM_RANGE(0x0c0000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0x0c0000)
|
AM_RANGE(0x0c0000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0x0c0000)
|
||||||
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_SHARE("videoram3")
|
AM_RANGE(0x100000, 0x1007ff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_SHARE("videoram3") // 32*32?
|
||||||
AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_SHARE("videoram2")
|
AM_RANGE(0x100800, 0x103fff) AM_RAM
|
||||||
AM_RANGE(0x108000, 0x10ffff) AM_RAM_WRITE(hrdtimes_txvideoram_w) AM_SHARE("videoram1")
|
AM_RANGE(0x104000, 0x105fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_SHARE("videoram2") // 128*32?
|
||||||
|
AM_RANGE(0x106000, 0x107fff) AM_RAM
|
||||||
|
AM_RANGE(0x108000, 0x109fff) AM_RAM_WRITE(hrdtimes_txvideoram_w) AM_SHARE("videoram1") // 64*64?
|
||||||
|
AM_RANGE(0x10a000, 0x10bfff) AM_RAM
|
||||||
AM_RANGE(0x110000, 0x11000d) AM_WRITE(hrdtimes_scroll_w)
|
AM_RANGE(0x110000, 0x11000d) AM_WRITE(hrdtimes_scroll_w)
|
||||||
AM_RANGE(0x200000, 0x200fff) AM_RAM AM_SHARE("spriteram")
|
AM_RANGE(0x200000, 0x200fff) AM_RAM AM_SHARE("spriteram")
|
||||||
AM_RANGE(0x280000, 0x2807ff) AM_RAM_WRITE(bigtwin_paletteram_w) AM_SHARE("paletteram")
|
AM_RANGE(0x280000, 0x2807ff) AM_RAM_WRITE(bigtwin_paletteram_w) AM_SHARE("paletteram")
|
||||||
|
@ -95,6 +95,7 @@ public:
|
|||||||
DECLARE_VIDEO_START(hotmind);
|
DECLARE_VIDEO_START(hotmind);
|
||||||
DECLARE_VIDEO_START(hrdtimes);
|
DECLARE_VIDEO_START(hrdtimes);
|
||||||
DECLARE_VIDEO_START(luckboomh);
|
DECLARE_VIDEO_START(luckboomh);
|
||||||
|
TILEMAP_MAPPER_MEMBER(playmark_tilemap_scan_pages);
|
||||||
UINT32 screen_update_bigtwin(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
UINT32 screen_update_bigtwin(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||||
UINT32 screen_update_bigtwinb(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
UINT32 screen_update_bigtwinb(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||||
UINT32 screen_update_wbeachvl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
UINT32 screen_update_wbeachvl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||||
|
@ -227,10 +227,27 @@ VIDEO_START_MEMBER(playmark_state,luckboomh)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// hard times level 2-4 (boss) needs this.. or something similar
|
||||||
|
#define TILES_PER_PAGE_Y (0x20)
|
||||||
|
#define TILES_PER_PAGE_X (0x20)
|
||||||
|
#define PAGES_PER_TMAP_Y (0x1)
|
||||||
|
#define PAGES_PER_TMAP_X (0x4)
|
||||||
|
|
||||||
|
TILEMAP_MAPPER_MEMBER(playmark_state::playmark_tilemap_scan_pages)
|
||||||
|
{
|
||||||
|
return (col / TILES_PER_PAGE_X) * TILES_PER_PAGE_Y * TILES_PER_PAGE_X * PAGES_PER_TMAP_Y +
|
||||||
|
(col % TILES_PER_PAGE_X) +
|
||||||
|
|
||||||
|
(row / TILES_PER_PAGE_Y) * TILES_PER_PAGE_Y * TILES_PER_PAGE_X +
|
||||||
|
(row % TILES_PER_PAGE_Y) * TILES_PER_PAGE_X;
|
||||||
|
}
|
||||||
|
|
||||||
|
// theres enough ram for 64*128 on each tilemap..
|
||||||
|
|
||||||
VIDEO_START_MEMBER(playmark_state,hrdtimes)
|
VIDEO_START_MEMBER(playmark_state,hrdtimes)
|
||||||
{
|
{
|
||||||
m_tx_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_tx_tile_info),this),TILEMAP_SCAN_ROWS, 8, 8, 64, 64);
|
m_tx_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_tx_tile_info),this),TILEMAP_SCAN_ROWS, 8, 8, 64, 64);
|
||||||
m_fg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_fg_tile_info),this),TILEMAP_SCAN_ROWS, 16, 16, 32, 32);
|
m_fg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_fg_tile_info),this),tilemap_mapper_delegate(FUNC(playmark_state::playmark_tilemap_scan_pages),this), 16, 16, 128, 32);
|
||||||
m_bg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_bg_tile_info),this),TILEMAP_SCAN_ROWS, 16, 16, 32, 32);
|
m_bg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(playmark_state::hrdtimes_get_bg_tile_info),this),TILEMAP_SCAN_ROWS, 16, 16, 32, 32);
|
||||||
|
|
||||||
m_tx_tilemap->set_transparent_pen(0);
|
m_tx_tilemap->set_transparent_pen(0);
|
||||||
|
Loading…
Reference in New Issue
Block a user