mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
A few fixes to DSP LLE, added prologue and epilogue infrastructure (not working yet). Fixed if in Initializing the inst. table.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2837 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -1025,7 +1025,7 @@ void madd(const UDSPInstruction& opc)
|
||||
prod += (s64)dsp_get_ax_l(sreg) * (s64)dsp_get_ax_h(sreg) * GetMultiplyModifier();
|
||||
dsp_set_long_prod(prod);
|
||||
}
|
||||
|
||||
|
||||
void lsr16(const UDSPInstruction& opc)
|
||||
{
|
||||
u8 areg = (opc.hex >> 8) & 0x1;
|
||||
@ -1379,8 +1379,18 @@ void msubc(const UDSPInstruction& opc)
|
||||
dsp_set_long_prod(prod);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void srs(const UDSPInstruction& opc)
|
||||
{
|
||||
u8 reg = ((opc.hex >> 8) & 0x7) + 0x18;
|
||||
u16 addr = (s8)opc.hex;
|
||||
dsp_dmem_write(addr, g_dsp.r[reg]);
|
||||
}
|
||||
|
||||
void lrs(const UDSPInstruction& opc)
|
||||
{
|
||||
u8 reg = ((opc.hex >> 8) & 0x7) + 0x18;
|
||||
u16 addr = (s8) opc.hex;
|
||||
g_dsp.r[reg] = dsp_dmem_read(addr);
|
||||
}
|
||||
|
||||
};
|
||||
|
Reference in New Issue
Block a user