DSPLLE: remove the if 0 around SR_MUL_UNSIGNED in hope to figure out why it makes AX games sound bad
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3892 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
9d10f9355d
commit
6a92924636
|
@ -421,7 +421,7 @@ void ldm(const UDSPInstruction& opc)
|
|||
// xxxx xxxx 11dr 11ss
|
||||
void ldnm(const UDSPInstruction& opc)
|
||||
{
|
||||
u8 dreg = (opc.hex >> 5) & 0x1;
|
||||
u8 dreg = (opc.hex >> 5) & 0x1;
|
||||
u8 rreg = (opc.hex >> 4) & 0x1;
|
||||
u8 sreg = opc.hex & 0x3;
|
||||
|
||||
|
|
|
@ -196,7 +196,7 @@ const DSPOPCTemplate opcodes[] =
|
|||
{"ILRR", 0x0210, 0xfefc, DSPInterpreter::ilrr, nop, 1, 2, {{P_ACCM, 1, 0, 8, 0x0100}, {P_PRG, 1, 0, 0, 0x0003}}, false},
|
||||
{"ILRRD", 0x0214, 0xfefc, DSPInterpreter::ilrrd, nop, 1, 2, {{P_ACCM, 1, 0, 8, 0x0100}, {P_PRG, 1, 0, 0, 0x0003}}, false}, // Hermes doesn't list this
|
||||
{"ILRRI", 0x0218, 0xfefc, DSPInterpreter::ilrri, nop, 1, 2, {{P_ACCM, 1, 0, 8, 0x0100}, {P_PRG, 1, 0, 0, 0x0003}}, false},
|
||||
{"ILRRN", 0x022c, 0xfefc, DSPInterpreter::ilrrn, nop, 1, 2, {{P_ACCM, 1, 0, 8, 0x0100}, {P_PRG, 1, 0, 0, 0x0003}}, false},
|
||||
{"ILRRN", 0x021c, 0xfefc, DSPInterpreter::ilrrn, nop, 1, 2, {{P_ACCM, 1, 0, 8, 0x0100}, {P_PRG, 1, 0, 0, 0x0003}}, false},
|
||||
|
||||
// load and store value pointed by indexing reg and increment; LRR/SRR variants
|
||||
{"LRR", 0x1800, 0xff80, DSPInterpreter::lrr, nop, 1, 2, {{P_REG, 1, 0, 0, 0x001f}, {P_PRG, 1, 0, 5, 0x0060}}, false},
|
||||
|
|
|
@ -32,11 +32,10 @@ namespace DSPInterpreter {
|
|||
s64 dsp_multiply_conditional_unsigned(u16 a, u16 b)
|
||||
{
|
||||
s64 prod;
|
||||
#if 0 // Makes AX games sound horrible. TODO: activate and figure out why - it's been verified through DSPSpy :/
|
||||
// FIXME: Makes AX games sound horrible. Verified through DSPSpy :/
|
||||
if (g_dsp.r[DSP_REG_SR] & SR_MUL_UNSIGNED)
|
||||
prod = (u64)a * (u64)b; // won't overflow 32-bits
|
||||
else
|
||||
#endif
|
||||
prod = (s32)(s16)a * (s32)(s16)b; // won't overflow 32-bits
|
||||
|
||||
// Conditionally multiply by 2.
|
||||
|
|
Loading…
Reference in New Issue