2 FUJITSU FM Towns Emulator 'eFMTowns'
4 Author : Kyuma.Ohta <whatisthis.sowhat _at_ gmail.com>
7 [ dictionary rom/ram & cmos & RAM area 0x000d0000 - 0x000effff]
12 #include "../../common.h"
13 #include "../device.h"
15 #define SIG_FMTOWNS_DICTSEL 0x1000
16 #define SIG_FMTOWNS_DICTBANK 0x1001
20 class DICTIONARY : public DEVICE
25 uint8_t dict_rom[0x80000]; // 512KB
26 uint8_t dict_ram[0x2000]; // 2 + 6KB
27 uint8_t ram_0d0[0x20000]; // 128KB
36 DICTIONARY(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)
38 set_device_name("FM-Towns Dictionary ROM/RAM 0x000d0000 - 0x000effff with CMOS RAM");
45 uint32_t read_data8(uint32_t addr);
46 uint32_t read_data16(uint32_t addr);
47 uint32_t read_data32(uint32_t addr);
49 uint32_t read_data8w(uint32_t addr, int* wait);
50 uint32_t read_data16w(uint32_t addr, int* wait);
51 uint32_t read_data32w(uint32_t addr, int* wait);
53 void write_data8(uint32_t addr, uint32_t data);
54 void write_data16(uint32_t addr, uint32_t data);
55 void write_data32(uint32_t addr, uint32_t data);
57 void write_data8w(uint32_t addr, uint32_t data, int* wait);
58 void write_data16w(uint32_t addr, uint32_t data, int* wait);
59 void write_data32w(uint32_t addr, uint32_t data, int* wait);
61 void write_io8(uint32_t addr, uint32_t data);
62 void read_io8(uint32_t addr, uint32_t data);
64 void write_signal(int ch, uint32_t data, uint32_t mask);
65 uint32_t read_signal(int ch);
67 bool process_state(FILEIO* state_fio, bool loading);
69 void set_context_sysrom(DEVICE* dev)