#!/usr/bin/env python3 import sys if len(sys.argv) != 2: print(f"Usage: {sys.argv[0]} [filename]") sys.exit(1) def decode(ins: int) -> str: if (ins & 0x8000 == 0): # mov? ldr? ldi? aaaaaaaaaaa.... return f"mov A, #{ins}" else: return "" try: with open(sys.argv[1], "rb") as f: while True: insb = f.read(2) if not insb: break ins = int.from_bytes(insb) print(f"\t{insb[0]:02x} {insb[1]:02x}\t{decode(ins)}") except FileNotFoundError: print(f"File not found.") sys.exit(1) # head, tail... except BrokenPipeError: sys.exit(0)