// Gear (mecha) overlay symbols (JP): hand-written part (same layout as US).
mechaInitVar5 = 0x801E8648; // mechaInitVar5[2] (Noah), 0x14 each

// ---- Names shared with US (generated by tools/share_symbols.py) ----
setTaskUpdateFunction = 0x8001CBF8;
getTaskUpdateFunction = 0x8001CC08;
spriteActorSetDirection = 0x80021E40;
setGraphicEntityScale = 0x80021E60;
setSpriteActorAngle = 0x80022218;
spawnEffectSprite = 0x80023E0C;
fadePaletteColors = 0x80026D54;
lerpPaletteColors = 0x80026DF8;
isCDBusy = 0x800284DC;
fieldModelRelocation = 0x8002C1F8;
undoFieldModelRelocation = 0x8002C2CC;
initModel5 = 0x8002C454;
submitModelForRendering = 0x8002C510;
initModel2 = 0x8002C6DC;
initModel1 = 0x8002C964;
freeModelBlock = 0x8002C9CC;
setupOverrideTPage = 0x8002CA20;
setupOverrideClut = 0x8002CA84;
uploadTextureToVram = 0x8002DBF4;
patchSelfModifyingCode = 0x80030798;
getAllocationSize = 0x800316A4;
allocateHeap = 0x800319EC;
freeHeap = 0x80031F0C;
resetMemoryAllocStats = 0x800322BC;
doPointerRelocation = 0x80033250;
loadSequence = 0x800382D0;
unloadSequence = 0x800383D4;
findSequenceInLoadedList = 0x800384F4;
fadeSoundEffectVolume = 0x8003A260;
createRotationMatrix = 0x8003F5E0;
getAngleCos = 0x8003F758;
getAngleSin = 0x8003F774;
memcpy = 0x8003F810;
rand = 0x8003F8B0;
GetTPage = 0x80043894;
GetClut = 0x800438D0;
SetSemiTrans = 0x80043A74;
SetPolyGT3 = 0x80043B00;
SetPolyFT4 = 0x80043B28;
DrawSync = 0x80044448;
LoadImage = 0x8004470C;
StoreImage = 0x80044770;
MoveImage = 0x800447D4;
SquareRoot0 = 0x80048AF4;
VectorNormal = 0x80048C24;
MulMatrix0 = 0x800490B4;
CompMatrix = 0x800491C4;
MulMatrix = 0x80049974;
MulMatrix2 = 0x80049A84;
ApplyMatrix = 0x80049B94;
SetRotMatrix = 0x80049DA4;
SetLightMatrix = 0x80049DD4;
SetColorMatrix = 0x80049E04;
SetTransMatrix = 0x80049E34;
OuterProduct12 = 0x8004A328;
RotMatrixYXZ = 0x8004A7D4;
ratan2 = 0x8004B1D4;
gDepthDivider = 0x8004F7A4;
gBattleCurrentSoundEffectSeq = 0x8005883C;
signalFieldMechaAnimEvent = 0x80078D08;
jtbl_801DC000 = 0x801DC000;
jtbl_801DC028 = 0x801DC028;
jtbl_801DC040 = 0x801DC040;
jtbl_801DC208 = 0x801DC208;
sMechaModel_init = 0x801DC22C; // type:func
processMechaMesh = 0x801DC2D0; // type:func
updateMechAnimSub1 = 0x801DC5C0; // type:func
updateMechAnimSub2 = 0x801DC848; // type:func
func_801DCC34 = 0x801DCC34; // type:func
submitAllMechaBonesForRendering = 0x801DCC3C; // type:func
freeMechaBones = 0x801DCD8C; // type:func
freeMechaModelBlocks = 0x801DCE18; // type:func
submitMechaForRendering = 0x801DCEC8; // type:func
updateMechAnimSub3 = 0x801DDBF8; // type:func
mechaSetPoseFromKeyframe = 0x801DEF10; // type:func
mechaOP_13 = 0x801DF0B4; // type:func
mechaOP_A = 0x801DF52C; // type:func
initMechaInitVar2 = 0x801DF5F4; // type:func
freeMechaInitVar2 = 0x801DF668; // type:func
initMechaInitVar2Sub0 = 0x801DF6A8; // type:func
allocateAnimTrack = 0x801DF6F0; // type:func
releaseMechaAnimTrack = 0x801DF7A8; // type:func
mechaOP_11 = 0x801DF7F4; // type:func
mechaSetupKeyframeTracksWithPose = 0x801DFAC4; // type:func
mechaOP_8 = 0x801DFE8C; // type:func
freeAnimTracks2 = 0x801DFF78; // type:func
initMechaInitVar3 = 0x801E0064; // type:func
freeMechaInitVar3 = 0x801E00DC; // type:func
initMechaInitVar3Sub = 0x801E011C; // type:func
allocateMechaTrailSegment = 0x801E0248; // type:func
releaseMechaTrailSegment = 0x801E0354; // type:func
drawMechaWheelTrail = 0x801E0398; // type:func
initMechaTrailEmitter = 0x801E0698; // type:func
stopMechaTrailEmitter = 0x801E0844; // type:func
envTileStepSine = 0x801E0850; // type:func
envTileStepRampUp = 0x801E08D4; // type:func
envTileStepRampDown = 0x801E0938; // type:func
envTileStepRampDownClamped = 0x801E0988; // type:func
initAnimatedEnvTextureTile = 0x801E0A00; // type:func
updateAnimatedEnvTextureTile = 0x801E1258; // type:func
freeAnimatedEnvTextureTile = 0x801E165C; // type:func
fadeEnvTileColorMatrix = 0x801E1708; // type:func
lerpEnvTileColorMatrix = 0x801E17B8; // type:func
refreshAttachedMechaTransforms = 0x801E1880; // type:func
initMechaCloth = 0x801E1A14; // type:func
updateAndRenderMechaCloth = 0x801E22F8; // type:func
freeMechaCloth = 0x801E3438; // type:func
getEnvTileStepFunction = 0x801E34BC; // type:func
initMechaTransforms1 = 0x801E3534; // type:func
initMechaAnimation = 0x801E35D0; // type:func
updateMechAnim = 0x801E36BC; // type:func
updateMechasBaseMatrixIsAttached = 0x801E37D0; // type:func
processMechaAnimData = 0x801E39F0; // type:func
setupBoneRotationTrack = 0x801E59D4; // type:func
setupBoneLookAtTrack = 0x801E5B50; // type:func
mechaOP_11_b = 0x801E5C74; // type:func
getMechaSoundEffectIdBase = 0x801E5CD8; // type:func
updateMechAnimSub4 = 0x801E5D44; // type:func
mechaOP_19 = 0x801E632C; // type:func
computeMechaDistanceToTarget = 0x801E6338; // type:func
updateMechaTargetPosition = 0x801E63A8; // type:func
detachMechaBoneSubtree = 0x801E6578; // type:func
reattachMechaBones = 0x801E6668; // type:func
projectOnPlaneNormalScaled = 0x801E66BC; // type:func
getFirstAnimTargetMecha = 0x801E67F8; // type:func
getMechaBitfieldForAnim = 0x801E6830; // type:func
mechaGetKeyframe = 0x801E6910; // type:func
setupBoneInterpolationTrack = 0x801E6974; // type:func
setBoneVisibility = 0x801E6D94; // type:func
spawnMechaBoneAttachedSprite = 0x801E6E48; // type:func
updateMechaBoneAttachedSprite = 0x801E6F64; // type:func
mechaOp_62 = 0x801E7094; // type:func
updateMechAnimSetupRootAltitude = 0x801E7298; // type:func
getMechaBoneMatrix = 0x801E72CC; // type:func
setMechaBytecodeToggle = 0x801E7378; // type:func
mechaInitOverlay = 0x801E738C; // type:func
mechaInitNewMecha = 0x801E742C; // type:func
renderMechas = 0x801E7D14; // type:func
freeMechaModule = 0x801E7FD4; // type:func
freeMecha = 0x801E8030; // type:func
mechaPlayAnimation = 0x801E8330; // type:func
mechaPlayAnimationFromSource = 0x801E8394; // type:func
initMechaForBattleSub0 = 0x801E8430; // type:func
getMechaColliderRadius = 0x801E8480; // type:func
initMechSub110 = 0x801E8510; // type:func
mechaBytecodeToggle = 0x801E85CC;
mechaInitVar4 = 0x801E85F4;
mechaInitVar4Counter = 0x801E8634;
mechaModelBlocksBufferForLoading = 0x801E8638;
mechaPlayAnimationVar0 = 0x801E863C;
mechaInitVar0 = 0x801E8640;
mechaFinalizeVar0 = 0x801E8644;
D_801E864C = 0x801E864C;
D_801E864E = 0x801E864E;
D_801E8650 = 0x801E8650;
D_801E8652 = 0x801E8652;
D_801E8654 = 0x801E8654;
D_801E8658 = 0x801E8658;
D_801E865A = 0x801E865A;
loadedMechas = 0x801E8670;
D_801E8674 = 0x801E8674;
D_801E8694 = 0x801E8694;
gMechaAngle = 0x801E8698;
mechaInitVar1 = 0x801E869C;
mechaInitVar3 = 0x801E86A0;
mechaInitVar2 = 0x801E86A8;
mechaPlayAnimationVar1 = 0x801E86B0;
