|
|
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: ! 14: class TASDevice ! 15: : public IODevice ! 16: { ! 17: using inherited = IODevice; ! 18: public: ! 19: TASDevice(); ! 20: ~TASDevice() override; ! 21: ! 22: protected: ! 23: // BusIO インタフェース ! 24: static const uint32 NPORT = 1; ! 25: uint64 Read(uint32 addr); ! 26: uint64 Write(uint32 addr, uint32 data); ! 27: uint64 Peek(uint32 addr); ! 28: ! 29: private: ! 30: std::atomic<uint8> tas {}; // bit 7 のみ有効。 ! 31: }; ! 32: ! 33: 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.