2 * Common source code project -> FM-7/77/AV -> Kanji rom
3 * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
6 * Feb 11, 2015 : Initial
9 #include "../../fileio.h"
12 KANJIROM::KANJIROM(VM *parent_vm, EMU* parent_emu, bool type_2std): DEVICE(parent_vm, parent_emu)
18 memset(data_table, 0xff, 0x20000);
19 // read_table[0].memory = data_table;
23 if(fio->Fopen(emu->bios_path("KANJI2.ROM"), FILEIO_READ_BINARY)) {
24 fio->Fread(data_table, 0x20000, 1);
30 if(fio->Fopen(emu->bios_path("KANJI1.ROM"), FILEIO_READ_BINARY)) {
31 fio->Fread(data_table, 0x20000, 1);
34 } else if(fio->Fopen(emu->bios_path("KANJI.ROM"), FILEIO_READ_BINARY)) {
35 fio->Fread(data_table, 0x20000, 1);
44 void KANJIROM::write_data8(uint32 addr, uint32 data)
49 uint32 KANJIROM::read_data8(uint32 addr)
51 return data_table[addr & 0x1ffff];
54 bool KANJIROM::get_readstat(void)
59 void KANJIROM::release()
63 #define STATE_VERSION 1
64 void KANJIROM::save_state(FILEIO *state_fio)
66 state_fio->FputUint32(STATE_VERSION);
67 state_fio->FputInt32(this_device_id);
69 state_fio->FputBool(class2);
70 state_fio->FputBool(read_ok);
71 state_fio->Fwrite(data_table, sizeof(data_table), 1);
74 bool KANJIROM::load_state(FILEIO *state_fio)
77 version = state_fio->FgetUint32();
78 if(this_device_id != state_fio->FgetInt32()) return false;
81 class2 = state_fio->FgetBool();
82 read_ok = state_fio->FgetBool();
83 state_fio->Fread(data_table, sizeof(data_table), 1);
84 if(version == 1) return true;