diff options
author | Bryan Bishop <kanzure@gmail.com> | 2013-09-21 19:34:46 -0500 |
---|---|---|
committer | Bryan Bishop <kanzure@gmail.com> | 2013-09-21 19:34:46 -0500 |
commit | 2f9df7133f39b286afe222f635be32c0699c87bf (patch) | |
tree | be032f8ddfc5d529d6f06f3873ac477b7c8a74ad | |
parent | fc3b2ded897e9bb01180a2f5ea91b6f3ca037c09 (diff) |
move get_stack into vba.crystal
-rw-r--r-- | pokemontools/vba/vba.py | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/pokemontools/vba/vba.py b/pokemontools/vba/vba.py index eafbaa1..a4c7e27 100644 --- a/pokemontools/vba/vba.py +++ b/pokemontools/vba/vba.py @@ -85,26 +85,27 @@ def call(bank, address, vba=vba, registers=registers): else: registers["pc"] = address -def get_stack(vba=vba, registers=registers): +class crystal: """ - Return a list of functions on the stack. + Just a simple namespace to store a bunch of functions for Pokémon Crystal. """ - addresses = [] - sp = registers.sp - for x in range(0, 11): - sp = sp - (2 * x) - hi = vba.read_memory_at(sp + 1) - lo = vba.read_memory_at(sp) - address = ((hi << 8) | lo) - addresses.append(address) + @staticmethod + def get_stack(vba=vba, registers=registers): + """ + Return a list of functions on the stack. + """ + addresses = [] + sp = registers.sp - return addresses + for x in range(0, 11): + sp = sp - (2 * x) + hi = vba.read_memory_at(sp + 1) + lo = vba.read_memory_at(sp) + address = ((hi << 8) | lo) + addresses.append(address) -class crystal: - """ - Just a simple namespace to store a bunch of functions for Pokémon Crystal. - """ + return addresses @staticmethod def text_wait(step_size=1, max_wait=200, sfx_limit=0, debug=False, callback=None): @@ -150,7 +151,7 @@ class crystal: break else: - stack = get_stack() + stack = crystal.get_stack() # yes/no box or the name selection box if address in range(0xa46, 0xaaf): |