Previous 199869 Revisions Next

r22859 Thursday 16th May, 2013 at 19:42:31 UTC by Wilbert Pol
pic8259.c: Added state save support. (nw)
[src/emu/machine]pic8259.c pic8259.h

trunk/src/emu/machine/pic8259.c
r22858r22859
2020#define LOG_OCW     0
2121#define LOG_GENERAL  0
2222
23ALLOW_SAVE_TYPE(pic8259_device::pic8259_state_t); // allow save_item on a non-fundamental type
2324
2425void pic8259_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
2526{
r22858r22859
377378
378379void pic8259_device::device_start()
379380{
380   /* resolve callbacks */
381   // resolve callbacks
381382   m_out_int_func.resolve();
382383   m_sp_en_func.resolve();
383384   m_read_slave_ack_func.resolve();
385
386   // Register save state items
387   save_item(NAME(m_state));
388   save_item(NAME(m_isr));
389   save_item(NAME(m_irr));
390   save_item(NAME(m_prio));
391   save_item(NAME(m_imr));
392   save_item(NAME(m_irq_lines));
393   save_item(NAME(m_input));
394   save_item(NAME(m_ocw3));
395   save_item(NAME(m_master));
396   save_item(NAME(m_level_trig_mode));
397   save_item(NAME(m_vector_size));
398   save_item(NAME(m_cascade));
399   save_item(NAME(m_icw4_needed));
400   save_item(NAME(m_vector_addr_low));
401   save_item(NAME(m_base));
402   save_item(NAME(m_vector_addr_high));
403   save_item(NAME(m_slave));
404   save_item(NAME(m_nested));
405   save_item(NAME(m_mode));
406   save_item(NAME(m_auto_eoi));
407   save_item(NAME(m_is_x86));
384408}
385409
386410
trunk/src/emu/machine/pic8259.h
r22858r22859
102102
103103   UINT8 m_master;
104104   /* ICW1 state */
105   UINT32 m_level_trig_mode : 1;
106   UINT32 m_vector_size : 1;
107   UINT32 m_cascade : 1;
108   UINT32 m_icw4_needed : 1;
105   UINT8 m_level_trig_mode;
106   UINT8 m_vector_size;
107   UINT8 m_cascade;
108   UINT8 m_icw4_needed;
109109   UINT32 m_vector_addr_low;
110110   /* ICW2 state */
111111   UINT8 m_base;
r22858r22859
115115   UINT8 m_slave;
116116
117117   /* ICW4 state */
118   UINT32 m_nested : 1;
119   UINT32 m_mode : 2;
120   UINT32 m_auto_eoi : 1;
121   UINT32 m_is_x86 : 1;
118   UINT8 m_nested;
119   UINT8 m_mode;
120   UINT8 m_auto_eoi;
121   UINT8 m_is_x86;
122122};
123123
124124extern const device_type PIC8259;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team