diff --git a/src/mame/drivers/xavix.cpp b/src/mame/drivers/xavix.cpp index 036e943d2a6..f83bd6c6ae5 100644 --- a/src/mame/drivers/xavix.cpp +++ b/src/mame/drivers/xavix.cpp @@ -1017,7 +1017,6 @@ void xavix_state::xavix(machine_config &config) m_sound->add_route(1, "rspeaker", 1.0); } - void xavix_i2c_state::xavix_i2c_24lc02(machine_config &config) { xavix(config); @@ -1025,6 +1024,12 @@ void xavix_i2c_state::xavix_i2c_24lc02(machine_config &config) I2CMEM(config, "i2cmem", 0)/*.set_page_size(16)*/.set_data_size(0x100); // 24LC02 (taiko) } +void xavix_i2c_state::xavix_i2c_24c02(machine_config &config) +{ + xavix(config); + + I2CMEM(config, "i2cmem", 0).set_page_size(16).set_data_size(0x100); // 24C02 +} void xavix_i2c_state::xavix_i2c_24lc04(machine_config &config) { @@ -1317,6 +1322,10 @@ ROM_START( epo_guru ) ROM_LOAD("gururinworld.bin", 0x000000, 0x400000, CRC(e5ae4523) SHA1(0e39ef8f94203d34e49422081667805f50a339a1) ) ROM_END +ROM_START( epo_dmon ) // Doraemon has a phototransistor, microphone and 24LC02, PCB says XaviX 2002 + ROM_REGION(0x400000, "bios", ROMREGION_ERASE00) + ROM_LOAD("doraemon.bin", 0x000000, 0x400000, CRC(d8f5412f) SHA1(11a4c017ed400f7aa585be744d9693efe734c192) ) +ROM_END ROM_START( rad_rh ) ROM_REGION(0x200000, "bios", ROMREGION_ERASE00) @@ -1445,6 +1454,8 @@ CONS( 200?, epo_efdx, 0, 0, xavix_i2c_24c08, epo_efdx, xavix_i2c_sta CONS( 2005, epo_guru, 0, 0, xavix, xavix, xavix_state, init_xavix, "Epoch / SSD Company LTD", "Gururin World (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND ) +CONS( 2002, epo_dmon, 0, 0, xavix_i2c_24c02, xavix, xavix_i2c_state, init_xavix, "Epoch / SSD Company LTD", "Doraemon Computer Megaphone (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND ) // full / proper title? + CONS( 200?, has_wamg, 0, 0, xavix, xavix, xavix_state, init_xavix, "Hasbro / Milton Bradley / SSD Company LTD", "TV Wild Adventure Mini Golf (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND ) @@ -1455,9 +1466,9 @@ CONS( 200?, has_wamg, 0, 0, xavix, xavix, xavix_state, CONS( 2000, ekara, 0, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD / Hasbro", "e-kara (US?, NTSC, set 1)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // shows "Please insert a cartridge before turn it on" without cart CONS( 2000, ekaraa, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD / Hasbro", "e-kara (US?, NTSC, set 2)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // shows "Please insert a cartridge before turning on e-kara" without cart CONS( 2000, ekaraj, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // shows Japanese message without cart +CONS( 2002, ekarag, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara (Germany?, includes 3 songs)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // found in Germany, could just be a Europe-wide model tho?, NOT a headset model, but still has 3 songs. // the 'e-kara pro headset' has 3 songs built in for the US release. The Japanese release of this appears to be called 'e-kara H.S.' and it is unclear if it also has built in songs. The Canadian box says 'cartridge contains' instead of 'songs included' but is likely a printing error. -CONS( 2002, ekaraphs, 0, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara Pro Headset (US, includes 3 songs)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) -CONS( 2002, ekarag, ekaraphs, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara (Germany?, includes 3 songs)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // found in Germany, could just be a Europe-wide model tho?, verify if regular or headset type +CONS( 2002, ekaraphs, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara Pro Headset (US, includes 3 songs)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) CONS( 2001, ddrfammt, 0, 0, xavix_cart_ddrfammt,ddrfammt, xavix_cart_state, init_xavix, "Takara / Konami / SSD Company LTD", "Dance Dance Revolution Family Mat (Japan)", MACHINE_IMPERFECT_SOUND/*|MACHINE_IS_BIOS_ROOT*/ ) @@ -1519,7 +1530,7 @@ CONS( 2003, drgqst, 0, 0, xavix2000_i2c_24c02, xavix , xavix_i2c_lotr_state, /* The 'XaviXPORT' isn't a real console, more of a TV adapter, all the actual hardware (CPU including video hw, sound hw) is in the cartridges and controllers and can vary between games, see notes at top of driver. - The 'Dyomos' console released in France appears to be nearly identical to XaviXPORT + The 'Domyos Interactive System (DiS)' released in France by Decathlon appears to be identical to XaviXPORT (but for PAL regions, and with an entirely different software range) */ ROM_START( xavtenni ) @@ -1548,6 +1559,6 @@ CONS( 2004, xavbaseb, 0, 0, xavix2000_i2c_24c04, xavix, xavix_i2c_state, init_xa // TODO: check SEEPROM type and hookup, banking! CONS( 2005, xavjmat, 0, 0, xavix2000_i2c_24c04, xavix, xavix_i2c_state, init_xavix, "SSD Company LTD", "Jackie Chan J-Mat Fitness (XaviXPORT)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // TODO: does it have an SEEPROM? why does it hang? full title? -CONS( 2005, tmy_thom, 0, 0, xavix2000_i2c_24c04, xavix, xavix_i2c_state, init_xavix, "SSD Company LTD / Tomy", "Thomas and Friends (Tomy)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) +CONS( 2005, tmy_thom, 0, 0, xavix2000_i2c_24c04, xavix, xavix_i2c_state, init_xavix, "Tomy / SSD Company LTD", "Thomas and Friends (Tomy)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) diff --git a/src/mame/includes/xavix.h b/src/mame/includes/xavix.h index 7cce8c64683..4597d3f9d63 100644 --- a/src/mame/includes/xavix.h +++ b/src/mame/includes/xavix.h @@ -578,6 +578,7 @@ public: void xavix_i2c_24lc02(machine_config &config); void xavix_i2c_24lc04(machine_config &config); + void xavix_i2c_24c02(machine_config &config); void xavix_i2c_24c08(machine_config &config); void xavix2000_i2c_24c04(machine_config &config); diff --git a/src/mame/machine/xavix.cpp b/src/mame/machine/xavix.cpp index 5f783570354..e7b66de909c 100644 --- a/src/mame/machine/xavix.cpp +++ b/src/mame/machine/xavix.cpp @@ -467,7 +467,8 @@ TIMER_CALLBACK_MEMBER(xavix_state::interrupt_gen) m_screen->update_partial(m_screen->vpos()); } - m_interrupt_timer->adjust(attotime::never, 0); +// m_interrupt_timer->adjust(attotime::never, 0); + m_interrupt_timer->adjust(m_screen->time_until_pos(m_posirq_y[0], m_posirq_x[0]), 0); // epo_dmon expects it to keep firing without being reloaded? check this doesn't break anything else! } diff --git a/src/mame/mame.lst b/src/mame/mame.lst index fe33a50e8c2..6db3a21494d 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -39756,6 +39756,7 @@ epo_epp // epo_efdx // epo_sdb // epo_guru // +epo_dmon // rad_rh // has_wamg // ekara //