|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2020 [email protected]
4: //
5:
6: #pragma once
7:
8: #include "romimg_luna.h"
9:
10: class Luna88kPROMEmuDevice : public PROMDevice
11: {
12: typedef PROMDevice inherited;
13:
14: // このデバイス先頭アドレス
15: static const uint32 baseaddr = 0x41000000;
16:
17: // 謎の I/O 空間
18: static const uint32 ROMIO_BASE = 0x41010000;
19: static const uint32 ROMIO_IPL = (ROMIO_BASE + 0);
20:
21: public:
22: Luna88kPROMEmuDevice();
23: virtual ~Luna88kPROMEmuDevice();
24:
25: virtual bool Init();
26: virtual void ResetHard();
27:
28: virtual uint64 Read32(uint32 addr);
29:
30: private:
31: uint64 Decoder(uint32 addr) const;
32:
33: // 起動時の処理を行う
34: uint32 IPL();
35:
36: // リセット後 IPL を完了したら true
37: bool ipl_done = false;
38: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.