From 0c95d4df910c23c65195f3cf904fa0b74344a9d3 Mon Sep 17 00:00:00 2001 From: ElectronixTM Date: Sat, 29 Mar 2025 18:26:44 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20=D0=BD=D0=B0=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BB=20=D0=BF=D1=80=D0=BE=D0=BC=D1=82=D0=B5=D0=B9=D1=88=D0=B8?= =?UTF-8?q?=D0=B9=20main=20=D0=B4=D0=BB=D1=8F=20=D0=B7=D0=B0=D0=BF=D1=83?= =?UTF-8?q?=D1=81=D0=BA=D0=B0=20=D0=BD=D0=B5=D0=B9=D1=80=D0=BE=D0=BD=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.py | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) 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()