mirror of
https://github.com/holub/mame
synced 2025-04-27 10:43:07 +03:00
konmedal: improved colors for shuriboy, fuusenpn, and mariorou [R. Belmont]
This commit is contained in:
parent
a488be57b6
commit
453d68bcf6
@ -67,6 +67,7 @@ public:
|
||||
void ddboy(machine_config &config);
|
||||
void tsukande(machine_config &config);
|
||||
void fuusenpn(machine_config &config);
|
||||
void mariorou(machine_config &config);
|
||||
|
||||
private:
|
||||
void konmedal_palette(palette_device &palette) const;
|
||||
@ -85,12 +86,12 @@ private:
|
||||
uint32_t screen_update_konmedal(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
uint32_t screen_update_shuriboy(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
uint32_t screen_update_fuusenpn(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
uint32_t screen_update_mariorou(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
INTERRUPT_GEN_MEMBER(konmedal_interrupt);
|
||||
K056832_CB_MEMBER(tile_callback);
|
||||
|
||||
K052109_CB_MEMBER(shuriboy_tile_callback);
|
||||
K052109_CB_MEMBER(fuusenpn_tile_callback);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
|
||||
DECLARE_WRITE8_MEMBER(shuri_bank_w);
|
||||
DECLARE_READ8_MEMBER(shuri_irq_r);
|
||||
@ -217,6 +218,20 @@ uint32_t konmedal_state::screen_update_fuusenpn(screen_device &screen, bitmap_in
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t konmedal_state::screen_update_mariorou(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
bitmap.fill(0, cliprect);
|
||||
screen.priority().fill(0, cliprect);
|
||||
|
||||
m_k052109->tilemap_update();
|
||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 1, 0, 1);
|
||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 2, 0, 2);
|
||||
m_k052109->tilemap_draw(screen, bitmap, cliprect, 0, 0, 4);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void konmedal_state::konmedal_palette(palette_device &palette) const
|
||||
{
|
||||
uint8_t const *const PROM = memregion("proms")->base();
|
||||
@ -482,17 +497,32 @@ K052109_CB_MEMBER(konmedal_state::shuriboy_tile_callback)
|
||||
*flags = (*color & 0x1) ? TILE_FLIPX : 0;
|
||||
u8 col = *color;
|
||||
*color = (col >> 4);
|
||||
if (layer > 0) *color |= 8;
|
||||
}
|
||||
|
||||
K052109_CB_MEMBER(konmedal_state::fuusenpn_tile_callback)
|
||||
{
|
||||
*code |= ((*color & 0xc) << 6) | (bank << 10);
|
||||
if (*color & 0x2) *code |= 0x1000;
|
||||
*flags = (*color & 0x1) ? TILE_FLIPX : 0;
|
||||
u8 col = *color;
|
||||
*color = (col >> 4);
|
||||
*color |= 8;
|
||||
if (layer == 0)
|
||||
{
|
||||
if (*color == 1) *color = 0;
|
||||
if (*color == 2) *color = 1;
|
||||
if (*color == 6) *color = 5;
|
||||
if (*color == 8) *color = 4;
|
||||
if (*color == 9) *color = 4;
|
||||
if (*color == 0xa) *color = 5;
|
||||
if (*color == 0xd) *color = 6;
|
||||
if (*color == 0xe) *color = 3;
|
||||
}
|
||||
if (layer == 1)
|
||||
{
|
||||
if (*color == 0) *color = 8;
|
||||
if (*color == 0xa) *color = 0xe;
|
||||
if (*color == 4) *color = 0xa;
|
||||
}
|
||||
if (layer == 2)
|
||||
{
|
||||
if (*color == 6) *color = 3;
|
||||
if (*color == 8) *color = 0xc;
|
||||
if (*color == 0) *color = 8;
|
||||
if (*color == 0xa) *color = 0xd;
|
||||
if (*color == 4) *color = 0xa;
|
||||
if (*color == 5) *color = 0xa;
|
||||
}
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(konmedal_state::shuri_bank_w)
|
||||
@ -583,7 +613,22 @@ void konmedal_state::fuusenpn(machine_config &config)
|
||||
screen.set_screen_update(FUNC(konmedal_state::screen_update_fuusenpn));
|
||||
screen.set_palette(m_palette);
|
||||
|
||||
m_k052109->set_tile_callback(FUNC(konmedal_state::fuusenpn_tile_callback));
|
||||
m_k052109->set_tile_callback(FUNC(konmedal_state::shuriboy_tile_callback));
|
||||
}
|
||||
|
||||
void konmedal_state::mariorou(machine_config &config)
|
||||
{
|
||||
shuriboy(config);
|
||||
|
||||
screen_device &screen(SCREEN(config.replace(), "screen", SCREEN_TYPE_RASTER)); // everything not verified, just a placeholder
|
||||
screen.set_refresh_hz(60);
|
||||
screen.set_vblank_time(ATTOSECONDS_IN_USEC(30));
|
||||
screen.set_size(64*8, 32*8);
|
||||
screen.set_visarea(96, 416-1, 16, 240-1);
|
||||
screen.set_screen_update(FUNC(konmedal_state::screen_update_mariorou));
|
||||
screen.set_palette(m_palette);
|
||||
|
||||
m_k052109->set_tile_callback(FUNC(konmedal_state::shuriboy_tile_callback));
|
||||
}
|
||||
|
||||
ROM_START( tsukande )
|
||||
@ -746,11 +791,13 @@ ROM_START( mariorou )
|
||||
ROM_LOAD( "111_a10.3e.82s129", 0x000300, 0x000100, CRC(07ffc2ed) SHA1(37955d1788a86b90439233bb098c59b191056f68) )
|
||||
ROM_END
|
||||
|
||||
// K052109 (TMNT tilemaps) board
|
||||
GAME( 1991, mariorou, 0, mariorou, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Mario Roulette", MACHINE_NOT_WORKING)
|
||||
GAME( 1993, shuriboy, 0, shuriboy, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Shuriken Boy", MACHINE_NOT_WORKING)
|
||||
GAME( 1993, fuusenpn, 0, fuusenpn, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Fuusen Pentai", MACHINE_NOT_WORKING)
|
||||
|
||||
// K054156/K054157 (GX tilemaps) board
|
||||
GAME( 1994, buttobi, 0, ddboy, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Buttobi Striker", MACHINE_NOT_WORKING)
|
||||
GAME( 1995, tsukande, 0, tsukande, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Tsukande Toru Chicchi", MACHINE_NOT_WORKING)
|
||||
GAME( 1995, ddboy, 0, ddboy, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Dam Dam Boy (on dedicated PCB)", MACHINE_NOT_WORKING)
|
||||
GAME( 1995, ddboya, ddboy, ddboy, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Dam Dam Boy (on Tsukande Toru Chicchi PCB)", MACHINE_NOT_WORKING)
|
||||
GAME( 1993, shuriboy, 0, shuriboy, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Shuriken Boy", MACHINE_NOT_WORKING)
|
||||
GAME( 1993, fuusenpn, 0, fuusenpn, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Fuusen Pentai", MACHINE_NOT_WORKING)
|
||||
GAME( 1993, mariorou, 0, fuusenpn, konmedal, konmedal_state, empty_init, ROT0, "Konami", "Mario Roulette", MACHINE_NOT_WORKING)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user