aboutsummaryrefslogtreecommitdiff
path: root/j1/toolchain/dump.py
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2019-10-30 20:04:56 +0100
committerDimitri Sokolyuk <demon@dim13.org>2019-10-30 20:04:56 +0100
commita76977af62010a392c16010c367185e61e856ffe (patch)
tree56cf4177d5bc0e3ead781d1c60818c13b1df0f3c /j1/toolchain/dump.py
parentc0165d167d7cb40d80028bcf7a4a6b160b5a7e83 (diff)
mv to docs
Diffstat (limited to 'j1/toolchain/dump.py')
-rw-r--r--j1/toolchain/dump.py36
1 files changed, 0 insertions, 36 deletions
diff --git a/j1/toolchain/dump.py b/j1/toolchain/dump.py
deleted file mode 100644
index 283916b..0000000
--- a/j1/toolchain/dump.py
+++ /dev/null
@@ -1,36 +0,0 @@
-import sys
-import array
-
-def hexdump(s):
- def toprint(c):
- if 32 <= ord(c) < 127:
- return c
- else:
- return "."
- def hexline(i, s):
- return ("%04x: " % i + " ".join(["%02x" % ord(c) for c in s]).ljust(52) +
- "|" +
- "".join([toprint(c) for c in s]).ljust(16) +
- "|")
- return "\n".join([hexline(i, s[i:i+16]) for i in range(0, len(s), 16)])
-
-pgm = array.array('H', [int(l, 16) for l in open(sys.argv[1])])
-
-while pgm[-1] == 0:
- pgm = pgm[:-1]
-s = pgm.tostring()
-print
-print hexdump(s)
-
-link = [w for w in pgm[::-1] if w][0]
-words = []
-while link:
- name = s[link + 2:]
- c = ord(name[0])
- name = name[1:1+c]
- print "%04x %s" % (link, name)
- assert not name in words
- words.append(name)
- link = pgm[link / 2]
-print len(words), " ".join(words)
-print "program size %d/%d" % (len(pgm), 1024)