mirror of
https://github.com/holub/mame
synced 2025-06-25 05:44:23 +03:00
Correct tms fix (nw)
This commit is contained in:
parent
3658b23f3a
commit
0bd06e40f5
@ -138,7 +138,7 @@ VARIANT_CANONICAL_ORDER = [
|
|||||||
|
|
||||||
def EmitWithPrefix(f, out, prefix):
|
def EmitWithPrefix(f, out, prefix):
|
||||||
for o in out:
|
for o in out:
|
||||||
print >>f, prefix + o
|
print(prefix + o, file=f)
|
||||||
|
|
||||||
class Instruction:
|
class Instruction:
|
||||||
|
|
||||||
@ -201,23 +201,23 @@ class Instruction:
|
|||||||
def EmitDasm(self, f, prefix):
|
def EmitDasm(self, f, prefix):
|
||||||
opcode, args = self.GetDasmInfo()
|
opcode, args = self.GetDasmInfo()
|
||||||
args = [", " + a for a in args]
|
args = [", " + a for a in args]
|
||||||
print >>f, "%scase 0x%02x:" % (prefix, self._id)
|
print("%scase 0x%02x:" % (prefix, self._id), file=f)
|
||||||
print >>f, "%s sprintf(buf, \"%s\"%s);" % (prefix, opcode, "".join(args))
|
print("%s sprintf(buf, \"%s\"%s);" % (prefix, opcode, "".join(args)), file=f)
|
||||||
print >>f, "%s break;" % prefix
|
print("%s break;" % prefix, file=f)
|
||||||
|
|
||||||
|
|
||||||
def EmitCdec(self, f, prefix, no, empty):
|
def EmitCdec(self, f, prefix, no, empty):
|
||||||
print >>f, "%scase 0x%02x: // %s" % (prefix, self._id, self._name)
|
print("%scase 0x%02x: // %s" % (prefix, self._id, self._name), file=f)
|
||||||
if not empty:
|
if not empty:
|
||||||
print >>f, "%s *op = %s%s;" % (prefix, no, self.GetCdecSum())
|
print("%s *op = %s%s;" % (prefix, no, self.GetCdecSum()), file=f)
|
||||||
if self._type == "f":
|
if self._type == "f":
|
||||||
for l in self._run:
|
for l in self._run:
|
||||||
print >>f, prefix + l
|
print(prefix + l, file=f)
|
||||||
else:
|
else:
|
||||||
l = TYPES[self._type]
|
l = TYPES[self._type]
|
||||||
if l:
|
if l:
|
||||||
print >>f, prefix + l
|
print(prefix + l, file=f)
|
||||||
print >>f, "%s break;" % prefix
|
print("%s break;" % prefix, file=f)
|
||||||
|
|
||||||
|
|
||||||
def ExpandCintrp(self, line, values):
|
def ExpandCintrp(self, line, values):
|
||||||
@ -267,7 +267,6 @@ class Instruction:
|
|||||||
vals = []
|
vals = []
|
||||||
for v in VARIANT_CANONICAL_ORDER:
|
for v in VARIANT_CANONICAL_ORDER:
|
||||||
if v in flags_fixed:
|
if v in flags_fixed:
|
||||||
#print "@@@@", f
|
|
||||||
vals.append("%s=%d" % (v, flags_fixed[v]))
|
vals.append("%s=%d" % (v, flags_fixed[v]))
|
||||||
out = ["case %d: // %s %s" % (no, self._name, " ".join(vals))]
|
out = ["case %d: // %s %s" % (no, self._name, " ".join(vals))]
|
||||||
for line in self.PreprocessRunString():
|
for line in self.PreprocessRunString():
|
||||||
@ -317,13 +316,6 @@ class Instruction:
|
|||||||
self._run.append(line)
|
self._run.append(line)
|
||||||
|
|
||||||
|
|
||||||
def ins_cmp_dasm(a, b):
|
|
||||||
if a._cat[0] != b._cat[0]:
|
|
||||||
return cmp(a._cat[0], b._cat[0])
|
|
||||||
else:
|
|
||||||
return cmp(a._id, b._id)
|
|
||||||
|
|
||||||
|
|
||||||
def LoadLst(filename):
|
def LoadLst(filename):
|
||||||
instructions = []
|
instructions = []
|
||||||
ins = None
|
ins = None
|
||||||
@ -345,24 +337,24 @@ def LoadLst(filename):
|
|||||||
|
|
||||||
|
|
||||||
def EmitDasm(f, ins_list):
|
def EmitDasm(f, ins_list):
|
||||||
ins_list.sort(cmp=ins_cmp_dasm)
|
ins_list.sort(key=lambda x : (x._cat, x._id))
|
||||||
last_cat = ""
|
last_cat = ""
|
||||||
for i in ins_list:
|
for i in ins_list:
|
||||||
cat = i._cat[0]
|
cat = i._cat[0]
|
||||||
if cat != last_cat:
|
if cat != last_cat:
|
||||||
if last_cat:
|
if last_cat:
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
print >>f
|
print("", file=f)
|
||||||
print >>f, "#ifdef DASM" + cat
|
print("#ifdef DASM" + cat, file=f)
|
||||||
last_cat = cat
|
last_cat = cat
|
||||||
i.EmitDasm(f, " ")
|
i.EmitDasm(f, " ")
|
||||||
print >>f
|
print("", file=f)
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
print >>f
|
print("", file=f)
|
||||||
|
|
||||||
|
|
||||||
def EmitCdec(f, ins_list):
|
def EmitCdec(f, ins_list):
|
||||||
ins_list.sort(cmp=ins_cmp_dasm)
|
ins_list.sort(key=lambda x : (x._cat, x._id))
|
||||||
no = 4
|
no = 4
|
||||||
last_cat = ""
|
last_cat = ""
|
||||||
for i in ins_list:
|
for i in ins_list:
|
||||||
@ -373,14 +365,14 @@ def EmitCdec(f, ins_list):
|
|||||||
|
|
||||||
if cat != last_cat:
|
if cat != last_cat:
|
||||||
if last_cat:
|
if last_cat:
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
print >>f
|
print("", file=f)
|
||||||
print >>f, "#ifdef CDEC" + cat
|
print("#ifdef CDEC" + cat, file=f)
|
||||||
last_cat = cat
|
last_cat = cat
|
||||||
|
|
||||||
i.EmitCdec(f, "", no, i._cat == "2b")
|
i.EmitCdec(f, "", no, i._cat == "2b")
|
||||||
no += i._variants
|
no += i._variants
|
||||||
print >>f
|
print("", file=f)
|
||||||
|
|
||||||
no = 4
|
no = 4
|
||||||
for i in ins_list:
|
for i in ins_list:
|
||||||
@ -394,24 +386,24 @@ def EmitCdec(f, ins_list):
|
|||||||
|
|
||||||
if cat != last_cat:
|
if cat != last_cat:
|
||||||
if last_cat:
|
if last_cat:
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
print >>f
|
print("", file=f)
|
||||||
print >>f, "#ifdef CDEC" + cat
|
print("#ifdef CDEC" + cat, file=f)
|
||||||
last_cat = cat
|
last_cat = cat
|
||||||
|
|
||||||
i.EmitCdec(f, "", no, i._cat == "2a")
|
i.EmitCdec(f, "", no, i._cat == "2a")
|
||||||
no += i._variants
|
no += i._variants
|
||||||
print >>f
|
print("", file=f)
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
print >>f
|
print("", file=f)
|
||||||
|
|
||||||
def EmitCintrp(f, ins_list):
|
def EmitCintrp(f, ins_list):
|
||||||
ins_list.sort(cmp=ins_cmp_dasm)
|
ins_list.sort(key=lambda x : (x._cat, x._id))
|
||||||
print >>f, "#ifdef CINTRP"
|
print("#ifdef CINTRP", file=f)
|
||||||
no = 4
|
no = 4
|
||||||
for i in ins_list:
|
for i in ins_list:
|
||||||
no = i.EmitCintrp(f, "", no)
|
no = i.EmitCintrp(f, "", no)
|
||||||
print >>f, "#endif"
|
print("#endif", file=f)
|
||||||
|
|
||||||
|
|
||||||
def CheckSelfAssign(line):
|
def CheckSelfAssign(line):
|
||||||
|
Loading…
Reference in New Issue
Block a user