class RPicSim::Storage::MemoryInt32

Represents a signed 32-bit variable.

Public Instance Methods

size() click to toggle source
# File lib/rpicsim/storage/memory_integer.rb, line 200
def size
  4
end
value() click to toggle source
# File lib/rpicsim/storage/memory_integer.rb, line 204
def value
  val =
    @memory.read_byte(@address) +
    0x100 * @memory.read_byte(@address + 1) +
    0x10000 * @memory.read_byte(@address + 2) +
    0x1000000 * @memory.read_byte(@address + 3)
  val -= 0x100000000 if val >= 0x80000000
  val
end
value=(val) click to toggle source
# File lib/rpicsim/storage/memory_integer.rb, line 214
def value=(val)
  check_value val, -0x80000000..0x80000000
  @memory.write_byte(@address, val & 0xFF)
  @memory.write_byte(@address + 1, (val >> 8) & 0xFF)
  @memory.write_byte(@address + 2, (val >> 16) & 0xFF)
  @memory.write_byte(@address + 3, (val >> 24) & 0xFF)
end