OSDN Git Service

[VM][BABBAGE2ND][PC6001][PC8801][PC9801][PCENGINE][X1] Use VM_TEMPLATE.
[csp-qt/common_source_project-fm7.git] / source / src / vm / x1 / memory.h
index 981c35d..7bc03fa 100644 (file)
@@ -1,67 +1,72 @@
-/*\r
-       SHARP X1 Emulator 'eX1'\r
-       SHARP X1twin Emulator 'eX1twin'\r
-       SHARP X1turbo Emulator 'eX1turbo'\r
-\r
-       Author : Takeda.Toshiya\r
-       Date   : 2009.03.14-\r
-\r
-       [ memory ]\r
-*/\r
-\r
-#ifndef _MEMORY_H_\r
-#define _MEMORY_H_\r
-\r
-#include "../vm.h"\r
-#include "../../emu.h"\r
-#include "../device.h"\r
-\r
-class MEMORY : public DEVICE\r
-{\r
-private:\r
-#ifdef _X1TURBO_FEATURE\r
-       DEVICE *d_pio;\r
-#endif\r
-       \r
-       uint8* wbank[16];\r
-       uint8* rbank[16];\r
-       \r
-       uint8 rom[0x8000];\r
-       uint8 ram[0x10000];\r
-       uint8 romsel;\r
-#ifdef _X1TURBO_FEATURE\r
-       uint8 extram[0x90000]; // 32kb*16bank\r
-       uint8 bank;\r
-#else\r
-       int m1_cycle;\r
-#endif\r
-       void update_map();\r
-       \r
-public:\r
-       MEMORY(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu) {}\r
-       ~MEMORY() {}\r
-       \r
-       // common functions\r
-       void initialize();\r
-       void reset();\r
-       void write_data8(uint32 addr, uint32 data);\r
-       uint32 read_data8(uint32 addr);\r
-#ifndef _X1TURBO_FEATURE\r
-       uint32 fetch_op(uint32 addr, int *wait);\r
-#endif\r
-       void write_io8(uint32 addr, uint32 data);\r
-       uint32 read_io8(uint32 addr);\r
-       void save_state(FILEIO* state_fio);\r
-       bool load_state(FILEIO* state_fio);\r
-       \r
-       // unique function\r
-#ifdef _X1TURBO_FEATURE\r
-       void set_context_pio(DEVICE* device)\r
-       {\r
-               d_pio = device;\r
-       }\r
-#endif\r
-};\r
-\r
-#endif\r
-\r
+/*
+       SHARP X1 Emulator 'eX1'
+       SHARP X1twin Emulator 'eX1twin'
+       SHARP X1turbo Emulator 'eX1turbo'
+       SHARP X1turboZ Emulator 'eX1turboZ'
+
+       Author : Takeda.Toshiya
+       Date   : 2009.03.14-
+
+       [ memory ]
+*/
+
+#ifndef _MEMORY_H_
+#define _MEMORY_H_
+
+#include "../vm.h"
+#include "../../emu.h"
+#include "../device.h"
+
+class MEMORY : public DEVICE
+{
+private:
+#ifdef _X1TURBO_FEATURE
+       DEVICE *d_pio;
+#endif
+       
+       uint8_t* wbank[16];
+       uint8_t* rbank[16];
+       
+       uint8_t rom[0x8000];
+       uint8_t ram[0x10000];
+       uint8_t romsel;
+#ifdef _X1TURBO_FEATURE
+       uint8_t extram[0x90000]; // 32kb*16bank
+       uint8_t bank;
+#else
+       int m1_cycle;
+#endif
+       void update_map();
+       
+public:
+       MEMORY(VM_TEMPLATE* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)
+       {
+               set_device_name(_T("Memory Bus"));
+       }
+       ~MEMORY() {}
+       
+       // common functions
+       void initialize();
+       void reset();
+       void write_data8(uint32_t addr, uint32_t data);
+       uint32_t read_data8(uint32_t addr);
+#ifndef _X1TURBO_FEATURE
+       uint32_t fetch_op(uint32_t addr, int *wait);
+#endif
+       void write_io8(uint32_t addr, uint32_t data);
+       uint32_t read_io8(uint32_t addr);
+       void decl_state();
+       void save_state(FILEIO* state_fio);
+       bool load_state(FILEIO* state_fio);
+       
+       // unique function
+#ifdef _X1TURBO_FEATURE
+       void set_context_pio(DEVICE* device)
+       {
+               d_pio = device;
+       }
+#endif
+};
+
+#endif
+