summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tms57002/tmsmake.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tms57002/tmsmake.py')
-rwxr-xr-xsrc/devices/cpu/tms57002/tmsmake.py24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/devices/cpu/tms57002/tmsmake.py b/src/devices/cpu/tms57002/tmsmake.py
index 326c07776da..d4ac4b25408 100755
--- a/src/devices/cpu/tms57002/tmsmake.py
+++ b/src/devices/cpu/tms57002/tmsmake.py
@@ -4,8 +4,9 @@
from __future__ import print_function
-import sys
+import io
import re
+import sys
DASM_ARGS = {
@@ -323,7 +324,7 @@ class Instruction:
def LoadLst(filename):
instructions = []
ins = None
- for n, line in enumerate(open(filename, "rU")):
+ for n, line in enumerate(io.open(filename, "r")):
line = line.rstrip()
if not line and ins:
# new lines separate intructions
@@ -433,16 +434,19 @@ def CheckSelfAssign(line):
rhs = ls[1].strip().rstrip(';')
return lhs == rhs
-ins_list = LoadLst(sys.argv[1])
+m = sys.argv[1]
+ins_list = LoadLst(sys.argv[2])
try:
- f = open(sys.argv[2], "w")
+ f = open(sys.argv[3], "w")
except Exception:
err = sys.exc_info()[1]
- sys.stderr.write("cannot write file %s [%s]\n" % (sys.argv[2], err))
+ sys.stderr.write("cannot write file %s [%s]\n" % (sys.argv[3], err))
sys.exit(1)
-EmitDasm(f, ins_list)
-EmitCdec(f, ins_list)
-no = EmitCintrp(f, ins_list)
-EmitCintrpDecl(f, ins_list, no)
-EmitCintrpSwitch(f, ins_list, no)
+if m == "d":
+ EmitDasm(f, ins_list)
+else:
+ EmitCdec(f, ins_list)
+ no = EmitCintrp(f, ins_list)
+ EmitCintrpDecl(f, ins_list, no)
+ EmitCintrpSwitch(f, ins_list, no)