static int CycloneVer=0x0099; // Version number of library\r
int *CyJump=NULL; // Jump table\r
int ms=USE_MS_SYNTAX; // If non-zero, output in Microsoft ARMASM format\r
-char *Narm[4]={ "b", "h","",""}; // Normal ARM Extensions for operand sizes 0,1,2\r
-char *Sarm[4]={"sb","sh","",""}; // Sign-extend ARM Extensions for operand sizes 0,1,2\r
+const char * const Narm[4]={ "b", "h","",""}; // Normal ARM Extensions for operand sizes 0,1,2\r
+const char * const Sarm[4]={"sb","sh","",""}; // Sign-extend ARM Extensions for operand sizes 0,1,2\r
int Cycles; // Current cycles for opcode\r
int pc_dirty; // something changed PC during processing\r
int arm_op_count;\r
#endif\r
\r
#if EMULATE_ADDRESS_ERRORS_JUMP || EMULATE_ADDRESS_ERRORS_IO\r
-static void AddressErrorWrapper(char rw, char *dataprg, int iw)\r
+static void AddressErrorWrapper(char rw, const char *dataprg, int iw)\r
{\r
ot("ExceptionAddressError_%c_%s%s\n", rw, dataprg, ms?"":":");\r
ot(" ldr r1,[r7,#0x44]\n");\r
static int CycloneMake()\r
{\r
int i;\r
- char *name="Cyclone.s";\r
+ const char *name="Cyclone.s";\r
const char *globl=ms?"export":".global";\r
\r
// Open the assembly file\r
ot(" %s CycloneDoInterrupt\n",globl);\r
ot(" %s CycloneDoTrace\n",globl);\r
ot(" %s CycloneJumpTab\n",globl);\r
+ ot(" %s Op____\n",globl);\r
+ ot(" %s Op6001\n",globl);\r
+ ot(" %s Op6601\n",globl);\r
+ ot(" %s Op6701\n",globl);\r
#endif\r
ot("\n");\r
ot(ms?"CycloneVer dcd 0x":"CycloneVer: .long 0x");\r
int type=0,size=0;\r
int sea=0,tea=0;\r
int use=0;\r
- char *shiftstr="";\r
+ const char *shiftstr="";\r
\r
// Get source and target EA\r
type=(op>>9)&7; if (type==4 || type>=7) return 1;\r
{\r
int use=0;\r
int type=0,size=0,dir=0,rea=0,ea=0;\r
- char *asl="";\r
- char *strop=0;\r
+ const char *asl="";\r
+ const char *strop=0;\r
\r
type=(op>>12)&5;\r
rea =(op>> 9)&7;\r
{\r
int use=0;\r
int type=0,size=0,sea=0,dea=0;\r
- char *asr="";\r
+ const char *asr="";\r
\r
// Suba/Cmpa/Adda/(invalid):\r
type=(op>>13)&3; if (type>=3) return 1;\r
{\r
int use=0;\r
int type=0,size=0,dea=0,sea=0,mem=0;\r
- char *asl="";\r
+ const char *asl="";\r
\r
type=(op>>14)&1;\r
dea =(op>> 9)&7;\r
{\r
int rea=0,eor=0;\r
int size=0,ea=0,use=0;\r
- char *asl="";\r
+ const char *asl="";\r
\r
// Get EA and register EA\r
rea=(op>>9)&7;\r
int OpCmpm(int op)\r
{\r
int size=0,sea=0,dea=0,use=0;\r
- char *asl="";\r
+ const char *asl="";\r
\r
// get size, get EAs\r
size=(op>>6)&3; if (size>=3) return 1;\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
{\r
int cc=0,ea=0;\r
int size=0,use=0,changed_cycles=0;\r
- char *cond[16]=\r
+ static const char * const cond[16]=\r
{\r
"al","", "hi","ls","cc","cs","ne","eq",\r
"vc","vs","pl","mi","ge","lt","gt","le"\r
// Main.cpp\r
extern int *CyJump; // Jump table\r
extern int ms; // If non-zero, output in Microsoft ARMASM format\r
-extern char *Narm[4]; // Normal ARM Extensions for operand sizes 0,1,2\r
-extern char *Sarm[4]; // Sign-extend ARM Extensions for operand sizes 0,1,2\r
+extern const char * const Narm[4]; // Normal ARM Extensions for operand sizes 0,1,2\r
+extern const char * const Sarm[4]; // Sign-extend ARM Extensions for operand sizes 0,1,2\r
extern int Cycles; // Current cycles for opcode\r
extern int pc_dirty; // something changed PC during processing\r
extern int arm_op_count; // for stats\r