notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
libretro: improve retro_memory_map
[pcsx_rearmed.git]
/
plugins
/
dfsound
/
registers.c
diff --git
a/plugins/dfsound/registers.c
b/plugins/dfsound/registers.c
index
b862026
..
6d72d3c
100644
(file)
--- a/
plugins/dfsound/registers.c
+++ b/
plugins/dfsound/registers.c
@@
-132,7
+132,7
@@
void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val,
{
\r
//-------------------------------------------------//
\r
case H_SPUaddr:
\r
{
\r
//-------------------------------------------------//
\r
case H_SPUaddr:
\r
- spu.spuAddr = (unsigned
long) val<<
3;
\r
+ spu.spuAddr = (unsigned
int)val <<
3;
\r
//check_irq_io(spu.spuAddr);
\r
break;
\r
//-------------------------------------------------//
\r
//check_irq_io(spu.spuAddr);
\r
break;
\r
//-------------------------------------------------//
\r
@@
-144,8
+144,9
@@
void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val,
break;
\r
//-------------------------------------------------//
\r
case H_SPUctrl:
\r
break;
\r
//-------------------------------------------------//
\r
case H_SPUctrl:
\r
+ spu.spuStat = (spu.spuStat & ~0xbf) | (val & 0x3f) | ((val << 2) & 0x80);
\r
+ spu.spuStat &= ~STAT_IRQ | val;
\r
if (!(spu.spuCtrl & CTRL_IRQ)) {
\r
if (!(spu.spuCtrl & CTRL_IRQ)) {
\r
- spu.spuStat&=~STAT_IRQ;
\r
if (val & CTRL_IRQ)
\r
schedule_next_irq();
\r
}
\r
if (val & CTRL_IRQ)
\r
schedule_next_irq();
\r
}
\r
@@
-153,7
+154,7
@@
void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val,
break;
\r
//-------------------------------------------------//
\r
case H_SPUstat:
\r
break;
\r
//-------------------------------------------------//
\r
case H_SPUstat:
\r
- spu.spuStat=val&0xf800;
\r
+
//
spu.spuStat=val&0xf800;
\r
break;
\r
//-------------------------------------------------//
\r
case H_SPUReverbAddr:
\r
break;
\r
//-------------------------------------------------//
\r
case H_SPUReverbAddr:
\r
@@
-230,6
+231,7
@@
void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val,
log_unhandled("koff1 %04x %d\n", val, cycles - spu.last_keyon_cycles);
\r
val &= ~regAreaGet(H_SPUon1);
\r
}
\r
log_unhandled("koff1 %04x %d\n", val, cycles - spu.last_keyon_cycles);
\r
val &= ~regAreaGet(H_SPUon1);
\r
}
\r
+ do_samples_if_needed(cycles, 0, 2);
\r
SoundOff(0,16,val);
\r
break;
\r
//-------------------------------------------------//
\r
SoundOff(0,16,val);
\r
break;
\r
//-------------------------------------------------//
\r
@@
-239,6
+241,7
@@
void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val,
log_unhandled("koff2 %04x %d\n", val, cycles - spu.last_keyon_cycles);
\r
val &= ~regAreaGet(H_SPUon2);
\r
}
\r
log_unhandled("koff2 %04x %d\n", val, cycles - spu.last_keyon_cycles);
\r
val &= ~regAreaGet(H_SPUon2);
\r
}
\r
+ do_samples_if_needed(cycles, 0, 2);
\r
SoundOff(16,24,val);
\r
break;
\r
//-------------------------------------------------//
\r
SoundOff(16,24,val);
\r
break;
\r
//-------------------------------------------------//
\r
@@
-363,7
+366,7
@@
unsigned short CALLBACK SPUreadRegister(unsigned long reg, unsigned int cycles)
return spu.spuCtrl;
\r
\r
case H_SPUstat:
\r
return spu.spuCtrl;
\r
\r
case H_SPUstat:
\r
- return
(spu.spuStat & ~0x3F) | (spu.spuCtrl & 0x3F)
;
\r
+ return
spu.spuStat
;
\r
\r
case H_SPUaddr:
\r
return (unsigned short)(spu.spuAddr>>3);
\r
\r
case H_SPUaddr:
\r
return (unsigned short)(spu.spuAddr>>3);
\r