|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2020 nono project
4: // Licensed under nono-license.txt
5: //
6:
7: // TAS ポート
8:
9: #pragma once
10:
11: #include "device.h"
12: #include <atomic>
13:
1.1.1.5 ! root 14: class TASDevice : public IODevice
1.1 root 15: {
16: using inherited = IODevice;
17: public:
18: TASDevice();
1.1.1.2 root 19: virtual ~TASDevice() override;
1.1 root 20:
1.1.1.4 root 21: void ResetHard() override;
22:
1.1 root 23: protected:
24: // BusIO インタフェース
25: static const uint32 NPORT = 1;
1.1.1.3 root 26: uint64 Read(uint32 offset);
27: uint64 Write(uint32 offset, uint32 data);
28: uint64 Peek(uint32 offset);
1.1 root 29:
30: private:
31: std::atomic<uint8> tas {}; // bit 7 のみ有効。
32: };
33:
34: extern std::unique_ptr<TASDevice> gTAS;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.