OSDN Git Service

[General] Convert sourcecode's CRLF format: DOS(WINDOWS) to Unix, to apply patches...
[csp-qt/common_source_project-fm7.git] / source / src / vm / tms9918a.h
index 74a792b..b316ba5 100644 (file)
@@ -1,78 +1,80 @@
-/*\r
-       Skelton for retropc emulator\r
-\r
-       Origin : MAME TMS9928A Core\r
-       Author : Takeda.Toshiya\r
-       Date   : 2006.08.18 -\r
-                2007.07.21 -\r
-\r
-       [ TMS9918A ]\r
-*/\r
-\r
-#ifndef _TMS9918A_H_\r
-#define _TMS9918A_H_\r
-\r
-#include "vm.h"\r
-#include "../emu.h"\r
-#include "device.h"\r
-\r
-#define SIG_TMS9918A_SUPER_IMPOSE      0\r
-\r
-class TMS9918A : public DEVICE\r
-{\r
-private:\r
-       // output signals\r
-       outputs_t outputs_irq;\r
-       \r
-       uint8 vram[TMS9918A_VRAM_SIZE];\r
-       uint8 screen[192][256];\r
-       uint8 regs[8], status_reg, read_ahead, first_byte;\r
-       uint16 vram_addr;\r
-       bool latch, intstat;\r
-       uint16 color_table, pattern_table, name_table;\r
-       uint16 sprite_pattern, sprite_attrib;\r
-       uint16 color_mask, pattern_mask;\r
-#ifdef TMS9918A_SUPER_IMPOSE\r
-       bool now_super_impose;\r
-#endif\r
-       \r
-       void set_intstat(bool val);\r
-       void draw_mode0();\r
-       void draw_mode1();\r
-       void draw_mode2();\r
-       void draw_mode12();\r
-       void draw_mode3();\r
-       void draw_mode23();\r
-       void draw_modebogus();\r
-       void draw_sprites();\r
-       \r
-public:\r
-       TMS9918A(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)\r
-       {\r
-               init_output_signals(&outputs_irq);\r
-#ifdef TMS9918A_SUPER_IMPOSE\r
-               now_super_impose = false;\r
-#endif\r
-       }\r
-       ~TMS9918A() {}\r
-       \r
-       // common functions\r
-       void initialize();\r
-       void reset();\r
-       void write_io8(uint32 addr, uint32 data);\r
-       uint32 read_io8(uint32 addr);\r
-#ifdef TMS9918A_SUPER_IMPOSE\r
-       void write_signal(int id, uint32 data, uint32 mask);\r
-#endif\r
-       void event_vline(int v, int clock);\r
-       \r
-       // unique function\r
-       void set_context_irq(DEVICE* device, int id, uint32 mask)\r
-       {\r
-               register_output_signal(&outputs_irq, device, id, mask);\r
-       }\r
-       void draw_screen();\r
-};\r
-\r
-#endif\r
-\r
+/*
+       Skelton for retropc emulator
+
+       Origin : MAME TMS9928A Core
+       Author : Takeda.Toshiya
+       Date   : 2006.08.18 -
+                2007.07.21 -
+
+       [ TMS9918A ]
+*/
+
+#ifndef _TMS9918A_H_
+#define _TMS9918A_H_
+
+#include "vm.h"
+#include "../emu.h"
+#include "device.h"
+
+#define SIG_TMS9918A_SUPER_IMPOSE      0
+
+class TMS9918A : public DEVICE
+{
+private:
+       // output signals
+       outputs_t outputs_irq;
+       
+       uint8 vram[TMS9918A_VRAM_SIZE];
+       uint8 screen[192][256];
+       uint8 regs[8], status_reg, read_ahead, first_byte;
+       uint16 vram_addr;
+       bool latch, intstat;
+       uint16 color_table, pattern_table, name_table;
+       uint16 sprite_pattern, sprite_attrib;
+       uint16 color_mask, pattern_mask;
+#ifdef TMS9918A_SUPER_IMPOSE
+       bool now_super_impose;
+#endif
+       
+       void set_intstat(bool val);
+       void draw_mode0();
+       void draw_mode1();
+       void draw_mode2();
+       void draw_mode12();
+       void draw_mode3();
+       void draw_mode23();
+       void draw_modebogus();
+       void draw_sprites();
+       
+public:
+       TMS9918A(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)
+       {
+               init_output_signals(&outputs_irq);
+#ifdef TMS9918A_SUPER_IMPOSE
+               now_super_impose = false;
+#endif
+       }
+       ~TMS9918A() {}
+       
+       // common functions
+       void initialize();
+       void reset();
+       void write_io8(uint32 addr, uint32 data);
+       uint32 read_io8(uint32 addr);
+#ifdef TMS9918A_SUPER_IMPOSE
+       void write_signal(int id, uint32 data, uint32 mask);
+#endif
+       void event_vline(int v, int clock);
+       void save_state(FILEIO* state_fio);
+       bool load_state(FILEIO* state_fio);
+       
+       // unique functions
+       void set_context_irq(DEVICE* device, int id, uint32 mask)
+       {
+               register_output_signal(&outputs_irq, device, id, mask);
+       }
+       void draw_screen();
+};
+
+#endif
+