|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2017 [email protected]
4: //
5:
6: #pragma once
7:
8: #include "device.h"
9:
10: class IOConDevice
11: : public IODevice
12: {
13: typedef IODevice inherited;
14: private:
15: static const int baseaddr = 0xe9c000;
16:
17: public:
18: IOConDevice();
19: virtual ~IOConDevice();
20:
21: virtual uint64 Read8(uint32 addr);
22: virtual uint64 Read16(uint32 addr);
23: virtual uint64 Write8(uint32 addr, uint32 data);
24: virtual uint64 Write16(uint32 addr, uint32 data);
25: virtual uint64 Peek8(uint32 addr);
26:
27: void IntFDC();
28:
29: private:
1.1.1.2 ! root 30: // アドレスデコーダ
! 31: uint64 Decoder(uint32 addr) const;
! 32:
1.1 root 33: bool hdd_int = false;
34: bool fdc_int = false;
35: bool fdd_int = false;
36: bool prt_int = false;
37: bool hdd_en = false;
38: bool fdc_en = false;
39: bool fdd_en = false;
40: bool prt_en = false;
41: uint8 vector = 0;
42: };
43:
1.1.1.2 ! root 44: extern std::unique_ptr<IOConDevice> gIOCon;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.