Previous 199869 Revisions Next

r22834 Wednesday 15th May, 2013 at 18:20:38 UTC by Wilbert Pol
pic8259.c: Get rid of anonymous timer. (nw)
[src/emu/machine]pic8259.c pic8259.h

trunk/src/emu/machine/pic8259.c
r22833r22834
2121#define LOG_GENERAL  0
2222
2323
24TIMER_CALLBACK_MEMBER( pic8259_device::timerproc )
24void pic8259_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
2525{
2626   int irq;
2727   UINT8 mask;
r22833r22834
381381
382382   assert(intf != NULL);
383383
384   m_timer = machine().scheduler().timer_alloc( timer_expired_delegate( FUNC(pic8259_device::timerproc), this) );
385
386384   /* resolve callbacks */
387385   m_out_int_func.resolve(intf->out_int_func, *this);
388386   m_sp_en_func.resolve(intf->sp_en_func, *this);
trunk/src/emu/machine/pic8259.h
r22833r22834
4848
4949   UINT8 inta_r();
5050
51   TIMER_CALLBACK_MEMBER( timerproc );
52
5351protected:
5452   // device-level overrides
5553   virtual void device_config_complete();
5654   virtual void device_start();
5755   virtual void device_reset();
56   virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
5857
5958private:
60   inline void set_timer() { m_timer->adjust(attotime::zero); }
59   static const device_timer_id TIMER_CHECK_IRQ = 0;
60
61   inline void set_timer() { timer_set(attotime::zero, TIMER_CHECK_IRQ); }
6162   void set_irq_line(int irq, int state);
6263
6364
r22833r22834
7475   devcb_resolved_read_line m_sp_en_func;
7576   devcb_resolved_read8 m_read_slave_ack_func;
7677
77   emu_timer *m_timer;
78
7978   pic8259_state_t m_state;
8079
8180   UINT8 m_isr;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team