diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua index 7fcdebd35b7..45f31bbb2b5 100644 --- a/scripts/target/mame/mess.lua +++ b/scripts/target/mame/mess.lua @@ -3727,6 +3727,7 @@ files { MAME_DIR .. "src/mame/includes/crvision.h", MAME_DIR .. "src/mame/drivers/gamemachine.cpp", MAME_DIR .. "src/mame/drivers/geniusiq.cpp", + MAME_DIR .. "src/mame/drivers/geniusjr.cpp", MAME_DIR .. "src/mame/drivers/vtech_unk1.cpp", MAME_DIR .. "src/mame/drivers/vtech_unk2.cpp", MAME_DIR .. "src/mame/drivers/vtech_eu3a12.cpp", diff --git a/src/mame/drivers/geniusjr.cpp b/src/mame/drivers/geniusjr.cpp new file mode 100644 index 00000000000..9ae0d031b7b --- /dev/null +++ b/src/mame/drivers/geniusjr.cpp @@ -0,0 +1,101 @@ +// license:BSD-3-Clause +// copyright-holders:AJR +/* + +VTech Genius Junior series + +CPU is 68HC05 derived? + +*/ + +#include "emu.h" +#include "cpu/m6805/m68hc05.h" +#include "softlist_dev.h" + + +class geniusjr_state : public driver_device +{ +public: + geniusjr_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + { + } + + void geniusjr(machine_config &config); + void gjmovie(machine_config &config); + +protected: + virtual void machine_start() override; + +private: + void mem_map(address_map &map); + + required_device m_maincpu; +}; + +void geniusjr_state::mem_map(address_map &map) +{ +} + + +INPUT_PORTS_START( geniusjr ) +INPUT_PORTS_END + + +void geniusjr_state::machine_start() +{ +} + +void geniusjr_state::geniusjr(machine_config &config) +{ + M68HC05C8(config, m_maincpu, 8'000'000); // unknown type and clock + m_maincpu->set_addrmap(AS_PROGRAM, &geniusjr_state::mem_map); +} + +void geniusjr_state::gjmovie(machine_config &config) +{ + geniusjr(config); + + SOFTWARE_LIST(config, "cart_list").set_original("gjmovie"); +} + + +ROM_START( gj4000 ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "27-05886-000-000.u4", 0x000000, 0x40000, CRC(5f6db95b) SHA1(fe683154e33a82ea38696096616d11e850e0c7a3)) +ROM_END + +ROM_START( gj5000 ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "27-6019-01.u2", 0x000000, 0x80000, CRC(946e5b7d) SHA1(80963d6ad80d49e54c8996bfc77ac135c4935be5)) +ROM_END + +ROM_START( gjmovie ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "lh532hlk.bin", 0x000000, 0x40000, CRC(2e64c296) SHA1(604034f902e20851cb9af60964031a508ceef83e)) +ROM_END + +ROM_START( gjrstar ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "27-5740-00.u1", 0x000000, 0x40000, CRC(ff3dc3bb) SHA1(bc16dfc1e12b0008456c700c431c8df6263b671f)) +ROM_END + +ROM_START( gjrstar2 ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "27-5740-00.u1", 0x000000, 0x40000, CRC(ff3dc3bb) SHA1(bc16dfc1e12b0008456c700c431c8df6263b671f)) // identical to 'Genius Junior Redstar' +ROM_END + +ROM_START( gjrstar3 ) + ROM_REGION( 0x100000, "maincpu", 0 ) + ROM_LOAD( "54-06056-000-000.u3", 0x000000, 0x040000, CRC(72522179) SHA1(ede9491713ad018012cf925a519bcafe126f1ad3)) +ROM_END + + +// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS +COMP( 1996, gj4000, 0, 0, geniusjr, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior 4000 (Germany)", MACHINE_IS_SKELETON ) +COMP( 1993, gjmovie, 0, 0, gjmovie, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior Movie (Germany)", MACHINE_IS_SKELETON ) +COMP( 1996, gjrstar, 0, 0, geniusjr, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior Redstar (Germany)", MACHINE_IS_SKELETON ) +COMP( 1996, gjrstar2, gjrstar, 0, geniusjr, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior Redstar 2 (Germany)", MACHINE_IS_SKELETON ) +COMP( 1998, gjrstar3, 0, 0, geniusjr, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior Redstar 3 (Germany)", MACHINE_IS_SKELETON ) +COMP( 1998, gj5000, 0, 0, geniusjr, geniusjr, geniusjr_state, empty_init, "VTech", "Genius Junior 5000 (Germany)", MACHINE_IS_SKELETON ) diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp index 07fe746c614..6c6e4b33801 100644 --- a/src/mame/drivers/prestige.cpp +++ b/src/mame/drivers/prestige.cpp @@ -110,7 +110,6 @@ public: void prestige_base(machine_config &config); void gl6000sl(machine_config &config); - void gjmovie(machine_config &config); void snotec(machine_config &config); void glmcolor(machine_config &config); void glcolor(machine_config &config); @@ -831,13 +830,6 @@ void prestige_state::gl7007sl(machine_config &config) SOFTWARE_LIST(config, "misterx_cart").set_compatible("misterx"); } -void prestige_state::gjmovie(machine_config &config) -{ - prestige_base(config); - - SOFTWARE_LIST(config, "cart_list").set_original("gjmovie"); -} - /* ROM definition */ ROM_START( gl6000sl ) @@ -890,36 +882,6 @@ ROM_START( glmcolor ) ROM_LOAD( "27-5673-00.u6", 0x00000, 0x100000, CRC(c4245392) SHA1(bb651aaf11b75f4155c0a0106de9394018110cc7) ) ROM_END -ROM_START( gj4000 ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "27-05886-000-000.u4", 0x000000, 0x40000, CRC(5f6db95b) SHA1(fe683154e33a82ea38696096616d11e850e0c7a3)) -ROM_END - -ROM_START( gj5000 ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "27-6019-01.u2", 0x000000, 0x80000, CRC(946e5b7d) SHA1(80963d6ad80d49e54c8996bfc77ac135c4935be5)) -ROM_END - -ROM_START( gjmovie ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "lh532hlk.bin", 0x000000, 0x40000, CRC(2e64c296) SHA1(604034f902e20851cb9af60964031a508ceef83e)) -ROM_END - -ROM_START( gjrstar ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "27-5740-00.u1", 0x000000, 0x40000, CRC(ff3dc3bb) SHA1(bc16dfc1e12b0008456c700c431c8df6263b671f)) -ROM_END - -ROM_START( gjrstar2 ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "27-5740-00.u1", 0x000000, 0x40000, CRC(ff3dc3bb) SHA1(bc16dfc1e12b0008456c700c431c8df6263b671f)) // identical to 'Genius Junior Redstar' -ROM_END - -ROM_START( gjrstar3 ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "54-06056-000-000.u3", 0x000000, 0x040000, CRC(72522179) SHA1(ede9491713ad018012cf925a519bcafe126f1ad3)) -ROM_END - ROM_START( gkidabc ) ROM_REGION( 0x20000, "maincpu", 0 ) ROM_LOAD("27-5730-00.bin", 0x00000, 0x20000, CRC(64664708) SHA1(74212c2dec1caa41dbc933b50f857904a8ac623b)) @@ -948,11 +910,5 @@ COMP( 1999, gwnf, 0, 0, prestige, prestige, prestige_state, empty // these systems need to be moved into a separate driver -COMP( 1996, gj4000, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius Junior 4000 (Germany)", MACHINE_IS_SKELETON ) COMP( 1996, gkidabc, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius KID ABC Fan (Germany)", MACHINE_IS_SKELETON ) -COMP( 1993, gjmovie, 0, 0, gjmovie, prestige, prestige_state, empty_init, "VTech", "Genius Junior Movie (Germany)", MACHINE_IS_SKELETON ) -COMP( 1996, gjrstar, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius Junior Redstar(Germany)", MACHINE_IS_SKELETON ) -COMP( 1996, gjrstar2, gjrstar, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius Junior Redstar 2 (Germany)", MACHINE_IS_SKELETON ) -COMP( 1998, gjrstar3, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius Junior Redstar 3 (Germany)", MACHINE_IS_SKELETON ) -COMP( 1998, gj5000, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "Genius Junior 5000 (Germany)", MACHINE_IS_SKELETON ) COMP( 2012, cars2lap, 0, 0, prestige, prestige, prestige_state, empty_init, "VTech", "CARS 2 Laptop (Germany)", MACHINE_IS_SKELETON ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 86bdecef849..0c02de6809c 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -14199,6 +14199,14 @@ iq128_fr // 1997 Genius PC (France) iqtv512 // IQ TV512 (Germany) itunlim // 199? IT Unlimited +@source:geniusjr.cpp +gj4000 // Genius Junior 4000 (Germany) +gj5000 // Genius Junior 5000 (Germany) +gjmovie // Genius Junior Movie (Germany) +gjrstar // Genius Junior Redstar (Germany) +gjrstar2 // Genius Junior Redstar 2 (Germany) +gjrstar3 // Genius Junior Redstar 3 (Germany) + @source:genpc.cpp pc // 1987 PC with CGA pcega // 1987 PC with EGA @@ -32994,12 +33002,6 @@ prehisleb // bootleg @source:prestige.cpp cars2lap // CARS 2 Laptop (Germany) -gj4000 // Genius Junior 4000 (Germany) -gj5000 // Genius Junior 5000 (Germany) -gjmovie // Genius Junior Movie (Germany) -gjrstar // Genius Junior Redstar(Germany) -gjrstar2 // Genius Junior Redstar 2 (Germany) -gjrstar3 // Genius Junior Redstar 3 (Germany) gkidabc // Genius KID ABC Fan (Germany) gl6000sl // Genius Leader 6000SL (Germany) gl7007sl // Genius Leader 7007SL (Germany) diff --git a/src/mame/mess.flt b/src/mame/mess.flt index 772cfa6b4dc..3f3d380f2d0 100644 --- a/src/mame/mess.flt +++ b/src/mame/mess.flt @@ -289,6 +289,7 @@ gb.cpp gba.cpp geneve.cpp geniusiq.cpp +geniusjr.cpp genpc.cpp gimix.cpp gizmondo.cpp