NeoGeo Update from Johnboy

(Guru, can you check that ms5pcb you have, the roms in MAME are now marked as NO DUMP)

Updated Neo-Geo game pcb infos
2020bba: Marked MVS and AES version
sonicwi2: Added correct sized v2
kof95 / kof95a:
	. Renamed kof95 to kof95h
	. Renamed p1 to correct chip label
	. Added note
	. Renamed kof95a to kof95
	. Renamed p1
samsho3 / samsho3a:
	. Renamed samsho3a to samsho3
	. Renamed samsho3 to samsho3h
	. Renamed p1 to correct chip label
	. Marked AES version
kof98 / kof98n:
	. Renamed m1 in kof98 to correct chip label
	. Renamed m1 in kof98n to correct chip label
	  (kof98n should be latest revision, cart had very high SN 1xx.xxx)
kof97: Marked MVS version
samsho5 / samsho5h:
	. Correct text layer size
	. Marked samsho5h AES version
neogeo:
	. Updated system set to what is found on NEO-MVH MV1FS
	. Added note
ms5pcb:
	. Hooked up bios dip
	. Renamed bios to correct chip label
	. Renamed p1 / p2 to correct chip label, marked NO_DUMP
	. Added note
This commit is contained in:
davidhay 2008-09-26 20:41:47 +00:00
parent ef10dec73f
commit c423c47d14
5 changed files with 564 additions and 419 deletions

File diff suppressed because it is too large Load Diff

View File

@ -61,6 +61,7 @@ void kf2k3pcb_gfx_decrypt(running_machine *machine);
void kf2k3pcb_decrypt_68k(running_machine *machine);
void kf2k3pcb_decrypt_s1data(running_machine *machine);
void kof2003_decrypt_68k(running_machine *machine);
void kof2003h_decrypt_68k(running_machine *machine);
void kof2003biosdecode(running_machine *machine);
void samsh5p_decrypt_68k(running_machine *machine);
@ -117,6 +118,7 @@ void kof2k3up_px_decrypt(running_machine *machine);
void kof2k3up_install_protection(running_machine *machine);
void kf2k3pl_install_protection(running_machine *machine);
void samsh5bl_px_decrypt(running_machine *machine);
void samsh5bl_vx_decrypt(running_machine *machine);
/*----------- defined in video/neogeo.c -----------*/

View File

@ -998,4 +998,13 @@ void samsh5bl_px_decrypt( running_machine *machine )
free( buf );
}
void samsh5bl_vx_decrypt( running_machine *machine )
{
int vx_size = memory_region_length( machine, "ym" );
UINT8 *rom = memory_region( machine, "ym" );
int i;
for( i = 0; i < vx_size; i++ )
rom[ i ] = BITSWAP8( rom[ i ], 0, 1, 5, 4, 3, 2, 6, 7 );
}

View File

