Example #1
0
def load_obj(load_file, obj, silent=True):

	m = domus.mem.mem_domus()
	load_file.load(m, obj, silent=silent)
	m.hex = True

	p = pyreveng.pyreveng(m)
	cpu = domus.cpu.cpu(p)
	ld = load_file.rec_end
	p.a['library'] = load_file.library
	p.a['objname'] = obj
	p.a['basename'] = load_file.basename
	p.a['entrypoint'] = ld
	if obj == None:
		print("Loaded object from: " + load_file.basename)
	else:
		print("Loaded " + obj + " from: " + load_file.basename)
	print()
	return p
Example #2
0
import mem
import pyreveng
import topology
import render
import cpus.cdp1802

#######################################################################
# Set up the memory image
m = mem.byte_mem(0,0x800, 0, True, "big-endian")
m.fromfile("cdp1802.bin", 0x0000, 1)
m.bcols = 3

#######################################################################
# Instantiate pyreveng instance
p = pyreveng.pyreveng(m)

#######################################################################
# Instantiate a disassembler
cpu = cpus.cdp1802.cdp1802(p)

#######################################################################
# Provide hints for disassembly
cpu.vectors(p)

# Subr R(4)
cpu.disass(0x644)
x = p.t.add(0x0644,0x0654, "subr")
p.setlabel(0x0644, "SUBR R(4)")

# Subr R(5)
Example #3
0
import mem
import pyreveng
import topology
import render
import cpus.cdp1802

#######################################################################
# Set up the memory image
m = mem.byte_mem(0, 0x800, 0, True, "big-endian")
m.fromfile("cdp1802.bin", 0x0000, 1)
m.bcols = 3

#######################################################################
# Instantiate pyreveng instance
p = pyreveng.pyreveng(m)

#######################################################################
# Instantiate a disassembler
cpu = cpus.cdp1802.cdp1802(p)

#######################################################################
# Provide hints for disassembly
cpu.vectors(p)

# Subr R(4)
cpu.disass(0x644)
x = p.t.add(0x0644, 0x0654, "subr")
p.setlabel(0x0644, "SUBR R(4)")

# Subr R(5)