Force 16bit address for absolute-indirect-x-indexed in 65816 mode.
should fix issue #1846 (and hopefully not break anything :))
This commit is contained in:
@@ -1298,7 +1298,7 @@ static void EmitCode (EffAddr* A)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
if (CPU == CPU_65816 && (A->AddrModeBit & (AM65_ABS | AM65_ABS_X | AM65_ABS_Y))) {
|
if (CPU == CPU_65816 && (A->AddrModeBit & (AM65_ABS | AM65_ABS_X | AM65_ABS_Y | AM65_ABS_X_IND))) {
|
||||||
/* This is a 16 bit mode that uses an address. If in 65816,
|
/* This is a 16 bit mode that uses an address. If in 65816,
|
||||||
** mode, force this address into 16 bit range to allow
|
** mode, force this address into 16 bit range to allow
|
||||||
** addressing inside a 64K segment.
|
** addressing inside a 64K segment.
|
||||||
|
|||||||
Reference in New Issue
Block a user