This commit is contained in:
George Hotz
2020-12-22 10:41:12 -05:00
parent ccfd03e401
commit 5b93d9c03a
4 changed files with 2081 additions and 7 deletions

2066
ane/2_compile/aneregs.json Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -104,14 +104,19 @@ def compare(x, y):
ln2.append(a[1])
return ''.join(ss)
import json
aneregs = dict(json.load(open("aneregs.json")))
g = get_macho("model.hwx.golden" if len(sys.argv) < 2 else sys.argv[1])
f1 = g.headers[0].commands[1][2][0].section_data
f2 = a.headers[0].commands[1][2][0].section_data
for i in range(0, len(f2), 0x300):
print("===== op %d =====" % (i//0x300))
dbg = ane.debug(f1[i:i+0x300], 2)
for k,v in dbg.items():
print(k, v)
dbg1 = ane.debug(f1[i:i+0x300], 16)
dbg2 = ane.debug(f2[i:i+0x300], 16)
for k in dbg1:
if dbg1[k] != dbg2[k]:
rr = aneregs[k] if k in aneregs else (-1,-1,-1)
print("0x%3x %d %2d" % tuple(rr), k, dbg1[k], "->", dbg2[k])
if len(f1) < 0x300:
print(compare(f1, f2[i:i+0x300]))
else:

View File

@@ -3,7 +3,6 @@ from ane import ANE
ane = ANE()
lens = {}
pos = {}
dat = b"\xff"*0x300
ret = ane.debug(dat, 16)
@@ -17,6 +16,7 @@ for k,v in ret.items():
#print(k, hex(v), found)
lens[k] = found
pos = []
dat = b"\x00"*0x300
for i in range(0x300):
for j in range(8):
@@ -27,7 +27,10 @@ for i in range(0x300):
for k,v in ret.items():
if v == 1:
print("0x%3x %d %2d" % (i, j, lens[k]), k)
pos[k] = (i,j, lens[k])
pos.append((k, (i,j, lens[k])))
print(len(lens), len(pos))
import json
jpos = json.dumps(pos, indent=2)
with open("aneregs.json", "w") as f:
f.write(jpos)

View File

@@ -147,7 +147,7 @@ class ANE:
ddat += b"\x00" * (a-len(ddat))
ddat += dat[ptr+1:ptr+1+pm+4]
ptr += pm+8
ddat += b"\x00" * 8
ddat += b"\x00" * 0x100
ret = collections.OrderedDict()
for ln in libane.ANE_RegDebug(0, create_string_buffer(ddat), mems).decode('utf-8').strip().split("\n"):
lnn = ln.split(" = ")