mirror of
https://github.com/holub/mame
synced 2025-05-23 14:19:01 +03:00
PSX:
Fixed DICR handling. [smf] Removed non existant root counter 3 IRQ. [smf] Ignore root counter stop when reset is also set. [smf] Konami 573: Removed custom root counters. [smf] DS2401 Fixed timer intervals. [smf] New games added or promoted from NOT_WORKING status --------------------------------------------------- Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB) [smf] new not working game -------------------- GunMania (GL906 VER. JAA) [smf] Fighting Mania (QG918 VER. EAA) [smf] Fighting Mania (QG918 VER. AAA) [smf] Punch Mania: Hokuto No Ken (GQ918 VER. JAB) [smf] Punch Mania: Hokuto No Ken (GQ918 VER. JAB, ALT CD) [smf] Fighting Mania (QG918 VER. KAA) [smf] Fighting Mania (QG918 VER. UAA) [smf] Punch Mania 2: Hokuto No Ken (GQA09 JAA) [smf] DrumMania 4th Mix (G*A25 VER. JAA) [smf] DrumMania 5th Mix (G*B05 VER. JAA) [smf] Guitar Freaks 7th Mix (G*B17 VER. JAA) [smf] Martial Beat (Martial Beat (G*B47 VER. JBA) [smf] DrumMania 7th Mix power-up ver. (G*C07 VER. JBA) [smf] DrumMania 7th Mix (G*C07 VER. JAA) [smf] Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA) [smf] Guitar Freaks 8th Mix (G*C08 VER. JAA) [smf] DrumMania 8th Mix (G*C38 VER. JAA) [smf] Guitar Freaks 9th Mix (G*C39 VER. JAA) [smf] DrumMania 9th Mix (G*D09 VER. JAA) [smf] Guitar Freaks 10th Mix (G*D10 VER. JAB) [smf] Guitar Freaks 10th Mix (G*D10 VER. JAA) [smf] Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA) [smf] DrumMania 10th Mix (G*D40 VER. JAA) [smf]
This commit is contained in:
parent
504da3edb8
commit
518a1b74a2
@ -49,11 +49,11 @@ ds2401_device::ds2401_device(running_machine &_machine, const ds2401_device_conf
|
|||||||
|
|
||||||
void ds2401_device::device_start()
|
void ds2401_device::device_start()
|
||||||
{
|
{
|
||||||
t_samp = attotime::from_usec( 15);
|
t_samp = attotime::from_usec( 30);
|
||||||
t_rdv = attotime::from_usec( 15);
|
t_rdv = attotime::from_usec( 30);
|
||||||
t_rstl = attotime::from_usec(480);
|
t_rstl = attotime::from_usec(480);
|
||||||
t_pdh = attotime::from_usec( 15);
|
t_pdh = attotime::from_usec( 30);
|
||||||
t_pdl = attotime::from_usec( 60);
|
t_pdl = attotime::from_usec(120);
|
||||||
|
|
||||||
save_item(NAME(state));
|
save_item(NAME(state));
|
||||||
save_item(NAME(bit));
|
save_item(NAME(bit));
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -286,17 +286,10 @@ static void dma_interrupt_update( psx_machine *p_psx )
|
|||||||
p_psx->n_dicr |= 0x80000000;
|
p_psx->n_dicr |= 0x80000000;
|
||||||
psx_irq_set( p_psx->machine, PSX_IRQ_DMA );
|
psx_irq_set( p_psx->machine, PSX_IRQ_DMA );
|
||||||
}
|
}
|
||||||
else if( ( p_psx->n_dicr & 0x80000000 ) != 0 )
|
|
||||||
{
|
|
||||||
verboselog( p_psx, 2, "dma_interrupt_update( %02x, %02x ) interrupt cleared\n", n_int, n_mask );
|
|
||||||
p_psx->n_dicr &= ~0x80000000;
|
|
||||||
}
|
|
||||||
else if( n_int != 0 )
|
else if( n_int != 0 )
|
||||||
{
|
{
|
||||||
verboselog( p_psx, 2, "dma_interrupt_update( %02x, %02x ) interrupt not enabled\n", n_int, n_mask );
|
verboselog( p_psx, 2, "dma_interrupt_update( %02x, %02x ) interrupt not enabled\n", n_int, n_mask );
|
||||||
}
|
}
|
||||||
|
|
||||||
p_psx->n_dicr &= 0x00ffffff | ( p_psx->n_dicr << 8 );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dma_finished(psx_machine *p_psx, int n_channel)
|
static void dma_finished(psx_machine *p_psx, int n_channel)
|
||||||
@ -536,14 +529,18 @@ WRITE32_HANDLER( psx_dma_w )
|
|||||||
p_psx->n_dpcp = ( p_psx->n_dpcp & ~mem_mask ) | data;
|
p_psx->n_dpcp = ( p_psx->n_dpcp & ~mem_mask ) | data;
|
||||||
break;
|
break;
|
||||||
case 0x1:
|
case 0x1:
|
||||||
if (data & 0x80000000)
|
|
||||||
{
|
p_psx->n_dicr = ( p_psx->n_dicr & ( 0x80000000 | ~mem_mask ) ) |
|
||||||
p_psx->n_dicr = ((p_psx->n_dicr &~ data) & 0xff000000) | (p_psx->n_dicr & 0x00ffffff);
|
( p_psx->n_dicr & ~data & 0x7f000000 & mem_mask ) |
|
||||||
}
|
( data & 0x00ffffff & mem_mask );
|
||||||
p_psx->n_dicr = data & 0x00ffffff;
|
|
||||||
|
if( ( p_psx->n_dicr & 0x80000000 ) != 0 && ( p_psx->n_dicr & 0x7f000000 ) == 0 )
|
||||||
|
{
|
||||||
|
verboselog( p_psx, 2, "dma interrupt cleared\n" );
|
||||||
|
p_psx->n_dicr &= ~0x80000000;
|
||||||
|
}
|
||||||
|
|
||||||
verboselog( p_psx, 1, "psx_dma_w( %04x, %08x, %08x ) dicr -> %08x\n", offset, data, mem_mask, p_psx->n_dicr );
|
verboselog( p_psx, 1, "psx_dma_w( %04x, %08x, %08x ) dicr -> %08x\n", offset, data, mem_mask, p_psx->n_dicr );
|
||||||
dma_interrupt_update(p_psx);
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
verboselog( p_psx, 0, "psx_dma_w( %04x, %08x, %08x ) Unknown dma control register\n", offset, data, mem_mask );
|
verboselog( p_psx, 0, "psx_dma_w( %04x, %08x, %08x ) Unknown dma control register\n", offset, data, mem_mask );
|
||||||
@ -702,7 +699,7 @@ static TIMER_CALLBACK( root_finished )
|
|||||||
if( ( root->n_mode & PSX_RC_IRQOVERFLOW ) != 0 ||
|
if( ( root->n_mode & PSX_RC_IRQOVERFLOW ) != 0 ||
|
||||||
( root->n_mode & PSX_RC_IRQTARGET ) != 0 )
|
( root->n_mode & PSX_RC_IRQTARGET ) != 0 )
|
||||||
{
|
{
|
||||||
psx_irq_set( machine, (n_counter == 3) ? PSX_IRQ_ROOTCOUNTER3 : (PSX_IRQ_ROOTCOUNTER0 << n_counter) );
|
psx_irq_set( machine, PSX_IRQ_ROOTCOUNTER0 << n_counter );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -723,13 +720,15 @@ WRITE32_HANDLER( psx_counter_w )
|
|||||||
case 1:
|
case 1:
|
||||||
root->n_count = root_current( p_psx, n_counter );
|
root->n_count = root_current( p_psx, n_counter );
|
||||||
root->n_start = psxcpu_gettotalcycles(p_psx);
|
root->n_start = psxcpu_gettotalcycles(p_psx);
|
||||||
root->n_mode = data;
|
|
||||||
|
|
||||||
if( ( root->n_mode & PSX_RC_RESET ) != 0 )
|
if( ( data & PSX_RC_RESET ) != 0 )
|
||||||
{
|
{
|
||||||
|
data &= ~( PSX_RC_RESET | PSX_RC_STOP );
|
||||||
root->n_count = 0;
|
root->n_count = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
root->n_mode = data;
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
if( ( data & 0xfca6 ) != 0 ||
|
if( ( data & 0xfca6 ) != 0 ||
|
||||||
( ( data & 0x0100 ) != 0 && n_counter != 0 && n_counter != 1 ) ||
|
( ( data & 0x0100 ) != 0 && n_counter != 0 && n_counter != 1 ) ||
|
||||||
|
@ -3451,8 +3451,9 @@ V-V TP-027
|
|||||||
DRIVER( fbaitmcj ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. JA) */
|
DRIVER( fbaitmcj ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. JA) */
|
||||||
DRIVER( fbaitmca ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. AA) */
|
DRIVER( fbaitmca ) /* 1999 - Fisherman's Bait - Marlin Challenge (GX889 VER. AA) */
|
||||||
DRIVER( ddr2m ) /* 1999 - Dance Dance Revolution 2nd Mix (GN895 VER. JAA) */
|
DRIVER( ddr2m ) /* 1999 - Dance Dance Revolution 2nd Mix (GN895 VER. JAA) */
|
||||||
|
DRIVER( ddr2ml ) /* 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAB) */
|
||||||
|
DRIVER( ddr2mla ) /* 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA) */
|
||||||
DRIVER( ddrbocd ) /* 1999 - Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA) */
|
DRIVER( ddrbocd ) /* 1999 - Dance Dance Revolution Best of Cool Dancers (GE892 VER. JAA) */
|
||||||
DRIVER( ddr2ml ) /* 1999 - Dance Dance Revolution 2nd Mix - Link Ver (GE885 VER. JAA) */
|
|
||||||
DRIVER( ddr2mc ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA) */
|
DRIVER( ddr2mc ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX CLUB VERSiON (GE896 VER. JAA) */
|
||||||
DRIVER( ddr2mc2 ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA) */
|
DRIVER( ddr2mc2 ) /* 1999 - Dance Dance Revolution 2nd Mix with beatmaniaIIDX substream CLUB VERSiON 2 (GE984 VER. JAA) */
|
||||||
DRIVER( gtrfrk2m ) /* 1999 - Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD) */
|
DRIVER( gtrfrk2m ) /* 1999 - Guitar Freaks 2nd Mix Ver 1.01 (GQ883 VER. JAD) */
|
||||||
@ -3474,15 +3475,24 @@ V-V TP-027
|
|||||||
DRIVER( drmn2mpu ) /* 1999 - DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB) */
|
DRIVER( drmn2mpu ) /* 1999 - DrumMania 2nd Mix Session Power Up Kit (GE912 VER. JAB) */
|
||||||
DRIVER( dncfrks ) /* 2000 - Dance Freaks (G*874 VER. KAA) */
|
DRIVER( dncfrks ) /* 2000 - Dance Freaks (G*874 VER. KAA) */
|
||||||
DRIVER( dmx ) /* 2000 - Dance Maniax (G*874 VER. JAA) */
|
DRIVER( dmx ) /* 2000 - Dance Maniax (G*874 VER. JAA) */
|
||||||
|
DRIVER( gunmania ) /* 2000 - GunMania (GL906 VER. JAA) */
|
||||||
|
DRIVER( fghtmn ) /* 2000 - Fighting Mania (QG918 VER. EAA) */
|
||||||
|
DRIVER( fghtmna ) /* 2000 - Fighting Mania (QG918 VER. AAA) */
|
||||||
|
DRIVER( pnchmn ) /* 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB) */
|
||||||
|
DRIVER( pnchmna ) /* 2000 - Punch Mania: Hokuto No Ken (GQ918 VER. JAB, ALT CD) */
|
||||||
|
DRIVER( fghtmnk ) /* 2000 - Fighting Mania (QG918 VER. KAA) */
|
||||||
|
DRIVER( fghtmnu ) /* 2000 - Fighting Mania (QG918 VER. IAA) */
|
||||||
DRIVER( dsem ) /* 2000 - Dancing Stage Euro Mix (G*936 VER. EAA) */
|
DRIVER( dsem ) /* 2000 - Dancing Stage Euro Mix (G*936 VER. EAA) */
|
||||||
DRIVER( gtrfrk3m ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAC) */
|
DRIVER( gtrfrk3m ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAC) */
|
||||||
DRIVER( gtfrk3ma ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAB) */
|
DRIVER( gtfrk3ma ) /* 2000 - Guitar Freaks 3rd Mix (GE949 VER. JAB) */
|
||||||
DRIVER( gtfrk3mb ) /* 2000 - Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02) */
|
DRIVER( gtfrk3mb ) /* 2000 - Guitar Freaks 3rd Mix - security cassette versionup (949JAZ02) */
|
||||||
|
DRIVER( pnchmn2 ) /* 2000 - Punch Mania 2: Hokuto No Ken (GQA09 JAA) */
|
||||||
DRIVER( salarymc ) /* 2000 - Salary Man Champ (G*A18 VER. JAA) */
|
DRIVER( salarymc ) /* 2000 - Salary Man Champ (G*A18 VER. JAA) */
|
||||||
DRIVER( ddr3mp ) /* 2000 - Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA) */
|
DRIVER( ddr3mp ) /* 2000 - Dance Dance Revolution 3rd Mix Plus (G*A22 VER. JAA) */
|
||||||
DRIVER( pcnfrk3m ) /* 2000 - Percussion Freaks 3rd Mix (G*A23 VER. KAA) */
|
DRIVER( pcnfrk3m ) /* 2000 - Percussion Freaks 3rd Mix (G*A23 VER. KAA) */
|
||||||
DRIVER( drmn3m ) /* 2000 - DrumMania 3rd Mix (G*A23 VER. JAA) */
|
DRIVER( drmn3m ) /* 2000 - DrumMania 3rd Mix (G*A23 VER. JAA) */
|
||||||
DRIVER( gtrfrk4m ) /* 2000 - Guitar Freaks 4th Mix (G*A24 VER. JAA) */
|
DRIVER( gtrfrk4m ) /* 2000 - Guitar Freaks 4th Mix (G*A24 VER. JAA) */
|
||||||
|
DRIVER( drmn4m ) /* 2000 - DrumMania 4th Mix (G*A25 VER. JAA) */
|
||||||
DRIVER( ddr4m ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. AAA) */
|
DRIVER( ddr4m ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. AAA) */
|
||||||
DRIVER( ddr4mj ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. JAA) */
|
DRIVER( ddr4mj ) /* 2000 - Dance Dance Revolution 4th Mix (G*A33 VER. JAA) */
|
||||||
DRIVER( ddr4ms ) /* 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. ABA) */
|
DRIVER( ddr4ms ) /* 2000 - Dance Dance Revolution Solo 4th Mix (G*A33 VER. ABA) */
|
||||||
@ -3492,18 +3502,31 @@ V-V TP-027
|
|||||||
DRIVER( ddr4mp ) /* 2000 - Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA) */
|
DRIVER( ddr4mp ) /* 2000 - Dance Dance Revolution 4th Mix Plus (G*A34 VER. JAA) */
|
||||||
DRIVER( ddr4mps ) /* 2000 - Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JAA) */
|
DRIVER( ddr4mps ) /* 2000 - Dance Dance Revolution 4th Mix Plus Solo (G*A34 VER. JAA) */
|
||||||
DRIVER( dmx2m ) /* 2000 - Dance Maniax 2nd Mix (G*A39 VER. JAA) */
|
DRIVER( dmx2m ) /* 2000 - Dance Maniax 2nd Mix (G*A39 VER. JAA) */
|
||||||
DRIVER( fmania ) /* 2000 - Fighting Mania (918 xx B02) */
|
|
||||||
DRIVER( gtrfrk5m ) /* 2001 - Guitar Freaks 5th Mix (G*A26 VER. JAA) */
|
DRIVER( gtrfrk5m ) /* 2001 - Guitar Freaks 5th Mix (G*A26 VER. JAA) */
|
||||||
DRIVER( ddr5m ) /* 2001 - Dance Dance Revolution 5th Mix (G*A27 VER. JAA) */
|
DRIVER( ddr5m ) /* 2001 - Dance Dance Revolution 5th Mix (G*A27 VER. JAA) */
|
||||||
DRIVER( dmx2majp ) /* 2001 - Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA ) */
|
DRIVER( dmx2majp ) /* 2001 - Dance Maniax 2nd Mix Append J-Paradise (G*A38 VER. JAA ) */
|
||||||
DRIVER( mamboagg ) /* 2001 - Mambo A Go-Go (GQA40 VER. JAB) */
|
DRIVER( mamboagg ) /* 2001 - Mambo A Go-Go (GQA40 VER. JAB) */
|
||||||
|
DRIVER( drmn5m ) /* 2001 - DrumMania 5th Mix (G*B05 VER. JAA) */
|
||||||
DRIVER( gtrfrk6m ) /* 2001 - Guitar Freaks 6th Mix (G*B06 VER. JAA) */
|
DRIVER( gtrfrk6m ) /* 2001 - Guitar Freaks 6th Mix (G*B06 VER. JAA) */
|
||||||
DRIVER( gtrfrk7m ) /* 2001 - Guitar Freaks 6th Mix (G*B17 VER. JAA) */
|
DRIVER( drmn6m ) /* 2001 - DrumMania 6th Mix (G*B16 VER. JAA) */
|
||||||
|
DRIVER( gtrfrk7m ) /* 2001 - Guitar Freaks 7th Mix (G*B17 VER. JAA) */
|
||||||
DRIVER( ddrmax ) /* 2001 - DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA) */
|
DRIVER( ddrmax ) /* 2001 - DDR Max - Dance Dance Revolution 6th Mix (G*B19 VER. JAA) */
|
||||||
DRIVER( ddrmax2 ) /* 2002 - DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA) */
|
DRIVER( ddrmax2 ) /* 2002 - DDR Max 2 - Dance Dance Revolution 7th Mix (G*B20 VER. JAA) */
|
||||||
|
DRIVER( mrtlbeat ) /* 2002 - Martial Beat (Martial Beat (G*B47 VER. JBA) */
|
||||||
|
DRIVER( drmn7m ) /* 2002 - DrumMania 7th Mix power-up ver. (G*C07 VER. JBA) */
|
||||||
|
DRIVER( drmn7ma ) /* 2002 - DrumMania 7th Mix (G*C07 VER. JAA) */
|
||||||
|
DRIVER( gtrfrk8m ) /* 2002 - Guitar Freaks 8th Mix power-up ver. (G*C08 VER. JBA) */
|
||||||
|
DRIVER( gtrfrk8ma ) /* 2002 - Guitar Freaks 8th Mix (G*C08 VER. JAA) */
|
||||||
DRIVER( dsem2 ) /* 2002 - Dancing Stage Euro Mix 2 (G*C23 VER. EAA) */
|
DRIVER( dsem2 ) /* 2002 - Dancing Stage Euro Mix 2 (G*C23 VER. EAA) */
|
||||||
DRIVER( ddrextrm ) /* 2002 - Dance Dance Revolution Extreme (G*C36 VER. JAA) */
|
DRIVER( ddrextrm ) /* 2002 - Dance Dance Revolution Extreme (G*C36 VER. JAA) */
|
||||||
|
DRIVER( drmn8m ) /* 2003 - DrumMania 8th Mix (G*C38 VER. JAA) */
|
||||||
|
DRIVER( gtrfrk9m ) /* 2003 - Guitar Freaks 9th Mix (G*C39 VER. JAA) */
|
||||||
|
DRIVER( drmn9m ) /* 2003 - DrumMania 9th Mix (G*D09 VER. JAA) */
|
||||||
|
DRIVER( gtfrk10m ) /* 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAB) */
|
||||||
|
DRIVER( gtfrk10ma ) /* 2003 - Guitar Freaks 10th Mix (G*D10 VER. JAA) */
|
||||||
|
DRIVER( gtfrk10mb ) /* 2003 - Guitar Freaks 10th Mix eAmusement (G*D10 VER. JBA) */
|
||||||
DRIVER( gtfrk11m ) /* 2004 - Guitar Freaks 11th Mix (G*D39 VER. JAA) */
|
DRIVER( gtfrk11m ) /* 2004 - Guitar Freaks 11th Mix (G*D39 VER. JAA) */
|
||||||
|
DRIVER( drmn10m ) /* 2004 - DrumMania 10th Mix (G*D40 VER. JAA) */
|
||||||
|
|
||||||
/* Konami Twinkle games */
|
/* Konami Twinkle games */
|
||||||
DRIVER( gq863 )
|
DRIVER( gq863 )
|
||||||
|
Loading…
Reference in New Issue
Block a user