* sim/ucsim/*.*, sim/ucsim/configure, sim/ucsim/configure.in:
[fw/sdcc] / sim / ucsim / sim.src / itsrccl.h
index d585af9ac8d836908c11cbc1e816e6336d0d5082..673a96e86c6cae18a85f0863b2c542952e0c3232 100644 (file)
@@ -39,12 +39,13 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 class cl_it_src: public cl_base
 {
 public:
+  int poll_priority;
   uchar ie_mask;  // Mask in IE register
   uchar src_reg;  // Register in SFR of source
   uchar src_mask; // Mask of source bit in src_reg
   uint  addr;     // Address of service routine
   bool  clr_bit;  // Request bit must be cleared when IT accepted
-  char  *name;   // For debug
+  //char  *name;         // For debug
   bool  active;   // Acceptance can be disabled
 
   cl_it_src(uchar Iie_mask,
@@ -52,8 +53,9 @@ public:
            uchar Isrc_mask,
            uint  Iaddr,
            bool  Iclr_bit,
-           char  *Iname);
-  ~cl_it_src(void);
+           const char  *Iname,
+           int   apoll_priority);
+  virtual ~cl_it_src(void);
 
           bool is_active(void);
   virtual void set_active_status(bool Aactive);
@@ -62,6 +64,15 @@ public:
 };
 
 
+class cl_irqs: public cl_sorted_list
+{
+public:
+  cl_irqs(t_index alimit, t_index adelta);
+  virtual const void *key_of(void *item); 
+  virtual int compare(const void *key1, const void *key2);
+};
+
+
 /*
  * This class is used to follow levels of accepted interrupts
  * It used on a stack of active interrupt services (it_levels of cl_uc)