class RPicSim::Storage::MemoryInt24

Represents a signed 24-bit variable.

Public Instance Methods

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