@ -1246,6 +1246,53 @@ void kof2003_decrypt_68k(running_machine *machine)
}
void kof2003h_decrypt_68k(running_machine *machine)
{
static const UINT8 xor1[0x20] = { 0xc2, 0x4b, 0x74, 0xfd, 0x0b, 0x34, 0xeb, 0xd7, 0x10, 0x6d, 0xf9, 0xce, 0x5d, 0xd5, 0x61, 0x29, 0xf5, 0xbe, 0x0d, 0x82, 0x72, 0x45, 0x0f, 0x24, 0xb3, 0x34, 0x1b, 0x99, 0xea, 0x09, 0xf3, 0x03 };
static const UINT8 xor2[0x20] = { 0x2b, 0x09, 0xd0, 0x7f, 0x51, 0x0b, 0x10, 0x4c, 0x5b, 0x07, 0x70, 0x9d, 0x3e, 0x0b, 0xb0, 0xb6, 0x54, 0x09, 0xe0, 0xcc, 0x3d, 0x0d, 0x80, 0x99, 0x87, 0x03, 0x90, 0x82, 0xfe, 0x04, 0x20, 0x18 };
int i;
int ofst;
int rom_size = 0x900000;
UINT8 *rom = memory_region( machine, "main" );
UINT8 *buf = malloc_or_die( rom_size );
for (i = 0; i < 0x100000; i++)
{
rom[ 0x800000 + i ] ^= rom[ 0x100002 | BYTE_XOR_LE(i) ];
}
for( i = 0; i < 0x100000; i++)
{
rom[ i ] ^= xor1[ (BYTE_XOR_LE(i) % 0x20) ];
}
for( i = 0x100000; i < 0x800000; i++)
{
rom[ i ] ^= xor2[ (BYTE_XOR_LE(i) % 0x20) ];
}
for( i = 0x100000; i < 0x800000; i += 4)
{
UINT16 rom16;
rom16 = rom[BYTE_XOR_LE(i+1)] | rom[BYTE_XOR_LE(i+2)]<<8;
rom16 = BITSWAP16( rom16, 15, 14, 13, 12, 10, 11, 8, 9, 6, 7, 4, 5, 3, 2, 1, 0 );
rom[BYTE_XOR_LE(i+1)] = rom16&0xff;
rom[BYTE_XOR_LE(i+2)] = rom16>>8;
}
for( i = 0; i < 0x0100000 / 0x10000; i++ )
{
ofst = (i & 0xf0) + BITSWAP8((i & 0x0f), 7, 6, 5, 4, 1, 0, 3, 2);
memcpy( &buf[ i * 0x10000 ], &rom[ ofst * 0x10000 ], 0x10000 );
}
for( i = 0x100000; i < 0x900000; i += 0x100)
{
ofst = (i & 0xf000ff) + ((i & 0x000f00) ^ 0x00400) + (BITSWAP8( ((i & 0x0ff000) >> 12), 6, 7, 4, 5, 0, 1, 2, 3 ) << 12);
memcpy( &buf[ i ], &rom[ ofst ], 0x100 );
}
memcpy (&rom[0x000000], &buf[0x000000], 0x100000);
memcpy (&rom[0x100000], &buf[0x800000], 0x100000);
memcpy (&rom[0x200000], &buf[0x100000], 0x700000);
free( buf );
}
void kof2003biosdecode(running_machine *machine)
{
static const UINT8 address[0x80]={

View File

@ -5668,11 +5668,11 @@ BOMULEUL CHAJARA SEGA ST-V 1997/04/11
DRIVER( pbobblen ) /* 0083 (c) 1994 Taito */
DRIVER( pbobblna ) /* 0083 (c) 1994 Taito */
DRIVER( kof95 ) /* 0084 (c) 1995 SNK */
DRIVER( kof95a ) /* 0084 (c) 1995 SNK */
DRIVER( kof95h ) /* 0084 (c) 1995 SNK */
/* 0085 Shinsetsu Samurai Spirits Bushidoretsuden / Samurai Shodown RPG (CD only) */
DRIVER( tws96 ) /* 0086 (c) 1996 Tecmo */
DRIVER( samsho3 ) /* 0087 (c) 1995 SNK */
DRIVER( samsho3a ) /* 0087 (c) 1995 SNK */
DRIVER( samsho3h ) /* 0087 (c) 1995 SNK */
DRIVER( fswords ) /* Korean hack of samsho3 */
DRIVER( stakwin ) /* 0088 (c) 1995 Saurus */
DRIVER( pulstar ) /* 0089 (c) 1995 Aicom */
@ -5810,6 +5810,7 @@ BOMULEUL CHAJARA SEGA ST-V 1997/04/11
DRIVER( samsho5b ) /* bootleg */
DRIVER( kf2k3pcb ) /* 0271 (c) 2003 Playmore - JAMMA PCB */
DRIVER( kof2003 ) /* 0271 (c) 2003 Playmore */
DRIVER( kof2003h ) /* 0271 (c) 2003 Playmore */
DRIVER( kf2k3bl ) /* bootleg */
DRIVER( kf2k3bla ) /* bootleg */
DRIVER( kf2k3pl ) /* bootleg */