X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=sim%2Fucsim%2Fs51.src%2Finterruptcl.h;h=b2076758439e7f1bd951bd5c276eb01f74eeaff5;hb=72b7e8dadd92279596c0f56649775fc056acf449;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..b2076758 100644 --- a/sim/ucsim/s51.src/interruptcl.h +++ b/sim/ucsim/s51.src/interruptcl.h @@ -37,14 +37,24 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA class cl_interrupt: public cl_hw { +public: + bool was_reti, bit_IT0, bit_IT1, bit_INT0, bit_INT1; + class cl_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_cell *cell); + virtual void write(class cl_cell *cell, t_mem *val); + + //virtual void mem_cell_changed(class cl_mem *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); };