summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Bishop <kanzure@gmail.com>2012-04-21 18:24:54 -0500
committerBryan Bishop <kanzure@gmail.com>2012-04-21 18:24:54 -0500
commit4dfc10d46ec1570a4c42493bb80ac4857ebf4cf3 (patch)
tree42eabe43d26cad616c21cef374726eb9acbdc73c
parent8edfd8f6e22d8966c2b2f9f78927107c755ad5a8 (diff)
TrainerFragments pointing to 0x26ef should be ignored
original-commit-id: 26e0ee9545f40522e4ff3f5a4c54437618d14f57
-rw-r--r--crystal.py16
1 files changed, 11 insertions, 5 deletions
diff --git a/crystal.py b/crystal.py
index c3df95e..994943c 100644
--- a/crystal.py
+++ b/crystal.py
@@ -2246,13 +2246,17 @@ class TrainerFragment(Command):
def __init__(self, *args, **kwargs):
address = kwargs["address"]
print "TrainerFragment address=" + hex(address)
- if not is_valid_address(address) or address in [0x26ef]: return
- Command.__init__(self, *args, **kwargs)
+ self.address = address
self.last_address = self.address + self.size
+ if not is_valid_address(address) or address in [0x26ef]:
+ self.include_in_asm = False
+ return
script_parse_table[self.address : self.last_address] = self
+ Command.__init__(self, *args, **kwargs)
def get_dependencies(self):
deps = []
+ if not is_valid_address(self.address): return deps
deps.append(self.params[3])
deps.extend(self.params[3].get_dependencies())
deps.append(self.params[4])
@@ -2282,12 +2286,14 @@ class TrainerFragment(Command):
class TrainerFragmentParam(PointerLabelParam):
"""used by PeopleEvent to point to trainer data"""
-
def parse(self):
address = calculate_pointer_from_bytes_at(self.address, bank=self.bank)
self.calculated_address = address
- trainerfrag = TrainerFragment(address=address, map_group=self.map_group, map_id=self.map_id, debug=self.debug)
- self.dependencies = [trainerfrag]
+ if address == 0x26ef:
+ self.dependencies = []
+ else:
+ trainerfrag = TrainerFragment(address=address, map_group=self.map_group, map_id=self.map_id, debug=self.debug)
+ self.dependencies = [trainerfrag]
PointerLabelParam.parse(self)
def get_dependencies(self):