diff --git a/src/main.py b/src/main.py index 89cd420..6ce4a42 100644 --- a/src/main.py +++ b/src/main.py @@ -1,6 +1,28 @@ -def main(): - print("Hello from dp32-proto!") +from argparse import ArgumentParser +from vm import VM +def main(): + parser = ArgumentParser( + prog="DP32-emu", + description="simple emulator for DP32") + parser.add_argument( + "mem_file" + ) + parser.add_argument( + "-o", + "--output", + help="output memory file of virtual machine", + default="out.mem" + ) + args = parser.parse_args() + print(args) + with open(args.mem_file, 'rb') as f: + mem = bytearray(f.read()) + vm = VM(mem) + vm.run() + + with open(args.output, 'wb') as f: + f.write(vm.mem) if __name__ == "__main__": main()