Пример #1
0
def write_ctl(ctlfile, ctls, ctl_hex):
    # Write a control file
    addr_fmt = get_address_format(ctl_hex, ctl_hex == 1)
    with open(ctlfile, 'w') as f:
        for address in [a for a in sorted(ctls) if a < 65536]:
            f.write('{0} {1}\n'.format(ctls[address],
                                       addr_fmt.format(address)))
Пример #2
0
def write_ctl(ctls, ctl_hex):
    addr_fmt = get_address_format(ctl_hex, ctl_hex == 1)
    start = addr_fmt.format(min(ctls))
    write_line('@ {} {}'.format(start, AD_START))
    write_line('@ {} {}'.format(start, AD_ORG))
    for address in [a for a in sorted(ctls) if a < 65536]:
        write_line('{} {}'.format(ctls[address], addr_fmt.format(address)))
Пример #3
0
 def __init__(self, snapshot, sftfile, zfill=False, asm_hex=False, asm_lower=False):
     self.snapshot = snapshot
     self.disassembler = Disassembler(snapshot, zfill=zfill, asm_hex=asm_hex, asm_lower=asm_lower)
     self.sftfile = sftfile
     self.address_fmt = get_address_format(asm_hex, asm_lower)
     self.stack = []
     self.disassemble = True
Пример #4
0
 def __init__(self, skoolfile, elements='abtdrmscn', write_hex=0,
              preserve_base=False, min_address=0, max_address=65536, keep_lines=0):
     self.keep_lines = keep_lines > 0
     self.parser = SkoolParser(skoolfile, preserve_base, min_address, max_address, self.keep_lines)
     self.elements = elements
     self.write_asm_dirs = ASM_DIRECTIVES in elements
     self.address_fmt = get_address_format(write_hex, write_hex == 1)
Пример #5
0
 def __init__(self, snapshot, ctl_parser, options, config):
     self.comment_width = max(options.line_width - 2, MIN_COMMENT_WIDTH)
     self.asm_hex = options.base == 16
     self.disassembly = Disassembly(snapshot, ctl_parser, config, True, config['DefbSize'], config['DefbMod'],
                                    config['DefbZfill'], config['DefmSize'], self.asm_hex, options.case == 1)
     self.address_fmt = get_address_format(self.asm_hex, options.case == 1)
     self.config = config
Пример #6
0
 def __init__(self,
              skoolfile,
              elements='abtdrmsc',
              write_hex=0,
              preserve_base=False,
              min_address=0,
              max_address=65536):
     self.parser = SkoolParser(skoolfile, preserve_base, min_address,
                               max_address)
     self.elements = elements
     self.write_asm_dirs = ASM_DIRECTIVES in elements
     self.address_fmt = get_address_format(write_hex, write_hex < 0)
Пример #7
0
 def __init__(self,
              skoolfile,
              elements='abtdrmscn',
              write_hex=0,
              preserve_base=False,
              min_address=0,
              max_address=65536,
              keep_lines=0):
     self.keep_lines = keep_lines > 0
     self.assembler = get_assembler()
     self.parser = SkoolParser(skoolfile, preserve_base, self.assembler,
                               min_address, max_address, self.keep_lines)
     self.elements = elements
     self.write_asm_dirs = ASM_DIRECTIVES in elements
     self.address_fmt = get_address_format(write_hex, write_hex == 1)
Пример #8
0
 def __init__(self,
              snapshot,
              sftfile,
              zfill=False,
              asm_hex=False,
              asm_lower=False):
     self.snapshot = snapshot
     self.disassembler = Disassembler(snapshot,
                                      zfill=zfill,
                                      asm_hex=asm_hex,
                                      asm_lower=asm_lower)
     self.sftfile = sftfile
     self.address_fmt = get_address_format(asm_hex, asm_lower)
     self.stack = []
     self.disassemble = True
Пример #9
0
 def __init__(self, skoolfile, write_hex=0, preserve_base=False):
     self.skoolfile = skoolfile
     self.preserve_base = preserve_base
     self.stack = []
     self.verbatim = False
     self.address_fmt = get_address_format(write_hex, write_hex < 0)
Пример #10
0
 def __init__(self, snapshot, ctl_parser, options):
     self.comment_width = max(options.line_width - 2, MIN_COMMENT_WIDTH)
     self.disassembly = Disassembly(snapshot, ctl_parser, True, options.defb_size, options.defb_mod, options.zfill,
                                    options.defm_width, options.asm_hex, options.asm_lower)
     self.address_fmt = get_address_format(options.asm_hex, options.asm_lower)
     self.asm_hex = options.asm_hex
Пример #11
0
def write_ctl(ctlfile, ctls, ctl_hex):
    # Write a control file
    addr_fmt = get_address_format(ctl_hex, ctl_hex < 0)
    with open(ctlfile, 'w') as f:
        for address in [a for a in sorted(ctls) if a < 65536]:
            f.write('{0} {1}\n'.format(ctls[address], addr_fmt.format(address)))
Пример #12
0
 def __init__(self, skoolfile, write_hex=0, preserve_base=False):
     self.skoolfile = skoolfile
     self.preserve_base = preserve_base
     self.stack = []
     self.verbatim = False
     self.address_fmt = get_address_format(write_hex, write_hex < 0)
Пример #13
0
 def __init__(self, skoolfile, elements='btdrmsc', write_hex=0, write_asm_dirs=True,
              preserve_base=False, min_address=0, max_address=65536):
     self.parser = SkoolParser(skoolfile, preserve_base, min_address, max_address)
     self.elements = elements
     self.write_asm_dirs = write_asm_dirs
     self.address_fmt = get_address_format(write_hex, write_hex < 0)