AE1/Memory Addresses
Here are some memory addresses the game uses.
These are from NTSC-J 1.1 but should be either usable on others versions or you can use them to help you find them.
0EBE80 x spd 0EBE84 z spd 0EBE88 y spd 0EBF38 spike hp 0F4104 shirts 0EBEB0 spike angle 0C0452/0C04FA spike angle flag after turning 180 degrees, this flag is toggled. 0EBE74 spike x pos 0EBE78 spike z pos 0EBE7C spike y pos 0EBC38 fog distance 0F4108 level timer in frames 0EBF40 gadget in hand 0F4E24 selected gadget highlight 0F4E18 facebutton layout current the game doesn't save each button separately, it's all in one memory address which saves your whole layout. 0F4E1C facebutton layout memory the game puts your current layout into here when you enter a training room. When you leave the training room, it loads this value into the current one. 0EBE6C camera focus x 0EBE70 camera focus y 139B00 selected level first level in an era is 0 and the third one is 2. Changing this value to go higher works fine and some values even have weird levels you can go into. these levels either crash your game, start some level in the current era or enter you into a different room of a level in the era (like in era 0, level 20 goes to the slingshot room in molten lava). 139AF8 selected era similiar to the selected level. First era is 0, peak point is 9. Going further reveals weird stuff. Era 10 is empty at least visually, era 11 has a model of the earth as a level (can't select it), then eras 12 to 14 show darkened level models with the specter coin icon. Things break after era 12 though, level models start to stack up until the game crashes on era 15. Going negative works, but there is a million models loaded on screen and it lags. 0F4130 chips 0F40EE level/room id hitting a loading zone or entering a level sets this value, it then uses this value to load the desired room or level. 0F40ED level/room id2 not sure what this is, changes in sync with the room id.