public void PutBytes(DataWord address, byte[] values) { int offset; byte[] bytes = this.GetOrCreateBlock(address, out offset); if (values.Length > this.blocksize - offset) { int l = (int)this.blocksize - offset; Array.Copy(values, 0, bytes, offset, l); bytes = this.GetOrCreateBlock(address.Add(new DataWord(l)), out offset); Array.Copy(values, l, bytes, offset, values.Length - l); } else { Array.Copy(values, 0, bytes, offset, values.Length); } }