OSDN Git Service

[INITIAL] Import 20141226 version of http://homepage3.nifty.com/takeda-toshiya/common...
[csp-qt/common_source_project-fm7.git] / source / src / vm / tf20.h
1 /*\r
2         Skelton for retropc emulator\r
3 \r
4         Author : Takeda.Toshiya\r
5         Date   : 2008.02.28 -\r
6 \r
7         [ EPSON TF-20 ]\r
8 */\r
9 \r
10 #ifndef _TF20_H_\r
11 #define _TF20_H_\r
12 \r
13 #include "vm.h"\r
14 #include "../emu.h"\r
15 #include "device.h"\r
16 \r
17 #define SIGNAL_TF20_SIO 0\r
18 \r
19 class DISK;\r
20 \r
21 class TF20 : public DEVICE\r
22 {\r
23 private:\r
24         DEVICE *d_sio;\r
25         int did_sio;\r
26         \r
27         DISK* disk[MAX_DRIVE];\r
28         uint8 bufr[256], bufs[256];\r
29         int buflen, phase;\r
30         \r
31         bool process_cmd();\r
32         bool disk_protected(int drv);\r
33         uint8* get_sector(int drv, int trk, int sec);\r
34         \r
35 public:\r
36         TF20(VM* parent_vm, EMU* parent_emu) : DEVICE(parent_vm, parent_emu) {}\r
37         ~TF20() {}\r
38         \r
39         // common functions\r
40         void initialize();\r
41         void release();\r
42         void reset();\r
43         void write_signal(int id, uint32 data, uint32 mask);\r
44         \r
45         // unitque function\r
46         void set_context_sio(DEVICE* device, int id)\r
47         {\r
48                 d_sio = device;\r
49                 did_sio = id;\r
50         }\r
51         void open_disk(int drv, _TCHAR path[], int offset);\r
52         void close_disk(int drv);\r
53         bool disk_inserted(int drv);\r
54 };\r
55 \r
56 #endif\r
57 \r