|
|
1.1 root 1: //
2: // nono
1.1.1.2 root 3: // Copyright (C) 2020 nono project
4: // Licensed under nono-license.txt
1.1 root 5: //
6:
7: #pragma once
8:
9: #include "vm.h"
10:
1.1.1.5 ! root 11: class VM_LUNA : public VM
1.1 root 12: {
1.1.1.2 root 13: using inherited = VM;
1.1 root 14: public:
15: VM_LUNA();
1.1.1.5 ! root 16: virtual ~VM_LUNA() override;
! 17:
! 18: bool Init() override;
1.1 root 19:
20: // 電源ボタンを押す。
1.1.1.2 root 21: void PowerButton() override;
1.1 root 22:
1.1.1.5 ! root 23: protected:
! 24: // デバイスマップから devtable を作成
! 25: void MakeDevtable(const uint8 *maptable);
! 26:
1.1.1.3 root 27: std::unique_ptr<IODevice> prom {};
1.1.1.5 ! root 28: };
! 29:
! 30: class VM_LUNA1 final : public VM_LUNA
! 31: {
! 32: using inherited = VM_LUNA;
! 33: public:
! 34: VM_LUNA1();
! 35: virtual ~VM_LUNA1() override;
1.1 root 36:
1.1.1.5 ! root 37: private:
1.1 root 38: static const uint8 maptable[256];
39: };
40:
1.1.1.5 ! root 41: class VM_LUNA88K final : public VM_LUNA
1.1 root 42: {
1.1.1.5 ! root 43: using inherited = VM_LUNA;
1.1 root 44: public:
45: VM_LUNA88K();
1.1.1.5 ! root 46: virtual ~VM_LUNA88K() override;
1.1 root 47:
48: private:
49: static const uint8 maptable[256];
50: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.