public override int Read(byte[] buffer, int offset, int count) { if (!Memory.IsAddressValid(_Position)) { throw (new InvalidOperationException(String.Format("Can't read from invalid address 0x{0:X}", _Position))); } byte *Ptr = (byte *)Memory.PspAddressToPointer(_Position); for (int n = 0; n < count; n++) { buffer[n + offset] = Ptr[n]; } _Position += (uint)count; return(count); }
bool IPspMemoryInfo.IsAddressValid(uint Address) { return(PspMemory.IsAddressValid(Address)); }