OpRegToFlags(high);\r
}\r
\r
-// Pop PC - assumes r11=Memory Base - trashes r0-r3\r
+// Pop PC - trashes r0-r3\r
static void PopPc()\r
{\r
ot(";@ Pop PC:\n");\r
ot(" add r1,r0,#4 ;@ Postincrement A7\n");\r
ot(" str r1,[r7,#0x3c] ;@ Save A7\n");\r
MemHandler(0,2);\r
- ot(" add r0,r0,r11 ;@ Memory Base+PC\n");\r
+ ot(" ldr r1,[r7,#0x60] ;@ Get Memory base\n");\r
+ ot(" add r0,r0,r1 ;@ Memory Base+PC\n");\r
ot("\n");\r
CheckPc();\r
#if EMULATE_ADDRESS_ERRORS_JUMP\r
case 3: // rte\r
OpStart(op,0x10,0,0,1); Cycles=20;\r
PopSr(1);\r
- ot(" ldr r11,[r7,#0x60] ;@ Get Memory base\n");\r
PopPc();\r
ot(" ldr r1,[r7,#0x44] ;@ reload SR high\n");\r
SuperChange(op,1);\r
\r
case 5: // rts\r
OpStart(op,0x10); Cycles=16;\r
- ot(" ldr r11,[r7,#0x60] ;@ Get Memory base\n");\r
PopPc();\r
#if EMULATE_ADDRESS_ERRORS_JUMP\r
ot(" tst r4,#1 ;@ address error?\n");\r
case 7: // rtr\r
OpStart(op,0x10); Cycles=20;\r
PopSr(0);\r
- ot(" ldr r11,[r7,#0x60] ;@ Get Memory base\n");\r
PopPc();\r
#if EMULATE_ADDRESS_ERRORS_JUMP\r
ot(" tst r4,#1 ;@ address error?\n");\r
// --------------------- Opcodes 0x50c8+ ---------------------\r
\r
// ARM version of 68000 condition codes:\r
-static char *Cond[16]=\r
+static const char * const Cond[16]=\r
{\r
"", "", "hi","ls","cc","cs","ne","eq",\r
"vc","vs","pl","mi","ge","lt","gt","le"\r
int size=0,use=0,checkpc=0;\r
int offset=0;\r
int cc=0;\r
- char *asr_r11="";\r
+ const char *asr_r11="";\r
\r
offset=(char)(op&0xff);\r
cc=(op>>8)&15;\r