2 FUJITSU FM Towns Emulator 'eFMTowns'
4 Author : Kyuma.Ohta <whatisthis.sowhat _at_ gmail.com>
10 #include "./towns_common.h"
11 #include "./msdosrom.h"
15 void MSDOSROM::initialize()
17 memset(rom, 0xff, sizeof(rom));
19 if(fio->Fopen(create_local_path(_T("FMT_DOS.ROM")), FILEIO_READ_BINARY)) { // MSDOS
20 fio->Fread(rom, sizeof(rom), 1);
28 uint32_t MSDOSROM::read_data8(uint32_t addr)
31 if((addr >= 0xc2000000) && (addr < 0xc2080000)) {
32 d = rom[addr & 0x7ffff];
37 uint32_t MSDOSROM::read_data8w(uint32_t addr, int* wait)
39 if(wait != NULL) *wait = wait_val;
40 return read_data8(addr);
42 void MSDOSROM::write_data8w(uint32_t addr, uint32_t data, int* wait)
44 if(wait != NULL) *wait = wait_val;
47 void MSDOSROM::write_signal(int ch, uint32_t data, uint32_t mask)
50 case SIG_FMTOWNS_SET_MEMWAIT:
56 uint32_t MSDOSROM::read_signal(int ch)
59 case SIG_FMTOWNS_SET_MEMWAIT:
60 return (uint32_t)wait_val;
66 #define STATE_VERSION 1
68 bool DICTIONARY::process_state(FILEIO* state_fio, bool loading)
70 if(!state_fio->StateCheckUint32(STATE_VERSION)) {
73 if(!state_fio->StateCheckInt32(this_device_id)) {
76 state_fio->StateValue(wait_val);