Skip to content

Commit 69823e8

Browse files
authored
current plug and play PR (22 sets, 1 working) (#14416)
New working systems ------------------- Cyber Arcade TV - Ferrari (JL2500FE) [David Haywood, Team Europe] New systems marked not working ------------------------------ Compact Cyber Arcade - Frozen (JL2365FZ-6) [David Haywood, Team Europe] Compact Cyber Arcade - Frozen (JL2367FZ) [David Haywood, Team Europe] Compact Cyber Arcade - 250 in 1 (JL2377) [David Haywood, Team Europe] Compact Cyber Arcade - Cars (JL2360DC-1, 120-in-1) [David Haywood, Team Europe] Compact Cyber Arcade - Spider-Man (JL2350SP, 120-in-1) [David Haywood, Team Europe] Compact Cyber Arcade - Lilo & Stitch (JL2367D) [Team Europe] Micro Arcade 250-in-1 [David Haywood, Team Europe] Arcade Center - 60-in-1 (JL1810GR) [Team Europe] Cyber Arcade Motion - Superman (JL3180SU) [Team Europe] Cyber Arcade Motion - Paw Patrol (JL3180PA) [Team Europe] Tamagotchi iD (Japan) [David Haywood, Team Europe] Tamagotchi m!x Melody Blue (Japan) [David Haywood, Team Europe] Tamagotchi 4U (Japan) [David Haywood, Team Europe] Tou ma Pet (OK-560) [David Haywood, Team Europe] Tou ma Pet (OK-568) [David Haywood, Team Europe] Punirunes Punistarz (pink, Japan) [Team Europe] Kunio-kun TV! Bikkuri Nekketsu Shin Kiroku! Harukanaru Kin Medal (Japan) [Team Europe] Pokedex Sun & Moon Pokemon Quiz Rotom (Japan) [David Haywood, Team Europe] Pretty Rhythm Smart Pod Touch (Japan) [David Haywood, Team Europe] Sumikko Gacha (Japan) [Team Europe] Hoppe-chan Sweet Collection (white, Japan) [David Haywood, Team Europe] - nes_vt369_vtunknown.cpp: fixed data ordering for some other Cyber Arcade sets where the address lines were connected incorrectly when dumping previously
1 parent d1b97a3 commit 69823e8

File tree

12 files changed

+449
-58
lines changed

12 files changed

+449
-58
lines changed

src/devices/video/ppu2c0x_vt.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -746,8 +746,9 @@ void ppu_vt3xx_device::lcdc_regs_w(offs_t offset, u8 data)
746746
static const vid_mode mode_table[] = {
747747
// configurations used for lower resolution output
748748
{ 0, 159, 0, 127, { 0xa0, 0xff, 0x00, 0x40, 0xff, 0x04, 0x00, 0xa8, 0x04, 0x0f }, },
749-
{ 0, 199, 0, 199, { 0xdc, 0xff, 0x00, 0x58, 0xff, 0x04, 0x10, 0xa8, 0x04, 0x00 }, }, // hkb502 menu, uncertain dimensions
750-
{ 0, 127, 0, 159, { 0x80, 0x80, 0x00, 0x50, 0xff, 0x04, 0x00, 0xaa, 0x08, 0x00 }, }, // lexi30 menu
749+
{ 0, 199, 0, 199, { 0xdc, 0xff, 0x00, 0x58, 0xff, 0x04, 0x10, 0xa8, 0x04, 0x00 }, }, // hkb502 menu, uncertain dimensions
750+
{ 0, 127, 0, 159, { 0x80, 0x80, 0x00, 0x50, 0xff, 0x04, 0x00, 0xaa, 0x08, 0x00 }, }, // lexi30 menu
751+
{ 0, 127, 0, 159, { 0x80, 0xff, 0x00, 0x50, 0xff, 0x04, 0x00, 0xa6, 0x04, 0x00 }, }, // jl1810gr
751752
{ 0, 127, 0, 159, { 0x80, 0x3f, 0x00, 0x50, 0xff, 0x69, 0x00, 0x54, 0x08, 0x00 }, }, // gcs2mgp
752753

753754
// lxcypkdp uses this on the menus, they must rotate the rendering somehow as this is vertical and the games are horizontal!

src/mame/handheld/evolution_handheld.cpp

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,31 @@ ROM_START( pokexyqz )
100100
// also has an SD card slot (was empty)
101101
ROM_END
102102

103+
ROM_START( pokesmqz )
104+
ROM_REGION( 0x1000000, "maincpu", 0 )
105+
ROM_LOAD( "mx25l12845e.u3", 0x000000, 0x1000000, CRC(c9b79adf) SHA1(fd0180529166ed6daf73ae6734183031c42257a5) )
106+
107+
ROM_REGION( 0x800, "i2cmem", 0 )
108+
ROM_LOAD( "24c16.u4", 0x000, 0x800, CRC(1b4058f2) SHA1(813961f0afd1b36d78563074ddc796cf8826c6ff) )
109+
ROM_END
110+
103111
ROM_START( yuleyuan )
104112
ROM_REGION( 0x1000000, "maincpu", 0 )
105113
ROM_LOAD( "25l128.bin", 0x0000000, 0x1000000, CRC(51ab49e2) SHA1(ecad532d27efea55031ffd31ac4479c9c4eceae6) )
106114
ROM_END
107115

116+
ROM_START( tomyspt )
117+
ROM_REGION( 0x1000000, "maincpu", 0 )
118+
ROM_LOAD( "mx25l12845e.u3", 0x000000, 0x1000000, CRC(3c8685ed) SHA1(289948c3d9a06db184397bc6a31ea594c404449d) )
119+
120+
// there was also a FT24C16.u4, blank on dumped unit
121+
ROM_END
122+
123+
ROM_START( hoppech )
124+
ROM_REGION( 0x1000000, "maincpu", 0 )
125+
ROM_LOAD( "25l128.u3", 0x000000, 0x1000000, CRC(4a983ab2) SHA1(d5571cf0f3fcf872826a2ff8b45be69336b117dd) )
126+
ROM_END
127+
108128
void evolution_handheldgame_state::init_yuleyuan()
109129
{
110130
u16 *spi = &memregion("maincpu")->as_u16();
@@ -124,5 +144,13 @@ CONS( 2020, buttdtct, 0, 0, evolhh, evolhh, evolution_handheldgame
124144

125145
CONS( 2015, pokexyqz, 0, 0, evolhh, evolhh, evolution_handheldgame_state, empty_init, "Takara Tomy", "Pokemon Encyclopedia Z Pokemon XY Quiz Game Rotom (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
126146

147+
// ロトム図鑑 サン&ムーン ポケモン クイズ
148+
CONS( 2015, pokesmqz, 0, 0, evolhh, evolhh, evolution_handheldgame_state, empty_init, "Takara Tomy", "Pokedex Sun & Moon Pokemon Quiz Rotom (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
149+
150+
CONS( 201?, tomyspt, 0, 0, evolhh, evolhh, evolution_handheldgame_state, empty_init, "Takara Tomy", "Pretty Rhythm Smart Pod Touch (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
151+
152+
// ほっぺちゃん スイ☆コレ ホワイト
153+
CONS( 201?, hoppech, 0, 0, evolhh, evolhh, evolution_handheldgame_state, empty_init, "Takara Tomy", "Hoppe-chan Sweet Collection (white, Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
154+
127155
// 星座电子宠物机 (virtual pet by 育乐元)
128156
CONS( 2022, yuleyuan, 0, 0, evolhh, evolhh, evolution_handheldgame_state, init_yuleyuan, "Yule Yuan", "Xingzuo Dianzi Chongwu Ji", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) // dumped from yellow model

src/mame/handheld/st2302u_bbl_spi.cpp

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,20 @@ ROM_START(toumapet)
466466
ROM_LOAD("p25d32sh.bin", 0x000000, 0x400000, CRC(25498f00) SHA1(c5c410e29f540d7f1fd4bbb333467f8a3eaccc15) )
467467
ROM_END
468468

469+
ROM_START(touma560)
470+
INTERNAL_ROM_TYPE2 // still does't boot with this one, is it different internal ROM again, or just different mappings?
471+
472+
ROM_REGION(0x800000, "spi", ROMREGION_ERASEFF)
473+
ROM_LOAD("py25q64ha.bin", 0x000000, 0x800000, CRC(7974bf3c) SHA1(8467f869f86b51a86eb115e1408b30daa8f148e7) )
474+
ROM_END
475+
476+
ROM_START(touma568)
477+
INTERNAL_ROM_TYPE2 // still does't boot with this one, is it different internal ROM again, or just different mappings?
478+
479+
ROM_REGION(0x800000, "spi", ROMREGION_ERASEFF)
480+
ROM_LOAD("p25q64sh.bin", 0x000000, 0x800000, CRC(32f6d834) SHA1(c0dc5b4792a6d86822a666a0f8de7380d1905505) )
481+
ROM_END
482+
469483
ROM_START(qpet)
470484
INTERNAL_ROM_TYPE2 // not checked if it uses this ROM type
471485

@@ -513,7 +527,9 @@ CONS( 201?, dphh8633, 0, 0, bbl380_menuprot, bbl380_prot, bbl3
513527
CONS( 2016, dphh8661, 0, 0, bbl380_menuprot, bbl380_prot, bbl380_state, empty_init, "<unknown>", "Digital Pocket Hand Held System 268-in-1 - Model 8661", MACHINE_NOT_WORKING ) // from PCP? (logo on back of console) 2016 date on PCB
514528

515529
// also has the 0xE4 XOR, also doesn't currently boot, could be yet another internal ROM
516-
// there are also OK-560 and OK-568 models which may have different ROM or be on different hardware
517530
CONS( 2021, toumapet, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "Shenzhen Shiji New Technology", "Tou ma Pet (OK-550)", MACHINE_NOT_WORKING )
531+
CONS( 2021, touma560, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "Shenzhen Shiji New Technology", "Tou ma Pet (OK-560)", MACHINE_NOT_WORKING )
532+
CONS( 2021, touma568, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "Shenzhen Shiji New Technology", "Tou ma Pet (OK-568)", MACHINE_NOT_WORKING )
533+
518534

519535
CONS( 2020, qpet, 0, 0, bbl380, bbl380, bbl380_state, empty_init, "M&D", "Q Pet (2nd version)", MACHINE_NOT_WORKING )

src/mame/handheld/tama_4u.cpp

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
// license:BSD-3-Clause
2+
// copyright-holders:
3+
4+
// TODO: identify CPU type
5+
6+
#include "emu.h"
7+
8+
#include "screen.h"
9+
#include "speaker.h"
10+
11+
12+
namespace {
13+
14+
class tama_4u_state : public driver_device
15+
{
16+
public:
17+
tama_4u_state(const machine_config &mconfig, device_type type, const char *tag) :
18+
driver_device(mconfig, type, tag),
19+
m_screen(*this, "screen")
20+
{
21+
}
22+
23+
void tama4u(machine_config &config) ATTR_COLD;
24+
25+
protected:
26+
virtual void machine_start() override ATTR_COLD;
27+
28+
private:
29+
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
30+
31+
required_device<screen_device> m_screen;
32+
};
33+
34+
u32 tama_4u_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
35+
{
36+
return 0;
37+
}
38+
39+
void tama_4u_state::machine_start()
40+
{
41+
}
42+
43+
44+
static INPUT_PORTS_START(tama4u)
45+
INPUT_PORTS_END
46+
47+
48+
void tama_4u_state::tama4u(machine_config &config)
49+
{
50+
// unknown CPU
51+
52+
// wrong, just so it's clear this has a screen
53+
SCREEN(config, m_screen, SCREEN_TYPE_LCD);
54+
m_screen->set_refresh_hz(60);
55+
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
56+
m_screen->set_size(128, 128);
57+
m_screen->set_visarea(0, 128 - 1, 0, 128 - 1);
58+
m_screen->set_screen_update(FUNC(tama_4u_state::screen_update));
59+
60+
SPEAKER(config, "speaker").front_center();
61+
}
62+
63+
ROM_START( tama4u )
64+
ROM_REGION( 0x800000, "maincpu", 0 )
65+
// vector table(?) at 0x400000, similar to tamaid
66+
ROM_LOAD( "mx29lb640eb.u4", 0x000000, 0x800000, CRC(f9dcc04a) SHA1(5f5d738357219b2a4a1452835455abef25fe7dcb) )
67+
ROM_END
68+
69+
} // anonymous namespace
70+
71+
// 2014/06/10 MODEL:WIZ245 on PCB
72+
GAME( 2014, tama4u, 0, tama4u, tama4u, tama_4u_state, empty_init, ROT0, "Bandai", "Tamagotchi 4U (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )

src/mame/handheld/tama_id.cpp

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
// license:BSD-3-Clause
2+
// copyright-holders:
3+
4+
// TODO: identify CPU type
5+
6+
#include "emu.h"
7+
8+
#include "screen.h"
9+
#include "speaker.h"
10+
11+
12+
namespace {
13+
14+
class tama_id_state : public driver_device
15+
{
16+
public:
17+
tama_id_state(const machine_config &mconfig, device_type type, const char *tag) :
18+
driver_device(mconfig, type, tag),
19+
m_screen(*this, "screen")
20+
{
21+
}
22+
23+
void tamaid(machine_config &config) ATTR_COLD;
24+
25+
protected:
26+
virtual void machine_start() override ATTR_COLD;
27+
28+
private:
29+
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
30+
31+
required_device<screen_device> m_screen;
32+
};
33+
34+
u32 tama_id_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
35+
{
36+
return 0;
37+
}
38+
39+
void tama_id_state::machine_start()
40+
{
41+
}
42+
43+
44+
static INPUT_PORTS_START(tamaid)
45+
INPUT_PORTS_END
46+
47+
48+
void tama_id_state::tamaid(machine_config &config)
49+
{
50+
// unknown CPU
51+
52+
// wrong, just so it's clear this has a screen
53+
SCREEN(config, m_screen, SCREEN_TYPE_LCD);
54+
m_screen->set_refresh_hz(60);
55+
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
56+
m_screen->set_size(128, 128);
57+
m_screen->set_visarea(0, 128 - 1, 0, 128 - 1);
58+
m_screen->set_screen_update(FUNC(tama_id_state::screen_update));
59+
60+
SPEAKER(config, "speaker").front_center();
61+
}
62+
63+
ROM_START( tamaid )
64+
ROM_REGION( 0x400000, "maincpu", 0 )
65+
ROM_LOAD( "mx29lb320dt.ic4", 0x000000, 0x400000, CRC(6272c24d) SHA1(f4d67409fa15873961bda684c68f3febf501218f) )
66+
ROM_END
67+
68+
} // anonymous namespace
69+
70+
// 2010/2/5 MODEL: WIZ229 on PCB, 2009 on case
71+
GAME( 2010, tamaid, 0, tamaid, tamaid, tama_id_state, empty_init, ROT0, "Bandai", "Tamagotchi iD (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )

src/mame/handheld/tama_mix.cpp

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
// license:BSD-3-Clause
2+
// copyright-holders:
3+
4+
// TODO: identify CPU type
5+
6+
#include "emu.h"
7+
8+
#include "screen.h"
9+
#include "speaker.h"
10+
11+
12+
namespace {
13+
14+
class tama_mix_state : public driver_device
15+
{
16+
public:
17+
tama_mix_state(const machine_config &mconfig, device_type type, const char *tag) :
18+
driver_device(mconfig, type, tag),
19+
m_screen(*this, "screen")
20+
{
21+
}
22+
23+
void tama_mix(machine_config &config) ATTR_COLD;
24+
25+
protected:
26+
virtual void machine_start() override ATTR_COLD;
27+
28+
private:
29+
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
30+
31+
required_device<screen_device> m_screen;
32+
};
33+
34+
u32 tama_mix_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
35+
{
36+
return 0;
37+
}
38+
39+
void tama_mix_state::machine_start()
40+
{
41+
}
42+
43+
44+
static INPUT_PORTS_START(tama_mix)
45+
INPUT_PORTS_END
46+
47+
48+
void tama_mix_state::tama_mix(machine_config &config)
49+
{
50+
// unknown CPU
51+
52+
// wrong, just so it's clear this has a screen
53+
SCREEN(config, m_screen, SCREEN_TYPE_LCD);
54+
m_screen->set_refresh_hz(60);
55+
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
56+
m_screen->set_size(128, 128);
57+
m_screen->set_visarea(0, 128 - 1, 0, 128 - 1);
58+
m_screen->set_screen_update(FUNC(tama_mix_state::screen_update));
59+
60+
SPEAKER(config, "speaker").front_center();
61+
}
62+
63+
ROM_START( tamamixm )
64+
ROM_REGION( 0x800000, "maincpu", 0 )
65+
ROM_LOAD( "mx29lv640et.u4", 0x000000, 0x800000, CRC(6e9301d2) SHA1(25a0df83da441d18467f82e8854e195139cce4a1) )
66+
ROM_END
67+
68+
} // anonymous namespace
69+
70+
// 2016/03/14 MODEL: WIZ249 on PCB
71+
GAME( 2016, tamamixm, 0, tama_mix, tama_mix, tama_mix_state, empty_init, ROT0, "Bandai", "Tamagotchi m!x Melody Blue (Japan)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )

0 commit comments

Comments
 (0)