Annotation of nono/vm/mainbus_virt68k.h, revision 1.1.1.2

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2024 nono project
                      4: // Licensed under nono-license.txt
                      5: //
                      6: 
                      7: //
1.1.1.2 ! root        8: // メインバス (virt-m68k)
1.1       root        9: //
                     10: 
                     11: #pragma once
                     12: 
                     13: #include "mainbus.h"
                     14: 
1.1.1.2 ! root       15: class Virt68kMainbus : public MainbusDevice
1.1       root       16: {
1.1.1.2 ! root       17:        using inherited = MainbusDevice;
1.1       root       18:  public:
                     19:        Virt68kMainbus();
                     20:        ~Virt68kMainbus() override;
                     21: 
                     22:        bool InitMainbus() override;
                     23: 
1.1.1.2 ! root       24:        busdata Read(busaddr addr) override;
        !            25:        busdata Write(busaddr addr, uint32 data) override;
        !            26:        busdata ReadBurst16(busaddr addr, uint32 *dst) override;
        !            27:        busdata WriteBurst16(busaddr addr, const uint32 *dst) override;
        !            28:        busdata Peek1(uint32 addr) override;
        !            29:        bool Poke1(uint32 addr, uint32 data) override;
        !            30: 
1.1       root       31:  private:
1.1.1.2 ! root       32:        inline IODevice *Decoder(uint32) const;
        !            33: 
1.1       root       34:        // ブートページを切り替える。
                     35:        void SwitchBootPage(bool isrom) override;
                     36: 
                     37:        std::unique_ptr<IODevice> pBusErr {};
                     38:        std::unique_ptr<IODevice> pInterrupt {};
                     39:        std::unique_ptr<IODevice> pMainRAM {};
                     40:        std::unique_ptr<IODevice> pV68kIO {};
1.1.1.2 ! root       41: 
        !            42:        uint32 ramsize {};
1.1       root       43: };

unix.superglobalmegacorp.com

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