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