mirror of
https://github.com/holub/mame
synced 2025-06-20 03:06:39 +03:00
cps3.cpp: remove "imperfect graphics" flag, improve save states, fix eeprom size, document known issues
This commit is contained in:
parent
29d24080c0
commit
e26914f3a3
@ -40,6 +40,14 @@ void cps3_sound_device::device_start()
|
||||
{
|
||||
/* Allocate the stream */
|
||||
m_stream = stream_alloc(0, 2, clock() / 384);
|
||||
|
||||
save_item(NAME(m_key));
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
save_item(NAME(m_voice[i].regs), i);
|
||||
save_item(NAME(m_voice[i].pos), i);
|
||||
save_item(NAME(m_voice[i].frac), i);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -13,28 +13,37 @@ Sound emulation by Philip Bennett
|
||||
|
||||
SCSI code by ElSemi
|
||||
|
||||
To-Do/Issues:
|
||||
Known Issues:
|
||||
|
||||
Street Fighter 3 2nd Impact uses flipped tilemaps during flashing, emulate this.
|
||||
Tilemap Global X/Y flip not emulated
|
||||
Street Fighter 3 2nd Impact uses Y-flipped tilemaps during flashing.
|
||||
Warzard uses X-flipped tilemaps during special effects.
|
||||
|
||||
Sprite-list caching (presumable)
|
||||
Warzard 2p mode, at next screen after characters select,
|
||||
if holding player's button to speed up sequence - player's sprites will be distorted.
|
||||
|
||||
Miscellaneous TO-DOs:
|
||||
|
||||
DMA ack IRQ10 generation:
|
||||
Character and Palette DMAs speed is unknown, needs to be measured.
|
||||
|
||||
Alpha Blending Effects
|
||||
These are actually palette manipulation effects, not true blending. How the values are used is
|
||||
not currently 100% understood. They are incorrect if you use player 2 in Warzard
|
||||
These are actually palette manipulation effects, not true blending.
|
||||
Verify them, current emulation might not be 100% accurate.
|
||||
|
||||
Linezoom
|
||||
Is it used in games? May be enabled in jojo/jojoba dev.menu BG test (P2 btn4)
|
||||
Tilemap Linezoom
|
||||
Seems unused in games. May be enabled in jojo/jojoba dev.menu BG test (P2 btn4)
|
||||
|
||||
Palette DMA effects
|
||||
Verify them, they might not be 100% accurate at the moment
|
||||
|
||||
Verify Full Screen Zoom on real hardware
|
||||
Which is which, x & y registers, how far can it zoom etc.
|
||||
How far can it zoom etc.
|
||||
|
||||
Verify CRT registers
|
||||
Only SFIII2 changes them, for widescreen mode. What other modes are possible?
|
||||
Actual Pixel clock for H Start and H Blank registers is unknown. It is not known which is base pixel clock
|
||||
and how it affected by register 40C0080 bits.
|
||||
|
||||
Sprite positioning glitches
|
||||
Some sprites are still in the wrong places, seems the placement of zooming sprites is imperfect
|
||||
@ -42,8 +51,7 @@ Sprite positioning glitches
|
||||
the same occurs in the sf games. doesn't look like the origin is correct when zooming in all cases.
|
||||
|
||||
Gaps in Sprite Zooming
|
||||
probably caused by use of drawgfx instead of processing as a single large sprite, but could also be due to the
|
||||
positioning of each part of the sprite. Warzard is confirmed to have gaps during some cut-scenes on real hardware.
|
||||
Warzard is confirmed to have gaps during some cut-scenes on real hardware.
|
||||
|
||||
---
|
||||
|
||||
@ -962,6 +970,7 @@ void cps3_state::set_mame_colours(int colournum, u16 data, u32 fadeval)
|
||||
data = (data & 0x8000) | (r << 0) | (g << 5) | (b << 10);
|
||||
}
|
||||
|
||||
colournum &= 0x1ffff;
|
||||
m_colourram[colournum] = data;
|
||||
|
||||
m_mame_colours[colournum] = rgb_t(pal5bit(r), pal5bit(g), pal5bit(b));
|
||||
@ -973,6 +982,7 @@ void cps3_state::set_mame_colours(int colournum, u16 data, u32 fadeval)
|
||||
void cps3_state::video_start()
|
||||
{
|
||||
m_char_ram = make_unique_clear<u32[]>(0x800000/4);
|
||||
m_mame_colours = make_unique_clear<u32[]>(0x20000);
|
||||
m_ss_ram = make_unique_clear<u8[]>(0x8000);
|
||||
|
||||
/* create the char set (gfx will then be updated dynamically from RAM) */
|
||||
@ -982,8 +992,6 @@ void cps3_state::video_start()
|
||||
m_gfxdecode->set_gfx(1, std::make_unique<gfx_element>(m_palette, cps3_tiles16x16_layout, (u8 *)m_char_ram.get(), 0, m_palette->entries() / 64, 0));
|
||||
m_gfxdecode->gfx(1)->set_granularity(64);
|
||||
|
||||
m_mame_colours = make_unique_clear<u32[]>(0x80000/2);
|
||||
|
||||
m_screenwidth = 384;
|
||||
|
||||
// the renderbuffer can be twice the size of the screen, this allows us to handle framebuffer zoom values
|
||||
@ -994,13 +1002,8 @@ void cps3_state::video_start()
|
||||
|
||||
m_renderbuffer_bitmap.fill(0x3f, m_renderbuffer_clip);
|
||||
|
||||
save_item(NAME(m_ppu_gscroll));
|
||||
save_item(NAME(m_ss_hscroll));
|
||||
save_item(NAME(m_ss_vscroll));
|
||||
save_item(NAME(m_ss_pal_base));
|
||||
|
||||
save_pointer(NAME(m_char_ram), 0x800000/4);
|
||||
save_pointer(NAME(m_mame_colours), 0x80000/2);
|
||||
save_pointer(NAME(m_mame_colours), 0x20000);
|
||||
save_pointer(NAME(m_ss_ram), 0x8000);
|
||||
}
|
||||
|
||||
@ -1191,7 +1194,7 @@ u32 cps3_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const
|
||||
/* these are the sizes to actually draw */
|
||||
u32 const ysizedraw2 = ((value3 & 0x7f000000) >> 24) + 1;
|
||||
u32 const xsizedraw2 = ((value3 & 0x007f0000) >> 16) + 1;
|
||||
//u8 unk = ((value3 & 0x00000300) >> 8); // unknown, 3 - sprites, 0 - tilemaps
|
||||
//u8 unk = ((value3 & 0x00000300) >> 8); // 3 - sprites, 0 - tilemaps, enable X/Y zooms ?
|
||||
s8 ysize2 = ((value3 & 0x0000000c) >> 2);
|
||||
s8 xsize2 = ((value3 & 0x00000003) >> 0);
|
||||
|
||||
@ -2254,8 +2257,8 @@ TIMER_DEVICE_CALLBACK_MEMBER(cps3_state::dma_interrupt)
|
||||
|
||||
void cps3_state::machine_start()
|
||||
{
|
||||
m_eeprom = std::make_unique<u32[]>(0x400/4);
|
||||
subdevice<nvram_device>("eeprom")->set_base(m_eeprom.get(), 0x400);
|
||||
m_eeprom = std::make_unique<u32[]>(0x80/4);
|
||||
subdevice<nvram_device>("eeprom")->set_base(m_eeprom.get(), 0x80);
|
||||
|
||||
save_item(NAME(m_cram_gfxflash_bank));
|
||||
save_item(NAME(m_cram_bank));
|
||||
@ -2270,8 +2273,12 @@ void cps3_state::machine_start()
|
||||
save_item(NAME(m_chardma_other));
|
||||
save_item(NAME(m_current_table_address));
|
||||
save_item(NAME(m_dma_status));
|
||||
save_item(NAME(m_ppu_gscroll));
|
||||
save_item(NAME(m_ss_hscroll));
|
||||
save_item(NAME(m_ss_vscroll));
|
||||
save_item(NAME(m_ss_pal_base));
|
||||
|
||||
save_pointer(NAME(m_eeprom), 0x400/4);
|
||||
save_pointer(NAME(m_eeprom), 0x80/4);
|
||||
}
|
||||
|
||||
|
||||
@ -2289,6 +2296,8 @@ void cps3_state::device_post_load()
|
||||
{
|
||||
// copy data from flashroms back into user regions + decrypt into regions we execute/draw from.
|
||||
copy_from_nvram();
|
||||
m_gfxdecode->gfx(0)->mark_all_dirty();
|
||||
m_gfxdecode->gfx(1)->mark_all_dirty();
|
||||
}
|
||||
|
||||
|
||||
@ -3839,15 +3848,17 @@ ROM_END
|
||||
|
||||
*****************************************************************************************/
|
||||
|
||||
#define GAME_FLAGS (MACHINE_SUPPORTS_SAVE)
|
||||
|
||||
/* Red Earth / Warzard */
|
||||
|
||||
// 961121
|
||||
GAME( 1996, redearth, 0, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Red Earth (Euro 961121)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1996, warzard, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Warzard (Japan 961121)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1996, redearth, 0, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Red Earth (Euro 961121)", GAME_FLAGS )
|
||||
GAME( 1996, warzard, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Warzard (Japan 961121)", GAME_FLAGS )
|
||||
|
||||
// 961023
|
||||
GAME( 1996, redearthr1, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Red Earth (Euro 961023)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1996, warzardr1, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Warzard (Japan 961023)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1996, redearthr1, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Red Earth (Euro 961023)", GAME_FLAGS )
|
||||
GAME( 1996, warzardr1, redearth, redearth, cps3_re, cps3_state, init_redearth, ROT0, "Capcom", "Warzard (Japan 961023)", GAME_FLAGS )
|
||||
|
||||
/* Street Fighter III: New Generation */
|
||||
|
||||
@ -3858,13 +3869,13 @@ GAME( 1996, warzardr1, redearth, redearth, cps3_re, cps3_state, init_redeart
|
||||
// not dumped
|
||||
|
||||
// 970204
|
||||
GAME( 1997, sfiii, 0, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Euro 970204)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiiu, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (USA 970204)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiia, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiij, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Japan 970204)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiih, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Hispanic 970204)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiin, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204, NO CD, bios set 1)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiiina, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204, NO CD, bios set 2)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1997, sfiii, 0, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Euro 970204)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiiu, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (USA 970204)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiia, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiij, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Japan 970204)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiih, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Hispanic 970204)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiin, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204, NO CD, bios set 1)", GAME_FLAGS )
|
||||
GAME( 1997, sfiiina, sfiii, sfiii, cps3, cps3_state, init_sfiii, ROT0, "Capcom", "Street Fighter III: New Generation (Asia 970204, NO CD, bios set 2)", GAME_FLAGS )
|
||||
|
||||
/* Street Fighter III 2nd Impact: Giant Attack */
|
||||
|
||||
@ -3872,65 +3883,65 @@ GAME( 1997, sfiiina, sfiii, sfiii, cps3, cps3_state, init_sfiii,
|
||||
// not dumped
|
||||
|
||||
// 970930
|
||||
GAMEL(1997, sfiii2, 0, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (USA 970930)", MACHINE_IMPERFECT_GRAPHICS, layout_sfiii2 ) // layout is for widescreen support
|
||||
GAMEL(1997, sfiii2j, sfiii2, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (Japan 970930)", MACHINE_IMPERFECT_GRAPHICS, layout_sfiii2 )
|
||||
GAMEL(1997, sfiii2n, sfiii2, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (Asia 970930, NO CD)", MACHINE_IMPERFECT_GRAPHICS, layout_sfiii2 )
|
||||
GAMEL(1997, sfiii2, 0, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (USA 970930)", GAME_FLAGS, layout_sfiii2 ) // layout is for widescreen support
|
||||
GAMEL(1997, sfiii2j, sfiii2, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (Japan 970930)", GAME_FLAGS, layout_sfiii2 )
|
||||
GAMEL(1997, sfiii2n, sfiii2, sfiii2, cps3, cps3_state, init_sfiii2, ROT0, "Capcom", "Street Fighter III 2nd Impact: Giant Attack (Asia 970930, NO CD)", GAME_FLAGS, layout_sfiii2 )
|
||||
|
||||
/* JoJo's Venture / JoJo no Kimyou na Bouken */
|
||||
|
||||
// 990128
|
||||
GAME( 1998, jojo, 0, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 990128)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojoj, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 990128)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojon, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 990128, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojo, 0, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 990128)", GAME_FLAGS )
|
||||
GAME( 1998, jojoj, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 990128)", GAME_FLAGS )
|
||||
GAME( 1998, jojon, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 990128, NO CD)", GAME_FLAGS )
|
||||
|
||||
// 990108
|
||||
GAME( 1998, jojor1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 990108)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojojr1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 990108)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojonr1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 990108, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojor1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 990108)", GAME_FLAGS )
|
||||
GAME( 1998, jojojr1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 990108)", GAME_FLAGS )
|
||||
GAME( 1998, jojonr1, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 990108, NO CD)", GAME_FLAGS )
|
||||
|
||||
// 981202
|
||||
GAME( 1998, jojor2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 981202)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojojr2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 981202)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojonr2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 981202, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, jojor2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (USA 981202)", GAME_FLAGS )
|
||||
GAME( 1998, jojojr2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo no Kimyou na Bouken (Japan 981202)", GAME_FLAGS )
|
||||
GAME( 1998, jojonr2, jojo, jojo, cps3_jojo, cps3_state, init_jojo, ROT0, "Capcom", "JoJo's Venture (Asia 981202, NO CD)", GAME_FLAGS )
|
||||
|
||||
/* Street Fighter III 3rd Strike: Fight for the Future */
|
||||
|
||||
// 990608
|
||||
GAME( 1999, sfiii3, 0, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Euro 990608)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3u, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (USA 990608)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3j, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990608)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3n, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990608, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3, 0, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Euro 990608)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3u, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (USA 990608)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3j, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990608)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3n, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990608, NO CD)", GAME_FLAGS )
|
||||
|
||||
// 990512
|
||||
GAME( 1999, sfiii3r1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Euro 990512)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3ur1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (USA 990512)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3jr1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990512)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3nr1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990512, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, sfiii3r1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Euro 990512)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3ur1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (USA 990512)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3jr1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990512)", GAME_FLAGS )
|
||||
GAME( 1999, sfiii3nr1, sfiii3, sfiii3, cps3, cps3_state, init_sfiii3, ROT0, "Capcom", "Street Fighter III 3rd Strike: Fight for the Future (Japan 990512, NO CD)", GAME_FLAGS )
|
||||
|
||||
/* JoJo's Bizarre Adventure / JoJo no Kimyou na Bouken: Mirai e no Isan */
|
||||
|
||||
// 990927
|
||||
GAME( 1999, jojoba, 0, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990927)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojoban, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990927, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojobane, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo's Bizarre Adventure (Euro 990927, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojoba, 0, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990927)", GAME_FLAGS )
|
||||
GAME( 1999, jojoban, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990927, NO CD)", GAME_FLAGS )
|
||||
GAME( 1999, jojobane, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo's Bizarre Adventure (Euro 990927, NO CD)", GAME_FLAGS )
|
||||
|
||||
// 990913
|
||||
GAME( 1999, jojobar1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990913)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojobanr1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990913, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojobaner1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo's Bizarre Adventure (Euro 990913, NO CD)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, jojobar1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990913)", GAME_FLAGS )
|
||||
GAME( 1999, jojobanr1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo no Kimyou na Bouken: Mirai e no Isan (Japan 990913, NO CD)", GAME_FLAGS )
|
||||
GAME( 1999, jojobaner1, jojoba, jojoba, cps3_jojo, cps3_state, init_jojoba, ROT0, "Capcom", "JoJo's Bizarre Adventure (Euro 990913, NO CD)", GAME_FLAGS )
|
||||
|
||||
// bootlegs, hold START1 during bootup to change games
|
||||
|
||||
// newest revision, fixes some issues with Warzard decryption.
|
||||
GAME( 1999, cps3boot, 0, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (V4)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3boota, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (V5)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3boot, 0, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (V4)", GAME_FLAGS )
|
||||
GAME( 1999, cps3boota, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (V5)", GAME_FLAGS )
|
||||
|
||||
GAME( 1999, cps3booto, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (older)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3bootao, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (older)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3booto, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (older)", GAME_FLAGS )
|
||||
GAME( 1999, cps3bootao, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (older)", GAME_FLAGS )
|
||||
// this doesn't play 2nd Impact despite it being listed. 2nd Impact uses separate data/code encryption and can't be decrypted cleanly for a standard SH2. Selecting it just flashes in a copy of 3rd Strike with the 2nd Impact loading screen
|
||||
GAME( 1999, cps3booto2, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (oldest) (New Generation, 3rd Strike, JoJo's Venture, JoJo's Bizarre Adventure and Red Earth only)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3booto2, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "CPS3 Multi-game bootleg for HD6417095 type SH2 (oldest) (New Generation, 3rd Strike, JoJo's Venture, JoJo's Bizarre Adventure and Red Earth only)", GAME_FLAGS )
|
||||
// this does not play Red Earth or the 2 Jojo games. New Generation and 3rd Strike have been heavily modified to work with the separate code/data encryption a dead cart / 2nd Impact cart has. Selecting the other games will give an 'invalid CD' message.
|
||||
GAME( 1999, cps3bootao2, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (oldest) (New Generation, 2nd Impact and 3rd Strike only)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3bootao2, cps3boot, sfiii3, cps3, cps3_state, init_sfiii2, ROT0, "bootleg", "CPS3 Multi-game bootleg for dead security cart (oldest) (New Generation, 2nd Impact and 3rd Strike only)", GAME_FLAGS )
|
||||
// these are test bootleg CDs for running 2nd Impact on a standard SH2
|
||||
GAME( 1999, cps3bs32, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "Street Fighter III 2nd Impact: Giant Attack (USA 970930, bootleg for HD6417095 type SH2, V3)", MACHINE_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, cps3bs32a, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "Street Fighter III 2nd Impact: Giant Attack (USA 970930, bootleg for HD6417095 type SH2, older)", MACHINE_IMPERFECT_GRAPHICS ) // older / buggier hack
|
||||
GAME( 1999, cps3bs32, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "Street Fighter III 2nd Impact: Giant Attack (USA 970930, bootleg for HD6417095 type SH2, V3)", GAME_FLAGS )
|
||||
GAME( 1999, cps3bs32a, cps3boot, sfiii3, cps3, cps3_state, init_cps3boot, ROT0, "bootleg", "Street Fighter III 2nd Impact: Giant Attack (USA 970930, bootleg for HD6417095 type SH2, older)", GAME_FLAGS ) // older / buggier hack
|
||||
|
Loading…
Reference in New Issue
Block a user