/*
- * Simulator of microcontrollers (itsrccl.h)
+ * Simulator of microcontrollers (sim.src/itsrccl.h)
*
* Copyright (C) 1999,99 Drotos Daniel, Talker Bt.
*
02111-1307, USA. */
/*@1@*/
-#ifndef ITSRCCL_HEADER
-#define ITSRCCL_HEADER
+#ifndef SIM_ITSRCCL_HEADER
+#define SIM_ITSRCCL_HEADER
#include "pobjcl.h"
#include "stypes.h"
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,
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);
};
+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)