OSDN Git Service

[VM] Apply VM_TEMPLATE to all VMs.
[csp-qt/common_source_project-fm7.git] / source / src / vm / n5200 / display.h
1 /*
2         NEC N5200 Emulator 'eN5200'
3
4         Author : Takeda.Toshiya
5         Date   : 2008.06.10 -
6
7         [ display ]
8 */
9
10 #ifndef _DISPLAY_H_
11 #define _DISPLAY_H_
12
13 #include "../vm.h"
14 #include "../../emu.h"
15 #include "../device.h"
16
17 class DISPLAY : public DEVICE
18 {
19 private:
20         DEVICE *d_pic;
21         uint8_t *vram, *tvram;
22         
23         bool vsync_enb;
24         
25 public:
26         DISPLAY(VM_TEMPLATE* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu)
27         {
28                 set_device_name(_T("Display"));
29         }
30         ~DISPLAY() {}
31         
32         // common functions
33         void initialize();
34         void reset();
35         void write_io8(uint32_t addr, uint32_t data);
36         void event_vline(int v, int clock);
37         
38         // unique functions
39         void set_context_pic(DEVICE* device)
40         {
41                 d_pic = device;
42         }
43         void set_vram_ptr(uint8_t* ptr)
44         {
45                 vram = ptr;
46         }
47         void set_tvram_ptr(uint8_t* ptr)
48         {
49                 tvram = ptr;
50         }
51         void draw_screen();
52 };
53
54 #endif
55