license info at top of Cyclone source files
[cyclone68000.git] / Cyclone / app.h
CommitLineData
6003a768 1\r
619b1824 2// This file is part of the Cyclone 68000 Emulator\r
3\r
4// This code is licensed under the GNU General Public License version 2.0 and the MAME License.\r
5// You can choose the license that has the most advantages for you.\r
6\r
7// SVN repository can be found at http://code.google.com/p/cyclone68000/\r
8\r
6003a768 9#include <stdio.h>\r
10#include <stdarg.h>\r
11#include <stdlib.h>\r
12#include <string.h>\r
13\r
14// Disa.c\r
15#include "../Pico/Disa.h"\r
16\r
17// Ea.cpp\r
18int EaCalc(int a,int mask,int ea,int size);\r
19int EaRead(int a,int v,int ea,int size,int top=0);\r
20int EaCanRead(int ea,int size);\r
21int EaWrite(int a,int v,int ea,int size,int top=0);\r
22int EaCanWrite(int ea);\r
23\r
24// Main.cpp\r
25extern int *CyJump; // Jump table\r
26extern int ms; // If non-zero, output in Microsoft ARMASM format\r
27extern char *Narm[4]; // Normal ARM Extensions for operand sizes 0,1,2\r
28extern char *Sarm[4]; // Sign-extend ARM Extensions for operand sizes 0,1,2\r
29extern int Cycles; // Current cycles for opcode\r
30extern int Amatch; // If one, try to match A68K timing\r
31extern int Accu; // Accuracy\r
32extern int Debug; // Debug info\r
33void ot(char *format, ...);\r
34void ltorg();\r
35void CheckInterrupt();\r
36int MemHandler(int type,int size);\r
37\r
38// OpAny.cpp\r
39int OpGetFlags(int subtract,int xbit);\r
40void OpUse(int op,int use);\r
41void OpFirst();\r
42void OpStart(int op);\r
43void OpEnd();\r
44int OpBase(int op);\r
45void OpAny(int op);\r
46\r
47//----------------------\r
48// OpArith.cpp\r
49int OpArith(int op);\r
50int OpLea(int op);\r
51int OpAddq(int op);\r
52int OpArithReg(int op);\r
53int OpMul(int op);\r
54int OpAbcd(int op);\r
55int OpAritha(int op);\r
56int OpAddx(int op);\r
57int OpCmpEor(int op);\r
58\r
59// OpBranch.cpp\r
60void OpPush32();\r
61void OpPushSr(int high);\r
62int OpTrap(int op);\r
63int OpLink(int op);\r
64int OpUnlk(int op);\r
65int Op4E70(int op);\r
66int OpJsr(int op);\r
67int OpBranch(int op);\r
68int OpDbra(int op);\r
69\r
70// OpLogic.cpp\r
71int OpBtstReg(int op);\r
72int OpBtstImm(int op);\r
73int OpNeg(int op);\r
74int OpSwap(int op);\r
75int OpTst(int op);\r
76int OpExt(int op);\r
77int OpSet(int op);\r
78int OpAsr(int op);\r
79int OpAsrEa(int op);\r
80\r
81// OpMove.cpp\r
82int OpMove(int op);\r
83int OpLea(int op);\r
84void OpFlagsToReg(int high);\r
85void OpRegToFlags(int high);\r
86int OpMoveSr(int op);\r
87int OpArithSr(int op);\r
88int OpPea(int op);\r
89int OpMovem(int op);\r
90int OpMoveq(int op);\r
91int OpMoveUsp(int op);\r
92int OpExg(int op);\r