2 NEC PC-9801 Emulator 'ePC-9801'
3 NEC PC-9801E/F/M Emulator 'ePC-9801E'
4 NEC PC-9801U Emulator 'ePC-9801U'
5 NEC PC-9801VF Emulator 'ePC-9801VF'
6 NEC PC-9801VM Emulator 'ePC-9801VM'
7 NEC PC-9801VX Emulator 'ePC-9801VX'
8 NEC PC-9801RA Emulator 'ePC-9801RA'
9 NEC PC-98RL Emulator 'ePC-98RL'
10 NEC PC-98DO Emulator 'ePC-98DO'
12 Author : Takeda.Toshiya
23 #ifdef SUPPORT_PC98_OPNA
30 void FMSOUND::write_io8(uint32_t addr, uint32_t data)
34 d_opn->write_io8(0, data);
37 d_opn->write_io8(1, data);
39 #ifdef SUPPORT_PC98_OPNA
42 d_opn->write_io8(2, data);
47 d_opn->write_io8(3, data);
57 uint32_t FMSOUND::read_io8(uint32_t addr)
61 return d_opn->read_io8(0);
63 return d_opn->read_io8(1);
64 #ifdef SUPPORT_PC98_OPNA
67 return d_opn->read_io8(2);
72 return d_opn->read_io8(3);
76 return BOARD_ID | (mask & 3);
82 #ifdef SUPPORT_PC98_OPNA
83 #define STATE_VERSION 1
85 void FMSOUND::save_state(FILEIO* state_fio)
87 state_fio->FputUint32(STATE_VERSION);
88 state_fio->FputInt32(this_device_id);
90 state_fio->FputUint8(mask);
93 bool FMSOUND::load_state(FILEIO* state_fio)
95 if(state_fio->FgetUint32() != STATE_VERSION) {
98 if(state_fio->FgetInt32() != this_device_id) {
101 mask = state_fio->FgetUint8();