X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=sim%2Fucsim%2Fs51.src%2Finterruptcl.h;h=ebc52574ed399f74853ca4186f80c6dda7b51e48;hb=90f4aedaef8a2310573eef905f95c671f84e5cde;hp=040017976723fad6ca5a6b342dbf140a70828135;hpb=0ac34444ce2ccdcaa5fe722e2420f96c46224039;p=fw%2Fsdcc diff --git a/sim/ucsim/s51.src/interruptcl.h b/sim/ucsim/s51.src/interruptcl.h index 04001797..ebc52574 100644 --- a/sim/ucsim/s51.src/interruptcl.h +++ b/sim/ucsim/s51.src/interruptcl.h @@ -37,15 +37,26 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA class cl_interrupt: public cl_hw { +public: + class cl_address_space *sfr; + bool was_reti, bit_IT0, bit_IT1, bit_INT0, bit_INT1; + class cl_memory_cell *cell_tcon; public: cl_interrupt(class cl_uc *auc); - //virtual int init(void); + virtual int init(void); + + virtual void added_to_uc(void); + + //virtual t_mem read(class cl_memory_cell *cell); + virtual void write(class cl_memory_cell *cell, t_mem *val); + + //virtual void mem_cell_changed(class cl_m *mem, t_addr addr); - //virtual ulong read(class cl_mem *mem, long addr); - //virtual void write(class cl_mem *mem, long addr, ulong *val); + virtual int tick(int cycles); + virtual void reset(void); + virtual void happen(class cl_hw *where, enum hw_event he, void *params); - //virtual int tick(int cycles); - virtual void print_info(class cl_console *con); + virtual void print_info(class cl_console_base *con); };