Fixed 3wondersb [Robbbert]

This commit is contained in:
Robbbert 2015-08-21 11:39:44 +10:00
parent a6242ea367
commit 44e60954cd
2 changed files with 22 additions and 7 deletions

View File

@ -11801,7 +11801,7 @@ GAME( 1991, 3wonders, 0, cps1_10MHz, 3wonders, cps_state, cps1,
GAME( 1991, 3wondersr1, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "Capcom", "Three Wonders (World 910513)", MACHINE_SUPPORTS_SAVE ) // "ETC"
GAME( 1991, 3wondersu, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "Capcom", "Three Wonders (USA 910520)", MACHINE_SUPPORTS_SAVE )
GAME( 1991, wonder3, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "Capcom", "Wonder 3 (Japan 910520)", MACHINE_SUPPORTS_SAVE )
GAME( 1991, 3wondersb, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "bootleg", "Three Wonders (bootleg)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // 910520 - based on World version
GAME( 1991, 3wondersb, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "bootleg", "Three Wonders (bootleg)", MACHINE_SUPPORTS_SAVE ) // 910520 - based on World version
GAME( 1991, 3wondersh, 3wonders, cps1_10MHz, 3wonders, cps_state, cps1, ROT0, "bootleg", "Three Wonders (hack)", MACHINE_SUPPORTS_SAVE ) // 910520 - based on World version
GAME( 1991, kod, 0, cps1_10MHz, kod, cps_state, cps1, ROT0, "Capcom", "The King of Dragons (World 910805)", MACHINE_SUPPORTS_SAVE ) // "ETC"
GAME( 1991, kodr1, kod, cps1_10MHz, kodr1, cps_state, cps1, ROT0, "Capcom", "The King of Dragons (World 910711)", MACHINE_SUPPORTS_SAVE ) // "ETC"
@ -11871,7 +11871,7 @@ GAME( 1992, sf2hfj, sf2hf, cps1_12MHz, sf2j, cps_state, cps1,
GAME( 1993, dino, 0, qsound, dino, cps_state, dino, ROT0, "Capcom", "Cadillacs and Dinosaurs (World 930201)", MACHINE_SUPPORTS_SAVE ) // "ETC"
GAME( 1993, dinou, dino, qsound, dino, cps_state, dino, ROT0, "Capcom", "Cadillacs and Dinosaurs (USA 930201)", MACHINE_SUPPORTS_SAVE )
GAME( 1993, dinoj, dino, qsound, dino, cps_state, dino, ROT0, "Capcom", "Cadillacs: Kyouryuu Shin Seiki (Japan 930201)", MACHINE_SUPPORTS_SAVE )
GAME( 1993, dinohunt, dino, wofhfh, dinoh, cps_state, dinohunt, ROT0, "bootleg", "Dinosaur Hunter (Chinese bootleg of Cadillacs and Dinosaurs)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // 930223 - based on Asia TW version, the original is still undumped
GAME( 1993, dinohunt, dino, wofhfh, dinoh, cps_state, dinohunt, ROT0, "bootleg", "Dinosaur Hunter (Chinese bootleg of Cadillacs and Dinosaurs)", MACHINE_SUPPORTS_SAVE ) // 930223 - based on Asia TW version, the original is still undumped
GAME( 1993, punisher, 0, qsound, punisher, cps_state, punisher, ROT0, "Capcom", "The Punisher (World 930422)", MACHINE_SUPPORTS_SAVE ) // "ETC"
GAME( 1993, punisheru, punisher, qsound, punisher, cps_state, punisher, ROT0, "Capcom", "The Punisher (USA 930422)", MACHINE_SUPPORTS_SAVE )
GAME( 1993, punisherh, punisher, qsound, punisher, cps_state, punisher, ROT0, "Capcom", "The Punisher (Hispanic 930422)", MACHINE_SUPPORTS_SAVE )
@ -11898,10 +11898,10 @@ GAME( 1995, pang3b, pang3, pang3, pang3b, cps_state, pang3b,
/* Home 'CPS Changer' Unit - For MESS */
CONS( 1994, wofch, 0, 0, qsound, wofch, cps_state, wof, "Capcom", "Tenchi wo Kurau II: Sekiheki no Tatakai (CPS Changer, Japan 921031)", 0 )
CONS( 1995, sfzch, 0, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Zero (CPS Changer, Japan 951020)", 0 )
CONS( 1994, wofch, 0, 0, qsound, wofch, cps_state, wof, "Capcom", "Tenchi wo Kurau II: Sekiheki no Tatakai (CPS Changer, Japan 921031)", MACHINE_SUPPORTS_SAVE )
CONS( 1995, sfzch, 0, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Zero (CPS Changer, Japan 951020)", MACHINE_SUPPORTS_SAVE )
// are these 2 legit sets, or did somebody region hack it?
CONS( 1995, sfach, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Alpha: Warriors' Dreams (CPS Changer, Publicity USA 950727)", 0 )
CONS( 1995, sfzbch, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Zero (CPS Changer, Brazil 950727)", 0 )
CONS( 1995, sfach, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Alpha: Warriors' Dreams (CPS Changer, Publicity USA 950727)", MACHINE_SUPPORTS_SAVE )
CONS( 1995, sfzbch, sfzch, 0, cps1_12MHz, sfzch, cps_state, cps1, "Capcom", "Street Fighter Zero (CPS Changer, Brazil 950727)", MACHINE_SUPPORTS_SAVE )
// Ken Sei Mogura: Street Fighter II - see kenseim.c

View File

@ -1477,7 +1477,7 @@ static const struct CPS1config cps1_config_table[]=
{"3wondersr1", CPS_B_21_BT1, mapper_RT24B },
{"3wondersu", CPS_B_21_BT1, mapper_RT24B },
{"wonder3", CPS_B_21_BT1, mapper_RT22B }, // equivalent to RT24B
{"3wondersb", CPS_B_21_BT1, mapper_RT24B },
{"3wondersb", CPS_B_21_BT1, mapper_RT24B, 0x36, 0, 0, 0x88 }, // same as 3wonders except some registers are hard wired rather than written to
{"3wondersh", CPS_B_02 , mapper_RT24B }, /* Not 100% sure of the CPS B-ID */
{"kod", CPS_B_21_BT2, mapper_KD29B, 0x36, 0, 0x34 },
{"kodr1", CPS_B_21_BT2, mapper_KD29B, 0x36, 0, 0x34 },
@ -1950,6 +1950,18 @@ void cps_state::cps1_get_video_base()
scroll2xoff = -0x0b;
scroll3xoff = -0x0c;
}
else
if (m_game_config->bootleg_kludge == 0x88) // 3wondersb
{
scroll1xoff = 0x4;
scroll2xoff = 0x6;
scroll3xoff = 0xa;
m_cps_b_regs[0x30/2] = 0x3f;
m_cps_a_regs[CPS1_VIDEOCONTROL] = 0x3e;
m_cps_a_regs[CPS1_SCROLL2_BASE] = 0x90c0;
m_cps_a_regs[CPS1_SCROLL3_BASE] = 0x9100;
m_cps_a_regs[CPS1_PALETTE_BASE] = 0x9140;
}
m_obj = cps1_base(CPS1_OBJ_BASE, m_obj_size);
m_other = cps1_base(CPS1_OTHER_BASE, m_other_size);
@ -2958,6 +2970,9 @@ UINT32 cps_state::screen_update_cps1(screen_device &screen, bitmap_ind16 &bitmap
if (m_cps_version == 1)
{
if BIT(m_game_config->bootleg_kludge, 7)
cps1_build_palette(cps1_base(CPS1_PALETTE_BASE, m_palette_align));
cps1_render_layer(screen, bitmap, cliprect, l0, 0);
if (l1 == 0)