new WORKING Gamate game + Working DBZ JAKKS + misc bits (#4614)

* new WORKING Software List entries
---
gamate:fortress Fortress of Fierceness [Peter Wilhelmsen]

new NOT WORKING Software List entries
---
ekara_japan_a:a7 A-7 Pichi Pichi Pitch Pure Chapter 3 (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a5 A-5 Pichi Pichi Pitch Karaoke Party (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a4 A-4 Pichi Pichi Pitch Pure Chapter 1 (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a1 A-1 Pichi Pichi Pitch vol.1 (Japan) [Peter Wilhelmsen, Sean Riddle]

new NOT WORKING clones
---
Play 2000 (Super Slot & Gran Tesoro) (v7.0i) (Italy)  [Peter Wilhelmsen, Morten Shearman Kirkegaard]

* new WORKING machines
---
Dragon Ball Z (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, 19 external donators]

* flag (nw)

* allow 'a7' to boot (nw)

* move XaviX2 sets to new files (nw)

* new machines marked as NOT WORKING
---
Let's TV Play Naruto [Peter Wilhelmsen, Sean Riddle]

This is another XaviX2 thing.
This commit is contained in:
David Haywood 2019-02-09 15:29:48 +00:00 committed by R. Belmont
parent 24248c8ca8
commit 668c87dca2
20 changed files with 530 additions and 82 deletions

View File

@ -801,7 +801,7 @@
<!-- EC0077-ATS Artist Selection Volume 15 - unknown artist -->
<!-- EC0078- (unknown) -->
<!-- EC0078-JPM J-Pop Mix Volume 40 -->
<software name="ec0079"> <!-- custom presentation -->
<description>ETZ (Japan) (EC0079-ETZ)</description> <!-- Japanese text in 'Volume' box -->
@ -814,7 +814,7 @@
</part>
</software>
<!-- EC0080- (unknown) -->
<!-- EC0080-JPM J-Pop Mix Volume 41-->
<!-- EC0081-JPM J-Pop Mix Volume 42 -->
@ -831,8 +831,8 @@
<!-- EC0083-JPM J-Pop Mix Volume 43 -->
<!-- EC0084- (unknown, seen) -->
<!-- EC0084- Something 40 (unknown, seen) -->
<!-- EC0085- (unknown, seen in the wild) -->
<!-- EC0085- (unknown, seen in the wild, sequel to 69, 79 so probably ETZ) -->
</softwarelist>

72
hash/ekara_japan_a.xml Normal file
View File

@ -0,0 +1,72 @@
<?xml version="1.0"?>
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<softwarelist name="ekara_japan_a" description="Takara e-pitch / e-kara (Japan) A-x series cartridges">
<!-- cartridges contain the ROM only, the XaviX CPU and BIOS are in the base unit
***********************************************************************************
Japanese cart listing (by A code) (A-x on cartridge)
These are for use with e-pitch / e-kara (e-pitch internal ROM is the same as e-kara Japan, just button layout is changed)
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10109392860
A-1 Pichi Pichi Pitch vol.1 / ぴちぴちピッチvol.1
A-2 Pichi Pichi Pitch vol.2 / ぴちぴちピッチvol.2
A-3 Pichi Pichi Pitch vol.3 / ぴちぴちピッチvol.3
A-4 Pichi Pichi Pitch Pure Chapter 1 / ぴちぴちピッチピュア第1章
A-5 Pichi Pichi Pitch Karaoke Party / ぴちぴちピッチカラオケパーティー
A-6 Pichi Pichi Pitch Pure Chapter 2 / ぴちぴちピッチピュア第2章
A-7 Pichi Pichi Pitch Pure Chapter 3 / ぴちぴちピッチピュア第3章
A-8 Pichi Pichi Pitch Karaoke Party 2 / ぴちぴちピッチカラオケパーティー2
-->
<software name="a1" supported="no">
<description>A-1 Pichi Pichi Pitch vol.1 (Japan)</description>
<year>2003</year>
<publisher>Takara</publisher>
<part name="cart" interface="ekara_cart">
<feature name="slot" value="rom_24c08_epitch"/>
<dataarea name="rom" size="0x200000">
<rom name="ekaraa1.bin" size="0x200000" crc="5f69a977" sha1="33e7b453e1e78ac5e4a20c81c00f5c0c1260c6b0" offset="0" />
</dataarea>
</part>
</software>
<software name="a4" supported="no">
<description>A-4 Pichi Pichi Pitch Pure Chapter 1 (Japan)</description>
<year>2004</year>
<publisher>Takara</publisher>
<part name="cart" interface="ekara_cart">
<feature name="slot" value="rom_24c08_epitch"/>
<dataarea name="rom" size="0x200000">
<rom name="ekaraa4.bin" size="0x200000" crc="03dcc45a" sha1="ae884128c09b4fc7521f0010bbe9624419a3d0b8" offset="0" />
</dataarea>
</part>
</software>
<software name="a5">
<description>A-5 Pichi Pichi Pitch Karaoke Party (Japan)</description>
<year>2004</year>
<publisher>Takara</publisher>
<part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x100000">
<rom name="ekaraa5.bin" size="0x100000" crc="6cec888a" sha1="5cb4abefb4a5aaec8827bf2d6abc2dfda8099136" offset="0" />
</dataarea>
</part>
</software>
<software name="a7" supported="no">
<description>A-7 Pichi Pichi Pitch Pure Chapter 3 (Japan)</description>
<year>2004</year>
<publisher>Takara</publisher>
<part name="cart" interface="ekara_cart">
<feature name="slot" value="rom_24c08_epitch"/>
<dataarea name="rom" size="0x200000">
<rom name="ekaraa7.bin" size="0x200000" crc="5b59900e" sha1="fdb8148211f00d0119b9ad082bf8fd348d509800" offset="0" />
</dataarea>
</part>
</software>
</softwarelist>

View File

@ -16,14 +16,14 @@
note BAT and BHT aren't the same series
D-1 DC0001- (unknown)
D-1 DC0001-BHT BHT (Best Artists?) Volume 8 (most other BHT carts are in G series, or P series)
*D-2 DC0002-BAT BAT Volume 6
D-3 DC0003-BHT BHT (Best Artists?) Volume 9? (most other BHT carts are in G series, or P series)
D-4 DC0004- (unknown)
D-3 DC0003-BHT BHT (Best Artists?) Volume 9
D-4 DC0004-TPJ TV Pop Volume 8
*D-5 DC0005-TPJ TV Pop Volume 9
D-6 DC0006- (seen)
D-7 DC0007- (seen)
D-8 DC0008- (seen)
D-6 DC0006-BHT BHT (Best Artists?) Volume 10
D-7 DC0007- (untranslated) Volume 4
D-8 DC0008-BAT BAT Volume 7?
(more? what's the D highest number?)

View File

@ -28,6 +28,7 @@
G-15 *GC0015-BAT BAT Volume 5 (Artist Selection?)
G-16 *GC0016-TPJ TV Pop Volume 5
G-17 GC0017-TPJ TV Pop Volume 6
G-18 GC0018-TPJ TV Pop Volume 7
(more? what's the G highest number?)

View File

@ -5,21 +5,26 @@
Japanese cart listing (by M code) (M-x on cartridge / box, MC in cart identifier code)
M-1 *MC0001-ATM ATM Mini Volume 1
M-2 MC0002-
M-3 MC0003-
M-4 MC0004- ? Mini Volume 4 (w-inds)
M-5 MC0005-
M-6 MC0006-
M-7 MC0007-ATM ATM Mini Volume 5
M-8
M-9
M-10
M-11
M-12
M-13 MC0013-KSM KSM Mini Volume 5
M-14
M-15 MC0015-TPM TV Pop Mini Volume 1
M-1 *MC0001-ATM Artist Mini Volume 1 (untranslated artist)
M-2 MC0002-ATM Artist Mini Volume 2 (untranslated artist)
M-3 MC0003-ATM Artist Mini Volume 3 (untranslated artist)
M-4 MC0004-ATM Artist Mini Volume 4 (w-inds)
M-5 MC0005- KSM? unknown Vol 1
M-6 MC0006- KSM? TPM? unknown Vol 2 (TV)
M-7 MC0007-ATM Artist Mini Volume 5 (SMAP, KinKi Kids)
M-8 MC0008- KSM? TPM? unknown Vol 3 (TV)
M-9 MC0009-KSM JPop Mix Mini Vol 1
M-10 MC0010-ATM Artist Mini Volume 6 (untranslated artist)
M-11 MC0011- KSM? unknown Vol 4
M-12 MC0012-ATM Artist Mini Volume 7 (untranslated artist)
M-13 *MC0013-KSM KSM Mini Volume 5
M-14 MC0014-ATM Artist Mini Volume 8 (BoA)
M-15 MC0015- KSM? TPM? unknown Vol 6 (TV Pop)
M-16 MC0016-ATM Artist Mini Volume 9 (untranslated artist)
M-17 MC0017- KSM? TPM? TV Pop Mini Vol 7 (TV Pop)
unsure of KSM / TMP naming, MC0005/0005/0008/0011/0013/0015/0017 all seem to be the same series
but might have different 3 letter codes
(more? what's the M highest number?)

View File

@ -11,30 +11,29 @@
SAI seems to be used for multiple different series here, need to look at the subtitles too
S-1 SC0001- Hello Kitty Special
S-2 SC0002-SAI (unknown)
S-3 SC0003- (unknown)
S-2 SC0002-SAI SAI (series 3) Volume 1
S-3 SC0003- unknown(1) Volume 1
S-4 *SC0004-SAI SAI (series 1) Volume 1
S-5 *SC0005-SAI SAI (series 2) Volume 1 (same series as 6,9,19,21,22)
S-6 *SC0006-SAI SAI (series 2) Volume 2 (same series as 5,9,19,21,22)
S-7 SC0007- (unknown)
S-8 SC0008- (unknown)
S-7 SC0007- unknown(2) Volume 1
S-8 SC0008-SAI SAI (series 3) Volume 2
S-9 *SC0009-SAI SAI (series 2) Volume 3 (same series as 5,6,19,21,22)
S-10 *SC0010-HWK HWK (untranslated)
S-11 SC0011- (unknown)
S-11 SC0011- PostPet
S-12 *SC0012-SAI SAI (series 3) Volume 3
S-13 SC0013- (unknown)
S-14 SC0014- (unknown)
S-15 SC0015- (unknown)
S-16 SC0016- (unknown)
S-17 SC0017- (unknown)
S-13 SC0013- SAI (series 2) Volume 4
S-14 SC0014- SAI (series 3) Volume 4
S-15 SC0015- unknown(2) Volume 2
S-16 SC0016-SAI SAI (series 2) Volume 5
S-17 SC0017- unknown(1) Volume 2
S-18 SC0018-SAI (unknown) Volume 1
S-19 *SC0019-SAI SAI (series 2) Volume 6 (same series as 5,6,9,21,22)
S-20 SC0020- (unknown) Volume 5
S-20 SC0020- SAI (series 3) Volume 5
S-21 *SC0021-SAI SAI (series 2) Volume 7 (same series as 5,6,9,19,22)
S-22 *SC0022-SAI SAI (series 2) Volume 8 (same series as 5,6,9,19,21)
S-23 SC0023- (unknown)
(more? what's the S highest number?)
(more? what's the S highest number?, had S-23 noted, but can't find evidence of it now)
-->

View File

@ -11,7 +11,6 @@ C1034 - Superboy (Unreleased?)
C1039 - Column #5 (Unreleased?)
C1040 - ??
C1041 - Mighty Boxer
C1050 - Fortress of Fierceness
C1051 - Incantational Couple
C1055 - ??
C1059 - ??
@ -536,6 +535,18 @@ C1066 - ??
</part>
</software>
<software name="fortress">
<description>Fortress of Fierceness</description>
<year>1991</year>
<publisher>Bit Corporation</publisher>
<info name="serial" value="C1050" />
<part name="cart" interface="gamate_cart">
<dataarea name="rom" size="32768">
<rom name="fortress.bin" size="32768" crc="c771e16b" sha1="aa971e546da8957de29837e5310452c129771967" offset="0" />
</dataarea>
</part>
</software>
<software name="famous7">
<description>Famous 7</description>
<year>1993</year>

View File

@ -3515,6 +3515,7 @@ files {
MAME_DIR .. "src/mame/machine/xavix_io.h",
MAME_DIR .. "src/mame/machine/xavix2002_io.cpp",
MAME_DIR .. "src/mame/machine/xavix2002_io.h",
MAME_DIR .. "src/mame/drivers/xavix2.cpp",
}
createMESSProjects(_target, _subtarget, "ultimachine")

View File

@ -10,6 +10,7 @@
DEFINE_DEVICE_TYPE(EKARA_ROM_PLAIN, ekara_rom_plain_device, "ekara_rom_plain", "EKARA Cartridge")
DEFINE_DEVICE_TYPE(EKARA_ROM_I2C_BASE, ekara_rom_i2c_base_device, "ekara_rom_i2c_base", "EKARA Cartridge with I2C")
DEFINE_DEVICE_TYPE(EKARA_ROM_I2C_24C08_EPITCH, ekara_rom_i2c_24c08_epitch_device, "ekara_rom_i2c_24c08", "EKARA Cartridge with I2C 24C08 (e-pitch)")
DEFINE_DEVICE_TYPE(EKARA_ROM_I2C_24LC04, ekara_rom_i2c_24lc04_device, "ekara_rom_i2c_24lc04", "EKARA Cartridge with I2C 24LC04")
DEFINE_DEVICE_TYPE(EKARA_ROM_I2C_24LC02, ekara_rom_i2c_24lc02_device, "ekara_rom_i2c_24lc02", "EKARA Cartridge with I2C 24LC02")
@ -24,18 +25,24 @@ ekara_rom_plain_device::ekara_rom_plain_device(const machine_config &mconfig, co
{
}
ekara_rom_i2c_base_device::ekara_rom_i2c_base_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
ekara_rom_plain_device(mconfig, EKARA_ROM_I2C_BASE, tag, owner, clock),
m_i2cmem(*this, "i2cmem")
{
}
ekara_rom_i2c_base_device::ekara_rom_i2c_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
ekara_rom_plain_device(mconfig, type, tag, owner, clock),
m_i2cmem(*this, "i2cmem")
{
m_buscontrol[0] = m_buscontrol[1] = m_buscontrol[2] = 0x00;
}
ekara_rom_i2c_base_device::ekara_rom_i2c_base_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
ekara_rom_i2c_base_device(mconfig, EKARA_ROM_I2C_BASE, tag, owner, clock)
{
}
ekara_rom_i2c_24c08_epitch_device::ekara_rom_i2c_24c08_epitch_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
ekara_rom_i2c_base_device(mconfig, EKARA_ROM_I2C_24C08_EPITCH, tag, owner, clock)
{
}
ekara_rom_i2c_24lc04_device::ekara_rom_i2c_24lc04_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
ekara_rom_i2c_base_device(mconfig, EKARA_ROM_I2C_24LC04, tag, owner, clock)
@ -75,6 +82,22 @@ WRITE8_MEMBER(ekara_rom_plain_device::write_rom)
// i2c base
bool ekara_rom_i2c_base_device::is_read_access_not_rom(void)
{
return (m_buscontrol[1] & 0x08) ? true : false;
}
bool ekara_rom_i2c_base_device::is_write_access_not_rom(void)
{
return (m_buscontrol[0] & 0x08) ? true : false;
}
WRITE8_MEMBER(ekara_rom_i2c_base_device::write_bus_control)
{
logerror("ekara_rom_i2c_base_device::write_bus_control %08x %02x\n", offset, data);
m_buscontrol[offset] = data;
}
WRITE8_MEMBER(ekara_rom_i2c_base_device::write_rom)
{
logerror("ekara_rom_i2c_base_device::write_rom %08x %02x\n", offset, data);
@ -100,6 +123,26 @@ WRITE8_MEMBER(ekara_rom_i2c_base_device::write_extra)
m_i2cmem->write_scl((data & 0x02) >> 1);
}
// i2c 24c08 (for epitch carts)
bool ekara_rom_i2c_24c08_epitch_device::is_read_access_not_rom(void)
{
// write 0x08 before reading from SEEPROM
// reads from 005fffff, cart does no accress decoding
return (m_buscontrol[1] & 0x08) ? true : false;
}
bool ekara_rom_i2c_24c08_epitch_device::is_write_access_not_rom(void)
{
// writes 0x05 before writing to SEEPROM
// actually writes to address 3fffff which is where a mirror of the base ROM sits, but clearly all signals route through the cartridge too
// cart does no accress decoding
return (m_buscontrol[1] & 0x04) ? true : false;
}
MACHINE_CONFIG_START(ekara_rom_i2c_24c08_epitch_device::device_add_mconfig)
I2CMEM(config, "i2cmem", 0)/*.set_page_size(16)*/.set_data_size(0x400); // 24C08
MACHINE_CONFIG_END
// i2c 24lc04
@ -121,6 +164,7 @@ MACHINE_CONFIG_END
void ekara_cart(device_slot_interface &device)
{
device.option_add_internal("plain", EKARA_ROM_PLAIN);
device.option_add_internal("rom_24c08_epitch", EKARA_ROM_I2C_24C08_EPITCH);
device.option_add_internal("rom_24lc04", EKARA_ROM_I2C_24LC04);
device.option_add_internal("rom_24lc02", EKARA_ROM_I2C_24LC02);
}

View File

@ -54,8 +54,32 @@ protected:
virtual DECLARE_READ8_MEMBER(read_extra) override;
virtual DECLARE_WRITE8_MEMBER(write_extra) override;
virtual DECLARE_WRITE8_MEMBER(write_bus_control) override;
virtual bool is_read_access_not_rom(void) override;
virtual bool is_write_access_not_rom(void) override;
uint8_t m_buscontrol[3];
};
// ======================> ekara_rom_i2c_24c08_epitch_device
class ekara_rom_i2c_24c08_epitch_device : public ekara_rom_i2c_base_device
{
public:
// construction/destruction
ekara_rom_i2c_24c08_epitch_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
virtual bool is_read_access_not_rom(void) override;
virtual bool is_write_access_not_rom(void) override;
virtual void device_add_mconfig(machine_config &config) override;
};
// ======================> ekara_rom_i2c_24lc04_device
class ekara_rom_i2c_24lc04_device : public ekara_rom_i2c_base_device
@ -84,6 +108,7 @@ protected:
// device type definition
DECLARE_DEVICE_TYPE(EKARA_ROM_PLAIN, ekara_rom_plain_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_BASE, ekara_rom_i2c_base_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24C08_EPITCH, ekara_rom_i2c_24c08_epitch_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC04, ekara_rom_i2c_24lc04_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC02, ekara_rom_i2c_24lc02_device)

View File

@ -95,6 +95,7 @@ static const ekara_slot slot_list[] =
{
{ EKARA_PLAIN, "plain" },
{ EKARA_I2C_BASE, "i2c_base" },
{ EKARA_I2C_24C08, "rom_24c08" },
{ EKARA_I2C_24LC04, "rom_24lc04" },
{ EKARA_I2C_24LC02, "rom_24lc02" },
};
@ -237,3 +238,23 @@ WRITE8_MEMBER(ekara_cart_slot_device::write_extra)
m_cart->write_extra(space, offset, data);
}
/*-------------------------------------------------
write control
-------------------------------------------------*/
WRITE8_MEMBER(ekara_cart_slot_device::write_bus_control)
{
m_cart->write_bus_control(space, offset, data);
}
bool ekara_cart_slot_device::is_read_access_not_rom(void)
{
return m_cart->is_read_access_not_rom();
}
bool ekara_cart_slot_device::is_write_access_not_rom(void)
{
return m_cart->is_write_access_not_rom();
}

View File

@ -16,6 +16,7 @@ enum
{
EKARA_PLAIN = 0,
EKARA_I2C_BASE,
EKARA_I2C_24C08,
EKARA_I2C_24LC04,
EKARA_I2C_24LC02,
};
@ -35,6 +36,11 @@ public:
virtual DECLARE_READ8_MEMBER(read_extra) { return 0xff; }
virtual DECLARE_WRITE8_MEMBER(write_extra) { }
virtual DECLARE_WRITE8_MEMBER(write_bus_control) { }
virtual bool is_read_access_not_rom(void) { return false; }
virtual bool is_write_access_not_rom(void) { return false; }
void rom_alloc(uint32_t size, const char *tag);
uint8_t* get_rom_base() { return m_rom; }
uint32_t get_rom_size() { return m_rom_size; }
@ -96,6 +102,11 @@ public:
virtual DECLARE_READ8_MEMBER(read_extra);
virtual DECLARE_WRITE8_MEMBER(write_extra);
virtual DECLARE_WRITE8_MEMBER(write_bus_control);
virtual bool is_read_access_not_rom(void);
virtual bool is_write_access_not_rom(void);
bool has_cart() { return m_cart ? true : false; }
protected:

View File

@ -1933,6 +1933,9 @@ void spg2xx_device::device_timer(emu_timer &timer, device_timer_id id, int param
check_video_irq();
}
m_screen->update_partial(m_screen->vpos());
// fire again, jak_dbz pinball needs this
m_screenpos_timer->adjust(m_screen->time_until_pos(m_video_regs[0x36], m_video_regs[0x37] << 1));
break;
}

View File

@ -590,6 +590,7 @@ READ16_MEMBER(gaelco2_state::play2000_shareram_68k_r)
}
logerror("%04x read from shareram %04x %04x %04x\n", pc, offset * 2, mem_mask, ret & mem_mask);
return ret;
}
@ -610,7 +611,7 @@ void gaelco2_state::play2000_map(address_map &map)
{
map(0x000000, 0x03ffff).rom(); /* ROM */
map(0x100000, 0x100001).portr("IN0"); /* Coins + other buttons? */
// AM_RANGE(0x110000, 0x110001) ?
map(0x110000, 0x110001).portr("IN1");
map(0x200000, 0x20ffff).ram().w(FUNC(gaelco2_state::gaelco2_vram_w)).share("spriteram"); /* Video RAM */
map(0x202890, 0x2028ff).rw("gaelco", FUNC(gaelco_gae1_device::gaelcosnd_r), FUNC(gaelco_gae1_device::gaelcosnd_w)); /* Sound Registers */
map(0x214000, 0x214fff).ram().w(FUNC(gaelco2_state::gaelco2_palette_w)).share("paletteram"); /* Palette */
@ -634,9 +635,82 @@ static INPUT_PORTS_START( play2000 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON6 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON7 )
PORT_BIT( 0xff00, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("IN1")
PORT_DIPNAME( 0x0001, 0x0001, "IN1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
INPUT_PORTS_END
ROM_START( play2000 ) /* there are version 4.0 and version 1.0 strings in this, go with the higher one */
ROM_START( play2000 )
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_BYTE( "tms27c010a.2", 0x000000, 0x020000, CRC(598102f9) SHA1(66fb6d321c886099b99d048d1f9f13cf016b9c43) )
ROM_LOAD16_BYTE( "tms27c010a.1", 0x000001, 0x020000, CRC(e2b5d79a) SHA1(f004352ddb9bc92aab126627689b45b2ef8583b1) )
ROM_REGION( 0x8000, "gaelco_ds5002fp:sram", 0 ) /* DS5002FP code */
ROM_LOAD( "ds5002fp.bin", 0x00000, 0x8000, NO_DUMP )
ROM_REGION( 0x100, "gaelco_ds5002fp:mcu:internal", ROMREGION_ERASE00 )
//DS5002FP_SET_MON( x )
//DS5002FP_SET_RPCTL( x )
//DS5002FP_SET_CRCR( x )
ROM_REGION( 0x0a00000, "gfx1", 0 ) /* GFX + Sound */
ROM_LOAD( "6.u51", 0x0000000, 0x0100000, CRC(6dafc11c) SHA1(2aa3d6318418578433b3060bda6e27adf794dea4) ) /* GFX + Sound*/
ROM_LOAD( "4.u53", 0x0200000, 0x0080000, CRC(94dc37a7) SHA1(28f9832b61541b292682a6e2d2264abccd138a2e) ) /* GFX only */
ROM_LOAD( "7.u50", 0x0400000, 0x0080000, CRC(e80c6d39) SHA1(b3ae5d66c48c2ba6665a181e311b0c834384258a) ) /* GFX only */
ROM_LOAD( "5.u52", 0x0600000, 0x0080000, CRC(19b939f4) SHA1(7281709aa3ab1decb84bf7ab10492fb6ec197c80) ) /* GFX only */
ROM_LOAD( "3.u54", 0x0800000, 0x0080000, CRC(085008ed) SHA1(06eb4f972d79eab13b1b3b6829ef280e079abdb6) ) /* GFX only */
ROM_REGION( 0x0600, "plds", 0 )
ROM_LOAD( "palce16v8h.u29", 0x0000, 0x0117, BAD_DUMP CRC(4a0a6f39) SHA1(57351e471649391c9abf110828fe2f128fe84eee) )
ROM_END
ROM_START( play2000a ) /* there are version 4.0 and version 1.0 strings in this, go with the higher one */
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_BYTE( "2.u39_v4", 0x000000, 0x020000, CRC(fff16141) SHA1(8493c3e58a231c03b152b336f43422a9a2d2618c) )
ROM_LOAD16_BYTE( "1.u40_v4", 0x000001, 0x020000, CRC(39f9d58e) SHA1(1cbdae2adc570f2a2e10a707075312ef717e2643) )
@ -695,7 +769,7 @@ REF: 990315
| |------------| |
-----------------------------------------------------------------------------|
*/
ROM_START( play2000a )
ROM_START( play2000b )
/*at least 1.u40 is bad, on every 0x40 bytes the first four are always 0xff.*/
ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_BYTE( "2.u39", 0x000000, 0x020000, BAD_DUMP CRC(9939299e) SHA1(55303a2adf199f4b5a60f57be7480b0e119f8624) )
@ -2330,8 +2404,9 @@ GAME( 1998, bang, 0, bang, bang, bang_state, i
GAME( 1998, bangj, bang, bang, bang, bang_state, init_bang, ROT0, "Gaelco", "Gun Gabacho (Japan)", 0 )
// 2-in-1 gambling game, appears to be cloned Gaelco hardware complete with DS5002FP, or possibly manufactured by Gaelco for Nova Desitec but without any Gaelco branding.
GAME( 1999, play2000, 0, play2000, play2000, gaelco2_state, empty_init, ROT0, "Nova Desitec", "Play 2000 (Super Slot & Gran Tesoro) (v4.0) (Italy)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING )
GAME( 1999, play2000a, play2000, play2000, play2000, gaelco2_state, empty_init, ROT0, "Nova Desitec", "Play 2000 (Super Slot & Gran Tesoro) (v5.01) (Italy)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING ) // bad dump
GAME( 1999, play2000, 0, play2000, play2000, gaelco2_state, empty_init, ROT0, "Nova Desitec", "Play 2000 (Super Slot & Gran Tesoro) (v7.0i) (Italy)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING )
GAME( 1999, play2000a, play2000, play2000, play2000, gaelco2_state, empty_init, ROT0, "Nova Desitec", "Play 2000 (Super Slot & Gran Tesoro) (v4.0i) (Italy)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING )
GAME( 1999, play2000b, play2000, play2000, play2000, gaelco2_state, empty_init, ROT0, "Nova Desitec", "Play 2000 (Super Slot & Gran Tesoro) (v5.0i) (Italy)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING ) // bad dump
// Gym exercise bike
GAME( 1997, saltcrdi, 0, saltcrdi, saltcrdi, gaelco2_state, empty_init, ROT0, "Salter Fitness / Gaelco", "Pro Tele Cardioline (Salter Fitness Bike V.1.0, Checksum 02AB)", MACHINE_NOT_WORKING ) // there are other machines in the Cardioline series, without TV displays

View File

@ -1091,6 +1091,11 @@ ROM_START( jak_sdoo )
ROM_LOAD16_WORD_SWAP( "jakksscoobydoogkr.bin", 0x000000, 0x400000, CRC(61062ce5) SHA1(9d21767fd855385ef83e4209c429ecd4bf7e5384) )
ROM_END
ROM_START( jak_dbz )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "jakksdragonballzgkr.bin", 0x000000, 0x200000, CRC(d52c3b20) SHA1(fd5ce41c143cad9bca3372054f4ff98b52c33874) )
ROM_END
ROM_START( jak_sith )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "jakksstarwarsgkr.bin", 0x000000, 0x200000, CRC(932cde19) SHA1(b88b748c235e9eeeda574e4d5b4077ae9da6fbd0) )
@ -1288,15 +1293,18 @@ CONS( 2010, wirels60, 0, 0, wireless60, wirels60, spg2xx_game_state, empty_init,
CONS( 2004, jak_batm, 0, 0, jakks, batman, spg2xx_game_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "The Batman (JAKKS Pacific TV Game)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
CONS( 2008, jak_wall, 0, 0, walle, walle, spg2xx_game_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "Wall-E (JAKKS Pacific TV Game)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
// 'Game-Key Ready' JAKKS games (these can also take per-game specific expansion cartridges, although not all games had them released) Some of these were available in versions without Game-Key ports, it is unconfirmed if code was the same unless otherwise stated
// 'Game-Key Ready' JAKKS games (these can also take per-game specific expansion cartridges, although not all games had them released)
// Some of these were available in versions without Game-Key ports, it is unconfirmed if code was the same unless otherwise stated
// For units released AFTER the GameKey promotion was cancelled it appears the code is the same as the PCB inside is the same, just the external port closed off, earlier units might be different hardware in some cases.
CONS( 2005, jak_wwe, 0, 0, jakks_gkr_1m, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "WWE (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // WW (no game-keys released)
CONS( 2005, jak_fan4, 0, 0, jakks_gkr_1m, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Digital Eclipse", "Fantastic Four (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // F4 (no game-keys released)
CONS( 2005, jak_just, 0, 0, jakks_gkr_1m, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Taniko", "Justice League (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // DC (no game-keys released)
CONS( 2005, jak_dora, 0, 0, jakks_gkr_nk, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Handheld Games", "Dora the Explorer - Nursery Rhyme Adventure (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // uses NK keys (same as Nicktoons & Spongebob) (3+ released) - The upper part of this one is pink/purple.
CONS( 2005, jak_dora, 0, 0, jakks_gkr_nk, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Handheld Games", "Dora the Explorer - Nursery Rhyme Adventure (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // uses NK keys (same as Nicktoons & Spongebob) (3 released) - The upper part of this one is pink/purple.
// there is also a Dora the Explorer 'Race to Play Park' which is also a GameKeyReady unit with NK code, and different games - the upper part of this one is blue.
CONS( 2005, jak_sdoo, 0, 0, jakks_gkr_2m, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Jolliford Management","Scooby-Doo! and the Mystery of the Castle (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // SD (no game-keys released)
CONS( 2005, jak_disf, 0, 0, jakks_gkr_dy, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "Disney Friends (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // uses DY keys (3 released)
CONS( 2005, jak_sith, 0, 0, jakks_gkr_sw, jak_sith, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Griptonite Games", "Star Wars - Revenge of the Sith (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // uses SW keys (1 released)
CONS( 2005, jak_dbz, 0, 0, jakks_gkr_1m, jak_gkr, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Handheld Games", "Dragon Ball Z (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // DB (no game-keys released, 1 in development but cancelled)
// Nicktoons NK (3? keys available) (same keys as Dora the Explorer)
// SpongeBob SquarePants: The Fry Cook Games NK (3? keys available) ^^
@ -1305,7 +1313,6 @@ CONS( 2005, jak_sith, 0, 0, jakks_gkr_sw, jak_sith, jakks_gkr_state, empty_init,
// Spider-Man MV (1? key available)
// no keys released for the following, some were in development but cancelled
// Dragon Ball Z DB (no game-keys released)
// Capcom 3-in-1 CC (no game-keys released)
// Care Bears CB (no game-keys released)
// Wheel of Fortune WF (no game-keys released)

View File

@ -1301,6 +1301,7 @@ void xavix_cart_state::xavix_cart_ekara(machine_config &config)
SOFTWARE_LIST(config, "cart_list_japan_en").set_original("ekara_japan_en");
SOFTWARE_LIST(config, "cart_list_japan_sp").set_original("ekara_japan_sp");
SOFTWARE_LIST(config, "cart_list_japan_web").set_original("ekara_japan_web");
SOFTWARE_LIST(config, "cart_list_japan_a").set_original("ekara_japan_a");
}
void xavix_cart_state::xavix_cart_popira(machine_config &config)
@ -1550,6 +1551,11 @@ ROM_START( ekarag )
ROM_END
ROM_START( epitch )
ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 )
ROM_LOAD( "ekarajapan.bin", 0x600000, 0x100000, CRC(e459e43b) SHA1(58b7f36a81571a2df5e812c118fdf68812a05abc) )
ROM_RELOAD(0x000000, 0x100000)
ROM_END
ROM_START( ddrfammt )
ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 )
@ -1659,6 +1665,10 @@ CONS( 2002, ekarag, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_s
// 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, 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*/ )
// epitch (at least the pichi pichi pitch mermaid starter pack) uses the same internal rom as the Japanese ekara, but has less buttons, so some features aren't available (some games also seem to expect to read it with a different layout eg 'a7' cart, but 'a5' cart doesn't, so must be a way to enable that mode, or bug in code?)
CONS( 2003, epitch, 0, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-pitch (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // shows Japanese message without cart
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*/ )
CONS( 2000, popira, 0, 0, xavix_cart_popira,popira, xavix_cart_state, init_xavix, "Takara / SSD Company LTD", "Popira (Japan)", MACHINE_IMPERFECT_SOUND/*|MACHINE_IS_BIOS_ROOT*/ ) // The original Popira is a single yellow unit
@ -1824,27 +1834,4 @@ CONS( 2008, domfitex, 0, 0, xavix2002_i2c_jmat, xavixp, xavix_i2c_jmat_state, in
CONS( 2008, domfitch, 0, 0, xavix2002_i2c_jmat, xavixp, xavix_i2c_jmat_state, init_xavix, "Decathlon / SSD Company LTD", "Domyos Fitness Challenge (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
CONS( 2007, domdance, 0, 0, xavix2002_i2c_jmat, xavixp, xavix_i2c_jmat_state, init_xavix, "Decathlon / SSD Company LTD", "Domyos Fitness Dance (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
// Domyos DiS (unknown hardware, probably XaviX 2)
// This DOES NOT look like a 6502 based Xavix / Super Xavix! maybe XaviX 2, the cartridges contain the entire system (CPU,Video,Sound,ROM) so that is possible.
// die is marked "SSD 2002-2004 NEC 800208-51"
// Seems to have 32-bit looking stuff, possible vectors at start?
ROM_START( domfitad )
ROM_REGION( 0x1000000, "bios", ROMREGION_ERASE00 )
ROM_LOAD( "xpfitnessadventure.bin", 0x000000, 0x1000000, CRC(a7917081) SHA1(95ae5dc6e64a78ae060cb0e61d8b0af34a93c4ce) )
ROM_END
ROM_START( dombikec )
ROM_REGION( 0x1000000, "bios", ROMREGION_ERASE00 )
ROM_LOAD( "xpbikeconcept.bin", 0x000000, 0x1000000, CRC(3447fce5) SHA1(c7e9e9cd789a17ac886ecf253f67753213cf8d21) )
ROM_END
// Has SEEPROM and an RTC. Adventure has the string DOMYSSDCOLTD a couple of times.
CONS( 2008, domfitad, 0, 0, xavix2002_i2c_jmat, xavixp, xavix_i2c_jmat_state, init_xavix, "Decathlon / SSD Company LTD", "Domyos Fitness Adventure (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
CONS( 2008, dombikec, 0, 0, xavix2002_i2c_jmat, xavixp, xavix_i2c_jmat_state, init_xavix, "Decathlon / SSD Company LTD", "Domyos Bike Concept (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
// some DIS games run on XaviX 2 instead, see xavix2.cpp for Domyos Fitness Adventure and Domyos Bike Concept

161
src/mame/drivers/xavix2.cpp Normal file
View File

@ -0,0 +1,161 @@
// license:BSD-3-Clause
// copyright-holders:David Haywood
/******************************************************************************
XaviX 2
unknown architecture, does not appear to be 6502 derived like XaviX / SuperXaviX
die is marked "SSD 2002-2004 NEC 800208-51"
*******************************************************************************/
#include "emu.h"
#include "screen.h"
#include "emupal.h"
#include "softlist.h"
#include "speaker.h"
class xavix2_state : public driver_device
{
public:
xavix2_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_screen(*this, "screen")
, m_palette(*this, "palette")
, m_gfxdecode(*this, "gfxdecode")
{ }
void xavix2(machine_config &config);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
required_device<gfxdecode_device> m_gfxdecode;
};
uint32_t xavix2_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
return 0;
}
void xavix2_state::machine_start()
{
}
void xavix2_state::machine_reset()
{
}
static INPUT_PORTS_START( xavix2 )
INPUT_PORTS_END
static const gfx_layout charlayout =
{
8,8,
RGN_FRAC(1,1),
4,
{ STEP4(0,1) },
{ 1*4,0*4,3*4,2*4,5*4,4*4,7*4,6*4 },
{ STEP8(0,4*8) },
8*8*4
};
static const gfx_layout char16layout =
{
16,16,
RGN_FRAC(1,1),
4,
{ STEP4(0,1) },
{ 1*4,0*4,3*4,2*4,5*4,4*4,7*4,6*4, 9*4,8*4,11*4,10*4,13*4,12*4,15*4,14*4 },
{ STEP16(0,4*16) },
16*16*4
};
static const gfx_layout charlayout8bpp =
{
8,8,
RGN_FRAC(1,1),
8,
{ STEP8(0,1) },
{ STEP8(0,8) },
{ STEP8(0,8*8) },
8*8*8
};
static const gfx_layout char16layout8bpp =
{
16,16,
RGN_FRAC(1,1),
8,
{ STEP8(0,1) },
{ STEP16(0,8) },
{ STEP16(0,16*8) },
16*16*8
};
static GFXDECODE_START( gfx_xavix )
GFXDECODE_ENTRY( "maincpu", 0, charlayout, 0, 16 )
GFXDECODE_ENTRY( "maincpu", 0, char16layout, 0, 16 )
GFXDECODE_ENTRY( "maincpu", 0, charlayout8bpp, 0, 1 )
GFXDECODE_ENTRY( "maincpu", 0, char16layout8bpp, 0, 1 )
GFXDECODE_END
void xavix2_state::xavix2(machine_config &config)
{
// unknown CPU 'SSD 2002-2004 NEC 800208-51'
SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500));
m_screen->set_screen_update(FUNC(xavix2_state::screen_update));
m_screen->set_size(32*8, 32*8);
m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_xavix);
PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 256);
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
// unknown sound hardware
}
ROM_START( ltv_naru )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD( "naruto.bin", 0x000000, 0x800000, CRC(e3465ad2) SHA1(13e3d2de5d5a084635cab158f3639a1ea73265dc) )
ROM_END
ROM_START( domfitad )
ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD( "xpfitnessadventure.bin", 0x000000, 0x1000000, CRC(a7917081) SHA1(95ae5dc6e64a78ae060cb0e61d8b0af34a93c4ce) )
ROM_END
ROM_START( dombikec )
ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD( "xpbikeconcept.bin", 0x000000, 0x1000000, CRC(3447fce5) SHA1(c7e9e9cd789a17ac886ecf253f67753213cf8d21) )
ROM_END
CONS( 2006, ltv_naru, 0, 0, xavix2, xavix2, xavix2_state, empty_init, "Bandai / SSD Company LTD", "Let's TV Play Naruto", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
// These are for the 'Domyos Interactive System' other Domyos Interactive System games can be found in xavix.cpp (the SoC is inside the cartridge, base acts as a 'TV adapter' only)
// Has SEEPROM and an RTC. Adventure has the string DOMYSSDCOLTD a couple of times.
CONS( 2008, domfitad, 0, 0, xavix2, xavix2, xavix2_state, empty_init, "Decathlon / SSD Company LTD", "Domyos Fitness Adventure (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
CONS( 2008, dombikec, 0, 0, xavix2, xavix2, xavix2_state, empty_init, "Decathlon / SSD Company LTD", "Domyos Bike Concept (Domyos Interactive System)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )

View File

@ -190,7 +190,6 @@ protected:
required_device<screen_device> m_screen;
required_device<address_map_bank_device> m_lowbus;
address_space* m_cpuspace;
uint8_t m_extbusctrl[3];
private:
@ -263,8 +262,6 @@ private:
}
}
DECLARE_READ8_MEMBER(extintrf_790x_r);
DECLARE_WRITE8_MEMBER(extintrf_790x_w);
DECLARE_READ8_MEMBER(ioevent_enable_r);
DECLARE_WRITE8_MEMBER(ioevent_enable_w);
@ -577,8 +574,12 @@ private:
protected:
optional_device<xavix2002_io_device> m_xavix2002io;
// additional SuperXaviX / XaviX2002 stuff
uint8_t m_extbusctrl[3];
virtual DECLARE_READ8_MEMBER(extintrf_790x_r);
virtual DECLARE_WRITE8_MEMBER(extintrf_790x_w);
// additional SuperXaviX / XaviX2002 stuff
uint8_t m_sx_extended_extbus[3];
DECLARE_WRITE8_MEMBER(extended_extbus_reg0_w);
@ -763,9 +764,26 @@ protected:
}
}
// TODO, use callbacks?
virtual DECLARE_READ8_MEMBER(extintrf_790x_r) override
{
return xavix_state::extintrf_790x_r(space,offset,mem_mask);
}
virtual DECLARE_WRITE8_MEMBER(extintrf_790x_w) override
{
xavix_state::extintrf_790x_w(space,offset,data, mem_mask);
if (offset < 3)
{
if (m_cartslot->has_cart())
m_cartslot->write_bus_control(space,offset,data,mem_mask);
}
};
virtual uint8_t extbus_r(offs_t offset) override
{
if (m_extbusctrl[1] & 0x08)
if (m_cartslot->has_cart() && m_cartslot->is_read_access_not_rom())
{
logerror("%s: read from external bus %06x (SEEPROM READ?)\n", machine().describe_context(), offset);
return m_cartslot->read_extra(*m_cpuspace, offset);
@ -791,7 +809,7 @@ protected:
}
virtual void extbus_w(offs_t offset, uint8_t data) override
{
if (m_extbusctrl[0] & 0x08)
if (m_cartslot->has_cart() && m_cartslot->is_write_access_not_rom())
{
logerror("%s: write to external bus %06x %02x (SEEPROM WRITE?)\n", machine().describe_context(), offset, data);
return m_cartslot->write_extra(*m_cpuspace, offset, data);

View File

@ -13280,6 +13280,7 @@ bang // (c) 1998 - Ref ???
bangj // (c) 1999 - Ref ???
play2000 // (c) 1999 - Ref ???
play2000a // (c) 1999 - Ref ???
play2000b // (c) 1999 - Ref ???
maniacsq // (c) 1996 - Ref 940411
maniacsqa // (c) 1996 - Ref 940411
maniacsqu // (c) 1996 - Ref 940411 - (unprotected)
@ -38668,6 +38669,7 @@ jak_dora //
jak_disf //
jak_sith //
jak_sdoo //
jak_dbz //
vii // KenSingTon / Jungle Soft / Siatronics Vii
wrlshunt // Wireless: Hunting Video Game System
wirels60 // Wireless 60
@ -39846,6 +39848,7 @@ ekaraa //
ekaraj //
ekarag //
ekaraphs //
epitch //
ddrfammt //
popira //
taikodp //
@ -39864,6 +39867,9 @@ xavmusic //
domfitex //
domfitch //
domdance //
@source:xavix2.cpp
ltv_naru //
domfitad //
dombikec //

View File

@ -862,6 +862,7 @@ x1.cpp
x1twin.cpp
x68k.cpp
xavix.cpp
xavix2.cpp
xbox.cpp
xerox820.cpp
xor100.cpp