shithub: pokecrystal

Download patch

ref: 57200b6cf75040b9696ae54bdac69d5e452a2c48
parent: 82b8b5121a574b6e29c72a95fd305134fd0a08cf
author: Bryan Bishop <[email protected]>
date: Sun Feb 3 10:18:06 EST 2013

simplify load_rom in gbz80disasm

--- a/extras/gbz80disasm.py
+++ b/extras/gbz80disasm.py
@@ -14,11 +14,8 @@
 from romstr import RomStr
 
 def load_rom(filename="../baserom.gbc"):
-    """loads bytes into memory"""
     global rom
-    file_handler = open(filename, "rb")
-    rom = RomStr(file_handler.read())
-    file_handler.close()
+    rom = RomStr.load(filename=filename)
     return rom
 
 spacing = "\t"
--- a/extras/romstr.py
+++ b/extras/romstr.py
@@ -46,15 +46,17 @@
         return "RomStr(too long)"
 
     @classmethod
-    def load(cls, crystal=True, red=False):
+    def load(cls, filename=None, crystal=True, red=False):
         """ Loads a ROM into a RomStr.
         """
-        if   crystal and not red:
+        if   crystal and not red and not filename:
             file_handler = open("../baserom.gbc", "r")
-        elif red and not crystal:
+        elif red and not crystal and not filename:
             file_handler = open("../pokered-baserom.gbc", "r")
+        elif filename not in ["", None]:
+            file_handler = open(filename, "rb")
         else:
-            raise Exception, "not sure which rom to load?"
+            raise Exception("not sure which rom to load?")
         bytes = file_handler.read()
         file_handler.close()
         return RomStr(bytes)