mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-06-11 16:49:28 +02:00
DSPLLE - small idleskip improvment for zelda
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5248 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -30,7 +30,7 @@ u8 code_flags[ISPACE];
|
||||
// as well give up its time slice immediately, after executing once.
|
||||
|
||||
// Max signature length is 6. A 0 in a signature is ignored.
|
||||
#define NUM_IDLE_SIGS 7
|
||||
#define NUM_IDLE_SIGS 8
|
||||
#define MAX_IDLE_SIG_SIZE 6
|
||||
|
||||
// 0xFFFF means ignore.
|
||||
@ -65,7 +65,12 @@ const u16 idle_skip_sigs[NUM_IDLE_SIGS][MAX_IDLE_SIG_SIZE + 1] =
|
||||
{ 0x00de, 0xFFFE, // LR $AC0.M, @CMBH
|
||||
0x02c0, 0x8000, // ANDCF $AC0.M, #0x8000
|
||||
0x029c, 0xFFFF, // JLNZ 0x05cf
|
||||
0 }
|
||||
0 },
|
||||
// From Zelda - experimental
|
||||
{ 0x00da, 0x0352, // lr $AX0.H, @0x0352
|
||||
0x8600, // tstaxh $AX0.H
|
||||
0x0295, 0xFFFF, // jz 0x????
|
||||
0, 0 }
|
||||
};
|
||||
|
||||
void Reset()
|
||||
@ -121,7 +126,7 @@ void AnalyzeRange(int start_addr, int end_addr)
|
||||
}
|
||||
if (found)
|
||||
{
|
||||
NOTICE_LOG(DSPLLE, "Idle skip location found at %02x", addr);
|
||||
NOTICE_LOG(DSPLLE, "Idle skip location found at %02x (sigNum:%d)", addr, s+1);
|
||||
code_flags[addr] |= CODE_IDLE_SKIP;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user