public void MemoryExpand(DataWord outDataOffs, DataWord outDataSize) { if (!outDataSize.IsZero()) { _memory.Extend(outDataOffs.GetInt(), outDataSize.GetInt()); } }
public int VerifyJumpDest(DataWord nextPC) { if (nextPC.GetBytesOccupied() > 4) { throw new InvalidOperationException("Bad jump destination"); } int ret = nextPC.GetInt(); if (!GetProgramPrecompile().HasJumpDest(ret)) { throw new InvalidOperationException("Bad jump destination"); } return(ret); }
public void SaveMemory(DataWord addrB, DataWord value) { _memory.Write(addrB.GetInt(), value.GetData(), value.GetData().Length, false); }
public DataWord LoadMemory(DataWord addr) { return(_memory.ReadWord(addr.GetInt())); }