bugfixes, test_misc2, checkpc options
[picodrive.git] / cpu / Cyclone / app.h
index e8fb212..f61432f 100644 (file)
@@ -16,30 +16,35 @@ extern int g_lea_cycle_table[];
 extern int g_pea_cycle_table[];\r
 extern int g_movem_cycle_table[];\r
 int Ea_add_ns(int *tab, int ea); // add nonstandard EA cycles\r
-int EaCalc(int a,int mask,int ea,int size,int top=0);\r
-int EaRead(int a,int v,int ea,int size,int mask,int top=0);\r
+int EaCalc(int a,int mask,int ea,int size,int top=0,int sign_extend=1); // 6\r
+int EaRead(int a,int v,int ea,int size,int mask,int top=0,int sign_extend=1); // 7\r
+int EaCalcRead(int r_ea,int r,int ea,int size,int mask,int sign_extend=1); // 6\r
+int EaCalcReadNoSE(int r_ea,int r,int ea,int size,int mask);\r
 int EaCanRead(int ea,int size);\r
-int EaWrite(int a,int v,int ea,int size,int mask,int top=0);\r
+int EaWrite(int a,int v,int ea,int size,int mask,int top=0,int sign_extend_ea=1);\r
 int EaCanWrite(int ea);\r
 int EaAn(int ea);\r
 \r
 // Main.cpp\r
-extern int *CyJump; // Jump table\r
-extern int ms; // If non-zero, output in Microsoft ARMASM format\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 int Cycles; // Current cycles for opcode\r
+extern int  Cycles;   // Current cycles for opcode\r
+extern int  pc_dirty; // something changed PC during processing\r
 void ot(const char *format, ...);\r
 void ltorg();\r
 void CheckInterrupt(int op);\r
-int MemHandler(int type,int size);\r
+int MemHandler(int type,int size,int addrreg=0);\r
+void FlushPC(void);\r
 \r
 // OpAny.cpp\r
+extern int g_op;\r
 int OpGetFlags(int subtract,int xbit,int sprecialz=0);\r
 void OpUse(int op,int use);\r
-void OpStart(int op);\r
-void OpEnd();\r
-int OpBase(int op,int sepa=0);\r
+void OpStart(int op,int sea=0,int tea=0);\r
+void OpEnd(int sea=0,int tea=0);\r
+int OpBase(int op,int size,int sepa=0);\r
 void OpAny(int op);\r
 \r
 //----------------------\r
@@ -93,8 +98,9 @@ int OpMovem(int op);
 int OpMoveq(int op);\r
 int OpMoveUsp(int op);\r
 int OpExg(int op);\r
-int OpMovep(int op); // notaz\r
+int OpMovep(int op);\r
 int OpStopReset(int op);\r
 void SuperCheck(int op);\r
-void SuperEnd(int op);\r
-void SuperChange(int op);\r
+void SuperEnd(void);\r
+void SuperChange(int op,int load_srh=1);\r
+\r