Annotation of nono/vm/romimg_x68k.h, revision 1.1.1.12

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: 
1.1.1.8   root        7: //
                      8: // X680x0 の各種 ROM
                      9: //
                     10: 
1.1       root       11: #pragma once
                     12: 
1.1.1.2   root       13: #include "rom.h"
1.1       root       14: 
1.1.1.5   root       15: class IPLROM1Device;
                     16: 
1.1.1.7   root       17: class IPLROM0Device : public IODevice
1.1.1.5   root       18: {
1.1.1.7   root       19:        using inherited = IODevice;
1.1.1.5   root       20:  public:
                     21:        IPLROM0Device();
1.1.1.10  root       22:        ~IPLROM0Device() override;
1.1.1.5   root       23: 
                     24:        bool Init() override;
1.1.1.8   root       25:        void ResetHard(bool poweron) override;
1.1.1.5   root       26: 
1.1.1.11  root       27:        busdata Read(busaddr addr) override;
                     28:        busdata Peek1(uint32 addr) override;
1.1.1.5   root       29: 
                     30:  private:
1.1.1.7   root       31:        uint32 ReadDecoder(uint32 addr);
                     32: 
1.1.1.5   root       33:        IPLROM1Device *iplrom1 {};
                     34: };
                     35: 
1.1.1.6   root       36: class IPLROM1Device : public ROMDevice
1.1       root       37: {
1.1.1.2   root       38:        using inherited = ROMDevice;
1.1       root       39:  public:
                     40:        IPLROM1Device();
1.1.1.10  root       41:        ~IPLROM1Device() override;
1.1       root       42: 
1.1.1.2   root       43:        bool Init() override;
1.1       root       44: };
                     45: 
1.1.1.6   root       46: class IPLROM2Device : public ROMDevice
1.1       root       47: {
1.1.1.2   root       48:        using inherited = ROMDevice;
1.1       root       49:  public:
                     50:        IPLROM2Device();
1.1.1.10  root       51:        ~IPLROM2Device() override;
1.1       root       52: 
1.1.1.2   root       53:        bool Init() override;
1.1       root       54: };
                     55: 
1.1.1.6   root       56: class CGROMDevice : public ROMDevice
1.1       root       57: {
1.1.1.2   root       58:        using inherited = ROMDevice;
1.1       root       59:  public:
                     60:        CGROMDevice();
1.1.1.10  root       61:        ~CGROMDevice() override;
1.1       root       62: 
1.1.1.2   root       63:        bool Init() override;
1.1       root       64: };
1.1.1.3   root       65: 
1.1.1.12! root       66: inline CGROMDevice *GetCGROMDevice() {
1.1.1.9   root       67:        return Object::GetObject<CGROMDevice>(OBJ_CGROM);
                     68: }
1.1.1.12! root       69: inline IPLROM0Device *GetIPLROM0Device() {
1.1.1.9   root       70:        return Object::GetObject<IPLROM0Device>(OBJ_IPLROM_BOOT);
                     71: }
1.1.1.12! root       72: inline IPLROM1Device *GetIPLROM1Device() {
1.1.1.9   root       73:        return Object::GetObject<IPLROM1Device>(OBJ_IPLROM1);
                     74: }
1.1.1.12! root       75: inline ROMDevice *GetIPLROM2Device() {
1.1.1.9   root       76:        return Object::GetObject<ROMDevice>(OBJ_IPLROM2);
                     77: }

unix.superglobalmegacorp.com

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