class Metasm::GameBoyRom
GameBoy ROM file format
Attributes
header[RW]
Public Class Methods
new(cpu=nil)
click to toggle source
Calls superclass method
Metasm::ExeFormat.new
# File metasm/exe_format/gb.rb, line 38 def initialize(cpu=nil) @endianness = (cpu ? cpu.endianness : :little) super(cpu) end
Public Instance Methods
cpu_from_headers()
click to toggle source
# File metasm/exe_format/gb.rb, line 53 def cpu_from_headers Z80.new('gb') end
decode()
click to toggle source
# File metasm/exe_format/gb.rb, line 48 def decode decode_header @encoded.add_export('entrypoint', 0x100) end
decode_byte(edata = @encoded)
click to toggle source
# File metasm/exe_format/gb.rb, line 32 def decode_byte(edata = @encoded) edata.decode_imm(:u8, @endianness) end
decode_header()
click to toggle source
# File metasm/exe_format/gb.rb, line 43 def decode_header @encoded.ptr = 0x104 @header = Header.decode(self) end
each_section() { |encoded, 0| ... }
click to toggle source
# File metasm/exe_format/gb.rb, line 57 def each_section yield @encoded, 0 end
encode_byte(val)
click to toggle source
# File metasm/exe_format/gb.rb, line 31 def encode_byte(val) Expression[val].encode(:u8, @endianness) end
get_default_entrypoints()
click to toggle source
# File metasm/exe_format/gb.rb, line 61 def get_default_entrypoints ['entrypoint'] end
sizeof_byte()
click to toggle source
# File metasm/exe_format/gb.rb, line 33 def sizeof_byte ; 1 ; end