04-05-2015, 11:40 AM
if the check results in a branch. The routine will jump to the specified address CC CC CC and continue running from that location.
Otherwise it continues to the next line (byte/operator).
CC CC CC will be little endian value, this means the least significant value is first. So consider CC CC CC as C1 C2 C3 then the address will be reversed: $C3C2C1. Addresses in ASM refer to the snes bank addresses not the ROM address so make sure to add the header (+$200) if you have one and subtract $C00000 to get the ROM location of a pointer.
So for example:
Pointer to Character Portraits: $ED1D00 (would show up as 00 1D ED)
Location in a headered ROM: $ED1D00 - $C00000 + $000200 = $2D1F00 (in the ROM)
Otherwise it continues to the next line (byte/operator).
CC CC CC will be little endian value, this means the least significant value is first. So consider CC CC CC as C1 C2 C3 then the address will be reversed: $C3C2C1. Addresses in ASM refer to the snes bank addresses not the ROM address so make sure to add the header (+$200) if you have one and subtract $C00000 to get the ROM location of a pointer.
So for example:
Pointer to Character Portraits: $ED1D00 (would show up as 00 1D ED)
Location in a headered ROM: $ED1D00 - $C00000 + $000200 = $2D1F00 (in the ROM)