2 NEC PC-100 Emulator 'ePC-100'
4 Author : Takeda.Toshiya
14 #include "../../emu.h"
15 #include "../device.h"
17 #define SIG_CRTC_BITMASK_LOW 0
18 #define SIG_CRTC_BITMASK_HIGH 1
19 #define SIG_CRTC_VRAM_PLANE 2
21 class CRTC : public DEVICE
26 scrntype_t palette_pc[16];
31 uint8_t vram[0x80000]; // VRAM 128KB * 4planes
32 uint32_t shift, maskl, maskh, busl, bush;
33 uint32_t write_plane, read_plane;
35 void update_palette(int num);
38 CRTC(VM_TEMPLATE* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)
40 set_device_name(_T("CRTC"));
46 void event_vline(int v, int clock);
47 void write_io8(uint32_t addr, uint32_t data);
48 uint32_t read_io8(uint32_t addr);
49 void write_memory_mapped_io8(uint32_t addr, uint32_t data);
50 uint32_t read_memory_mapped_io8(uint32_t addr);
51 void write_memory_mapped_io16(uint32_t addr, uint32_t data);
52 uint32_t read_memory_mapped_io16(uint32_t addr);
53 void write_signal(int id, uint32_t data, uint32_t mask);
54 bool process_state(FILEIO* state_fio, bool loading);
57 void set_context_pic(DEVICE* device)