import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... 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)
import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... 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)
import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... import mem import const import pyreveng import render import topology import cpus.mcs48 ####################################################################### # Set up the memory image m0 = mem.byte_mem(0, 0x001000, 0, True, "little-endian") m0.fromfile("MCU_WDC_U10.bin", 0x0000, 1) m0.bcols = 2 ####################################################################### # Create a pyreveng instance p = pyreveng.pyreveng(m0) ####################################################################### p.t.blockcmt += """- - """ const.fill(p, mid=0x004)
import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... import mem import const import pyreveng import render import topology import cpus.mcs6500 ####################################################################### # Set up the memory image m0 = mem.byte_mem(0, 0x010000, 0, True, "little-endian") m0.fromfile("EPROM_Z8000_Fl.Cont._S41_6-20-85.bin", 0xe000, 1) m0.bcols=8 ####################################################################### # Create a pyreveng instance p = pyreveng.pyreveng(m0) ####################################################################### p.t.blockcmt += """- The Z8000_Schematics.pdf file reveals a number of interesting facts about what, how and why for this chip. p13,p35:
import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... import mem import const import pyreveng import render import topology import cpus.z8000 ####################################################################### # Set up the memory image m0 = mem.byte_mem(0, 0x008000, 0, True, "big-endian") m0.fromfile("EPROM_C_900_boot-H_V_1.0.bin", 0, 2) m0.fromfile("EPROM_C_900_boot-L_V_1.0.bin", 1, 2) m0.bcols=8 m1 = mem.byte_mem(0, 0x008000, 0, True, "big-endian") m = mem.seg_mem(0x7f000000, 0x0000ffff) m.add_seg(0, m0) m.add_seg(1, m1) ####################################################################### # Create a pyreveng instance p = pyreveng.pyreveng(m)
def load_mem(self): l,ss,sz = self.load_size() # We want flags because part of the mem will be undefined m = mem.byte_mem(end = len(l) * ss, endian = self.endian, flags=True) return m
import os sys.path.insert(0, os.path.abspath(os.path.join(".", "..", ".."))) ####################################################################### # Stuff we need... import mem import const import pyreveng import render import topology import cpus.z8000 ####################################################################### # Set up the memory image m0 = mem.byte_mem(0, 0x008000, 0, True, "big-endian") m0.fromfile("EPROM_C_900_boot-H_V_1.0.bin", 0, 2) m0.fromfile("EPROM_C_900_boot-L_V_1.0.bin", 1, 2) m0.bcols = 8 m1 = mem.byte_mem(0, 0x008000, 0, True, "big-endian") m = mem.seg_mem(0x7f000000, 0x0000ffff) m.add_seg(0, m0) m.add_seg(1, m1) ####################################################################### # Create a pyreveng instance p = pyreveng.pyreveng(m)