--- nono/vm/gvram.cpp 2026/04/29 17:04:35 1.1.1.3 +++ nono/vm/gvram.cpp 2026/04/29 17:04:55 1.1.1.5 @@ -5,6 +5,7 @@ // #include "gvram.h" +#include "mpu.h" #include "videoctlr.h" // @@ -17,9 +18,8 @@ std::unique_ptr gGVRAM; GVRAMDevice::GVRAMDevice() + : inherited("GVRAM") { - logname = "gvram"; - devname = "GVRAM"; devaddr = 0xc00000; devlen = 0x200000; // XXX とりあえず @@ -33,6 +33,7 @@ GVRAMDevice::~GVRAMDevice() uint64 GVRAMDevice::Read8(uint32 addr) { + gMPU->AddCycle(9); // Inside/Out p.135 uint32 offset = addr - devaddr; return mem[HB(offset)]; } @@ -40,6 +41,7 @@ GVRAMDevice::Read8(uint32 addr) uint64 GVRAMDevice::Read16(uint32 addr) { + gMPU->AddCycle(9); // Inside/Out p.135 uint32 offset = addr - devaddr; return *(uint16 *)&mem[offset]; } @@ -47,6 +49,7 @@ GVRAMDevice::Read16(uint32 addr) uint64 GVRAMDevice::Write8(uint32 addr, uint32 data) { + gMPU->AddCycle(9); // Inside/Out p.135 uint32 offset = addr - devaddr; mem[HB(offset)] = data; return 0; @@ -55,6 +58,7 @@ GVRAMDevice::Write8(uint32 addr, uint32 uint64 GVRAMDevice::Write16(uint32 addr, uint32 data) { + gMPU->AddCycle(9); // Inside/Out p.135 uint32 offset = addr - devaddr; *(uint16 *)&mem[offset] = data; return 0;