- igs/igs_m027_033vid.cpp: fixed bitplane order in decode. Fixes colors [David Haywood]

- igs/spoker.cpp: fixed bitplane order in jinhulu2's decode. Fixes colors [David Haywood]

New working clones
------------------
Xingyun Man Guan (China, V651C, set 2) [little0]

New systems marked not working
------------------------------
Chaoji Daheng 6th (v100FI) [little0]
Chao Ji Laizi Dou Dizhu (V109CN) [little0]

New clones marked not working
-----------------------------
Jin Hu Lu 2 (v101IS) [little0]
This commit is contained in:
Ivan Vangelista 2025-03-17 18:13:22 +01:00
parent daedf2ff31
commit b3c6dfc93f
5 changed files with 157 additions and 36 deletions

View File

@ -126,6 +126,7 @@ public:
void init_drgnwrldv11h() ATTR_COLD;
void init_lhb2() ATTR_COLD;
void init_xymg() ATTR_COLD;
void init_xymga() ATTR_COLD;
void init_drgnwrldv10c() ATTR_COLD;
void init_drgnwrldv20j() ATTR_COLD;
void init_drgnwrldv40k() ATTR_COLD;
@ -137,6 +138,7 @@ public:
void tygn(machine_config &config) ATTR_COLD;
void wlcc(machine_config &config) ATTR_COLD;
void xymg(machine_config &config) ATTR_COLD;
void xymga(machine_config &config) ATTR_COLD;
void lhb2(machine_config &config) ATTR_COLD;
void lhb(machine_config &config) ATTR_COLD;
void drgnwrld_igs012(machine_config &config) ATTR_COLD;
@ -283,7 +285,9 @@ protected:
void nkishusp_mem(address_map &map) ATTR_COLD;
void tygn_mem(address_map &map) ATTR_COLD;
void wlcc_mem(address_map &map) ATTR_COLD;
void xymg_base_mem(address_map &map) ATTR_COLD;
void xymg_mem(address_map &map) ATTR_COLD;
void xymga_mem(address_map &map) ATTR_COLD;
};
// With trackball inputs
@ -2451,6 +2455,28 @@ void igs011_state::init_xymg()
*/
}
void igs011_state::init_xymga()
{
u16 *src = (u16 *) m_maincpu_region->base();
const int rom_size = 0x80000;
for (int i = 0; i < rom_size / 2; i++)
{
u16 x = src[i];
if ((i & 0x2300) == 0x2100 || ((i & 0x2000) == 0x0000 && ((i & 0x0300) != 0x0200) && ((i & 0x0300) != 0x0100)))
x ^= 0x0200;
if (!(i & 0x0004) || !(i & 0x2000) || (!(i & 0x0080) && !(i & 0x0010)))
x ^= 0x0020;
if ((i & 0x0100) || (i & 0x0040) || ((i & 0x0010) && (i & 0x0002)))
x ^= 0x0004;
src[i] = x;
}
}
void igs011_state::init_wlcc()
{
// u16 *rom = (u16 *) m_maincpu_region->base();
@ -2732,7 +2758,7 @@ void igs011_state::lhb_mem(address_map &map)
map(0x888000, 0x888001).r(FUNC(igs011_state::dips_r<5>));
}
void igs011_state::xymg_mem(address_map &map)
void igs011_state::xymg_base_mem(address_map &map)
{
map(0x000000, 0x07ffff).rom();
@ -2754,8 +2780,6 @@ void igs011_state::xymg_mem(address_map &map)
map(0x400000, 0x400fff).rw(m_palette, FUNC(palette_device::read8), FUNC(palette_device::write8)).umask16(0x00ff).share("palette");
map(0x401000, 0x401fff).rw(m_palette, FUNC(palette_device::read8_ext), FUNC(palette_device::write8_ext)).umask16(0x00ff).share("palette_ext");
map(0x600001, 0x600001).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x700000, 0x700001).w(FUNC(igs011_state::igs003_w));
map(0x700002, 0x700003).rw(FUNC(igs011_state::xymg_igs003_r), FUNC(igs011_state::xymg_igs003_w));
map(0x820000, 0x820001).w(FUNC(igs011_state::igs011_priority_w));
map(0x840000, 0x840001).w(FUNC(igs011_state::dips_w));
@ -2774,6 +2798,23 @@ void igs011_state::xymg_mem(address_map &map)
map(0x888000, 0x888001).r(FUNC(igs011_state::dips_r<3>));
}
void igs011_state::xymg_mem(address_map &map)
{
xymg_base_mem(map);
map(0x700000, 0x700001).w(FUNC(igs011_state::igs003_w));
map(0x700002, 0x700003).rw(FUNC(igs011_state::xymg_igs003_r), FUNC(igs011_state::xymg_igs003_w));
}
void igs011_state::xymga_mem(address_map &map)
{
xymg_base_mem(map);
map(0x700000, 0x700001).portr("COIN");
map(0x700002, 0x700005).r(FUNC(igs011_state::lhb_inputs_r));
map(0x700002, 0x700003).w(FUNC(igs011_state::lhb_inputs_w));
}
void igs011_state::wlcc_mem(address_map &map)
{
// wlcc: IGS011 protection dynamically mapped at 834x
@ -4129,6 +4170,13 @@ void igs011_state::xymg(machine_config &config)
}
void igs011_state::xymga(machine_config &config)
{
xymg(config);
m_maincpu->set_addrmap(AS_PROGRAM, &igs011_state::xymga_mem);
}
void igs011_state::lhb2(machine_config &config)
{
igs011_base(config);
@ -4963,6 +5011,20 @@ ROM_START( xymg )
ROM_CONTINUE( 0x00000, 0x80000 ) // 1ST+2ND IDENTICAL
ROM_END
// this is very similar to the ryukobou PCB type. Below the Oki there's an empty space for an IGS003. Only SW1 and SW2 are populated.
ROM_START( xymga )
ROM_REGION( 0x80000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "rom.u30", 0x000000, 0x80000, CRC(ecc871fb) SHA1(b5a0e5ef9e6097548c5b26a4638b8618900a37ff) )
ROM_REGION( 0x280000, "blitter", 0 )
ROM_LOAD( "rom.u15", 0x000000, 0x200000, CRC(ec54452c) SHA1(0ee7ffa3d4845af083944e64faf5a1c78247aaa2) )
ROM_LOAD( "igs_0203.u8", 0x200000, 0x080000, BAD_DUMP CRC(56a2706f) SHA1(98bf4b3153eef53dd449e2538b4b7ff2cc2fe6fa) ) // not dumped yet, using the one for xymg for now
ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs_s0202.u39", 0x000000, 0x80000, CRC(106ac5f7) SHA1(5796a880c3424e3d2251b2223a0e594957afecaf) ) // same as xymg, only without 1st and 2nd half identical
ROM_END
} // anonymous namespace
@ -4987,7 +5049,8 @@ GAME( 1995, dbc, lhb, lhb, lhb, igs011_state, i
GAME( 1995, ryukobou, lhb, lhb, lhb, igs011_state, init_ryukobou, ROT0, "IGS / Alta", "Mahjong Ryukobou (Japan, V030J)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, lhb2, 0, lhb2, lhb2, igs011_state, init_lhb2, ROT0, "IGS", "Lung Fu Bong II (Hong Kong, V185H)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, tygn, lhb2, tygn, tygn, igs011_state, init_tygn, ROT0, "IGS", "Te Yi Gong Neng (China, V632C)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING ) // needs correct IGS003 routines
GAME( 1996, xymg, 0, xymg, xymg, igs011_state, init_xymg, ROT0, "IGS", "Xingyun Man Guan (China, V651C)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, xymg, 0, xymg, xymg, igs011_state, init_xymg, ROT0, "IGS", "Xingyun Man Guan (China, V651C, set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, xymga, xymg, xymga, xymg, igs011_state, init_xymga, ROT0, "IGS", "Xingyun Man Guan (China, V651C, set 2)", MACHINE_SUPPORTS_SAVE ) // different encryption and without IGS003
GAME( 1996, wlcc, xymg, wlcc, wlcc, igs011_state, init_wlcc, ROT0, "IGS", "Wanli Changcheng (China, V638C)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, vbowl, 0, vbowl, vbowl, vbowl_state, init_vbowl, ROT0, "IGS", "Virtua Bowling (World, V101XCM)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )
GAME( 1996, vbowlj, vbowl, vbowl, vbowlj, vbowl_state, init_vbowlj, ROT0, "IGS / Alta", "Virtua Bowling (Japan, V100JCM)", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_SOUND )

View File

@ -17,8 +17,6 @@ TODO:
- IGS 033 appears to encapsulate the behavior of the video/interface chip found in igspoker.cpp
so could be turned into a device, possibly shared
- complete inputs / outputs / hopper
- colors are wrong if cards are used (enter Test Mode, press Hold 3, enter pw, press Start,
press Hold 3, change 4th setting in the right column, press Bet, press Start)
*/
#include "emu.h"
@ -314,7 +312,7 @@ static const gfx_layout tiles8x8x4_layout =
8, 8,
RGN_FRAC(1,1),
4,
{ 24,16,8,0 },
{ 24, 8, 16, 0 },
{ 0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
32*8
@ -435,4 +433,4 @@ void igs_m027_033vid_state::init_qiji6()
***************************************************************************/
// internal ROM date is 2002, external software revision could be later
GAME( 2002, qiji6, 0, m027_033vid, qiji6, igs_m027_033vid_state, init_qiji6, ROT0, "IGS", "Qiji 6 (V118CN)", MACHINE_IMPERFECT_COLORS | MACHINE_NOT_WORKING ) // lacks hopper support
GAME( 2002, qiji6, 0, m027_033vid, qiji6, igs_m027_033vid_state, init_qiji6, ROT0, "IGS", "Qiji 6 (V118CN)", MACHINE_NOT_WORKING ) // lacks hopper support

View File

@ -29,10 +29,10 @@
- Verify LEDs and coin counters (should be ok)
- 3super8 randomly crashes
- 3super8 doesn't have the 8x32 tilemap, change the video emulation accordingly
- jinhulu2 stops at "system is connecting". Some type of link feature?
- jinhulu2 has wrong colors and machine translated DIP definitions which
could use improving. Inputs in the "SERVICE" port seem to register two different
buttons
- jinhulu2 and jinhulu2101is stop at "system is connecting".
Some type of link feature?
- jinhulu2120gi has machine translated DIP definitions which could use improving.
Inputs in the "SERVICE" port seem to register two different buttons.
***************************************************************************/
@ -173,6 +173,7 @@ public:
void init_jinhulu2() ATTR_COLD;
void init_jinhulu2120gi() ATTR_COLD;
void init_jinhulu2101is() ATTR_COLD;
protected:
virtual void machine_start() override ATTR_COLD;
@ -1462,7 +1463,7 @@ static const gfx_layout layout_8x8x4 =
8, 8,
RGN_FRAC(1, 1),
4,
{ 0, 8, 16, 24 },
{ 24, 8, 16, 0 },
{ STEP8(0, 1) },
{ STEP8(0, 8*4) },
8*8*4
@ -2037,6 +2038,30 @@ ROM_START( jinhulu2120gi )
ROM_LOAD( "sp.u12", 0x00000, 0x20000, CRC(1aeb078c) SHA1(9b8a256f51e66733c4ec30b451ca0711ed02318e) ) // same as jinhulu2
ROM_END
ROM_START( jinhulu2101is ) // this sports an IGS033 instead of the IGS001/002 combo
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "rom.u15", 0x00000, 0x10000, CRC(5fccf97f) SHA1(71f4c58baf1461b4c1a24d718ad372cb5dcdf970) )
ROM_REGION( 0x40000, "tiles", 0 )
ROM_LOAD( "t3101.u9", 0x00000, 0x40000, BAD_DUMP CRC(b933ec01) SHA1(72b541579551114f7c8649c2e9a839ef4128fc14) ) // not dumped yet, using the one for jinhulu2 for now
ROM_IGNORE( 0x40000 )
ROM_REGION( 0x40000, "oki", 0 )
ROM_LOAD( "rom.u16", 0x00000, 0x20000, CRC(1aeb078c) SHA1(9b8a256f51e66733c4ec30b451ca0711ed02318e) ) // same as jinhulu2
ROM_END
ROM_START( cjdh6 ) // this, too, sports an IGS033 instead of the IGS001/002 combo
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "rom.u15", 0x00000, 0x10000, CRC(318489c3) SHA1(c00f5f16308da5a813045c319bec8e275155642d) )
ROM_REGION( 0x40000, "tiles", 0 )
ROM_LOAD( "t3101.u9", 0x00000, 0x40000, BAD_DUMP CRC(b933ec01) SHA1(72b541579551114f7c8649c2e9a839ef4128fc14) ) // not dumped yet, using the one for jinhulu2 for now
ROM_IGNORE( 0x40000 )
ROM_REGION( 0x40000, "oki", 0 )
ROM_LOAD( "rom.u16", 0x00000, 0x20000, CRC(1aeb078c) SHA1(9b8a256f51e66733c4ec30b451ca0711ed02318e) ) // same as jinhulu2
ROM_END
/***************************************************************************
Driver Init
***************************************************************************/
@ -2091,6 +2116,17 @@ void jinhulu2_state::init_jinhulu2120gi()
if ((a & 0x0280) == 0x0200) rom[a] ^= 0x40;
}
void jinhulu2_state::init_jinhulu2101is()
{
init_jinhulu2();
uint8_t *rom = memregion("maincpu")->base();
// extra layer
for (int a = 0; a < 0xf000; a++)
if ((a & 0x0220) == 0x0200) rom[a] ^= 0x40;
}
void spoker_state::init_spk116it()
{
uint8_t *rom = memregion("maincpu")->base();
@ -2186,23 +2222,25 @@ void spoker_state::init_3super8()
Game Drivers
***************************************************************************/
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
GAME( 1996, spk306us, 0, spokeru, spoker, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v306US)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk205us, spk306us, spokeru, spoker, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v205US)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk203us, spk306us, spokeru, spk203us, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v203US)", MACHINE_SUPPORTS_SAVE ) // LS1. 8 203US in test mode
GAME( 1996, spk201ua, spk306us, spokeru, spk201ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v201UA)", MACHINE_SUPPORTS_SAVE ) // still shows 200UA in test mode
GAME( 1996, spk200ua, spk306us, spokeru, spk200ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v200UA)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk200, spk306us, spoker, spk100, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v200)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk130, spk306us, spoker, spk130, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v130)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk120in, spk306us, spoker, spoker, spoker_state, init_spk120in, ROT0, "IGS", "Super Poker (v120IN)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk116it, spk306us, spoker, spoker, spoker_state, init_spk116it, ROT0, "IGS", "Super Poker (v116IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk116itmx, spk306us, spoker, spoker, spoker_state, init_spk114it, ROT0, "IGS", "Super Poker (v116IT-MX)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk115it, spk306us, spoker, spoker, spoker_state, init_spk116it, ROT0, "IGS", "Super Poker (v115IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk114it, spk306us, spoker, spk114it, spoker_state, init_spk114it, ROT0, "IGS", "Super Poker (v114IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk102ua, spk306us, spokeru, spk102ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v102UA)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk102u, spk306us, spoker, spk102ua, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v102U)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk100, spk306us, spoker, spk100, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v100)", MACHINE_SUPPORTS_SAVE )
GAME( 1993?, 3super8, 0, _3super8, 3super8, spoker_state, init_3super8, ROT0, "<unknown>", "3 Super 8 (Italy)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // ROMs are badly dumped
GAME( 1997, jbell, 0, jb, jb, jb_state, init_spokeru, ROT0, "IGS", "Jingle Bell (v200US)", MACHINE_SUPPORTS_SAVE )
GAME( 1995, jinhulu2, 0, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2, ROT0, "IGS", "Jin Hu Lu 2 (v412GS)", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // tries to link to something?
GAME( 1995, jinhulu2120gi, jinhulu2, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2120gi, ROT0, "IGS", "Jin Hu Lu 2 (v120GI)", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // inputs
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
GAME( 1996, spk306us, 0, spokeru, spoker, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v306US)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk205us, spk306us, spokeru, spoker, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v205US)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk203us, spk306us, spokeru, spk203us, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v203US)", MACHINE_SUPPORTS_SAVE ) // LS1. 8 203US in test mode
GAME( 1996, spk201ua, spk306us, spokeru, spk201ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v201UA)", MACHINE_SUPPORTS_SAVE ) // still shows 200UA in test mode
GAME( 1996, spk200ua, spk306us, spokeru, spk200ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v200UA)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk200, spk306us, spoker, spk100, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v200)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk130, spk306us, spoker, spk130, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v130)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk120in, spk306us, spoker, spoker, spoker_state, init_spk120in, ROT0, "IGS", "Super Poker (v120IN)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk116it, spk306us, spoker, spoker, spoker_state, init_spk116it, ROT0, "IGS", "Super Poker (v116IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk116itmx, spk306us, spoker, spoker, spoker_state, init_spk114it, ROT0, "IGS", "Super Poker (v116IT-MX)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk115it, spk306us, spoker, spoker, spoker_state, init_spk116it, ROT0, "IGS", "Super Poker (v115IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk114it, spk306us, spoker, spk114it, spoker_state, init_spk114it, ROT0, "IGS", "Super Poker (v114IT)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk102ua, spk306us, spokeru, spk102ua, spokeru_state, init_spokeru, ROT0, "IGS", "Super Poker (v102UA)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk102u, spk306us, spoker, spk102ua, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v102U)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, spk100, spk306us, spoker, spk100, spoker_state, init_spk100, ROT0, "IGS", "Super Poker (v100)", MACHINE_SUPPORTS_SAVE )
GAME( 1993?, 3super8, 0, _3super8, 3super8, spoker_state, init_3super8, ROT0, "<unknown>", "3 Super 8 (Italy)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // ROMs are badly dumped
GAME( 1997, jbell, 0, jb, jb, jb_state, init_spokeru, ROT0, "IGS", "Jingle Bell (v200US)", MACHINE_SUPPORTS_SAVE )
GAME( 1995, jinhulu2, 0, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2, ROT0, "IGS", "Jin Hu Lu 2 (v412GS)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // tries to link to something?
GAME( 1995, jinhulu2120gi, jinhulu2, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2120gi, ROT0, "IGS", "Jin Hu Lu 2 (v120GI)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // inputs
GAME( 1996, jinhulu2101is, jinhulu2, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2101is, ROT0, "IGS", "Jin Hu Lu 2 (v101IS)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // tries to link to something?
GAME( 2001, cjdh6, 0, jinhulu2, jinhulu2, jinhulu2_state, init_jinhulu2120gi, ROT0, "IGS", "Chaoji Daheng 6th (v100FI)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // no GFX ROM dump, inputs

View File

@ -20498,6 +20498,7 @@ vbowlhk
vbowlj
wlcc
xymg
xymga
@source:igs/igs017.cpp
cpoker2
@ -20855,8 +20856,10 @@ kov3hd101
@source:igs/spoker.cpp
3super8
cjdh6
jbell
jinhulu2
jinhulu2101is
jinhulu2120gi
spk100
spk102u
@ -43259,6 +43262,7 @@ venteta
@source:skeleton/vgame.cpp
cjdn
cjlddz
cjsjh
hilice
mjxy2

View File

@ -168,6 +168,8 @@ ROM_START( mjxy2 )
ROM_REGION( 0x200000, "oki", 0 )
ROM_LOAD( "u43_sp_v105.u43", 0x000000, 0x200000, CRC(5d1ab8f1) SHA1(56473b632dfdb210208ce3b35cb6861f07861cd7) )
// EEPROM dump for mjxy2 was 0xff filled
ROM_END
/*
@ -274,13 +276,28 @@ ROM_START( cjsjh ) // Nov 2 2007 16:05:26 string in ROM
ROM_LOAD( "vxxxcn.u8", 0x000000, 0x200000, CRC(911d8dce) SHA1(1d9386c4a9e118d02b5b29f9e9ce90ef1d6f419f) ) // label not readable
ROM_REGION( 0x400000, "gfx", 0 )
ROM_LOAD( "gfx.u2", 0x000000, 0x400000, CRC(e2964db3) SHA1(21e021c88136083445b430c618a8eb74e2147d4f ) ) // FIXED BITS (xxxxxxxx0xxxxxxx)
ROM_LOAD( "gfx.u2", 0x000000, 0x400000, CRC(e2964db3) SHA1(21e021c88136083445b430c618a8eb74e2147d4f) ) // FIXED BITS (xxxxxxxx0xxxxxxx)
ROM_REGION( 0x200000, "oki", 0 )
ROM_LOAD( "sp.u24", 0x000000, 0x200000, CRC(ad11c8b9) SHA1(0547a57ff2183e65fa1d51234799a3d521b018c5) )
ROM_REGION( 0x200, "eeprom", 0 )
ROM_LOAD( "cjsjh_93c66a.u11", 0x000, 0x200, CRC(cbaeab4f) SHA1(505d91ee1b0d219aa55e3262b3bf712c4d9c2408) )
ROM_REGION16_BE( 0x200, "eeprom", 0 )
ROM_LOAD16_WORD_SWAP( "cjsjh_93c66a.u11", 0x000, 0x200, CRC(cbaeab4f) SHA1(505d91ee1b0d219aa55e3262b3bf712c4d9c2408) )
ROM_END
ROM_START( cjlddz )
ROM_REGION( 0x200000, "maincpu", 0 )
ROM_LOAD( "u12.u12", 0x000000, 0x200000, CRC(b35ff3cb) SHA1(fe1fa4448153a449f28b776ef452be860d119e7b) )
ROM_REGION( 0x800000, "gfx", 0 )
ROM_LOAD16_BYTE( "u2_cg_v101.u2", 0x000000, 0x400000, CRC(37eec9f9) SHA1(c0fcce6ccf28583920eae2558133a5ba2e1fb68b) ) // FIXED BITS (xxxxxxxx0xxxxxxx)
ROM_LOAD16_BYTE( "u8_cg_v101.u8", 0x000001, 0x400000, CRC(eb3ccdf1) SHA1(f0420f967d4decda3643975205eacdb8c0536bef) ) // FIXED BITS (xxxxxxxx0xxxxxxx)
ROM_REGION( 0x200000, "oki", 0 )
ROM_LOAD( "u43_sp_v100.u43", 0x000000, 0x200000, CRC(ec57f98b) SHA1(ada7e8248d6d9fbd3b3b5caaad45ea814f09edd6) )
ROM_REGION16_BE( 0x200, "eeprom", 0 )
ROM_LOAD16_WORD_SWAP( "cjlddz_93c66a.u13", 0x000, 0x200, CRC(3930b2ff) SHA1(69e1e7b8654ff3696ab7f210fa69a5aed9cb59fb) )
ROM_END
@ -321,3 +338,4 @@ GAME( 200?, hilice, 0, vgame, hilice, vgame_state, init_vgame, ROT0, "VGame", "
GAME( 200?, mjxy2, 0, vgame, hilice, vgame_state, init_vgame, ROT0, "VGame", "Majiang Xueyuan 2 - Mahjong School (V108TW)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2008, cjdn, 0, vgame, hilice, vgame_state, init_vgame, ROT0, "VGame", "Chao Ji Dou Niu (V305CN)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2007, cjsjh, 0, vgame, hilice, vgame_state, init_vgame, ROT0, "VGame", "Chao Ji Sai Jin Hua (V201CN)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 200?, cjlddz, 0, vgame, hilice, vgame_state, init_vgame, ROT0, "VGame", "Chao Ji Laizi Dou Dizhu (V109CN)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )