Annotation of nono/vm/prom.h, revision 1.1.1.5

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2020 nono project
                      4: // Licensed under nono-license.txt
                      5: //
                      6: 
                      7: #pragma once
                      8: 
                      9: #include "ethernet.h"
                     10: #include "rom.h"
1.1.1.4   root       11: #include "stopwatch.h"
1.1       root       12: 
1.1.1.5 ! root       13: class PROMDevice : public ROMDevice
1.1       root       14: {
                     15:        using inherited = ROMDevice;
                     16:  public:
                     17:        PROMDevice();
1.1.1.3   root       18:        virtual ~PROMDevice() override;
1.1       root       19: 
                     20:        bool Init() override;
                     21:        bool PowerOn() override;
1.1.1.4   root       22:        void ResetHard() override;
1.1       root       23: 
                     24:        uint64 Read8(uint32 addr) override;
                     25:        uint64 Write8(uint32 addr, uint32 data) override;
1.1.1.4   root       26:        uint64 Write16(uint32 addr, uint32 data) override;
1.1       root       27:        uint64 Write32(uint32 addr, uint32 data) override;
                     28: 
                     29:  private:
1.1.1.4   root       30:        bool InitLuna1();
1.1       root       31:        bool InitLuna88k();
1.1.1.4   root       32:        uint64 Write(uint32 addr);
1.1       root       33: 
1.1.1.4   root       34:        // ROM->RAM 切り替え用フラグ。true なら ROM モード
                     35:        bool isrom {};
                     36: 
                     37:        // パフォーマンス測定用
                     38:        Stopwatch sw {};
1.1       root       39: };
                     40: 
                     41: extern std::unique_ptr<PROMDevice> gPROM;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.