move code around to avoid dependency loops

This commit is contained in:
Bryan Bishop
2012-06-20 01:13:15 -05:00
parent e2babd69fb
commit ca07f1d64c
3 changed files with 183 additions and 168 deletions

15
extras/pointers.py Normal file
View File

@@ -0,0 +1,15 @@
""" Various functions related to pointer and address math. Mostly to avoid
depedency loops.
"""
def calculate_pointer(short_pointer, bank=None):
"""calculates the full address given a 4-byte pointer and bank byte"""
short_pointer = int(short_pointer)
if 0x4000 <= short_pointer <= 0x7fff:
short_pointer -= 0x4000
bank = int(bank)
else:
bank = 0
pointer = short_pointer + (bank * 0x4000)
return pointer