New machines marked as NOT_WORKING

----------------------------------
Pong Boo! 2 [buffi]

New working clones
------------------
Thunder Dragon (bootleg with Raiden sounds, unencrypted) [f205v]
This commit is contained in:
Ivan Vangelista 2022-04-28 18:27:05 +02:00
parent 68a6b2a369
commit 50f14c42f1
3 changed files with 130 additions and 3 deletions

View File

@ -6581,6 +6581,38 @@ ROM_START( tdragonb2 )
ROM_LOAD( "shinea2a2-01", 0x00000, 0x80000, CRC(4556e717) SHA1(efdec7c989436f97e8f18b157bfd5f9da55b29ba) ) ROM_LOAD( "shinea2a2-01", 0x00000, 0x80000, CRC(4556e717) SHA1(efdec7c989436f97e8f18b157bfd5f9da55b29ba) )
ROM_END ROM_END
ROM_START( tdragonb3 )
ROM_REGION( 0x80000, "maincpu", 0 )
ROM_LOAD16_BYTE( "tms27c010a.19e", 0x00000, 0x20000, CRC(659167c4) SHA1(bd9dbdf751869730513db186324c60abed4bc05e) )
ROM_LOAD16_BYTE( "tms27c010a.19c", 0x00001, 0x20000, CRC(02f5befc) SHA1(5c0b9e7c5a811adf5c50b6ea6703df670e5a703f) )
ROM_REGION(0x20000, "audiocpu", 0 )
ROM_LOAD( "d27512.4b", 0x00000, 0x8000, CRC(99ee7505) SHA1(b97c8ee5e26e8554b5de506fba3b32cc2fde53c9) )
ROM_CONTINUE( 0x10000, 0x8000 )
ROM_COPY( "audiocpu", 0x00000, 0x18000, 0x8000 )
ROM_REGION( 0x20000, "fgtile", 0 ) // 8x8
ROM_LOAD( "tms27c010a.2k", 0x00000, 0x20000, CRC(5144dc69) SHA1(e64d88dc0e7672f811868621f74ec209aeafbc6f) )
ROM_REGION( 0x100000, "bgtile", 0 ) // 16x16
ROM_LOAD( "unreadable.18h", 0x000000, 0x100000, BAD_DUMP CRC(d0bde826) SHA1(3b74d5fc88a4a9329e101ee72f393608d327d816) ) // undumpable on this PCB, probably the same as the original as the other 2 GFX ROMs are
ROM_REGION( 0x100000, "sprites", 0 )
ROM_LOAD16_WORD_SWAP( "upd27c8000.18f", 0x000000, 0x100000, CRC(3eedc2fe) SHA1(9f48986c231a8fbc07f2b39b2017d1e967b2ed3c) )
ROM_REGION( 0x40000, "unknown_rom", 0 ) // between the main CPU and the bgtile ROMs
ROM_LOAD( "tms27c020.20g", 0x00000, 0x40000, CRC(1ed8a2da) SHA1(8eabc35f1eb88f49b83baf8bd72229d40efed248) )
ROM_REGION( 0x40000, "oki", 0 )
ROM_LOAD( "m27c512.1c", 0x00000, 0x10000, CRC(f6f6c4bf) SHA1(ea4cf74d968e254ae47c16c2f4c2f4bc1a528808) )
ROM_REGION( 0x200, "proms", 0 )
ROM_LOAD( "n82s147n.7f", 0x000, 0x200, CRC(ed0bd072) SHA1(66a6d435d8587c82ae96dd09c39ed5749fe00e24) )
ROM_REGION( 0x200, "plds", 0 )
ROM_LOAD( "pal16l8acn.8b", 0x000, 0x104, CRC(92fa095c) SHA1(4c7ece64c402ab4716fcf58d11c5b0b131a7c3e8) )
ROM_END
ROM_START( ssmissin ) ROM_START( ssmissin )
ROM_REGION( 0x40000, "maincpu", 0 ) ROM_REGION( 0x40000, "maincpu", 0 )
ROM_LOAD16_BYTE( "ssm14.165", 0x00001, 0x20000, CRC(eda61b74) SHA1(6247682c27d2be7dff1fad407ccf86fe2a25f11c) ) ROM_LOAD16_BYTE( "ssm14.165", 0x00001, 0x20000, CRC(eda61b74) SHA1(6247682c27d2be7dff1fad407ccf86fe2a25f11c) )
@ -8990,7 +9022,8 @@ GAME( 1997, tomagic, 0, tomagic, tomagic, nmk16_tomagic_stat
// these use the Seibu sound system (sound / music stolen from Raiden) rather than the bootleggers copying the nmk004 // these use the Seibu sound system (sound / music stolen from Raiden) rather than the bootleggers copying the nmk004
GAME( 1990, mustangb, mustang, mustangb, mustang, nmk16_state, empty_init, ROT0, "bootleg", "US AAF Mustang (bootleg, set 1)", 0 ) GAME( 1990, mustangb, mustang, mustangb, mustang, nmk16_state, empty_init, ROT0, "bootleg", "US AAF Mustang (bootleg, set 1)", 0 )
GAME( 1990, mustangb2, mustang, mustangb, mustang, nmk16_state, empty_init, ROT0, "bootleg (TAB Austria)", "US AAF Mustang (TAB Austria bootleg)", 0 ) // PCB and ROMs have TAB Austria stickers GAME( 1990, mustangb2, mustang, mustangb, mustang, nmk16_state, empty_init, ROT0, "bootleg (TAB Austria)", "US AAF Mustang (TAB Austria bootleg)", 0 ) // PCB and ROMs have TAB Austria stickers
GAME( 1991, tdragonb, tdragon, tdragonb, tdragonb, nmk16_state, init_tdragonb, ROT270, "bootleg", "Thunder Dragon (bootleg, set 1)", 0 ) GAME( 1991, tdragonb, tdragon, tdragonb, tdragonb, nmk16_state, init_tdragonb, ROT270, "bootleg", "Thunder Dragon (bootleg with Raiden sounds, encrypted)", 0 )
GAME( 1991, tdragonb3, tdragon, tdragonb, tdragonb, nmk16_state, empty_init, ROT270, "bootleg", "Thunder Dragon (bootleg with Raiden sounds, unencrypted)", 0 )
GAME( 1992, strahljbl, strahl, strahljbl, strahljbl, nmk16_state, empty_init, ROT0, "bootleg", "Koutetsu Yousai Strahl (Japan, bootleg)", 0 ) GAME( 1992, strahljbl, strahl, strahljbl, strahljbl, nmk16_state, empty_init, ROT0, "bootleg", "Koutetsu Yousai Strahl (Japan, bootleg)", 0 )
// these are bootlegs with tharrier like sound hw // these are bootlegs with tharrier like sound hw
@ -8998,7 +9031,7 @@ GAME( 1990, mustangb3, mustang, mustangb3, mustang, nmk16_state, empty
GAME( 1989, tharrierb, tharrier, tharrier, tharrier, nmk16_state, init_tharrier, ROT270, "bootleg (Lettering)", "Task Force Harrier (Lettering bootleg)", 0 ) GAME( 1989, tharrierb, tharrier, tharrier, tharrier, nmk16_state, init_tharrier, ROT270, "bootleg (Lettering)", "Task Force Harrier (Lettering bootleg)", 0 )
// bootleg with no audio CPU and only 1 Oki // bootleg with no audio CPU and only 1 Oki
GAME( 1991, tdragonb2, tdragon, tdragonb2, tdragon, nmk16_state, empty_init, ROT270, "bootleg", "Thunder Dragon (bootleg, set 2)", MACHINE_NOT_WORKING ) // GFX and input problems. IRQs related? GAME( 1991, tdragonb2, tdragon, tdragonb2, tdragon, nmk16_state, empty_init, ROT270, "bootleg", "Thunder Dragon (bootleg with reduced sound system)", MACHINE_NOT_WORKING ) // GFX and input problems. IRQs related?
// bootleg with cloned airbustr sound hardware // bootleg with cloned airbustr sound hardware
GAME( 1992, gunnailb, gunnail, gunnailb, gunnail, nmk16_state, init_gunnailb, ROT270, "bootleg", "GunNail (bootleg)", MACHINE_IMPERFECT_SOUND ) // crappy sound, unknown how much of it is incomplete emulation and how much bootleg quality GAME( 1992, gunnailb, gunnail, gunnailb, gunnail, nmk16_state, init_gunnailb, ROT270, "bootleg", "GunNail (bootleg)", MACHINE_IMPERFECT_SOUND ) // crappy sound, unknown how much of it is incomplete emulation and how much bootleg quality

View File

@ -41,6 +41,7 @@ Year + Game Board(s) CPU Company Not
93 Ichi Ban Jian MJ911 Z80 Excel Larger palette, additional YM2413 93 Ichi Ban Jian MJ911 Z80 Excel Larger palette, additional YM2413
95 Mahjong Tensinhai D10010318L1 TLCS-90 Dynax Larger palette, RTC 95 Mahjong Tensinhai D10010318L1 TLCS-90 Dynax Larger palette, RTC
96 Janputer '96 NS503X0727 Z80 Dynax Larger palette, RTC 96 Janputer '96 NS503X0727 Z80 Dynax Larger palette, RTC
97 Pong Boo! 2 NEW PONG-BOO Z80(?) OCT OKI M6295, no PROMs
97 Janputer Special CS166P008 + NS5110207 Z80 Dynax Larger palette, RTC 97 Janputer Special CS166P008 + NS5110207 Z80 Dynax Larger palette, RTC
99 Mahjong Cafe Break NS528-9812 TLCS-90 Nakanihon / Dynax Undumped internal rom 99 Mahjong Cafe Break NS528-9812 TLCS-90 Nakanihon / Dynax Undumped internal rom
99 Mahjong Cafe Paradise ? + TSS001-0001 TLCS-90 Techno-Top Undumped internal rom 99 Mahjong Cafe Paradise ? + TSS001-0001 TLCS-90 Techno-Top Undumped internal rom
@ -107,6 +108,7 @@ Stephh's notes (based on the games Z80 code and some tests) :
#include "sound/ay8910.h" #include "sound/ay8910.h"
#include "sound/dac.h" #include "sound/dac.h"
#include "sound/msm5205.h" #include "sound/msm5205.h"
#include "sound/okim6295.h"
#include "sound/ymopl.h" #include "sound/ymopl.h"
#include "video/mc6845.h" #include "video/mc6845.h"
#include "emupal.h" #include "emupal.h"
@ -170,6 +172,7 @@ public:
void mjsiyoub(machine_config &config); void mjsiyoub(machine_config &config);
void rkjanoh2(machine_config &config); void rkjanoh2(machine_config &config);
void ichiban(machine_config &config); void ichiban(machine_config &config);
void pongboo2(machine_config &config);
void init_tahjong(); void init_tahjong();
void init_dynax(); void init_dynax();
@ -315,6 +318,9 @@ private:
void mjtensin_map(address_map &map); void mjtensin_map(address_map &map);
void mjvegasa_map(address_map &map); void mjvegasa_map(address_map &map);
void mjyarou_iomap(address_map &map); void mjyarou_iomap(address_map &map);
void pongboo2_map(address_map &map);
void pongboo2_iomap(address_map &map);
void pongboo2_opcodes_map(address_map &map);
void rkjanoh2_iomap(address_map &map); void rkjanoh2_iomap(address_map &map);
void royalmah_iomap(address_map &map); void royalmah_iomap(address_map &map);
void royalmah_map(address_map &map); void royalmah_map(address_map &map);
@ -328,7 +334,7 @@ private:
required_device<cpu_device> m_maincpu; required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette; required_device<palette_device> m_palette;
required_device<ay8910_device> m_ay; optional_device<ay8910_device> m_ay;
required_shared_ptr<uint8_t> m_videoram; required_shared_ptr<uint8_t> m_videoram;
optional_device<cpu_device> m_audiocpu; optional_device<cpu_device> m_audiocpu;
optional_device<msm6242_device> m_rtc; optional_device<msm6242_device> m_rtc;
@ -758,6 +764,21 @@ void royalmah_state::ichiban_opcodes_map(address_map &map)
map(0x8000, 0xffff).rom().region("maincpu", 0x8000); map(0x8000, 0xffff).rom().region("maincpu", 0x8000);
} }
void royalmah_state::pongboo2_map(address_map &map)
{
map(0x0000, 0x6fff).rom().region("maincpu", 0);
map(0x7000, 0x7fff).ram().share("nvram");
map(0x8000, 0xffff).rom().region("maincpu", 0x8000); // TODO: should be banked, as changing the offset to the other ROMs shows other graphics
map(0x8000, 0xffff).writeonly().share(m_videoram);
}
void royalmah_state::pongboo2_opcodes_map(address_map &map)
{
map(0x0000, 0x6fff).rom().region("maincpu", 0x10000);
map(0x7000, 0x7fff).ram().share("nvram");
map(0x8000, 0xffff).rom().region("maincpu", 0x18000);
}
void royalmah_state::royalmah_iomap(address_map &map) void royalmah_state::royalmah_iomap(address_map &map)
{ {
map.global_mask(0xff); map.global_mask(0xff);
@ -883,6 +904,20 @@ void royalmah_state::ichiban_iomap(address_map &map) // TODO: writes to 0x12 and
map(0x16, 0x17).w("ymsnd", FUNC(ym2413_device::write)); map(0x16, 0x17).w("ymsnd", FUNC(ym2413_device::write));
} }
void royalmah_state::pongboo2_iomap(address_map &map) // TODO: banking, inputs
{
map.global_mask(0xff);
// map(0x50, 0x50) // reads P1 inputs from here, but active high / different from other games?
// map(0x51, 0x51) // reads P2 inputs from here, but active high / different from other games?
// map(0x80, 0x80).w // ??
map(0x81, 0x81).w(FUNC(royalmah_state::input_port_select_w)); // 0x01, 0x02, 0x04, 0x08, 0x10
// map(0x82, 0x82).w // ??
// map(0x84, 0x84).w // ??
// map(0x91, 0x91).r // ??
map(0x9a, 0x9a).w("oki", FUNC(okim6295_device::write));
// map(0xa0, 0xbf).w // something similar to jansou_colortable_w ?
}
void royalmah_state::dondenmj_iomap(address_map &map) void royalmah_state::dondenmj_iomap(address_map &map)
{ {
map.global_mask(0xff); map.global_mask(0xff);
@ -4048,6 +4083,33 @@ void royalmah_state::ichiban(machine_config &config)
YM2413(config, "ymsnd", 18.432_MHz_XTAL / 6).add_route(ALL_OUTPUTS, "mono", 0.5); YM2413(config, "ymsnd", 18.432_MHz_XTAL / 6).add_route(ALL_OUTPUTS, "mono", 0.5);
} }
void royalmah_state::pongboo2(machine_config &config)
{
// basic machine hardware
Z80(config, m_maincpu, 48_MHz_XTAL / 12); // not a Z80, probably some derived core
m_maincpu->set_addrmap(AS_PROGRAM, &royalmah_state::pongboo2_map);
m_maincpu->set_addrmap(AS_IO, &royalmah_state::pongboo2_iomap);
m_maincpu->set_addrmap(AS_OPCODES, &royalmah_state::pongboo2_opcodes_map);
m_maincpu->set_vblank_int("screen", FUNC(royalmah_state::irq0_line_hold));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);
// video hardware
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_size(256, 256);
screen.set_visarea(0, 255, 8, 247);
screen.set_refresh_hz(60.5686);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not accurate
screen.set_screen_update(FUNC(royalmah_state::screen_update));
PALETTE(config, "palette").set_format(palette_device::xRGB_444, 512); // wrong
// sound hardware
SPEAKER(config, "mono").front_center();
OKIM6295(config, "oki", 1'000'000, okim6295_device::PIN7_LOW).add_route(ALL_OUTPUTS, "mono", 0.5); // frequency and pin 7 not verified
}
/*************************************************************************** /***************************************************************************
@ -5544,6 +5606,35 @@ ROM_START( ichiban )
ROM_END ROM_END
/*
Pong Boo! 2 by OCT
PCB is etched
NEW PONG-BOO MADE IN JAPAN
OCT. Co,Ltd. All Rights Reserved
Main components
- 4x scratched chips. 1 is supposed to be the main CPU, possibly some kind of Z80 or Z180 based SoC?
- 1x 48.000 XTAL
- 1x OKI M6295 sound chip (there's also an unpopulated space marked for a YM2413)
- 1x CY7C185-15PC 8k x8 SRAM
- 1x CY7C199-15PC 32k x8 SRAM
- 1x HM6264ALSP-12 with a battery nearby
- 2x SN74LS174N
- 4x bank of 8 dip-switches
This game shares the same programmer / programming team as Ichi Ban Jian by Excel.
It seems to use a similar split opcodes / data ROM arrangement.
*/
ROM_START( pongboo2 )
ROM_REGION( 0x80000, "maincpu", 0 )
ROM_LOAD( "1a.1.u016", 0x00000, 0x80000, CRC(07a95a99) SHA1(10897f8f0d8799797a577dffc9ba36b8904bb6c4) )
ROM_REGION( 0x40000, "oki", 0 )
ROM_LOAD( "2.u0513", 0x00000, 0x40000, CRC(97bafe5b) SHA1(bff4df17cdb2d3ee63cc88ff486a7f5964182a15) )
ROM_END
void royalmah_state::init_tahjong() void royalmah_state::init_tahjong()
{ {
m_mainbank->configure_entries(0, 2, memregion("maincpu")->base() + 0x10000, 0x4000); m_mainbank->configure_entries(0, 2, memregion("maincpu")->base() + 0x10000, 0x4000);
@ -5749,5 +5840,6 @@ GAME( 1993, ichiban, 0, ichiban, ichiban, royalmah_state, empty_init,
GAME( 1995, mjtensin, 0, mjtensin, mjtensin, royalmah_state, init_mjtensin, ROT0, "Dynax", "Mahjong Tensinhai (Japan)", MACHINE_NOT_WORKING ) GAME( 1995, mjtensin, 0, mjtensin, mjtensin, royalmah_state, init_mjtensin, ROT0, "Dynax", "Mahjong Tensinhai (Japan)", MACHINE_NOT_WORKING )
GAME( 1996, janptr96, 0, janptr96, janptr96, royalmah_state, init_janptr96, ROT0, "Dynax", "Janputer '96 (Japan)", 0 ) GAME( 1996, janptr96, 0, janptr96, janptr96, royalmah_state, init_janptr96, ROT0, "Dynax", "Janputer '96 (Japan)", 0 )
GAME( 1997, janptrsp, 0, janptr96, janptr96, royalmah_state, init_janptr96, ROT0, "Dynax", "Janputer Special (Japan)", 0 ) GAME( 1997, janptrsp, 0, janptr96, janptr96, royalmah_state, init_janptr96, ROT0, "Dynax", "Janputer Special (Japan)", 0 )
GAME( 1997, pongboo2, 0, pongboo2, ichiban, royalmah_state, empty_init, ROT0, "OCT", "Pong Boo! 2 (Ver. 1.31)", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS ) // banking, palette, inputs
GAME( 1999, cafebrk, 0, mjifb, mjifb, royalmah_state, init_mjifb, ROT0, "Nakanihon / Dynax", "Mahjong Cafe Break", MACHINE_NOT_WORKING ) GAME( 1999, cafebrk, 0, mjifb, mjifb, royalmah_state, init_mjifb, ROT0, "Nakanihon / Dynax", "Mahjong Cafe Break", MACHINE_NOT_WORKING )
GAME( 1999, cafepara, 0, mjifb, mjifb, royalmah_state, init_mjifb, ROT0, "Techno-Top", "Mahjong Cafe Paradise", MACHINE_NOT_WORKING ) GAME( 1999, cafepara, 0, mjifb, mjifb, royalmah_state, init_mjifb, ROT0, "Techno-Top", "Mahjong Cafe Paradise", MACHINE_NOT_WORKING )

View File

@ -33584,6 +33584,7 @@ tdragon2a // UPL-93091 (c) 1993 NMK
tdragon3h tdragon3h
tdragonb // bootleg tdragonb // bootleg
tdragonb2 // bootleg tdragonb2 // bootleg
tdragonb3 // bootleg
tharrier // UPL-89053 (c) 1989 UPL tharrier // UPL-89053 (c) 1989 UPL
tharrierb // Lettering bootleg tharrierb // Lettering bootleg
tharrieru // UPL-89053 (c) 1989 UPL + American Sammy license tharrieru // UPL-89053 (c) 1989 UPL + American Sammy license
@ -36882,6 +36883,7 @@ mjvegasa // "50" 1991 Dynax
mjyarou // (c) 1986 Visco / Video System mjyarou // (c) 1986 Visco / Video System
mjyarou2 // (c) 1986 Visco / Video System mjyarou2 // (c) 1986 Visco / Video System
openmj // (c) 1982 Nichibutsu openmj // (c) 1982 Nichibutsu
pongboo2 // (c) 1997 OCT
royalmah // Falcon bootleg royalmah // Falcon bootleg
royalmj // (c) 1982 Nichibutsu royalmj // (c) 1982 Nichibutsu
rkjanoh2 // SNK / Dyna Corp rkjanoh2 // SNK / Dyna Corp