--- nono/vm/ram.cpp 2026/04/29 17:05:10 1.1.1.11 +++ nono/vm/ram.cpp 2026/04/29 17:05:14 1.1.1.12 @@ -36,7 +36,7 @@ RAMDevice::RAMDevice() // アクセスウェイト switch (gMainApp.GetVMType()) { - case VMTYPE_LUNA88K: + case VMType::LUNA88K: // 取扱説明書p.21 に、CMMU からのアクセスタイムが // リード(4byte)で 200ns、バーストリード(16byte)で 320ns // ライト(4byte)で 160ns、バーストライト(16byte)で 280ns とある。 @@ -45,13 +45,13 @@ RAMDevice::RAMDevice() read_wait = 3; write_wait = 2; break; - case VMTYPE_LUNA1: + case VMType::LUNA1: // LUNA-I は1ウェイト。 read_wait = 1; write_wait = 1; break; - case VMTYPE_X68030: + case VMType::X68030: default: // X68030 ではシステムポートが設定するのでここでは不要。 break; @@ -77,7 +77,7 @@ RAMDevice::Init() } // 下限以外の制約は機種による switch (gMainApp.GetVMType()) { - case VMTYPE_X68030: + case VMType::X68030: // メインメモリは 12MB まで。 // 内部は 8KB 単位で処理できるが設定が 1MB 単位。 if (ram_size_MB > 12) { @@ -86,7 +86,7 @@ RAMDevice::Init() } break; - case VMTYPE_LUNA1: + case VMType::LUNA1: // 16MB までは、実機に合わせて 4MB 単位とする。 // see http://wiki.netbsd.org/ports/luna68k/luna68k_info/#hardware // @@ -106,7 +106,7 @@ RAMDevice::Init() } break; - case VMTYPE_LUNA88K: + case VMType::LUNA88K: // 64MB までは、実機に合わせて 16MB 単位とする。 // // 64MB を超える増設 (or 魔改造) 部分は未確認。 @@ -142,7 +142,7 @@ RAMDevice::ResetHard(bool poweron) } // X68030 ではリセットで戻るはず。(LUNA は固定なので関係ない) - if (gMainApp.GetVMType() == VMTYPE_X68030) { + if (gMainApp.GetVMType() == VMType::X68030) { read_wait = 0; write_wait = 0; } @@ -501,9 +501,9 @@ RAMDevice::Load_elf32(const char *name, { uint16 target_elf_mid; - if (gMainApp.HasVMFeature(VMF_M68K)) { + if (gMainApp.Has(VMCap::M68K)) { target_elf_mid = EM_68K; - } else if (gMainApp.HasVMFeature(VMF_M88K)) { + } else if (gMainApp.Has(VMCap::M88K)) { target_elf_mid = EM_88K; } else { PANIC("Unknown CPU?");