[FE7] Generalized Support Changing Events

[6:58:47 PM] Crazy Colorz: Grab a copy of the source
[6:58:57 PM] Crazy Colorz: https://dl.dropboxusercontent.com/u/92273434/FE%20Hacking%2C%20Public%20Files/Support%20Elevator/Support%20Elevation_new.asm
[6:59:13 PM] Crazy Colorz: Er
[6:59:17 PM] Crazy Colorz: Grab it again if you already have
[6:59:20 PM] Crazy Colorz: Had to relete the first line.
[7:00:41 PM] Crazy Colorz: Okay scroll all the way to the bottom
[7:00:51 PM] Crazy Colorz: EliLowen:
mov r0, #0x01 @Eliwood
mov r1, #0x19 @Lowen
mov r2, #0xF2 @Amount
push {lr}
bl myCode
pop {r0}
bx r0
[7:01:11 PM] Crazy Colorz: Basically, copy-paste that segment and replace the character codes and the amount you want to set the support to
[7:01:22 PM | Edited 7:01:25 PM] Crazy Colorz: And give the label a name(technically it doesn’t matter, but for organization…)
[7:01:48 PM] Crazy Colorz: the lsl r0, #0x0’s above it compile to 0x00’s above it, so the start of the table is easy to spot
[7:02:00 PM] Crazy Colorz: Compiled, it looks like this
“00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 20 19 21 2C 22 00 B5 FF F7 AB FF 01 BC 00 47”
[7:02:24 PM] Crazy Colorz: So it’s easy to see the two characters involved (01 … 19 … )
[7:02:35 PM] Crazy Colorz: An the amount (2C in the code above because that’s an out of data version lol)
[7:02:56 PM] Crazy Colorz: Even better, the code you’re copy-pasting is exactly 0x10 bytes long so
[7:02:59 PM] Crazy Colorz: Easy indexing too
[7:03:18 PM] Crazy Colorz: So to call the event you just call the offset of the entry you want to make it, +0x1
[7:03:31 PM | Edited 7:03:35 PM] Crazy Colorz: For example here, It would be D200A1
[7:04:30 PM] Crazy Colorz: In fact I’m gonna post that code and this chat for everyone.

2 Likes

For FE8:

Replace Unit_Pointers with .long 0x0859A5D0 and change
ldrb r2, [r3, r2] @character in support data
to
ldrb r2, [r3, r4] @character in support data

1 Like