2 IBM Japan Ltd PC/JX Emulator 'eJX'
4 Author : Takeda.Toshiya
12 #include "../upd765a.h"
22 void FLOPPY::write_io8(uint32_t addr, uint32_t data)
26 d_fdc->write_signal(SIG_UPD765A_MOTOR, data, 1); // drive enable
28 // WatchDog Timer is enabled
29 if((prev & 0x40) && !(data & 0x40)) {
30 if(register_id != -1) {
31 cancel_event(this, register_id);
33 register_event_by_clock(this, 0, 3 * CPU_CLOCKS, false, ®ister_id);
36 if(register_id != -1) {
37 cancel_event(this, register_id);
41 if((prev & 0x80) && !(data & 0x80)) {
49 void FLOPPY::event_callback(int event_id, int err)
52 this->out_debug_log(_T("WatchDog Timer\n"));
53 d_pic->write_signal(SIG_I8259_IR6, 1, 1);
57 #define STATE_VERSION 1
59 bool FLOPPY::process_state(FILEIO* state_fio, bool loading)
61 if(!state_fio->StateCheckUint32(STATE_VERSION)) {
64 if(!state_fio->StateCheckInt32(this_device_id)) {
67 state_fio->StateUint8(prev);
68 state_fio->StateInt32(register_id);