mirror of
https://github.com/FunKey-Project/picodrive-irixxxx.git
synced 2026-02-24 02:01:36 +01:00
32x: add other timing hacks
For sdram sync, like NJTE. Still bad, but don't have a better solution for now (or ever?).
This commit is contained in:
parent
31fbc691a1
commit
6c2041fea0
@ -422,6 +422,9 @@ void p32x_sync_other_sh2(SH2 *sh2, unsigned int m68k_target)
|
||||
}
|
||||
}
|
||||
|
||||
#define STEP_LS 24
|
||||
#define STEP_N 440
|
||||
|
||||
#define sync_sh2s_normal p32x_sync_sh2s
|
||||
//#define sync_sh2s_lockstep p32x_sync_sh2s
|
||||
|
||||
@ -451,6 +454,8 @@ void sync_sh2s_normal(unsigned int m68k_target)
|
||||
target = m68k_target;
|
||||
if (event_time_next && CYCLES_GT(target, event_time_next))
|
||||
target = event_time_next;
|
||||
if (CYCLES_GT(target, now + STEP_N))
|
||||
target = now + STEP_N;
|
||||
|
||||
while (CYCLES_GT(target, now))
|
||||
{
|
||||
@ -507,8 +512,6 @@ void sync_sh2s_normal(unsigned int m68k_target)
|
||||
Pico32x.comm_dirty = 0;
|
||||
}
|
||||
|
||||
#define STEP_68K 24
|
||||
|
||||
void sync_sh2s_lockstep(unsigned int m68k_target)
|
||||
{
|
||||
unsigned int mcycles;
|
||||
@ -518,7 +521,7 @@ void sync_sh2s_lockstep(unsigned int m68k_target)
|
||||
mcycles = ssh2.m68krcycles_done;
|
||||
|
||||
while (mcycles < m68k_target) {
|
||||
mcycles += STEP_68K;
|
||||
mcycles += STEP_LS;
|
||||
sync_sh2s_normal(mcycles);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user