mirror of
https://github.com/holub/mame
synced 2025-05-06 22:35:43 +03:00
Merge pull request #2934 from DavidHaywood/101217
pgm2: kof98umh resolution is 320x240 instead, extra lines are needed at both top and bottom (nw)
This commit is contained in:
commit
3a618ace15
@ -320,6 +320,33 @@ WRITE32_MEMBER(pgm2_state::mcu_w)
|
|||||||
mcu_command(space, false);
|
mcu_command(space, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
WRITE16_MEMBER(pgm2_state::unk30120014_w)
|
||||||
|
{
|
||||||
|
if (offset == 0)
|
||||||
|
{
|
||||||
|
// 0/1 toggles (maybe sprite dma triggers?)
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// interesting data
|
||||||
|
//printf("unk30120014_w %d %04x\n", offset, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
WRITE16_MEMBER(pgm2_state::unk30120018_w)
|
||||||
|
{
|
||||||
|
if (offset == 0)
|
||||||
|
{
|
||||||
|
// writes 1 (maybe sprite enable)
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// writes 0 (rarely)
|
||||||
|
//printf("unk30120018_w %d %04x\n", offset, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
|
static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
|
||||||
AM_RANGE(0x00000000, 0x00003fff) AM_ROM //AM_REGION("user1", 0x00000) // internal ROM
|
AM_RANGE(0x00000000, 0x00003fff) AM_ROM //AM_REGION("user1", 0x00000) // internal ROM
|
||||||
|
|
||||||
@ -357,6 +384,8 @@ static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
|
|||||||
AM_RANGE(0x30120000, 0x30120003) AM_RAM AM_SHARE("bgscroll") // scroll
|
AM_RANGE(0x30120000, 0x30120003) AM_RAM AM_SHARE("bgscroll") // scroll
|
||||||
AM_RANGE(0x30120008, 0x3012000b) AM_RAM AM_SHARE("fgscroll")
|
AM_RANGE(0x30120008, 0x3012000b) AM_RAM AM_SHARE("fgscroll")
|
||||||
AM_RANGE(0x3012000c, 0x3012000f) AM_RAM AM_SHARE("vidmode")
|
AM_RANGE(0x3012000c, 0x3012000f) AM_RAM AM_SHARE("vidmode")
|
||||||
|
AM_RANGE(0x30120014, 0x30120017) AM_WRITE16(unk30120014_w, 0xffffffff)
|
||||||
|
AM_RANGE(0x30120018, 0x3012001b) AM_WRITE16(unk30120018_w, 0xffffffff)
|
||||||
AM_RANGE(0x30120030, 0x30120033) AM_WRITE16(share_bank_w, 0xffff0000)
|
AM_RANGE(0x30120030, 0x30120033) AM_WRITE16(share_bank_w, 0xffff0000)
|
||||||
AM_RANGE(0x30120038, 0x3012003b) AM_WRITE(sprite_encryption_w)
|
AM_RANGE(0x30120038, 0x3012003b) AM_WRITE(sprite_encryption_w)
|
||||||
// there are other 0x301200xx regs
|
// there are other 0x301200xx regs
|
||||||
@ -576,8 +605,7 @@ MACHINE_CONFIG_END
|
|||||||
// not strictly needed as the video code supports changing on the fly, but makes recording easier etc.
|
// not strictly needed as the video code supports changing on the fly, but makes recording easier etc.
|
||||||
static MACHINE_CONFIG_DERIVED( pgm2_lores, pgm2 )
|
static MACHINE_CONFIG_DERIVED( pgm2_lores, pgm2 )
|
||||||
MCFG_SCREEN_MODIFY("screen")
|
MCFG_SCREEN_MODIFY("screen")
|
||||||
// note, +8 to y position too, could be a sprite reg to move sprites intead
|
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 240-1)
|
||||||
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0+8, 224+8-1)
|
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
@ -869,7 +897,11 @@ all others: SPANSION S99-50070
|
|||||||
\
|
\
|
||||||
ROM_REGION( 0x08000000, "ymz774", ROMREGION_ERASEFF ) /* ymz770 */ \
|
ROM_REGION( 0x08000000, "ymz774", ROMREGION_ERASEFF ) /* ymz770 */ \
|
||||||
ROM_LOAD16_WORD_SWAP( "ig-d3_wave0.u12", 0x00000000, 0x4000000, CRC(edf2332d) SHA1(7e01c7e03e515814d7de117c265c3668d32842fa) ) \
|
ROM_LOAD16_WORD_SWAP( "ig-d3_wave0.u12", 0x00000000, 0x4000000, CRC(edf2332d) SHA1(7e01c7e03e515814d7de117c265c3668d32842fa) ) \
|
||||||
ROM_LOAD16_WORD_SWAP( "ig-d3_wave1.u11", 0x04000000, 0x4000000, CRC(62321b20) SHA1(a388c8a2489430fbe92fb26b3ef81c66ce97f318) )
|
ROM_LOAD16_WORD_SWAP( "ig-d3_wave1.u11", 0x04000000, 0x4000000, CRC(62321b20) SHA1(a388c8a2489430fbe92fb26b3ef81c66ce97f318) ) \
|
||||||
|
\
|
||||||
|
ROM_REGION( 0x10000, "sram", 0 ) \
|
||||||
|
ROM_LOAD( "kof98umh_sram", 0x00000000, 0x10000, CRC(60460ed9) SHA1(55cd8de37cee04ff7ad940fb52f8fb8db042c26e) )
|
||||||
|
|
||||||
|
|
||||||
ROM_START( kof98umh )
|
ROM_START( kof98umh )
|
||||||
ROM_REGION( 0x04000, "maincpu", 0 )
|
ROM_REGION( 0x04000, "maincpu", 0 )
|
||||||
@ -1126,7 +1158,7 @@ GAME( 2011, kov3_102, kov3, pgm2, pgm2, pgm2_state, kov3_102, ROT0,
|
|||||||
GAME( 2011, kov3_100, kov3, pgm2, pgm2, pgm2_state, kov3_100, ROT0, "IGS", "Knights of Valour 3 (V100, China)", MACHINE_NOT_WORKING )
|
GAME( 2011, kov3_100, kov3, pgm2, pgm2, pgm2_state, kov3_100, ROT0, "IGS", "Knights of Valour 3 (V100, China)", MACHINE_NOT_WORKING )
|
||||||
|
|
||||||
// King of Fighters '98: Ultimate Match Hero
|
// King of Fighters '98: Ultimate Match Hero
|
||||||
GAME( 2009, kof98umh, 0, pgm2_lores, pgm2, pgm2_state, kof98umh, ROT0, "IGS / SNK Playmore / NewChannel", "The King of Fighters '98: Ultimate Match HERO (China, V100, 09-08-23)", MACHINE_NOT_WORKING )
|
GAME( 2009, kof98umh, 0, pgm2_lores, pgm2, pgm2_state, kof98umh, ROT0, "IGS / SNK Playmore / New Channel", "The King of Fighters '98: Ultimate Match HERO (China, V100, 09-08-23)", MACHINE_IMPERFECT_SOUND )
|
||||||
|
|
||||||
// Jigsaw World Arena
|
// Jigsaw World Arena
|
||||||
|
|
||||||
|
@ -55,6 +55,8 @@ public:
|
|||||||
DECLARE_WRITE16_MEMBER(share_bank_w);
|
DECLARE_WRITE16_MEMBER(share_bank_w);
|
||||||
DECLARE_READ8_MEMBER(shareram_r);
|
DECLARE_READ8_MEMBER(shareram_r);
|
||||||
DECLARE_WRITE8_MEMBER(shareram_w);
|
DECLARE_WRITE8_MEMBER(shareram_w);
|
||||||
|
DECLARE_WRITE16_MEMBER(unk30120014_w);
|
||||||
|
DECLARE_WRITE16_MEMBER(unk30120018_w);
|
||||||
|
|
||||||
DECLARE_READ32_MEMBER(orleg2_speedup_r);
|
DECLARE_READ32_MEMBER(orleg2_speedup_r);
|
||||||
DECLARE_READ32_MEMBER(kov2nl_speedup_r);
|
DECLARE_READ32_MEMBER(kov2nl_speedup_r);
|
||||||
|
@ -266,8 +266,8 @@ uint32_t pgm2_state::screen_update_pgm2(screen_device &screen, bitmap_rgb32 &bit
|
|||||||
|
|
||||||
if (mode)
|
if (mode)
|
||||||
m_screen->set_visible_area(0, 448 - 1, 0, 224 - 1);
|
m_screen->set_visible_area(0, 448 - 1, 0, 224 - 1);
|
||||||
else // note, +8 to y position too, could be a sprite reg to move sprites intead
|
else
|
||||||
m_screen->set_visible_area(0, 320 - 1, 8, 224 + 8 - 1);
|
m_screen->set_visible_area(0, 320 - 1, 0, 240 - 1);
|
||||||
|
|
||||||
|
|
||||||
m_fg_tilemap->set_scrollx(0, m_fgscroll[0] & 0xffff);
|
m_fg_tilemap->set_scrollx(0, m_fgscroll[0] & 0xffff);
|
||||||
|
Loading…
Reference in New Issue
Block a user