diff options
| author | 2022-09-22 18:00:59 +0200 | |
|---|---|---|
| committer | 2022-09-22 18:00:59 +0200 | |
| commit | 4739838899d2f42b38e19cf6fb4d523ed8f10ebc (patch) | |
| tree | 1bb63e049ec0deef788c27b1c0d52093c5db7fce /src | |
| parent | 8669c5b71713a42f4ade00678f04daaf64b830c1 (diff) | |
New clones marked as NOT_WORKING
--------------------------------
Strikers 1945 III (World) / Strikers 1999 (Japan) (bootleg) [Bigblue709]
Diffstat (limited to 'src')
| -rw-r--r-- | src/mame/mame.lst | 1 | ||||
| -rw-r--r-- | src/mame/psikyo/psikyo.cpp | 2 | ||||
| -rw-r--r-- | src/mame/psikyo/psikyosh.cpp | 89 | ||||
| -rw-r--r-- | src/mame/psikyo/psikyosh.h | 3 |
4 files changed, 78 insertions, 17 deletions
diff --git a/src/mame/mame.lst b/src/mame/mame.lst index d6ee7c5ea23..c53bfc09a1a 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -36400,6 +36400,7 @@ gunbird2a // (c) 1998 mjgtaste // (c) 2002 s1945ii // (c) 1997 s1945iii // (c) 1999 +s1945iiibl // bootleg sbomber // (c) 1998 sbombera // (c) 1998 soldivid // (c) 1997 diff --git a/src/mame/psikyo/psikyo.cpp b/src/mame/psikyo/psikyo.cpp index d2b8aa3eb5e..386f8db73c9 100644 --- a/src/mame/psikyo/psikyo.cpp +++ b/src/mame/psikyo/psikyo.cpp @@ -1191,7 +1191,7 @@ void psikyo_state::s1945(machine_config &config) /* sound hardware */ SPEAKER(config, "mono").front_center(); - ymf278b_device &ymf(YMF278B(config, "ymf", 33.8688_MHz_XTAL)); + ymf278b_device &ymf(YMF278B(config, "ymf", 33.8688_MHz_XTAL)); // YMF286-K instead on some PCBs ymf.irq_handler().set_inputline(m_audiocpu, 0); ymf.add_route(ALL_OUTPUTS, "mono", 1.0); diff --git a/src/mame/psikyo/psikyosh.cpp b/src/mame/psikyo/psikyosh.cpp index 1d3115b28e6..e862db1d99e 100644 --- a/src/mame/psikyo/psikyosh.cpp +++ b/src/mame/psikyo/psikyosh.cpp @@ -567,6 +567,19 @@ void psikyosh_state::ps5_mahjong_map(address_map &map) map(0x03000000, 0x03000003).r(FUNC(psikyosh_state::mjgtaste_input_r)); } +void psikyosh_state::s1945iiibl_map(address_map &map) +{ + ps5_map(map); + + map(0x00000000, 0x001fffff).rom(); // bootleg has the data both in a separate chip and at the end of the 2 program ROMs. Why? + map(0x04003000, 0x040031ff).ram().share("zoomram"); // sprite zoom lookup table is inside of spriteram instead of external like in the original + map(0x04050000, 0x040501ff).unmaprw(); + map(0x04053fdc, 0x04053fdf).nopr().w(FUNC(psikyosh_state::irqctrl_w)); + map(0x04053fe0, 0x04053fff).ram().w(FUNC(psikyosh_state::vidregs_w)).share("vidregs"); + map(0x0405ffdc, 0x0405ffdf).unmaprw(); + map(0x0405ffe0, 0x0405ffff).unmaprw(); + map(0x05000000, 0x0507ffff).rom().region("maincpu", 0x200000); // data ROM +} static INPUT_PORTS_START( common ) PORT_START("INPUTS") @@ -860,10 +873,19 @@ void psikyosh_state::psikyo5_240(machine_config &config) psikyo5(config); /* Measured Hsync 16.165 KHz, Vsync 61.68 Hz */ - /* Ideally this would be driven off the video register. However, it doesn't changeat runtime and MAME will pick a better screen resolution if it knows upfront */ + /* Ideally this would be driven off the video register. However, it doesn't change at runtime and MAME will pick a better screen resolution if it knows upfront */ m_screen->set_raw(MASTER_CLOCK/8, 443, 0, 40*8, 262, 0, 30*8); } +void psikyosh_state::s1945iiibl(machine_config &config) +{ + psikyo5(config); + + /* basic machine hardware */ + m_maincpu->set_addrmap(AS_PROGRAM, &psikyosh_state::s1945iiibl_map); + + // TODO: this uses a YMF268-F sound chip. Seems compatible with YMF278B but verify if it has differences. +} /* PS3 */ @@ -1089,6 +1111,32 @@ ROM_START( s1945iii ) ROM_LOAD( "eeprom-s1945iii.bin", 0x0000, 0x0100, CRC(b39f3604) SHA1(d7c66210598096fcafb20adac2f0b293755f4926) ) ROM_END +ROM_START( s1945iiibl ) // BM1045 PCB - has HD6417098 CPU + YMF268-F sound chip + 2x Altera MAX II + ROM_REGION( 0x280000, "maincpu", 0 ) + ROM_LOAD32_WORD_SWAP( "strikers1945.u2", 0x000002, 0x100000, CRC(ef3f8857) SHA1(fa51dbcbba84f5ce183bb122bd80cface6fe431d) ) // chip type unknown, one big sticker covering this and the ROM below + ROM_IGNORE( 0x100000 ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF + ROM_LOAD32_WORD_SWAP( "strikers1945.u1", 0x000000, 0x100000, CRC(470d909b) SHA1(e813f9ee7fb074b35d9d82d299b81820ddbafab4) ) // chip type unknown, one big sticker covering this and the ROM above + ROM_IGNORE( 0x100000 ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF + ROM_LOAD16_WORD_SWAP( "083351_10-01-13.u3", 0x200000, 0x080000, CRC(f76eb183) SHA1(457f6f959c0885b64ec35a3046f2f0b60798a2e0) ) // M27C160, u3 also written with a marker on the label + ROM_IGNORE( 0x180000 ) // 11xxxxxxxxxxxxxxxxxxx = 0xFF + + ROM_REGION( 0x3800000, "gfx1", 0 ) // not dumped for this bootleg, which actually has 4x 26L12811MC-12 MTPs + ROM_LOAD32_WORD( "0l.u3", 0x0000000, 0x800000, BAD_DUMP CRC(70a0d52c) SHA1(c9d9534da59123b577dc22020273b94ccdeeb67d) ) + ROM_LOAD32_WORD( "0h.u10", 0x0000002, 0x800000, BAD_DUMP CRC(4dcd22b4) SHA1(2df7a7d08df17d2a62d574fccc8ba40aaae21a13) ) + ROM_LOAD32_WORD( "1l.u4", 0x1000000, 0x800000, BAD_DUMP CRC(de1042ff) SHA1(468f6dfd5c1f2084c573b6851e314ff2826dc350) ) + ROM_LOAD32_WORD( "1h.u11", 0x1000002, 0x800000, BAD_DUMP CRC(b51a4430) SHA1(b51117591b0e351e922f9a6a7930e8b50237e54e) ) + ROM_LOAD32_WORD( "2l.u5", 0x2000000, 0x800000, BAD_DUMP CRC(23b02dca) SHA1(0249dceca02b312301a917d98fac481b6a0a9122) ) + ROM_LOAD32_WORD( "2h.u12", 0x2000002, 0x800000, BAD_DUMP CRC(9933ab04) SHA1(710e6b20e111c1898666b4466554d039309883cc) ) + ROM_LOAD32_WORD( "3l.u6", 0x3000000, 0x400000, BAD_DUMP CRC(f693438c) SHA1(d70e25a3f56aae6575c696d9b7b6d7a9d04f0104) ) + ROM_LOAD32_WORD( "3h.u13", 0x3000002, 0x400000, BAD_DUMP CRC(2d0c334f) SHA1(74d94abb34484c7b79dbb989645f53124e53e3b7) ) + + ROM_REGION( 0x400000, "ymf", 0 ) // not dumped for this bootleg, which actually has a LH28F640BFN flash + ROM_LOAD( "sound.u9", 0x000000, 0x400000, BAD_DUMP CRC(c5374beb) SHA1(d13e12cbd249246d953c45bb3bfa576a0ec75595) ) + + ROM_REGION( 0x100, "eeprom", 0 ) + ROM_LOAD( "eeprom-s1945iii.bin", 0x0000, 0x0100, CRC(b39f3604) SHA1(d7c66210598096fcafb20adac2f0b293755f4926) ) +ROM_END + /* PS5v2 */ ROM_START( dragnblz ) @@ -1281,25 +1329,34 @@ void psikyosh_state::init_ps5() m_maincpu->sh2drc_add_fastram(0x06000000, 0x060fffff, 0, &m_ram[0]); } +void psikyosh_state::init_s1945iiibl() +{ + m_maincpu->sh2drc_set_options(SH2DRC_FASTEST_OPTIONS); + m_maincpu->sh2drc_add_fastram(0x04000000, 0x0400ffff, 0, &m_spriteram[0]); + //m_maincpu->sh2drc_add_fastram(0x04003000, 0x040031ff, 0, &m_zoomram[0]); // zoomram is in spriteram here + m_maincpu->sh2drc_add_fastram(0x06000000, 0x060fffff, 0, &m_ram[0]); +} + -// YEAR NAME PARENT MACHINE INPUT STATE INIT MONITOR COMPANY FULLNAME FLAGS */ +// YEAR NAME PARENT MACHINE INPUT STATE INIT MONITOR COMPANY FULLNAME FLAGS */ /* ps3-v1 */ -GAME( 1997, soldivid, 0, psikyo3v1, soldivid, psikyosh_state, init_ps3, ROT0, "Psikyo", "Sol Divide - The Sword Of Darkness", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1997, soldividk, soldivid, psikyo3v1, soldividk,psikyosh_state, init_ps3, ROT0, "Psikyo", "Sol Divide - The Sword Of Darkness (Korea)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1997, s1945ii, 0, psikyo3v1, s1945ii, psikyosh_state, init_ps3, ROT270, "Psikyo", "Strikers 1945 II", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1998, daraku, 0, psikyo3v1, daraku, psikyosh_state, init_ps3, ROT0, "Psikyo", "The Fallen Angels (World) / Daraku Tenshi - The Fallen Angels (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1998, sbomber, 0, psikyo3v1, sbomber, psikyosh_state, init_ps3, ROT270, "Psikyo", "Space Bomber (ver. B)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1998, sbombera, sbomber, psikyo3v1, sbomber, psikyosh_state, init_ps3, ROT270, "Psikyo", "Space Bomber", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1997, soldivid, 0, psikyo3v1, soldivid, psikyosh_state, init_ps3, ROT0, "Psikyo", "Sol Divide - The Sword Of Darkness", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1997, soldividk, soldivid, psikyo3v1, soldividk, psikyosh_state, init_ps3, ROT0, "Psikyo", "Sol Divide - The Sword Of Darkness (Korea)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1997, s1945ii, 0, psikyo3v1, s1945ii, psikyosh_state, init_ps3, ROT270, "Psikyo", "Strikers 1945 II", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1998, daraku, 0, psikyo3v1, daraku, psikyosh_state, init_ps3, ROT0, "Psikyo", "The Fallen Angels (World) / Daraku Tenshi - The Fallen Angels (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1998, sbomber, 0, psikyo3v1, sbomber, psikyosh_state, init_ps3, ROT270, "Psikyo", "Space Bomber (ver. B)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1998, sbombera, sbomber, psikyo3v1, sbomber, psikyosh_state, init_ps3, ROT270, "Psikyo", "Space Bomber", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) /* ps5 */ -GAME( 1998, gunbird2, 0, psikyo5, gunbird2, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbird 2 (set 1)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1998, gunbird2a, gunbird2, psikyo5, gunbird2, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbird 2 (set 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1999, s1945iii, 0, psikyo5, s1945iii, psikyosh_state, init_ps5, ROT270, "Psikyo", "Strikers 1945 III (World) / Strikers 1999 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1998, gunbird2, 0, psikyo5, gunbird2, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbird 2 (set 1)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1998, gunbird2a, gunbird2, psikyo5, gunbird2, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbird 2 (set 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, s1945iii, 0, psikyo5, s1945iii, psikyosh_state, init_ps5, ROT270, "Psikyo", "Strikers 1945 III (World) / Strikers 1999 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, s1945iiibl, s1945iii, s1945iiibl, s1945iii, psikyosh_state, init_s1945iiibl, ROT270, "bootleg", "Strikers 1945 III (World) / Strikers 1999 (Japan) (bootleg)", MACHINE_NOT_WORKING | MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) // sprites don't show up in /* ps5v2 */ -GAME( 2000, dragnblz, 0, psikyo5, dragnblz, psikyosh_state, init_ps5, ROT270, "Psikyo", "Dragon Blaze", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 2000, tgm2, 0, psikyo5_240, tgm2, psikyosh_state, init_ps5, ROT0, "Arika", "Tetris: The Absolute - The Grand Master 2", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 2000, tgm2p, tgm2, psikyo5_240, tgm2, psikyosh_state, init_ps5, ROT0, "Arika", "Tetris: The Absolute - The Grand Master 2 Plus", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 2001, gnbarich, 0, psikyo5, gnbarich, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbarich", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 2002, mjgtaste, 0, psikyo5_mahjong, mjgtaste, psikyosh_state, init_ps5, ROT0, "Psikyo", "Mahjong G-Taste", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, dragnblz, 0, psikyo5, dragnblz, psikyosh_state, init_ps5, ROT270, "Psikyo", "Dragon Blaze", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, tgm2, 0, psikyo5_240, tgm2, psikyosh_state, init_ps5, ROT0, "Arika", "Tetris: The Absolute - The Grand Master 2", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, tgm2p, tgm2, psikyo5_240, tgm2, psikyosh_state, init_ps5, ROT0, "Arika", "Tetris: The Absolute - The Grand Master 2 Plus", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 2001, gnbarich, 0, psikyo5, gnbarich, psikyosh_state, init_ps5, ROT270, "Psikyo", "Gunbarich", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) +GAME( 2002, mjgtaste, 0, psikyo5_mahjong, mjgtaste, psikyosh_state, init_ps5, ROT0, "Psikyo", "Mahjong G-Taste", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/psikyo/psikyosh.h b/src/mame/psikyo/psikyosh.h index d903f1b79d2..12bc214486b 100644 --- a/src/mame/psikyo/psikyosh.h +++ b/src/mame/psikyo/psikyosh.h @@ -41,9 +41,11 @@ public: void psikyo5(machine_config &config); void psikyo5_mahjong(machine_config &config); void psikyo5_240(machine_config &config); + void s1945iiibl(machine_config &config); void init_ps3(); void init_ps5(); + void init_s1945iiibl(); private: /* memory pointers */ @@ -124,6 +126,7 @@ private: void ps3v1_map(address_map &map); void ps5_map(address_map &map); void ps5_mahjong_map(address_map &map); + void s1945iiibl_map(address_map &map); }; #endif // MAME_INCLUDES_PSIKYOSH_H |
