ref: 5e1aaba09b5a57abe5b125474513ed178e7bd347
parent: 19a3f455b7660d514f3f4552ee0ea016f5d7502e
author: Bryan Bishop <kanzure@gmail.com>
date: Tue Jan 10 16:20:43 EST 2012
romviz - make an image to show progress hg-commit-id: 207abc19d569
--- /dev/null
+++ b/extras/romviz.py
@@ -1,0 +1,55 @@
+#!/usr/bin/python
+#author: Bryan Bishop <kanzure@gmail.com>
+#date: 2012-01-10
+#show me an image
+import Image
+from math import floor
+import extract_maps
+import analyze_incbins
+
+print "loading rom.."
+extract_maps.load_rom()
+#extract_maps.load_map_pointers()
+#extract_maps.read_all_map_headers()
+
+print "analyzing incbins.."
+analyze_incbins.load_asm()
+analyze_incbins.isolate_incbins()
+analyze_incbins.process_incbins()
+
+width = 1024
+height = 1024
+
+color_table = {}
+print "creating color table..."
+for value in range(0, 256):
+ color_table[value] = (value, value, value)
+
+im = Image.new("RGB", (width, height))
+
+print "drawing base color..."
+for pos in range(0, len(extract_maps.rom)):
+ widthx = pos % width
+ heighty = floor(pos / height)
+ #im.putpixel((widthx, heighty), color_table[ord(extract_maps.rom[pos])])
+ im.putpixel((widthx, heighty), (0, 0, 0))
+
+ #print "Searching for incbin... for pos= " + hex(pos)
+ #incbin_found = analyze_incbins.find_incbin_to_replace_for(pos)
+ #if incbin_found == None:
+ # im.putpixel((widthx, heighty), (0, 0, 0))
+ #else:
+ # im.putpixel((widthx, heighty), (255, 255, 255))
+
+print "drawing incbins..."
+for incbin_key in analyze_incbins.processed_incbins:
+ incbin = analyze_incbins.processed_incbins[incbin_key]
+ start = incbin["start"]
+ end = incbin["end"]
+
+ for pos in range(start, end+1):
+ widthx = pos % width
+ heighty = floor(pos / height)
+ im.putpixel((widthx, heighty), (255, 0, 0))
+
+im.save("test.png")