--- nono/vm/romemu_x68k.h 2026/04/29 17:05:13 1.1.1.1 +++ nono/vm/romemu_x68k.h 2026/04/29 17:05:28 1.1.1.4 @@ -10,13 +10,14 @@ #pragma once -#include "rom.h" +#include "romemu.h" -class m68kcpu; +class MainbusDevice; +class SPCDevice; -class ROM30EmuDevice : public ROMDevice +class ROM30EmuDevice : public ROMEmuDevice { - using inherited = ROMDevice; + using inherited = ROMEmuDevice; private: // このデバイスの先頭アドレス @@ -29,13 +30,13 @@ class ROM30EmuDevice : public ROMDevice public: ROM30EmuDevice(); - virtual ~ROM30EmuDevice() override; + ~ROM30EmuDevice() override; bool Init() override; - uint64 Read32(uint32 addr) override; - private: + uint64 ReadROMIO(busaddr addr) override; + uint32 SCSIBoot() const; uint32 SCSIIOCS(); uint32 SCSI_S_INQUIRY(uint32); @@ -46,7 +47,8 @@ class ROM30EmuDevice : public ROMDevice // SCSI IOCS コール名を返す static std::string GetSCSICallName(uint number); - m68kcpu *cpu {}; + MainbusDevice *mainbus {}; + SPCDevice *spc {}; static const char * const x68k_scsicall[0x40]; };