--- nono/vm/device.cpp 2026/04/29 17:04:44 1.1.1.4 +++ nono/vm/device.cpp 2026/04/29 17:04:50 1.1.1.5 @@ -61,12 +61,6 @@ Device::ResetHard() { } -// MPU の RESET 命令によるリセット -void -Device::ResetSoft() -{ -} - // // IODevice @@ -212,9 +206,12 @@ BusErrDevice::Peek8(uint32 addr) // 何もしないデバイス // +std::unique_ptr gNull; + // コンストラクタ NullDevice::NullDevice() { + logname = "null"; devname = "(Null)"; } @@ -225,12 +222,42 @@ NullDevice::~NullDevice() uint64 NullDevice::Read8(uint32 addr) { + putlog(1, "$%08x.b", addr); return 0xff; } uint64 +NullDevice::Read16(uint32 addr) +{ + putlog(1, "$%08x.w", addr); + return 0xffff; +} + +uint64 +NullDevice::Read32(uint32 addr) +{ + putlog(1, "$%08x.l", addr); + return 0xffffffff; +} + +uint64 NullDevice::Write8(uint32 addr, uint32 data) { + putlog(1, "$%08x.b <- $%02x", addr, data); + return 0; +} + +uint64 +NullDevice::Write16(uint32 addr, uint32 data) +{ + putlog(1, "$%08x.w <- $%04x", addr, data); + return 0; +} + +uint64 +NullDevice::Write32(uint32 addr, uint32 data) +{ + putlog(1, "$%08x.l <- $%08x", addr, data); return 0; }