|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2019 [email protected]
4: //
5:
6: #pragma once
7:
8: #include "rom.h"
9: #include "ethernet.h"
10:
11: class PROMDevice
12: : public ROMDevice
13: {
14: typedef ROMDevice inherited;
15: public:
16: PROMDevice();
17: virtual ~PROMDevice();
18:
19: virtual bool Init();
20: virtual bool PowerOn();
21:
22: virtual uint64 Read8(uint32 addr);
23: virtual uint64 Write8(uint32 addr, uint32 data);
24: virtual uint64 Write32(uint32 addr, uint32 data);
25:
26: // MAC アドレスを設定する (Lance から呼ばれる)
27: bool SetMacAddr(const macaddr_t& macaddr);
28:
29: private:
30: uint64 start = 0; // パフォーマンス測定用
31: };
32:
33: class MaskROMDevice
34: : public ROMDevice
35: {
36: typedef ROMDevice inherited;
37: public:
38: MaskROMDevice();
39: virtual ~MaskROMDevice();
40:
41: virtual bool Init();
42: };
43:
44: extern PROMDevice *gPROM;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.