2 MITSUBISHI Electric MULTI8 Emulator 'EmuLTI8'
4 Author : Takeda.Toshiya
11 #include "../upd765a.h"
12 #include "../../fileio.h"
14 void FLOPPY::write_io8(uint32 addr, uint32 data)
18 // data register + dack
19 d_fdc->write_dma_io8(addr, data);
23 d_fdc->write_signal(SIG_UPD765A_MOTOR, data, 1);
27 d_fdc->write_signal(SIG_UPD765A_TC, 1, 1);
32 uint32 FLOPPY::read_io8(uint32 addr)
36 // data register + dack
37 return d_fdc->read_dma_io8(addr);
39 return drq ? 0xff : 0x7f;
44 void FLOPPY::write_signal(int id, uint32 data, uint32 mask)
46 drq = ((data & mask) != 0);
49 #define STATE_VERSION 1
51 void FLOPPY::save_state(FILEIO* state_fio)
53 state_fio->FputUint32(STATE_VERSION);
54 state_fio->FputInt32(this_device_id);
56 state_fio->FputBool(drq);
59 bool FLOPPY::load_state(FILEIO* state_fio)
61 if(state_fio->FgetUint32() != STATE_VERSION) {
64 if(state_fio->FgetInt32() != this_device_id) {
67 drq = state_fio->FgetBool();