Teq's Minor Assembly Shenanigans

After #include-ing the relevant files, those are the commands you use in order to use it in a cutscene event that you’re making.

CAM1 [12,14]
LOAD1 0x1 LORD_GRP
ENUN
FADU 15
MOVE 0x10 0x2 [12,16]
ENUN
TEXTSTART
TEXTSHOW 0x90D
MOVE 0x15 0x1 [11,17]
ENUN
TEXTCONT
SETVAL 1 Thief_Anim|0x8000000
SETVAL 2 (11|(19<<16))
ASMC Fancy_Thief_Animation|1
TEXTCONT
TEXTEND
REMA

as an example.

To explain each required command of the 'fancy animations' themselves because I feel like it might help,

SETVAL is an ‘EA raw’ or scripting command. It sets the value of one of the ‘event slots’; which probably have a better name at this point.

ASMC is the same. It passes control from the game engine to some assembly function - known as calling that function.

Pointer_To_Animation_Stuff and Thief_Anim is a label that just tells the event engine where it should look for that particular thing. The |0x08000000 is saying “this is a pointer to information in ROM”, because while the GBA is running the 0th byte of the ROM is actually loaded at the 0x08000000th byte of memory. Hardware stuff, whee!

Both are necessary because without the specified animation, you’d need six different copies of the routine in ROM (inefficient); without the specified coordinate you wouldn’t be able to dynamically set much at all.