00001
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef _DESA68_H_
00032 #define _DESA68_H_
00033
00034 #ifdef __cplusplus
00035 extern "C" {
00036 #endif
00037
00038 #ifndef EMU68DEBUG
00039 #define EMU68DEBUG
00040 #endif
00041
00078 #define DESA68_SYMBOL_FLAG (1<<0)
00079
00092 #define DESA68_INST (1<<0)
00093
00095 #define DESA68_BRA (1<<1)
00096
00098 #define DESA68_BSR (1<<2)
00099
00101 #define DESA68_RTS (1<<3)
00102
00104 #define DESA68_INT (1<<4)
00105
00107 #define DESA68_NOP (1<<5)
00108
00127 typedef struct
00128 {
00129
00137 unsigned char *mem;
00138 unsigned int memmsk;
00142 unsigned int pc;
00143 int flags;
00144 char *str;
00145 int strmax;
00151 unsigned int immsym_min;
00156 unsigned int immsym_max;
00157
00168 unsigned int ea_src;
00170 unsigned int ea_dst;
00172 unsigned int status;
00181 unsigned int branch;
00183 int w;
00185 char *s;
00186
00196 int reg0;
00197 int reg9;
00198 int mode3;
00199 int mode6;
00200 int opsz;
00201 int line;
00202 int adrmode0;
00203 int adrmode6;
00204 int szchar;
00205 unsigned int ea;
00206
00209 } DESA68parm_t;
00210
00211
00216 void desa68(DESA68parm_t *d);
00217
00222 #ifdef __cplusplus
00223 }
00224 #endif
00225
00226 #endif