shithub: pokecrystal

Download patch

ref: 1342ab67db4301563d317722d04fab9473411fda
parent: ca07f1d64c0235b49160fc501553a70af8331d81
author: Bryan Bishop <kanzure@gmail.com>
date: Tue Jun 19 21:42:33 EDT 2012

more de-dependency-looping

--- a/extras/crystal.py
+++ b/extras/crystal.py
@@ -302,15 +302,7 @@
         map_group_offsets.append(offset)
     return map_group_offsets
 
-def calculate_bank(address):
-    """you are too lazy to divide on your own?"""
-    if type(address) == str:
-        address = int(address, 16)
-    if 0x4000 <= address <= 0x7FFF:
-        raise Exception, "bank 1 does not exist"
-    return int(address) / 0x4000
-
-from pointers import calculate_pointer
+from pointers import calculate_bank, calculate_pointer
 
 def calculate_pointer_from_bytes_at(address, bank=False):
     """calculates a pointer from 2 bytes at a location
--- a/extras/labels.py
+++ b/extras/labels.py
@@ -1,7 +1,7 @@
 """ Various label/line-related functions.
 """
 
-from pointers import calculate_pointer
+from pointers import calculate_pointer, calculate_bank
 
 def remove_quoted_text(line):
     """get rid of content inside quotes
--- a/extras/pointers.py
+++ b/extras/pointers.py
@@ -2,6 +2,14 @@
     depedency loops.
 """
 
+def calculate_bank(address):
+    """you are too lazy to divide on your own?"""
+    if type(address) == str: 
+        address = int(address, 16)
+    #if 0x4000 <= address <= 0x7FFF:
+    #    raise Exception, "bank 1 does not exist"
+    return int(address) / 0x4000
+
 def calculate_pointer(short_pointer, bank=None):
     """calculates the full address given a 4-byte pointer and bank byte"""
     short_pointer = int(short_pointer)
--