]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - sim/m68hc11/sim-main.h
Remove soft reg hack in the 68hc11 simulator
[thirdparty/binutils-gdb.git] / sim / m68hc11 / sim-main.h
index 8825977c6cb1334556fa4856ebae3fe95e9509af..6b2575c013e63771c2cf1b4f3d98e96864b4d564 100644 (file)
@@ -54,6 +54,18 @@ struct _sim_cpu;
 #include "interrupts.h"
 #include <setjmp.h>
 
+/* Specifies the level of mapping for the IO, EEprom, nvram and external
+   RAM.  IO registers are mapped over everything and the external RAM
+   is last (ie, it can be hidden by everything above it in the list).  */
+enum m68hc11_map_level
+{
+  M6811_IO_LEVEL,
+  M6811_EEPROM_LEVEL,
+  M6811_NVRAM_LEVEL,
+  M6811_RAM_LEVEL
+};
+
+
 #define X_REGNUM       0
 #define D_REGNUM       1
 #define Y_REGNUM        2
@@ -63,15 +75,6 @@ struct _sim_cpu;
 #define B_REGNUM        6
 #define PSW_REGNUM     7
 #define Z_REGNUM        8
-#define FP_REGNUM       9
-#define TMP_REGNUM     10
-#define ZS_REGNUM      11
-#define XY_REGNUM      12
-#define ZD1_REGNUM     13
-#define ZD32_REGNUM    (ZD1_REGNUM+31)
-
-#define FIRST_SOFT_REGNUM (Z_REGNUM)
-#define MAX_SOFT_REG      (ZD32_REGNUM - Z_REGNUM + 1)
 
 typedef struct m6811_regs {
     unsigned short      d;
@@ -174,8 +177,6 @@ struct _sim_cpu {
   int                   cpu_elf_start;
   
   uint16                cpu_insn_pc;
-  unsigned short       cpu_nb_pseudo_regs;
-  uint16                cpu_page0_reg[MAX_SOFT_REG];
 
   /* CPU frequency.  This is the quartz frequency.  It is divided by 4 to
      get the cycle time.  This is used for the timer rate and for the baud
@@ -485,6 +486,8 @@ extern void sim_set_profile (int n);
 extern void sim_set_profile_size (int n);
 extern void sim_board_reset (SIM_DESC sd);
 
+extern const char *cycle_to_string (sim_cpu *cpu, signed64 t);
+
 #endif