Adjust opcode timing as reported by pi1541.
This commit is contained in:
parent
28be1a196d
commit
a33f0f3540
@ -513,7 +513,6 @@ static inline uint32 StackRelativeIndirectIndexed (AccessMode a) // (d,S),Y
|
|||||||
if (a & READ)
|
if (a & READ)
|
||||||
OpenBus = (uint8) (addr >> 8);
|
OpenBus = (uint8) (addr >> 8);
|
||||||
addr = (addr + Registers.Y.W + ICPU.ShiftedDB) & 0xffffff;
|
addr = (addr + Registers.Y.W + ICPU.ShiftedDB) & 0xffffff;
|
||||||
AddCycles(ONE_CYCLE);
|
|
||||||
|
|
||||||
return (addr);
|
return (addr);
|
||||||
}
|
}
|
||||||
|
@ -1406,11 +1406,13 @@ bOP(70Slow, RelativeSlow, CheckOverflow(), 0, CheckEmulation())
|
|||||||
static void Op82 (void)
|
static void Op82 (void)
|
||||||
{
|
{
|
||||||
S9xSetPCBase(ICPU.ShiftedPB + RelativeLong(JUMP));
|
S9xSetPCBase(ICPU.ShiftedPB + RelativeLong(JUMP));
|
||||||
|
AddCycles(ONE_CYCLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Op82Slow (void)
|
static void Op82Slow (void)
|
||||||
{
|
{
|
||||||
S9xSetPCBase(ICPU.ShiftedPB + RelativeLongSlow(JUMP));
|
S9xSetPCBase(ICPU.ShiftedPB + RelativeLongSlow(JUMP));
|
||||||
|
AddCycles(ONE_CYCLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Flag Instructions ******************************************************* */
|
/* Flag Instructions ******************************************************* */
|
||||||
@ -2851,6 +2853,7 @@ static void Op22E1 (void)
|
|||||||
PushW(Registers.PCw - 1);
|
PushW(Registers.PCw - 1);
|
||||||
Registers.SH = 1;
|
Registers.SH = 1;
|
||||||
S9xSetPCBase(addr);
|
S9xSetPCBase(addr);
|
||||||
|
AddCycles(ONE_CYCLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Op22E0 (void)
|
static void Op22E0 (void)
|
||||||
@ -2859,6 +2862,7 @@ static void Op22E0 (void)
|
|||||||
PushB(Registers.PB);
|
PushB(Registers.PB);
|
||||||
PushW(Registers.PCw - 1);
|
PushW(Registers.PCw - 1);
|
||||||
S9xSetPCBase(addr);
|
S9xSetPCBase(addr);
|
||||||
|
AddCycles(ONE_CYCLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Op22Slow (void)
|
static void Op22Slow (void)
|
||||||
@ -2869,6 +2873,7 @@ static void Op22Slow (void)
|
|||||||
if (CheckEmulation())
|
if (CheckEmulation())
|
||||||
Registers.SH = 1;
|
Registers.SH = 1;
|
||||||
S9xSetPCBase(addr);
|
S9xSetPCBase(addr);
|
||||||
|
AddCycles(ONE_CYCLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Op6BE1 (void)
|
static void Op6BE1 (void)
|
||||||
|
Loading…
Reference in New Issue
Block a user