*
* Copyright (C) 1999,99 Drotos Daniel, Talker Bt.
*
- * Written by Karl Bongers karl@turbobit.com
- *
* To contact author send email to drdani@mazsola.iit.uni-miskolc.hu
+ * Other contributors include:
+ * Karl Bongers karl@turbobit.com,
+ * Johan Knol johan.knol@iduna.nl
*
*/
cl_mem *rom;
struct t_regs regs;
+ class cl_mem *sfr, *iram;
+
// for now make it as simple as possible
- TYPE_UBYTE mem_direct[1024*2];
-#ifndef WORDS_BIGENDIAN
- TYPE_UWORD *wmem_direct; /* word pointer at mem_direct */
-#endif
+// TYPE_UBYTE mem_direct[1024*2];
+//#ifndef WORDS_BIGENDIAN
+// TYPE_UWORD *wmem_direct; /* word pointer at mem_direct */
+//#endif
public:
cl_xa(class cl_sim *asim);
virtual int init(void);
virtual char *id_string(void);
+ virtual class cl_mem *mk_mem(enum mem_class type, char *class_name);
virtual t_addr get_mem_size(enum mem_class type);
virtual void mk_hw_elements(void);
virtual struct dis_entry *dis_tbl(void);
+ virtual struct name_entry *sfr_tbl(void);
+ virtual struct name_entry *bit_tbl(void);
+ virtual char *get_dir_name(short);
+ virtual char *get_bit_name(short);
+
virtual int inst_length(t_addr addr);
virtual int inst_branch(t_addr addr);
virtual int longest_inst(void);
virtual int exec_inst(void);
virtual int get_reg(int word_flag, unsigned int index);
+ virtual void store1(t_addr addr, unsigned char val);
+ virtual void store2(t_addr addr, unsigned short val);
+ virtual unsigned char get1(t_addr addr);
+ virtual unsigned short get2(t_addr addr);
+
+ virtual bool get_bit(int bit);
+ virtual void set_bit(int bit, int value);
+
#include "instcl.h"
private :