|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2024 nono project
4: // Licensed under nono-license.txt
5: //
6:
7: //
8: // シリアルポートのメイン画面コンソール入出力ドライバ
9: //
10:
11: #pragma once
12:
13: #include "comdriver.h"
14: #include "autofd.h"
15:
16: class ConsoleDevice;
17:
1.1.1.2 root 18: class COMDriverConsole : public COMDriver
1.1 root 19: {
20: using inherited = COMDriver;
21: public:
1.1.1.2 root 22: explicit COMDriverConsole(HostDevice *hostdev_);
23: ~COMDriverConsole() override;
1.1 root 24:
1.1.1.3 ! root 25: void DetachConsole();
! 26:
1.1.1.2 root 27: bool InitDriver(bool startup) override;
1.1 root 28: int Read() override;
29: void Write(uint32 data) override;
30:
31: void EnqueueChar(uint charcode);
32:
33: private:
34: // VM側 (UI スレッド) からの連絡用。
35: autofd rxpipe {};
36: autofd txpipe {};
37:
38: ConsoleDevice *console {};
39: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.