/tmp/BUILD/sc68-2.2.1/emu68/mem68.h

Go to the documentation of this file.
00001 
00045 /* Copyright (C) 1998-2001 Ben(jamin) Gerard */
00046 
00047 #ifndef _MEM68_H_
00048 #define _MEM68_H_
00049 
00050 #include "emu68/struct68.h"
00051 
00052 #ifdef __cplusplus
00053 extern "C" {
00054 #endif
00055 
00060 #ifdef EMU68DEBUG
00061 # define READ_68      1  
00062 # define WRITTEN_68   2  
00063 # define EXECUTED_68  4  
00064 # define BREAKED_68   8  
00065 #endif
00066 
00075 #define ISIO68(ADDR) ((ADDR)&0x800000)
00076 
00077 extern memrfunc68_t read_mem_jmp_l[256];  
00078 extern memrfunc68_t read_mem_jmp_w[256];  
00079 extern memrfunc68_t read_mem_jmp_b[256];  
00080 extern memwfunc68_t write_mem_jmp_l[256]; 
00081 extern memwfunc68_t write_mem_jmp_w[256]; 
00082 extern memwfunc68_t write_mem_jmp_b[256]; 
00085 
00086 
00091 extern u32 read_68000mem_b(u32 addr); 
00092 extern u32 read_68000mem_w(u32 addr); 
00093 extern u32 read_68000mem_l(u32 addr); 
00095 extern void write_68000mem_b(u32 addr,u32 v); 
00096 extern void write_68000mem_w(u32 addr,u32 v); 
00097 extern void write_68000mem_l(u32 addr,u32 v); 
00099 #define read_B(ADDR) read_68000mem_b(ADDR) 
00100 #define read_W(ADDR) read_68000mem_w(ADDR) 
00101 #define read_L(ADDR) read_68000mem_l(ADDR) 
00104 #define write_B(ADDR,VAL) write_68000mem_b(ADDR,VAL)
00105 
00106 #define write_W(ADDR,VAL) write_68000mem_w(ADDR,VAL)
00107 
00108 #define write_L(ADDR,VAL) write_68000mem_l(ADDR,VAL)
00109 
00117 s32 get_nextw(void);  
00118 s32 get_nextl(void);  
00121 
00122 
00126 void pushl(s32 v);  
00127 void pushw(s32 v);  
00128 s32 popl(void);     
00129 s32 popw(void);     
00131 
00139 void EMU68memory_init(void);
00140 
00147 void EMU68memory_reset(void);
00148 
00157 void EMU68memory_new_area(u8 area,
00158                           memrfunc68_t *read_bwl,
00159                           memwfunc68_t *write_bwl);
00160 
00165 void EMU68memory_reset_area(u8 area);
00166 
00167 
00168 #ifdef __cplusplus
00169 }
00170 #endif
00171 
00172 #endif /* #ifndef _MEM68_H_ */
00173 

Generated on Thu Jul 20 15:04:56 2006 for sc68fordevelopers by  doxygen 1.4.7