diff --git a/include/PR/n_abi.h b/include/PR/n_abi.h new file mode 100644 index 0000000000..804c4d0671 --- /dev/null +++ b/include/PR/n_abi.h @@ -0,0 +1,115 @@ +/*==================================================================== + * + * Copyright 1993, Silicon Graphics, Inc. + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, + * Inc.; the contents of this file may not be disclosed to third + * parties, copied or duplicated in any form, in whole or in part, + * without the prior written permission of Silicon Graphics, Inc. + * + * RESTRICTED RIGHTS LEGEND: + * Use, duplication or disclosure by the Government is subject to + * restrictions as set forth in subdivision (c)(1)(ii) of the Rights + * in Technical Data and Computer Software clause at DFARS + * 252.227-7013, and/or in similar or successor clauses in the FAR, + * DOD or NASA FAR Supplement. Unpublished - rights reserved under the + * Copyright Laws of the United States. + *====================================================================*/ + +#ifndef __N_ABI__ +#define __N_ABI__ + +/* + * BEGIN C-specific section: (typedef's) + */ + +#if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) + + +/* + * Macros to assemble the audio command list + */ + +#define n_aADPCMdec(pkt, s, f, c, a, d) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_ADPCM, 24, 8) | _SHIFTL(s, 0, 24)); \ + _a->words.w1 = (_SHIFTL(f, 28, 4) | _SHIFTL(c, 16, 12) | \ + _SHIFTL(a, 12, 4) | _SHIFTL(d, 0, 12)); \ +} + +#define n_aPoleFilter(pkt, f, g, t, s) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_POLEF, 24, 8) | _SHIFTL(f, 16, 8) | \ + _SHIFTL(g, 0, 16)); \ + _a->words.w1 = (_SHIFTL(t, 24, 8) | \ + _SHIFTL((unsigned int)(s), 0, 24)); \ +} + +#define n_aEnvMixer(pkt, f, t, s) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_ENVMIXER, 24, 8) | _SHIFTL(f, 16, 8) |\ + _SHIFTL(t, 0, 16)); \ + _a->words.w1 = (unsigned int)(s); \ +} + +#define n_aInterleave(pkt) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = _SHIFTL(A_INTERLEAVE, 24, 8); \ +} + +#define n_aLoadBuffer(pkt, c, d, s) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_LOADBUFF, 24, 8) | _SHIFTL(c, 12, 12)|\ + _SHIFTL(d, 0, 12)); \ + _a->words.w1 = (unsigned int)(s); \ +} + +#define n_aResample(pkt, s, f, p, i, o) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_RESAMPLE, 24, 8) | _SHIFTL(s, 0, 24));\ + _a->words.w1 = (_SHIFTL(f, 30, 2) | _SHIFTL(p, 14, 16) | \ + _SHIFTL(i, 2, 12) | _SHIFTL(o, 0, 2)); \ +} + +#define n_aSaveBuffer(pkt, c, d, s) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_SAVEBUFF, 24, 8) | _SHIFTL(c, 12, 12)|\ + _SHIFTL(d, 0, 12)); \ + _a->words.w1 = (unsigned int)(s); \ +} + +#define n_aSetVolume(pkt, f, v, t, r) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = (_SHIFTL(A_SETVOL, 24, 8) | _SHIFTL(f, 16, 8) | \ + _SHIFTL(v, 0, 16)); \ + _a->words.w1 = _SHIFTL(t, 16, 16) | _SHIFTL(r, 0, 16); \ +} + +#define n_aLoadADPCM(pkt, c, d) \ +{ \ + Acmd *_a = (Acmd *)pkt; \ + \ + _a->words.w0 = _SHIFTL(A_LOADADPCM, 24, 8) | _SHIFTL(c, 0, 24); \ + _a->words.w1 = (unsigned int) d; \ +} + +#endif /* _LANGUAGE_C */ + +#endif /* __N_ABI__ */ diff --git a/include/common_structs.h b/include/common_structs.h index d668ff6663..2d447896af 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -13,6 +13,12 @@ typedef ApiStatus(*ApiFunc)(struct Evt*, s32); typedef Bytecode EvtScript[0]; +typedef void NoArgCallback(void*); + +#define MSG_PTR u8* +#define IMG_PTR u8* +#define PAL_PTR u16* + typedef struct { u8 r, g, b, a; } Color_RGBA8; @@ -560,21 +566,29 @@ typedef DynamicEntity* DynamicEntityList[MAX_DYNAMIC_ENTITIES]; typedef struct MusicSettings { /* 0x00 */ u16 flags; - /* 0x02 */ s16 unk_02; + /* 0x02 */ s16 state; /* 0x04 */ s32 fadeOutTime; /* 0x08 */ s32 fadeInTime; - /* 0x0C */ s16 unk_0C; - /* 0x0E */ s16 unk_0E; + /* 0x0C */ s16 fadeStartVolume; + /* 0x0E */ s16 fadeEndVolume; /* 0x10 */ s32 songID; /* 0x14 */ s32 variation; /* 0x18 */ s32 songName; - /* 0x1C */ s32 unk_1C; - /* 0x20 */ s32 unk_20; - /* 0x24 */ s32 unk_24; - /* 0x28 */ s32 unk_28; - /* 0x2C */ s32 unk_2C; + /* 0x1C */ s32 battleSongID; + /* 0x20 */ s32 battleVariation; + /* 0x24 */ s32 savedSongID; + /* 0x28 */ s32 savedVariation; + /* 0x2C */ s32 savedSongName; } MusicSettings; // size = 0x30 +typedef struct MusicProximityTrigger { + /* 0x00 */ Vec2XZf pos; + /* 0x08 */ f32 innerDist; + /* 0x0C */ f32 outerDist; + /* 0x10 */ s32 unk; + /* 0x14 */ s32 manualActivationFlag; +} MusicProximityTrigger; // size = 0x18 + typedef struct UiStatus { /* 0x00 */ s32 hpIconIndices[2]; /* 0x08 */ s32 fpIconIndices[2]; @@ -908,6 +922,7 @@ typedef struct BattleStatus { /* 0x45C */ char unk_45C[4]; } BattleStatus; // size = 0x460 +// alternative name: TileDescriptor typedef struct TextureHeader { /* 0x00 */ s8 name[32]; /* 0x20 */ s16 auxW; @@ -1237,11 +1252,11 @@ typedef struct MessageCharset { } MessageCharset; // size = 0xA; typedef struct MesasgeFontGlyphData { - /* 0x0 */ s8* raster; - /* 0x4 */ s16* palette; - /* 0x8 */ Vec2b texSize; - /* 0xA */ s8 charWidth; - /* 0xB */ s8 charHeight; + /* 0x0 */ IMG_PTR raster; + /* 0x4 */ PAL_PTR palette; + /* 0x8 */ Vec2bu texSize; + /* 0xA */ u8 charWidth; + /* 0xB */ u8 charHeight; } MesasgeFontGlyphData; // size = 0xC typedef struct MessageImageData { @@ -1286,7 +1301,7 @@ typedef struct ShopItemLocation { typedef struct ShopItemData { /* 0x0 */ u32 itemID; /* 0x4 */ s32 price; - /* 0x8 */ s32 unk_08; + /* 0x8 */ s32 descMsg; } ShopItemData; // size = 0xC typedef struct ShopSellPriceData { @@ -2251,14 +2266,14 @@ typedef struct PopupMessage { /* 0x18 */ Message* message; } PopupMessage; // size = 0x1C -typedef struct Struct8015A578 { - /* 0x00 */ s8 unk_00; - /* 0x01 */ u8 unk_01; - /* 0x02 */ s8 unk_02; - /* 0x03 */ u8 unk_03[5]; - /* 0x08 */ f32 unk_08; +typedef struct HiddenPanelsData { + /* 0x00 */ s8 tryFlipTrigger; + /* 0x01 */ u8 panelsCount; + /* 0x02 */ s8 activateISpy; + /* 0x03 */ char unk_03[0x5]; + /* 0x08 */ f32 flipTriggerPosY; /* 0x0C */ char unk_0C[0x4]; -} Struct8015A578; // size = 0x10 +} HiddenPanelsData; // size = 0x10 typedef struct SpriteShadingLightSource { /* 0x00 */ s8 flags; @@ -2300,8 +2315,8 @@ typedef struct UnkStruct0 { } UnkStruct0; typedef struct FoldImageRecPart { - /* 0x00 */ s8* raster; - /* 0x04 */ s8* palette; + /* 0x00 */ IMG_PTR raster; + /* 0x04 */ PAL_PTR palette; /* 0x08 */ u16 width; /* 0x0A */ u16 height; /* 0x0C */ s16 xOffset; @@ -2326,4 +2341,108 @@ typedef struct FoldImageRec { /* 0x24 */ u8 alphaMultiplier; } FoldImageRec; // size = 0x25 +typedef struct SongUpdateEvent { + /* 0x00 */ s32 songName; + /* 0x04 */ s32 duration; + /* 0x08 */ s32 startVolume; + /* 0x0C */ s32 finalVolume; + /* 0x10 */ s32 variation; + /* 0x14 */ s32 unk14; + /* 0x18 */ s32 unk18; + /* 0x1C */ s32 unk1C; // may be fake +} SongUpdateEvent; // size = 0x1C or 0x20 + +// unfortunately, cant use bitfield for this +// format: ABCC00DD +// A = playerID +// B = trackIndex +// C = musicEventID +// D = scriptSelector +typedef u32 MusicEventTrigger; + +// allows Evt scripts to be triggered by BGM commands +typedef struct MusicEvent { + s32 musicEventID; // user-defined, events will respond to BGM Trigger commands with matching ID + EvtScript* scripts[4]; +} MusicEvent; + +typedef struct ParadeNpcInfo { + /* 0x00 */ u32 initialAnim; + /* 0x04 */ u32** animList; + /* 0x08 */ Vec3f pos; + /* 0x14 */ f32 yaw; +} ParadeNpcInfo; // size = 0x18 + +typedef struct CreditsEntry { + /* 0x00 */ s32 msgID; + /* 0x04 */ s32 posX; + /* 0x08 */ s32 posY; + /* 0x0C */ s32 palette; + /* 0x10 */ s32 appearMode; + /* 0x14 */ s32 appearTime; + /* 0x18 */ s32 perCharDelayIn; + /* 0x1C */ s32 holdMode; + /* 0x20 */ s32 holdTime; + /* 0x24 */ s32 vanishMode; + /* 0x28 */ s32 vanishTime; + /* 0x2C */ s32 perCharDelayOut; + /* 0x30 */ s32 next; + /* 0x34 */ s16 flags; + /* 0x36 */ char pad_36[2]; +} CreditsEntry; // size = 0x38 + +typedef struct CreditsLine { + /* 0x00 */ u8* message; + /* 0x04 */ s32 unk__04; + /* 0x08 */ s32 time; + /* 0x0C */ s32 state; + /* 0x10 */ s32 palette; + /* 0x14 */ s32 msgWidth; + /* 0x18 */ s32 appearMode; + /* 0x1C */ s32 appearTime; + /* 0x20 */ s32 perCharDelayIn; + /* 0x24 */ s32 unk__24; + /* 0x28 */ s32 unk__28; + /* 0x2C */ s32 unk__2C; + /* 0x30 */ s32 unk__30; + /* 0x34 */ s32 holdMode; + /* 0x38 */ s32 holdTime; + /* 0x3C */ s32 unk__3C; + /* 0x40 */ s32 unk__40; + /* 0x44 */ s32 unk__44; + /* 0x48 */ s32 unk__48; + /* 0x4C */ s32 vanishMode; + /* 0x50 */ s32 vanishTime; + /* 0x54 */ s32 perCharDelayOut; + /* 0x58 */ s32 unk__58; + /* 0x5C */ s32 unk__5C; + /* 0x60 */ s32 unk__60; + /* 0x64 */ s32 unk__64; + /* 0x68 */ s32 posX; + /* 0x6C */ s32 posY; + /* 0x70 */ s16 flags; + /* 0x72 */ char unk_72[2]; +} CreditsLine; // size = 0x74 + +typedef struct CreditsChar { + /* 0x00 */ s32 charIndex; + /* 0x04 */ s32 font; + /* 0x08 */ s32 variation; + /* 0x0C */ s32 palette; + /* 0x10 */ s32 posX; + /* 0x14 */ s32 posY; + /* 0x18 */ s32 fadeInTime; +} CreditsChar; // size = unk + +typedef struct CreditsData { + /* 0x00 */ u32 workerID; + /* 0x04 */ CreditsLine lines[32]; +} CreditsData; // size = 0x74 + +typedef struct CreditsUnkBeta { + /* 0x00 */ u8 unk_00; + /* 0x01 */ u8 unk_01; + /* 0x02 */ s16 size; +} CreditsUnkBeta; // size = 0x4 + #endif diff --git a/include/enums.h b/include/enums.h index cfbcb9ce2f..662cc83405 100644 --- a/include/enums.h +++ b/include/enums.h @@ -589,6 +589,7 @@ enum SoundIDs { SOUND_METAL_GATE_CLOSE = 0x000001CA, SOUND_1CB = 0x000001CB, SOUND_1CC = 0x000001CC, + SOUND_CREAKY_ROCKING_CHAIR = 0x000001D6, SOUND_1E2 = 0x000001E2, SOUND_211 = 0x00000211, SOUND_213 = 0x00000213, @@ -655,6 +656,7 @@ enum SoundIDs { SOUND_32E = 0x0000032E, SOUND_32F = 0x0000032F, SOUND_349 = 0x00000349, + SOUND_34A = 0x0000034A, SOUND_34E = 0x0000034E, SOUND_359 = 0x00000359, SOUND_35D = 0x0000035D, @@ -811,6 +813,68 @@ enum SoundIDs { SOUND_B000001E = 0xB000001E, }; +enum SoundInstanceFlags { + SOUND_INSTANCE_FLAG_4 = 0x00000004, +}; + +enum SoundType { + SOUND_TYPE_SPECIAL = 0x80000000, + SOUND_TYPE_LOOPING = 0, + SOUND_TYPE_DOOR1 = 1, + SOUND_TYPE_DOOR2 = 2, + SOUND_TYPE_ALTERNATING = 3 +}; + +enum SoundIDBits { + SOUND_ID_10000 = 0x00010000, + SOUND_ID_LOWER = 0x000023FF, + SOUND_ID_MID = 0x00000C00, +}; + +typedef enum AuResult { + AU_RESULT_OK = 0, + AU_ERROR_1 = 1, + AU_AMBIENCE_ERROR_1 = 1, + AU_ERROR_SONG_NOT_PLAYING = 2, // player not found for songName + AU_AMBIENCE_ERROR_2 = 2, + AU_ERROR_NULL_SONG_NAME = 3, // songName is NULL + AU_AMBIENCE_ERROR_3 = 3, + AU_ERROR_INVALID_SONG_DURATION = 4, // duration out of bounds: (250,10000) + AU_ERROR_6 = 6, + AU_ERROR_7 = 7, + AU_ERROR_11 = 11, + AU_ERROR_SBN_INDEX_OUT_OF_RANGE = 101, + AU_ERROR_SBN_FORMAT_MISMATCH = 102, + AU_ERROR_151 = 151, + AU_ERROR_201 = 201 +} AuResult; + +typedef enum AuFileFormat { + AU_FMT_BGM = 0x10, + AU_FMT_SEF = 0x20, + AU_FMT_BK = 0x30, + AU_FMT_PER = 0x40, + AU_FMT_PRG = 0x40, + AU_FMT_MSEQ = 0x40 +} AuFileFormat; + +enum { + MUSIC_PROXIMITY_FAR, + MUSIC_PROXIMITY_NEAR, + MUSIC_PROXIMITY_FULL +}; + +typedef enum MusicTrackVols { + TRACK_VOLS_0 = 0, + TRACK_VOLS_1 = 1, + TRACK_VOLS_2 = 2, + TRACK_VOLS_3 = 3, + TRACK_VOLS_KPA_OUTSIDE = 4, + TRACK_VOLS_KPA_1 = 5, + TRACK_VOLS_KPA_2 = 6, + TRACK_VOLS_KPA_3 = 7 +} MusicTrackVols; + enum Cams { CAM_DEFAULT = 0, CAM_BATTLE = 1, @@ -1338,7 +1402,10 @@ enum AmbientSounds { AMBIENT_UNDER_SEA6 = 11, AMBIENT_BIRDS = 12, AMBIENT_SEA = 13, - AMBIENT_MUSIC = 16, + AMBIENT_RADIO = 16, // radio songs for nok + // the following 4 IDs are reserved for additional radio songs, + // and no more are expected to follow after that + // see: func_80053F80 }; enum EncounterOutcomes { @@ -3696,10 +3763,25 @@ enum FoldStateFlags { FOLD_STATE_FLAG_8000 = 0x00008000, FOLD_STATE_FLAG_10000 = 0x00010000, FOLD_STATE_FLAG_20000 = 0x00020000, + FOLD_STATE_FLAG_40000 = 0x00040000, FOLD_STATE_FLAG_80000 = 0x00080000, FOLD_STATE_FLAG_100000 = 0x00100000, }; +typedef enum FoldType { + FOLD_TYPE_NONE = 0x0, + FOLD_TYPE_1 = 0x1, + FOLD_TYPE_2 = 0x2, + FOLD_TYPE_3 = 0x3, + FOLD_TYPE_4 = 0x4, + FOLD_TYPE_5 = 0x5, + FOLD_TYPE_6 = 0x6, + FOLD_TYPE_7 = 0x7, + FOLD_TYPE_8 = 0x8, + FOLD_TYPE_9 = 0x9, + FOLD_TYPE_A = 0xA, +} FoldType; + enum MoveType { MOVE_TYPE_NONE = 0, MOVE_TYPE_HAMMER = 1, diff --git a/include/functions.h b/include/functions.h index 811e6eef08..ce05b0ef89 100644 --- a/include/functions.h +++ b/include/functions.h @@ -266,11 +266,7 @@ s32 round(f32); f32 atan2(f32 startX, f32 startZ, f32 endX, f32 endZ); f32 clamp_angle(f32 theta); s32 sign(s32 value); -s32 func_80055448(s32); -s32 func_80055464(s32, s32); -s32 func_80055618(s32, s32); -s32 func_800557CC(s32); -s32 func_80055848(s32); + s32 func_800E0208(void); s32 battle_heap_create(void); @@ -515,18 +511,15 @@ f32 dist2D(f32 ax, f32 ay, f32 bx, f32 by); f32 dist3D(f32 ax, f32 ay, f32 az, f32 bx, f32 by, f32 bz); void add_vec2D_polar(f32* x, f32* y, f32 r, f32 theta); -s32 sfx_adjust_env_sound_pos(s32 soundID, s32 arg1, f32 arg2, f32 arg3, f32 arg4); -void sfx_play_sound(s32 soundID); -void sfx_play_sound_at_position(s32 soundID, s32 value2, f32 posX, f32 posY, f32 posZ); -void sfx_play_sound_at_player(s32 soundID, s32 arg0); -void sfx_play_sound_at_npc(s32 soundID, s32 arg1, s32 npcID); +//TODO -- remove these and use audio/public.h instead + s32 bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume); void bgm_set_battle_song(s32, s32); void bgm_push_battle_song(void); -void func_801497FC(s32 arg0); +s32 bgm_adjust_proximity(s32 playerIndex, s32 arg1, s16 arg2); s32 func_8014A964(s32 playerIndex, s32 songID, s32 variation, s32 fadeInTime, s16 arg4, s16 arg5); -s32 func_8014AA54(s32 playerIndex, s32 arg1, s16 arg2); -s32 func_8014AB0C(s32 playerIndex, s16 arg1); + +#include "audio/public.h" void basic_window_update(s32 windowIndex, s32* flags, s32* posX, s32* posY, s32* posZ, f32* scaleX, f32* scaleY, f32* rotX, f32* rotY, f32* rotZ, s32* darkening, s32* opacity); @@ -577,9 +570,7 @@ void update_entities(void); void func_80138198(void); void bgm_update_music_settings(void); void update_ambient_sounds(void); -void sfx_update_looping_sound_params(void); void update_windows(void); -void sfx_stop_env_sounds(void); void player_render_interact_prompts(void); void func_802C3EE4(void); void render_screen_overlay_backUI(void); @@ -597,7 +588,6 @@ void func_80028838(void); void clear_screen_overlays(void); void bgm_reset_sequence_players(void); void reset_ambient_sounds(void); -void sfx_clear_sounds(void); void poll_rumble(void); void bgm_pop_song(void); void bgm_push_song(s32 songID, s32 variation); @@ -621,8 +611,6 @@ void suspend_all_group(s32 groupFlags); void kill_script(Evt* instanceToKill); void exec_entity_commandlist(Entity* entity); -void sfx_reset_door_sounds(void); - void show_start_recovery_shimmer(f32 x, f32 y, f32 z, s32 arg3); void show_recovery_shimmer(f32 x, f32 y, f32 z, s32 arg3); @@ -778,13 +766,11 @@ s32 create_generic_entity_world(WorldArgs, WorldArgs); EntityModel* get_entity_model(s32 idx); f32 phys_get_spin_history(s32 lag, s32* x, s32* y, s32* z); -void fold_update(u32, s32, s32, s32, s32, s32, s32); +void fold_update(u32, FoldType, s32, s32, s32, s32, s32); s32 fold_appendGfx_component(s32, FoldImageRecPart*, u32, Matrix4f); s32 func_8013A704(s32); void free_generic_entity(s32); -void sfx_get_spatialized_sound_params(f32 arg0, f32 arg1, f32 arg2, s16* arg3, s16* arg4, s32 arg5); -void sfx_play_sound_with_params(s32 arg0, u8 arg1, u8 arg2, s16 arg3); s32 ai_check_fwd_collisions(Npc* npc, f32 arg1, f32* arg2, f32* arg3, f32* arg4, f32* arg5); void basic_ai_loiter_init(Evt* script, NpcAISettings* aiSettings, EnemyDetectVolume* territory); void PatrolAI_LoiterInit(Evt* script, NpcAISettings* aiSettings, EnemyDetectVolume* territory); @@ -825,19 +811,12 @@ void func_800EF3E4(void); void func_80268858(void); void func_80269118(void); s32 func_80268224(s32); -void func_80149A6C(s32, s32); void func_800EF300(void); void enable_player_shadow(void); s32 get_msg_lines(s32 messageID); void set_window_properties(s32 panelID, s32 posX, s32 posY, s32 width, s32 height, u8, void* drawContents, void* drawContentsArg, s8 parent); void set_window_update(s32 panelID, s32); void set_windows_visible(s32 groupIdx); -void snd_stop_sound(s32 soundID); -void snd_start_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); -void snd_adjust_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); - -void sfx_adjust_env_sound_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift); -void sfx_stop_sound(s32 soundID); void partner_disable_input(void); void partner_set_goal_pos(s32 x, s32 z); diff --git a/include/map.h b/include/map.h index e30c740259..3026da28dc 100644 --- a/include/map.h +++ b/include/map.h @@ -65,9 +65,4 @@ MapConfig* get_current_map_header(void); /// Zero-terminated. extern Area gAreas[29]; -/// Lists the songs that are forced to use the variation determined by `map.songVariation & 1`. -/// @see bgm_get_map_default_variation -extern s32 gSongsUsingVariationFlag[6]; -extern s16 D_8014F738; - #endif diff --git a/include/model.h b/include/model.h index ab89fb33bd..411458105d 100644 --- a/include/model.h +++ b/include/model.h @@ -78,24 +78,9 @@ typedef struct ModelTreeInfo { /* 0x03 */ char unk_03; } ModelTreeInfo; // size = 0x04 -typedef struct TileDescriptor { - /* 0x00 */ s8 name[32]; - /* 0x20 */ u16 auxW; - /* 0x22 */ u16 mainW; - /* 0x24 */ u16 auxH; - /* 0x26 */ u16 mainH; - /* 0x28 */ char unk_28; - /* 0x29 */ u8 extraTiles; - /* 0x2A */ u16 colorCombine; - /* 0x2C */ u8 bitDepth; - /* 0x2D */ u8 wrapH; - /* 0x2E */ u8 wrapV; - /* 0x2F */ u8 filtering; -} TileDescriptor; // size = 0x30 - typedef struct TextureHandle { /* 0x00 */ Gfx* gfx; - /* 0x04 */ TileDescriptor desc; + /* 0x04 */ TextureHeader header; /* 0x34 */ s32* raster; /* 0x38 */ s32* palette; /* 0x3C */ s32* auxRaster; diff --git a/include/variables.h b/include/variables.h index 866ae06f82..074ec530ec 100644 --- a/include/variables.h +++ b/include/variables.h @@ -74,13 +74,13 @@ extern s8 D_800A0900; extern f32 GravityParamsStartFall[]; extern s16 D_800F7B80; extern u8* D_801512F0; -extern s16 D_80151308; +extern u16 D_80151308; extern s32 gEntityHideMode; extern s32 D_8010C92C; extern s32 D_8010C950; extern s32 D_801595A0; -extern Struct8015A578 D_8015A578; +extern HiddenPanelsData gCurrentHiddenPanels; extern BackgroundHeader gBackgroundImage; @@ -176,7 +176,7 @@ extern f32 gCurtainFade; extern f32 gCurtainFadeGoal; extern UNK_FUN_PTR(gCurtainDrawCallback); -extern s16 gCurrentDoorSoundsSet; +extern u16 gCurrentDoorSoundsSet; extern s32 D_800D9620; extern UNK_TYPE D_800E92D8; @@ -231,12 +231,7 @@ extern EvtScript SCRIPT_NpcDefeat; extern EvtScript ShakeCam1; extern EvtScript ShakeCamX; -extern s16 gMusicUnkVolume; -extern s16 gMusicUnkVolume2; -extern s16 gMusicCurrentVolume; -extern s16 gMusicTargetVolume; extern MusicSettings gMusicSettings[4]; -extern MusicSettings D_8014F6F0; // OS extern OSThread D_800A4270; // idle thread, id 1 diff --git a/src/165490.c b/src/165490.c index b392f90441..3806730f6a 100644 --- a/src/165490.c +++ b/src/165490.c @@ -1,7 +1,7 @@ #include "common.h" #include "filemenu.h" #include "hud_element.h" -#include "audio.h" +#include "audio/public.h" #include "fio.h" extern HudScript* filemenu_hudElemScripts[14]; diff --git a/src/168590.c b/src/168590.c index 33b08625b3..037e58ccae 100644 --- a/src/168590.c +++ b/src/168590.c @@ -55,7 +55,7 @@ void filemenu_info_handle_input(void) { filemenu_8024C098 = 0; - switch(menu->page) { + switch (menu->page) { case 1: menu->page = 0; set_window_update(WINDOW_ID_51, (s32)filemenu_update_show_options_left); diff --git a/src/16F740.c b/src/16F740.c index 020797e21c..9f48092583 100644 --- a/src/16F740.c +++ b/src/16F740.c @@ -236,7 +236,7 @@ void btl_state_update_begin_player_turn(void) { gBattleState2 = BATTLE_STATE2_PLAYER_DEFEATED; } else { battleStatus->battlePhase = 0xC; - script = start_script(partner->onTurnChanceScriptSource, 0xA, 0); + script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0); partner->onTurnChangeScript = script; gBattleState2 = BATTLE_STATE2_UNK_14; partner->onTurnChangeID = script->id; @@ -462,7 +462,7 @@ void btl_state_update_begin_player_turn(void) { if (battleStatus->hammerLossTurns >= 0) { battleStatus->hammerLossTurns--; if (battleStatus->hammerLossTurns == -1) { - script = start_script(RegainAbility, 0xA, 0); + script = start_script(RegainAbility, EVT_PRIORITY_A, 0); player->takeTurnScript = script; player->takeTurnID = script->id; script->varTable[0] = 1; @@ -477,7 +477,7 @@ void btl_state_update_begin_player_turn(void) { if (battleStatus->jumpLossTurns >= 0) { battleStatus->jumpLossTurns--; if (battleStatus->jumpLossTurns == -1) { - script = start_script(RegainAbility, 0xA, 0); + script = start_script(RegainAbility, EVT_PRIORITY_A, 0); player->takeTurnScript = script; player->takeTurnID = script->id; script->varTable[0] = phi_s0_3; @@ -491,7 +491,7 @@ void btl_state_update_begin_player_turn(void) { if (battleStatus->itemLossTurns >= 0) { battleStatus->itemLossTurns--; if (battleStatus->itemLossTurns == -1) { - script = start_script(RegainAbility, 0xA, 0); + script = start_script(RegainAbility, EVT_PRIORITY_A, 0); player->takeTurnScript = script; player->takeTurnID = script->id; script->varTable[10] = 2; @@ -651,7 +651,7 @@ block_27: Evt* script; battleStatus->battlePhase = 0xC; - script = start_script(partner->onTurnChanceScriptSource, 0xA, 0); + script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0); partner->onTurnChangeScript = script; partner->onTurnChangeID = script->id; script->owner1.actorID = ACTOR_PARTNER; @@ -1037,7 +1037,7 @@ void btl_state_update_end_training_battle(void) { Evt* script; battleStatus->battlePhase = PHASE_ENEMY_BEGIN; - script = start_script(partner->onTurnChanceScriptSource, 0xA, 0); + script = start_script(partner->onTurnChanceScriptSource, EVT_PRIORITY_A, 0); partner->onTurnChangeScript = script; gBattleState2 = BATTLE_STATE2_UNK_C; partner->onTurnChangeID = script->id; @@ -1122,7 +1122,7 @@ void btl_state_update_end_battle(void) { gBattleState2 = BATTLE_STATE2_UNK_4; return; } - script = start_script(stage->postBattle, 0xA, 0); + script = start_script(stage->postBattle, EVT_PRIORITY_A, 0); battleStatus->controlScript = script; gBattleState2 = BATTLE_STATE2_UNK_3; battleStatus->controlScriptID = script->id; @@ -1274,12 +1274,12 @@ void btl_state_update_run_away(void) { player->state.varTable[0] = 100; } battleStatus->battlePhase = 3; - script = start_script(PlayerScriptDispatcher, 0xA, 0); + script = start_script(PlayerScriptDispatcher, EVT_PRIORITY_A, 0); player->takeTurnScript = script; player->takeTurnID = script->id; script->owner1.actorID = ACTOR_PLAYER; if (partner != NULL && partner->koStatus == 0) { - script = start_script(partner->takeTurnScriptSource, 0xA, 0); + script = start_script(partner->takeTurnScriptSource, EVT_PRIORITY_A, 0); partner->takeTurnScript = script; partner->takeTurnID = script->id; script->owner1.actorID = ACTOR_PARTNER; @@ -1353,12 +1353,12 @@ void btl_state_update_run_away(void) { switch (gBattleState2) { case BATTLE_STATE2_UNK_3: battleStatus->battlePhase = 7; - script = start_script(PlayerScriptDispatcher, 0xA, 0); + script = start_script(PlayerScriptDispatcher, EVT_PRIORITY_A, 0); player->takeTurnScript = script; player->takeTurnID = script->id; script->owner1.actorID = ACTOR_PLAYER; if (partner != NULL && partner->koStatus == 0) { - script = start_script(partner->takeTurnScriptSource, 0xA, 0); + script = start_script(partner->takeTurnScriptSource, EVT_PRIORITY_A, 0); partner->takeTurnScript = script; partner->takeTurnID = script->id; script->owner1.actorID = ACTOR_PARTNER; @@ -1981,7 +1981,7 @@ void btl_state_update_next_enemy(void) { Evt* onTurnChanceScript; battleStatus->battlePhase = PHASE_ENEMY_BEGIN; - onTurnChanceScript = start_script(enemy->onTurnChanceScriptSource, 0xA, 0); + onTurnChanceScript = start_script(enemy->onTurnChanceScriptSource, EVT_PRIORITY_A, 0); enemy->onTurnChangeScript = onTurnChanceScript; enemy->onTurnChangeID = onTurnChanceScript->id; onTurnChanceScript->owner1.actorID = battleStatus->activeEnemyActorID; @@ -2071,7 +2071,7 @@ void btl_state_update_partner_striking_first(void) { actor = get_actor(ACTOR_ENEMY0); if (actor->onHitScriptSource != NULL) { actor->lastEventType = EVENT_BEGIN_FIRST_STRIKE; - script = start_script(actor->onHitScriptSource, 0xA, 0x20); + script = start_script(actor->onHitScriptSource, EVT_PRIORITY_A, EVT_FLAG_20); actor->onHitScript = script; actor->onHitID = script->id; script->owner1.actorID = actor->actorID; @@ -2094,7 +2094,7 @@ void btl_state_update_partner_striking_first(void) { btl_cam_target_actor(ACTOR_PARTNER); reset_actor_turn_info(); battleStatus->battlePhase = PHASE_FIRST_STRIKE; - script = start_script(partner->takeTurnScriptSource, 0xA, 0); + script = start_script(partner->takeTurnScriptSource, EVT_PRIORITY_A, 0); partner->takeTurnScript = script; D_8029F248 = 3; gBattleState2 = BATTLE_STATE2_UNK_2; @@ -2154,7 +2154,7 @@ void btl_state_update_partner_striking_first(void) { if (actor != NULL) { if (actor->onHitScriptSource != NULL) { actor->lastEventType = EVENT_END_FIRST_STRIKE; - script = start_script(actor->onHitScriptSource, 0xA, 0x20); + script = start_script(actor->onHitScriptSource, EVT_PRIORITY_A, EVT_FLAG_20); actor->onHitScript = script; actor->onHitID = script->id; script->owner1.actorID = actor->actorID; @@ -2320,7 +2320,7 @@ void btl_state_update_enemy_striking_first(void) { enemy = battleStatus->currentTurnEnemy; reset_actor_turn_info(); battleStatus->battlePhase = 1; - script = start_script(enemy->takeTurnScriptSource, 0xA, 0); + script = start_script(enemy->takeTurnScriptSource, EVT_PRIORITY_A, 0); enemy->takeTurnScript = script; D_8029F248 = 3; enemy->takeTurnID = script->id; @@ -2455,7 +2455,7 @@ void btl_state_update_end_demo_battle(void) { if (stage->postBattle == NULL) { gBattleState2 = BATTLE_STATE2_UNK_4; } else { - battleStatus->controlScript = start_script(stage->postBattle, 0xA, 0); + battleStatus->controlScript = start_script(stage->postBattle, EVT_PRIORITY_A, 0); gBattleState2 = BATTLE_STATE2_UNK_3; battleStatus->controlScriptID = battleStatus->controlScript->id; } diff --git a/src/16c8e0.c b/src/16c8e0.c index b0b4ffa47f..ba9351a7c4 100644 --- a/src/16c8e0.c +++ b/src/16c8e0.c @@ -78,8 +78,8 @@ EvtScript BtlBringPartnerOut = { }; -extern s32 D_8029DA30; -extern s32 D_8029DA34; +extern s32 bSavedPartner; +extern s32 bSavedOverrideFlags; extern s32 D_8029DA40; extern s32 D_8029DA44; extern s32 D_8029DA48; @@ -157,7 +157,7 @@ void initialize_battle(void) { gBattleStatus.flags1 = 0; gBattleStatus.flags2 = 0; gBattleStatus.flags1 = 0; - D_8029DA34 = gOverrideFlags; + bSavedOverrideFlags = gOverrideFlags; gOverrideFlags &= ~GLOBAL_OVERRIDES_80; gBattleStatus.inputBitmask = -1; gOverrideFlags &= ~GLOBAL_OVERRIDES_80; @@ -225,7 +225,7 @@ void initialize_battle(void) { playerData->battlesCount++; } - D_8029DA30 = playerData->currentPartner; + bSavedPartner = playerData->currentPartner; if (gBattleStatus.flags2 & BS_FLAGS2_40) { playerData->currentPartner = PARTNER_TWINK; } @@ -964,14 +964,14 @@ void btl_restore_world_cameras(void) { playerStatus->position.y = D_8029EFB4; playerStatus->position.z = D_8029EFB8; - if (D_8029DA34 & 0x80) { + if (bSavedOverrideFlags & GLOBAL_OVERRIDES_80) { gOverrideFlags |= GLOBAL_OVERRIDES_80; } else { gOverrideFlags &= ~GLOBAL_OVERRIDES_80; } if (gBattleStatus.flags2 & 0x40) { - playerData->currentPartner = D_8029DA30; + playerData->currentPartner = bSavedPartner; } } diff --git a/src/17D6A0.c b/src/17D6A0.c index e9dc4b7fad..fabd8beefe 100644 --- a/src/17D6A0.c +++ b/src/17D6A0.c @@ -1528,7 +1528,7 @@ void close_action_command_instruction_popup(void) { void func_8024FB3C(void* data) { PopupMessage* popup = data; BattleStatus* battleStatus = &gBattleStatus; - s32 cond = FALSE; + s32 shouldDisposeWindow = FALSE; s32 temp_a0; @@ -1605,7 +1605,7 @@ void func_8024FB3C(void* data) { } break; case 4: - cond = TRUE; + shouldDisposeWindow = TRUE; break; case 3: popup->unk_16 = 4; @@ -1637,7 +1637,7 @@ void func_8024FB3C(void* data) { D_8029F64A = TRUE; if (temp_a0 == 0) { D_8029F64A = FALSE; - cond = TRUE; + shouldDisposeWindow = TRUE; break; } @@ -1783,11 +1783,11 @@ void func_8024FB3C(void* data) { case 1: if (gBattleStatus.flags1 & BS_FLAGS1_10000) { gBattleStatus.flags1 &= ~BS_FLAGS1_4000; - set_window_update(9, 7); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW_TRANSPARENT); popup->duration = 0; popup->unk_16 = 2; } else if (!(gBattleStatus.flags1 & BS_FLAGS1_4000) && (temp_a0 != 2)) { - set_window_update(9, 7); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW_TRANSPARENT); switch (popup->messageIndex) { case 49: hud_element_set_script(D_8029F642, &HES_MashAButton); @@ -1923,7 +1923,7 @@ void func_8024FB3C(void* data) { break; } D_8029F64A = FALSE; - cond = TRUE; + shouldDisposeWindow = TRUE; } } } @@ -1960,7 +1960,7 @@ void func_8024FB3C(void* data) { popup->unk_16 = 4; break; case 4: - cond = TRUE; + shouldDisposeWindow = TRUE; break; } break; @@ -2017,14 +2017,14 @@ void func_8024FB3C(void* data) { popup->duration--; break; } - cond = TRUE; + shouldDisposeWindow = TRUE; hud_element_free(D_8029F642); break; } break; } - if (cond) { - set_window_update(9, 2); + if (shouldDisposeWindow) { + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_HIDE); D_802838F8 = NULL; free_popup(popup); } @@ -2354,8 +2354,8 @@ void btl_show_message_popup(void* data) { width = msgWidth; numLines = get_msg_lines(messageID) - 1; height = bMsgHeights[numLines]; - set_window_properties(9, posX, posY, width, height, 0, func_80250818, popup, -1); - set_window_update(9, 1); + set_window_properties(WINDOW_ID_9, posX, posY, width, height, 0, func_80250818, popup, -1); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } break; case 73: @@ -2371,8 +2371,8 @@ void btl_show_message_popup(void* data) { posX = 160 - (msgWidth / 2); width = msgWidth; height = 40; - set_window_properties(9, posX, posY, width, height, 0, func_80250818, popup, -1); - set_window_update(9, 1); + set_window_properties(WINDOW_ID_9, posX, posY, width, height, 0, func_80250818, popup, -1); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } break; case 4: @@ -2396,8 +2396,8 @@ void btl_show_message_popup(void* data) { width = msgWidth; numLines = get_msg_lines(messageID) - 1; height = bMsgHeights[numLines]; - set_window_properties(9, posX, posY, width, height, 0, func_80250818, popup, -1); - set_window_update(9, 1); + set_window_properties(WINDOW_ID_9, posX, posY, width, height, 0, func_80250818, popup, -1); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } break; case 81: @@ -2412,8 +2412,8 @@ void btl_show_message_popup(void* data) { width = msgWidth; numLines = get_msg_lines(messageID) - 1; height = bMsgHeights[numLines]; - set_window_properties(9, posX, posY, width, height, 0, func_80250818, popup, -1); - set_window_update(9, 1); + set_window_properties(WINDOW_ID_9, posX, posY, width, height, 0, func_80250818, popup, -1); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } break; case 46: @@ -2456,11 +2456,11 @@ void btl_show_message_popup(void* data) { D_8029F650 = D_802835D8[numLines]; posY = D_8029F64E + D_8029F650; - set_window_properties(9, posX, posY, width, height, 0, func_80250818, popup, -1); + set_window_properties(WINDOW_ID_9, posX, posY, width, height, 0, func_80250818, popup, -1); if (popup->messageIndex == 0x3B) { - set_window_update(9, 1); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } else { - set_window_update(9, 8); + set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW_DARKENED); } } break; diff --git a/src/17FEB0.c b/src/17FEB0.c index 440b6e66aa..c63d9fd01f 100644 --- a/src/17FEB0.c +++ b/src/17FEB0.c @@ -456,54 +456,54 @@ s32 calc_item_damage_enemy(void) { } if ((battleStatus->currentAttackStatus & STATUS_FLAG_SLEEP) && wasStatusInflicted) { - script = start_script(DoSleepHit, EVT_PRIORITY_A, 0); + script = start_script(&DoSleepHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; sfx_play_sound_at_position(SOUND_INFLICT_SLEEP, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_DIZZY) && wasStatusInflicted) { - script = start_script(DoDizzyHit, EVT_PRIORITY_A, 0); + script = start_script(&DoDizzyHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_PARALYZE) && wasStatusInflicted) { - script = start_script(DoParalyzeHit, EVT_PRIORITY_A, 0); + script = start_script(&DoParalyzeHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_POISON) && wasStatusInflicted) { - script = start_script(DoPoisonHit, EVT_PRIORITY_A, 0); + script = start_script(&DoPoisonHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_STOP) && wasStatusInflicted) { - script = start_script(DoStopHit, EVT_PRIORITY_A, 0); + script = start_script(&DoStopHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_FROZEN) && wasStatusInflicted) { - script = start_script(DoFreezeHit, EVT_PRIORITY_A, 0); + script = start_script(&DoFreezeHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; - script->varTable[3] = target; + script->varTablePtr[3] = target; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackStatus & STATUS_FLAG_SHRINK) && wasStatusInflicted) { - script = start_script(DoShrinkHit, EVT_PRIORITY_A, 0); + script = start_script(&DoShrinkHit, EVT_PRIORITY_A, 0); script->varTable[0] = state->goalPos.x; script->varTable[1] = state->goalPos.y; script->varTable[2] = state->goalPos.z; - script->varTable[3] = target; + script->varTablePtr[3] = target; sfx_play_sound_at_position(SOUND_INFLICT_STATUS, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); } if ((battleStatus->currentAttackElement & DAMAGE_TYPE_SMASH) && (target->actorType == ACTOR_TYPE_GOOMNUT_TREE)) { diff --git a/src/18C790.c b/src/18C790.c index 8d7a491def..8db3bcc24d 100644 --- a/src/18C790.c +++ b/src/18C790.c @@ -618,7 +618,7 @@ void btl_state_update_celebration(void) { hud_element_set_tint(id, 128, 128, 128); x = 20; y = 186; - set_window_properties(8, 20, 186, 280, 32, 20, func_80260948, NULL, -1); + set_window_properties(WINDOW_ID_8, 20, 186, 280, 32, 20, func_80260948, NULL, -1); set_window_update(WINDOW_ID_8, WINDOW_UPDATE_SHOW); gBattleState2 = BATTLE_STATE2_UNK_8; } @@ -769,7 +769,7 @@ void btl_state_update_celebration(void) { width = get_msg_width(0x1D00AB, 0) + 31; x = 160 - (width / 2); y = 80; - set_window_properties(9, x, y, width, 28, 10, func_80260A20, NULL, -1); + set_window_properties(WINDOW_ID_9, x, y, width, 28, 10, func_80260A20, NULL, -1); set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); D_8029FB4C = 60; gBattleState2 = BATTLE_STATE2_UNK_10; diff --git a/src/26840_len_20d0.c b/src/26840_len_20d0.c deleted file mode 100644 index 9d37619342..0000000000 --- a/src/26840_len_20d0.c +++ /dev/null @@ -1,348 +0,0 @@ -#include "common.h" -#include "audio.h" - -void snd_SEFCmd_00_SetVolume(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_02_SetInstrument(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_03_SetReverb(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_04(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_05(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_06(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_07(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_08(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0A_EndLoop(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0B(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0C(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0D(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0E(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0F(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_10_Jump(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_13(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_14(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_15(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_16(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_17(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_18(SoundManager* manager, SoundPlayer* player); - -void func_8004B440(SoundManager* manager, u8 arg1, u8 arg2, UnkAl19E0* arg3, u8 arg4) { - u32 i; - s32 c = 0x6A25E; - - manager->soundData = arg3; - manager->unkCounterStep = 312500; - manager->unkCounterMax = manager->unkCounter = c; - manager->unk_BC = arg1; - manager->unk_BE = arg2; - - if (arg4 > 0x10) { - manager->sfxPlayerSelector = 0x10; - } else { - manager->sfxPlayerSelector = arg4; - } - - manager->unk_5C = 0x8000; - manager->unk_B8 = 0x8000; - manager->playCounter = 0; - manager->unk_60 = 0; - - for (i = 0; i < ARRAY_COUNT(manager->unk_16C); i++) { - SoundPlayer* sub = &manager->unk_16C[i]; - - sub->sefDataReadPos = 0; - sub->sfxVolume = 0; - sub->unk_8E = 0; - sub->unk_90 = 0; - sub->unk_92 = 0; - sub->unk_94 = 0; - sub->sfxPan = 0; - sub->reverb = 0; - sub->instrumentIndex = 0; - sub->unk_9E = 0; - sub->unk_9F = 0; - sub->unk_99 = 0; - sub->locatorB = 0; - sub->locatorC = 0; - sub->locatorD = 0; - sub->unk_7B = 0x40; - sub->unk_7C = 0; - sub->unk_7D = 0xB0; - sub->unk_7E = 0; - sub->unk_7F = 0; - } - - for (i = 0; i < ARRAY_COUNT(manager->unk_90); i++) { - manager->unk_90[i] = 0; - } - - for (i = 0; i < ARRAY_COUNT(manager->unk_A0); i++) { - manager->unk_A0[i].x = 0; - } - - manager->unk_168 = 0; - func_8004BA54(manager, 0); - snd_clear_sfx_queue(manager); - snd_initialize_bgm_fade(&manager->unk_40, 0, 0x7FFF, 0x7FFF); - func_80053A98(manager->unk_BE, manager->unk_40.currentVolume.u16, manager->unk_5C); - manager->unk_8C = 0xFF; - - manager->unk_64[0] = &D_80078290; - manager->unk_64[1] = &D_800782F8; - manager->unk_64[2] = &D_80078320; - manager->unk_64[3] = &D_80078348; - manager->unk_64[4] = &D_80078348; - manager->unk_64[5] = &D_80078348; - manager->unk_64[6] = &D_80078348; - manager->unk_64[7] = &D_80078348; - - manager->unk_84[0] = 0x10; - manager->unk_84[1] = 0x20; - manager->unk_84[2] = 0x20; - manager->unk_84[3] = 0x20; - manager->unk_84[4] = 0x20; - manager->unk_84[5] = 0x30; - manager->unk_84[6] = 0x40; - manager->unk_84[7] = 0x50; - - func_8004B9E4(manager, 0); -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_load_sfx_groups_from_SEF, SoundManager* manager); - -void snd_clear_sfx_queue(SoundManager* manager) { - s32 i; - - for (i = 0; i < ARRAY_COUNT(manager->unk_C2); i++) { - manager->unk_C2[i].soundID = 0; - manager->unk_C2[i].upperSoundID = 0; - manager->unk_C2[i].volume = 0; - manager->unk_C2[i].pitchShift = 0; - manager->unk_C2[i].pan = 0; - } - - manager->unk_165 = 0; - manager->sfxQueueNextPos = 0; - manager->sfxQueuePosOffset = 0; - manager->unk_162 = 0; -} - -void snd_enqueue_sfx_event(SoundManager* manager, s32 soundID, s16 volume, s16 pitchShift, u8 pan) { - u32 queuePos = manager->sfxQueueNextPos; - s32 queueAmt = manager->sfxQueueNextPos - manager->sfxQueuePosOffset; - - if (queueAmt < 0) { - queueAmt += 16; - } - - if (queueAmt < 16) { - u32 queueNextPos = queuePos; - - manager->unk_C2[queueNextPos].soundID = soundID & 0xBFFF; - manager->unk_C2[queueNextPos].upperSoundID = (((u32) soundID >> 0x10) & 0x3FF); - manager->unk_C2[queueNextPos].volume = volume; - manager->unk_C2[queueNextPos].pitchShift = pitchShift; - manager->unk_C2[queueNextPos].pan = pan; - - queueNextPos++; - if (queueNextPos >= 16) { - queueNextPos = 0; - } - - manager->sfxQueueNextPos = queueNextPos; - } -} - -INCLUDE_ASM(void, "26840_len_20d0", func_8004B748, SoundManager* manager); - -s32 func_8004B9E4(SoundManager* manager, s32 arg1) { - s32 a1 = (u8) arg1; - - if (a1 != 0xF0) { - if (a1 < 8) { - if (manager->unk_8C != a1) { - manager->unk_8C = a1; - manager->soundData->unk_40[1].unk_00 = 6; - manager->soundData->unk_40[1].unk_01 = 1; - D_8007F1F8[0] = manager->unk_64[a1]; - } - manager->unk_8D = manager->unk_84[a1]; - } else { - manager->unk_8C = 0xFF; - manager->unk_8D = 0; - } - } - return manager->unk_8C; -} - -void func_8004BA54(SoundManager* manager, s32 arg1) { - if (arg1 == 0) { - manager->unk_C0 = 0; - } else if (arg1 == 1) { - manager->unk_C0 = 1; - } -} - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004BA74); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C0E4); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C268); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C2A4); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C300); - -INCLUDE_ASM(void, "26840_len_20d0", snd_set_modifiers, SoundManager* manager, SoundSFXEntry* sfxEntry); - -void snd_set_player_modifiers(SoundManager* manager, SoundSFXEntry* sfxEntry); -INCLUDE_ASM(void, "26840_len_20d0", snd_set_player_modifiers, SoundManager* manager, SoundSFXEntry* sfxEntry); - -void func_8004C578(SoundManager*, SoundPlayer*, UnkAl48*, u32); -void func_8004C884(SoundManager*, SoundPlayer*, UnkAl48*, u32); - -s16 func_8004C444(SoundManager* arg0) { - u32 phi_a3 = arg0->sfxPlayerSelector; - u16 temp = arg0->unk_60; - u16 playCounter = arg0->playCounter; - SoundPlayer* temp_a1; - UnkAl48* temp_a2; - u8 i; - - arg0->unk_60 = temp + playCounter; - - for (i = phi_a3, phi_a3 += 8; i < (u8)phi_a3; i++){ - temp_a1 = &arg0->unk_16C[i - arg0->sfxPlayerSelector]; - if (temp_a1->sefDataReadPos != 0) { - arg0->unk_04 = temp_a2 = &arg0->soundData->unk_1320[i]; - if (arg0->unk_04->unk_45 <= arg0->unk_BC) { - arg0->unk_BF = i; - switch (temp_a1->sfxParamsFlags & 3) { - case 0: - func_8004C578(arg0, temp_a1, temp_a2, i); - break; - case 1: - func_8004C884(arg0, temp_a1, temp_a2, i); - break; - case 2: // Yes, this is needed. - break; - } - } else { - temp_a1->sefDataReadPos = NULL; - temp_a1->currentSoundID = 0; - temp_a1->unk_98 = 0; - } - } - } - return 0; -} - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C578); - -INCLUDE_ASM(s32, "26840_len_20d0", snd_get_scaled_volume); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004C884); - -INCLUDE_ASM(s32, "26840_len_20d0", snd_set_voice_volume); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004CDF8); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_00_SetVolume, SoundManager* manager, SoundPlayer* player); - -void snd_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player) { - s8 sfxPan = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->changedPan = TRUE; - player->sfxPan = sfxPan; -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_02_SetInstrument, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_03_SetReverb, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_04, SoundManager* manager, SoundPlayer* player); - -void snd_SEFCmd_05(SoundManager* manager, SoundPlayer* player) { - s32 temp_v1 = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->unk_92 = temp_v1 * 100; -} - -void snd_SEFCmd_06(SoundManager* manager, SoundPlayer* player) { - s8 temp_v1 = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->unk_94 = temp_v1; -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_07, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_08, SoundManager* manager, SoundPlayer* player); - -void snd_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player) { - s8 loopIterCount = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->loopStartPos = player->sefDataReadPos; - player->loopIterCount = loopIterCount; -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_0A_EndLoop, SoundManager* manager, SoundPlayer* player); - -void snd_SEFCmd_0B(SoundManager* manager, SoundPlayer* player) { - if (player->unk_90 != 0) { - player->unk_8E = 3; - player->sefDataReadPos--; - } -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_0C, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_0D, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_0E, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_0F, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_10_Jump, SoundManager* manager, SoundPlayer* player); - -void snd_SEFCmd_11_Restart(SoundManager* manager, SoundPlayer* player) { - player->sefDataReadPos = player->sefReadStart; -} - -void snd_SEFCmd_12_NOP(SoundManager* manager, SoundPlayer* player) { -} - -void snd_SEFCmd_13(SoundManager* manager, SoundPlayer* player) { - s8 temp_v1 = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->unk_A1 = temp_v1; -} - -void snd_SEFCmd_14(SoundManager* manager, SoundPlayer* player) { - s8 temp_v1 = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->unk_A2 = temp_v1; -} - -void snd_SEFCmd_15(SoundManager* manager, SoundPlayer* player) { - s8 temp_v1 = *player->sefDataReadPos; - - player->sefDataReadPos++; - player->unk_A3 = temp_v1; -} - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_16, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_17, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_18, SoundManager* manager, SoundPlayer* player); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004D428); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004D484); - -INCLUDE_ASM(s32, "26840_len_20d0", func_8004D4BC); diff --git a/src/28910_len_5090.c b/src/28910_len_5090.c deleted file mode 100644 index 43fe86f115..0000000000 --- a/src/28910_len_5090.c +++ /dev/null @@ -1,497 +0,0 @@ -#include "audio.h" - -INCLUDE_ASM(void, "28910_len_5090", func_8004D510, BGMPlayer* arg0); - -// Return values are being pushed into v0 in the wrong place -// May depend on data decomp -#ifdef NON_EQUIVALENT -BGMPlayer* snd_get_player_with_song_name(s32 songString) { - UnkAl19E0* temp_v1 = D_8009A664->data; - - if (songString == temp_v1->currentTrackData[0][2]) { - return D_8009A664; - } - if (songString == temp_v1->currentTrackData[1][2]) { - return D_8009A5FC; - } - return NULL; -} -#else -INCLUDE_ASM(BGMPlayer*, "28910_len_5090", snd_get_player_with_song_name, s32 songString); -#endif - -INCLUDE_ASM(s32, "28910_len_5090", snd_dispatch_bgm_player_event); - -s32 func_8004DA0C(s32 songName) { - s32 ret = 0; - - if (songName != 0) { - BGMPlayer* player = snd_get_player_with_song_name(songName); - - do {} while (0); - - do { - if (player == NULL) { - ret = 2; - } else if (songName == player->songName) { - func_8004DAA8(player); - ret = 0; - } - } while (0); - } else { - ret = 3; - } - - return ret; -} - -void func_8004DA74(void) { - func_8004DAA8(D_8009A664); - func_8004DAA8(D_8009A5FC); -} - -void func_8004DAA8(BGMPlayer* player) { - if (player->unk_221 != 0) { - player->unk_221 = 4; - player->unk_10 = 1; - player->unkFrequency = 1; - snd_clear_bgm_fade(&player->fadeInfo); - } -} - -s32 snd_is_song_playing(s32 songName) { - if (songName != 0) { - BGMPlayer* player = snd_get_player_with_song_name(songName); - - if (player != NULL) { - return songName == player->songName; - } - return 2; - } - return 3; -} - -INCLUDE_ASM(s32, "28910_len_5090", func_8004DB28); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004DB4C); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004DC80); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004DCB8); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004DE2C); - -INCLUDE_ASM(void, "28910_len_5090", func_8004DFD4, UnkAl19E0* arg0); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004E0F4); - -void func_8004E158(BGMPlayer* player, s32 arg1, s32 arg2, UnkAl19E0* arg3) { - s16 i; - - player->data = arg3; - func_8004E880(player, 0x2625A, 0x30); - player->unk_48 = 0x8000; - player->unk_B0 = 0x3CF0; - player->unk_C0 = 0x7F000000; - player->unk_22B = 1; - player->unk_14 = 0; - player->unk_18 = 0; - player->songName = 0; - player->fadeSongName = 0; - player->unk_58 = 0; - player->unk_5A = 0; - player->unk_68 = 0; - player->unk_6C = 0; - player->unk_70 = 0; - player->unk_BC = 0; - player->unk_B8 = 0; - player->unk_B4 = 0; - player->unk_CC = 0; - player->unk_C8 = 0; - player->unk_C4 = 0; - player->unk_20C = 0; - player->unk_20E = 0; - player->unk_220 = 0; - player->unk_204 = 0; - player->unk_232 = 0; - player->unk_221 = 0; - player->unk_234 = arg1; - player->unk_235 = arg2; - player->unk_168 = 0; - player->unk_222 = 0; - player->unk_223 = 0; - player->unk_22A = 0; - player->unk_22C = 0; - player->unk_D0 = 1.0f; - player->unk_22D = 0; - player->unk_22F = 2; - player->unk_230 = 3; - player->unk_22E = 0; - player->unk_231 = 4; - - for (i = 0; i < ARRAY_COUNT(player->unk_25C); i++) { - BGMPlayerTrack* temp = &player->unk_25C[i]; - - temp->subTrackVolume = 0; - temp->unk_28 = 0; - temp->subTrackCoarseTune = 0; - temp->subTrackFineTune = 0; - temp->subTrackPan = 0; - temp->subTrackReverb = 0; - temp->unk_44 = 0; - temp->unk_58 = 0; - temp->segTrackVolume = 0x7F; - temp->unk_4C = 0; - - if (i < ARRAY_COUNT(player->unk_238)) { - player->unk_238[i] = 0; - } - } - - for (i = 0; i < ARRAY_COUNT(player->unk_85C); i++) { - UnkAl24* temp = &player->unk_85C[i]; - - temp->unk_08 = 0; - temp->unk_0A = 0; - temp->unk_0C = 0; - temp->unk_14 = 0; - temp->unk_16 = 0; - temp->unk_17 = 0; - } - - func_80053AEC(&player->fadeInfo, 0x7FFF); - func_80055110(player); -} - - -INCLUDE_ASM(s32, "28910_len_5090", func_8004E344); - -void snd_update_bgm_fade(BGMPlayer* player) { - player->fadeInfo.fadeTime--; - - if (player->fadeInfo.fadeTime != 0) { - player->fadeInfo.currentVolume.s32 += player->fadeInfo.fadeStep; - } else { - player->fadeInfo.currentVolume.s32 = player->fadeInfo.endVolume << 16; - - if (player->fadeInfo.fpFadeCallback != NULL) { - player->fadeInfo.fpFadeCallback(); - } - - if (player->fadeSongName != 0) { - func_8004DC80(player->fadeSongName); - } else if (player->fadeInfo.currentVolume.s32 == 0) { - func_8004DAA8(player); - } - } - func_8004E444(player); -} - -void func_8004E444(BGMPlayer* arg0) { - u16 mult = (arg0->fadeInfo.currentVolume.u16 * arg0->fadeInfo.unk_10.u16) >> 15; - s32 i; - - for (i = 0; i < 4; i++) { - s8 temp = arg0->unk_4C[i]; - - if (temp < 0) { - return; - } - func_80053A98(temp, mult, arg0->unk_48); - } -} - -INCLUDE_ASM(s16, "28910_len_5090", func_8004E4B8, BGMPlayer* player); - -INCLUDE_ASM(s32, "28910_len_5090", snd_initialize_bgm_player, BGMPlayer* player); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004E844); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004E880); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004E904); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004EA34); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004EAD4); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004EC04); - -INCLUDE_ASM(s32, "28910_len_5090", func_8004EC68); - -void snd_BGMCmd_E0_MasterTempo(BGMPlayer* player, BGMPlayerTrack* track) { - u32 unk_D4 = player->unk_D4.u16; - s32 temp_v0; - - player->unk_208 = unk_D4; - temp_v0 = snd_bpm_to_tempo(player, unk_D4); - player->unk_B0 = temp_v0; - player->unkFrequency = temp_v0 * 10; - player->unk_BC = 0; - player->unk_B8 = 0; - player->unk_B4 = 0; -} - -s32 snd_bpm_to_tempo(BGMPlayer* player, u32 tempo) { - u32 unk_20A = player->unk_20A; - u32 ret = tempo; - - ret *= player->unk_D0; - - if (unk_20A < ret) { - ret = unk_20A; - } else if (ret == 0) { - ret = 1; - } - - return ret * 100; -} - -void snd_BGMCmd_E1_MasterVolume(BGMPlayer* player, BGMPlayerTrack* track) { - s32 unk_D4 = player->unk_D4.u8[0] & 0x7F; - - if (unk_D4 != 0) { - unk_D4 = unk_D4 << 0x18; - } - - player->unk_C0 = unk_D4; - player->unk_CC = 0; - player->unk_C8 = 0; - player->unk_C4 = 0; - player->unk_21A = 1; - track->volumeChanged = 1; -} - -void snd_BGMCmd_E2_MasterTranspose(BGMPlayer* player, BGMPlayerTrack* track) { - player->unk_20C = (s8)player->unk_D4.u8[0] * 100; -} - -void snd_BGMCmd_E3(BGMPlayer* player, BGMPlayerTrack* track) { - player->data->unk_40[player->unk_235].unk_00 = player->unk_D4.u8[0]; - player->data->unk_40[player->unk_235].unk_01 = 1; -} - -void snd_BGMCmd_E6_MasterEffect(BGMPlayer* player, BGMPlayerTrack* track) { - u8 unk_D4 = player->unk_D4.u8[0]; - u32 temp_v1 = player->unk_4C[unk_D4]; - - if ((unk_D4 < 4) && (temp_v1 < 0x80)) { - if (player->data->unk_40[temp_v1].unk_00 != player->unk_D4.u8[1]) { - player->data->unk_40[temp_v1].unk_00 = player->unk_D4.u8[1]; - player->data->unk_40[temp_v1].unk_01 = 1; - } - player->unk_224[unk_D4] = player->unk_D4.u8[1]; - } -} - -void snd_BGMCmd_E4_MasterTempoFade(BGMPlayer* player, BGMPlayerTrack* track) { - s32 unk_D4 = player->unk_D4.u16; - s32 temp_a0 = snd_bpm_to_tempo(player, player->unk_D6.u16); - s32 temp_v0; - - if (unk_D4 <= 0) { - unk_D4 = 1; - } - temp_v0 = (temp_a0 - player->unk_B0) / unk_D4; - - player->unk_BC = unk_D4; - player->unk_B8 = temp_a0; - player->unk_B4 = temp_v0; -} - -void snd_BGMCmd_E5_MasterVolumeFade(BGMPlayer* player, BGMPlayerTrack* track) { - s32 temp_a1 = player->unk_D4.u16; - s32 temp_a2 = player->unk_D6.u8[0] & 0x7F; - - if (temp_a2 != 0) { - temp_a2 = temp_a2 << 0x18; - } - - if (temp_a1 <= 0) { - temp_a1 = 1; - } - - player->unk_CC = temp_a1; - player->unk_C8 = temp_a2; - player->unk_C4 = (temp_a2 - player->unk_C0) / temp_a1; -} - -void snd_BGMCmd_E8_TrackOverridePatch(BGMPlayer* player, BGMPlayerTrack* track) { - track->unk_44 = player->unk_D4.u8[1]; - track->unk_0C = func_80053BE8(player->data, player->unk_D4.u8[0], track->unk_44, track->unk_10); -} - -void snd_BGMCmd_E9_SubTrackVolume(BGMPlayer* arg0, BGMPlayerTrack* track) { - u32 unk_D4 = arg0->unk_D4.u8[0] & 0x7F; - - if (unk_D4 != 0) { - unk_D4 = unk_D4 << 0x18; - } - - track->subTrackVolume = unk_D4; - track->volumeChanged = 1; -} - -void snd_BGMCmd_F6_TrackVolumeFade(BGMPlayer* player, BGMPlayerTrack* track) { - s32 temp_a0 = player->unk_D6.u8[0] & 0x7F; - s32 temp_a2 = player->unk_D4.u16; - - if (temp_a0 != 0) { - temp_a0 = temp_a0 << 0x18; - } - - if (temp_a0 != track->subTrackVolume) { - if (temp_a2 <= 0) { - temp_a2 = 1; - } - - track->subTrackVolumeFadeTime = temp_a2; - track->subTrackVolumeFadeVolume = temp_a0; - track->subTrackVolumeFadeDelta = (temp_a0 - track->subTrackVolume) / temp_a2; - } -} - -void snd_BGMCmd_EA_SubTrackPan(BGMPlayer* player, BGMPlayerTrack* track) { - track->subTrackPan = player->unk_D4.u8[0] & 0x7F; - track->unk_57 = 0; - track->panChanged = 1; -} - -void snd_BGMCmd_EB_SubTrackReverb(BGMPlayer* player, BGMPlayerTrack* track) { - track->subTrackReverb = player->unk_D4.u8[0] & 0x7F; - track->reverbChanged = 1; -} - -void snd_BGMCmd_EC_SegTrackVolume(BGMPlayer* player, BGMPlayerTrack* track) { - track->segTrackVolume = player->unk_D4.u8[0] & 0x7F; - track->volumeChanged = 1; -} - -void snd_BGMCmd_ED_SubTrackCoarseTune(BGMPlayer* player, BGMPlayerTrack* track) { - track->subTrackCoarseTune = (s8)player->unk_D4.u8[0] * 100; -} - -void snd_BGMCmd_EE_SubTrackFineTune(BGMPlayer* player, BGMPlayerTrack* track) { - track->subTrackFineTune = player->unk_D4.u8[0]; -} - -void snd_BGMCmd_EF_SegTrackTune(BGMPlayer* player, BGMPlayerTrack* track) { - track->segTrackTune = player->unk_D4.u16; - track->tuneChanged = 1; -} - -void snd_BGMCmd_F0_TrackTremolo(BGMPlayer* player, BGMPlayerTrack* track) { - track->trackTremoloAmount = player->unk_D4.u8[0]; - track->trackTremoloSpeed = player->unk_D4.u8[1]; - track->trackTremoloTime = player->unk_D6.u8[0]; -} - -void snd_BGMCmd_F1_TrackTremoloSpeed(BGMPlayer* player, BGMPlayerTrack* track) { - track->trackTremoloSpeed = player->unk_D4.u8[0]; -} - -void snd_BGMCmd_F2_TrackTremoloTime(BGMPlayer* player, BGMPlayerTrack* track) { - track->trackTremoloTime = player->unk_D4.u8[0]; -} - -void snd_BGMCmd_F3_TrackTremoloStop(BGMPlayer* player, BGMPlayerTrack* track) { - track->trackTremoloTime = 0; -} - -void snd_BGMCmd_F4(BGMPlayer* player, BGMPlayerTrack* track) { - track->subTrackPan = player->unk_D4.u8[0] & 0x7F; - track->unk_57 = player->unk_D4.u8[1] & 0x7F; -} - -INCLUDE_ASM(void, "28910_len_5090", snd_BGMCmd_F5_TrackVoice, BGMPlayer* player, BGMPlayerTrack* track); - -void snd_BGMCmd_F7_SubTrackReverbType(BGMPlayer* player, BGMPlayerTrack* track) { - u8 temp_v0 = player->unk_D4.u8[0]; - u8 temp_v1 = player->unk_4C[temp_v0]; - - if ((temp_v0 < 4) && ((s8)temp_v1 >= 0)) { - track->subtrackReverbType = temp_v1; - } else { - track->subtrackReverbType = player->unk_235; - } -} - -// unk_D4 type shenanigans -#ifdef NON_EQUIVALENT -void snd_BGMCmd_FD(BGMPlayer* player, BGMPlayerTrack* track) { - func_800560BC(player->unk_234, track->unk_5C, player->unk_D4.u16 >> 8); -} -#else -INCLUDE_ASM(void, "28910_len_5090", snd_BGMCmd_FD, BGMPlayer* player, BGMPlayerTrack* track); -#endif - -void snd_BGMCmd_FE(BGMPlayer* player, BGMPlayerTrack* track) { - s32 temp = player->unk_D4.u16 + (s32)player->unk_64; - - track->unk_3E = player->unk_D6.u8[0]; - track->unk_04 = track->bgmReadPos; - track->bgmReadPos = temp; -} - -INCLUDE_ASM(void, "28910_len_5090", snd_BGMCmd_FC_Jump, BGMPlayer* player, BGMPlayerTrack* track); - -INCLUDE_ASM(void, "28910_len_5090", snd_BGMCmd_FF, BGMPlayer* player, BGMPlayerTrack* track); - -void snd_BGMCmd_NOP(BGMPlayer* player, BGMPlayerTrack* track) { -} - -INCLUDE_ASM(s32, "28910_len_5090", func_80050568); - -INCLUDE_ASM(s32, "28910_len_5090", func_800505E4); - -INCLUDE_ASM(s32, "28910_len_5090", func_80050654); - -INCLUDE_ASM(s32, "28910_len_5090", func_8005068C); - -INCLUDE_ASM(s32, "28910_len_5090", func_800506C8, s32 arg0, s32 arg1); - -void func_80050770(BGMPlayer* player, f32 arg1) { - if (arg1 > 2.0) { - arg1 = 2.0f; - } else if (arg1 < 0.25) { - arg1 = 0.25f; - } - - player->unk_D0 = arg1; - player->unk_B0 = snd_bpm_to_tempo(player, player->unk_208); - player->unkFrequency = player->unk_B0 * 10; - player->unk_BC = 0; - player->unk_B8 = 0; - player->unk_B4 = 0; -} - -void func_80050818(BGMPlayer* player, s32 arg1) { - if (arg1 > 1200) { - arg1 = 1200; - } else if (arg1 < -2400) { - arg1 = -2400; - } - - player->unk_20E = arg1; -} - -void func_8005083C(BGMPlayer* arg0, s32 arg1, s16 arg2, s8 arg3) { - BGMPlayerTrack* temp_a1 = &arg0->unk_25C[arg1]; - - if (temp_a1->bgmReadPos != 0) { - arg0->unk_D4.u16 = arg2; - arg0->unk_D6.u8[0] = arg3; - snd_BGMCmd_F6_TrackVolumeFade(arg0, temp_a1); - } -} - -void func_8005087C(BGMPlayer* player, s32* arg1, s32 arg2) { - player->unk_204 = arg1; - player->unk_232 = arg2; -} - -INCLUDE_ASM(s32, "28910_len_5090", func_80050888); - -INCLUDE_ASM(s32, "28910_len_5090", func_80050900); - -INCLUDE_ASM(s32, "28910_len_5090", func_80050970); diff --git a/src/2BF90.c b/src/2BF90.c deleted file mode 100644 index 15addbfbac..0000000000 --- a/src/2BF90.c +++ /dev/null @@ -1,97 +0,0 @@ -#include "audio.h" - -INCLUDE_ASM(s32, "2BF90", func_80050B90); - -s32 func_80050C30(u32 arg0) { - if (D_8009A628->unk_20 <= arg0) { - return 3; - } else { - return 0; - } -} - -void func_80050C54(s32 arg0, s8 arg1) { - D_8009A628->unk_21 = arg1; -} - -INCLUDE_ASM(s32, "2BF90", func_80050C64); - -INCLUDE_ASM(s32, "2BF90", func_80050CA0); - -INCLUDE_ASM(void, "2BF90", func_80050D50, UnkAl1E4* arg0); - -INCLUDE_ASM(s32, "2BF90", func_80050E18); - -INCLUDE_ASM(s32, "2BF90", func_80050E84); - -INCLUDE_ASM(s32, "2BF90", func_80050EF0); - -INCLUDE_ASM(s32, "2BF90", func_80050F64); - -INCLUDE_ASM(s32, "2BF90", func_80050FD0); - -INCLUDE_ASM(s32, "2BF90", func_80051050); - -INCLUDE_ASM(s32, "2BF90", func_800510A4); - -void func_800511BC(UnkAl834* arg0) { - u32 i; - s32 j; - - for (i = 0; i < ARRAY_COUNT(arg0->unk_7B4); i++) { - UnkAl8* temp = &arg0->unk_7B4[i]; - - if ((temp->unk_00.u8[3] == 1) && (arg0->unk_00->unk_1320[i].unk_45 != arg0->unk_22)) { - temp->unk_00.s32 = 0; - } - } - - for (j = 0; j < ARRAY_COUNT(arg0->unk_24); j++) { - UnkAl1E4* temp = &arg0->unk_24[j]; - s32 var; - - if (temp->unk_08 != 0) { - if (arg0->unk_21 != 0) { - func_80051334(arg0, temp); - } - - var = temp->unk_24; - if (var != 0) { - if (var == 3) { - temp->unk_24 = 2; - func_800522A8(arg0, temp); - func_800521E8(arg0, temp); - } else if (temp->unk_24 == 1) { - temp->unk_24 = 0; - if (temp->unk_28 != 0) { - func_80050D50(temp); - } - func_8005232C(arg0, temp); - } - } else { - if (temp->unk_28 != 0) { - func_80050D50(temp); - } - if (temp->unk_25 == 2) { - func_800521E8(arg0, temp); - temp->unk_25 = 1; - } - func_80051434(arg0, temp); - } - } - } - - arg0->unk_21 = 0; -} - -INCLUDE_ASM(void, "2BF90", func_80051334, UnkAl834* arg0, UnkAl1E4* arg1); - -INCLUDE_ASM(void, "2BF90", func_80051434, UnkAl834* arg0, UnkAl1E4* arg1); - -INCLUDE_ASM(s32, "2BF90", func_800521D0); - -INCLUDE_ASM(void, "2BF90", func_800521E8, UnkAl834* arg0, UnkAl1E4* arg1); - -INCLUDE_ASM(void, "2BF90", func_800522A8, UnkAl834* arg0, UnkAl1E4* arg1); - -INCLUDE_ASM(void, "2BF90", func_8005232C, UnkAl834* arg0, UnkAl1E4* arg1); diff --git a/src/2d9a0_len_890.c b/src/2d9a0_len_890.c deleted file mode 100644 index 75d96b277c..0000000000 --- a/src/2d9a0_len_890.c +++ /dev/null @@ -1,58 +0,0 @@ -#include "common.h" -#include "audio.h" - -void func_800525A0(UnkAl19E0* arg0) { - s32 i; - - for (i = 0; i < ARRAY_COUNT(arg0->unk_1320); i++) { - UnkAl48* temp = &arg0->unk_1320[i]; - - if (temp->unk_42 != 0) { - func_80056EE8(i); - temp->unk_42 = 0; - temp->unk_1C = NULL; - temp->unk_45 = 0; - } - } -} - -void func_80052614(UnkAl19E0* arg0) { - s32 i; - - for (i = 0; i < ARRAY_COUNT(arg0->unk_1320); i++) { - UnkAl48* temp = &arg0->unk_1320[i]; - - temp->unk_1C = 0; - temp->unk_20 = 0; - temp->unk_24 = 0; - temp->unk_28 = 0; - temp->unk_3B = 0; - temp->unk_3C = 0; - temp->unk_3D = 0; - temp->unk_3E = 0; - temp->unk_3F = 0x80; - } -} - -INCLUDE_ASM(void, "2d9a0_len_890", func_80052660, UnkAl19E0* arg0); - -void func_80052B44(UnkAl48* arg0) { - s32 temp_lo = ((arg0->unk_3A * arg0->unk_40 * arg0->unk_3F) >> 14) * arg0->unk_30; - - arg0->unk_0C = temp_lo >> 7; - arg0->unk_08 = func_80052BC0(arg0->unk_28); - arg0->unk_3D &= ~0x2; - arg0->unk_43 |= 0x4; -} - -s32 func_80052BC0(s32 arg0) { - return (arg0 / 5750) * 0xB8; -} - -INCLUDE_ASM(void, "2d9a0_len_890", func_80052BF8, UnkAl48* arg0, s32* arg1); - -INCLUDE_ASM(s32, "2d9a0_len_890", func_80052CFC, UnkAl48* arg0); - -void func_80052E18(UnkAl48* arg0) { - arg0->unk_3D |= 0x20; -} diff --git a/src/2e230_len_2190.c b/src/2e230_len_2190.c deleted file mode 100644 index 92694d32e1..0000000000 --- a/src/2e230_len_2190.c +++ /dev/null @@ -1,1107 +0,0 @@ -#include "audio.h" - -// data -extern u16 D_80078530[]; -extern s32 D_8007854C[2]; -extern u8 D_80078580[]; -extern f32 D_80078730[]; - -void func_80052E30(u8 index) { - UnkAl48* temp = &D_8009A5C0->unk_1320[index]; - - temp->unk_1C = 0; - temp->unk_45 = 0; -} - -void snd_load_audio_data(s32 frequency) { - UnkAl19E0* temp4; - s32* temp_v0_2; - ALHeap* alHeap; - u32 i; - SBNFileEntry fileEntry; - u8 temp6[4]; - UnkAl48* temp5; - - alHeap = D_80078E54->heap; - D_8009A5C0 = alHeapAlloc(alHeap, 1, 0x19E0); - - D_8009A664 = alHeapAlloc(alHeap, 1, sizeof(BGMPlayer)); - D_8009A5FC = alHeapAlloc(alHeap, 1, sizeof(BGMPlayer)); - D_8009A5CC = alHeapAlloc(alHeap, 1, sizeof(BGMPlayer)); - D_8009A640 = alHeapAlloc(alHeap, 1, 0x6CC); - D_8009A628 = alHeapAlloc(alHeap, 1, 0x834); - D_8009A664->soundManager = D_8009A640; - D_8009A628->unk_00 = D_8009A5C0; - - - temp4 = D_8009A5C0; - temp_v0_2 = alHeapAlloc(alHeap, 1, 0x8000); - temp4->currentTrackData[0] = &temp_v0_2[0]; - temp4->currentTrackData[1] = &temp_v0_2[0x1400]; - temp4->currentTrackData[2] = &temp_v0_2[0x1C00]; - temp4->currentTrackData[3] = &temp_v0_2[0x1400]; - - for (i = 0; i < 1; i++) { - temp4->unk_6C[i].unk_0 = alHeapAlloc(alHeap, 1, sizeof(BGMPlayer)); - } - - temp4->dataSEF = alHeapAlloc(alHeap, 1, 0x5200); - temp4->defaultInstrument = alHeapAlloc(alHeap, 1, sizeof(Instrument)); - temp4->dataPER = alHeapAlloc(alHeap, 1, 6 * sizeof(PEREntry)); - temp4->dataPRG = alHeapAlloc(alHeap, 1, 0x200); - temp4->unk_94 = alHeapAlloc(alHeap, 1, 0x40); - temp4->actualFrequency = frequency; - snd_reset_instrument(temp4->defaultInstrument); - func_80053370(&temp4->unk_08); - func_800533A8(&temp4->defaultPRGEntry); - func_8005610C(); - - temp4->unk_A4[0] = NULL; - temp4->unk_A4[1] = NULL; - - for (i = 0; i < 1; i++) { - temp4->unk_6C[i].unk_4 = 0; - temp4->unk_6C[i].unk_5 = 0; - } - - for (i = 0; i < 4; i++) { - temp4->unk_40[i].unk_00 = 0; - temp4->unk_40[i].unk_01 = 0; - } - - for (i = 0; i < 24; i++) { - func_80056EC0(i, 0); - func_80057224(i, temp4->defaultInstrument); - temp5 = &temp4->unk_1320[i]; - temp5->unk_00 = 0; - temp5->unk_04 = 0; - temp5->unk_0C = -1; - temp5->unk_0E = 0xFF; - temp5->unk_0F = 0xFF; - temp5->unk_10 = 0; - temp5->unk_42 = 0; - temp5->unk_43 = 0; - temp5->unk_44 = 0; - temp5->unk_45 = 0; - } - - snd_load_INIT(temp4, 0xF00000, alHeap); - - for (i = 0; i < 3; i++) { - temp4->banks[i] = alHeapAlloc(alHeap, 1, 0x840); - } - - func_8004E158(D_8009A664, 1, 0, temp4); - temp6[0] = 0; - temp6[1] = 3; - temp6[2] = 0xff; - temp6[3] = 0xff; - func_8004E344(D_8009A664, temp6); - func_8004E158(D_8009A5FC, 2, 2, temp4); - temp6[0] = 2; - temp6[1] = 0xff; - temp6[2] = 0xff; - temp6[3] = 0xff; - func_8004E344(D_8009A5FC, temp6); - func_8004B440(D_8009A640, 4, 1, temp4, 0x10); - func_80050B90(D_8009A628, 6, 1, temp4); - func_80052614(temp4); - snd_load_BK_headers(temp4, alHeap); - if (snd_fetch_SBN_file(temp4->mseqFileList->unk_0, 0x20, &fileEntry) == 0) { - snd_read_rom(fileEntry.offset, temp4->dataSEF, fileEntry.data & 0xFFFFFF); - } - snd_load_sfx_groups_from_SEF(D_8009A640); - if (snd_fetch_SBN_file(temp4->mseqFileList[1].unk_0, 0x40, &fileEntry) == 0) { - snd_load_PER(temp4, fileEntry.offset); - } - if (snd_fetch_SBN_file(temp4->mseqFileList[2].unk_0, 0x40, &fileEntry) == 0) { - snd_load_PRG(temp4, fileEntry.offset); - } - - temp4->instrumentGroups[0] = temp4->instrumentGroup1; - temp4->instrumentGroups[1] = temp4->instrumentGroup2; - temp4->instrumentGroups[2] = temp4->instrumentGroupX; - temp4->instrumentGroups[3] = temp4->instrumentGroup3; - temp4->instrumentGroups[4] = temp4->instrumentGroup4; - temp4->instrumentGroups[5] = temp4->instrumentGroup5; - temp4->instrumentGroups[6] = temp4->instrumentGroup6; - temp4->instrumentGroups[7] = temp4->instrumentGroup1; - temp4->unk_53 = 0; - temp4->unk_52 = 0; - temp4->unk_51 = 0; - temp4->unk_50 = 0; - - func_80057ED0(0); - func_80055050(alHeap); -} - -void snd_reset_instrument(Instrument* instrument) { - instrument->wavOffset = &D_800781D0; - instrument->wavLength = 190; - instrument->predictorOffset = &D_80078190; - instrument->unk_1C = 64; - instrument->unk_1E = 4800; - instrument->loopPredictorOffset = 0; - instrument->loopStart = 0; - instrument->loopEnd = 0; - instrument->loopCount = 0; - instrument->skipLoopPredictor = 0; - instrument->unk_25 = 0; - instrument->unkOffset = &D_80078544; - instrument->unk_26 = 0; - instrument->unk_27 = 0; - instrument->unk_28 = 0; - instrument->unk_29 = 0; - instrument->unk_2A = 0; - instrument->unk_2B = 0; - instrument->sampleRate = 0.5f; -} - -void func_80053370(UnkAlC* arg0) { - arg0->unk_00 = 8208; - arg0->unk_02 = 4800; - arg0->unk_04 = 0x7F; - arg0->unk_05 = 64; - arg0->unk_06 = 0; - arg0->unk_07 = 0; - arg0->unk_08 = 0; - arg0->unk_09 = 0; - arg0->unk_0A = 0; -} - -void func_800533A8(InstrumentCFG* arg0) { - arg0->unk_00 = 8208; - arg0->unk_02 = 0x7F; - arg0->unk_03 = 64; - arg0->unk_04 = 0; - arg0->unk_05 = 0; - arg0->unk_06 = 0; -} - - -void snd_update_sequence_players(void) { - UnkAl19E0* temp_s2 = D_8009A5C0; - SoundManager* manager = D_8009A640; - UnkAl834* temp_s0 = D_8009A628; - BGMPlayer* bgmPlayer1; - BGMPlayer* bgmPlayer2; - - func_80053654(temp_s2); - - temp_s0->unk_0C -= temp_s0->unk_04; - if (temp_s0->unk_0C <= 0) { - temp_s0->unk_0C += temp_s0->unk_08; - func_800511BC(temp_s0); - } - - if (manager->unk_40.fadeTime != 0) { - func_80053A28(&manager->unk_40); - func_80053A98(manager->unk_BE, manager->unk_40.currentVolume.u16, manager->unk_5C); - } - - manager->unkCounter -= manager->unkCounterStep; - if (manager->unkCounter <= 0) { - manager->unkCounter += manager->unkCounterMax; - manager->unk_BA = func_8004C444(manager); - } - - if (D_80078DB0 == 0) { - bgmPlayer1 = D_8009A5FC; - if (bgmPlayer1->fadeInfo.fadeTime != 0) { - snd_update_bgm_fade(bgmPlayer1); - } - if (bgmPlayer1->songName != 0) { - bgmPlayer1->unk_18++; - } - - bgmPlayer1->unk_10 -= bgmPlayer1->unkFrequency; - if (bgmPlayer1->unk_10 <= 0) { - bgmPlayer1->unk_10 += bgmPlayer1->unk_0C; - bgmPlayer1->unk_5C = func_8004E4B8(bgmPlayer1); - } - if (D_80078DB0 == 0) { - if (temp_s2->unk_80 != 0) { - func_8004DFD4(temp_s2); - } - bgmPlayer2 = D_8009A664; - if (bgmPlayer2->fadeInfo.unk_1A != 0) { - func_80053BA8(&bgmPlayer2->fadeInfo); - if (bgmPlayer2->fadeInfo.fadeTime == 0) { - func_8004E444(bgmPlayer2); - } else { - snd_update_bgm_fade(bgmPlayer2); - } - } else if (bgmPlayer2->fadeInfo.fadeTime != 0) { - snd_update_bgm_fade(bgmPlayer2); - } - if (bgmPlayer2->songName != 0) { - bgmPlayer2->unk_18++; - } - - bgmPlayer2->unk_10 -= bgmPlayer2->unkFrequency; - if (bgmPlayer2->unk_10 <= 0) { - bgmPlayer2->unk_10 += bgmPlayer2->unk_0C; - bgmPlayer2->unk_5C = func_8004E4B8(bgmPlayer2); - } - } - } - func_80052660(temp_s2); -} - -void func_800535C0(void) { - UnkAl19E0* temp_s1 = D_8009A5C0; - BGMPlayer* player = D_8009A664; - SoundManager* manager = D_8009A640; - - if (temp_s1->unk_9C != 0) { - func_8005610C(); - } - - D_8009A5E8 = temp_s1->unk_A4[0]; - if (D_8009A5E8 != NULL) { - D_8009A5E8(); - } - - func_8004D510(player); - player = D_8009A5FC; - func_8004D510(D_8009A5FC); - func_8004B748(manager); -} - -void func_80053654(UnkAl19E0* arg0) { - u32 i; - - if (arg0->unk_130C == 2) { - arg0->unk_130C = 1; - func_80057EB0(); - } - - if ((arg0->unk_50 != 0) && (arg0->unk_130C == 0)) { - switch (arg0->unk_53) { - case 1: - func_80057DC8(arg0->unk_52); - func_80057E08(arg0->unk_51); - arg0->unk_50 = 0; - break; - case 2: - func_80057DC8(arg0->unk_52); - func_80057E5C(arg0->unk_51); - arg0->unk_50 = 0; - break; - default: - func_80057EB0(); - arg0->unk_50 = 0; - break; - } - } - - if (arg0->unk_40[0].unk_01 != 0) { - func_80056DCC(0, arg0->unk_40[0].unk_00); - arg0->unk_40[0].unk_01 = 0; - } - if (arg0->unk_40[1].unk_01 != 0) { - func_80056DCC(1, arg0->unk_40[1].unk_00); - arg0->unk_40[1].unk_01 = 0; - - } if (arg0->unk_40[2].unk_01 != 0) { - func_80056DCC(2, arg0->unk_40[2].unk_00); - arg0->unk_40[2].unk_01 = 0; - } - if (arg0->unk_40[3].unk_01 != 0) { - func_80056DCC(3, arg0->unk_40[3].unk_00); - arg0->unk_40[3].unk_01 = 0; - } - - for (i = 0; i < ARRAY_COUNT(arg0->unk_1320); i++) { - UnkAl48* it = &arg0->unk_1320[i]; - u8 unk_43 = it->unk_43; - - if (it->unk_42 != 0) { - func_80056EE8(i); - it->unk_42 = 0; - it->unk_1C = 0; - it->unk_45 = 0; - } - - if (unk_43 & 2) { - func_80052BF8(it, &it->unk_14); - func_80056FA4(i, it->unk_10, it->unk_00, it->unk_04, it->unk_0C, it->unk_0E, it->unk_0F, it->unk_08); - it->unk_45 = it->unk_44; - } else { - if (unk_43 & 8) { - func_80057344(i, it->unk_04); - } - - if (unk_43 & 4) { - func_8005736C(i, it->unk_0C, it->unk_08, it->unk_0E, it->unk_0F); - } else if (unk_43 & 0x10) { - func_80057548(i, it->unk_0E, it->unk_0F); - } - } - it->unk_43 = 0; - } -} - -void func_80053888(UnkAl48* arg0, s32 arg1) { // type may be wrong but it seems good - if (arg0->unk_45 != 0) { - arg0->unk_1C = 0; - arg0->unk_42 = 1; - arg0->unk_43 = 0; - func_800576EC(arg1, 0, 0xB8); - } -} - -void func_800538C4(UnkAl48* arg0, s32 arg1) { // type may be wrong but it seems good - arg0->unk_1C = 0; - arg0->unk_42 = 1; - arg0->unk_43 = 0; - func_800576EC(arg1, 0, 0xB8); -} - -#ifdef NON_EQUIVALENT -f32 snd_tune_param_to_timescale(s32 arg0) { - if (arg0 >= 0) { - return D_80078730[(u32)arg0 & 0x7F] * D_80078730[128 + (((u32)arg0 >> 7) & 0x1F)]; - } else { - arg0 = -arg0; - return D_80078730[160 + ((u32)arg0 & 0x7F)] * D_80078730[288 + (((u32)arg0 >> 7) & 0x7F)]; - } -} -#else -INCLUDE_ASM(s32, "2e230_len_2190", snd_tune_param_to_timescale); -#endif - -void snd_initialize_bgm_fade(Fade* fade, s32 time, s32 startValue, s16 endValue) { - fade->currentVolume.s32 = startValue * 0x10000; - fade->endVolume = endValue; - - if (time != 0) { - fade->fadeTime = (time * 1000) / 5750; - fade->fadeStep = (endValue * 0x10000 - fade->currentVolume.s32) / fade->fadeTime; - } else { - fade->fadeTime = 1; - fade->fadeStep = 0; - } - - fade->fpFadeCallback = NULL; -} - -void snd_clear_bgm_fade(Fade* fade) { - fade->fadeTime = 0; - fade->fadeStep = 0; - fade->fpFadeCallback = NULL; -} - -void func_80053A28(Fade* arg0) { - arg0->fadeTime--; - - if ((arg0->fadeTime << 0x10) != 0) { - arg0->currentVolume.s32 += arg0->fadeStep; - } else { - arg0->currentVolume.s32 = arg0->endVolume << 0x10; - if (arg0->fpFadeCallback != 0) { - arg0->fpFadeCallback(); - arg0->fadeStep = 0; - arg0->fpFadeCallback = NULL; - } - } -} - -void func_80053A98(u8 arg0, u16 arg1, s32 arg2) { - func_80056D78(arg0, (u32)(arg1 * arg2) >> 15); -} - -void func_80053AC8(Fade* fade) { - if (fade->fadeTime == 0) { - fade->fadeTime = 1; - fade->fadeStep = 0; - fade->endVolume = fade->currentVolume.u16; - } -} - -void func_80053AEC(Fade* fade, s16 arg1) { - fade->unk_10.s32 = arg1 << 16; - fade->unk_18 = arg1; - fade->unk_1A = 0; - fade->unk_14 = 0; -} - -void func_80053B04(UnkAl1* arg0, u32 arg1, s16 arg2) { - s16 temp_a0; - s32 temp_v1; - - if (arg1 >= 250 && arg1 <= 100000) { - temp_a0 = (s32)(arg1 * 1000) / 5750; - temp_v1 = (arg2 << 16) - arg0->unk_10.s32; - - arg0->unk_18 = arg2; - arg0->unk_1A = temp_a0; - arg0->unk_14 = temp_v1 / temp_a0; - } else { - arg0->unk_1A = 0; - arg0->unk_14 = 0; - } -} - -void func_80053BA8(Fade* arg0) { - arg0->unk_1A--; - - if (arg0->unk_1A != 0) { - arg0->unk_10.s32 += arg0->unk_14; - } else { - arg0->unk_14 = 0; - arg0->unk_10.s32 = arg0->unk_18 << 16; - } -} - -Instrument* func_80053BE8(UnkAl19E0* arg0, u32 arg1, u32 arg2, s32** arg3) { - void* temp_v0; - void* phi_v0; - - Instrument* temp_a2 = (*arg0->instrumentGroups[(arg1 & 0x70) >> 4])[arg2]; - UnkAl4Plus* temp_a0 = temp_a2->unkOffset; - u32 temp_a1 = arg1 % 4; - - if (temp_a1 < temp_a0->count) { - arg3[0] = (s32*)(temp_a0->unk_04[temp_a1].unkOffset1 + (s32)temp_a0); - arg3[1] = (s32*)(temp_a0->unk_04[temp_a1].unkOffset2 + (s32)temp_a0); - } else { - arg3[0] = &D_8007854C[0]; - arg3[1] = &D_8007854C[1]; - } - return temp_a2; -} - -void snd_get_sequence_player_and_track(u32 playerIndex, s32** outCurrentTrackData, BGMPlayer** outPlayer) { - UnkAl19E0* temp_v1 = D_8009A5C0; - - switch (playerIndex) { - case 0: - *outCurrentTrackData = temp_v1->currentTrackData[0]; - *outPlayer = D_8009A664; - break; - case 1: - *outCurrentTrackData = temp_v1->currentTrackData[1]; - *outPlayer = D_8009A5FC; - break; - case 2: - *outCurrentTrackData = temp_v1->currentTrackData[0]; - *outPlayer = D_8009A664; - break; - default: - *outCurrentTrackData = NULL; - *outPlayer = NULL; - break; - } -} - -void snd_get_sequence_player(u32 playerIndex, BGMPlayer** outPlayer) { - switch (playerIndex) { - case 0: - *outPlayer = D_8009A664; - break; - case 1: - *outPlayer = D_8009A5FC; - break; - case 2: - *outPlayer = D_8009A664; - break; - default: - *outPlayer = NULL; - break; - } -} - -s32 snd_load_song_files(u32 arg0, UnkAlTrack* arg1, BGMPlayer* arg2) { - SBNFileEntry fileEntry; - SBNFileEntry fileEntry2; - SBNFileEntry* bkFileEntry; - UnkAl19E0* soundData; - InitSongEntry* songEntry; - s32 i; - u16 bkFileIndex; - s32 bgmFileIndex; - u32 data; - u32 offset; - s32 ret; - BGMPlayer* arg2_copy ; - UnkAlTrack* arg1_copy; - s32 cond; - - soundData = D_8009A5C0; - - // needed to match - cond = arg0 < soundData->songListLength; - arg2_copy = arg2; - arg1_copy = arg1; - - if (cond) { - songEntry = &soundData->songList[arg0]; - ret = snd_fetch_SBN_file(songEntry->bgmFileIndex, 0x10, &fileEntry); - if (ret != 0) { - return ret; - } - - if (func_8004DB28(arg2_copy)) { - return 201; - } - - snd_read_rom(fileEntry.offset, arg1_copy, fileEntry.data & 0xFFFFFF); - - for (i = 0 ; i < 3; i++) { - bkFileIndex = songEntry->bkFileIndex[i]; - if (bkFileIndex != 0) { - bkFileEntry = &soundData->sbnFileList[bkFileIndex]; - - offset = (bkFileEntry->offset & 0xFFFFFF) + soundData->baseRomOffset; - fileEntry2.offset = offset; - - data = bkFileEntry->data; - fileEntry2.data = data; - - if ((data >> 0x18) == 0x30) { - snd_load_BK(offset, i); - } - } - } - bgmFileIndex = songEntry->bgmFileIndex; - arg2_copy->songID = arg0; - arg2_copy->unk_64 = arg1; - arg2_copy->bgmFileIndex = bgmFileIndex; - return arg1_copy->unk_08; - } else { - return 151; - } -} - -s32 func_80053E58(s32 arg0, u8* arg1) { - SBNFileEntry fileEntry; - SBNFileEntry sp18; - SBNFileEntry* bkFileEntry; - UnkAl19E0* soundData; - InitSongEntry* temp_s1; - s32 i; - s32 ret; - u32 data; - u32 offset; - u16 bkFileIndex; - - soundData = D_8009A5C0; - temp_s1 = &soundData->songList[arg0]; - ret = snd_fetch_SBN_file(temp_s1[0].bgmFileIndex, 0x10, &sp18); - if (ret == 0) { - snd_read_rom(sp18.offset, arg1, sp18.data & 0xFFFFFF); - - for (i = 0 ; i < 3; i++) { - bkFileIndex = temp_s1->bkFileIndex[i]; - if (bkFileIndex != 0) { - bkFileEntry = &soundData->sbnFileList[bkFileIndex]; - - offset = (bkFileEntry->offset & 0xFFFFFF) + soundData->baseRomOffset; - fileEntry.offset = offset; - - data = bkFileEntry->data; - fileEntry.data = data; - - if ((data >> 0x18) == 0x30) { - snd_load_BK(offset, i); - } else { - ret = 102; - } - } - } - } - - return ret; -} - -BGMPlayer* func_80053F64(s32 arg0) { - if (arg0 == 0) { - return D_8009A5C0->unk_6C[0].unk_0; - } - return NULL; -} - -s32 func_80053F80(u32 arg0) { - u32 i; - SBNFileEntry fileEntry; - UnkAl19E0* soundData; - UnkAl834* temp_s2; - s32* trackData; - - soundData = D_8009A5C0; - temp_s2 = D_8009A628; - if (arg0 < 16) { - if (temp_s2->unk_24[0].unk_20 == 0 && snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0]].unk_0, 0x40, &fileEntry) == 0) { - snd_read_rom(fileEntry.offset, soundData->currentTrackData[2], fileEntry.data & 0xFFFFFF); - temp_s2->unk_10[0] = soundData->currentTrackData[2]; - for (i = 1; i < 4; i++) { - temp_s2->unk_10[i] = NULL; - } - temp_s2->unk_20 = 1; - } - } else if (arg0 == 16 && temp_s2->unk_24[0].unk_20 == 0 && temp_s2->unk_24[1].unk_20 == 0 && temp_s2->unk_24[2].unk_20 == 0) { - temp_s2->unk_20 = 0; - for (i = 0; i < 4; i++) { - temp_s2->unk_10[i] = NULL; - } - - trackData = soundData->currentTrackData[3]; - if (snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0]].unk_0, 0x40, &fileEntry) == 0) { - snd_read_rom(fileEntry.offset, trackData, fileEntry.data & 0xFFFFFF); - temp_s2->unk_10[0] = trackData; - - trackData = (s32*)((u32)trackData + ((fileEntry.data + 0x40) & 0xFFFFFF)); - if (snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0 + 1]].unk_0, 0x40, &fileEntry) == 0) { - snd_read_rom(fileEntry.offset, trackData, fileEntry.data & 0xFFFFFF); - temp_s2->unk_10[1] = trackData; - - trackData = (s32*)((u32)trackData + ((fileEntry.data + 0x40) & 0xFFFFFF)); - if (snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0 + 2]].unk_0, 0x40, &fileEntry) == 0) { - - snd_read_rom(fileEntry.offset, trackData, fileEntry.data & 0xFFFFFF); - temp_s2->unk_10[2] = trackData; - - trackData = (s32*)((u32)trackData + ((fileEntry.data + 0x40) & 0xFFFFFF)); - if (snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0 + 3]].unk_0, 0x40, &fileEntry) == 0) { - snd_read_rom(fileEntry.offset, trackData, fileEntry.data & 0xFFFFFF); - temp_s2->unk_10[3] = trackData; - - temp_s2->unk_20 = 4; - if (snd_fetch_SBN_file(soundData->mseqFileList[D_80078580[arg0 + 4]].unk_0, 0x30, &fileEntry) == 0) { - snd_load_BK(fileEntry.offset, 2); - } - } - } - } - } - } - return 0; -} - -BGMPlayer* func_80054248(u8 arg0) { - switch (arg0) { - case 1: - return D_8009A664; - case 2: - return D_8009A5FC; - case 4: - return D_8009A640; // TODO: why return pointer to SoundManager? - default: - return NULL; - } -} - -void snd_load_INIT(UnkAl19E0* arg0, s32 romAddr, ALHeap* heap) { - SBNHeader sbnHeader; - INITHeader initHeader; - SBNFileEntry* entry; - s32 tableSize, initBase, size; - s32 tblAddr, shortsAddr; - s32* data; - s32 numEntries; - s32 tblOffset, shortsOffset; - s32* romPtr = &arg0->baseRomOffset; - - snd_read_rom(romAddr, &sbnHeader, sizeof(SBNHeader)); - numEntries = sbnHeader.numEntries; - arg0->baseRomOffset = romAddr; - tableSize = numEntries * sizeof(SBNFileEntry); - arg0->fileListLength = sbnHeader.numEntries; - arg0->sbnFileList = alHeapAlloc(heap, 1, tableSize); - snd_read_rom(arg0->baseRomOffset + sbnHeader.tableOffset, arg0->sbnFileList, tableSize); - - entry = arg0->sbnFileList; - while (sbnHeader.numEntries--) { - if ((entry->offset & 0xFFFFFF) == 0) { - break; - } - - size = entry->data; - entry->data = (size + 0xF) & ~0xF; - entry++; - } - - if (sbnHeader.INIToffset != 0) { - initBase = *romPtr + sbnHeader.INIToffset; - snd_read_rom(initBase, &initHeader, sizeof(INITHeader)); - - tblOffset = initHeader.tblOffset; - size = (initHeader.tblSize + 0xF) & 0xFFF0; - tblAddr = initBase + tblOffset; - arg0->songList = alHeapAlloc(heap, 1, size); - snd_read_rom(tblAddr, arg0->songList, size); - - shortsOffset = initHeader.shortsOffset; - size = (initHeader.shortsSize + 0xF) & 0xFFF0; - shortsAddr = initBase + shortsOffset; - arg0->mseqFileList = alHeapAlloc(heap, 1, size); - snd_read_rom(shortsAddr, arg0->mseqFileList, size); - - arg0->bkFileListOffset = initBase + initHeader.entriesOffset; - arg0->bkListLength = (initHeader.entriesSize + 0xF) & 0xFFF0; - arg0->songListLength = initHeader.tblSize / sizeof(InitSongEntry) - 1; - } -} - -s32 snd_fetch_SBN_file(u32 fileIdx, s32 format, SBNFileEntry* arg2) { - SBNFileEntry fileEntry; - UnkAl19E0* temp = D_8009A5C0; - u32 data; - s32 ret = 0; - - if (fileIdx < temp->fileListLength) { - SBNFileEntry* entry = &temp->sbnFileList[fileIdx]; - s32 offset = (entry->offset & 0xFFFFFF) + temp->baseRomOffset; - - fileEntry.offset = offset; - data = entry->data; - fileEntry.data = data; - if ((data >> 0x18) == format) { - arg2->offset = offset; - arg2->data = fileEntry.data; - } else { - ret = 102; - } - } else { - ret = 101; - } - return ret; -} - -void snd_load_PER(UnkAl19E0* arg0, s32 romAddr) { - PERHeader header; - u32 size; - s32 numItemsLeft; - s32 numItems; - void* end; - - snd_read_rom(romAddr, &header, sizeof(PERHeader)); - size = header.totalSize - sizeof(PERHeader); - snd_read_rom(romAddr + sizeof(PERHeader), arg0->dataPER, size); - numItems = size / sizeof(PEREntry); - numItemsLeft = 6 - numItems; - if (numItemsLeft > 0) { - end = &arg0->dataPER[numItems]; - snd_copy_words(&arg0->unk_08, end, sizeof(UnkAlC)); - snd_copy_words(end, end + sizeof(UnkAlC), numItemsLeft * sizeof(PEREntry) - sizeof(UnkAlC)); - } -} - -void snd_load_PRG(UnkAl19E0* arg0, s32 romAddr) { - PERHeader header; - u32 size; - s32 numItemsLeft; - s32 numItems; - s32 dataRomAddr; - void* end; - - snd_read_rom(romAddr, &header, sizeof(PERHeader)); - dataRomAddr = romAddr + sizeof(PERHeader); - size = header.totalSize - sizeof(PERHeader); - if (size > 0x200) { - size = 0x200; - } - snd_read_rom(dataRomAddr, arg0->dataPRG, size); - numItems = size / sizeof(InstrumentCFG); - numItemsLeft = 0x40 - numItems; - if (numItemsLeft > 0) { - end = &arg0->dataPRG[numItems]; - snd_copy_words(&arg0->defaultPRGEntry, end, sizeof(InstrumentCFG)); - snd_copy_words(end, end + sizeof(InstrumentCFG), numItemsLeft * sizeof(InstrumentCFG) - sizeof(InstrumentCFG)); - } -} - - -INCLUDE_ASM(s32, "2e230_len_2190", snd_load_BGM); - -InstrumentGroup* snd_get_BK_instruments(s32 bankGroup, u32 bankIndex) { - InstrumentGroup* ret = NULL; - UnkAl19E0* temp = D_8009A5C0; - - // TODO fake match - this multiplying the bankIndex by 16 and then dividing it right after is dumb - bankIndex *= 16; - - switch (bankGroup) { - case 1: - ret = &temp->instrumentGroup1[bankIndex / 16]; - break; - case 2: - ret = &temp->instrumentGroup2[bankIndex / 16]; - break; - case 4: - ret = &temp->instrumentGroup4[bankIndex / 16]; - break; - case 5: - ret = &temp->instrumentGroup5[bankIndex / 16]; - break; - case 6: - ret = &temp->instrumentGroup6[bankIndex / 16]; - break; - case 3: - ret = &temp->instrumentGroup3[bankIndex / 16]; - break; - } - - return ret; -} - -#ifdef NON_EQUIVALENT -enum BKParseState { - EN_0 = 0, - EN_11 = 11, - EN_21 = 21, - EN_101 = 101, - EN_111 = 111, - EN_201 = 201, - EN_301 = 301, -}; -s32 snd_load_BK_to_bank(s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 bankGroup) { - ALHeap* heap = D_80078E54->heap; - BKHeader bkHeader; - BKHeader* header = &bkHeader; - u16 s3; - u16 s2; - s32 size; - u8* s4; - InstrumentGroup* group; - u32 i; - s32 a2; - - snd_read_rom(bkFileOffset, header, sizeof(BKHeader)); - s3 = EN_11; - s2 = TRUE; - do { - switch (s3) { - case EN_11: - if (header->unk_00 == 0x424B /* BK */ && header->unk_04 != 0) { - s3 = EN_21; - } else { - s2 = FALSE; - } - break; - case EN_21: - if (header->unk_0C == 0x4352) { // CR - s3 = EN_101; - } else if (header->unk_0C == 0x4452) { // DR - s3 = EN_201; - } else if (header->unk_0C == 0x5352) { // SR - s3 = EN_301; - } else { - s2 = FALSE; - } - break; - case EN_101: - size = ALIGN16_(header->unk_32) + ALIGN16_(header->unk_36) + ALIGN16_(header->unk_3A) + ALIGN16_(header->unk_3E) + 0x40; - if (bank == NULL) { - bank = alHeapAlloc(heap, 1, size); - } - snd_read_rom(bkFileOffset, bank, size); - group = snd_get_BK_instruments(bankGroup, bankIndex); - a2 = 0; - for (i = 0; i < ARRAY_COUNT(*group); i++) { - if (header->unk_12[i] != 0) { - (*group)[i] = (s32)bank + header->unk_12[i]; - a2++; - } else { - (*group)[i] = NULL; - } - } - - if (a2 != 0) { - s3 = EN_111; - } else { - s2 = FALSE; - } - break; - case EN_111: - snd_swizzle_BK_instruments(bkFileOffset, bank, *group, 16, 1); - s3 = 0; - break; - default: - s2 = FALSE; - break; - } - } while (s2); - - return bank; -} -#else -INCLUDE_ASM(s32, "2e230_len_2190", snd_load_BK_to_bank, s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 arg3); -#endif - -void snd_swizzle_BK_instruments(s32 bkFileOffset, SoundBank* bank, InstrumentGroup instruments, u32 instrumentCount, - u8 arg4) { - SoundBank* sb = bank; - Instrument* defaultInstrument = D_8009A5C0->defaultInstrument; - f32 freq = D_8009A5C0->actualFrequency; - s32 i; - - if (sb->swizzled == 0) { - for (i = 0; i < instrumentCount; i++) { - Instrument* instrument = instruments[i]; - - if (instrument != NULL) { - if (instrument->wavOffset != 0) { - instrument->wavOffset += bkFileOffset; - } - if (instrument->loopPredictorOffset != 0) { - instrument->loopPredictorOffset += (s32)bank; - } - if (instrument->predictorOffset != 0) { - instrument->predictorOffset += (s32)bank; - } - if (instrument->unkOffset != 0) { - instrument->unkOffset += (s32)bank; - } - instrument->unk_25 = arg4; - instrument->sampleRate = *((s32*)(&instrument->sampleRate)) / freq; // what is happening here? - } else { - instruments[i] = defaultInstrument; - } - } - sb->swizzled = 1; - } -} - -INCLUDE_ASM(s32, "2e230_len_2190", func_80054AA0); - -s32 snd_load_BK(s32 bkFileOffset, s32 bankIndex) { - snd_load_BK_to_bank(bkFileOffset, D_8009A5C0->banks[bankIndex], bankIndex, 1); - return 0; -} - -void func_80054C84(s32 bankIndex, s32 bankGroup) { - u32 i; - Instrument* instrument = D_8009A5C0->defaultInstrument; - InstrumentGroup* group = snd_get_BK_instruments(bankGroup, bankIndex); - Instrument** ptr = *group; - if (group != NULL) { - for (i = 0; i < ARRAY_COUNT(*group); i++) { - *ptr++ = instrument; - } - } -} - -void func_80054CE0(s32 arg0, s32 arg1) { - s32 temp_s0; - - if (arg1 < 9U) { - temp_s0 = D_80078530[arg1]; - if (arg0 & 1) { - D_8009A664->unk_48 = temp_s0; - func_80053AC8(&D_8009A664->fadeInfo); - D_8009A5FC->unk_48 = temp_s0; - func_80053AC8(&D_8009A5FC->fadeInfo); - } - if (arg0 & 0x10) { - D_8009A640->unk_5C = temp_s0; - func_80053AC8(&D_8009A640->unk_40); - } - } -} - -s32 func_80054D74(s32 arg0, s32 arg1) { - if (arg0 & 0x10) { - return func_8004B9E4(D_8009A640, arg1); - } - return 0; -} - -void func_80054DA8(u32 arg0) { - if (arg0 % 2 == 1) { - if (D_8009A5C0->unk_130C == 0) { - D_8009A5C0->unk_130C = 2; - } - } else { - if (D_8009A5C0->unk_130C != 0) { - D_8009A5C0->unk_50 = 1; - D_8009A5C0->unk_130C = 0; - } - } -} - -void snd_read_rom(s32 romAddr, void* buffer, u32 size) { - s32 nchunks = size / 0x2000; - s32 offset = 0; - - if (nchunks != 0) { - while (nchunks--) { - nuPiReadRom(romAddr + offset, buffer + offset, 0x2000); - offset += 0x2000; - } - } - - size %= 0x2000; - if (size != 0) { - nuPiReadRom(romAddr + offset, buffer + offset, size); - } -} - -#ifdef NON_MATCHING -// v0/v1 swap -void snd_memset(s8* dst, s32 size, s8 value) { - s32 count; - s32 intValue; - - if (size == 0) { - return; - } - - if (size < 1024) { - while (size--) { - *dst++ = value; - } - } else { - count = (u32)dst % 4; - if (count != 0) { - count = 4 - count; - size -= count; - while (count--) { - *dst++ = value; - } - } - - count = size >> 2; - intValue = value & 0xFF; - intValue = intValue * 0x01010101; - while (count--) { - *(u32*)dst = intValue; - dst += 4; - } - - count = size & 3; - if (count != 0) { - while (count--) { - *dst++ = value; - } - } - } -} -#else -INCLUDE_ASM(s32, "2e230_len_2190", snd_memset); -#endif - -void snd_bcopy(s8* src, s8* dest, s32 size) { - if (size > 0) { - while (size-- != 0) { - *dest++ = *src++; - } - } -} - -void snd_copy_words(void* src, void* dst, s32 size) { - size /= 4; - - if (size > 0) { - if (!(((s32) src | (s32) dst) & 3)) { - s32* srcIt = src; - s32* dstIt = dst; - - size--; - do { - *dstIt++ = *srcIt++; - } while (size-- != 0); - } - } -} diff --git a/src/30450.c b/src/30450.c deleted file mode 100644 index 546f4b627d..0000000000 --- a/src/30450.c +++ /dev/null @@ -1,610 +0,0 @@ -#include "common.h" -#include "audio.h" - -s32 D_80078DB0 = 0; -u16 D_80078DB4 = 0; -u16 D_80078DB6 = 0; - -// chunks of data, not sure what -s32 D_80078DB8[] = { 0x025E0350, 0x04640554, 0x00000000, }; -s32 D_80078DC4[] = { 0x0264036E, 0x045A0000, }; -s32 D_80078DCC[] = { 0x025F0000, }; -s32 D_80078DD0[] = { 0x0546065A, 0x075A0864, 0x00000000, }; -s32 D_80078DDC[] = { 0x05000600, 0x07000800, 0x09000A00, 0x0B000C00, 0x0D000E00, 0x0F001000, 0x00000000, }; -s32 D_80078DF8[] = { 0x05640666, 0x0758086E, 0x09000A00, 0x0B000C00, 0x0D000E00, 0x0F001000, 0x00000000, }; -s32 D_80078E14[] = { 0x05640666, 0x0758086E, 0x097E0A58, 0x0B640C00, 0x0D000E00, 0x0F001000, 0x00000000, }; -s32 D_80078E30[] = { 0x05640666, 0x0758086E, 0x097E0A58, 0x0B640C64, 0x0D6A0E64, 0x0F64106E, 0x00000000, 0x00000000, }; - -void func_80055050(ALHeap* heap) { - D_80078DB4 = 1; - D_80078DB0 = 0; -} - -void func_80055068(u32 arg0) { - u16 temp_a0 = D_80078DB4; - u32 temp_v1 = arg0 & 0xF; - - if (temp_a0 == 1) { - switch (temp_v1) { - case 2: - case 3: - break; - case 4: - snd_start_sound_with_shift(arg0 >> 4, 0, 0, 0); - break; - case 1: - if (temp_v1 == temp_a0) { - s32 filename = snd_load_song((arg0 >> 4) & 0xFF, 0); - - if (filename > ASCII_TO_U32('0', ' ', ' ', '\0')) { - snd_start_song_variation(filename, (arg0 >> 0xC) & 3); - } - } - break; - } - } -} - -void func_80055110(BGMPlayer* player) { - s32 i; - - for (i = 0; i < ARRAY_COUNT(player->unk_238); i++) { - player->unk_238[i] = 0; - } - - player->unk_25B = 0; - player->unk_25A = 0; - player->unk_259 = 0; - player->unk_258 = 0; -} - -void func_8005513C(u32 arg0) { - BGMPlayer* player = NULL; - u32 playerSwitch = arg0 & 0xF; - - if (playerSwitch != 0) { - if (playerSwitch == 1) { - player = D_8009A664; - } else if (playerSwitch == 2) { - player = D_8009A5FC; - } - - if (player != NULL) { - u32 temp; - - if (player->unk_258 < 8) { - temp = player->unk_25A; - - player->unk_238[temp] = arg0 >> 4; - - temp++; - if (temp >= 8) { - temp = 0; - } - player->unk_25A = temp; - - player->unk_258++; - } else { - temp = player->unk_25B + 1; - - if (temp > 99) { - temp = 99; - } - player->unk_25B = temp; - } - } - } -} - -void snd_start_sound(s32 soundID, u8 volume, u8 pan) { - SoundManager* soundManager = D_8009A640; - s16 a1temp = volume * 256; - - if (a1temp != 0) { - a1temp |= 0xFF; - } - - if (pan > 0x7F) { - pan = 0x7F; - } - - snd_enqueue_sfx_event(soundManager, soundID, a1temp, 0, pan); -} - -void snd_start_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { - SoundManager* soundManager = D_8009A640; - s16 a1temp = volume * 256; - - if (a1temp != 0) { - a1temp |= 0xFF; - } - - if (pan > 0x7F) { - pan = 0x7F; - } - - if (pitchShift > 0x960) { - pitchShift = 0x960; - } else if (pitchShift < -0x960) { - pitchShift = -0x960; - } - - snd_enqueue_sfx_event(soundManager, soundID, a1temp, pitchShift, pan); -} - -void snd_adjust_sound(s32 soundID, u8 volume, u8 pan) { - SoundManager* soundManager = D_8009A640; - s16 a1temp = volume * 256; - - if (a1temp != 0) { - a1temp |= 0xFF; - } - - if (pan > 0x7F) { - pan = 0x7F; - } - - snd_enqueue_sfx_event(soundManager, soundID | 0x1000, a1temp, 0, pan); -} - -void snd_adjust_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { - SoundManager* soundManager = D_8009A640; - s16 a1temp = volume * 256; - - if (a1temp != 0) { - a1temp |= 0xFF; - } - - if (pan > 0x7F) { - pan = 0x7F; - } - - if (pitchShift > 0x960) { - pitchShift = 0x960; - } else if (pitchShift < -0x960) { - pitchShift = -0x960; - } - - snd_enqueue_sfx_event(soundManager, soundID | 0x1000, a1temp, pitchShift, pan); -} - -void snd_stop_sound(s32 soundID) { - SoundManager* soundManager = D_8009A640; - - snd_enqueue_sfx_event(soundManager, soundID | 0x8000, 0, 0, 0); -} - -void func_800553F4(void) { - D_8009A640->unk_168 = 1; -} - -void snd_start_sound_raw(s32 soundID, s16 volume, s16 pitchShift, s32 pan) { - SoundManager* soundManager = D_8009A640; - - snd_enqueue_sfx_event(soundManager, soundID, volume, pitchShift, pan); -} - -s32 func_80055448(s32 arg0) { - return func_80053F80(arg0); -} - -s32 func_80055464(s32 arg0, s32 arg1) { - if (func_80050C30(arg0) == 0) { - func_80050CA0(arg0, arg1); - } -} - -s32 func_800554A4(s32 arg0) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050EF0(arg0); - } - - return ret; -} - -s32 func_800554E8(s32 arg0, s32 arg1) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050F64(arg0, arg1); - } - - return ret; -} - -s32 func_8005553C(s32 arg0, s32 arg1) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050E18(arg0, arg1); - } - - return ret; -} - -s32 func_80055590(s32 arg0, s32 arg1) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050E84(arg0, arg1); - } - - return ret; -} - -void func_800555E4(s32 arg0) { - if (func_80050C30(arg0) == 0) { - func_80051050(arg0); - } -} - -s32 func_80055618(s32 arg0, s32 arg1) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050C54(arg0, arg1); - } - - return ret; -} - -s32 func_8005566C(s32 arg0, s32 arg1, s32 arg2) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050FD0(arg0, arg1, arg2); - } - - return ret; -} - -s32 func_800556D0(s32 arg0) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050C64(arg0, 1); - } - - return ret; -} - -s32 func_80055718(s32 arg0) { - s32 ret = func_80050C30(arg0); - - if (ret == 0) { - func_80050C64(arg0, 0); - } - - return ret; -} - -void func_80055760(s32 arg0) { - u32 i; - s32 lim = 4; - - D_80078DB6 = 0xFF; - - for (i = 0; i < lim; i++) { - if (func_80055464(i, 0) != 0) { - return; - } - } - - func_80055848(arg0); -} - -s32 func_800557CC(s32 arg0) { - u32 i; - s32 lim = 4; - s32 phi_v1; - - for (i = 0; i < lim; i++) { - if (i == D_80078DB6) { - phi_v1 = func_800554E8(i, arg0); - } else { - phi_v1 = func_800554A4(i); - } - - if (phi_v1 != 0) { - break; - } - } - return phi_v1; -} - -s32 func_80055848(s32 arg0) { - s32 lim = 4; - s32 phi_v1 = 0; - - if (arg0 != D_80078DB6) { - u32 i; - - for (i = 0; i < lim; i++) { - if (i == arg0) { - phi_v1 = func_80055718(arg0); - } else { - phi_v1 = func_800556D0(i); - } - - if (phi_v1 != 0) { - break; - } - } - - if (phi_v1 == 0) { - D_80078DB6 = arg0; - } - } - - return phi_v1; -} - -s32 snd_load_song(s32 songID, s32 playerIndex) { - s32* currentTrackData; - BGMPlayer* songPlayer; - - snd_get_sequence_player_and_track(playerIndex, ¤tTrackData, &songPlayer); - - if (currentTrackData != NULL) { - return snd_load_song_files(songID, currentTrackData, songPlayer); - } else { - return 3; - } -} - -INCLUDE_ASM(s32, "30450", snd_start_song); - -INCLUDE_ASM(s32, "30450", snd_start_song_variation); - -s32 func_800559C4(UNK_TYPE arg0) { - return func_8004DA0C(arg0); -} - -void func_800559E0(void) { - func_8004DA74(); -} - -s32 func_800559FC(void) { - return snd_is_song_playing(); -} - -INCLUDE_ASM(s32, "30450", snd_set_song_variation_fade); - -INCLUDE_ASM(s32, "30450", snd_set_song_fade); - -INCLUDE_ASM(s32, "30450", snd_set_song_variation_fade_time); - -INCLUDE_ASM(s32, "30450", func_80055AF0); - -INCLUDE_ASM(s32, "30450", func_80055B28); - -INCLUDE_ASM(s32, "30450", func_80055B80); - -INCLUDE_ASM(s32, "30450", func_80055BB8); - -INCLUDE_ASM(s32, "30450", func_80055BF0); - -INCLUDE_ASM(s32, "30450", func_80055C2C); - -INCLUDE_ASM(s32, "30450", func_80055C64); - -INCLUDE_ASM(s32, "30450", func_80055C94); - -INCLUDE_ASM(s32, "30450", func_80055CC4); - -s32 func_80055CE8(s32 songName, s32* arg1, BGMPlayer** player); -// We need to figure out what currentTrackData is a list of -#ifdef NON_EQUIVALENT -s32 func_80055CE8(s32 songName, s32* arg1, BGMPlayer** player) { - UnkAl19E0* temp_a3 = D_8009A5C0; - s32 ret = 0; - - if (songName == temp_a3->currentTrackData[0][2]) { - *arg1 = temp_a3->currentTrackData[0]; - *player = D_8009A664; - } else if (songName == temp_a3->currentTrackData[1][2]) { - *arg1 = temp_a3->currentTrackData[1]; - *player = D_8009A5FC; - } else { - ret = 1; - } - return ret; -} -#else -INCLUDE_ASM(s32, "30450", func_80055CE8, s32 songName, s32* arg1, BGMPlayer** player); -#endif - -s32 func_80055D38(s32 songName, f32 arg1) { - s32 ret; - s32 unkArg1; - BGMPlayer* bgmPlayer; - - ret = func_80055CE8(songName, &unkArg1, &bgmPlayer); - - if (ret == 0) { - func_80050770(bgmPlayer, arg1); - } - - return ret; -} - -s32 func_80055D8C(s32 songName, s32 arg1) { - s32 ret; - s32 unkArg1; - BGMPlayer* bgmPlayer; - - ret = func_80055CE8(songName, &unkArg1, &bgmPlayer); - - if (ret == 0) { - func_80050818(bgmPlayer, arg1); - } - - return ret; -} - -s32 func_80055DDC(s32 songName, s32 arg1) { - s32 ret; - s32 unkArg1; - BGMPlayer* bgmPlayer; - - ret = func_80055CE8(songName, &unkArg1, &bgmPlayer); - - if (ret == 0) { - s32* temp_v0 = func_80055EB4(arg1); - - if (temp_v0 != NULL) { - func_8005087C(bgmPlayer, temp_v0, 1); - } else { - ret = 11; - } - } - - return ret; -} - -s32 func_80055E48(s32 songName, s32 arg1) { - s32 ret; - s32 unkArg1; - BGMPlayer* bgmPlayer; - - ret = func_80055CE8(songName, &unkArg1, &bgmPlayer); - - if (ret == 0) { - s32* temp_v0 = func_80055EB4(arg1); - - if (temp_v0 != NULL) { - func_8005087C(bgmPlayer, temp_v0, 0); - } else { - ret = 11; - } - } - - return ret; -} - -s32* func_80055EB4(s32 arg0) { - s32* ret = NULL; - - switch (arg0) { - case 0: - ret = &D_80078DB8; - break; - case 1: - ret = &D_80078DC4; - break; - case 2: - ret = &D_80078DCC; - break; - case 3: - ret = &D_80078DD0; - break; - case 4: - ret = &D_80078DDC; - break; - case 5: - ret = &D_80078DF8; - break; - case 6: - ret = &D_80078E14; - break; - case 7: - ret = &D_80078E30; - break; - } - - return ret; -} - -static const f32 padding[] = {0.0f}; - -s32 func_80055F58(s32 arg0, u32 arg1, u32 arg2) { - s32* subroutine_arg4; - s32* subroutine_arg5; - s32 temp_s2 = func_80055CE8(arg0, &subroutine_arg4, &subroutine_arg5); - - if (temp_s2 == 0) { - if (arg2 > 0x7F) { - arg2 = 0x7F; - } - if (arg1 > 0xF) { - arg1 = 0xF; - } - func_8005083C(subroutine_arg5, arg1, 0x60, (u8)arg2); // todo remove cast when func is defined - } - return temp_s2; -} - -s32 func_80055FD4(s32 arg0, s32 arg1) { - return func_80055F58(arg0, arg1, 0); -} - -s32 func_80055FF0(s32 arg0, s32 arg1) { - return func_80055F58(arg0, arg1, 0x3F); -} - -s32 func_8005600C(s32 arg0, s32 arg1) { - return func_80055F58(arg0, arg1, 0x7F); -} - -s32 func_80056028(s32 arg0, u8 arg1) { - return func_800506C8(arg0, arg1); -} - -s32 func_80056044(s32 arg0, u8 arg1) { - return func_800506C8(arg0, arg1 | 0x57000000); -} - -s32 func_80056068(s32 arg0, u8 arg1) { - return func_800506C8(arg0, arg1 | 0x7F000000); -} - -void func_8005608C(s32* arg0, s32* arg1) { - UnkAl19E0* temp_v0 = D_8009A5C0; - - *arg0 = temp_v0->unk_94; - *arg1 = temp_v0->unk_98; -} - -void func_800560A8(void) { - D_8009A5C0->unk_9C = 1; -} - -INCLUDE_ASM(s32, "30450", func_800560BC); - -INCLUDE_ASM(void, "30450", func_8005610C, void); - -void func_80056144(UnkFuncAl arg0, s32 arg1) { - D_8009A5C0->unk_A4[arg1] = arg0; -} - -void audio_set_stereo(void) { - func_80056D5C(1); - func_80054DA8(0); -} - -void audio_set_mono(void) { - func_80056D5C(0); - func_80054DA8(1); -} - -void func_800561A4(s32 arg0) { - func_80054CE0(1, arg0); -} - -void func_800561C4(s32 arg0) { - func_80054CE0(16, arg0); -} - -void func_800561E4(s32 arg0) { - func_80054D74(16, arg0); -} - -void func_80056204(void) { - func_8004BA54(D_8009A640, 0); -} - -void func_80056228(void) { - func_8004BA54(D_8009A640, 1); -} diff --git a/src/31650.c b/src/31650.c deleted file mode 100644 index e0b514e8b7..0000000000 --- a/src/31650.c +++ /dev/null @@ -1,331 +0,0 @@ -#include "common.h" -#include "audio.h" -#include "nu/nualsgi.h" - -UnkAl0* D_80078E50 = NULL; -UnkAl0* D_80078E54 = NULL; -s8 D_80078E58 = 0; -s16 D_80078E5A = 0x7FFF; -s8 D_80078E5C = 0; -s32 D_80078E60[] = { 0x7FFF7FFC, 0x7FF57FE8, 0x7FD77FC0, 0x7FA57F84, 0x7F5F7F34, 0x7F057ED0, 0x7E977E58, 0x7E157DCD, - 0x7D7F7D2D, 0x7CD67C7A, 0x7C1A7BB4, 0x7B497ADA, 0x7A6679ED, 0x796F78ED, 0x786677DA, 0x774976B4, 0x761A757B, - 0x74D87430, 0x738472D3, 0x721E7164, 0x70A66FE3, 0x6F1C6E51, 0x6D816CAD, 0x6BD56AF9, 0x6A186933, 0x684A675D, - 0x666C6577, 0x647E6381, 0x6280617C, 0x60735F67, 0x5E575D43, 0x5C2C5B11, - }; - - -void func_80056250(UnkAl0* globals, ALConfig* config) { - s32 i; - ALHeap* heap = config->heap; - - if (D_80078E50 != NULL) { - return; - } - - globals->unk_0C = config->unk_00; - globals->unk_10 = config->unk_04; - globals->unk_00 = 0; - globals->unk_04 = 0; - globals->frequency = config->frequency; - globals->dmaNew = config->dmaNew; - - D_80078E50 = globals; - D_80078E54 = globals; - D_80078E58 = 0; - D_80078E5A = 0x7FFF; - D_80078E5C = 1; - D_80078E54->unk_1C = alHeapAlloc(heap, config->unk_00, sizeof(UnkAl7C)); - - for (i = 0; i < config->unk_00; i++) { - UnkAl7C* al7C = &D_80078E54->unk_1C[i]; - al7C->unk_04 = alHeapAlloc(heap, 1, 0x20); - al7C->unk_08 = alHeapAlloc(heap, 1, 0x20); - al7C->dmaProc = ((ALDMAproc (*)(NUDMAState**))(D_80078E54->dmaNew))(&al7C->dmaState); - al7C->unk_2C = 0; - al7C->unk_30 = 1; - al7C->unk_34 = 0; - al7C->unk_38 = alHeapAlloc(heap, 1, 0x20); - al7C->unk_40 = 0; - al7C->unk_44 = 1; - al7C->unk_3C = 1.0f; - al7C->unk_48 = alHeapAlloc(heap, 1, 0x50); - al7C->unk_6C = 1; - al7C->unk_70 = 0; - al7C->unk_4E = 1; - al7C->unk_5C = 1; - al7C->unk_62 = 1; - al7C->unk_50 = 1; - al7C->unk_52 = 1; - al7C->unk_54 = 0; - al7C->unk_56 = 0; - al7C->unk_5A = 1; - al7C->unk_58 = 0; - al7C->unk_60 = 1; - al7C->unk_5E = 0; - al7C->unk_64 = 0; - al7C->unk_68 = 0; - al7C->unk_4C = 64; - al7C->unk_74 = 0; - al7C->unk_00 = 0; - al7C->unk_78 = 0; - al7C->unk_79 = i; - } - D_80078E54->unk_20 = alHeapAlloc(heap, config->unk_04, sizeof(UnkLen18)); - for (i = 0; i < config->unk_04; i++) { - UnkLen18* temp = &D_80078E54->unk_20[i]; - temp->unk_10 = 0; - temp->unk_14 = 0; - temp->unk_00 = 0x7FFF; - temp->unk_0C = 0; - temp->unk_04 = alHeapAlloc(heap, 1, 0x14); - temp->unk_08 = alHeapAlloc(heap, 1, 0x14); - func_80058E84(temp->unk_04, temp->unk_0C, heap); - func_80058E84(temp->unk_08, temp->unk_0C, heap); - } - - - D_80078E54->unk_24 = alHeapAlloc(heap, 0x170, 2); - D_80078E54->unk_28 = alHeapAlloc(heap, 0x170, 2); - D_800A3FEC = 0; - D_800A3FEE = 0; - D_800A3FF0 = 4; - - D_800A3FE0 = alHeapAlloc(heap, 0x2E0, 2); - D_800A3FE4 = alHeapAlloc(heap, 0x2E0, 2); - for (i = 0; i < 0x2E0; i++) { - D_800A3FE4[i] = D_800A3FE0[i] = 0; - } - - D_80078E54->heap = heap; -} - -void func_800565A4(void) { - if (D_80078E50 != NULL) { - D_80078E50 = NULL; - } -} - -INCLUDE_ASM(Acmd*, "31650", alAudioFrame, Acmd* cmdList, s32* cmdLen, s16* outBuf, s32 outLen); - -void func_80056D34(void) { - D_80078E58 = 1; -} - -void func_80056D44(s16 arg0) { - D_80078E5A = arg0; -} - -s16 func_80056D50(void) { - return D_80078E5A; -} - -#ifdef NON_MATCHING -void func_80056D5C(s8 arg0) { - D_80078181 = arg0; - D_80078E5C = 1; -} -#else -INCLUDE_ASM(s32, "31650", func_80056D5C); -#endif - -void func_80056D78(u8 arg0, u16 arg1) { - UnkLen18* temp = &D_80078E54->unk_20[arg0]; - - temp->unk_00 = arg1 & 0x7FFF; -} - -u16 func_80056DA4(u8 arg0, u16 arg1) { - UnkLen18* temp = &D_80078E54->unk_20[arg0]; - - return temp->unk_00; -} - -void func_80056DCC(u8 arg0, u8 arg1) { - UnkLen18* temp = &D_80078E54->unk_20[arg0]; - - temp->unk_0C = arg1; - func_8005904C(temp->unk_04, arg1); - func_8005904C(temp->unk_08, arg1); -} - -INCLUDE_ASM(s32, "31650", func_80056E34); - -void func_80056EC0(u8 arg0, s8 arg1) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - al7C->unk_78 = arg1; -} - -INCLUDE_ASM(void, "31650", func_80056EE8, u8 arg0); - -void func_80056F78(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - al7C->unk_70 = 1; -} - -INCLUDE_ASM(void, "31650", func_80056FA4, u8 arg0, u8 arg1, s32 arg2, f32 arg3, s16 arg4, u8 arg5, u8 arg6, - s32 arg7); - -INCLUDE_ASM(void, "31650", func_80057224, u8 arg0, Instrument* arg1); - -void func_80057344(u8 arg0, f32 arg1) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - al7C->unk_3C = arg1; -} - -INCLUDE_ASM(void, "31650", func_8005736C, u8 arg0, s16 arg1, s32 arg2, u8 arg3, u8 arg4); - -INCLUDE_ASM(void, "31650", func_80057548, u8 arg0, u8 arg1, u8 arg2); - -INCLUDE_ASM(void, "31650", func_800576EC, u8 arg0, s32 arg1, s32 arg2); - -INCLUDE_ASM(s32, "31650", func_80057874); - -INCLUDE_ASM(s32, "31650", func_800579D8); - -s32 func_80057B64(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_70; -} - -s32 func_80057B8C(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_78; -} - -f32 func_80057BB4(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_3C; -} - -u8 func_80057BDC(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_4C_s.unk_4D; -} - -s16 func_80057C04(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_54; -} - -s16 func_80057C2C(u8 arg0) { - UnkAl7C* al7C = &D_80078E54->unk_1C[arg0]; - - return al7C->unk_56; -} - -INCLUDE_ASM(s32, "31650", func_80057C54); - -INCLUDE_ASM(s32, "31650", func_80057D0C); - -void func_80057DC8(s32 arg0) { - if (arg0 < 2) { - D_800A3FF0 = 0; - D_800A3FEE = 0; - } - - D_800A3FF0 = arg0; - if (arg0 >= 5) { - D_800A3FF0 = 4; - } -} - -void func_80057E08(u8 arg0) { - s32* phi_a1 = (s32*)D_800A3FE0; - s32* phi_v1 = (s32*)D_800A3FE4; - s32 i; - - for (i = 0; i < 0x170; i++) { - *phi_a1++ = 0; - *phi_v1++ = 0; - } - - D_800A3FEC = arg0; - D_800A3FEE = 1; - D_800A3FE8 = 0; -} - -void func_80057E5C(u8 arg0) { - s32* phi_a1 = (s32*)D_800A3FE0; - s32* phi_v1 = (s32*)D_800A3FE4; - s32 i; - - for (i = 0; i < 0x170; i++) { - *phi_a1++ = 0; - *phi_v1++ = 0; - } - - D_800A3FEC = arg0; - D_800A3FEE = 2; - D_800A3FE8 = 0; -} - -void func_80057EB0(void) { - D_800A3FEC = 0; - D_800A3FEE = 0; - D_800A3FE8 = 0; -} - -void func_80057ED0(s16 arg0) { - s32* phi_a1 = (s32*)D_800A3FE0; - s32* phi_v1 = (s32*)D_800A3FE4; - s32 i; - - for (i = 0; i < 0x170; i++) { - *phi_a1++ = 0; - *phi_v1++ = 0; - } - - D_800A3FEC = 0; - D_800A3FEE = arg0; - D_800A3FE8 = 0; -} - -void alHeapInit(ALHeap* hp, u8* base, s32 len) { - u32 i; - s32 alignBytes = 0x10 - ((s32)base & 0xF); - - if (alignBytes != 0x10) { - hp->base = base + alignBytes; - } else { - hp->base = base; - } - hp->len = len; - hp->count = 0; - hp->cur = hp->base; - - for (i = 0; i < (u32)(hp->len) >> 2; i++) { - ((u32*)hp->base)[i] = 0; - } -} - -void* alHeapAlloc(ALHeap* heap, s32 arg1, s32 size) { - void* ret = NULL; - u8* newCur = &heap->cur[ALIGN16(arg1 * size)]; - - if (&heap->base[heap->len] >= newCur) { - ret = heap->cur; - heap->cur = newCur; - } - - return ret; -} - -void alCopy(void* src, void* dst, s32 size) { - s32 i; - u8* srcIt = src; - u8* dstIt = dst; - - for (i = 0; i < size; i++) { - *dstIt++ = *srcIt++; - } -} - -INCLUDE_ASM(s32, "31650", func_80058004); diff --git a/src/33450.c b/src/33450.c deleted file mode 100644 index ce208979fd..0000000000 --- a/src/33450.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "common.h" - -INCLUDE_ASM(s32, "33450", func_80058050); - -INCLUDE_ASM(s32, "33450", func_80058B20); - -INCLUDE_ASM(s32, "33450", func_80058C6C); diff --git a/src/341d0.c b/src/341d0.c deleted file mode 100644 index 8805238610..0000000000 --- a/src/341d0.c +++ /dev/null @@ -1,87 +0,0 @@ -#include "common.h" - -s32 D_8007EFE0[] = { - 0x00000003, 0x0000000B, 0x00000000, 0x00000009, 0x00002666, 0xFFFFD99A, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000003, 0x00000007, 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x0000000A, 0x00001388, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00005000 -}; - -s32 D_8007F048[] = { - 0x00000004, 0x0000000E, 0x00000000, 0x00000009, 0x00002666, 0xFFFFD99A, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000002, 0x00000006, 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, - 0x00000009, 0x0000000C, 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x0000000D, 0x00001770, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00005000, 0x00000004, 0x00000011, - 0x00000000, 0x0000000B, 0x00002666, 0xFFFFD99A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, - 0x00000009, 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, 0x0000000B, 0x0000000F, - 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000010, 0x00001F40, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00005000 -}; - -s32 D_8007F158[] = { - 0x00000001, 0x0000000E, 0x00000000, 0x0000000D, 0x00004E20, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, - 0x00007FFF -}; - -s32 D_8007F180[] = { - 0x00000001, 0x00000003, 0x00000000, 0x00000001, 0x00004000, 0x00000000, 0x00007FFF, 0x00001DB0, 0x000002BC, - 0x00000000 -}; - -s32 D_8007F1A8[] = { - 0x00000001, 0x00000003, 0x00000000, 0x00000001, 0x00000000, 0x00005FFF, 0x00007FFF, 0x0000017C, 0x000001F4, - 0x00000000 -}; - -s32 D_8007F1D0[] = { - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000 -}; - -typedef struct unk341d0 { - s32 unk_00; - s16 unk_04; - s16 unk_06; - s16 unk_08; - s16 unk_0A; - s16* unk_0C; - s16* unk_10; -} unk341d0; - -s32* D_8007F1F8 = D_8007F1D0; - -s32* D_8007F1FC = D_8007F1D0; - -s32* D_8007F200 = D_8007F1D0; - -s32* D_8007F204 = D_8007F1D0; - -void func_80058DD0(s16* arg); -INCLUDE_ASM(s32, "341d0", func_80058DD0); - -INCLUDE_ASM(s32, "341d0", func_80058E84); - -INCLUDE_ASM(s32, "341d0", func_80058F88); - -void func_80059008(unk341d0* arg0, s16 arg1, s16 arg2, s16 arg3) { - arg0->unk_06 = arg1; - arg0->unk_08 = arg2; - - if (arg3 != 0) { - arg0->unk_0C = arg0->unk_10; - *arg0->unk_0C = arg3; - func_80058DD0(arg0->unk_0C); - return; - } - - arg0->unk_0C = NULL; -} - -INCLUDE_ASM(s32, "341d0", func_8005904C); - -INCLUDE_ASM(s32, "341d0", func_80059310); - -INCLUDE_ASM(s32, "341d0", func_800598A0); - -INCLUDE_ASM(s32, "341d0", func_80059AB8); - -INCLUDE_ASM(s32, "341d0", func_80059BD4); diff --git a/src/5B320.c b/src/5B320.c index 170eb35984..33a5f3a92c 100644 --- a/src/5B320.c +++ b/src/5B320.c @@ -6,140 +6,140 @@ #define STANDARD_ITEM_SCRIPT(icon) \ { \ is_SetIcon(60, icon) \ - is_Restart \ - is_End \ + is_Restart \ + is_End \ } #define STANDARD_ITEM_HUD_SCRIPT(icon) \ { \ - hs_SetVisible \ - hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \ - hs_Loop \ - hs_SetIcon(60, icon) \ - hs_Restart \ - hs_End \ + hs_SetVisible \ + hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \ + hs_Loop \ + hs_SetIcon(60, icon) \ + hs_Restart \ + hs_End \ } HudScript HES_HandPointDownLoop = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_Loop - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(2, -1) - hs_SetIcon(1, anim_hand_1) - hs_SetTexelOffset(2, -1) - hs_SetIcon(1, anim_hand_2) - hs_SetTexelOffset(2, -1) - hs_SetIcon(4, anim_hand_3) - hs_SetTexelOffset(2, 4) - hs_SetIcon(1, anim_hand_1) - hs_SetTexelOffset(0, 3) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(0, -1) - hs_SetIcon(14, anim_hand_4) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_Loop + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(2, -1) + hs_SetIcon(1, anim_hand_1) + hs_SetTexelOffset(2, -1) + hs_SetIcon(1, anim_hand_2) + hs_SetTexelOffset(2, -1) + hs_SetIcon(4, anim_hand_3) + hs_SetTexelOffset(2, 4) + hs_SetIcon(1, anim_hand_1) + hs_SetTexelOffset(0, 3) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(0, -1) + hs_SetIcon(14, anim_hand_4) + hs_Restart + hs_End }; HudScript HES_HandPointDown = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(2, -1) - hs_SetIcon(1, anim_hand_1) - hs_SetTexelOffset(2, -1) - hs_SetIcon(1, anim_hand_2) - hs_SetTexelOffset(2, -1) - hs_SetIcon(4, anim_hand_3) - hs_SetTexelOffset(2, 4) - hs_SetIcon(1, anim_hand_1) - hs_SetTexelOffset(0, 3) - hs_SetIcon(1, anim_hand_0) - hs_SetTexelOffset(0, -1) - hs_SetIcon(2, anim_hand_4) - hs_SetTexelOffset(0, 3) - hs_Loop - hs_SetIcon(60, anim_hand_0) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(2, -1) + hs_SetIcon(1, anim_hand_1) + hs_SetTexelOffset(2, -1) + hs_SetIcon(1, anim_hand_2) + hs_SetTexelOffset(2, -1) + hs_SetIcon(4, anim_hand_3) + hs_SetTexelOffset(2, 4) + hs_SetIcon(1, anim_hand_1) + hs_SetTexelOffset(0, 3) + hs_SetIcon(1, anim_hand_0) + hs_SetTexelOffset(0, -1) + hs_SetIcon(2, anim_hand_4) + hs_SetTexelOffset(0, 3) + hs_Loop + hs_SetIcon(60, anim_hand_0) + hs_Restart + hs_End }; HudScript HES_HandPointDownHeld = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_Loop - hs_SetIcon(60, anim_hand_0) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_Loop + hs_SetIcon(60, anim_hand_0) + hs_Restart + hs_End }; HudScript HES_HandPointLeftLoop = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_Loop - hs_SetTexelOffset(0, 0) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, 0) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, 0) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, 0) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_6) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_7) - hs_SetTexelOffset(1, -3) - hs_SetIcon(4, anim_hand_8) - hs_SetTexelOffset(0, 4) - hs_SetIcon(1, anim_hand_6) - hs_SetTexelOffset(0, 4) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, 1) - hs_SetIcon(14, anim_hand_9) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_Loop + hs_SetTexelOffset(0, 0) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, 0) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, 0) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, 0) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_6) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_7) + hs_SetTexelOffset(1, -3) + hs_SetIcon(4, anim_hand_8) + hs_SetTexelOffset(0, 4) + hs_SetIcon(1, anim_hand_6) + hs_SetTexelOffset(0, 4) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, 1) + hs_SetIcon(14, anim_hand_9) + hs_Restart + hs_End }; HudScript HES_HandPointLeft = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_SetTexelOffset(0, 0) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_6) - hs_SetTexelOffset(0, -1) - hs_SetIcon(1, anim_hand_7) - hs_SetTexelOffset(1, -3) - hs_SetIcon(4, anim_hand_8) - hs_SetTexelOffset(0, 4) - hs_SetIcon(1, anim_hand_6) - hs_SetTexelOffset(0, 4) - hs_SetIcon(1, anim_hand_5) - hs_SetTexelOffset(0, 1) - hs_SetIcon(2, anim_hand_9) - hs_SetTexelOffset(0, 4) - hs_Loop - hs_SetIcon(60, anim_hand_5) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_SetTexelOffset(0, 0) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_6) + hs_SetTexelOffset(0, -1) + hs_SetIcon(1, anim_hand_7) + hs_SetTexelOffset(1, -3) + hs_SetIcon(4, anim_hand_8) + hs_SetTexelOffset(0, 4) + hs_SetIcon(1, anim_hand_6) + hs_SetTexelOffset(0, 4) + hs_SetIcon(1, anim_hand_5) + hs_SetTexelOffset(0, 1) + hs_SetIcon(2, anim_hand_9) + hs_SetTexelOffset(0, 4) + hs_Loop + hs_SetIcon(60, anim_hand_5) + hs_Restart + hs_End }; HudScript HES_HandPointLeftHeld = { - hs_SetVisible - hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) - hs_Loop - hs_SetIcon(60, anim_hand_5) - hs_Restart - hs_End + hs_SetVisible + hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) + hs_Loop + hs_SetIcon(60, anim_hand_5) + hs_Restart + hs_End }; #include "item_hud_scripts.inc.c" @@ -235,12 +235,12 @@ s32 pad_after_move_table[] = { }; s32* gMessageBoxFrameParts[] = { - D_802EBFF0, D_802EC010, D_802EC030, D_802EC050, - D_802EC070, D_802EC090, D_802EC0B0, D_802EC0D0, - D_802EC0F0, D_802EC110, D_802EC130, D_802EC150, - D_802EC170, D_802EC190, D_802EC1B0, D_802EC1D0, - D_802EC1F0, D_802EC210, D_802EC230, D_802EC250, - D_802EC270, D_802EC290, D_802EC2B0, D_802EC2D0, - D_802EC2F0, D_802EC310, D_802EC330, D_802EC350, - D_802EC370, D_802EC390, D_802EC3B0, D_802EC3D0 + D_802EBFF0, D_802EC010, D_802EC030, D_802EC050, + D_802EC070, D_802EC090, D_802EC0B0, D_802EC0D0, + D_802EC0F0, D_802EC110, D_802EC130, D_802EC150, + D_802EC170, D_802EC190, D_802EC1B0, D_802EC1D0, + D_802EC1F0, D_802EC210, D_802EC230, D_802EC250, + D_802EC270, D_802EC290, D_802EC2B0, D_802EC2D0, + D_802EC2F0, D_802EC310, D_802EC330, D_802EC350, + D_802EC370, D_802EC390, D_802EC3B0, D_802EC3D0 }; diff --git a/src/7B440.c b/src/7B440.c index 4998da3559..6944ba0fd2 100644 --- a/src/7B440.c +++ b/src/7B440.c @@ -221,7 +221,7 @@ void func_800E24F8(void) { break; } } else { - switch(gPlayerStatus.actionState) { + switch (gPlayerStatus.actionState) { case ACTION_STATE_WALK: case ACTION_STATE_RUN: case ACTION_STATE_JUMP: diff --git a/src/7bb60_len_41b0.c b/src/7bb60_len_41b0.c index 403fffcb5f..5ad5ac75af 100644 --- a/src/7bb60_len_41b0.c +++ b/src/7bb60_len_41b0.c @@ -473,11 +473,11 @@ f32 func_800E34D8(void) { return ret; } -f32 player_check_collision_below(f32 arg0, s32* colliderID) { +f32 player_check_collision_below(f32 offset, s32* colliderID) { PlayerStatus* playerStatus = &gPlayerStatus; CollisionStatus* collisionStatus = &gCollisionStatus; f32 temp_f4 = playerStatus->colliderHeight * 0.5f; - f32 outLength = fabsf(arg0) + temp_f4; + f32 outLength = fabsf(offset) + temp_f4; f32 x = playerStatus->position.x; f32 y = playerStatus->position.y + temp_f4; f32 z = playerStatus->position.z; @@ -486,10 +486,10 @@ f32 player_check_collision_below(f32 arg0, s32* colliderID) { &sp38, &sp3C, &sp40, &sp44); if (hit < 0) { - if (arg0 >= 0.0f && collisionStatus->currentCeiling >= 0) { + if (offset >= 0.0f && collisionStatus->currentCeiling >= 0) { return playerStatus->position.y; } - y = playerStatus->position.y + arg0; + y = playerStatus->position.y + offset; } else { collisionStatus->currentFloor = hit; collisionStatus->lastTouchedFloor = -1; diff --git a/src/80850_len_3060.c b/src/80850_len_3060.c index 538981822c..f7761e95a7 100644 --- a/src/80850_len_3060.c +++ b/src/80850_len_3060.c @@ -530,7 +530,7 @@ void show_coin_counter(void) { } if (uiStatus->unk_6C[0] == 0) { - set_window_properties(0x14, 32, 164, 64, 20, 0x15, coin_counter_draw_content, 0, -1); + set_window_properties(WINDOW_ID_20, 32, 164, 64, 20, 0x15, coin_counter_draw_content, 0, -1); set_window_update(WINDOW_ID_20, (s32)basic_window_update); index = hud_element_create(&HES_MenuTimes); uiStatus->iconIndex10 = index; diff --git a/src/8800.c b/src/8800.c index ebe4165472..5354a5569e 100644 --- a/src/8800.c +++ b/src/8800.c @@ -413,9 +413,9 @@ void set_cam_viewport(s16 id, s16 x, s16 y, s16 width, s16 height) { camera->vp.vp.vscale[2] = 0x1FF; camera->vp.vp.vscale[3] = 0; - camera->vp.vp.vtrans[0] = (((u16)camera->viewportStartX + (camera->viewportW / 2)) << 16) >> 14; - camera->vp.vp.vtrans[1] = ((u16)camera->viewportStartY + (camera->viewportH / 2)); - camera->vp.vp.vtrans[1] = (camera->vp.vp.vtrans[1] << 16) >> 14; // needed to match + camera->vp.vp.vtrans[0] = 4 * (s16) ((u16) camera->viewportStartX + (camera->viewportW / 2)); + camera->vp.vp.vtrans[1] = (s16) ((u16) camera->viewportStartY + (camera->viewportH / 2)); + camera->vp.vp.vtrans[1] = 4 * camera->vp.vp.vtrans[1]; camera->vp.vp.vtrans[2] = 0x1FF; camera->vp.vp.vtrans[3] = 0; @@ -424,8 +424,8 @@ void set_cam_viewport(s16 id, s16 x, s16 y, s16 width, s16 height) { camera->vpAlt.vp.vscale[2] = 0x1FF; camera->vpAlt.vp.vscale[3] = 0; - camera->vpAlt.vp.vtrans[0] = gGameStatusPtr->unk_82 + ((((u16) camera->viewportStartX + (camera->viewportW / 2)) << 16) >> 14); - camera->vpAlt.vp.vtrans[1] = gGameStatusPtr->unk_83 + ((((u16) camera->viewportStartY + (camera->viewportH / 2)) << 16) >> 14); + camera->vpAlt.vp.vtrans[0] = gGameStatusPtr->unk_82 + 4 * (s16) ((u16) camera->viewportStartX + (camera->viewportW / 2)); + camera->vpAlt.vp.vtrans[1] = gGameStatusPtr->unk_83 + 4 * (s16) ((u16) camera->viewportStartY + (camera->viewportH / 2)); camera->vpAlt.vp.vtrans[2] = 0x200; camera->vpAlt.vp.vtrans[3] = 0; } diff --git a/src/8a860_len_3f30.c b/src/8a860_len_3f30.c index 481bef7fb1..fb198e8f08 100644 --- a/src/8a860_len_3f30.c +++ b/src/8a860_len_3f30.c @@ -165,7 +165,7 @@ s32 popup_menu_update(void) { D_8010D65C = elementID; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_80); hud_element_set_tint(elementID, 255, 255, 255); - if (gPopupMenu->popupType != 2) { + if (gPopupMenu->popupType != POPUP_MENU_THROW_AWAY_ITEM) { hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_DISABLED); } @@ -187,31 +187,31 @@ s32 popup_menu_update(void) { D_8010D674 = elementID; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_DROP_SHADOW | HUD_ELEMENT_FLAGS_80); - if (gPopupMenu->popupType == 3) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { D_8010D660 = hud_element_create(&HES_StatusStarPiece); elementID = D_8010D660; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_80); hud_element_set_tint(elementID, 255, 255, 255); } - if (gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { D_8010D660 = hud_element_create(&HES_StatusStarPiece); elementID = D_8010D660; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_FILTER_TEX | HUD_ELEMENT_FLAGS_80); hud_element_set_tint(elementID, 255, 255, 255); } - if (gPopupMenu->popupType == 5) { + if (gPopupMenu->popupType == POPUP_MENU_SELL_ITEM) { D_8010D660 = hud_element_create(&HES_StatusCoin); elementID = D_8010D660; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_80); hud_element_set_tint(elementID, 255, 255, 255); } - if (gPopupMenu->popupType == 3 || gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE || gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { D_8010D664 = hud_element_create(&HES_MenuTimes); elementID = D_8010D664; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_80); hud_element_set_tint(elementID, 255, 255, 255); } - if (gPopupMenu->popupType == one || gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == one || gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { D_8010D668 = hud_element_create(D_80109890[0]); elementID = D_8010D668; hud_element_set_flags(elementID, HUD_ELEMENT_FLAGS_80); @@ -233,66 +233,66 @@ s32 popup_menu_update(void) { case 6: case 7: case 12: - set_window_properties(0xE, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_14, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); if (gPopupMenu->unk_31C == 0) { - set_window_properties(0xF, 0x19, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_15, 0x19, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); } else { - set_window_properties(0xF, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_15, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); } set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 1: - set_window_properties(0xE, posX, posY, 0x8B, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0x11, 0xD, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x8B, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_17, 0xD, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW); break; case 3: - set_window_properties(0xE, posX, posY, 0xA2, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 0x11, -6, 0x60, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0xA2, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 0x11, -6, 0x60, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 4: - set_window_properties(0xE, posX, posY, 0x92, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0x11, 0xC, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x92, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_17, 0xC, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW); break; case 5: - set_window_properties(0xE, posX, posY, 0xA7, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 0x16, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0xA7, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 0x16, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 8: - set_window_properties(0xE, posX, posY, 0xAA, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 0x20, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0xAA, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 0x20, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 9: - set_window_properties(0xE, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x91, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 10: - set_window_properties(0xE, posX, posY, 0x80, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 0xC, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x80, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 0xC, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 11: - set_window_properties(0xE, posX, posY, 0x95, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0xF, 6, -6, 0x8B, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x95, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_15, 6, -6, 0x8B, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE); break; case 13: - set_window_properties(0xE, posX, posY, 0x83, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); - set_window_properties(0x11, 0xA, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); + set_window_properties(WINDOW_ID_14, posX, posY, 0x83, ((s8) D_8010D656 * 0xD) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1); + set_window_properties(WINDOW_ID_17, 0xA, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE); set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE); set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW); break; @@ -300,15 +300,15 @@ s32 popup_menu_update(void) { switch (gPopupMenu->popupType) { case 3: - set_window_properties(0x10, 0x7E, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE); + set_window_properties(WINDOW_ID_16, 0x7E, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE); break; case 5: - set_window_properties(0x10, 0x83, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE); + set_window_properties(WINDOW_ID_16, 0x83, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE); break; } - if (gPopupMenu->popupType == 3) { - set_window_properties(0x14, D_8010D688, D_8010D68A, 0x40, 0x14, 0x15, func_800F4D28, NULL, -1); + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { + set_window_properties(WINDOW_ID_20, D_8010D688, D_8010D68A, 0x40, 0x14, 0x15, func_800F4D28, NULL, -1); } do { @@ -328,8 +328,9 @@ s32 popup_menu_update(void) { D_8010D655 = D_8010D654 + D_8010D68F; D_8010D658 = -D_8010D654 * 0xD; - if (gPopupMenu->popupType >= 0 && (gPopupMenu->popupType < 0xA || gPopupMenu->popupType == 0xC)) { - set_window_properties(0x13, D_8010D680, D_8010D682, 0x118, 0x20, 0x14, func_800F48F4, NULL, -1); + if (gPopupMenu->popupType >= POPUP_MENU_USE_ITEM + && (gPopupMenu->popupType < POPUP_MENU_READ_DIARY_PAGE || gPopupMenu->popupType == POPUP_MENU_USEKEY)) { + set_window_properties(WINDOW_ID_19, D_8010D680, D_8010D682, 0x118, 0x20, 0x14, func_800F48F4, NULL, -1); } posX = D_8010D684; @@ -340,26 +341,26 @@ s32 popup_menu_update(void) { case 7: case 9: case 12: - set_window_properties(0x15, posX, posY, 0x90, 0x20, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x90, 0x20, 0x14, func_800F4944, NULL, -1); break; case 1: case 2: case 13: - set_window_properties(0x15, posX, posY, 0x90, 0x28, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x90, 0x28, 0x14, func_800F4944, NULL, -1); break; case 3: case 10: case 11: - set_window_properties(0x15, posX, posY, 0x80, 0x28, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x80, 0x28, 0x14, func_800F4944, NULL, -1); break; case 4: - set_window_properties(0x15, posX, posY, 0x88, 0x28, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x88, 0x28, 0x14, func_800F4944, NULL, -1); break; case 8: - set_window_properties(0x15, posX, posY, 0x70, 0x28, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x70, 0x28, 0x14, func_800F4944, NULL, -1); break; case 5: - set_window_properties(0x15, posX, posY, 0x78, 0x20, 0x14, func_800F4944, NULL, -1); + set_window_properties(WINDOW_ID_21, posX, posY, 0x78, 0x20, 0x14, func_800F4944, NULL, -1); break; } @@ -419,14 +420,14 @@ s32 popup_menu_update(void) { set_window_update(WINDOW_ID_21, WINDOW_UPDATE_SHOW); } - if (gPopupMenu->popupType == 3) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { set_window_update(WINDOW_ID_16, (s32)basic_window_update); set_window_update(WINDOW_ID_20, (s32)basic_window_update); } - if (gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { set_window_update(WINDOW_ID_18, (s32)basic_window_update); } - if (gPopupMenu->popupType == 5) { + if (gPopupMenu->popupType == POPUP_MENU_SELL_ITEM) { set_window_update(WINDOW_ID_16, (s32)basic_window_update); } D_8010D640 = 1; @@ -438,7 +439,7 @@ s32 popup_menu_update(void) { D_8010D64C = D_8010D648; if (gGameStatusPtr->heldButtons[0] & (BUTTON_STICK_UP | BUTTON_Z) && - (D_8010D648 > 0 || (gGameStatusPtr->pressedButtons[0] & 0x12000))) + (D_8010D648 > 0 || (gGameStatusPtr->pressedButtons[0] & (BUTTON_STICK_UP | BUTTON_Z)))) { do { D_8010D648--; @@ -519,7 +520,7 @@ s32 popup_menu_update(void) { D_8010D640 = 0x1E; break; } - if ((D_8010D68E != 0) && (gPopupMenu->popupType == 0 || gPopupMenu->popupType == 3)) { + if ((D_8010D68E != 0) && (gPopupMenu->popupType == POPUP_MENU_USE_ITEM || gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE)) { sfx_play_sound(SOUND_MENU_ERROR); } break; @@ -604,18 +605,18 @@ s32 popup_menu_update(void) { hud_element_set_tint(D_8010D670, 160, 160, 160); hud_element_set_tint(D_8010D674, 160, 160, 160); hud_element_set_script(D_8010D66C, &HES_HandPointer); - if (gPopupMenu->popupType == 3) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D668, 160, 160, 160); } - if (gPopupMenu->popupType == 5) { + if (gPopupMenu->popupType == POPUP_MENU_SELL_ITEM) { hud_element_set_tint(D_8010D660, 160, 160, 160); } D_8010D690 = 0xD; @@ -694,7 +695,7 @@ s32 popup_menu_update(void) { set_window_update(WINDOW_ID_21, WINDOW_UPDATE_HIDE); } width = get_msg_width(0x1D006B, 0) + 23; - set_window_properties(9, 160 - (width / 2), 0x50, width, 0x28, 0x14, func_800F4CF0, NULL, -1); + set_window_properties(WINDOW_ID_9, 160 - (width / 2), 0x50, width, 0x28, 0x14, func_800F4CF0, NULL, -1); set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); D_8010D644 = 0x3C; D_8010D640 = 0x20; @@ -724,18 +725,18 @@ s32 popup_menu_update(void) { hud_element_set_tint(D_8010D674, 160, 160, 160); hud_element_set_script(D_8010D66C, &HES_HandPointer); - if (gPopupMenu->popupType == 3) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D668, 160, 160, 160); } - if (gPopupMenu->popupType == 5) { + if (gPopupMenu->popupType == POPUP_MENU_SELL_ITEM) { hud_element_set_tint(D_8010D660, 160, 160, 160); } @@ -771,7 +772,7 @@ s32 popup_menu_update(void) { msgID = 0x1D0069; } width = get_msg_width(msgID, 0) + 23; - set_window_properties(0x15, 160 - (width / 2), 76, width, 32, 0x13, func_800F4C1C, NULL, -1); + set_window_properties(WINDOW_ID_21, 160 - (width / 2), 76, width, 32, 0x13, func_800F4C1C, NULL, -1); set_window_update(WINDOW_ID_21, WINDOW_UPDATE_SHOW); D_8010D6A0 = msg_get_printer_for_msg(0x1E001D, &D_8010D6A4); msg_printer_set_origin_pos(D_8010D6A0, 160, 0x90); @@ -799,18 +800,18 @@ s32 popup_menu_update(void) { hud_element_set_tint(D_8010D66C, 255, 255, 255); hud_element_set_tint(D_8010D670, 255, 255, 255); hud_element_set_tint(D_8010D674, 255, 255, 255); - if (gPopupMenu->popupType == 3) { + if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D660, 160, 160, 160); hud_element_set_tint(D_8010D664, 160, 160, 160); } - if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == 4) { + if (gPopupMenu->popupType == 1 || gPopupMenu->popupType == POPUP_MENU_UPGRADE_PARTNER) { hud_element_set_tint(D_8010D668, 160, 160, 160); } - if (gPopupMenu->popupType == 5) { + if (gPopupMenu->popupType == POPUP_MENU_SELL_ITEM) { hud_element_set_tint(D_8010D660, 160, 160, 160); } hud_element_set_script(D_8010D66C, &HES_HandPointer); diff --git a/src/C50A0.c b/src/C50A0.c index ec6364e268..9d85a32633 100644 --- a/src/C50A0.c +++ b/src/C50A0.c @@ -1254,24 +1254,24 @@ void func_801363A0(ItemEntity* itemEntity) { temp = 0; } if (gItemTable[itemEntity->itemID].typeFlags) { - set_window_properties(0xC, s1, s3 - 0x18 + temp, offsetY, + set_window_properties(WINDOW_ID_12, s1, s3 - 0x18 + temp, offsetY, temp2, 0, func_8013673C, itemEntity, -1); } else { - set_window_properties(0xC, s1, s3 - 0x18 + temp, offsetY, + set_window_properties(WINDOW_ID_12, s1, s3 - 0x18 + temp, offsetY, temp2, 0, func_8013673C, itemEntity, -1); } if (itemEntity->itemID != ITEM_STAR_PIECE && itemEntity->itemID != ITEM_COIN) { - set_window_properties(0x13, 0x14, 0xBA, 0x118, 0x20, NULL, func_80136A08, itemEntity, -1); + set_window_properties(WINDOW_ID_19, 0x14, 0xBA, 0x118, 0x20, NULL, func_80136A08, itemEntity, -1); } if (itemEntity->state != 2) { offsetY = get_msg_width(MESSAGE_ID(0x1D, 0x060), 0) + 0x18; - set_window_properties(0x11, 160 - offsetY / 2, 0x24, offsetY, 40, NULL, func_801369D0, itemEntity, -1); + set_window_properties(WINDOW_ID_17, 160 - offsetY / 2, 0x24, offsetY, 40, NULL, func_801369D0, itemEntity, -1); } break; case 12: set_message_msg(itemData->nameMsg, 0); offsetY = get_msg_width(MESSAGE_ID(0x1D, 0x05F), 0) + 0x36; - set_window_properties(0xC, 160 - offsetY / 2, 0x4C, offsetY, 40, NULL, func_8013673C, itemEntity, -1); + set_window_properties(WINDOW_ID_12, 160 - offsetY / 2, 0x4C, offsetY, 40, NULL, func_8013673C, itemEntity, -1); break; } } diff --git a/src/E225B0.c b/src/E225B0.c index 79dbc435fc..c24e347b67 100644 --- a/src/E225B0.c +++ b/src/E225B0.c @@ -76,7 +76,7 @@ void func_802B7000_E225B0(void) { foldImage.palette = D_802B7BE0_E23190; break; } - fold_update(0, 7, 0xFF, 0xFF, 0xFF, D_802B7C78_E23228->unk_28, 0); + fold_update(0, FOLD_TYPE_7, 0xFF, 0xFF, 0xFF, D_802B7C78_E23228->unk_28, 0); foldImage.raster = D_802B7580_E22B30; foldImage.width = 56; @@ -161,7 +161,7 @@ void func_802B735C_E2290C(void) { } if (D_802B7C78_E23228->unk_18++ > 50) { - D_8015A578.unk_02 = FALSE; + gCurrentHiddenPanels.activateISpy = FALSE; D_8010C93C = NULL; playerStatus->animFlags &= ~0x100; } diff --git a/src/a5dd0_len_114e0.c b/src/a5dd0_len_114e0.c index e11792f8da..da5939af2f 100644 --- a/src/a5dd0_len_114e0.c +++ b/src/a5dd0_len_114e0.c @@ -1031,7 +1031,7 @@ extern EntityBlueprint* bEntityBlueprint[4]; extern s32* D_801516F4; -extern TileDescriptor gCurrentTileDescriptor; +extern TextureHeader gCurrentTileDescriptor; extern ModelList wModelList; extern ModelList bModelList; @@ -1063,7 +1063,7 @@ extern s32 texPannerMainU[MAX_TEX_PANNERS]; extern s32 texPannerMainV[MAX_TEX_PANNERS]; extern s32 texPannerAuxU[MAX_TEX_PANNERS]; extern s32 texPannerAuxV[MAX_TEX_PANNERS]; -extern u32 mdl_nextTextureAddress; +extern u8* mdl_nextTextureAddress; extern u16 mdl_currentTransformGroupChildIndex; extern u16 D_80153226; extern ModelNode* D_80153370; @@ -1218,7 +1218,7 @@ void update_entities(void) { } update_shadows(); - D_8015A578.unk_00 = FALSE; + gCurrentHiddenPanels.tryFlipTrigger = FALSE; } void update_shadows(void) { @@ -1814,8 +1814,8 @@ void clear_entity_data(s32 arg0) { } entity_area_specific_data_is_loaded = FALSE; - D_8015A578.unk_01 = 0; - D_8015A578.unk_02 = FALSE; + gCurrentHiddenPanels.panelsCount = 0; + gCurrentHiddenPanels.activateISpy = FALSE; if (!arg0) { D_80151344 = 0; } @@ -2970,7 +2970,35 @@ void state_render_frontUI(void) { void appendGfx_model(Model* model); INCLUDE_ASM(void, "a5dd0_len_114e0", appendGfx_model, Model*); -INCLUDE_ASM(s32, "a5dd0_len_114e0", func_80114B58); +void func_80114B58(u32 romOffset, TextureHandle* handle, TextureHeader* header, s32 mainSize, s32 mainPalSize, s32 auxSize, s32 auxPalSize) { + handle->raster = (u32*) mdl_nextTextureAddress; + if (mainPalSize != 0) { + handle->palette = (u32*) (mdl_nextTextureAddress + mainSize); + } else { + handle->palette = NULL; + } + dma_copy((u8*) romOffset, (u8*) (romOffset + mainSize + mainPalSize), mdl_nextTextureAddress); + romOffset += mainSize + mainPalSize; + mdl_nextTextureAddress += mainSize + mainPalSize; + if (auxSize != 0) { + handle->auxRaster = (u32*) mdl_nextTextureAddress; + if (auxPalSize != 0) { + handle->auxPalette = (u32*) (mdl_nextTextureAddress + auxSize); + } else { + handle->auxPalette = NULL; + } + dma_copy((u8*) romOffset, (u8*) (romOffset + auxSize + auxPalSize), mdl_nextTextureAddress); + mdl_nextTextureAddress += auxSize + auxPalSize; + } else { + handle->auxPalette = NULL; + handle->auxRaster = NULL; + } + + handle->gfx = (Gfx*) mdl_nextTextureAddress; + memcpy(&handle->header, header, sizeof(*header)); + func_801180E8(header, &mdl_nextTextureAddress, handle->raster, handle->palette, handle->auxRaster, handle->auxPalette, 0, 0, 0, 0); + gSPEndDisplayList(((Gfx*) mdl_nextTextureAddress)++); +} void load_tile_header(char* textureName, s32 romOffset, s32 size); INCLUDE_ASM(s32, "a5dd0_len_114e0", load_tile_header); @@ -4101,7 +4129,7 @@ void get_model_fog_color_parameters(u8* primR, u8* primG, u8* primB, u8* primA, *fogEnd = mdl_renderModelFogEnd; } -void set_model_env_color_parameters(u8 primR, u8 primG, u8 primB, u8 envR, s32 envG, s32 envB) { +void set_model_env_color_parameters(u8 primR, u8 primG, u8 primB, u8 envR, u8 envG, u8 envB) { gRenderModelPrimR = primR; gRenderModelPrimG = primG; gRenderModelPrimB = primB; diff --git a/src/audio.h b/src/audio.h index f833f226a5..ec36ece18a 100644 --- a/src/audio.h +++ b/src/audio.h @@ -2,138 +2,395 @@ #define _AUDIO_H_ #include "nu/nusys.h" #include "nu/nualsgi.h" +#include "PR/n_abi.h" #include "common.h" +// temporary to keep track of unk portions of alUnk structs (not just unk fields) +typedef s8 UNK_TYPE_08; +typedef s16 UNK_TYPE_16; +typedef s32 UNK_TYPE_32; +typedef void* UNK_TYPE_PTR; + +typedef u8* AuFilePos; +typedef u8* WaveData; + +#define NO_INSTRUMENT ((Instrument*) -1) + +#define AU_FX_DELAY_COUNT 4 +#define AU_FX_LENGTH 0xA10 + +#define AU_5750 5750 + +#define SAMPLES 184 +#define SAMPLE184(delta) (((delta) + (SAMPLES / 2)) / SAMPLES) * SAMPLES +#define FIXED_SAMPLE SAMPLES + +#define N_AL_DECODER_IN 0 +#define N_AL_RESAMPLER_OUT 0 +#define N_AL_TEMP_0 0 +#define N_AL_DECODER_OUT 0x170 +#define N_AL_TEMP_1 0x170 +#define N_AL_TEMP_2 0x2E0 +#define N_AL_MAIN_L_OUT 0x4E0 +#define N_AL_MAIN_R_OUT 0x650 +#define N_AL_AUX_L_OUT 0x7C0 +#define N_AL_AUX_R_OUT 0x930 + #define ALIGN16_(val) (((val) + 0xF) & 0xFFF0) +#define AU_FILE_RELATIVE(base,offset) ((void*)((s32)(offset) + (s32)(base))) + +#define AUDIO_HEAP_SIZE 0x56000 + // NU_AU_AUDIO_SAMPLES ? +#define AUDIO_SAMPLES 184 +#define AUDIO_COMMAND_LIST_BUFFER_SIZE 0x4000 + +#define SND_MAX_VOLUME_8 0x7F // 127 +#define SND_MAX_VOLUME_16 0x7FFF + +#define BGM_SAMPLE_RATE 156250 +#define BGM_DEFAULT_TEMPO 15600 + +#define SND_MIN_DURATION 250 +#define SND_MAX_DURATION 10000 + +#define BGM_MAX_VOLUME 127 + +#define BGM_SEGMENT_LABEL 3 + +typedef u32 SegData; + + +typedef enum AuPriority { + AU_PRIORITY_FREE = 0, + AU_PRIORITY_BGM_PLAYER_MAIN = 1, + AU_PRIORITY_BGM_PLAYER_AUX = 2, + AU_PRIORITY_SFX_MANAGER = 4, + AU_PRIORITY_MSEQ_MANAGER = 6, +} AuPriority; + +enum AuVoiceFlags3D { + AU_VOICE_3D_FLAGS_1 = 0x01, + AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE = 0x02, + AU_VOICE_3D_FLAGS_10 = 0x10, + AU_VOICE_3D_FLAGS_VOL_CHANGED = 0x20, +}; + +enum AuVoiceFlags43 { + AU_VOICE_SYNC_FLAGS_ALL = 0x02, + AU_VOICE_SYNC_FLAGS_4 = 0x04, + AU_VOICE_SYNC_FLAGS_PITCH = 0x08, + AU_VOICE_SYNC_FLAGS_10 = 0x10, +}; + +typedef enum AuEffectType { + AU_FX_NONE = 0, + AU_FX_SMALLROOM = 1, + AU_FX_BIGROOM = 2, + AU_FX_CHORUS = 3, + AU_FX_FLANGE = 4, + AU_FX_ECHO = 5, + AU_FX_CUSTOM_0 = 6, + AU_FX_CUSTOM_1 = 7, + AU_FX_CUSTOM_2 = 8, + AU_FX_CUSTOM_3 = 9, + AU_FX_OTHER_BIGROOM = 10 +} AuEffectType; + +typedef enum BGMPlayerState { + BGM_PLAY_STATE_IDLE = 0, + BGM_STATE_PLAY_SUBSEG = 1, + BGM_PLAY_STATE_NEXT_SUBSEG = 2, + BGM_PLAY_STATE_INIT = 3, + BGM_PLAY_STATE_STOP = 4 +} BGMPlayerState; + +typedef enum SegmentControlCommands { + BGM_SEGMENT_END = 0, + BGM_SEGMENT_SUBSEG = 1, + BGM_SEGMENT_START_LOOP = 3, + BGM_SEGMENT_WAIT = 4, + BGM_SEGMENT_END_LOOP = 5, + BGM_SEGMENT_6 = 6, + BGM_SEGMENT_7 = 7 +} SegmentControlCommands; + +typedef union Q32 { + u8 u8[4]; + u16 u16[2]; + s32 s32; +} Q32; + +typedef union Vol32 { + s32 full; + s16 half; + s8 byte; +} Vol32; struct BGMPlayer; -struct UnkAl19E0; -struct UnkAl48; +struct AuGlobals; +struct AlUnkVoice; -typedef void (*UnkFuncAl)(void); +typedef void (*AuCallback)(void); -typedef union UnkField { - u8 u8; +typedef union SeqArgs { + u8 raw[4]; + struct { // cmd E0 + u16 value; + } MasterTempo; + struct { // cmd E1 + u8 value; + } MasterVolume; + struct { // cmd E2 + u8 cent; + } MasterPitchShift; + struct { // cmd E3 + u8 bank; + } UnkCmdE3; + struct { // cmd E4 + u16 time; + u16 value; + } MasterTempoFade; + struct { // cmd E5 + u16 time; + u8 value; + } MasterVolumeFade; + struct { // cmd E6 + u8 index; + u8 value; + } MasterEffect; + // command E7 unused + struct { // cmd E8 + u8 bank; + u8 patch; + } TrackOverridePatch; + struct { // cmd E9 + u8 value; + } SubTrackVolume; + struct { // cmd EA + u8 value; + } SubTrackPan; + struct { // cmd EB + u8 value; + } SubTrackReverb; + struct { // cmd EC + u8 value; + } SegTrackVolume; + struct { // cmd ED + u8 cent; + } SubTrackCoarseTune; + struct { // cmd EE + u8 value; + } SubTrackFineTune; + struct { // cmd EF + u16 value; + } SegTrackTune; + struct { // cmd F0 + u8 amount; + u8 speed; + u8 time; + } TrackTremolo; + struct { // cmd F1 + u8 value; + } TrackTremoloSpeed; + struct { // cmd F2 + u8 time; + } TrackTremoloTime; + // no args for F3 (TrackTremoloStop) + struct { // cmd F4 + u8 pan0; + u8 pan1; + } UnkCmdF4; + struct { // cmd F5 + u8 index; + } SetTrackVoice; + struct { // cmd F6 + u16 time; + u8 value; + } TrackVolumeFade; + struct { // cmd F7 + u8 index; + } SubTrackReverbType; + // commands F8-FB unused + struct { // cmd FC + u16 unk_00; + u8 unk_02; + } Jump; + struct { // cmd FD + u32 eventInfo; + } EventTrigger; + struct { // cmd FE + u16 offset; + u8 length; + } Detour; + struct { // cmd FF + u8 unk_00; + u8 unk_01; + u8 unk_02; + } UnkCmdFF; +} SeqArgs; + +typedef union VolumeField { u16 u16; - u32 u32; - s8 s8; s32 s32; -} UnkField; - -typedef union X16 { - u8 u8[2]; - u16 u16; -} X16; - -typedef struct UnkAl1 { - /* 0x00 */ UnkField unk_00; - /* 0x04 */ s32 unk_04; - /* 0x08 */ s16 unk_08; - /* 0x0A */ s16 unk_0A; - /* 0x0C */ UnkFuncAl unk_0C; - /* 0x10 */ UnkField unk_10; - ///* 0x12 */ char unk_12[2]; - /* 0x14 */ s32 unk_14; - /* 0x18 */ s16 unk_18; - /* 0x1A */ s16 unk_1A; -} UnkAl1; // size unknown (currently 0x1C) +} VolumeField; +// envelope related? typedef struct Fade { - /* 0x0 */ UnkField currentVolume; + /* 0x0 */ VolumeField currentVolume; /* 0x4 */ s32 fadeStep; - /* 0x8 */ s16 endVolume; + /* 0x8 */ s16 targetVolume; /* 0xA */ s16 fadeTime; - /* 0xC */ UnkFuncAl fpFadeCallback; - /* 0x10 */ UnkField unk_10; - /* 0x14 */ s32 unk_14; - /* 0x18 */ s16 unk_18; - /* 0x1A */ s16 unk_1A; + union { + /* 0xC */ AuCallback onCompleteCallback; + /* 0xC */ s32 variation; + }; + // fields below are envelope? + /* 0x10 */ VolumeField volScale; + /* 0x14 */ s32 volScaleStep; + /* 0x18 */ s16 targetVolScale; + /* 0x1A */ s16 volScaleTime; } Fade; // size = 0x10 -typedef struct InstrumentCFG { // maybe same as UnkAlC? - /* 0x00 */ s16 unk_00; - /* 0x02 */ u8 unk_02; - /* 0x03 */ s8 unk_03; - /* 0x04 */ s8 unk_04; - /* 0x05 */ s8 unk_05; - /* 0x06 */ s8 unk_06; -} InstrumentCFG; +typedef struct AlUnkPi { + /* 0x00 */ UNK_TYPE_32 unk_00; + /* 0x04 */ UNK_TYPE_32 unk__04; + /* 0x08 */ UNK_TYPE_32 unk_08; + /* 0x0C */ UNK_TYPE_32 unk_0C; +} AlUnkPi; // size = 0x8 -typedef struct UnkLen18 { +// based on ALDelay +typedef struct AuDelay { + /* 0x00 */ u32 input; + /* 0x04 */ u32 output; + /* 0x08 */ s16 ffcoef; // feedforward coef + /* 0x0A */ s16 fbcoef; // feedback coef + /* 0x0C */ s16 gain; + /* 0x0E */ char pad_0E[2]; + /* 0x10 */ f32 rsinc; + /* 0x14 */ f32 rsval; + /* 0x18 */ s32 rsdelta; + /* 0x1C */ f32 rsgain; + /* 0x20 */ struct AuLowPass* lowpass_20; // [ALLowPass] ? + /* 0x24 */ struct AuLowPass* lowpass_24; // [ALLowPass] ? + /* 0x28 */ struct AuResampler* resampler_28; // [ALResampler] ? + /* 0x2C */ struct AuResampler* resampler_2C; // [ALResampler] ? +} AuDelay; // size = 0x30 + +// based on ALFx +typedef struct AuFX { + /* 0x00 */ s16* base; + /* 0x04 */ s16* input; + /* 0x08 */ s32 length; + /* 0x0C */ AuDelay* delays; + /* 0x10 */ u8 delayCount; +} AuFX; // size = 0x14 + +// based on ALLowPass +typedef struct AuLowPass { + /* 0x00 */ s16 fc; + /* 0x02 */ s16 fgain; + // ALLowPass uses a union with force_aligned to create this padding + /* 0x04 */ char pad_04[4]; + /* 0x08 */ s16 fccoef[16]; + /* 0x28 */ POLEF_STATE* fstate; + /* 0x2C */ s32 first; +} AuLowPass; // size = 0x30 + +typedef struct AlUnkKappa { + /* 0x00 */ UNK_TYPE_PTR unk_00; // size = 2 * 1420h + /* 0x04 */ UNK_TYPE_16 unk__04; + /* 0x06 */ s16 unk_06; + /* 0x08 */ s16 unk_08; + /* 0x0A */ UNK_TYPE_16 unk__0A; + /* 0x0C */ AuLowPass* lowpass_0C; + /* 0x10 */ AuLowPass* lowpass_10; +} AlUnkKappa; // size unk + +typedef struct AlUnkGamma { /* 0x00 */ u16 unk_00; /* 0x02 */ char unk_02[0x2]; - /* 0x04 */ s32* unk_04; - /* 0x08 */ s32* unk_08; - /* 0x0C */ u8 unk_0C; + /* 0x04 */ AuFX* fxL; + /* 0x08 */ AuFX* fxR; + /* 0x0C */ u8 currentEffectType; /* 0x0D */ char unk_0D[0x3]; - /* 0x10 */ s32* unk_10; - /* 0x14 */ s32* unk_14; -} UnkLen18; + /* 0x10 */ struct AuPVoice* pvoice_10; + /* 0x14 */ struct AuPVoice* pvoice_14; +} AlUnkGamma; // size = 0x18 -typedef struct UnkAl7C { - /* 0x00 */ s32 unk_00; - /* 0x04 */ s32* unk_04; - /* 0x08 */ s32* unk_08; - /* 0x0C */ char unk_0C[0x8]; - /* 0x14 */ s32* unk_14; - /* 0x18 */ s32* unk_18; - /* 0x1C */ s32 unk_1C; - /* 0x20 */ ALDMAproc dmaProc; - /* 0x24 */ NUDMAState* dmaState; - /* 0x28 */ s32 unk_28; - /* 0x2C */ s32 unk_2C; - /* 0x30 */ s32 unk_30; - /* 0x34 */ s32 unk_34; - /* 0x38 */ s32* unk_38; - /* 0x3C */ f32 unk_3C; - /* 0x40 */ s32 unk_40; - /* 0x44 */ s32 unk_44; - /* 0x48 */ s32* unk_48; - /* 0x4C */ union { - s16 unk_4C; - struct { - u8 unk_4C; - u8 unk_4D; - } unk_4C_s; - }; - /* 0x4E */ s16 unk_4E; - /* 0x50 */ s16 unk_50; - /* 0x52 */ s16 unk_52; - /* 0x54 */ s16 unk_54; - /* 0x56 */ s16 unk_56; - /* 0x58 */ s16 unk_58; - /* 0x5A */ s16 unk_5A; - /* 0x5C */ s16 unk_5C; - /* 0x5E */ s16 unk_5E; - /* 0x60 */ s16 unk_60; - /* 0x62 */ s16 unk_62; - /* 0x64 */ s32 unk_64; - /* 0x68 */ s32 unk_68; - /* 0x6C */ s32 unk_6C; - /* 0x70 */ s32 unk_70; +// based on ALLoadFilter +typedef struct AuLoadFilter { + /* 0x04 */ ADPCM_STATE* dc_state; + /* 0x08 */ ADPCM_STATE* dc_lstate; + /* 0x0C */ ALRawLoop dc_loop; + /* 0x18 */ struct Instrument* instrument; + /* 0x1C */ s32 dc_bookSize; + /* 0x20 */ s32 (*dc_dmaFunc)(s32 addr, s32 len, void* state, u8 unk); // ALDMAproc with extra arg + /* 0x24 */ NUDMAState* dc_dmaState; + /* 0x28 */ s32 dc_sample; + /* 0x2C */ s32 dc_lastsam; + /* 0x30 */ s32 dc_first; + /* 0x34 */ u8* dc_memin; +} AuLoadFilter; // size = 0x34 + +// based on ALResampler +typedef struct AuResampler { + /* 0x38 */ RESAMPLE_STATE* rs_state; + /* 0x3C */ f32 rs_ratio; + /* 0x40 */ f32 delta; + /* 0x44 */ s32 first; +} AuResampler; // size = 0x10 + +// envelope mixer -- based on ALEnvMixer +typedef struct AuEnvMixer { + /* 0x48 */ ENVMIX_STATE* em_state; + /* 0x4C */ s16 em_pan; + /* 0x4E */ s16 em_volume; + /* 0x50 */ s16 em_cvolL; + /* 0x52 */ s16 em_cvolR; + /* 0x54 */ s16 em_dryamt; + /* 0x56 */ s16 em_wetamt; + /* 0x58 */ s16 em_lratl; + /* 0x5A */ s16 em_lratm; + /* 0x5C */ s16 em_ltgt; + /* 0x5E */ s16 em_rratl; + /* 0x60 */ s16 em_rratm; + /* 0x62 */ s16 em_rtgt; + /* 0x64 */ s32 em_delta; + /* 0x68 */ s32 em_segEnd; + /* 0x6C */ s32 em_first; + /* 0x70 */ s32 em_motion; +} AuEnvMixer; // size = 0x74 + +// based on N_PVoice +typedef struct AuPVoice { + /* 0x00 */ struct AuPVoice* next; + /* 0x04 */ AuLoadFilter loadFilter; + /* 0x38 */ AuResampler resampler; + /* 0x48 */ AuEnvMixer envMixer; /* 0x74 */ s16 unk_74; /* 0x76 */ s16 unk_76; - /* 0x78 */ u8 unk_78; - /* 0x79 */ u8 unk_79; + /* 0x78 */ u8 gammaID; //? + /* 0x79 */ u8 index; /* 0x7A */ u8 unk_7A[2]; -} UnkAl7C; +} AuPVoice; -typedef struct UnkAl0 { - /* 0x00 */ s32 unk_00; +// based on N_ALSynth +typedef struct AuSynDriver { + /* 0x00 */ s32 curSamples; /* 0x04 */ s32 unk_04; - /* 0x08 */ s32 frequency; - /* 0x0C */ s32 unk_0C; - /* 0x10 */ s32 unk_10; - /* 0x14 */ void* dmaNew; // pointer to nuAuDmaNew + /* 0x08 */ s32 outputRate; + /* 0x0C */ s32 num_pvoice; + /* 0x10 */ s32 unk_num_gamma; + /* 0x14 */ ALDMANew* dmaNew; // pointer to nuAuDmaNew /* 0x18 */ ALHeap* heap; - /* 0x1C */ UnkAl7C* unk_1C; // pointer to list of UnkAl7C - /* 0x20 */ UnkLen18* unk_20; // amt unknown - /* 0x24 */ s32* unk_24; - /* 0x28 */ s32* unk_28; -} UnkAl0; + /* 0x1C */ AuPVoice* pvoices; + /* 0x20 */ AlUnkGamma* al_unk_gamma; + /* 0x24 */ s32* unk_drvr_24; // struct size = 0x170 + /* 0x28 */ s32* unk_drvr_28; // struct size = 0x170 +} AuSynDriver; typedef struct SoundSFXEntry { - /* 0x0 */ s16 soundID; + /* 0x0 */ u16 soundID; /* 0x2 */ s16 upperSoundID; /* 0x4 */ s16 volume; /* 0x6 */ s16 pitchShift; @@ -141,26 +398,43 @@ typedef struct SoundSFXEntry { /* 0x9 */ char unk_9[0x1]; } SoundSFXEntry; // size = 0xA +typedef struct AlUnkInstrumentData { + /* 0x00 */ s32* unk_00; + /* 0x04 */ s32* unk_04; +} AlUnkInstrumentData; // size = 0x8 + +typedef struct InstrumentEffectSub { + /* 0x00 */ u16 unkOffset1; + /* 0x02 */ u16 unkOffset2; +} InstrumentEffectSub; // size = 0x4; + +typedef struct InstrumentEffect { + /* 0x00 */ u8 count; + /* 0x01 */ char unk_01[3]; + /* 0x04 */ InstrumentEffectSub unk_04[1]; // variable size +} InstrumentEffect; + +// partially ALWaveTable? typedef struct Instrument { - /* 0x00 */ UNK_PTR wavOffset; - /* 0x04 */ s32 wavLength; - /* 0x08 */ s32 loopPredictorOffset; + /* 0x00 */ u8* base; + /* 0x04 */ u32 wavDataLength; + /* 0x08 */ UNK_PTR loopPredictor; /* 0x0C */ s32 loopStart; /* 0x10 */ s32 loopEnd; /* 0x14 */ s32 loopCount; - /* 0x18 */ UNK_PTR predictorOffset; - /* 0x1C */ s16 unk_1C; - /* 0x1E */ s16 unk_1E; - /* 0x20 */ f32 sampleRate; - /* 0x24 */ s8 skipLoopPredictor; - /* 0x25 */ s8 unk_25; + /* 0x18 */ u16* predictor; + /* 0x1C */ u16 dc_bookSize; + /* 0x1E */ u16 keyBase; + /* 0x20 */ f32 pitchRatio; + /* 0x24 */ u8 type; + /* 0x25 */ u8 unk_25; /* 0x26 */ s8 unk_26; /* 0x27 */ s8 unk_27; /* 0x28 */ s8 unk_28; /* 0x29 */ s8 unk_29; /* 0x2A */ s8 unk_2A; /* 0x2B */ s8 unk_2B; - /* 0x2C */ UNK_PTR unkOffset; + /* 0x2C */ InstrumentEffect* unkOffset; } Instrument; // size = 0x30; typedef Instrument* InstrumentGroup[16]; @@ -168,23 +442,33 @@ typedef Instrument* InstrumentGroup[16]; typedef struct SoundLerp { /* 0x0 */ s32 current; /* 0x4 */ s32 step; - /* 0x8 */ s16 goal; /* 0xA */ s16 time; + /* 0x8 */ s16 goal; } SoundLerp; // size = 0xC +typedef struct SoundPlayChange { + union { + u32 all; + struct { + u8 tune; + u8 volume; + u8 pan; + u8 reverb; + }; + }; +} SoundPlayChange; + typedef struct SoundPlayer { - /* 0x00 */ s8* sefDataReadPos; - /* 0x04 */ char unk_04[0x14]; - /* 0x18 */ s32 unk_18; + /* 0x00 */ AuFilePos sefDataReadPos; + /* 0x04 */ char pad4[0xC]; + /* 0x10 */ AlUnkInstrumentData unk_10; + /* 0x18 */ s32* unk_18; /* 0x1C */ Instrument* sfxInstrumentRef; /* 0x20 */ Instrument sfxInstrument; - /* 0x50 */ s8* sefReadStart; - /* 0x54 */ s8 changedTune; - /* 0x55 */ u8 changedVolume; - /* 0x56 */ u8 changedPan; - /* 0x57 */ u8 changedReverb; - /* 0x58 */ f32 actualSampleRate; - /* 0x5C */ u16 sfxVolume; + /* 0x50 */ AuFilePos sefReadStart; + /* 0x54 */ SoundPlayChange changed; + /* 0x58 */ f32 pitchRatio; + /* 0x5C */ s16 sfxVolume; /* 0x5E */ s16 unk_5E; /* 0x60 */ SoundLerp tuneLerp; /* 0x6C */ SoundLerp volumeLerp; @@ -196,130 +480,187 @@ typedef struct SoundPlayer { /* 0x7D */ u8 unk_7D; /* 0x7E */ u8 unk_7E; /* 0x7F */ u8 unk_7F; - /* 0x80 */ s32 unk_80; + /* 0x80 */ AuFilePos unk_80; /* 0x84 */ s8 unk_84; - /* 0x85 */ s8 soundC00; + /* 0x85 */ u8 soundC00; /* 0x86 */ char unk_86[0x2]; /* 0x88 */ s8* loopStartPos; - /* 0x8C */ s8 loopIterCount; + /* 0x8C */ u8 loopIterCount; /* 0x8D */ char unk_8D; - /* 0x8E */ u16 unk_8E; - /* 0x90 */ u16 unk_90; - /* 0x92 */ u16 unk_92; - /* 0x94 */ u8 unk_94; + /* 0x8E */ u16 delay; + /* 0x90 */ u16 playLength; + /* 0x92 */ s16 unk_92; + /* 0x94 */ s8 unk_94; /* 0x95 */ char unk_05; - /* 0x96 */ s16 currentSoundID; + /* 0x96 */ u16 currentSoundID; /* 0x98 */ u8 unk_98; /* 0x99 */ u8 unk_99; - /* 0x9A */ s8 sfxParamsFlags; + /* 0x9A */ u8 sfxParamsFlags; /* 0x9B */ u8 sfxPan; /* 0x9C */ u8 reverb; /* 0x9D */ u8 instrumentIndex; // ? /* 0x9E */ u8 unk_9E; - /* 0x9F */ u8 unk_9F; - /* 0xA0 */ char unk_A0[0x1]; - /* 0xA1 */ s8 unk_A1; - /* 0xA2 */ s8 unk_A2; + /* 0x9F */ u8 playVelocity; + /* 0xA0 */ u8 unk_A0; + /* 0xA1 */ u8 randomPitch; + /* 0xA2 */ u8 randomVelocity; /* 0xA3 */ s8 unk_A3; /* 0xA4 */ s16 masterPitchShift; /* 0xA6 */ s16 masterVolume; - /* 0xA8 */ s8 masterPan; - /* 0xA9 */ char unk_A9[0x3]; + /* 0xA8 */ u8 masterPan; + /* 0xA8 */ u8 unk_A9; + /* 0xA9 */ char unk_AA[0x2]; } SoundPlayer; // size = 0xAC -typedef struct SoundSefHeader { - /* 0x00 */ char unk_00[0x10]; - /* 0x10 */ s16 groupOffsets[8]; - /* 0x20 */ char unk_20[0x2]; -} SoundSefHeader; // size = 0x22 +typedef struct SoundManager90 { + union { + /* 0x0 */ s32 s32; + struct { + /* 0x0 */ u8 unk_0; + /* 0x1 */ u8 unk_1; + /* 0x2 */ u8 unk_2; + /* 0x3 */ u8 volume; + }; + }; +} SoundManager90; // size = 4 + +typedef struct SoundManagerA0 { + /* 0x0 */ u16 unk_00; + /* 0x2 */ u16 unk_02; + /* 0x4 */ u16 unk_04; +} SoundManagerA0; // size = 6 typedef struct SoundManager { - /* 0x000 */ struct UnkAl19E0* soundData; - /* 0x004 */ struct UnkAl48* unk_04; - /* 0x008 */ s32* sefData; + /* 0x000 */ struct AuGlobals* globals; + /* 0x004 */ struct AlUnkVoice* currentVoice; + /* 0x008 */ struct SEFHeader* sefData; /* 0x00C */ s32* normalSounds[8]; /* 0x02C */ s32* soundsWithBit2000; /* 0x030 */ s32 playCounter; //? - /* 0x034 */ s32 unkCounterStep; - /* 0x038 */ s32 unkCounterMax; - /* 0x03C */ s32 unkCounter; - /* 0x040 */ struct Fade unk_40; + /* 0x034 */ s32 nextUpdateStep; + /* 0x038 */ s32 nextUpdateInterval; + /* 0x03C */ s32 nextUpdateCounter; + /* 0x040 */ struct Fade fadeInfo; /* 0x05C */ s32 unk_5C; - /* 0x060 */ s32 unk_60; - /* 0x064 */ s32* unk_64[8]; - /* 0x084 */ s8 unk_84[8]; - /* 0x08C */ u8 unk_8C; - /* 0x08D */ s8 unk_8D; + /* 0x060 */ s32 randomValue; + /* 0x064 */ s32* customReverbParams[8]; + /* 0x084 */ s8 customReverbAmounts[8]; + /* 0x08C */ u8 lastCustomEffectIdx; + /* 0x08D */ s8 defaultReverbAmt; /* 0x08E */ char unk_8E[0x2]; - /* 0x090 */ s32 unk_90[4]; - /* 0x0A0 */ Vec3s unk_A0[4]; + /* 0x090 */ SoundManager90 unk_90[4]; + /* 0x0A0 */ SoundManagerA0 unk_A0[4]; /* 0x0B8 */ u16 unk_B8; /* 0x0BA */ s16 unk_BA; - /* 0x0BC */ u8 unk_BC; + /* 0x0BC */ u8 priority; /* 0x0BD */ u8 sfxPlayerSelector; - /* 0x0BE */ u8 unk_BE; + /* 0x0BE */ u8 defaultReverbType; /* 0x0BF */ u8 unk_BF; - /* 0x0C0 */ s8 unk_C0; + /* 0x0C0 */ u8 unk_C0; /* 0x0C1 */ char unk_C1[0x1]; - /* 0x0C2 */ SoundSFXEntry unk_C2[16]; + /* 0x0C2 */ SoundSFXEntry soundQueue[16]; /* 0x162 */ s8 unk_162; /* 0x163 */ u8 sfxQueuePosOffset; /* 0x164 */ u8 sfxQueueNextPos; /* 0x165 */ s8 unk_165; /* 0x166 */ char unk_166[0x2]; /* 0x168 */ s32 unk_168; - /* 0x16C */ SoundPlayer unk_16C[8]; -} SoundManager; + /* 0x16C */ SoundPlayer players[8]; +} SoundManager; // size = 0x6CC -typedef struct UnkAlC { - /* 0x0 */ s16 unk_00; - /* 0x2 */ s16 unk_02; - /* 0x4 */ s8 unk_04; - /* 0x5 */ s8 unk_05; - /* 0x6 */ s8 unk_06; - /* 0x7 */ s8 unk_07; - /* 0x8 */ s8 unk_08; - /* 0x9 */ s8 unk_09; - /* 0xA */ s8 unk_0A; -} UnkAlC; +typedef struct SoundInstance { + /* 0x00 */ s32 flags; + /* 0x04 */ s32 soundID; + /* 0x08 */ s32 sourceFlags; + /* 0x0C */ u8 volume; + /* 0x0D */ u8 pan; + /* 0x0E */ s16 pitchShift; + /* 0x10 */ Vec3f position; +} SoundInstance; // size = 0x1C -typedef struct UnkAl48 { // Track? - /* 0x00 */ s32 unk_00; // pointer to something - /* 0x04 */ f32 unk_04; +typedef struct AlternatingSoundSet { + /* 0x00 */ s32* sounds; + /* 0x04 */ s16 soundCount; + /* 0x06 */ s16 currentIndex; +} AlternatingSoundSet; // size = 0x08 + +typedef struct AlUnkVoice { + /* 0x00 */ Instrument* instrument; + /* 0x04 */ f32 pitchRatio; /* 0x08 */ s32 unk_08; - /* 0x0C */ s16 unk_0C; - /* 0x0E */ u8 unk_0E; - /* 0x0F */ u8 unk_0F; - /* 0x10 */ u8 unk_10; + /* 0x0C */ s16 volume; + /* 0x0E */ u8 pan; + /* 0x0F */ u8 reverbAmt; + /* 0x10 */ u8 reverbType; /* 0x11 */ char unk_11[0x3]; - /* 0x14 */ s32 unk_14; - /* 0x18 */ s32 unk_18; - /* 0x1C */ s32* unk_1C; + /* 0x14 */ AlUnkInstrumentData unk_14; + /* 0x1C */ u8* unk_1C; /* 0x20 */ s32 unk_20; /* 0x24 */ s32 unk_24; /* 0x28 */ s32 unk_28; /* 0x2C */ f32 unk_2C; /* 0x30 */ s32 unk_30; - /* 0x34 */ s32 unk_34; - /* 0x38 */ char unk_38[0x1]; + /* 0x34 */ u8* unk_34; + /* 0x38 */ u8 unk_38; /* 0x39 */ u8 unk_39; /* 0x3A */ u8 unk_3A; /* 0x3B */ u8 unk_3B; /* 0x3C */ u8 unk_3C; - /* 0x3D */ u8 unk_3D; + /* 0x3D */ u8 unk_flags_3D; /* 0x3E */ u8 unk_3E; /* 0x3F */ u8 unk_3F; - /* 0x40 */ s16 unk_40; + /* 0x40 */ s16 adjustedVolume; /* 0x42 */ u8 unk_42; - /* 0x43 */ u8 unk_43; - /* 0x44 */ s8 unk_44; - /* 0x45 */ u8 unk_45; + /* 0x43 */ u8 unk_flags_43; + /* 0x44 */ s8 priorityCopy; + /* 0x45 */ u8 priority; /* 0x46 */ char unk_46[2]; -} UnkAl48; // size = 0x48 +} AlUnkVoice; // size = 0x48 + +typedef struct BGMFileInfo { + /* 0x10 */ u8 numSegments; + /* 0x11 */ char pad_11[3]; + /* 0x14 */ u16 segments[4]; + /* 0x1C */ u16 drums; + /* 0x1E */ u16 drumCount; + /* 0x20 */ u16 instruments; + /* 0x22 */ u16 instrumentCount; +} BGMFileInfo; // size = 0x14 + +typedef struct BGMHeader { + /* 0x00 */ s32 signature; // 'BGM ' + /* 0x04 */ s32 size; // including header + /* 0x08 */ s32 name; + /* 0x0C */ char pad_C[4]; + /* 0x10 */ BGMFileInfo info; +} BGMHeader; // size = 0x24 + +typedef struct BGMDrumInfo { + /* 0x0 */ s16 bankPatch; + /* 0x2 */ s16 keyBase; + /* 0x4 */ u8 volume; + /* 0x5 */ s8 pan; + /* 0x6 */ s8 reverb; + /* 0x7 */ u8 randTune; + /* 0x8 */ u8 randVolume; + /* 0x9 */ u8 randPan; + /* 0xA */ u8 randReverb; + /* 0xB */ char pad_B[1]; +} BGMDrumInfo; // size = 0xC + +typedef struct BGMInstrumentInfo { + /* 0x00 */ u16 bankPatch; // upper = bank, lower = patch + /* 0x02 */ u8 volume; + /* 0x03 */ s8 pan; + /* 0x04 */ s8 reverb; + /* 0x05 */ s8 coarseTune; + /* 0x06 */ s8 fineTune; + /* 0x07 */ char pad_7[1]; +} BGMInstrumentInfo; // size = 0x8 typedef struct SBNHeader { /* 0x00 */ s32 signature; // 'SBN ' - /* 0x04 */ s32 totalSize; + /* 0x04 */ s32 size; /* 0x08 */ s32 unk_08; /* 0x0C */ s32 unk_0C; /* 0x10 */ s32 tableOffset; // = 0x40 @@ -336,9 +677,21 @@ typedef struct SBNHeader { /* 0x3C */ s32 unk_3C; } SBNHeader; // size = 0x40 +typedef struct SEFHeader { + /* 0x00 */ s32 signature; // 'SEF ' + /* 0x04 */ s32 size; + /* 0x08 */ s32 unk8; + /* 0x0C */ s8 unkC; // 0 + /* 0x0D */ s8 unkD; // 0 + /* 0x0E */ u8 hasExtraSection; // 1 + /* 0x0F */ s8 unkF; // 0 + /* 0x10 */ u16 sections[8]; + /* 0x14 */ u16 section2000; +} SEFHeader; // size = 0x16 + typedef struct INITHeader { /* 0x00 */ s32 signature; // 'INIT' - /* 0x04 */ s32 unk_04; + /* 0x04 */ s32 size; /* 0x08 */ u16 entriesOffset; /* 0x0A */ u16 entriesSize; /* 0x0C */ u16 tblOffset; @@ -350,35 +703,43 @@ typedef struct INITHeader { typedef struct PERHeader { /* 0x00 */ s32 signature; // 'PER ' or 'PRG ' - /* 0x04 */ s32 totalSize; // including this header + /* 0x04 */ s32 size; // including this header /* 0x08 */ char unk_08[8]; } PERHeader; // size = 0x10 typedef struct PEREntry { - /* 0x00 */ char unk_00[0x90]; + /* 0x00 */ BGMDrumInfo drums[12]; } PEREntry; // size = 0x90; typedef struct SBNFileEntry { /* 0x0 */ s32 offset; + union { /* 0x4 */ u32 data; + //TODO try replacing the data field with these + struct { + /* 0x4 */ s8 fmt; + /* 0x5 */ UNK_TYPE_08 unk__05; + /* 0x6 */ s16 size; + }; + }; } SBNFileEntry; // size = 0x8 typedef struct BKHeader { - /* 0x00 */ u16 unk_00; + /* 0x00 */ u16 signature; // 'BK' /* 0x02 */ char unk_02[2]; - /* 0x04 */ s32 unk_04; - /* 0x08 */ char unk_08[4]; - /* 0x0C */ u16 unk_0C; + /* 0x04 */ s32 size; + /* 0x08 */ s32 name; + /* 0x0C */ u16 format; // 'CR', 'DR', 'SR' /* 0x0E */ char unk_0E[2]; /* 0x10 */ char unk_10[2]; - /* 0x12 */ u16 unk_12[0x10]; - /* 0x32 */ u16 unk_32; - /* 0x34 */ u16 unk_34; - /* 0x36 */ u16 unk_36; - /* 0x38 */ u16 unk_38; - /* 0x3A */ u16 unk_3A; - /* 0x3C */ u16 unk_3C; - /* 0x3E */ u16 unk_3E; + /* 0x12 */ u16 instruments[16]; + /* 0x32 */ u16 instrumetsSize; + /* 0x34 */ u16 unkStartA; + /* 0x36 */ u16 unkSizeA; + /* 0x38 */ u16 predictorsStart; + /* 0x3A */ u16 predictorsSize; + /* 0x3C */ u16 unkStartB; + /* 0x3E */ u16 unkSizeB; } BKHeader; // size = 0x40 typedef struct InitSongEntry { @@ -386,33 +747,30 @@ typedef struct InitSongEntry { /* 0x2 */ u16 bkFileIndex[3]; // optional BK files for this track } InitSongEntry; // size = 0x8 -typedef struct UnkAl19E0Sub { - /* 0x0 */ u16 unk_0; -} UnkAl19E0Sub; - -typedef struct UnkAl19E0Sub2 { - /* 0x0 */ u8 unk_00; - /* 0x1 */ u8 unk_01; - /* 0x2 */ char unk_02[2]; -} UnkAl19E0Sub2; - -typedef struct UnkAl19E0Sub3 { - /* 0x00 */ struct BGMPlayer* unk_0; - /* 0x04 */ s8 unk_4; - /* 0x05 */ s8 unk_5; -} UnkAl19E0Sub3; - typedef struct SoundBank { /* 0x000 */ char unk_00[0xE]; /* 0x00E */ u8 swizzled; /* 0x010 */ char unk_0F[0x831]; } SoundBank; // size = 0x840 -typedef struct UnkAl19E0 { - /* 0x0000 */ f32 actualFrequency; +typedef struct AuEffectChange { + /* 0x0 */ u8 type; + /* 0x1 */ u8 changed; + /* 0x2 */ char unk_02[2]; +} AuEffectChange; + +typedef struct SndGlobalsSub6C { + /* 0x00 */ struct BGMPlayer* bgmPlayer; + /* 0x04 */ u8 unk_4; + /* 0x05 */ u8 unk_5; +} SndGlobalsSub6C; + +// found at 801D57A0 +typedef struct AuGlobals { + /* 0x0000 */ f32 outputRate; /* 0x0004 */ Instrument* defaultInstrument; - /* 0x0008 */ UnkAlC unk_08; - /* 0x0014 */ InstrumentCFG defaultPRGEntry; + /* 0x0008 */ BGMDrumInfo defaultDrumEntry; + /* 0x0014 */ BGMInstrumentInfo defaultPRGEntry; /* 0x001C */ s32 baseRomOffset; /* 0x0020 */ SBNFileEntry* sbnFileList; /* 0x0024 */ s32 fileListLength; @@ -421,28 +779,30 @@ typedef struct UnkAl19E0 { /* 0x0030 */ s32 songListLength; /* 0x0034 */ s32 bkFileListOffset; /* 0x0038 */ s32 bkListLength; - /* 0x003C */ UnkAl19E0Sub* mseqFileList; - /* 0x0040 */ UnkAl19E0Sub2 unk_40[4]; + /* 0x003C */ u16* mseqFileList; + /* 0x0040 */ AuEffectChange effectChanges[4]; /* 0x0050 */ u8 unk_50; /* 0x0051 */ u8 unk_51; /* 0x0052 */ u8 unk_52; /* 0x0053 */ u8 unk_53; /* 0x0054 */ PEREntry* dataPER; - /* 0x0058 */ InstrumentCFG* dataPRG; - /* 0x005C */ s32* currentTrackData[4]; - /* 0x006C */ UnkAl19E0Sub3 unk_6C[1]; - /* 0x0074 */ char unk_74[0x8]; + /* 0x0058 */ BGMInstrumentInfo* dataPRG; + /* 0x005C */ struct BGMHeader* dataBGM[2]; + /* 0x0064 */ struct MSEQHeader* dataMSEQ[2]; + /* 0x006C */ SndGlobalsSub6C unk_globals_6C[1]; + /* 0x0074 */ struct BGMPlayer* unk_74; + /* 0x0078 */ struct BGMPlayer* unk_78; /* 0x007C */ s32 unkSongName; /* 0x0080 */ s32 unk_80; /* 0x0084 */ s32 unkFadeTime; /* 0x0088 */ s32 unkFadeStart; /* 0x008C */ s32 unkFadeEnd; - /* 0x0090 */ s32 unk_90; - /* 0x0094 */ s32* unk_94; - /* 0x0098 */ u32 unk_98; - /* 0x009C */ s32 unk_9C; - /* 0x00A0 */ s32* dataSEF; - /* 0x00A4 */ UnkFuncAl unk_A4[2]; + /* 0x0090 */ MusicEventTrigger* musicEventQueuePos; + /* 0x0094 */ MusicEventTrigger* musicEventQueue; + /* 0x0098 */ u32 musicEventQueueCount; + /* 0x009C */ s32 flushMusicEventQueue; + /* 0x00A0 */ SEFHeader* dataSEF; + /* 0x00A4 */ AuCallback audioThreadCallbacks[2]; // 0 = on begin update, 1 = unimplemented /* 0x00AC */ InstrumentGroup instrumentGroupX[1]; /* 0x00EC */ InstrumentGroup instrumentGroup3[16]; /* 0x04EC */ InstrumentGroup instrumentGroup1[4]; @@ -455,367 +815,318 @@ typedef struct UnkAl19E0 { /* 0x130D */ char unk_130D[3]; /* 0x1310 */ SoundBank* banks[3]; /* 0x131C */ char unk_131C[4]; - /* 0x1320 */ UnkAl48 unk_1320[24]; -} UnkAl19E0; // size = 0x19E0 + /* 0x1320 */ AlUnkVoice voices[24]; +} AuGlobals; // size = 0x19E0 typedef struct BGMPlayerTrack { - /* 0x00 */ u32 bgmReadPos; - /* 0x04 */ u32 unk_04; - /* 0x08 */ char unk_08[0x4]; - /* 0x0C */ Instrument* unk_0C; - /* 0x10 */ s32* unk_10[2]; + /* 0x00 */ AuFilePos bgmReadPos; + /* 0x04 */ AuFilePos savedPos; + /* 0x08 */ AuFilePos prevReadPos; + /* 0x0C */ Instrument* instrument; + /* 0x10 */ AlUnkInstrumentData unk_10; /* 0x18 */ s32 subTrackVolume; - /* 0x1C */ s32 subTrackVolumeFadeDelta; - /* 0x20 */ s32 subTrackVolumeFadeVolume; - /* 0x24 */ s32 subTrackVolumeFadeTime; - /* 0x28 */ s32 unk_28; - /* 0x2C */ char unk_2C[0xC]; - /* 0x38 */ u16 segTrackTune; + /* 0x1C */ s32 subTrackVolumeStep; + /* 0x20 */ s32 subTrackVolumeTarget; + /* 0x24 */ s32 subTrackVolumeTime; + /* 0x28 */ s32 delayTime; + //TODO Fade struct? + /* 0x2C */ s32 unkVolume; + /* 0x30 */ s32 unkVolumeStep; + /* 0x34 */ s16 unkVolumeTarget; + /* 0x36 */ s16 unkVolumeTime; + /* 0x38 */ s16 segTrackTune; /* 0x3A */ s16 trackTremoloAmount; /* 0x3C */ char unk_3C[0x2]; - /* 0x3E */ s16 unk_3E; - /* 0x40 */ s8 tuneChanged; - /* 0x41 */ s8 volumeChanged; - /* 0x42 */ s8 panChanged; - /* 0x43 */ s8 reverbChanged; - /* 0x44 */ u16 unk_44; + /* 0x3E */ s16 detourLength; + /* 0x40 */ SoundPlayChange changed; + /* 0x44 */ u16 patch; /* 0x46 */ u16 subTrackCoarseTune; - /* 0x48 */ u8 subTrackFineTune; - /* 0x49 */ u8 segTrackVolume; + /* 0x48 */ s8 subTrackFineTune; + /* 0x49 */ s8 segTrackVolume; /* 0x4A */ u8 subTrackPan; /* 0x4B */ u8 subTrackReverb; /* 0x4C */ u8 unk_4C; - /* 0x4D */ char unk_4D[0x8]; - /* 0x55 */ s8 trackTremoloSpeed; - /* 0x56 */ s8 trackTremoloTime; - /* 0x57 */ s8 unk_57; - /* 0x58 */ u8 unk_58; - /* 0x59 */ char unk_59[0x2]; + /* 0x4D */ u8 unk_4D; + /* 0x4E */ u8 unk_4E; + /* 0x4F */ u8 unk_4F; + /* 0x50 */ u8 unk_50; + /* 0x51 */ u8 unk_51; + /* 0x52 */ u8 unk_52; // voice idx start + /* 0x53 */ u8 unk_53; // voice idx end + /* 0x54 */ u8 polyphonicIdx; + /* 0x55 */ u8 trackTremoloSpeed; + /* 0x56 */ u8 trackTremoloTime; + /* 0x57 */ u8 unk_57; + /* 0x58 */ u8 isDrumTrack; + /* 0x59 */ u8 parentTrackIdx; + /* 0x5A */ u8 unk_5A; /* 0x5B */ s8 subtrackReverbType; - /* 0x5C */ u8 unk_5C; + /* 0x5C */ u8 index; /* 0x5D */ char unk_5D[0x3]; } BGMPlayerTrack; // size = 0x60; -typedef struct UnkAl24 { - /* 0x00 */ char unk_00[0x8]; - /* 0x08 */ u16 unk_08; - /* 0x0A */ u16 unk_0A; - /* 0x0C */ s32 unk_0C; - /* 0x10 */ char unk_10[0x4]; - /* 0x14 */ u16 unk_14; - /* 0x16 */ u8 unk_16; - /* 0x17 */ u8 unk_17; -} UnkAl24; // size = 0x18; +typedef struct SeqNote { + /* 0x00 */ Instrument* ins; + /* 0x00 */ f32 pitchRatio; + /* 0x08 */ s16 volume; + /* 0x0A */ s16 adjustedPitch; + /* 0x0C */ s32 noteLength; + /* 0x10 */ u16 tremoloAmount; + /* 0x12 */ u8 tremoloTime; + /* 0x12 */ u8 unk_13; + /* 0x14 */ s16 unk_14; + /* 0x16 */ u8 noteVelocity; + /* 0x17 */ u8 unk_note_17; +} SeqNote; // size = 0x18; typedef struct BGMPlayer { - /* 0x000 */ UnkAl19E0* data; + /* 0x000 */ AuGlobals* globals; /* 0x004 */ SoundManager* soundManager; - /* 0x008 */ s32 unkFrequency; //? - /* 0x00C */ s32 unk_0C; - /* 0x010 */ s32 unk_10; - /* 0x014 */ s32 unk_14; - /* 0x018 */ s32 unk_18; + /* 0x008 */ s32 nextUpdateStep; + /* 0x00C */ s32 nextUpdateInterval; + /* 0x010 */ s32 nextUpdateCounter; + /* 0x014 */ s32 updateCounter; + /* 0x018 */ s32 songPlayingCounter; /* 0x01C */ s32 songName; /* 0x020 */ s32 fadeSongName; /* 0x024 */ s32 bgmFileIndex; /* 0x028 */ s32 songID; /* 0x02C */ Fade fadeInfo; /* 0x048 */ s32 unk_48; - /* 0x04C */ u8 unk_4C[0x4]; // not sure how long this is - /* 0x04D */ char unk_50[0x8]; - /* 0x058 */ s16 unk_58; + /* 0x04C */ u8 effectIndices[4]; + /* 0x050 */ s32 randomValue1; + /* 0x054 */ s32 randomValue2; + /* 0x058 */ u16 unk_58; /* 0x05A */ s16 unk_5A; /* 0x05C */ s16 unk_5C; - /* 0x05E */ char unk_5E[0x6]; - /* 0x064 */ struct UnkAlTrack* unk_64; - /* 0x068 */ s32 unk_68; - /* 0x06C */ s32 unk_6C; - /* 0x070 */ s32 unk_70; - /* 0x074 */ char unk_74[0x3C]; - /* 0x0B0 */ s32 unk_B0; - /* 0x0B4 */ s32 unk_B4; - /* 0x0B8 */ s32 unk_B8; - /* 0x0BC */ s32 unk_BC; - /* 0x0C0 */ s32 unk_C0; - /* 0x0C4 */ s32 unk_C4; - /* 0x0C8 */ s32 unk_C8; - /* 0x0CC */ s32 unk_CC; + /* 0x05E */ char pad5E[2]; + /* 0x060 */ u32 curSegmentID; + /* 0x064 */ struct BGMHeader* bgmFile; + /* 0x068 */ SegData* segmentReadPos; + /* 0x06C */ SegData* segmentStartPos; + /* 0x070 */ SegData* subSegmentStartPos; + /* 0x074 */ s32 unk_74; + /* 0x078 */ BGMDrumInfo* drumsInfo; + /* 0x07C */ BGMInstrumentInfo* instrumentsInfo; + /* 0x080 */ BGMDrumInfo* drums[12]; + /* 0x0B0 */ s32 masterTempo; + /* 0x0B4 */ s32 masterTempoStep; + /* 0x0B8 */ s32 masterTempoTarget; + /* 0x0BC */ s32 masterTempoTime; + /* 0x0C0 */ s32 masterVolume; + /* 0x0C4 */ s32 masterVolumeStep; + /* 0x0C8 */ s32 masterVolumeTarget; + /* 0x0CC */ s32 masterVolumeTime; /* 0x0D0 */ f32 unk_D0; - /* 0x0D4 */ X16 unk_D4; - /* 0x0D6 */ X16 unk_D6; - /* 0x0D8 */ char unk_D8[0x90]; - /* 0x168 */ s32 unk_168; - /* 0x16C */ char unk_16C[0x98]; - /* 0x204 */ s32* unk_204; - /* 0x208 */ u16 unk_208; - /* 0x20A */ u16 unk_20A; - /* 0x20C */ s16 unk_20C; + /* 0x0D4 */ SeqArgs seqCmdArgs; + /* 0x0D8 */ SegData* segLoopStartLabels[32]; + /* 0x158 */ SegData* segActiveLoopEndPos[4]; + /* 0x168 */ u8 segLoopCounters[4]; + /* 0x16C */ s32 proxMixValue; + /* 0x170 */ u8 proxMixID; + /* 0x171 */ u8 proxMixVolume; + /* 0x172 */ char unk_172[0x2]; + /* 0x174 */ s16 unk_174[8][9]; + /* 0x204 */ u8* trackVolsConfig; + /* 0x208 */ u16 masterTempoBPM; + /* 0x20A */ u16 maxTempo; + /* 0x20C */ u16 masterPitchShift; /* 0x20E */ s16 unk_20E; - /* 0x210 */ char unk_210[0xA]; - /* 0x21A */ u8 unk_21A; - /* 0x21B */ char unk_21B[0x5]; + /* 0x210 */ u8 segLoopDepth; + /* 0x211 */ u8 unk_211; + /* 0x212 */ u8 unk_212[8]; + /* 0x21A */ s8 volumeChanged; + /* 0x21B */ u8 unk_21B; + /* 0x21C */ u8 bgmDrumCount; + /* 0x21D */ u8 bgmInstrumentCount; + /* 0x21E */ u8 unk_21E; + /* 0x21F */ char unk_21F[0x1]; /* 0x220 */ u8 unk_220; - /* 0x221 */ u8 unk_221; + /* 0x221 */ u8 masterState; /* 0x222 */ u8 unk_222; /* 0x223 */ u8 unk_223; - /* 0x224 */ u8 unk_224[3]; - /* 0x227 */ char unk_227[0x3]; - /* 0x22A */ u8 unk_22A; - /* 0x22B */ u8 unk_22B; - /* 0x22C */ u8 unk_22C; - /* 0x22D */ u8 unk_22D; - /* 0x22E */ u8 unk_22E; - /* 0x22F */ u8 unk_22F; - /* 0x230 */ u8 unk_230; - /* 0x231 */ u8 unk_231; - /* 0x232 */ u8 unk_232; - /* 0x233 */ char unk_233[0x1]; - /* 0x234 */ u8 unk_234; - /* 0x235 */ u8 unk_235; + /* 0x224 */ u8 effectValues[4]; + /* 0x227 */ char unk_228[0x2]; + /* 0x22A */ u8 unk_22A[8]; + /* 0x232 */ u8 bFadeConfigSetsVolume; + /* 0x233 */ u8 unk_233; + /* 0x234 */ u8 priority; + /* 0x235 */ u8 defaultReverbType; /* 0x236 */ char unk_236[0x2]; /* 0x238 */ s32 unk_238[8]; /* 0x258 */ u8 unk_258; - /* 0x259 */ s8 unk_259; + /* 0x259 */ u8 unk_259; /* 0x25A */ u8 unk_25A; /* 0x25B */ u8 unk_25B; - /* 0x25C */ BGMPlayerTrack unk_25C[16]; - /* 0x85C */ UnkAl24 unk_85C[24]; + /* 0x25C */ BGMPlayerTrack tracks[16]; + /* 0x85C */ SeqNote notes[24]; } BGMPlayer; // size = 0xA9C -typedef union Q32 { - u8 u8[4]; - u16 u16[2]; - s32 s32; -} Q32; +typedef struct AlUnkMSEQData { + /* 0x0 */ u8 unk_00; + /* 0x1 */ u8 unk_01; + /* 0x2 */ s16 unk_02; + /* 0x4 */ s16 unk_04; + /* 0x6 */ u16 unk_06; +} AlUnkMSEQData; // size = 0x8 -typedef struct UnkAl8 { +typedef struct MSEQHeader { + /* 0x00 */ s32 signature; // 'MSEQ ' + /* 0x04 */ s32 size; // including header + /* 0x08 */ s32 name; + /* 0x0C */ u8 first_iota; + /* 0x0D */ u8 unkCount; + /* 0x0E */ u16 unkOffset; + /* 0x10 */ u16 dataStart; +} MSEQHeader; // size variable + +typedef struct AlUnkXi { + /* 0x00 */ Instrument* instrument; + /* 0x04 */ AlUnkInstrumentData unk_04; + /* 0x0C */ s16 pitch; + /* 0x0E */ s16 unk_0E; + /* 0x10 */ s32 unk_10; + /* 0x14 */ s16 unk_14; + /* 0x16 */ s16 unk_16; + /* 0x18 */ Vol32 unk_18; + /* 0x1C */ s32 unk_1C; + /* 0x20 */ s16 unk_20; + /* 0x22 */ s16 unk_22; + /* 0x24 */ s8 pan; + /* 0x25 */ s8 reverb; + /* 0x26 */ u8 flags; + /* 0x27 */ char unk_26[1]; +} AlUnkXi; // size = 0x28 + +typedef struct AlUnkOmega { + /* 0x0 */ u8 unk_00; + /* 0x1 */ u8 unk_01; + /* 0x2 */ s8 unk_02; + /* 0x4 */ s8 unk__03; +} AlUnkOmega; // size = 0x4 + +typedef struct AlUnkIota { /* 0x00 */ Q32 unk_00; - /* 0x04 */ char unk_04[0x4]; -} UnkAl8; // size = 0x8 + /* 0x04 */ s16 pitch; + /* 0x06 */ s8 volume; + /* 0x07 */ u8 unk_07; +} AlUnkIota; // size = 0x8 -typedef struct UnkAl1E4 { - /* 0x00 */ char unk_00[0x8]; - /* 0x08 */ s32 unk_08; - /* 0x0C */ char unk_0C[0x14]; - /* 0x20 */ s32 unk_20; - /* 0x24 */ u8 unk_24; - /* 0x25 */ u8 unk_25; - /* 0x26 */ char unk_26[0x2]; - /* 0x28 */ u16 unk_28; - /* 0x29 */ char unk_2A[0x1BA]; -} UnkAl1E4; // size = 0x1E4 +//TODO AuStreamPlayer? +typedef struct AuAmbPlayer { + /* 0x000 */ MSEQHeader* mseqFile; + /* 0x004 */ AuFilePos mseqReadStart; + /* 0x008 */ AuFilePos mseqReadPos; + /* 0x00C */ AuFilePos unk_0C; + /* 0x010 */ AuFilePos unk_10; + /* 0x014 */ Q32 unk_14; + /* 0x018 */ s32 unk_18; + /* 0x01C */ s32 unk_1C; + /* 0x020 */ s32 mseqName; + /* 0x024 */ u8 unk_24; + /* 0x025 */ u8 playState; + /* 0x026 */ u8 unk_26; + /* 0x027 */ u8 unk_27; + /* 0x028 */ u16 time; + /* 0x02A */ u8 unk_2A; + /* 0x02B */ u8 volume; + /* 0x02C */ char unk_2C[4]; + /* 0x030 */ s32 firstVoiceIdx; + /* 0x034 */ u32 lastVoiceIdx; + /* 0x038 */ s32 unk_38; + /* 0x03C */ s32 volInterpStep; + /* 0x040 */ u16 volInterpTime; + /* 0x042 */ u8 unk_42; + /* 0x043 */ u8 unk_43; + /* 0x044 */ AlUnkXi unk_44[10]; + /* 0x1D4 */ AlUnkOmega unk_1D4[4]; +} AuAmbPlayer; // size = 0x1E4 -typedef struct UnkAl834 { - /* 0x000 */ UnkAl19E0* unk_00; - /* 0x004 */ s32 unk_04; - /* 0x008 */ s32 unk_08; - /* 0x00C */ s32 unk_0C; - /* 0x010 */ s32* unk_10[4]; +//TODO AuStreamingManager ? +// 801D57A0 +typedef struct AuAmbienceManager { + /* 0x000 */ AuGlobals* globals; + /* 0x004 */ s32 nextUpdateStep; + /* 0x008 */ s32 nextUpdateInterval; + /* 0x00C */ s32 nextUpdateCounter; + /* 0x010 */ MSEQHeader* mseqFiles[4]; /* 0x020 */ u8 unk_20; /* 0x021 */ u8 unk_21; - /* 0x022 */ u8 unk_22; - /* 0x023 */ char unk_23[0x1]; - /* 0x024 */ UnkAl1E4 unk_24[4]; - /* 0x7B4 */ UnkAl8 unk_7B4[16]; -} UnkAl834; + /* 0x022 */ u8 priority; + /* 0x023 */ u8 defaultReverbType; + /* 0x024 */ AuAmbPlayer mseqPlayers[4]; + /* 0x7B4 */ AlUnkIota mseqVoiceStates[16]; +} AuAmbienceManager; + +typedef struct AlUnkGemini { + /* 0x00 */ u16 sound1; + /* 0x02 */ u16 sound2; + /* 0x04 */ u8 flags; +} AlUnkGemini; // size = 0x5 typedef struct ALConfig { - /* 0x00 */ s32 unk_00; - /* 0x04 */ s32 unk_04; - /* 0x08 */ s32 frequency; + /* 0x00 */ s32 num_pvoice; + /* 0x04 */ s32 unk_num_gamma; + /* 0x08 */ s32 outputRate; /* 0x0C */ u8 unk_0C; + /* 0x0D */ char unk_0D[3]; /* 0x10 */ void* dmaNew; /* 0x14 */ ALHeap* heap; } ALConfig; // size = 0x18; -typedef struct UnkAl4PlusSub { - /* 0x00 */ u16 unkOffset1; - /* 0x02 */ u16 unkOffset2; -} UnkAl4PlusSub; // size = 0x4; - -typedef struct UnkAl4Plus { - /* 0x00 */ u8 count; - /* 0x01 */ char unk_01[3]; - /* 0x04 */ struct UnkAl4PlusSub unk_04[1]; // variable size -} UnkAl4Plus; - -typedef struct UnkAlTrack { - /* 0x00 */ s32 unk_00; - /* 0x04 */ s32 unk_04; - /* 0x08 */ s32 unk_08; -} UnkAlTrack; - -extern u8 D_80078181; -extern s32 D_80078190; -extern s32 D_800781D0; -extern s32 D_80078290; -extern s32 D_800782F8; -extern s32 D_80078348; -extern s32 D_80078320; -extern s32 D_80078544; -extern s32 D_800785A0; -extern s32 D_80078DB0; +extern volatile u8 AuSynUseStereo; +extern u16 DummyInstrumentPredictor[32]; +extern u8 DummyInstrumentBase[190]; +extern s32 CUSTOM_SMALL_ROOM_PARAMS[]; +extern s32 CUSTOM_ECHO_PARAMS_1[]; +extern s32 CUSTOM_ECHO_PARAMS_3[]; +extern s32 CUSTOM_ECHO_PARAMS_2[]; +extern s32 D_80078544[]; +extern u8 AmbientSoundIDtoMSEQFileIndex[]; +extern s32 D_800785A0[]; +extern s32 PreventBGMPlayerUpdate; extern u16 D_80078DB6; -extern UnkAl0* D_80078E50; -extern UnkAl0* D_80078E54; -extern s8 D_80078E58; -extern s16 D_80078E5A; -extern s8 D_80078E5C; -extern s32* D_8007F1F8[1]; // points to 80078290 +extern AuSynDriver* gActiveSynDriverPtr; +extern AuSynDriver* gSynDriverPtr; +extern u8 D_80078E58; +extern u16 D_80078E5A; +extern u8 D_80078E5C; -extern UnkAl19E0* D_8009A5C0; -extern BGMPlayer* D_8009A5CC; -extern BGMPlayer* D_8009A5FC; -extern UnkFuncAl D_8009A5E8; -extern UnkAl834* D_8009A628; -extern SoundManager* D_8009A640; -extern BGMPlayer* D_8009A664; +extern AuGlobals* gSoundGlobals; +extern BGMPlayer* gBGMPlayerC; +extern BGMPlayer* gBGMPlayerB; +extern AuCallback BeginSoundUpdateCallback; +extern AuAmbienceManager* gAuAmbienceManager; +extern SoundManager* gSoundManager; +extern BGMPlayer* gBGMPlayerA; extern u16 D_800A0F50; extern s16* D_800A3FE0; extern s16* D_800A3FE4; extern s32 D_800A3FE8; -extern s8 D_800A3FEC; +extern u8 D_800A3FEC; extern s16 D_800A3FEE; extern s32 D_800A3FF0; -void snd_load_BK_headers(UnkAl19E0* arg0, ALHeap*); +#include "audio/private.h" -void func_8004B440(SoundManager*, u8, u8, UnkAl19E0*, u8); -void snd_load_sfx_groups_from_SEF(SoundManager*); -void snd_clear_sfx_queue(SoundManager*); -void snd_enqueue_sfx_event(SoundManager*, s32, s16, s16, u8); -void func_8004B748(SoundManager*); -s32 func_8004B9E4(SoundManager*, s32); -void func_8004BA54(SoundManager*, s32); -s16 func_8004C444(SoundManager*); +#define aLoadBufferSize(pkt,s,u,b) { \ + Acmd *_a = (Acmd *)pkt; \ + _a->words.w0 = _SHIFTL(A_LOADBUFF, 24, 8) | _SHIFTL(s, 12, 12) | _SHIFTL(u, 0, 12); \ + _a->words.w1 = (unsigned int)(b); \ +} -void func_8004D510(BGMPlayer*); -BGMPlayer* snd_get_player_with_song_name(s32); -s32 func_8004DA0C(UNK_TYPE); -void func_8004DAA8(BGMPlayer*); -s32 func_8004DB28(BGMPlayer*); -void func_8004DC80(s32); -void func_8004DFD4(UnkAl19E0*); -void func_8004E158(BGMPlayer*, s32, s32, UnkAl19E0*); -void func_8004E344(BGMPlayer*, u8*); -void snd_update_bgm_fade(BGMPlayer*); -void func_8004E444(BGMPlayer*); -s16 func_8004E4B8(BGMPlayer*); -void func_8004E880(BGMPlayer*, s32, s32); -void snd_BGMCmd_E0_MasterTempo(BGMPlayer*, BGMPlayerTrack*); -s32 snd_bpm_to_tempo(BGMPlayer*, u32); -void snd_BGMCmd_E1_MasterVolume(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E2_MasterTranspose(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E3(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E6_MasterEffect(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E4_MasterTempoFade(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E5_MasterVolumeFade(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E8_TrackOverridePatch(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_E9_SubTrackVolume(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F6_TrackVolumeFade(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_EA_SubTrackPan(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_EB_SubTrackReverb(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_EC_SegTrackVolume(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_ED_SubTrackCoarseTune(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_EE_SubTrackFineTune(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_EF_SegTrackTune(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F0_TrackTremolo(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F1_TrackTremoloSpeed(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F2_TrackTremoloTime(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F3_TrackTremoloStop(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F4(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F5_TrackVoice(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_F7_SubTrackReverbType(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_FD(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_FE(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_FC_Jump(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_FF(BGMPlayer*, BGMPlayerTrack*); -void snd_BGMCmd_NOP(BGMPlayer*, BGMPlayerTrack*); -void func_80050770(BGMPlayer*, f32); -void func_80050818(BGMPlayer*, s32); -void func_8005087C(BGMPlayer*, s32*, s32); -s32 func_80056068(s32, u8); -s32 func_800506C8(s32, s32); -void func_80050B90(UnkAl834*, s32, s32, UnkAl19E0*); -s32 func_80050C30(u32); -void func_80050D50(UnkAl1E4*); -void func_800511BC(UnkAl834*); -void func_80051334(UnkAl834*, UnkAl1E4*); -void func_80051434(UnkAl834*, UnkAl1E4*); -void func_800521E8(UnkAl834*, UnkAl1E4*); -void func_800522A8(UnkAl834*, UnkAl1E4*); -void func_8005232C(UnkAl834*, UnkAl1E4*); +#define aSaveBufferSize(pkt,s,u,b) { \ + Acmd *_a = (Acmd *)pkt; \ + _a->words.w0 = _SHIFTL(A_SAVEBUFF, 24, 8) | _SHIFTL(s, 12, 12) | _SHIFTL(u, 0, 12); \ + _a->words.w1 = (unsigned int)(b); \ +} -void func_800525A0(UnkAl19E0*); -void func_80052614(UnkAl19E0*); -void func_80052660(UnkAl19E0*); -void func_80052B44(UnkAl48*); -void func_80052BF8(UnkAl48*, s32*); - -void snd_reset_instrument(Instrument*); -void func_80053370(UnkAlC*); -void func_800533A8(InstrumentCFG*); -void func_80053654(UnkAl19E0*); -void snd_initialize_bgm_fade(Fade*, s32, s32, s16); -void snd_clear_bgm_fade(Fade*); -void func_80053A28(Fade*); -void func_80053A98(u8, u16, s32); -void func_80053AEC(Fade*, s16); -void func_80053BA8(Fade*); -Instrument* func_80053BE8(UnkAl19E0*, u32, u32, s32**); -s32 snd_load_BK(s32, s32); -void func_80054CE0(s32, s32); - -void func_80055050(ALHeap*); -void func_80055110(BGMPlayer*); -s32 func_80055FF0(s32, s32); -s32 func_8005600C(s32, s32); -s32 func_80056028(s32, u8); -s32 func_80056044(s32, u8); -void func_8005608C(s32*, s32*); -void func_800560A8(void); -void func_8005610C(void); -void func_80056144(UnkFuncAl, s32); -void audio_set_stereo(void); -void audio_set_mono(void); -void func_800561A4(s32); -void func_800561C4(s32); -void func_800561E4(s32); -void func_80056204(void); -void func_80056228(void); - -void func_80056D44(s16); -s16 func_80056D50(void); -void func_80056D78(u8, u16); -void func_80056DCC(u8, u8); -void func_80056EC0(u8, s8); -void func_80056EE8(u8); -void func_80056FA4(u8, u8, s32, f32, s16, u8, u8, s32); -void func_80057224(u8, Instrument*); -void func_80057344(u8, f32); -void func_8005736C(u8, s16, s32, u8, u8); -void func_80057548(u8, u8, u8); -void func_800576EC(u8, s32, s32); -void func_80057DC8(s32); -void func_80057E08(u8); -void func_80057E5C(u8); -void func_80057EB0(void); -void func_80057ED0(s16); - -SoundBank* snd_load_BK_to_bank(s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 bankGroup); -void snd_load_INIT(UnkAl19E0*, s32, ALHeap*); -s32 snd_fetch_SBN_file(u32, s32, SBNFileEntry*); -void snd_load_PER(UnkAl19E0*, s32); -void snd_load_PRG(UnkAl19E0*, s32); -void snd_read_rom(s32, void*, u32); -void snd_copy_words(void*, void*, s32); - -void func_80058E84(s32*, u8, ALHeap*); -void func_8005904C(s32*, u8); -#undef alHeapAlloc -void* alHeapAlloc(ALHeap *heap, s32 arg1, s32 size); +#define aInterleavePart(pkt) { \ + Acmd *_a = (Acmd *)pkt; \ + _a->words.w0 = _SHIFTL(A_INTERLEAVE, 24, 8); \ +} #endif diff --git a/src/25f00_len_940.c b/src/audio/25f00_len_940.c similarity index 87% rename from src/25f00_len_940.c rename to src/audio/25f00_len_940.c index 4c4c6d196d..4d364d124a 100644 --- a/src/25f00_len_940.c +++ b/src/audio/25f00_len_940.c @@ -8,54 +8,48 @@ NUAuPreNMIFunc nuAuPreNMIFunc = NULL; s32 nuAuDmaNext = 0; u32 nuAuFrameCounter = 0; u8 nuAuTaskStop = NU_AU_TASK_RUN; -u8 D_80078181 = 1; +u8 volatile AuSynUseStereo = TRUE; //bss -extern Acmd* D_800A3510[3]; +extern Acmd* AlCmdListBuffers[3]; extern NUScTask D_800A3520[3]; extern u8* D_800A3628[3]; -extern s32 D_800A3634; -extern s32 D_800A3638; +extern s32 AlFrameSize; +extern s32 AlMinFrameSize; extern OSMesgQueue nuAuDmaMesgQ; extern OSMesg nuAuDmaMesgBuf[50]; extern OSIoMesg nuAuDmaIOMesgBuf[]; extern NUDMABuffer* D_800A3BD4; extern NUDMABuffer nuAuDmaBufList[50]; -extern u8 D_800B91A0[]; +extern AuSynDriver auSynDriver; extern u64 rspbootUcodeBuffer[]; extern OSMesgQueue D_800DA444; -extern s32 D_800DAAB8; +extern s32 AlNumFields; extern u64 n_aspMain_text_bin[]; extern u64 n_aspMain_data_bin[]; -extern u8 D_801AA000[0x56000]; - -s32 nuAuDmaCallBack(s32 addr, s32 len, void* state, u8 arg3); -void func_8004B328(NUScMsg, u32); -void func_80056250(u8*, ALConfig*); -void nuAuMgr(void*); -void snd_load_audio_data(s32 frequency); +extern u8 AuHeapBase[AUDIO_HEAP_SIZE]; void create_audio_system(void) { u32 i; - u32 freq, freq2; + u32 outputRate, frameSize; ALConfig config; nuAuTaskStop = NU_AU_TASK_RUN; nuAuPreNMI = 0; - alHeapInit(&nuAuHeap, D_801AA000, 0x56000); - config.unk_00 = 24; - config.unk_04 = 4; - freq = osAiSetFrequency(32000); - freq2 = (D_800DAAB8 * freq + 59) / 60; - config.frequency = freq; + alHeapInit(&nuAuHeap, AuHeapBase, AUDIO_HEAP_SIZE); + config.num_pvoice = 24; + config.unk_num_gamma = 4; + outputRate = osAiSetFrequency(32000); + frameSize = (AlNumFields * outputRate + 59) / 60; + config.outputRate = outputRate; config.unk_0C = 0; config.heap = &nuAuHeap; config.dmaNew = nuAuDmaNew; - D_800A3634 = (freq2 / 184 + 1) * 184; // NU_AU_AUDIO_SAMPLES ? - D_800A3638 = D_800A3634 - 184; + AlFrameSize = ((frameSize / AUDIO_SAMPLES) + 1) * AUDIO_SAMPLES; + AlMinFrameSize = AlFrameSize - AUDIO_SAMPLES; - for (i = 0; i < ARRAY_COUNT(D_800A3510); i++) { - D_800A3510[i] = alHeapAlloc(config.heap, 1, 0x4000); + for (i = 0; i < ARRAY_COUNT(AlCmdListBuffers); i++) { + AlCmdListBuffers[i] = alHeapAlloc(config.heap, 1, AUDIO_COMMAND_LIST_BUFFER_SIZE); } for (i = 0; i < ARRAY_COUNT(D_800A3520); i++) { @@ -76,7 +70,7 @@ void create_audio_system(void) { } for (i = 0; i < ARRAY_COUNT(D_800A3628); i++) { - D_800A3628[i] = alHeapAlloc(config.heap, 1, D_800A3634 * 4); + D_800A3628[i] = alHeapAlloc(config.heap, 1, AlFrameSize * 4); } nuAuDmaBufList[0].node.next = nuAuDmaBufList[0].node.prev = NULL; @@ -88,9 +82,9 @@ void create_audio_system(void) { osCreateMesgQueue(&nuAuDmaMesgQ, nuAuDmaMesgBuf, 50); nuAuPreNMIFunc = func_8004B328; - func_80056250(D_800B91A0, &config); - snd_load_audio_data(config.frequency); - osCreateThread(&nuAuMgrThread, NU_MAIN_THREAD_ID, nuAuMgr, NULL, &D_800A3510, NU_AU_MGR_THREAD_PRI); //why main thread? + au_driver_init(&auSynDriver, &config); + au_engine_init(config.outputRate); + osCreateThread(&nuAuMgrThread, NU_MAIN_THREAD_ID, nuAuMgr, NULL, &AlCmdListBuffers, NU_AU_MGR_THREAD_PRI); //why main thread? osStartThread(&nuAuMgrThread); } @@ -126,7 +120,7 @@ void nuAuMgr(void* arg) { cmdListIndex = 0; bufferIndex = 0; samples = 0; - cmdListBuf = D_800A3510[0]; + cmdListBuf = AlCmdListBuffers[0]; bufferPtr = D_800A3628[0]; while (TRUE) { osRecvMesg(&auMesgQ, (OSMesg*)&mesg_type, OS_MESG_BLOCK); @@ -153,14 +147,14 @@ void nuAuMgr(void* arg) { sampleSize = osAiGetLength() >> 2; if (cmdList_len != 0 && nuAuTaskStop == NU_AU_TASK_RUN) { osAiSetNextBuffer(bufferPtr, samples * 4); - cmdListBuf = D_800A3510[cmdListIndex]; + cmdListBuf = AlCmdListBuffers[cmdListIndex]; bufferPtr = D_800A3628[bufferIndex]; } - if (sampleSize < 184 || cond) { - samples = D_800A3634; + if (sampleSize < AUDIO_SAMPLES || cond) { + samples = AlFrameSize; cond = FALSE; } else { - samples = D_800A3638; + samples = AlMinFrameSize; cond = TRUE; } cmdListAfter_ptr = alAudioFrame(cmdListBuf, &cmdList_len, (s16*)osVirtualToPhysical(bufferPtr), samples); @@ -301,6 +295,7 @@ void nuAuCleanDMABuffers(void) { // Nop issue // try again when bss is figured out up until this file +// rename: default_nuAuPreNMIFunc #ifdef NON_MATCHING void func_8004B328(NUScMsg mesg_type, u32 frameCounter) { s16 temp; @@ -329,7 +324,7 @@ void func_8004B328(NUScMsg mesg_type, u32 frameCounter) { } } #else -INCLUDE_ASM(s32, "25f00_len_940", func_8004B328); +INCLUDE_ASM(s32, "audio/25f00_len_940", func_8004B328); #endif void alLink(ALLink* element, ALLink* after) { diff --git a/src/audio/28910_len_5090.c b/src/audio/28910_len_5090.c new file mode 100644 index 0000000000..43605b25a7 --- /dev/null +++ b/src/audio/28910_len_5090.c @@ -0,0 +1,2076 @@ +#include "audio.h" + +extern s32 D_80078554; +extern u8 BgmDivisors[8]; +extern u8 D_80078558[40]; + +extern void (*CurrentSeqCmdHandler)(BGMPlayer*, BGMPlayerTrack*); +extern void (*SefCmdHandlers[])(SoundManager*, SoundPlayer*); +extern void (*SeqCmdHandlers[])(BGMPlayer*, BGMPlayerTrack*); +extern u8 SeqCmdArgCounts[]; + +static void au_bgm_stop_player(BGMPlayer* player); + +static s32 snd_bpm_to_tempo(BGMPlayer* player, u32 tempo); + +static u8 au_bgm_get_random_pan(BGMPlayer* player, u8 arg1, u8 arg2); +static s16 au_bgm_get_random_pitch(s32 arg0, s32 arg1, u8 arg2); +static u8 au_bgm_get_random_vol(s32 arg0, u8 volume, u8 arg2); +static u8 au_bgm_get_random_reverb(s32 arg0, u8 arg1, u8 arg2); + +void au_bgm_update_main(BGMPlayer* player) { + BGMHeader* bgmFile; + BGMFileInfo* bgmData; + s32 unkType; + u32 segmentID; + s32 segmentOffset; + u32 value; + s32 delta; + u8 var_a1; + u8 pos; + u32 i; + + segmentID = 0; + unkType = -1; + player->updateCounter++; + + if (player->unk_258 != 0) { + if (player->unk_258 < ARRAY_COUNT(player->unk_238)) { + pos = player->unk_259; + for (var_a1 = 0; var_a1 < player->unk_258; var_a1++) { + value = player->unk_238[pos]; + if (value != 0) { + if (value < 16) { + unkType = value & 3; + segmentID = value >> 2; + } + pos++; + if (pos >= ARRAY_COUNT(player->unk_238)) { + pos = 0; + } + } + } + delta = player->unk_25A - player->unk_259; + if (delta < 0) { + delta += ARRAY_COUNT(player->unk_238); + } + player->unk_258 -= delta; + player->unk_259 = player->unk_25A; + } else { + player->unk_258 = 0; + } + if (unkType != -1) { + if (unkType != 0) { + if (unkType != player->unk_58) { + player->unk_58 = unkType & 0xFF; + player->unk_5A = unkType & 0xFF; + player->masterState = BGM_PLAY_STATE_INIT; + player->nextUpdateStep = BGM_SAMPLE_RATE; + if (unkType == 2) { + bgmFile = player->globals->dataBGM[1]; + } else { + bgmFile = player->globals->dataBGM[0]; + } + player->bgmFile = bgmFile; + bgmData = &bgmFile->info; + func_8004E880(player, BGM_SAMPLE_RATE, BgmDivisors[((u8*)player->unk_74)[0] & 7]); //TODO revise unk_74 typing + + segmentOffset = bgmData->segments[segmentID]; + if (segmentOffset == 0) { + segmentOffset = bgmData->segments[0]; + } + player->segmentStartPos = AU_FILE_RELATIVE(bgmFile, segmentOffset << 2); + player->segmentReadPos = AU_FILE_RELATIVE(bgmFile, segmentOffset << 2); + + if (bgmData->drums != 0) { + player->drumsInfo = AU_FILE_RELATIVE(player->bgmFile, bgmData->drums << 2); + player->bgmDrumCount = bgmData->drumCount; + for (i = 0; i < player->bgmDrumCount; i++) { + BGMDrumInfo* drum = &player->drumsInfo[i]; + player->drums[i] = drum; + } + for (; i < 12; i++) { + player->drums[i] = player->drums[0]; + } + } else { + player->drumsInfo = NULL; + player->bgmDrumCount = 0; + } + + if (bgmData->instruments != 0) { + player->instrumentsInfo = AU_FILE_RELATIVE(player->bgmFile, bgmData->instruments << 2); + player->bgmInstrumentCount = bgmData->instrumentCount; + return; + } + player->instrumentsInfo = NULL; + player->bgmInstrumentCount = 0; + } + } else { + if (player->unk_58 != 0) { + player->masterState = BGM_PLAY_STATE_STOP; + player->nextUpdateCounter = 1; + player->nextUpdateStep = 1; + } else { + au_bgm_stop_player(player); + } + } + } + } +} + +// Return values are being pushed into v0 in the wrong place +// May depend on data decomp +#ifdef NON_EQUIVALENT +BGMPlayer* au_bgm_get_player_with_song_name(s32 songString) { + SndGlobals* globals = gBGMPlayerA->data; + + if (songString == globals->dataBGM[0]->name) { + return gBGMPlayerA; + } + if (songString == globals->dataBGM[1]->name) { + return gBGMPlayerB; + } + return NULL; +} +#else +INCLUDE_ASM(BGMPlayer*, "audio/28910_len_5090", au_bgm_get_player_with_song_name, s32 songString); +#endif + +AuResult au_bgm_dispatch_player_event(SongUpdateEvent* event) { + BGMPlayer* player; + BGMFileInfo* fileInfo; + s32 songName; + s32 variation; + s32 duration; + s32 volume0; + s32 volume1; + AuResult status; + u32 i; + + status = AU_RESULT_OK; + songName = event->songName; + variation = event->variation; + if (songName != 0) { + player = au_bgm_get_player_with_song_name(songName); + if (player != NULL) { + fileInfo = &player->bgmFile->info; + duration = event->duration; + if (duration != 0) { + if (duration > SND_MAX_DURATION) { + duration = SND_MAX_DURATION; + } else if (duration < SND_MIN_DURATION) { + duration = SND_MIN_DURATION; + } + } + volume0 = event->startVolume; + if (volume0 >= 0x80) { + volume0 = 0x7F; + } + if (volume0 != 0) { + volume0 = (volume0 << 8) | 0xFF; + } + volume1 = event->finalVolume; + if (volume1 >= 0x80) { + volume1 = 0x7F; + } + if (volume1 != 0) { + volume1 = (volume1 << 8) | 0xFF; + } else { + volume1 = 0x7FFF; + } + + au_fade_init(&player->fadeInfo, duration, volume0, volume1); + player->fadeInfo.targetVolScale = 0x7FFF; + player->fadeInfo.volScaleTime = 1; + func_8004E880(player, BGM_SAMPLE_RATE, BgmDivisors[fileInfo->numSegments & 7]); + + if (variation < 0 || variation >= 4 || fileInfo->segments[variation] == 0) { + variation = 0; + } + player->curSegmentID = variation; + + player->segmentStartPos = AU_FILE_RELATIVE(player->bgmFile, fileInfo->segments[variation] << 2); + player->segmentReadPos = player->segmentStartPos; + + if (fileInfo->drums != 0) { + player->drumsInfo = AU_FILE_RELATIVE(player->bgmFile, fileInfo->drums << 2); + player->bgmDrumCount = fileInfo->drumCount; + + for (i = 0; i < player->bgmDrumCount; i++) { + BGMDrumInfo* drum = &player->drumsInfo[i]; + player->drums[i] = drum; + } + for (; i < ARRAY_COUNT(player->drums); i++) { + player->drums[i] = player->drums[0]; + } + } else { + player->drumsInfo = NULL; + player->bgmDrumCount = 0; + } + if (fileInfo->instruments != 0) { + player->instrumentsInfo = AU_FILE_RELATIVE(player->bgmFile, fileInfo->instruments << 2); + player->bgmInstrumentCount = fileInfo->instrumentCount; + } else { + player->instrumentsInfo = NULL; + player->bgmInstrumentCount = 0; + } + player->songName = songName; + au_bgm_player_initialize(player); + } else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + return status; +} + +AuResult au_bgm_stop_song(s32 songName) { + BGMPlayer* player; + AuResult status = AU_RESULT_OK; + + if (songName != 0) { + player = au_bgm_get_player_with_song_name(songName); + if (player != NULL) { + if (songName == player->songName) { + au_bgm_stop_player(player); + } + } else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + + return status; +} + +void au_bgm_stop_all(void) { + au_bgm_stop_player(gBGMPlayerA); + au_bgm_stop_player(gBGMPlayerB); +} + +static void au_bgm_stop_player(BGMPlayer* player) { + if (player->masterState != BGM_PLAY_STATE_IDLE) { + player->masterState = BGM_PLAY_STATE_STOP; + player->nextUpdateCounter = 1; + player->nextUpdateStep = 1; + au_fade_clear(&player->fadeInfo); + } +} + +AuResult au_bgm_is_song_playing(s32 songName) { + BGMPlayer* player; + AuResult result = AU_RESULT_OK; + + if (songName != 0) { + player = au_bgm_get_player_with_song_name(songName); + if (player != NULL) { + result = (songName == player->songName); + } else { + result = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + result = AU_ERROR_NULL_SONG_NAME; + } + + return result; +} + +s32 func_8004DB28(BGMPlayer* player) { + if (player->songName != NULL && player->masterState != 0) { + return 1; + } else { + return 0; + } +} + +AuResult func_8004DB4C(SongUpdateEvent* s) { + AuResult status; + BGMPlayer* player; + u32 songName = s->songName; + u32 duration = s->duration; + s16 volume = s->finalVolume; + + status = AU_RESULT_OK; + if (songName != 0) { + if (duration >= SND_MIN_DURATION && duration <= SND_MAX_DURATION) { + player = au_bgm_get_player_with_song_name(songName); + if (player != NULL) { + if (player->songName == songName) { + if (player->masterState != BGM_PLAY_STATE_IDLE) { + if (player->unk_220 == 0) { + player->fadeInfo.targetVolume = volume; + player->fadeInfo.fadeTime = (duration * 1000) / AU_5750; + player->fadeInfo.fadeStep = ((volume << 0x10) - player->fadeInfo.currentVolume.s32) / player->fadeInfo.fadeTime; + player->fadeInfo.variation = s->variation; + if (s->unk14 == 1) { + player->fadeSongName = songName; + } + } + } + } + } else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_INVALID_SONG_DURATION; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + return status; +} + +AuResult func_8004DC80(s32 songName) { + SongUpdateEvent s; + + s.songName = songName; + s.duration = 0; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 0; + return func_8004DCB8(&s, 0); +} + +AuResult func_8004DCB8(SongUpdateEvent* update, s32 clearChanged) { + AuResult status; + BGMPlayer* playerA; + BGMPlayer* playerB; + s32 songName; + s32 variation; + u32 i; + u32 j; + + songName = update->songName; + variation = update->variation; + status = AU_RESULT_OK; + + if (songName != 0) { + playerA = au_bgm_get_player_with_song_name(songName); + if (playerA != NULL) { + if (update->unk14 == 0) { + playerB = func_80053F64(variation); + if (playerB != NULL) { + if (songName == playerA->songName) { + if (!clearChanged) { + for (i = 0; i < ARRAY_COUNT(playerA->tracks); i++) { + BGMPlayerTrack* track = &playerA->tracks[i]; + if (track->bgmReadPos != 0) { + for (j = track->unk_52; j < track->unk_53; j++) { + track->changed.all = 0; + } + } + } + } + playerA->globals->unk_globals_6C[variation].unk_5 = playerA->priority; + playerA->globals->unk_globals_6C[variation].unk_4 = 1; + playerA->fadeSongName = 0; + au_copy_words(playerA, playerB, sizeof(*playerA)); + if (clearChanged == 0) { + au_bgm_stop_player(playerA); + } + } + } else { + status = AU_ERROR_INVALID_SONG_DURATION; + } + } else { + if (songName == playerA->songName) { + if (playerA->masterState != BGM_PLAY_STATE_IDLE) { + playerA->unk_220 = 1; + func_80050900(playerA); + } + } + } + } else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + return status; +} + +AuResult func_8004DE2C(SongUpdateEvent* update) { + AuResult status; + BGMPlayer* playerA; + BGMPlayer* playerB; + s32 variation; + s32 songName; + s32 volume0; + s32 volume1; + s32 duration; + + songName = update->songName; + variation = update->variation; + status = AU_RESULT_OK; + + if (songName != 0) { + if (update->unk14 == 0) { + playerA = func_80053F64(variation); + if (playerA != NULL && playerA->globals->unk_globals_6C[variation].unk_4 == 1) { + playerB = func_80054248(playerA->globals->unk_globals_6C[variation].unk_5); + if (playerB != NULL) { + if (func_8004DB28(playerB) == 0) { + status = func_80053E58(playerA->songID, playerA->bgmFile); + duration = update->duration; + if (duration != 0) { + if (duration > SND_MAX_DURATION) { + duration = SND_MAX_DURATION; + } else if (duration < SND_MIN_DURATION) { + duration = SND_MIN_DURATION; + } + } + volume0 = update->startVolume; + if (volume0 > BGM_MAX_VOLUME) { + volume0 = BGM_MAX_VOLUME; + } + if (volume0 != 0) { + volume0 = (volume0 << 8) | 0xFF; + } + volume1 = update->finalVolume; + if (volume1 > BGM_MAX_VOLUME) { + volume1 = BGM_MAX_VOLUME; + } + if (volume1 != 0) { + volume1 = (volume1 << 8) | 0xFF; + } else { + volume1 = 0x7FFF; + } + playerB->globals->unk_74 = playerB; + playerB->globals->unk_78 = playerA; + playerB->globals->unkSongName = songName; + playerB->globals->unkFadeTime = duration; + playerB->globals->unkFadeStart = volume0; + playerB->globals->unkFadeEnd = volume1; + playerB->globals->unk_80 = 1; + } else { + status = AU_ERROR_7; + } + } else { + status = AU_ERROR_6; + } + } else { + status = AU_ERROR_INVALID_SONG_DURATION; + } + } else { + playerB = au_bgm_get_player_with_song_name(songName); + if (playerB != NULL) { + if (songName == playerB->songName) { + if (playerB->unk_220 != 0) { + playerB->unk_220 = 0; + } + } + } + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + return status; +} + +void func_8004DFD4(AuGlobals* globals) { + BGMPlayer* player; + BGMPlayerTrack* track; + SeqNote* note; + u32 i; + u32 j; + s32 k; + + player = globals->unk_74; + au_copy_words(globals->unk_78, globals->unk_74, sizeof(*player)); + if (globals->unkSongName == player->songName) { + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + track = &player->tracks[i]; + if (track->bgmReadPos != NULL) { + for (j = track->unk_52; j < track->unk_53; j++) { + note = &player->notes[j]; + note->noteLength = 0; + } + } + } + for (k = 0; k < ARRAY_COUNT(player->effectIndices); k++) { + if (player->effectIndices[k] != 0xFF) { + player->seqCmdArgs.MasterEffect.index = player->effectIndices[k]; + player->seqCmdArgs.MasterEffect.value = player->effectValues[k]; + au_BGMCmd_E6_MasterEffect(player, track); + } + } + au_fade_init(&player->fadeInfo, globals->unkFadeTime, globals->unkFadeStart, globals->unkFadeEnd); + } + globals->unk_80 = 0; +} + +AuResult func_8004E0F4(SongUpdateEvent* update) { + BGMPlayer* player; + AuResult status = AU_RESULT_OK; + + if (update->songName != 0) { + player = au_bgm_get_player_with_song_name(update->songName); + if (player != NULL) { + func_80053B04(&player->fadeInfo, update->duration, update->finalVolume); + } + else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + return status; +} + +void au_bgm_player_init(BGMPlayer* player, s32 priority, s32 reverbType, AuGlobals* globals) { + s16 i; + + player->globals = globals; + func_8004E880(player, BGM_SAMPLE_RATE, 48); + player->unk_48 = 0x8000; + player->masterTempo = BGM_DEFAULT_TEMPO; + player->masterVolume = 0x7F000000; + player->updateCounter = 0; + player->songPlayingCounter = 0; + player->songName = 0; + player->fadeSongName = 0; + player->unk_58 = 0; + player->unk_5A = 0; + player->segmentReadPos = NULL; + player->segmentStartPos = NULL; + player->subSegmentStartPos = 0; + player->masterTempoTime = 0; + player->masterTempoTarget = 0; + player->masterTempoStep = 0; + player->masterVolumeTime = 0; + player->masterVolumeTarget = 0; + player->masterVolumeStep = 0; + player->masterPitchShift = 0; + player->unk_20E = 0; + player->unk_220 = 0; + player->trackVolsConfig = NULL; + player->bFadeConfigSetsVolume = FALSE; + player->masterState = BGM_PLAY_STATE_IDLE; + player->priority = priority; + player->defaultReverbType = reverbType; + *(s32*)player->segLoopCounters = 0; + player->unk_222 = 0; + player->unk_223 = 0; + player->unk_D0 = 1.0f; + player->unk_22A[0] = 0; + player->unk_22A[1] = 1; + player->unk_22A[2] = 0; + player->unk_22A[3] = 0; + player->unk_22A[4] = 0; + player->unk_22A[5] = 2; + player->unk_22A[6] = 3; + player->unk_22A[7] = 4; + + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + BGMPlayerTrack* temp = &player->tracks[i]; + + temp->subTrackVolume = 0; + temp->delayTime = 0; + temp->subTrackCoarseTune = 0; + temp->subTrackFineTune = 0; + temp->subTrackPan = 0; + temp->subTrackReverb = 0; + temp->patch = 0; + temp->isDrumTrack = FALSE; + temp->segTrackVolume = 0x7F; + temp->unk_4C = 0; + + if (i < ARRAY_COUNT(player->unk_238)) { + player->unk_238[i] = 0; + } + } + + for (i = 0; i < ARRAY_COUNT(player->notes); i++) { + SeqNote* note = &player->notes[i]; + + note->volume = 0; + note->adjustedPitch = 0; + note->noteLength = 0; + note->unk_14 = 0; + note->noteVelocity = 0; + note->unk_note_17 = 0; + } + + au_fade_set_vol_scale(&player->fadeInfo, 0x7FFF); + func_80055110(player); +} + +void au_bgm_set_effect_indices(BGMPlayer* player, u8* list) { + s32 i; + s32 remaining; + + for (i = 0; i < ARRAY_COUNT(player->effectIndices); i++) { + s8 idx = *list++; + + if (idx < 0) { + break; + } + player->effectIndices[i] = idx; + } + + remaining = ARRAY_COUNT(player->effectIndices) - i; + if (remaining > 0) { + while (remaining-- != 0) { + player->effectIndices[i++] = -1; + } + } +} + +void au_bgm_update_fade(BGMPlayer* player) { + player->fadeInfo.fadeTime--; + + if (player->fadeInfo.fadeTime != 0) { + player->fadeInfo.currentVolume.s32 += player->fadeInfo.fadeStep; + } else { + player->fadeInfo.currentVolume.s32 = player->fadeInfo.targetVolume << 16; + + if (player->fadeInfo.onCompleteCallback != NULL) { + player->fadeInfo.onCompleteCallback(); + } + + if (player->fadeSongName != 0) { + func_8004DC80(player->fadeSongName); + } else if (player->fadeInfo.currentVolume.s32 == 0) { + au_bgm_stop_player(player); + } + } + func_8004E444(player); +} + +void func_8004E444(BGMPlayer* arg0) { + u16 mult = (arg0->fadeInfo.currentVolume.u16 * arg0->fadeInfo.volScale.u16) >> 15; + s32 i; + + for (i = 0; i < ARRAY_COUNT(arg0->effectIndices); i++) { + s8 temp = arg0->effectIndices[i]; + + if (temp < 0) { + return; + } + func_80053A98(temp, mult, arg0->unk_48); + } +} + +s32 au_bgm_player_update_main(BGMPlayer* player) { + u16 hasMore = TRUE; + s32 retVal = FALSE; + + // update pseudorandom numbers with fast 'good enough' method + player->randomValue1 = (u16)player->randomValue1 + (u16)player->songPlayingCounter + (u16)player->updateCounter; + player->randomValue2 = (u16)player->randomValue2 + ((player->songPlayingCounter << 4) & 0xFFFF) + ((player->updateCounter >> 4) & 0xFFFF); + do { + switch (player->masterState) { + case BGM_PLAY_STATE_IDLE: + hasMore = FALSE; + break; + case BGM_STATE_PLAY_SUBSEG: + if (player->unk_220 == 0) { + au_bgm_player_update_playing(player); + if (player->masterState == BGM_STATE_PLAY_SUBSEG) { + hasMore = FALSE; + } + } else { + hasMore = FALSE; + } + break; + case BGM_PLAY_STATE_NEXT_SUBSEG: + au_bgm_player_read_segment(player); + break; + case BGM_PLAY_STATE_INIT: + au_bgm_player_initialize(player); + hasMore = FALSE; + break; + case BGM_PLAY_STATE_STOP: + au_bgm_player_update_stop(player); + break; + default: + retVal = TRUE; + hasMore = FALSE; + break; + } + } while (hasMore); + return retVal; +} + +void au_bgm_player_initialize(BGMPlayer* player) { + s32* buf; + s32 cmd; + s32 keepReading; + s32 i; + + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + BGMPlayerTrack* track = &player->tracks[i]; + track->instrument = NO_INSTRUMENT; + track->subTrackVolume = 0x7FFF0000; + track->subTrackPan = 0x40; + track->subTrackReverb = 0; + track->patch = 0; + track->subTrackCoarseTune = 0; + track->subTrackFineTune = 0; + track->segTrackVolume = 0x7F; + track->unk_4C = 0; + track->unkVolume = 0x7FFF0000; + track->savedPos = NULL; + track->prevReadPos = NULL; + track->detourLength = 0; + track->segTrackTune = 0; + track->trackTremoloTime = 0; + track->trackTremoloAmount = 0; + track->trackTremoloSpeed = 0; + track->subTrackVolumeStep = 0; + track->subTrackVolumeTarget = 0; + track->subTrackVolumeTime = 0; + track->unkVolumeStep = 0; + track->unkVolumeTarget = 0; + track->unkVolumeTime = 0; + track->unk_4D = 0; + track->unk_4E = 0; + track->unk_4F = 0; + track->unk_50 = 0; + track->unk_51 = 0; + track->polyphonicIdx = 0; + track->unk_57 = 0; + track->isDrumTrack = FALSE; + track->parentTrackIdx = 0; + track->unk_5A = 0; + track->subtrackReverbType = player->defaultReverbType; + track->index = i; + } + + for (i = 0; i < ARRAY_COUNT(player->notes); i++) { + SeqNote* note = &player->notes[i]; + note->ins = NO_INSTRUMENT; + note->pitchRatio = 2.0f; + note->unk_14 = 0; + note->noteVelocity = 0; + note->noteLength = 0; + note->tremoloTime = 0; + } + + func_80050900(player); + player->unk_D0 = 128.0f; // set to 1.0 later om... + player->masterTempo = BGM_DEFAULT_TEMPO; + player->masterTempoBPM = BGM_DEFAULT_TEMPO / 100; + player->unk_21E = 0x80; + player->masterVolume = 0x7F000000; + player->fadeSongName = 0; + player->unk_74 = 0; + player->masterTempoTarget = 0; + player->masterPitchShift = 0; + player->unk_20E = 0; + player->masterVolumeTime = 0; + player->masterVolumeTarget = 0; + player->masterVolumeStep = 0; + player->proxMixValue = 0; + player->proxMixID = 0; + player->proxMixVolume = 0; + player->segActiveLoopEndPos[3] = NULL; + player->segActiveLoopEndPos[2] = NULL; + player->segActiveLoopEndPos[1] = NULL; + player->segActiveLoopEndPos[0] = NULL; + *(s32*)player->segLoopCounters = 0; + player->segLoopDepth = 0; + player->unk_222 = 0; + player->unk_223 = 0; + player->trackVolsConfig = NULL; + player->bFadeConfigSetsVolume = FALSE; + player->unk_233 = 1; + player->unk_211 = 0; + player->unk_D0 = 1.0f; + + for (i = 0; i < ARRAY_COUNT(player->unk_212); i++) { + func_8004E844(player, i); + } + + for (i = 0; i < ARRAY_COUNT(player->effectValues); i++) { + player->effectValues[i] = 0; + } + + player->unk_220 = 0; + player->songPlayingCounter = 0; + for (i = 0; i < ARRAY_COUNT(player->segLoopStartLabels); i++) { + player->segLoopStartLabels[i] = player->segmentReadPos; + } + + // find labels + buf = player->segmentReadPos; + keepReading = TRUE; + while (keepReading) { + cmd = *buf++; + if (cmd == 0) { + keepReading = FALSE; + } else if ((cmd & 0xF0000000) == BGM_SEGMENT_LABEL << 28) { + player->segLoopStartLabels[cmd & 0x1F] = buf; + } + } + + player->masterState = BGM_PLAY_STATE_NEXT_SUBSEG; +} + +void func_8004E844(BGMPlayer* player, s32 arg1) { + s32 i; + u16* temp = player->unk_174[arg1]; + player->unk_212[arg1] = 0; + + for (i = 0; i < 9; i++) { + *temp++ = 0xFF00; + } +} + +// divisor is number of ticks per beat? +void func_8004E880(BGMPlayer* player, s32 sampleRate, s32 divisor) { + u32 A; + + A = 10434782 / (u32)divisor; + + if (A > 500000) { + A = 500000; + } else if (A < 80000) { + A = 80000; + } + if (A < sampleRate) { + sampleRate = A; + } + player->nextUpdateStep = sampleRate; + player->nextUpdateInterval = A; + player->nextUpdateCounter = A; + player->maxTempo = A / 1000; +} + +// runs whenever a new segment begins playing +void au_bgm_player_read_segment(BGMPlayer* player) { + u16 continueReading = TRUE; + u32 cmd; + + player->masterTempoStep = 0; + player->masterTempoTime = 0; + while (continueReading) { + cmd = *player->segmentReadPos++; + if (cmd == BGM_SEGMENT_END) { + player->masterState = BGM_PLAY_STATE_STOP; + continueReading = FALSE; + } else { + switch (cmd >> 12) { + case BGM_SEGMENT_SUBSEG << 16: + au_bgm_load_subsegment(player, cmd); + player->masterState = BGM_STATE_PLAY_SUBSEG; + continueReading = FALSE; + break; + case BGM_SEGMENT_START_LOOP << 16: + break; + case BGM_SEGMENT_WAIT << 16: + continueReading = FALSE; + break; + case BGM_SEGMENT_END_LOOP << 16: + au_bgm_end_segment_loop(player, cmd); + break; + case BGM_SEGMENT_6 << 16: + if (!(player->unk_223 & 1)) { + au_bgm_end_segment_loop(player, cmd); + } + break; + case BGM_SEGMENT_7 << 16: + if (player->unk_223 & 1) { + au_bgm_end_segment_loop(player, cmd); + } + break; + default: + continueReading = FALSE; + break; + } + } + } +} + +void au_bgm_end_segment_loop(BGMPlayer* player, u32 cmd) { + s32 labelIndex = cmd & 0x1F; // 01F (bits 0-4) + s32 iterCount = (cmd >> 5) & 0x7F; // FE0 (bits 5-11) + u32 depth; + + depth = player->segLoopDepth; + if (player->segActiveLoopEndPos[depth] != NULL) { + if (player->segActiveLoopEndPos[depth] == player->segmentReadPos) { + if (player->segLoopCounters[depth] != 0) { + player->segLoopCounters[depth]--; + if ((player->segLoopCounters[depth]) == 0) { + player->segActiveLoopEndPos[depth] = NULL; + if (depth > 0) { + depth--; + } + } else { + player->segmentReadPos = player->segLoopStartLabels[labelIndex]; + } + } else { + player->segmentReadPos = player->segLoopStartLabels[labelIndex]; + } + } else if (depth < 4) { + depth++; + player->segActiveLoopEndPos[depth] = player->segmentReadPos; + player->segLoopCounters[depth] = iterCount; + player->segmentReadPos = player->segLoopStartLabels[labelIndex]; + } + } else { + player->segActiveLoopEndPos[depth] = player->segmentReadPos; + player->segLoopCounters[depth] = iterCount; + player->segmentReadPos = player->segLoopStartLabels[labelIndex]; + } + player->segLoopDepth = depth; +} + +void au_bgm_load_subsegment(BGMPlayer* player, u32 cmd) { + BGMPlayerTrack* track; + u32 trackInfo; + s32* trackList; + u32 parentIdx; + s32 count; + s32 nextRelativePos; + s32 bUsesPolyphony; + s32 i; + + nextRelativePos = 0; + bUsesPolyphony = FALSE; + player->subSegmentStartPos = AU_FILE_RELATIVE(player->segmentStartPos, (cmd & 0xFFFF) << 2); + trackList = player->subSegmentStartPos; + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + track = &player->tracks[i]; + trackInfo = *trackList++; + track->bgmReadPos = trackInfo >> 0x10; + if (track->bgmReadPos != NULL) { + if ((trackInfo & 0x100) == 0) { + track->polyphonicIdx = (trackInfo & (0x7 << 0xD)) >> 0xD; + track->isDrumTrack = (trackInfo >> 7) & 1; + parentIdx = (trackInfo & (0xF << 9)) >> 9; + track->parentTrackIdx = 0; + if (parentIdx != 0) { + BGMPlayerTrack* parentTrack = &player->tracks[parentIdx - 1]; + if ((parentIdx - 1) < i) { + track->unk_51 = parentTrack->unk_51; + track->unk_52 = parentTrack->unk_52; + track->unk_53 = parentTrack->unk_53; + + track->bgmReadPos = (track->bgmReadPos + (s32)player->subSegmentStartPos); + track->delayTime = 1; + + track->parentTrackIdx = parentIdx; + if (player->unk_233 != 0) { + track->unk_5A = 1; + } + bUsesPolyphony = TRUE; + } else { + track->bgmReadPos = NULL; + } + } else { + count = player->unk_22A[track->polyphonicIdx]; + track->unk_51 = count; + track->unk_52 = nextRelativePos; + nextRelativePos += count; + track->unk_53 = nextRelativePos; + + track->bgmReadPos = (track->bgmReadPos + (s32)player->subSegmentStartPos); + track->delayTime = 1; + } + } else { + track->bgmReadPos = NULL; + } + } + } + player->unk_21B = nextRelativePos; // last Voice? + if (bUsesPolyphony) { + player->unk_233 = 0; + } +} + +void au_bgm_player_update_stop(BGMPlayer* player) { + s32 i; + + player->unk_220 = 0; + player->songName = 0; + player->fadeSongName = 0; + player->unk_58 = 0; + player->unk_5A = 0; + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + player->tracks[i].bgmReadPos = NULL; + } + func_80050900(player); + player->masterState = BGM_PLAY_STATE_IDLE; + player->nextUpdateStep = BGM_SAMPLE_RATE; +} + +#define POST_BGM_READ() \ +if (track->detourLength != 0) {\ + track->detourLength--;\ + if (track->detourLength == 0) {\ + track->bgmReadPos = track->savedPos;\ + }\ +} + +void au_bgm_player_update_playing(BGMPlayer *player) { + s32 bVolumeFading; // SP + 10 + u8 sp1F; // SP + 1F + s16 notePitch; // SP + 26 + u8 bFinished; // SP + 28 + + AlUnkVoice* voice; + BGMDrumInfo* drumInfo; + BGMPlayerTrack* track; + SeqNote* note; + s32 var_a0; + s32 temp; + s32 var_a1_5; + s32 bAcquiredVoiceIdx; + u8 opcode; + u8 noteVelocity; + s32 noteLength; + u32 i; + u8 voiceIdx; + s32 temp2; + bVolumeFading = FALSE; + bFinished = FALSE; + + if (player->masterTempoTime != 0) { + player->masterTempoTime--; + if (player->masterTempoTime == 0) { + player->masterTempo = player->masterTempoTarget; + player->masterTempoTarget = 0; + player->masterTempoStep = 0; + } else { + player->masterTempo += player->masterTempoStep; + } + player->nextUpdateStep = player->masterTempo * 10; + } + if (player->masterVolumeTime != 0) { + player->masterVolumeTime--; + if (player->masterVolumeTime == 0) { + player->masterVolume = player->masterVolumeTarget; + player->masterVolumeTarget = 0; + player->masterVolumeStep = 0; + } else { + player->masterVolume += player->masterVolumeStep; + } + bVolumeFading = TRUE; + } + player->volumeChanged = FALSE; + if (player->trackVolsConfig != NULL) { + if (player->bFadeConfigSetsVolume) { + // setting track volumes + s32 lenLimit = 16; + while (lenLimit-- != 0) { + i = *player->trackVolsConfig++; + if (i == 0) { + break; + } + track = &player->tracks[i - 1]; + player->seqCmdArgs.TrackVolumeFade.time = 48; + player->seqCmdArgs.TrackVolumeFade.value = *(player->trackVolsConfig++); + if (track->bgmReadPos != 0) { + au_BGMCmd_F6_TrackVolumeFade(player, track); + } + } + } + else { + // clearing track volumes + s32 lenLimit = 16; + while (lenLimit-- != 0) { + i = *player->trackVolsConfig++; + if (i == 0) { + break; + } + track = &player->tracks[i - 1]; + player->seqCmdArgs.TrackVolumeFade.time = 48; + player->trackVolsConfig++; // ignore arg + player->seqCmdArgs.TrackVolumeFade.value = 0; + if (track->bgmReadPos != 0) { + au_BGMCmd_F6_TrackVolumeFade(player, track); + } + } + } + player->trackVolsConfig = NULL; + player->bFadeConfigSetsVolume = FALSE; + } + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + track = &player->tracks[i]; + if (track->bgmReadPos != NULL) { + track->changed.all = 0; + if (bVolumeFading || player->volumeChanged) { + track->changed.volume = 1; + } else { + track->changed.volume = 0; + } + if (track->subTrackVolumeTime != 0) { + track->subTrackVolumeTime--; + if (track->subTrackVolumeTime == 0) { + track->subTrackVolume = track->subTrackVolumeTarget; + } else { + track->subTrackVolume += track->subTrackVolumeStep; + } + track->changed.volume = 1; + } + if (track->unkVolumeTime != 0) { + track->unkVolumeTime--; + if (track->unkVolumeTime == 0) { + track->unkVolume = track->unkVolumeTarget << 0x10; + } else { + track->unkVolume += track->unkVolumeStep; + } + track->changed.volume = 1; + } + track->delayTime--; + if (track->delayTime <= 0) { + sp1F = track->unk_52; + while (track->delayTime == 0) { + opcode = *(track->bgmReadPos++); + POST_BGM_READ(); + + if (opcode < 0x80) { + if (opcode == 0) { + if (track->prevReadPos != 0) { + track->bgmReadPos = track->prevReadPos; + track->prevReadPos = 0; + } else { + bFinished = TRUE; + break; + } + } else { + if (opcode >= 0x78) { + // long delay + track->delayTime = (((opcode & 7) << 8) + *(track->bgmReadPos++)) + 0x78; + POST_BGM_READ(); + + } else { + // delay + track->delayTime = opcode; + } + } + } else { + // note + if (opcode < 0xD4) { + notePitch = (opcode & 0x7F); + noteVelocity = *(track->bgmReadPos++); + POST_BGM_READ(); + noteLength = *(track->bgmReadPos++); + POST_BGM_READ(); + if (!(noteLength < 0xC0)) { + noteLength = (((u8)noteLength & ~0xC0) << 8) + *(track->bgmReadPos++) + 0xC0; + POST_BGM_READ(); + } + bAcquiredVoiceIdx = FALSE; + if (track->unk_5A == 0) { + // find first free voice + for (voiceIdx = sp1F; voiceIdx < track->unk_53; voiceIdx++) { + voice = &player->globals->voices[voiceIdx]; + sp1F++; + if (voice->priority == AU_PRIORITY_FREE) { + bAcquiredVoiceIdx = TRUE; + break; + } + } + + if (!bAcquiredVoiceIdx) { + if (track->polyphonicIdx >= 5) { // 5 = AL_DEFAULT_PRIORITY? + // try stealing a voice with lower priority + for (voiceIdx = track->unk_52; voiceIdx < track->unk_53; voiceIdx++) { + voice = &player->globals->voices[voiceIdx]; + if (voice->priority < player->priority) { + au_reset_voice(voice, voiceIdx); + bAcquiredVoiceIdx = TRUE; + break; + } + } + // try stealing a voice with equal priority and zero note length + if (!bAcquiredVoiceIdx) { + for (voiceIdx = track->unk_52; voiceIdx < track->unk_53; voiceIdx++) { + voice = &player->globals->voices[voiceIdx]; + if (voice->priority == player->priority) { + note = &player->notes[voiceIdx]; + if (note->noteLength == 0) { + au_reset_voice(voice, voiceIdx); + bAcquiredVoiceIdx = TRUE; + break; + } + } + } + } + // try stealing a voice with equal priority and lowest note length + if (!bAcquiredVoiceIdx) { + s32 shortestLength = 0xFFFF; + u8 voice_it; + AlUnkVoice* curVoice; + SeqNote* curNote; + for (voice_it = track->unk_52; voice_it < track->unk_53; voice_it++) { + curVoice = &player->globals->voices[voice_it]; + if (curVoice->priority == player->priority) { + curNote = &player->notes[voice_it]; + if (curNote->unk_note_17 == 0 && curNote->noteLength < shortestLength) { + shortestLength = curNote->noteLength; + voice = curVoice; + note = curNote; + voiceIdx = voice_it; + bAcquiredVoiceIdx = TRUE; + } + } + } + if (bAcquiredVoiceIdx) { + note->noteLength = 0; + au_reset_voice(voice, voiceIdx); + } + } + + } else { + voiceIdx = track->unk_52; + voice = &player->globals->voices[voiceIdx]; + note = &player->notes[voiceIdx]; + note->noteLength = 0; + if (voice->priority <= player->priority) { + au_reset_voice(voice, voiceIdx); + bAcquiredVoiceIdx = TRUE; + } + } + } + } + if (bAcquiredVoiceIdx) { + note = &player->notes[voiceIdx]; + note->tremoloTime = 0; + if (noteVelocity > 0) { + note->noteVelocity = noteVelocity + 1; + } else { + note->noteVelocity = 0; + } + note->noteLength = noteLength; + if (track->isDrumTrack) { + if (notePitch < 72) { // = 6 * 12 + drumInfo = &player->globals->dataPER->drums[notePitch]; + } else { + drumInfo = player->drums[notePitch - 72]; // = 6 * 12 + } + note->ins = au_get_instrument(player->globals, (u16)drumInfo->bankPatch >> 8, (u16)drumInfo->bankPatch & 0xFF, &voice->unk_14); + if (drumInfo->randVolume != 0) { + note->volume = note->noteVelocity * au_bgm_get_random_vol(player->randomValue1, drumInfo->volume, drumInfo->randVolume); + } else { + note->volume = note->noteVelocity * drumInfo->volume; + } + voice->adjustedVolume = (( + ((player->masterVolume >> 0x15) * (track->subTrackVolume >> 0x15) * (track->unkVolume >> 0x15)) >> 0x14) + * (track->segTrackVolume * note->volume)) >> 0x10; + note->adjustedPitch = + drumInfo->keyBase + + track->subTrackCoarseTune + + track->subTrackFineTune + - note->ins->keyBase; + temp = (note->adjustedPitch + track->segTrackTune) + player->unk_20E; + if (drumInfo->randTune != 0) { + note->unk_14 = au_bgm_get_random_pitch(player->randomValue1, temp, drumInfo->randTune); + temp = note->unk_14; + } + note->pitchRatio = au_compute_pitch_ratio(temp) * note->ins->pitchRatio; + if (drumInfo->randPan != 0) { + voice->pan = au_bgm_get_random_pan(player, drumInfo->pan, drumInfo->randPan); + } else { + voice->pan = drumInfo->pan; + } + if (drumInfo->randReverb != 0) { + voice->reverbAmt = au_bgm_get_random_reverb(player->randomValue1, drumInfo->reverb, drumInfo->randReverb); + } else { + voice->reverbAmt = drumInfo->reverb; + } + } else { + note->volume = (( + ((player->masterVolume >> 0x15) * (track->subTrackVolume >> 0x15) * (track->unkVolume >> 0x15)) >> 0x14) + * (track->segTrackVolume * note->noteVelocity)) >> 9; + voice->adjustedVolume = note->volume; + note->ins = track->instrument; + note->adjustedPitch = + (notePitch * 100) + + track->subTrackCoarseTune + + player->masterPitchShift + + track->subTrackFineTune + - note->ins->keyBase; + note->pitchRatio = au_compute_pitch_ratio( + note->adjustedPitch + + track->segTrackTune + + player->unk_20E) + * track->instrument->pitchRatio; + + if (track->unk_57 != 0) { + voice->pan = au_bgm_get_random_pan(player, track->subTrackPan, track->unk_57); + } else { + voice->pan = track->subTrackPan; + } + voice->reverbAmt = track->subTrackReverb; + + if (track->unk_4C != 0) { + voice->unk_14.unk_00 = (s32*)player->unk_174[track->unk_4C - 1]; //TODO ??? + } else { + voice->unk_14.unk_00 = track->unk_10.unk_00; + } + voice->unk_14.unk_04 = track->unk_10.unk_04; + } + voice->instrument = note->ins; + voice->pitchRatio = note->pitchRatio; + voice->reverbType = track->subtrackReverbType; + if (note->noteLength >= 2) { + note->unk_note_17 = 1; + note->tremoloTime = track->trackTremoloTime; + note->unk_13 = 0; + note->tremoloAmount = track->trackTremoloAmount; + voice->unk_flags_43 = AU_VOICE_SYNC_FLAGS_ALL; + voice->priority = player->priority; + voice->priorityCopy = voice->priority; + } + } + } else { + //TODO variable is nargs, but reusing temp is required to match + temp = SeqCmdArgCounts[opcode - 0xE0]; + if (temp != 0) { + player->seqCmdArgs.raw[0] = *(track->bgmReadPos++); + POST_BGM_READ(); + } else { + goto bgm_args_done; + } + if (temp > 1) { + player->seqCmdArgs.raw[1] = *(track->bgmReadPos++); + POST_BGM_READ(); + } else { + goto bgm_args_done; + } + if (temp > 2) { + player->seqCmdArgs.raw[2] = *(track->bgmReadPos++); + POST_BGM_READ(); + } else { + goto bgm_args_done; + } + if (temp > 3) { + player->seqCmdArgs.raw[3] = *(track->bgmReadPos++); + POST_BGM_READ(); + } + bgm_args_done: + CurrentSeqCmdHandler = SeqCmdHandlers[opcode - 0xE0]; + CurrentSeqCmdHandler(player, track); + } + } + } // end while + } + + for (voiceIdx = track->unk_52; voiceIdx < track->unk_53; voiceIdx++) { + if (track->unk_5A == 0) { + voice = &player->globals->voices[voiceIdx]; + if (voice->priority == player->priority) { + note = &player->notes[voiceIdx]; + if (note->unk_note_17 == 0) { + if (note->noteLength > 0) { + note->noteLength--; + if (note->noteLength == 0) { + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_10; + } + } + if (track->isDrumTrack) { + if (track->changed.tune || (player->unk_20E != 0)) { + note->pitchRatio = au_compute_pitch_ratio(((note->adjustedPitch + note->unk_14) + track->segTrackTune) + player->unk_20E) * note->ins->pitchRatio; + if (voice->pitchRatio != note->pitchRatio) { + voice->pitchRatio = note->pitchRatio; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_PITCH; + } + } + if (track->changed.volume) { + voice->adjustedVolume = ( + ((((player->masterVolume >> 0x15) + * (track->subTrackVolume >> 0x15)) + * (track->unkVolume >> 0x15)) >> 0x14) + * (track->segTrackVolume * note->volume)) >> 0x10; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_VOL_CHANGED; + } + } else { + if (note->tremoloTime != 0) { + if (note->tremoloAmount != 0) { + note->tremoloAmount--; + } else { + u8 temp_a0_6; + u8 temp_a2_4; + note->unk_13 += track->trackTremoloSpeed; + opcode = (note->unk_13 << 2) + 3; + temp_a2_4 = note->unk_13 >> 6; + + if ((temp_a2_4 == 1) || (temp_a2_4 == 3)) { + u8 temp2 = ~opcode; + var_a1_5 = temp2 + 1; + } else { + var_a1_5 = opcode; + } + + var_a1_5 = (var_a1_5 * track->trackTremoloTime) >> 8; + + if ((temp_a2_4 == 2) || (temp_a2_4 == 3)) { + var_a1_5 = -var_a1_5; + } + + note->pitchRatio = au_compute_pitch_ratio(var_a1_5 + ((note->adjustedPitch + track->segTrackTune) + player->unk_20E)) * note->ins->pitchRatio; + if (voice->pitchRatio != note->pitchRatio) { + voice->pitchRatio = note->pitchRatio; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_PITCH; + } + } + } else if (track->changed.tune || (player->unk_20E != 0)) { + + note->pitchRatio = au_compute_pitch_ratio((note->adjustedPitch + track->segTrackTune) + player->unk_20E) * note->ins->pitchRatio; + if (voice->pitchRatio != note->pitchRatio) { + voice->pitchRatio = note->pitchRatio; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_PITCH; + } + } + if (track->changed.volume) { + s32 tempVolume = ((player->masterVolume >> 0x15) * (track->subTrackVolume >> 0x15) * (track->unkVolume >> 0x15)) >> 0x14; + note->volume = (tempVolume * (track->segTrackVolume * note->noteVelocity)) >> 9; + voice->adjustedVolume = note->volume; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_VOL_CHANGED; + voice->pan = track->subTrackPan; + voice->reverbAmt = track->subTrackReverb; + } else if (track->changed.pan || track->changed.reverb) { + voice->pan = track->subTrackPan; + voice->reverbAmt = track->subTrackReverb; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_10; + } + } + } + note->unk_note_17 = 0; + } + } + } + } + } + + if (bFinished) { + player->masterState = BGM_PLAY_STATE_NEXT_SUBSEG; + } +} + +static const f32 padding[] = {0.0f}; // at least after func_8004E4B8 + +void au_BGMCmd_E0_MasterTempo(BGMPlayer* player, BGMPlayerTrack* track) { + u32 bpm = player->seqCmdArgs.MasterTempo.value; + s32 tempo; + + player->masterTempoBPM = bpm; + tempo = snd_bpm_to_tempo(player, bpm); + player->masterTempo = tempo; + player->nextUpdateStep = tempo * 10; + player->masterTempoTime = 0; + player->masterTempoTarget = 0; + player->masterTempoStep = 0; +} + +static s32 snd_bpm_to_tempo(BGMPlayer* player, u32 tempo) { + u32 maxTempo = player->maxTempo; + u32 ret = tempo; + + ret *= player->unk_D0; + + if (maxTempo < ret) { + ret = maxTempo; + } else if (ret == 0) { + ret = 1; + } + + return ret * 100; +} + +void au_BGMCmd_E1_MasterVolume(BGMPlayer* player, BGMPlayerTrack* track) { + s32 volume = player->seqCmdArgs.MasterVolume.value & 0x7F; + + if (volume != 0) { + volume = volume << 0x18; + } + + player->masterVolume = volume; + player->masterVolumeTime = 0; + player->masterVolumeTarget = 0; + player->masterVolumeStep = 0; + player->volumeChanged = TRUE; + track->changed.volume = TRUE; +} + +void au_BGMCmd_E2_MasterPitchShift(BGMPlayer* player, BGMPlayerTrack* track) { + player->masterPitchShift = (s8)player->seqCmdArgs.MasterPitchShift.cent * 100; +} + +void au_BGMCmd_E3(BGMPlayer* player, BGMPlayerTrack* track) { + player->globals->effectChanges[player->defaultReverbType].type = player->seqCmdArgs.UnkCmdE3.bank; + player->globals->effectChanges[player->defaultReverbType].changed = TRUE; +} + +void au_BGMCmd_E6_MasterEffect(BGMPlayer* player, BGMPlayerTrack* track) { + u8 index = player->seqCmdArgs.MasterEffect.index; + u32 temp_v1 = player->effectIndices[index]; + + if ((index < 4) && (temp_v1 < 0x80)) { + if (player->globals->effectChanges[temp_v1].type != player->seqCmdArgs.MasterEffect.value) { + player->globals->effectChanges[temp_v1].type = player->seqCmdArgs.MasterEffect.value; + player->globals->effectChanges[temp_v1].changed = TRUE; + } + player->effectValues[index] = player->seqCmdArgs.MasterEffect.value; + } +} + +void au_BGMCmd_E4_MasterTempoFade(BGMPlayer* player, BGMPlayerTrack* track) { + s32 time = player->seqCmdArgs.MasterTempoFade.time; + s32 tempo = snd_bpm_to_tempo(player, player->seqCmdArgs.MasterTempoFade.value); + + if (time <= 0) { + time = 1; + } + + player->masterTempoTime = time; + player->masterTempoTarget = tempo; + player->masterTempoStep = (tempo - player->masterTempo) / time; +} + +void au_BGMCmd_E5_MasterVolumeFade(BGMPlayer* player, BGMPlayerTrack* track) { + s32 time = player->seqCmdArgs.MasterVolumeFade.time; + s32 volume = player->seqCmdArgs.MasterVolumeFade.value & 0x7F; + + if (volume != 0) { + volume = volume << 0x18; + } + + if (time <= 0) { + time = 1; + } + + player->masterVolumeTime = time; + player->masterVolumeTarget = volume; + player->masterVolumeStep = (volume - player->masterVolume) / time; +} + +void au_BGMCmd_E8_TrackOverridePatch(BGMPlayer* player, BGMPlayerTrack* track) { + track->patch = player->seqCmdArgs.TrackOverridePatch.patch; + track->instrument = au_get_instrument(player->globals, player->seqCmdArgs.TrackOverridePatch.bank, track->patch, &track->unk_10); +} + +void au_BGMCmd_E9_SubTrackVolume(BGMPlayer* arg0, BGMPlayerTrack* track) { + u32 volume = arg0->seqCmdArgs.SubTrackVolume.value & 0x7F; + + if (volume != 0) { + volume = volume << 0x18; + } + + track->subTrackVolume = volume; + track->changed.volume = TRUE; +} + +void au_BGMCmd_F6_TrackVolumeFade(BGMPlayer* player, BGMPlayerTrack* track) { + s32 time = player->seqCmdArgs.TrackVolumeFade.time; + s32 volume = player->seqCmdArgs.TrackVolumeFade.value & 0x7F; + + if (volume != 0) { + volume = volume << 0x18; + } + + if (volume != track->subTrackVolume) { + if (time <= 0) { + time = 1; + } + + track->subTrackVolumeTime = time; + track->subTrackVolumeTarget = volume; + track->subTrackVolumeStep = (volume - track->subTrackVolume) / time; + } +} + +void au_BGMCmd_EA_SubTrackPan(BGMPlayer* player, BGMPlayerTrack* track) { + track->subTrackPan = player->seqCmdArgs.SubTrackPan.value & 0x7F; + track->unk_57 = 0; + track->changed.pan = TRUE; +} + +void au_BGMCmd_EB_SubTrackReverb(BGMPlayer* player, BGMPlayerTrack* track) { + track->subTrackReverb = player->seqCmdArgs.SubTrackReverb.value & 0x7F; + track->changed.reverb = TRUE; +} + +void au_BGMCmd_EC_SegTrackVolume(BGMPlayer* player, BGMPlayerTrack* track) { + track->segTrackVolume = player->seqCmdArgs.SegTrackVolume.value & 0x7F; + track->changed.volume = TRUE; +} + +void au_BGMCmd_ED_SubTrackCoarseTune(BGMPlayer* player, BGMPlayerTrack* track) { + track->subTrackCoarseTune = (s8)player->seqCmdArgs.SubTrackCoarseTune.cent * 100; +} + +void au_BGMCmd_EE_SubTrackFineTune(BGMPlayer* player, BGMPlayerTrack* track) { + track->subTrackFineTune = player->seqCmdArgs.SubTrackFineTune.value; +} + +void au_BGMCmd_EF_SegTrackTune(BGMPlayer* player, BGMPlayerTrack* track) { + track->segTrackTune = player->seqCmdArgs.SegTrackTune.value; + track->changed.tune = TRUE; +} + +void au_BGMCmd_F0_TrackTremolo(BGMPlayer* player, BGMPlayerTrack* track) { + track->trackTremoloAmount = player->seqCmdArgs.TrackTremolo.amount; + track->trackTremoloSpeed = player->seqCmdArgs.TrackTremolo.speed; + track->trackTremoloTime = player->seqCmdArgs.TrackTremolo.time; +} + +void au_BGMCmd_F1_TrackTremoloSpeed(BGMPlayer* player, BGMPlayerTrack* track) { + track->trackTremoloSpeed = player->seqCmdArgs.TrackTremoloSpeed.value; +} + +void au_BGMCmd_F2_TrackTremoloTime(BGMPlayer* player, BGMPlayerTrack* track) { + track->trackTremoloTime = player->seqCmdArgs.TrackTremoloTime.time; +} + +void au_BGMCmd_F3_TrackTremoloStop(BGMPlayer* player, BGMPlayerTrack* track) { + track->trackTremoloTime = 0; +} + +void au_BGMCmd_F4(BGMPlayer* player, BGMPlayerTrack* track) { + track->subTrackPan = player->seqCmdArgs.UnkCmdF4.pan0 & 0x7F; + track->unk_57 = player->seqCmdArgs.UnkCmdF4.pan1 & 0x7F; +} + +void au_BGMCmd_F5_TrackVoice(BGMPlayer* player, BGMPlayerTrack* track) { + BGMInstrumentInfo* instrument; + s32 volume; + u32 voiceIndex; + u32 patch; + u32 bank; + + voiceIndex = player->seqCmdArgs.SetTrackVoice.index; + if (voiceIndex < 0x80) { + if (voiceIndex < player->bgmInstrumentCount) { + instrument = &player->instrumentsInfo[voiceIndex]; + } else { + instrument = &player->globals->defaultPRGEntry; + } + } else { + voiceIndex -= 0x80; + if (voiceIndex < 0x40) { + instrument = &player->globals->dataPRG[voiceIndex]; + } else { + instrument = &player->globals->defaultPRGEntry; + } + } + bank = instrument->bankPatch >> 8; + patch = (u8)instrument->bankPatch; + volume = instrument->volume & 0x7F; + track->patch = patch; + track->instrument = au_get_instrument(player->globals, bank, patch, &track->unk_10); + if (volume != 0) { + volume <<= 0x18; + } + track->subTrackVolume = volume; + track->subTrackPan = instrument->pan & 0x7F; + track->subTrackReverb = instrument->reverb & 0x7F; + track->subTrackCoarseTune = instrument->coarseTune * 100; + track->subTrackFineTune = instrument->fineTune; + track->changed.all |= 0x10101; +} + +void au_BGMCmd_F7_SubTrackReverbType(BGMPlayer* player, BGMPlayerTrack* track) { + u8 index = player->seqCmdArgs.SubTrackReverbType.index; + s8 type = player->effectIndices[index]; + + if ((index < 4) && (type >= 0)) { + track->subtrackReverbType = type; + } else { + track->subtrackReverbType = player->defaultReverbType; + } +} + +void au_BGMCmd_FD_EventTrigger(BGMPlayer* player, BGMPlayerTrack* track) { + bgm_trigger_music_event(player->priority, track->index, player->seqCmdArgs.EventTrigger.eventInfo >> 8); +} + +// jump to another part of the track and return after a specified read length +void au_BGMCmd_FE_Detour(BGMPlayer* player, BGMPlayerTrack* track) { + AuFilePos readPos = AU_FILE_RELATIVE(player->bgmFile, player->seqCmdArgs.Detour.offset); + + track->detourLength = player->seqCmdArgs.Detour.length; + track->savedPos = track->bgmReadPos; + track->bgmReadPos = readPos; +} + +// jump to another part of the track, switched by player->proxMixID +void au_BGMCmd_FC_Jump(BGMPlayer* player, BGMPlayerTrack* track) { + AuFilePos args; + u32 i; + + // get jump table + args = AU_FILE_RELATIVE(player->bgmFile, player->seqCmdArgs.Jump.unk_00); + if (player->proxMixID < player->seqCmdArgs.Jump.unk_02) { + args += player->proxMixID * 3; + } + // read new position from jump table + track->prevReadPos = track->bgmReadPos; + track->bgmReadPos = AU_FILE_RELATIVE(player->bgmFile, (args[0] << 8) + args[1]); + track->isDrumTrack = args[2]; + + if (track->unk_4D != 0) { + track->unk_4D = 0; + track->unkVolume = 0; + for (i = track->unk_52; i < track->unk_53; i++) { + AlUnkVoice* voice = &player->globals->voices[i]; + if ((voice->priority == player->priority) && (voice->unk_1C != NULL)) { + au_reset_voice(voice, i); + } + } + } + if (track->unk_4E != 0) { + track->unk_4E = 0; + func_80050888(player, track, player->proxMixVolume, 144); + } + track->subTrackCoarseTune = 0; + track->subTrackFineTune = 0; + track->unk_4C = 0; + track->segTrackTune = 0; + track->trackTremoloTime = 0; + track->subTrackVolumeTime = 0; + track->unk_57 = 0; + track->subtrackReverbType = player->defaultReverbType; +} + +void au_BGMCmd_FF(BGMPlayer* player, BGMPlayerTrack* track) { + u32 i; + u32 j; + u8 temp_a1; + u8 temp_a3; + + u32 arg0 = player->seqCmdArgs.UnkCmdFF.unk_00; + u32 arg1 = player->seqCmdArgs.UnkCmdFF.unk_01; + u32 arg2 = player->seqCmdArgs.UnkCmdFF.unk_02; + + switch (arg0) { + case 1: + if ((arg1 < ARRAY_COUNT(player->effectIndices)) && ((s8)player->effectIndices[arg1] >= 0)) { + player->globals->unk_51 = player->effectIndices[arg1]; + if (arg2 != 0) { + temp_a3 = arg2 & 0xF; + temp_a1 = ((arg2 >> 4) & 1) + 1; + if ((player->globals->unk_52 != temp_a3) || (player->globals->unk_53 != temp_a1)) { + player->globals->unk_52 = temp_a3; + player->globals->unk_53 = temp_a1; + player->globals->unk_50 = 1; + } + } else { + if (player->globals->unk_53 != 0) { + player->globals->unk_53 = 0; + player->globals->unk_50 = 1; + } + } + } + break; + case 2: + if (arg1 - 1 < 8) { + player->unk_211 = arg1; + func_8004E844(player, arg1 - 1); + } else { + player->unk_211 = 0; + } + break; + case 3: + i = player->unk_211; + if (i - 1 < 8) { + i = i - 1; // needed to match + j = player->unk_212[i]; + if (j < 8) { + if (arg1 >= 40) { + player->unk_174[i][j] = (arg1 << 8) + arg2; + } else { + player->unk_174[i][j] = (D_80078558[arg1] << 8) + arg2; + } + player->unk_212[i] = j + 1; + } + } + break; + case 4: + if (arg1 < 9) { + track->unk_4C = arg1; + } else { + track->unk_4C = 0; + } + break; + case 5: + if (player->soundManager != NULL) { + for (i = 0; i < ARRAY_COUNT(player->soundManager->unk_90); i++) { + if ((player->soundManager->unk_90[i].unk_0) == 0) { + player->soundManager->unk_90[i].unk_0 = arg1; + player->soundManager->unk_90[i].volume = ((player->fadeInfo.currentVolume.u16 * player->fadeInfo.volScale.u16) + 0x7FFF) >> 0x17; + break; + } + } + } + break; + case 6: + if (arg1 == 0) { + if (track->unk_4E != 0) { + track->unk_4E = 0; + for (i = 0; i < 16; i++) { + BGMPlayerTrack* otherTrack = &player->tracks[i]; + if (player->proxMixVolume == 0x7F) { + if (otherTrack->unk_4F != 0) { + otherTrack->unk_4E = 0; + func_80050888(player, otherTrack, otherTrack->unk_4F, 72); + } + } else { + if (otherTrack->unk_50 != 0) { + otherTrack->unk_4E = 0; + func_80050888(player, otherTrack, otherTrack->unk_50, 72); + } + } + } + } + } else { + track->unk_4F = arg1; + track->unk_50 = arg2; + } + break; + } +} + +void au_BGMCmd_NOP(BGMPlayer* player, BGMPlayerTrack* track) { +} + +/* +Uses bit masks: +3F00 = 0011 1111 0000 0000 -> 0011 1111 +000C = 0000 0000 0000 1100 -> 1100 0000 +*/ +static u8 au_bgm_get_random_pan(BGMPlayer* player, u8 pan, u8 amplitude) { + s32 seed = player->randomValue1; + s32 tap7 = seed >> 7; + s32 tap2 = seed >> 2; + s32 parity = (tap7 + tap2) & 1; + s32 lo = (seed >> 8) & 0x3F; // bitmask 0x3F00 + s32 hi = (seed << 4) & 0xC0; // bitmask 0x000C + s32 random = lo + hi; + s32 base = pan; + s32 retPan; + + if (parity) { + retPan = base + ((amplitude * random) >> 8); + } else { + retPan = base - ((amplitude * random) >> 8); + } + if (retPan < 0) { + retPan = 0; + } else if (retPan >= 0x80) { + retPan = 0x7F; + } + return retPan; +} + +/* +Uses bit masks: +3C0 = 0000 0011 1100 0000 -> 0001 1111 +03C = 0000 0000 0011 1100 -> 1110 0000 +*/ +static s16 au_bgm_get_random_pitch(s32 seed, s32 pitch, u8 amplitude) { + s32 tap4 = seed >> 4; + s32 tap1 = seed >> 1; + s32 parity = (tap4 + tap1) & 1; + s32 lo = (seed >> 6) & 0xF; // bitmask 0x3C0 + s32 hi = (seed << 2) & 0xF0; // bitmask 0x03C + s32 random = lo + hi; + s32 retVal; + + if (parity) { + retVal = pitch + ((amplitude * 5 * random) >> 8); + } else { + retVal = pitch - ((amplitude * 5 * random) >> 8); + } + return retVal; +} + +/* +Uses bit masks: +1F00 = 0001 1111 0000 0000 -> 0001 1111 +00E0 = 0000 0000 1110 0000 -> 1110 0000 +*/ +static u8 au_bgm_get_random_vol(s32 seed, u8 volume, u8 amplitude) { + s32 lo = (seed >> 8) & 0x1F; // bitmask 0x1F00 + s32 hi = seed & 0xE0; + s32 random = lo + hi; + + return volume * (0x8000 - amplitude * random); +} + +/* +Uses bit masks: +0380 = 0000 0011 1000 0000 -> 0000 0111 +001F = 0000 0000 0001 1111 -> 1111 1000 +*/ +static u8 au_bgm_get_random_reverb(s32 seed, u8 reverb, u8 amplitude) { + s32 lo = (seed >> 7) & 7; // bitmask 0x380 + s32 hi = (seed << 3) & 0xF8; // bitmask 0x01F + s32 random = lo + hi; + + return reverb * (0x8000 - (amplitude * random)); +} + +void au_bgm_set_proximity_mix(s32 songName, u32 mix) { + BGMPlayer* player; + BGMPlayerTrack* track; + s32 changed = FALSE; + u8 mixID = mix & 0xFF; + s32 i; + + if (songName != 0) { + player = au_bgm_get_player_with_song_name(songName); + if ((player != NULL) && (player->proxMixValue != mix)) { + player->proxMixValue = mix; + if (player->proxMixID != mixID) { + player->proxMixID = mixID; + changed = TRUE; + } + player->proxMixVolume = (mix >> 0x18) & 0x7F; + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + track = &player->tracks[i]; + if (changed) { + track->unk_4D = 1; + } + track->unk_4E = 1; + } + } + } +} + +void func_80050770(BGMPlayer* player, f32 arg1) { + if (arg1 > 2.0) { + arg1 = 2.0f; + } else if (arg1 < 0.25) { + arg1 = 0.25f; + } + + player->unk_D0 = arg1; + player->masterTempo = snd_bpm_to_tempo(player, player->masterTempoBPM); + player->nextUpdateStep = player->masterTempo * 10; + player->masterTempoTime = 0; + player->masterTempoTarget = 0; + player->masterTempoStep = 0; +} + +void func_80050818(BGMPlayer* player, s32 arg1) { + if (arg1 > 1200) { + arg1 = 1200; + } else if (arg1 < -2400) { + arg1 = -2400; + } + + player->unk_20E = arg1; +} + +void au_bgm_change_track_volume(BGMPlayer* player, s32 trackIdx, s16 time, u8 volume) { + BGMPlayerTrack* track = &player->tracks[trackIdx]; + + if (track->bgmReadPos != 0) { + player->seqCmdArgs.TrackVolumeFade.time = time; + player->seqCmdArgs.TrackVolumeFade.value = volume; + au_BGMCmd_F6_TrackVolumeFade(player, track); + } +} + +void au_bgm_set_track_volumes(BGMPlayer* player, u8* trackVols, s32 mode) { + player->trackVolsConfig = trackVols; + player->bFadeConfigSetsVolume = mode; +} + +void func_80050888(BGMPlayer* player, BGMPlayerTrack* track, s32 target, s32 duration) { + if (target != 0) { + target = (target << 8) | 0xFF; + } + if (duration <= 0) { + duration = 1; + } else if (duration > 1000) { + duration = 1000; + } + if (target == track->unkVolume) { + track->unkVolumeTime = 0; + return; + } + track->unkVolumeTime = duration; + track->unkVolumeTarget = target; + track->unkVolumeStep = ((target << 0x10) - track->unkVolume) / duration; +} + +void func_80050900(BGMPlayer* player) { + u8 i; + + for (i = 0; i < ARRAY_COUNT(player->globals->voices); i++) { + AlUnkVoice* voice = &player->globals->voices[i]; + if (voice->priority == player->priority) { + au_reset_voice(voice, i); + } + } +} + +AuResult func_80050970(SongUpdateEvent* update) { + BGMPlayer* player; + BGMPlayerTrack* track; + BGMPlayerTrack* parentTrack; + AlUnkVoice* voice; + s32 i; + s32 j; + s8 oldVolume; + + s32 songName = update->songName; + s32 variation = update->variation; + AuResult status = AU_RESULT_OK; + + if (songName != 0) { + player = au_bgm_get_player_with_song_name(songName); + if (player != NULL) { + for (i = 0; i < ARRAY_COUNT(player->tracks); i++) { + track = &player->tracks[i]; + if (track->bgmReadPos != NULL) { + if (track->parentTrackIdx != 0) { + parentTrack = &player->tracks[track->parentTrackIdx - 1]; + if (variation != 0) { + if (track->unk_5A != 0) { + track->unk_5A = 0; + parentTrack->unk_5A = 1; + for (j = parentTrack->unk_52; j < parentTrack->unk_53; j++) { + voice = &player->globals->voices[j]; + if (voice->priority == player->priority) { + voice->unk_14.unk_04 = &D_80078554; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_10; + } + } + oldVolume = track->subTrackVolume >> 24; + au_BGMCmd_E9_SubTrackVolume(player, track); + player->seqCmdArgs.raw[0] = 0; + player->seqCmdArgs.TrackVolumeFade.time = 96; + player->seqCmdArgs.TrackVolumeFade.value = oldVolume; + au_BGMCmd_F6_TrackVolumeFade(player, track); + } + } else { + if (track->unk_5A == 0) { + track->unk_5A = 1; + parentTrack->unk_5A = 0; + for (j = track->unk_52; j < track->unk_53; j++) { + voice = &player->globals->voices[j]; + if (voice->priority == player->priority) { + voice->unk_14.unk_04 = &D_80078554; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_10; + } + } + oldVolume = parentTrack->subTrackVolume >> 24; + au_BGMCmd_E9_SubTrackVolume(player, parentTrack); + player->seqCmdArgs.raw[0] = 0; + player->seqCmdArgs.TrackVolumeFade.time = 96; + player->seqCmdArgs.TrackVolumeFade.value = oldVolume; + au_BGMCmd_F6_TrackVolumeFade(player, parentTrack); + } + } + } + } + } + } else { + status = AU_ERROR_SONG_NOT_PLAYING; + } + } else { + status = AU_ERROR_NULL_SONG_NAME; + } + + return status; +} diff --git a/src/audio/2BF90.c b/src/audio/2BF90.c new file mode 100644 index 0000000000..dadb4af97c --- /dev/null +++ b/src/audio/2BF90.c @@ -0,0 +1,419 @@ +#include "audio.h" + +extern s8 BlankMseqData; + +enum LambdaState24 { + LAMBDA_24_0 = 0, + LAMBDA_24_1 = 1, + LAMBDA_24_2 = 2, + LAMBDA_24_3 = 3 +}; + +enum MseqPlayState { + MSEQ_PLAYER_PLAYING = 0, + MSEQ_PLAYER_STOPPED = 1, + MSEQ_PLAYER_STOPPING = 2 +}; + +void au_mseq_manager_init(AuAmbienceManager* manager, s8 priority, s8 reverbType, AuGlobals* globals) { + AuAmbPlayer* lambda; + s32 i; + + au_memset(manager, sizeof(*manager), 0); + + for (i = 0; i < ARRAY_COUNT(manager->mseqPlayers); i++) { + lambda = &manager->mseqPlayers[i]; + lambda->unk_14.u8[0] = i; + lambda->unk_18 = 1; + lambda->unk_38 = 0x7F000000; + } + + manager->globals = globals; + manager->nextUpdateStep = 1; + manager->nextUpdateCounter = 2; + manager->nextUpdateInterval = 2; + manager->priority = priority; + manager->defaultReverbType = reverbType; +} + +AuResult func_80050C30(u32 arg0) { + if (gAuAmbienceManager->unk_20 <= arg0) { + return AU_AMBIENCE_ERROR_3; + } else { + return AU_RESULT_OK; + } +} + +void func_80050C54(s32 arg0, s32 arg1) { + gAuAmbienceManager->unk_21 = arg1; +} + +void au_mseq_set_disabled(s32 index, s32 disable) { + AuAmbienceManager* manager = gAuAmbienceManager; + AuAmbPlayer* ambPlayer = &manager->mseqPlayers[index]; + + if (!disable) { + ambPlayer->playState = MSEQ_PLAYER_PLAYING; + } else { + ambPlayer->playState = MSEQ_PLAYER_STOPPING; + } +} + +AuResult func_80050CA0(s32 index, s32 time) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + MSEQHeader* mseq = gAuAmbienceManager->mseqFiles[index]; + AuResult status = AU_RESULT_OK; + + if (mseq != NULL) { + if (lambda->mseqName == 0) { + func_800510A4(gAuAmbienceManager, mseq, index); + if (time != 0) { + lambda->time = time; + lambda->unk_2A = 0; + lambda->volume = 0x7F; + lambda->unk_26 = 0; + func_80050D50(lambda); + } + } else { + status = AU_AMBIENCE_ERROR_1; + } + } else { + status = AU_AMBIENCE_ERROR_2; + } + return status; +} + +void func_80050D50(AuAmbPlayer* lambda) { + u16 time = lambda->time; + + if (lambda->unk_2A == 0xFF) { + lambda->unk_2A = lambda->unk_38 >> 0x18; + } + + if (time >= SND_MIN_DURATION && time <= SND_MAX_DURATION) { + lambda->unk_38 = lambda->unk_2A << 0x18; + lambda->unk_42 = lambda->volume; + lambda->volInterpTime = (u32)(time * 10) / 115; + lambda->volInterpStep = ((lambda->volume - lambda->unk_2A) << 0x18) / ((s16)lambda->volInterpTime & 0xFFFF); + } + + lambda->time = 0; + lambda->unk_2A = 0; + lambda->volume = 0; +} + +void func_80050EF0_fade_out_unk(s32 index, s32 time) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + + if ((lambda->mseqReadStart != NULL) && (lambda->mseqReadPos != NULL)) { + if (time != 0) { + lambda->unk_2A = 0xFF; + lambda->time = time; + lambda->volume = 0; + lambda->unk_26 = 2; + return; + } + lambda->unk_24 = LAMBDA_24_3; + } +} + +void func_80050EF0_fade_in_unk(s32 index, s32 time) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + + if ((lambda->mseqReadStart != NULL) && (lambda->mseqReadPos != NULL)) { + lambda->unk_24 = LAMBDA_24_1; + if (time != 0) { + lambda->time = time; + } else { + lambda->time = SND_MIN_DURATION; + } + lambda->unk_2A = 0; + lambda->volume = SND_MAX_VOLUME_8; + lambda->unk_26 = 0; + } +} + +void func_80050EF0_fade_out_quick(s32 index) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + + if ((lambda->mseqReadStart != NULL) && (lambda->mseqReadPos != NULL)) { + if (lambda->unk_24 != LAMBDA_24_0) { + lambda->mseqReadPos = NULL; + lambda->mseqName = 0; + lambda->unk_24 = LAMBDA_24_0; + return; + } + lambda->mseqReadPos = &BlankMseqData; + lambda->unk_18 = 1; + } +} + +void func_80050EF0_fade_out_slow(s32 index, s32 time) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + + if ((lambda->mseqReadStart != NULL) && (lambda->mseqReadPos != NULL)) { + if (time != 0) { + lambda->time = time; + } else { + lambda->time = SND_MIN_DURATION; + } + lambda->unk_2A = -1; + lambda->volume = 0; + lambda->unk_26 = 1; + } +} + +void au_mseq_set_volume(s32 index, s32 time, s32 volume) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[index]; + if ((lambda->mseqReadStart != 0) && (lambda->mseqReadPos != 0)) { + if (volume <= 0) { + volume = 1; + } else if (volume > SND_MAX_VOLUME_8) { + volume = SND_MAX_VOLUME_8; + } + if (time != 0) { + lambda->time = time; + } else { + lambda->time = SND_MIN_DURATION; + } + lambda->unk_2A = -1; + lambda->volume = volume; + lambda->unk_26 = 0; + } +} + +AuResult func_80051050(s32 arg0) { + AuAmbPlayer* lambda = &gAuAmbienceManager->mseqPlayers[arg0]; + AuResult status = AU_RESULT_OK; + + if ((lambda->mseqReadStart != NULL) && (lambda->mseqReadPos != NULL)) { + status = AU_AMBIENCE_ERROR_1; + if (lambda->unk_24 != LAMBDA_24_0) { + status = AU_AMBIENCE_ERROR_2; + } + } + return status; +} + +void func_800510A4(AuAmbienceManager* manager, MSEQHeader* mseqFile, s32 index) { + AuAmbPlayer* lambda; + AlUnkXi* xi; + AuFilePos readPos; + s32 i; + + lambda = &manager->mseqPlayers[index]; + au_memset(lambda, sizeof(*lambda), 0); + + lambda->mseqFile = mseqFile; + readPos = AU_FILE_RELATIVE(mseqFile->dataStart, mseqFile); + lambda->unk_14.u8[0] = index; + lambda->mseqReadPos = readPos; + lambda->unk_10 = readPos; + lambda->unk_0C = readPos; + lambda->mseqReadStart = readPos; + + lambda->unk_18 = 1; + lambda->unk_38 = 0x7F000000; + lambda->unk_42 = 0x7F; + + lambda->mseqName = lambda->mseqFile->name; + lambda->firstVoiceIdx = lambda->mseqFile->first_iota; + lambda->lastVoiceIdx = lambda->firstVoiceIdx + 16; + if (lambda->lastVoiceIdx > 24) { + lambda->lastVoiceIdx = 24; + } + for (i = 0; i < 10; i++) { + xi = &lambda->unk_44[i]; + xi->instrument = manager->globals->defaultInstrument; + xi->unk_18.full = 0x7FFFFFFF; + xi->pan = 0x40; + } + lambda->unk_43 = 1; +} + +void snd_ambient_manager_update(AuAmbienceManager* manager) { + u32 i; + s32 j; + + for (i = 0; i < ARRAY_COUNT(manager->mseqVoiceStates); i++) { + AlUnkIota* temp = &manager->mseqVoiceStates[i]; + + if ((temp->unk_00.u8[3] == 1) && (manager->globals->voices[i].priority != manager->priority)) { + temp->unk_00.s32 = 0; + } + } + + for (j = 0; j < ARRAY_COUNT(manager->mseqPlayers); j++) { + AuAmbPlayer* lambda = &manager->mseqPlayers[j]; + s32 var; + + if (lambda->mseqReadPos != NULL) { + if (manager->unk_21) { + // not usually taken + func_80051334(manager, lambda); + } + + var = lambda->unk_24; + if (var != LAMBDA_24_0) { + if (var == LAMBDA_24_3) { + lambda->unk_24 = LAMBDA_24_2; + func_800522A8(manager, lambda); + au_mseq_player_stop(manager, lambda); + } else if (lambda->unk_24 == LAMBDA_24_1) { + lambda->unk_24 = LAMBDA_24_0; + if (lambda->time != 0) { + func_80050D50(lambda); + } + func_8005232C(manager, lambda); + } + } else { + if (lambda->time != 0) { + func_80050D50(lambda); + } + if (lambda->playState == MSEQ_PLAYER_STOPPING) { + au_mseq_player_stop(manager, lambda); + lambda->playState = MSEQ_PLAYER_STOPPED; + } + func_80051434(manager, lambda); + } + } + } + + manager->unk_21 = FALSE; +} + +void func_80051334(AuAmbienceManager* manager, AuAmbPlayer* lambda) { + MSEQHeader* mseqFile; + AlUnkMSEQData* var_a0; + AlUnkXi* xi; + s32 offset; + s32 count; + s32 lim; + + mseqFile = lambda->mseqFile; + count = mseqFile->unkCount; + if (count != 0 && mseqFile->unkOffset != 0) { + var_a0 = AU_FILE_RELATIVE(mseqFile->unkOffset, mseqFile); + while (count--) { + xi = &lambda->unk_44[var_a0->unk_00]; + if (var_a0->unk_01 == 0) { + xi->unk_14 = var_a0->unk_02; + xi->unk_10 = (var_a0->unk_04 << 0x10) / var_a0->unk_02; + xi->unk_16 = var_a0->unk_06; + } else if (var_a0->unk_01 == 1) { + xi->unk_20 = var_a0->unk_02; + xi->unk_1C = (var_a0->unk_04 << 0x10) / var_a0->unk_02; + xi->unk_22 = var_a0->unk_06; + } + var_a0++; + } + } +} + +INCLUDE_ASM(void, "audio/2BF90", func_80051434, AuAmbienceManager* arg0, AuAmbPlayer* arg1); + +// could return u8? +s32 au_mseq_read_next(AuAmbPlayer* state) { + u8 value = *state->mseqReadPos++; + return value; +} + +void au_mseq_player_stop(AuAmbienceManager* manager, AuAmbPlayer* lambda) { + AlUnkVoice* voice; + Q32* temp_s1; + s32 i; + + for (i = lambda->firstVoiceIdx; i < lambda->lastVoiceIdx; i++) { + temp_s1 = &manager->mseqVoiceStates[i - lambda->firstVoiceIdx].unk_00; + if (*temp_s1->u8 == lambda->unk_14.u8[0]) { + voice = &manager->globals->voices[i]; + if (voice->priority == manager->priority) { + au_reset_voice(voice, i); + } + temp_s1->s32 = 0; + } + } +} + +void func_800522A8(AuAmbienceManager* arg0, AuAmbPlayer* lambda) { + AlUnkOmega* omega = lambda->unk_1D4; + u32 copied = 0; + s32 i; + + for (i = lambda->firstVoiceIdx; i < lambda->lastVoiceIdx; i++) { + AlUnkIota* iota = &arg0->mseqVoiceStates[i - lambda->firstVoiceIdx]; + + if (iota->unk_07 == 0) { + continue; + } + + omega->unk_00 = iota->unk_00.u8[1]; + omega->unk_01 = iota->unk_00.u8[2]; + omega->unk_02 = iota->volume; + + omega++; + copied++; + if (copied >= 4) { + break; + } + } +} + +void func_8005232C(AuAmbienceManager* manager, AuAmbPlayer* lambda) { + AuGlobals* globals; + AlUnkVoice* voice; + AlUnkOmega* omega; + AlUnkIota* iota; + AlUnkXi* xi; + u32 i, j; + + globals = manager->globals; + if (lambda->playState == MSEQ_PLAYER_PLAYING) { + for (i = 0; i < ARRAY_COUNT(lambda->unk_1D4); i++) { + omega = &lambda->unk_1D4[i]; + if (omega->unk_01 != 0) { + xi = &lambda->unk_44[omega->unk_00]; + + // find first free voice + for (j = lambda->firstVoiceIdx; j < lambda->lastVoiceIdx; j++) { + voice = &globals->voices[j]; + if (voice->priority == AU_PRIORITY_FREE) { + break; + } + } + + // try stealing a voice with lower priority + if (j >= lambda->lastVoiceIdx) { + for (j = lambda->firstVoiceIdx; j < lambda->lastVoiceIdx; j++) { + voice = &globals->voices[j]; + if (voice->priority < manager->priority) { + au_reset_voice(voice, j); + break; + } + } + } + + if (j < lambda->lastVoiceIdx) { + iota = &manager->mseqVoiceStates[j - lambda->firstVoiceIdx]; + iota->unk_00.s32 = lambda->unk_14.s32 + (omega->unk_00 << 0x10) + (omega->unk_01 << 8); + iota->pitch = ((omega->unk_01 & 0x7F) * 100) - xi->instrument->keyBase; + iota->volume = omega->unk_02 & 0x7F; + voice->adjustedVolume = ((lambda->unk_38 >> 0x18) * xi->unk_18.half * iota->volume) >> 0xE; + voice->pitchRatio = au_compute_pitch_ratio(iota->pitch + xi->pitch) * xi->instrument->pitchRatio; + voice->pan = xi->pan; + voice->reverbAmt = xi->reverb; + voice->instrument = xi->instrument; + voice->reverbType = manager->defaultReverbType; + voice->unk_14.unk_00 = xi->unk_04.unk_00; + voice->unk_14.unk_04 = xi->unk_04.unk_04; + voice->unk_flags_43 = AU_VOICE_SYNC_FLAGS_ALL; + voice->priority = manager->priority; + voice->priorityCopy = voice->priority; + } + } + omega->unk_00 = 0; + omega->unk_01 = 0; + omega->unk_02 = 0; + } + } +} diff --git a/src/audio/2d9a0_len_890.c b/src/audio/2d9a0_len_890.c new file mode 100644 index 0000000000..840e97f97f --- /dev/null +++ b/src/audio/2d9a0_len_890.c @@ -0,0 +1,203 @@ +#include "common.h" +#include "audio.h" + +void func_800525A0(AuGlobals* globals) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(globals->voices); i++) { + AlUnkVoice* voice = &globals->voices[i]; + + if (voice->unk_42 != 0) { + au_pvoice_reset_filter(i); + voice->unk_42 = 0; + voice->unk_1C = NULL; + voice->priority = AU_PRIORITY_FREE; + } + } +} + +void func_80052614(AuGlobals* globals) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(globals->voices); i++) { + AlUnkVoice* temp = &globals->voices[i]; + + temp->unk_1C = NULL; + temp->unk_20 = 0; + temp->unk_24 = 0; + temp->unk_28 = 0; + temp->unk_3B = 0; + temp->unk_3C = 0; + temp->unk_flags_3D = 0; + temp->unk_3E = 0; + temp->unk_3F = 0x80; + } +} + +void func_80052660(AuGlobals* globals) { + AlUnkVoice* voice; + s8 var_a0; + s16 unkTemp; + s32 i; + + for (i = 0; i < ARRAY_COUNT(globals->voices); i++) { + voice = &globals->voices[i]; + if (voice->unk_1C == NULL) { + continue; + } + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE) { + func_80052B44(voice); + continue; + } + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_10) { + voice->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_10; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_1; + voice->unk_1C = (u8*)voice->unk_14.unk_04; + if (voice->unk_28 > AU_5750) { + voice->unk_39 = voice->unk_39 + (s32) (voice->unk_2C * (f32) (voice->unk_24 - voice->unk_28)); + } else { + voice->unk_39 = voice->unk_3A; + } + + voice->unk_3B = *voice->unk_1C++; + var_a0 = *voice->unk_1C; + if (*(s8*)voice->unk_1C++ < 0) { + var_a0 &= 0x7F; + voice->unk_3E = 1; + voice->unk_3F = voice->unk_39; + } + voice->unk_3A = var_a0; + + voice->unk_28 = D_800785A0[voice->unk_3B]; + voice->unk_24 = voice->unk_28; + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_VOL_CHANGED) { + voice->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_VOL_CHANGED; + if (voice->unk_28 > AU_5750) { + voice->unk_28 -= AU_5750; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE; + unkTemp = voice->unk_39 + (s32) (voice->unk_2C * (voice->unk_24 - voice->unk_28)); + } else { + unkTemp = voice->unk_3A; + } + voice->unk_08 = AUDIO_SAMPLES; + } else { + voice->unk_08 = func_80052BC0(voice->unk_24); + unkTemp = voice->unk_3A; + } + voice->volume = (((unkTemp * voice->adjustedVolume * voice->unk_3F) >> 0xE) * voice->unk_30) >> 7; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_4; + } else { + if (voice->unk_28 == -1) { + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_VOL_CHANGED) { + voice->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_VOL_CHANGED; + voice->volume = (((voice->unk_39 * voice->adjustedVolume * voice->unk_3F) >> 0xE) * voice->unk_30) >> 7; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_4; + } + } else { + voice->unk_28 -= AU_5750; + if (voice->unk_28 <= 0) { + if (*voice->unk_1C == 0xFF) { + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_1) { + voice->unk_flags_3D = 0; + voice->unk_1C = NULL; + voice->unk_42 = 1; + } else { + voice->unk_28 = -1; + voice->unk_24 = -1; + voice->unk_3B = 0x3B; + voice->unk_08 = AUDIO_SAMPLES; + voice->unk_2C = 0.0f; + voice->unk_39 = voice->unk_3A; + } + } else { + voice->unk_3B = func_80052CFC(voice); + voice->unk_39 = voice->unk_3A; + voice->unk_3A = (*voice->unk_1C++) & 0x7F; + voice->unk_28 = D_800785A0[voice->unk_3B]; + voice->unk_24 = voice->unk_28; + if (voice->unk_24 != 0) { + voice->unk_2C = ((f32) voice->unk_3A - (f32) voice->unk_39) / (f32) voice->unk_24; + } else { + voice->unk_2C = 0.0f; + } + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_VOL_CHANGED) { + voice->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_VOL_CHANGED; + if (voice->unk_28 > AU_5750) { + voice->unk_28 -= AU_5750; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE; + unkTemp = voice->unk_39 + (s32) (voice->unk_2C * (voice->unk_24 - voice->unk_28)); + } else { + unkTemp = voice->unk_3A; + } + voice->unk_08 = AUDIO_SAMPLES; + } else { + voice->unk_08 = func_80052BC0(voice->unk_24); + unkTemp = voice->unk_3A; + } + voice->volume = (((unkTemp * voice->adjustedVolume * voice->unk_3F) >> 0xE) * voice->unk_30) >> 7; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_4; + } + } else { + if (voice->unk_flags_3D & AU_VOICE_3D_FLAGS_VOL_CHANGED) { + voice->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_VOL_CHANGED; + if (voice->unk_28 > AU_5750) { + voice->unk_28 -= AU_5750; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE; + unkTemp = voice->unk_39 + (s32) (voice->unk_2C * (voice->unk_24 - voice->unk_28)); + } else { + unkTemp = voice->unk_3A; + } + voice->unk_08 = AUDIO_SAMPLES; + voice->volume = (((unkTemp * voice->adjustedVolume * voice->unk_3F) >> 0xE) * voice->unk_30) >> 7; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_4; + } + } + } + } + } +} + +void func_80052B44(AlUnkVoice* arg0) { + arg0->volume = (((arg0->unk_3A * arg0->adjustedVolume * arg0->unk_3F) >> 14) * arg0->unk_30) >> 7; + arg0->unk_08 = func_80052BC0(arg0->unk_28); + arg0->unk_flags_3D &= ~AU_VOICE_3D_FLAGS_HANDLED_VOL_CHANGE; + arg0->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_4; +} + +s32 func_80052BC0(s32 arg0) { + return (arg0 / AU_5750) * AUDIO_SAMPLES; +} + +void func_80052BF8(AlUnkVoice* voice, AlUnkInstrumentData* arg1) { + s32 x; + + voice->unk_14.unk_00 = arg1->unk_00; + voice->unk_1C = voice->unk_14.unk_00; + voice->unk_14.unk_04 = arg1->unk_04; + voice->unk_30 = 0x80; + voice->unk_34 = 0; + + x = func_80052CFC(voice); + voice->unk_flags_3D = 0; + voice->unk_39 = 0; + voice->unk_3A = *voice->unk_1C++; + voice->unk_3B = x; + voice->unk_24 = D_800785A0[x]; + voice->unk_28 = voice->unk_24; + + voice->volume = (voice->unk_3A * voice->adjustedVolume * voice->unk_30) >> 14; + voice->unk_08 = func_80052BC0(voice->unk_24); + if (voice->unk_24 != 0) { + voice->unk_2C = ((f32) voice->unk_3A - (f32) voice->unk_39) / voice->unk_24; + } else { + voice->unk_2C = 0.0f; + } + voice->unk_3E = 0; + voice->unk_3F = 0x80; +} + +INCLUDE_ASM(u8, "audio/2d9a0_len_890", func_80052CFC, AlUnkVoice* arg0); + +void func_80052E18(AlUnkVoice* arg0) { + arg0->unk_flags_3D |= AU_VOICE_3D_FLAGS_VOL_CHANGED; +} diff --git a/src/audio/2e230_len_2190.c b/src/audio/2e230_len_2190.c new file mode 100644 index 0000000000..94bec2a949 --- /dev/null +++ b/src/audio/2e230_len_2190.c @@ -0,0 +1,1185 @@ +#include "audio.h" + +// data +extern u16 D_80078530[9]; +extern s32 D_8007854C[2]; +extern f32 AlTuneScaling[]; + +void func_80052E30(u8 index) { + AlUnkVoice* voice = &gSoundGlobals->voices[index]; + + voice->unk_1C = NULL; + voice->priority = AU_PRIORITY_FREE; +} + +void au_engine_init(s32 outputRate) { + AuGlobals* globals; + ALHeap* alHeap; + SBNFileEntry fileEntry; + s32* dummyTrackData; + u8 effects[4]; + u32 i; + + alHeap = gSynDriverPtr->heap; + gSoundGlobals = alHeapAlloc(alHeap, 1, sizeof(*gSoundGlobals)); + + gBGMPlayerA = alHeapAlloc(alHeap, 1, sizeof(*gBGMPlayerA)); + gBGMPlayerB = alHeapAlloc(alHeap, 1, sizeof(*gBGMPlayerB)); + gBGMPlayerC = alHeapAlloc(alHeap, 1, sizeof(*gBGMPlayerC)); + gSoundManager = alHeapAlloc(alHeap, 1, sizeof(*gSoundManager)); + gAuAmbienceManager = alHeapAlloc(alHeap, 1, sizeof(*gAuAmbienceManager)); + gBGMPlayerA->soundManager = gSoundManager; + gAuAmbienceManager->globals = gSoundGlobals; + + + globals = gSoundGlobals; + dummyTrackData = alHeapAlloc(alHeap, 1, 0x8000); + globals->dataBGM[0] = (BGMHeader*) &dummyTrackData[0]; + globals->dataBGM[1] = (BGMHeader*) &dummyTrackData[0x1400]; + globals->dataMSEQ[0] = (MSEQHeader*) &dummyTrackData[0x1C00]; + globals->dataMSEQ[1] = (MSEQHeader*) &dummyTrackData[0x1400]; + + for (i = 0; i < 1; i++) { + globals->unk_globals_6C[i].bgmPlayer = alHeapAlloc(alHeap, 1, sizeof(BGMPlayer)); + } + + globals->dataSEF = alHeapAlloc(alHeap, 1, 0x5200); + globals->defaultInstrument = alHeapAlloc(alHeap, 1, sizeof(Instrument)); + globals->dataPER = alHeapAlloc(alHeap, 1, 6 * sizeof(PEREntry)); + globals->dataPRG = alHeapAlloc(alHeap, 1, 64 * sizeof(BGMInstrumentInfo)); + globals->musicEventQueue = alHeapAlloc(alHeap, 1, 16 * sizeof(MusicEventTrigger)); + globals->outputRate = outputRate; + au_reset_instrument(globals->defaultInstrument); + au_reset_drum_entry(&globals->defaultDrumEntry); + au_reset_instrument_entry(&globals->defaultPRGEntry); + bgm_clear_music_events(); + + globals->audioThreadCallbacks[0] = NULL; + globals->audioThreadCallbacks[1] = NULL; + + for (i = 0; i < 1; i++) { + globals->unk_globals_6C[i].unk_4 = 0; + globals->unk_globals_6C[i].unk_5 = 0; + } + + for (i = 0; i < 4; i++) { + globals->effectChanges[i].type = AU_FX_NONE; + globals->effectChanges[i].changed = FALSE; + } + + for (i = 0; i < ARRAY_COUNT(globals->voices); i++) { + AlUnkVoice* voice; + func_80056EC0(i, 0); + au_pvoice_set_filter_wavetable(i, globals->defaultInstrument); + voice = &globals->voices[i]; + voice->instrument = NULL; + voice->pitchRatio = 0; + voice->volume = -1; + voice->pan = 0xFF; + voice->reverbAmt = 0xFF; + voice->reverbType = 0; + voice->unk_42 = 0; + voice->unk_flags_43 = 0; + voice->priorityCopy = AU_PRIORITY_FREE; + voice->priority = AU_PRIORITY_FREE; + } + + au_load_INIT(globals, 0xF00000, alHeap); + + for (i = 0; i < 3; i++) { + globals->banks[i] = alHeapAlloc(alHeap, 1, 0x840); + } + + au_bgm_player_init(gBGMPlayerA, AU_PRIORITY_BGM_PLAYER_MAIN, AU_FX_NONE, globals); + effects[0] = 0; + effects[1] = 3; + effects[2] = -1; + effects[3] = -1; + au_bgm_set_effect_indices(gBGMPlayerA, effects); + + au_bgm_player_init(gBGMPlayerB, AU_PRIORITY_BGM_PLAYER_AUX, AU_FX_BIGROOM, globals); + effects[0] = 2; + effects[1] = -1; + effects[2] = -1; + effects[3] = -1; + au_bgm_set_effect_indices(gBGMPlayerB, effects); + + au_sfx_init(gSoundManager, AU_PRIORITY_SFX_MANAGER, AU_FX_SMALLROOM, globals, 16); + au_mseq_manager_init(gAuAmbienceManager, AU_PRIORITY_MSEQ_MANAGER, AU_FX_SMALLROOM, globals); + func_80052614(globals); + au_load_BK_headers(globals, alHeap); + if (au_fetch_SBN_file(globals->mseqFileList[0], AU_FMT_SEF, &fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, globals->dataSEF, fileEntry.data & 0xFFFFFF); + } + au_sfx_load_groups_from_SEF(gSoundManager); + if (au_fetch_SBN_file(globals->mseqFileList[1], AU_FMT_PER, &fileEntry) == AU_RESULT_OK) { + au_load_PER(globals, fileEntry.offset); + } + if (au_fetch_SBN_file(globals->mseqFileList[2], AU_FMT_PRG, &fileEntry) == AU_RESULT_OK) { + au_load_PRG(globals, fileEntry.offset); + } + + globals->instrumentGroups[0] = globals->instrumentGroup1; + globals->instrumentGroups[1] = globals->instrumentGroup2; + globals->instrumentGroups[2] = globals->instrumentGroupX; + globals->instrumentGroups[3] = globals->instrumentGroup3; + globals->instrumentGroups[4] = globals->instrumentGroup4; + globals->instrumentGroups[5] = globals->instrumentGroup5; + globals->instrumentGroups[6] = globals->instrumentGroup6; + globals->instrumentGroups[7] = globals->instrumentGroup1; + globals->unk_53 = 0; + globals->unk_52 = 0; + globals->unk_51 = 0; + globals->unk_50 = 0; + + func_80057ED0(0); + func_80055050(alHeap); +} + +static void au_reset_instrument(Instrument* instrument) { + instrument->base = DummyInstrumentBase; + instrument->wavDataLength = sizeof(DummyInstrumentBase); + instrument->predictor = DummyInstrumentPredictor; + instrument->dc_bookSize = sizeof(DummyInstrumentPredictor); + instrument->keyBase = 4800; // middle C? + instrument->loopPredictor = NULL; + instrument->loopStart = 0; + instrument->loopEnd = 0; + instrument->loopCount = 0; + instrument->type = 0; + instrument->unk_25 = 0; + instrument->unkOffset = (InstrumentEffect*) &D_80078544; //TODO: fix type of data + instrument->unk_26 = 0; + instrument->unk_27 = 0; + instrument->unk_28 = 0; + instrument->unk_29 = 0; + instrument->unk_2A = 0; + instrument->unk_2B = 0; + instrument->pitchRatio = 0.5f; +} + +static void au_reset_drum_entry(BGMDrumInfo* arg0) { + arg0->bankPatch = 8208; + arg0->keyBase = 4800; // middle C? + arg0->volume = 0x7F; + arg0->pan = 64; + arg0->reverb = 0; + arg0->randTune = 0; + arg0->randVolume = 0; + arg0->randPan = 0; + arg0->randReverb = 0; +} + +static void au_reset_instrument_entry(BGMInstrumentInfo* arg0) { + arg0->bankPatch = 0x2010; + arg0->volume = 0x7F; + arg0->pan = 64; + arg0->reverb = 0; + arg0->coarseTune = 0; + arg0->fineTune = 0; +} + +void au_update_clients_2(void) { + AuGlobals* globals = gSoundGlobals; + SoundManager* sfxManager = gSoundManager; + AuAmbienceManager* ambManager = gAuAmbienceManager; + BGMPlayer* bgmPlayer; + + func_80053654(globals); + + ambManager->nextUpdateCounter -= ambManager->nextUpdateStep; + if (ambManager->nextUpdateCounter <= 0) { + ambManager->nextUpdateCounter += ambManager->nextUpdateInterval; + snd_ambient_manager_update(ambManager); + } + + if (sfxManager->fadeInfo.fadeTime != 0) { + au_fade_update(&sfxManager->fadeInfo); + func_80053A98(sfxManager->defaultReverbType, sfxManager->fadeInfo.currentVolume.u16, sfxManager->unk_5C); + } + + sfxManager->nextUpdateCounter -= sfxManager->nextUpdateStep; + if (sfxManager->nextUpdateCounter <= 0) { + sfxManager->nextUpdateCounter += sfxManager->nextUpdateInterval; + sfxManager->unk_BA = au_sfx_manager_update(sfxManager); + } + + // update gBGMPlayerB + if (!PreventBGMPlayerUpdate) { + bgmPlayer = gBGMPlayerB; + if (bgmPlayer->fadeInfo.fadeTime != 0) { + au_bgm_update_fade(bgmPlayer); + } + if (bgmPlayer->songName != 0) { + bgmPlayer->songPlayingCounter++; + } + + bgmPlayer->nextUpdateCounter -= bgmPlayer->nextUpdateStep; + if (bgmPlayer->nextUpdateCounter <= 0) { + bgmPlayer->nextUpdateCounter += bgmPlayer->nextUpdateInterval; + bgmPlayer->unk_5C = au_bgm_player_update_main(bgmPlayer); + } + } + + if (!PreventBGMPlayerUpdate) { + if (globals->unk_80 != 0) { + func_8004DFD4(globals); + } + bgmPlayer = gBGMPlayerA; + if (bgmPlayer->fadeInfo.volScaleTime != 0) { + func_80053BA8(&bgmPlayer->fadeInfo); + if (bgmPlayer->fadeInfo.fadeTime == 0) { + func_8004E444(bgmPlayer); + } else { + au_bgm_update_fade(bgmPlayer); + } + } else if (bgmPlayer->fadeInfo.fadeTime != 0) { + au_bgm_update_fade(bgmPlayer); + } + if (bgmPlayer->songName != 0) { + bgmPlayer->songPlayingCounter++; + } + + bgmPlayer->nextUpdateCounter -= bgmPlayer->nextUpdateStep; + if (bgmPlayer->nextUpdateCounter <= 0) { + bgmPlayer->nextUpdateCounter += bgmPlayer->nextUpdateInterval; + bgmPlayer->unk_5C = au_bgm_player_update_main(bgmPlayer); + } + } + func_80052660(globals); +} + +void au_update_players_main(void) { + AuGlobals* globals = gSoundGlobals; + BGMPlayer* player = gBGMPlayerA; + SoundManager* manager = gSoundManager; + + if (globals->flushMusicEventQueue) { + bgm_clear_music_events(); + } + + BeginSoundUpdateCallback = globals->audioThreadCallbacks[0]; + if (BeginSoundUpdateCallback != NULL) { + BeginSoundUpdateCallback(); + } + + au_bgm_update_main(player); + + player = gBGMPlayerB; + au_bgm_update_main(player); + + au_sfx_update_main(manager); +} + +void func_80053654(AuGlobals* globals) { + u32 i; + + if (globals->unk_130C == 2) { + globals->unk_130C = 1; + func_80057EB0(); + } + + if ((globals->unk_50 != 0) && (globals->unk_130C == 0)) { + switch (globals->unk_53) { + case 1: + func_80057DC8(globals->unk_52); + func_80057E08(globals->unk_51); + globals->unk_50 = 0; + break; + case 2: + func_80057DC8(globals->unk_52); + func_80057E5C(globals->unk_51); + globals->unk_50 = 0; + break; + default: + func_80057EB0(); + globals->unk_50 = 0; + break; + } + } + + if (globals->effectChanges[0].changed) { + func_80056DCC(0, globals->effectChanges[0].type); + globals->effectChanges[0].changed = FALSE; + } + if (globals->effectChanges[1].changed) { + func_80056DCC(1, globals->effectChanges[1].type); + globals->effectChanges[1].changed = FALSE; + + } if (globals->effectChanges[2].changed) { + func_80056DCC(2, globals->effectChanges[2].type); + globals->effectChanges[2].changed = FALSE; + } + if (globals->effectChanges[3].changed) { + func_80056DCC(3, globals->effectChanges[3].type); + globals->effectChanges[3].changed = FALSE; + } + + for (i = 0; i < ARRAY_COUNT(globals->voices); i++) { + AlUnkVoice* voice = &globals->voices[i]; + u8 voiceUpdateFlags = voice->unk_flags_43; + + if (voice->unk_42 != 0) { + au_pvoice_reset_filter(i); + voice->unk_42 = 0; + voice->unk_1C = NULL; + voice->priority = AU_PRIORITY_FREE; + } + + if (voiceUpdateFlags & AU_VOICE_SYNC_FLAGS_ALL) { + func_80052BF8(voice, &voice->unk_14); + au_pvoice_set_filter(i, voice->reverbType, voice->instrument, voice->pitchRatio, voice->volume, voice->pan, voice->reverbAmt, voice->unk_08); + voice->priority = voice->priorityCopy; + } else { + if (voiceUpdateFlags & AU_VOICE_SYNC_FLAGS_PITCH) { + au_pvoice_set_pitch_ratio(i, voice->pitchRatio); + } + + if (voiceUpdateFlags & AU_VOICE_SYNC_FLAGS_4) { + func_8005736C(i, voice->volume, voice->unk_08, voice->pan, voice->reverbAmt); + } else if (voiceUpdateFlags & AU_VOICE_SYNC_FLAGS_10) { + func_80057548(i, voice->pan, voice->reverbAmt); + } + } + voice->unk_flags_43 = 0; + } +} + +void func_80053888(AlUnkVoice* voice, u8 index) { + if (voice->priority != 0) { + voice->unk_1C = NULL; + voice->unk_42 = 1; + voice->unk_flags_43 = 0; + func_800576EC(index, 0, AUDIO_SAMPLES); + } +} + +// uncertain name +void au_reset_voice(AlUnkVoice* voice, u8 index) { + voice->unk_1C = NULL; + voice->unk_42 = 1; + voice->unk_flags_43 = 0; + func_800576EC(index, 0, AUDIO_SAMPLES); +} + +// array offsets into AlTuneScaling +#define TUNE_SCALING_ARR_AMPLIFY_FINE 0 +#define TUNE_SCALING_ARR_AMPLIFY_COARSE 128 +#define TUNE_SCALING_ARR_ATTENUATE_FINE 160 +#define TUNE_SCALING_ARR_ATTENUATE_COARSE 288 + +f32 au_compute_pitch_ratio(s32 pitch) { + if (pitch >= 0) { + return AlTuneScaling[(pitch & 0x7F) + TUNE_SCALING_ARR_AMPLIFY_FINE] + * AlTuneScaling[((pitch & 0xF80) >> 7) + TUNE_SCALING_ARR_AMPLIFY_COARSE]; + } else { + pitch = -pitch; + return AlTuneScaling[(pitch & 0x7F) + TUNE_SCALING_ARR_ATTENUATE_FINE] + * AlTuneScaling[((pitch & 0x3F80) >> 7) + TUNE_SCALING_ARR_ATTENUATE_COARSE]; + } +} + +void au_fade_init(Fade* fade, s32 time, s32 startValue, s32 endValue) { + fade->currentVolume.s32 = startValue * 0x10000; + fade->targetVolume = endValue; + + if (time != 0) { + fade->fadeTime = (time * 1000) / AU_5750; + fade->fadeStep = (endValue * 0x10000 - fade->currentVolume.s32) / fade->fadeTime; + } else { + fade->fadeTime = 1; + fade->fadeStep = 0; + } + + fade->onCompleteCallback = NULL; +} + +void au_fade_clear(Fade* fade) { + fade->fadeTime = 0; + fade->fadeStep = 0; + fade->onCompleteCallback = NULL; +} + +void au_fade_update(Fade* fade) { + fade->fadeTime--; + + if ((fade->fadeTime << 0x10) != 0) { + fade->currentVolume.s32 += fade->fadeStep; + } else { + fade->currentVolume.s32 = fade->targetVolume << 0x10; + if (fade->onCompleteCallback != NULL) { + fade->onCompleteCallback(); + fade->fadeStep = 0; + fade->onCompleteCallback = NULL; + } + } +} + +void func_80053A98(u8 arg0, u16 arg1, s32 arg2) { + func_80056D78(arg0, (u32)(arg1 * arg2) >> 15); +} + +void func_80053AC8(Fade* fade) { + if (fade->fadeTime == 0) { + fade->fadeTime = 1; + fade->fadeStep = 0; + fade->targetVolume = fade->currentVolume.u16; + } +} + +void au_fade_set_vol_scale(Fade* fade, s16 value) { + fade->volScale.s32 = value << 16; + fade->targetVolScale = value; + fade->volScaleTime = 0; + fade->volScaleStep = 0; +} + +void func_80053B04(Fade* fade, u32 arg1, s32 target) { + s16 time; + s32 delta; + + if (arg1 >= 250 && arg1 <= 100000) { + time = (s32)(arg1 * 1000) / AU_5750; + delta = (target << 16) - fade->volScale.s32; + + fade->targetVolScale = target; + fade->volScaleTime = time; + fade->volScaleStep = delta / time; + } else { + fade->volScaleTime = 0; + fade->volScaleStep = 0; + } +} + +void func_80053BA8(Fade* fade) { + fade->volScaleTime--; + + if (fade->volScaleTime != 0) { + fade->volScale.s32 += fade->volScaleStep; + } else { + fade->volScaleStep = 0; + fade->volScale.s32 = fade->targetVolScale << 16; + } +} + +//TODO cleanup and documentation +Instrument* au_get_instrument(AuGlobals* globals, u32 bank, u32 patch, AlUnkInstrumentData* arg3) { + Instrument* instrument = (*globals->instrumentGroups[(bank & 0x70) >> 4])[patch]; + InstrumentEffect* temp_a0 = instrument->unkOffset; + u32 sampleIdx = bank & 3; + + if (sampleIdx < temp_a0->count) { + arg3->unk_00 = AU_FILE_RELATIVE(temp_a0, temp_a0->unk_04[sampleIdx].unkOffset1); + arg3->unk_04 = AU_FILE_RELATIVE(temp_a0, temp_a0->unk_04[sampleIdx].unkOffset2); + } else { + arg3->unk_00 = &D_8007854C[0]; + arg3->unk_04 = &D_8007854C[1]; + } + return instrument; +} + +void au_get_bgm_player_and_file(u32 playerIndex, BGMHeader** outFile, BGMPlayer** outPlayer) { + AuGlobals* globals = gSoundGlobals; + + switch (playerIndex) { + case 0: + *outFile = globals->dataBGM[0]; + *outPlayer = gBGMPlayerA; + break; + case 1: + *outFile = globals->dataBGM[1]; + *outPlayer = gBGMPlayerB; + break; + case 2: + *outFile = globals->dataBGM[0]; + *outPlayer = gBGMPlayerA; + break; + default: + *outFile = NULL; + *outPlayer = NULL; + break; + } +} + +void au_get_bgm_player(u32 playerIndex, BGMPlayer** outPlayer) { + switch (playerIndex) { + case 0: + *outPlayer = gBGMPlayerA; + break; + case 1: + *outPlayer = gBGMPlayerB; + break; + case 2: + *outPlayer = gBGMPlayerA; + break; + default: + *outPlayer = NULL; + break; + } +} + +AuResult au_load_song_files(u32 songID, BGMHeader* bgmFile, BGMPlayer* player) { + AuResult status; + SBNFileEntry fileEntry; + SBNFileEntry fileEntry2; + SBNFileEntry* bkFileEntry; + AuGlobals* soundData; + InitSongEntry* songInfo; + s32 i; + u16 bkFileIndex; + s32 bgmFileIndex; + u32 data; + u32 offset; + BGMPlayer* arg2_copy ; + BGMHeader* arg1_copy; + s32 cond; + + soundData = gSoundGlobals; + + // needed to match + cond = songID < soundData->songListLength; + arg2_copy = player; + arg1_copy = bgmFile; + + if (cond) { + songInfo = &soundData->songList[songID]; + status = au_fetch_SBN_file(songInfo->bgmFileIndex, AU_FMT_BGM, &fileEntry); + if (status != AU_RESULT_OK) { + return status; + } + + if (func_8004DB28(arg2_copy)) { + return AU_ERROR_201; + } + + au_read_rom(fileEntry.offset, arg1_copy, fileEntry.data & 0xFFFFFF); + + for (i = 0 ; i < ARRAY_COUNT(songInfo->bkFileIndex); i++) { + bkFileIndex = songInfo->bkFileIndex[i]; + if (bkFileIndex != 0) { + bkFileEntry = &soundData->sbnFileList[bkFileIndex]; + + offset = (bkFileEntry->offset & 0xFFFFFF) + soundData->baseRomOffset; + fileEntry2.offset = offset; + + data = bkFileEntry->data; + fileEntry2.data = data; + + if ((data >> 0x18) == AU_FMT_BK) { + snd_load_BK(offset, i); + } + } + } + bgmFileIndex = songInfo->bgmFileIndex; + arg2_copy->songID = songID; + arg2_copy->bgmFile = bgmFile; + arg2_copy->bgmFileIndex = bgmFileIndex; + return arg1_copy->name; + } else { + return AU_ERROR_151; + } +} + +AuResult func_80053E58(s32 songID, BGMHeader* bgmFile) { + AuResult status; + SBNFileEntry fileEntry; + SBNFileEntry sbnEntry; + SBNFileEntry* bkFileEntry; + AuGlobals* soundData; + InitSongEntry* songInfo; + s32 i; + u32 data; + u32 offset; + u16 bkFileIndex; + + soundData = gSoundGlobals; + songInfo = &soundData->songList[songID]; + status = au_fetch_SBN_file(songInfo[0].bgmFileIndex, AU_FMT_BGM, &sbnEntry); + if (status == AU_RESULT_OK) { + au_read_rom(sbnEntry.offset, bgmFile, sbnEntry.data & 0xFFFFFF); + + for (i = 0 ; i < ARRAY_COUNT(songInfo->bkFileIndex); i++) { + bkFileIndex = songInfo->bkFileIndex[i]; + if (bkFileIndex != 0) { + bkFileEntry = &soundData->sbnFileList[bkFileIndex]; + + offset = (bkFileEntry->offset & 0xFFFFFF) + soundData->baseRomOffset; + fileEntry.offset = offset; + + data = bkFileEntry->data; + fileEntry.data = data; + + if ((data >> 0x18) == AU_FMT_BK) { + snd_load_BK(offset, i); + } else { + status = AU_ERROR_SBN_FORMAT_MISMATCH; + } + } + } + } + + return status; +} + +BGMPlayer* func_80053F64(s32 arg0) { + if (arg0 == 0) { + return gSoundGlobals->unk_globals_6C[0].bgmPlayer; + } + return NULL; +} + +#define SBN_LOOKUP(i,fmt,e) (au_fetch_SBN_file(globals->mseqFileList[AmbientSoundIDtoMSEQFileIndex[i]], fmt, &e)) + +AuResult func_80053F80(u32 ambSoundID) { + AuAmbienceManager* manager; + SBNFileEntry fileEntry; + AuGlobals* globals; + MSEQHeader* mseqFile; + u32 i; + + globals = gSoundGlobals; + manager = gAuAmbienceManager; + if (ambSoundID < 16) { + if (manager->mseqPlayers[0].mseqName == 0 && SBN_LOOKUP(ambSoundID, AU_FMT_MSEQ, fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, globals->dataMSEQ[0], fileEntry.data & 0xFFFFFF); + manager->mseqFiles[0] = globals->dataMSEQ[0]; + for (i = 1; i < ARRAY_COUNT(manager->mseqFiles); i++) { + manager->mseqFiles[i] = NULL; + } + manager->unk_20 = 1; + } + } else if (ambSoundID == AMBIENT_RADIO + && manager->mseqPlayers[0].mseqName == 0 + && manager->mseqPlayers[1].mseqName == 0 + && manager->mseqPlayers[2].mseqName == 0) { + manager->unk_20 = 0; + for (i = 0; i < ARRAY_COUNT(manager->mseqFiles); i++) { + manager->mseqFiles[i] = NULL; + } + + mseqFile = globals->dataMSEQ[1]; + if (SBN_LOOKUP(ambSoundID, AU_FMT_MSEQ, fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, mseqFile, fileEntry.data & 0xFFFFFF); + manager->mseqFiles[0] = mseqFile; + + mseqFile = AU_FILE_RELATIVE(mseqFile, (fileEntry.data + 0x40) & 0xFFFFFF); + if (SBN_LOOKUP(ambSoundID + 1, AU_FMT_MSEQ, fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, mseqFile, fileEntry.data & 0xFFFFFF); + manager->mseqFiles[1] = mseqFile; + + mseqFile = AU_FILE_RELATIVE(mseqFile, (fileEntry.data + 0x40) & 0xFFFFFF); + if (SBN_LOOKUP(ambSoundID + 2, AU_FMT_MSEQ, fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, mseqFile, fileEntry.data & 0xFFFFFF); + manager->mseqFiles[2] = mseqFile; + + mseqFile = AU_FILE_RELATIVE(mseqFile, (fileEntry.data + 0x40) & 0xFFFFFF); + if (SBN_LOOKUP(ambSoundID + 3, AU_FMT_MSEQ, fileEntry) == AU_RESULT_OK) { + au_read_rom(fileEntry.offset, mseqFile, fileEntry.data & 0xFFFFFF); + manager->mseqFiles[3] = mseqFile; + + manager->unk_20 = 4; + if (SBN_LOOKUP(ambSoundID + 4, AU_FMT_BK, fileEntry) == AU_RESULT_OK) { + snd_load_BK(fileEntry.offset, 2); + } + } + } + } + } + } + + return AU_RESULT_OK; +} + +BGMPlayer* func_80054248(u8 arg0) { + switch (arg0) { + case 1: + return gBGMPlayerA; + case 2: + return gBGMPlayerB; + case 4: + return (BGMPlayer*)gSoundManager; // TODO: why return pointer to SoundManager? + default: + return NULL; + } +} + +void au_load_INIT(AuGlobals* arg0, s32 romAddr, ALHeap* heap) { + SBNHeader sbnHeader; + INITHeader initHeader; + SBNFileEntry* entry; + s32 tableSize, initBase, size; + s32 tblAddr, shortsAddr; + s32* data; + s32 numEntries; + s32 tblOffset, shortsOffset; + s32* romPtr = &arg0->baseRomOffset; + + au_read_rom(romAddr, &sbnHeader, sizeof(SBNHeader)); + numEntries = sbnHeader.numEntries; + arg0->baseRomOffset = romAddr; + tableSize = numEntries * sizeof(SBNFileEntry); + arg0->fileListLength = sbnHeader.numEntries; + arg0->sbnFileList = alHeapAlloc(heap, 1, tableSize); + au_read_rom(arg0->baseRomOffset + sbnHeader.tableOffset, arg0->sbnFileList, tableSize); + + entry = arg0->sbnFileList; + while (sbnHeader.numEntries--) { + if ((entry->offset & 0xFFFFFF) == 0) { + break; + } + + size = entry->data; + entry->data = (size + 0xF) & ~0xF; + entry++; + } + + if (sbnHeader.INIToffset != 0) { + initBase = *romPtr + sbnHeader.INIToffset; + au_read_rom(initBase, &initHeader, sizeof(INITHeader)); + + tblOffset = initHeader.tblOffset; + size = (initHeader.tblSize + 0xF) & 0xFFF0; + tblAddr = initBase + tblOffset; + arg0->songList = alHeapAlloc(heap, 1, size); + au_read_rom(tblAddr, arg0->songList, size); + + shortsOffset = initHeader.shortsOffset; + size = (initHeader.shortsSize + 0xF) & 0xFFF0; + shortsAddr = initBase + shortsOffset; + arg0->mseqFileList = alHeapAlloc(heap, 1, size); + au_read_rom(shortsAddr, arg0->mseqFileList, size); + + arg0->bkFileListOffset = initBase + initHeader.entriesOffset; + arg0->bkListLength = (initHeader.entriesSize + 0xF) & 0xFFF0; + arg0->songListLength = initHeader.tblSize / sizeof(InitSongEntry) - 1; + } +} + +AuResult au_fetch_SBN_file(u32 fileIdx, AuFileFormat format, SBNFileEntry* outEntry) { + SBNFileEntry fileEntry; + s32 status = AU_RESULT_OK; + + if (fileIdx < gSoundGlobals->fileListLength) { + SBNFileEntry* entry = &gSoundGlobals->sbnFileList[fileIdx]; + s32 offset = (entry->offset & 0xFFFFFF) + gSoundGlobals->baseRomOffset; + + fileEntry.offset = offset; + fileEntry.data = entry->data; + if ((fileEntry.data >> 0x18) == format) { + outEntry->offset = offset; + outEntry->data = fileEntry.data; + } else { + status = AU_ERROR_SBN_FORMAT_MISMATCH; + } + } else { + status = AU_ERROR_SBN_INDEX_OUT_OF_RANGE; + } + return status; +} + +void au_load_PER(AuGlobals* globals, s32 romAddr) { + PERHeader header; + u32 size; + s32 numItemsLeft; + s32 numItems; + void* end; + + au_read_rom(romAddr, &header, sizeof(PERHeader)); + size = header.size - sizeof(PERHeader); + au_read_rom(romAddr + sizeof(PERHeader), globals->dataPER, size); + numItems = size / sizeof(PEREntry); + numItemsLeft = 6 - numItems; + if (numItemsLeft > 0) { + end = &globals->dataPER[numItems]; + au_copy_words(&globals->defaultDrumEntry, end, sizeof(BGMDrumInfo)); + au_copy_words(end, end + sizeof(BGMDrumInfo), numItemsLeft * sizeof(PEREntry) - sizeof(BGMDrumInfo)); + } +} + +void au_load_PRG(AuGlobals* arg0, s32 romAddr) { + PERHeader header; + u32 size; + s32 numItemsLeft; + s32 numItems; + s32 dataRomAddr; + void* end; + + au_read_rom(romAddr, &header, sizeof(PERHeader)); + dataRomAddr = romAddr + sizeof(PERHeader); + size = header.size - sizeof(PERHeader); + if (size > 0x200) { + size = 0x200; + } + au_read_rom(dataRomAddr, arg0->dataPRG, size); + numItems = size / sizeof(BGMInstrumentInfo); + numItemsLeft = 0x40 - numItems; + if (numItemsLeft > 0) { + end = &arg0->dataPRG[numItems]; + au_copy_words(&arg0->defaultPRGEntry, end, sizeof(BGMInstrumentInfo)); + au_copy_words(end, end + sizeof(BGMInstrumentInfo), numItemsLeft * sizeof(BGMInstrumentInfo) - sizeof(BGMInstrumentInfo)); + } +} + +INCLUDE_ASM(s32, "audio/2e230_len_2190", snd_load_BGM); + +InstrumentGroup* au_get_BK_instruments(s32 bankGroup, u32 bankIndex) { + InstrumentGroup* ret = NULL; + AuGlobals* temp = gSoundGlobals; + + // TODO fake match - this multiplying the bankIndex by 16 and then dividing it right after is dumb + bankIndex *= 16; + + switch (bankGroup) { + case 1: + ret = &temp->instrumentGroup1[bankIndex / 16]; + break; + case 2: + ret = &temp->instrumentGroup2[bankIndex / 16]; + break; + case 4: + ret = &temp->instrumentGroup4[bankIndex / 16]; + break; + case 5: + ret = &temp->instrumentGroup5[bankIndex / 16]; + break; + case 6: + ret = &temp->instrumentGroup6[bankIndex / 16]; + break; + case 3: + ret = &temp->instrumentGroup3[bankIndex / 16]; + break; + } + + return ret; +} + +#ifdef NON_EQUIVALENT +enum BKParseState { + EN_0 = 0, + EN_11 = 11, + EN_21 = 21, + EN_101 = 101, + EN_111 = 111, + EN_201 = 201, + EN_301 = 301, +}; +s32 snd_load_BK_to_bank(s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 bankGroup) { + ALHeap* heap = gSynDriverPtr->heap; + BKHeader bkHeader; + BKHeader* header = &bkHeader; + u16 s3; + u16 s2; + s32 size; + u8* s4; + InstrumentGroup* group; + u32 i; + s32 a2; + + au_read_rom(bkFileOffset, header, sizeof(BKHeader)); + s3 = EN_11; + s2 = TRUE; + do { + switch (s3) { + case EN_11: + if (header->signature == 0x424B /* BK */ && header->size != 0) { + s3 = EN_21; + } else { + s2 = FALSE; + } + break; + case EN_21: + if (header->format == 0x4352) { // CR + s3 = EN_101; + } else if (header->format == 0x4452) { // DR + s3 = EN_201; + } else if (header->format == 0x5352) { // SR + s3 = EN_301; + } else { + s2 = FALSE; + } + break; + case EN_101: + size = ALIGN16_(header->instrumetsSize) + ALIGN16_(header->unkSizeA) + ALIGN16_(header->predictorsSize) + ALIGN16_(header->unkSizeB) + sizeof(BKHeader); + if (bank == NULL) { + bank = alHeapAlloc(heap, 1, size); + } + au_read_rom(bkFileOffset, bank, size); + group = au_get_BK_instruments(bankGroup, bankIndex); + a2 = 0; + for (i = 0; i < ARRAY_COUNT(*group); i++) { + if (header->instruments[i] != 0) { + (*group)[i] = (s32)bank + header->instruments[i]; + a2++; + } else { + (*group)[i] = NULL; + } + } + + if (a2 != 0) { + s3 = EN_111; + } else { + s2 = FALSE; + } + break; + case EN_111: + au_swizzle_BK_instruments(bkFileOffset, bank, *group, 16, 1); + s3 = 0; + break; + default: + s2 = FALSE; + break; + } + } while (s2); + + return bank; +} +#else +INCLUDE_ASM(s32, "audio/2e230_len_2190", snd_load_BK_to_bank, s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 arg3); +#endif + +void au_swizzle_BK_instruments(s32 bkFileOffset, SoundBank* bank, InstrumentGroup instruments, u32 instrumentCount, u8 arg4) { + Instrument* defaultInstrument = gSoundGlobals->defaultInstrument; + SoundBank* sb = bank; + f32 outputRate = gSoundGlobals->outputRate; + s32 i; + + if (sb->swizzled == 0) { + for (i = 0; i < instrumentCount; i++) { + Instrument* instrument = instruments[i]; + + if (instrument != NULL) { + if (instrument->base != 0) { + instrument->base += bkFileOffset; + } + if (instrument->loopPredictor != NULL) { + instrument->loopPredictor = AU_FILE_RELATIVE(bank, instrument->loopPredictor); + } + if (instrument->predictor != NULL) { + instrument->predictor = AU_FILE_RELATIVE(bank, instrument->predictor); + } + if (instrument->unkOffset != NULL) { + instrument->unkOffset = AU_FILE_RELATIVE(bank, instrument->unkOffset); + } + instrument->unk_25 = arg4; + instrument->pitchRatio = *((s32*)(&instrument->pitchRatio)) / outputRate; // what is happening here? + } else { + instruments[i] = defaultInstrument; + } + } + sb->swizzled = 1; + } +} + +#ifdef NON_MATCHING +enum ReadState { + BK_READ_DONE = 0, + BK_READ_FETCH_HEADER = 11, + BK_READ_FETCH_DATA = 21, + BK_READ_SWIZZLE = 31, +}; + +#define AL_HEADER_SIG_BK 0x424B +#define AL_HEADER_SIG_CR 0x4352 + +s32* func_80054AA0(s32* bkFileOffset, void* vaddr, s32 bankIndex, s32 bankGroup) { + ALHeap* heap = gSynDriverPtr->heap; + BKHeader localHeader; + BKHeader* header = &localHeader; + Instrument** instrumentGroup; + Instrument* instruments; + u32 instrCount; + u32 readState; + s32 keepReading; + void* fileData = vaddr; + u32 i; + + fileData = vaddr; + readState = BK_READ_FETCH_HEADER; + keepReading = TRUE; + + while (keepReading) { + switch (readState) { + case BK_READ_DONE: + keepReading = FALSE; + break; + case BK_READ_FETCH_HEADER: + au_read_rom(*bkFileOffset, &localHeader, 0x40U); + if ((header->signature == AL_HEADER_SIG_BK) && (header->size != 0) && (header->format == AL_HEADER_SIG_CR)) { + readState = BK_READ_FETCH_DATA; + } else { + keepReading = FALSE; + } + break; + case BK_READ_FETCH_DATA: + if (vaddr == NULL) { + fileData = alHeapAlloc(heap, 1, header->size); + } + au_read_rom(*bkFileOffset, fileData, header->size); + + instrCount = 0; + instrumentGroup = (Instrument**)au_get_BK_instruments(bankGroup, bankIndex); + + for (i = 0; i < 16; i++) { + if (header->instruments[i] != 0) { + instrumentGroup[i] = header->instruments[i] + fileData; + instrCount++; + } else { + instrumentGroup[i] = NULL; + } + } + + if (instrCount != 0) { + readState = BK_READ_SWIZZLE; + } else { + keepReading = FALSE; + } + break; + case BK_READ_SWIZZLE: + au_swizzle_BK_instruments(fileData, fileData, instrumentGroup, 0x10U, 0); + readState = BK_READ_DONE; + break; + default: + keepReading = FALSE; + break; + } + } + return fileData; +} +#else +INCLUDE_ASM(s32, "audio/2e230_len_2190", func_80054AA0); +#endif + +s32 snd_load_BK(s32 bkFileOffset, s32 bankIndex) { + snd_load_BK_to_bank(bkFileOffset, gSoundGlobals->banks[bankIndex], bankIndex, 1); + return 0; +} + +void func_80054C84(s32 bankIndex, s32 bankGroup) { + u32 i; + Instrument* instrument = gSoundGlobals->defaultInstrument; + InstrumentGroup* group = au_get_BK_instruments(bankGroup, bankIndex); + Instrument** ptr = *group; + if (group != NULL) { + for (i = 0; i < ARRAY_COUNT(*group); i++) { + *ptr++ = instrument; + } + } +} + +void func_80054CE0(s32 arg0, u32 idx) { + if (idx < ARRAY_COUNT(D_80078530)) { + s32 temp_s0 = D_80078530[idx]; + if (arg0 & 1) { + gBGMPlayerA->unk_48 = temp_s0; + func_80053AC8(&gBGMPlayerA->fadeInfo); + gBGMPlayerB->unk_48 = temp_s0; + func_80053AC8(&gBGMPlayerB->fadeInfo); + } + if (arg0 & 0x10) { + gSoundManager->unk_5C = temp_s0; + func_80053AC8(&gSoundManager->fadeInfo); + } + } +} + +s32 func_80054D74(s32 arg0, s32 arg1) { + if (arg0 & 0x10) { + return func_8004B9E4(gSoundManager, arg1); + } + return 0; +} + +void func_80054DA8(u32 bMonoSound) { + if (bMonoSound % 2 == 1) { + // mono sound + if (gSoundGlobals->unk_130C == 0) { + gSoundGlobals->unk_130C = 2; + } + } else { + // stereo sound + if (gSoundGlobals->unk_130C != 0) { + gSoundGlobals->unk_50 = 1; + gSoundGlobals->unk_130C = 0; + } + } +} + +void au_read_rom(s32 romAddr, void* buffer, u32 size) { + s32 nchunks = size / 0x2000; + s32 offset = 0; + + if (nchunks != 0) { + while (nchunks--) { + nuPiReadRom(romAddr + offset, buffer + offset, 0x2000); + offset += 0x2000; + } + } + + size %= 0x2000; + if (size != 0) { + nuPiReadRom(romAddr + offset, buffer + offset, size); + } +} + +void au_memset(void* dst, s32 size, u8 value) { + s32 count; + s32 intValue; + + if (size == 0) { + return; + } + + if (size < 1024) { + while (size--) { + *(u8*)dst++ = value; + } + } else { + count = (u32)dst & 0x3; + if (count != 0) { + count = 4 - count; + size -= count; + while (count--) { + *(u8*)dst++ = value; + } + } + + count = size >> 2; + intValue = (value << 8) + value; + intValue = (intValue << 16) + intValue; + while (count--) { + *(u32*)dst = intValue; + dst += 4; + } + + count = size & 3; + if (count != 0) { + while (count--) { + *(u8*)dst++ = value; + } + } + } +} + +void au_copy_bytes(s8* src, s8* dest, s32 size) { + if (size > 0) { + while (size-- != 0) { + *dest++ = *src++; + } + } +} + +void au_copy_words(void* src, void* dst, s32 size) { + size /= 4; + + if (size > 0) { + if (!(((s32) src | (s32) dst) & 3)) { + s32* srcIt = src; + s32* dstIt = dst; + + size--; + do { + *dstIt++ = *srcIt++; + } while (size-- != 0); + } + } +} diff --git a/src/303c0_len_3e10.c b/src/audio/303c0_len_3e10.c similarity index 61% rename from src/303c0_len_3e10.c rename to src/audio/303c0_len_3e10.c index bc3ae03397..7affbf3ac0 100644 --- a/src/303c0_len_3e10.c +++ b/src/audio/303c0_len_3e10.c @@ -4,22 +4,22 @@ typedef struct BufferEntry { /* 0x0 */ u16 fileIndex; /* 0x2 */ u8 bankIndex; - /* 0x3 */ u8 unk_3; + /* 0x3 */ u8 bankGroup; } BufferEntry; // size = 4 -void snd_load_BK_headers(UnkAl19E0* soundData, ALHeap* arg1) { +void au_load_BK_headers(AuGlobals* globals, ALHeap* heap) { SBNFileEntry fileEntry; BufferEntry buffer[80]; s32 i; - snd_read_rom(soundData->bkFileListOffset, &buffer, soundData->bkListLength); + au_read_rom(globals->bkFileListOffset, &buffer, globals->bkListLength); for (i = 0; i < ARRAY_COUNT(buffer); i++) { if (buffer[i].fileIndex == 0xFFFF) { break; } - snd_fetch_SBN_file(buffer[i].fileIndex, 0x30, &fileEntry); - snd_load_BK_to_bank(fileEntry.offset, NULL, buffer[i].bankIndex, buffer[i].unk_3); + au_fetch_SBN_file(buffer[i].fileIndex, AU_FMT_BK, &fileEntry); + snd_load_BK_to_bank(fileEntry.offset, NULL, buffer[i].bankIndex, buffer[i].bankGroup); } } diff --git a/src/audio/30450.c b/src/audio/30450.c new file mode 100644 index 0000000000..9129ef07e6 --- /dev/null +++ b/src/audio/30450.c @@ -0,0 +1,869 @@ +#include "common.h" +#include "audio.h" + +static u8* snd_song_get_track_volumes_set(MusicTrackVols arg0); + +s32 PreventBGMPlayerUpdate = FALSE; +u16 D_80078DB4 = 0; +u16 D_80078DB6 = 0; + +// lists of data: +// u8 trackIdx +// u8 volume? +// repeated until idx = 0 +u8 D_80078DB8[] = { + 2, 94, + 3, 80, + 4, 100, + 5, 84, + 0 +}; +u8 D_80078DC4[] = { + 2, 100, + 3, 110, + 4, 90, + 0 +}; +u8 D_80078DCC[] = { + 2, 95, + 0 +}; +u8 D_80078DD0[] = { + 5, 70, + 6, 90, + 7, 90, + 8, 100, + 0 +}; +// used in kpa_60-63 +u8 TrackVols_KPA_Outside[] = { + 5, 0, + 6, 0, + 7, 0, + 8, 0, + 9, 0, + 10, 0, + 11, 0, + 12, 0, + 13, 0, + 14, 0, + 15, 0, + 16, 0, + 0 +}; +// starting areas, only basic instrumentation +u8 TrackVols_KPA_1[] = { + 5, 100, + 6, 102, + 7, 88, + 8, 110, + 9, 0, + 10, 0, + 11, 0, + 12, 0, + 13, 0, + 14, 0, + 15, 0, + 16, 0, + 0 +}; +// middle areas +u8 TrackVols_KPA_2[] = { + 5, 100, + 6, 102, + 7, 88, + 8, 110, + 9, 126, + 10, 88, + 11, 100, + 12, 0, + 13, 0, + 14, 0, + 15, 0, + 16, 0, + 0 +}; +// final areas, full instrumentation +u8 TrackVols_KPA_3[] = { + 5, 100, + 6, 102, + 7, 88, + 8, 110, + 9, 126, + 10, 88, + 11, 100, + 12, 100, + 13, 106, + 14, 100, + 15, 100, + 16, 110, + 0 +}; + +void func_80055050(ALHeap* heap) { + D_80078DB4 = 1; + PreventBGMPlayerUpdate = FALSE; +} + +void func_80055068(u32 arg0) { + u16 temp_a0 = D_80078DB4; + u32 temp_v1 = arg0 & 0xF; + + if (temp_a0 == 1) { + switch (temp_v1) { + case 2: + case 3: + break; + case 4: + snd_start_sound_with_shift(arg0 >> 4, 0, 0, 0); + break; + case 1: + if (temp_v1 == 1) { + s32 filename = au_song_load((arg0 >> 4) & 0xFF, 0); + + if (filename > ASCII_TO_U32('0', ' ', ' ', '\0')) { + au_song_start_variation(filename, (arg0 >> 0xC) & 3); + } + } + break; + } + } +} + +void func_80055110(BGMPlayer* player) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(player->unk_238); i++) { + player->unk_238[i] = 0; + } + + player->unk_25B = 0; + player->unk_25A = 0; + player->unk_259 = 0; + player->unk_258 = 0; +} + +void func_8005513C(u32 arg0) { + BGMPlayer* player = NULL; + u32 playerSwitch = arg0 & 0xF; + + if (playerSwitch != 0) { + if (playerSwitch == 1) { + player = gBGMPlayerA; + } else if (playerSwitch == 2) { + player = gBGMPlayerB; + } + + if (player != NULL) { + u32 temp; + + if (player->unk_258 < 8) { + temp = player->unk_25A; + + player->unk_238[temp] = arg0 >> 4; + + temp++; + if (temp >= 8) { + temp = 0; + } + player->unk_25A = temp; + + player->unk_258++; + } else { + temp = player->unk_25B + 1; + + if (temp > 99) { + temp = 99; + } + player->unk_25B = temp; + } + } + } +} + +void snd_start_sound(s32 soundID, u8 volume, u8 pan) { + SoundManager* soundManager = gSoundManager; + s16 vol = volume << 8; + + if (vol != 0) { + vol |= 0xFF; + } + + if (pan > 0x7F) { + pan = 0x7F; + } + + au_sfx_enqueue_event(soundManager, soundID, vol, 0, pan); +} + +void snd_start_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { + SoundManager* soundManager = gSoundManager; + s16 vol = volume << 8; + + if (vol != 0) { + vol |= 0xFF; + } + + if (pan > 0x7F) { + pan = 0x7F; + } + + if (pitchShift > 2400) { + pitchShift = 2400; + } else if (pitchShift < -2400) { + pitchShift = -2400; + } + + au_sfx_enqueue_event(soundManager, soundID, vol, pitchShift, pan); +} + +void snd_adjust_sound(s32 soundID, u8 volume, u8 pan) { + SoundManager* soundManager = gSoundManager; + s16 vol = volume << 8; + + if (vol != 0) { + vol |= 0xFF; + } + + if (pan > 0x7F) { + pan = 0x7F; + } + + au_sfx_enqueue_event(soundManager, soundID | 0x1000, vol, 0, pan); +} + +void snd_adjust_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { + SoundManager* soundManager = gSoundManager; + s16 vol = volume << 8; + + if (vol != 0) { + vol |= 0xFF; + } + + if (pan > 0x7F) { + pan = 0x7F; + } + + if (pitchShift > 2400) { + pitchShift = 2400; + } else if (pitchShift < -2400) { + pitchShift = -2400; + } + + au_sfx_enqueue_event(soundManager, soundID | 0x1000, vol, pitchShift, pan); +} + +void snd_stop_sound(s32 soundID) { + SoundManager* soundManager = gSoundManager; + + au_sfx_enqueue_event(soundManager, soundID | 0x8000, 0, 0, 0); +} + +void func_800553F4(void) { + gSoundManager->unk_168 = 1; +} + +void snd_start_sound_raw(s32 soundID, s16 volume, s16 pitchShift, s32 pan) { + SoundManager* soundManager = gSoundManager; + + au_sfx_enqueue_event(soundManager, soundID, volume, pitchShift, pan); +} + +AuResult snd_ambient_80055448(s32 ambSoundID) { + return func_80053F80(ambSoundID); +} + +AuResult snd_ambient_80055464(s32 arg0, s32 arg1) { + AuResult status = func_80050C30(arg0); + + if (status != AU_RESULT_OK) { + return status; + } + return func_80050CA0(arg0, arg1); +} + +AuResult snd_ambient_quick_fade_out(s32 arg0) { + AuResult status = func_80050C30(arg0); + + if (status == AU_RESULT_OK) { + func_80050EF0_fade_out_quick(arg0); + } + + return status; +} + +AuResult snd_ambient_slow_fade_out(s32 arg0, s32 arg1) { + AuResult status = func_80050C30(arg0); + + if (status == AU_RESULT_OK) { + func_80050EF0_fade_out_slow(arg0, arg1); + } + + return status; +} + +// fade out sounds (kmr_00) +AuResult snd_ambient_8005553C(s32 arg0, s32 arg1) { + AuResult status = func_80050C30(arg0); + + if (status == AU_RESULT_OK) { + func_80050EF0_fade_out_unk(arg0, arg1); + } + + return status; +} + +// fade in sounds (kmr_00) -- restart? +AuResult snd_ambient_80055590(s32 arg0, s32 arg1) { + AuResult status = func_80050C30(arg0); + + if (status == AU_RESULT_OK) { + func_80050EF0_fade_in_unk(arg0, arg1); + } + + return status; +} + +AuResult snd_ambient_800555E4(s32 arg0) { + AuResult status = func_80050C30(arg0); + + if (status != AU_RESULT_OK) { + return status; + } + return func_80051050(arg0); +} + +//TODO au_ambience_disable? -- sets a flag which tells the manager to mute players +AuResult snd_ambient_80055618(s32 index, s32 arg1) { + AuResult status = func_80050C30(index); + + if (status == AU_RESULT_OK) { + func_80050C54(index, arg1); + } + + return status; +} + +AuResult au_ambience_set_volume(s32 index, s32 time, s32 volume) { + AuResult status = func_80050C30(index); + + if (status == AU_RESULT_OK) { + au_mseq_set_volume(index, time, volume); + } + + return status; +} + +AuResult au_ambience_disable(s32 index) { + AuResult status = func_80050C30(index); + + if (status == AU_RESULT_OK) { + au_mseq_set_disabled(index, TRUE); + } + + return status; +} + +AuResult au_ambience_enable(s32 index) { + AuResult status = func_80050C30(index); + + if (status == AU_RESULT_OK) { + au_mseq_set_disabled(index, FALSE); + } + + return status; +} + +void snd_ambient_80055760(s32 arg0) { + u32 i; + s32 lim = 4; + + D_80078DB6 = 0xFF; + + for (i = 0; i < lim; i++) { + if (snd_ambient_80055464(i, 0) != AU_RESULT_OK) { + return; + } + } + + snd_ambient_80055848(arg0); +} + +AuResult snd_ambient_800557CC(s32 arg0) { + AuResult status = AU_RESULT_OK; + s32 lim = 4; + u32 i; + + for (i = 0; i < lim; i++) { + if (i == D_80078DB6) { + status = snd_ambient_slow_fade_out(i, arg0); + } else { + status = snd_ambient_quick_fade_out(i); + } + if (status != AU_RESULT_OK) { + break; + } + } + return status; +} + +// play only +AuResult snd_ambient_80055848(s32 index) { + AuResult status = AU_RESULT_OK; + s32 lim = 4; + + if (index != D_80078DB6) { + u32 i; + + for (i = 0; i < lim; i++) { + if (i == index) { + status = au_ambience_enable(index); + } else { + status = au_ambience_disable(i); // mute + } + + if (status != AU_RESULT_OK) { + break; + } + } + + if (status == AU_RESULT_OK) { + D_80078DB6 = index; + } + } + + return status; +} + +AuResult au_song_load(s32 songID, s32 playerIndex) { + BGMHeader* bgmFile; + BGMPlayer* player; + + au_get_bgm_player_and_file(playerIndex, &bgmFile, &player); + + if (bgmFile != NULL) { + return au_load_song_files(songID, bgmFile, player); + } else { + return AU_ERROR_NULL_SONG_NAME; + } +} + +AuResult au_song_start(s32 songName) { + AuResult status; + SongUpdateEvent s; + + PreventBGMPlayerUpdate = TRUE; + s.songName = songName; + s.duration = 0; + s.startVolume = 127; + s.finalVolume = 127; + s.variation = 0; + s.unk14 = 0; + status = au_bgm_dispatch_player_event(&s); + PreventBGMPlayerUpdate = FALSE; + + return status; +} + +AuResult au_song_start_variation(s32 songName, s32 variation) { + AuResult status; + SongUpdateEvent s; + + PreventBGMPlayerUpdate = TRUE; + s.songName = songName; + s.duration = 0; + s.startVolume = 127; + s.finalVolume = 127; + s.variation = variation; + s.unk14 = 0; + status = au_bgm_dispatch_player_event(&s); + PreventBGMPlayerUpdate = FALSE; + + return status; +} + +AuResult au_song_stop(s32 songName) { + return au_bgm_stop_song(songName); +} + +void au_stop_songs(void) { + au_bgm_stop_all(); +} + +AuResult au_song_is_playing(s32 songName) { + return au_bgm_is_song_playing(songName); +} + +AuResult snd_set_song_variation_fade(s32 songName, s32 variation, s32 fadeInTime, s32 startVolume, s32 endVolume) { + AuResult status; + SongUpdateEvent s; + + PreventBGMPlayerUpdate = TRUE; + s.songName = songName; + s.duration = fadeInTime; + s.startVolume = startVolume; + s.finalVolume = endVolume; + s.variation = variation; + s.unk14 = 0; + status = au_bgm_dispatch_player_event(&s); + PreventBGMPlayerUpdate = FALSE; + + return status; +} + +AuResult snd_set_song_fade(s32 songName, s32 fadeInTime, s32 startVolume, s32 endVolume) { + AuResult status; + SongUpdateEvent s; + + PreventBGMPlayerUpdate = TRUE; + s.songName = songName; + s.duration = fadeInTime; + s.startVolume = startVolume; + s.finalVolume = endVolume; + s.variation = 0; + s.unk14 = 0; + status = au_bgm_dispatch_player_event(&s); + PreventBGMPlayerUpdate = FALSE; + + return status; +} + +AuResult snd_set_song_variation_fade_time(s32 songName, s32 fadeTime, s32 variation) { + SongUpdateEvent s; + s.songName = songName; + s.duration = fadeTime; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = variation; + s.unk14 = 0; + return func_8004DB4C(&s); +} + +AuResult func_80055AF0(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 0; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 0; + return func_8004DCB8(&s, 0); +} + +AuResult func_80055B28(s32 songName) { + AuResult status; + SongUpdateEvent s; + + PreventBGMPlayerUpdate = TRUE; + s.songName = songName; + s.duration = 2000; + s.startVolume = 1; + s.finalVolume = 127; + s.variation = 0; + s.unk14 = 0; + status = func_8004DE2C(&s); + PreventBGMPlayerUpdate = FALSE; + + return status; +} + +AuResult func_80055B80(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 0; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 0; + return func_8004DCB8(&s, 1); +} + +AuResult func_80055BB8(s32 songName, s32 fadeTime) { + SongUpdateEvent s; + s.songName = songName; + s.duration = fadeTime; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 1; + return func_8004DB4C(&s); +} + +AuResult func_80055BF0(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 0; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 1; + return func_8004DCB8(&s, 0); +} + +AuResult func_80055C2C(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 0; + s.startVolume = 0; + s.finalVolume = 0; + s.variation = 0; + s.unk14 = 1; + return func_8004DE2C(&s); +} + +AuResult func_80055C64(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 500; + s.finalVolume = 0x2000; + return func_8004E0F4(&s); +} + +AuResult func_80055C94(s32 songName) { + SongUpdateEvent s; + s.songName = songName; + s.duration = 500; + s.finalVolume = 0x7FFF; + return func_8004E0F4(&s); +} + +AuResult snd_set_song_variation(s32 songName, s32 variation) { + SongUpdateEvent s; + s.songName = songName; + s.variation = variation; + return func_80050970(&s); +} + +// get file and player information for a given song name if it's currently playing +AuResult snd_song_get_playing_info(s32 songName, BGMHeader** outFile, BGMPlayer** outPlayer) { + AuResult status = AU_RESULT_OK; + BGMHeader* bgmFile; + + bgmFile = gSoundGlobals->dataBGM[0]; + if (songName == bgmFile->name) { + *outPlayer = gBGMPlayerA; + *outFile = bgmFile; + } else { + bgmFile = gSoundGlobals->dataBGM[1]; + if (songName == bgmFile->name) { + *outPlayer = gBGMPlayerB; + *outFile = bgmFile; + } else { + status = AU_ERROR_1; + } + } + return status; +} + +AuResult func_80055D38(s32 songName, f32 arg1) { + BGMPlayer* bgmPlayer; + BGMHeader* bgmFile; + AuResult status; + + status = snd_song_get_playing_info(songName, &bgmFile, &bgmPlayer); + + if (status == AU_RESULT_OK) { + func_80050770(bgmPlayer, arg1); + } + + return status; +} + +AuResult func_80055D8C(s32 songName, s32 arg1) { + BGMPlayer* bgmPlayer; + BGMHeader* bgmFile; + AuResult status; + + status = snd_song_get_playing_info(songName, &bgmFile, &bgmPlayer); + + if (status == AU_RESULT_OK) { + func_80050818(bgmPlayer, arg1); + } + + return status; +} + +AuResult snd_song_set_track_volumes(s32 songName, MusicTrackVols trackVolSet) { + BGMPlayer* bgmPlayer; + BGMHeader* bgmFile; + AuResult status; + + status = snd_song_get_playing_info(songName, &bgmFile, &bgmPlayer); + + if (status == AU_RESULT_OK) { + u8* trackVols = snd_song_get_track_volumes_set(trackVolSet); + + if (trackVols != NULL) { + au_bgm_set_track_volumes(bgmPlayer, trackVols, TRUE); + } else { + status = AU_ERROR_11; + } + } + + return status; +} + +AuResult snd_song_clear_track_volumes(s32 songName, MusicTrackVols trackVolSet) { + BGMPlayer* bgmPlayer; + BGMHeader* bgmFile; + AuResult status; + + status = snd_song_get_playing_info(songName, &bgmFile, &bgmPlayer); + + if (status == AU_RESULT_OK) { + u8* trackVols = snd_song_get_track_volumes_set(trackVolSet); + + if (trackVols != NULL) { + au_bgm_set_track_volumes(bgmPlayer, trackVols, FALSE); + } else { + status = AU_ERROR_11; + } + } + + return status; +} + +static u8* snd_song_get_track_volumes_set(MusicTrackVols trackVolSet) { + u8* trackVols = NULL; + + switch (trackVolSet) { + case TRACK_VOLS_0: + trackVols = D_80078DB8; + break; + case TRACK_VOLS_1: + trackVols = D_80078DC4; + break; + case TRACK_VOLS_2: + trackVols = D_80078DCC; + break; + case TRACK_VOLS_3: + trackVols = D_80078DD0; + break; + case TRACK_VOLS_KPA_OUTSIDE: + trackVols = TrackVols_KPA_Outside; + break; + case TRACK_VOLS_KPA_1: + trackVols = TrackVols_KPA_1; + break; + case TRACK_VOLS_KPA_2: + trackVols = TrackVols_KPA_2; + break; + case TRACK_VOLS_KPA_3: + trackVols = TrackVols_KPA_3; + break; + } + + return trackVols; +} + +static const f32 padding[] = {0.0f}; + +static AuResult snd_song_change_track_volume(s32 songName, u32 trackIdx, u32 volume) { + BGMPlayer* bgmPlayer; + BGMHeader* bgmFile; + AuResult status; + + status = snd_song_get_playing_info(songName, &bgmFile, &bgmPlayer); + if (status == AU_RESULT_OK) { + if (volume > 0x7F) { + volume = 0x7F; + } + if (trackIdx > 15) { + trackIdx = 15; + } + au_bgm_change_track_volume(bgmPlayer, trackIdx, 96, volume); + } + return status; +} + +AuResult snd_song_set_track_vol_mute(s32 songName, s32 trackIdx) { + return snd_song_change_track_volume(songName, trackIdx, 0); +} + +AuResult snd_song_set_track_vol_quiet(s32 songName, s32 trackIdx) { + return snd_song_change_track_volume(songName, trackIdx, 0x3F); +} + +AuResult snd_song_set_track_vol_full(s32 songName, s32 trackIdx) { + return snd_song_change_track_volume(songName, trackIdx, 0x7F); +} + +void bgm_set_proximity_mix_far(s32 songName, s32 mix) { + au_bgm_set_proximity_mix(songName, (u8)mix); +} + +void bgm_set_proximity_mix_near(s32 songName, s32 mix) { + au_bgm_set_proximity_mix(songName, (u8)mix | 0x57000000); +} + +void bgm_set_proximity_mix_full(s32 songName, s32 mix) { + au_bgm_set_proximity_mix(songName, (u8)mix | 0x7F000000); +} + +void bgm_poll_music_events(MusicEventTrigger** musicEvents, s32* count) { + AuGlobals* globals = gSoundGlobals; + + *musicEvents = globals->musicEventQueue; + *count = globals->musicEventQueueCount; +} + +void bgm_flush_music_events(void) { + gSoundGlobals->flushMusicEventQueue = TRUE; +} + +void bgm_trigger_music_event(s32 playerID, s32 trackIndex, s32 eventInfo) { + AuGlobals* globals = gSoundGlobals; + + if (globals->musicEventQueueCount < 16) { + *globals->musicEventQueuePos++ = ((playerID << 0x1C) + ((trackIndex & 0xF) << 0x18) + eventInfo); + globals->musicEventQueueCount++; + } +} + +void bgm_clear_music_events(void) { + AuGlobals* globals = gSoundGlobals; + s32* buf = globals->musicEventQueue; + s32 i = 15; + + do { + *buf++ = 0; + } while(i-- != 0); + + globals->musicEventQueueCount = 0; + globals->flushMusicEventQueue = FALSE; + globals->musicEventQueuePos = globals->musicEventQueue; +} + +void au_register_callback(AuCallback func, s32 index) { + gSoundGlobals->audioThreadCallbacks[index] = func; +} + +void audio_set_stereo(void) { + func_80056D5C(1); + func_80054DA8(0); +} + +void audio_set_mono(void) { + func_80056D5C(0); + func_80054DA8(1); +} + +void func_800561A4(s32 arg0) { + func_80054CE0(1, arg0); +} + +void func_800561C4(s32 arg0) { + func_80054CE0(0x10, arg0); +} + +void func_800561E4(s32 arg0) { + func_80054D74(0x10, arg0); +} + +void func_80056204(void) { + func_8004BA54(gSoundManager, 0); +} + +void func_80056228(void) { + func_8004BA54(gSoundManager, 1); +} diff --git a/src/audio/31650.c b/src/audio/31650.c new file mode 100644 index 0000000000..b803ad37ae --- /dev/null +++ b/src/audio/31650.c @@ -0,0 +1,763 @@ +#include "common.h" +#include "audio.h" +#include "nu/nualsgi.h" + +static s16 _getVol(s16 arg0, s32 arg1, s16 arg2, u16 arg3); + +AuSynDriver* gActiveSynDriverPtr = NULL; +AuSynDriver* gSynDriverPtr = NULL; +u8 D_80078E58 = FALSE; +u16 D_80078E5A = 0x7FFF; +u8 D_80078E5C = FALSE; + +extern s16 AuEqPower[128]; + +#define AU_EQPOW_MID_IDX 64 +#define AU_EQPOW_MAX_IDX 127 + +void au_driver_init(AuSynDriver* driver, ALConfig* config) { + s32 i; + ALHeap* heap = config->heap; + + if (gActiveSynDriverPtr != NULL) { + return; + } + + driver->num_pvoice = config->num_pvoice; + driver->unk_num_gamma = config->unk_num_gamma; + driver->curSamples = 0; + driver->unk_04 = 0; + driver->outputRate = config->outputRate; + driver->dmaNew = config->dmaNew; + + gActiveSynDriverPtr = driver; + gSynDriverPtr = driver; + D_80078E58 = FALSE; + D_80078E5A = 0x7FFF; + D_80078E5C = TRUE; + + gSynDriverPtr->pvoices = alHeapAlloc(heap, config->num_pvoice, sizeof(*gSynDriverPtr->pvoices)); + + // this is inlined alN_PVoiceNew + for (i = 0; i < config->num_pvoice; i++) { + AuPVoice* voice = &gSynDriverPtr->pvoices[i]; + voice->loadFilter.dc_state = alHeapAlloc(heap, 1, sizeof(*voice->loadFilter.dc_state)); + voice->loadFilter.dc_lstate = alHeapAlloc(heap, 1, sizeof(*voice->loadFilter.dc_lstate)); + // note: dmaNew has type ALDMANew (nuAuDmaNew), which returns a ALDMAproc (nuAuDmaCallBack) + voice->loadFilter.dc_dmaFunc = ((ALDMAproc (*)(NUDMAState**))(gSynDriverPtr->dmaNew))(&voice->loadFilter.dc_dmaState); + voice->loadFilter.dc_lastsam = 0; + voice->loadFilter.dc_first = 1; + voice->loadFilter.dc_memin = NULL; + voice->resampler.rs_state = alHeapAlloc(heap, 1, sizeof(*voice->resampler.rs_state)); + voice->resampler.delta = 0; + voice->resampler.first = 1; + voice->resampler.rs_ratio = 1.0f; + voice->envMixer.em_state = alHeapAlloc(heap, 1, sizeof(*voice->envMixer.em_state)); + voice->envMixer.em_first = 1; + voice->envMixer.em_motion = AL_STOPPED; + voice->envMixer.em_volume = 1; + voice->envMixer.em_ltgt = 1; + voice->envMixer.em_rtgt = 1; + voice->envMixer.em_cvolL = 1; + voice->envMixer.em_cvolR = 1; + voice->envMixer.em_dryamt = 0; + voice->envMixer.em_wetamt = 0; + voice->envMixer.em_lratm = 1; + voice->envMixer.em_lratl = 0; + voice->envMixer.em_rratm = 1; + voice->envMixer.em_rratl = 0; + voice->envMixer.em_delta = 0; + voice->envMixer.em_segEnd = 0; + voice->envMixer.em_pan = 64; + voice->unk_74 = 0; + voice->next = NULL; + voice->gammaID = 0; + voice->index = i; + } + + gSynDriverPtr->al_unk_gamma = alHeapAlloc(heap, config->unk_num_gamma, sizeof(*gSynDriverPtr->al_unk_gamma)); + + for (i = 0; i < config->unk_num_gamma; i++) { + AlUnkGamma* gamma = &gSynDriverPtr->al_unk_gamma[i]; + gamma->pvoice_10 = NULL; + gamma->pvoice_14 = NULL; + gamma->unk_00 = 0x7FFF; + gamma->currentEffectType = AU_FX_NONE; + gamma->fxL = alHeapAlloc(heap, 1, sizeof(*gamma->fxL)); + gamma->fxR = alHeapAlloc(heap, 1, sizeof(*gamma->fxR)); + func_80058E84(gamma->fxL, gamma->currentEffectType, heap); + func_80058E84(gamma->fxR, gamma->currentEffectType, heap); + } + + gSynDriverPtr->unk_drvr_24 = alHeapAlloc(heap, 2 * AUDIO_SAMPLES, 2); + gSynDriverPtr->unk_drvr_28 = alHeapAlloc(heap, 2 * AUDIO_SAMPLES, 2); + D_800A3FEC = 0; + D_800A3FEE = 0; + D_800A3FF0 = 4; + + D_800A3FE0 = alHeapAlloc(heap, 4 * AUDIO_SAMPLES, 2); + D_800A3FE4 = alHeapAlloc(heap, 4 * AUDIO_SAMPLES, 2); + for (i = 0; i < 4 * AUDIO_SAMPLES; i++) { + D_800A3FE4[i] = D_800A3FE0[i] = 0; + } + + gSynDriverPtr->heap = heap; +} + +void au_driver_release(void) { + if (gActiveSynDriverPtr != NULL) { + gActiveSynDriverPtr = NULL; + } +} + +Acmd* alAudioFrame(Acmd* cmdList, s32* cmdLen, s16* outBuf, s32 outLen) { + Acmd* cmdListPos; + AuPVoice* pvoice; + AlUnkGamma* gamma; + + s16* bufPos; + s16 auxOut; + s16 mainOut; + + s32 i; + s32 var_s7 = FALSE; + + cmdListPos = cmdList; + bufPos = outBuf; + if (gActiveSynDriverPtr == NULL) { + *cmdLen = 0; + } else { + au_update_players_main(); + if (D_80078E5C) { + for (i = 0; i < gSynDriverPtr->num_pvoice; i++) { + pvoice = &gSynDriverPtr->pvoices[i]; + if (pvoice->envMixer.em_motion == AL_PLAYING) { + func_80057874(i, pvoice->envMixer.em_pan); + } + } + D_80078E5C = FALSE; + } + while (outLen > 0) { + au_update_clients_2(); + for (i = 0; i < gSynDriverPtr->num_pvoice; i++) { + pvoice = &gSynDriverPtr->pvoices[i]; + + if ((pvoice->gammaID != 0xFF) && (pvoice->gammaID < gSynDriverPtr->unk_num_gamma)) { + gamma = &gSynDriverPtr->al_unk_gamma[pvoice->gammaID]; + if (gamma->pvoice_14 != NULL) { + gamma->pvoice_14->next = pvoice; + } else { + gamma->pvoice_10 = pvoice; + } + gamma->pvoice_14 = pvoice; + } + } + var_s7 = TRUE; + for (i = 0; i < gSynDriverPtr->unk_num_gamma; i++) { + gamma = &gSynDriverPtr->al_unk_gamma[i]; + if (gamma->pvoice_10 != NULL) { + aClearBuffer(cmdListPos++, N_AL_MAIN_L_OUT, 8 * AUDIO_SAMPLES); + if (gamma->pvoice_10 != NULL) { + AuPVoice* next; + do { + cmdListPos = func_80058050(gamma->pvoice_10, cmdListPos); + next = gamma->pvoice_10->next; + gamma->pvoice_10->next = NULL; + gamma->pvoice_10 = next; + } while (next != NULL); + gamma->pvoice_14 = 0; + } + if (gamma->currentEffectType != AU_FX_NONE) { + cmdListPos = func_80059310(gamma->fxL, cmdListPos, N_AL_AUX_L_OUT, 0); + cmdListPos = func_80059310(gamma->fxR, cmdListPos, N_AL_AUX_R_OUT, 0); + } + if (i == D_800A3FEC) { + mainOut = -1; + switch (D_800A3FEE) { + case 1: + mainOut = N_AL_MAIN_L_OUT; + auxOut = N_AL_AUX_L_OUT; + break; + case 2: + mainOut = N_AL_MAIN_R_OUT; + auxOut = N_AL_AUX_R_OUT; + break; + } + if (mainOut != -1) { + aSaveBufferSize(cmdListPos++, 2 * AUDIO_SAMPLES, mainOut, osVirtualToPhysical(D_800A3FE0 + (D_800A3FE8 % D_800A3FF0) * AUDIO_SAMPLES)); + aLoadBufferSize(cmdListPos++, 2 * AUDIO_SAMPLES, mainOut, osVirtualToPhysical(D_800A3FE0 + ((D_800A3FE8 + 1) % D_800A3FF0) * AUDIO_SAMPLES)); + aSaveBufferSize(cmdListPos++, 2 * AUDIO_SAMPLES, auxOut, osVirtualToPhysical(D_800A3FE4 + (D_800A3FE8 % D_800A3FF0) * AUDIO_SAMPLES)); + aLoadBufferSize(cmdListPos++, 2 * AUDIO_SAMPLES, auxOut, osVirtualToPhysical(D_800A3FE4 + ((D_800A3FE8 + 1) % D_800A3FF0) * AUDIO_SAMPLES)); + + } + } + if (var_s7) { + aClearBuffer(cmdListPos++, 0, 4 * AUDIO_SAMPLES); + } else { + aLoadBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, 0, osVirtualToPhysical(gSynDriverPtr->unk_drvr_28)); + } + aMix(cmdListPos++, 0, gamma->unk_00, N_AL_AUX_L_OUT, 0); + aMix(cmdListPos++, 0, gamma->unk_00, N_AL_AUX_R_OUT, 2 * AUDIO_SAMPLES); + aSaveBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, 0, osVirtualToPhysical(gSynDriverPtr->unk_drvr_28)); + if (var_s7) { + aClearBuffer(cmdListPos++, 0, 4 * AUDIO_SAMPLES); + var_s7 = FALSE; + } else { + aLoadBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, 0, osVirtualToPhysical(gSynDriverPtr->unk_drvr_24)); + } + aMix(cmdListPos++, 0, gamma->unk_00, N_AL_MAIN_L_OUT, 0); + aMix(cmdListPos++, 0, gamma->unk_00, N_AL_MAIN_R_OUT, 2 * AUDIO_SAMPLES); + aSaveBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, 0, osVirtualToPhysical(gSynDriverPtr->unk_drvr_24)); + } + } + aDMEMMove(cmdListPos++, 0, N_AL_MAIN_L_OUT, 4 * AUDIO_SAMPLES); + aLoadBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, N_AL_AUX_L_OUT, osVirtualToPhysical(gSynDriverPtr->unk_drvr_28)); + aMix(cmdListPos++, 0, 0x7FFF, N_AL_AUX_L_OUT, N_AL_MAIN_L_OUT); + aMix(cmdListPos++, 0, 0x7FFF, N_AL_AUX_R_OUT, N_AL_MAIN_R_OUT); + if (D_80078E58) { + u16 temp; + aDMEMMove(cmdListPos++, N_AL_MAIN_L_OUT, 0, 4 * AUDIO_SAMPLES); + aClearBuffer(cmdListPos++, N_AL_MAIN_L_OUT, 4 * AUDIO_SAMPLES); + temp = D_80078E5A; + aMix(cmdListPos++, 0, temp, 0, N_AL_MAIN_L_OUT); + aMix(cmdListPos++, 0, temp, 2 * AUDIO_SAMPLES, N_AL_MAIN_R_OUT); + } + outLen -= AUDIO_SAMPLES; + aInterleavePart(cmdListPos++); + aSaveBufferSize(cmdListPos++, 4 * AUDIO_SAMPLES, 0, bufPos); + bufPos += 2 * AUDIO_SAMPLES; + D_800A3FE8++; + gSynDriverPtr->curSamples += AUDIO_SAMPLES; + } + *cmdLen = (cmdListPos - cmdList); + } + return cmdListPos; +} + +void func_80056D34(void) { + D_80078E58 = TRUE; +} + +void func_80056D44(s16 arg0) { + D_80078E5A = arg0; +} + +s16 func_80056D50(void) { + return D_80078E5A; +} + +void func_80056D5C(u8 bStereoSound) { + AuSynUseStereo = bStereoSound; + D_80078E5C = TRUE; +} + +void func_80056D78(u8 index, u16 arg1) { + AlUnkGamma* gamma = &gSynDriverPtr->al_unk_gamma[index]; + + gamma->unk_00 = arg1 & 0x7FFF; +} + +u16 func_80056DA4(u8 index, u16 arg1) { + AlUnkGamma* gamma = &gSynDriverPtr->al_unk_gamma[index]; + + return gamma->unk_00; +} + +void func_80056DCC(u8 index, u8 effectType) { + AlUnkGamma* gamma = &gSynDriverPtr->al_unk_gamma[index]; + + gamma->currentEffectType = effectType; + func_8005904C(gamma->fxL, effectType); + func_8005904C(gamma->fxR, effectType); +} + +void func_80056E34(u8 index, s16 delayIndex, s16 paramID, s32 value) { + AlUnkGamma* gamma = &gSynDriverPtr->al_unk_gamma[index]; + + au_fx_param_hdl(gamma->fxL, delayIndex, paramID, value); + au_fx_param_hdl(gamma->fxR, delayIndex, paramID, value); +} + +void func_80056EC0(u8 index, s8 arg1) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[index]; + + pvoice->gammaID = arg1; +} + +// n_alLoadParam case AL_FILTER_RESET +void au_pvoice_reset_filter(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuLoadFilter* filter = &pvoice->loadFilter; + + pvoice->envMixer.em_motion = AL_STOPPED; + pvoice->envMixer.em_first = 1; + pvoice->envMixer.em_volume = 1; + pvoice->resampler.delta = 0; + pvoice->resampler.first = 1; + filter->dc_lastsam = 0; + filter->dc_first = 1; + filter->dc_sample = 0; + if (filter->instrument != NULL) { + filter->dc_memin = filter->instrument->base; + if (filter->instrument->type == 0) { + if (filter->instrument->loopEnd != 0){ + filter->dc_loop.count = filter->instrument->loopCount; + } + } else if (filter->instrument->type == 1) { + if (filter->instrument->loopEnd != 0){ + filter->dc_loop.count = filter->instrument->loopCount; + } + } + } +} + +// n_alEnvmixerParam case AL_FILTER_START +void au_pvoice_set_playing(u8 index) { + AuPVoice* pvoice = (AuPVoice*)&gSynDriverPtr->pvoices[index]; + + pvoice->envMixer.em_motion = AL_PLAYING; +} + +#define ADPCMFBYTES 9 + +// n_alLoadParam case AL_FILTER_SET_WAVETABLE +void au_pvoice_set_filter(u8 index, u8 reverbType, Instrument* instrument, f32 pitchRatio, s16 arg4, u8 pan, u8 reverb, s32 arg7) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[index]; + AuLoadFilter* filter = &pvoice->loadFilter; + AuEnvMixer* envMixer = &pvoice->envMixer; + AuResampler* resampler = &pvoice->resampler; + + pvoice->gammaID = reverbType; + filter->instrument = instrument; + + pvoice->loadFilter.dc_memin = filter->instrument->base; + pvoice->loadFilter.dc_sample = 0; + + switch (filter->instrument->type) { + case AL_ADPCM_WAVE: + filter->instrument->wavDataLength = (filter->instrument->wavDataLength / ADPCMFBYTES) * ADPCMFBYTES; + pvoice->loadFilter.dc_bookSize = filter->instrument->dc_bookSize; + if (filter->instrument->loopEnd == 0) { + filter->dc_loop.count = 0; + filter->dc_loop.end = 0; + filter->dc_loop.start = 0; + } else { + filter->dc_loop.start = filter->instrument->loopStart; + filter->dc_loop.end = filter->instrument->loopEnd; + filter->dc_loop.count = filter->instrument->loopCount; + alCopy(filter->instrument->loopPredictor, filter->dc_lstate, sizeof(ADPCM_STATE)); + } + break; + case AL_RAW16_WAVE: + if (filter->instrument->loopEnd != 0) { + filter->dc_loop.start = filter->instrument->loopStart; + filter->dc_loop.end = filter->instrument->loopEnd; + filter->dc_loop.count = filter->instrument->loopCount; + } else { + filter->dc_loop.count = 0; + filter->dc_loop.end = 0; + filter->dc_loop.start = 0; + } + break; + } + + envMixer->em_motion = AL_PLAYING; + envMixer->em_first = 1; + envMixer->em_delta = 0; + envMixer->em_segEnd = arg7; + envMixer->em_pan = pan; + envMixer->em_volume = SQ(arg4) >> 0xF; + envMixer->em_dryamt = AuEqPower[reverb]; + envMixer->em_wetamt = AuEqPower[AU_EQPOW_MAX_IDX - reverb]; + if (envMixer->em_segEnd != 0) { + envMixer->em_cvolL = 1; + envMixer->em_cvolR = 1; + } else { + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } + resampler->rs_ratio = pitchRatio; +} + +void au_pvoice_set_filter_wavetable(u8 voiceIdx, Instrument* instrument) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuLoadFilter* filter = &pvoice->loadFilter; + + pvoice->loadFilter.instrument = instrument; + pvoice->loadFilter.dc_memin = filter->instrument->base; + pvoice->loadFilter.dc_sample = 0; + + switch (filter->instrument->type) { + case AL_ADPCM_WAVE: + filter->instrument->wavDataLength = (filter->instrument->wavDataLength / ADPCMFBYTES) * ADPCMFBYTES; + pvoice->loadFilter.dc_bookSize = filter->instrument->dc_bookSize; + if (filter->instrument->loopEnd == 0) { + pvoice->loadFilter.dc_loop.count = 0; + pvoice->loadFilter.dc_loop.end = 0; + pvoice->loadFilter.dc_loop.start = 0; + } else { + pvoice->loadFilter.dc_loop.start = filter->instrument->loopStart; + pvoice->loadFilter.dc_loop.end = filter->instrument->loopEnd; + pvoice->loadFilter.dc_loop.count = filter->instrument->loopCount; + alCopy(filter->instrument->loopPredictor, pvoice->loadFilter.dc_lstate, sizeof(ADPCM_STATE)); + } + break; + case AL_RAW16_WAVE: + if (filter->instrument->loopEnd != 0) { + pvoice->loadFilter.dc_loop.start = filter->instrument->loopStart; + pvoice->loadFilter.dc_loop.end = filter->instrument->loopEnd; + pvoice->loadFilter.dc_loop.count = filter->instrument->loopCount; + } else { + pvoice->loadFilter.dc_loop.count = 0; + pvoice->loadFilter.dc_loop.end = 0; + pvoice->loadFilter.dc_loop.start = 0; + } + break; + } +} + +void au_pvoice_set_pitch_ratio(u8 voiceIdx, f32 pitchRatio) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + pvoice->resampler.rs_ratio = pitchRatio; +} + +void func_8005736C(u8 voiceIdx, s16 volume, s32 arg2, u8 pan, u8 arg4) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* envMixer = &pvoice->envMixer; + + if (envMixer->em_delta >= envMixer->em_segEnd) { + envMixer->em_delta = envMixer->em_segEnd; + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } else { + envMixer->em_cvolL = _getVol(envMixer->em_cvolL, envMixer->em_delta, envMixer->em_lratm, envMixer->em_lratl); + envMixer->em_cvolR = _getVol(envMixer->em_cvolR, envMixer->em_delta, envMixer->em_rratm, envMixer->em_rratl); + } + if (envMixer->em_cvolL == 0) { + envMixer->em_cvolL = 1; + } + if (envMixer->em_cvolR == 0) { + envMixer->em_cvolR = 1; + } + + envMixer->em_delta = 0; + envMixer->em_segEnd = arg2; + envMixer->em_pan = pan; + envMixer->em_volume = SQ(volume) >> 0xF; + envMixer->em_dryamt = AuEqPower[arg4]; + envMixer->em_wetamt = AuEqPower[AU_EQPOW_MAX_IDX - arg4]; + envMixer->em_first = 1; +} + +void func_80057548(u8 voiceIdx, u8 pan, u8 arg2) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* envMixer = &pvoice->envMixer; + + if (envMixer->em_delta >= envMixer->em_segEnd) { + envMixer->em_delta = envMixer->em_segEnd; + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } else { + envMixer->em_cvolL = _getVol(envMixer->em_cvolL, envMixer->em_delta, envMixer->em_lratm, envMixer->em_lratl); + envMixer->em_cvolR = _getVol(envMixer->em_cvolR, envMixer->em_delta, envMixer->em_rratm, envMixer->em_rratl); + } + if (envMixer->em_cvolL == 0) { + envMixer->em_cvolL = 1; + } + if (envMixer->em_cvolR == 0) { + envMixer->em_cvolR = 1; + } + + envMixer->em_pan = pan; + envMixer->em_dryamt = AuEqPower[arg2]; + envMixer->em_wetamt = AuEqPower[AU_EQPOW_MAX_IDX - arg2]; + envMixer->em_first = 1; +} + +void func_800576EC(u8 voiceIdx, s16 arg1, s32 arg2) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* envMixer = &pvoice->envMixer; + + if (envMixer->em_delta >= envMixer->em_segEnd) { + envMixer->em_delta = envMixer->em_segEnd; + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } else { + envMixer->em_cvolL = _getVol(envMixer->em_cvolL, envMixer->em_delta, envMixer->em_lratm, envMixer->em_lratl); + envMixer->em_cvolR = _getVol(envMixer->em_cvolR, envMixer->em_delta, envMixer->em_rratm, envMixer->em_rratl); + } + if (envMixer->em_cvolL == 0) { + envMixer->em_cvolL = 1; + } + if (envMixer->em_cvolR == 0) { + envMixer->em_cvolR = 1; + } + + envMixer->em_volume = SQ(arg1) >> 0xF; + envMixer->em_delta = 0; + envMixer->em_segEnd = arg2; + envMixer->em_first = 1; +} + +void func_80057874(u8 voiceIdx, u8 pan) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* envMixer = &pvoice->envMixer; + + if (envMixer->em_delta >= envMixer->em_segEnd) { + envMixer->em_delta = envMixer->em_segEnd; + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } else { + envMixer->em_cvolL = _getVol(envMixer->em_cvolL, envMixer->em_delta, envMixer->em_lratm, envMixer->em_lratl); + envMixer->em_cvolR = _getVol(envMixer->em_cvolR, envMixer->em_delta, envMixer->em_rratm, envMixer->em_rratl); + } + if (envMixer->em_cvolL == 0) { + envMixer->em_cvolL = 1; + } + if (envMixer->em_cvolR == 0) { + envMixer->em_cvolR = 1; + } + + envMixer->em_pan = pan; + envMixer->em_first = 1; +} + +void func_800579D8(u8 voiceIdx, u8 dryAmt) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* envMixer = &pvoice->envMixer; + + if (envMixer->em_delta >= envMixer->em_segEnd) { + envMixer->em_delta = envMixer->em_segEnd; + if (!AuSynUseStereo) { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MID_IDX]) >> 0xF; + } else { + envMixer->em_cvolL = (envMixer->em_volume * AuEqPower[envMixer->em_pan]) >> 0xF; + envMixer->em_cvolR = (envMixer->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - envMixer->em_pan]) >> 0xF; + } + } else { + envMixer->em_cvolL = _getVol(envMixer->em_cvolL, envMixer->em_delta, envMixer->em_lratm, envMixer->em_lratl); + envMixer->em_cvolR = _getVol(envMixer->em_cvolR, envMixer->em_delta, envMixer->em_rratm, envMixer->em_rratl); + } + if (envMixer->em_cvolL == 0) { + envMixer->em_cvolL = 1; + } + if (envMixer->em_cvolR == 0) { + envMixer->em_cvolR = 1; + } + + envMixer->em_dryamt = AuEqPower[dryAmt]; + envMixer->em_wetamt = AuEqPower[AU_EQPOW_MAX_IDX - dryAmt]; + envMixer->em_first = 1; +} + +s32 func_80057B64(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->envMixer.em_motion; +} + +s32 func_80057B8C(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->gammaID; +} + +f32 func_80057BB4(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->resampler.rs_ratio; +} + +u8 func_80057BDC(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->envMixer.em_pan; +} + +s16 func_80057C04(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->envMixer.em_dryamt; +} + +s16 func_80057C2C(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + + return pvoice->envMixer.em_wetamt; +} + +s32 func_80057C54(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* sub48 = &pvoice->envMixer; + u32 retVal; + + if (sub48->em_delta >= sub48->em_segEnd) { + if (!AuSynUseStereo) { + retVal = (sub48->em_volume * AuEqPower[AU_EQPOW_MID_IDX] * 2) >> 0x10; + } else { + retVal = (sub48->em_volume * AuEqPower[sub48->em_pan] * 2) >> 0x10; + } + } else { + retVal = _getVol(sub48->em_cvolL, sub48->em_delta, sub48->em_lratm, sub48->em_lratl); + } + return retVal; +} + +s32 func_80057D0C(u8 voiceIdx) { + AuPVoice* pvoice = &gSynDriverPtr->pvoices[voiceIdx]; + AuEnvMixer* sub48 = &pvoice->envMixer; + u32 retVal; + + if (sub48->em_delta >= sub48->em_segEnd) { + if (!AuSynUseStereo) { + retVal = (sub48->em_volume * AuEqPower[AU_EQPOW_MID_IDX] * 2) >> 0x10; + } else { + retVal = (sub48->em_volume * AuEqPower[AU_EQPOW_MAX_IDX - sub48->em_pan] * 2) >> 0x10; + } + } else { + retVal = _getVol(sub48->em_cvolL, sub48->em_delta, sub48->em_lratm, sub48->em_lratl); + } + return retVal; +} + +void func_80057DC8(s32 arg0) { + if (arg0 < 2) { + D_800A3FF0 = 0; + D_800A3FEE = 0; + } + + D_800A3FF0 = arg0; + if (arg0 >= 5) { + D_800A3FF0 = 4; + } +} + +void func_80057E08(u8 arg0) { + s32* phi_a1 = (s32*)D_800A3FE0; + s32* phi_v1 = (s32*)D_800A3FE4; + s32 i; + + for (i = 0; i < 2 * AUDIO_SAMPLES; i++) { + *phi_a1++ = 0; + *phi_v1++ = 0; + } + + D_800A3FEC = arg0; + D_800A3FEE = 1; + D_800A3FE8 = 0; +} + +void func_80057E5C(u8 arg0) { + s32* phi_a1 = (s32*)D_800A3FE0; + s32* phi_v1 = (s32*)D_800A3FE4; + s32 i; + + for (i = 0; i < 2 * AUDIO_SAMPLES; i++) { + *phi_a1++ = 0; + *phi_v1++ = 0; + } + + D_800A3FEC = arg0; + D_800A3FEE = 2; + D_800A3FE8 = 0; +} + +void func_80057EB0(void) { + D_800A3FEC = 0; + D_800A3FEE = 0; + D_800A3FE8 = 0; +} + +void func_80057ED0(s16 arg0) { + s32* phi_a1 = (s32*)D_800A3FE0; + s32* phi_v1 = (s32*)D_800A3FE4; + s32 i; + + for (i = 0; i < 2 * AUDIO_SAMPLES; i++) { + *phi_a1++ = 0; + *phi_v1++ = 0; + } + + D_800A3FEC = 0; + D_800A3FEE = arg0; + D_800A3FE8 = 0; +} + +void alHeapInit(ALHeap* hp, u8* base, s32 len) { + u32 i; + s32 alignBytes = 0x10 - ((s32)base & 0xF); + + if (alignBytes != 0x10) { + hp->base = base + alignBytes; + } else { + hp->base = base; + } + hp->len = len; + hp->count = 0; + hp->cur = hp->base; + + for (i = 0; i < (u32)(hp->len) >> 2; i++) { + ((u32*)hp->base)[i] = 0; + } +} + +void* alHeapAlloc(ALHeap* heap, s32 count, s32 size) { + void* ret = NULL; + u8* newCur = &heap->cur[ALIGN16(count * size)]; + + if (&heap->base[heap->len] >= newCur) { + ret = heap->cur; + heap->cur = newCur; + } + + return ret; +} + +void alCopy(void* src, void* dst, s32 size) { + s32 i; + u8* srcIt = src; + u8* dstIt = dst; + + for (i = 0; i < size; i++) { + *dstIt++ = *srcIt++; + } +} + +static s16 _getVol(s16 ivol, s32 samples, s16 ratem, u16 ratel) { + s32 tmpl; + samples = samples >> 3; + if (samples == 0) { + return ivol; + } + tmpl = ratel * samples; + tmpl = tmpl >> 16; + tmpl += ratem * samples; + return ivol + tmpl; +} diff --git a/src/audio/33450.c b/src/audio/33450.c new file mode 100644 index 0000000000..217a5e127c --- /dev/null +++ b/src/audio/33450.c @@ -0,0 +1,92 @@ +#include "common.h" +#include "audio.h" + +// values for cosine from 0 to pi/2 multiplied by 32767 +// called n_eqpower in libultra +s16 AuEqPower[128] = { + 32767, 32764, 32757, 32744, 32727, 32704, 32677, 32644, + 32607, 32564, 32517, 32464, 32407, 32344, 32277, 32205, + 32127, 32045, 31958, 31866, 31770, 31668, 31561, 31450, + 31334, 31213, 31087, 30957, 30822, 30682, 30537, 30388, + 30234, 30075, 29912, 29744, 29572, 29395, 29214, 29028, + 28838, 28643, 28444, 28241, 28033, 27821, 27605, 27385, + 27160, 26931, 26698, 26461, 26220, 25975, 25726, 25473, + 25216, 24956, 24691, 24423, 24151, 23875, 23596, 23313, + 23026, 22736, 22442, 22145, 21845, 21541, 21234, 20924, + 20610, 20294, 19974, 19651, 19325, 18997, 18665, 18331, + 17993, 17653, 17310, 16965, 16617, 16266, 15913, 15558, + 15200, 14840, 14477, 14113, 13746, 13377, 13006, 12633, + 12258, 11881, 11503, 11122, 10740, 10357, 9971, 9584, + 9196, 8806, 8415, 8023, 7630, 7235, 6839, 6442, + 6044, 5646, 5246, 4845, 4444, 4042, 3640, 3237, + 2833, 2429, 2025, 1620, 1216, 810, 405, 0 +}; + +static Acmd* _decodeChunk(Acmd* cmdBufPos, AuLoadFilter* arg1, s32 count, s32 size, s16 arg4, s16 arg5, s32 flags); +static s16 _getRate(f64 arg0, f64 arg1, s32 arg4, u16* arg5); + +// au_pull_voice -- based on n_alAdpcmPull +INCLUDE_ASM(s32, "audio/33450", func_80058050); + +static Acmd* _decodeChunk(Acmd* cmdBufPos, AuLoadFilter* filter, s32 tsam, s32 nbytes, s16 output, s16 input, s32 flags) { + s32 endAddr; + s32 endAlign; + s32 paddedSize; + + if (nbytes > 0) { + endAddr = filter->dc_dmaFunc(filter->dc_memin, nbytes, filter->dc_dmaState, filter->instrument->unk_25); // ALDMAproc has an extra arg added + endAlign = endAddr & 7; + nbytes += endAlign; + paddedSize = nbytes + 8 - (nbytes & 7); + n_aLoadBuffer(cmdBufPos++, paddedSize, input, endAddr - endAlign); + } else { + endAlign = 0; + } + + if (flags & A_LOOP) { + aSetLoop(cmdBufPos++, K0_TO_PHYS(filter->dc_lstate)); + } + + n_aADPCMdec(cmdBufPos++, filter->dc_state, flags, tsam << 1, endAlign, output); + + filter->dc_first = 0; + return cmdBufPos; +} + +static s16 _getRate(f64 vol, f64 tgt, s32 count, u16* ratel) { + f64 inv; + f64 a; + f64 b; + s16 c_int; + s16 a_int; + s16 b_int; + + if (count == 0) { + if (tgt >= vol) { + *ratel = 0xFFFF; + return 0x7FFF; + } else { + *ratel = 0; + return 0; + } + } + inv = (1.0 / count); + + if (tgt < 1.0) { + tgt = 1.0; + } + if (vol <= 0.0) { + vol = 1.0; + } + + a = (tgt - vol) * inv * 8.0; + a_int = a; + c_int = (a_int - 1); + + b = (a - a_int) + 1.0; + b_int = b; + c_int += b_int; + + *ratel = (b - b_int) * 0xFFFF; + return c_int; +} diff --git a/src/audio/ambience.c b/src/audio/ambience.c new file mode 100644 index 0000000000..f27f25b253 --- /dev/null +++ b/src/audio/ambience.c @@ -0,0 +1,89 @@ +#include "common.h" +//#include "audio/public.h" + +typedef struct { + /* 0x0 */ s16 flags; + /* 0x2 */ s16 fadeState; + /* 0x4 */ s32 fadeTime; + /* 0x8 */ s32 soundID; + /* 0xC */ s32 unkC; +} AmbientSoundSettings; + +typedef enum AmbientSoundState { + AMBIENT_SOUND_IDLE = 0, + AMBIENT_SOUND_FADE_OUT = 1, // fade out old sounds + AMBIENT_SOUND_FADE_IN = 2 // fade in new sounds +} AmbientSoundState; + +AmbientSoundSettings DefaultAmbientSoundData = { + .flags = 0, + .fadeState = 0, + .fadeTime = 0, + .soundID = -1, + .unkC = -1 +}; + +extern AmbientSoundSettings AmbientSoundData; + +void reset_ambient_sounds(void) { + AmbientSoundData = DefaultAmbientSoundData; +} + +void update_ambient_sounds(void) { + AmbientSoundSettings* ambientSoundState = &AmbientSoundData; + s32 error; + + switch (ambientSoundState->fadeState) { + case AMBIENT_SOUND_IDLE: + break; + case AMBIENT_SOUND_FADE_OUT: + if (ambientSoundState->flags & 1) { + if (ambientSoundState->fadeTime < 250) { + error = snd_ambient_quick_fade_out(0); + } else { + error = snd_ambient_slow_fade_out(0, ambientSoundState->fadeTime); + } + + if (error != AU_RESULT_OK) { + return; + } + } + ambientSoundState->fadeState = AMBIENT_SOUND_FADE_IN; + break; + case AMBIENT_SOUND_FADE_IN: + if (ambientSoundState->flags & 1) { + if (snd_ambient_800555E4(0) != AU_RESULT_OK) { + return; + } + ambientSoundState->flags &= ~1; + } + if (ambientSoundState->soundID < 0) { + ambientSoundState->fadeState = AMBIENT_SOUND_IDLE; + } else if (snd_ambient_80055448(ambientSoundState->soundID) == AU_RESULT_OK) { + if (snd_ambient_80055464(0, 0) == AU_RESULT_OK) { + ambientSoundState->fadeState = AMBIENT_SOUND_IDLE; + ambientSoundState->flags |= 1; + } + } + break; + } +} + +s32 play_ambient_sounds(s32 soundID, s32 fadeTime) { + AmbientSoundSettings* state = &AmbientSoundData; + + if (!gGameStatusPtr->musicEnabled) { + snd_ambient_quick_fade_out(state->soundID); + state->flags &= ~1; + return 1; + } + + if (state->soundID == soundID) { + return 2; + } + + state->soundID = soundID; + state->fadeTime = fadeTime; + state->fadeState = AMBIENT_SOUND_FADE_OUT; + return 1; +} diff --git a/src/audio/e0b30_len_b80.c b/src/audio/e0b30_len_b80.c new file mode 100644 index 0000000000..3cad11078b --- /dev/null +++ b/src/audio/e0b30_len_b80.c @@ -0,0 +1,432 @@ +#include "common.h" +#include "npc.h" + +void bgm_update_volume(void); +void bgm_set_target_volume(s16 volume); + +// these are BSS +extern s16 MusicDefaultVolume; +extern s16 MusicMaxVolume; +extern s16 MusicCurrentVolume; +extern s16 MusicTargetVolume; + +MusicSettings BlankMusicSettings = { + .flags = 0, + .state = 0, + .fadeOutTime = -1, + .fadeInTime = 0, + .fadeStartVolume = 0, + .fadeEndVolume = 0, + .songID = -1, + .variation = -1, + .songName = -1, + .battleSongID = 0, + .battleVariation = 0, + .savedSongID = 0, + .savedVariation = 0, + .savedSongName = 0 +}; + +/// Lists the songs that are forced to use the variation determined by `map.songVariation & 1`. +/// @see bgm_get_map_default_variation +s32 SongsUsingVariationFlag[] = { + SONG_SPECIAL_BATTLE, + SONG_TUBBA_BLUBBA_BATTLE, + SONG_JR_TROOPA_BATTLE, + SONG_YOSHI_KIDS_FOUND, + SONG_ITEM_UPGRADE, + SONG_NEW_PARTNER, +}; + +s16 NextVolumeUpdateTimer = 0; + +/// If the given song ID is present in SongsUsingVariationFlag, returns the current +/// map's `songVariation & 1` value. Otherwise, returns -1. +/// +/// @see SongsUsingVariationFlag +/// @returns -1: no override; 0: override to variation 0; 1 override to variation 1 +s32 bgm_get_map_default_variation(s32 songID) { + u32 i; + + for (i = 0; i < ARRAY_COUNT(SongsUsingVariationFlag); i++) { + if (SongsUsingVariationFlag[i] == songID) { + Map* map = &gAreas[gGameStatusPtr->areaID].maps[gGameStatusPtr->mapID]; + + return map->unk_1C.bytes.songVariation & 1; + } + } + + return -1; +} + +void bgm_reset_sequence_players(void) { + s32 i; + + for (i = 0; i < 2; i++) { + gMusicSettings[i] = BlankMusicSettings; + } + + MusicTargetVolume = 8; + MusicMaxVolume = 8; + MusicCurrentVolume = 8; + func_800561A4(8); +} + +void bgm_reset_volume(void) { + MusicTargetVolume = 8; + MusicMaxVolume = 8; +} + +//TODO refactor out constants +void bgm_update_music_settings(void) { + MusicSettings* music = gMusicSettings; + s32 i = 0; + s16 state2 = 2; + s16 flag4 = MUSIC_SETTINGS_FLAGS_4; + s32 flags; + + for (i; i < 2; i++, music++) { + switch (music->state) { + case 0: + break; + case 1: + if (music->flags & MUSIC_SETTINGS_FLAGS_1) { + if (music->fadeOutTime < 250) { + if (!(music->flags & MUSIC_SETTINGS_FLAGS_4)) { + if (au_song_stop(music->songName) == AU_RESULT_OK) { + music->state = state2; + } + } else { + if (func_80055AF0(music->songName) == AU_RESULT_OK) { + music->state = state2; + } + } + } else if (!(music->flags & MUSIC_SETTINGS_FLAGS_4)) { + if (snd_set_song_variation_fade_time(music->songName, music->fadeOutTime, 0) == 0) { + music->state = state2; + } + } else { + if (func_80055BB8(music->songName, 250) == AU_RESULT_OK) { + music->state = state2; + } + } + } else { + if (music->flags & MUSIC_SETTINGS_FLAGS_4) { + music->flags |= MUSIC_SETTINGS_FLAGS_10; + } + music->flags &= ~flag4; + music->state = 5; + } + break; + case 2: + flags = music->flags; + music->flags &= ~flag4; + if (flags & 1) { + if (au_song_is_playing(music->songName) == AU_RESULT_OK) { + music->flags &= ~MUSIC_SETTINGS_FLAGS_1; + music->state = 3; + } + } else { + music->state = 5; + } + break; + case 3: + music->state = 4; + break; + case 4: + music->state = 5; + break; + case 5: + if (!(music->flags & MUSIC_SETTINGS_FLAGS_8)) { + if (music->songID < 0) { + music->state = 0; + } else { + music->songName = au_song_load(music->songID, i); + if (music->songName > 0xFFFFU) { + if ((music->flags & MUSIC_SETTINGS_FLAGS_20)) { + snd_set_song_variation_fade(music->songName, music->variation, + music->fadeInTime, music->fadeStartVolume, music->fadeEndVolume); + music->flags &= ~MUSIC_SETTINGS_FLAGS_20; + } else { + bgm_set_target_volume(MusicDefaultVolume); + } + if (au_song_start_variation(music->songName, music->variation) == 0) { + music->flags |= MUSIC_SETTINGS_FLAGS_1; + music->state = 0; + } + } + } + } else { + if (music->flags & MUSIC_SETTINGS_FLAGS_10) { + music->state = 0; + music->flags &= ~(MUSIC_SETTINGS_FLAGS_10 | MUSIC_SETTINGS_FLAGS_8); + } else if (func_80055B28(music->savedSongName) == 0) { + music->songID = music->savedSongID; + music->variation = music->savedVariation; + music->songName = music->savedSongName; + music->state = 0; + music->flags |= MUSIC_SETTINGS_FLAGS_1; + music->flags &= ~MUSIC_SETTINGS_FLAGS_8; + } + } + break; + } + } + bgm_update_volume(); +} + +static const f32 padding = 0.0f; + +s32 _bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume) { + MusicSettings* musicSetting; + s32 mapSongVariation; + + if (gGameStatusPtr->demoState != 0) { + return 1; + } + + musicSetting = &gMusicSettings[playerIndex]; + + if (!gGameStatusPtr->musicEnabled) { + au_song_stop(musicSetting->songName); + musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_1; + + return 1; + } + + mapSongVariation = bgm_get_map_default_variation(songID); + if (mapSongVariation >= 0) { + variation = mapSongVariation; + } + + if (musicSetting->songID == songID && musicSetting->variation == variation) { + bgm_set_target_volume(volume); + + if (musicSetting->flags & MUSIC_SETTINGS_FLAGS_4) { + func_80055B80(musicSetting->songName); + musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_4; + } + + return 2; + } + + MusicDefaultVolume = volume; + musicSetting->songID = songID; + musicSetting->variation = variation; + musicSetting->fadeOutTime = fadeOutTime; + musicSetting->state = 1; + musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_2; + + return 1; +} + +s32 bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume) { + gMusicSettings[playerIndex].flags &= ~MUSIC_SETTINGS_FLAGS_8; + + return _bgm_set_song(playerIndex, songID, variation, fadeOutTime, volume); +} + +s32 func_8014A964(s32 playerIndex, s32 songID, s32 variation, s32 fadeInTime, s16 fadeStartVolume, s16 fadeEndVolume) { + MusicSettings* musicSetting; + s32 mapSongVariation; + + if (gGameStatusPtr->demoState) { + return 1; + } + + musicSetting = &gMusicSettings[playerIndex]; + + if (!gGameStatusPtr->musicEnabled) { + au_song_stop(musicSetting->songName); + musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_1; + return 1; + } + + mapSongVariation = bgm_get_map_default_variation(songID); + if (mapSongVariation >= 0) { + variation = mapSongVariation; + } + + musicSetting->fadeInTime = fadeInTime; + musicSetting->fadeStartVolume = fadeStartVolume; + musicSetting->fadeEndVolume = fadeEndVolume; + musicSetting->songID = songID; + musicSetting->variation = variation; + musicSetting->flags |= MUSIC_SETTINGS_FLAGS_20; + musicSetting->state = 1; + musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_2; + + return 1; +} + +s32 bgm_adjust_proximity(s32 playerIndex, s32 mix, s16 state) { + MusicSettings* musicSetting = &gMusicSettings[playerIndex]; + + if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { + return FALSE; + } + + if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_2)) { + return FALSE; + } + + switch (state) { + case MUSIC_PROXIMITY_FAR: + bgm_set_proximity_mix_far(musicSetting->songName, mix); + break; + case MUSIC_PROXIMITY_NEAR: + bgm_set_proximity_mix_near(musicSetting->songName, mix); + break; + case MUSIC_PROXIMITY_FULL: + bgm_set_proximity_mix_full(musicSetting->songName, mix); + break; + } + return TRUE; +} + +AuResult bgm_set_track_volumes(s32 playerIndex, s16 trackVolSet) { + MusicSettings* musicSetting = &gMusicSettings[playerIndex]; + + if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { + return AU_RESULT_OK; + } + + return snd_song_set_track_volumes(musicSetting->songName, trackVolSet); +} + +AuResult bgm_clear_track_volumes(s32 playerIndex, s16 trackVolSet) { + MusicSettings* musicSetting = &gMusicSettings[playerIndex]; + + if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { + return AU_RESULT_OK; + } + + return snd_song_clear_track_volumes(musicSetting->songName, trackVolSet); +} + +AuResult bgm_set_variation(s32 playerIndex, s16 arg1) { + MusicSettings* musicSetting = &gMusicSettings[playerIndex]; + + if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { + return AU_RESULT_OK; + } + + return snd_set_song_variation(musicSetting->songName, arg1); +} + +s32 bgm_init_music_players(void) { + bgm_set_song(0, -1, 0, 250, 8); + bgm_set_song(1, -1, 0, 250, 8); + + return 1; +} + +void bgm_quiet_max_volume(void) { + MusicMaxVolume = 4; +} + +void bgm_reset_max_volume(void) { + MusicMaxVolume = 8; +} + +void bgm_set_target_volume(s16 volume) { + MusicTargetVolume = volume; +} + +void bgm_update_volume(void) { + s16 toVolume; + + if (NextVolumeUpdateTimer != 0) { + NextVolumeUpdateTimer--; + return; + } + + toVolume = MusicTargetVolume; + if (toVolume > MusicMaxVolume) { + toVolume = MusicMaxVolume; + } + + if (MusicCurrentVolume != toVolume) { + if (MusicCurrentVolume >= toVolume) { + MusicCurrentVolume--; + } else { + MusicCurrentVolume++; + } + func_800561A4(MusicCurrentVolume); + NextVolumeUpdateTimer = 3; + } +} + +s32 func_8014AD40(void) { + MusicSettings* settings = gMusicSettings; + s32 i; + + for (i = 0; i < 2; i++, settings++) { + if (!(settings->flags & MUSIC_SETTINGS_FLAGS_1)) { + continue; + } + + if (au_song_is_playing(settings->songName)) { + return TRUE; + } + } + return FALSE; +} + +void bgm_pop_song(void) { + MusicSettings* musicSetting = gMusicSettings; + + if (gGameStatusPtr->demoState == 0) { + musicSetting->flags |= MUSIC_SETTINGS_FLAGS_8; + _bgm_set_song(0, musicSetting->savedSongID, musicSetting->savedVariation, 0, 8); + } +} + +void bgm_push_song(s32 songID, s32 variation) { + MusicSettings* musicSetting = gMusicSettings; + + if (gGameStatusPtr->demoState == 0) { + musicSetting->savedSongID = musicSetting->songID; + musicSetting->savedVariation = musicSetting->variation; + musicSetting->savedSongName = musicSetting->songName; + musicSetting->flags |= MUSIC_SETTINGS_FLAGS_4; + bgm_set_song(0, songID, variation, 500, 8); + } +} + +void bgm_pop_battle_song(void) { + MusicSettings* musicSetting = gMusicSettings; + + if (gGameStatusPtr->demoState == 0) { + if (gOverrideFlags & GLOBAL_OVERRIDES_20000) { + gOverrideFlags &= ~GLOBAL_OVERRIDES_20000; + } else { + musicSetting->flags |= MUSIC_SETTINGS_FLAGS_8; + _bgm_set_song(0, musicSetting->savedSongID, musicSetting->savedVariation, 0, 8); + snd_ambient_80055590(0, 250); + } + } +} + +void bgm_push_battle_song(void) { + MusicSettings* musicSetting = gMusicSettings; + + if (gGameStatusPtr->demoState == 0 && !(gOverrideFlags & GLOBAL_OVERRIDES_20000)) { + snd_ambient_8005553C(0, 250); + musicSetting->savedSongID = musicSetting->songID; + musicSetting->savedVariation = musicSetting->variation; + musicSetting->savedSongName = musicSetting->songName; + musicSetting->flags |= MUSIC_SETTINGS_FLAGS_4; + bgm_set_song(0, musicSetting->battleSongID, musicSetting->battleVariation, 500, 8); + } +} + +void bgm_set_battle_song(s32 songID, s32 variation) { + MusicSettings* musicSetting = gMusicSettings; + + musicSetting->battleSongID = songID; + musicSetting->battleVariation = variation; +} + +void func_8014AFA0(void) { +} diff --git a/src/audio/private.h b/src/audio/private.h new file mode 100644 index 0000000000..9022bc6b52 --- /dev/null +++ b/src/audio/private.h @@ -0,0 +1,326 @@ +// 2BF90.c +void au_mseq_manager_init(AuAmbienceManager* arg0, s8 arg1, s8 reverbType, AuGlobals* arg3); +AuResult func_80050C30(u32 arg0); +void func_80050C54(s32 arg0, s32 arg1); +void au_mseq_set_disabled(s32 arg0, s32 arg1); +AuResult func_80050CA0(s32 arg0, s32 arg1); +void func_80050D50(AuAmbPlayer* arg0); +void func_80050EF0_fade_out_unk(s32 arg0, s32 arg1); +void func_80050EF0_fade_in_unk(s32 arg0, s32 arg1); +void func_80050EF0_fade_out_quick(s32 arg0); +void func_80050EF0_fade_out_slow(s32 arg0, s32 arg1); +void au_mseq_set_volume(s32 arg0, s32 arg1, s32 arg2); +AuResult func_80051050(s32 arg0); +void func_800510A4(AuAmbienceManager* arg0, MSEQHeader* mseq, s32 index); +void snd_ambient_manager_update(AuAmbienceManager* arg0); +void func_80051334(AuAmbienceManager* manager, AuAmbPlayer* lambda); +void func_80051434(AuAmbienceManager* manager, AuAmbPlayer* lambda); +s32 au_mseq_read_next(AuAmbPlayer* arg0); +void au_mseq_player_stop(AuAmbienceManager* arg0, AuAmbPlayer* arg1); +void func_800522A8(AuAmbienceManager* arg0, AuAmbPlayer* lambda); +void func_8005232C(AuAmbienceManager* manager, AuAmbPlayer* lambda); + +// 2d9a0_len_890.c +void func_800525A0(AuGlobals* globals); +void func_80052614(AuGlobals* globals); +void func_80052660(AuGlobals* globals); +void func_80052B44(AlUnkVoice* arg0); +s32 func_80052BC0(s32 arg0); +void func_80052BF8(AlUnkVoice* voice, AlUnkInstrumentData* arg1); +u8 func_80052CFC(AlUnkVoice* voice); +void func_80052E18(AlUnkVoice* arg0); + +//2e230_len_2190.c +void func_80052E30(u8 index); +void au_engine_init(s32 outputRate); +static void au_reset_instrument(Instrument* instrument); +static void au_reset_drum_entry(BGMDrumInfo* arg0); +static void au_reset_instrument_entry(BGMInstrumentInfo* arg0); +void au_update_clients_2(void); +void au_update_players_main(void); +void func_80053654(AuGlobals* globals); +void func_80053888(AlUnkVoice* arg0, u8 arg1); +void au_reset_voice(AlUnkVoice* arg0, u8 arg1); +f32 au_compute_pitch_ratio(s32 arg0); +void au_fade_init(Fade* fade, s32 time, s32 startValue, s32 endValue); +void au_fade_clear(Fade* fade); +void au_fade_update(Fade* fade); +void func_80053A98(u8 arg0, u16 arg1, s32 arg2); +void func_80053AC8(Fade* fade); +void au_fade_set_vol_scale(Fade* fade, s16 value); +void func_80053B04(Fade* fade, u32 arg1, s32 target); +void func_80053BA8(Fade* fade); +Instrument* au_get_instrument(AuGlobals* globals, u32 bank, u32 patch, AlUnkInstrumentData* arg3); +void au_get_bgm_player_and_file(u32 playerIndex, BGMHeader** outCurrentTrackData, BGMPlayer** outPlayer); +void au_get_bgm_player(u32 playerIndex, BGMPlayer** outPlayer); +AuResult au_load_song_files(u32 arg0, BGMHeader* arg1, BGMPlayer* arg2); +AuResult func_80053E58(s32 arg0, BGMHeader* arg1); +BGMPlayer* func_80053F64(s32 arg0); +AuResult func_80053F80(u32 arg0); +BGMPlayer* func_80054248(u8 arg0); +void au_load_INIT(AuGlobals* arg0, s32 romAddr, ALHeap* heap); +AuResult au_fetch_SBN_file(u32 fileIdx, AuFileFormat format, SBNFileEntry* arg2); +void au_load_PER(AuGlobals* globals, s32 romAddr); +void au_load_PRG(AuGlobals* arg0, s32 romAddr); +// INCLUDE_ASM(s32, "audio/2e230_len_2190", snd_load_BGM); +InstrumentGroup* au_get_BK_instruments(s32 bankGroup, u32 bankIndex); +SoundBank* snd_load_BK_to_bank(s32 bkFileOffset, SoundBank* bank, s32 bankIndex, s32 bankGroup); +void au_swizzle_BK_instruments(s32 bkFileOffset, SoundBank* bank, InstrumentGroup instruments, u32 instrumentCount, u8 arg4); +s32* func_80054AA0(s32* bkFileOffset, void* vaddr, s32 bankIndex, s32 bankGroup); +s32 snd_load_BK(s32 bkFileOffset, s32 bankIndex); +void func_80054C84(s32 bankIndex, s32 bankGroup); +void func_80054CE0(s32 arg0, u32 idx); +s32 func_80054D74(s32 arg0, s32 arg1); +void func_80054DA8(u32 arg0); +void au_read_rom(s32 romAddr, void* buffer, u32 size); +void au_memset(void* dst, s32 size, u8 value); +void au_copy_bytes(s8* src, s8* dest, s32 size); +void au_copy_words(void* src, void* dst, s32 size); + +// 25f00_len_940.c +void create_audio_system(void); +//void nuAuPreNMIFuncSet(NUAuPreNMIFunc func); +void nuAuMgr(void* arg); +s32 nuAuDmaCallBack(s32 addr, s32 len, void *state, u8 arg3); +//ALDMAproc nuAuDmaNew(NUDMAState** state); +//void nuAuCleanDMABuffers(void); +void func_8004B328(NUScMsg mesg_type, u32 frameCounter); +//void alLink(ALLink* element, ALLink* after); +//void alUnlink(ALLink* element); + +// 303c0_len_3e10.c +void au_load_BK_headers(AuGlobals* arg0, ALHeap*); + +// sfx_player.c +void au_sfx_init(SoundManager* manager, u8 arg1, u8 arg2, AuGlobals* arg3, u8 arg4); +void au_sfx_load_groups_from_SEF(SoundManager* sndMgr); +void au_sfx_clear_queue(SoundManager* manager); +void au_sfx_enqueue_event(SoundManager* manager, u32 soundID, s16 volume, s16 pitchShift, u8 pan); +void au_sfx_update_main(SoundManager* manager); +s32 func_8004B9E4(SoundManager* manager, s32 arg1); +void func_8004BA54(SoundManager* manager, s32 arg1); +void func_8004BA74(SoundManager* manager, SoundSFXEntry* entry, SoundManagerA0*); +s16 au_sfx_manager_update(SoundManager* manager); + +// 28910_len_5090.c +void au_bgm_update_main(BGMPlayer* player); +BGMPlayer* au_bgm_get_player_with_song_name(s32 songString); +AuResult au_bgm_dispatch_player_event(SongUpdateEvent* event); +AuResult au_bgm_stop_song(s32 songName); +void au_bgm_stop_all(void); +AuResult au_bgm_is_song_playing(s32 songName); +s32 func_8004DB28(BGMPlayer* player); +AuResult func_8004DB4C(SongUpdateEvent* s); +AuResult func_8004DC80(s32 songName); +AuResult func_8004DCB8(SongUpdateEvent* update, s32 clearChanged); +AuResult func_8004DE2C(SongUpdateEvent* update); +void func_8004DFD4(AuGlobals* globals); +AuResult func_8004E0F4(SongUpdateEvent* update); +void au_bgm_player_init(BGMPlayer* player, s32 arg1, s32 arg2, AuGlobals* arg3); +void au_bgm_set_effect_indices(BGMPlayer* player, u8* list); +void au_bgm_update_fade(BGMPlayer* player); +void func_8004E444(BGMPlayer* arg0); +s32 au_bgm_player_update_main(BGMPlayer* player); +void au_bgm_player_initialize(BGMPlayer* player); +void func_8004E844(BGMPlayer* player, s32 arg1); +void func_8004E880(BGMPlayer* player, s32 sampleRate, s32 divisor); +void au_bgm_player_read_segment(BGMPlayer* player); +void au_bgm_end_segment_loop(BGMPlayer* player, u32 cmd); +void au_bgm_load_subsegment(BGMPlayer* player, u32 cmd); +void au_bgm_player_update_stop(BGMPlayer* player); +void au_bgm_player_update_playing(BGMPlayer *player); +void au_BGMCmd_E0_MasterTempo(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E1_MasterVolume(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E2_MasterPitchShift(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E3(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E6_MasterEffect(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E4_MasterTempoFade(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E5_MasterVolumeFade(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E8_TrackOverridePatch(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_E9_SubTrackVolume(BGMPlayer* arg0, BGMPlayerTrack* track); +void au_BGMCmd_F6_TrackVolumeFade(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_EA_SubTrackPan(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_EB_SubTrackReverb(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_EC_SegTrackVolume(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_ED_SubTrackCoarseTune(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_EE_SubTrackFineTune(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_EF_SegTrackTune(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F0_TrackTremolo(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F1_TrackTremoloSpeed(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F2_TrackTremoloTime(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F3_TrackTremoloStop(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F4(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F5_TrackVoice(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_F7_SubTrackReverbType(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_FD_EventTrigger(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_FE_Detour(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_FC_Jump(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_FF(BGMPlayer* player, BGMPlayerTrack* track); +void au_BGMCmd_NOP(BGMPlayer* player, BGMPlayerTrack* track); +void au_bgm_set_proximity_mix(s32 songName, u32 mix); +void func_80050770(BGMPlayer* player, f32 arg1); +void func_80050818(BGMPlayer* player, s32 arg1); +void au_bgm_change_track_volume(BGMPlayer* player, s32 trackIdx, s16 arg2, u8 arg3); +void au_bgm_set_track_volumes(BGMPlayer* player, u8* arg1, s32 arg2); +void func_80050888(BGMPlayer* player, BGMPlayerTrack* track, s32 target, s32 duration); +void func_80050900(BGMPlayer* player); +AuResult func_80050970(SongUpdateEvent* arg0); + +// 30450.c +/* +void func_80055050(ALHeap* heap); +void func_80055068(u32 arg0); +*/ +void func_80055110(BGMPlayer* player); +/* +void func_8005513C(u32 arg0); +void snd_start_sound(s32 soundID, u8 volume, u8 pan); +void snd_start_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void snd_adjust_sound(s32 soundID, u8 volume, u8 pan); +void snd_adjust_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void snd_stop_sound(s32 soundID); +void func_800553F4(void); +void snd_start_sound_raw(s32 soundID, s16 volume, s16 pitchShift, s32 pan); +AuResult snd_ambient_80055448(s32 arg0); +AuResult snd_ambient_80055464(s32 arg0, s32 arg1); +AuResult snd_ambient_quick_fade_out(s32 arg0); +AuResult snd_ambient_slow_fade_out(s32 arg0, s32 arg1); +AuResult snd_ambient_8005553C(s32 arg0, s32 arg1); +AuResult snd_ambient_80055590(s32 arg0, s32 arg1); +AuResult snd_ambient_800555E4(s32 arg0); +AuResult snd_ambient_80055618(s32 arg0, s32 arg1); +AuResult au_ambience_set_volume(s32 arg0, s32 arg1, s32 arg2); +AuResult au_ambience_disable(s32 arg0); +AuResult au_ambience_enable(s32 arg0); +void snd_ambient_80055760(s32 arg0); +AuResult snd_ambient_800557CC(s32 arg0); +AuResult snd_ambient_80055848(s32 arg0); +AuResult au_song_load(s32 songID, s32 playerIndex); +AuResult au_song_start(s32 songName); +AuResult au_song_start_variation(s32 songName, s32 variation); +AuResult au_song_stop(s32 songName); +void au_stop_songs(void); +AuResult au_song_is_playing(s32 songName); +AuResult snd_set_song_variation_fade(s32 songName, s32 variation, s32 fadeInTime, s32 startVolume, s32 endVolume); +AuResult snd_set_song_fade(s32 songName, s32 fadeInTime, s32 startVolume, s32 endVolume); +AuResult snd_set_song_variation_fade_time(s32 songName, s32 fadeTime, s32 variation); +AuResult func_80055AF0(s32 songName); +AuResult func_80055B28(s32 songName); +AuResult func_80055B80(s32 songName); +AuResult func_80055BB8(s32 songName, s32 fadeTime); +AuResult func_80055BF0(s32 songName); +AuResult func_80055C2C(s32 songName); +AuResult func_80055C64(s32 songName); +AuResult func_80055C94(s32 songName); +AuResult snd_set_song_variation(s32 songName, s32 variation); +*/ +AuResult snd_song_get_playing_info(s32 songName, BGMHeader** outTrackData, BGMPlayer** outPlayer); +/* +AuResult func_80055D38(s32 songName, f32 arg1); +AuResult func_80055D8C(s32 songName, s32 arg1); +AuResult func_80055DDC(s32 songName, s32 arg1); +AuResult snd_song_clear_track_volumes(s32 songName, MusicTrackVols arg1); +u8* func_80055EB4(MusicTrackVols arg0); +static AuResult snd_song_change_track_volume(s32 arg0, u32 arg1, u32 arg2); +AuResult snd_song_set_track_vol_mute(s32 arg0, s32 arg1); +AuResult snd_song_set_track_vol_quiet(s32 arg0, s32 arg1); +AuResult snd_song_set_track_vol_full(s32 arg0, s32 arg1); +void bgm_set_proximity_mix_far(s32 songName, s32 mix); +void bgm_set_proximity_mix_near(s32 songName, s32 mix); +void bgm_set_proximity_mix_full(s32 songName, s32 mix); +void bgm_poll_music_events(u32** arg0, s32* arg1); +void bgm_flush_music_events(void); +void music_event_trigger(s32 arg0, s32 arg1, s32 arg2); +void func_8005610C(void); +*/ +void au_register_callback(AuCallback arg0, s32 arg1); +/* +void audio_set_stereo(void); +void audio_set_mono(void); +void func_800561A4(s32 arg0); +void func_800561C4(s32 arg0); +void func_800561E4(s32 arg0); +void func_80056204(void); +void func_80056228(void); +*/ + +// 31650.c +void au_driver_init(AuSynDriver* driver, ALConfig* config); +void au_driver_release(void); +//Acmd* alAudioFrame(Acmd* cmdList, s32* cmdLen, s16* outBuf, s32 outLen); +void func_80056D34(void); +void func_80056D44(s16 arg0); +s16 func_80056D50(void); +void func_80056D5C(u8 arg0); +void func_80056D78(u8 arg0, u16 arg1); +u16 func_80056DA4(u8 arg0, u16 arg1); +void func_80056DCC(u8 arg0, u8 effectID); +void func_80056E34(u8 arg0, s16 arg1, s16 arg2, s32 arg3); +void func_80056EC0(u8 arg0, s8 arg1); +void au_pvoice_reset_filter(u8 voiceIdx); +void au_pvoice_set_playing(u8 index); +void au_pvoice_set_filter(u8 index, u8 reverbType, Instrument* table, f32 pitchRatio, s16 arg4, u8 pan, u8 reverb, s32 arg7); +void au_pvoice_set_filter_wavetable(u8 voiceIdx, Instrument* table); +void au_pvoice_set_pitch_ratio(u8 voiceIdx, f32 pitchRatio); +void func_8005736C(u8 voiceIdx, s16 volume, s32 arg2, u8 arg3, u8 arg4); +void func_80057548(u8 voiceIdx, u8 arg1, u8 arg2); +void func_800576EC(u8 voiceIdx, s16 arg1, s32 arg2); +void func_80057874(u8 voiceIdx, u8 pan); +void func_800579D8(u8 voiceIdx, u8 dryAmt); +s32 func_80057B64(u8 voiceIdx); +s32 func_80057B8C(u8 voiceIdx); +f32 func_80057BB4(u8 voiceIdx); +u8 func_80057BDC(u8 voiceIdx); +s16 func_80057C04(u8 voiceIdx); +s16 func_80057C2C(u8 voiceIdx); +s32 func_80057C54(u8 voiceIdx); +s32 func_80057D0C(u8 voiceIdx); +void func_80057DC8(s32 arg0); +void func_80057E08(u8 arg0); +void func_80057E5C(u8 arg0); +void func_80057EB0(void); +void func_80057ED0(s16 arg0); +//void alHeapInit(ALHeap* hp, u8* base, s32 len); +//void alCopy(void* src, void* dst, s32 size); +#undef alHeapAlloc +void* alHeapAlloc(ALHeap* heap, s32 arg1, s32 size); + +// 33450.c +Acmd* func_80058050(AuPVoice* pvoice, Acmd* cmdBufPos); + +// reverb.c +void func_80058E84(AuFX* fx, u8 mode, ALHeap* heap); +void func_80058F88(AlUnkKappa* kappa, ALHeap* heap); +void func_80059008(AlUnkKappa* kappa, s16 arg1, s16 arg2, s16 fc); +void func_8005904C(AuFX* fx, u8 effectType); +Acmd* func_80059310(AuFX* fx, Acmd* cmdBusPos, s16, s16); +s32 au_fx_param_hdl(AuFX* fx, s16 index, s16 paramID, s32 value); + +// sfx.c +/* +void sfx_reset_door_sounds(void); +void sfx_clear_sounds(void); +void sfx_clear_env_sounds(s16 playSounds); +void sfx_update_looping_sound_params(void); +void func_801497FC(s32 arg0); +s32 func_80149828(void); +void sfx_stop_env_sounds(void); +*/ +SoundInstance* sfx_get_env_sound_instance(s32 soundID); +/* +void sfx_play_sound_looping(s32 soundId, u8 volume, u8 pan, s16 pitchShift); +void sfx_register_looping_sound_at_position(s32 soundID, s32 flags, f32 x, f32 y, f32 z); +s32 sfx_adjust_env_sound_pos(s32 soundID, s32 sourceFlags, f32 x, f32 y, f32 z); +void func_80149A6C(s32 soundID, s32 keepPlaying); +void sfx_play_sound_with_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void sfx_adjust_env_sound_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void sfx_stop_sound(s32 soundID); +void sfx_play_sound(s32 soundID); +void sfx_play_sound_at_player(s32 soundID, s32 arg1); +void sfx_play_sound_at_npc(s32 soundID, s32 arg1, s32 npcID); +void sfx_play_sound_at_position(s32 soundID, s32 flags, f32 posX, f32 posY, f32 posZ); +void sfx_get_spatialized_sound_params(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags); +void sfx_compute_spatialized_sound_params_0(f32 x, f32 y, f32 z, s16* volume, s16* pan); +void sfx_compute_spatialized_sound_params_1(f32 x, f32 y, f32 z, s16* volume, s16* pan); +void sfx_compute_spatialized_sound_params_2(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags); +*/ diff --git a/src/audio/public.h b/src/audio/public.h new file mode 100644 index 0000000000..4b7f790b2a --- /dev/null +++ b/src/audio/public.h @@ -0,0 +1,97 @@ +#ifndef _AUDIO_PUBLIC_H_ +#define _AUDIO_PUBLIC_H_ + +// 30450.c +void func_80055050(ALHeap* heap); +void func_80055068(u32 arg0); +//void func_80055110(BGMPlayer* player); +void func_8005513C(u32 arg0); +void snd_start_sound(s32 soundID, u8 volume, u8 pan); +void snd_start_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void snd_adjust_sound(s32 soundID, u8 volume, u8 pan); +void snd_adjust_sound_with_shift(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void snd_stop_sound(s32 soundID); +void func_800553F4(void); +void snd_start_sound_raw(s32 soundID, s16 volume, s16 pitchShift, s32 pan); +AuResult snd_ambient_80055448(s32 arg0); +AuResult snd_ambient_80055464(s32 arg0, s32 arg1); +AuResult snd_ambient_quick_fade_out(s32 arg0); +AuResult snd_ambient_slow_fade_out(s32 arg0, s32 arg1); +AuResult snd_ambient_8005553C(s32 arg0, s32 arg1); +AuResult snd_ambient_80055590(s32 arg0, s32 arg1); +AuResult snd_ambient_800555E4(s32 arg0); +AuResult snd_ambient_80055618(s32 arg0, s32 arg1); +AuResult au_ambience_set_volume(s32 arg0, s32 arg1, s32 arg2); +AuResult au_ambience_disable(s32 arg0); +AuResult au_ambience_enable(s32 arg0); +void snd_ambient_80055760(s32 arg0); +AuResult snd_ambient_800557CC(s32 arg0); +AuResult snd_ambient_80055848(s32 arg0); +AuResult au_song_load(s32 songID, s32 playerIndex); +AuResult au_song_start(s32 songName); +AuResult au_song_start_variation(s32 songName, s32 variation); +AuResult au_song_stop(s32 songName); +void au_stop_songs(void); +AuResult au_song_is_playing(s32 songName); +AuResult snd_set_song_variation_fade(s32 songName, s32 variation, s32 fadeInTime, s32 startVolume, s32 endVolume); +AuResult snd_set_song_fade(s32 songName, s32 fadeInTime, s32 startVolume, s32 endVolume); +AuResult snd_set_song_variation_fade_time(s32 songName, s32 fadeTime, s32 variation); +AuResult func_80055AF0(s32 songName); +AuResult func_80055B28(s32 songName); +AuResult func_80055B80(s32 songName); +AuResult func_80055BB8(s32 songName, s32 fadeTime); +AuResult func_80055BF0(s32 songName); +AuResult func_80055C2C(s32 songName); +AuResult func_80055C64(s32 songName); +AuResult func_80055C94(s32 songName); +AuResult snd_set_song_variation(s32 songName, s32 variation); +//AuResult snd_song_get_playing_info(s32 songName, BGMHeader** outTrackData, BGMPlayer** outPlayer); +AuResult func_80055D38(s32 songName, f32 arg1); +AuResult func_80055D8C(s32 songName, s32 arg1); +AuResult snd_song_set_track_volumes(s32 songName, MusicTrackVols arg1); +AuResult snd_song_clear_track_volumes(s32 songName, MusicTrackVols arg1); +AuResult snd_song_set_track_vol_mute(s32 arg0, s32 arg1); +AuResult snd_song_set_track_vol_quiet(s32 arg0, s32 arg1); +AuResult snd_song_set_track_vol_full(s32 arg0, s32 arg1); +void bgm_set_proximity_mix_far(s32 songName, s32 mix); +void bgm_set_proximity_mix_near(s32 songName, s32 mix); +void bgm_set_proximity_mix_full(s32 songName, s32 mix); +void bgm_poll_music_events(u32** arg0, s32* arg1); +void bgm_flush_music_events(void); +void bgm_trigger_music_event(s32 arg0, s32 arg1, s32 arg2); +void bgm_clear_music_events(void); +//void func_80056144(AuCallback arg0, s32 arg1); +void audio_set_stereo(void); +void audio_set_mono(void); +void func_800561A4(s32 arg0); +void func_800561C4(s32 arg0); +void func_800561E4(s32 arg0); +void func_80056204(void); +void func_80056228(void); + +// sfx.h +void sfx_reset_door_sounds(void); +void sfx_clear_sounds(void); +void sfx_clear_env_sounds(s16 playSounds); +void sfx_update_looping_sound_params(void); +void func_801497FC(s32 arg0); +s32 func_80149828(void); +void sfx_stop_env_sounds(void); +//SoundInstance* sfx_get_env_sound_instance(s32 soundID); +void sfx_play_sound_looping(s32 soundId, u8 volume, u8 pan, s16 pitchShift); +void sfx_register_looping_sound_at_position(s32 soundID, s32 flags, f32 x, f32 y, f32 z); +s32 sfx_adjust_env_sound_pos(s32 soundID, s32 sourceFlags, f32 x, f32 y, f32 z); +void func_80149A6C(s32 soundID, s32 keepPlaying); +void sfx_play_sound_with_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void sfx_adjust_env_sound_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift); +void sfx_stop_sound(s32 soundID); +void sfx_play_sound(s32 soundID); +void sfx_play_sound_at_player(s32 soundID, s32 arg1); +void sfx_play_sound_at_npc(s32 soundID, s32 arg1, s32 npcID); +void sfx_play_sound_at_position(s32 soundID, s32 flags, f32 posX, f32 posY, f32 posZ); +void sfx_get_spatialized_sound_params(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags); +void sfx_compute_spatialized_sound_params_0(f32 x, f32 y, f32 z, s16* volume, s16* pan); +void sfx_compute_spatialized_sound_params_1(f32 x, f32 y, f32 z, s16* volume, s16* pan); +void sfx_compute_spatialized_sound_params_2(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags); + +#endif diff --git a/src/audio/reverb.c b/src/audio/reverb.c new file mode 100644 index 0000000000..d94348b960 --- /dev/null +++ b/src/audio/reverb.c @@ -0,0 +1,339 @@ +#include "common.h" +#include "audio.h" + +static void _init_lpfilter(AuLowPass* lp); +static Acmd* _saveBuffer(AuFX* fx, s16* oldPos, s32 buff, s32 count, Acmd* cmdBufPos); +static f32 func_80059BD4(AuDelay* delay, s32 rsdelta); + +/* +* the following constant is derived from: +* +* ratio = 2^(cents/1200) +* +* and therefore for hundredths of a cent +* x +* ln(ratio) = --------------- +* (120,000)/ln(2) +* where +* 120,000/ln(2) = 173123.40... +*/ +#define CONVERT 173123.404906676 + +/* + * WARNING: THE FOLLOWING CONSTANT MUST BE KEPT IN SYNC + * WITH SCALING IN MICROCODE!!! + */ +#define SCALE 16384 + +// #define ms *(((s32)((f32)44.1))&~0x7) + +s32 SMALL_ROOM_PARAMS[] = { + /* sections length */ + 3, 11, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 9, 9830, -9830, 0, 0, 0, 0, + 3, 7, 3276, -3276, 0x3FFF, 0, 0, 0, + 0, 10, 5000, 0, 0, 0, 0, 0x5000 +}; + +s32 BIG_ROOM_PARAMS[] = { + /* sections length */ + 4, 14, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 9, 9830, -9830, 0, 0, 0, 0, + 2, 6, 3276, -3276, 0x3FFF, 0, 0, 0, + 9, 12, 3276, -3276, 0x3FFF, 0, 0, 0, + 0, 13, 6000, 0, 0, 0, 0, 0x5000 +}; + +// unused +s32 D_8007F0C0[] = { + /* sections length */ + 4, 17, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 11, 9830, -9830, 0, 0, 0, 0, + 4, 9, 3276, -3276, 0x3FFF, 0, 0, 0, + 11, 15, 3276, -3276, 0x3FFF, 0, 0, 0, + 0, 16, 8000, 0, 0, 0, 0, 0x5000 +}; + +s32 ECHO_PARAMS[] = { + /* sections length */ + 1, 14, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 13, 20000, 0, 0x7FFF, 0, 0, 0x7FFF +}; + +s32 CHORUS_PARAMS[] = { + /* sections length */ + 1, 3, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 1, 16384, 0, 0x7FFF, 7600, 700, 0 +}; + +s32 FLANGE_PARAMS[] = { + /* sections length */ + 1, 3, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 1, 0, 0x5FFF, 0x7FFF, 380, 500, 0 +}; + +s32 NULL_PARAMS[] = { + /* sections length */ + 0, 0, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +// up to four custom effects can be defined and installed here at runtime +s32* AU_FX_CUSTOM_PARAMS[] = { + NULL_PARAMS, NULL_PARAMS, NULL_PARAMS, NULL_PARAMS +}; + +static void _init_lpfilter(AuLowPass* lp) { + f64 attenuation; + s16 timeConstant; + u32 temp; + s32 i; + + lp->first = 1; + temp = lp->fc; + timeConstant = temp; + timeConstant = timeConstant >> 1; + lp->fgain = SCALE - timeConstant; + + for (i = 0; i < 8; i++) { + lp->fccoef[i] = 0; + } + + lp->fccoef[8] = timeConstant; + + // ith value is 16384 * (timeConstant / 16384)^(i-7) + // ex: i = 9 --> timeConstant^2 / 16384 + attenuation = ((f64)timeConstant / SCALE); + for (i = 9; i < 16; i++) { + attenuation *= ((f64)timeConstant /SCALE); + lp->fccoef[i] = attenuation * SCALE; + } +} + +// definately AuFX, evidenced by call to func_8005904C +// this is n_alFxNew +/// @param effectType from enum AuEffectType +void func_80058E84(AuFX* fx, u8 effectType, ALHeap* heap) { + AuDelay* delay; + u16 i; + + // allocate space for 4 AuDelay + fx->delays = alHeapAlloc(heap, AU_FX_DELAY_COUNT, sizeof(AuDelay)); + fx->base = alHeapAlloc(heap, AU_FX_LENGTH, sizeof(s16)); + + for (i = 0; i < AU_FX_DELAY_COUNT; i++) { + delay = &fx->delays[i]; + delay->resampler_2C = alHeapAlloc(heap, 1, sizeof(AuResampler)); + delay->resampler_2C->rs_state = alHeapAlloc(heap, 1, sizeof(RESAMPLE_STATE)); + delay->lowpass_24 = alHeapAlloc(heap, 1, sizeof(AuLowPass)); + delay->lowpass_24->fstate = alHeapAlloc(heap, 1, sizeof(POLEF_STATE)); + } + + func_8005904C(fx, effectType); +} + +// no known calls to this function +void func_80058F88(AlUnkKappa* kappa, ALHeap* heap) { + kappa->unk_00 = alHeapAlloc(heap, 0x1420, sizeof(s16)); + kappa->lowpass_10 = alHeapAlloc(heap, 1, sizeof(AuLowPass)); + kappa->lowpass_10->fstate = alHeapAlloc(heap, 1, sizeof(POLEF_STATE)); + func_80059008(kappa, 0, 0, 0x5000); +} + +// no known entry point to this function, called only by func_80058F88 +void func_80059008(AlUnkKappa* kappa, s16 arg1, s16 arg2, s16 fc) { + kappa->unk_06 = arg1; + kappa->unk_08 = arg2; + + if (fc != 0) { + kappa->lowpass_0C = kappa->lowpass_10; + kappa->lowpass_0C->fc = fc; + _init_lpfilter(kappa->lowpass_0C); + return; + } + + kappa->lowpass_0C = NULL; +} + +// part of n_alFxNew, extracted to allow reseting fx without reallocating AuFX +void func_8005904C(AuFX* fx, u8 effectType) { + s32* params; + s32* clr; + s32 i, j; + clr = (s32*)fx->base; + + switch (effectType) { + case AU_FX_SMALLROOM: + params = SMALL_ROOM_PARAMS; + break; + case AU_FX_BIGROOM: + params = BIG_ROOM_PARAMS; + break; + case AU_FX_ECHO: + params = ECHO_PARAMS; + break; + case AU_FX_CHORUS: + params = CHORUS_PARAMS; + break; + case AU_FX_FLANGE: + params = FLANGE_PARAMS; + break; + case AU_FX_CUSTOM_0: + params = AU_FX_CUSTOM_PARAMS[0]; + break; + case AU_FX_CUSTOM_1: + params = AU_FX_CUSTOM_PARAMS[1]; + break; + case AU_FX_CUSTOM_2: + params = AU_FX_CUSTOM_PARAMS[2]; + break; + case AU_FX_CUSTOM_3: + params = AU_FX_CUSTOM_PARAMS[3]; + break; + case AU_FX_OTHER_BIGROOM: + params = BIG_ROOM_PARAMS; + break; + default: + params = NULL_PARAMS; + break; + } + + j = 0; + fx->delayCount = params[j++]; + fx->length = params[j++] * AUDIO_SAMPLES; + fx->input = fx->base; + + for (i = 0; i < AU_FX_LENGTH/2; i++) { + *clr++ = 0; + } + + for (i = 0; i < fx->delayCount; i++) { + AuDelay* delay = &fx->delays[i]; + delay->input = params[j++] * AUDIO_SAMPLES; + delay->output = params[j++] * AUDIO_SAMPLES; + delay->fbcoef = (u16) params[j++]; + delay->ffcoef = (u16) params[j++]; + delay->gain = (u16) params[j++]; + + if (params[j]) { + delay->rsinc = (2.0 * (params[j++] / 1000.0f)) / gActiveSynDriverPtr->outputRate; + delay->rsgain = ((f32)params[j++] / CONVERT) * (delay->output - delay->input); + delay->rsval = 1.0f; + delay->rsdelta = 0.0f; + delay->resampler_28 = delay->resampler_2C; + delay->resampler_2C->delta = 0.0; + delay->resampler_28->first = 1; + } else { + delay->resampler_28 = NULL; + j++; + j++; + } + + if (params[j]) { + delay->lowpass_20 = delay->lowpass_24; + delay->lowpass_20->fc = params[j++]; + _init_lpfilter(delay->lowpass_20); + } else { + delay->lowpass_20 = NULL; + j++; + } + } +} + +// au_pull_fx -- based on alFxPull +// AuFX from gSynDriverPtr +INCLUDE_ASM(s32, "audio/reverb", func_80059310); + +#define INPUT_PARAM 0 +#define OUTPUT_PARAM 1 +#define FBCOEF_PARAM 2 +#define FFCOEF_PARAM 3 +#define GAIN_PARAM 4 +#define CHORUSRATE_PARAM 5 +#define CHORUSDEPTH_PARAM 6 +#define LPFILT_PARAM 7 + +// based on alFxParamHdl +s32 au_fx_param_hdl(AuFX* fx, s16 index, s16 paramID, s32 value) { + switch (paramID) { + case INPUT_PARAM: + fx->delays[index].input = value & 0xFFFFFFF8; + break; + case OUTPUT_PARAM: + fx->delays[index].output = value & 0xFFFFFFF8; + break; + case FFCOEF_PARAM: + fx->delays[index].ffcoef = value; + break; + case FBCOEF_PARAM: + fx->delays[index].fbcoef = value; + break; + case GAIN_PARAM: + fx->delays[index].gain = value; + break; + case CHORUSRATE_PARAM: + fx->delays[index].rsinc = (2.0 * (value / 1000.0f)) / gActiveSynDriverPtr->outputRate; + break; + case CHORUSDEPTH_PARAM: + fx->delays[index].rsgain = ((f32)value / CONVERT) * (fx->delays[index].output - fx->delays[index].input); + break; + case LPFILT_PARAM: + if (fx->delays[index].lowpass_20) { + fx->delays[index].lowpass_20->fc = value; + _init_lpfilter(fx->delays[index].lowpass_20); + } + break; + } + return 0; +} + +// TODO: _n_loadBuffer +static Acmd* _saveBuffer(AuFX* fx, s16* oldPos, s32 buf, s32 count, Acmd* cmdBufPos) { + Acmd *ptr = cmdBufPos; + s16* newPos = oldPos + count; + s16* delayEnd = &fx->base[fx->length]; + + if (delayEnd < newPos) { + s32 before = delayEnd - oldPos; + s32 after = newPos - delayEnd; + n_aLoadBuffer(ptr++, before<<1, buf, osVirtualToPhysical(oldPos)); + n_aLoadBuffer(ptr++, after<<1, buf + (before<<1), osVirtualToPhysical(fx->base)); + } else { + n_aLoadBuffer(ptr++, count<<1, buf, osVirtualToPhysical(oldPos)); + } + + return ptr; +} + +// updates rsval, producing a triangle wave between ±1 +// time delta specified in samples +//TODO rename to _updateTriWaveModulation +static f32 func_80059BD4(AuDelay* delay, s32 rsdelta) { + f32 result; + + delay->rsval += delay->rsinc * rsdelta; + delay->rsval = (delay->rsval > 2.0) ? delay->rsval - 4.0 : delay->rsval; + + result = delay->rsval; + if (result < 0.0f) { + result = -result; + } + + result = result - 1.0; + + return delay->rsgain * result; +} diff --git a/src/sfx.c b/src/audio/sfx.c similarity index 85% rename from src/sfx.c rename to src/audio/sfx.c index 6f48bfe2d5..3a6ad97a07 100644 --- a/src/sfx.c +++ b/src/audio/sfx.c @@ -3,24 +3,8 @@ #define MAX_SOUND_INSTANCES 10 -typedef struct SoundInstance { - /* 0x00 */ s32 flags; - /* 0x04 */ s32 soundID; - /* 0x08 */ s32 sourceFlags; - /* 0x0C */ u8 volume; - /* 0x0D */ u8 pan; - /* 0x0E */ s16 pitchShift; - /* 0x10 */ Vec3f position; -} SoundInstance; // size = 0x1C - -typedef struct AlternatingSoundSet { - /* 0x00 */ s32* sounds; - /* 0x04 */ s16 soundCount; - /* 0x06 */ s16 currentIndex; -} AlternatingSoundSet; // size = 0x08 - // sound IDs -s32 D_8014F2D0[] = { +s32 LoopingSounds[] = { 0x00000287, 0x000002A8, 0x00000054, 0x00000056, 0x00000024, 0x00000027, 0x00000021, 0x00000022, 0x00000349, 0x00000273, 0x00000275, 0x00000275, 0x00000274, 0x00000273, 0x00000274, 0x00000099, 0x0000009E, 0x0000032E, 0x0000008E, 0x00000089, 0x00000083, 0x00000388, 0x000000A0, 0x0000004A, 0x0000009F, 0x00000168, 0x00000185, @@ -36,6 +20,7 @@ s32 D_8014F2D0[] = { 0x000003AD, 0x0000022C, 0x0000022D, }; +// all sound IDs for alternating sounds s32 D_8014F48C[] = { 0x00000336, 0x00000316 }; s32 D_8014F494[] = { 0x00000337, 0x00000317 }; s32 D_8014F49C[] = { 0x00000338, 0x00000318 }; @@ -71,7 +56,7 @@ s32 D_8014F58C[] = { 0x00002043, 0x00002044 }; s32 D_8014F594[] = { 0x00002078, 0x00002079 }; s32 D_8014F59C[] = { 0x000003B6, 0x000003B7 }; -AlternatingSoundSet D_8014F5A4[] = { +AlternatingSoundSet AlternatingSounds[] = { { .sounds = D_8014F48C, .soundCount = ARRAY_COUNT(D_8014F48C), @@ -210,21 +195,14 @@ AlternatingSoundSet D_8014F5A4[] = { } }; -s32 D_8014F6B4[] = { - SOUND_BASIC_DOOR_OPEN, - SOUND_BASIC_DOOR_CLOSE, - SOUND_METAL_DOOR_OPEN, - SOUND_METAL_DOOR_CLOSE, - SOUND_LARGE_DOOR_OPEN, - SOUND_LARGE_DOOR_CLOSE, - SOUND_CREAKY_DOOR_OPEN, - SOUND_CREAKY_DOOR_CLOSE, - SOUND_METAL_GATE_OPEN, - SOUND_METAL_GATE_CLOSE, - SOUND_1CB, - SOUND_1CC, - SOUND_20A3, - SOUND_20A4, +s32 OpenCloseSounds[][2] = { + { SOUND_BASIC_DOOR_OPEN, SOUND_BASIC_DOOR_CLOSE }, + { SOUND_METAL_DOOR_OPEN, SOUND_METAL_DOOR_CLOSE }, + { SOUND_LARGE_DOOR_OPEN, SOUND_LARGE_DOOR_CLOSE }, + { SOUND_CREAKY_DOOR_OPEN, SOUND_CREAKY_DOOR_CLOSE }, + { SOUND_METAL_GATE_OPEN, SOUND_METAL_GATE_CLOSE }, + { SOUND_1CB, SOUND_1CC }, + { SOUND_20A3, SOUND_20A4 }, }; extern SoundInstance D_801598A0[MAX_SOUND_INSTANCES]; @@ -232,9 +210,6 @@ extern SoundInstance D_801599B8[MAX_SOUND_INSTANCES]; extern SoundInstance* D_80159AD0; extern s32 D_80159AD4; -void sfx_compute_spatialized_sound_params_0(f32 x, f32 y, f32 z, s16* volume, s16* pan); -void sfx_compute_spatialized_sound_params_1(f32 x, f32 y, f32 z, s16* volume, s16* pan); - void sfx_compute_spatialized_sound_params_2(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags) { s32 screenX, screenY, screenZ; f32 f1, f2, f3; @@ -475,57 +450,50 @@ void func_80149A6C(s32 soundID, s32 keepPlaying) { SoundInstance* sound = sfx_get_env_sound_instance(soundID); if (sound != NULL) { - sound->flags &= -4; + sound->flags &= -SOUND_INSTANCE_FLAG_4; if (!keepPlaying) { snd_stop_sound(sound->soundID); } } } -#ifdef NON_EQUIVALENT // weird & 0xFF everywhere -void sfx_play_sound_with_params(s32 soundID, u8 arg1, u8 arg2, s16 arg3) { - AlternatingSoundSet* alternatingSound; +void sfx_play_sound_with_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { + AlternatingSoundSet* alternatingSet; if (gGameStatusPtr->demoState) { return; } - if (soundID < 0) { - s32 sound = soundID & 0xFF; - switch ((soundID >> 0x1C) & 7) { - case 0: - sfx_play_sound_looping(D_8014F2D0[sound], arg1, arg2, arg3); + if (soundID & SOUND_TYPE_SPECIAL) { + s32 soundIndex = soundID & 0xFF; + s32 soundType = ((u32)soundID >> 0x1C) & 7; + switch (soundType) { + case SOUND_TYPE_LOOPING: + sfx_play_sound_looping(LoopingSounds[soundIndex], volume, pan, pitchShift); + return; + case SOUND_TYPE_DOOR1: + soundID = OpenCloseSounds[gCurrentDoorSoundsSet][soundIndex]; break; - case 1: - snd_start_sound_with_shift(D_8014F6B4[sound + ((u16)gCurrentDoorSoundsSet * 2)], arg1, arg2, arg3); + case SOUND_TYPE_DOOR2: + soundID = OpenCloseSounds[D_80151308][soundIndex]; break; - case 2: - snd_start_sound_with_shift(D_8014F6B4[sound + ((u16)D_80151308 * 2)], arg1, arg2, arg3); - break; - case 3: - alternatingSound = &D_8014F5A4[sound]; - if (alternatingSound->currentIndex >= alternatingSound->soundCount) { - alternatingSound->currentIndex = 0; + case SOUND_TYPE_ALTERNATING: + alternatingSet = &AlternatingSounds[soundIndex]; + if (alternatingSet->currentIndex >= alternatingSet->soundCount) { + alternatingSet->currentIndex = 0; } - snd_start_sound_with_shift(alternatingSound->sounds[alternatingSound->currentIndex++], arg1, arg2, arg3); - break; - default: - snd_start_sound_with_shift(soundID, arg1, arg2, arg3); + soundID = alternatingSet->sounds[alternatingSet->currentIndex++]; break; } - } else { - snd_start_sound_with_shift(soundID, arg1, arg2, arg3); } + snd_start_sound_with_shift(soundID, volume, pan, pitchShift); } -#else -INCLUDE_ASM(void, "sfx", sfx_play_sound_with_params, s32 arg0, u8 arg1, u8 arg2, s16 arg3); -#endif void sfx_adjust_env_sound_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift) { SoundInstance* sound; - if (soundID < 0) { - sound = sfx_get_env_sound_instance(D_8014F2D0[soundID & 0xFFFF]); + if (soundID & SOUND_TYPE_SPECIAL) { + sound = sfx_get_env_sound_instance(LoopingSounds[soundID & 0xFFFF]); if (sound != NULL) { sound->volume = volume; sound->pan = pan; @@ -539,8 +507,8 @@ void sfx_adjust_env_sound_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift) void sfx_stop_sound(s32 soundID) { s32 sound = soundID; - if (sound < 0) { - func_80149A6C(D_8014F2D0[sound & 0xFFFF], 0); + if (sound & SOUND_TYPE_SPECIAL) { + func_80149A6C(LoopingSounds[sound & 0xFFFF], 0); } else { snd_stop_sound(sound); } @@ -566,7 +534,7 @@ void sfx_play_sound_at_npc(s32 soundID, s32 arg1, s32 npcID) { void sfx_play_sound_at_position(s32 soundID, s32 flags, f32 posX, f32 posY, f32 posZ) { if ((soundID & 0xF0000000) == 0x80000000) { - s32 id = D_8014F2D0[soundID & 0xFFFF]; + s32 id = LoopingSounds[soundID & 0xFFFF]; sfx_register_looping_sound_at_position(id, flags, posX, posY, posZ); } else { @@ -581,16 +549,16 @@ void sfx_play_sound_at_position(s32 soundID, s32 flags, f32 posX, f32 posY, f32 } void sfx_get_spatialized_sound_params(f32 x, f32 y, f32 z, s16* volume, s16* pan, s32 flags) { - s32 temp_s0; - u32 temp_2; + u32 upperFlags; + u32 lowerFlags; - temp_s0 = flags & 0xFFFF0000; + upperFlags = flags & 0xFFFF0000; do { - temp_2 = flags & 0xFFFF; + lowerFlags = flags & 0xFFFF; } while (0); // required to match - switch (temp_2) { + switch (lowerFlags) { case 0: sfx_compute_spatialized_sound_params_0(x, y, z, volume, pan); break; @@ -598,21 +566,21 @@ void sfx_get_spatialized_sound_params(f32 x, f32 y, f32 z, s16* volume, s16* pan sfx_compute_spatialized_sound_params_1(x, y, z, volume, pan); break; case 2: - sfx_compute_spatialized_sound_params_2(x, y, z, volume, pan, temp_s0); + sfx_compute_spatialized_sound_params_2(x, y, z, volume, pan, upperFlags); break; } - if (temp_s0 & 0x10000) { + if (upperFlags & 0x10000) { *volume = 0; - } else if (temp_s0 & 0x400000) { + } else if (upperFlags & 0x400000) { if (*volume < 80) { *volume = 80; } - } else if (temp_s0 & 0x200000) { + } else if (upperFlags & 0x200000) { if (*volume < 60) { *volume = 60; } - } else if (temp_s0 & 0x100000) { + } else if (upperFlags & 0x100000) { if (*volume < 40) { *volume = 40; } @@ -655,7 +623,7 @@ void sfx_compute_spatialized_sound_params_0(f32 x, f32 y, f32 z, s16* volume, s1 *pan = (screenX * 0.2f) + 32.0f; } else { f32 temp_f20 = ((screenX * 127.0) / 320.0) - 64.0; - *pan = (s32) (temp_f20 * sin_rad((fabs(temp_f20) * 90.0 * 0.015625 * TAU) / 360.0)) + 64; + *pan = (s32) (temp_f20 * sin_rad((fabs(temp_f20) * 90.0 * (1/64.0) * TAU) / 360.0)) + 64; } } diff --git a/src/audio/sfx_player.c b/src/audio/sfx_player.c new file mode 100644 index 0000000000..f9e3b082aa --- /dev/null +++ b/src/audio/sfx_player.c @@ -0,0 +1,1443 @@ +#include "common.h" +#include "audio.h" + +static void func_8004C0E4(SoundManager* manager, SoundPlayer* player, s8* readPos, SoundSFXEntry* sfxEntry, s32 arg4, s32 arg5); +static void au_sfx_set_bits_C00(SoundManager* manager, u32 soundID); +static void au_sfx_stop_by_id(SoundManager* manager, u32 soundID); +static void func_8004C300(SoundManager* manager, u32 soundID); +static void au_sfx_set_modifiers(SoundManager* manager, SoundSFXEntry* sfxEntry); +static void au_sfx_set_player_modifiers(SoundPlayer* player, SoundSFXEntry* sfxEntry); + +static void au_sfx_update_mode_0(SoundManager* manager, SoundPlayer* player, AlUnkVoice* arg2, u8 arg3); +static s16 au_sfx_get_scaled_volume(SoundManager* manager, SoundPlayer* player); +static void au_sfx_update_mode_1(SoundManager* manager, SoundPlayer* player, AlUnkVoice* arg2, u8 arg3); +static void snd_set_voice_volume(AlUnkVoice* voice, SoundManager* manager, SoundPlayer* player); +static u8 au_sfx_get_random_pan(s32 arg0, s32 arg1, s32 arg2); +static void au_SEFCmd_00_SetVolume(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_02_SetInstrument(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_03_SetReverb(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_04(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_05(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_06(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_07(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_08(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0A_EndLoop(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0B(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0C(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0D(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0E(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_0F(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_10_Jump(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_11_Restart(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_12_NOP(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_SetRandomPitch(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_SetRandomVelocity(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_SetUnkA3(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_16(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_17(SoundManager* manager, SoundPlayer* player); +static void au_SEFCmd_18(SoundManager* manager, SoundPlayer* player); +static s32 au_sfx_get_random_pitch(s32 arg0, s32 arg1, s32 arg2); +static u8 au_sfx_get_random_vol(s32 arg0, s32 arg1, s32 arg2); +static void au_sfx_reset_players(SoundManager* manager); + +enum SoundEffectParamFlags { + SFX_PARAM_MODE_0 = 0x00000000, + SFX_PARAM_MODE_1 = 0x00000001, + SFX_PARAM_MODE_2 = 0x00000002, + SFX_PARAM_FLAGS_MODE = 0x00000003, + SFX_PARAM_FLAG_VOLUME = 0x00000004, + SFX_PARAM_FLAG_PAN = 0x00000008, + SFX_PARAM_FLAG_PITCH = 0x00000010, + SFX_PARAM_FLAG_REVERB = 0x00000020 +}; + +u16 DummyInstrumentPredictor[32] = { + 0xF803, 0x0125, 0x07D0, 0xFDBC, 0xF886, 0x0355, 0x06FC, 0xFBAB, + 0xFEDA, 0xF82D, 0x0245, 0x077D, 0xFCA9, 0xF901, 0x0456, 0x065D, + 0xFC33, 0xFBB2, 0xFCEF, 0xFE94, 0xFFD8, 0x0080, 0x00A4, 0x007D, + 0x090E, 0x0673, 0x02FF, 0x0053, 0xFEF2, 0xFEA7, 0xFEF9, 0xFF7B +}; + +u8 DummyInstrumentBase[190] = { + 0xB1, 0x01, 0x11, 0x10, 0x00, 0xFF, 0xFE, 0x34, 0xBB, 0x90, 0xE2, 0x1E, 0x00, 0xFB, 0x10, 0xEF, + 0xF2, 0xD1, 0x80, 0xC4, 0xB3, 0xB1, 0xD3, 0xCF, 0xD1, 0xFD, 0xFE, 0x80, 0x1D, 0x2D, 0x3D, 0x3B, + 0x2C, 0x3B, 0xFC, 0x1D, 0x80, 0xDE, 0xF0, 0xD0, 0xD3, 0xD2, 0xB3, 0xD1, 0xF4, 0x80, 0xA2, 0x03, + 0xD0, 0x0D, 0xA9, 0xEA, 0xCB, 0x72, 0x90, 0x41, 0x4E, 0x1D, 0x2D, 0x0C, 0x1E, 0x10, 0x2F, 0x90, + 0xF2, 0x12, 0x03, 0xF0, 0xC2, 0xD1, 0xD4, 0xF3, 0x80, 0xB0, 0xA1, 0xBF, 0xD2, 0x1E, 0x12, 0x70, + 0x4D, 0x80, 0x4C, 0x39, 0x2C, 0x7E, 0x30, 0x6D, 0xB9, 0xCF, 0x90, 0xE1, 0xF2, 0xF3, 0xF2, 0xE1, + 0xE2, 0x16, 0x22, 0xC1, 0xE7, 0x28, 0xF4, 0xF0, 0x21, 0x10, 0x10, 0xFF, 0xA1, 0xED, 0x9F, 0x2F, + 0xF5, 0x61, 0x33, 0x3C, 0xD0, 0xA1, 0xDA, 0xC2, 0xFF, 0x14, 0x41, 0x22, 0x2D, 0xEF, 0xA1, 0xFA, + 0xE1, 0x0E, 0x23, 0x30, 0x32, 0x0E, 0xF0, 0x91, 0x9A, 0xF2, 0xCF, 0x55, 0x13, 0x61, 0xEE, 0x1C, + 0x91, 0x9D, 0x0F, 0xD2, 0x52, 0x06, 0x4D, 0xE1, 0x09, 0x91, 0xD0, 0x1B, 0x15, 0x2E, 0x36, 0xFD, + 0x12, 0xCB, 0x81, 0x22, 0xBC, 0x65, 0xF0, 0x73, 0xCE, 0x3F, 0xAE, 0x71, 0x4E, 0x93, 0x70, 0xF5, + 0x6E, 0xD2, 0x1B, 0xD1, 0x61, 0x0A, 0x5D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +// copy of SMALL_ROOM_PARAMS +s32 CUSTOM_SMALL_ROOM_PARAMS[] = { + /* sections length */ + 3, 11, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 9, 9830, -9830, 0, 0, 0, 0, + 3, 7, 3276, -3276, 0x3FFF, 0, 0, 0, + 0, 10, 5000, 0, 0, 0, 0, 0x5000 +}; + +// modified ECHO_PARAMS -- length and output changed +s32 CUSTOM_ECHO_PARAMS_1[] = { + /* sections length */ + 1, 11, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 10, 20000, 0, 0x7FFF, 0, 0, 0x7FFF +}; + +// modified ECHO_PARAMS -- length and output changed +s32 CUSTOM_ECHO_PARAMS_2[] = { + /* sections length */ + 1, 13, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 12, 20000, 0, 0x7FFF, 0, 0, 0x7FFF +}; + +// modified ECHO_PARAMS -- length and output changed +s32 CUSTOM_ECHO_PARAMS_3[] = { + /* sections length */ + 1, 14, + /* chorus chorus filter + input output fbcoef ffcoef gain rate depth coef */ + 0, 13, 20000, 0, 0x7FFF, 0, 0, 0x7FFF +}; + +AlUnkGemini D_80078370[] = { + { + .sound1 = SOUND_34A, + .sound2 = SOUND_349, + .flags = 1 + } +}; + +//TODO type: InstrumentEffect +s32 D_80078378[] = { + 0x01000000, 0x00080012, 0x3C7F2D7F, 0x2B5F1D00, 0xFF002700, 0xFF000000 +}; + +//TODO type: InstrumentEffect +s32 D_80078390[] = { + 0x01000000, 0x0008001A, 0x3C7F237F, 0x3C3F2A1F, 0x2A0F2A07, 0x2A033600, 0xFF003600, 0xFF000000, + 0x34337F26, 0x3F1600FF, 0x343B7F3B, 0x3FFF0000 +}; + +InstrumentEffect* D_800783C0[] = { + (InstrumentEffect*) &D_80078378, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390, + (InstrumentEffect*) &D_80078390 +}; + +void (*SefCmdHandlers[])(SoundManager*, SoundPlayer*) = { + au_SEFCmd_00_SetVolume, + au_SEFCmd_01_SetPan, + au_SEFCmd_02_SetInstrument, + au_SEFCmd_03_SetReverb, + au_SEFCmd_04, + au_SEFCmd_05, + au_SEFCmd_06, + au_SEFCmd_07, + au_SEFCmd_08, + au_SEFCmd_09_StartLoop, + au_SEFCmd_0A_EndLoop, + au_SEFCmd_0B, + au_SEFCmd_0C, + au_SEFCmd_0D, + au_SEFCmd_0E, + au_SEFCmd_0F, + au_SEFCmd_10_Jump, + au_SEFCmd_11_Restart, + au_SEFCmd_12_NOP, + au_SEFCmd_SetRandomPitch, + au_SEFCmd_SetRandomVelocity, + au_SEFCmd_SetUnkA3, + au_SEFCmd_16, + au_SEFCmd_17, + au_SEFCmd_18 +}; + +u8 BlankSEFData[] = { + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00 +}; + +// -------------------------------------------- +// the following are only referenced in audio/28910_len_5090 + +void (*SeqCmdHandlers[])(BGMPlayer*, BGMPlayerTrack*) = { + au_BGMCmd_E0_MasterTempo, + au_BGMCmd_E1_MasterVolume, + au_BGMCmd_E2_MasterPitchShift, + au_BGMCmd_E3, + au_BGMCmd_E4_MasterTempoFade, + au_BGMCmd_E5_MasterVolumeFade, + au_BGMCmd_E6_MasterEffect, + au_BGMCmd_NOP, + au_BGMCmd_E8_TrackOverridePatch, + au_BGMCmd_E9_SubTrackVolume, + au_BGMCmd_EA_SubTrackPan, + au_BGMCmd_EB_SubTrackReverb, + au_BGMCmd_EC_SegTrackVolume, + au_BGMCmd_ED_SubTrackCoarseTune, + au_BGMCmd_EE_SubTrackFineTune, + au_BGMCmd_EF_SegTrackTune, + au_BGMCmd_F0_TrackTremolo, + au_BGMCmd_F1_TrackTremoloSpeed, + au_BGMCmd_F2_TrackTremoloTime, + au_BGMCmd_F3_TrackTremoloStop, + au_BGMCmd_F4, + au_BGMCmd_F5_TrackVoice, + au_BGMCmd_F6_TrackVolumeFade, + au_BGMCmd_F7_SubTrackReverbType, + au_BGMCmd_NOP, + au_BGMCmd_NOP, + au_BGMCmd_NOP, + au_BGMCmd_NOP, + au_BGMCmd_FC_Jump, + au_BGMCmd_FD_EventTrigger, + au_BGMCmd_FE_Detour, + au_BGMCmd_FF, +}; + +s8 SeqCmdArgCounts[] = { + 2, 1, 1, 1, 4, 3, 2, 0, + 2, 1, 1, 1, 1, 1, 1, 2, + 3, 1, 1, 0, 2, 1, 3, 1, + 0, 0, 0, 0, 3, 3, 3, 3 +}; + +s8 BgmDivisors[] = { + 48, 24, 32, 40, 48, 56, 64, 48, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +// -------------------------------------------- +// the following are only referenced in audio/2BF90 + +u8 BlankMseqData[] = { + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00 +}; + +// -------------------------------------------- +// the following are only referenced in audio/2e230_len_2190 + +s16 D_80078530[] = { + 0x0000, 0x0200, 0x0800, 0x1200, 0x2000, 0x3200, 0x4800, 0x6200, 0x8000 +}; + +// InstrumentEffect +s32 D_80078544[] = { + 0x01000000, 0x0008000C +}; + +s32 D_8007854C[] = { + 0x3D7FFF00, 0x3400FF00 +}; + +// -------------------------------------------- +// the following are only referenced in 28910_len_5090 + +s32 D_80078554[] = { + 0x5C00FF00 +}; + +s8 D_80078558[] = { + 0x5E, 0x5D, 0x5C, 0x5B, 0x5A, 0x58, 0x56, 0x53, + 0x51, 0x4F, 0x4A, 0x45, 0x40, 0x3B, 0x37, 0x35, + 0x33, 0x31, 0x2F, 0x2D, 0x2B, 0x29, 0x27, 0x26, + 0x25, 0x23, 0x21, 0x20, 0x1F, 0x1E, 0x1D, 0x1C, + 0x1B, 0x1A, 0x19, 0x18, 0x17, 0x16, 0x15, 0x14 +}; + +// -------------------------------------------- +// the following are only referenced in audio/2e230_len_2190 + +u8 AmbientSoundIDtoMSEQFileIndex[] = { + 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, + 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, + 0x13, 0x14, 0x15, 0x16, 0x17, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +// -------------------------------------------- +// the following are only referenced in audio/2d9a0_len_890 + +s32 D_800785A0[] = { + 0x0393756C, 0x034736DE, 0x02FAE1DA, 0x02AEA34C, 0x02624E48, 0x0215F944, 0x01C9BAB6, 0x01A39034, + 0x017D65B2, 0x015751A6, 0x01312724, 0x0121E2F0, 0x01129EBC, 0x01035A88, 0x00F41654, 0x00E4D220, + 0x00D58DEC, 0x00C649B8, 0x00B70584, 0x00A7D7C6, 0x00989392, 0x00894F5E, 0x007A0B2A, 0x006AC6F6, + 0x005B82C2, 0x004C3E8E, 0x00449C74, 0x003CFA5A, 0x00355840, 0x002DB626, 0x0029F054, 0x0026140C, + 0x00224E3A, 0x001E71F2, 0x001CF41C, 0x001B7646, 0x0019E1FA, 0x00186424, 0x0016CFD8, 0x00155202, + 0x0013D42C, 0x00123FE0, 0x0010C20A, 0x000F2DBE, 0x000E7A0E, 0x000DAFE8, 0x000CE5C2, 0x000C3212, + 0x000B67EC, 0x000A9DC6, 0x0009EA16, 0x00091FF0, 0x000855CA, 0x00078BA4, 0x0006D7F4, 0x00060DCE, + 0x0005B3F6, 0x000543A8, 0x0004E9D0, 0x00048FF8, 0x0004630C, 0x00043620, 0x00040934, 0x0003F2BE, + 0x0003C5D2, 0x000398E6, 0x00038270, 0x00035584, 0x00032898, 0x0002FBAC, 0x0002E536, 0x0002B84A, + 0x00028B5E, 0x00025E72, 0x000247FC, 0x00021B10, 0x0001EE24, 0x0001C138, 0x0001AAC2, 0x00017DD6, + 0x00016760, 0x00013A74, 0x00010D88, 0x0000F712, 0x0000E09C, 0x0000CA26, 0x0000B3B0, 0x00009D3A, + 0x000086C4, 0x0000704E, 0x000059D8, 0x00004362, 0x00002CEC, 0x00001676, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 +}; + +// -------------------------------------------- +// the following are only referenced in audio/2e230_len_2190 + +f32 AlTuneScaling[] = { + // TUNE_SCALING_ARR_AMPLIFY_FINE + 1.00000000f, 1.00057781f, 1.00115597f, 1.00173450f, 1.00231326f, 1.00289237f, 1.00347185f, 1.00405169f, + 1.00463188f, 1.00521231f, 1.00579309f, 1.00637424f, 1.00695574f, 1.00753760f, 1.00811982f, 1.00870228f, + 1.00928509f, 1.00986826f, 1.01045179f, 1.01103568f, 1.01161981f, 1.01220429f, 1.01278913f, 1.01337433f, + 1.01395988f, 1.01454580f, 1.01513207f, 1.01571858f, 1.01630545f, 1.01689267f, 1.01748025f, 1.01806819f, + 1.01865649f, 1.01924503f, 1.01983392f, 1.02042317f, 1.02101278f, 1.02160275f, 1.02219307f, 1.02278376f, + 1.02337468f, 1.02396595f, 1.02455759f, 1.02514958f, 1.02574193f, 1.02633464f, 1.02692771f, 1.02752113f, + 1.02811480f, 1.02870882f, 1.02930319f, 1.02989793f, 1.03049302f, 1.03108847f, 1.03168428f, 1.03228045f, + 1.03287685f, 1.03347361f, 1.03407073f, 1.03466821f, 1.03526604f, 1.03586423f, 1.03646278f, 1.03706169f, + 1.03766096f, 1.03826058f, 1.03886044f, 1.03946066f, 1.04006124f, 1.04066217f, 1.04126346f, 1.04186511f, + 1.04246712f, 1.04306948f, 1.04367220f, 1.04427528f, 1.04487872f, 1.04548252f, 1.04608655f, 1.04669094f, + 1.04729569f, 1.04790080f, 1.04850626f, 1.04911208f, 1.04971826f, 1.05032480f, 1.05093169f, 1.05153894f, + 1.05214655f, 1.05275452f, 1.05336285f, 1.05397153f, 1.05458057f, 1.05518997f, 1.05579972f, 1.05640972f, + 1.05702007f, 1.05763078f, 1.05824184f, 1.05885327f, 1.05946505f, 1.06007719f, 1.06068969f, 1.06130254f, + 1.06191576f, 1.06252933f, 1.06314325f, 1.06375754f, 1.06437218f, 1.06498718f, 1.06560254f, 1.06621826f, + 1.06683433f, 1.06745076f, 1.06806755f, 1.06868470f, 1.06930220f, 1.06992006f, 1.07053828f, 1.07115686f, + 1.07177579f, 1.07239509f, 1.07301474f, 1.07363474f, 1.07425511f, 1.07487583f, 1.07549691f, 1.07611835f, + // TUNE_SCALING_ARR_AMPLIFY_COARSE + 1.00000000f, 1.07674015f, 1.15936935f, 1.24833953f, 1.34413731f, 1.44728661f, 1.55835164f, 1.67793977f, + 1.80670512f, 1.94535196f, 2.09463859f, 2.25538135f, 2.42845964f, 2.61482000f, 2.81548166f, 3.03154206f, + 3.26418304f, 3.51467681f, 3.78439355f, 4.07480860f, 4.38750982f, 4.72420788f, 5.08674431f, 5.47710180f, + 5.89741516f, 6.34998369f, 6.83728218f, 7.36197615f, 7.92693520f, 8.53524971f, 9.19024563f, 9.89550686f, + // TUNE_SCALING_ARR_ATTENUATE_FINE + 1.00000000f, 0.99942255f, 0.99884546f, 0.99826866f, 0.99769223f, 0.99711609f, 0.99654031f, 0.99596488f, + 0.99538976f, 0.99481499f, 0.99424052f, 0.99366641f, 0.99309260f, 0.99251914f, 0.99194598f, 0.99137318f, + 0.99080074f, 0.99022859f, 0.98965681f, 0.98908532f, 0.98851418f, 0.98794335f, 0.98737288f, 0.98680270f, + 0.98623288f, 0.98566335f, 0.98509419f, 0.98452532f, 0.98395681f, 0.98338860f, 0.98282075f, 0.98225319f, + 0.98168600f, 0.98111910f, 0.98055255f, 0.97998631f, 0.97942042f, 0.97885484f, 0.97828960f, 0.97772467f, + 0.97716010f, 0.97659582f, 0.97603190f, 0.97546828f, 0.97490501f, 0.97434205f, 0.97377944f, 0.97321713f, + 0.97265512f, 0.97209346f, 0.97153211f, 0.97097111f, 0.97041041f, 0.96985006f, 0.96929002f, 0.96873033f, + 0.96817094f, 0.96761185f, 0.96705312f, 0.96649468f, 0.96593660f, 0.96537882f, 0.96482134f, 0.96426421f, + 0.96370739f, 0.96315092f, 0.96259475f, 0.96203887f, 0.96148336f, 0.96092814f, 0.96037328f, 0.95981872f, + 0.95926446f, 0.95871055f, 0.95815694f, 0.95760363f, 0.95705068f, 0.95649803f, 0.95594567f, 0.95539367f, + 0.95484197f, 0.95429057f, 0.95373952f, 0.95318878f, 0.95263839f, 0.95208830f, 0.95153850f, 0.95098901f, + 0.95043987f, 0.94989103f, 0.94934249f, 0.94879431f, 0.94824642f, 0.94769883f, 0.94715160f, 0.94660467f, + 0.94605803f, 0.94551176f, 0.94496578f, 0.94442010f, 0.94387472f, 0.94332969f, 0.94278497f, 0.94224054f, + 0.94169647f, 0.94115269f, 0.94060922f, 0.94006604f, 0.93952322f, 0.93898070f, 0.93843848f, 0.93789655f, + 0.93735498f, 0.93681371f, 0.93627274f, 0.93573207f, 0.93519175f, 0.93465173f, 0.93411201f, 0.93357259f, + 0.93303353f, 0.93249476f, 0.93195629f, 0.93141812f, 0.93088025f, 0.93034273f, 0.92980552f, 0.92926860f, + // TUNE_SCALING_ARR_ATTENUATE_COARSE + 1.00000000f, 0.92873198f, 0.86254311f, 0.80107135f, 0.74398059f, 0.69095856f, 0.64171529f, 0.59598154f, + 0.55350709f, 0.51405972f, 0.47742370f, 0.44339865f, 0.41179851f, 0.38245043f, 0.35519394f, 0.32987997f, + 0.30637008f, 0.28453568f, 0.26425737f, 0.24542427f, 0.22793336f, 0.21168900f, 0.19660234f, 0.18259089f, + 0.16957800f, 0.15749252f, 0.14626834f, 0.13584408f, 0.12616274f, 0.11717137f, 0.10882080f, 0.10106535f, + 0.09386262f, 0.08717322f, 0.08096056f, 0.07519066f, 0.06983197f, 0.06485518f, 0.06023308f, 0.05594039f, + 0.05195362f, 0.04825099f, 0.04481224f, 0.04161856f, 0.03865249f, 0.03589780f, 0.03333944f, 0.03096340f, + 0.02875670f, 0.02670727f, 0.02480390f, 0.02303617f, 0.02139443f, 0.01986969f, 0.01845361f, 0.01713846f, + 0.01591704f, 0.01478266f, 0.01372913f, 0.01275068f, 0.01184197f, 0.01099801f, 0.01021421f, 0.00948626f, + 0.00881019f, 0.00818231f, 0.00759917f, 0.00705759f, 0.00655461f, 0.00608748f, 0.00565364f, 0.00525071f, + 0.00487650f, 0.00452897f, 0.00420620f, 0.00390643f, 0.00362802f, 0.00336946f, 0.00312933f, 0.00290631f, + 0.00269918f, 0.00250681f, 0.00232816f, 0.00216224f, 0.00200814f, 0.00186502f, 0.00173211f, 0.00160866f, + 0.00149402f, 0.00138754f, 0.00128865f, 0.00119681f, 0.00111152f, 0.00103230f, 0.00095873f, 0.00089041f, + 0.00082695f, 0.00076801f, 0.00071328f, 0.00066244f, 0.00061523f, 0.00057139f, 0.00053067f, 0.00049285f, + 0.00045772f, 0.00042510f, 0.00039480f, 0.00036667f, 0.00034054f, 0.00031627f, 0.00029373f, 0.00027279f, + 0.00025335f, 0.00023530f, 0.00021853f, 0.00020295f, 0.00018849f, 0.00017506f, 0.00016258f, 0.00015099f, + 0.00014023f, 0.00013024f, 0.00012096f, 0.00011234f, 0.00010433f, 0.00009689f, 0.00008999f, 0.00008358f +}; + +extern s32* AU_FX_CUSTOM_PARAMS[0]; // points to 80078290 + +extern void (*CurrentSeqCmdHandler)(BGMPlayer*, BGMPlayerTrack*); +extern void (*CurrentSefCmdHandler)(SoundManager*, SoundPlayer*); + +void au_sfx_init(SoundManager* manager, u8 priority, u8 reverbType, AuGlobals* globals, u8 arg4) { + u32 i; + s32 c = 0x6A25E; + + manager->globals = globals; + manager->nextUpdateStep = 312500; + manager->nextUpdateCounter = c; + manager->nextUpdateInterval = c; + manager->priority = priority; + manager->defaultReverbType = reverbType; + + if (arg4 > 16) { + manager->sfxPlayerSelector = 16; + } else { + manager->sfxPlayerSelector = arg4; + } + + manager->unk_5C = 0x8000; + manager->unk_B8 = 0x8000; + manager->playCounter = 0; + manager->randomValue = 0; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* sub = &manager->players[i]; + + sub->sefDataReadPos = NULL; + sub->sfxVolume = 0; + sub->delay = 0; + sub->playLength = 0; + sub->unk_92 = 0; + sub->unk_94 = 0; + sub->sfxPan = 0; + sub->reverb = 0; + sub->instrumentIndex = 0; + sub->unk_9E = 0; + sub->playVelocity = 0; + sub->unk_99 = 0; + sub->locatorB = 0; + sub->locatorC = 0; + sub->locatorD = 0; + sub->unk_7B = 0x40; + sub->unk_7C = 0; + sub->unk_7D = 0xB0; + sub->unk_7E = 0; + sub->unk_7F = 0; + } + + for (i = 0; i < ARRAY_COUNT(manager->unk_90); i++) { + manager->unk_90[i].s32 = 0; + } + + for (i = 0; i < ARRAY_COUNT(manager->unk_A0); i++) { + manager->unk_A0[i].unk_00 = 0; + } + + manager->unk_168 = 0; + func_8004BA54(manager, 0); + au_sfx_clear_queue(manager); + au_fade_init(&manager->fadeInfo, 0, 0x7FFF, 0x7FFF); + func_80053A98(manager->defaultReverbType, manager->fadeInfo.currentVolume.u16, manager->unk_5C); + manager->lastCustomEffectIdx = 0xFF; + + manager->customReverbParams[0] = CUSTOM_SMALL_ROOM_PARAMS; + manager->customReverbParams[1] = CUSTOM_ECHO_PARAMS_1; + manager->customReverbParams[2] = CUSTOM_ECHO_PARAMS_2; + manager->customReverbParams[3] = CUSTOM_ECHO_PARAMS_3; + manager->customReverbParams[4] = CUSTOM_ECHO_PARAMS_3; + manager->customReverbParams[5] = CUSTOM_ECHO_PARAMS_3; + manager->customReverbParams[6] = CUSTOM_ECHO_PARAMS_3; + manager->customReverbParams[7] = CUSTOM_ECHO_PARAMS_3; + + manager->customReverbAmounts[0] = 0x10; + manager->customReverbAmounts[1] = 0x20; + manager->customReverbAmounts[2] = 0x20; + manager->customReverbAmounts[3] = 0x20; + manager->customReverbAmounts[4] = 0x20; + manager->customReverbAmounts[5] = 0x30; + manager->customReverbAmounts[6] = 0x40; + manager->customReverbAmounts[7] = 0x50; + + func_8004B9E4(manager, 0); +} + +void au_sfx_load_groups_from_SEF(SoundManager* manager) { + SEFHeader* sefData = manager->globals->dataSEF; + s32 sections = ARRAY_COUNT(sefData->sections); + u32 i; + + manager->sefData = sefData; + + for (i = 0; i < sections; i++) { + if (sefData->sections[i] != 0) { + manager->normalSounds[i] = AU_FILE_RELATIVE(sefData, sefData->sections[i]); + } + } + + if (sefData->hasExtraSection == 1) { + if (sefData->section2000 != 0) { + manager->soundsWithBit2000 = AU_FILE_RELATIVE(sefData, sefData->section2000); + } + } +} + +void au_sfx_clear_queue(SoundManager* manager) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->soundQueue); i++) { + manager->soundQueue[i].soundID = 0; + manager->soundQueue[i].upperSoundID = 0; + manager->soundQueue[i].volume = 0; + manager->soundQueue[i].pitchShift = 0; + manager->soundQueue[i].pan = 0; + } + + manager->unk_165 = 0; + manager->sfxQueueNextPos = 0; + manager->sfxQueuePosOffset = 0; + manager->unk_162 = 0; +} + +void au_sfx_enqueue_event(SoundManager* manager, u32 soundID, s16 volume, s16 pitchShift, u8 pan) { + u32 queuePos = manager->sfxQueueNextPos; + s32 queueAmt = manager->sfxQueueNextPos - manager->sfxQueuePosOffset; + + if (queueAmt < 0) { + queueAmt += 16; + } + + if (queueAmt < 16) { + u32 queueNextPos = queuePos; + + manager->soundQueue[queueNextPos].soundID = soundID & 0xBFFF; + manager->soundQueue[queueNextPos].upperSoundID = ((soundID >> 0x10) & 0x3FF); + manager->soundQueue[queueNextPos].volume = volume; + manager->soundQueue[queueNextPos].pitchShift = pitchShift; + manager->soundQueue[queueNextPos].pan = pan; + + queueNextPos++; + if (queueNextPos >= 16) { + queueNextPos = 0; + } + + manager->sfxQueueNextPos = queueNextPos; + } +} + +void au_sfx_update_main(SoundManager* manager) { + SoundSFXEntry newEntry; + SoundSFXEntry* sfxEntry; + u32 i, j, k; + s32 count; + + manager->playCounter++; + if (manager->unk_168 != 0) { + au_sfx_reset_players(manager); + manager->unk_168 = 0; + } + + for (i = 0; i < ARRAY_COUNT(manager->unk_90); i++) { + k = manager->unk_90[i].unk_0; + if (k == 0) { + // do nothing + } else if (k < 2) { + AlUnkGemini* unkData = &D_80078370[k-1]; + u16 sound2 = unkData->sound2; + if (sound2 != 0) { + for (j = 0; j < ARRAY_COUNT(manager->players); j++) { + if (manager->players[j].currentSoundID == sound2) { + newEntry.soundID = unkData->sound1; + newEntry.upperSoundID = 0; + newEntry.pitchShift = 0; + if ((unkData->flags & 1) && (manager->unk_90[i].volume != 0)) { + newEntry.volume = (manager->unk_90[i].volume << 8) + 0xFF; + } else { + newEntry.volume = 0; + } + newEntry.pan = 0; + func_8004BA74(manager, &newEntry, NULL); + break; + } + } + } else { + newEntry.soundID = unkData->sound1; + newEntry.upperSoundID = 0; + newEntry.volume = 0; + newEntry.pitchShift = 0; + newEntry.pan = 0; + func_8004BA74(manager, &newEntry, NULL); + } + } + manager->unk_90[i].s32 = 0; + } + + for (i = 0; i < ARRAY_COUNT(manager->unk_A0); i++) { + if (manager->unk_A0[i].unk_00 != 0) { + newEntry.soundID = 1; + newEntry.upperSoundID = 0; + newEntry.volume = 0; + newEntry.pitchShift = 0; + newEntry.pan = 0; + func_8004BA74(manager, &newEntry, &manager->unk_A0[i]); + } + manager->unk_A0[i].unk_00 = 0; + } + + count = manager->sfxQueueNextPos - manager->sfxQueuePosOffset; + if (count < 0) { + count += ARRAY_COUNT(manager->soundQueue); + } + j = manager->sfxQueuePosOffset; + if (count > 0 && count < ARRAY_COUNT(manager->soundQueue)) { + for (i = 0; i < count; i++) { + sfxEntry = &manager->soundQueue[j]; + if (sfxEntry->soundID & 0x23FF) { + if (sfxEntry->soundID & 0x8000) { + au_sfx_stop_by_id(manager, sfxEntry->soundID); + } else if (!(sfxEntry->soundID & 0x1C00)) { + func_8004BA74(manager, sfxEntry, NULL); + } else { + if (sfxEntry->soundID & 0xC00) { + au_sfx_set_bits_C00(manager, sfxEntry->soundID); + } + if (sfxEntry->soundID & 0x1000) { + au_sfx_set_modifiers(manager, sfxEntry); + } + } + } + sfxEntry->soundID = 0; + + j++; + if (j >= ARRAY_COUNT(manager->soundQueue)) { + j = 0; + } + } + manager->sfxQueuePosOffset = manager->sfxQueueNextPos; + } +} + +s32 func_8004B9E4(SoundManager* manager, s32 arg1) { + s32 customIdx = (u8) arg1; + + if (customIdx != 0xF0) { + if (customIdx < ARRAY_COUNT(manager->customReverbParams)) { + if (manager->lastCustomEffectIdx != customIdx) { + manager->lastCustomEffectIdx = customIdx; + manager->globals->effectChanges[1].type = AU_FX_CUSTOM_0; + manager->globals->effectChanges[1].changed = TRUE; + AU_FX_CUSTOM_PARAMS[0] = manager->customReverbParams[customIdx]; + } + manager->defaultReverbAmt = manager->customReverbAmounts[customIdx]; + } else { + manager->lastCustomEffectIdx = 0xFF; + manager->defaultReverbAmt = 0; + } + } + return manager->lastCustomEffectIdx; +} + +void func_8004BA54(SoundManager* manager, s32 arg1) { + if (arg1 == 0) { + manager->unk_C0 = 0; + } else if (arg1 == 1) { + manager->unk_C0 = 1; + } +} + +INCLUDE_ASM(s32, "audio/sfx_player", func_8004BA74); + +static void func_8004C0E4(SoundManager* manager, SoundPlayer* player, s8* readPos, SoundSFXEntry* sfxEntry, s32 arg4, s32 arg5) { + if (manager->unk_C0 == 0) { + player->sefDataReadPos = readPos; + player->sefReadStart = readPos; + player->sfxInstrumentRef = manager->globals->defaultInstrument; + player->sfxPan = 0x40; + player->sfxVolume = 0x7FFF; + player->unk_5E = 0x7FFF; + player->reverb = 0; + player->instrumentIndex = 0; + player->unk_9E = 0; + player->playVelocity = 0x7F; + player->unk_92 = 0; + player->unk_94 = 0; + player->loopStartPos = NULL; + player->loopIterCount = 0; + player->delay = 1; + player->playLength = 0; + player->currentSoundID = sfxEntry->soundID & SOUND_ID_LOWER; + player->unk_98 = arg4; + player->unk_99 = arg5; + player->unk_18 = 0; + player->changed.all = 0; + player->unk_A0 = 0; + player->randomPitch = 0; + player->randomVelocity = 0; + player->unk_A3 = 0; + player->volumeLerp.current = 0x7FFFFFFF; + player->volumeLerp.time = 0; + player->volumeLerp.step = 0; + player->volumeLerp.goal = 0; + player->tuneLerp.current = 0; + player->tuneLerp.time = 0; + player->tuneLerp.step = 0; + player->tuneLerp.goal = 0; + player->unk_80 = NULL; + player->unk_84 = 0; + player->soundC00 = 0; + player->sfxParamsFlags = *player->sefDataReadPos++; + switch (player->sfxParamsFlags & SFX_PARAM_FLAGS_MODE) { + case SFX_PARAM_MODE_0: + player->unk_A9 = 1; + break; + case SFX_PARAM_MODE_1: + player->unk_A9 = 1; + break; + case SFX_PARAM_MODE_2: + player->sfxParamsFlags &= ~SFX_PARAM_FLAGS_MODE; + player->unk_A9 = 1; + player->locatorB = player->sefDataReadPos[0]; + player->locatorC = player->sefDataReadPos[1]; + player->locatorD = (player->sefDataReadPos[2] >> 1) | 3; + player->unk_7E = player->sefDataReadPos[2] & 7; + player->sefDataReadPos = &player->locatorB; + break; + } + au_sfx_set_player_modifiers(player, sfxEntry); + } +} + +static void au_sfx_set_bits_C00(SoundManager* manager, u32 soundID) { + s32 soundUpper = (soundID & SOUND_ID_MID) >> 0xA; + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* player = &manager->players[i]; + if (player->currentSoundID == (soundID & SOUND_ID_LOWER)) { + player->soundC00 = soundUpper; + } + } +} + +static void au_sfx_stop_by_id(SoundManager* manager, u32 soundID) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* player = &manager->players[i]; + if (player->currentSoundID == (soundID & SOUND_ID_LOWER)) { + player->sefDataReadPos = BlankSEFData; + player->unk_80 = NULL; + player->sfxParamsFlags = SFX_PARAM_MODE_1; + player->unk_A9 = 0; + player->delay = 1; + player->unk_98 = 0; + player->unk_99 = 0; + } + } +} + +static void func_8004C300(SoundManager* manager, u32 soundID) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* player = &manager->players[i]; + if (soundID == player->unk_99) { + player->sefDataReadPos = BlankSEFData; + player->unk_80 = NULL; + player->sfxParamsFlags = SFX_PARAM_MODE_1; + player->unk_A9 = 0; + player->delay = 1; + player->unk_98 = 0; + player->unk_99 = 0; + } + } +} + +static void au_sfx_set_modifiers(SoundManager* manager, SoundSFXEntry* sfxEntry) { + s32 soundID = sfxEntry->soundID & SOUND_ID_LOWER; + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* player = &manager->players[i]; + if (player->currentSoundID == soundID) { + au_sfx_set_player_modifiers(player, sfxEntry); + } + } +} + +static void au_sfx_set_player_modifiers(SoundPlayer* player, SoundSFXEntry* sfxEntry) { + if (player->sfxParamsFlags & SFX_PARAM_FLAG_VOLUME) { + player->masterVolume = 0; + } else { + player->masterVolume = sfxEntry->volume; + player->changed.volume = TRUE; + } + if (player->sfxParamsFlags & SFX_PARAM_FLAG_PAN) { + player->masterPan = 0; + } else { + player->masterPan = sfxEntry->pan; + player->changed.pan = TRUE; + } + if (player->sfxParamsFlags & SFX_PARAM_FLAG_PITCH) { + player->masterPitchShift = 0; + } else { + player->masterPitchShift = sfxEntry->pitchShift; + player->changed.tune = TRUE; + } +} + +s16 au_sfx_manager_update(SoundManager* manager) { + SoundPlayer* sndPlayer; + AlUnkVoice* voice; + u32 start; + u8 end; + u8 i; + + // update pseudorandom number with fast 'good enough' method + manager->randomValue = (u16)manager->randomValue + (u16)manager->playCounter; + + start = manager->sfxPlayerSelector; + for (i = start, end = start + 8; i < end; i++) { + sndPlayer = &manager->players[i - manager->sfxPlayerSelector]; + if (sndPlayer->sefDataReadPos != NULL) { + voice = &manager->globals->voices[i]; + manager->currentVoice = voice; + if (voice->priority <= manager->priority) { + manager->unk_BF = i; + switch (sndPlayer->sfxParamsFlags & SFX_PARAM_FLAGS_MODE) { + case SFX_PARAM_MODE_0: + au_sfx_update_mode_0(manager, sndPlayer, voice, i); + break; + case SFX_PARAM_MODE_1: + au_sfx_update_mode_1(manager, sndPlayer, voice, i); + break; + case SFX_PARAM_MODE_2: + break; + } + } else { + sndPlayer->sefDataReadPos = NULL; + sndPlayer->currentSoundID = 0; + sndPlayer->unk_98 = 0; + } + } + } + return 0; +} + +static void au_sfx_update_mode_0(SoundManager* manager, SoundPlayer* player, AlUnkVoice* voice, u8 index) { + s16 volume; + s32 tune; + s32 pan; + s32 a; + s32 b; + + switch (player->unk_A9) { + case 0: + if (voice->priority != manager->priority) { + player->sefDataReadPos = NULL; + player->currentSoundID = 0; + player->unk_98 = 0; + } else { + if (!(player->sfxParamsFlags & SFX_PARAM_FLAG_PITCH)) { + player->pitchRatio = au_compute_pitch_ratio( + ((player->tuneLerp.current >> 0x10) - player->sfxInstrumentRef->keyBase) + player->masterPitchShift) * player->sfxInstrumentRef->pitchRatio; + if (voice->pitchRatio != player->pitchRatio) { + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_PITCH; + voice->pitchRatio = player->pitchRatio; + } + } + + if (!(player->sfxParamsFlags & SFX_PARAM_FLAG_PAN) && player->masterPan != 0) { + pan = player->masterPan; + } else { + pan = player->sfxPan; + } + if (voice->pan != pan) { + voice->pan = pan; + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_10; + } + + volume = au_sfx_get_scaled_volume(manager, player); + if (voice->adjustedVolume != volume) { + voice->adjustedVolume = volume; + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_VOL_CHANGED; + } + } + break; + case 1: + au_SEFCmd_02_SetInstrument(manager, player); + au_SEFCmd_00_SetVolume(manager, player); + au_SEFCmd_01_SetPan(manager, player); + au_SEFCmd_03_SetReverb(manager, player); + a = (*player->sefDataReadPos++ & 0x7F); + b = (*player->sefDataReadPos & 0xF) << 3; + tune = a * 100; + player->randomPitch = b; + if (player->randomPitch != 0) { + player->tuneLerp.current = au_sfx_get_random_pitch(manager->randomValue, player->randomPitch, tune) << 0x10; + } else { + player->tuneLerp.current = tune << 0x10; + } + if (player->sfxParamsFlags & SFX_PARAM_FLAG_PITCH) { + tune = (player->tuneLerp.current >> 0x10) - player->sfxInstrumentRef->keyBase; + } else { + tune = ((player->tuneLerp.current >> 0x10) - player->sfxInstrumentRef->keyBase) + player->masterPitchShift; + } + player->pitchRatio = au_compute_pitch_ratio(tune) * player->sfxInstrumentRef->pitchRatio; + if (voice->priority <= manager->priority) { + func_80053888(voice, index); + if (!(player->sfxParamsFlags & SFX_PARAM_FLAG_PAN) && player->masterPan != 0) { + voice->pan = player->masterPan; + } else { + voice->pan = player->sfxPan; + } + + voice->reverbAmt = player->reverb; + voice->adjustedVolume = au_sfx_get_scaled_volume(manager, player); + voice->unk_14.unk_00 = player->unk_10.unk_00; + voice->unk_14.unk_04 = player->unk_10.unk_04; + voice->instrument = player->sfxInstrumentRef; + voice->pitchRatio = player->pitchRatio; + voice->unk_flags_43 = AU_VOICE_SYNC_FLAGS_ALL; + voice->priority = manager->priority; + voice->priorityCopy = voice->priority; + voice->reverbType = manager->defaultReverbType; + } + player->unk_A9 = 0; + break; + default: + player->sefDataReadPos = NULL; + player->currentSoundID = 0; + player->unk_98 = 0; + break; + } +} + +static s16 au_sfx_get_scaled_volume(SoundManager* manager, SoundPlayer* player) { + s32 outVolume; + + outVolume = (manager->unk_B8 * player->sfxVolume) >> 0xF; + if (!(player->sfxParamsFlags & SFX_PARAM_FLAG_VOLUME) && (player->masterVolume != 0)) { + outVolume = (outVolume * player->masterVolume) >> 0xF; + } + return outVolume; +} + +static void au_sfx_update_mode_1(SoundManager* manager, SoundPlayer* player, AlUnkVoice* voice, u8 arg3) { + s32* var_v0_3; + s32 pitchShift; + s32 temp_a0; + u8 opcode; + u32 playLength; + s32 var_s3; + void (**CmdHandlers)(SoundManager*, SoundPlayer*); + + var_s3 = FALSE; + if (player->unk_A9 == 1) { + player->unk_A9 = 0; + if (voice->priority == manager->priority) { + au_reset_voice(voice, arg3); + } + } + + if (player->unk_80 != NULL) { + if (player->soundC00 == 1) { + player->sefDataReadPos = player->unk_80; + player->unk_80 = NULL; + player->soundC00 = 0; + player->delay = 1; + } + } + if (player->soundC00 == 2) { + player->changed.volume = 1; + player->sfxVolume = player->unk_5E; + } + player->delay--; + while ((player->delay) == 0) { + CmdHandlers = SefCmdHandlers; + opcode = *player->sefDataReadPos++; + if (opcode < 0x80) { + if (opcode == 0) { + if (voice->priority == manager->priority) { + au_reset_voice(voice, arg3); + } + player->sefDataReadPos = NULL; + player->currentSoundID = 0; + player->unk_98 = 0; + player->unk_99 = 0; + return; + } + if (opcode >= 0x78) { + // long delay + player->delay = (u8)(*player->sefDataReadPos++) + ((opcode & 7) << 8) + 0x78; + } else { + // short delay + player->delay = opcode; + } + } else if (opcode < 0xD8) { + // play sound + // (opcode & 0x7F) = pitch + if (player->randomPitch != 0) { + player->tuneLerp.current = au_sfx_get_random_pitch(manager->randomValue, player->randomPitch, (opcode & 0x7F) * 100) << 0x10; + } else { + player->tuneLerp.current = ((opcode & 0x7F) * 100) << 0x10; + } + + if (player->randomVelocity != 0) { + player->playVelocity = au_sfx_get_random_vol(manager->randomValue, player->randomVelocity, player->sefDataReadPos[0] & 0x7F); + } else { + player->playVelocity = player->sefDataReadPos[0] & 0x7F; + } + + playLength = player->sefDataReadPos[1]; + if (playLength >= 0xC0) { + playLength = player->sefDataReadPos[2] + ((playLength & 0x3F) << 8) + 0xC0; + player->sefDataReadPos += 3; + } else { + player->sefDataReadPos += 2; + } + player->playLength = playLength; + + if (voice->priority <= manager->priority) { + func_80053888(voice, arg3); + if ((player->sfxParamsFlags & SFX_PARAM_FLAG_PAN) || (player->masterPan == 0)) { + voice->pan = player->sfxPan; + } else { + voice->pan = player->masterPan; + } + + voice->reverbAmt = player->reverb; + snd_set_voice_volume(voice, manager, player); + if (player->unk_18 == 0) { + voice->unk_14.unk_00 = player->unk_10.unk_00; + voice->unk_14.unk_04 = player->unk_10.unk_04; + } else { + voice->unk_14.unk_00 = player->unk_18; + voice->unk_14.unk_04 = player->unk_10.unk_04; + } + + voice->instrument = player->sfxInstrumentRef; + voice->reverbType = manager->defaultReverbType; + + voice->priority = manager->priority; + voice->unk_flags_43 = AU_VOICE_SYNC_FLAGS_ALL; + var_s3 = TRUE; + voice->priorityCopy = manager->priority; + player->changed.tune = 1; + } + } else { + s32 index = opcode - 0xE0; + CurrentSefCmdHandler = CmdHandlers[index]; + CurrentSefCmdHandler(manager, player); + } + } + + if (player->volumeLerp.time != 0) { + player->volumeLerp.time--; + if (player->volumeLerp.time != 0) { + player->volumeLerp.current += player->volumeLerp.step; + } else { + player->volumeLerp.current = player->volumeLerp.goal << 0x10; + } + player->changed.volume = TRUE; + } + + if (!var_s3) { + if (player->playLength != 0) { + player->playLength--; + if ((player->playLength == 0) && (voice->priority == manager->priority)) { + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_10; + } + } + if (player->tuneLerp.time != 0) { + player->tuneLerp.time--; + if (player->tuneLerp.time != 0) { + player->tuneLerp.current += player->tuneLerp.step; + } else { + player->tuneLerp.current = player->tuneLerp.goal << 0x10; + } + player->changed.tune = TRUE; + } + if (player->changed.pan || player->changed.reverb) { + if ((player->sfxParamsFlags & SFX_PARAM_FLAG_PAN) || (player->masterPan == 0)) { + voice->pan = player->sfxPan; + } else { + voice->pan = player->masterPan; + } + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_10; + voice->reverbAmt = player->reverb; + } + } + if (player->changed.volume && (voice->priority == manager->priority)) { + snd_set_voice_volume(voice, manager, player); + voice->unk_flags_3D |= AU_VOICE_3D_FLAGS_VOL_CHANGED; + } + if (player->changed.tune) { + f32 adjustedSampleRate; + if (player->sfxParamsFlags & SFX_PARAM_FLAG_PITCH) { + pitchShift = (player->unk_92 + (s16)(player->tuneLerp.current >> 0x10)) - player->sfxInstrumentRef->keyBase; + adjustedSampleRate = au_compute_pitch_ratio(pitchShift + player->unk_94) * player->sfxInstrumentRef->pitchRatio; + player->pitchRatio = adjustedSampleRate; + } else { + pitchShift = ((player->unk_92 + (s16)(player->tuneLerp.current >> 0x10)) - player->sfxInstrumentRef->keyBase) + player->unk_94; + adjustedSampleRate = au_compute_pitch_ratio(pitchShift + player->masterPitchShift) * player->sfxInstrumentRef->pitchRatio; + player->pitchRatio = adjustedSampleRate; + } + if ((voice->priority == manager->priority) && (voice->pitchRatio != adjustedSampleRate)) { + voice->unk_flags_43 |= AU_VOICE_SYNC_FLAGS_PITCH; + voice->pitchRatio = player->pitchRatio; + } + } + player->changed.all = 0; +} + +static void snd_set_voice_volume(AlUnkVoice* voice, SoundManager* manager, SoundPlayer* player) { + s32 x = ((((manager->unk_B8 + * player->sfxVolume) >> 0xF) + * player->playVelocity) >> 7) + * (player->volumeLerp.current >> 0x10) >> 0xF; + + if (player->sfxParamsFlags & SFX_PARAM_FLAG_VOLUME || player->masterVolume == 0) { + voice->adjustedVolume = x; + } else { + voice->adjustedVolume = (x * player->masterVolume) >> 0xF; + } +} + +/* +Uses bit masks: +1F00 = 0001 1111 0000 0000 -> 0001 1111 +001C = 0000 0000 0001 1100 -> 1110 0000 +*/ +static u8 au_sfx_get_random_pan(s32 seed, s32 pan, s32 amplitude) { + s32 tap5, tap3, parity; + s32 lo, hi, random; + s32 retPan; + + pan = pan & 0xFF; + tap5 = seed >> 5; + tap3 = seed >> 3; + parity = (tap5 + tap3) & 1; + + lo = (seed >> 8) & 0x1F; // bitmask 0x1F00 + hi = (seed << 3) & 0xE0; // bitmask 0x001C + random = lo + hi; + + if (parity) { + retPan = pan + (((amplitude & 0xFF) * random) >> 8); + } else { + retPan = pan - (((amplitude & 0xFF) * random) >> 8); + } + if (retPan < 0) { + retPan = 0; + } else if (retPan > 0x7F) { + retPan = 0x7F; + } + return retPan; +} + +static void au_SEFCmd_00_SetVolume(SoundManager* manager, SoundPlayer* player) { + player->sfxVolume = *player->sefDataReadPos++; + if (player->sfxVolume != 0) { + player->sfxVolume = player->sfxVolume << 8 | 0xFF; + } + player->changed.volume = TRUE; +} + +static void au_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 sfxPan = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->changed.pan = TRUE; + player->sfxPan = sfxPan; +} + +static void au_SEFCmd_02_SetInstrument(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 bank = buf[0]; + s32 patch = buf[1]; + player->sefDataReadPos = &buf[2]; + + player->instrumentIndex = patch; + player->sfxInstrumentRef = au_get_instrument(manager->globals, bank, patch, &player->unk_10); +} + +static void au_SEFCmd_03_SetReverb(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + u8 reverb = buf[0]; + player->sefDataReadPos = &buf[1]; + + if (player->sfxParamsFlags & SFX_PARAM_FLAG_REVERB) { + reverb = manager->defaultReverbAmt; + } + player->reverb = reverb; + player->changed.reverb = TRUE; +} + +static void au_SEFCmd_04(SoundManager* manager, SoundPlayer* player) { + Instrument* other; + InstrumentEffect* temp_v0_2; + + AuFilePos buf = player->sefDataReadPos; + u8 temp_v1 = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->unk_9E = temp_v1 & 0x7F; + other = player->sfxInstrumentRef; + + player->sfxInstrument.base = other->base; + player->sfxInstrument.wavDataLength = other->wavDataLength; + player->sfxInstrument.loopPredictor = other->loopPredictor; + player->sfxInstrument.loopStart = other->loopStart; + player->sfxInstrument.loopEnd = other->loopEnd; + player->sfxInstrument.loopCount = other->loopCount; + player->sfxInstrument.predictor = other->predictor; + player->sfxInstrument.dc_bookSize = other->dc_bookSize; + player->sfxInstrument.keyBase = other->keyBase; + player->sfxInstrument.pitchRatio = other->pitchRatio; + player->sfxInstrument.type = other->type; + player->sfxInstrument.unk_25 = other->unk_25; + + player->sfxInstrument.unkOffset = D_800783C0[player->unk_9E]; + player->sfxInstrumentRef = &player->sfxInstrument; + + temp_v0_2 = player->sfxInstrument.unkOffset; + if (temp_v0_2 != NULL && temp_v0_2->count != 0) { + player->unk_10.unk_00 = (s32*)(temp_v0_2->unk_04[0].unkOffset1 + (s32)temp_v0_2); + player->unk_10.unk_04 = (s32*)(temp_v0_2->unk_04[0].unkOffset2 + (s32)temp_v0_2); + } +} + +static void au_SEFCmd_05(SoundManager* manager, SoundPlayer* player) { + player->unk_92 = (*(s8*)player->sefDataReadPos++) * 100; +} + +static void au_SEFCmd_06(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 unkTemp = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->unk_94 = unkTemp; +} + +static void au_SEFCmd_07(SoundManager* manager, SoundPlayer* player) { + if (manager->currentVoice->priority == manager->priority) { + player->delay = 2; + player->sefDataReadPos--; + } +} + +static void au_SEFCmd_08(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 hi = buf[0]; + s32 lo = buf[1]; + s16 newValue = (buf[2] & 0x7F) * 100; + s16 time = lo + (hi << 8); + player->sefDataReadPos = &buf[3]; + + if (time <= 0) { + time = 1; + } + + player->tuneLerp.time = time; + player->tuneLerp.goal = newValue; + player->tuneLerp.step = ((newValue << 0x10) - player->tuneLerp.current) / time; +} + +static void au_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 loopIterCount = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->loopStartPos = player->sefDataReadPos; + player->loopIterCount = loopIterCount; +} + +static void au_SEFCmd_0A_EndLoop(SoundManager* manager, SoundPlayer* player) { + //TODO logic is incorrect? + if (player->loopIterCount == 0 || --player->loopIterCount != 0) { + player->sefDataReadPos = player->loopStartPos; + } +} + +static void au_SEFCmd_0B(SoundManager* manager, SoundPlayer* player) { + if (player->playLength != 0) { + player->delay = 3; + player->sefDataReadPos--; + } +} + +static void au_SEFCmd_0C(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 vol = buf[0]; + player->sefDataReadPos = &buf[1]; + + if (vol != 0) { + vol = (vol << 0x18) | 0xFFFFFF; + } + player->volumeLerp.current = vol; + player->changed.volume = 1; +} + +static void au_SEFCmd_0D(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 hi = buf[0]; + s32 lo = buf[1]; + s32 newValue = buf[2]; + s16 time = lo + (hi << 8); + player->sefDataReadPos = &buf[3]; + + if (newValue != 0) { + newValue = (newValue << 8) | 0xFF; + } + if (time <= 0) { + time = 1; + } + + player->volumeLerp.time = time; + player->volumeLerp.goal = newValue; + player->volumeLerp.step = ((newValue << 0x10) - player->volumeLerp.current) / time; +} + +static void au_SEFCmd_0E(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + AuFilePos pos = AU_FILE_RELATIVE(manager->sefData, (buf[1] << 8) + buf[2]); + u8 type = buf[0]; + player->sefDataReadPos = &buf[3]; + + player->unk_84 = type; + switch (type) { + case 1: + player->unk_80 = pos; + break; + case 2: + player->unk_80 = pos; + break; + case 3: + player->unk_80 = pos; + break; + default: + player->unk_80 = NULL; + break; + } +} + +static void au_SEFCmd_0F(SoundManager* manager, SoundPlayer* player) { + AlUnkVoice* voice = manager->currentVoice; + if (voice->priority == manager->priority) { + au_reset_voice(voice, manager->unk_BF); + } +} + +static void au_SEFCmd_10_Jump(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + player->sefReadStart = &buf[2]; + player->sefDataReadPos = AU_FILE_RELATIVE(manager->sefData, (buf[0] << 8) + buf[1]); +} + +static void au_SEFCmd_11_Restart(SoundManager* manager, SoundPlayer* player) { + player->sefDataReadPos = player->sefReadStart; +} + +static void au_SEFCmd_12_NOP(SoundManager* manager, SoundPlayer* player) { +} + +static void au_SEFCmd_SetRandomPitch(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 randomPitch = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->randomPitch = randomPitch; +} + +static void au_SEFCmd_SetRandomVelocity(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 unkTemp = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->randomVelocity = unkTemp; +} + +static void au_SEFCmd_SetUnkA3(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 unkTemp = buf[0]; + player->sefDataReadPos = &buf[1]; + + player->unk_A3 = unkTemp; +} + +static void au_SEFCmd_16(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + s32 offset = (buf[0] << 8) + buf[1]; + + if (offset != 0) { + player->unk_18 = AU_FILE_RELATIVE(manager->sefData, offset); + } else { + player->unk_18 = NULL; + } + + player->sefDataReadPos = &buf[2]; +} + +static void au_SEFCmd_17(SoundManager* manager, SoundPlayer* player) { + AuFilePos buf = player->sefDataReadPos; + u32 i; + + for (i = 0; i < 4; i++) { + if (manager->unk_A0[i].unk_00 == 0) { + manager->unk_A0[i].unk_00 = buf[1] + (buf[0] << 8); + manager->unk_A0[i].unk_02 = buf[3] + (buf[2] << 8); + break; + } + } + player->sefDataReadPos = &buf[4]; +} + +static void au_SEFCmd_18(SoundManager* manager, SoundPlayer* player) { + player->unk_5E = *(u8*)player->sefDataReadPos++; + if (player->unk_5E != 0) { + player->unk_5E = player->unk_5E << 8 | 0xFF; + } +} + +/* +Uses bit masks: +780 = 0111 1000 0000 -> 0000 1111 +01E = 0000 0001 1110 -> 1111 0000 +*/ +static s32 au_sfx_get_random_pitch(s32 seed, s32 amplitude, s32 pitch) { + s32 lo = (seed >> 7) & 0xF; // bitmask 0x780 + s32 hi = (seed << 3) & 0xF0; // bitmask 0x01E + s32 random = (lo + hi); + s32 tap5 = (seed >> 5); + s32 tap2 = (seed >> 2); + s32 parity = (tap5 + tap2) & 1; + + if (parity) { + return pitch + ((amplitude * 5 * random) >> 8); + } else { + return pitch - ((amplitude * 5 * random) >> 8); + } +} + +/* +Uses bit masks: +CC = 1100 1100 -> 0011 0011 +13 = 0001 0011 -> 0100 1100 +*/ +static u8 au_sfx_get_random_vol(s32 seed, s32 amplitude, s32 volume) { + s32 lo = (seed & 0xCC) >> 2; + s32 hi = (seed & 0x13) << 2; + s32 random = lo + hi; + + return volume * (0x8000 - (amplitude * random)) >> 0xF; +} + +static void au_sfx_reset_players(SoundManager* manager) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(manager->players); i++) { + SoundPlayer* player = &manager->players[i]; + player->sefDataReadPos = BlankSEFData; + player->unk_80 = NULL; + player->sfxParamsFlags = SFX_PARAM_MODE_1; + player->unk_A9 = 0; + player->delay = 1; + player->unk_98 = 0; + player->unk_99 = 0; + } +} diff --git a/src/battle/action_cmd/body_slam.c b/src/battle/action_cmd/body_slam.c index f1653ae470..1d92ea05cd 100644 --- a/src/battle/action_cmd/body_slam.c +++ b/src/battle/action_cmd/body_slam.c @@ -193,8 +193,8 @@ void N(draw_hud_elements)(void) { } void N(free_hud_elements)(void) { - hud_element_free(gActionCommandStatus.hudElements[0]); - hud_element_free(gActionCommandStatus.hudElements[1]); - hud_element_free(gActionCommandStatus.hudElements[2]); - hud_element_free(gActionCommandStatus.hudElements[3]); + hud_element_free(gActionCommandStatus.hudElements[0]); + hud_element_free(gActionCommandStatus.hudElements[1]); + hud_element_free(gActionCommandStatus.hudElements[2]); + hud_element_free(gActionCommandStatus.hudElements[3]); } diff --git a/src/battle/action_cmd/bomb.c b/src/battle/action_cmd/bomb.c index 45e789b346..4ceb72266f 100644 --- a/src/battle/action_cmd/bomb.c +++ b/src/battle/action_cmd/bomb.c @@ -126,7 +126,7 @@ void func_802A928C_427CFC(void) { } if (battleStatus->currentButtonsPressed & BUTTON_A) { - switch(actionCommandStatus->unk_64) { + switch (actionCommandStatus->unk_64) { case 0: { s32 fillOffset = battleStatus->unk_434[actionCommandStatus->unk_50] * 235 * 4; actionCommandStatus->barFillLevel += fillOffset / 100; diff --git a/src/battle/action_cmd/dizzy_shell.c b/src/battle/action_cmd/dizzy_shell.c index ac8b84c14a..865b73728a 100644 --- a/src/battle/action_cmd/dizzy_shell.c +++ b/src/battle/action_cmd/dizzy_shell.c @@ -1,5 +1,6 @@ #include "common.h" #include "hud_element.h" +#include "audio/public.h" #define NAMESPACE action_command_dizzy_shell diff --git a/src/battle/action_cmd/jump.c b/src/battle/action_cmd/jump.c index 835099fde6..099d6e85cb 100644 --- a/src/battle/action_cmd/jump.c +++ b/src/battle/action_cmd/jump.c @@ -191,13 +191,13 @@ void N(update)(void) { } void N(draw_hud_elements)(void) { - hud_element_draw_clipped(gActionCommandStatus.hudElements[0]); - if (!(gGameStatusPtr->demoFlags & 1)) { - hud_element_draw_clipped(gActionCommandStatus.hudElements[1]); - } + hud_element_draw_clipped(gActionCommandStatus.hudElements[0]); + if (!(gGameStatusPtr->demoFlags & 1)) { + hud_element_draw_clipped(gActionCommandStatus.hudElements[1]); + } } void N(free_hud_elements)(void) { - hud_element_free(gActionCommandStatus.hudElements[0]); - hud_element_free(gActionCommandStatus.hudElements[1]); + hud_element_free(gActionCommandStatus.hudElements[0]); + hud_element_free(gActionCommandStatus.hudElements[1]); } diff --git a/src/battle/action_cmd/mega_shock.c b/src/battle/action_cmd/mega_shock.c index 1f9e8b294b..b8e8f9b110 100644 --- a/src/battle/action_cmd/mega_shock.c +++ b/src/battle/action_cmd/mega_shock.c @@ -1,5 +1,6 @@ #include "common.h" #include "hud_element.h" +#include "audio/public.h" #define NAMESPACE action_command_mega_shock diff --git a/src/battle/action_cmd/spook.c b/src/battle/action_cmd/spook.c index 594bee037a..e41004eddf 100644 --- a/src/battle/action_cmd/spook.c +++ b/src/battle/action_cmd/spook.c @@ -1,5 +1,6 @@ #include "common.h" #include "hud_element.h" +#include "audio/public.h" #define NAMESPACE action_command_spook diff --git a/src/bss.c b/src/bss.c index 24ca4ef998..ebbaa4d054 100644 --- a/src/bss.c +++ b/src/bss.c @@ -12,22 +12,22 @@ BSS u8 nuScPreNMIFlag; BSS char D_8009A5B4[0x4]; BSS s32 D_8009A5B8; BSS char D_8009A5BC[0x4]; -BSS s32 D_8009A5C0; +BSS s32 gSoundGlobals; BSS char D_8009A5C4[0x4]; BSS s32 __osBaseCounter; -BSS s32 D_8009A5CC; +BSS s32 gBGMPlayerC; BSS s32 D_8009A5D0; -BSS s32 D_8009A5D4; +BSS void (*CurrentSefCmdHandler)(void*, void*); // SoundManager*, SoundPlayer* BSS s32 timeFreezeMode; BSS s32 nuGfxZBuffer; BSS u32 nuContDataLockKey; BSS s32 __osViIntrCount; -BSS s32 D_8009A5E8; +BSS s32 BeginSoundUpdateCallback; BSS float D_8009A5EC; BSS u32 nuGfxCfbCounter; BSS s32 mdl_currentModelTreeNodeInfo; BSS u32 nuGfxDisplay; -BSS s32 D_8009A5FC; +BSS s32 gBGMPlayerB; BSS s32 gGameState; BSS s16 gNpcCount; BSS s16 __osMaxControllers; @@ -39,13 +39,13 @@ BSS u32 nuGfxTaskSpool; BSS u8 __osContLastCmd; BSS s32 D_8009A620; BSS char D_8009A624[0x4]; -BSS s32 D_8009A628; +BSS s32 gAuAmbienceManager; BSS s32 __osTimerCounter; BSS s32 D_8009A630; BSS s16 gCurrentCamID; BSS s32 nuPiCartHandle; BSS s32 D_8009A63C; -BSS s32 D_8009A640; +BSS s32 gSoundManager; BSS char D_8009A644[0x8]; BSS s32 nuGfxCfb_ptr; BSS s32 gOverrideFlags; @@ -53,7 +53,7 @@ BSS s8 D_8009A654; BSS s32* nuGfxCfb; BSS char D_8009A65C[0x4]; BSS s32 D_8009A660; -BSS s32 D_8009A664; +BSS s32 gBGMPlayerA; BSS s16 D_8009A668; BSS s32 gMasterGfxPos; BSS s32 D_8009A670; @@ -164,13 +164,13 @@ BSS char D_800A0F48[0x8]; BSS u16 D_800A0F50; BSS char D_800A0F54[0x4]; BSS s8 nuAuMgrThread[0x25B8]; -BSS s32 D_800A3510[3]; +BSS s32 AlCmdListBuffers[3]; BSS char D_800A351C[4]; BSS s32 D_800A3520; BSS char D_800A3524[0x104]; BSS s8 D_800A3628[0xC]; -BSS s16 D_800A3634; -BSS s32 D_800A3638; +BSS s32 AlFrameSize; +BSS s32 AlMinFrameSize; BSS char D_800A363C[0x4]; BSS s32 nuAuDmaMesgQ; BSS char D_800A3644[0x14]; @@ -181,12 +181,12 @@ BSS s32 D_800A3BD4; BSS char D_800A3BD8[0x8]; BSS s8 nuAuDmaBufList[50 * 0x14]; BSS s8 D_800A3FC8[8]; -BSS s32 D_800A3FD0; +BSS s32 CurrentSeqCmdHandler; BSS char D_800A3FD4[0xC]; BSS s32 D_800A3FE0; BSS s32 D_800A3FE4; BSS s32 D_800A3FE8; -BSS s8 D_800A3FEC; +BSS u8 D_800A3FEC; BSS s16 D_800A3FEE; BSS s32 D_800A3FF0; BSS char D_800A3FF4[0xC]; @@ -315,7 +315,7 @@ BSS s8 D_800B451F; BSS s8 D_800B4520[0x2070]; BSS s8 D_800B6590[0x2000]; BSS u8 nuYieldBuf[0xC10]; -BSS s8 D_800B91A0[0x30]; +BSS s8 auSynDriver[0x30]; // type: AuSynDriver BSS s8 D_800B91D0[0x20000]; BSS s8 gZoneCollisionData[0x10]; BSS s8 wMapHitName[0x18]; @@ -339,7 +339,8 @@ BSS s8 D_800DA47C[0x38]; BSS s8 D_800DA4B4[0xA8]; BSS s8 D_800DA55C[0x54C]; BSS s8 D_800DAAA8[0x10]; -BSS s8 D_800DAAB8[0x5]; +BSS s32 AlNumFields; +BSS s8 D_800DAABC; BSS s8 D_800DAABD; BSS s8 D_800DAAC0[0x18]; BSS s8 nuContPfs[0x1A0]; diff --git a/src/bss3.c b/src/bss3.c index ce572bd332..eb7380ea5c 100644 --- a/src/bss3.c +++ b/src/bss3.c @@ -31,7 +31,7 @@ BSS s32 ItemEntitiesCreated; BSS s32 gCurrentModelTreeRoot; BSS s32 gEntityHeapBottom; BSS s32 D_80151304; -BSS s32 D_80151308; +BSS u32 D_80151308; BSS s16 gMsgBGScrollAmtY; BSS s16 D_8015130E; BSS s32 gEntityHideMode; @@ -46,7 +46,7 @@ BSS s32 entity_updateCounter; BSS s32 gTriggerCount; BSS s32 D_80151338; BSS s32 gHudElementCacheSize; -BSS s32 gCurrentDoorSoundsSet; +BSS u32 gCurrentDoorSoundsSet; BSS s32 D_80151344; BSS char D_80151348[0x38]; BSS s8 gWorldEntityList[0x78]; @@ -230,13 +230,12 @@ BSS s8 D_801599B8[0x118]; BSS s32 D_80159AD0; BSS s32 D_80159AD4; BSS char D_80159AD8[0x8]; -BSS s16 gMusicUnkVolume; -BSS s16 gMusicTargetVolume; -BSS s16 gMusicUnkVolume2; -BSS s16 gMusicCurrentVolume; +BSS s16 MusicDefaultVolume; +BSS s16 MusicTargetVolume; +BSS s16 MusicMaxVolume; +BSS s16 MusicCurrentVolume; BSS char D_80159AE8[0x8]; -BSS s8 gMusicSettings[0x18]; -BSS s8 D_80159B08[0x48]; +BSS s8 gMusicSettings[0x60]; BSS s8 D_80159B50[0x200]; BSS s32 gWindows; BSS s8 D_80159D54[0xC]; @@ -261,11 +260,11 @@ BSS char D_8015A2C0[0x10]; BSS s8 D_8015A2D0[0xA0]; BSS s8 D_8015A370[0x1E0]; BSS s8 gCollisionStatus[0x28]; -BSS s16 D_8015A578; +BSS s16 gCurrentHiddenPanels; BSS s16 D_8015A57A; BSS char D_8015A57C[0x14]; BSS s8 mdl_textureHandles[0x2200]; BSS s8 D_8015C790[0x30]; -BSS s8 D_8015C7C0[0x10]; +BSS s8 AmbientSoundData[0x10]; BSS s32 CreateEntityVarArgBuffer[4]; BSS s32 D_8015C7E0; diff --git a/src/d0a70_len_4fe0.c b/src/d0a70_len_4fe0.c index c4d453ddba..f978ec9b8c 100644 --- a/src/d0a70_len_4fe0.c +++ b/src/d0a70_len_4fe0.c @@ -397,7 +397,7 @@ void fold_init_state(FoldState* state) { } } -void fold_update(u32 idx, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6) { +void fold_update(u32 idx, FoldType arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6) { FoldState* state = &(*D_80156954)[idx]; s32 oldFlags; s32 t1; diff --git a/src/dd930_len_1c0.c b/src/dd930_len_1c0.c deleted file mode 100644 index 1769f969ab..0000000000 --- a/src/dd930_len_1c0.c +++ /dev/null @@ -1,84 +0,0 @@ -#include "common.h" - -// TODO: most likely part of the MusicPlayer struct -typedef struct { - /* 0x0 */ s16 fadeFlags; - /* 0x2 */ s16 fadeState; - /* 0x4 */ s32 fadeOutTime; - /* 0x8 */ s32 fadeInTime; - /* 0xC */ s32 unkC; -} struct_80147230; - -struct_80147230 D_8014F140 = { - .fadeFlags = 0, - .fadeState = 0, - .fadeOutTime = 0, - .fadeInTime = -1, - .unkC = -1 -}; - -extern struct_80147230 D_8015C7C0; - -void reset_ambient_sounds(void) { - D_8015C7C0 = D_8014F140; -} - -void update_ambient_sounds(void) { - struct_80147230* temp = &D_8015C7C0; - - switch (temp->fadeState) { - case 0: // idle - break; - case 1: // fading out - if (temp->fadeFlags & 1) { - s32 phi_v0; - if (temp->fadeOutTime < 250) { - phi_v0 = func_800554A4(0, temp->fadeOutTime); - } else { - phi_v0 = func_800554E8(0, temp->fadeOutTime); - } - - if (phi_v0 != 0) { - return; - } - } - temp->fadeState = 2; - break; - case 2: // fading in - if (temp->fadeFlags & 1) { - if (func_800555E4(0) != 0) { - return; - } - temp->fadeFlags &= ~1; - } - if (temp->fadeInTime < 0) { - temp->fadeState = 0; - } else if (func_80055448(temp->fadeInTime) == 0) { - if (func_80055464(0, 0) == 0) { - temp->fadeState = 0; - temp->fadeFlags |= 1; - } - } - break; - } -} - -s32 play_ambient_sounds(s32 fadeInTime, s32 fadeOutTime) { - struct_80147230* temp1 = &D_8015C7C0; - struct_80147230* temp2 = &D_8015C7C0; - - if (!gGameStatusPtr->musicEnabled) { - func_800554A4(temp1->fadeInTime, fadeOutTime); - temp1->fadeFlags &= ~1; - return 1; - } - - if (temp1->fadeInTime == fadeInTime) { - return 2; - } - - temp2->fadeInTime = fadeInTime; - temp2->fadeOutTime = fadeOutTime; - temp2->fadeState = 1; - return 1; -} diff --git a/src/e0b30_len_b80.c b/src/e0b30_len_b80.c deleted file mode 100644 index 067f100d15..0000000000 --- a/src/e0b30_len_b80.c +++ /dev/null @@ -1,445 +0,0 @@ -#include "common.h" -#include "npc.h" - -MusicSettings D_8014F6F0 = { - .flags = 0, - .unk_02 = 0, - .fadeOutTime = -1, - .fadeInTime = 0, - .unk_0C = 0, - .unk_0E = 0, - .songID = -1, - .variation = -1, - .songName = -1, - .unk_20 = 0, - .unk_24 = 0, - .unk_28 = 0, - .unk_2C = 0 -}; - -s32 gSongsUsingVariationFlag[] = { - SONG_SPECIAL_BATTLE, - SONG_TUBBA_BLUBBA_BATTLE, - SONG_JR_TROOPA_BATTLE, - SONG_YOSHI_KIDS_FOUND, - SONG_ITEM_UPGRADE, - SONG_NEW_PARTNER, -}; - -s16 D_8014F738 = 0; - -void bgm_set_target_volume(s16 volume); - -/// If the given song ID is present in gSongsUsingVariationFlag, returns the current -/// map's `songVariation & 1` value. Otherwise, returns -1. -/// -/// @see gSongsUsingVariationFlag -/// @returns -1: no override; 0: override to variation 0; 1 override to variation 1 -s32 bgm_get_map_default_variation(s32 songID) { - u32 i; - - for (i = 0; i < ARRAY_COUNT(gSongsUsingVariationFlag); i++) { - if (gSongsUsingVariationFlag[i] == songID) { - Map* map = &gAreas[gGameStatusPtr->areaID].maps[gGameStatusPtr->mapID]; - - return map->unk_1C.bytes.songVariation & 1; - } - } - - return -1; -} - -void bgm_reset_sequence_players(void) { - s32 i; - - for (i = 0; i < 2; i++) { - gMusicSettings[i] = D_8014F6F0; - } - - gMusicTargetVolume = 8; - gMusicUnkVolume2 = 8; - gMusicCurrentVolume = 8; - func_800561A4(8); -} - -void bgm_reset_volume(void) { - gMusicTargetVolume = 8; - gMusicUnkVolume2 = 8; -} - -// Loop struct shenanigans -#ifdef NON_EQUIVALENT - -// Experiment to fix loop -typedef struct MusicSettingsInner { - /* 0x02 */ s16 unk_02; - /* 0x04 */ s32 fadeOutTime; - /* 0x08 */ s32 fadeInTime; - /* 0x0C */ s16 unk_0C; - /* 0x0E */ s16 unk_0E; - /* 0x10 */ s32 songID; - /* 0x14 */ s32 variation; - /* 0x18 */ s32 songName; - /* 0x1C */ s32 unk_1C; - /* 0x20 */ s32 unk_20; - /* 0x24 */ s32 unk_24; - /* 0x28 */ s32 unk_28; - /* 0x2C */ s32 unk_2C; -} MusicSettingsInner; - -typedef struct MusicSettings2 { - /* 0x00 */ u16 flags; - /* 0x02 */ MusicSettingsInner unk_02; -} MusicSettings2; // size = 0x30 - -void bgm_update_music_settings(void) { - MusicSettingsInner* inner; - MusicSettings2* phi_s1; - s32* flags; - s32 phi_v0; - s32 i; - s32 a; - s32 c; - - phi_s1 = gMusicSettings; - - for (i = 0; i < 2; i++, phi_s1++) { - inner = &phi_s1->unk_02; - c = 2; - a = ~0x4; - - switch (inner->unk_02) { - case 0: - break; - case 1: - if (phi_s1->flags & 1) { - if (inner->fadeOutTime < 250) { - if (!(phi_s1->flags & 4)) { - phi_v0 = func_800559C4(inner->songName); - } else { - phi_v0 = func_80055AF0(inner->songName); - } - } else if (!(phi_s1->flags & 4)) { - phi_v0 = snd_set_song_variation_fade_time(inner->songName, inner->fadeOutTime, 0); - } else { - phi_v0 = func_80055BB8(inner->songName, 0xFA); - } - if (phi_v0 == 0) { - inner->unk_02 = c; - } - } else { - if (phi_s1->flags & 4) { - phi_s1->flags |= 0x10; - } - phi_s1->flags &= a; - inner->unk_02 = 5; - } - break; - case 2: - phi_s1->flags &= a; - if (!(phi_s1->flags & 1)) { - inner->unk_02 = 5; - break; - } - - if (func_800559FC(inner->songName) == 0) { - phi_s1->flags &= ~0x1; - inner->unk_02 = 3; - } - - break; - case 3: - inner->unk_02 = 4; - break; - case 4: - inner->unk_02 = 5; - break; - case 5: - if (!(phi_s1->flags & 8)) { - if (inner->songID < 0) { - inner->unk_02 = 0; - } else { - inner->songName = snd_load_song(inner->songID, i); - if (inner->songName > 0xFFFFU) { - if ((phi_s1->flags & 0x20) != 0) { - snd_set_song_variation_fade(inner->songName, inner->variation, inner->fadeInTime, inner->unk_0C, inner->unk_0E); - phi_s1->flags &= ~0x20; - } else { - bgm_set_target_volume(gMusicUnkVolume); - } - if (snd_start_song_variation(inner->songName, inner->variation) == 0) { - phi_s1->flags |= 1; - inner->unk_02 = 0; - } - } - } - } else { - if (phi_s1->flags & 0x10) { - inner->unk_02 = 0; - phi_s1->flags &= ~0x18; - } else if (func_80055B28(inner->unk_2C) == 0) { - inner->unk_02 = 0; - inner->songID = inner->unk_24; - inner->variation = inner->unk_28; - inner->songName = inner->unk_2C; - phi_s1->flags |= 1; - phi_s1->flags &= ~0x8; - } - } - break; - } - } - bgm_update_volume(); -} -#else -INCLUDE_ASM(s32, "e0b30_len_b80", bgm_update_music_settings); -#endif - -s32 _bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume) { - if (gGameStatusPtr->demoState != 0) { - return 1; - } else { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!gGameStatusPtr->musicEnabled) { - func_800559C4(musicSetting->songName); - musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_1; - - return 1; - } else { - s32 override = bgm_get_map_default_variation(songID); - if (override >= 0) { - variation = override; - } - - if (musicSetting->songID == songID && musicSetting->variation == variation) { - bgm_set_target_volume(volume); - - if (musicSetting->flags & MUSIC_SETTINGS_FLAGS_4) { - func_80055B80(musicSetting->songName); - musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_4; - } - - return 2; - } - - gMusicUnkVolume = volume; - musicSetting->songID = songID; - musicSetting->variation = variation; - musicSetting->fadeOutTime = fadeOutTime; - musicSetting->unk_02 = 1; - musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_2; - - return 1; - } - } -} - -s32 bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume) { - gMusicSettings[playerIndex].flags &= ~8; - - return _bgm_set_song(playerIndex, songID, variation, fadeOutTime, volume); -} - -s32 func_8014A964(s32 playerIndex, s32 songID, s32 variation, s32 fadeInTime, s16 arg4, s16 arg5) { - if (gGameStatusPtr->demoState != 0) { - return TRUE; - } else { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!gGameStatusPtr->musicEnabled) { - func_800559C4(musicSetting->songName); - musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_1; - - return TRUE; - } else { - s32 defaultVariation = bgm_get_map_default_variation(songID); - if (defaultVariation >= 0) { - variation = defaultVariation; - } - - musicSetting->fadeInTime = fadeInTime; - musicSetting->unk_0C = arg4; - musicSetting->unk_0E = arg5; - musicSetting->songID = songID; - musicSetting->variation = variation; - musicSetting->flags |= MUSIC_SETTINGS_FLAGS_20; - musicSetting->unk_02 = 1; - musicSetting->flags &= ~MUSIC_SETTINGS_FLAGS_2; - - return TRUE; - } - } -} - -s32 func_8014AA54(s32 playerIndex, s32 arg1, s16 arg2) { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { - return FALSE; - } - - if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_2)) { - return FALSE; - } - - switch (arg2) { - case 0: - func_80056028(musicSetting->songName, arg1); - break; - case 1: - func_80056044(musicSetting->songName, arg1); - break; - case 2: - func_80056068(musicSetting->songName, arg1); - break; - } - return TRUE; -} - -s32 func_8014AB0C(s32 playerIndex, s16 arg1) { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { - return 0; - } - - return func_80055DDC(musicSetting->songName, arg1); -} - -s32 func_8014AB60(s32 playerIndex, s16 arg1) { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { - return 0; - } - - return func_80055E48(musicSetting->songName, arg1); -} - -s32 func_8014ABB4(s32 playerIndex, s16 arg1) { - MusicSettings* musicSetting = &gMusicSettings[playerIndex]; - - if (!(musicSetting->flags & MUSIC_SETTINGS_FLAGS_1)) { - return 0; - } - - return func_80055CC4(musicSetting->songName, arg1); -} - -s32 bgm_init_music_players(void) { - bgm_set_song(0, -1, 0, 250, 8); - bgm_set_song(1, -1, 0, 250, 8); - - return 1; -} - -void bgm_quiet_max_volume(void) { - gMusicUnkVolume2 = 4; -} - -void bgm_reset_max_volume(void) { - gMusicUnkVolume2 = 8; -} - -void bgm_set_target_volume(s16 volume) { - gMusicTargetVolume = volume; -} - -void bgm_update_volume(void) { - s16 toVolume; - - if (D_8014F738 != 0) { - D_8014F738--; - return; - } - - toVolume = gMusicTargetVolume; - if (toVolume > gMusicUnkVolume2) { - toVolume = gMusicUnkVolume2; - } - - if (gMusicCurrentVolume != toVolume) { - if (gMusicCurrentVolume >= toVolume) { - gMusicCurrentVolume--; - } else { - gMusicCurrentVolume++; - } - func_800561A4(gMusicCurrentVolume); - D_8014F738 = 3; - } -} - -s32 func_8014AD40(void) { - MusicSettings* settings = &gMusicSettings[0]; - s32 i; - - for (i = 0; i < 2; i++, settings++) { - if (!(settings->flags & MUSIC_SETTINGS_FLAGS_1)) { - continue; - } - - if (func_800559FC(settings->songName)) { - return TRUE; - } - } - return FALSE; -} - -void bgm_pop_song(void) { - MusicSettings* musicSetting = &gMusicSettings[0]; - - if (gGameStatusPtr->demoState == 0) { - musicSetting->flags |= MUSIC_SETTINGS_FLAGS_8; - _bgm_set_song(0, musicSetting->unk_24, musicSetting->unk_28, 0, 8); - } -} - -void bgm_push_song(s32 songID, s32 variation) { - MusicSettings* musicSetting = &gMusicSettings[0]; - - if (gGameStatusPtr->demoState == 0) { - musicSetting->unk_24 = musicSetting->songID; - musicSetting->unk_28 = musicSetting->variation; - musicSetting->unk_2C = musicSetting->songName; - musicSetting->flags |= MUSIC_SETTINGS_FLAGS_4; - bgm_set_song(0, songID, variation, 500, 8); - } -} - -void bgm_pop_battle_song(void) { - MusicSettings* musicSetting = &gMusicSettings[0]; - - if (gGameStatusPtr->demoState == 0) { - if (gOverrideFlags & GLOBAL_OVERRIDES_20000) { - gOverrideFlags &= ~GLOBAL_OVERRIDES_20000; - } else { - musicSetting->flags |= MUSIC_SETTINGS_FLAGS_8; - _bgm_set_song(0, musicSetting->unk_24, musicSetting->unk_28, 0, 8); - func_80055590(0, 250); - } - } -} - -void bgm_push_battle_song(void) { - MusicSettings* musicSetting = &gMusicSettings[0]; - - if (gGameStatusPtr->demoState == 0 && !(gOverrideFlags & GLOBAL_OVERRIDES_20000)) { - func_8005553C(0, 250); - musicSetting->unk_24 = musicSetting->songID; - musicSetting->unk_28 = musicSetting->variation; - musicSetting->unk_2C = musicSetting->songName; - musicSetting->flags |= MUSIC_SETTINGS_FLAGS_4; - bgm_set_song(0, musicSetting->unk_1C, musicSetting->unk_20, 500, 8); - } -} - -void bgm_set_battle_song(s32 arg0, s32 arg1) { - MusicSettings* musicSetting = &gMusicSettings[0]; - - musicSetting->unk_1C = arg0; - musicSetting->unk_20 = arg1; -} - -void func_8014AFA0(void) { -} diff --git a/src/encounter_api.c b/src/encounter_api.c index 9963ddf325..32ab0bb508 100644 --- a/src/encounter_api.c +++ b/src/encounter_api.c @@ -323,7 +323,7 @@ ApiStatus BindNpcAI(Evt* script, s32 isInitialCall) { Evt* scriptTemp = script; ApiStatus ret = ApiStatus_DONE2; Evt* aiScript; - s32 phi_s1; + s32 groupFlags; if ((s32)enemy != NPC_SELF && (id == NPC_SELF || enemy->npcID == id)) { id = enemy->npcID; @@ -345,9 +345,9 @@ ApiStatus BindNpcAI(Evt* script, s32 isInitialCall) { } if (enemy->flags & ENEMY_FLAGS_1) { - phi_s1 = 10; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02; } else { - phi_s1 = 11; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02 | EVT_GROUP_01; } if (enemy->aiScript != NULL) { @@ -361,7 +361,7 @@ ApiStatus BindNpcAI(Evt* script, s32 isInitialCall) { enemy->aiScriptID = scriptTemp->id; scriptTemp->owner1.enemy = enemy; scriptTemp->owner2.npcID = id; - scriptTemp->groupFlags = phi_s1; + scriptTemp->groupFlags = groupFlags; return ret; } @@ -395,9 +395,9 @@ ApiStatus RestartNpcAI(Evt* script, s32 isInitialCall) { npc = get_enemy(npcId); if (npc->flags & 1) { - groupFlags = 10; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02; } else { - groupFlags = 11; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02 | EVT_GROUP_01; } if (npc->aiScript != NULL) { @@ -513,9 +513,9 @@ ApiStatus RestartNpcAux(Evt* script, s32 isInitialCall) { enemy = get_enemy(npcID); if (enemy->flags & 1) { - groupFlags = 10; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02; } else { - groupFlags = 11; + groupFlags = EVT_GROUP_08 | EVT_GROUP_02 | EVT_GROUP_01; } if (enemy->auxScript != NULL) { diff --git a/src/entity/Chest.c b/src/entity/Chest.c index d44e6ce4c9..36ae4e4639 100644 --- a/src/entity/Chest.c +++ b/src/entity/Chest.c @@ -360,24 +360,24 @@ void entity_GiantChest_give_equipment(Entity* entity) { s32 flag; switch (data->itemID) { - case ITEM_JUMP: - gPlayerData.bootsLevel = 0; - break; - case ITEM_SPIN_JUMP: - gPlayerData.bootsLevel = 1; - break; - case ITEM_TORNADO_JUMP: - gPlayerData.bootsLevel = 2; - break; - case ITEM_HAMMER: - gPlayerData.hammerLevel = 0; - break; - case ITEM_SUPER_HAMMER: - gPlayerData.hammerLevel = 1; - break; - case ITEM_ULTRA_HAMMER: - gPlayerData.hammerLevel = 2; - break; + case ITEM_JUMP: + gPlayerData.bootsLevel = 0; + break; + case ITEM_SPIN_JUMP: + gPlayerData.bootsLevel = 1; + break; + case ITEM_TORNADO_JUMP: + gPlayerData.bootsLevel = 2; + break; + case ITEM_HAMMER: + gPlayerData.hammerLevel = 0; + break; + case ITEM_SUPER_HAMMER: + gPlayerData.hammerLevel = 1; + break; + case ITEM_ULTRA_HAMMER: + gPlayerData.hammerLevel = 2; + break; } if (data->itemID != 0) { diff --git a/src/entity/HiddenPanel.c b/src/entity/HiddenPanel.c index f41f657c0c..54ca6bfdbf 100644 --- a/src/entity/HiddenPanel.c +++ b/src/entity/HiddenPanel.c @@ -8,27 +8,27 @@ void entity_HiddenPanel_flip_over(Entity*); void mdl_project_tex_coords(s32 modelID, Gfx* destGfx, Matrix4f destMtx, void* destVertices); s32 npc_find_standing_on_entity(s32 entityIndex); -extern s32 Entity_HiddenPanel_RenderScript2[]; +extern s32 ERS_AltHiddenPanel[]; -extern Gfx Entity_HiddenPanel_RenderTop[]; -extern Gfx Entity_HiddenPanel_RenderTop2[]; -extern Gfx Entity_HiddenPanel_RenderBottomDark[]; -extern Gfx Entity_HiddenPanel_Render[]; -extern Gfx Entity_HiddenPanel_Render2[]; +extern Gfx Gfx_HiddenPanel_RenderTop[]; +extern Gfx Gfx_AltHiddenPanel_RenderTop[]; +extern Gfx Gfx_HiddenPanel_RenderHole[]; +extern Gfx Gfx_HiddenPanel_Render[]; +extern Gfx Gfx_HiddenPanel_Render2[]; void entity_HiddenPanel_setupGfx(s32 entityIndex) { Entity* entity = get_entity_by_index(entityIndex); HiddenPanelData* data = entity->dataBuf.hiddenPanel; - Matrix4f sp10; - Matrix4f sp50; + Matrix4f rotMtx; + Matrix4f tempMtx; if (entity->position.y != data->initialY) { - guMtxIdentF(sp10); - guTranslateF(sp50, entity->position.x, data->initialY + 1.0f, entity->position.z); - guMtxCatF(sp50, sp10, sp50); - guMtxF2L(sp50, &gDisplayContext->matrixStack[gMatrixListPos]); + guMtxIdentF(rotMtx); + guTranslateF(tempMtx, entity->position.x, data->initialY + 1.0f, entity->position.z); + guMtxCatF(tempMtx, rotMtx, tempMtx); + guMtxF2L(tempMtx, &gDisplayContext->matrixStack[gMatrixListPos]); gSPMatrix(gMasterGfxPos++, &gDisplayContext->matrixStack[gMatrixListPos++], G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(gMasterGfxPos++, ENTITY_ADDR(entity, Gfx*, Entity_HiddenPanel_RenderBottomDark)); + gSPDisplayList(gMasterGfxPos++, ENTITY_ADDR(entity, Gfx*, Gfx_HiddenPanel_RenderHole)); gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); } mdl_project_tex_coords(data->modelID, data->renderDList, data->entityMatrix, entity->gfxBaseAddr); @@ -38,8 +38,8 @@ void entity_HiddenPanel_setupGfx(s32 entityIndex) { void entity_HiddenPanel_set_ispy_notification(Entity* entity) { HiddenPanelData* data = entity->dataBuf.hiddenPanel; - if (is_ability_active(ABILITY_I_SPY) && !get_global_flag(data->pickupVar) && !D_8015A578.unk_02) { - D_8015A578.unk_02 = TRUE; + if (is_ability_active(ABILITY_I_SPY) && !get_global_flag(data->pickupVar) && !gCurrentHiddenPanels.activateISpy) { + gCurrentHiddenPanels.activateISpy = TRUE; } } @@ -64,7 +64,7 @@ void entity_HiddenPanel_idle(Entity* entity) { data->standingNpcIndex = -1; data->npcFlags = 0; - if (D_8015A578.unk_00 && fabs(D_8015A578.unk_08 - entity->position.y) <= 10.0) { + if (gCurrentHiddenPanels.tryFlipTrigger && fabs(gCurrentHiddenPanels.flipTriggerPosY - entity->position.y) <= 10.0) { data->state = 10; distToPlayer = get_xz_dist_to_player(entity->position.x, entity->position.z); if (distToPlayer <= 100) { @@ -293,7 +293,7 @@ void entity_HiddenPanel_init(Entity* entity) { Matrix4f sp58; Gfx* dlist; - mem_clear(&D_8015A578, sizeof(D_8015A578)); + mem_clear(&gCurrentHiddenPanels, sizeof(gCurrentHiddenPanels)); entity->renderSetupFunc = entity_HiddenPanel_setupGfx; data->pickupVar = 0xFFFF; data->initialY = entity->position.y; @@ -317,16 +317,16 @@ void entity_HiddenPanel_init(Entity* entity) { guScaleF(sp58, entity->scale.x, entity->scale.y, entity->scale.z); guMtxCatF(sp58, sp18, data->entityMatrix); - if (D_8015A578.unk_01 & 1) { - dlist = Entity_HiddenPanel_RenderTop2; - entity_set_render_script(entity, Entity_HiddenPanel_RenderScript2); + if (gCurrentHiddenPanels.panelsCount & 1) { + dlist = Gfx_AltHiddenPanel_RenderTop; + entity_set_render_script(entity, ERS_AltHiddenPanel); } else { - dlist = Entity_HiddenPanel_RenderTop; + dlist = Gfx_HiddenPanel_RenderTop; } data->renderDList = ENTITY_ADDR(entity, Gfx*, dlist); mdl_project_tex_coords(data->modelID, data->renderDList, data->entityMatrix, entity->gfxBaseAddr); - D_8015A578.unk_01++; + gCurrentHiddenPanels.panelsCount++; } EntityScript Entity_HiddenPanel_Script = { @@ -339,18 +339,18 @@ EntityScript Entity_HiddenPanel_Script = { es_End }; -EntityModelScript Entity_HiddenPanel_RenderScript = { +EntityModelScript ERS_HiddenPanel = { ems_SetRenderMode(RENDER_MODE_SURFACE_OPA) ems_SetFlags(ENTITY_MODEL_FLAGS_10000) - ems_Draw(Entity_HiddenPanel_Render, 60) + ems_Draw(Gfx_HiddenPanel_Render, 60) ems_Restart ems_End }; -EntityModelScript Entity_HiddenPanel_RenderScript2 = { +EntityModelScript ERS_AltHiddenPanel = { ems_SetRenderMode(RENDER_MODE_SURFACE_OPA) ems_SetFlags(ENTITY_MODEL_FLAGS_10000) - ems_Draw(Entity_HiddenPanel_Render2, 60) + ems_Draw(Gfx_HiddenPanel_Render2, 60) ems_Restart ems_End }; @@ -358,7 +358,7 @@ EntityModelScript Entity_HiddenPanel_RenderScript2 = { EntityBlueprint Entity_HiddenPanel = { .flags = ENTITY_FLAGS_HIDDEN, .typeDataSize = sizeof(HiddenPanelData), - .renderCommandList = Entity_HiddenPanel_RenderScript, + .renderCommandList = ERS_HiddenPanel, .modelAnimationNodes = 0, .fpInit = entity_HiddenPanel_init, .updateEntityScript = Entity_HiddenPanel_Script, diff --git a/src/entity/model/HiddenPanel.c b/src/entity/model/HiddenPanel.c index 05944a5e60..f84c46f3a9 100644 --- a/src/entity/model/HiddenPanel.c +++ b/src/entity/model/HiddenPanel.c @@ -37,7 +37,7 @@ Vtx D_0A000020_E56BA0[] = { {{{ 30, 0, -30 }, 0, { 0, 0 }, { 10, 10, 10, 128 }}}, }; -Gfx Entity_HiddenPanel_RenderTop[] = { +Gfx Gfx_HiddenPanel_RenderTop[] = { gsDPPipeSync(), gsSPClearGeometryMode(G_CULL_BOTH | G_LIGHTING), gsSPSetGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BACK), @@ -46,7 +46,7 @@ Gfx Entity_HiddenPanel_RenderTop[] = { gsSPEndDisplayList(), }; -Gfx Entity_HiddenPanel_RenderTop2[] = { +Gfx Gfx_AltHiddenPanel_RenderTop[] = { gsDPPipeSync(), gsSPClearGeometryMode(G_CULL_BOTH | G_LIGHTING), gsSPSetGeometryMode(G_ZBUFFER | G_SHADE | G_CULL_BACK), @@ -55,7 +55,7 @@ Gfx Entity_HiddenPanel_RenderTop2[] = { gsSPEndDisplayList(), }; -Gfx Entity_HiddenPanel_RenderBottom[] = { +Gfx Gfx_HiddenPanel_RenderBottom[] = { gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF), gsDPPipeSync(), gsDPSetCycleType(G_CYC_1CYCLE), @@ -68,7 +68,7 @@ Gfx Entity_HiddenPanel_RenderBottom[] = { gsSPEndDisplayList(), }; -Gfx Entity_HiddenPanel_RenderBottomDark[] = { +Gfx Gfx_HiddenPanel_RenderHole[] = { gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF), gsDPPipeSync(), gsDPSetCycleType(G_CYC_1CYCLE), @@ -81,16 +81,16 @@ Gfx Entity_HiddenPanel_RenderBottomDark[] = { gsSPEndDisplayList(), }; -Gfx Entity_HiddenPanel_Render[] = { +Gfx Gfx_HiddenPanel_Render[] = { gsDPPipeSync(), - gsSPDisplayList(Entity_HiddenPanel_RenderTop), - gsSPDisplayList(Entity_HiddenPanel_RenderBottom), + gsSPDisplayList(Gfx_HiddenPanel_RenderTop), + gsSPDisplayList(Gfx_HiddenPanel_RenderBottom), gsSPEndDisplayList(), }; -Gfx Entity_HiddenPanel_Render2[] = { +Gfx Gfx_HiddenPanel_Render2[] = { gsDPPipeSync(), - gsSPDisplayList(Entity_HiddenPanel_RenderTop2), - gsSPDisplayList(Entity_HiddenPanel_RenderBottom), + gsSPDisplayList(Gfx_AltHiddenPanel_RenderTop), + gsSPDisplayList(Gfx_HiddenPanel_RenderBottom), gsSPEndDisplayList(), }; diff --git a/src/evt/fa4c0_len_3bf0.c b/src/evt/fa4c0_len_3bf0.c index 87427e9c42..5ebfc3f0e2 100644 --- a/src/evt/fa4c0_len_3bf0.c +++ b/src/evt/fa4c0_len_3bf0.c @@ -3,45 +3,81 @@ #include "hud_element.h" #include "world/partners.h" -extern EvtScript D_802D9D34; -extern s32* D_802DB7D0; -extern s32 D_802DB7D8[10]; -extern s32 D_802DB800[10]; +AuResult bgm_set_track_volumes(s32 playerIndex, s16 trackVolSet); +static ApiStatus PollMusicEvents(Evt* script, s32 isInitialCall); + +extern MusicEvent* MusicEventList; +extern Evt* RunningMusicEvents[10]; +extern s32 RunningMusicEventIDs[10]; extern PopupMenu D_802DB830; -ApiStatus func_802D5B10(Evt* script, s32 isInitialCall); +s32 MusicEventPollCount = 0; -s32 D_802D9D30 = 0; - -EvtScript D_802D9D34 = { - EVT_CALL(func_802D5B10) +static EvtScript EVS_MusicEventMonitor = { + EVT_CALL(PollMusicEvents) EVT_RETURN EVT_END }; -INCLUDE_ASM(s32, "evt/fa4c0_len_3bf0", func_802D5B10); +static s32 PollMusicEvents(Evt* script, s32 isInitialCall) { + MusicEventTrigger* list; + s32 musicEventID, scriptSelector; + u32 count; + s32 i; -ApiStatus func_802D5C70(Evt* script) { + bgm_poll_music_events(&list, &count); + + for (i = 0; i < count; i++, list++) { + MusicEvent* cur = MusicEventList; + musicEventID = (*list & 0xFF0000) >> 0x10; + scriptSelector = *list & 0xFF; + while (cur->musicEventID != -1) { + if (cur->musicEventID == musicEventID) { + break; + } + cur++; + } + // bug? can cur ever be NULL here? + // condition should probably be if (cur->musicEventID != -1) + if (cur != NULL) { + EvtScript* newSource = cur->scripts[scriptSelector]; + if (RunningMusicEvents[musicEventID] != NULL) { + kill_script_by_ID(RunningMusicEventIDs[musicEventID]); + } + if (newSource != NULL) { + Evt* newEvt = start_script(newSource, 1, 0); + RunningMusicEvents[musicEventID] = newEvt; + RunningMusicEventIDs[musicEventID] = newEvt->id; + } + } + } + bgm_flush_music_events(); + MusicEventPollCount++; + return ApiStatus_BLOCK; +} + +ApiStatus RegisterMusicEvents(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 i; - D_802DB7D0 = (s32*) evt_get_variable(script, *args++); + // expects a list of MusicEvent, terminated by -1 0 0 0 0 + MusicEventList = (MusicEvent*) evt_get_variable(script, *args++); - for (i = 0; i < ARRAY_COUNT(D_802DB7D8); i++) { - D_802DB7D8[i] = 0; - D_802DB800[i] = 0; + for (i = 0; i < ARRAY_COUNT(RunningMusicEvents); i++) { + RunningMusicEvents[i] = NULL; + RunningMusicEventIDs[i] = 0; } - start_script(&D_802D9D34, EVT_PRIORITY_1, 0); + start_script(&EVS_MusicEventMonitor, EVT_PRIORITY_1, 0); return ApiStatus_DONE2; } ApiStatus FadeOutMusic(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 itemID = evt_get_variable(script, *args++); - s32* ptrNextPos = args++; + s32 musicPlayer = evt_get_variable(script, *args++); + s32 fadeTime = evt_get_variable(script, *args++); - if (bgm_set_song(itemID, -1, 0, evt_get_variable(script, *ptrNextPos++), 8) != 0) { + if (bgm_set_song(musicPlayer, -1, 0, fadeTime, 8)) { return ApiStatus_DONE2; } else { return ApiStatus_BLOCK; @@ -55,7 +91,7 @@ ApiStatus SetMusicTrack(Evt* script, s32 isInitialCall) { s32 variation = evt_get_variable(script, *args++); s16 volume = evt_get_variable(script, *args++); - if (bgm_set_song(musicPlayer, songID, variation, 500, volume) != 0) { + if (bgm_set_song(musicPlayer, songID, variation, 500, volume)) { return ApiStatus_DONE2; } else { return ApiStatus_BLOCK; @@ -64,14 +100,14 @@ ApiStatus SetMusicTrack(Evt* script, s32 isInitialCall) { ApiStatus FadeInMusic(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 var0 = evt_get_variable(script, *args++); - s32 var1 = evt_get_variable(script, *args++); - s32 var2 = evt_get_variable(script, *args++); - s32 var3 = evt_get_variable(script, *args++); - s16 var4 = evt_get_variable(script, *args++); - s16 var5 = evt_get_variable(script, *args++); + s32 musicPlayer = evt_get_variable(script, *args++); + s32 songID = evt_get_variable(script, *args++); + s32 variation = evt_get_variable(script, *args++); + s32 fadeTime = evt_get_variable(script, *args++); + s16 fadeStartVolume = evt_get_variable(script, *args++); + s16 fadeEndVolume = evt_get_variable(script, *args++); - if (func_8014A964(var0, var1, var2, var3, var4, var5) != 0) { + if (func_8014A964(musicPlayer, songID, variation, fadeTime, fadeStartVolume, fadeEndVolume)) { return ApiStatus_DONE2; } else { return ApiStatus_BLOCK; @@ -80,20 +116,27 @@ ApiStatus FadeInMusic(Evt* script, s32 isInitialCall) { ApiStatus func_802D5EE0(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 playerIndex = evt_get_variable(script, *args++); - (&gMusicSettings[evt_get_variable(script, *args++)])->flags |= 0x2; + gMusicSettings[playerIndex].flags |= MUSIC_SETTINGS_FLAGS_2; return ApiStatus_DONE2; } -ApiStatus func_802D5F28(Evt* script, s32 isInitialCall) { +ApiStatus AdjustMusicProximityMix(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 playerIndex = evt_get_variable(script, *args++); + s32 mix = evt_get_variable(script, *args++); + s32 state = evt_get_variable(script, *args++); - func_8014AA54(evt_get_variable(script, *args++), evt_get_variable(script, *args++), (s16)evt_get_variable(script, *args++)); + bgm_adjust_proximity(playerIndex, mix, state); return ApiStatus_DONE2; } -ApiStatus func_802D5FA4(Evt* script, s32 isInitialCall) { - func_8014AB0C(0, (s16)evt_get_variable(script, *script->ptrReadPos)); +ApiStatus SetMusicTrackVolumes(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s16 trackVolSet = evt_get_variable(script, *args++); + + bgm_set_track_volumes(0, trackVolSet); return ApiStatus_DONE2; } @@ -104,8 +147,10 @@ ApiStatus PopSong(Evt* script, s32 isInitialCall) { ApiStatus PushSong(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 songID = evt_get_variable(script, *args++); + s32 variation = evt_get_variable(script, *args++); - bgm_push_song(evt_get_variable(script, *args++), evt_get_variable(script, *args++)); + bgm_push_song(songID, variation); return ApiStatus_DONE2; } @@ -121,16 +166,18 @@ ApiStatus PushBattleSong(Evt* script, s32 isInitialCall) { ApiStatus SetBattleSong(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 songID = evt_get_variable(script, *args++); + s32 variation = evt_get_variable(script, *args++); - bgm_set_battle_song(evt_get_variable(script, *args++), evt_get_variable(script, *args++)); + bgm_set_battle_song(songID, variation); return ApiStatus_DONE2; } ApiStatus ClearAmbientSounds(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 flags = evt_get_variable(script, *args++); + s32 time = evt_get_variable(script, *args++); - if (play_ambient_sounds(-1, flags) != 0) { + if (play_ambient_sounds(-1, time)) { return ApiStatus_DONE2; } else { return ApiStatus_BLOCK; @@ -141,7 +188,7 @@ ApiStatus PlayAmbientSounds(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 soundID = evt_get_variable(script, *args++); - if (play_ambient_sounds(soundID, 0xFA) != 0) { + if (play_ambient_sounds(soundID, 250)) { return ApiStatus_DONE2; } else { return ApiStatus_BLOCK; @@ -159,9 +206,9 @@ ApiStatus PlaySound(Evt* script, s32 isInitialCall) { ApiStatus PlaySoundWithVolume(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 soundID = evt_get_variable(script, *args++); - s32 value2 = evt_get_variable(script, *args++); + s32 volume = evt_get_variable(script, *args++); - sfx_play_sound_with_params(soundID, value2 & 0xFF, 0, 0); + sfx_play_sound_with_params(soundID, volume, 0, 0); return ApiStatus_DONE2; } @@ -179,15 +226,17 @@ ApiStatus PlaySoundAt(Evt* script, s32 isInitialCall) { ApiStatus StopSound(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 soundID = evt_get_variable(script, *args++); - sfx_stop_sound(evt_get_variable(script, *args++)); + sfx_stop_sound(soundID); return ApiStatus_DONE2; } ApiStatus func_802D62E4(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 soundID = evt_get_variable(script, *args++); - func_80149A6C(evt_get_variable(script, *args++), 1); + func_80149A6C(soundID, TRUE); return ApiStatus_DONE2; } @@ -208,12 +257,12 @@ ApiStatus UseAdvancedDoorSounds(Evt* script, s32 isInitialCall) { ApiStatus PlaySoundAtF(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; Bytecode soundID = *args++; - u16 value2 = evt_get_variable(script, *args++); + u16 spatializationFlags = evt_get_variable(script, *args++); f32 x = evt_get_float_variable(script, *args++); f32 y = evt_get_float_variable(script, *args++); f32 z = evt_get_float_variable(script, *args++); - sfx_play_sound_at_position(soundID, value2, x, y, z); + sfx_play_sound_at_position(soundID, spatializationFlags, x, y, z); return ApiStatus_DONE2; } @@ -272,7 +321,7 @@ ApiStatus ShowKeyChoicePopup(Evt* script, s32 isInitialCall) { script->varTable[0] = 0; return ApiStatus_DONE1; } - menu->popupType = 0xC; + menu->popupType = POPUP_MENU_USEKEY; menu->numEntries = numEntries; menu->initialPos = 0; create_popup_menu(menu); @@ -363,7 +412,7 @@ ApiStatus ShowConsumableChoicePopup(Evt* script, s32 isInitialCall) { script->varTable[0] = 0; return ApiStatus_DONE1; } - menu->popupType = 0xC; + menu->popupType = POPUP_MENU_USEKEY; menu->numEntries = numEntries; menu->initialPos = 0; create_popup_menu(menu); @@ -399,8 +448,6 @@ ApiStatus ShowConsumableChoicePopup(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -// TODO: probably a split here (sound_api, item_api) - ApiStatus RemoveKeyItemAt(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 index = evt_get_variable(script, *args++); diff --git a/src/evt/player_api.c b/src/evt/player_api.c index aa43dc32e6..4b50ef4649 100644 --- a/src/evt/player_api.c +++ b/src/evt/player_api.c @@ -743,9 +743,9 @@ ApiStatus DisablePulseStone(Evt* script, s32 isInitialCall) { PlayerStatus* playerStatus = &gPlayerStatus; if (evt_get_variable(script, *script->ptrReadPos)) { - playerStatus->animFlags &= ~0x80; + playerStatus->animFlags &= ~PLAYER_STATUS_ANIM_FLAGS_USING_PULSE_STONE; } else { - playerStatus->animFlags |= 0x80; + playerStatus->animFlags |= PLAYER_STATUS_ANIM_FLAGS_USING_PULSE_STONE; } return ApiStatus_DONE2; @@ -753,7 +753,7 @@ ApiStatus DisablePulseStone(Evt* script, s32 isInitialCall) { ApiStatus GetCurrentPartner(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - Bytecode a0 = *args; + Bytecode outVar = *args++; PlayerData* playerData = &gPlayerData; s32 currentPartner = 0; @@ -761,21 +761,21 @@ ApiStatus GetCurrentPartner(Evt* script, s32 isInitialCall) { currentPartner = playerData->currentPartner; } - evt_set_variable(script, a0, currentPartner); + evt_set_variable(script, outVar, currentPartner); return ApiStatus_DONE2; } ApiStatus func_802D2B50(void) { PlayerStatus* playerStatus = &gPlayerStatus; - playerStatus->animFlags |= 8; + playerStatus->animFlags |= PLAYER_STATUS_ANIM_FLAGS_8; return ApiStatus_DONE2; } ApiStatus func_802D2B6C(Evt* script, s32 isInitialCall) { PlayerStatus* playerStatus = &gPlayerStatus; - playerStatus->animFlags |= 4; + playerStatus->animFlags |= PLAYER_STATUS_ANIM_FLAGS_4; return ApiStatus_DONE2; } @@ -786,11 +786,13 @@ ApiStatus Disable8bitMario(Evt* script, s32 isInitialCall) { if (evt_get_variable(script, *args)) { playerStatus->colliderHeight = 37; playerStatus->colliderDiameter = 26; - playerStatus->animFlags &= ~0x4000; + playerStatus->animFlags &= ~PLAYER_STATUS_ANIM_FLAGS_8BIT_MARIO; } else { playerStatus->colliderHeight = 19; playerStatus->colliderDiameter = 26; - playerStatus->animFlags |= 0x44004; + playerStatus->animFlags |= PLAYER_STATUS_ANIM_FLAGS_8BIT_MARIO + | PLAYER_STATUS_ANIM_FLAGS_40000 + | PLAYER_STATUS_ANIM_FLAGS_4; } return ApiStatus_DONE2; @@ -848,13 +850,13 @@ void virtual_entity_render_quad(s32 arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4 virtual_entity_appendGfx_quad(arg0, arg1, arg2, arg3, arg4, arg5, temp1, temp2); } -void virtual_entity_move_polar(VirtualEntity* virtualEntity, f32 arg1, f32 arg2) { - f32 theta = (arg2 * TAU) / 360.0f; +void virtual_entity_move_polar(VirtualEntity* virtualEntity, f32 magnitude, f32 angle) { + f32 theta = (angle * TAU) / 360.0f; f32 sinTheta = sin_rad(theta); f32 cosTheta = cos_rad(theta); - virtualEntity->pos.x += arg1 * sinTheta; - virtualEntity->pos.z += -arg1 * cosTheta; + virtualEntity->pos.x += magnitude * sinTheta; + virtualEntity->pos.z += -magnitude * cosTheta; } void virtual_entity_list_update(void) { @@ -874,11 +876,11 @@ void virtual_entity_list_render_world(void) { Matrix4f xRot; Matrix4f yRot; Matrix4f zRot; - Matrix4f sp118; - Matrix4f sp158; - Matrix4f sp198; + Matrix4f rotation; + Matrix4f temp; + Matrix4f transform; Matrix4f scale; - Mtx sp218; + Mtx transformMtxL; VirtualEntity* virtualEntity; s32 i; @@ -891,12 +893,12 @@ void virtual_entity_list_render_world(void) { guRotateF(yRot, virtualEntity->rot.y, 0.0f, 1.0f, 0.0f); guRotateF(zRot, virtualEntity->rot.z, 0.0f, 0.0f, 1.0f); guScaleF(scale, virtualEntity->scale.x, virtualEntity->scale.y, virtualEntity->scale.z); - guMtxCatF(zRot, xRot, sp158); - guMtxCatF(sp158, yRot, sp118); - guMtxCatF(scale, sp118, sp158); - guMtxCatF(sp158, translation, sp198); - guMtxF2L(sp198, &sp218); - draw_entity_model_A(virtualEntity->entityModelIndex, &sp218); + guMtxCatF(zRot, xRot, temp); + guMtxCatF(temp, yRot, rotation); + guMtxCatF(scale, rotation, temp); + guMtxCatF(temp, translation, transform); + guMtxF2L(transform, &transformMtxL); + draw_entity_model_A(virtualEntity->entityModelIndex, &transformMtxL); } } } @@ -907,11 +909,11 @@ void virtual_entity_list_render_UI(void) { Matrix4f xRot; Matrix4f yRot; Matrix4f zRot; - Matrix4f sp118; - Matrix4f sp158; - Matrix4f sp198; + Matrix4f rotation; + Matrix4f temp; + Matrix4f transform; Matrix4f scale; - Mtx sp218; + Mtx transformMtxL; VirtualEntity* virtualEntity; s32 i; @@ -924,12 +926,12 @@ void virtual_entity_list_render_UI(void) { guRotateF(yRot, virtualEntity->rot.y, 0.0f, 1.0f, 0.0f); guRotateF(zRot, virtualEntity->rot.z, 0.0f, 0.0f, 1.0f); guScaleF(scale, virtualEntity->scale.x, virtualEntity->scale.y, virtualEntity->scale.z); - guMtxCatF(zRot, xRot, sp158); - guMtxCatF(sp158, yRot, sp118); - guMtxCatF(scale, sp118, sp158); - guMtxCatF(sp158, translation, sp198); - guMtxF2L(sp198, &sp218); - draw_entity_model_E(virtualEntity->entityModelIndex, &sp218); + guMtxCatF(zRot, xRot, temp); + guMtxCatF(temp, yRot, rotation); + guMtxCatF(scale, rotation, temp); + guMtxCatF(temp, translation, transform); + guMtxF2L(transform, &transformMtxL); + draw_entity_model_E(virtualEntity->entityModelIndex, &transformMtxL); } } } diff --git a/src/hud_element.c b/src/hud_element.c index b2e777464c..d95b236bca 100644 --- a/src/hud_element.c +++ b/src/hud_element.c @@ -310,7 +310,6 @@ void hud_element_draw_rect(HudElement* hudElement, s16 texSizeX, s16 texSizeY, s baseY = tempY + 2; } - flags1 = (hudElement->flags & HUD_ELEMENT_FLAGS_FMT_CI4); isFmtCI4 = flags1 != 0; flags1 = (hudElement->flags & HUD_ELEMENT_FLAGS_FMT_IA8); @@ -320,8 +319,8 @@ void hud_element_draw_rect(HudElement* hudElement, s16 texSizeX, s16 texSizeY, s flags2 = (hudElement->flags & HUD_ELEMENT_FLAGS_FLIPY); flipY = flags2 != 0; - fmt = 0; // stays the same if (isFmtCI4 == FALSE && isFmtIA8 == FALSE) - if (isFmtCI4 == TRUE && isFmtIA8 == TRUE) { + fmt = 0; + if (isFmtCI4 == FALSE && isFmtIA8 == FALSE) { fmt = 0; // RGBA } if (isFmtCI4 == TRUE && isFmtIA8 == FALSE) { @@ -1512,9 +1511,9 @@ void render_hud_element(HudElement* hudElement) { case 1: if (hudElement->flags & HUD_ELEMENT_FLAGS_NO_FOLD) { if (hudElement->flags & HUD_ELEMENT_FLAGS_TRANSPARENT) { - fold_update(0, 7, 255, 255, 255, hudElement->opacity, 0); + fold_update(0, FOLD_TYPE_7, 255, 255, 255, hudElement->opacity, 0); } else { - fold_update(0, 0, 0, 0, 0, 0, 0); + fold_update(0, FOLD_TYPE_NONE, 0, 0, 0, 0, 0); } } else { if (hudElement->flags & HUD_ELEMENT_FLAGS_TRANSPARENT) { diff --git a/src/pause/pause_map.c b/src/pause/pause_map.c index 51e1e7a9c6..bc14554b03 100644 --- a/src/pause/pause_map.c +++ b/src/pause/pause_map.c @@ -28,38 +28,38 @@ HudScript* gPauseMapIconScripts[] = { &HES_MapWalk0 }; s32 D_8024FA34 = -1; Vec2b gPauseMapPaths[][32] = { { { 1, -10 }, { 1, -8 }, { -9, -2 }, { -8, 0 }, { -8, 0 }, { -7, -3 }, { -5, -3 }, }, - { { -1, 24 }, { 1, -8 }, { 2, -7 } }, - { { -3, 7 }, { -7, 4 }, { -8, 2 } }, - { }, - { }, - { { -8, -3 }, { -7, 0 }, { -8, 1 }, { -7, 2 } }, - { { -9, 0 }, { -6, -1 }, { -7, 0 }, { -8, 1 }, { -1, 8 } }, - { { 1, 6 }, { -3, 6 } }, - { { -7, 1 }, { -7, 3 }, { -7, 3 }, { -7, 3 }, { -7, 1 }, { -7, 2 }, { -7, 0 } }, - { { -9, 3 }, { -8, 0 }, { -8, 0 }, { -9, -2 }, { -7, -4 }, { -7, -4 }, { -6, -5 }, { -5, -6 }, { -1, -7 }, { -3, -6 }, { -3, -6 }, { -7, -4 }, { -7, 0 }, { -8, 0 }, { -8, 0 }, { -8, 0 }, { -8, 0 }, { 0, -6 }, { 0, -6 } }, - { { -6, 5 }, { -6, 3 }, { -8, 0 }, { -8, -4 }, { -5, -5 }, { -8, -3 }, { -8, 1 }, { -5, 5 }, { -2, 7 }, { 2, 7 }, { 5, 5 }, { 6, 5 }, { 6, 3 } }, - { { -2, 6 }, { -4, 4 } }, - { { 4, 6 }, { 4, 5 } }, - { { -8, -1 }, { -10, -2 }, { -8, -2 }, { -9, -1 }, { -8, -1 }, { -10, 0 }, { -9, 0 } }, - { { 8, 6 } }, - { { -7, 4 }, { -7, 5 }, { -7, 4 }, { -7, 5 } }, - { { -8, 2 }, { -8, 3 }, { -8, 3 }, { -8, 3 } }, - { { 10, -1 } }, - { { 6, 6 }, { 6, 6 }, { 8, 2 }, { 7, -1 } }, - { { 11, 2 }, { 11, 0 }, { 11, -2 }, { 10, -3 }, { 7, -7 }, { 3, -8 }, { 0, -9 }, { -4, -7 }, { -9, -3 }, { -10, -2 }, { -9, -2 }, { -7, -6 }, { -2, -9 }, { 1, -9 }, { 0, -9 }, { -8, -5 }, { -9, -2 }, { 1, -8 }, { 9, -2 }, { 9, -2 }, { 8, -5 } }, - { { -9, 3 }, { -5, 5 } }, - { { -5, 6 }, { -2, 9 }, { 2, 8 }, { 7, 6 }, { 7, 4 } }, - { }, - { { -3, 6 }, { 0, 7 }, { 5, 6 }, { 1, 7 } }, - { }, - { { -9, -2 } }, - { { -11, 1 }, { -9, -2 } }, - { { -7, 3 }, { -6, 5 } }, - { { 0, 7 } }, - { { -9, 3 }, { -8, 1 }, { -7, 1 }, { -7, 4 }, { 2, 6 }, { 8, 3 } }, - { { -3, 6 }, { 2, 6 }, { 8, 3 }, { 6, 5 }, { -2, 6 }, { -6, 3 } }, - { { -6, 5 }, { -2, 7 }, { 2, 7 }, { 6, 6 }, { 8, 3 }, { 8, 0 }, { 8, -3 }, { 8, -5 }, { 6, -5 }, { 7, -4 }, { 8, -1 }, { 8, 3 }, { 2, 8 } }, - { { -3, 7 }, { 0, 6 }, { 4, 7 } }, + { { -1, 24 }, { 1, -8 }, { 2, -7 } }, + { { -3, 7 }, { -7, 4 }, { -8, 2 } }, + { }, + { }, + { { -8, -3 }, { -7, 0 }, { -8, 1 }, { -7, 2 } }, + { { -9, 0 }, { -6, -1 }, { -7, 0 }, { -8, 1 }, { -1, 8 } }, + { { 1, 6 }, { -3, 6 } }, + { { -7, 1 }, { -7, 3 }, { -7, 3 }, { -7, 3 }, { -7, 1 }, { -7, 2 }, { -7, 0 } }, + { { -9, 3 }, { -8, 0 }, { -8, 0 }, { -9, -2 }, { -7, -4 }, { -7, -4 }, { -6, -5 }, { -5, -6 }, { -1, -7 }, { -3, -6 }, { -3, -6 }, { -7, -4 }, { -7, 0 }, { -8, 0 }, { -8, 0 }, { -8, 0 }, { -8, 0 }, { 0, -6 }, { 0, -6 } }, + { { -6, 5 }, { -6, 3 }, { -8, 0 }, { -8, -4 }, { -5, -5 }, { -8, -3 }, { -8, 1 }, { -5, 5 }, { -2, 7 }, { 2, 7 }, { 5, 5 }, { 6, 5 }, { 6, 3 } }, + { { -2, 6 }, { -4, 4 } }, + { { 4, 6 }, { 4, 5 } }, + { { -8, -1 }, { -10, -2 }, { -8, -2 }, { -9, -1 }, { -8, -1 }, { -10, 0 }, { -9, 0 } }, + { { 8, 6 } }, + { { -7, 4 }, { -7, 5 }, { -7, 4 }, { -7, 5 } }, + { { -8, 2 }, { -8, 3 }, { -8, 3 }, { -8, 3 } }, + { { 10, -1 } }, + { { 6, 6 }, { 6, 6 }, { 8, 2 }, { 7, -1 } }, + { { 11, 2 }, { 11, 0 }, { 11, -2 }, { 10, -3 }, { 7, -7 }, { 3, -8 }, { 0, -9 }, { -4, -7 }, { -9, -3 }, { -10, -2 }, { -9, -2 }, { -7, -6 }, { -2, -9 }, { 1, -9 }, { 0, -9 }, { -8, -5 }, { -9, -2 }, { 1, -8 }, { 9, -2 }, { 9, -2 }, { 8, -5 } }, + { { -9, 3 }, { -5, 5 } }, + { { -5, 6 }, { -2, 9 }, { 2, 8 }, { 7, 6 }, { 7, 4 } }, + { }, + { { -3, 6 }, { 0, 7 }, { 5, 6 }, { 1, 7 } }, + { }, + { { -9, -2 } }, + { { -11, 1 }, { -9, -2 } }, + { { -7, 3 }, { -6, 5 } }, + { { 0, 7 } }, + { { -9, 3 }, { -8, 1 }, { -7, 1 }, { -7, 4 }, { 2, 6 }, { 8, 3 } }, + { { -3, 6 }, { 2, 6 }, { 8, 3 }, { 6, 5 }, { -2, 6 }, { -6, 3 } }, + { { -6, 5 }, { -2, 7 }, { 2, 7 }, { 6, 6 }, { 8, 3 }, { 8, 0 }, { 8, -3 }, { 8, -5 }, { 6, -5 }, { 7, -4 }, { 8, -1 }, { 8, 3 }, { 2, 8 } }, + { { -3, 7 }, { 0, 6 }, { 4, 7 } }, {} }; PauseMapSpace gPauseMapSpaces[] = { diff --git a/src/pause/pause_styles.c b/src/pause/pause_styles.c index e76501b696..7e074ebe35 100644 --- a/src/pause/pause_styles.c +++ b/src/pause/pause_styles.c @@ -56,650 +56,650 @@ WindowStyleCustom gPauseWS_1 = { .color2 = { 217, 208, 201, 0 }, }; WindowStyleCustom gPauseWS_2 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = NULL, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 226, 225, 216, 255 }, - .color2 = { 217, 208, 201, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = NULL, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 226, 225, 216, 255 }, + .color2 = { 217, 208, 201, 0 }, }; WindowStyleCustom gPauseWS_3 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 240, 199, 78, 255 }, - .color2 = { 127, 86, 23, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 240, 199, 78, 255 }, + .color2 = { 127, 86, 23, 0 }, }; WindowStyleCustom gPauseWS_4 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 0xFD, 0x74, 0x4A, 0xFF }, - .color2 = { 0x74, 0x30, 0x1B, 0x00 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 0xFD, 0x74, 0x4A, 0xFF }, + .color2 = { 0x74, 0x30, 0x1B, 0x00 }, }; WindowStyleCustom gPauseWS_5 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 39, 72, 225, 255 }, - .color2 = { 9, 26, 102, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 39, 72, 225, 255 }, + .color2 = { 9, 26, 102, 0 }, }; WindowStyleCustom gPauseWS_6 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 34, 238, 201, 255 }, - .color2 = { 7, 109, 90, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 34, 238, 201, 255 }, + .color2 = { 7, 109, 90, 0 }, }; WindowStyleCustom gPauseWS_7 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 104, 255, 81, 255 }, - .color2 = { 42, 121, 30, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 104, 255, 81, 255 }, + .color2 = { 42, 121, 30, 0 }, }; WindowStyleCustom gPauseWS_8 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 173, 114, 194, 255 }, - .color2 = { 76, 47, 87, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 173, 114, 194, 255 }, + .color2 = { 76, 47, 87, 0 }, }; WindowStyleCustom gPauseWS_9 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = NULL, - .packedTileFormat = 0x00, - .size1 = { .x = 0, .y = 0 }, - .size2 = { .x = 0, .y = 0 }, - .size3 = { .x = 0, .y = 0 }, - .size4 = { .x = 0, .y = 0 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPNoOp(), - .transparentCombineMode = gsDPNoOp(), - .color1 = { 0, 0, 0, 0 }, - .color2 = { 0, 0, 0, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = NULL, + .packedTileFormat = 0x00, + .size1 = { .x = 0, .y = 0 }, + .size2 = { .x = 0, .y = 0 }, + .size3 = { .x = 0, .y = 0 }, + .size4 = { .x = 0, .y = 0 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPNoOp(), + .transparentCombineMode = gsDPNoOp(), + .color1 = { 0, 0, 0, 0 }, + .color2 = { 0, 0, 0, 0 }, }; WindowStyleCustom gPauseWS_10 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 240, 199, 78, 255 }, - .color2 = { 127, 86, 23, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 240, 199, 78, 255 }, + .color2 = { 127, 86, 23, 0 }, }; WindowStyleCustom gPauseWS_11 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 213, 165, 116, 255 }, - .color2 = { 96, 72, 48, 96 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 213, 165, 116, 255 }, + .color2 = { 96, 72, 48, 96 }, }; WindowStyleCustom gPauseWS_12 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 226, 216, 179, 255 }, - .color2 = { 210, 192, 144, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 226, 216, 179, 255 }, + .color2 = { 210, 192, 144, 0 }, }; WindowStyleCustom gPauseWS_13 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_143BF0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 16 }, - .size2 = { .x = 16, .y = 16 }, - .size3 = { .x = 16, .y = 16 }, - .size4 = { .x = 16, .y = 16 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 253, 116, 74, 255 }, - .color2 = { 116, 48, 27, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_143BF0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 16 }, + .size2 = { .x = 16, .y = 16 }, + .size3 = { .x = 16, .y = 16 }, + .size4 = { .x = 16, .y = 16 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 253, 116, 74, 255 }, + .color2 = { 116, 48, 27, 0 }, }; WindowStyleCustom gPauseWS_14 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 245, 185, 160, 255 }, - .color2 = { 203, 153, 128, 255 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 245, 185, 160, 255 }, + .color2 = { 203, 153, 128, 255 }, }; WindowStyleCustom gPauseWS_15 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 216, 191, 182, 255 }, - .color2 = { 225, 209, 209, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 216, 191, 182, 255 }, + .color2 = { 225, 209, 209, 0 }, }; WindowStyleCustom gPauseWS_16 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 202, 170, 165, 255 }, - .color2 = { 226, 200, 200, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 202, 170, 165, 255 }, + .color2 = { 226, 200, 200, 0 }, }; WindowStyleCustom gPauseWS_17 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_143BF0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 16 }, - .size2 = { .x = 16, .y = 16 }, - .size3 = { .x = 16, .y = 16 }, - .size4 = { .x = 16, .y = 16 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 39, 72, 225, 255 }, - .color2 = { 9, 26, 102, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_143BF0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 16 }, + .size2 = { .x = 16, .y = 16 }, + .size3 = { .x = 16, .y = 16 }, + .size4 = { .x = 16, .y = 16 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 39, 72, 225, 255 }, + .color2 = { 9, 26, 102, 0 }, }; WindowStyleCustom gPauseWS_18 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 198, 207, 222, 255 }, - .color2 = { 214, 223, 236, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 198, 207, 222, 255 }, + .color2 = { 214, 223, 236, 0 }, }; WindowStyleCustom gPauseWS_19 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 207, 210, 242, 255 }, - .color2 = { 184, 190, 217, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 207, 210, 242, 255 }, + .color2 = { 184, 190, 217, 0 }, }; WindowStyleCustom gPauseWS_20 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 202, 217, 214, 255 }, - .color2 = { 176, 206, 206, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 202, 217, 214, 255 }, + .color2 = { 176, 206, 206, 0 }, }; WindowStyleCustom gPauseWS_21 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = pause_image_143FF0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 16 }, - .size2 = { .x = 16, .y = 16 }, - .size3 = { .x = 16, .y = 16 }, - .size4 = { .x = 16, .y = 16 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 222, 237, 234, 255 }, - .color2 = { 196, 226, 226, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = pause_image_143FF0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 16 }, + .size2 = { .x = 16, .y = 16 }, + .size3 = { .x = 16, .y = 16 }, + .size4 = { .x = 16, .y = 16 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 222, 237, 234, 255 }, + .color2 = { 196, 226, 226, 0 }, }; WindowStyleCustom gPauseWS_22 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 14, 218, 181, 255 }, - .color2 = { 127, 127, 127, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 14, 218, 181, 255 }, + .color2 = { 127, 127, 127, 0 }, }; WindowStyleCustom gPauseWS_23 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 193, 225, 193, 255 }, - .color2 = { 169, 215, 169, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 193, 225, 193, 255 }, + .color2 = { 169, 215, 169, 0 }, }; WindowStyleCustom gPauseWS_24 = { - .background = { - .imgData = 0x00000000, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 104, 255, 81, 255 }, - .color2 = { 42, 121, 30, 0 }, + .background = { + .imgData = 0x00000000, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 104, 255, 81, 255 }, + .color2 = { 42, 121, 30, 0 }, }; WindowStyleCustom gPauseWS_25 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = pause_image_143FF0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 16 }, - .size2 = { .x = 16, .y = 16 }, - .size3 = { .x = 16, .y = 16 }, - .size4 = { .x = 16, .y = 16 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 207, 250, 200, 255 }, - .color2 = { 206, 239, 192, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = pause_image_143FF0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 16 }, + .size2 = { .x = 16, .y = 16 }, + .size3 = { .x = 16, .y = 16 }, + .size4 = { .x = 16, .y = 16 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 207, 250, 200, 255 }, + .color2 = { 206, 239, 192, 0 }, }; WindowStyleCustom gPauseWS_26 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = ui_box_corners4_png, - .packedTileFormat = 0x31, - .size1 = { .x = 8, .y = 8 }, - .size2 = { .x = 8, .y = 8 }, - .size3 = { .x = 8, .y = 8 }, - .size4 = { .x = 8, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 216, 202, 219, 255 }, - .color2 = { 205, 180, 209, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = ui_box_corners4_png, + .packedTileFormat = 0x31, + .size1 = { .x = 8, .y = 8 }, + .size2 = { .x = 8, .y = 8 }, + .size3 = { .x = 8, .y = 8 }, + .size4 = { .x = 8, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 216, 202, 219, 255 }, + .color2 = { 205, 180, 209, 0 }, }; WindowStyleCustom gPauseWS_27 = { - .background = { - .imgData = ui_box_bg_tile_png, - .packedTileFormat = 0x40, - .width = 16, - .height = 16, - .unk_07 = { 0, 0, 0, 0 }, - .size = 128 - }, - .corners = { - .imgData = pause_image_143FF0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 16 }, - .size2 = { .x = 16, .y = 16 }, - .size3 = { .x = 16, .y = 16 }, - .size4 = { .x = 16, .y = 16 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), - .color1 = { 236, 222, 239, 255 }, - .color2 = { 225, 200, 229, 0 }, + .background = { + .imgData = ui_box_bg_tile_png, + .packedTileFormat = 0x40, + .width = 16, + .height = 16, + .unk_07 = { 0, 0, 0, 0 }, + .size = 128 + }, + .corners = { + .imgData = pause_image_143FF0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 16 }, + .size2 = { .x = 16, .y = 16 }, + .size3 = { .x = 16, .y = 16 }, + .size4 = { .x = 16, .y = 16 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, 0, 0, 0, TEXEL1, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, COMBINED, 0, TEXEL0, 0, 0, 0, 0, COMBINED), + .color1 = { 236, 222, 239, 255 }, + .color2 = { 225, 200, 229, 0 }, }; WindowStyleCustom gPauseWS_28 = { - .background = { - .imgData = NULL, - .packedTileFormat = 0x00, - .width = 0, - .height = 0, - .unk_07 = { 0, 0, 0, 0 }, - .size = 0 - }, - .corners = { - .imgData = pause_image_1439F0_png, - .packedTileFormat = 0x31, - .size1 = { .x = 16, .y = 8 }, - .size2 = { .x = 16, .y = 8 }, - .size3 = { .x = 16, .y = 8 }, - .size4 = { .x = 16, .y = 8 }, - .unk_0D = { 0, 0, 0 }, - }, - .unk_1C = { 0, 0, 0, 0 }, - .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), - .color1 = { 173, 114, 194, 255 }, - .color2 = { 76, 47, 87, 0 }, + .background = { + .imgData = NULL, + .packedTileFormat = 0x00, + .width = 0, + .height = 0, + .unk_07 = { 0, 0, 0, 0 }, + .size = 0 + }, + .corners = { + .imgData = pause_image_1439F0_png, + .packedTileFormat = 0x31, + .size1 = { .x = 16, .y = 8 }, + .size2 = { .x = 16, .y = 8 }, + .size3 = { .x = 16, .y = 8 }, + .size4 = { .x = 16, .y = 8 }, + .unk_0D = { 0, 0, 0 }, + }, + .unk_1C = { 0, 0, 0, 0 }, + .opaqueCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, 0, 0, 0, TEXEL1, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .transparentCombineMode = gsDPSetCombineLERP(PRIMITIVE, ENVIRONMENT, TEXEL1, ENVIRONMENT, PRIMITIVE, 0, TEXEL1, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED), + .color1 = { 173, 114, 194, 255 }, + .color2 = { 76, 47, 87, 0 }, }; diff --git a/src/status_icons.c b/src/status_icons.c index e808571ebc..ffcc22c936 100644 --- a/src/status_icons.c +++ b/src/status_icons.c @@ -271,7 +271,7 @@ void draw_merlee_message(void* data) { messageID = D_80078168[popup->messageIndex]; width = get_msg_width(messageID, 0) + 30; xPos = 160 - (width / 2); - set_window_properties(9, xPos, 80, width, D_80078160[get_msg_lines(messageID) - 1], 0, draw_merlee_message_string, popup, -1); + set_window_properties(WINDOW_ID_9, xPos, 80, width, D_80078160[get_msg_lines(messageID) - 1], 0, draw_merlee_message_string, popup, -1); set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW); } } diff --git a/src/world/action/18.c b/src/world/action/18.c index 7f3b36a45f..1ec3515fab 100644 --- a/src/world/action/18.c +++ b/src/world/action/18.c @@ -2,25 +2,25 @@ #include "world/actions.h" s32 State18PeachAnims[] = { - 0x000A0002, // none - 0x000A002B, // cream - 0x000A002D, // strawberry - 0x000A002F, // butter - 0x000A0031, // cleanser - 0x000A0033, // water - 0x000A0035, // milk - 0x000A0037, // flour - 0x000A0039, // egg - 0x000A003B, // complete cake - 0x000A003D, // cake bowl - 0x000A003F, // cake mixed - 0x000A0041, // cake pan - 0x000A0043, // cake batter - 0x000A0045, // cake bare - 0x000A0047, // salt - 0x000A0049, // sugar - 0x000A004B, // cake with icing - 0x000A004D, // cake with berries + 0x000A0002, // none + 0x000A002B, // cream + 0x000A002D, // strawberry + 0x000A002F, // butter + 0x000A0031, // cleanser + 0x000A0033, // water + 0x000A0035, // milk + 0x000A0037, // flour + 0x000A0039, // egg + 0x000A003B, // complete cake + 0x000A003D, // cake bowl + 0x000A003F, // cake mixed + 0x000A0041, // cake pan + 0x000A0043, // cake batter + 0x000A0045, // cake bare + 0x000A0047, // salt + 0x000A0049, // sugar + 0x000A004B, // cake with icing + 0x000A004D, // cake with berries 0x00000000 }; diff --git a/src/world/action/hammer.c b/src/world/action/hammer.c index 562acfbedb..d2125c4e7c 100644 --- a/src/world/action/hammer.c +++ b/src/world/action/hammer.c @@ -377,8 +377,8 @@ void func_802B6820_E256F0(void) { } if (HammerHit->hitID < 0 && gPlayerData.hammerLevel >= 2) { - D_8015A578.unk_00 = TRUE; - D_8015A578.unk_08 = playerStatus->position.y; + gCurrentHiddenPanels.tryFlipTrigger = TRUE; + gCurrentHiddenPanels.flipTriggerPosY = playerStatus->position.y; } } diff --git a/src/world/action/slide.c b/src/world/action/slide.c index 73ecdeaf67..7594d31e9b 100644 --- a/src/world/action/slide.c +++ b/src/world/action/slide.c @@ -26,22 +26,21 @@ void func_802B6000_E27510(void) { void func_802B6060_E27570(void) { PlayerStatus* playerStatus = &gPlayerStatus; CollisionStatus* collisionStatus; - f32 sp50; - f32 sp4C; - s32 sp48; - f32 sp44; - f32 sp40; - f32 sp3C; - f32 sp38; - f32 sp34; - f32 sp30; - f32 sp2C; - f32 sp28; + f32 cosA; + f32 sinA; + s32 hitID; + f32 hitDirZ; + f32 hitDirX; + f32 hitRy; + f32 hitRx; + f32 depth; + f32 posZ; + f32 posY; + f32 posX; f32 tempCurrentSpeed; - u8 colliderTemp; - if (playerStatus->flags & (1 << 31)) { - playerStatus->flags &= ~0x80000000; + if (playerStatus->flags & PLAYER_STATUS_FLAGS_ACTION_STATE_CHANGED) { + playerStatus->flags &= ~PLAYER_STATUS_FLAGS_ACTION_STATE_CHANGED; playerStatus->fallState = 0; playerStatus->currentSpeed = 0.0f; playerStatus->animFlags |= 4; @@ -56,13 +55,13 @@ void func_802B6060_E27570(void) { gCameras[CAM_DEFAULT].moveFlags |= CAMERA_MOVE_FLAGS_1; } tempCurrentSpeed = playerStatus->currentSpeed; - sp28 = playerStatus->position.x; - sp2C = playerStatus->position.y; - sp30 = playerStatus->position.z; - sp48 = player_test_move_with_slipping(playerStatus, &sp28, &sp2C, &sp30, tempCurrentSpeed, playerStatus->heading); - playerStatus->position.x = sp28; - playerStatus->position.z = sp30; - playerStatus->position.y = sp2C; + posX = playerStatus->position.x; + posY = playerStatus->position.y; + posZ = playerStatus->position.z; + hitID = player_test_move_with_slipping(playerStatus, &posX, &posY, &posZ, tempCurrentSpeed, playerStatus->heading); + playerStatus->position.x = posX; + playerStatus->position.z = posZ; + playerStatus->position.y = posY; switch (playerStatus->fallState) { case 0: @@ -74,20 +73,19 @@ void func_802B6060_E27570(void) { if (D_802B6788 <= playerStatus->currentSpeed) { playerStatus->currentSpeed = D_802B6788; } - sp28 = playerStatus->position.x; - sp34 = 100.0f; - sp30 = playerStatus->position.z; + posX = playerStatus->position.x; + depth = 100.0f; + posZ = playerStatus->position.z; D_802B6794 = D_802B6798; - sp2C = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); - sp48 = player_raycast_below_cam_relative(playerStatus, &sp28, &sp2C, &sp30, &sp34, &sp38, &sp3C, &sp40, &sp44); - D_802B6798 = sp3C; - if (sp48 >= 0) { + posY = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); + hitID = player_raycast_below_cam_relative(playerStatus, &posX, &posY, &posZ, &depth, &hitRx, &hitRy, &hitDirX, &hitDirZ); + D_802B6798 = hitRy; + if (hitID >= 0) { collisionStatus = &gCollisionStatus; - colliderTemp = get_collider_type_by_id(sp48); - if (colliderTemp == 5) { - collisionStatus->currentFloor = sp48; - playerStatus->position.y = sp2C; - D_802B6790 = sp3C + 180.0f; + if ((u8)get_collider_type_by_id(hitID) == 5) { + collisionStatus->currentFloor = hitID; + playerStatus->position.y = posY; + D_802B6790 = hitRy + 180.0f; break; } if (!(fabs(D_802B6794 - D_802B6798) >= 50.0)) { @@ -98,17 +96,17 @@ void func_802B6060_E27570(void) { } else { playerStatus->fallState = 2; } - sin_cos_rad((D_802B6790 * TAU) / 360.0f, &sp4C, &sp50); - playerStatus->position.y += fabsf((sp4C / sp50) * playerStatus->currentSpeed); + sin_cos_rad((D_802B6790 * TAU) / 360.0f, &sinA, &cosA); + playerStatus->position.y += fabsf((sinA / cosA) * playerStatus->currentSpeed); snd_stop_sound(SOUND_167); break; case 1: - sp28 = playerStatus->position.x; - sp34 = 50.0f; - sp30 = playerStatus->position.z; - sp2C = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); - sp48 = player_raycast_below_cam_relative(playerStatus, &sp28, &sp2C, &sp30, &sp34, &sp38, &sp3C, &sp40, &sp44); - if (sp48 >= 0) { + posX = playerStatus->position.x; + depth = 50.0f; + posZ = playerStatus->position.z; + posY = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); + hitID = player_raycast_below_cam_relative(playerStatus, &posX, &posY, &posZ, &depth, &hitRx, &hitRy, &hitDirX, &hitDirZ); + if (hitID >= 0) { tempCurrentSpeed = playerStatus->currentSpeed / 3.0f; if (tempCurrentSpeed < 0.01) { playerStatus->currentSpeed = 0.0f; @@ -120,7 +118,7 @@ void func_802B6060_E27570(void) { playerStatus->fallState = 6; playerStatus->currentStateTime = 15; playerStatus->currentSpeed = 0.0f; - playerStatus->position.y = sp2C; + playerStatus->position.y = posY; } break; } @@ -144,8 +142,8 @@ void func_802B6060_E27570(void) { if (playerStatus->currentSpeed <= 0.0f) { playerStatus->currentSpeed = 0.0f; } - playerStatus->position.y = player_check_collision_below(func_800E34D8(), &sp48); - if (sp48 >= 0) { + playerStatus->position.y = player_check_collision_below(func_800E34D8(), &hitID); + if (hitID >= 0) { D_802B678C = -1; suggest_player_anim_setUnkFlag(0x80003); sfx_play_sound_at_player(SOUND_162, 0); diff --git a/src/world/action/super_boots.c b/src/world/action/super_boots.c index 3b6eb04cf2..172c47166b 100644 --- a/src/world/action/super_boots.c +++ b/src/world/action/super_boots.c @@ -8,7 +8,7 @@ void func_802B6000_E26DE0(void) { PlayerStatus* playerStatus = &gPlayerStatus; CollisionStatus* collisionStatus = &gCollisionStatus; Entity* entity; - Struct8015A578* tempStruct; + HiddenPanelsData* panels; s32 sp10; s32 tempCondition; f32 temp_f20; @@ -97,19 +97,19 @@ void func_802B6000_E26DE0(void) { entityType == ENTITY_TYPE_RED_SWITCH || entityType == ENTITY_TYPE_BLUE_SWITCH)) { get_entity_by_index(collisionStatus->currentFloor)->collisionFlags |= ENTITY_COLLISION_PLAYER_TOUCH_FLOOR; playerStatus->fallState = 0xB; - playerStatus->flags &= ~0x8; + playerStatus->flags &= ~PLAYER_STATUS_FLAGS_FLYING; break; } else { colliderType = get_collider_type_by_id(sp10); if (colliderType == 3) { playerStatus->unk_BF = 1; set_action_state(ACTION_STATE_HIT_LAVA); - playerStatus->flags |= 0x800; - playerStatus->flags &= ~0x8; + playerStatus->flags |= PLAYER_STATUS_FLAGS_800; + playerStatus->flags &= ~PLAYER_STATUS_FLAGS_FLYING; return; } else if (colliderType == 2) { set_action_state(ACTION_STATE_HIT_LAVA); - playerStatus->flags &= ~0x8; + playerStatus->flags &= ~PLAYER_STATUS_FLAGS_FLYING; return; } else { playerStatus->gravityIntegrator[1] = -3.4744f; @@ -125,10 +125,10 @@ void func_802B6000_E26DE0(void) { exec_ShakeCam1(0, 0, 4); sfx_play_sound_at_player(SOUND_149, 0); start_rumble(0x80, 0x19); - tempStruct = &D_8015A578; - tempStruct->unk_00 = TRUE; - tempStruct->unk_08 = playerStatus->position.y; - playerStatus->flags |= 0x400; + panels = &gCurrentHiddenPanels; + panels->tryFlipTrigger = TRUE; + panels->flipTriggerPosY = playerStatus->position.y; + playerStatus->flags |= PLAYER_STATUS_FLAGS_400; } } } diff --git a/src/world/action/ultra_boots.c b/src/world/action/ultra_boots.c index 30fd1a3b44..0e6985b0c3 100644 --- a/src/world/action/ultra_boots.c +++ b/src/world/action/ultra_boots.c @@ -10,15 +10,15 @@ void func_802B6000_E26710(void) { PlayerStatus* playerStatus = &gPlayerStatus; CollisionStatus* collisionStatus = &gCollisionStatus; f32 temp_f0; - f32 temp_f20; + f32 fallVelocity; u8 colliderType; f32 phi_f4; - s32 sp10; + s32 colliderBelow; u32 entityType; if (playerStatus->flags & PLAYER_STATUS_FLAGS_ACTION_STATE_CHANGED) { playerStatus->flags &= ~PLAYER_STATUS_FLAGS_ACTION_STATE_CHANGED; - playerStatus->flags |= 0x2000A; + playerStatus->flags |= (PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING | PLAYER_STATUS_FLAGS_JUMPING); phys_clear_spin_history(); playerStatus->fallState = 0; playerStatus->currentSpeed = 0.0f; @@ -62,9 +62,9 @@ void func_802B6000_E26710(void) { switch (playerStatus->fallState) { case 0: - temp_f20 = integrate_gravity(); - playerStatus->position.y = player_check_collision_below(temp_f20, &sp10); - if (sp10 >= 0 && collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT ) { + fallVelocity = integrate_gravity(); + playerStatus->position.y = player_check_collision_below(fallVelocity, &colliderBelow); + if (colliderBelow >= 0 && collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT ) { entityType = get_entity_type(collisionStatus->currentFloor); if (entityType == ENTITY_TYPE_BLUE_SWITCH || entityType == ENTITY_TYPE_RED_SWITCH) { get_entity_by_index(collisionStatus->currentFloor)->collisionFlags |= ENTITY_COLLISION_PLAYER_TOUCH_FLOOR; @@ -73,15 +73,15 @@ void func_802B6000_E26710(void) { break; } } - if (temp_f20 <= 0.0f) { + if (fallVelocity <= 0.0f) { record_jump_apex(); playerStatus->currentStateTime = 3; - playerStatus->flags |= 4; + playerStatus->flags |= PLAYER_STATUS_FLAGS_FALLING; playerStatus->fallState++; sfx_play_sound_at_player(SOUND_TORNADO_JUMP, 0); } - if (sp10 >= 0) { - playerStatus->flags &= ~0x00020008; + if (colliderBelow >= 0) { + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); set_action_state(ACTION_STATE_LAND); } break; @@ -91,64 +91,64 @@ void func_802B6000_E26710(void) { } break; case 2: - temp_f20 = integrate_gravity(); - playerStatus->position.y = player_check_collision_below(temp_f20, &sp10); - if (temp_f20 < -100.0f) { + fallVelocity = integrate_gravity(); + playerStatus->position.y = player_check_collision_below(fallVelocity, &colliderBelow); + if (fallVelocity < -100.0f) { playerStatus->gravityIntegrator[3] = 0.0f; playerStatus->gravityIntegrator[2] = 0.0f; playerStatus->gravityIntegrator[1] = 0.0f; playerStatus->gravityIntegrator[0] = -100.0f; } - if (sp10 >= 0) { + if (colliderBelow >= 0) { if (collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT) { entityType = get_entity_type(collisionStatus->currentFloor); if (entityType == ENTITY_TYPE_SIMPLE_SPRING || entityType == ENTITY_TYPE_SCRIPT_SPRING) { - playerStatus->flags &= ~0x00020008; + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); set_action_state(ACTION_STATE_LAND); return; } else if (entityType == ENTITY_TYPE_BLUE_SWITCH || entityType == ENTITY_TYPE_RED_SWITCH) { - playerStatus->flags &= ~0x00020008; + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); phys_player_land(); exec_ShakeCam1(0, 0, 4); sfx_play_sound_at_player(SOUND_14A, 0); - start_rumble(0x100, 0x32); + start_rumble(256, 50); - D_8015A578.unk_00 = TRUE; - D_8015A578.unk_08 = playerStatus->position.y; - playerStatus->flags |= 0x400; + gCurrentHiddenPanels.tryFlipTrigger = TRUE; + gCurrentHiddenPanels.flipTriggerPosY = playerStatus->position.y; + playerStatus->flags |= PLAYER_STATUS_FLAGS_400; return; } } - colliderType = get_collider_type_by_id(sp10); + colliderType = get_collider_type_by_id(colliderBelow); if (colliderType == 3) { playerStatus->unk_BF = 1; - playerStatus->flags &= ~0x00020008; + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); set_action_state(ACTION_STATE_HIT_LAVA); - playerStatus->flags |= 0x800; + playerStatus->flags |= PLAYER_STATUS_FLAGS_800; return; } else if (colliderType == 2) { set_action_state(ACTION_STATE_HIT_LAVA); - playerStatus->flags &= ~0x00020008; + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); return; } playerStatus->currentStateTime = 8; playerStatus->timeInAir = 0; - playerStatus->actionState = 0x10; + playerStatus->actionState = ACTION_STATE_ULTRA_POUND; playerStatus->fallState++; exec_ShakeCam1(0, 0, 4); sfx_play_sound_at_player(SOUND_14A, 0); - start_rumble(0x100, 0x32); + start_rumble(256, 50); - D_8015A578.unk_00 = TRUE; - D_8015A578.unk_08 = playerStatus->position.y; - playerStatus->flags |= 0x400; + gCurrentHiddenPanels.tryFlipTrigger = TRUE; + gCurrentHiddenPanels.flipTriggerPosY = playerStatus->position.y; + playerStatus->flags |= PLAYER_STATUS_FLAGS_400; } break; case 3: if (--playerStatus->currentStateTime == 0) { playerStatus->fallState++; - playerStatus->flags &= ~0x00020008; + playerStatus->flags &= ~(PLAYER_STATUS_FLAGS_20000 | PLAYER_STATUS_FLAGS_FLYING); set_action_state(ACTION_STATE_LAND); } break; @@ -162,10 +162,10 @@ void func_802B6000_E26710(void) { } if (playerStatus->gravityIntegrator[0] < 0.0f) { - sp10 = func_802B65F8_E26D08(); - if (sp10 >= 0) { + colliderBelow = func_802B65F8_E26D08(); + if (colliderBelow >= 0) { collisionStatus->lastTouchedFloor = -1; - collisionStatus->currentFloor = sp10; + collisionStatus->currentFloor = colliderBelow; } } } diff --git a/src/world/action/use_spinning_flower.c b/src/world/action/use_spinning_flower.c index b253ac1a55..860ef34c40 100644 --- a/src/world/action/use_spinning_flower.c +++ b/src/world/action/use_spinning_flower.c @@ -73,7 +73,7 @@ void func_802B60A4_E29514(void) { suggest_player_anim_clearUnkFlag(0x1002B); } } - switch(playerStatus->fallState) { + switch (playerStatus->fallState) { case 1: gOverrideFlags |= GLOBAL_OVERRIDES_40; if (++D_802B6EE4 >= 20.0f) { diff --git a/src/world/area_end/end_00/DF6A20.c b/src/world/area_end/end_00/DF6A20.c index f552458195..383356817c 100644 --- a/src/world/area_end/end_00/DF6A20.c +++ b/src/world/area_end/end_00/DF6A20.c @@ -1,94 +1,295 @@ #include "end_00.h" -typedef struct End18 { - /* 0x00 */ s32 initialAnim; - /* 0x04 */ s32** animList; - /* 0x08 */ Vec3f pos; - /* 0x14 */ f32 yaw; -} End18; // size = 0x18 - extern s32 spr_allocateBtlComponentsOnWorldHeap; -extern End18 D_80244D74_DFB774[]; +extern ParadeNpcInfo N(ParadeNpcsTable)[]; -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240020_DF6A20); +extern CreditsUnkBeta N(Font4Patterns)[16]; +extern CreditsUnkBeta N(Font3Patterns)[16]; +extern Vp N(CreditsViewport); +extern s32 N(CreditsBufferIndex); -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240270_DF6C70); +// start of BSS: +extern CreditsData N(CreditsData); +extern CreditsData* N(CreditsDataPtr); +extern u8 N(CreditsMessageBuffers)[23][256]; +extern Mtx N(CreditsProjMatrices)[2]; -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240540_DF6F40); +s32 msg_get_print_char_width(s32 character, s32 charset, s32 variation, f32 msgScale, s32 overrideCharWidth, u8 flags); +void dma_load_msg(u32 msgID, void* dest); -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_8024081C_DF721C); +#include "world/common/atomic/Credits_1.inc.c" -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240AE8_DF74E8); +void N(credits_update_line)(CreditsLine* line) { + CreditsChar creditsChar; + CreditsChar* curChar = &creditsChar; + CreditsUnkBeta* curPattern; + s32 msgHeight, msgWidth, msgMaxLineChars; + s32 doneCurrentState; + s32 readPos; + u8 curMsgChar; + u16 nextMsgChar1, nextMsgChar2; + u16 doneCalcLoop, doneDrawLoop; + s32 drawCount; + s32 posX; + s32 i; -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240EB0_DF78B0); + doneCurrentState = FALSE; + if (line->flags & CREDITS_LINE_FLAG_2) { + line->flags &= ~CREDITS_LINE_FLAG_2; + line->time = 0; + line->state = 0; + } + + get_msg_properties(line->message, &msgHeight, &msgWidth, &msgMaxLineChars, NULL, NULL, NULL, 0); + + curChar->font = 0; + curChar->variation = 0; -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240FEC_DF79EC); + // calculate message width + msgWidth = 1; + readPos = 0; + do { + curMsgChar = line->message[readPos++]; + nextMsgChar1 = line->message[readPos]; + doneCalcLoop = FALSE; + + switch (curMsgChar) { + case MSG_CHAR_READ_VARIANT0: + case MSG_CHAR_READ_VARIANT1: + case MSG_CHAR_READ_VARIANT2: + curChar->variation = curMsgChar - MSG_CHAR_READ_VARIANT0; + break; + case MSG_CHAR_READ_ENDL: + case MSG_CHAR_READ_END: + doneCalcLoop = TRUE; + break; + case MSG_CHAR_READ_FUNCTION: + // only support function for selecting font + if (line->message[readPos++] == MSG_READ_FUNC_FONT) { + curChar->font = line->message[readPos++]; + } + break; + default: + msgWidth += msg_get_print_char_width(curMsgChar, curChar->font, curChar->variation, 1.0f, 0, 1) - 1; + if (curChar->font == MSG_FONT_TITLE || curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font3Patterns); + if (curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font4Patterns); + } + + i = 0; + + if (curChar->font == MSG_FONT_SUBTITLE) { + if (curMsgChar == MSG_CHAR_LPAREN || nextMsgChar1 == MSG_CHAR_LPAREN) { + msgWidth++; + } + } + + do { + if (curMsgChar == curPattern[i].unk_00 && nextMsgChar1 == curPattern[i].unk_01) { + msgWidth += curPattern[i].size; + } + i++; + } while (curPattern[i].size != 0); + } + break; + } + } while (!doneCalcLoop); -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_802411CC_DF7BCC); + line->msgWidth = msgWidth; + if (line->flags & CREDITS_LINE_FLAG_1) { + posX = line->posX - (((f32) msgWidth * 0.5) + 0.0); + } else { + posX = line->posX; + } -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80241294_DF7C94); + curChar->font = 0; + curChar->variation = 0; + curChar->palette = line->palette; + + drawCount = 0; + readPos = 0; + do { + curMsgChar = line->message[readPos++]; + nextMsgChar2 = line->message[readPos]; + doneDrawLoop = FALSE; + + switch (curMsgChar) { + case MSG_CHAR_READ_VARIANT0: + case MSG_CHAR_READ_VARIANT1: + case MSG_CHAR_READ_VARIANT2: + curChar->variation = curMsgChar - MSG_CHAR_READ_VARIANT0; + break; + case MSG_CHAR_READ_ENDL: + case MSG_CHAR_READ_END: + doneDrawLoop = TRUE; + break; + case MSG_CHAR_READ_FUNCTION: + if (line->message[readPos++] == 0) { + curChar->font = line->message[readPos++]; + } + break; + default: + if (curMsgChar < MSG_CHAR_READ_ENDL) { + curChar->charIndex = curMsgChar; + curChar->posX = posX; + curChar->posY = line->posY; + + switch (line->state) { + case CREDITS_LINE_APPEARING: + curChar->fadeInTime = line->time - (line->perCharDelayIn * drawCount); + if (curChar->fadeInTime >= 0) { + if (line->appearTime < curChar->fadeInTime) { + curChar->fadeInTime = line->appearTime; + } + if ((nextMsgChar2 == MSG_CHAR_READ_END) && (curChar->fadeInTime == line->appearTime)) { + doneCurrentState = TRUE; + } + switch (line->appearMode) { + case 0: + N(CharAnim_FadeIn_5)(line, curChar); + break; + case 1: + N(CharAnim_FadeIn_1)(line, curChar); + break; + case 2: + N(CharAnim_FadeIn_2)(line, curChar); + break; + case 3: + N(CharAnim_FadeIn_3)(line, curChar); + break; + case 4: + N(CharAnim_FadeIn_4)(line, curChar); + break; + case 5: + N(CharAnim_FadeIn_5)(line, curChar); + break; + } + } + break; + + case CREDITS_LINE_HOLDING: + if (nextMsgChar2 == MSG_CHAR_READ_END) { + if (line->time == line->holdTime) { + doneCurrentState = TRUE; + } + } + N(CharAnim_Hold)(line, curChar); + break; -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_802414CC_DF7ECC); + case CREDITS_LINE_VANISHING: + curChar->fadeInTime = line->time - (line->perCharDelayOut * drawCount); + if (curChar->fadeInTime < 0) { + curChar->fadeInTime = 0; + } + if (curChar->fadeInTime > line->vanishTime) { + curChar->fadeInTime = line->vanishTime; + } + if (nextMsgChar2 == MSG_CHAR_READ_END && curChar->fadeInTime == line->vanishTime) { + doneCurrentState = TRUE; + } -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80241768_DF8168); + switch (line->vanishMode) { + case 0: + N(CharAnim_FadeOut_3)(line, curChar); + break; + case 1: + N(CharAnim_FadeOut_1)(line, curChar); + break; + case 2: + N(CharAnim_FadeOut_2)(line, curChar); + break; + case 3: + N(CharAnim_FadeOut_3)(line, curChar); + break; + } + break; + } + drawCount++; + } -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_802419F8_DF83F8); + posX += msg_get_print_char_width(curMsgChar, curChar->font, curChar->variation, 1.0f, 0, 1) - 1; + if (curChar->font == MSG_FONT_TITLE || curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font3Patterns); + if (curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font4Patterns); + } -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80241B34_DF8534); + i = 0; -static char* N(exit_str_0) = "end_01"; - -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_802421D8_DF8BD8); - -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80242358_DF8D58); - -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80242500_DF8F00); - -ApiStatus func_80242558_DF8F58(Evt* script, s32 isInitialCall) { - func_80242500_DF8F00(); - load_font(1); - return ApiStatus_DONE2; + if (curChar->font == MSG_FONT_SUBTITLE) { + if (curMsgChar == MSG_CHAR_LPAREN || nextMsgChar2 == MSG_CHAR_LPAREN) { + posX++; + } + } + do { + if (curMsgChar == curPattern[i].unk_00 && nextMsgChar2 == curPattern[i].unk_01) { + posX += curPattern[i].size; + } + i++; + } while (curPattern[i].size != 0); + } + break; + } + } while (!doneDrawLoop); + + if ((line->state == CREDITS_LINE_APPEARING) && doneCurrentState) { + s32 temp = 0; + get_msg_properties(line->message, NULL, NULL, &temp, NULL, NULL, NULL, 0); + line->time = 0; + line->state++; + if (line->holdTime <= 0) { + line->state++; + } + } else if ((line->state == CREDITS_LINE_HOLDING) && doneCurrentState) { + line->time = 0; + line->state++; + } else if ((line->state == CREDITS_LINE_VANISHING) && doneCurrentState) { + line->flags &= ~CREDITS_LINE_FLAG_1; + } + line->time++; } -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80242580_DF8F80); +#include "world/common/atomic/Credits_2.inc.c" ApiStatus func_80242680_DF9080(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 npcID = evt_get_variable(script, *args++); - End18* end18 = &D_80244D74_DFB774[npcID]; + ParadeNpcInfo* npcInfo = &N(ParadeNpcsTable)[npcID]; NpcBlueprint bp; Npc* npc; - bp.flags = 0x100; - bp.initialAnim = end18->initialAnim; + bp.flags = NPC_FLAG_100; + bp.initialAnim = npcInfo->initialAnim; bp.onUpdate = NULL; bp.onRender = NULL; spr_allocateBtlComponentsOnWorldHeap = TRUE; - npc = get_npc_by_index(_create_npc_standard(&bp, end18->animList)); + npc = get_npc_by_index(_create_npc_standard(&bp, npcInfo->animList)); npc->npcID = npcID; npc->flags &= ~NPC_FLAG_PARTICLE; - npc->pos.x = end18->pos.x; - npc->pos.y = end18->pos.y; - npc->pos.z = end18->pos.z; - set_npc_yaw(npc, end18->yaw); + npc->pos.x = npcInfo->pos.x; + npc->pos.y = npcInfo->pos.y; + npc->pos.z = npcInfo->pos.z; + set_npc_yaw(npc, npcInfo->yaw); return ApiStatus_DONE2; } ApiStatus func_80242744_DF9144(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 var1 = evt_get_variable(script, *args++); - s32 a1 = *args++; + s32 heapSize = evt_get_variable(script, *args++); + s32 outVar = *args++; - evt_set_variable(script, a1, _heap_malloc(&gSpriteHeapPtr, var1)); + evt_set_variable(script, outVar, _heap_malloc(&gSpriteHeapPtr, heapSize)); return ApiStatus_DONE2; } ApiStatus func_802427A4_DF91A4(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 pointer = *args++; - _heap_free(&gSpriteHeapPtr, evt_get_variable(script, *args++)); + _heap_free(&gSpriteHeapPtr, evt_get_variable(script, pointer)); return ApiStatus_DONE2; } @@ -111,7 +312,7 @@ ApiStatus N(SetNpcShadowScale)(Evt* script, s32 isInitialCall) { ApiStatus func_80242898_DF9298(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - Npc** npc = (Npc**)&script->functionTemp[1]; + Npc** npc = (Npc**)&script->functionTempPtr[1]; if (isInitialCall) { *npc = get_npc_unsafe(evt_get_variable(script, *args++)); @@ -121,3 +322,5 @@ ApiStatus func_80242898_DF9298(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } + +static char* N(exit_str_0) = "end_01"; diff --git a/src/world/area_end/end_00/DF9510.c b/src/world/area_end/end_00/DF9510.c index 1a69f9dae3..48019490d7 100644 --- a/src/world/area_end/end_00/DF9510.c +++ b/src/world/area_end/end_00/DF9510.c @@ -1,3 +1,11 @@ #include "end_00.h" +#ifdef NON_MATCHING +ApiStatus func_80242AD4_DF94D4(Evt *script, s32 isInitialCall) { + D_80249D60_E00760 = evt_get_variable(script, *script->ptrReadPos); + return ApiStatus_DONE2; +} +#else INCLUDE_ASM(s32, "world/area_end/end_00/DF9510", func_80242B10_DF9510); +#endif + diff --git a/src/world/area_end/end_01/E05390.c b/src/world/area_end/end_01/E05390.c index ca385834a3..3408085966 100644 --- a/src/world/area_end/end_01/E05390.c +++ b/src/world/area_end/end_01/E05390.c @@ -1,51 +1,327 @@ #include "end_01.h" -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240030_E05390); +extern s32 spr_allocateBtlComponentsOnWorldHeap; +extern ParadeNpcInfo N(ParadeNpcsTable)[]; -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240280_E055E0); +extern CreditsUnkBeta N(Font4Patterns)[16]; +extern CreditsUnkBeta N(Font3Patterns)[16]; +extern Vp N(CreditsViewport); +extern s32 N(CreditsBufferIndex); -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240550_E058B0); +// start of BSS: +extern CreditsData N(CreditsData); +extern CreditsData* N(CreditsDataPtr); +extern u8 N(CreditsMessageBuffers)[23][256]; +extern Mtx N(CreditsProjMatrices)[2]; -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_8024082C_E05B8C); +s32 msg_get_print_char_width(s32 character, s32 charset, s32 variation, f32 msgScale, s32 overrideCharWidth, u8 flags); +void dma_load_msg(u32 msgID, void* dest); -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240AF8_E05E58); +#include "world/common/atomic/Credits_1.inc.c" -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240EC0_E06220); +// same as end_00_credits_update_line, but Font3Patterns and Font4Patterns are swapped... +// might be able to fix this when data for this map is done? +void N(credits_update_line)(CreditsLine* line) { + CreditsChar creditsChar; + CreditsChar* curChar = &creditsChar; + CreditsUnkBeta* curPattern; + s32 msgHeight, msgWidth, msgMaxLineChars; + s32 doneCurrentState; + s32 readPos; + u8 curMsgChar; + u16 nextMsgChar1, nextMsgChar2; + u16 doneCalcLoop, doneDrawLoop; + s32 drawCount; + s32 posX; + s32 i; -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80240FFC_E0635C); + doneCurrentState = FALSE; + if (line->flags & CREDITS_LINE_FLAG_2) { + line->flags &= ~CREDITS_LINE_FLAG_2; + line->time = 0; + line->state = 0; + } + + get_msg_properties(line->message, &msgHeight, &msgWidth, &msgMaxLineChars, NULL, NULL, NULL, 0); + + curChar->font = 0; + curChar->variation = 0; -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802411DC_E0653C); + // calculate message width + msgWidth = 1; + readPos = 0; + do { + curMsgChar = line->message[readPos++]; + nextMsgChar1 = line->message[readPos]; + doneCalcLoop = FALSE; + + switch (curMsgChar) { + case MSG_CHAR_READ_VARIANT0: + case MSG_CHAR_READ_VARIANT1: + case MSG_CHAR_READ_VARIANT2: + curChar->variation = curMsgChar - MSG_CHAR_READ_VARIANT0; + break; + case MSG_CHAR_READ_ENDL: + case MSG_CHAR_READ_END: + doneCalcLoop = TRUE; + break; + case MSG_CHAR_READ_FUNCTION: + // only support function for selecting font + if (line->message[readPos++] == MSG_READ_FUNC_FONT) { + curChar->font = line->message[readPos++]; + } + break; + default: + msgWidth += msg_get_print_char_width(curMsgChar, curChar->font, curChar->variation, 1.0f, 0, 1) - 1; + if (curChar->font == MSG_FONT_TITLE || curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font4Patterns); + if (curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font3Patterns); + } + + i = 0; + + if (curChar->font == MSG_FONT_SUBTITLE) { + if (curMsgChar == MSG_CHAR_LPAREN || nextMsgChar1 == MSG_CHAR_LPAREN) { + msgWidth++; + } + } + + do { + if (curMsgChar == curPattern[i].unk_00 && nextMsgChar1 == curPattern[i].unk_01) { + msgWidth += curPattern[i].size; + } + i++; + } while (curPattern[i].size != 0); + } + break; + } + } while (!doneCalcLoop); -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802412A4_E06604); + line->msgWidth = msgWidth; + if (line->flags & CREDITS_LINE_FLAG_1) { + posX = line->posX - (((f32) msgWidth * 0.5) + 0.0); + } else { + posX = line->posX; + } -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802414DC_E0683C); + curChar->font = 0; + curChar->variation = 0; + curChar->palette = line->palette; + + drawCount = 0; + readPos = 0; + do { + curMsgChar = line->message[readPos++]; + nextMsgChar2 = line->message[readPos]; + doneDrawLoop = FALSE; + + switch (curMsgChar) { + case MSG_CHAR_READ_VARIANT0: + case MSG_CHAR_READ_VARIANT1: + case MSG_CHAR_READ_VARIANT2: + curChar->variation = curMsgChar - MSG_CHAR_READ_VARIANT0; + break; + case MSG_CHAR_READ_ENDL: + case MSG_CHAR_READ_END: + doneDrawLoop = TRUE; + break; + case MSG_CHAR_READ_FUNCTION: + if (line->message[readPos++] == 0) { + curChar->font = line->message[readPos++]; + } + break; + default: + if (curMsgChar < MSG_CHAR_READ_ENDL) { + curChar->charIndex = curMsgChar; + curChar->posX = posX; + curChar->posY = line->posY; + + switch (line->state) { + case CREDITS_LINE_APPEARING: + curChar->fadeInTime = line->time - (line->perCharDelayIn * drawCount); + if (curChar->fadeInTime >= 0) { + if (line->appearTime < curChar->fadeInTime) { + curChar->fadeInTime = line->appearTime; + } + if ((nextMsgChar2 == MSG_CHAR_READ_END) && (curChar->fadeInTime == line->appearTime)) { + doneCurrentState = TRUE; + } + switch (line->appearMode) { + case 0: + N(CharAnim_FadeIn_5)(line, curChar); + break; + case 1: + N(CharAnim_FadeIn_1)(line, curChar); + break; + case 2: + N(CharAnim_FadeIn_2)(line, curChar); + break; + case 3: + N(CharAnim_FadeIn_3)(line, curChar); + break; + case 4: + N(CharAnim_FadeIn_4)(line, curChar); + break; + case 5: + N(CharAnim_FadeIn_5)(line, curChar); + break; + } + } + break; + + case CREDITS_LINE_HOLDING: + if (nextMsgChar2 == MSG_CHAR_READ_END) { + if (line->time == line->holdTime) { + doneCurrentState = TRUE; + } + } + N(CharAnim_Hold)(line, curChar); + break; -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80241778_E06AD8); + case CREDITS_LINE_VANISHING: + curChar->fadeInTime = line->time - (line->perCharDelayOut * drawCount); + if (curChar->fadeInTime < 0) { + curChar->fadeInTime = 0; + } + if (curChar->fadeInTime > line->vanishTime) { + curChar->fadeInTime = line->vanishTime; + } + if (nextMsgChar2 == MSG_CHAR_READ_END && curChar->fadeInTime == line->vanishTime) { + doneCurrentState = TRUE; + } -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80241A08_E06D68); + switch (line->vanishMode) { + case 0: + N(CharAnim_FadeOut_3)(line, curChar); + break; + case 1: + N(CharAnim_FadeOut_1)(line, curChar); + break; + case 2: + N(CharAnim_FadeOut_2)(line, curChar); + break; + case 3: + N(CharAnim_FadeOut_3)(line, curChar); + break; + } + break; + } + drawCount++; + } -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80241B44_E06EA4); + posX += msg_get_print_char_width(curMsgChar, curChar->font, curChar->variation, 1.0f, 0, 1) - 1; + if (curChar->font == MSG_FONT_TITLE || curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font4Patterns); + if (curChar->font == MSG_FONT_SUBTITLE) { + curPattern = N(Font3Patterns); + } + + i = 0; + + if (curChar->font == MSG_FONT_SUBTITLE) { + if (curMsgChar == MSG_CHAR_LPAREN || nextMsgChar2 == MSG_CHAR_LPAREN) { + posX++; + } + } + do { + if (curMsgChar == curPattern[i].unk_00 && nextMsgChar2 == curPattern[i].unk_01) { + posX += curPattern[i].size; + } + i++; + } while (curPattern[i].size != 0); + } + break; + } + } while (!doneDrawLoop); + + if ((line->state == CREDITS_LINE_APPEARING) && doneCurrentState) { + s32 temp = 0; + get_msg_properties(line->message, NULL, NULL, &temp, NULL, NULL, NULL, 0); + line->time = 0; + line->state++; + if (line->holdTime <= 0) { + line->state++; + } + } else if ((line->state == CREDITS_LINE_HOLDING) && doneCurrentState) { + line->time = 0; + line->state++; + } else if ((line->state == CREDITS_LINE_VANISHING) && doneCurrentState) { + line->flags &= ~CREDITS_LINE_FLAG_1; + } + line->time++; +} + +#include "world/common/atomic/Credits_2.inc.c" + +ApiStatus func_80242690_E079F0(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 npcID = evt_get_variable(script, *args++); + ParadeNpcInfo* npcInfo = &N(ParadeNpcsTable)[npcID]; + NpcBlueprint bp; + Npc* npc; + + bp.flags = NPC_FLAG_100; + bp.initialAnim = npcInfo->initialAnim; + bp.onUpdate = NULL; + bp.onRender = NULL; + + spr_allocateBtlComponentsOnWorldHeap = TRUE; + + npc = get_npc_by_index(_create_npc_standard(&bp, npcInfo->animList)); + npc->npcID = npcID; + npc->flags &= ~NPC_FLAG_PARTICLE; + npc->pos.x = npcInfo->pos.x; + npc->pos.y = npcInfo->pos.y; + npc->pos.z = npcInfo->pos.z; + set_npc_yaw(npc, npcInfo->yaw); + return ApiStatus_DONE2; +} + +ApiStatus func_80242754_E07AB4(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 heapSize = evt_get_variable(script, *args++); + s32 outVar = *args++; + + evt_set_variable(script, outVar, _heap_malloc(&gSpriteHeapPtr, heapSize)); + return ApiStatus_DONE2; +} + +ApiStatus func_802427B4_E07B14(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 pointer = *args++; + + _heap_free(&gSpriteHeapPtr, evt_get_variable(script, pointer)); + return ApiStatus_DONE2; +} + +ApiStatus func_802427E8_E07B48(Evt* script, s32 isInitialCall) { + Camera* camera = &gCameras[gCurrentCameraID]; + + camera->unk_506 = 1; + camera->movePos.x += 0.6666667f; + return ApiStatus_DONE2; +} + +ApiStatus func_80242840_E07BA0(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + Npc** npc = (Npc**)&script->functionTempPtr[1]; + + if (isInitialCall) { + *npc = get_npc_unsafe(evt_get_variable(script, *args++)); + } + + (*npc)->pos.x += 0.6666667f; + + return ApiStatus_BLOCK; +} + +ApiStatus func_8024289C_E07BFC(Evt* script, s32 isInitialCall) { + if (gGameStatusPtr->pressedButtons[0] & (BUTTON_A | BUTTON_START)) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} static char* N(exit_str_0) = "kmr_30"; - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802421E8_E07548); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242368_E076C8); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242510_E07870); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242568_E078C8); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242590_E078F0); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242690_E079F0); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242754_E07AB4); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802427B4_E07B14); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_802427E8_E07B48); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_80242840_E07BA0); - -INCLUDE_ASM(s32, "world/area_end/end_01/E05390", func_8024289C_E07BFC); diff --git a/src/world/area_hos/hos_05/A2AAC0.c b/src/world/area_hos/hos_05/A2AAC0.c index 4ceaef2437..1cdca4e5dc 100644 --- a/src/world/area_hos/hos_05/A2AAC0.c +++ b/src/world/area_hos/hos_05/A2AAC0.c @@ -1,6 +1,8 @@ #include "hos_05.h" void set_model_fog_color_parameters(u8 var2, u8 var3, u8 var4, u8 var5, u8 var6, u8 var7, u8 var8, s32 var9, s32 var10); +void set_model_env_color_parameters(u8 primR, u8 primG, u8 primB, u8 envR, u8 envG, u8 envB); +void get_model_env_color_parameters(u8* primR, u8* primG, u8* primB, u8* envR, u8* envG, u8* envB); ApiStatus func_80240880_A2AAC0(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -18,7 +20,48 @@ ApiStatus func_80240880_A2AAC0(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -INCLUDE_ASM(s32, "world/area_hos/hos_05/A2AAC0", func_802409C4_A2AC04); +ApiStatus func_802409C4_A2AC04(Evt* script, s32 isInitialCall) { + Bytecode* args; + static u8 oldPrimR, oldPrimG, oldPrimB; + static u8 oldEnvR, oldEnvG, oldEnvB; + static s32 newPrimR, newPrimG, newPrimB; + static s32 newEnvR, newEnvG, newEnvB; + static s32 duration, time; + + args = script->ptrReadPos; + if (isInitialCall) { + get_model_env_color_parameters(&oldPrimR, &oldPrimG, &oldPrimB, &oldEnvR, &oldEnvG, &oldEnvB); + newPrimR = evt_get_variable(script, *args++); + newPrimG = evt_get_variable(script, *args++); + newPrimB = evt_get_variable(script, *args++); + newEnvR = evt_get_variable(script, *args++); + newEnvG = evt_get_variable(script, *args++); + newEnvB = evt_get_variable(script, *args++); + duration = evt_get_variable(script, *args++); + time = 0; + } + + if (duration > 0) { + if(time >= duration) { + return ApiStatus_DONE2; + } + time++; + set_model_env_color_parameters( + (oldPrimR + ((newPrimR - oldPrimR) * time) / duration), + (oldPrimG + ((newPrimG - oldPrimG) * time) / duration), + (oldPrimB + ((newPrimB - oldPrimB) * time) / duration), + (oldEnvR + ( (newEnvR - oldEnvR) * time) / duration), + (oldEnvG + ( (newEnvG - oldEnvG) * time) / duration), + (oldEnvB + ( (newEnvB - oldEnvB) * time) / duration)); + if (time >= duration) { + return ApiStatus_DONE2; + } + } else { + set_model_env_color_parameters(newPrimR, newPrimG, newPrimB, newEnvR, newEnvG, newEnvB); + return ApiStatus_DONE2; + } + return ApiStatus_BLOCK; +} void func_80240D54_A2AF94(s32 camID, f32 fov) { Camera* camera = &gCameras[camID]; diff --git a/src/world/area_hos/hos_05/A2EC30.c b/src/world/area_hos/hos_05/A2EC30.c index c95d022108..2cdd117d03 100644 --- a/src/world/area_hos/hos_05/A2EC30.c +++ b/src/world/area_hos/hos_05/A2EC30.c @@ -2,6 +2,11 @@ INCLUDE_ASM(s32, "world/area_hos/hos_05/A2EC30", func_802449F0_A2EC30); -INCLUDE_ASM(s32, "world/area_hos/hos_05/A2EC30", func_80244C60_A2EEA0); +ApiStatus func_80244C60_A2EEA0(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + void (*callback)(void) = (void (*)(void))evt_get_variable(script, *args++); + set_curtain_draw_callback(callback); + return ApiStatus_DONE2; +} INCLUDE_ASM(s32, "world/area_hos/hos_05/A2EC30", func_80244C8C_A2EECC); diff --git a/src/world/area_hos/hos_05/A2EF00.c b/src/world/area_hos/hos_05/A2EF00.c index 481c4836b4..8795a58aab 100644 --- a/src/world/area_hos/hos_05/A2EF00.c +++ b/src/world/area_hos/hos_05/A2EF00.c @@ -11,7 +11,53 @@ extern u8 D_802D9D73; #define NAMESPACE hos_05 +// should match when preceding bss is worked out +#ifdef NON_MATCHING +void set_model_env_color_parameters(u8 primR, u8 primG, u8 primB, u8 envR, u8 envG, u8 envB); +void get_model_env_color_parameters(u8* primR, u8* primG, u8* primB, u8* envR, u8* envG, u8* envB); + +ApiStatus func_802452C4_A2F504(Evt* script, s32 isInitialCall) { + Bytecode* args; + static u8 oldPrimR, oldPrimG, oldPrimB; + static u8 oldEnvR, oldEnvG, oldEnvB; + static s32 newPrimR, newPrimG, newPrimB; + static s32 newEnvR, newEnvG, newEnvB; + static s32 duration, time; + + args = script->ptrReadPos; + if (isInitialCall) { + get_model_env_color_parameters(&oldPrimR, &oldPrimG, &oldPrimB, &oldEnvR, &oldEnvG, &oldEnvB); + newPrimR = evt_get_variable(script, *args++); + newPrimG = evt_get_variable(script, *args++); + newPrimB = evt_get_variable(script, *args++); + newEnvR = evt_get_variable(script, *args++); + newEnvG = evt_get_variable(script, *args++); + newEnvB = evt_get_variable(script, *args++); + duration = evt_get_variable(script, *args++); + time = 0; + } + + if (duration > 0) { + time++; + set_model_env_color_parameters( + (oldPrimR + ((newPrimR - oldPrimR) * time) / duration), + (oldPrimG + ((newPrimG - oldPrimG) * time) / duration), + (oldPrimB + ((newPrimB - oldPrimB) * time) / duration), + (oldEnvR + ( (newEnvR - oldEnvR) * time) / duration), + (oldEnvG + ( (newEnvG - oldEnvG) * time) / duration), + (oldEnvB + ( (newEnvB - oldEnvB) * time) / duration)); + if (time >= duration) { + return ApiStatus_DONE2; + } + } else { + set_model_env_color_parameters(newPrimR, newPrimG, newPrimB, newEnvR, newEnvG, newEnvB); + return ApiStatus_DONE2; + } + return ApiStatus_BLOCK; +} +#else INCLUDE_ASM(s32, "world/area_hos/hos_05/A2EF00", func_802452C4_A2F504); +#endif void func_8024564C_A2F88C(void) { gDPSetCombineLERP(gMasterGfxPos++, TEXEL0, 0, SHADE, 0, TEXEL0, 0, PRIMITIVE, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, diff --git a/src/world/area_hos/hos_06/A397F0.c b/src/world/area_hos/hos_06/A397F0.c index 710a176a4f..3687a7002c 100644 --- a/src/world/area_hos/hos_06/A397F0.c +++ b/src/world/area_hos/hos_06/A397F0.c @@ -1,4 +1,8 @@ #include "hos_06.h" +#include "hud_element.h" + +extern ShopItemData D_802435EC_A3CACC[]; +extern IconHudScriptPair gItemHudScripts[]; #include "world/common/StashVars.inc.c" @@ -21,8 +25,83 @@ INCLUDE_ASM(s32, "world/area_hos/hos_06/A397F0", func_802406E0_A39BC0); extern s32 N(LetterDelivery_SavedNpcAnim); #include "world/common/LetterDelivery.inc.c" -INCLUDE_ASM(s32, "world/area_hos/hos_06/A397F0", func_80240A68_A39F48); +ApiStatus Merlow_GetPlayerStarPieces(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; -INCLUDE_ASM(s32, "world/area_hos/hos_06/A397F0", func_80240A94_A39F74); + evt_set_variable(script, *args++, gPlayerData.starPieces); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_hos/hos_06/A397F0", func_80240AD0_A39FB0); +ApiStatus Merlow_SetBadgePurchased(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 index = evt_get_variable(script, *args++); + + evt_set_variable(NULL, GSWF(1771) + index, TRUE); + return ApiStatus_DONE2; +} + +ApiStatus Merlow_ShopBadgesPopup(Evt* script, s32 isInitialCall) { + PlayerData* playerData = &gPlayerData; + PopupMenu* menu; + s32 selected, menuPos, i; + + if (isInitialCall) { + script->functionTempPtr[2] = heap_malloc(sizeof(*menu)); + menu = script->functionTempPtr[2]; + menuPos = 0; + for (i = 0; i < 15; i++) { + if (!evt_get_variable(NULL, GSWF(1771) + i)) { + ItemData* item = &gItemTable[D_802435EC_A3CACC[i].itemID]; + IconHudScriptPair* itemHudScripts = &gItemHudScripts[item->hudElemID]; + menu->userIndex[menuPos] = i; + menu->nameMsg[menuPos] = item->nameMsg; + menu->ptrIcon[menuPos] = itemHudScripts->enabled; + menu->enabled[menuPos] = playerData->starPieces >= D_802435EC_A3CACC[i].price; + if (playerData->starPieces < D_802435EC_A3CACC[i].price) { + menu->ptrIcon[menuPos] = itemHudScripts->disabled; + menu->enabled[menuPos] = FALSE; + } + menu->descMsg[menuPos] = D_802435EC_A3CACC[i].descMsg; + menu->value[menuPos] = D_802435EC_A3CACC[i].price; + menuPos++; + } + } + menu->popupType = POPUP_MENU_TRADE_FOR_BADGE; + menu->numEntries = menuPos; + menu->initialPos = 0; + create_popup_menu(menu); + script->functionTemp[0] = 0; + } + + menu = script->functionTempPtr[2]; + if (script->functionTemp[0] == 0) { + script->functionTemp[1] = menu->result; + if (script->functionTemp[1] != 0) { + hide_popup_menu(); + } else { + return ApiStatus_BLOCK; + } + } + script->functionTemp[0]++; + if (script->functionTemp[0] < 20) { + return ApiStatus_BLOCK; + } + + destroy_popup_menu(); + selected = script->functionTemp[1]; + if (selected != 0xFF) { + ShopItemData* selectedItem; + i = menu->userIndex[selected - 1]; + selectedItem = &D_802435EC_A3CACC[i]; + script->varTable[0] = selectedItem->itemID; + script->varTable[1] = selectedItem->price; + script->varTable[2] = i; + script->varTable[4] = gItemTable[selectedItem->itemID].nameMsg; + script->varTable[5] = gMoveTable[gItemTable[selectedItem->itemID].moveID].costBP; + } else { + script->varTable[0] = -1; + } + + heap_free(script->functionTempPtr[2]); + return ApiStatus_DONE2; +} diff --git a/src/world/area_hos/hos_06/A3A210.c b/src/world/area_hos/hos_06/A3A210.c index a7b9195cd1..196ef2e42b 100644 --- a/src/world/area_hos/hos_06/A3A210.c +++ b/src/world/area_hos/hos_06/A3A210.c @@ -1,3 +1,6 @@ #include "hos_06.h" -INCLUDE_ASM(s32, "world/area_hos/hos_06/A3A210", func_80240D30_A3A210); +ApiStatus func_80240D30_A3A210(Evt* script, s32 isInitialCall) { + script->varTable[0] = gGameStatusPtr->entryID; + return ApiStatus_DONE2; +} diff --git a/src/world/area_hos/hos_06/A3A230.c b/src/world/area_hos/hos_06/A3A230.c index 8b45974a01..a25bd67a2d 100644 --- a/src/world/area_hos/hos_06/A3A230.c +++ b/src/world/area_hos/hos_06/A3A230.c @@ -16,9 +16,28 @@ INCLUDE_ASM(s32, "world/area_hos/hos_06/A3A230", func_80241008_A3A4E8); #include "world/common/GetItemName.inc.c" -INCLUDE_ASM(s32, "world/area_hos/hos_06/A3A230", func_802411BC_A3A69C); +s32 func_802411BC_A3A69C(s32 badgeID) { + s32 i; -INCLUDE_ASM(s32, "world/area_hos/hos_06/A3A230", func_802411F0_A3A6D0); + for (i = 0; i < ARRAY_COUNT(gPlayerData.badges); i++) { + if (gPlayerData.badges[i] == badgeID) { + return TRUE; + } + } + return FALSE; +} + +ApiStatus func_802411F0_A3A6D0(Evt* script, s32 isInitialCall) { + u32 i; + + for (i = 0; i < 79; i++) { + evt_set_variable(NULL, LSWF(3) + i, 0); + } + for (i = 0; i < 16; i++) { + evt_set_variable(NULL, LSWF(100) + i, 0); + } + return ApiStatus_DONE2; +} INCLUDE_ASM(s32, "world/area_hos/hos_06/A3A230", func_8024126C_A3A74C); diff --git a/src/world/area_jan/jan_02/B2C470.c b/src/world/area_jan/jan_02/B2C470.c index 5389d8b211..5ea4eb7212 100644 --- a/src/world/area_jan/jan_02/B2C470.c +++ b/src/world/area_jan/jan_02/B2C470.c @@ -3,4 +3,7 @@ static char* N(exit_str_0) = "jan_01"; static char* N(exit_str_1) = "jan_03"; -INCLUDE_ASM(s32, "world/area_jan/jan_02/B2C470", func_80240000_B2C470); +ApiStatus func_80240000_B2C470(Evt* script, s32 isInitialCall) { + bgm_set_track_volumes(0, 0); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kmr/kmr_00/8ABF90.c b/src/world/area_kmr/kmr_00/8ABF90.c index 6a88217297..edb626dc4f 100644 --- a/src/world/area_kmr/kmr_00/8ABF90.c +++ b/src/world/area_kmr/kmr_00/8ABF90.c @@ -4,9 +4,56 @@ static char* N(exit_str_0) = "kmr_02"; static char* N(exit_str_1) = "kmr_02\0"; -INCLUDE_ASM(s32, "world/area_kmr/kmr_00/8ABF90", func_80240000_8ABF90); +extern s16 D_80242D60_8AECF0[8]; -INCLUDE_ASM(s32, "world/area_kmr/kmr_00/8ABF90", func_80240388_8AC318); +void set_model_env_color_parameters(u8 primR, u8 primG, u8 primB, u8 envR, u8 envG, u8 envB); +void get_model_env_color_parameters(u8* primR, u8* primG, u8* primB, u8* envR, u8* envG, u8* envB); + +ApiStatus func_80240000_8ABF90(Evt* script, s32 isInitialCall) { + Bytecode* args; + static u8 oldPrimR, oldPrimG, oldPrimB; + static u8 oldEnvR, oldEnvG, oldEnvB; + static s32 newPrimR, newPrimG, newPrimB; + static s32 newEnvR, newEnvG, newEnvB; + static s32 duration, time; + + args = script->ptrReadPos; + if (isInitialCall) { + get_model_env_color_parameters(&oldPrimR, &oldPrimG, &oldPrimB, &oldEnvR, &oldEnvG, &oldEnvB); + newPrimR = evt_get_variable(script, *args++); + newPrimG = evt_get_variable(script, *args++); + newPrimB = evt_get_variable(script, *args++); + newEnvR = evt_get_variable(script, *args++); + newEnvG = evt_get_variable(script, *args++); + newEnvB = evt_get_variable(script, *args++); + duration = evt_get_variable(script, *args++); + time = 0; + } + + if (duration > 0) { + time++; + set_model_env_color_parameters( + (oldPrimR + ((newPrimR - oldPrimR) * time) / duration), + (oldPrimG + ((newPrimG - oldPrimG) * time) / duration), + (oldPrimB + ((newPrimB - oldPrimB) * time) / duration), + (oldEnvR + ( (newEnvR - oldEnvR) * time) / duration), + (oldEnvG + ( (newEnvG - oldEnvG) * time) / duration), + (oldEnvB + ( (newEnvB - oldEnvB) * time) / duration)); + if (time >= duration) { + return ApiStatus_DONE2; + } + } else { + set_model_env_color_parameters(newPrimR, newPrimG, newPrimB, newEnvR, newEnvG, newEnvB); + return ApiStatus_DONE2; + } + return ApiStatus_BLOCK; +} + +ApiStatus func_80240388_8AC318(Evt* script, s32 isInitialCall) { + mdl_set_all_fog_mode(3); + *D_801512F0 = 3; + return ApiStatus_DONE2; +} ApiStatus func_802403B8_8AC348(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -25,31 +72,123 @@ ApiStatus func_802404A0_8AC430(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -INCLUDE_ASM(s32, "world/area_kmr/kmr_00/8ABF90", func_802404E8_8AC478); +ApiStatus func_802404E8_8AC478(Evt* script, s32 isInitialCall) { + s32 pitch = evt_get_variable(script, script->varTable[0]); + gCameras->controlSettings.boomPitch = pitch * 0.001f; + return ApiStatus_DONE2; +} ApiStatus func_80240530_8AC4C0(Evt* script, s32 isInitialCall) { - Npc* npc = get_npc_unsafe(evt_get_variable(script, *script->ptrReadPos)); + Bytecode* args = script->ptrReadPos; + s32 npcID = evt_get_variable(script, *args++); + Npc* npc = get_npc_unsafe(npcID); fx_sparkles(3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f); return ApiStatus_DONE2; } ApiStatus func_80240584_8AC514(Evt* script, s32 isInitialCall) { - func_8005553C(0, 2000); + snd_ambient_8005553C(0, 2000); return ApiStatus_DONE2; } ApiStatus func_802405A8_8AC538(Evt* script, s32 isInitialCall) { - func_80055590(0, 2000); + snd_ambient_80055590(0, 2000); return ApiStatus_DONE2; } ApiStatus func_802405CC_8AC55C(Evt* script, s32 isInitialCall) { - func_800554E8(0, 1000); + snd_ambient_slow_fade_out(0, 1000); return ApiStatus_DONE2; } -INCLUDE_ASM(s32, "world/area_kmr/kmr_00/8ABF90", func_802405F0_8AC580); +ApiStatus func_802405F0_8AC580(Evt* script, s32 isInitialCall) { + enum { + FUNC_STATE_0 = 0, + FUNC_STATE_1 = 1, + FUNC_STATE_2 = 2, + FUNC_STATE_3 = 3 + }; + + Bytecode* args = script->ptrReadPos; + ApiStatus retVal = ApiStatus_BLOCK; + Npc* npc; + + if (isInitialCall) { + script->functionTemp[1] = evt_get_variable(script, *args++); + script->functionTemp[2] = evt_get_variable(script, *args++); + script->varTable[15] = evt_get_variable(script, *args++); + script->functionTemp[0] = FUNC_STATE_0; + script->functionTemp[3] = 0; + } + + npc = get_npc_unsafe(script->functionTemp[1]); + switch (script->functionTemp[0]) { + case FUNC_STATE_0: + npc->pos.x = 0.0f; + npc->pos.y = -1000.0f; + npc->pos.z = -50.0f; + npc->moveToPos.x = script->functionTemp[3] * 3; + npc->moveToPos.y = 3.0f; + if (script->functionTemp[3] >= script->varTable[15]) { + npc->pos.y = 100.0f; + add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f); + npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f; + sfx_play_sound_at_position(0xB000001E, 0, npc->pos.x, npc->pos.y, npc->pos.z); + fx_sparkles(0, npc->pos.x, npc->pos.y + 20.0f, npc->pos.z, 20.0f); + script->functionTemp[0] = FUNC_STATE_1; + } + break; + case FUNC_STATE_1: + npc->pos.x = 0.0f; + npc->pos.z = -50.0f; + npc->pos.y = 100.0f; + add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f); + npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f; + if ((script->functionTemp[3] + script->functionTemp[2]) == + (((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) { + fx_sparkles(3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f); + } + if (script->functionTemp[3] > 256) { + script->functionTemp[0] = FUNC_STATE_2; + script->varTable[14] = 0; + } + break; + case FUNC_STATE_2: + npc->pos.x = 0.0f; + npc->pos.z = -50.0f; + npc->pos.y = 100.0f - (script->varTable[14] * 0.3f); + add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f); + npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f; + if ((script->functionTemp[3] + script->functionTemp[2]) == + (((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) { + fx_sparkles(3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f); + } + if (script->varTable[14]++ > 180) { + script->functionTemp[0] = FUNC_STATE_3; + script->varTable[14] = 0; + } + break; + case FUNC_STATE_3: + npc->moveToPos.y -= 0.03f; + npc->pos.x = 0.0f; + npc->pos.z = -50.0f; + npc->pos.y = 45.999996f; + add_vec2D_polar(&npc->pos.x, &npc->pos.z, 70.0f, npc->moveToPos.x + (script->functionTemp[2] * 51) + 153.0f); + npc->pos.y += (-npc->pos.z + -50.0f + 70.0f) * 0.15f; + if ((script->functionTemp[3] + script->functionTemp[2]) == + (((script->functionTemp[3] + script->functionTemp[2]) / 13) * 13)) { + fx_sparkles(3, npc->pos.x, npc->pos.y + 10.0f, npc->pos.z, 10.0f); + } + if (npc->moveToPos.y < 0.0f) { + retVal = ApiStatus_DONE2; + } + break; + } + script->functionTemp[3]++; + npc->moveToPos.x += npc->moveToPos.y; + return retVal; +} ApiStatus func_80240BD8_8ACB68(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -73,4 +212,21 @@ ApiStatus func_80240BD8_8ACB68(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -INCLUDE_ASM(s32, "world/area_kmr/kmr_00/8ABF90", func_80240CB0_8ACC40); +ApiStatus func_80240CB0_8ACC40(Evt* script, s32 isInitialCall) { + s32 retVal; + if (isInitialCall) { + script->functionTemp[1] = 0; + script->functionTempPtr[2] = get_npc_safe(script->owner2.npcID); + script->functionTemp[3] = D_80242D60_8AECF0[script->owner2.npcID - 1]; + } + if (script->functionTemp[3] == 0) { + Npc* npc = script->functionTempPtr[2]; + npc->verticalRenderOffset = sin_deg(script->functionTempF[1]) * 1.5f; + script->functionTempF[1] = clamp_angle(script->functionTempF[1] + 18.0f); + retVal = ApiStatus_BLOCK; + } else { + script->functionTemp[3]--; + retVal = ApiStatus_BLOCK; + } + return retVal; +} diff --git a/src/world/area_kmr/kmr_02/8B0070.c b/src/world/area_kmr/kmr_02/8B0070.c index ca7aab9948..2ac8d8a821 100644 --- a/src/world/area_kmr/kmr_02/8B0070.c +++ b/src/world/area_kmr/kmr_02/8B0070.c @@ -70,7 +70,51 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_8024295C_8B29CC); INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80242BA8_8B2C18); +// will match when preceding bss is worked out +#ifdef NON_MATCHING +s32 func_80242BC0_8B2C30(Evt* script, s32 isInitialCall) { + Bytecode* args; + + static u8 oldPrimR, oldPrimG, oldPrimB; + static u8 oldEnvR, oldEnvG, oldEnvB; + + s32 newEnvR, newEnvB, newEnvG; + s32 newPrimR, newPrimG, newPrimB; + s32 duration; + + args = script->ptrReadPos; + newPrimR = evt_get_variable(script, *args++); + newPrimG = evt_get_variable(script, *args++); + newPrimB = evt_get_variable(script, *args++); + newEnvR = evt_get_variable(script, *args++); + newEnvG = evt_get_variable(script, *args++); + newEnvB = evt_get_variable(script, *args++); + duration = evt_get_variable(script, *args++); + if (isInitialCall) { + get_model_env_color_parameters(&oldPrimR, &oldPrimG, &oldPrimB, &oldEnvR, &oldEnvG, &oldEnvB); + script->functionTemp[0] = 0; + } + if (duration > 0) { + set_model_env_color_parameters( + oldPrimR + ((newPrimR - oldPrimR) * script->functionTemp[0]) / duration, + oldPrimG + ((newPrimG - oldPrimG) * script->functionTemp[0]) / duration, + oldPrimB + ((newPrimB - oldPrimB) * script->functionTemp[0]) / duration, + oldEnvR + ( (newEnvR - oldEnvR) * script->functionTemp[0]) / duration, + oldEnvG + ( (newEnvG - oldEnvG) * script->functionTemp[0]) / duration, + oldEnvB + ( (newEnvB - oldEnvB) * script->functionTemp[0]) / duration); + script->functionTemp[0]++; + if (duration < script->functionTemp[0]) { + return 2; + } + } else { + set_model_env_color_parameters(newPrimR, newPrimG, newPrimB, newEnvR, newEnvG, newEnvB); + return 2; + } + return 0; +} +#else INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80242BC0_8B2C30); +#endif INCLUDE_ASM(s32, "world/area_kmr/kmr_02/8B0070", func_80242F08_8B2F78); diff --git a/src/world/area_kmr/kmr_20/8EBE20.c b/src/world/area_kmr/kmr_20/8EBE20.c index 6550f6607a..812c49f927 100644 --- a/src/world/area_kmr/kmr_20/8EBE20.c +++ b/src/world/area_kmr/kmr_20/8EBE20.c @@ -7,4 +7,7 @@ static char* N(exit_str_3) = "kmr_02"; static char* N(exit_str_4) = "mac_00\0\0"; static char* N(exit_str_5) = ""; -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE20", func_80240000_8EBE20); +ApiStatus func_80240000_8EBE20(Evt* script, s32 isInitialCall) { + snd_ambient_slow_fade_out(0, 500); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kmr/kmr_20/8EBE50.c b/src/world/area_kmr/kmr_20/8EBE50.c index dbe55e4f05..a974009bef 100644 --- a/src/world/area_kmr/kmr_20/8EBE50.c +++ b/src/world/area_kmr/kmr_20/8EBE50.c @@ -4,9 +4,15 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240310_8EC130); -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240330_8EC150); +ApiStatus func_80240330_8EC150(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x3F); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240358_8EC178); +ApiStatus func_80240358_8EC178(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x7F); + return ApiStatus_DONE2; +} #include "common/foliage.inc.c" @@ -22,4 +28,7 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240B48_8EC968); INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240B54_8EC974); -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EBE50", func_80240DA4_8ECBC4); +ApiStatus func_80240DA4_8ECBC4(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 1); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kmr/kmr_20/8ECBF0.c b/src/world/area_kmr/kmr_20/8ECBF0.c index 0badecb53e..59dd9bfe53 100644 --- a/src/world/area_kmr/kmr_20/8ECBF0.c +++ b/src/world/area_kmr/kmr_20/8ECBF0.c @@ -1,5 +1,8 @@ #include "kmr_20.h" -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ECBF0", func_80240DD0_8ECBF0); +ApiStatus func_80240DD0_8ECBF0(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x3F); + return ApiStatus_DONE2; +} #include "world/common/UnsetCamera0MoveFlag1.inc.c" diff --git a/src/world/area_kmr/kmr_20/8ED0C0.c b/src/world/area_kmr/kmr_20/8ED0C0.c index 98baab0b28..87d64db595 100644 --- a/src/world/area_kmr/kmr_20/8ED0C0.c +++ b/src/world/area_kmr/kmr_20/8ED0C0.c @@ -2,8 +2,14 @@ #include "world/common/atomic/ToadHouse.inc.c" -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ED0C0", func_8024159C_8ED3BC); +ApiStatus func_8024159C_8ED3BC(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 1); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ED0C0", func_802415C4_8ED3E4); +ApiStatus func_802415C4_8ED3E4(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x3F); + return ApiStatus_DONE2; +} #include "world/common/WaitForPlayerToLand.inc.c" diff --git a/src/world/area_kmr/kmr_20/8ED5A0.c b/src/world/area_kmr/kmr_20/8ED5A0.c index 4e9636f1e8..20ce43297b 100644 --- a/src/world/area_kmr/kmr_20/8ED5A0.c +++ b/src/world/area_kmr/kmr_20/8ED5A0.c @@ -12,4 +12,7 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ED5A0", func_80241C9C_8EDABC); INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ED5A0", func_80241CF0_8EDB10); -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8ED5A0", func_80241D1C_8EDB3C); +ApiStatus func_80241D1C_8EDB3C(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x3F); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kmr/kmr_20/8EDB70.c b/src/world/area_kmr/kmr_20/8EDB70.c index 39cb18a455..b4939558bb 100644 --- a/src/world/area_kmr/kmr_20/8EDB70.c +++ b/src/world/area_kmr/kmr_20/8EDB70.c @@ -10,6 +10,12 @@ INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_80242084_8EDEA4); INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_802420EC_8EDF0C); -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_80242144_8EDF64); +ApiStatus func_80242144_8EDF64(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x3F); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_kmr/kmr_20/8EDB70", func_8024216C_8EDF8C); +ApiStatus func_8024216C_8EDF8C(Evt* script, s32 isInitialCall) { + au_ambience_set_volume(0, 1000, 0x7F); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kpa/kpa_16/A5A340.c b/src/world/area_kpa/kpa_16/A5A340.c index 272528fca1..94e0902c08 100644 --- a/src/world/area_kpa/kpa_16/A5A340.c +++ b/src/world/area_kpa/kpa_16/A5A340.c @@ -1,7 +1,16 @@ #include "kpa_16.h" -INCLUDE_ASM(s32, "world/area_kpa/kpa_16/A5A340", func_80240310_A5A340); +ApiStatus func_80240310_A5A340(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + f32 zoom = evt_get_variable(script, *args++); + + set_screen_overlay_params_front(0, zoom); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_kpa/kpa_16/A5A340", func_8024034C_A5A37C); +ApiStatus func_8024034C_A5A37C(Evt* script, s32 isInitialCall) { + snd_ambient_80055618(0, 1); + return ApiStatus_DONE2; +} #include "world/common/GetFloorCollider.inc.c" diff --git a/src/world/area_kzn/kzn_06/C6CD10.c b/src/world/area_kzn/kzn_06/C6CD10.c index f271a655c4..6b132e96f5 100644 --- a/src/world/area_kzn/kzn_06/C6CD10.c +++ b/src/world/area_kzn/kzn_06/C6CD10.c @@ -7,4 +7,7 @@ INCLUDE_ASM(s32, "world/area_kzn/kzn_06/C6CD10", func_80240738_C6D058); INCLUDE_ASM(s32, "world/area_kzn/kzn_06/C6CD10", func_802407FC_C6D11C); -INCLUDE_ASM(s32, "world/area_kzn/kzn_06/C6CD10", func_80240A44_C6D364); +ApiStatus func_80240A44_C6D364(Evt* script, s32 isInitialCall) { + snd_ambient_80055618(0, 1); + return ApiStatus_DONE2; +} diff --git a/src/world/area_kzn/kzn_20/C96240.c b/src/world/area_kzn/kzn_20/C96240.c index fddf994021..77b5a9f952 100644 --- a/src/world/area_kzn/kzn_20/C96240.c +++ b/src/world/area_kzn/kzn_20/C96240.c @@ -17,6 +17,10 @@ INCLUDE_ASM(s32, "world/area_kzn/kzn_20/C96240", func_802406E0_C96610); extern s32 N(LetterDelivery_SavedNpcAnim); #include "world/common/LetterDelivery.inc.c" -INCLUDE_ASM(s32, "world/area_kzn/kzn_20/C96240", func_80240A68_C96998); +ApiStatus func_80240A68_C96998(Evt* script, s32 isInitialCall) { + snd_ambient_80055618(0, 1); + return ApiStatus_DONE2; +} + #include "world/common/GetFloorCollider.inc.c" diff --git a/src/world/area_kzn/kzn_22/C9A540.c b/src/world/area_kzn/kzn_22/C9A540.c index 4afeaaec4a..f11e79dd60 100644 --- a/src/world/area_kzn/kzn_22/C9A540.c +++ b/src/world/area_kzn/kzn_22/C9A540.c @@ -4,4 +4,7 @@ #include "world/common/GetFloorCollider.inc.c" #define NAMESPACE kzn_22 -INCLUDE_ASM(s32, "world/area_kzn/kzn_22/C9A540", func_8024036C_C9A56C); +ApiStatus func_8024036C_C9A56C(Evt* script, s32 isInitialCall) { + snd_ambient_80055618(0, 1); + return ApiStatus_DONE2; +} diff --git a/src/world/area_mac/mac_00/7ECFD0.c b/src/world/area_mac/mac_00/7ECFD0.c index 924f6b3d3d..085542a338 100644 --- a/src/world/area_mac/mac_00/7ECFD0.c +++ b/src/world/area_mac/mac_00/7ECFD0.c @@ -1,5 +1,5 @@ #include "mac_00.h" -#include "world/common/UnkMusicFunc.inc.c" +#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c" INCLUDE_ASM(s32, "world/area_mac/mac_00/7ECFD0", func_802423F0_7ED100); diff --git a/src/world/area_mac/mac_01/8017D0.c b/src/world/area_mac/mac_01/8017D0.c index 755c939944..797fe66cb2 100644 --- a/src/world/area_mac/mac_01/8017D0.c +++ b/src/world/area_mac/mac_01/8017D0.c @@ -4,7 +4,7 @@ extern u8 D_80258407_818C87; -#include "world/common/UnkMusicFunc.inc.c" +#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c" #include "world/common/enemy/PatrolNoAttackAI.inc.c" diff --git a/src/world/area_mac/mac_02/823BF0.c b/src/world/area_mac/mac_02/823BF0.c index 22063068e9..4468c3915e 100644 --- a/src/world/area_mac/mac_02/823BF0.c +++ b/src/world/area_mac/mac_02/823BF0.c @@ -106,4 +106,4 @@ ApiStatus func_802430D0_826390(Evt* script, s32 isInitialCall) { extern s32 N(LetterDelivery_SavedNpcAnim); #include "world/common/LetterDelivery.inc.c" -#include "world/common/UnkMusicFunc.inc.c" +#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c" diff --git a/src/world/area_mac/mac_04/844AC0.c b/src/world/area_mac/mac_04/844AC0.c index 325929242e..da9cf60dab 100644 --- a/src/world/area_mac/mac_04/844AC0.c +++ b/src/world/area_mac/mac_04/844AC0.c @@ -1,3 +1,3 @@ #include "mac_04.h" -#include "world/common/UnkMusicFunc.inc.c" +#include "world/common/atomic/MonitorMusicProximityTrigger.inc.c" diff --git a/src/world/area_mgm/mgm_00/E0F980.c b/src/world/area_mgm/mgm_00/E0F980.c index eff2d2a3ae..26e215bd2c 100644 --- a/src/world/area_mgm/mgm_00/E0F980.c +++ b/src/world/area_mgm/mgm_00/E0F980.c @@ -1,6 +1,5 @@ #include "mgm_00.h" -void snd_start_sound(s32 soundID, u8 volume, u8 pan); void msg_draw_frame(s32 posX, s32 posY, s32 sizeX, s32 sizeY, s32 style, s32 palette, s32 fading, s32 bgAlpha, s32 frameAlpha); extern Gfx D_80243C50_E123F0[]; diff --git a/src/world/area_nok/nok_01/9C53E0.c b/src/world/area_nok/nok_01/9C53E0.c index 7b7069968e..f5999714ad 100644 --- a/src/world/area_nok/nok_01/9C53E0.c +++ b/src/world/area_nok/nok_01/9C53E0.c @@ -103,9 +103,9 @@ ApiStatus func_802427C0_9C7BA0(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; evt_get_variable(script, *args++); - func_80055448(16); - func_80055760(4); - func_8005566C(0, 250, 1); + snd_ambient_80055448(16); + snd_ambient_80055760(4); + au_ambience_set_volume(0, 250, 1); return ApiStatus_DONE2; } @@ -114,16 +114,29 @@ INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_80242804_9C7BE4); INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_80242858_9C7C38); ApiStatus func_80242898_9C7C78(Evt* script, s32 isInitialCall) { - func_80055848(4); + snd_ambient_80055848(4); return ApiStatus_DONE2; } ApiStatus func_802428B8_9C7C98(Evt* script, s32 isInitialCall) { - func_800557CC(100); + snd_ambient_800557CC(100); return ApiStatus_DONE2; } +// Requires BSS +#ifdef NON_MATCHING +ApiStatus func_802428D8_9C7CB8(Evt* script, s32 isInitialCall) { + static s16 D_80250810_9D5BF0[] = { 0, 2, 1, 4 }; + + Bytecode* args = script->ptrReadPos; + s32 index = evt_get_variable(script, *args++); + + snd_ambient_80055848(D_80250810_9D5BF0[index]); + return ApiStatus_DONE2; +} +#else INCLUDE_ASM(s32, "world/area_nok/nok_01/9C53E0", func_802428D8_9C7CB8); +#endif ApiStatus func_80242910_9C7CF0(Evt* script, s32 isInitialCall) { gPlayerData.tradeEventStartTime = gPlayerData.frameCounter; diff --git a/src/world/area_nok/nok_04/9EDBF0.c b/src/world/area_nok/nok_04/9EDBF0.c index c9b308523f..199732c5b7 100644 --- a/src/world/area_nok/nok_04/9EDBF0.c +++ b/src/world/area_nok/nok_04/9EDBF0.c @@ -206,7 +206,7 @@ ApiStatus func_802406C4_9EE2B4(Evt* script, s32 isInitialCall) { script2 = start_script(phi_a0, EVT_PRIORITY_1, 0); script->varTable[temp_s1_2 + 6] = script2->id; - switch(temp_s1_2) { + switch (temp_s1_2) { case 0: script2->varTable[0] = 0x4C; break; diff --git a/src/world/area_obk/obk_05/BCD060.c b/src/world/area_obk/obk_05/BCD060.c index 9842977ac0..1f38229189 100644 --- a/src/world/area_obk/obk_05/BCD060.c +++ b/src/world/area_obk/obk_05/BCD060.c @@ -1,4 +1,7 @@ #include "obk_05.h" +#include "model.h" +#include "mapfs/obk_05_shape.h" +#include "mapfs/obk_05_hit.h" static char* N(exit_str_0) = "obk_01"; static char* N(exit_str_1) = "obk_06"; @@ -7,6 +10,193 @@ static char* N(exit_str_1) = "obk_06"; #include "world/common/SetCamera0MoveFlag1.inc.c" -INCLUDE_ASM(s32, "world/area_obk/obk_05/BCD060", func_80240038_BCD098); +ApiStatus N(RetroJar_AwaitPlayerEntry)(Evt* script, s32 isInitialCall) { + if (gCollisionStatus.currentFloor == COLLIDER_o420) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} -INCLUDE_ASM(s32, "world/area_obk/obk_05/BCD060", func_80240050_BCD0B0); +ApiStatus N(RockingChair_UpdatePhysics)(Evt* script, s32 isInitialCall) { + typedef struct RockingChairPhysics { + /* 0x00 */ f32 angleDelta; + /* 0x04 */ f32 angularAccel; + /* 0x08 */ f32 rotationAngle; + /* 0x0C */ f32 verticalOffset; + /* 0x10 */ f32 angleB; + /* 0x14 */ f32 angleA; + /* 0x18 */ f32 mass; + /* 0x1C */ f32 equilibriumAngle; + } RockingChairPhysics; // size = 0x20 + + enum RockingChairState { + CHAIR_STATE_INITIAL = 0, + CHAIR_STATE_PLAYER_TOUCHING = 1, + CHAIR_STATE_PLAYER_NOT_TOUCHING = 2 + }; + + PlayerStatus* playerStatus = &gPlayerStatus; + CollisionStatus* collisionStatus = &gCollisionStatus; + RockingChairPhysics* physics; + f32 centerX, centerY, centerZ; + Matrix4f tempMtx; + Model* model; + s16 currentFloor; + + if (isInitialCall) { + physics = heap_malloc(sizeof(*physics)); + script->functionTempPtr[1] = physics; + physics->angleDelta = 0; + physics->verticalOffset = 0; + physics->rotationAngle = 0; + physics->angleB = 0; + physics->angleA = 0; + physics->angularAccel = 0.1f; + physics->mass = 3.0f; + script->functionTemp[0] = CHAIR_STATE_INITIAL; + script->functionTemp[2] = 0; + script->functionTemp[3] = 0; + } + + physics = script->functionTempPtr[1]; + switch (script->functionTemp[0]) { + case CHAIR_STATE_INITIAL: + if (collisionStatus->currentFloor == COLLIDER_i3) { + script->functionTemp[0] = CHAIR_STATE_PLAYER_TOUCHING; + } + if (collisionStatus->currentFloor == COLLIDER_i2) { + script->functionTemp[0] = CHAIR_STATE_PLAYER_TOUCHING; + } + physics->angleDelta = 0.0f; + physics->verticalOffset = 0.0f; + physics->angleB = 0.0f; + physics->angleA = 0.0f; + physics->rotationAngle = 0.0f; + physics->angularAccel = 0.1f; + physics->mass = 3.0f; + physics->equilibriumAngle = 20.0f; + break; + case CHAIR_STATE_PLAYER_TOUCHING: + //TODO odd match + currentFloor = collisionStatus->currentFloor; + if (currentFloor != COLLIDER_i3 && collisionStatus->currentFloor != COLLIDER_i2) { + script->functionTemp[3] = 120; // settle time + script->functionTemp[0] = CHAIR_STATE_PLAYER_NOT_TOUCHING; + } + if (fabsf(physics->rotationAngle) < 5.0f) { + physics->angularAccel = fabsf(0.0 - playerStatus->position.x) / 200.0f; + } else { + physics->angularAccel = 0.1f; + } + if (playerStatus->position.x <= 0.0) { + physics->angleB += physics->angularAccel; + physics->equilibriumAngle = SQ(fabsf(0.0 - playerStatus->position.x)) / 50.0f; + if (physics->equilibriumAngle > 15.0f) { + physics->equilibriumAngle = 15.0f; + } + if (physics->rotationAngle > physics->equilibriumAngle) { + physics->angleA += physics->angularAccel * physics->mass; + } + } else { + physics->angleA += physics->angularAccel; + physics->equilibriumAngle = -SQ(-fabsf(0.0 - playerStatus->position.x) * 0.5f) / 50.0f; + if (physics->equilibriumAngle < -5.0f) { + physics->equilibriumAngle = -5.0f; + } + if (physics->rotationAngle < physics->equilibriumAngle) { + physics->angleB += physics->angularAccel * physics->mass; + } + } + if ((physics->angleB > 100.0) && (physics->angleA > 100.0)) { + physics->angleB -= 100.0; + physics->angleA -= 100.0; + } + // clamp difference to 1.5 degrees + if (fabsf(physics->angleB - physics->angleA) > 1.5) { + if (physics->angleA > physics->angleB) { + physics->angleA = physics->angleB + 1.5; + } else { + physics->angleB = physics->angleA + 1.5; + } + } + physics->angleDelta = physics->angleB - physics->angleA; + physics->rotationAngle += physics->angleDelta; + break; + case CHAIR_STATE_PLAYER_NOT_TOUCHING: + if (collisionStatus->currentFloor == COLLIDER_i3) { + script->functionTemp[0] = CHAIR_STATE_PLAYER_TOUCHING; + } + if (collisionStatus->currentFloor == COLLIDER_i2) { + script->functionTemp[0] = CHAIR_STATE_PLAYER_TOUCHING; + } + + physics->angularAccel = 0.1f; + physics->equilibriumAngle = 0; + physics->angleB += physics->angularAccel; + + if (physics->rotationAngle > physics->equilibriumAngle) { + physics->angleA += physics->angularAccel * physics->mass; + } + if ((physics->angleB > 100.0) && ( physics->angleA > 100.0)) { + physics->angleB -= 100.0; + physics->angleA -= 100.0; + } + + if (fabsf(physics->angleB - physics->angleA) > 0.5) { + if (physics->angleA > physics->angleB) { + physics->angleA = physics->angleB + 0.5; + } else { + physics->angleB = physics->angleA + 0.5; + } + } + if (script->functionTemp[3] < 0) { + f32 zero = 0.0f; + physics->angleA = zero; + physics->angleB = zero; + physics->angleDelta = zero; + physics->rotationAngle = zero; + } else { + script->functionTemp[3]--; + } + physics->angleDelta = physics->angleB - physics->angleA; + physics->rotationAngle += physics->angleDelta; + break; + } + + // play creak sound once per cycle + if (physics->rotationAngle <= -7.0f) { + if (script->functionTemp[2] != -1) { + get_collider_center(COLLIDER_i3, ¢erX, ¢erY, ¢erZ); + sfx_play_sound_at_position(SOUND_CREAKY_ROCKING_CHAIR, 0, centerX, centerY, centerZ); + script->functionTemp[2] = -1; + } + } else { + script->functionTemp[2] = 0; + } + + physics->verticalOffset = SQ(physics->rotationAngle) / 90.0f; + + model = get_model_from_list_index(get_model_list_index_from_tree_index(MODEL_i3)); + model->flags |= (MODEL_FLAGS_USES_TRANSFORM_MATRIX | MODEL_FLAGS_HAS_TRANSFORM_APPLIED); + guTranslateF(model->transformMatrix, 0.0f, physics->verticalOffset, 0.0f); + guRotateF(tempMtx, physics->rotationAngle, 0.0f, 0.0f, 1.0f); + guMtxCatF(model->transformMatrix, tempMtx, model->transformMatrix); + update_collider_transform(COLLIDER_i3); + update_collider_transform(COLLIDER_i2); + + model = get_model_from_list_index(get_model_list_index_from_tree_index(MODEL_i2)); + model->flags |= (MODEL_FLAGS_USES_TRANSFORM_MATRIX | MODEL_FLAGS_HAS_TRANSFORM_APPLIED); + guTranslateF(model->transformMatrix, 0.0f, physics->verticalOffset, 0.0f); + guRotateF(tempMtx, physics->rotationAngle, 0.0f, 0.0f, 1.0f); + guMtxCatF(model->transformMatrix, tempMtx, model->transformMatrix); + + model = get_model_from_list_index(get_model_list_index_from_tree_index(MODEL_i1)); + model->flags |= (MODEL_FLAGS_USES_TRANSFORM_MATRIX | MODEL_FLAGS_HAS_TRANSFORM_APPLIED); + guTranslateF(model->transformMatrix, 0.0f, physics->verticalOffset, 0.0f); + guRotateF(tempMtx, physics->rotationAngle, 0.0f, 0.0f, 1.0f); + guMtxCatF(model->transformMatrix, tempMtx, model->transformMatrix); + update_collider_transform(COLLIDER_i1); + + return ApiStatus_BLOCK; +} diff --git a/src/world/area_obk/obk_05/BCD7D0.c b/src/world/area_obk/obk_05/BCD7D0.c index 30bf54043e..d48cebf149 100644 --- a/src/world/area_obk/obk_05/BCD7D0.c +++ b/src/world/area_obk/obk_05/BCD7D0.c @@ -1,8 +1,19 @@ #include "obk_05.h" -INCLUDE_ASM(s32, "world/area_obk/obk_05/BCD7D0", func_80240770_BCD7D0); +extern s16 D_8024100C_BCE06C[4]; -INCLUDE_ASM(s32, "world/area_obk/obk_05/BCD7D0", func_802407A0_BCD800); +ApiStatus func_80240770_BCD7D0(Evt* script, s32 isInitialCall) { + if (gPlayerStatus.position.y < -50.0f) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} + +ApiStatus func_802407A0_BCD800(Evt* script, s32 isInitialCall) { + script->functionTemp[1] = 0; + return ApiStatus_DONE2; +} ApiStatus func_802407AC_BCD80C(Evt* script, s32 isInitialCall) { Npc* npc = get_npc_safe(script->owner2.npcID); @@ -38,4 +49,32 @@ ApiStatus func_802407AC_BCD80C(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -INCLUDE_ASM(s32, "world/area_obk/obk_05/BCD7D0", func_80240934_BCD994); +ApiStatus func_80240934_BCD994(Evt* script, s32 isInitialCall) { + s32 var0 = script->varTable[0]; + s32 var1 = script->varTable[1]; + s32 temp; + + if (var1 == 0) { + script->functionTemp[2] = D_8024100C_BCE06C[rand_int(3)]; + var1 = rand_int(50) + 30; + } + var1--; + + temp = script->functionTemp[2]; + if (var0 < temp) { + var0 += 10; + if (temp < var0) { + var0 = temp; + } + } + if (temp < var0) { + var0 -= 10; + if (var0 < temp) { + var0 = temp; + } + } + + script->varTable[0] = var0; + script->varTable[1] = var1; + return ApiStatus_DONE2; +} diff --git a/src/world/area_sbk/sbk_02/92A2B0.c b/src/world/area_sbk/sbk_02/92A2B0.c index c1fe2dde20..06010a2e6e 100644 --- a/src/world/area_sbk/sbk_02/92A2B0.c +++ b/src/world/area_sbk/sbk_02/92A2B0.c @@ -10,15 +10,15 @@ static char* N(exit_str_5) = ""; void get_model_env_color_parameters(u8* arg0, u8* arg1, u8* arg2, u8* arg3, u8* arg4, u8* arg5); -s32 func_80240000_92A2B0(void) { - s32 phi; +s32 N(GetTattle)(void) { + s32 msg; if (evt_get_variable(NULL, EVT_STORY_PROGRESS) > STORY_CH2_GOT_PULSE_STONE) { - phi = 0x190063; + msg = MESSAGE_ID(0x19, 0x63); } else { - phi = 0x190062; + msg = MESSAGE_ID(0x19, 0x62); } - return phi; + return msg; } #include "world/common/atomic/UnkFunc27.inc.c" diff --git a/src/world/area_sbk/sbk_56/953FC0.c b/src/world/area_sbk/sbk_56/953FC0.c index afb17d9d3a..f9b72d9836 100644 --- a/src/world/area_sbk/sbk_56/953FC0.c +++ b/src/world/area_sbk/sbk_56/953FC0.c @@ -7,8 +7,14 @@ static char* N(exit_str_3) = ""; #include "world/common/SpawnSunEffect.inc.c" -INCLUDE_ASM(s32, "world/area_sbk/sbk_56/953FC0", func_80240038_953FF8); +ApiStatus func_80240038_953FF8(void) { + bgm_set_variation(0, 1); + return ApiStatus_DONE2; +} -INCLUDE_ASM(s32, "world/area_sbk/sbk_56/953FC0", func_8024005C_95401C); +ApiStatus func_8024005C_95401C(void) { + bgm_set_variation(0, 0); + return ApiStatus_DONE2; +} #include "world/common/atomic/SuperBlock.inc.c" diff --git a/src/world/area_tik/tik_17/892A20.c b/src/world/area_tik/tik_17/892A20.c index 6af547844b..e62e4dde11 100644 --- a/src/world/area_tik/tik_17/892A20.c +++ b/src/world/area_tik/tik_17/892A20.c @@ -6,7 +6,7 @@ static char* N(exit_str_2) = "tik_22"; static char* N(exit_str_3) = ""; ApiStatus func_80240000_892A20(Evt* script, s32 isInitialCall) { - func_8014AB0C(0, 2); + bgm_set_track_volumes(0, 2); return ApiStatus_DONE2; } diff --git a/src/world/area_tik/tik_22/89FEC0.c b/src/world/area_tik/tik_22/89FEC0.c index d1d55d4c9b..ed68c89828 100644 --- a/src/world/area_tik/tik_22/89FEC0.c +++ b/src/world/area_tik/tik_22/89FEC0.c @@ -4,6 +4,6 @@ static char* N(exit_str_0) = "tik_21"; static char* N(exit_str_1) = "tik_17"; ApiStatus func_80240000_89FEC0(Evt* script, s32 isInitialCall) { - func_8014AB0C(0, 2); + bgm_set_track_volumes(0, 2); return ApiStatus_DONE2; } diff --git a/src/world/area_tik/tik_22/89FEF0.c b/src/world/area_tik/tik_22/89FEF0.c index f0bcb137c3..ec85b6071e 100644 --- a/src/world/area_tik/tik_22/89FEF0.c +++ b/src/world/area_tik/tik_22/89FEF0.c @@ -4,10 +4,10 @@ #include "world/common/atomic/Pipe.inc.c" -s32 func_8014AB60(s32, s16); +s32 bgm_clear_track_volumes(s32, s16); ApiStatus func_8024061C_8A04DC(Evt* script, s32 isInitialCall) { - func_8014AB60(0, 2); + bgm_clear_track_volumes(0, 2); return ApiStatus_DONE2; } diff --git a/src/world/common/UnkMusicFunc.inc.c b/src/world/common/UnkMusicFunc.inc.c deleted file mode 100644 index 7762913808..0000000000 --- a/src/world/common/UnkMusicFunc.inc.c +++ /dev/null @@ -1,51 +0,0 @@ -#include "common.h" -#include "npc.h" - -ApiStatus N(UnkMusicFunc)(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - X32* something; - s32 cond = 0; - f32 dist; - - if (isInitialCall) { - script->functionTemp[0] = evt_get_variable(script, *args); - script->functionTemp[1] = 0; - script->functionTemp[2] = ((s32*)(script->functionTemp[0]))[5]; - } - - something = (X32*) script->functionTemp[0]; - - if (evt_get_variable(script, script->functionTemp[2])) { - if (script->functionTemp[1] != 2) { - script->functionTemp[1] = 2; - cond = TRUE; - } - } else { - dist = dist2D(gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z, something[0].f, something[1].f); - - switch (script->functionTemp[1]) { - case 0: - if (dist < something[2].f) { - script->functionTemp[1] = 1; - cond = TRUE; - } - break; - case 1: - if (dist > something[3].f) { - script->functionTemp[1] = 0; - cond = TRUE; - } - break; - case 2: - script->functionTemp[1] = 1; - cond = TRUE; - break; - } - } - - if (cond) { - func_8014AA54(0, something[4].s, script->functionTemp[1]); - } - - return ApiStatus_BLOCK; -} diff --git a/src/world/common/atomic/Credits_1.inc.c b/src/world/common/atomic/Credits_1.inc.c new file mode 100644 index 0000000000..0743d9e7bc --- /dev/null +++ b/src/world/common/atomic/Credits_1.inc.c @@ -0,0 +1,403 @@ +#include "common.h" + +enum { + CREDITS_LINE_FLAG_1 = 1, + CREDITS_LINE_FLAG_2 = 2, +}; + +enum { + CREDITS_LINE_APPEARING = 0, + CREDITS_LINE_HOLDING = 1, + CREDITS_LINE_VANISHING = 2 +}; + +// unused +void N(CharAnim_FadeIn_0)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + f32 alpha; + + alpha = update_lerp(EASING_LINEAR, 0.0f, 255.0f, arg1->fadeInTime, line->appearTime); + if (alpha > 255.0f) { + alpha = 255.0; + } + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_40000 | FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + + +void N(CharAnim_FadeIn_1)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + f32 alpha; + + alpha = update_lerp(0, 0.0f, 255.0f, arg1->fadeInTime, line->appearTime); + if (alpha > 255.0f) { + alpha = 255.0; + } + if (arg1->fadeInTime == (line->appearTime - 4)) { + fold_update(0, FOLD_TYPE_A, 64, 64, 64, alpha, 0); + } else if (arg1->fadeInTime == (line->appearTime - 3)) { + fold_update(0, FOLD_TYPE_A, 96, 96, 96, alpha, 0); + } else if (arg1->fadeInTime == (line->appearTime - 2)) { + fold_update(0, FOLD_TYPE_A, 127, 127, 127, alpha, 0); + } else if (arg1->fadeInTime == (line->appearTime - 1)) { + fold_update(0, FOLD_TYPE_A, 80, 80, 80, alpha, 0); + } else { + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + } + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_40000 | FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeIn_2)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx, tempMtx; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + f32 scaleAmt; + f32 alpha; + + alpha = update_lerp(EASING_COS_IN, 16.0f, 300.0f, arg1->fadeInTime, line->appearTime); + if (alpha > 255.0f) { + alpha = 255.0f; + } + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + + scaleAmt = update_lerp(EASING_LINEAR, 0.2f, 2.0f, arg1->fadeInTime, line->appearTime); + if (scaleAmt > 1.0) { + scaleAmt = 1.0; + } + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + if (scaleAmt != 1.0) { + guScaleF(tempMtx, scaleAmt, scaleAmt, 1.0f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + } + guMtxF2L(transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeIn_3)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx, tempMtx; + f32 rotAngle, alpha; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + + alpha = update_lerp(EASING_COS_IN, 32.0f, 300.0f, arg1->fadeInTime, line->appearTime); + if (alpha > 255.0f) { + alpha = 255.0f; + } + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + + rotAngle = update_lerp(EASING_LINEAR, -75.0f, 30.0f, arg1->fadeInTime, line->appearTime); + if (rotAngle >= 0.0f) { + rotAngle = 0.0f; + } + + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + if (rotAngle != 0.0f) { + guRotateF(tempMtx, rotAngle, 0.0f, 1.0f, 0.0f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + } + guMtxF2L(transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeIn_4)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx, tempMtx; + f32 posX, posY, scaleAmt, rotAngle; + f32 startX = (line->posX + line->msgWidth) - 16; + f32 startY = line->posY + 60; + u32 foldFlags = FOLD_STATE_FLAG_40; + + posX = update_lerp(EASING_COS_IN_OUT, startX, arg1->posX, arg1->fadeInTime, line->appearTime); + posY = update_lerp(EASING_CUBIC_OUT, startY, arg1->posY, arg1->fadeInTime, line->appearTime); + if (arg1->fadeInTime == line->appearTime) { + rotAngle = 0.0f; + } else { + rotAngle = (line->appearTime - arg1->fadeInTime) * 10; + } + scaleAmt = update_lerp(EASING_QUADRATIC_OUT, 2.0f, 1.0f, arg1->fadeInTime, line->appearTime); + + if (arg1->fadeInTime == line->appearTime) { + fold_update(0, FOLD_TYPE_NONE, 0, 0, 0, 0, 0); + foldFlags |= FOLD_STATE_FLAG_10000; + } else { + f32 alpha = update_lerp(EASING_LINEAR, 16.0f, 300.0f, arg1->fadeInTime, line->appearTime); + if (alpha > 255.0f) { + alpha = 255.0f; + } + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + } + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guRotateF(tempMtx, rotAngle, 0.0f, 1.0f, 0.2f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + guScaleF (tempMtx, scaleAmt, scaleAmt, 1.0f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, foldFlags, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeIn_5)(CreditsLine* line, CreditsChar* arg1) { + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + f32 alpha; + + alpha = update_lerp(EASING_LINEAR, 0.0f, 255.0f, arg1->fadeInTime, line->appearTime); + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + draw_ci_image_with_clipping(glyphPtr->raster, glyphPtr->texSize.x, glyphPtr->texSize.y, + G_IM_FMT_CI, G_IM_SIZ_4b, glyphPtr->palette, posX, posY, + 10, 20, SCREEN_WIDTH - 20, SCREEN_HEIGHT - 40, alpha); +} + +// unused +void N(CharAnim_HoldClearFold)(CreditsLine* line, CreditsChar* arg1) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx; + f32 posX = arg1->posX; + f32 posY = arg1->posY; + + fold_update(0, FOLD_TYPE_NONE, 0, 0, 0, 0, 0); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + msg_get_glyph(arg1->font, arg1->variation, arg1->charIndex, arg1->palette, glyphPtr); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_40000 | FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_Hold)(CreditsLine* line, CreditsChar* chr) { + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + f32 posX = chr->posX; + f32 posY = chr->posY; + + msg_get_glyph(chr->font, chr->variation, chr->charIndex, chr->palette, glyphPtr); + draw_ci_image_with_clipping(glyphPtr->raster, glyphPtr->texSize.x, glyphPtr->texSize.y, + G_IM_FMT_CI, G_IM_SIZ_4b, glyphPtr->palette, posX, posY, + 10, 20, SCREEN_WIDTH - 20, SCREEN_HEIGHT - 40, 255); +} + +// unused +void N(CharAnim_FadeOut_0)(CreditsLine* line, CreditsChar* chr) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx; + f32 posX = chr->posX; + f32 posY = chr->posY; + f32 alpha; + + alpha = update_lerp(EASING_SIN_OUT, 255.0f, 0.0f, chr->fadeInTime, line->vanishTime); + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + + msg_get_glyph(chr->font, chr->variation, chr->charIndex, chr->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeOut_1)(CreditsLine* line, CreditsChar* chr) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx, tempMtx; + f32 scaleAmt, alpha; + f32 posX = chr->posX; + f32 posY = chr->posY; + + alpha = update_lerp(EASING_SIN_OUT, 255.0f, 0.0f, chr->fadeInTime, line->vanishTime); + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + + scaleAmt = update_lerp(EASING_LINEAR, 1.0f, 0.2f, chr->fadeInTime, line->vanishTime); + msg_get_glyph(chr->font, chr->variation, chr->charIndex, chr->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guScaleF(tempMtx, scaleAmt, scaleAmt, 1.0f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeOut_2)(CreditsLine* line, CreditsChar* chr) { + FoldImageRecPart foldImg; + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + Matrix4f transformMtx, tempMtx; + f32 rotAngle, alpha; + f32 posX = chr->posX; + f32 posY = chr->posY; + + alpha = update_lerp(EASING_SIN_OUT, 255.0f, 0.0f, chr->fadeInTime, line->vanishTime); + fold_update(0, FOLD_TYPE_7, 255, 255, 255, alpha, 0); + + rotAngle = update_lerp(EASING_LINEAR, 0.0f, 60.0f, chr->fadeInTime, line->vanishTime); + msg_get_glyph(chr->font, chr->variation, chr->charIndex, chr->palette, glyphPtr); + + posX += (glyphPtr->charWidth * 0.5); + guTranslateF(transformMtx, posX, -posY, 0.0f); + guRotateF(tempMtx, rotAngle, 0.0f, 1.0f, 0.0f); + guMtxCatF(tempMtx, transformMtx, transformMtx); + guMtxF2L (transformMtx, &gDisplayContext->matrixStack[gMatrixListPos]); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(&gDisplayContext->matrixStack[gMatrixListPos++]), + G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + foldImg.raster = glyphPtr->raster; + foldImg.palette = glyphPtr->palette; + foldImg.width = glyphPtr->texSize.x; + foldImg.height = glyphPtr->texSize.y; + foldImg.xOffset = -(glyphPtr->charWidth * 0.5); + foldImg.yOffset = 0; + foldImg.opacity = 255; + fold_appendGfx_component(0, &foldImg, FOLD_STATE_FLAG_10000 | FOLD_STATE_FLAG_40, transformMtx); + + gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW); +} + +void N(CharAnim_FadeOut_3)(CreditsLine* line, CreditsChar* chr) { + MesasgeFontGlyphData glyph; + MesasgeFontGlyphData* glyphPtr = &glyph; + f32 posX = chr->posX; + f32 posY = chr->posY; + f32 alpha = update_lerp(EASING_SIN_OUT, 255.0f, 0.0f, chr->fadeInTime, line->vanishTime); + + msg_get_glyph(chr->font, chr->variation, chr->charIndex, chr->palette, glyphPtr); + draw_ci_image_with_clipping(glyphPtr->raster, glyphPtr->texSize.x, glyphPtr->texSize.y, + G_IM_FMT_CI, G_IM_SIZ_4b, glyphPtr->palette, posX, posY, + 10, 20, SCREEN_WIDTH - 20, SCREEN_HEIGHT - 40, alpha); +} diff --git a/src/world/common/atomic/Credits_2.inc.c b/src/world/common/atomic/Credits_2.inc.c new file mode 100644 index 0000000000..bf1d7bcdde --- /dev/null +++ b/src/world/common/atomic/Credits_2.inc.c @@ -0,0 +1,125 @@ +#include "common.h" + +// split from Credits_1 due to small differences in credits_update_line + +void N(credits_worker_render)(void) { + Mtx* projMtx = &N(CreditsProjMatrices)[gCurrentDisplayContextIndex]; + CreditsData* data = N(CreditsDataPtr); + s32 i; + + gSPViewport(gMasterGfxPos++, &N(CreditsViewport)); + guOrtho(projMtx, 0.0f, 320.0f, -240.0f, 0.0f, -100.0f, 100.0f, 1.0f); + gSPMatrix(gMasterGfxPos++, OS_PHYSICAL_TO_K0(projMtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION); + gDPPipeSync(gMasterGfxPos++); + gSPClearGeometryMode(gMasterGfxPos++, G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH); + gSPSetGeometryMode(gMasterGfxPos++, G_SHADE | G_SHADING_SMOOTH); + + for (i = 0; i < ARRAY_COUNT(data->lines); i++) { + if (data->lines[i].flags & CREDITS_LINE_FLAG_1) { + N(credits_update_line)(&data->lines[i]); + } + } +} + +void N(credits_load_message)(CreditsEntry* entry) { + CreditsLine* line; + s32 maxLineChars; + s32 unkMsgProperty; + s32 i = 0; + + while (TRUE) { + if (!(N(CreditsDataPtr)->lines[i].flags & CREDITS_LINE_FLAG_1)) { + break; + } + if (++i == ARRAY_COUNT(N(CreditsDataPtr)->lines)) { + return; + } + } + + line = &N(CreditsDataPtr)->lines[i]; + if (entry->msgID != NULL) { + if (entry->msgID >= 0) { + dma_load_msg(entry->msgID, N(CreditsMessageBuffers)[N(CreditsBufferIndex)]); + line->message = N(CreditsMessageBuffers)[N(CreditsBufferIndex)]; + N(CreditsBufferIndex)++; + if (N(CreditsBufferIndex) >= ARRAY_COUNT(N(CreditsMessageBuffers))) { + N(CreditsBufferIndex) = 0; + } + } else { + line->message = (u8*) entry->msgID; + } + get_msg_properties((s32) line->message, NULL, NULL, &maxLineChars, NULL, NULL, &unkMsgProperty, 0); + line->posX = entry->posX; + line->posY = entry->posY; + line->palette = entry->palette; + line->appearMode = entry->appearMode; + line->appearTime = entry->appearTime; + line->holdMode = entry->holdMode; + line->holdTime = entry->holdTime; + if (entry->perCharDelayIn != 0) { + line->holdTime = entry->holdTime - ((maxLineChars - 1) - unkMsgProperty) * entry->perCharDelayIn; + if (line->holdTime < 0) { + line->holdTime = 0; + } + } + line->vanishMode = entry->vanishMode; + line->vanishTime = entry->vanishTime; + line->perCharDelayIn = entry->perCharDelayIn; + line->perCharDelayOut = entry->perCharDelayOut; + line->flags = entry->flags | CREDITS_LINE_FLAG_1 | CREDITS_LINE_FLAG_2; + } +} + +void N(init_credits)(void) { + s32 i; + + N(CreditsDataPtr) = &N(CreditsData); + N(CreditsData).workerID = create_generic_entity_frontUI(NULL, N(credits_worker_render)); + + for (i = 0; i < ARRAY_COUNT(N(CreditsData).lines); i++) { + N(CreditsData).lines[i].flags = 0; + } +} + +ApiStatus N(InitCredits)(Evt* script, s32 isInitialCall) { + N(init_credits)(); + load_font(1); + return ApiStatus_DONE2; +} + +ApiStatus N(ShowCreditList)(Evt* script, s32 isInitialCall) { + CreditsEntry* creditList = (CreditsEntry*) evt_get_variable(script, *script->ptrReadPos); + + if (isInitialCall) { + script->varTable[0] = 0; + script->varTable[1] = -1; + script->varTable[2] = 0; + } + + switch (script->varTable[0]) { + case 0: + while (TRUE) { + if (creditList[script->varTable[2]].msgID != 0) { + N(credits_load_message)(&creditList[script->varTable[2]]); + } + script->varTable[1] = creditList[script->varTable[2]].next; + script->varTable[2]++; + if (script->varTable[1] > 0) { + break; + } + if (script->varTable[1] == -1) { + return ApiStatus_DONE2; + } + } + script->varTable[0] = 1; + // fall through + case 1: + script->varTable[1]--; + if (script->varTable[1] <= 0) { + script->varTable[0] = 0; + } + break; + } + + return ApiStatus_BLOCK; +} diff --git a/src/world/common/atomic/MonitorMusicProximityTrigger.inc.c b/src/world/common/atomic/MonitorMusicProximityTrigger.inc.c new file mode 100644 index 0000000000..8c35bd8585 --- /dev/null +++ b/src/world/common/atomic/MonitorMusicProximityTrigger.inc.c @@ -0,0 +1,58 @@ +#include "common.h" +#include "npc.h" + +/* + The current BGM can be modified based on the player's proximity to a specified point. + When closer than the inner distance, the modified tracks(?) play at half volume. If the + player moves beyond the outer distance, the modified tracks are muted. + Setting an event flags overries the normal music with the modified music until the outer + distance is exceeded. +*/ +ApiStatus N(MonitorMusicProximityTrigger)(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + MusicProximityTrigger* trigger; + s32 cond = FALSE; + f32 dist; + + if (isInitialCall) { + script->functionTemp[0] = evt_get_variable(script, *args); + script->functionTemp[1] = MUSIC_PROXIMITY_FAR; + script->functionTemp[2] = ((MusicProximityTrigger*)(script->functionTemp[0]))->manualActivationFlag; + } + + trigger = script->functionTempPtr[0]; + + if (evt_get_variable(script, script->functionTemp[2])) { + if (script->functionTemp[1] != MUSIC_PROXIMITY_FULL) { + script->functionTemp[1] = MUSIC_PROXIMITY_FULL; + cond = TRUE; + } + } else { + dist = dist2D(gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z, trigger->pos.x, trigger->pos.z); + + switch (script->functionTemp[1]) { + case MUSIC_PROXIMITY_FAR: + if (dist < trigger->innerDist) { + script->functionTemp[1] = MUSIC_PROXIMITY_NEAR; + cond = TRUE; + } + break; + case MUSIC_PROXIMITY_NEAR: + if (dist > trigger->outerDist) { + script->functionTemp[1] = MUSIC_PROXIMITY_FAR; + cond = TRUE; + } + break; + case MUSIC_PROXIMITY_FULL: + script->functionTemp[1] = MUSIC_PROXIMITY_NEAR; + cond = TRUE; + break; + } + } + + if (cond) { + bgm_adjust_proximity(0, trigger->unk, script->functionTemp[1]); + } + + return ApiStatus_BLOCK; +} diff --git a/src/world/common/enemy/StationaryAI.inc.c b/src/world/common/enemy/StationaryAI.inc.c index 7e1cefc052..1e0325863d 100644 --- a/src/world/common/enemy/StationaryAI.inc.c +++ b/src/world/common/enemy/StationaryAI.inc.c @@ -1,11 +1,11 @@ // Used in: -// - kmr_02 Toad -// - kmr_07 GoombaBros -// - kmr_11 GoombaBros/King -// - sbk_30 (unused) -// - trd_01 Bombomb <-- only real use case! -// - nok_01 (unused) -// - omo_02 (unused) +// - kmr_02 Toad +// - kmr_07 GoombaBros +// - kmr_11 GoombaBros/King +// - sbk_30 (unused) +// - trd_01 Bombomb <-- only real use case! +// - nok_01 (unused) +// - omo_02 (unused) typedef struct StationaryAISettings { /* 0x00 */ f32 unk_00; diff --git a/src/world/partners.c b/src/world/partners.c index e3a8f1cfc3..c14d0f9fe0 100644 --- a/src/world/partners.c +++ b/src/world/partners.c @@ -612,10 +612,10 @@ void _use_partner_ability(void) { disable_player_input(); sfx_play_sound(SOUND_D); kill_script_by_ID(wPartnerCurrentScriptID); - wPartnerCurrentScript = start_script(wPartner->putAway, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->putAway, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD34 += 1; set_time_freeze_mode(1); break; @@ -631,10 +631,10 @@ void _use_partner_ability(void) { wPartner->init(wPartnerNpc); D_8010CD34 += 1; case 2: - wPartnerCurrentScript = start_script(wPartner->takeOut, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->takeOut, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD34 += 1; set_time_freeze_mode(1); break; @@ -642,10 +642,10 @@ void _use_partner_ability(void) { if (does_script_exist(wPartnerCurrentScriptID)) { break; } - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD30 = 1; enable_player_input(); set_time_freeze_mode(0); @@ -675,10 +675,10 @@ void _use_partner_ability(void) { D_8010CD34 += 1; break; case 3: - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD30 = 1; break; } @@ -689,10 +689,10 @@ void _use_partner_ability(void) { disable_player_input(); sfx_play_sound(SOUND_D); kill_script_by_ID(wPartnerCurrentScriptID); - wPartnerCurrentScript = start_script(wPartner->putAway, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->putAway, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD34 += 1; break; case 1: @@ -724,20 +724,20 @@ void _use_partner_ability(void) { wPartner->init(wPartnerNpc); D_8010CD34 += 1; case 1: - wPartnerCurrentScript = start_script(wPartner->takeOut, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->takeOut, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD34 += 1; break; case 2: if (does_script_exist(wPartnerCurrentScriptID)) { break; } - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD30 = 1; enable_player_input(); break; @@ -761,10 +761,10 @@ void _use_partner_ability(void) { D_8010CD34 += 1; break; case 1: - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD30 = 1; wPartnerNpc->currentAnim.w = gPartnerAnimations[D_8010CFD8].anims[4]; enable_player_input(); @@ -775,20 +775,20 @@ void _use_partner_ability(void) { switch (D_8010CD34) { case 0: kill_script_by_ID(wPartnerCurrentScriptID); - wPartnerCurrentScript = start_script(wPartner->useAbility, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->useAbility, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD34 += 1; break; case 1: if (does_script_exist(wPartnerCurrentScriptID)) { break; } - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CD30 = 1; break; } @@ -808,10 +808,10 @@ void _use_partner_ability(void) { wSavedPartnerPosX = playerStatus->position.x; wSavedPartnerPosY = playerStatus->position.y; wSavedPartnerPosZ = playerStatus->position.z; - wPartnerCurrentScript = start_script(wPartner->update, 0x14, 0x20); + wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = 0xA; + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; } enable_player_input(); D_8010CD30 = 1; @@ -1022,7 +1022,7 @@ void partner_handle_after_battle(void) { wPartnerCurrentScript = start_script(wPartner->update, EVT_PRIORITY_14, EVT_FLAG_20); wPartnerCurrentScript->owner2.npc = wPartnerNpc; wPartnerCurrentScriptID = wPartnerCurrentScript->id; - wPartnerCurrentScript->groupFlags = (EVT_GROUP_02 | EVT_GROUP_08); + wPartnerCurrentScript->groupFlags = EVT_GROUP_08 | EVT_GROUP_02; D_8010CFE8 = 1; diff --git a/src/world/script_api/7E0E80.c b/src/world/script_api/7E0E80.c index dc4984c03d..e01d062412 100644 --- a/src/world/script_api/7E0E80.c +++ b/src/world/script_api/7E0E80.c @@ -750,7 +750,7 @@ void shop_draw_item_desc(s32 arg0, s32 posX, s32 posY) { Shop* shop = gGameStatusPtr->mapShop; ShopItemData* shopItem = &shop->staticInventory[shop->currentItemSlot]; - draw_msg(shopItem->unk_08, posX + 8, posY, 255, 0xA, 0); + draw_msg(shopItem->descMsg, posX + 8, posY, 255, 0xA, 0); } extern void draw_shop_items(void); @@ -902,8 +902,8 @@ s32 MakeShop(Evt* script, s32 isInitialCall) { hud_element_set_flags(shop->costIconID, HUD_ELEMENT_FLAGS_80); hud_element_clear_flags(shop->costIconID, HUD_ELEMENT_FLAGS_FILTER_TEX); get_generic_entity(create_generic_entity_frontUI(NULL, draw_shop_items)); - set_window_properties(0xA, 100, 66, 120, 28, 0, shop_draw_item_name, NULL, -1); - set_window_properties(0xB, 32, 184, 256, 32, 1, shop_draw_item_desc, NULL, -1); + set_window_properties(WINDOW_ID_10, 100, 66, 120, 28, 0, shop_draw_item_name, NULL, -1); + set_window_properties(WINDOW_ID_11, 32, 184, 256, 32, 1, shop_draw_item_desc, NULL, -1); gWindowStyles[10] = 9; gWindowStyles[11] = 3; shop->currentItemSlot = 0; diff --git a/ver/us/asm/data/26840_len_20d0.data.s b/ver/us/asm/data/26840_len_20d0.data.s deleted file mode 100644 index 024739b4ad..0000000000 --- a/ver/us/asm/data/26840_len_20d0.data.s +++ /dev/null @@ -1,75 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80078190 -.word 0xF8030125, 0x07D0FDBC, 0xF8860355, 0x06FCFBAB, 0xFEDAF82D, 0x0245077D, 0xFCA9F901, 0x0456065D, 0xFC33FBB2, 0xFCEFFE94, 0xFFD80080, 0x00A4007D, 0x090E0673, 0x02FF0053, 0xFEF2FEA7, 0xFEF9FF7B - -dlabel D_800781D0 -.word 0xB1011110, 0x00FFFE34, 0xBB90E21E, 0x00FB10EF, 0xF2D180C4, 0xB3B1D3CF, 0xD1FDFE80, 0x1D2D3D3B, 0x2C3BFC1D, 0x80DEF0D0, 0xD3D2B3D1, 0xF480A203, 0xD00DA9EA, 0xCB729041, 0x4E1D2D0C, 0x1E102F90, 0xF21203F0, 0xC2D1D4F3, 0x80B0A1BF, 0xD21E1270, 0x4D804C39, 0x2C7E306D, 0xB9CF90E1, 0xF2F3F2E1, 0xE21622C1, 0xE728F4F0, 0x211010FF, 0xA1ED9F2F, 0xF561333C, 0xD0A1DAC2, 0xFF144122, 0x2DEFA1FA, 0xE10E2330, 0x320EF091, 0x9AF2CF55, 0x1361EE1C, 0x919D0FD2, 0x52064DE1, 0x0991D01B, 0x152E36FD, 0x12CB8122, 0xBC65F073, 0xCE3FAE71, 0x4E9370F5, 0x6ED21BD1, 0x610A5D00, 0x00000000, 0x00000000 - -dlabel D_80078290 -.word 0x00000003, 0x0000000B, 0x00000000, 0x00000009, 0x00002666, 0xFFFFD99A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000007, 0x00000CCC, 0xFFFFF334, 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000000A, 0x00001388, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00005000 - -dlabel D_800782F8 -.word 0x00000001, 0x0000000B, 0x00000000, 0x0000000A, 0x00004E20, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00007FFF - -dlabel D_80078320 -.word 0x00000001, 0x0000000D, 0x00000000, 0x0000000C, 0x00004E20, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00007FFF - -dlabel D_80078348 -.short 0x0000, 0x0001, 0x0000, 0x000E, 0x0000, 0x0000, 0x0000, 0x000D, 0x0000, 0x4E20, 0x0000, 0x0000, 0x0000, 0x7FFF, 0x0000, 0x0000, 0x0000 - -dlabel D_8007836A -.short 0x0000, 0x0000, 0x7FFF, 0x034A, 0x0349, 0x0100, 0x0000 - -dlabel D_80078378 -.word 0x01000000, 0x00080012, 0x3C7F2D7F, 0x2B5F1D00, 0xFF002700, 0xFF000000 - -dlabel D_80078390 -.word 0x01000000, 0x0008001A, 0x3C7F237F, 0x3C3F2A1F, 0x2A0F2A07, 0x2A033600, 0xFF003600, 0xFF000000, 0x34337F26, 0x3F1600FF, 0x343B7F3B, 0x3FFF0000 - -dlabel D_800783C0 -.word D_80078378, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390, D_80078390 - -dlabel D_80078400 -.word snd_SEFCmd_00_SetVolume, snd_SEFCmd_01_SetPan, snd_SEFCmd_02_SetInstrument, snd_SEFCmd_03_SetReverb - -dlabel D_80078410 -.byte 0x80, 0x04, 0xCF, 0x3C, 0x80, 0x04, 0xD0, 0x0C, 0x80, 0x04, 0xD0, 0x38, 0x80, 0x04, 0xD0, 0x50, 0x80, 0x04, 0xD0, 0x7C, 0x80, 0x04, 0xD1, 0x14, 0x80, 0x04, 0xD1, 0x30, 0x80, 0x04, 0xD1, 0x5C, 0x80, 0x04, 0xD1, 0x80, 0x80, 0x04, 0xD1, 0xB4, 0x80, 0x04, 0xD2, 0x3C, 0x80, 0x04, 0xD2, 0xB0, 0x80, 0x04, 0xD2, 0xE4, 0x80, 0x04, 0xD3, 0x10, 0x80, 0x04, 0xD3, 0x1C, 0x80, 0x04, 0xD3, 0x24, 0x80, 0x04, 0xD3, 0x3C, 0x80, 0x04, 0xD3, 0x54, 0x80, 0x04, 0xD3, 0x6C, 0x80, 0x04, 0xD3, 0xA0, 0x80, 0x04, 0xD3, 0xF8 - -dlabel D_80078464 -.word 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80078470 -.word snd_BGMCmd_E0_MasterTempo, snd_BGMCmd_E1_MasterVolume, snd_BGMCmd_E2_MasterTranspose, snd_BGMCmd_E3, snd_BGMCmd_E4_MasterTempoFade, snd_BGMCmd_E5_MasterVolumeFade, snd_BGMCmd_E6_MasterEffect, snd_BGMCmd_NOP, snd_BGMCmd_E8_TrackOverridePatch, snd_BGMCmd_E9_SubTrackVolume, snd_BGMCmd_EA_SubTrackPan, snd_BGMCmd_EB_SubTrackReverb, snd_BGMCmd_EC_SegTrackVolume, snd_BGMCmd_ED_SubTrackCoarseTune, snd_BGMCmd_EE_SubTrackFineTune, snd_BGMCmd_EF_SegTrackTune, snd_BGMCmd_F0_TrackTremolo, snd_BGMCmd_F1_TrackTremoloSpeed, snd_BGMCmd_F2_TrackTremoloTime, snd_BGMCmd_F3_TrackTremoloStop, snd_BGMCmd_F4, snd_BGMCmd_F5_TrackVoice, snd_BGMCmd_F6_TrackVolumeFade, snd_BGMCmd_F7_SubTrackReverbType, snd_BGMCmd_NOP, snd_BGMCmd_NOP, snd_BGMCmd_NOP, snd_BGMCmd_NOP, snd_BGMCmd_FC_Jump, snd_BGMCmd_FD, snd_BGMCmd_FE, snd_BGMCmd_FF, 0x02010101, 0x04030200, 0x02010101, 0x01010102, 0x03010100, 0x02010301, 0x00000000, 0x03030303 - -dlabel D_80078510 -.byte 0x30, 0x18, 0x20, 0x28, 0x30, 0x38, 0x40, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - -dlabel D_80078520 -.word 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80078530 -.short 0x0000, 0x0200, 0x0800, 0x1200, 0x2000, 0x3200, 0x4800, 0x6200, 0x8000, 0x0000 - -dlabel D_80078544 -.word 0x01000000, 0x0008000C - -dlabel D_8007854C -.word 0x3D7FFF00, 0x3400FF00 - -dlabel D_80078554 -.word 0x5C00FF00 - -dlabel D_80078558 -.byte 0x5E, 0x5D, 0x5C, 0x5B, 0x5A, 0x58, 0x56, 0x53, 0x51, 0x4F, 0x4A, 0x45, 0x40, 0x3B, 0x37, 0x35, 0x33, 0x31, 0x2F, 0x2D, 0x2B, 0x29, 0x27, 0x26, 0x25, 0x23, 0x21, 0x20, 0x1F, 0x1E, 0x1D, 0x1C, 0x1B, 0x1A, 0x19, 0x18, 0x17, 0x16, 0x15, 0x14 - -dlabel D_80078580 -.byte 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - -dlabel D_800785A0 -.word 0x0393756C, 0x034736DE, 0x02FAE1DA, 0x02AEA34C, 0x02624E48, 0x0215F944, 0x01C9BAB6, 0x01A39034, 0x017D65B2, 0x015751A6, 0x01312724, 0x0121E2F0, 0x01129EBC, 0x01035A88, 0x00F41654, 0x00E4D220, 0x00D58DEC, 0x00C649B8, 0x00B70584, 0x00A7D7C6, 0x00989392, 0x00894F5E, 0x007A0B2A, 0x006AC6F6, 0x005B82C2, 0x004C3E8E, 0x00449C74, 0x003CFA5A, 0x00355840, 0x002DB626, 0x0029F054, 0x0026140C, 0x00224E3A, 0x001E71F2, 0x001CF41C, 0x001B7646, 0x0019E1FA, 0x00186424, 0x0016CFD8, 0x00155202, 0x0013D42C, 0x00123FE0, 0x0010C20A, 0x000F2DBE, 0x000E7A0E, 0x000DAFE8, 0x000CE5C2, 0x000C3212, 0x000B67EC, 0x000A9DC6, 0x0009EA16, 0x00091FF0, 0x000855CA, 0x00078BA4, 0x0006D7F4, 0x00060DCE, 0x0005B3F6, 0x000543A8, 0x0004E9D0, 0x00048FF8, 0x0004630C, 0x00043620, 0x00040934, 0x0003F2BE, 0x0003C5D2, 0x000398E6, 0x00038270, 0x00035584, 0x00032898, 0x0002FBAC, 0x0002E536, 0x0002B84A, 0x00028B5E, 0x00025E72, 0x000247FC, 0x00021B10, 0x0001EE24, 0x0001C138, 0x0001AAC2, 0x00017DD6, 0x00016760, 0x00013A74, 0x00010D88, 0x0000F712, 0x0000E09C, 0x0000CA26, 0x0000B3B0, 0x00009D3A, 0x000086C4, 0x0000704E, 0x000059D8, 0x00004362, 0x00002CEC, 0x00001676, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80078730 -.word 0x3F800000, 0x3F8012EF, 0x3F8025E1, 0x3F8038D6, 0x3F804BCD, 0x3F805EC7, 0x3F8071C4, 0x3F8084C4, 0x3F8097C7, 0x3F80AACC, 0x3F80BDD4, 0x3F80D0DF, 0x3F80E3ED, 0x3F80F6FE, 0x3F810A12, 0x3F811D28, 0x3F813041, 0x3F81435D, 0x3F81567C, 0x3F81699E, 0x3F817CC2, 0x3F818FE9, 0x3F81A313, 0x3F81B640, 0x3F81C970, 0x3F81DCA3, 0x3F81EFD9, 0x3F820311, 0x3F82164C, 0x3F82298A, 0x3F823CCB, 0x3F82500F, 0x3F826356, 0x3F82769F, 0x3F8289EB, 0x3F829D3A, 0x3F82B08C, 0x3F82C3E1, 0x3F82D739, 0x3F82EA94, 0x3F82FDF1, 0x3F831151, 0x3F8324B4, 0x3F83381A, 0x3F834B83, 0x3F835EEF, 0x3F83725E, 0x3F8385D0, 0x3F839944, 0x3F83ACBB, 0x3F83C035, 0x3F83D3B2, 0x3F83E732, 0x3F83FAB5, 0x3F840E3B, 0x3F8421C4, 0x3F84354F, 0x3F8448DD, 0x3F845C6E, 0x3F847002, 0x3F848399, 0x3F849733, 0x3F84AAD0, 0x3F84BE70, 0x3F84D213, 0x3F84E5B9, 0x3F84F961, 0x3F850D0C, 0x3F8520BA, 0x3F85346B, 0x3F85481F, 0x3F855BD6, 0x3F856F90, 0x3F85834D, 0x3F85970D, 0x3F85AAD0, 0x3F85BE96, 0x3F85D25F, 0x3F85E62A, 0x3F85F9F8, 0x3F860DC9, 0x3F86219D, 0x3F863574, 0x3F86494E, 0x3F865D2B, 0x3F86710B, 0x3F8684EE, 0x3F8698D4, 0x3F86ACBD, 0x3F86C0A9, 0x3F86D498, 0x3F86E88A, 0x3F86FC7F, 0x3F871077, 0x3F872472, 0x3F87386F, 0x3F874C6F, 0x3F876072, 0x3F877478, 0x3F878881, 0x3F879C8D, 0x3F87B09C, 0x3F87C4AE, 0x3F87D8C3, 0x3F87ECDB, 0x3F8800F6, 0x3F881514, 0x3F882935, 0x3F883D59, 0x3F885180, 0x3F8865AA, 0x3F8879D7, 0x3F888E07, 0x3F88A23A, 0x3F88B670, 0x3F88CAA9, 0x3F88DEE5, 0x3F88F324, 0x3F890766, 0x3F891BAB, 0x3F892FF3, 0x3F89443E, 0x3F89588C, 0x3F896CDD, 0x3F898131, 0x3F899588, 0x3F89A9E2, 0x3F89BE3F, 0x3F800000, 0x3F89D29F, 0x3F946637, 0x3F9FC997, 0x3FAC0CB1, 0x3FB940B0, 0x3FC77811, 0x3FD6C6BB, 0x3FE7421D, 0x3FF9014B, 0x40060E8F, 0x4010582B, 0x401B6BE2, 0x40275936, 0x403430DA, 0x404204C9, 0x4050E860, 0x4060F077, 0x40723381, 0x408264D5, 0x408C667B, 0x40972CB6, 0x40A2C69C, 0x40AF446B, 0x40BCB7A0, 0x40CB3311, 0x40DACB04, 0x40EB954F, 0x40FDA974, 0x41089062, 0x41130B3F, 0x411E53FF, 0x3F800000, 0x3F7FDA28, 0x3F7FB456, 0x3F7F8E89, 0x3F7F68C2, 0x3F7F4300, 0x3F7F1D44, 0x3F7EF78E, 0x3F7ED1DD, 0x3F7EAC32, 0x3F7E868C, 0x3F7E60EC, 0x3F7E3B51, 0x3F7E15BC, 0x3F7DF02C, 0x3F7DCAA2, 0x3F7DA51E, 0x3F7D7F9F, 0x3F7D5A26, 0x3F7D34B2, 0x3F7D0F44, 0x3F7CE9DB, 0x3F7CC478, 0x3F7C9F1A, 0x3F7C79C2, 0x3F7C546F, 0x3F7C2F22, 0x3F7C09DA, 0x3F7BE498, 0x3F7BBF5B, 0x3F7B9A24, 0x3F7B74F2, 0x3F7B4FC6, 0x3F7B2A9F, 0x3F7B057E, 0x3F7AE062, 0x3F7ABB4C, 0x3F7A963B, 0x3F7A7130, 0x3F7A4C2A, 0x3F7A272A, 0x3F7A022F, 0x3F79DD3A, 0x3F79B84A, 0x3F799360, 0x3F796E7B, 0x3F79499C, 0x3F7924C2, 0x3F78FFED, 0x3F78DB1E, 0x3F78B654, 0x3F789190, 0x3F786CD1, 0x3F784818, 0x3F782364, 0x3F77FEB6, 0x3F77DA0D, 0x3F77B569, 0x3F7790CB, 0x3F776C32, 0x3F77479F, 0x3F772311, 0x3F76FE88, 0x3F76DA05, 0x3F76B587, 0x3F76910F, 0x3F766C9C, 0x3F76482E, 0x3F7623C6, 0x3F75FF63, 0x3F75DB06, 0x3F75B6AE, 0x3F75925B, 0x3F756E0E, 0x3F7549C6, 0x3F752583, 0x3F750146, 0x3F74DD0E, 0x3F74B8DB, 0x3F7494AE, 0x3F747086, 0x3F744C63, 0x3F742846, 0x3F74042E, 0x3F73E01C, 0x3F73BC0F, 0x3F739807, 0x3F737404, 0x3F735007, 0x3F732C0F, 0x3F73081C, 0x3F72E42F, 0x3F72C047, 0x3F729C64, 0x3F727887, 0x3F7254AF, 0x3F7230DC, 0x3F720D0F, 0x3F71E947, 0x3F71C584, 0x3F71A1C6, 0x3F717E0E, 0x3F715A5B, 0x3F7136AD, 0x3F711305, 0x3F70EF62, 0x3F70CBC4, 0x3F70A82B, 0x3F708498, 0x3F70610A, 0x3F703D81, 0x3F7019FD, 0x3F6FF67F, 0x3F6FD306, 0x3F6FAF92, 0x3F6F8C23, 0x3F6F68BA, 0x3F6F4556, 0x3F6F21F7, 0x3F6EFE9D, 0x3F6EDB49, 0x3F6EB7FA, 0x3F6E94B0, 0x3F6E716B, 0x3F6E4E2B, 0x3F6E2AF1, 0x3F6E07BC, 0x3F6DE48C, 0x3F800000, 0x3F6DC161, 0x3F5CCFA0, 0x3F4D1303, 0x3F3E7583, 0x3F30E2A9, 0x3F244774, 0x3F18923F, 0x3F0DB2A4, 0x3F03996B, 0x3EF470E1, 0x3EE30526, 0x3ED2D741, 0x3EC3D08B, 0x3EB5DBFB, 0x3EA8E607, 0x3E9CDC8A, 0x3E91AEA9, 0x3E874CBE, 0x3E7B5080, 0x3E69675D, 0x3E58C500, 0x3E495220, 0x3E3AF91B, 0x3E2DA5DB, 0x3E2145B8, 0x3E15C75E, 0x3E0B1AB6, 0x3E0130CE, 0x3DEFF78B, 0x3DDEDD71, 0x3DCEFB5A, 0x3DC03B0C, 0x3DB287E0, 0x3DA5CEA6, 0x3D99FD90, 0x3D8F0410, 0x3D84D2CB, 0x3D76B6F6, 0x3D6521C0, 0x3D54CD52, 0x3D45A2D5, 0x3D378D0A, 0x3D2A7839, 0x3D1E5213, 0x3D130992, 0x3D088EF0, 0x3CFDA6F5, 0x3CEB932C, 0x3CDAC934, 0x3CCB318C, 0x3CBCB65A, 0x3CAF435F, 0x3CA2C5C3, 0x3C972C06, 0x3C8C65F5, 0x3C826474, 0x3C7232F8, 0x3C60F025, 0x3C50E83A, 0x3C4204D2, 0x3C3430FF, 0x3C275980, 0x3C1B6C42, 0x3C10589D, 0x3C060F18, 0x3BF90275, 0x3BE7435B, 0x3BD6C80E, 0x3BC7797C, 0x3BB9422B, 0x3BAC0E26, 0x3B9FCB0C, 0x3B9467C1, 0x3B89D42A, 0x3B800183, 0x3B6DC413, 0x3B5CD229, 0x3B4D1572, 0x3B3E77CA, 0x3B30E4BA, 0x3B24494B, 0x3B18940B, 0x3B0DB45E, 0x3B039B00, 0x3AF473B0, 0x3AE307F8, 0x3AD2D9AC, 0x3AC3D2FE, 0x3AB5DE1E, 0x3AA8E7EB, 0x3A9CDE48, 0x3A91B06C, 0x3A874E3D, 0x3A7B5348, 0x3A696A67, 0x3A58C7AD, 0x3A495447, 0x3A3AFB69, 0x3A2DA799, 0x3A214763, 0x3A15C955, 0x3A0B1CA9, 0x3A01329B, 0x39EFFA23, 0x39DEDFF5, 0x39CEFD29, 0x39C03D9D, 0x39B28A81, 0x39A5D10A, 0x3999FFC6, 0x398F0541, 0x3984D410, 0x3976BADD, 0x39652533, 0x3954CEFA, 0x3945A566, 0x39379050, 0x392A7A3D, 0x391E5312, 0x39130AB4, 0x39089109, 0x38FDABE8, 0x38EB9814, 0x38DACBBE, 0x38CB316C, 0x38BCB903, 0x38AF47AC diff --git a/ver/us/asm/data/542E0.data.s b/ver/us/asm/data/54360.data.s similarity index 99% rename from ver/us/asm/data/542E0.data.s rename to ver/us/asm/data/54360.data.s index 9173fea2c4..3ce431ddd2 100644 --- a/ver/us/asm/data/542E0.data.s +++ b/ver/us/asm/data/54360.data.s @@ -2,5 +2,5 @@ .section .data -glabel D_80078EE0 -.short 0x59F2, 0x58D0, 0x57AA, 0x5681, 0x5555, 0x5425, 0x52F2, 0x51BC, 0x5082, 0x4F46, 0x4E06, 0x4CC3, 0x4B7D, 0x4A35, 0x48E9, 0x479B, 0x4649, 0x44F5, 0x439E, 0x4245, 0x40E9, 0x3F8A, 0x3E29, 0x3CC6, 0x3B60, 0x39F8, 0x388D, 0x3721, 0x35B2, 0x3441, 0x32CE, 0x3159, 0x2FE2, 0x2E69, 0x2CEF, 0x2B72, 0x29F4, 0x2875, 0x26F3, 0x2570, 0x23EC, 0x2266, 0x20DF, 0x1F57, 0x1DCE, 0x1C43, 0x1AB7, 0x192A, 0x179C, 0x160E, 0x147E, 0x12ED, 0x115C, 0x0FCA, 0x0E38, 0x0CA5, 0x0B11, 0x097D, 0x07E9, 0x0654, 0x04C0, 0x032A, 0x0195, 0x0000, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3681, 0x3045, 0x36CC, 0xC25E, 0x3701, 0x3056, 0x3715, 0xFBD1, 0x3726, 0xF96C, 0x3735, 0x56F8, 0x3741, 0xC897, 0x374C, 0xC288, 0x3756, 0x941E, 0x375F, 0x75EA, 0x3767, 0x91B7, 0x376F, 0x074D, 0x3775, 0xEF48, 0x377C, 0x5D3E, 0x3781, 0x3079, 0x3784, 0x039E, 0x3786, 0xAD71, 0x3789, 0x3260, 0x378B, 0x9637, 0x378D, 0xDC3A, 0x3790, 0x0722, 0x3792, 0x195F, 0x3794, 0x1509, 0x3795, 0xFC00, 0x3797, 0xCFD4, 0x3799, 0x9207, 0x379B, 0x43D7, 0x379C, 0xE668, 0x379E, 0x7AD2, 0x37A0, 0x01F1, 0x37A1, 0x7CA6, 0x37A2, 0xEBB8, 0x37A4, 0x4FD1, 0x37A5, 0xA99A, 0x37A6, 0xF9A4, 0x37A8, 0x4077, 0x37A9, 0x7E93, 0x37AA, 0xB46F, 0x37AB, 0xE26F, 0x37AD, 0x08FC, 0x37AE, 0x286C, 0x37AF, 0x4119, 0x37B0, 0x5355, 0x37B1, 0x5F67, 0x37B2, 0x6597, 0x37B3, 0x6621, 0x37B4, 0x6141, 0x37B5, 0x5735, 0x37B6, 0x4832, 0x37B7, 0x346C, 0x37B8, 0x1C0C, 0x37B8, 0xFF46, 0x37B9, 0xDE3F, 0x37BA, 0xB91E, 0x37BB, 0x900F, 0x37BC, 0x632E, 0x37BD, 0x32A6, 0x37BD, 0xFE8D, 0x37BE, 0xC70A, 0x37BF, 0x8C33, 0x37C0, 0x4E29, 0x37C1, 0x0D07, 0x37C1, 0xC8E4, 0x37C2, 0x81D5, 0x37C3, 0x37F0, 0x37C3, 0xEB51, 0x37C4, 0x9C0E, 0x37C5, 0x4A32, 0x37C5, 0xF5D3, 0x37C6, 0x9F06, 0x37C7, 0x45DC, 0x37C7, 0xEA67, 0x37C8, 0x8CB5, 0x37C9, 0x2CD3, 0x37C9, 0xCAD0, 0x37CA, 0x66BE, 0x37CB, 0x00A7, 0x37CB, 0x98A1, 0x37CC, 0x2EAD, 0x37CC, 0xC2DA, 0x37CD, 0x5539, 0x37CD, 0xE5D0, 0x37CE, 0x74AA, 0x37CF, 0x01D7, 0x37CF, 0x8D57, 0x37D0, 0x1741, 0x37D0, 0x9F93, 0x37D1, 0x265F, 0x37D1, 0xABA5, 0x37D2, 0x2F75, 0x37D2, 0xB1D5, 0x37D3, 0x32CA, 0x37D3, 0xB25F, 0x37D4, 0x3099, 0x37D4, 0xAD7F, 0x37D5, 0x2921, 0x37D5, 0xA378, 0x37D6, 0x1C91, 0x37D6, 0x9476, 0x37D7, 0x0B27, 0x37D7, 0x80A9, 0x37D7, 0xF50E, 0x37D8, 0x684A, 0x37D8, 0xDA73, 0x37D9, 0x4B84, 0x37D9, 0xBB87, 0x37DA, 0x2A7D, 0x37DA, 0x9870, 0x37DB, 0x055C, 0x37DB, 0x7150, 0x37DB, 0xDC4D, 0x37DC, 0x4658, 0x37DC, 0xAF71, 0x37DD, 0x179E, 0x37DD, 0x7EE3, 0x37DD, 0xE548, 0x37DE, 0x4AD0, 0x37DE, 0xAF77, 0x37DF, 0x1348, 0x37DF, 0x7648, 0x37DF, 0xD877, 0x37E0, 0x39D4, 0x37E0, 0x9A6C, 0x37E0, 0xFA3F, 0x37E1, 0x594B, 0x37E1, 0xB797, 0x37E2, 0x1527, 0x37E2, 0x71F8, 0x37E2, 0xCE18, 0x37E3, 0x297E, 0x37E3, 0x8434, 0x37E3, 0xDE3F, 0x37E4, 0x3795, 0x37E4, 0x9046, 0x37E4, 0xE852, 0x37E5, 0x3FB3, 0x37E5, 0x9675, 0x37E5, 0xEC93, 0x37E6, 0x4216, 0x37E6, 0x96FF, 0x37E6, 0xEB49, 0x37E7, 0x3F04, 0x37E7, 0x9220, 0x37E7, 0xE4AC, 0x37E8, 0x36AA, 0x37E8, 0x8819, 0x37E8, 0xD8F8, 0x37E9, 0x2949, 0x37E9, 0x7916, 0x37E9, 0xC85A, 0x37EA, 0x1714, 0x37EA, 0x654F, 0x37EA, 0xB302, 0x37EB, 0x0035, 0x37EB, 0x4CF0, 0x37EB, 0x9927, 0x37EB, 0xE4E5, 0x37EC, 0x3024, 0x37EC, 0x7AF0, 0x37EC, 0xC543, 0x37ED, 0x0F1D, 0x37ED, 0x588A, 0x37ED, 0xA17D, 0x37ED, 0xEA02, 0x37EE, 0x3214, 0x37EE, 0x79B8, 0x37EE, 0xC0EE, 0x37EF, 0x07BB, 0x37EF, 0x4E1B, 0x37EF, 0x9412, 0x37EF, 0xD9A0, 0x37F0, 0x1EC6, 0x37F0, 0x6389, 0x37F0, 0xA7E4, 0x37F0, 0xEBDC, 0x37F1, 0x2F71, 0x37F1, 0x72A3, 0x37F1, 0xB577, 0x37F1, 0xF7EE, 0x37F2, 0x3A02, 0x37F2, 0x7BBE, 0x37F2, 0xBD17, 0x37F2, 0xFE18, 0x37F3, 0x3EC1, 0x37F3, 0x7F13, 0x37F3, 0xBF06, 0x37F3, 0xFEA2, 0x37F4, 0x3DEB, 0x37F4, 0x7CE2, 0x37F4, 0xBB7C, 0x37F4, 0xF9C8, 0x37F5, 0x37C2, 0x37F5, 0x7564, 0x37F5, 0xB2B9, 0x37F5, 0xEFBB, 0x37F6, 0x2C71, 0x37F6, 0x68DA, 0x37F6, 0xA4F0, 0x37F6, 0xE0B9, 0x37F7, 0x1C3B, 0x37F7, 0x5770, 0x37F7, 0x9257, 0x37F7, 0xCCF2, 0x37F8, 0x0746, 0x37F8, 0x4151, 0x37F8, 0x7B16, 0x37F8, 0xB493, 0x37F8, 0xEDC8, 0x37F9, 0x26BC, 0x37F9, 0x5F68, 0x37F9, 0x97CD, 0x37F9, 0xCFEF, 0x37FA, 0x07D0, 0x37FA, 0x3F69, 0x37FA, 0x76C6, 0x37FA, 0xADE0, 0x37FA, 0xE4B9, 0x37FB, 0x1B50, 0x37FB, 0x51A5, 0x37FB, 0x87C3, 0x37FB, 0xBD99, 0x37FB, 0xF338, 0x37FC, 0x2896, 0x37FC, 0x5DB7, 0x37FC, 0x92A1, 0x37FC, 0xC749, 0x37FC, 0xFBBA, 0x37FD, 0x2FEE, 0x37FD, 0x63E6, 0x37FD, 0x97A8, 0x37FD, 0xCB2C, 0x37FD, 0xFE7A, 0x37FE, 0x3191, 0x37FE, 0x6470, 0x37FE, 0x9719, 0x37FE, 0xC985, 0x37FE, 0xFBC0, 0x37FF, 0x2DC4, 0x37FF, 0x5F96, 0x37FF, 0x912C, 0x37FF, 0xC291, 0x37FF, 0xF3C3, 0x3800, 0x1260, 0x3800, 0x2AC5, 0x3800, 0x4311, 0x3800, 0x5B42, 0x3800, 0x735B, 0x3800, 0x8B5D, 0x3800, 0xA344, 0x3800, 0xBB14, 0x3800, 0xD2CA, 0x3800, 0xEA69, 0x3801, 0x01F0, 0x3801, 0x1960, 0x3801, 0x30B8, 0x3801, 0x47F7, 0x3801, 0x5F23, 0x3801, 0x7633, 0x3801, 0x8D31, 0x3801, 0xA415, 0x3801, 0xBAE6, 0x3801, 0xD19F, 0x3801, 0xE841, 0x3801, 0xFECD, 0x3802, 0x1544, 0x3802, 0x2BA4, 0x3802, 0x41F2, 0x3802, 0x5829, 0x3802, 0x6E4A, 0x3802, 0x8455, 0x3802, 0x9A4D, 0x3802, 0xB032, 0x3802, 0xC601, 0x3802, 0xDBBA, 0x3802, 0xF15F, 0x3803, 0x06F1, 0x3803, 0x1C70, 0x3803, 0x31DA, 0x3803, 0x4732, 0x3803, 0x5C75, 0x3803, 0x71A4, 0x3803, 0x86C3, 0x3803, 0x9BCC, 0x3803, 0xB0C1, 0x3803, 0xC5A6, 0x3803, 0xDA78, 0x3803, 0xEF37, 0x3804, 0x03E2, 0x3804, 0x187D, 0x3804, 0x2D05, 0x3804, 0x417C, 0x3804, 0x55E0, 0x3804, 0x6A31, 0x3804, 0x7E74, 0x3804, 0x92A1, 0x3804, 0xA6C0, 0x3804, 0xBACC, 0x3804, 0xCEC7, 0x3804, 0xE2B0, 0x3804, 0xF68A, 0x3805, 0x0A51, 0x3805, 0x1E0B, 0x3805, 0x31B1, 0x3805, 0x4547, 0x3805, 0x58CC, 0x3805, 0x6C41, 0x3805, 0x7FA8, 0x3805, 0x92FC, 0x3805, 0xA642, 0x3805, 0xB977, 0x3805, 0xCC9C, 0x3805, 0xDFB4, 0x3805, 0xF2BB, 0x3806, 0x05B1, 0x3806, 0x189A, 0x3806, 0x2B72, 0x3806, 0x3E39, 0x3806, 0x50F3, 0x3806, 0x639F, 0x3806, 0x763B, 0x3806, 0x88C9, 0x3806, 0x9B46, 0x3806, 0xADB6, 0x3806, 0xC018, 0x3806, 0xD269, 0x3806, 0xE4B0, 0x3806, 0xF6E6, 0x3807, 0x090E, 0x3807, 0x1B25, 0x3807, 0x2D32, 0x3807, 0x3F31, 0x3807, 0x5120, 0x3807, 0x6303, 0x3807, 0x74D9, 0x3807, 0x869E, 0x3807, 0x9858, 0x3807, 0xAA05, 0x3807, 0xBBA3, 0x3807, 0xCD34, 0x3807, 0xDEB8, 0x3807, 0xF030, 0x3808, 0x019A, 0x3808, 0x12F7, 0x3808, 0x2446, 0x3808, 0x358A, 0x3808, 0x46C1, 0x3808, 0x57E9, 0x3808, 0x6907, 0x3808, 0x7A19, 0x3808, 0x8B1E, 0x3808, 0x9C15, 0x3808, 0xAD01, 0x3808, 0xBDE0, 0x3808, 0xCEB3, 0x3808, 0xDF78, 0x3808, 0xF036, 0x3809, 0x00E3, 0x3809, 0x1187, 0x3809, 0x221E, 0x3809, 0x32AA, 0x3809, 0x4328, 0x3809, 0x539E, 0x3809, 0x6406, 0x3809, 0x7463, 0x3809, 0x84B3, 0x3809, 0x94FA, 0x3809, 0xA536, 0x3809, 0xB564, 0x3809, 0xC588, 0x3809, 0xD5A0, 0x3809, 0xE5B0, 0x3809, 0xF5B3, 0x380A, 0x05AA, 0x380A, 0x1597, 0x380A, 0x257B, 0x380A, 0x3551, 0x380A, 0x451D, 0x380A, 0x54E0, 0x380A, 0x6498, 0x380A, 0x7445, 0x380A, 0x83E8, 0x380A, 0x937F, 0x380A, 0xA30B, 0x380A, 0xB28F, 0x380A, 0xC208, 0x380A, 0xD176, 0x380A, 0xE0D9, 0x380A, 0xF034, 0x380A, 0xFF84, 0x380B, 0x0ECB, 0x380B, 0x1E08, 0x380B, 0x2D39, 0x380B, 0x3C60, 0x380B, 0x4B7E, 0x380B, 0x5A94, 0x380B, 0x699F, 0x380B, 0x789F, 0x380B, 0x8797, 0x380B, 0x9686, 0x380B, 0xA56B, 0x380B, 0xB445, 0x380B, 0xC316, 0x380B, 0xD1DF, 0x380B, 0xE09D, 0x380B, 0xEF53, 0x380B, 0xFDFE, 0x380C, 0x0CA0, 0x380C, 0x1B3B, 0x380C, 0x29CD, 0x380C, 0x3854, 0x380C, 0x46D3, 0x380C, 0x5547, 0x380C, 0x63B5, 0x380C, 0x7218, 0x380C, 0x8073, 0x380C, 0x8EC3, 0x380C, 0x9D0E, 0x380C, 0xAB4E, 0x380C, 0xB985, 0x380C, 0xC7B4, 0x380C, 0xD5DB, 0x380C, 0xE3FA, 0x380C, 0xF20D, 0x380D, 0x001C, 0x380D, 0x0E1F, 0x380D, 0x1C1C, 0x380D, 0x2A0F, 0x380D, 0x37F9, 0x380D, 0x45DE, 0x380D, 0x53B8, 0x380D, 0x618A, 0x380D, 0x6F56, 0x380D, 0x7D17, 0x380D, 0x8AD3, 0x380D, 0x9884, 0x380D, 0xA62F, 0x380D, 0xB3CF, 0x380D, 0xC16A, 0x380D, 0xCEFC, 0x380D, 0xDC87, 0x380D, 0xEA08, 0x380D, 0xF782, 0x380E, 0x04F6, 0x380E, 0x1260, 0x380E, 0x1FC3, 0x380E, 0x2D1F, 0x380E, 0x3A75, 0x380E, 0x47C0, 0x380E, 0x5505, 0x380E, 0x6243, 0x380E, 0x6F78, 0x380E, 0x7CA7, 0x380E, 0x89CE, 0x380E, 0x96ED, 0x380E, 0xA404, 0x380E, 0xB115, 0x380E, 0xBE1E, 0x380E, 0xCB22, 0x380E, 0xD81D, 0x380E, 0xE510, 0x380E, 0xF1FB, 0x380E, 0xFEE0, 0x380F, 0x0BC0, 0x380F, 0x1898, 0x380F, 0x2567, 0x380F, 0x3231, 0x380F, 0x3EF2, 0x380F, 0x4BAE, 0x380F, 0x5862, 0x380F, 0x650E, 0x380F, 0x71B4, 0x380F, 0x7E54, 0x380F, 0x8AED, 0x380F, 0x977F, 0x380F, 0xA40A, 0x380F, 0xB08F, 0x380F, 0xBD0C, 0x380F, 0xC983, 0x380F, 0xD5F2, 0x380F, 0xE25C, 0x380F, 0xEEC0, 0x380F, 0xFB1C, 0x3810, 0x0772, 0x3810, 0x13C3, 0x3810, 0x200C, 0x3810, 0x2C4C, 0x3810, 0x388A, 0x3810, 0x44BF, 0x3810, 0x50EF, 0x3810, 0x5D16, 0x3810, 0x6939, 0x3810, 0x7555, 0x3810, 0x816C, 0x3810, 0x8D7B, 0x3810, 0x9985, 0x3810, 0xA588, 0x3810, 0xB184, 0x3810, 0xBD7D, 0x3810, 0xC96E, 0x3810, 0xD559, 0x3810, 0xE13C, 0x3810, 0xED1C, 0x3810, 0xF8F4, 0x3811, 0x04C6, 0x3811, 0x1093, 0x3811, 0x1C58, 0x3811, 0x281A, 0x3811, 0x33D3, 0x3811, 0x3F8A, 0x3811, 0x4B39, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3691, 0x5629, 0x36E6, 0x5A71, 0x3711, 0x563E, 0x3728, 0xBB21, 0x373B, 0xD86E, 0x374C, 0x01A5, 0x375A, 0x017E, 0x3766, 0x5AA2, 0x3771, 0x6665, 0x377B, 0x646F, 0x3782, 0x41DE, 0x3786, 0x73FF, 0x378A, 0x567A, 0x378D, 0xF452, 0x3791, 0x5666, 0x3794, 0x83F4, 0x3797, 0x82FE, 0x379A, 0x588A, 0x379D, 0x08DF, 0x379F, 0x979E, 0x37A2, 0x07E4, 0x37A4, 0x5C6C, 0x37A6, 0x978B, 0x37A8, 0xBB58, 0x37AA, 0xC9AC, 0x37AC, 0xC422, 0x37AE, 0xAC2C, 0x37B0, 0x8318, 0x37B2, 0x4A04, 0x37B4, 0x020F, 0x37B5, 0xAC19, 0x37B7, 0x4909, 0x37B8, 0xD9A6, 0x37BA, 0x5EAA, 0x37BB, 0xD8B5, 0x37BD, 0x4861, 0x37BE, 0xAE42, 0x37C0, 0x0AD6, 0x37C1, 0x5E97, 0x37C2, 0xA9F2, 0x37C3, 0xED56, 0x37C5, 0x291A, 0x37C6, 0x5D9C, 0x37C7, 0x8B2E, 0x37C8, 0xB223, 0x37C9, 0xD2BD, 0x37CA, 0xED43, 0x37CC, 0x01F7, 0x37CD, 0x1116, 0x37CE, 0x1AD6, 0x37CF, 0x1F69, 0x37D0, 0x1F07, 0x37D1, 0x19E0, 0x37D2, 0x101B, 0x37D3, 0x01E9, 0x37D3, 0xEF6C, 0x37D4, 0xD8D0, 0x37D5, 0xBE3A, 0x37D6, 0x9FC1, 0x37D7, 0x7D97, 0x37D8, 0x57CC, 0x37D9, 0x2E81, 0x37DA, 0x01D6, 0x37DA, 0xD1E8, 0x37DB, 0x9ECC, 0x37DC, 0x6899, 0x37DD, 0x2F69, 0x37DD, 0xF34E, 0x37DE, 0xB468, 0x37DF, 0x72C2, 0x37E0, 0x2E73, 0x37E0, 0xE78A, 0x37E1, 0x9E24, 0x37E2, 0x5245, 0x37E3, 0x0405, 0x37E3, 0xB36D, 0x37E4, 0x6099, 0x37E5, 0x0B8A, 0x37E5, 0xB45A, 0x37E6, 0x5B10, 0x37E6, 0xFFB5, 0x37E7, 0xA261, 0x37E8, 0x4319, 0x37E8, 0xE1E7, 0x37E9, 0x7EDD, 0x37EA, 0x19FF, 0x37EA, 0xB35F, 0x37EB, 0x4B01, 0x37EB, 0xE0F1, 0x37EC, 0x753A, 0x37ED, 0x07E6, 0x37ED, 0x98FC, 0x37EE, 0x2880, 0x37EE, 0xB683, 0x37EF, 0x430B, 0x37EF, 0xCE18, 0x37F0, 0x57BF, 0x37F0, 0xDFFC, 0x37F1, 0x66D8, 0x37F1, 0xEC60, 0x37F2, 0x7099, 0x37F2, 0xF387, 0x37F3, 0x752C, 0x37F3, 0xF598, 0x37F4, 0x74CA, 0x37F4, 0xF2CD, 0x37F5, 0x6FA3, 0x37F5, 0xEB54, 0x37F6, 0x65E3, 0x37F6, 0xDF54, 0x37F7, 0x57AC, 0x37F7, 0xCEF7, 0x37F8, 0x4535, 0x37F8, 0xBA6A, 0x37F9, 0x2E98, 0x37F9, 0xA1C9, 0x37FA, 0x13FD, 0x37FA, 0x853F, 0x37FA, 0xF58A, 0x37FB, 0x64E8, 0x37FB, 0xD35A, 0x37FC, 0x40EB, 0x37FC, 0xAD94, 0x37FD, 0x195C, 0x37FD, 0x8449, 0x37FD, 0xEE5F, 0x37FE, 0x579E, 0x37FE, 0xC00D, 0x37FF, 0x27B0, 0x37FF, 0x8E88, 0x37FF, 0xF494, 0x3800, 0x2CED, 0x3800, 0x5F30, 0x3800, 0x9113, 0x3800, 0xC299, 0x3800, 0xF3C1, 0x3801, 0x248E, 0x3801, 0x5500, 0x3801, 0x8518, 0x3801, 0xB4DB, 0x3801, 0xE445, 0x3802, 0x135D, 0x3802, 0x421E, 0x3802, 0x708E, 0x3802, 0x9EAC, 0x3802, 0xCC78, 0x3802, 0xF9F6, 0x3803, 0x2725, 0x3803, 0x5407, 0x3803, 0x809C, 0x3803, 0xACE7, 0x3803, 0xD8E7, 0x3804, 0x049D, 0x3804, 0x3009, 0x3804, 0x5B31, 0x3804, 0x8611, 0x3804, 0xB0AC, 0x3804, 0xDAFF, 0x3805, 0x0511, 0x3805, 0x2EE1, 0x3805, 0x586C, 0x3805, 0x81B8, 0x3805, 0xAAC2, 0x3805, 0xD38C, 0x3805, 0xFC15, 0x3806, 0x2464, 0x3806, 0x4C71, 0x3806, 0x7444, 0x3806, 0x9BDB, 0x3806, 0xC335, 0x3806, 0xEA55, 0x3807, 0x113A, 0x3807, 0x37E7, 0x3807, 0x5E5A, 0x3807, 0x8496, 0x3807, 0xAA99, 0x3807, 0xD068, 0x3807, 0xF5FF, 0x3808, 0x1B60, 0x3808, 0x408C, 0x3808, 0x6584, 0x3808, 0x8A48, 0x3808, 0xAEDA, 0x3808, 0xD338, 0x3808, 0xF765, 0x3809, 0x1B5D, 0x3809, 0x3F27, 0x3809, 0x62BF, 0x3809, 0x8629, 0x3809, 0xA961, 0x3809, 0xCC6D, 0x3809, 0xEF47, 0x380A, 0x11F3, 0x380A, 0x3473, 0x380A, 0x56C7, 0x380A, 0x78EC, 0x380A, 0x9AE5, 0x380A, 0xBCB2, 0x380A, 0xDE53, 0x380A, 0xFFCB, 0x380B, 0x2117, 0x380B, 0x423A, 0x380B, 0x6333, 0x380B, 0x8404, 0x380B, 0xA4AB, 0x380B, 0xC528, 0x380B, 0xE580, 0x380C, 0x05AE, 0x380C, 0x25B5, 0x380C, 0x4594, 0x380C, 0x654E, 0x380C, 0x84E3, 0x380C, 0xA450, 0x380C, 0xC397, 0x380C, 0xE2BB, 0x380D, 0x01B8, 0x380D, 0x2091, 0x380D, 0x3F47, 0x380D, 0x5DD8, 0x380D, 0x7C46, 0x380D, 0x9A91, 0x380D, 0xB8BA, 0x380D, 0xD6C0, 0x380D, 0xF4A2, 0x380E, 0x1265, 0x380E, 0x3005, 0x380E, 0x4D81, 0x380E, 0x6ADF, 0x380E, 0x881C, 0x380E, 0xA538, 0x380E, 0xC236, 0x380E, 0xDF10, 0x380E, 0xFBCE, 0x380F, 0x1869, 0x380F, 0x34E8, 0x380F, 0x5146, 0x380F, 0x6D86, 0x380F, 0x89AB, 0x380F, 0xA5AF, 0x380F, 0xC194, 0x380F, 0xDD5E, 0x380F, 0xF909, 0x3810, 0x1497, 0x3810, 0x3009, 0x3810, 0x4B5C, 0x3810, 0x6694, 0x3810, 0x81B1, 0x3810, 0x9CB2, 0x3810, 0xB798, 0x3810, 0xD25F, 0x3810, 0xED0E, 0x3811, 0x07A1, 0x3811, 0x2219, 0x3811, 0x3C75, 0x3811, 0x56B9, 0x3811, 0x70E4, 0x3811, 0x8AF0, 0x3811, 0xA4E7, 0x3811, 0xBEC2, 0x3811, 0xD884, 0x3811, 0xF22B, 0x3812, 0x0BBC, 0x3812, 0x2534, 0x3812, 0x3E90, 0x3812, 0x57D7, 0x3812, 0x7105, 0x3812, 0x8A1A, 0x3812, 0xA317, 0x3812, 0xBBFD, 0x3812, 0xD4CB, 0x3812, 0xED82, 0x3813, 0x0621, 0x3813, 0x1EAA, 0x3813, 0x371A, 0x3813, 0x4F77, 0x3813, 0x67BC, 0x3813, 0x7FEA, 0x3813, 0x97FF, 0x3813, 0xB002, 0x3813, 0xC7EE, 0x3813, 0xDFC4, 0x3813, 0xF785, 0x3814, 0x0F2F, 0x3814, 0x26C6, 0x3814, 0x3E47, 0x3814, 0x55B2, 0x3814, 0x6D07, 0x3814, 0x8449, 0x3814, 0x9B78, 0x3814, 0xB290, 0x3814, 0xC996, 0x3814, 0xE085, 0x3814, 0xF764, 0x3815, 0x0E2A, 0x3815, 0x24E0, 0x3815, 0x3B82, 0x3815, 0x520F, 0x3815, 0x688B, 0x3815, 0x7EF1, 0x3815, 0x9546, 0x3815, 0xAB85, 0x3815, 0xC1B4, 0x3815, 0xD7D0, 0x3815, 0xEDDB, 0x3816, 0x03D1, 0x3816, 0x19B5, 0x3816, 0x2F87, 0x3816, 0x4548, 0x3816, 0x5AF6, 0x3816, 0x7090, 0x3816, 0x861D, 0x3816, 0x9B94, 0x3816, 0xB0FD, 0x3816, 0xC653, 0x3816, 0xDB95, 0x3816, 0xF0CA, 0x3817, 0x05EC, 0x3817, 0x1AFD, 0x3817, 0x2FFE, 0x3817, 0x44EE, 0x3817, 0x59CB, 0x3817, 0x6E9A, 0x3817, 0x8358, 0x3817, 0x9804, 0x3817, 0xACA1, 0x3817, 0xC12F, 0x3817, 0xD5AB, 0x3817, 0xEA1A, 0x3817, 0xFE76, 0x3818, 0x12C4, 0x3818, 0x2701, 0x3818, 0x3B2E, 0x3818, 0x4F4D, 0x3818, 0x635C, 0x3818, 0x775D, 0x3818, 0x8B4E, 0x3818, 0x9F30, 0x3818, 0xB303, 0x3818, 0xC6C4, 0x3818, 0xDA7B, 0x3818, 0xEE21, 0x3819, 0x01B7, 0x3819, 0x153F, 0x3819, 0x28B9, 0x3819, 0x3C26, 0x3819, 0x4F82, 0x3819, 0x62D3, 0x3819, 0x7614, 0x3819, 0x8946, 0x3819, 0x9C6B, 0x3819, 0xAF83, 0x3819, 0xC28A, 0x3819, 0xD586, 0x3819, 0xE874, 0x3819, 0xFB54, 0x381A, 0x0E27, 0x381A, 0x20EB, 0x381A, 0x33A3, 0x381A, 0x464C, 0x381A, 0x58E8, 0x381A, 0x6B78, 0x381A, 0x7DFB, 0x381A, 0x9070, 0x381A, 0xA2DA, 0x381A, 0xB534, 0x381A, 0xC783, 0x381A, 0xD9C6, 0x381A, 0xEBFC, 0x381A, 0xFE25, 0x381B, 0x103F, 0x381B, 0x2251, 0x381B, 0x3453, 0x381B, 0x464A, 0x381B, 0x5835, 0x381B, 0x6A13, 0x381B, 0x7BE6, 0x381B, 0x8DAB, 0x381B, 0x9F66, 0x381B, 0xB115, 0x381B, 0xC2B6, 0x381B, 0xD44D, 0x381B, 0xE5D8, 0x381B, 0xF759, 0x381C, 0x08CC, 0x381C, 0x1A33, 0x381C, 0x2B90, 0x381C, 0x3CDF, 0x381C, 0x4E26, 0x381C, 0x5F5F, 0x381C, 0x708D, 0x381C, 0x81B3, 0x381C, 0x92CB, 0x381C, 0xA3D8, 0x381C, 0xB4DA, 0x381C, 0xC5D1, 0x381C, 0xD6BD, 0x381C, 0xE79E, 0x381C, 0xF874, 0x381D, 0x0940, 0x381D, 0x1A02, 0x381D, 0x2AB7, 0x381D, 0x3B64, 0x381D, 0x4C03, 0x381D, 0x5C9A, 0x381D, 0x6D26, 0x381D, 0x7DAA, 0x381D, 0x8E20, 0x381D, 0x9E8D, 0x381D, 0xAEF0, 0x381D, 0xBF48, 0x381D, 0xCF97, 0x381D, 0xDFDB, 0x381D, 0xF015, 0x381E, 0x0046, 0x381E, 0x106C, 0x381E, 0x2087, 0x381E, 0x309A, 0x381E, 0x40A2, 0x381E, 0x50A2, 0x381E, 0x6097, 0x381E, 0x7080, 0x381E, 0x8062, 0x381E, 0x903B, 0x381E, 0xA009, 0x381E, 0xAFCF, 0x381E, 0xBF8A, 0x381E, 0xCF3D, 0x381E, 0xDEE4, 0x381E, 0xEE84, 0x381E, 0xFE1B, 0x381F, 0x0DA7, 0x381F, 0x1D2B, 0x381F, 0x2CA4, 0x381F, 0x3C18, 0x381F, 0x4B7E, 0x381F, 0x5ADE, 0x381F, 0x6A33, 0x381F, 0x7983, 0x381F, 0x88C5, 0x381F, 0x9801, 0x381F, 0xA733, 0x381F, 0xB65F, 0x381F, 0xC580, 0x381F, 0xD499, 0x381F, 0xE3A6, 0x381F, 0xF2AF, 0x3820, 0x01AC, 0x3820, 0x10A4, 0x3820, 0x1F91, 0x3820, 0x2E75, 0x3820, 0x3D52, 0x3820, 0x4C26, 0x3820, 0x5AF1, 0x3820, 0x69B5, 0x3820, 0x7870, 0x3820, 0x8723, 0x3820, 0x95CE, 0x3820, 0xA471, 0x3820, 0xB30B, 0x3820, 0xC19D, 0x3820, 0xD027, 0x3820, 0xDEA9, 0x3820, 0xED22, 0x3820, 0xFB93, 0x3821, 0x09FF, 0x3821, 0x185F, 0x3821, 0x26BB, 0x3821, 0x350D, 0x3821, 0x4358, 0x3821, 0x519A, 0x3821, 0x5FD5, 0x3821, 0x6E09, 0x3821, 0x7C36, 0x3821, 0x8A5A, 0x3821, 0x9876, 0x3821, 0xA689, 0x3821, 0xB497, 0x3821, 0xC29D, 0x3821, 0xD09B, 0x3821, 0xDE93, 0x3821, 0xEC83, 0x3821, 0xFA6B, 0x3822, 0x084A, 0x3822, 0x1624, 0x3822, 0x23F6, 0x3822, 0x31C2, 0x3822, 0x3F86, 0x3822, 0x4D42, 0x3822, 0x5AF8, 0x3822, 0x68A6, 0x3822, 0x764B, 0x3822, 0x83EC, 0x3822, 0x9184, 0x3822, 0x9F16, 0x3822, 0xACA0, 0x3822, 0xBA25, 0x3822, 0xC7A1, 0x3822, 0xD516, 0x3822, 0xE284, 0x3822, 0xEFEE, 0x3822, 0xFD4E, 0x3823, 0x0AAA, 0x3823, 0x17FD, 0x3823, 0x2548, 0x3823, 0x3290, 0x3823, 0x3FCE, 0x3823, 0x4D08, 0x3823, 0x5A3A, 0x3823, 0x6764, 0x3823, 0x7489, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36A6, 0x196A, 0x3703, 0xA179, 0x3726, 0x1985, 0x3740, 0xD603, 0x3756, 0xAE5C, 0x3769, 0x269A, 0x3779, 0x2674, 0x3783, 0xA19B, 0x3789, 0xF17B, 0x378F, 0xA735, 0x3794, 0xDDA7, 0x3799, 0xA93E, 0x379E, 0x19D1, 0x37A2, 0x3BED, 0x37A6, 0x19B9, 0x37A9, 0xBB85, 0x37AD, 0x281F, 0x37B0, 0x6554, 0x37B3, 0x77FF, 0x37B6, 0x6449, 0x37B9, 0x2DBF, 0x37BB, 0xD77C, 0x37BE, 0x6436, 0x37C0, 0xD64A, 0x37C3, 0x2FCD, 0x37C5, 0x729C, 0x37C7, 0xA05B, 0x37C9, 0xBA8F, 0x37CB, 0xC27C, 0x37CD, 0xB962, 0x37CF, 0xA04E, 0x37D1, 0x783C, 0x37D3, 0x4214, 0x37D4, 0xFEA6, 0x37D6, 0xAEB4, 0x37D8, 0x52E6, 0x37D9, 0xEBE9, 0x37DB, 0x7A4A, 0x37DC, 0xFE94, 0x37DE, 0x7949, 0x37DF, 0xEADE, 0x37E1, 0x53C0, 0x37E2, 0xB453, 0x37E4, 0x0CFF, 0x37E5, 0x5E11, 0x37E6, 0xA7EB, 0x37E7, 0xEACB, 0x37E9, 0x2708, 0x37EA, 0x5CDF, 0x37EB, 0x8C97, 0x37EC, 0xB667, 0x37ED, 0xDA86, 0x37EE, 0xF937, 0x37F0, 0x129F, 0x37F1, 0x26FB, 0x37F2, 0x366C, 0x37F3, 0x4129, 0x37F4, 0x4753, 0x37F5, 0x491C, 0x37F6, 0x4699, 0x37F7, 0x3FFC, 0x37F8, 0x3561, 0x37F9, 0x26E8, 0x37FA, 0x14B2, 0x37FA, 0xFEDC, 0x37FB, 0xE57A, 0x37FC, 0xC8B4, 0x37FD, 0xA899, 0x37FE, 0x8546, 0x37FF, 0x5ED0, 0x3800, 0x1AAA, 0x3800, 0x8470, 0x3800, 0xECC6, 0x3801, 0x53B4, 0x3801, 0xB944, 0x3802, 0x1D83, 0x3802, 0x8075, 0x3802, 0xE225, 0x3803, 0x429C, 0x3803, 0xA1E0, 0x3803, 0xFFF7, 0x3804, 0x5CE9, 0x3804, 0xB8C2, 0x3805, 0x1380, 0x3805, 0x6D30, 0x3805, 0xC5D9, 0x3806, 0x1D7C, 0x3806, 0x7423, 0x3806, 0xC9D2, 0x3807, 0x1E8D, 0x3807, 0x725B, 0x3807, 0xC542, 0x3808, 0x1748, 0x3808, 0x686D, 0x3808, 0xB8B8, 0x3809, 0x0830, 0x3809, 0x56D7, 0x3809, 0xA4B2, 0x3809, 0xF1C5, 0x380A, 0x3E12, 0x380A, 0x899E, 0x380A, 0xD470, 0x380B, 0x1E86, 0x380B, 0x67E7, 0x380B, 0xB098, 0x380B, 0xF89A, 0x380C, 0x3FEE, 0x380C, 0x869D, 0x380C, 0xCCA5, 0x380D, 0x120A, 0x380D, 0x56D0, 0x380D, 0x9AFC, 0x380D, 0xDE8B, 0x380E, 0x2183, 0x380E, 0x63EA, 0x380E, 0xA5BC, 0x380E, 0xE6FF, 0x380F, 0x27B6, 0x380F, 0x67E1, 0x380F, 0xA785, 0x380F, 0xE6A2, 0x3810, 0x253B, 0x3810, 0x6353, 0x3810, 0xA0ED, 0x3810, 0xDE06, 0x3811, 0x1AA5, 0x3811, 0x56C9, 0x3811, 0x9277, 0x3811, 0xCDAF, 0x3812, 0x0873, 0x3812, 0x42C3, 0x3812, 0x7CA3, 0x3812, 0xB615, 0x3812, 0xEF16, 0x3813, 0x27AF, 0x3813, 0x5FDD, 0x3813, 0x97A2, 0x3813, 0xCF01, 0x3814, 0x05F8, 0x3814, 0x3C8F, 0x3814, 0x72C0, 0x3814, 0xA891, 0x3814, 0xDDFF, 0x3815, 0x1312, 0x3815, 0x47C5, 0x3815, 0x7C1E, 0x3815, 0xB01B, 0x3815, 0xE3C1, 0x3816, 0x170C, 0x3816, 0x49FF, 0x3816, 0x7C9C, 0x3816, 0xAEE5, 0x3816, 0xE0DB, 0x3817, 0x127C, 0x3817, 0x43CD, 0x3817, 0x74CE, 0x3817, 0xA57D, 0x3817, 0xD5DF, 0x3818, 0x05F4, 0x3818, 0x35BA, 0x3818, 0x6538, 0x3818, 0x9469, 0x3818, 0xC34F, 0x3818, 0xF1EC, 0x3819, 0x2041, 0x3819, 0x4E51, 0x3819, 0x7C1A, 0x3819, 0xA99B, 0x3819, 0xD6DA, 0x381A, 0x03D2, 0x381A, 0x308B, 0x381A, 0x5CFF, 0x381A, 0x8931, 0x381A, 0xB524, 0x381A, 0xE0D4, 0x381B, 0x0C49, 0x381B, 0x377B, 0x381B, 0x6271, 0x381B, 0x8D2A, 0x381B, 0xB7A7, 0x381B, 0xE1E5, 0x381C, 0x0BEC, 0x381C, 0x35B6, 0x381C, 0x5F46, 0x381C, 0x889D, 0x381C, 0xB1BA, 0x381C, 0xDAA0, 0x381D, 0x034F, 0x381D, 0x2BC8, 0x381D, 0x5409, 0x381D, 0x7C13, 0x381D, 0xA3E9, 0x381D, 0xCB8B, 0x381D, 0xF2F8, 0x381E, 0x1A32, 0x381E, 0x4137, 0x381E, 0x680D, 0x381E, 0x8EAC, 0x381E, 0xB51D, 0x381E, 0xDB5C, 0x381F, 0x016C, 0x381F, 0x2749, 0x381F, 0x4CF9, 0x381F, 0x7278, 0x381F, 0x97CA, 0x381F, 0xBCEC, 0x381F, 0xE1E1, 0x3820, 0x06A8, 0x3820, 0x2B42, 0x3820, 0x4FB1, 0x3820, 0x73F3, 0x3820, 0x980A, 0x3820, 0xBBF5, 0x3820, 0xDFB3, 0x3821, 0x0349, 0x3821, 0x26B5, 0x3821, 0x49F8, 0x3821, 0x6D0F, 0x3821, 0x9000, 0x3821, 0xB2C7, 0x3821, 0xD565, 0x3821, 0xF7DC, 0x3822, 0x1A2B, 0x3822, 0x3C55, 0x3822, 0x5E57, 0x3822, 0x8032, 0x3822, 0xA1E6, 0x3822, 0xC377, 0x3822, 0xE4E1, 0x3823, 0x0625, 0x3823, 0x2745, 0x3823, 0x4841, 0x3823, 0x6917, 0x3823, 0x89CC, 0x3823, 0xAA5A, 0x3823, 0xCAC7, 0x3823, 0xEB11, 0x3824, 0x0B39, 0x3824, 0x2B3E, 0x3824, 0x4B1F, 0x3824, 0x6AE2, 0x3824, 0x8A81, 0x3824, 0xAA00, 0x3824, 0xC95D, 0x3824, 0xE899, 0x3825, 0x07B4, 0x3825, 0x26B1, 0x3825, 0x458D, 0x3825, 0x6448, 0x3825, 0x82E5, 0x3825, 0xA163, 0x3825, 0xBFC1, 0x3825, 0xDE03, 0x3825, 0xFC24, 0x3826, 0x1A27, 0x3826, 0x380B, 0x3826, 0x55D5, 0x3826, 0x737F, 0x3826, 0x910C, 0x3826, 0xAE7B, 0x3826, 0xCBCD, 0x3826, 0xE905, 0x3827, 0x0621, 0x3827, 0x231F, 0x3827, 0x4001, 0x3827, 0x5CC5, 0x3827, 0x7970, 0x3827, 0x9600, 0x3827, 0xB274, 0x3827, 0xCECD, 0x3827, 0xEB0D, 0x3828, 0x0731, 0x3828, 0x233A, 0x3828, 0x3F2B, 0x3828, 0x5B00, 0x3828, 0x76BC, 0x3828, 0x925F, 0x3828, 0xADE7, 0x3828, 0xC956, 0x3828, 0xE4AC, 0x3828, 0xFFED, 0x3829, 0x1B12, 0x3829, 0x361E, 0x3829, 0x5111, 0x3829, 0x6BEF, 0x3829, 0x86B1, 0x3829, 0xA15D, 0x3829, 0xBBF3, 0x3829, 0xD670, 0x3829, 0xF0D4, 0x382A, 0x0B23, 0x382A, 0x255B, 0x382A, 0x3F7B, 0x382A, 0x5985, 0x382A, 0x7379, 0x382A, 0x8D57, 0x382A, 0xA71E, 0x382A, 0xC0CE, 0x382A, 0xDA69, 0x382A, 0xF3EC, 0x382B, 0x0D5C, 0x382B, 0x26B6, 0x382B, 0x3FFA, 0x382B, 0x592B, 0x382B, 0x7245, 0x382B, 0x8B4A, 0x382B, 0xA439, 0x382B, 0xBD14, 0x382B, 0xD5DC, 0x382B, 0xEE8E, 0x382C, 0x072D, 0x382C, 0x1FB6, 0x382C, 0x382C, 0x382C, 0x508F, 0x382C, 0x68DE, 0x382C, 0x8117, 0x382C, 0x993D, 0x382C, 0xB153, 0x382C, 0xC952, 0x382C, 0xE13E, 0x382C, 0xF91A, 0x382D, 0x10E0, 0x382D, 0x2895, 0x382D, 0x4037, 0x382D, 0x57C6, 0x382D, 0x6F42, 0x382D, 0x86AD, 0x382D, 0x9E05, 0x382D, 0xB54C, 0x382D, 0xCC80, 0x382D, 0xE3A1, 0x382D, 0xFAB1, 0x382E, 0x11AE, 0x382E, 0x289B, 0x382E, 0x3F77, 0x382E, 0x5643, 0x382E, 0x6CFB, 0x382E, 0x83A3, 0x382E, 0x9A38, 0x382E, 0xB0BF, 0x382E, 0xC733, 0x382E, 0xDD96, 0x382E, 0xF3E9, 0x382F, 0x0A2B, 0x382F, 0x205C, 0x382F, 0x3680, 0x382F, 0x4C91, 0x382F, 0x6291, 0x382F, 0x7884, 0x382F, 0x8E63, 0x382F, 0xA435, 0x382F, 0xB9F6, 0x382F, 0xCFA6, 0x382F, 0xE549, 0x382F, 0xFADB, 0x3830, 0x105D, 0x3830, 0x25D1, 0x3830, 0x3B35, 0x3830, 0x508B, 0x3830, 0x65D0, 0x3830, 0x7B05, 0x3830, 0x902F, 0x3830, 0xA545, 0x3830, 0xBA51, 0x3830, 0xCF4C, 0x3830, 0xE437, 0x3830, 0xF916, 0x3831, 0x0DE5, 0x3831, 0x22A7, 0x3831, 0x3758, 0x3831, 0x4BFE, 0x3831, 0x6093, 0x3831, 0x751B, 0x3831, 0x8995, 0x3831, 0x9E01, 0x3831, 0xB25F, 0x3831, 0xC6B0, 0x3831, 0xDAF3, 0x3831, 0xEF28, 0x3832, 0x034F, 0x3832, 0x1769, 0x3832, 0x2B75, 0x3832, 0x3F73, 0x3832, 0x5364, 0x3832, 0x6749, 0x3832, 0x7B21, 0x3832, 0x8EEB, 0x3832, 0xA2A7, 0x3832, 0xB659, 0x3832, 0xC9FC, 0x3832, 0xDD92, 0x3832, 0xF11D, 0x3833, 0x049A, 0x3833, 0x1809, 0x3833, 0x2B6D, 0x3833, 0x3EC4, 0x3833, 0x520F, 0x3833, 0x654D, 0x3833, 0x787D, 0x3833, 0x8BA5, 0x3833, 0x9EBC, 0x3833, 0xB1CB, 0x3833, 0xC4CD, 0x3833, 0xD7C0, 0x3833, 0xEAAC, 0x3833, 0xFD89, 0x3834, 0x1059, 0x3834, 0x231E, 0x3834, 0x35D8, 0x3834, 0x4887, 0x3834, 0x5B2B, 0x3834, 0x6DC1, 0x3834, 0x804C, 0x3834, 0x92CC, 0x3834, 0xA541, 0x3834, 0xB7AB, 0x3834, 0xCA0B, 0x3834, 0xDC5C, 0x3834, 0xEEA5, 0x3835, 0x00E1, 0x3835, 0x1311, 0x3835, 0x2539, 0x3835, 0x3754, 0x3835, 0x4966, 0x3835, 0x5B6A, 0x3835, 0x6D67, 0x3835, 0x7F55, 0x3835, 0x913B, 0x3835, 0xA316, 0x3835, 0xB4E7, 0x3835, 0xC6AC, 0x3835, 0xD866, 0x3835, 0xEA18, 0x3835, 0xFBBC, 0x3836, 0x0D58, 0x3836, 0x1EE9, 0x3836, 0x3072, 0x3836, 0x41ED, 0x3836, 0x5360, 0x3836, 0x64CA, 0x3836, 0x7627, 0x3836, 0x877C, 0x3836, 0x98C8, 0x3836, 0xAA07, 0x3836, 0xBB40, 0x3836, 0xCC6B, 0x3836, 0xDD8E, 0x3836, 0xEEA6, 0x3836, 0xFFB6, 0x3837, 0x10BD, 0x3837, 0x21B7, 0x3837, 0x32AB, 0x3837, 0x4392, 0x3837, 0x5473, 0x3837, 0x6549, 0x3837, 0x7614, 0x3837, 0x86D7, 0x3837, 0x9792, 0x3837, 0xA841, 0x3837, 0xB8E9, 0x3837, 0xC988, 0x3837, 0xDA1C, 0x3837, 0xEAA8, 0x3837, 0xFB29, 0x3838, 0x0BA1, 0x3838, 0x1C12, 0x3838, 0x2C7A, 0x3838, 0x3CD7, 0x3838, 0x4D2F, 0x3838, 0x5D7B, 0x3838, 0x6DBD, 0x3838, 0x7DF9, 0x3838, 0x8E2A, 0x3838, 0x9E53, 0x3838, 0xAE74, 0x3838, 0xBE8C, 0x3838, 0xCE9C, 0x3838, 0xDEA2, 0x3838, 0xEEA1, 0x3838, 0xFE96, 0x3839, 0x0E82, 0x3839, 0x1E67, 0x3839, 0x2E43, 0x3839, 0x3E19, 0x3839, 0x4DE4, 0x3839, 0x5DA8, 0x3839, 0x6D63, 0x3839, 0x7D15, 0x3839, 0x8CC0, 0x3839, 0x9C62, 0x3839, 0xABFC, 0x3839, 0xBB8E, 0x3839, 0xCB17, 0x3839, 0xDA98, 0x3839, 0xEA14, 0x3839, 0xF985, 0x383A, 0x08F0, 0x383A, 0x1850, 0x383A, 0x27AB, 0x383A, 0x36FE, 0x383A, 0x4648, 0x383A, 0x558A, 0x383A, 0x64C6, 0x383A, 0x73F8, 0x383A, 0x8324, 0x383A, 0x9248, 0x383A, 0xA166, 0x383A, 0xB079, 0x383A, 0xBF87, 0x383A, 0xCE8D, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36C1, 0xC874, 0x3719, 0x91D6, 0x3741, 0xC897, 0x3760, 0xF9D6, 0x377A, 0x7647, 0x3788, 0x0153, 0x3791, 0x568D, 0x3799, 0x9207, 0x37A0, 0xEF37, 0x37A7, 0x9893, 0x37AD, 0xAD70, 0x37B3, 0x45A3, 0x37B8, 0x739F, 0x37BD, 0x461A, 0x37C1, 0xC8E4, 0x37C6, 0x05A1, 0x37CA, 0x045E, 0x37CD, 0xCBC4, 0x37D1, 0x618F, 0x37D4, 0xCA8D, 0x37D8, 0x0AF0, 0x37DB, 0x264D, 0x37DE, 0x1FD2, 0x37E0, 0xFA3F, 0x37E3, 0xB805, 0x37E6, 0x5B4C, 0x37E8, 0xE607, 0x37EB, 0x59E9, 0x37ED, 0xB882, 0x37F0, 0x0333, 0x37F2, 0x3B4C, 0x37F4, 0x61E4, 0x37F6, 0x7808, 0x37F8, 0x7EB7, 0x37FA, 0x76C6, 0x37FC, 0x6105, 0x37FE, 0x3E31, 0x3800, 0x077C, 0x3800, 0xE9FE, 0x3801, 0xC6E7, 0x3802, 0x9E7D, 0x3803, 0x7102, 0x3804, 0x3EAF, 0x3805, 0x07BE, 0x3805, 0xCC60, 0x3806, 0x8CC7, 0x3807, 0x4922, 0x3808, 0x019A, 0x3808, 0xB659, 0x3809, 0x6781, 0x380A, 0x153C, 0x380A, 0xBFA6, 0x380B, 0x66DF, 0x380C, 0x0B09, 0x380C, 0xAC3D, 0x380D, 0x4A98, 0x380D, 0xE630, 0x380E, 0x7F1F, 0x380F, 0x157D, 0x380F, 0xA95D, 0x3810, 0x3AD6, 0x3810, 0xC9FD, 0x3811, 0x56E2, 0x3811, 0xE197, 0x3812, 0x6A2E, 0x3812, 0xF0B8, 0x3813, 0x7543, 0x3813, 0xF7DF, 0x3814, 0x7898, 0x3814, 0xF77F, 0x3815, 0x74A2, 0x3815, 0xF007, 0x3816, 0x69C2, 0x3816, 0xE1D8, 0x3817, 0x5857, 0x3817, 0xCD4B, 0x3818, 0x40BB, 0x3818, 0xB2B3, 0x3819, 0x233D, 0x3819, 0x9261, 0x381A, 0x0026, 0x381A, 0x6C99, 0x381A, 0xD7BF, 0x381B, 0x419E, 0x381B, 0xAA43, 0x381C, 0x11B0, 0x381C, 0x77F0, 0x381C, 0xDD08, 0x381D, 0x40FC, 0x381D, 0xA3D8, 0x381E, 0x059F, 0x381E, 0x6658, 0x381E, 0xC609, 0x381F, 0x24B5, 0x381F, 0x8264, 0x381F, 0xDF19, 0x3820, 0x3ADC, 0x3820, 0x95B0, 0x3820, 0xEF9A, 0x3821, 0x48A0, 0x3821, 0xA0C5, 0x3821, 0xF80E, 0x3822, 0x4E7E, 0x3822, 0xA41C, 0x3822, 0xF8E7, 0x3823, 0x4CEA, 0x3823, 0xA024, 0x3823, 0xF298, 0x3824, 0x444E, 0x3824, 0x9544, 0x3824, 0xE581, 0x3825, 0x3507, 0x3825, 0x83D9, 0x3825, 0xD1FC, 0x3826, 0x1F72, 0x3826, 0x6C40, 0x3826, 0xB864, 0x3827, 0x03E2, 0x3827, 0x4EC2, 0x3827, 0x98FF, 0x3827, 0xE2A2, 0x3828, 0x2BAB, 0x3828, 0x741D, 0x3828, 0xBBF8, 0x3829, 0x0341, 0x3829, 0x49FB, 0x3829, 0x9026, 0x3829, 0xD5C5, 0x382A, 0x1ADB, 0x382A, 0x5F6A, 0x382A, 0xA375, 0x382A, 0xE6F9, 0x382B, 0x29FD, 0x382B, 0x6C81, 0x382B, 0xAE87, 0x382B, 0xF015, 0x382C, 0x3124, 0x382C, 0x71BC, 0x382C, 0xB1DF, 0x382C, 0xF18E, 0x382D, 0x30C7, 0x382D, 0x6F8F, 0x382D, 0xADE9, 0x382D, 0xEBD2, 0x382E, 0x294E, 0x382E, 0x6661, 0x382E, 0xA309, 0x382E, 0xDF48, 0x382F, 0x1B1F, 0x382F, 0x5693, 0x382F, 0x919F, 0x382F, 0xCC4A, 0x3830, 0x0692, 0x3830, 0x407A, 0x3830, 0x7A02, 0x3830, 0xB330, 0x3830, 0xEBFD, 0x3831, 0x246F, 0x3831, 0x5C87, 0x3831, 0x9444, 0x3831, 0xCBA9, 0x3832, 0x02B8, 0x3832, 0x3970, 0x3832, 0x6FD3, 0x3832, 0xA5E3, 0x3832, 0xDB9E, 0x3833, 0x1106, 0x3833, 0x461F, 0x3833, 0x7AE8, 0x3833, 0xAF61, 0x3833, 0xE38B, 0x3834, 0x176A, 0x3834, 0x4AFA, 0x3834, 0x7E3F, 0x3834, 0xB13A, 0x3834, 0xE3E8, 0x3835, 0x1652, 0x3835, 0x4871, 0x3835, 0x7A46, 0x3835, 0xABD9, 0x3835, 0xDD22, 0x3836, 0x0E29, 0x3836, 0x3EEB, 0x3836, 0x6F69, 0x3836, 0x9FA2, 0x3836, 0xCF9B, 0x3836, 0xFF53, 0x3837, 0x2EC8, 0x3837, 0x5DFF, 0x3837, 0x8CF6, 0x3837, 0xBBAE, 0x3837, 0xEA27, 0x3838, 0x1863, 0x3838, 0x4663, 0x3838, 0x7426, 0x3838, 0xA1B0, 0x3838, 0xCEFA, 0x3838, 0xFC0D, 0x3839, 0x28E7, 0x3839, 0x5584, 0x3839, 0x81EA, 0x3839, 0xAE19, 0x3839, 0xDA0F, 0x383A, 0x05D0, 0x383A, 0x315B, 0x383A, 0x5CAB, 0x383A, 0x87CA, 0x383A, 0xB2B2, 0x383A, 0xDD66, 0x383B, 0x07E9, 0x383B, 0x3234, 0x383B, 0x5C4E, 0x383B, 0x8637, 0x383B, 0xAFEB, 0x383B, 0xD970, 0x383C, 0x02C2, 0x383C, 0x2BE4, 0x383C, 0x54D8, 0x383C, 0x7D9A, 0x383C, 0xA62B, 0x383C, 0xCE90, 0x383C, 0xF6C6, 0x383D, 0x1ECE, 0x383D, 0x46A9, 0x383D, 0x6E53, 0x383D, 0x95D4, 0x383D, 0xBD29, 0x383D, 0xE44F, 0x383E, 0x0B4C, 0x383E, 0x321D, 0x383E, 0x58C1, 0x383E, 0x7F3D, 0x383E, 0xA58D, 0x383E, 0xCBB3, 0x383E, 0xF1B0, 0x383F, 0x1784, 0x383F, 0x3D32, 0x383F, 0x62B3, 0x383F, 0x880E, 0x383F, 0xAD43, 0x383F, 0xD24E, 0x383F, 0xF733, 0x3840, 0x1BF1, 0x3840, 0x4089, 0x3840, 0x64FA, 0x3840, 0x8945, 0x3840, 0xAD6A, 0x3840, 0xD16A, 0x3840, 0xF547, 0x3841, 0x18FE, 0x3841, 0x3C90, 0x3841, 0x5FFF, 0x3841, 0x834A, 0x3841, 0xA672, 0x3841, 0xC976, 0x3841, 0xEC56, 0x3842, 0x0F15, 0x3842, 0x31B0, 0x3842, 0x542A, 0x3842, 0x7684, 0x3842, 0x98B9, 0x3842, 0xBACE, 0x3842, 0xDCC2, 0x3842, 0xFE97, 0x3843, 0x2049, 0x3843, 0x41D9, 0x3843, 0x634C, 0x3843, 0x84A0, 0x3843, 0xA5D1, 0x3843, 0xC6E6, 0x3843, 0xE7DA, 0x3844, 0x08AD, 0x3844, 0x2964, 0x3844, 0x49FB, 0x3844, 0x6A76, 0x3844, 0x8AD0, 0x3844, 0xAB0E, 0x3844, 0xCB2C, 0x3844, 0xEB2E, 0x3845, 0x0B15, 0x3845, 0x2ADD, 0x3845, 0x4A87, 0x3845, 0x6A16, 0x3845, 0x8989, 0x3845, 0xA8E1, 0x3845, 0xC81A, 0x3845, 0xE738, 0x3846, 0x063B, 0x3846, 0x2522, 0x3846, 0x43F0, 0x3846, 0x62A0, 0x3846, 0x8137, 0x3846, 0x9FB0, 0x3846, 0xBE13, 0x3846, 0xDC58, 0x3846, 0xFA87, 0x3847, 0x1897, 0x3847, 0x3692, 0x3847, 0x5471, 0x3847, 0x7238, 0x3847, 0x8FE2, 0x3847, 0xAD77, 0x3847, 0xCAF1, 0x3847, 0xE851, 0x3848, 0x059C, 0x3848, 0x22CB, 0x3848, 0x3FE4, 0x3848, 0x5CE5, 0x3848, 0x79CD, 0x3848, 0x969C, 0x3848, 0xB355, 0x3848, 0xCFF8, 0x3848, 0xEC7F, 0x3849, 0x08F3, 0x3849, 0x254F, 0x3849, 0x4192, 0x3849, 0x5DC1, 0x3849, 0x79D8, 0x3849, 0x95D9, 0x3849, 0xB1C1, 0x3849, 0xCD96, 0x3849, 0xE955, 0x384A, 0x04FB, 0x384A, 0x208D, 0x384A, 0x3C0A, 0x384A, 0x5771, 0x384A, 0x72C2, 0x384A, 0x8DFD, 0x384A, 0xA925, 0x384A, 0xC436, 0x384A, 0xDF35, 0x384A, 0xFA1D, 0x384B, 0x14F0, 0x384B, 0x2FAF, 0x384B, 0x4A5B, 0x384B, 0x64F1, 0x384B, 0x7F71, 0x384B, 0x99E0, 0x384B, 0xB43A, 0x384B, 0xCE80, 0x384B, 0xE8B3, 0x384C, 0x02D3, 0x384C, 0x1CDF, 0x384C, 0x36D6, 0x384C, 0x50BC, 0x384C, 0x6A8F, 0x384C, 0x844C, 0x384C, 0x9DF8, 0x384C, 0xB791, 0x384C, 0xD11A, 0x384C, 0xEA8C, 0x384D, 0x03EE, 0x384D, 0x1D3D, 0x384D, 0x3679, 0x384D, 0x4FA4, 0x384D, 0x68BC, 0x384D, 0x81C3, 0x384D, 0x9AB8, 0x384D, 0xB39B, 0x384D, 0xCC6C, 0x384D, 0xE52C, 0x384D, 0xFDDB, 0x384E, 0x1677, 0x384E, 0x2F03, 0x384E, 0x477B, 0x384E, 0x5FE6, 0x384E, 0x783E, 0x384E, 0x9085, 0x384E, 0xA8BB, 0x384E, 0xC0E1, 0x384E, 0xD8F7, 0x384E, 0xF0FC, 0x384F, 0x08F0, 0x384F, 0x20D4, 0x384F, 0x38A8, 0x384F, 0x506B, 0x384F, 0x681D, 0x384F, 0x7FBF, 0x384F, 0x9754, 0x384F, 0xAED8, 0x384F, 0xC64B, 0x384F, 0xDDAE, 0x384F, 0xF503, 0x3850, 0x0C47, 0x3850, 0x237B, 0x3850, 0x3AA2, 0x3850, 0x51B8, 0x3850, 0x68C0, 0x3850, 0x7FB8, 0x3850, 0x96A1, 0x3850, 0xAD7B, 0x3850, 0xC446, 0x3850, 0xDB04, 0x3850, 0xF1B2, 0x3851, 0x084F, 0x3851, 0x1EE1, 0x3851, 0x3562, 0x3851, 0x4BD6, 0x3851, 0x623C, 0x3851, 0x7891, 0x3851, 0x8ED9, 0x3851, 0xA513, 0x3851, 0xBB3F, 0x3851, 0xD15E, 0x3851, 0xE76E, 0x3851, 0xFD71, 0x3852, 0x1367, 0x3852, 0x294B, 0x3852, 0x3F25, 0x3852, 0x54F1, 0x3852, 0x6AAF, 0x3852, 0x8060, 0x3852, 0x9603, 0x3852, 0xAB98, 0x3852, 0xC11F, 0x3852, 0xD69B, 0x3852, 0xEC07, 0x3853, 0x0168, 0x3853, 0x16BE, 0x3853, 0x2C03, 0x3853, 0x413E, 0x3853, 0x566A, 0x3853, 0x6B89, 0x3853, 0x809D, 0x3853, 0x95A6, 0x3853, 0xAA9E, 0x3853, 0xBF8B, 0x3853, 0xD46E, 0x3853, 0xE942, 0x3853, 0xFE09, 0x3854, 0x12C5, 0x3854, 0x2776, 0x3854, 0x3C19, 0x3854, 0x50AF, 0x3854, 0x653C, 0x3854, 0x79BB, 0x3854, 0x8E2D, 0x3854, 0xA294, 0x3854, 0xB6EF, 0x3854, 0xCB40, 0x3854, 0xDF83, 0x3854, 0xF3BB, 0x3855, 0x07E8, 0x3855, 0x1C07, 0x3855, 0x301B, 0x3855, 0x4427, 0x3855, 0x5825, 0x3855, 0x6C16, 0x3855, 0x7FFE, 0x3855, 0x93DB, 0x3855, 0xA7AB, 0x3855, 0xBB6F, 0x3855, 0xCF2C, 0x3855, 0xE2DA, 0x3855, 0xF67E, 0x3856, 0x0A16, 0x3856, 0x1DA6, 0x3856, 0x3129, 0x3856, 0x44A1, 0x3856, 0x5810, 0x3856, 0x6B71, 0x3856, 0x7ECB, 0x3856, 0x9216, 0x3856, 0xA55A, 0x3856, 0xB892, 0x3856, 0xCBBF, 0x3856, 0xDEE4, 0x3856, 0xF1FC, 0x3857, 0x050B, 0x3857, 0x180F, 0x3857, 0x2B08, 0x3857, 0x3DF6, 0x3857, 0x50DC, 0x3857, 0x63B7, 0x3857, 0x7687, 0x3857, 0x894E, 0x3857, 0x9C0B, 0x3857, 0xAEBC, 0x3857, 0xC166, 0x3857, 0xD404, 0x3857, 0xE69A, 0x3857, 0xF923, 0x3858, 0x0BA6, 0x3858, 0x1E1D, 0x3858, 0x308A, 0x3858, 0x42EC, 0x3858, 0x5549, 0x3858, 0x6797, 0x3858, 0x79DE, 0x3858, 0x8C1C, 0x3858, 0x9E4F, 0x3858, 0xB07A, 0x3858, 0xC29D, 0x3858, 0xD4B4, 0x3858, 0xE6C1, 0x3858, 0xF8C6, 0x3859, 0x0AC2, 0x3859, 0x1CB6, 0x3859, 0x2E9F, 0x3859, 0x407F, 0x3859, 0x5255, 0x3859, 0x6423, 0x3859, 0x75E8, 0x3859, 0x87A5, 0x3859, 0x9957, 0x3859, 0xAB01, 0x3859, 0xBCA2, 0x3859, 0xCE3B, 0x3859, 0xDFCA, 0x3859, 0xF150, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36E8, 0x8A61, 0x3738, 0x48D3, 0x3768, 0x8A91, 0x3786, 0xFC78, 0x3796, 0x4729, 0x37A3, 0x34FE, 0x37AE, 0x6819, 0x37B8, 0x490F, 0x37C1, 0x1F4E, 0x37C9, 0x1DC0, 0x37D0, 0x6A04, 0x37D7, 0x20AB, 0x37DD, 0x57DE, 0x37E3, 0x213F, 0x37E8, 0x8AFF, 0x37ED, 0xA0B7, 0x37F2, 0x6BFB, 0x37F6, 0xF4E3, 0x37FB, 0x423F, 0x37FF, 0x59DA, 0x3801, 0xA05B, 0x3803, 0x7D95, 0x3805, 0x467D, 0x3806, 0xFCC0, 0x3808, 0xA1D1, 0x380A, 0x36FE, 0x380B, 0xBD6D, 0x380D, 0x3629, 0x380E, 0xA220, 0x3810, 0x0227, 0x3811, 0x5700, 0x3812, 0xA15C, 0x3813, 0xE1DC, 0x3815, 0x1910, 0x3816, 0x4781, 0x3817, 0x6DA8, 0x3818, 0x8BF8, 0x3819, 0xA2D5, 0x381A, 0xB2A6, 0x381B, 0xBBBE, 0x381C, 0xBE74, 0x381D, 0xBB12, 0x381E, 0xB1E2, 0x381F, 0xA327, 0x3820, 0x8F1E, 0x3821, 0x7601, 0x3822, 0x5807, 0x3823, 0x3566, 0x3824, 0x0E49, 0x3824, 0xE2E3, 0x3825, 0xB35D, 0x3826, 0x7FDB, 0x3827, 0x488A, 0x3828, 0x0D87, 0x3828, 0xCEF9, 0x3829, 0x8CFE, 0x382A, 0x47B8, 0x382A, 0xFF3E, 0x382B, 0xB3AF, 0x382C, 0x6524, 0x382D, 0x13B6, 0x382D, 0xBF7D, 0x382E, 0x688F, 0x382F, 0x0F02, 0x382F, 0xB2EB, 0x3830, 0x545D, 0x3830, 0xF36B, 0x3831, 0x9027, 0x3832, 0x2AA1, 0x3832, 0xC2EB, 0x3833, 0x5912, 0x3833, 0xED27, 0x3834, 0x7F39, 0x3835, 0x0F54, 0x3835, 0x9D89, 0x3836, 0x29E0, 0x3836, 0xB469, 0x3837, 0x3D2C, 0x3837, 0xC437, 0x3838, 0x4996, 0x3838, 0xCD50, 0x3839, 0x4F73, 0x3839, 0xD008, 0x383A, 0x4F13, 0x383A, 0xCCA6, 0x383B, 0x48C3, 0x383B, 0xC376, 0x383C, 0x3CC5, 0x383C, 0xB4BB, 0x383D, 0x2B5B, 0x383D, 0xA0B2, 0x383E, 0x14C1, 0x383E, 0x8795, 0x383E, 0xF932, 0x383F, 0x699D, 0x383F, 0xD8DD, 0x3840, 0x46FA, 0x3840, 0xB3F9, 0x3841, 0x1FE0, 0x3841, 0x8AB3, 0x3841, 0xF479, 0x3842, 0x5D38, 0x3842, 0xC4F4, 0x3843, 0x2BB0, 0x3843, 0x9175, 0x3843, 0xF642, 0x3844, 0x5A21, 0x3844, 0xBD16, 0x3845, 0x1F21, 0x3845, 0x8048, 0x3845, 0xE093, 0x3846, 0x4002, 0x3846, 0x9E98, 0x3846, 0xFC5D, 0x3847, 0x5951, 0x3847, 0xB577, 0x3848, 0x10D7, 0x3848, 0x6B71, 0x3848, 0xC548, 0x3849, 0x1E5F, 0x3849, 0x76BE, 0x3849, 0xCE61, 0x384A, 0x254F, 0x384A, 0x7B8B, 0x384A, 0xD116, 0x384B, 0x25F7, 0x384B, 0x7A2B, 0x384B, 0xCDB7, 0x384C, 0x209F, 0x384C, 0x72E4, 0x384C, 0xC487, 0x384D, 0x1590, 0x384D, 0x65FA, 0x384D, 0xB5CC, 0x384E, 0x0507, 0x384E, 0x53AE, 0x384E, 0xA1C3, 0x384E, 0xEF49, 0x384F, 0x3C3E, 0x384F, 0x88A9, 0x384F, 0xD488, 0x3850, 0x1FE0, 0x3850, 0x6AAF, 0x3850, 0xB4FC, 0x3850, 0xFEC6, 0x3851, 0x480E, 0x3851, 0x90D8, 0x3851, 0xD924, 0x3852, 0x20F4, 0x3852, 0x684A, 0x3852, 0xAF28, 0x3852, 0xF58D, 0x3853, 0x3B7F, 0x3853, 0x80FD, 0x3853, 0xC608, 0x3854, 0x0AA2, 0x3854, 0x4ECB, 0x3854, 0x9286, 0x3854, 0xD5D6, 0x3855, 0x18BB, 0x3855, 0x5B35, 0x3855, 0x9D46, 0x3855, 0xDEF2, 0x3856, 0x2035, 0x3856, 0x6112, 0x3856, 0xA18F, 0x3856, 0xE1A7, 0x3857, 0x215E, 0x3857, 0x60B5, 0x3857, 0x9FAC, 0x3857, 0xDE48, 0x3858, 0x1C84, 0x3858, 0x5A65, 0x3858, 0x97EC, 0x3858, 0xD517, 0x3859, 0x11EB, 0x3859, 0x4E67, 0x3859, 0x8A8E, 0x3859, 0xC65C, 0x385A, 0x01D9, 0x385A, 0x3CFD, 0x385A, 0x77D2, 0x385A, 0xB254, 0x385A, 0xEC86, 0x385B, 0x2666, 0x385B, 0x5FF6, 0x385B, 0x9939, 0x385B, 0xD22D, 0x385C, 0x0AD3, 0x385C, 0x4330, 0x385C, 0x7B3F, 0x385C, 0xB307, 0x385C, 0xEA82, 0x385D, 0x21B6, 0x385D, 0x589F, 0x385D, 0x8F41, 0x385D, 0xC59E, 0x385D, 0xFBB3, 0x385E, 0x3184, 0x385E, 0x6710, 0x385E, 0x9C58, 0x385E, 0xD15D, 0x385F, 0x061E, 0x385F, 0x3A9F, 0x385F, 0x6EDC, 0x385F, 0xA2DA, 0x385F, 0xD698, 0x3860, 0x0A15, 0x3860, 0x3D55, 0x3860, 0x7055, 0x3860, 0xA319, 0x3860, 0xD59E, 0x3861, 0x07E7, 0x3861, 0x39F6, 0x3861, 0x6BC5, 0x3861, 0x9D5E, 0x3861, 0xCEBA, 0x3861, 0xFFDD, 0x3862, 0x30C5, 0x3862, 0x6177, 0x3862, 0x91EF, 0x3862, 0xC230, 0x3862, 0xF23A, 0x3863, 0x220A, 0x3863, 0x51A6, 0x3863, 0x810E, 0x3863, 0xB03F, 0x3863, 0xDF3C, 0x3864, 0x0E01, 0x3864, 0x3C96, 0x3864, 0x6AF6, 0x3864, 0x9924, 0x3864, 0xC71E, 0x3864, 0xF4E7, 0x3865, 0x227F, 0x3865, 0x4FE4, 0x3865, 0x7D19, 0x3865, 0xAA1C, 0x3865, 0xD6F0, 0x3866, 0x0392, 0x3866, 0x3006, 0x3866, 0x5C4E, 0x3866, 0x8865, 0x3866, 0xB44D, 0x3866, 0xE008, 0x3867, 0x0B98, 0x3867, 0x36F7, 0x3867, 0x622C, 0x3867, 0x8D35, 0x3867, 0xB80F, 0x3867, 0xE2C0, 0x3868, 0x0D45, 0x3868, 0x379F, 0x3868, 0x61CF, 0x3868, 0x8BD3, 0x3868, 0xB5AD, 0x3868, 0xDF5F, 0x3869, 0x08E7, 0x3869, 0x3246, 0x3869, 0x5B7F, 0x3869, 0x848B, 0x3869, 0xAD71, 0x3869, 0xD631, 0x3869, 0xFEC7, 0x386A, 0x2737, 0x386A, 0x4F81, 0x386A, 0x77A4, 0x386A, 0x9FA0, 0x386A, 0xC776, 0x386A, 0xEF25, 0x386B, 0x16B1, 0x386B, 0x3E19, 0x386B, 0x6558, 0x386B, 0x8C76, 0x386B, 0xB36D, 0x386B, 0xDA41, 0x386C, 0x00F3, 0x386C, 0x277F, 0x386C, 0x4DE8, 0x386C, 0x742F, 0x386C, 0x9A53, 0x386C, 0xC053, 0x386C, 0xE632, 0x386D, 0x0BF0, 0x386D, 0x318A, 0x386D, 0x5703, 0x386D, 0x7C5B, 0x386D, 0xA190, 0x386D, 0xC6A6, 0x386D, 0xEB9C, 0x386E, 0x1070, 0x386E, 0x3526, 0x386E, 0x59B8, 0x386E, 0x7E2F, 0x386E, 0xA282, 0x386E, 0xC6B7, 0x386E, 0xEACE, 0x386F, 0x0EC6, 0x386F, 0x32A0, 0x386F, 0x565A, 0x386F, 0x79F5, 0x386F, 0x9D74, 0x386F, 0xC0D2, 0x386F, 0xE415, 0x3870, 0x073A, 0x3870, 0x2A41, 0x3870, 0x4D2C, 0x3870, 0x6FF9, 0x3870, 0x92A7, 0x3870, 0xB53D, 0x3870, 0xD7B2, 0x3870, 0xFA0E, 0x3871, 0x1C4E, 0x3871, 0x3E71, 0x3871, 0x6078, 0x3871, 0x8263, 0x3871, 0xA433, 0x3871, 0xC5EA, 0x3871, 0xE783, 0x3872, 0x0903, 0x3872, 0x2A68, 0x3872, 0x4BB1, 0x3872, 0x6CE2, 0x3872, 0x8DF7, 0x3872, 0xAEF3, 0x3872, 0xCFD6, 0x3872, 0xF09E, 0x3873, 0x114E, 0x3873, 0x31E2, 0x3873, 0x525D, 0x3873, 0x72C2, 0x3873, 0x930B, 0x3873, 0xB33C, 0x3873, 0xD354, 0x3873, 0xF354, 0x3874, 0x133D, 0x3874, 0x330B, 0x3874, 0x52C3, 0x3874, 0x7262, 0x3874, 0x91EB, 0x3874, 0xB15B, 0x3874, 0xD0B3, 0x3874, 0xEFF5, 0x3875, 0x0F1E, 0x3875, 0x2E31, 0x3875, 0x4D2E, 0x3875, 0x6C12, 0x3875, 0x8AE3, 0x3875, 0xA998, 0x3875, 0xC83B, 0x3875, 0xE6C7, 0x3876, 0x053B, 0x3876, 0x239B, 0x3876, 0x41E2, 0x3876, 0x6017, 0x3876, 0x7E35, 0x3876, 0x9C3D, 0x3876, 0xBA30, 0x3876, 0xD80C, 0x3876, 0xF5D2, 0x3877, 0x1386, 0x3877, 0x3125, 0x3877, 0x4EAD, 0x3877, 0x6C23, 0x3877, 0x8981, 0x3877, 0xA6CC, 0x3877, 0xC403, 0x3877, 0xE127, 0x3877, 0xFE36, 0x3878, 0x1B2E, 0x3878, 0x3816, 0x3878, 0x54E7, 0x3878, 0x71A6, 0x3878, 0x8E51, 0x3878, 0xAAE9, 0x3878, 0xC76B, 0x3878, 0xE3DC, 0x3879, 0x003B, 0x3879, 0x1C86, 0x3879, 0x38BB, 0x3879, 0x54DF, 0x3879, 0x70F1, 0x3879, 0x8CF2, 0x3879, 0xA8DC, 0x3879, 0xC4B7, 0x3879, 0xE07E, 0x3879, 0xFC32, 0x387A, 0x17D5, 0x387A, 0x3365, 0x387A, 0x4EE2, 0x387A, 0x6A4E, 0x387A, 0x85AA, 0x387A, 0xA0F3, 0x387A, 0xBC28, 0x387A, 0xD750, 0x387A, 0xF262, 0x387B, 0x0D66, 0x387B, 0x2856, 0x387B, 0x4336, 0x387B, 0x5E03, 0x387B, 0x78C3, 0x387B, 0x936F, 0x387B, 0xAE0A, 0x387B, 0xC895, 0x387B, 0xE310, 0x387B, 0xFD77, 0x387C, 0x17D0, 0x387C, 0x3219, 0x387C, 0x4C4F, 0x387C, 0x6677, 0x387C, 0x808F, 0x387C, 0x9A96, 0x387C, 0xB48C, 0x387C, 0xCE72, 0x387C, 0xE84B, 0x387D, 0x0210, 0x387D, 0x1BC7, 0x387D, 0x3571, 0x387D, 0x4F07, 0x387D, 0x688F, 0x387D, 0x8208, 0x387D, 0x9B72, 0x387D, 0xB4CC, 0x387D, 0xCE15, 0x387D, 0xE751, 0x387E, 0x007C, 0x387E, 0x1999, 0x387E, 0x32A9, 0x387E, 0x4BA8, 0x387E, 0x6497, 0x387E, 0x7D7A, 0x387E, 0x964B, 0x387E, 0xAF10, 0x387E, 0xC7C5, 0x387E, 0xE06C, 0x387E, 0xF906, 0x387F, 0x118F, 0x387F, 0x2A0A, 0x387F, 0x4278, 0x387F, 0x5AD7, 0x387F, 0x7329, 0x387F, 0x8B6E, 0x387F, 0xA3A1, 0x387F, 0xBBCA, 0x387F, 0xD3E2, 0x387F, 0xEBED, 0x3880, 0x01F6, 0x3880, 0x0DEE, 0x3880, 0x19E0, 0x3880, 0x25C9, 0x3880, 0x31AE, 0x3880, 0x3D8A, 0x3880, 0x4960, 0x3880, 0x5530, 0x3880, 0x60F9, 0x3880, 0x6CBC, 0x3880, 0x7877, 0x3880, 0x842D, 0x3880, 0x8FDB, 0x3880, 0x9B83, 0x3880, 0xA725, 0x3880, 0xB2C1, 0x3880, 0xBE55, 0x3880, 0xC9E4, 0x3880, 0xD56D, 0x3880, 0xE0EE, 0x3880, 0xEC6A, 0x3880, 0xF7DF, 0x3881, 0x034E, 0x3881, 0x0EB7, 0x3881, 0x1A18, 0x3881, 0x2576, 0x3881, 0x30CB, 0x3881, 0x3C1B, 0x3881, 0x4766, 0x3881, 0x52AA, 0x3881, 0x5DE8, 0x3881, 0x691F, 0x3881, 0x7452, 0x3881, 0x7F7D, 0x3881, 0x8AA4, 0x3881, 0x95C4, 0x3881, 0xA0DE, 0x3881, 0xABF2, 0x3881, 0xB702, 0x3881, 0xC20A, 0x3881, 0xCD0D, 0x3881, 0xD80A, 0x3881, 0xE301, 0x3881, 0xEDF3, 0x3881, 0xF8DF, 0x3882, 0x03C5, 0x3882, 0x0EA7, 0x3882, 0x1982, 0x3882, 0x2456, 0x3882, 0x2F26, 0x3882, 0x39F0, 0x3882, 0x44B5, 0x3882, 0x4F75, 0x3882, 0x5A2E, 0x3882, 0x64E2, 0x3882, 0x6F91, 0x3882, 0x7A3B, 0x3882, 0x84DF, 0x3882, 0x8F7D, 0x3882, 0x9A16, 0x3882, 0xA4AA, 0x3882, 0xAF39, 0x3882, 0xB9C2, 0x3882, 0xC446, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3904, 0xCF18, 0x3952, 0x814E, 0x3984, 0xD142, 0x399A, 0x3308, 0x39AB, 0xAB9C, 0x39BA, 0x713C, 0x39C7, 0x3D1D, 0x39D2, 0x86B3, 0x39DC, 0x9F96, 0x39E5, 0xC1F1, 0x39EE, 0x18BA, 0x39F5, 0xC48F, 0x39FC, 0xDED2, 0x3A01, 0xBDCD, 0x3A04, 0xD58F, 0x3A07, 0xBD4E, 0x3A0A, 0x7A8A, 0x3A0D, 0x11DA, 0x3A0F, 0x8725, 0x3A11, 0xDDBA, 0x3A14, 0x1878, 0x3A16, 0x39D6, 0x3A18, 0x43FF, 0x3A1A, 0x38D8, 0x3A1C, 0x1A0A, 0x3A1D, 0xE916, 0x3A1F, 0xA749, 0x3A21, 0x55D6, 0x3A22, 0xF5C8, 0x3A24, 0x881A, 0x3A26, 0x0DA4, 0x3A27, 0x8732, 0x3A28, 0xF57B, 0x3A2A, 0x5927, 0x3A2B, 0xB2CD, 0x3A2D, 0x02FC, 0x3A2E, 0x4A33, 0x3A2F, 0x88EC, 0x3A30, 0xBF93, 0x3A31, 0xEE8D, 0x3A33, 0x163C, 0x3A34, 0x36F4, 0x3A35, 0x510C, 0x3A36, 0x64CA, 0x3A37, 0x727B, 0x3A38, 0x7A60, 0x3A39, 0x7CB5, 0x3A3A, 0x79B7, 0x3A3B, 0x719E, 0x3A3C, 0x649B, 0x3A3D, 0x52E0, 0x3A3E, 0x3C9D, 0x3A3F, 0x21FB, 0x3A40, 0x0323, 0x3A40, 0xE03D, 0x3A41, 0xB96C, 0x3A42, 0x8ED6, 0x3A43, 0x609B, 0x3A44, 0x2ED8, 0x3A44, 0xF9AD, 0x3A45, 0xC136, 0x3A46, 0x858D, 0x3A47, 0x46CC, 0x3A48, 0x050D, 0x3A48, 0xC067, 0x3A49, 0x78EF, 0x3A4A, 0x2EBB, 0x3A4A, 0xE1E1, 0x3A4B, 0x9273, 0x3A4C, 0x4084, 0x3A4C, 0xEC26, 0x3A4D, 0x9569, 0x3A4E, 0x3C5E, 0x3A4E, 0xE116, 0x3A4F, 0x83A0, 0x3A50, 0x240B, 0x3A50, 0xC263, 0x3A51, 0x5EB7, 0x3A51, 0xF914, 0x3A52, 0x9186, 0x3A53, 0x2819, 0x3A53, 0xBCD8, 0x3A54, 0x4FD0, 0x3A54, 0xE10B, 0x3A55, 0x7093, 0x3A55, 0xFE73, 0x3A56, 0x8AB3, 0x3A57, 0x155E, 0x3A57, 0x9E7C, 0x3A58, 0x2615, 0x3A58, 0xAC35, 0x3A59, 0x30E0, 0x3A59, 0xB420, 0x3A5A, 0x35FD, 0x3A5A, 0xB67F, 0x3A5B, 0x35AB, 0x3A5B, 0xB389, 0x3A5C, 0x3021, 0x3A5C, 0xAB78, 0x3A5D, 0x2595, 0x3A5D, 0x9E7C, 0x3A5E, 0x1638, 0x3A5E, 0x8CCA, 0x3A5F, 0x023B, 0x3A5F, 0x768E, 0x3A5F, 0xE9CA, 0x3A60, 0x5BF2, 0x3A60, 0xCD0F, 0x3A61, 0x3D23, 0x3A61, 0xAC32, 0x3A62, 0x1A45, 0x3A62, 0x875A, 0x3A62, 0xF37B, 0x3A63, 0x5EAA, 0x3A63, 0xC8EB, 0x3A64, 0x3244, 0x3A64, 0x9AB7, 0x3A65, 0x0247, 0x3A65, 0x68FB, 0x3A65, 0xCED3, 0x3A66, 0x33D6, 0x3A66, 0x9804, 0x3A66, 0xFB64, 0x3A67, 0x5DF8, 0x3A67, 0xBFC2, 0x3A68, 0x20C7, 0x3A68, 0x8108, 0x3A68, 0xE08B, 0x3A69, 0x3F50, 0x3A69, 0x9D5C, 0x3A69, 0xFAB0, 0x3A6A, 0x5750, 0x3A6A, 0xB33E, 0x3A6B, 0x0E7E, 0x3A6B, 0x6910, 0x3A6B, 0xC2F9, 0x3A6C, 0x1C3C, 0x3A6C, 0x74D9, 0x3A6C, 0xCCD3, 0x3A6D, 0x242D, 0x3A6D, 0x7AEA, 0x3A6D, 0xD109, 0x3A6E, 0x2690, 0x3A6E, 0x7B7F, 0x3A6E, 0xCFD9, 0x3A6F, 0x23A0, 0x3A6F, 0x76D4, 0x3A6F, 0xC97A, 0x3A70, 0x1B92, 0x3A70, 0x6D1F, 0x3A70, 0xBE21, 0x3A71, 0x0E9B, 0x3A71, 0x5E91, 0x3A71, 0xAE01, 0x3A71, 0xFCEE, 0x3A72, 0x4B5B, 0x3A72, 0x9948, 0x3A72, 0xE6B6, 0x3A73, 0x33A8, 0x3A73, 0x8021, 0x3A73, 0xCC1F, 0x3A74, 0x17A7, 0x3A74, 0x62B7, 0x3A74, 0xAD54, 0x3A74, 0xF77B, 0x3A75, 0x4133, 0x3A75, 0x8A78, 0x3A75, 0xD34F, 0x3A76, 0x1BB9, 0x3A76, 0x63B4, 0x3A76, 0xAB44, 0x3A76, 0xF26C, 0x3A77, 0x3929, 0x3A77, 0x7F7E, 0x3A77, 0xC56D, 0x3A78, 0x0AF7, 0x3A78, 0x501D, 0x3A78, 0x94DF, 0x3A78, 0xD940, 0x3A79, 0x1D3F, 0x3A79, 0x60DD, 0x3A79, 0xA41F, 0x3A79, 0xE702, 0x3A7A, 0x2987, 0x3A7A, 0x6BB2, 0x3A7A, 0xAD81, 0x3A7A, 0xEEF6, 0x3A7B, 0x3013, 0x3A7B, 0x70D8, 0x3A7B, 0xB144, 0x3A7B, 0xF15D, 0x3A7C, 0x311F, 0x3A7C, 0x708C, 0x3A7C, 0xAFA8, 0x3A7C, 0xEE70, 0x3A7D, 0x2CE5, 0x3A7D, 0x6B0B, 0x3A7D, 0xA8DF, 0x3A7D, 0xE666, 0x3A7E, 0x239D, 0x3A7E, 0x6086, 0x3A7E, 0x9D23, 0x3A7E, 0xD972, 0x3A7F, 0x1578, 0x3A7F, 0x5132, 0x3A7F, 0x8CA0, 0x3A7F, 0xC7C8, 0x3A80, 0x0153, 0x3A80, 0x1E9E, 0x3A80, 0x3BC5, 0x3A80, 0x58CA, 0x3A80, 0x75AA, 0x3A80, 0x9269, 0x3A80, 0xAF05, 0x3A80, 0xCB7F, 0x3A80, 0xE7D8, 0x3A81, 0x040F, 0x3A81, 0x2026, 0x3A81, 0x3C1B, 0x3A81, 0x57F1, 0x3A81, 0x73A5, 0x3A81, 0x8F3A, 0x3A81, 0xAAAF, 0x3A81, 0xC606, 0x3A81, 0xE13D, 0x3A81, 0xFC55, 0x3A82, 0x174F, 0x3A82, 0x322A, 0x3A82, 0x4CE8, 0x3A82, 0x6787, 0x3A82, 0x820A, 0x3A82, 0x9C70, 0x3A82, 0xB6B8, 0x3A82, 0xD0E4, 0x3A82, 0xEAF3, 0x3A83, 0x04E6, 0x3A83, 0x1EBF, 0x3A83, 0x387C, 0x3A83, 0x5216, 0x3A83, 0x6B9F, 0x3A83, 0x8505, 0x3A83, 0x9E52, 0x3A83, 0xB785, 0x3A83, 0xD0A7, 0x3A83, 0xE9A6, 0x3A84, 0x028C, 0x3A84, 0x1B58, 0x3A84, 0x340A, 0x3A84, 0x4CA3, 0x3A84, 0x6521, 0x3A84, 0x7D86, 0x3A84, 0x95D1, 0x3A84, 0xAE0B, 0x3A84, 0xC62B, 0x3A84, 0xDE29, 0x3A84, 0xF616, 0x3A85, 0x0DF1, 0x3A85, 0x25AA, 0x3A85, 0x3D52, 0x3A85, 0x54E0, 0x3A85, 0x6C5D, 0x3A85, 0x83B8, 0x3A85, 0x9B0A, 0x3A85, 0xB23A, 0x3A85, 0xC958, 0x3A85, 0xE05D, 0x3A85, 0xF750, 0x3A86, 0x0E2A, 0x3A86, 0x24F3, 0x3A86, 0x3BA1, 0x3A86, 0x523F, 0x3A86, 0x68C3, 0x3A86, 0x7F36, 0x3A86, 0x958E, 0x3A86, 0xABD6, 0x3A86, 0xC204, 0x3A86, 0xD821, 0x3A86, 0xEE2C, 0x3A87, 0x0427, 0x3A87, 0x1A08, 0x3A87, 0x2FCE, 0x3A87, 0x458D, 0x3A87, 0x5B31, 0x3A87, 0x70C5, 0x3A87, 0x8647, 0x3A87, 0x9BAF, 0x3A87, 0xB106, 0x3A87, 0xC64C, 0x3A87, 0xDB81, 0x3A87, 0xF0A5, 0x3A88, 0x05AF, 0x3A88, 0x1AA7, 0x3A88, 0x2F97, 0x3A88, 0x446E, 0x3A88, 0x5933, 0x3A88, 0x6DDE, 0x3A88, 0x8281, 0x3A88, 0x9713, 0x3A88, 0xAB93, 0x3A88, 0xBFFA, 0x3A88, 0xD458, 0x3A88, 0xE8A5, 0x3A88, 0xFCD8, 0x3A89, 0x1103, 0x3A89, 0x251C, 0x3A89, 0x391C, 0x3A89, 0x4D13, 0x3A89, 0x60F8, 0x3A89, 0x74CD, 0x3A89, 0x8891, 0x3A89, 0x9C43, 0x3A89, 0xAFED, 0x3A89, 0xC37D, 0x3A89, 0xD704, 0x3A89, 0xEA71, 0x3A89, 0xFDD6, 0x3A8A, 0x112A, 0x3A8A, 0x2475, 0x3A8A, 0x37A7, 0x3A8A, 0x4AD0, 0x3A8A, 0x5DE7, 0x3A8A, 0x70EE, 0x3A8A, 0x83E3, 0x3A8A, 0x96D0, 0x3A8A, 0xA9AB, 0x3A8A, 0xBC76, 0x3A8A, 0xCF38, 0x3A8A, 0xE1E8, 0x3A8A, 0xF488, 0x3A8B, 0x0716, 0x3A8B, 0x199B, 0x3A8B, 0x2C10, 0x3A8B, 0x3E73, 0x3A8B, 0x50CE, 0x3A8B, 0x6317, 0x3A8B, 0x7558, 0x3A8B, 0x8788, 0x3A8B, 0x99A7, 0x3A8B, 0xABBD, 0x3A8B, 0xBDC1, 0x3A8B, 0xCFBE, 0x3A8B, 0xE1A9, 0x3A8B, 0xF383, 0x3A8C, 0x0554, 0x3A8C, 0x171C, 0x3A8C, 0x28D4, 0x3A8C, 0x3A7A, 0x3A8C, 0x4C18, 0x3A8C, 0x5DA4, 0x3A8C, 0x6F28, 0x3A8C, 0x809B, 0x3A8C, 0x9205, 0x3A8C, 0xA367, 0x3A8C, 0xB4B7, 0x3A8C, 0xC5F7, 0x3A8C, 0xD72D, 0x3A8C, 0xE85B, 0x3A8C, 0xF978, 0x3A8D, 0x0A8C, 0x3A8D, 0x1B90, 0x3A8D, 0x2C8A, 0x3A8D, 0x3D7C, 0x3A8D, 0x4E5D, 0x3A8D, 0x5F35, 0x3A8D, 0x6FFC, 0x3A8D, 0x80BA, 0x3A8D, 0x9170, 0x3A8D, 0xA215, 0x3A8D, 0xB2B9, 0x3A8D, 0xC344, 0x3A8D, 0xD3CF, 0x3A8D, 0xE449, 0x3A8D, 0xF4B1, 0x3A8E, 0x0519, 0x3A8E, 0x1571, 0x3A8E, 0x25BF, 0x3A8E, 0x35FD, 0x3A8E, 0x4632, 0x3A8E, 0x565E, 0x3A8E, 0x6682, 0x3A8E, 0x769D, 0x3A8E, 0x86A7, 0x3A8E, 0x96A9, 0x3A8E, 0xA6A1, 0x3A8E, 0xB689, 0x3A8E, 0xC668, 0x3A8E, 0xD63F, 0x3A8E, 0xE60C, 0x3A8E, 0xF5D2, 0x3A8F, 0x0586, 0x3A8F, 0x1531, 0x3A8F, 0x24D4, 0x3A8F, 0x346E, 0x3A8F, 0x4400, 0x3A8F, 0x5381, 0x3A8F, 0x6301, 0x3A8F, 0x7271, 0x3A8F, 0x81D7, 0x3A8F, 0x9136, 0x3A8F, 0xA083, 0x3A8F, 0xAFD0, 0x3A8F, 0xBF14, 0x3A8F, 0xCE47, 0x3A8F, 0xDD72, 0x3A8F, 0xEC94, 0x3A8F, 0xFBAE, 0x3A90, 0x0ABE, 0x3A90, 0x19C7, 0x3A90, 0x28BE, 0x3A90, 0x37B5, 0x3A90, 0x46A3, 0x3A90, 0x5581, 0x3A90, 0x6456, 0x3A90, 0x732A, 0x3A90, 0x81EE, 0x3A90, 0x90A9, 0x3A90, 0x9F5B, 0x3A90, 0xAE05, 0x3A90, 0xBCA6, 0x3A90, 0xCB3F, 0x3A90, 0xD9CF, 0x3A90, 0xE856, 0x3A90, 0xF6D5, 0x3A91, 0x054B, 0x3A91, 0x13B9, 0x3A91, 0x221E, 0x3A91, 0x307B, 0x3A91, 0x3ECF, 0x3A91, 0x4D11, 0x3A91, 0x5B54, 0x3A91, 0x698E, 0x3A91, 0x77C0, 0x3A91, 0x85E9, 0x3A91, 0x9409, 0x3A91, 0xA221, 0x3A91, 0xB030, 0x3A91, 0xBE37, 0x3A91, 0xCC35, 0x3A91, 0xDA33, 0x3A91, 0xE81F, 0x3A91, 0xF604, 0x3A92, 0x03E8, 0x3A92, 0x11BB, 0x3A92, 0x1F8E, 0x3A92, 0x2D50, 0x3A92, 0x3B12, 0x3A92, 0x48CB, 0x3A92, 0x5673, 0x3A92, 0x641B, 0x3A92, 0x71BB, 0x3A92, 0x7F52, 0x3A92, 0x8CE9, 0x3A92, 0x9A6E, 0x3A92, 0xA7F4, 0x3A92, 0xB569, 0x3A92, 0xC2DD, 0x3A92, 0xD049, 0x3A92, 0xDDAD, 0x3A92, 0xEB07, 0x3A92, 0xF85A, 0x3A93, 0x05A3, 0x3A93, 0x12ED, 0x3A93, 0x2025, 0x3A93, 0x2D5E, 0x3A93, 0x3A8D, 0x3A93, 0x47B5, 0x3A93, 0x54DC, 0x3A93, 0x61F2, 0x3A93, 0x6F08, 0x3A93, 0x7C0D, 0x3A93, 0x8912, 0x3A93, 0x960E, 0x3A93, 0xA30B, 0x3A93, 0xAFF6, 0x3A93, 0xBCE1, 0x3A93, 0xC9C3, 0x3A93, 0xD69D, 0x3A93, 0xE36F, 0x3A93, 0xF040, 0x3A93, 0xFD00, 0x3A94, 0x09C0, 0x3A94, 0x1678, 0x3A94, 0x232F, 0x3A94, 0x2FD6, 0x3A94, 0x3C7C, 0x3A94, 0x491A, 0x3A94, 0x55AF, 0x3A94, 0x6245, 0x3A94, 0x6EC9, 0x3A94, 0x7B4D, 0x3A94, 0x87D1, 0x3A94, 0x9444, 0x3A94, 0xA0B6, 0x3A94, 0xAD21, 0x3A94, 0xB982, 0x3A94, 0xC5DB, 0x3A94, 0xD235, 0x3A94, 0xDE85, 0x3A94, 0xEACD, 0x3A94, 0xF70C, 0x3A95, 0x034C, 0x3A95, 0x0F82, 0x3A95, 0x1BB9, 0x3A95, 0x27DF, 0x3A95, 0x3404, 0x3A95, 0x4021, 0x3A95, 0x4C3E, 0x3A95, 0x584A, 0x3A95, 0x6456, 0x3A95, 0x7062, 0xBF80, 0x0000, 0x0000, 0x0000, 0x391A, 0xC8FE, 0x3975, 0x56DD, 0x399A, 0xCBEF, 0x39B3, 0xB7B1, 0x39C8, 0x148F, 0x39D9, 0x4C26, 0x39E8, 0x3648, 0x39F5, 0x5E35, 0x3A00, 0x917F, 0x3A05, 0xE437, 0x3A0A, 0xC050, 0x3A0F, 0x38C9, 0x3A13, 0x5C6E, 0x3A17, 0x36F1, 0x3A1A, 0xD1C7, 0x3A1E, 0x34AA, 0x3A21, 0x65FD, 0x3A24, 0x6B1F, 0x3A27, 0x489A, 0x3A2A, 0x024B, 0x3A2C, 0x9B88, 0x3A2F, 0x1731, 0x3A31, 0x77CF, 0x3A33, 0xBF93, 0x3A35, 0xF073, 0x3A38, 0x0C29, 0x3A3A, 0x143F, 0x3A3C, 0x0A15, 0x3A3D, 0xEEE9, 0x3A3F, 0xC3D7, 0x3A41, 0x89E1, 0x3A43, 0x41F3, 0x3A44, 0xECE4, 0x3A46, 0x8B73, 0x3A48, 0x1E56, 0x3A49, 0xA62F, 0x3A4B, 0x2396, 0x3A4C, 0x9714, 0x3A4E, 0x012C, 0x3A4F, 0x6253, 0x3A50, 0xBAF8, 0x3A52, 0x0B80, 0x3A53, 0x544D, 0x3A54, 0x95B6, 0x3A55, 0xD010, 0x3A57, 0x03A6, 0x3A58, 0x30C4, 0x3A59, 0x57AC, 0x3A5A, 0x789F, 0x3A5B, 0x93D9, 0x3A5C, 0xA994, 0x3A5D, 0xBA05, 0x3A5E, 0xC55E, 0x3A5F, 0xCBCF, 0x3A60, 0xCD87, 0x3A61, 0xCAAF, 0x3A62, 0xC371, 0x3A63, 0xB7F1, 0x3A64, 0xA856, 0x3A65, 0x94C1, 0x3A66, 0x7D56, 0x3A67, 0x6230, 0x3A68, 0x4371, 0x3A69, 0x2134, 0x3A69, 0xFB95, 0x3A6A, 0xD2AC, 0x3A6B, 0xA695, 0x3A6C, 0x7765, 0x3A6D, 0x4535, 0x3A6E, 0x1019, 0x3A6E, 0xD826, 0x3A6F, 0x9D73, 0x3A70, 0x600F, 0x3A71, 0x200E, 0x3A71, 0xDD84, 0x3A72, 0x987F, 0x3A73, 0x5111, 0x3A74, 0x0749, 0x3A74, 0xBB36, 0x3A75, 0x6CE7, 0x3A76, 0x1C69, 0x3A76, 0xC9CB, 0x3A77, 0x751A, 0x3A78, 0x1E63, 0x3A78, 0xC5B0, 0x3A79, 0x6B0F, 0x3A7A, 0x0E8B, 0x3A7A, 0xB02C, 0x3A7B, 0x5000, 0x3A7B, 0xEE10, 0x3A7C, 0x8A64, 0x3A7D, 0x2509, 0x3A7D, 0xBE06, 0x3A7E, 0x5565, 0x3A7E, 0xEB2F, 0x3A7F, 0x7F6B, 0x3A80, 0x0911, 0x3A80, 0x51AE, 0x3A80, 0x9990, 0x3A80, 0xE0BB, 0x3A81, 0x2733, 0x3A81, 0x6CFA, 0x3A81, 0xB215, 0x3A81, 0xF687, 0x3A82, 0x3A53, 0x3A82, 0x7D7C, 0x3A82, 0xC005, 0x3A83, 0x01F1, 0x3A83, 0x4341, 0x3A83, 0x83FB, 0x3A83, 0xC423, 0x3A84, 0x03B9, 0x3A84, 0x42BD, 0x3A84, 0x8137, 0x3A84, 0xBF20, 0x3A84, 0xFC87, 0x3A85, 0x3965, 0x3A85, 0x75C3, 0x3A85, 0xB19F, 0x3A85, 0xECFB, 0x3A86, 0x27D5, 0x3A86, 0x6238, 0x3A86, 0x9C22, 0x3A86, 0xD59D, 0x3A87, 0x0E96, 0x3A87, 0x4720, 0x3A87, 0x7F3B, 0x3A87, 0xB6E5, 0x3A87, 0xEE21, 0x3A88, 0x24F4, 0x3A88, 0x5B59, 0x3A88, 0x9156, 0x3A88, 0xC6E3, 0x3A88, 0xFC13, 0x3A89, 0x30DB, 0x3A89, 0x6544, 0x3A89, 0x9946, 0x3A89, 0xCCF3, 0x3A8A, 0x0038, 0x3A8A, 0x331F, 0x3A8A, 0x65A8, 0x3A8A, 0x97DA, 0x3A8A, 0xC9B7, 0x3A8A, 0xFB35, 0x3A8B, 0x2C5D, 0x3A8B, 0x5D30, 0x3A8B, 0x8DB5, 0x3A8B, 0xBDDB, 0x3A8B, 0xEDB4, 0x3A8C, 0x1D40, 0x3A8C, 0x4C76, 0x3A8C, 0x7B5F, 0x3A8C, 0xA9F2, 0x3A8C, 0xD840, 0x3A8D, 0x0641, 0x3A8D, 0x33F4, 0x3A8D, 0x6163, 0x3A8D, 0x8E85, 0x3A8D, 0xBB59, 0x3A8D, 0xE7E8, 0x3A8E, 0x1433, 0x3A8E, 0x4039, 0x3A8E, 0x6BFA, 0x3A8E, 0x9777, 0x3A8E, 0xC2AF, 0x3A8E, 0xEDAA, 0x3A8F, 0x1859, 0x3A8F, 0x42CB, 0x3A8F, 0x6D01, 0x3A8F, 0x96F3, 0x3A8F, 0xC0A8, 0x3A8F, 0xEA21, 0x3A90, 0x135E, 0x3A90, 0x3C5F, 0x3A90, 0x651B, 0x3A90, 0x8DA4, 0x3A90, 0xB5F0, 0x3A90, 0xDE09, 0x3A91, 0x05DD, 0x3A91, 0x2D7E, 0x3A91, 0x54EB, 0x3A91, 0x7C1C, 0x3A91, 0xA31A, 0x3A91, 0xC9DB, 0x3A91, 0xF069, 0x3A92, 0x16CC, 0x3A92, 0x3CF3, 0x3A92, 0x62DD, 0x3A92, 0x889D, 0x3A92, 0xAE32, 0x3A92, 0xD38A, 0x3A92, 0xF8AF, 0x3A93, 0x1DAA, 0x3A93, 0x4270, 0x3A93, 0x670C, 0x3A93, 0x8B6B, 0x3A93, 0xAFA8, 0x3A93, 0xD3B2, 0x3A93, 0xF791, 0x3A94, 0x1B3C, 0x3A94, 0x3EBC, 0x3A94, 0x6211, 0x3A94, 0x8533, 0x3A94, 0xA832, 0x3A94, 0xCAFE, 0x3A94, 0xEDA7, 0x3A95, 0x101D, 0x3A95, 0x3268, 0x3A95, 0x5490, 0x3A95, 0x768E, 0x3A95, 0x9861, 0x3A95, 0xBA08, 0x3A95, 0xDB8E, 0x3A95, 0xFCE8, 0x3A96, 0x1E18, 0x3A96, 0x3F25, 0x3A96, 0x6007, 0x3A96, 0x80BE, 0x3A96, 0xA15B, 0x3A96, 0xC1CE, 0x3A96, 0xE215, 0x3A97, 0x023B, 0x3A97, 0x223D, 0x3A97, 0x421E, 0x3A97, 0x61D3, 0x3A97, 0x8166, 0x3A97, 0xA0E0, 0x3A97, 0xC02E, 0x3A97, 0xDF52, 0x3A97, 0xFE5B, 0x3A98, 0x1D43, 0x3A98, 0x3C08, 0x3A98, 0x5AAA, 0x3A98, 0x792B, 0x3A98, 0x9791, 0x3A98, 0xB5CD, 0x3A98, 0xD3EE, 0x3A98, 0xF1EE, 0x3A99, 0x0FCB, 0x3A99, 0x2D85, 0x3A99, 0x4B26, 0x3A99, 0x68A5, 0x3A99, 0x860A, 0x3A99, 0xA34C, 0x3A99, 0xC06C, 0x3A99, 0xDD72, 0x3A99, 0xFA5F, 0x3A9A, 0x1729, 0x3A9A, 0x33D1, 0x3A9A, 0x505F, 0x3A9A, 0x6CD3, 0x3A9A, 0x8925, 0x3A9A, 0xA55D, 0x3A9A, 0xC17C, 0x3A9A, 0xDD78, 0x3A9A, 0xF962, 0x3A9B, 0x152B, 0x3A9B, 0x30D1, 0x3A9B, 0x4C66, 0x3A9B, 0x67D9, 0x3A9B, 0x833A, 0x3A9B, 0x9E79, 0x3A9B, 0xB99E, 0x3A9B, 0xD4AA, 0x3A9B, 0xEF9B, 0x3A9C, 0x0A73, 0x3A9C, 0x2532, 0x3A9C, 0x3FD6, 0x3A9C, 0x5A61, 0x3A9C, 0x74D1, 0x3A9C, 0x8F31, 0x3A9C, 0xA96E, 0x3A9C, 0xC39B, 0x3A9C, 0xDDA4, 0x3A9C, 0xF79D, 0x3A9D, 0x117C, 0x3A9D, 0x2B41, 0x3A9D, 0x44F5, 0x3A9D, 0x5E8F, 0x3A9D, 0x780F, 0x3A9D, 0x9176, 0x3A9D, 0xAACB, 0x3A9D, 0xC407, 0x3A9D, 0xDD29, 0x3A9D, 0xF639, 0x3A9E, 0x0F30, 0x3A9E, 0x2816, 0x3A9E, 0x40E2, 0x3A9E, 0x5994, 0x3A9E, 0x7235, 0x3A9E, 0x8AC5, 0x3A9E, 0xA33B, 0x3A9E, 0xBB97, 0x3A9E, 0xD3E3, 0x3A9E, 0xEC1C, 0x3A9F, 0x043D, 0x3A9F, 0x1C43, 0x3A9F, 0x3441, 0x3A9F, 0x4C1C, 0x3A9F, 0x63EF, 0x3A9F, 0x7BA8, 0x3A9F, 0x9350, 0x3A9F, 0xAADE, 0x3A9F, 0xC264, 0x3A9F, 0xD9C7, 0x3A9F, 0xF122, 0x3AA0, 0x0862, 0x3AA0, 0x1F9B, 0x3AA0, 0x36B1, 0x3AA0, 0x4DBE, 0x3AA0, 0x64BA, 0x3AA0, 0x7B9C, 0x3AA0, 0x926D, 0x3AA0, 0xA92D, 0x3AA0, 0xBFDC, 0x3AA0, 0xD671, 0x3AA0, 0xECFE, 0x3AA1, 0x0370, 0x3AA1, 0x19D2, 0x3AA1, 0x302B, 0x3AA1, 0x466A, 0x3AA1, 0x5C98, 0x3AA1, 0x72B5, 0x3AA1, 0x88C0, 0x3AA1, 0x9EBB, 0x3AA1, 0xB4A4, 0x3AA1, 0xCA7C, 0x3AA1, 0xE043, 0x3AA1, 0xF5F8, 0x3AA2, 0x0B9D, 0x3AA2, 0x2139, 0x3AA2, 0x36BB, 0x3AA2, 0x4C2C, 0x3AA2, 0x6194, 0x3AA2, 0x76E3, 0x3AA2, 0x8C29, 0x3AA2, 0xA155, 0x3AA2, 0xB679, 0x3AA2, 0xCB8B, 0x3AA2, 0xE08D, 0x3AA2, 0xF585, 0x3AA3, 0x0A64, 0x3AA3, 0x1F3B, 0x3AA3, 0x3400, 0x3AA3, 0x48B4, 0x3AA3, 0x5D57, 0x3AA3, 0x71F1, 0x3AA3, 0x867A, 0x3AA3, 0x9AF2, 0x3AA3, 0xAF58, 0x3AA3, 0xC3B6, 0x3AA3, 0xD803, 0x3AA3, 0xEC3F, 0x3AA4, 0x006A, 0x3AA4, 0x148C, 0x3AA4, 0x289C, 0x3AA4, 0x3C9C, 0x3AA4, 0x5093, 0x3AA4, 0x6479, 0x3AA4, 0x7856, 0x3AA4, 0x8C1A, 0x3AA4, 0x9FDD, 0x3AA4, 0xB387, 0x3AA4, 0xC728, 0x3AA4, 0xDAB8, 0x3AA4, 0xEE3F, 0x3AA5, 0x01B5, 0x3AA5, 0x1523, 0x3AA5, 0x287F, 0x3AA5, 0x3BD3, 0x3AA5, 0x4F0D, 0x3AA5, 0x6247, 0x3AA5, 0x7570, 0x3AA5, 0x8888, 0x3AA5, 0x9B97, 0x3AA5, 0xAE95, 0x3AA5, 0xC18A, 0x3AA5, 0xD46E, 0x3AA5, 0xE74A, 0x3AA5, 0xFA1D, 0x3AA6, 0x0CD6, 0x3AA6, 0x1F8F, 0x3AA6, 0x3237, 0x3AA6, 0x44CE, 0x3AA6, 0x575C, 0x3AA6, 0x69E2, 0x3AA6, 0x7C56, 0x3AA6, 0x8EC2, 0x3AA6, 0xA125, 0x3AA6, 0xB377, 0x3AA6, 0xC5B8, 0x3AA6, 0xD7F1, 0x3AA6, 0xEA20, 0x3AA6, 0xFC47, 0x3AA7, 0x0E5D, 0x3AA7, 0x206B, 0x3AA7, 0x3267, 0x3AA7, 0x445B, 0x3AA7, 0x5646, 0x3AA7, 0x6820, 0x3AA7, 0x79F1, 0x3AA7, 0x8BB9, 0x3AA7, 0x9D71, 0x3AA7, 0xAF28, 0x3AA7, 0xC0C6, 0x3AA7, 0xD264, 0x3AA7, 0xE3F0, 0x3AA7, 0xF574, 0x3AA8, 0x06F0, 0x3AA8, 0x185A, 0x3AA8, 0x29BB, 0x3AA8, 0x3B14, 0x3AA8, 0x4C65, 0x3AA8, 0x5DA4, 0x3AA8, 0x6EDB, 0x3AA8, 0x8009, 0x3AA8, 0x912E, 0x3AA8, 0xA24B, 0x3AA8, 0xB357, 0x3AA8, 0xC45A, 0x3AA8, 0xD554, 0x3AA8, 0xE63E, 0x3AA8, 0xF727, 0x3AA9, 0x07FF, 0x3AA9, 0x18CF, 0x3AA9, 0x2996, 0x3AA9, 0x3A54, 0x3AA9, 0x4B0A, 0x3AA9, 0x5BAE, 0x3AA9, 0x6C4B, 0x3AA9, 0x7CDE, 0x3AA9, 0x8D69, 0x3AA9, 0x9DEB, 0x3AA9, 0xAE65, 0x3AA9, 0xBED6, 0x3AA9, 0xCF36, 0x3AA9, 0xDF96, 0x3AA9, 0xEFE4, 0x3AAA, 0x002A, 0x3AAA, 0x1068, 0x3AAA, 0x209D, 0x3AAA, 0x30C9, 0x3AAA, 0x40ED, 0x3AAA, 0x50FF, 0x3AAA, 0x6112, 0x3AAA, 0x7113, 0x3AAA, 0x8115, 0x3AAA, 0x9105, 0x3AAA, 0xA0F5, 0x3AAA, 0xB0D4, 0x3AAA, 0xC0AB, 0x3AAA, 0xD079, 0x3AAA, 0xE047, 0x3AAA, 0xF003, 0x3AAA, 0xFFB7, 0x3AAB, 0x0F63, 0x3AAB, 0x1F06, 0x3AAB, 0x2EA0, 0x3AAB, 0x3E32, 0x3AAB, 0x4DBB, 0x3AAB, 0x5D3B, 0x3AAB, 0x6CB3, 0x3AAB, 0x7C23, 0x3AAB, 0x8B8A, 0x3AAB, 0x9AE8, 0x3AAB, 0xAA3D, 0x3AAB, 0xB993, 0x3AAB, 0xC8D7, 0x3AAB, 0xD813, 0x3AAB, 0xE746, 0x3AAB, 0xF671, 0x3AAC, 0x059C, 0x3AAC, 0x14B5, 0x3AAC, 0x23C6, 0x3AAC, 0x32D7, 0x3AAC, 0x41D7, 0x3AAC, 0x50D6, 0x3AAC, 0x5FC5, 0x3AAC, 0x6EB3, 0x3AAC, 0x7D99, 0x3AAC, 0x8C77, 0x3AAC, 0x9B4B, 0x3AAC, 0xAA18, 0x3AAC, 0xB8DB, 0x3AAC, 0xC796, 0x3AAC, 0xD649, 0x3AAC, 0xE4F2, 0x3AAC, 0xF39C, 0x3AAD, 0x023D, 0x3AAD, 0x10CD, 0x3AAD, 0x1F5D, 0x3AAD, 0x2DE5, 0x3AAD, 0x3C64, 0x3AAD, 0x4ADA, 0x3AAD, 0x5950, 0x3AAD, 0x67B5, 0x3AAD, 0x761A, 0x3AAD, 0x846E, 0x3AAD, 0x92C2, 0x3AAD, 0xA10E, 0x3AAD, 0xAF59, 0x3AAD, 0xBD93, 0x3AAD, 0xCBC4, 0x3AAD, 0xD9F6, 0x3AAD, 0xE81F, 0x3AAD, 0xF63F, 0x3AAE, 0x0457, 0x3AAE, 0x1266, 0x3AAE, 0x2075, 0x3AAE, 0x2E7C, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3939, 0x6DD5, 0x3992, 0xF4E5, 0x39B9, 0x7208, 0x39D7, 0x4D35, 0x39EF, 0xB277, 0x3A02, 0x297E, 0x3A0B, 0x18AB, 0x3A12, 0xFA2B, 0x3A1A, 0x06EF, 0x3A20, 0x6796, 0x3A26, 0x3A1D, 0x3A2B, 0x954B, 0x3A30, 0x8AD7, 0x3A35, 0x28C6, 0x3A39, 0x7A6C, 0x3A3D, 0x890A, 0x3A41, 0x5C47, 0x3A44, 0xFA95, 0x3A48, 0x695D, 0x3A4B, 0xAD47, 0x3A4E, 0xCA4E, 0x3A51, 0xC3E9, 0x3A54, 0x9D18, 0x3A57, 0x5886, 0x3A59, 0xF886, 0x3A5C, 0x7F2A, 0x3A5E, 0xEE4A, 0x3A61, 0x478D, 0x3A63, 0x8C6F, 0x3A65, 0xBE47, 0x3A67, 0xDE46, 0x3A69, 0xED8B, 0x3A6B, 0xED12, 0x3A6D, 0xDDC7, 0x3A6F, 0xC07E, 0x3A71, 0x95FB, 0x3A73, 0x5EF3, 0x3A75, 0x1C0E, 0x3A76, 0xCDE5, 0x3A78, 0x7506, 0x3A7A, 0x11F5, 0x3A7B, 0xA52D, 0x3A7D, 0x2F20, 0x3A7E, 0xB039, 0x3A80, 0x146E, 0x3A80, 0xCCB3, 0x3A81, 0x8117, 0x3A82, 0x31C3, 0x3A82, 0xDEDE, 0x3A83, 0x888B, 0x3A84, 0x2EF1, 0x3A84, 0xD226, 0x3A85, 0x724E, 0x3A86, 0x0F8A, 0x3A86, 0xA9ED, 0x3A87, 0x4197, 0x3A87, 0xD69B, 0x3A88, 0x6912, 0x3A88, 0xF916, 0x3A89, 0x86B8, 0x3A8A, 0x1212, 0x3A8A, 0x9B2D, 0x3A8B, 0x2221, 0x3A8B, 0xA6F9, 0x3A8C, 0x29CD, 0x3A8C, 0xAAA6, 0x3A8D, 0x299F, 0x3A8D, 0xA6B6, 0x3A8E, 0x21FD, 0x3A8E, 0x9B8F, 0x3A8F, 0x136A, 0x3A8F, 0x8998, 0x3A8F, 0xFE32, 0x3A90, 0x7138, 0x3A90, 0xE2B3, 0x3A91, 0x52BD, 0x3A91, 0xC14D, 0x3A92, 0x2E7C, 0x3A92, 0x9A43, 0x3A93, 0x04BB, 0x3A93, 0x6DDB, 0x3A93, 0xD5BE, 0x3A94, 0x3C5A, 0x3A94, 0xA1C9, 0x3A95, 0x0603, 0x3A95, 0x6911, 0x3A95, 0xCB03, 0x3A96, 0x2BDA, 0x3A96, 0x8B9D, 0x3A96, 0xEA4E, 0x3A97, 0x47F4, 0x3A97, 0xA499, 0x3A98, 0x0045, 0x3A98, 0x5AEF, 0x3A98, 0xB4B1, 0x3A99, 0x0D7A, 0x3A99, 0x6564, 0x3A99, 0xBC65, 0x3A9A, 0x1288, 0x3A9A, 0x67CB, 0x3A9A, 0xBC37, 0x3A9B, 0x0FD5, 0x3A9B, 0x62A5, 0x3A9B, 0xB4A7, 0x3A9C, 0x05E3, 0x3A9C, 0x565A, 0x3A9C, 0xA613, 0x3A9C, 0xF510, 0x3A9D, 0x4350, 0x3A9D, 0x90E4, 0x3A9D, 0xDDBB, 0x3A9E, 0x29EF, 0x3A9E, 0x756E, 0x3A9E, 0xC04A, 0x3A9F, 0x0A7A, 0x3A9F, 0x5410, 0x3A9F, 0x9CFA, 0x3A9F, 0xE552, 0x3AA0, 0x2D07, 0x3AA0, 0x7429, 0x3AA0, 0xBAB1, 0x3AA1, 0x00A7, 0x3AA1, 0x460B, 0x3AA1, 0x8AE6, 0x3AA1, 0xCF2E, 0x3AA2, 0x12ED, 0x3AA2, 0x5623, 0x3AA2, 0x98D8, 0x3AA2, 0xDB03, 0x3AA3, 0x1CAE, 0x3AA3, 0x5DE0, 0x3AA3, 0x9E91, 0x3AA3, 0xDEC2, 0x3AA4, 0x1E7A, 0x3AA4, 0x5DBA, 0x3AA4, 0x9C82, 0x3AA4, 0xDADA, 0x3AA5, 0x18BA, 0x3AA5, 0x562A, 0x3AA5, 0x932B, 0x3AA5, 0xCFBB, 0x3AA6, 0x0BE5, 0x3AA6, 0x479F, 0x3AA6, 0x82EA, 0x3AA6, 0xBDD6, 0x3AA6, 0xF852, 0x3AA7, 0x3270, 0x3AA7, 0x6C26, 0x3AA7, 0xA57F, 0x3AA7, 0xDE70, 0x3AA8, 0x1702, 0x3AA8, 0x4F36, 0x3AA8, 0x870C, 0x3AA8, 0xBE83, 0x3AA8, 0xF5A4, 0x3AA9, 0x2C67, 0x3AA9, 0x62D4, 0x3AA9, 0x98E3, 0x3AA9, 0xCEA4, 0x3AAA, 0x0406, 0x3AAA, 0x391B, 0x3AAA, 0x6DDB, 0x3AAA, 0xA244, 0x3AAA, 0xD660, 0x3AAB, 0x0A27, 0x3AAB, 0x3DA0, 0x3AAB, 0x70CB, 0x3AAB, 0xA3AA, 0x3AAB, 0xD63B, 0x3AAC, 0x087E, 0x3AAC, 0x3A7D, 0x3AAC, 0x6C2F, 0x3AAC, 0x9D94, 0x3AAC, 0xCEB3, 0x3AAC, 0xFF86, 0x3AAD, 0x301C, 0x3AAD, 0x6065, 0x3AAD, 0x9069, 0x3AAD, 0xC028, 0x3AAD, 0xEFA3, 0x3AAE, 0x1ED9, 0x3AAE, 0x4DD3, 0x3AAE, 0x7C88, 0x3AAE, 0xAB01, 0x3AAE, 0xD936, 0x3AAF, 0x0725, 0x3AAF, 0x34E1, 0x3AAF, 0x6259, 0x3AAF, 0x8F94, 0x3AAF, 0xBC93, 0x3AAF, 0xE956, 0x3AB0, 0x15DD, 0x3AB0, 0x4228, 0x3AB0, 0x6E36, 0x3AB0, 0x9A11, 0x3AB0, 0xC5B0, 0x3AB0, 0xF113, 0x3AB1, 0x1C42, 0x3AB1, 0x4735, 0x3AB1, 0x71F5, 0x3AB1, 0x9C81, 0x3AB1, 0xC6D9, 0x3AB1, 0xF0F6, 0x3AB2, 0x1ADF, 0x3AB2, 0x4494, 0x3AB2, 0x6E16, 0x3AB2, 0x9764, 0x3AB2, 0xC07F, 0x3AB2, 0xE96E, 0x3AB3, 0x1222, 0x3AB3, 0x3AAA, 0x3AB3, 0x6300, 0x3AB3, 0x8B2A, 0x3AB3, 0xB320, 0x3AB3, 0xDAE3, 0x3AB4, 0x027C, 0x3AB4, 0x29E0, 0x3AB4, 0x5122, 0x3AB4, 0x7828, 0x3AB4, 0x9F0C, 0x3AB4, 0xC5BC, 0x3AB4, 0xEC42, 0x3AB5, 0x129C, 0x3AB5, 0x38CB, 0x3AB5, 0x5ED0, 0x3AB5, 0x84A9, 0x3AB5, 0xAA58, 0x3AB5, 0xCFDB, 0x3AB5, 0xF534, 0x3AB6, 0x1A61, 0x3AB6, 0x3F6D, 0x3AB6, 0x6444, 0x3AB6, 0x88FA, 0x3AB6, 0xAD8D, 0x3AB6, 0xD1EC, 0x3AB6, 0xF632, 0x3AB7, 0x1A44, 0x3AB7, 0x3E34, 0x3AB7, 0x6201, 0x3AB7, 0x85A4, 0x3AB7, 0xA924, 0x3AB7, 0xCC79, 0x3AB7, 0xEFB5, 0x3AB8, 0x12BD, 0x3AB8, 0x35AB, 0x3AB8, 0x586E, 0x3AB8, 0x7B0F, 0x3AB8, 0x9D96, 0x3AB8, 0xBFE9, 0x3AB8, 0xE223, 0x3AB9, 0x043A, 0x3AB9, 0x262F, 0x3AB9, 0x47FA, 0x3AB9, 0x69AA, 0x3AB9, 0x8B38, 0x3AB9, 0xACA3, 0x3AB9, 0xCDED, 0x3AB9, 0xEF13, 0x3ABA, 0x1020, 0x3ABA, 0x310B, 0x3ABA, 0x51CB, 0x3ABA, 0x727A, 0x3ABA, 0x92FD, 0x3ABA, 0xB367, 0x3ABA, 0xD3AF, 0x3ABA, 0xF3DC, 0x3ABB, 0x13E8, 0x3ABB, 0x33D1, 0x3ABB, 0x53A0, 0x3ABB, 0x7356, 0x3ABB, 0x92E9, 0x3ABB, 0xB259, 0x3ABB, 0xD1B0, 0x3ABB, 0xF0EE, 0x3ABC, 0x1009, 0x3ABC, 0x2F0A, 0x3ABC, 0x4DF1, 0x3ABC, 0x6CB6, 0x3ABC, 0x8B61, 0x3ABC, 0xA9F3, 0x3ABC, 0xC862, 0x3ABC, 0xE6C0, 0x3ABD, 0x04FB, 0x3ABD, 0x231D, 0x3ABD, 0x411C, 0x3ABD, 0x5F0A, 0x3ABD, 0x7CDF, 0x3ABD, 0x9A91, 0x3ABD, 0xB832, 0x3ABD, 0xD5B0, 0x3ABD, 0xF31E, 0x3ABE, 0x1069, 0x3ABE, 0x2D9A, 0x3ABE, 0x4ABA, 0x3ABE, 0x67B8, 0x3ABE, 0x84A4, 0x3ABE, 0xA177, 0x3ABE, 0xBE30, 0x3ABE, 0xDACF, 0x3ABE, 0xF755, 0x3ABF, 0x13C0, 0x3ABF, 0x301B, 0x3ABF, 0x4C53, 0x3ABF, 0x687A, 0x3ABF, 0x8490, 0x3ABF, 0xA083, 0x3ABF, 0xBC65, 0x3ABF, 0xD82E, 0x3ABF, 0xF3E5, 0x3AC0, 0x0F7A, 0x3AC0, 0x2B06, 0x3AC0, 0x4670, 0x3AC0, 0x61C9, 0x3AC0, 0x7D08, 0x3AC0, 0x9836, 0x3AC0, 0xB34A, 0x3AC0, 0xCE4D, 0x3AC0, 0xE936, 0x3AC1, 0x040E, 0x3AC1, 0x1ECC, 0x3AC1, 0x3971, 0x3AC1, 0x540D, 0x3AC1, 0x6E86, 0x3AC1, 0x88F7, 0x3AC1, 0xA34E, 0x3AC1, 0xBD8B, 0x3AC1, 0xD7B7, 0x3AC1, 0xF1D2, 0x3AC2, 0x0BD4, 0x3AC2, 0x25C4, 0x3AC2, 0x3FA2, 0x3AC2, 0x5968, 0x3AC2, 0x731B, 0x3AC2, 0x8CBE, 0x3AC2, 0xA650, 0x3AC2, 0xBFC7, 0x3AC2, 0xD92E, 0x3AC2, 0xF27B, 0x3AC3, 0x0BBF, 0x3AC3, 0x24E9, 0x3AC3, 0x3E03, 0x3AC3, 0x570B, 0x3AC3, 0x7002, 0x3AC3, 0x88E8, 0x3AC3, 0xA1B3, 0x3AC3, 0xBA77, 0x3AC3, 0xD320, 0x3AC3, 0xEBB9, 0x3AC4, 0x0440, 0x3AC4, 0x1CB6, 0x3AC4, 0x351B, 0x3AC4, 0x4D66, 0x3AC4, 0x65A9, 0x3AC4, 0x7DDA, 0x3AC4, 0x95F2, 0x3AC4, 0xAE01, 0x3AC4, 0xC5FE, 0x3AC4, 0xDDE2, 0x3AC4, 0xF5BE, 0x3AC5, 0x0D88, 0x3AC5, 0x2539, 0x3AC5, 0x3CE1, 0x3AC5, 0x5477, 0x3AC5, 0x6BFD, 0x3AC5, 0x8371, 0x3AC5, 0x9AD4, 0x3AC5, 0xB226, 0x3AC5, 0xC970, 0x3AC5, 0xE09F, 0x3AC5, 0xF7C6, 0x3AC6, 0x0ED4, 0x3AC6, 0x25D8, 0x3AC6, 0x3CCC, 0x3AC6, 0x53B7, 0x3AC6, 0x6A88, 0x3AC6, 0x8151, 0x3AC6, 0x97FF, 0x3AC6, 0xAEA6, 0x3AC6, 0xC543, 0x3AC6, 0xDBC7, 0x3AC6, 0xF242, 0x3AC7, 0x08AC, 0x3AC7, 0x1F05, 0x3AC7, 0x354D, 0x3AC7, 0x4B8C, 0x3AC7, 0x61BA, 0x3AC7, 0x77D7, 0x3AC7, 0x8DEB, 0x3AC7, 0xA3EE, 0x3AC7, 0xB9E0, 0x3AC7, 0xCFC9, 0x3AC7, 0xE5A1, 0x3AC7, 0xFB68, 0x3AC8, 0x1126, 0x3AC8, 0x26D3, 0x3AC8, 0x3C6F, 0x3AC8, 0x5203, 0x3AC8, 0x6785, 0x3AC8, 0x7CF6, 0x3AC8, 0x925E, 0x3AC8, 0xA7BE, 0x3AC8, 0xBD0C, 0x3AC8, 0xD24A, 0x3AC8, 0xE776, 0x3AC8, 0xFC9A, 0x3AC9, 0x11B5, 0x3AC9, 0x26BF, 0x3AC9, 0x3BB7, 0x3AC9, 0x50A8, 0x3AC9, 0x658F, 0x3AC9, 0x7A65, 0x3AC9, 0x8F2B, 0x3AC9, 0xA3E7, 0x3AC9, 0xB893, 0x3AC9, 0xCD35, 0x3AC9, 0xE1D0, 0x3AC9, 0xF659, 0x3ACA, 0x0AD1, 0x3ACA, 0x1F40, 0x3ACA, 0x33A7, 0x3ACA, 0x47FC, 0x3ACA, 0x5C49, 0x3ACA, 0x7085, 0x3ACA, 0x84B8, 0x3ACA, 0x98DA, 0x3ACA, 0xACF3, 0x3ACA, 0xC104, 0x3ACA, 0xD504, 0x3ACA, 0xE8FB, 0x3ACA, 0xFCE9, 0x3ACB, 0x10C6, 0x3ACB, 0x2492, 0x3ACB, 0x385E, 0x3ACB, 0x4C19, 0x3ACB, 0x5FC3, 0x3ACB, 0x736D, 0x3ACB, 0x8705, 0x3ACB, 0x9A8C, 0x3ACB, 0xAE14, 0x3ACB, 0xC18A, 0x3ACB, 0xD4F8, 0x3ACB, 0xE854, 0x3ACB, 0xFBA8, 0x3ACC, 0x0EF3, 0x3ACC, 0x222D, 0x3ACC, 0x3567, 0x3ACC, 0x4890, 0x3ACC, 0x5BA8, 0x3ACC, 0x6EBF, 0x3ACC, 0x81C6, 0x3ACC, 0x94C4, 0x3ACC, 0xA7B0, 0x3ACC, 0xBA9D, 0x3ACC, 0xCD79, 0x3ACC, 0xE04C, 0x3ACC, 0xF30D, 0x3ACD, 0x05CF, 0x3ACD, 0x1880, 0x3ACD, 0x2B28, 0x3ACD, 0x3DC7, 0x3ACD, 0x505E, 0x3ACD, 0x62E4, 0x3ACD, 0x7561, 0x3ACD, 0x87D5, 0x3ACD, 0x9A41, 0x3ACD, 0xACA4, 0x3ACD, 0xBEFF, 0x3ACD, 0xD148, 0x3ACD, 0xE389, 0x3ACD, 0xF5C2, 0x3ACE, 0x07F1, 0x3ACE, 0x1A19, 0x3ACE, 0x2C2F, 0x3ACE, 0x3E45, 0x3ACE, 0x5049, 0x3ACE, 0x6246, 0x3ACE, 0x7439, 0x3ACE, 0x8624, 0x3ACE, 0x9807, 0x3ACE, 0xA9E0, 0x3ACE, 0xBBB2, 0x3ACE, 0xCD72, 0x3ACE, 0xDF32, 0x3ACE, 0xF0E1, 0x3ACF, 0x0287, 0x3ACF, 0x142D, 0x3ACF, 0x25C3, 0x3ACF, 0x374F, 0x3ACF, 0x48D3, 0x3ACF, 0x5A4E, 0x3ACF, 0x6BB9, 0x3ACF, 0x7D23, 0x3ACF, 0x8E84, 0x3ACF, 0x9FDD, 0x3ACF, 0xB125, 0x3ACF, 0xC26D, 0x3ACF, 0xD3A4, 0x3ACF, 0xE4DA, 0x3ACF, 0xF608, 0x3AD0, 0x0725, 0x3AD0, 0x1842, 0x3AD0, 0x294E, 0x3AD0, 0x3A51, 0x3AD0, 0x4B54, 0x3AD0, 0x5C46, 0x3AD0, 0x6D38, 0x3AD0, 0x7E18, 0x3AD0, 0x8EF9, 0x3AD0, 0x9FC9, 0x3AD0, 0xB098, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3967, 0x339A, 0x39B7, 0x3C13, 0x39E7, 0x3A1D, 0x3A06, 0x3A58, 0x3A15, 0x701D, 0x3A22, 0x4C6B, 0x3A2D, 0x707C, 0x3A37, 0x4447, 0x3A40, 0x0ED0, 0x3A48, 0x02BE, 0x3A4F, 0x4571, 0x3A55, 0xF356, 0x3A5C, 0x227B, 0x3A61, 0xE465, 0x3A67, 0x472C, 0x3A6C, 0x565C, 0x3A71, 0x1B86, 0x3A75, 0x9EAA, 0x3A79, 0xE68F, 0x3A7D, 0xF8FD, 0x3A80, 0xED77, 0x3A82, 0xC859, 0x3A84, 0x8F02, 0x3A86, 0x4326, 0x3A87, 0xE624, 0x3A89, 0x795D, 0x3A8A, 0xFDE4, 0x3A8C, 0x74D4, 0x3A8D, 0xDF04, 0x3A8F, 0x3D5B, 0x3A90, 0x908F, 0x3A91, 0xD953, 0x3A93, 0x184B, 0x3A94, 0x4E09, 0x3A95, 0x7B05, 0x3A96, 0x9FC8, 0x3A97, 0xBCB9, 0x3A98, 0xD241, 0x3A99, 0xE0C5, 0x3A9A, 0xE89C, 0x3A9B, 0xEA1B, 0x3A9C, 0xE587, 0x3A9D, 0xDB2E, 0x3A9E, 0xCB54, 0x3A9F, 0xB62D, 0x3AA0, 0x9BFE, 0x3AA1, 0x7CF0, 0x3AA2, 0x594B, 0x3AA3, 0x312E, 0x3AA4, 0x04C6, 0x3AA4, 0xD446, 0x3AA5, 0x9FD1, 0x3AA6, 0x6791, 0x3AA7, 0x2BA8, 0x3AA7, 0xEC32, 0x3AA8, 0xA957, 0x3AA9, 0x6333, 0x3AAA, 0x19DE, 0x3AAA, 0xCD7C, 0x3AAB, 0x7E1E, 0x3AAC, 0x2BE5, 0x3AAC, 0xD6E3, 0x3AAD, 0x7F2A, 0x3AAE, 0x24DB, 0x3AAE, 0xC808, 0x3AAF, 0x68B9, 0x3AB0, 0x0711, 0x3AB0, 0xA30F, 0x3AB1, 0x3CD7, 0x3AB1, 0xD470, 0x3AB2, 0x69E4, 0x3AB2, 0xFD54, 0x3AB3, 0x8EB8, 0x3AB4, 0x1E2A, 0x3AB4, 0xABBB, 0x3AB5, 0x376B, 0x3AB5, 0xC154, 0x3AB6, 0x497E, 0x3AB6, 0xCFE9, 0x3AB7, 0x54AF, 0x3AB7, 0xD7D1, 0x3AB8, 0x595E, 0x3AB8, 0xD958, 0x3AB9, 0x57D9, 0x3AB9, 0xD4D6, 0x3ABA, 0x506B, 0x3ABA, 0xCA8E, 0x3ABB, 0x4351, 0x3ABB, 0xBABD, 0x3ABC, 0x30D9, 0x3ABC, 0xA5A7, 0x3ABD, 0x192E, 0x3ABD, 0x8B80, 0x3ABD, 0xFC9D, 0x3ABE, 0x6C84, 0x3ABE, 0xDB48, 0x3ABF, 0x48E7, 0x3ABF, 0xB56B, 0x3AC0, 0x20D3, 0x3AC0, 0x8B31, 0x3AC0, 0xF47C, 0x3AC1, 0x5CC6, 0x3AC1, 0xC405, 0x3AC2, 0x2A4B, 0x3AC2, 0x8FA1, 0x3AC2, 0xF3FD, 0x3AC3, 0x5769, 0x3AC3, 0xB9ED, 0x3AC4, 0x1B8A, 0x3AC4, 0x7C46, 0x3AC4, 0xDC24, 0x3AC5, 0x3B22, 0x3AC5, 0x9952, 0x3AC5, 0xF6AB, 0x3AC6, 0x5336, 0x3AC6, 0xAEF3, 0x3AC7, 0x09EA, 0x3AC7, 0x641C, 0x3AC7, 0xBD91, 0x3AC8, 0x1649, 0x3AC8, 0x6E3B, 0x3AC8, 0xC581, 0x3AC9, 0x1C0B, 0x3AC9, 0x71E8, 0x3AC9, 0xC711, 0x3ACA, 0x1B98, 0x3ACA, 0x6F69, 0x3ACA, 0xC298, 0x3ACB, 0x1523, 0x3ACB, 0x670B, 0x3ACB, 0xB858, 0x3ACC, 0x0903, 0x3ACC, 0x5912, 0x3ACC, 0xA890, 0x3ACC, 0xF773, 0x3ACD, 0x45BB, 0x3ACD, 0x937A, 0x3ACD, 0xE0A7, 0x3ACE, 0x2D4A, 0x3ACE, 0x795B, 0x3ACE, 0xC4EC, 0x3ACF, 0x0FEA, 0x3ACF, 0x5A68, 0x3ACF, 0xA465, 0x3ACF, 0xEDE1, 0x3AD0, 0x36D3, 0x3AD0, 0x7F4E, 0x3AD0, 0xC747, 0x3AD1, 0x0EC8, 0x3AD1, 0x55D1, 0x3AD1, 0x9C62, 0x3AD1, 0xE27A, 0x3AD2, 0x281A, 0x3AD2, 0x6D4B, 0x3AD2, 0xB20B, 0x3AD2, 0xF65D, 0x3AD3, 0x3A35, 0x3AD3, 0x7DA7, 0x3AD3, 0xC0B2, 0x3AD4, 0x034D, 0x3AD4, 0x4578, 0x3AD4, 0x8745, 0x3AD4, 0xC8A2, 0x3AD5, 0x09A1, 0x3AD5, 0x4A39, 0x3AD5, 0x8A69, 0x3AD5, 0xCA3B, 0x3AD6, 0x09AF, 0x3AD6, 0x48C4, 0x3AD6, 0x8772, 0x3AD6, 0xC5CA, 0x3AD7, 0x03C4, 0x3AD7, 0x415F, 0x3AD7, 0x7EA4, 0x3AD7, 0xBB8B, 0x3AD7, 0xF81B, 0x3AD8, 0x3456, 0x3AD8, 0x703B, 0x3AD8, 0xABCB, 0x3AD8, 0xE704, 0x3AD9, 0x21E7, 0x3AD9, 0x5C7D, 0x3AD9, 0x96BD, 0x3AD9, 0xD0B0, 0x3ADA, 0x0A4D, 0x3ADA, 0x43A5, 0x3ADA, 0x7CA8, 0x3ADA, 0xB55D, 0x3ADA, 0xEDC4, 0x3ADB, 0x25E7, 0x3ADB, 0x5DB4, 0x3ADB, 0x953D, 0x3ADB, 0xCC80, 0x3ADC, 0x0377, 0x3ADC, 0x3A28, 0x3ADC, 0x708C, 0x3ADC, 0xA6AC, 0x3ADC, 0xDC87, 0x3ADD, 0x121D, 0x3ADD, 0x476E, 0x3ADD, 0x7C7B, 0x3ADD, 0xB14C, 0x3ADD, 0xE5CF, 0x3ADE, 0x1A16, 0x3ADE, 0x4E21, 0x3ADE, 0x81E7, 0x3ADE, 0xB569, 0x3ADE, 0xE8AE, 0x3ADF, 0x1BB7, 0x3ADF, 0x4E85, 0x3ADF, 0x810D, 0x3ADF, 0xB359, 0x3ADF, 0xE572, 0x3AE0, 0x1746, 0x3AE0, 0x48E7, 0x3AE0, 0x7A43, 0x3AE0, 0xAB6B, 0x3AE0, 0xDC57, 0x3AE1, 0x0D0F, 0x3AE1, 0x3D8C, 0x3AE1, 0x6DCC, 0x3AE1, 0x9DD9, 0x3AE1, 0xCDB2, 0x3AE1, 0xFD4F, 0x3AE2, 0x2CB9, 0x3AE2, 0x5BEF, 0x3AE2, 0x8AE9, 0x3AE2, 0xB9AF, 0x3AE2, 0xE84B, 0x3AE3, 0x16AA, 0x3AE3, 0x44D6, 0x3AE3, 0x72D7, 0x3AE3, 0xA09B, 0x3AE3, 0xCE35, 0x3AE3, 0xFB9B, 0x3AE4, 0x28CE, 0x3AE4, 0x55D5, 0x3AE4, 0x82AA, 0x3AE4, 0xAF4A, 0x3AE4, 0xDBC0, 0x3AE5, 0x0802, 0x3AE5, 0x3419, 0x3AE5, 0x6005, 0x3AE5, 0x8BBE, 0x3AE5, 0xB74C, 0x3AE5, 0xE2A6, 0x3AE6, 0x0DDE, 0x3AE6, 0x38E2, 0x3AE6, 0x63BC, 0x3AE6, 0x8E6A, 0x3AE6, 0xB8ED, 0x3AE6, 0xE346, 0x3AE7, 0x0D73, 0x3AE7, 0x3776, 0x3AE7, 0x614E, 0x3AE7, 0x8AFA, 0x3AE7, 0xB47C, 0x3AE7, 0xDDDB, 0x3AE8, 0x0710, 0x3AE8, 0x3019, 0x3AE8, 0x58F8, 0x3AE8, 0x81B4, 0x3AE8, 0xAA45, 0x3AE8, 0xD2B4, 0x3AE8, 0xFAF8, 0x3AE9, 0x231A, 0x3AE9, 0x4B10, 0x3AE9, 0x72E5, 0x3AE9, 0x9A8E, 0x3AE9, 0xC215, 0x3AE9, 0xE971, 0x3AEA, 0x10B3, 0x3AEA, 0x37CA, 0x3AEA, 0x5EBF, 0x3AEA, 0x8589, 0x3AEA, 0xAC39, 0x3AEA, 0xD2BF, 0x3AEA, 0xF922, 0x3AEB, 0x1F62, 0x3AEB, 0x4580, 0x3AEB, 0x6B7C, 0x3AEB, 0x9155, 0x3AEB, 0xB70D, 0x3AEB, 0xDCA1, 0x3AEC, 0x0214, 0x3AEC, 0x2764, 0x3AEC, 0x4C91, 0x3AEC, 0x71A5, 0x3AEC, 0x968E, 0x3AEC, 0xBB5D, 0x3AEC, 0xE00A, 0x3AED, 0x049D, 0x3AED, 0x2905, 0x3AED, 0x4D53, 0x3AED, 0x7188, 0x3AED, 0x9592, 0x3AED, 0xB981, 0x3AED, 0xDD57, 0x3AEE, 0x010B, 0x3AEE, 0x249C, 0x3AEE, 0x4814, 0x3AEE, 0x6B69, 0x3AEE, 0x8EA5, 0x3AEE, 0xB1C6, 0x3AEE, 0xD4C6, 0x3AEE, 0xF7A3, 0x3AEF, 0x1A6E, 0x3AEF, 0x3D18, 0x3AEF, 0x5F9F, 0x3AEF, 0x820C, 0x3AEF, 0xA460, 0x3AEF, 0xC699, 0x3AEF, 0xE8B1, 0x3AF0, 0x0AB7, 0x3AF0, 0x2C9B, 0x3AF0, 0x4E5C, 0x3AF0, 0x700C, 0x3AF0, 0x919A, 0x3AF0, 0xB317, 0x3AF0, 0xD472, 0x3AF0, 0xF5B2, 0x3AF1, 0x16D9, 0x3AF1, 0x37E6, 0x3AF1, 0x58D9, 0x3AF1, 0x79B3, 0x3AF1, 0x9A73, 0x3AF1, 0xBB19, 0x3AF1, 0xDBA5, 0x3AF1, 0xFC17, 0x3AF2, 0x1C70, 0x3AF2, 0x3CB8, 0x3AF2, 0x5CDD, 0x3AF2, 0x7CE8, 0x3AF2, 0x9CE2, 0x3AF2, 0xBCC3, 0x3AF2, 0xDC8A, 0x3AF2, 0xFC36, 0x3AF3, 0x1BCA, 0x3AF3, 0x3B4C, 0x3AF3, 0x5AB4, 0x3AF3, 0x7A02, 0x3AF3, 0x9937, 0x3AF3, 0xB85A, 0x3AF3, 0xD764, 0x3AF3, 0xF654, 0x3AF4, 0x1533, 0x3AF4, 0x33F8, 0x3AF4, 0x52A3, 0x3AF4, 0x713D, 0x3AF4, 0x8FBD, 0x3AF4, 0xAE2C, 0x3AF4, 0xCC81, 0x3AF4, 0xEABD, 0x3AF5, 0x08E7, 0x3AF5, 0x2700, 0x3AF5, 0x44F7, 0x3AF5, 0x62E5, 0x3AF5, 0x80BA, 0x3AF5, 0x9E75, 0x3AF5, 0xBC1E, 0x3AF5, 0xD9B6, 0x3AF5, 0xF735, 0x3AF6, 0x149A, 0x3AF6, 0x31F6, 0x3AF6, 0x4F30, 0x3AF6, 0x6C61, 0x3AF6, 0x8978, 0x3AF6, 0xA67F, 0x3AF6, 0xC36B, 0x3AF6, 0xE047, 0x3AF6, 0xFD11, 0x3AF7, 0x19CA, 0x3AF7, 0x3669, 0x3AF7, 0x52F7, 0x3AF7, 0x6F6B, 0x3AF7, 0x8BD7, 0x3AF7, 0xA829, 0x3AF7, 0xC46A, 0x3AF7, 0xE091, 0x3AF7, 0xFCAF, 0x3AF8, 0x18B4, 0x3AF8, 0x34A7, 0x3AF8, 0x5089, 0x3AF8, 0x6C5A, 0x3AF8, 0x881A, 0x3AF8, 0xA3C0, 0x3AF8, 0xBF5E, 0x3AF8, 0xDAE1, 0x3AF8, 0xF654, 0x3AF9, 0x11B5, 0x3AF9, 0x2D06, 0x3AF9, 0x4845, 0x3AF9, 0x6373, 0x3AF9, 0x7E8F, 0x3AF9, 0x9992, 0x3AF9, 0xB48C, 0x3AF9, 0xCF76, 0x3AF9, 0xEA45, 0x3AFA, 0x050C, 0x3AFA, 0x1FC1, 0x3AFA, 0x3A5D, 0x3AFA, 0x54F0, 0x3AFA, 0x6F72, 0x3AFA, 0x89E3, 0x3AFA, 0xA443, 0x3AFA, 0xBE91, 0x3AFA, 0xD8CF, 0x3AFA, 0xF2FB, 0x3AFB, 0x0D16, 0x3AFB, 0x2720, 0x3AFB, 0x4121, 0x3AFB, 0x5B08, 0x3AFB, 0x74E7, 0x3AFB, 0x8EB5, 0x3AFB, 0xA871, 0x3AFB, 0xC21D, 0x3AFB, 0xDBB7, 0x3AFB, 0xF548, 0x3AFC, 0x0EC0, 0x3AFC, 0x282F, 0x3AFC, 0x418D, 0x3AFC, 0x5ADA, 0x3AFC, 0x741E, 0x3AFC, 0x8D51, 0x3AFC, 0xA673, 0x3AFC, 0xBF84, 0x3AFC, 0xD883, 0x3AFC, 0xF17A, 0x3AFD, 0x0A60, 0x3AFD, 0x2334, 0x3AFD, 0x3C00, 0x3AFD, 0x54BB, 0x3AFD, 0x6D65, 0x3AFD, 0x85FD, 0x3AFD, 0x9E8D, 0x3AFD, 0xB70C, 0x3AFD, 0xCF79, 0x3AFD, 0xE7DE, 0x3AFE, 0x0032, 0x3AFE, 0x187D, 0x3AFE, 0x30B7, 0x3AFE, 0x48E0, 0x3AFE, 0x60F7, 0x3AFE, 0x7906, 0x3AFE, 0x910C, 0x3AFE, 0xA8F9, 0x3AFE, 0xC0E6, 0x3AFE, 0xD8B9, 0x3AFE, 0xF083, 0x3AFF, 0x083C, 0x3AFF, 0x1FEC, 0x3AFF, 0x3794, 0x3AFF, 0x4F22, 0x3AFF, 0x66A8, 0x3AFF, 0x7E25, 0x3AFF, 0x9591, 0x3AFF, 0xACF4, 0x3AFF, 0xC446, 0x3AFF, 0xDB87, 0x3AFF, 0xF2BF, 0x3B00, 0x04F7, 0x3B00, 0x1087, 0x3B00, 0x1C11, 0x3B00, 0x2794, 0x3B00, 0x330E, 0x3B00, 0x3E83, 0x3B00, 0x49F4, 0x3B00, 0x555D, 0x3B00, 0x60C1, 0x3B00, 0x6C21, 0x3B00, 0x7774, 0x3B00, 0x82C7, 0x3B00, 0x8E12, 0x3B00, 0x9958, 0x3B00, 0xA496, 0x3B00, 0xAFCF, 0x3B00, 0xBB00, 0x3B00, 0xC62C, 0x3B00, 0xD154, 0x3B00, 0xDC74, 0x3B00, 0xE78F, 0x3B00, 0xF2A2, 0x3B00, 0xFDB0, 0x3B01, 0x08BA, 0x3B01, 0x13C0, 0x3B01, 0x1EBD, 0x3B01, 0x29B2, 0x3B01, 0x34A7, 0x3B01, 0x3F93, 0x3B01, 0x4A7A, 0x3B01, 0x5559, 0x3B01, 0x6034, 0x3B01, 0x6B0B, 0x3B01, 0x75D9, 0x3B01, 0x80A7, 0x3B01, 0x8B68, 0x3B01, 0x9629, 0x3B01, 0xA0E1, 0x3B01, 0xAB96, 0x3B01, 0xB645, 0x3B01, 0xC0F1, 0x3B01, 0xCB94, 0x3B01, 0xD633, 0x3B01, 0xE0CD, 0x3B01, 0xEB5F, 0x3B01, 0xF5ED, 0x3B02, 0x0076, 0x3B02, 0x0AFB, 0x3B02, 0x1577, 0x3B02, 0x1FF3, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3B8E, 0x43B4, 0x3BE1, 0xC520, 0x3C0E, 0x92C4, 0x3C25, 0xA35D, 0x3C38, 0x81DC, 0x3C48, 0x7A58, 0x3C56, 0x5313, 0x3C62, 0x8C3C, 0x3C6D, 0x7D51, 0x3C77, 0x64C6, 0x3C80, 0x3864, 0x3C84, 0x623A, 0x3C88, 0x3D81, 0x3C8B, 0xD50B, 0x3C8F, 0x3191, 0x3C92, 0x5A3B, 0x3C95, 0x54F1, 0x3C98, 0x26A8, 0x3C9A, 0xD391, 0x3C9D, 0x5F41, 0x3C9F, 0xCCCF, 0x3CA2, 0x1EE4, 0x3CA4, 0x57D9, 0x3CA6, 0x79B2, 0x3CA8, 0x864C, 0x3CAA, 0x7F30, 0x3CAC, 0x65DA, 0x3CAE, 0x3B87, 0x3CB0, 0x0160, 0x3CB1, 0xB86F, 0x3CB3, 0x61A7, 0x3CB4, 0xFDD9, 0x3CB6, 0x8DD1, 0x3CB8, 0x1245, 0x3CB9, 0x8BD8, 0x3CBA, 0xFB23, 0x3CBC, 0x60AE, 0x3CBD, 0xBCFF, 0x3CBF, 0x1091, 0x3CC0, 0x5BCB, 0x3CC1, 0x9F17, 0x3CC2, 0xDAD1, 0x3CC4, 0x0F54, 0x3CC5, 0x3CF6, 0x3CC6, 0x63FD, 0x3CC7, 0x84B9, 0x3CC8, 0x9F6C, 0x3CC9, 0xB454, 0x3CCA, 0xC3A8, 0x3CCB, 0xCDA9, 0x3CCC, 0xD286, 0x3CCD, 0xD271, 0x3CCE, 0xCD9E, 0x3CCF, 0xC433, 0x3CD0, 0xB661, 0x3CD1, 0xA44D, 0x3CD2, 0x8E1D, 0x3CD3, 0x73F0, 0x3CD4, 0x55EE, 0x3CD5, 0x3435, 0x3CD6, 0x0EE5, 0x3CD6, 0xE61B, 0x3CD7, 0xB9F0, 0x3CD8, 0x8A86, 0x3CD9, 0x57F0, 0x3CDA, 0x224B, 0x3CDA, 0xE9A6, 0x3CDB, 0xAE1C, 0x3CDC, 0x6FC8, 0x3CDD, 0x2EB5, 0x3CDD, 0xEAFD, 0x3CDE, 0xA4B1, 0x3CDF, 0x5BE0, 0x3CE0, 0x109C, 0x3CE0, 0xC2F9, 0x3CE1, 0x7307, 0x3CE2, 0x20D2, 0x3CE2, 0xCC68, 0x3CE3, 0x75DC, 0x3CE4, 0x1D36, 0x3CE4, 0xC282, 0x3CE5, 0x65D6, 0x3CE6, 0x0736, 0x3CE6, 0xA6AD, 0x3CE7, 0x4452, 0x3CE7, 0xE01E, 0x3CE8, 0x7A2D, 0x3CE9, 0x127E, 0x3CE9, 0xA91C, 0x3CEA, 0x3E12, 0x3CEA, 0xD16A, 0x3CEB, 0x6330, 0x3CEB, 0xF369, 0x3CEC, 0x821F, 0x3CED, 0x0F52, 0x3CED, 0x9B19, 0x3CEE, 0x256D, 0x3CEE, 0xAE5E, 0x3CEF, 0x35F3, 0x3CEF, 0xBC2B, 0x3CF0, 0x411B, 0x3CF0, 0xC4B9, 0x3CF1, 0x471A, 0x3CF1, 0xC83A, 0x3CF2, 0x4821, 0x3CF2, 0xC6D7, 0x3CF3, 0x4466, 0x3CF3, 0xC0C7, 0x3CF4, 0x3C0D, 0x3CF4, 0xB635, 0x3CF5, 0x2F47, 0x3CF5, 0xA747, 0x3CF6, 0x1E3A, 0x3CF6, 0x9426, 0x3CF7, 0x090B, 0x3CF7, 0x7CF4, 0x3CF7, 0xEFE1, 0x3CF8, 0x61D6, 0x3CF8, 0xD2DA, 0x3CF9, 0x42ED, 0x3CF9, 0xB218, 0x3CFA, 0x205D, 0x3CFA, 0x8DBB, 0x3CFA, 0xFA3C, 0x3CFB, 0x65E2, 0x3CFB, 0xD0AB, 0x3CFC, 0x3AA4, 0x3CFC, 0xA3CA, 0x3CFD, 0x0C20, 0x3CFD, 0x73A9, 0x3CFD, 0xDA6C, 0x3CFE, 0x406D, 0x3CFE, 0xA5A8, 0x3CFF, 0x0A21, 0x3CFF, 0x6DE4, 0x3CFF, 0xD0E6, 0x3D00, 0x199B, 0x3D00, 0x4A68, 0x3D00, 0x7ADA, 0x3D00, 0xAAF6, 0x3D00, 0xDABC, 0x3D01, 0x0A2C, 0x3D01, 0x3948, 0x3D01, 0x6812, 0x3D01, 0x9688, 0x3D01, 0xC4AE, 0x3D01, 0xF286, 0x3D02, 0x2010, 0x3D02, 0x4D4A, 0x3D02, 0x7A39, 0x3D02, 0xA6DC, 0x3D02, 0xD334, 0x3D02, 0xFF44, 0x3D03, 0x2B0B, 0x3D03, 0x5689, 0x3D03, 0x81C2, 0x3D03, 0xACB3, 0x3D03, 0xD760, 0x3D04, 0x01CA, 0x3D04, 0x2BF1, 0x3D04, 0x55D5, 0x3D04, 0x7F76, 0x3D04, 0xA8D9, 0x3D04, 0xD1FA, 0x3D04, 0xFADC, 0x3D05, 0x2380, 0x3D05, 0x4BE7, 0x3D05, 0x7410, 0x3D05, 0x9BFC, 0x3D05, 0xC3AC, 0x3D05, 0xEB24, 0x3D06, 0x1261, 0x3D06, 0x3962, 0x3D06, 0x602C, 0x3D06, 0x86BD, 0x3D06, 0xAD18, 0x3D06, 0xD33B, 0x3D06, 0xF926, 0x3D07, 0x1EDE, 0x3D07, 0x4460, 0x3D07, 0x69AC, 0x3D07, 0x8EC5, 0x3D07, 0xB3AB, 0x3D07, 0xD85E, 0x3D07, 0xFCDF, 0x3D08, 0x212C, 0x3D08, 0x454C, 0x3D08, 0x6938, 0x3D08, 0x8CF4, 0x3D08, 0xB080, 0x3D08, 0xD3DF, 0x3D08, 0xF70D, 0x3D09, 0x1A0D, 0x3D09, 0x3CE0, 0x3D09, 0x5F85, 0x3D09, 0x81FC, 0x3D09, 0xA449, 0x3D09, 0xC66B, 0x3D09, 0xE85E, 0x3D0A, 0x0A27, 0x3D0A, 0x2BC8, 0x3D0A, 0x4D3B, 0x3D0A, 0x6E86, 0x3D0A, 0x8FA9, 0x3D0A, 0xB0A0, 0x3D0A, 0xD170, 0x3D0A, 0xF217, 0x3D0B, 0x1298, 0x3D0B, 0x32EF, 0x3D0B, 0x5320, 0x3D0B, 0x732B, 0x3D0B, 0x930E, 0x3D0B, 0xB2CE, 0x3D0B, 0xD266, 0x3D0B, 0xF1D9, 0x3D0C, 0x1128, 0x3D0C, 0x3052, 0x3D0C, 0x4F56, 0x3D0C, 0x6E38, 0x3D0C, 0x8CF6, 0x3D0C, 0xAB8F, 0x3D0C, 0xCA08, 0x3D0C, 0xE85B, 0x3D0D, 0x068E, 0x3D0D, 0x249E, 0x3D0D, 0x428E, 0x3D0D, 0x605B, 0x3D0D, 0x7E05, 0x3D0D, 0x9B92, 0x3D0D, 0xB8FB, 0x3D0D, 0xD645, 0x3D0D, 0xF370, 0x3D0E, 0x1079, 0x3D0E, 0x2D65, 0x3D0E, 0x4A30, 0x3D0E, 0x66DB, 0x3D0E, 0x8369, 0x3D0E, 0x9FD9, 0x3D0E, 0xBC2B, 0x3D0E, 0xD85D, 0x3D0E, 0xF472, 0x3D0F, 0x106C, 0x3D0F, 0x2C46, 0x3D0F, 0x4804, 0x3D0F, 0x63A6, 0x3D0F, 0x7F29, 0x3D0F, 0x9A92, 0x3D0F, 0xB5DE, 0x3D0F, 0xD10E, 0x3D0F, 0xEC24, 0x3D10, 0x071C, 0x3D10, 0x21F9, 0x3D10, 0x3CBE, 0x3D10, 0x5766, 0x3D10, 0x71F3, 0x3D10, 0x8C68, 0x3D10, 0xA6C1, 0x3D10, 0xC100, 0x3D10, 0xDB27, 0x3D10, 0xF533, 0x3D11, 0x0F24, 0x3D11, 0x2900, 0x3D11, 0x42C0, 0x3D11, 0x5C69, 0x3D11, 0x75F7, 0x3D11, 0x8F6F, 0x3D11, 0xA8CD, 0x3D11, 0xC215, 0x3D11, 0xDB42, 0x3D11, 0xF459, 0x3D12, 0x0D59, 0x3D12, 0x2643, 0x3D12, 0x3F15, 0x3D12, 0x57CE, 0x3D12, 0x7070, 0x3D12, 0x88FF, 0x3D12, 0xA175, 0x3D12, 0xB9D4, 0x3D12, 0xD21D, 0x3D12, 0xEA50, 0x3D13, 0x026E, 0x3D13, 0x1A77, 0x3D13, 0x326A, 0x3D13, 0x4A47, 0x3D13, 0x6210, 0x3D13, 0x79C2, 0x3D13, 0x915F, 0x3D13, 0xA8E7, 0x3D13, 0xC05C, 0x3D13, 0xD7BB, 0x3D13, 0xEF08, 0x3D14, 0x063F, 0x3D14, 0x1D61, 0x3D14, 0x3470, 0x3D14, 0x4B6C, 0x3D14, 0x6253, 0x3D14, 0x7926, 0x3D14, 0x8FE7, 0x3D14, 0xA693, 0x3D14, 0xBD2E, 0x3D14, 0xD3B4, 0x3D14, 0xEA28, 0x3D15, 0x0088, 0x3D15, 0x16D6, 0x3D15, 0x2D13, 0x3D15, 0x433B, 0x3D15, 0x5953, 0x3D15, 0x6F58, 0x3D15, 0x854B, 0x3D15, 0x9B2A, 0x3D15, 0xB0FA, 0x3D15, 0xC6B6, 0x3D15, 0xDC60, 0x3D15, 0xF1FA, 0x3D16, 0x0784, 0x3D16, 0x1CFB, 0x3D16, 0x3261, 0x3D16, 0x47B5, 0x3D16, 0x5CF9, 0x3D16, 0x722D, 0x3D16, 0x874E, 0x3D16, 0x9C5F, 0x3D16, 0xB160, 0x3D16, 0xC650, 0x3D16, 0xDB31, 0x3D16, 0xF001, 0x3D17, 0x04C2, 0x3D17, 0x196F, 0x3D17, 0x2E0F, 0x3D17, 0x429F, 0x3D17, 0x571F, 0x3D17, 0x6B8F, 0x3D17, 0x7FF1, 0x3D17, 0x9441, 0x3D17, 0xA883, 0x3D17, 0xBCB5, 0x3D17, 0xD0DA, 0x3D17, 0xE4EE, 0x3D17, 0xF8F3, 0x3D18, 0x0CE7, 0x3D18, 0x20D1, 0x3D18, 0x34A7, 0x3D18, 0x4871, 0x3D18, 0x5C2D, 0x3D18, 0x6FD9, 0x3D18, 0x8377, 0x3D18, 0x9708, 0x3D18, 0xAA89, 0x3D18, 0xBDFC, 0x3D18, 0xD163, 0x3D18, 0xE4B8, 0x3D18, 0xF801, 0x3D19, 0x0B3C, 0x3D19, 0x1E6A, 0x3D19, 0x318A, 0x3D19, 0x449D, 0x3D19, 0x57A2, 0x3D19, 0x6A98, 0x3D19, 0x7D82, 0x3D19, 0x905F, 0x3D19, 0xA32C, 0x3D19, 0xB5EF, 0x3D19, 0xC8A4, 0x3D19, 0xDB4B, 0x3D19, 0xEDE5, 0x3D1A, 0x0074, 0x3D1A, 0x12F4, 0x3D1A, 0x2568, 0x3D1A, 0x37CF, 0x3D1A, 0x4A2B, 0x3D1A, 0x5C7A, 0x3D1A, 0x6EBC, 0x3D1A, 0x80F0, 0x3D1A, 0x9319, 0x3D1A, 0xA535, 0x3D1A, 0xB746, 0x3D1A, 0xC94A, 0x3D1A, 0xDB43, 0x3D1A, 0xED2E, 0x3D1A, 0xFF0F, 0x3D1B, 0x10E3, 0x3D1B, 0x22AB, 0x3D1B, 0x3467, 0x3D1B, 0x461A, 0x3D1B, 0x57BD, 0x3D1B, 0x6958, 0x3D1B, 0x7AE5, 0x3D1B, 0x8C68, 0x3D1B, 0x9DDE, 0x3D1B, 0xAF4B, 0x3D1B, 0xC0AB, 0x3D1B, 0xD200, 0x3D1B, 0xE348, 0x3D1B, 0xF488, 0x3D1C, 0x05BA, 0x3D1C, 0x16E5, 0x3D1C, 0x2801, 0x3D1C, 0x3914, 0x3D1C, 0x4A1B, 0x3D1C, 0x5B18, 0x3D1C, 0x6C0C, 0x3D1C, 0x7CF3, 0x3D1C, 0x8DD0, 0x3D1C, 0x9EA2, 0x3D1C, 0xAF69, 0x3D1C, 0xC027, 0x3D1C, 0xD0D9, 0x3D1C, 0xE182, 0x3D1C, 0xF21E, 0x3D1D, 0x02B2, 0x3D1D, 0x133C, 0x3D1D, 0x23BD, 0x3D1D, 0x3431, 0x3D1D, 0x449C, 0x3D1D, 0x54FD, 0x3D1D, 0x6553, 0x3D1D, 0x75A2, 0x3D1D, 0x85E2, 0x3D1D, 0x961E, 0x3D1D, 0xA64C, 0x3D1D, 0xB672, 0x3D1D, 0xC68D, 0x3D1D, 0xD6A0, 0x3D1D, 0xE6A8, 0x3D1D, 0xF6A6, 0x3D1E, 0x069B, 0x3D1E, 0x1689, 0x3D1E, 0x266C, 0x3D1E, 0x3644, 0x3D1E, 0x4614, 0x3D1E, 0x55D9, 0x3D1E, 0x6596, 0x3D1E, 0x754C, 0x3D1E, 0x84F6, 0x3D1E, 0x9498, 0x3D1E, 0xA430, 0x3D1E, 0xB3C0, 0x3D1E, 0xC344, 0x3D1E, 0xD2C4, 0x3D1E, 0xE236, 0x3D1E, 0xF1A3, 0x3D1F, 0x0105, 0x3D1F, 0x105E, 0x3D1F, 0x1FB0, 0x3D1F, 0x2EF7, 0x3D1F, 0x3E39, 0x3D1F, 0x4D6D, 0x3D1F, 0x5C9C, 0x3D1F, 0x6BC3, 0x3D1F, 0x7ADF, 0x3D1F, 0x89F4, 0x3D1F, 0x9900, 0x3D1F, 0xA804, 0x3D1F, 0xB700, 0x3D1F, 0xC5F3, 0x3D1F, 0xD4DD, 0x3D1F, 0xE3C0, 0x3D1F, 0xF299, 0x3D20, 0x016A, 0x3D20, 0x1033, 0x3D20, 0x1EF7, 0x3D20, 0x2DB0, 0x3D20, 0x3C61, 0x3D20, 0x4B09, 0x3D20, 0x59AA, 0x3D20, 0x6845, 0x3D20, 0x76D6, 0x3D20, 0x855E, 0x3D20, 0x93E1, 0x3D20, 0xA25A, 0x3D20, 0xB0CD, 0x3D20, 0xBF35, 0x3D20, 0xCD98, 0x3D20, 0xDBF3, 0x3D20, 0xEA46, 0x3D20, 0xF891, 0x3D21, 0x06D3, 0x3D21, 0x1511, 0x3D21, 0x2346, 0x3D21, 0x3173, 0x3D21, 0x3F98, 0x3D21, 0x4DB6, 0x3D21, 0x5BCD, 0x3D21, 0x69DA, 0x3D21, 0x77E5, 0x3D21, 0x85E4, 0x3D21, 0x93DF, 0x3D21, 0xA1CE, 0x3D21, 0xAFBB, 0x3D21, 0xBD9D, 0x3D21, 0xCB7A, 0x3D21, 0xD94E, 0x3D21, 0xE71E, 0x3D21, 0xF4E5, 0x3D22, 0x02A4, 0x3D22, 0x105B, 0x3D22, 0x1E0D, 0x3D22, 0x2BB9, 0x3D22, 0x395E, 0x3D22, 0x46FA, 0x3D22, 0x548E, 0x3D22, 0x6220, 0x3D22, 0x6FA7, 0x3D22, 0x7D28, 0x3D22, 0x8AA2, 0x3D22, 0x9816, 0x3D22, 0xA584, 0x3D22, 0xB2EB, 0x3D22, 0xC049, 0x3D22, 0xCDA3, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3BB1, 0xED50, 0x3C0D, 0x3A42, 0x3C32, 0x68FE, 0x3C4F, 0x4F08, 0x3C66, 0xF537, 0x3C7A, 0xFABD, 0x3C86, 0x2BCE, 0x3C8D, 0xD617, 0x3C94, 0xB2EA, 0x3C9A, 0xE96B, 0x3CA0, 0x9678, 0x3CA5, 0xD003, 0x3CAA, 0xA723, 0x3CAF, 0x295E, 0x3CB3, 0x61A7, 0x3CB7, 0x58E7, 0x3CBB, 0x1692, 0x3CBE, 0xA0D5, 0x3CC1, 0xFCF0, 0x3CC5, 0x2F6A, 0x3CC8, 0x3C14, 0x3CCB, 0x264F, 0x3CCD, 0xF104, 0x3CD0, 0x9EC4, 0x3CD3, 0x31D6, 0x3CD5, 0xAC34, 0x3CD8, 0x0FAC, 0x3CDA, 0x5DDA, 0x3CDC, 0x982C, 0x3CDE, 0xBFF4, 0x3CE0, 0xD654, 0x3CE2, 0xDC63, 0x3CE4, 0xD319, 0x3CE6, 0xBB5B, 0x3CE8, 0x95F6, 0x3CEA, 0x63A6, 0x3CEC, 0x2522, 0x3CED, 0xDB0A, 0x3CEF, 0x85EF, 0x3CF1, 0x265E, 0x3CF2, 0xBCD6, 0x3CF4, 0x49D4, 0x3CF5, 0xCDBD, 0x3CF7, 0x4907, 0x3CF8, 0xBC09, 0x3CFA, 0x271E, 0x3CFB, 0x8AA0, 0x3CFC, 0xE6D6, 0x3CFE, 0x3C16, 0x3CFF, 0x8A9F, 0x3D00, 0x695C, 0x3D01, 0x0A4F, 0x3D01, 0xA846, 0x3D02, 0x435C, 0x3D02, 0xDBAA, 0x3D03, 0x714F, 0x3D04, 0x045C, 0x3D04, 0x94ED, 0x3D05, 0x2312, 0x3D05, 0xAEE4, 0x3D06, 0x3874, 0x3D06, 0xBFD5, 0x3D07, 0x4519, 0x3D07, 0xC84E, 0x3D08, 0x4988, 0x3D08, 0xC8D4, 0x3D09, 0x4642, 0x3D09, 0xC1DE, 0x3D0A, 0x3BB6, 0x3D0A, 0xB3D6, 0x3D0B, 0x2A4E, 0x3D0B, 0x9F23, 0x3D0C, 0x1268, 0x3D0C, 0x8422, 0x3D0C, 0xF45D, 0x3D0D, 0x6322, 0x3D0D, 0xD080, 0x3D0E, 0x3C79, 0x3D0E, 0xA71A, 0x3D0F, 0x106C, 0x3D0F, 0x7873, 0x3D0F, 0xDF3B, 0x3D10, 0x44C9, 0x3D10, 0xA928, 0x3D11, 0x0C5D, 0x3D11, 0x6E6D, 0x3D11, 0xCF60, 0x3D12, 0x2F3F, 0x3D12, 0x8E0D, 0x3D12, 0xEBD0, 0x3D13, 0x488F, 0x3D13, 0xA44F, 0x3D13, 0xFF16, 0x3D14, 0x58E8, 0x3D14, 0xB1CE, 0x3D15, 0x09C8, 0x3D15, 0x60DD, 0x3D15, 0xB711, 0x3D16, 0x0C69, 0x3D16, 0x60EA, 0x3D16, 0xB498, 0x3D17, 0x0773, 0x3D17, 0x5986, 0x3D17, 0xAAD2, 0x3D17, 0xFB59, 0x3D18, 0x4B20, 0x3D18, 0x9A2B, 0x3D18, 0xE87C, 0x3D19, 0x3617, 0x3D19, 0x8301, 0x3D19, 0xCF3C, 0x3D1A, 0x1AC9, 0x3D1A, 0x65AF, 0x3D1A, 0xAFEF, 0x3D1A, 0xF989, 0x3D1B, 0x4284, 0x3D1B, 0x8AE3, 0x3D1B, 0xD2A4, 0x3D1C, 0x19CF, 0x3D1C, 0x6061, 0x3D1C, 0xA661, 0x3D1C, 0xEBD1, 0x3D1D, 0x30B0, 0x3D1D, 0x7506, 0x3D1D, 0xB8CE, 0x3D1D, 0xFC0F, 0x3D1E, 0x3ECA, 0x3D1E, 0x8102, 0x3D1E, 0xC2B9, 0x3D1F, 0x03EC, 0x3D1F, 0x44A4, 0x3D1F, 0x84E0, 0x3D1F, 0xC4A1, 0x3D20, 0x03EC, 0x3D20, 0x42BE, 0x3D20, 0x811A, 0x3D20, 0xBF05, 0x3D20, 0xFC7D, 0x3D21, 0x3986, 0x3D21, 0x761F, 0x3D21, 0xB24D, 0x3D21, 0xEE11, 0x3D22, 0x2968, 0x3D22, 0x6459, 0x3D22, 0x9EE1, 0x3D22, 0xD906, 0x3D23, 0x12C4, 0x3D23, 0x4C23, 0x3D23, 0x851D, 0x3D23, 0xBDBA, 0x3D23, 0xF5F6, 0x3D24, 0x2DD5, 0x3D24, 0x6558, 0x3D24, 0x9C7D, 0x3D24, 0xD34C, 0x3D25, 0x09C0, 0x3D25, 0x3FDB, 0x3D25, 0x75A0, 0x3D25, 0xAB10, 0x3D25, 0xE02C, 0x3D26, 0x14F2, 0x3D26, 0x4968, 0x3D26, 0x7D8B, 0x3D26, 0xB160, 0x3D26, 0xE4E4, 0x3D27, 0x1817, 0x3D27, 0x4B00, 0x3D27, 0x7D9B, 0x3D27, 0xAFE8, 0x3D27, 0xE1EC, 0x3D28, 0x13A5, 0x3D28, 0x4516, 0x3D28, 0x763E, 0x3D28, 0xA721, 0x3D28, 0xD7BB, 0x3D29, 0x080F, 0x3D29, 0x381D, 0x3D29, 0x67E6, 0x3D29, 0x976E, 0x3D29, 0xC6B3, 0x3D29, 0xF5B2, 0x3D2A, 0x2474, 0x3D2A, 0x52F2, 0x3D2A, 0x8133, 0x3D2A, 0xAF33, 0x3D2A, 0xDCF6, 0x3D2B, 0x0A78, 0x3D2B, 0x37BF, 0x3D2B, 0x64C8, 0x3D2B, 0x9196, 0x3D2B, 0xBE2A, 0x3D2B, 0xEA7F, 0x3D2C, 0x169C, 0x3D2C, 0x4281, 0x3D2C, 0x6E2B, 0x3D2C, 0x999C, 0x3D2C, 0xC4D7, 0x3D2C, 0xEFDB, 0x3D2D, 0x1AA5, 0x3D2D, 0x453D, 0x3D2D, 0x6F9D, 0x3D2D, 0x99C7, 0x3D2D, 0xC3BD, 0x3D2D, 0xED81, 0x3D2E, 0x170F, 0x3D2E, 0x406A, 0x3D2E, 0x6992, 0x3D2E, 0x928A, 0x3D2E, 0xBB4F, 0x3D2E, 0xE3E3, 0x3D2F, 0x0C48, 0x3D2F, 0x3479, 0x3D2F, 0x5C7C, 0x3D2F, 0x844F, 0x3D2F, 0xABF5, 0x3D2F, 0xD36A, 0x3D2F, 0xFAB4, 0x3D30, 0x21CE, 0x3D30, 0x48BB, 0x3D30, 0x6F7C, 0x3D30, 0x9610, 0x3D30, 0xBC79, 0x3D30, 0xE2B4, 0x3D31, 0x08C4, 0x3D31, 0x2EAC, 0x3D31, 0x5466, 0x3D31, 0x79F8, 0x3D31, 0x9F5F, 0x3D31, 0xC49E, 0x3D31, 0xE9B2, 0x3D32, 0x0EA0, 0x3D32, 0x3364, 0x3D32, 0x5801, 0x3D32, 0x7C74, 0x3D32, 0xA0C2, 0x3D32, 0xC4E9, 0x3D32, 0xE8E9, 0x3D33, 0x0CC2, 0x3D33, 0x3074, 0x3D33, 0x5403, 0x3D33, 0x776C, 0x3D33, 0x9AAF, 0x3D33, 0xBDCD, 0x3D33, 0xE0C5, 0x3D34, 0x039B, 0x3D34, 0x264D, 0x3D34, 0x48DD, 0x3D34, 0x6B47, 0x3D34, 0x8D8E, 0x3D34, 0xAFB2, 0x3D34, 0xD1B6, 0x3D34, 0xF398, 0x3D35, 0x1556, 0x3D35, 0x36F1, 0x3D35, 0x586C, 0x3D35, 0x79C7, 0x3D35, 0x9AFF, 0x3D35, 0xBC1A, 0x3D35, 0xDD11, 0x3D35, 0xFDE9, 0x3D36, 0x1EA3, 0x3D36, 0x3F3A, 0x3D36, 0x5FB3, 0x3D36, 0x800C, 0x3D36, 0xA048, 0x3D36, 0xC064, 0x3D36, 0xE061, 0x3D37, 0x0042, 0x3D37, 0x2002, 0x3D37, 0x3FA8, 0x3D37, 0x5F2D, 0x3D37, 0x7E94, 0x3D37, 0x9DE1, 0x3D37, 0xBD0E, 0x3D37, 0xDC1F, 0x3D37, 0xFB16, 0x3D38, 0x19F0, 0x3D38, 0x38AC, 0x3D38, 0x574D, 0x3D38, 0x75D3, 0x3D38, 0x943B, 0x3D38, 0xB289, 0x3D38, 0xD0BC, 0x3D38, 0xEED4, 0x3D39, 0x0CD1, 0x3D39, 0x2AB4, 0x3D39, 0x487B, 0x3D39, 0x662B, 0x3D39, 0x83BF, 0x3D39, 0xA139, 0x3D39, 0xBE9B, 0x3D39, 0xDBE1, 0x3D39, 0xF90D, 0x3D3A, 0x1624, 0x3D3A, 0x331F, 0x3D3A, 0x5000, 0x3D3A, 0x6CCB, 0x3D3A, 0x897C, 0x3D3A, 0xA616, 0x3D3A, 0xC297, 0x3D3A, 0xDEFE, 0x3D3A, 0xFB51, 0x3D3B, 0x178B, 0x3D3B, 0x33AB, 0x3D3B, 0x4FB7, 0x3D3B, 0x6BA9, 0x3D3B, 0x8785, 0x3D3B, 0xA34C, 0x3D3B, 0xBEF8, 0x3D3B, 0xDA92, 0x3D3B, 0xF613, 0x3D3C, 0x117E, 0x3D3C, 0x2CD2, 0x3D3C, 0x4810, 0x3D3C, 0x633B, 0x3D3C, 0x7E4E, 0x3D3C, 0x9949, 0x3D3C, 0xB431, 0x3D3C, 0xCF03, 0x3D3C, 0xE9C0, 0x3D3D, 0x0468, 0x3D3D, 0x1EFD, 0x3D3D, 0x3979, 0x3D3D, 0x53E3, 0x3D3D, 0x6E38, 0x3D3D, 0x8879, 0x3D3D, 0xA2A3, 0x3D3D, 0xBCBC, 0x3D3D, 0xD6C0, 0x3D3D, 0xF0AE, 0x3D3E, 0x0A8A, 0x3D3E, 0x2453, 0x3D3E, 0x3E06, 0x3D3E, 0x57A7, 0x3D3E, 0x7135, 0x3D3E, 0x8AB0, 0x3D3E, 0xA415, 0x3D3E, 0xBD6B, 0x3D3E, 0xD6AA, 0x3D3E, 0xEFDA, 0x3D3F, 0x08F5, 0x3D3F, 0x21FC, 0x3D3F, 0x3AF4, 0x3D3F, 0x53D8, 0x3D3F, 0x6CA7, 0x3D3F, 0x8569, 0x3D3F, 0x9E15, 0x3D3F, 0xB6B2, 0x3D3F, 0xCF38, 0x3D3F, 0xE7B2, 0x3D40, 0x0018, 0x3D40, 0x186C, 0x3D40, 0x30AF, 0x3D40, 0x48E0, 0x3D40, 0x6101, 0x3D40, 0x790F, 0x3D40, 0x910D, 0x3D40, 0xA8FA, 0x3D40, 0xC0D5, 0x3D40, 0xD8A0, 0x3D40, 0xF05B, 0x3D41, 0x0805, 0x3D41, 0x1F9D, 0x3D41, 0x3728, 0x3D41, 0x4E9F, 0x3D41, 0x6609, 0x3D41, 0x7D61, 0x3D41, 0x94A8, 0x3D41, 0xABDF, 0x3D41, 0xC309, 0x3D41, 0xDA20, 0x3D41, 0xF129, 0x3D42, 0x0823, 0x3D42, 0x1F09, 0x3D42, 0x35E5, 0x3D42, 0x4CAE, 0x3D42, 0x636A, 0x3D42, 0x7A16, 0x3D42, 0x90B1, 0x3D42, 0xA73F, 0x3D42, 0xBDBD, 0x3D42, 0xD42E, 0x3D42, 0xEA8E, 0x3D43, 0x00E1, 0x3D43, 0x1724, 0x3D43, 0x2D57, 0x3D43, 0x437C, 0x3D43, 0x5994, 0x3D43, 0x6F9E, 0x3D43, 0x8599, 0x3D43, 0x9B86, 0x3D43, 0xB163, 0x3D43, 0xC732, 0x3D43, 0xDCF4, 0x3D43, 0xF2A9, 0x3D44, 0x0850, 0x3D44, 0x1DE7, 0x3D44, 0x3373, 0x3D44, 0x48F0, 0x3D44, 0x5E5F, 0x3D44, 0x73C0, 0x3D44, 0x8917, 0x3D44, 0x9E5D, 0x3D44, 0xB396, 0x3D44, 0xC8C2, 0x3D44, 0xDDE0, 0x3D44, 0xF2F4, 0x3D45, 0x07F7, 0x3D45, 0x1CF0, 0x3D45, 0x31D9, 0x3D45, 0x46B6, 0x3D45, 0x5B8A, 0x3D45, 0x704D, 0x3D45, 0x8505, 0x3D45, 0x99B0, 0x3D45, 0xAE4D, 0x3D45, 0xC2DD, 0x3D45, 0xD762, 0x3D45, 0xEBDD, 0x3D46, 0x0047, 0x3D46, 0x14A7, 0x3D46, 0x28FC, 0x3D46, 0x3D44, 0x3D46, 0x5180, 0x3D46, 0x65B0, 0x3D46, 0x79D2, 0x3D46, 0x8DE9, 0x3D46, 0xA1F6, 0x3D46, 0xB5F5, 0x3D46, 0xC9E9, 0x3D46, 0xDDD0, 0x3D46, 0xF1AC, 0x3D47, 0x057D, 0x3D47, 0x1941, 0x3D47, 0x2CFD, 0x3D47, 0x40A9, 0x3D47, 0x544D, 0x3D47, 0x67E3, 0x3D47, 0x7B6F, 0x3D47, 0x8EF0, 0x3D47, 0xA266, 0x3D47, 0xB5D2, 0x3D47, 0xC930, 0x3D47, 0xDC85, 0x3D47, 0xEFCE, 0x3D48, 0x030C, 0x3D48, 0x163F, 0x3D48, 0x2967, 0x3D48, 0x3C85, 0x3D48, 0x4F98, 0x3D48, 0x62A0, 0x3D48, 0x759D, 0x3D48, 0x8890, 0x3D48, 0x9B78, 0x3D48, 0xAE55, 0x3D48, 0xC12A, 0x3D48, 0xD3F2, 0x3D48, 0xE6AE, 0x3D48, 0xF963, 0x3D49, 0x0C0D, 0x3D49, 0x1EAD, 0x3D49, 0x3142, 0x3D49, 0x43CC, 0x3D49, 0x564D, 0x3D49, 0x68C5, 0x3D49, 0x7B31, 0x3D49, 0x8D93, 0x3D49, 0x9FEC, 0x3D49, 0xB23B, 0x3D49, 0xC47F, 0x3D49, 0xD6B9, 0x3D49, 0xE8EA, 0x3D49, 0xFB13, 0x3D4A, 0x0D2F, 0x3D4A, 0x1F43, 0x3D4A, 0x314F, 0x3D4A, 0x4350, 0x3D4A, 0x5546, 0x3D4A, 0x6734, 0x3D4A, 0x7918, 0x3D4A, 0x8AF3, 0x3D4A, 0x9CC4, 0x3D4A, 0xAE8D, 0x3D4A, 0xC04B, 0x3D4A, 0xD201, 0x3D4A, 0xE3AE, 0x3D4A, 0xF54F, 0x3D4B, 0x06EA, 0x3D4B, 0x187A, 0x3D4B, 0x2A02, 0x3D4B, 0x3B80, 0x3D4B, 0x4CF5, 0x3D4B, 0x5E63, 0x3D4B, 0x6FC5, 0x3D4B, 0x8120, 0x3D4B, 0x9273, 0x3D4B, 0xA3BA, 0x3D4B, 0xB4FD, 0x3D4B, 0xC632, 0x3D4B, 0xD761, 0x3D4B, 0xE886, 0x3D4B, 0xF9A6, 0x3D4C, 0x0AB8, 0x3D4C, 0x1BC5, 0x3D4C, 0x2CCA, 0x3D4C, 0x3DC4, 0x3D4C, 0x4EB5, 0x3D4C, 0x5F9F, 0x3D4C, 0x7081, 0x3D4C, 0x815B, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3BED, 0x734F, 0x3C3C, 0x92CE, 0x3C6E, 0x4F89, 0x3C8A, 0x7F15, 0x3C9A, 0x5526, 0x3CA7, 0xBED1, 0x3CB3, 0x61A7, 0x3CBD, 0xA89D, 0x3CC6, 0xDCD4, 0x3CCF, 0x3283, 0x3CD6, 0xD046, 0x3CDD, 0xD36A, 0x3CE4, 0x52D0, 0x3CEA, 0x608C, 0x3CF0, 0x0B40, 0x3CF5, 0x5ED7, 0x3CFA, 0x6547, 0x3CFF, 0x26D7, 0x3D01, 0xD548, 0x3D03, 0xFB3D, 0x3D06, 0x07DA, 0x3D07, 0xFD65, 0x3D09, 0xDDCD, 0x3D0B, 0xAAC9, 0x3D0D, 0x65E2, 0x3D0F, 0x106C, 0x3D10, 0xAB99, 0x3D12, 0x3882, 0x3D13, 0xB816, 0x3D15, 0x2B38, 0x3D16, 0x92AE, 0x3D17, 0xEF35, 0x3D19, 0x416D, 0x3D1A, 0x89F2, 0x3D1B, 0xC94C, 0x3D1D, 0x0001, 0x3D1E, 0x2E7F, 0x3D1F, 0x5538, 0x3D20, 0x748D, 0x3D21, 0x8CDB, 0x3D22, 0x9E7B, 0x3D23, 0xA9BB, 0x3D24, 0xAEE9, 0x3D25, 0xAE45, 0x3D26, 0xA813, 0x3D27, 0x9C92, 0x3D28, 0x8BF5, 0x3D29, 0x7679, 0x3D2A, 0x5C4A, 0x3D2B, 0x3D9B, 0x3D2C, 0x1A98, 0x3D2C, 0xF36B, 0x3D2D, 0xC83A, 0x3D2E, 0x992D, 0x3D2F, 0x6665, 0x3D30, 0x3004, 0x3D30, 0xF62A, 0x3D31, 0xB8F8, 0x3D32, 0x7888, 0x3D33, 0x34F6, 0x3D33, 0xEE5A, 0x3D34, 0xA4D0, 0x3D35, 0x586C, 0x3D36, 0x0949, 0x3D36, 0xB77A, 0x3D37, 0x6311, 0x3D38, 0x0C26, 0x3D38, 0xB2C7, 0x3D39, 0x570C, 0x3D39, 0xF900, 0x3D3A, 0x98B8, 0x3D3B, 0x363F, 0x3D3B, 0xD1AB, 0x3D3C, 0x6B03, 0x3D3D, 0x025A, 0x3D3D, 0x97BB, 0x3D3E, 0x2B34, 0x3D3E, 0xBCD2, 0x3D3F, 0x4C9F, 0x3D3F, 0xDAA6, 0x3D40, 0x66F6, 0x3D40, 0xF195, 0x3D41, 0x7A91, 0x3D42, 0x01F3, 0x3D42, 0x87C2, 0x3D43, 0x0C09, 0x3D43, 0x8ED3, 0x3D44, 0x1025, 0x3D44, 0x9008, 0x3D45, 0x0E88, 0x3D45, 0x8BA8, 0x3D46, 0x0771, 0x3D46, 0x81EA, 0x3D46, 0xFB1C, 0x3D47, 0x730C, 0x3D47, 0xE9C1, 0x3D48, 0x5F42, 0x3D48, 0xD394, 0x3D49, 0x46BE, 0x3D49, 0xB8C6, 0x3D4A, 0x29B2, 0x3D4A, 0x9984, 0x3D4B, 0x0847, 0x3D4B, 0x75FD, 0x3D4B, 0xE2AD, 0x3D4C, 0x4E57, 0x3D4C, 0xB906, 0x3D4D, 0x22BB, 0x3D4D, 0x8B7C, 0x3D4D, 0xF34B, 0x3D4E, 0x5A30, 0x3D4E, 0xC02D, 0x3D4F, 0x2544, 0x3D4F, 0x8980, 0x3D4F, 0xECDD, 0x3D50, 0x4F61, 0x3D50, 0xB113, 0x3D51, 0x11F3, 0x3D51, 0x7206, 0x3D51, 0xD14E, 0x3D52, 0x2FD0, 0x3D52, 0x8D8E, 0x3D52, 0xEA8E, 0x3D53, 0x46CF, 0x3D53, 0xA257, 0x3D53, 0xFD25, 0x3D54, 0x5740, 0x3D54, 0xB0A9, 0x3D55, 0x0964, 0x3D55, 0x6174, 0x3D55, 0xB8D7, 0x3D56, 0x0F94, 0x3D56, 0x65AD, 0x3D56, 0xBB25, 0x3D57, 0x0FFA, 0x3D57, 0x6435, 0x3D57, 0xB7D2, 0x3D58, 0x0AD9, 0x3D58, 0x5D47, 0x3D58, 0xAF21, 0x3D59, 0x0067, 0x3D59, 0x511F, 0x3D59, 0xA147, 0x3D59, 0xF0E2, 0x3D5A, 0x3FF5, 0x3D5A, 0x8E7C, 0x3D5A, 0xDC80, 0x3D5B, 0x29FA, 0x3D5B, 0x76F4, 0x3D5B, 0xC36D, 0x3D5C, 0x0F63, 0x3D5C, 0x5ADD, 0x3D5C, 0xA5DB, 0x3D5C, 0xF05B, 0x3D5D, 0x3A66, 0x3D5D, 0x83F7, 0x3D5D, 0xCD10, 0x3D5E, 0x15B5, 0x3D5E, 0x5DE9, 0x3D5E, 0xA5A8, 0x3D5E, 0xECF8, 0x3D5F, 0x33DA, 0x3D5F, 0x7A4C, 0x3D5F, 0xC052, 0x3D60, 0x05ED, 0x3D60, 0x4B1F, 0x3D60, 0x8FE5, 0x3D60, 0xD449, 0x3D61, 0x1843, 0x3D61, 0x5BD8, 0x3D61, 0x9F09, 0x3D61, 0xE1DA, 0x3D62, 0x2448, 0x3D62, 0x6654, 0x3D62, 0xA803, 0x3D62, 0xE951, 0x3D63, 0x2A44, 0x3D63, 0x6ADC, 0x3D63, 0xAB15, 0x3D63, 0xEAF7, 0x3D64, 0x2A7F, 0x3D64, 0x69AF, 0x3D64, 0xA886, 0x3D64, 0xE70A, 0x3D65, 0x2536, 0x3D65, 0x630E, 0x3D65, 0xA093, 0x3D65, 0xDDC5, 0x3D66, 0x1AA7, 0x3D66, 0x5735, 0x3D66, 0x9375, 0x3D66, 0xCF65, 0x3D67, 0x0B04, 0x3D67, 0x4658, 0x3D67, 0x8161, 0x3D67, 0xBC19, 0x3D67, 0xF689, 0x3D68, 0x30AE, 0x3D68, 0x6A8A, 0x3D68, 0xA41B, 0x3D68, 0xDD64, 0x3D69, 0x1667, 0x3D69, 0x4F21, 0x3D69, 0x8796, 0x3D69, 0xBFC5, 0x3D69, 0xF7B0, 0x3D6A, 0x2F56, 0x3D6A, 0x66B9, 0x3D6A, 0x9DD6, 0x3D6A, 0xD4B2, 0x3D6B, 0x0B4F, 0x3D6B, 0x41AA, 0x3D6B, 0x77C3, 0x3D6B, 0xAD9B, 0x3D6B, 0xE335, 0x3D6C, 0x1892, 0x3D6C, 0x4DAE, 0x3D6C, 0x8290, 0x3D6C, 0xB733, 0x3D6C, 0xEB99, 0x3D6D, 0x1FC3, 0x3D6D, 0x53B3, 0x3D6D, 0x8768, 0x3D6D, 0xBAE1, 0x3D6D, 0xEE20, 0x3D6E, 0x2128, 0x3D6E, 0x53F6, 0x3D6E, 0x868B, 0x3D6E, 0xB8E8, 0x3D6E, 0xEB10, 0x3D6F, 0x1CFE, 0x3D6F, 0x4EB8, 0x3D6F, 0x803B, 0x3D6F, 0xB189, 0x3D6F, 0xE2A1, 0x3D70, 0x1384, 0x3D70, 0x4436, 0x3D70, 0x74AF, 0x3D70, 0xA4F9, 0x3D70, 0xD50F, 0x3D71, 0x04F3, 0x3D71, 0x34A3, 0x3D71, 0x6423, 0x3D71, 0x9373, 0x3D71, 0xC290, 0x3D71, 0xF17F, 0x3D72, 0x203B, 0x3D72, 0x4ECA, 0x3D72, 0x7D28, 0x3D72, 0xAB59, 0x3D72, 0xD959, 0x3D73, 0x072C, 0x3D73, 0x34D1, 0x3D73, 0x6248, 0x3D73, 0x8F92, 0x3D73, 0xBCB0, 0x3D73, 0xE9A2, 0x3D74, 0x1668, 0x3D74, 0x4300, 0x3D74, 0x6F71, 0x3D74, 0x9BB3, 0x3D74, 0xC7CB, 0x3D74, 0xF3BA, 0x3D75, 0x1F7F, 0x3D75, 0x4B19, 0x3D75, 0x768A, 0x3D75, 0xA1D0, 0x3D75, 0xCCF1, 0x3D75, 0xF7E7, 0x3D76, 0x22B4, 0x3D76, 0x4D59, 0x3D76, 0x77D9, 0x3D76, 0xA231, 0x3D76, 0xCC60, 0x3D76, 0xF669, 0x3D77, 0x204D, 0x3D77, 0x4A09, 0x3D77, 0x739F, 0x3D77, 0x9D10, 0x3D77, 0xC65B, 0x3D77, 0xEF83, 0x3D78, 0x1883, 0x3D78, 0x4160, 0x3D78, 0x6A1A, 0x3D78, 0x92AE, 0x3D78, 0xBB1D, 0x3D78, 0xE369, 0x3D79, 0x0B95, 0x3D79, 0x339B, 0x3D79, 0x5B7E, 0x3D79, 0x833F, 0x3D79, 0xAADC, 0x3D79, 0xD257, 0x3D79, 0xF9B1, 0x3D7A, 0x20EB, 0x3D7A, 0x4800, 0x3D7A, 0x6EF7, 0x3D7A, 0x95CB, 0x3D7A, 0xBC7F, 0x3D7A, 0xE313, 0x3D7B, 0x0984, 0x3D7B, 0x2FD7, 0x3D7B, 0x560A, 0x3D7B, 0x7C1A, 0x3D7B, 0xA210, 0x3D7B, 0xC7E2, 0x3D7B, 0xED97, 0x3D7C, 0x132C, 0x3D7C, 0x38A3, 0x3D7C, 0x5DFA, 0x3D7C, 0x8333, 0x3D7C, 0xA84F, 0x3D7C, 0xCD4E, 0x3D7C, 0xF22F, 0x3D7D, 0x16EF, 0x3D7D, 0x3B95, 0x3D7D, 0x601D, 0x3D7D, 0x8488, 0x3D7D, 0xA8D5, 0x3D7D, 0xCD05, 0x3D7D, 0xF11A, 0x3D7E, 0x1511, 0x3D7E, 0x38EE, 0x3D7E, 0x5CAD, 0x3D7E, 0x8051, 0x3D7E, 0xA3DA, 0x3D7E, 0xC748, 0x3D7E, 0xEA99, 0x3D7F, 0x0DCF, 0x3D7F, 0x30EB, 0x3D7F, 0x53EB, 0x3D7F, 0x76D1, 0x3D7F, 0x999E, 0x3D7F, 0xBC4E, 0x3D7F, 0xDEE5, 0x3D80, 0x00B1, 0x3D80, 0x11E2, 0x3D80, 0x2307, 0x3D80, 0x341F, 0x3D80, 0x452A, 0x3D80, 0x5629, 0x3D80, 0x671B, 0x3D80, 0x7800, 0x3D80, 0x88DA, 0x3D80, 0x99A6, 0x3D80, 0xAA66, 0x3D80, 0xBB1A, 0x3D80, 0xCBC2, 0x3D80, 0xDC5E, 0x3D80, 0xECEE, 0x3D80, 0xFD72, 0x3D81, 0x0DEA, 0x3D81, 0x1E57, 0x3D81, 0x2EB7, 0x3D81, 0x3F0C, 0x3D81, 0x4F56, 0x3D81, 0x5F92, 0x3D81, 0x6FC6, 0x3D81, 0x7FEC, 0x3D81, 0x9008, 0x3D81, 0xA019, 0x3D81, 0xB01D, 0x3D81, 0xC017, 0x3D81, 0xD005, 0x3D81, 0xDFEA, 0x3D81, 0xEFC2, 0x3D81, 0xFF90, 0x3D82, 0x0F53, 0x3D82, 0x1F0B, 0x3D82, 0x2EB8, 0x3D82, 0x3E5A, 0x3D82, 0x4DF3, 0x3D82, 0x5D80, 0x3D82, 0x6D04, 0x3D82, 0x7C7C, 0x3D82, 0x8BEA, 0x3D82, 0x9B4E, 0x3D82, 0xAAA8, 0x3D82, 0xB9F7, 0x3D82, 0xC93B, 0x3D82, 0xD876, 0x3D82, 0xE7A6, 0x3D82, 0xF6CD, 0x3D83, 0x05E9, 0x3D83, 0x14FC, 0x3D83, 0x2406, 0x3D83, 0x3306, 0x3D83, 0x41FB, 0x3D83, 0x50E5, 0x3D83, 0x5FC8, 0x3D83, 0x6E9F, 0x3D83, 0x7D6F, 0x3D83, 0x8C34, 0x3D83, 0x9AF0, 0x3D83, 0xA9A2, 0x3D83, 0xB84A, 0x3D83, 0xC6EA, 0x3D83, 0xD580, 0x3D83, 0xE40E, 0x3D83, 0xF291, 0x3D84, 0x010C, 0x3D84, 0x0F7D, 0x3D84, 0x1DE6, 0x3D84, 0x2C45, 0x3D84, 0x3A9C, 0x3D84, 0x48E9, 0x3D84, 0x572D, 0x3D84, 0x6569, 0x3D84, 0x739C, 0x3D84, 0x81C6, 0x3D84, 0x8FE7, 0x3D84, 0x9E01, 0x3D84, 0xAC10, 0x3D84, 0xBA18, 0x3D84, 0xC818, 0x3D84, 0xD60E, 0x3D84, 0xE3FC, 0x3D84, 0xF1E1, 0x3D84, 0xFFBF, 0x3D85, 0x0D93, 0x3D85, 0x1B60, 0x3D85, 0x2923, 0x3D85, 0x36E0, 0x3D85, 0x4494, 0x3D85, 0x523F, 0x3D85, 0x5FE2, 0x3D85, 0x6D7F, 0x3D85, 0x7B11, 0x3D85, 0x889E, 0x3D85, 0x9620, 0x3D85, 0xA39C, 0x3D85, 0xB10F, 0x3D85, 0xBE7B, 0x3D85, 0xCBDF, 0x3D85, 0xD93B, 0x3D85, 0xE690, 0x3D85, 0xF3DC, 0x3D86, 0x0121, 0x3D86, 0x0E5E, 0x3D86, 0x1B94, 0x3D86, 0x28C2, 0x3D86, 0x35E9, 0x3D86, 0x4308, 0x3D86, 0x501F, 0x3D86, 0x5D30, 0x3D86, 0x6A39, 0x3D86, 0x7739, 0x3D86, 0x8433, 0x3D86, 0x9127, 0x3D86, 0x9E12, 0x3D86, 0xAAF6, 0x3D86, 0xB7D2, 0x3D86, 0xC4A8, 0x3D86, 0xD177, 0x3D86, 0xDE3F, 0x3D86, 0xEAFF, 0x3D86, 0xF7B9, 0x3D87, 0x046A, 0x3D87, 0x1116, 0x3D87, 0x1DBA, 0x3D87, 0x2A58, 0x3D87, 0x36EE, 0x3D87, 0x437E, 0x3D87, 0x5006, 0x3D87, 0x5C88, 0x3D87, 0x6904, 0x3D87, 0x7578, 0x3D87, 0x81E6, 0x3D87, 0x8E4C, 0x3D87, 0x9AAD, 0x3D87, 0xA706, 0x3D87, 0xB359, 0x3D87, 0xBFA6, 0x3D87, 0xCBEB, 0x3D87, 0xD82A, 0x3D87, 0xE463, 0x3D87, 0xF096, 0x3D87, 0xFCC1, 0x3D88, 0x08E7, 0x3D88, 0x1506, 0x3D88, 0x211F, 0x3D88, 0x2D30, 0x3D88, 0x393D, 0x3D88, 0x4542, 0x3D88, 0x5141, 0x3D88, 0x5D3B, 0x3D88, 0x692D, 0x3D88, 0x751B, 0x3D88, 0x8100, 0x3D88, 0x8CE2, 0x3D88, 0x98BB, 0x3D88, 0xA490, 0x3D88, 0xB05E, 0x3D88, 0xBC25, 0x3D88, 0xC7E8, 0x3D88, 0xD3A4, 0x3D88, 0xDF5A, 0x3D88, 0xEB0A, 0x3D88, 0xF6B4, 0x3D89, 0x0258, 0x3D89, 0x0DF6, 0x3D89, 0x198F, 0x3D89, 0x2522, 0x3D89, 0x30AF, 0x3D89, 0x3C35, 0x3D89, 0x47B7, 0x3D89, 0x5333, 0x3D89, 0x5EA9, 0x3D89, 0x6A18, 0x3D89, 0x7583, 0x0001, 0x0203, 0x0400, 0x0102, 0x0304, 0x0001, 0x0203, 0x0400, 0x0102, 0x0304, 0x0001, 0x0203, 0x0405, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0809, 0x0A0B, 0x090A, 0x0B09, 0x0A0B, 0x090A, 0x0B09, 0x0A0B, 0x0000, 0x0000, 0x0001, 0x0101, 0x0101, 0x0202, 0x0202, 0x0203, 0x0303, 0x0303, 0x0404, 0x0404, 0x0400, 0x0000, 0x0001, 0x0101, 0x0102, 0x0202, 0x0203, 0x0303, 0x0304, 0x0404, 0x0400, 0x0000, 0x0101, 0x0102, 0x0202, 0x0303, 0x0304, 0x0404, 0x0000, 0x0000, 0x0000, 0x0000 +glabel D_80078F60 +.short 0xBF80, 0x0000, 0x0000, 0x0000, 0x3681, 0x3045, 0x36CC, 0xC25E, 0x3701, 0x3056, 0x3715, 0xFBD1, 0x3726, 0xF96C, 0x3735, 0x56F8, 0x3741, 0xC897, 0x374C, 0xC288, 0x3756, 0x941E, 0x375F, 0x75EA, 0x3767, 0x91B7, 0x376F, 0x074D, 0x3775, 0xEF48, 0x377C, 0x5D3E, 0x3781, 0x3079, 0x3784, 0x039E, 0x3786, 0xAD71, 0x3789, 0x3260, 0x378B, 0x9637, 0x378D, 0xDC3A, 0x3790, 0x0722, 0x3792, 0x195F, 0x3794, 0x1509, 0x3795, 0xFC00, 0x3797, 0xCFD4, 0x3799, 0x9207, 0x379B, 0x43D7, 0x379C, 0xE668, 0x379E, 0x7AD2, 0x37A0, 0x01F1, 0x37A1, 0x7CA6, 0x37A2, 0xEBB8, 0x37A4, 0x4FD1, 0x37A5, 0xA99A, 0x37A6, 0xF9A4, 0x37A8, 0x4077, 0x37A9, 0x7E93, 0x37AA, 0xB46F, 0x37AB, 0xE26F, 0x37AD, 0x08FC, 0x37AE, 0x286C, 0x37AF, 0x4119, 0x37B0, 0x5355, 0x37B1, 0x5F67, 0x37B2, 0x6597, 0x37B3, 0x6621, 0x37B4, 0x6141, 0x37B5, 0x5735, 0x37B6, 0x4832, 0x37B7, 0x346C, 0x37B8, 0x1C0C, 0x37B8, 0xFF46, 0x37B9, 0xDE3F, 0x37BA, 0xB91E, 0x37BB, 0x900F, 0x37BC, 0x632E, 0x37BD, 0x32A6, 0x37BD, 0xFE8D, 0x37BE, 0xC70A, 0x37BF, 0x8C33, 0x37C0, 0x4E29, 0x37C1, 0x0D07, 0x37C1, 0xC8E4, 0x37C2, 0x81D5, 0x37C3, 0x37F0, 0x37C3, 0xEB51, 0x37C4, 0x9C0E, 0x37C5, 0x4A32, 0x37C5, 0xF5D3, 0x37C6, 0x9F06, 0x37C7, 0x45DC, 0x37C7, 0xEA67, 0x37C8, 0x8CB5, 0x37C9, 0x2CD3, 0x37C9, 0xCAD0, 0x37CA, 0x66BE, 0x37CB, 0x00A7, 0x37CB, 0x98A1, 0x37CC, 0x2EAD, 0x37CC, 0xC2DA, 0x37CD, 0x5539, 0x37CD, 0xE5D0, 0x37CE, 0x74AA, 0x37CF, 0x01D7, 0x37CF, 0x8D57, 0x37D0, 0x1741, 0x37D0, 0x9F93, 0x37D1, 0x265F, 0x37D1, 0xABA5, 0x37D2, 0x2F75, 0x37D2, 0xB1D5, 0x37D3, 0x32CA, 0x37D3, 0xB25F, 0x37D4, 0x3099, 0x37D4, 0xAD7F, 0x37D5, 0x2921, 0x37D5, 0xA378, 0x37D6, 0x1C91, 0x37D6, 0x9476, 0x37D7, 0x0B27, 0x37D7, 0x80A9, 0x37D7, 0xF50E, 0x37D8, 0x684A, 0x37D8, 0xDA73, 0x37D9, 0x4B84, 0x37D9, 0xBB87, 0x37DA, 0x2A7D, 0x37DA, 0x9870, 0x37DB, 0x055C, 0x37DB, 0x7150, 0x37DB, 0xDC4D, 0x37DC, 0x4658, 0x37DC, 0xAF71, 0x37DD, 0x179E, 0x37DD, 0x7EE3, 0x37DD, 0xE548, 0x37DE, 0x4AD0, 0x37DE, 0xAF77, 0x37DF, 0x1348, 0x37DF, 0x7648, 0x37DF, 0xD877, 0x37E0, 0x39D4, 0x37E0, 0x9A6C, 0x37E0, 0xFA3F, 0x37E1, 0x594B, 0x37E1, 0xB797, 0x37E2, 0x1527, 0x37E2, 0x71F8, 0x37E2, 0xCE18, 0x37E3, 0x297E, 0x37E3, 0x8434, 0x37E3, 0xDE3F, 0x37E4, 0x3795, 0x37E4, 0x9046, 0x37E4, 0xE852, 0x37E5, 0x3FB3, 0x37E5, 0x9675, 0x37E5, 0xEC93, 0x37E6, 0x4216, 0x37E6, 0x96FF, 0x37E6, 0xEB49, 0x37E7, 0x3F04, 0x37E7, 0x9220, 0x37E7, 0xE4AC, 0x37E8, 0x36AA, 0x37E8, 0x8819, 0x37E8, 0xD8F8, 0x37E9, 0x2949, 0x37E9, 0x7916, 0x37E9, 0xC85A, 0x37EA, 0x1714, 0x37EA, 0x654F, 0x37EA, 0xB302, 0x37EB, 0x0035, 0x37EB, 0x4CF0, 0x37EB, 0x9927, 0x37EB, 0xE4E5, 0x37EC, 0x3024, 0x37EC, 0x7AF0, 0x37EC, 0xC543, 0x37ED, 0x0F1D, 0x37ED, 0x588A, 0x37ED, 0xA17D, 0x37ED, 0xEA02, 0x37EE, 0x3214, 0x37EE, 0x79B8, 0x37EE, 0xC0EE, 0x37EF, 0x07BB, 0x37EF, 0x4E1B, 0x37EF, 0x9412, 0x37EF, 0xD9A0, 0x37F0, 0x1EC6, 0x37F0, 0x6389, 0x37F0, 0xA7E4, 0x37F0, 0xEBDC, 0x37F1, 0x2F71, 0x37F1, 0x72A3, 0x37F1, 0xB577, 0x37F1, 0xF7EE, 0x37F2, 0x3A02, 0x37F2, 0x7BBE, 0x37F2, 0xBD17, 0x37F2, 0xFE18, 0x37F3, 0x3EC1, 0x37F3, 0x7F13, 0x37F3, 0xBF06, 0x37F3, 0xFEA2, 0x37F4, 0x3DEB, 0x37F4, 0x7CE2, 0x37F4, 0xBB7C, 0x37F4, 0xF9C8, 0x37F5, 0x37C2, 0x37F5, 0x7564, 0x37F5, 0xB2B9, 0x37F5, 0xEFBB, 0x37F6, 0x2C71, 0x37F6, 0x68DA, 0x37F6, 0xA4F0, 0x37F6, 0xE0B9, 0x37F7, 0x1C3B, 0x37F7, 0x5770, 0x37F7, 0x9257, 0x37F7, 0xCCF2, 0x37F8, 0x0746, 0x37F8, 0x4151, 0x37F8, 0x7B16, 0x37F8, 0xB493, 0x37F8, 0xEDC8, 0x37F9, 0x26BC, 0x37F9, 0x5F68, 0x37F9, 0x97CD, 0x37F9, 0xCFEF, 0x37FA, 0x07D0, 0x37FA, 0x3F69, 0x37FA, 0x76C6, 0x37FA, 0xADE0, 0x37FA, 0xE4B9, 0x37FB, 0x1B50, 0x37FB, 0x51A5, 0x37FB, 0x87C3, 0x37FB, 0xBD99, 0x37FB, 0xF338, 0x37FC, 0x2896, 0x37FC, 0x5DB7, 0x37FC, 0x92A1, 0x37FC, 0xC749, 0x37FC, 0xFBBA, 0x37FD, 0x2FEE, 0x37FD, 0x63E6, 0x37FD, 0x97A8, 0x37FD, 0xCB2C, 0x37FD, 0xFE7A, 0x37FE, 0x3191, 0x37FE, 0x6470, 0x37FE, 0x9719, 0x37FE, 0xC985, 0x37FE, 0xFBC0, 0x37FF, 0x2DC4, 0x37FF, 0x5F96, 0x37FF, 0x912C, 0x37FF, 0xC291, 0x37FF, 0xF3C3, 0x3800, 0x1260, 0x3800, 0x2AC5, 0x3800, 0x4311, 0x3800, 0x5B42, 0x3800, 0x735B, 0x3800, 0x8B5D, 0x3800, 0xA344, 0x3800, 0xBB14, 0x3800, 0xD2CA, 0x3800, 0xEA69, 0x3801, 0x01F0, 0x3801, 0x1960, 0x3801, 0x30B8, 0x3801, 0x47F7, 0x3801, 0x5F23, 0x3801, 0x7633, 0x3801, 0x8D31, 0x3801, 0xA415, 0x3801, 0xBAE6, 0x3801, 0xD19F, 0x3801, 0xE841, 0x3801, 0xFECD, 0x3802, 0x1544, 0x3802, 0x2BA4, 0x3802, 0x41F2, 0x3802, 0x5829, 0x3802, 0x6E4A, 0x3802, 0x8455, 0x3802, 0x9A4D, 0x3802, 0xB032, 0x3802, 0xC601, 0x3802, 0xDBBA, 0x3802, 0xF15F, 0x3803, 0x06F1, 0x3803, 0x1C70, 0x3803, 0x31DA, 0x3803, 0x4732, 0x3803, 0x5C75, 0x3803, 0x71A4, 0x3803, 0x86C3, 0x3803, 0x9BCC, 0x3803, 0xB0C1, 0x3803, 0xC5A6, 0x3803, 0xDA78, 0x3803, 0xEF37, 0x3804, 0x03E2, 0x3804, 0x187D, 0x3804, 0x2D05, 0x3804, 0x417C, 0x3804, 0x55E0, 0x3804, 0x6A31, 0x3804, 0x7E74, 0x3804, 0x92A1, 0x3804, 0xA6C0, 0x3804, 0xBACC, 0x3804, 0xCEC7, 0x3804, 0xE2B0, 0x3804, 0xF68A, 0x3805, 0x0A51, 0x3805, 0x1E0B, 0x3805, 0x31B1, 0x3805, 0x4547, 0x3805, 0x58CC, 0x3805, 0x6C41, 0x3805, 0x7FA8, 0x3805, 0x92FC, 0x3805, 0xA642, 0x3805, 0xB977, 0x3805, 0xCC9C, 0x3805, 0xDFB4, 0x3805, 0xF2BB, 0x3806, 0x05B1, 0x3806, 0x189A, 0x3806, 0x2B72, 0x3806, 0x3E39, 0x3806, 0x50F3, 0x3806, 0x639F, 0x3806, 0x763B, 0x3806, 0x88C9, 0x3806, 0x9B46, 0x3806, 0xADB6, 0x3806, 0xC018, 0x3806, 0xD269, 0x3806, 0xE4B0, 0x3806, 0xF6E6, 0x3807, 0x090E, 0x3807, 0x1B25, 0x3807, 0x2D32, 0x3807, 0x3F31, 0x3807, 0x5120, 0x3807, 0x6303, 0x3807, 0x74D9, 0x3807, 0x869E, 0x3807, 0x9858, 0x3807, 0xAA05, 0x3807, 0xBBA3, 0x3807, 0xCD34, 0x3807, 0xDEB8, 0x3807, 0xF030, 0x3808, 0x019A, 0x3808, 0x12F7, 0x3808, 0x2446, 0x3808, 0x358A, 0x3808, 0x46C1, 0x3808, 0x57E9, 0x3808, 0x6907, 0x3808, 0x7A19, 0x3808, 0x8B1E, 0x3808, 0x9C15, 0x3808, 0xAD01, 0x3808, 0xBDE0, 0x3808, 0xCEB3, 0x3808, 0xDF78, 0x3808, 0xF036, 0x3809, 0x00E3, 0x3809, 0x1187, 0x3809, 0x221E, 0x3809, 0x32AA, 0x3809, 0x4328, 0x3809, 0x539E, 0x3809, 0x6406, 0x3809, 0x7463, 0x3809, 0x84B3, 0x3809, 0x94FA, 0x3809, 0xA536, 0x3809, 0xB564, 0x3809, 0xC588, 0x3809, 0xD5A0, 0x3809, 0xE5B0, 0x3809, 0xF5B3, 0x380A, 0x05AA, 0x380A, 0x1597, 0x380A, 0x257B, 0x380A, 0x3551, 0x380A, 0x451D, 0x380A, 0x54E0, 0x380A, 0x6498, 0x380A, 0x7445, 0x380A, 0x83E8, 0x380A, 0x937F, 0x380A, 0xA30B, 0x380A, 0xB28F, 0x380A, 0xC208, 0x380A, 0xD176, 0x380A, 0xE0D9, 0x380A, 0xF034, 0x380A, 0xFF84, 0x380B, 0x0ECB, 0x380B, 0x1E08, 0x380B, 0x2D39, 0x380B, 0x3C60, 0x380B, 0x4B7E, 0x380B, 0x5A94, 0x380B, 0x699F, 0x380B, 0x789F, 0x380B, 0x8797, 0x380B, 0x9686, 0x380B, 0xA56B, 0x380B, 0xB445, 0x380B, 0xC316, 0x380B, 0xD1DF, 0x380B, 0xE09D, 0x380B, 0xEF53, 0x380B, 0xFDFE, 0x380C, 0x0CA0, 0x380C, 0x1B3B, 0x380C, 0x29CD, 0x380C, 0x3854, 0x380C, 0x46D3, 0x380C, 0x5547, 0x380C, 0x63B5, 0x380C, 0x7218, 0x380C, 0x8073, 0x380C, 0x8EC3, 0x380C, 0x9D0E, 0x380C, 0xAB4E, 0x380C, 0xB985, 0x380C, 0xC7B4, 0x380C, 0xD5DB, 0x380C, 0xE3FA, 0x380C, 0xF20D, 0x380D, 0x001C, 0x380D, 0x0E1F, 0x380D, 0x1C1C, 0x380D, 0x2A0F, 0x380D, 0x37F9, 0x380D, 0x45DE, 0x380D, 0x53B8, 0x380D, 0x618A, 0x380D, 0x6F56, 0x380D, 0x7D17, 0x380D, 0x8AD3, 0x380D, 0x9884, 0x380D, 0xA62F, 0x380D, 0xB3CF, 0x380D, 0xC16A, 0x380D, 0xCEFC, 0x380D, 0xDC87, 0x380D, 0xEA08, 0x380D, 0xF782, 0x380E, 0x04F6, 0x380E, 0x1260, 0x380E, 0x1FC3, 0x380E, 0x2D1F, 0x380E, 0x3A75, 0x380E, 0x47C0, 0x380E, 0x5505, 0x380E, 0x6243, 0x380E, 0x6F78, 0x380E, 0x7CA7, 0x380E, 0x89CE, 0x380E, 0x96ED, 0x380E, 0xA404, 0x380E, 0xB115, 0x380E, 0xBE1E, 0x380E, 0xCB22, 0x380E, 0xD81D, 0x380E, 0xE510, 0x380E, 0xF1FB, 0x380E, 0xFEE0, 0x380F, 0x0BC0, 0x380F, 0x1898, 0x380F, 0x2567, 0x380F, 0x3231, 0x380F, 0x3EF2, 0x380F, 0x4BAE, 0x380F, 0x5862, 0x380F, 0x650E, 0x380F, 0x71B4, 0x380F, 0x7E54, 0x380F, 0x8AED, 0x380F, 0x977F, 0x380F, 0xA40A, 0x380F, 0xB08F, 0x380F, 0xBD0C, 0x380F, 0xC983, 0x380F, 0xD5F2, 0x380F, 0xE25C, 0x380F, 0xEEC0, 0x380F, 0xFB1C, 0x3810, 0x0772, 0x3810, 0x13C3, 0x3810, 0x200C, 0x3810, 0x2C4C, 0x3810, 0x388A, 0x3810, 0x44BF, 0x3810, 0x50EF, 0x3810, 0x5D16, 0x3810, 0x6939, 0x3810, 0x7555, 0x3810, 0x816C, 0x3810, 0x8D7B, 0x3810, 0x9985, 0x3810, 0xA588, 0x3810, 0xB184, 0x3810, 0xBD7D, 0x3810, 0xC96E, 0x3810, 0xD559, 0x3810, 0xE13C, 0x3810, 0xED1C, 0x3810, 0xF8F4, 0x3811, 0x04C6, 0x3811, 0x1093, 0x3811, 0x1C58, 0x3811, 0x281A, 0x3811, 0x33D3, 0x3811, 0x3F8A, 0x3811, 0x4B39, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3691, 0x5629, 0x36E6, 0x5A71, 0x3711, 0x563E, 0x3728, 0xBB21, 0x373B, 0xD86E, 0x374C, 0x01A5, 0x375A, 0x017E, 0x3766, 0x5AA2, 0x3771, 0x6665, 0x377B, 0x646F, 0x3782, 0x41DE, 0x3786, 0x73FF, 0x378A, 0x567A, 0x378D, 0xF452, 0x3791, 0x5666, 0x3794, 0x83F4, 0x3797, 0x82FE, 0x379A, 0x588A, 0x379D, 0x08DF, 0x379F, 0x979E, 0x37A2, 0x07E4, 0x37A4, 0x5C6C, 0x37A6, 0x978B, 0x37A8, 0xBB58, 0x37AA, 0xC9AC, 0x37AC, 0xC422, 0x37AE, 0xAC2C, 0x37B0, 0x8318, 0x37B2, 0x4A04, 0x37B4, 0x020F, 0x37B5, 0xAC19, 0x37B7, 0x4909, 0x37B8, 0xD9A6, 0x37BA, 0x5EAA, 0x37BB, 0xD8B5, 0x37BD, 0x4861, 0x37BE, 0xAE42, 0x37C0, 0x0AD6, 0x37C1, 0x5E97, 0x37C2, 0xA9F2, 0x37C3, 0xED56, 0x37C5, 0x291A, 0x37C6, 0x5D9C, 0x37C7, 0x8B2E, 0x37C8, 0xB223, 0x37C9, 0xD2BD, 0x37CA, 0xED43, 0x37CC, 0x01F7, 0x37CD, 0x1116, 0x37CE, 0x1AD6, 0x37CF, 0x1F69, 0x37D0, 0x1F07, 0x37D1, 0x19E0, 0x37D2, 0x101B, 0x37D3, 0x01E9, 0x37D3, 0xEF6C, 0x37D4, 0xD8D0, 0x37D5, 0xBE3A, 0x37D6, 0x9FC1, 0x37D7, 0x7D97, 0x37D8, 0x57CC, 0x37D9, 0x2E81, 0x37DA, 0x01D6, 0x37DA, 0xD1E8, 0x37DB, 0x9ECC, 0x37DC, 0x6899, 0x37DD, 0x2F69, 0x37DD, 0xF34E, 0x37DE, 0xB468, 0x37DF, 0x72C2, 0x37E0, 0x2E73, 0x37E0, 0xE78A, 0x37E1, 0x9E24, 0x37E2, 0x5245, 0x37E3, 0x0405, 0x37E3, 0xB36D, 0x37E4, 0x6099, 0x37E5, 0x0B8A, 0x37E5, 0xB45A, 0x37E6, 0x5B10, 0x37E6, 0xFFB5, 0x37E7, 0xA261, 0x37E8, 0x4319, 0x37E8, 0xE1E7, 0x37E9, 0x7EDD, 0x37EA, 0x19FF, 0x37EA, 0xB35F, 0x37EB, 0x4B01, 0x37EB, 0xE0F1, 0x37EC, 0x753A, 0x37ED, 0x07E6, 0x37ED, 0x98FC, 0x37EE, 0x2880, 0x37EE, 0xB683, 0x37EF, 0x430B, 0x37EF, 0xCE18, 0x37F0, 0x57BF, 0x37F0, 0xDFFC, 0x37F1, 0x66D8, 0x37F1, 0xEC60, 0x37F2, 0x7099, 0x37F2, 0xF387, 0x37F3, 0x752C, 0x37F3, 0xF598, 0x37F4, 0x74CA, 0x37F4, 0xF2CD, 0x37F5, 0x6FA3, 0x37F5, 0xEB54, 0x37F6, 0x65E3, 0x37F6, 0xDF54, 0x37F7, 0x57AC, 0x37F7, 0xCEF7, 0x37F8, 0x4535, 0x37F8, 0xBA6A, 0x37F9, 0x2E98, 0x37F9, 0xA1C9, 0x37FA, 0x13FD, 0x37FA, 0x853F, 0x37FA, 0xF58A, 0x37FB, 0x64E8, 0x37FB, 0xD35A, 0x37FC, 0x40EB, 0x37FC, 0xAD94, 0x37FD, 0x195C, 0x37FD, 0x8449, 0x37FD, 0xEE5F, 0x37FE, 0x579E, 0x37FE, 0xC00D, 0x37FF, 0x27B0, 0x37FF, 0x8E88, 0x37FF, 0xF494, 0x3800, 0x2CED, 0x3800, 0x5F30, 0x3800, 0x9113, 0x3800, 0xC299, 0x3800, 0xF3C1, 0x3801, 0x248E, 0x3801, 0x5500, 0x3801, 0x8518, 0x3801, 0xB4DB, 0x3801, 0xE445, 0x3802, 0x135D, 0x3802, 0x421E, 0x3802, 0x708E, 0x3802, 0x9EAC, 0x3802, 0xCC78, 0x3802, 0xF9F6, 0x3803, 0x2725, 0x3803, 0x5407, 0x3803, 0x809C, 0x3803, 0xACE7, 0x3803, 0xD8E7, 0x3804, 0x049D, 0x3804, 0x3009, 0x3804, 0x5B31, 0x3804, 0x8611, 0x3804, 0xB0AC, 0x3804, 0xDAFF, 0x3805, 0x0511, 0x3805, 0x2EE1, 0x3805, 0x586C, 0x3805, 0x81B8, 0x3805, 0xAAC2, 0x3805, 0xD38C, 0x3805, 0xFC15, 0x3806, 0x2464, 0x3806, 0x4C71, 0x3806, 0x7444, 0x3806, 0x9BDB, 0x3806, 0xC335, 0x3806, 0xEA55, 0x3807, 0x113A, 0x3807, 0x37E7, 0x3807, 0x5E5A, 0x3807, 0x8496, 0x3807, 0xAA99, 0x3807, 0xD068, 0x3807, 0xF5FF, 0x3808, 0x1B60, 0x3808, 0x408C, 0x3808, 0x6584, 0x3808, 0x8A48, 0x3808, 0xAEDA, 0x3808, 0xD338, 0x3808, 0xF765, 0x3809, 0x1B5D, 0x3809, 0x3F27, 0x3809, 0x62BF, 0x3809, 0x8629, 0x3809, 0xA961, 0x3809, 0xCC6D, 0x3809, 0xEF47, 0x380A, 0x11F3, 0x380A, 0x3473, 0x380A, 0x56C7, 0x380A, 0x78EC, 0x380A, 0x9AE5, 0x380A, 0xBCB2, 0x380A, 0xDE53, 0x380A, 0xFFCB, 0x380B, 0x2117, 0x380B, 0x423A, 0x380B, 0x6333, 0x380B, 0x8404, 0x380B, 0xA4AB, 0x380B, 0xC528, 0x380B, 0xE580, 0x380C, 0x05AE, 0x380C, 0x25B5, 0x380C, 0x4594, 0x380C, 0x654E, 0x380C, 0x84E3, 0x380C, 0xA450, 0x380C, 0xC397, 0x380C, 0xE2BB, 0x380D, 0x01B8, 0x380D, 0x2091, 0x380D, 0x3F47, 0x380D, 0x5DD8, 0x380D, 0x7C46, 0x380D, 0x9A91, 0x380D, 0xB8BA, 0x380D, 0xD6C0, 0x380D, 0xF4A2, 0x380E, 0x1265, 0x380E, 0x3005, 0x380E, 0x4D81, 0x380E, 0x6ADF, 0x380E, 0x881C, 0x380E, 0xA538, 0x380E, 0xC236, 0x380E, 0xDF10, 0x380E, 0xFBCE, 0x380F, 0x1869, 0x380F, 0x34E8, 0x380F, 0x5146, 0x380F, 0x6D86, 0x380F, 0x89AB, 0x380F, 0xA5AF, 0x380F, 0xC194, 0x380F, 0xDD5E, 0x380F, 0xF909, 0x3810, 0x1497, 0x3810, 0x3009, 0x3810, 0x4B5C, 0x3810, 0x6694, 0x3810, 0x81B1, 0x3810, 0x9CB2, 0x3810, 0xB798, 0x3810, 0xD25F, 0x3810, 0xED0E, 0x3811, 0x07A1, 0x3811, 0x2219, 0x3811, 0x3C75, 0x3811, 0x56B9, 0x3811, 0x70E4, 0x3811, 0x8AF0, 0x3811, 0xA4E7, 0x3811, 0xBEC2, 0x3811, 0xD884, 0x3811, 0xF22B, 0x3812, 0x0BBC, 0x3812, 0x2534, 0x3812, 0x3E90, 0x3812, 0x57D7, 0x3812, 0x7105, 0x3812, 0x8A1A, 0x3812, 0xA317, 0x3812, 0xBBFD, 0x3812, 0xD4CB, 0x3812, 0xED82, 0x3813, 0x0621, 0x3813, 0x1EAA, 0x3813, 0x371A, 0x3813, 0x4F77, 0x3813, 0x67BC, 0x3813, 0x7FEA, 0x3813, 0x97FF, 0x3813, 0xB002, 0x3813, 0xC7EE, 0x3813, 0xDFC4, 0x3813, 0xF785, 0x3814, 0x0F2F, 0x3814, 0x26C6, 0x3814, 0x3E47, 0x3814, 0x55B2, 0x3814, 0x6D07, 0x3814, 0x8449, 0x3814, 0x9B78, 0x3814, 0xB290, 0x3814, 0xC996, 0x3814, 0xE085, 0x3814, 0xF764, 0x3815, 0x0E2A, 0x3815, 0x24E0, 0x3815, 0x3B82, 0x3815, 0x520F, 0x3815, 0x688B, 0x3815, 0x7EF1, 0x3815, 0x9546, 0x3815, 0xAB85, 0x3815, 0xC1B4, 0x3815, 0xD7D0, 0x3815, 0xEDDB, 0x3816, 0x03D1, 0x3816, 0x19B5, 0x3816, 0x2F87, 0x3816, 0x4548, 0x3816, 0x5AF6, 0x3816, 0x7090, 0x3816, 0x861D, 0x3816, 0x9B94, 0x3816, 0xB0FD, 0x3816, 0xC653, 0x3816, 0xDB95, 0x3816, 0xF0CA, 0x3817, 0x05EC, 0x3817, 0x1AFD, 0x3817, 0x2FFE, 0x3817, 0x44EE, 0x3817, 0x59CB, 0x3817, 0x6E9A, 0x3817, 0x8358, 0x3817, 0x9804, 0x3817, 0xACA1, 0x3817, 0xC12F, 0x3817, 0xD5AB, 0x3817, 0xEA1A, 0x3817, 0xFE76, 0x3818, 0x12C4, 0x3818, 0x2701, 0x3818, 0x3B2E, 0x3818, 0x4F4D, 0x3818, 0x635C, 0x3818, 0x775D, 0x3818, 0x8B4E, 0x3818, 0x9F30, 0x3818, 0xB303, 0x3818, 0xC6C4, 0x3818, 0xDA7B, 0x3818, 0xEE21, 0x3819, 0x01B7, 0x3819, 0x153F, 0x3819, 0x28B9, 0x3819, 0x3C26, 0x3819, 0x4F82, 0x3819, 0x62D3, 0x3819, 0x7614, 0x3819, 0x8946, 0x3819, 0x9C6B, 0x3819, 0xAF83, 0x3819, 0xC28A, 0x3819, 0xD586, 0x3819, 0xE874, 0x3819, 0xFB54, 0x381A, 0x0E27, 0x381A, 0x20EB, 0x381A, 0x33A3, 0x381A, 0x464C, 0x381A, 0x58E8, 0x381A, 0x6B78, 0x381A, 0x7DFB, 0x381A, 0x9070, 0x381A, 0xA2DA, 0x381A, 0xB534, 0x381A, 0xC783, 0x381A, 0xD9C6, 0x381A, 0xEBFC, 0x381A, 0xFE25, 0x381B, 0x103F, 0x381B, 0x2251, 0x381B, 0x3453, 0x381B, 0x464A, 0x381B, 0x5835, 0x381B, 0x6A13, 0x381B, 0x7BE6, 0x381B, 0x8DAB, 0x381B, 0x9F66, 0x381B, 0xB115, 0x381B, 0xC2B6, 0x381B, 0xD44D, 0x381B, 0xE5D8, 0x381B, 0xF759, 0x381C, 0x08CC, 0x381C, 0x1A33, 0x381C, 0x2B90, 0x381C, 0x3CDF, 0x381C, 0x4E26, 0x381C, 0x5F5F, 0x381C, 0x708D, 0x381C, 0x81B3, 0x381C, 0x92CB, 0x381C, 0xA3D8, 0x381C, 0xB4DA, 0x381C, 0xC5D1, 0x381C, 0xD6BD, 0x381C, 0xE79E, 0x381C, 0xF874, 0x381D, 0x0940, 0x381D, 0x1A02, 0x381D, 0x2AB7, 0x381D, 0x3B64, 0x381D, 0x4C03, 0x381D, 0x5C9A, 0x381D, 0x6D26, 0x381D, 0x7DAA, 0x381D, 0x8E20, 0x381D, 0x9E8D, 0x381D, 0xAEF0, 0x381D, 0xBF48, 0x381D, 0xCF97, 0x381D, 0xDFDB, 0x381D, 0xF015, 0x381E, 0x0046, 0x381E, 0x106C, 0x381E, 0x2087, 0x381E, 0x309A, 0x381E, 0x40A2, 0x381E, 0x50A2, 0x381E, 0x6097, 0x381E, 0x7080, 0x381E, 0x8062, 0x381E, 0x903B, 0x381E, 0xA009, 0x381E, 0xAFCF, 0x381E, 0xBF8A, 0x381E, 0xCF3D, 0x381E, 0xDEE4, 0x381E, 0xEE84, 0x381E, 0xFE1B, 0x381F, 0x0DA7, 0x381F, 0x1D2B, 0x381F, 0x2CA4, 0x381F, 0x3C18, 0x381F, 0x4B7E, 0x381F, 0x5ADE, 0x381F, 0x6A33, 0x381F, 0x7983, 0x381F, 0x88C5, 0x381F, 0x9801, 0x381F, 0xA733, 0x381F, 0xB65F, 0x381F, 0xC580, 0x381F, 0xD499, 0x381F, 0xE3A6, 0x381F, 0xF2AF, 0x3820, 0x01AC, 0x3820, 0x10A4, 0x3820, 0x1F91, 0x3820, 0x2E75, 0x3820, 0x3D52, 0x3820, 0x4C26, 0x3820, 0x5AF1, 0x3820, 0x69B5, 0x3820, 0x7870, 0x3820, 0x8723, 0x3820, 0x95CE, 0x3820, 0xA471, 0x3820, 0xB30B, 0x3820, 0xC19D, 0x3820, 0xD027, 0x3820, 0xDEA9, 0x3820, 0xED22, 0x3820, 0xFB93, 0x3821, 0x09FF, 0x3821, 0x185F, 0x3821, 0x26BB, 0x3821, 0x350D, 0x3821, 0x4358, 0x3821, 0x519A, 0x3821, 0x5FD5, 0x3821, 0x6E09, 0x3821, 0x7C36, 0x3821, 0x8A5A, 0x3821, 0x9876, 0x3821, 0xA689, 0x3821, 0xB497, 0x3821, 0xC29D, 0x3821, 0xD09B, 0x3821, 0xDE93, 0x3821, 0xEC83, 0x3821, 0xFA6B, 0x3822, 0x084A, 0x3822, 0x1624, 0x3822, 0x23F6, 0x3822, 0x31C2, 0x3822, 0x3F86, 0x3822, 0x4D42, 0x3822, 0x5AF8, 0x3822, 0x68A6, 0x3822, 0x764B, 0x3822, 0x83EC, 0x3822, 0x9184, 0x3822, 0x9F16, 0x3822, 0xACA0, 0x3822, 0xBA25, 0x3822, 0xC7A1, 0x3822, 0xD516, 0x3822, 0xE284, 0x3822, 0xEFEE, 0x3822, 0xFD4E, 0x3823, 0x0AAA, 0x3823, 0x17FD, 0x3823, 0x2548, 0x3823, 0x3290, 0x3823, 0x3FCE, 0x3823, 0x4D08, 0x3823, 0x5A3A, 0x3823, 0x6764, 0x3823, 0x7489, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36A6, 0x196A, 0x3703, 0xA179, 0x3726, 0x1985, 0x3740, 0xD603, 0x3756, 0xAE5C, 0x3769, 0x269A, 0x3779, 0x2674, 0x3783, 0xA19B, 0x3789, 0xF17B, 0x378F, 0xA735, 0x3794, 0xDDA7, 0x3799, 0xA93E, 0x379E, 0x19D1, 0x37A2, 0x3BED, 0x37A6, 0x19B9, 0x37A9, 0xBB85, 0x37AD, 0x281F, 0x37B0, 0x6554, 0x37B3, 0x77FF, 0x37B6, 0x6449, 0x37B9, 0x2DBF, 0x37BB, 0xD77C, 0x37BE, 0x6436, 0x37C0, 0xD64A, 0x37C3, 0x2FCD, 0x37C5, 0x729C, 0x37C7, 0xA05B, 0x37C9, 0xBA8F, 0x37CB, 0xC27C, 0x37CD, 0xB962, 0x37CF, 0xA04E, 0x37D1, 0x783C, 0x37D3, 0x4214, 0x37D4, 0xFEA6, 0x37D6, 0xAEB4, 0x37D8, 0x52E6, 0x37D9, 0xEBE9, 0x37DB, 0x7A4A, 0x37DC, 0xFE94, 0x37DE, 0x7949, 0x37DF, 0xEADE, 0x37E1, 0x53C0, 0x37E2, 0xB453, 0x37E4, 0x0CFF, 0x37E5, 0x5E11, 0x37E6, 0xA7EB, 0x37E7, 0xEACB, 0x37E9, 0x2708, 0x37EA, 0x5CDF, 0x37EB, 0x8C97, 0x37EC, 0xB667, 0x37ED, 0xDA86, 0x37EE, 0xF937, 0x37F0, 0x129F, 0x37F1, 0x26FB, 0x37F2, 0x366C, 0x37F3, 0x4129, 0x37F4, 0x4753, 0x37F5, 0x491C, 0x37F6, 0x4699, 0x37F7, 0x3FFC, 0x37F8, 0x3561, 0x37F9, 0x26E8, 0x37FA, 0x14B2, 0x37FA, 0xFEDC, 0x37FB, 0xE57A, 0x37FC, 0xC8B4, 0x37FD, 0xA899, 0x37FE, 0x8546, 0x37FF, 0x5ED0, 0x3800, 0x1AAA, 0x3800, 0x8470, 0x3800, 0xECC6, 0x3801, 0x53B4, 0x3801, 0xB944, 0x3802, 0x1D83, 0x3802, 0x8075, 0x3802, 0xE225, 0x3803, 0x429C, 0x3803, 0xA1E0, 0x3803, 0xFFF7, 0x3804, 0x5CE9, 0x3804, 0xB8C2, 0x3805, 0x1380, 0x3805, 0x6D30, 0x3805, 0xC5D9, 0x3806, 0x1D7C, 0x3806, 0x7423, 0x3806, 0xC9D2, 0x3807, 0x1E8D, 0x3807, 0x725B, 0x3807, 0xC542, 0x3808, 0x1748, 0x3808, 0x686D, 0x3808, 0xB8B8, 0x3809, 0x0830, 0x3809, 0x56D7, 0x3809, 0xA4B2, 0x3809, 0xF1C5, 0x380A, 0x3E12, 0x380A, 0x899E, 0x380A, 0xD470, 0x380B, 0x1E86, 0x380B, 0x67E7, 0x380B, 0xB098, 0x380B, 0xF89A, 0x380C, 0x3FEE, 0x380C, 0x869D, 0x380C, 0xCCA5, 0x380D, 0x120A, 0x380D, 0x56D0, 0x380D, 0x9AFC, 0x380D, 0xDE8B, 0x380E, 0x2183, 0x380E, 0x63EA, 0x380E, 0xA5BC, 0x380E, 0xE6FF, 0x380F, 0x27B6, 0x380F, 0x67E1, 0x380F, 0xA785, 0x380F, 0xE6A2, 0x3810, 0x253B, 0x3810, 0x6353, 0x3810, 0xA0ED, 0x3810, 0xDE06, 0x3811, 0x1AA5, 0x3811, 0x56C9, 0x3811, 0x9277, 0x3811, 0xCDAF, 0x3812, 0x0873, 0x3812, 0x42C3, 0x3812, 0x7CA3, 0x3812, 0xB615, 0x3812, 0xEF16, 0x3813, 0x27AF, 0x3813, 0x5FDD, 0x3813, 0x97A2, 0x3813, 0xCF01, 0x3814, 0x05F8, 0x3814, 0x3C8F, 0x3814, 0x72C0, 0x3814, 0xA891, 0x3814, 0xDDFF, 0x3815, 0x1312, 0x3815, 0x47C5, 0x3815, 0x7C1E, 0x3815, 0xB01B, 0x3815, 0xE3C1, 0x3816, 0x170C, 0x3816, 0x49FF, 0x3816, 0x7C9C, 0x3816, 0xAEE5, 0x3816, 0xE0DB, 0x3817, 0x127C, 0x3817, 0x43CD, 0x3817, 0x74CE, 0x3817, 0xA57D, 0x3817, 0xD5DF, 0x3818, 0x05F4, 0x3818, 0x35BA, 0x3818, 0x6538, 0x3818, 0x9469, 0x3818, 0xC34F, 0x3818, 0xF1EC, 0x3819, 0x2041, 0x3819, 0x4E51, 0x3819, 0x7C1A, 0x3819, 0xA99B, 0x3819, 0xD6DA, 0x381A, 0x03D2, 0x381A, 0x308B, 0x381A, 0x5CFF, 0x381A, 0x8931, 0x381A, 0xB524, 0x381A, 0xE0D4, 0x381B, 0x0C49, 0x381B, 0x377B, 0x381B, 0x6271, 0x381B, 0x8D2A, 0x381B, 0xB7A7, 0x381B, 0xE1E5, 0x381C, 0x0BEC, 0x381C, 0x35B6, 0x381C, 0x5F46, 0x381C, 0x889D, 0x381C, 0xB1BA, 0x381C, 0xDAA0, 0x381D, 0x034F, 0x381D, 0x2BC8, 0x381D, 0x5409, 0x381D, 0x7C13, 0x381D, 0xA3E9, 0x381D, 0xCB8B, 0x381D, 0xF2F8, 0x381E, 0x1A32, 0x381E, 0x4137, 0x381E, 0x680D, 0x381E, 0x8EAC, 0x381E, 0xB51D, 0x381E, 0xDB5C, 0x381F, 0x016C, 0x381F, 0x2749, 0x381F, 0x4CF9, 0x381F, 0x7278, 0x381F, 0x97CA, 0x381F, 0xBCEC, 0x381F, 0xE1E1, 0x3820, 0x06A8, 0x3820, 0x2B42, 0x3820, 0x4FB1, 0x3820, 0x73F3, 0x3820, 0x980A, 0x3820, 0xBBF5, 0x3820, 0xDFB3, 0x3821, 0x0349, 0x3821, 0x26B5, 0x3821, 0x49F8, 0x3821, 0x6D0F, 0x3821, 0x9000, 0x3821, 0xB2C7, 0x3821, 0xD565, 0x3821, 0xF7DC, 0x3822, 0x1A2B, 0x3822, 0x3C55, 0x3822, 0x5E57, 0x3822, 0x8032, 0x3822, 0xA1E6, 0x3822, 0xC377, 0x3822, 0xE4E1, 0x3823, 0x0625, 0x3823, 0x2745, 0x3823, 0x4841, 0x3823, 0x6917, 0x3823, 0x89CC, 0x3823, 0xAA5A, 0x3823, 0xCAC7, 0x3823, 0xEB11, 0x3824, 0x0B39, 0x3824, 0x2B3E, 0x3824, 0x4B1F, 0x3824, 0x6AE2, 0x3824, 0x8A81, 0x3824, 0xAA00, 0x3824, 0xC95D, 0x3824, 0xE899, 0x3825, 0x07B4, 0x3825, 0x26B1, 0x3825, 0x458D, 0x3825, 0x6448, 0x3825, 0x82E5, 0x3825, 0xA163, 0x3825, 0xBFC1, 0x3825, 0xDE03, 0x3825, 0xFC24, 0x3826, 0x1A27, 0x3826, 0x380B, 0x3826, 0x55D5, 0x3826, 0x737F, 0x3826, 0x910C, 0x3826, 0xAE7B, 0x3826, 0xCBCD, 0x3826, 0xE905, 0x3827, 0x0621, 0x3827, 0x231F, 0x3827, 0x4001, 0x3827, 0x5CC5, 0x3827, 0x7970, 0x3827, 0x9600, 0x3827, 0xB274, 0x3827, 0xCECD, 0x3827, 0xEB0D, 0x3828, 0x0731, 0x3828, 0x233A, 0x3828, 0x3F2B, 0x3828, 0x5B00, 0x3828, 0x76BC, 0x3828, 0x925F, 0x3828, 0xADE7, 0x3828, 0xC956, 0x3828, 0xE4AC, 0x3828, 0xFFED, 0x3829, 0x1B12, 0x3829, 0x361E, 0x3829, 0x5111, 0x3829, 0x6BEF, 0x3829, 0x86B1, 0x3829, 0xA15D, 0x3829, 0xBBF3, 0x3829, 0xD670, 0x3829, 0xF0D4, 0x382A, 0x0B23, 0x382A, 0x255B, 0x382A, 0x3F7B, 0x382A, 0x5985, 0x382A, 0x7379, 0x382A, 0x8D57, 0x382A, 0xA71E, 0x382A, 0xC0CE, 0x382A, 0xDA69, 0x382A, 0xF3EC, 0x382B, 0x0D5C, 0x382B, 0x26B6, 0x382B, 0x3FFA, 0x382B, 0x592B, 0x382B, 0x7245, 0x382B, 0x8B4A, 0x382B, 0xA439, 0x382B, 0xBD14, 0x382B, 0xD5DC, 0x382B, 0xEE8E, 0x382C, 0x072D, 0x382C, 0x1FB6, 0x382C, 0x382C, 0x382C, 0x508F, 0x382C, 0x68DE, 0x382C, 0x8117, 0x382C, 0x993D, 0x382C, 0xB153, 0x382C, 0xC952, 0x382C, 0xE13E, 0x382C, 0xF91A, 0x382D, 0x10E0, 0x382D, 0x2895, 0x382D, 0x4037, 0x382D, 0x57C6, 0x382D, 0x6F42, 0x382D, 0x86AD, 0x382D, 0x9E05, 0x382D, 0xB54C, 0x382D, 0xCC80, 0x382D, 0xE3A1, 0x382D, 0xFAB1, 0x382E, 0x11AE, 0x382E, 0x289B, 0x382E, 0x3F77, 0x382E, 0x5643, 0x382E, 0x6CFB, 0x382E, 0x83A3, 0x382E, 0x9A38, 0x382E, 0xB0BF, 0x382E, 0xC733, 0x382E, 0xDD96, 0x382E, 0xF3E9, 0x382F, 0x0A2B, 0x382F, 0x205C, 0x382F, 0x3680, 0x382F, 0x4C91, 0x382F, 0x6291, 0x382F, 0x7884, 0x382F, 0x8E63, 0x382F, 0xA435, 0x382F, 0xB9F6, 0x382F, 0xCFA6, 0x382F, 0xE549, 0x382F, 0xFADB, 0x3830, 0x105D, 0x3830, 0x25D1, 0x3830, 0x3B35, 0x3830, 0x508B, 0x3830, 0x65D0, 0x3830, 0x7B05, 0x3830, 0x902F, 0x3830, 0xA545, 0x3830, 0xBA51, 0x3830, 0xCF4C, 0x3830, 0xE437, 0x3830, 0xF916, 0x3831, 0x0DE5, 0x3831, 0x22A7, 0x3831, 0x3758, 0x3831, 0x4BFE, 0x3831, 0x6093, 0x3831, 0x751B, 0x3831, 0x8995, 0x3831, 0x9E01, 0x3831, 0xB25F, 0x3831, 0xC6B0, 0x3831, 0xDAF3, 0x3831, 0xEF28, 0x3832, 0x034F, 0x3832, 0x1769, 0x3832, 0x2B75, 0x3832, 0x3F73, 0x3832, 0x5364, 0x3832, 0x6749, 0x3832, 0x7B21, 0x3832, 0x8EEB, 0x3832, 0xA2A7, 0x3832, 0xB659, 0x3832, 0xC9FC, 0x3832, 0xDD92, 0x3832, 0xF11D, 0x3833, 0x049A, 0x3833, 0x1809, 0x3833, 0x2B6D, 0x3833, 0x3EC4, 0x3833, 0x520F, 0x3833, 0x654D, 0x3833, 0x787D, 0x3833, 0x8BA5, 0x3833, 0x9EBC, 0x3833, 0xB1CB, 0x3833, 0xC4CD, 0x3833, 0xD7C0, 0x3833, 0xEAAC, 0x3833, 0xFD89, 0x3834, 0x1059, 0x3834, 0x231E, 0x3834, 0x35D8, 0x3834, 0x4887, 0x3834, 0x5B2B, 0x3834, 0x6DC1, 0x3834, 0x804C, 0x3834, 0x92CC, 0x3834, 0xA541, 0x3834, 0xB7AB, 0x3834, 0xCA0B, 0x3834, 0xDC5C, 0x3834, 0xEEA5, 0x3835, 0x00E1, 0x3835, 0x1311, 0x3835, 0x2539, 0x3835, 0x3754, 0x3835, 0x4966, 0x3835, 0x5B6A, 0x3835, 0x6D67, 0x3835, 0x7F55, 0x3835, 0x913B, 0x3835, 0xA316, 0x3835, 0xB4E7, 0x3835, 0xC6AC, 0x3835, 0xD866, 0x3835, 0xEA18, 0x3835, 0xFBBC, 0x3836, 0x0D58, 0x3836, 0x1EE9, 0x3836, 0x3072, 0x3836, 0x41ED, 0x3836, 0x5360, 0x3836, 0x64CA, 0x3836, 0x7627, 0x3836, 0x877C, 0x3836, 0x98C8, 0x3836, 0xAA07, 0x3836, 0xBB40, 0x3836, 0xCC6B, 0x3836, 0xDD8E, 0x3836, 0xEEA6, 0x3836, 0xFFB6, 0x3837, 0x10BD, 0x3837, 0x21B7, 0x3837, 0x32AB, 0x3837, 0x4392, 0x3837, 0x5473, 0x3837, 0x6549, 0x3837, 0x7614, 0x3837, 0x86D7, 0x3837, 0x9792, 0x3837, 0xA841, 0x3837, 0xB8E9, 0x3837, 0xC988, 0x3837, 0xDA1C, 0x3837, 0xEAA8, 0x3837, 0xFB29, 0x3838, 0x0BA1, 0x3838, 0x1C12, 0x3838, 0x2C7A, 0x3838, 0x3CD7, 0x3838, 0x4D2F, 0x3838, 0x5D7B, 0x3838, 0x6DBD, 0x3838, 0x7DF9, 0x3838, 0x8E2A, 0x3838, 0x9E53, 0x3838, 0xAE74, 0x3838, 0xBE8C, 0x3838, 0xCE9C, 0x3838, 0xDEA2, 0x3838, 0xEEA1, 0x3838, 0xFE96, 0x3839, 0x0E82, 0x3839, 0x1E67, 0x3839, 0x2E43, 0x3839, 0x3E19, 0x3839, 0x4DE4, 0x3839, 0x5DA8, 0x3839, 0x6D63, 0x3839, 0x7D15, 0x3839, 0x8CC0, 0x3839, 0x9C62, 0x3839, 0xABFC, 0x3839, 0xBB8E, 0x3839, 0xCB17, 0x3839, 0xDA98, 0x3839, 0xEA14, 0x3839, 0xF985, 0x383A, 0x08F0, 0x383A, 0x1850, 0x383A, 0x27AB, 0x383A, 0x36FE, 0x383A, 0x4648, 0x383A, 0x558A, 0x383A, 0x64C6, 0x383A, 0x73F8, 0x383A, 0x8324, 0x383A, 0x9248, 0x383A, 0xA166, 0x383A, 0xB079, 0x383A, 0xBF87, 0x383A, 0xCE8D, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36C1, 0xC874, 0x3719, 0x91D6, 0x3741, 0xC897, 0x3760, 0xF9D6, 0x377A, 0x7647, 0x3788, 0x0153, 0x3791, 0x568D, 0x3799, 0x9207, 0x37A0, 0xEF37, 0x37A7, 0x9893, 0x37AD, 0xAD70, 0x37B3, 0x45A3, 0x37B8, 0x739F, 0x37BD, 0x461A, 0x37C1, 0xC8E4, 0x37C6, 0x05A1, 0x37CA, 0x045E, 0x37CD, 0xCBC4, 0x37D1, 0x618F, 0x37D4, 0xCA8D, 0x37D8, 0x0AF0, 0x37DB, 0x264D, 0x37DE, 0x1FD2, 0x37E0, 0xFA3F, 0x37E3, 0xB805, 0x37E6, 0x5B4C, 0x37E8, 0xE607, 0x37EB, 0x59E9, 0x37ED, 0xB882, 0x37F0, 0x0333, 0x37F2, 0x3B4C, 0x37F4, 0x61E4, 0x37F6, 0x7808, 0x37F8, 0x7EB7, 0x37FA, 0x76C6, 0x37FC, 0x6105, 0x37FE, 0x3E31, 0x3800, 0x077C, 0x3800, 0xE9FE, 0x3801, 0xC6E7, 0x3802, 0x9E7D, 0x3803, 0x7102, 0x3804, 0x3EAF, 0x3805, 0x07BE, 0x3805, 0xCC60, 0x3806, 0x8CC7, 0x3807, 0x4922, 0x3808, 0x019A, 0x3808, 0xB659, 0x3809, 0x6781, 0x380A, 0x153C, 0x380A, 0xBFA6, 0x380B, 0x66DF, 0x380C, 0x0B09, 0x380C, 0xAC3D, 0x380D, 0x4A98, 0x380D, 0xE630, 0x380E, 0x7F1F, 0x380F, 0x157D, 0x380F, 0xA95D, 0x3810, 0x3AD6, 0x3810, 0xC9FD, 0x3811, 0x56E2, 0x3811, 0xE197, 0x3812, 0x6A2E, 0x3812, 0xF0B8, 0x3813, 0x7543, 0x3813, 0xF7DF, 0x3814, 0x7898, 0x3814, 0xF77F, 0x3815, 0x74A2, 0x3815, 0xF007, 0x3816, 0x69C2, 0x3816, 0xE1D8, 0x3817, 0x5857, 0x3817, 0xCD4B, 0x3818, 0x40BB, 0x3818, 0xB2B3, 0x3819, 0x233D, 0x3819, 0x9261, 0x381A, 0x0026, 0x381A, 0x6C99, 0x381A, 0xD7BF, 0x381B, 0x419E, 0x381B, 0xAA43, 0x381C, 0x11B0, 0x381C, 0x77F0, 0x381C, 0xDD08, 0x381D, 0x40FC, 0x381D, 0xA3D8, 0x381E, 0x059F, 0x381E, 0x6658, 0x381E, 0xC609, 0x381F, 0x24B5, 0x381F, 0x8264, 0x381F, 0xDF19, 0x3820, 0x3ADC, 0x3820, 0x95B0, 0x3820, 0xEF9A, 0x3821, 0x48A0, 0x3821, 0xA0C5, 0x3821, 0xF80E, 0x3822, 0x4E7E, 0x3822, 0xA41C, 0x3822, 0xF8E7, 0x3823, 0x4CEA, 0x3823, 0xA024, 0x3823, 0xF298, 0x3824, 0x444E, 0x3824, 0x9544, 0x3824, 0xE581, 0x3825, 0x3507, 0x3825, 0x83D9, 0x3825, 0xD1FC, 0x3826, 0x1F72, 0x3826, 0x6C40, 0x3826, 0xB864, 0x3827, 0x03E2, 0x3827, 0x4EC2, 0x3827, 0x98FF, 0x3827, 0xE2A2, 0x3828, 0x2BAB, 0x3828, 0x741D, 0x3828, 0xBBF8, 0x3829, 0x0341, 0x3829, 0x49FB, 0x3829, 0x9026, 0x3829, 0xD5C5, 0x382A, 0x1ADB, 0x382A, 0x5F6A, 0x382A, 0xA375, 0x382A, 0xE6F9, 0x382B, 0x29FD, 0x382B, 0x6C81, 0x382B, 0xAE87, 0x382B, 0xF015, 0x382C, 0x3124, 0x382C, 0x71BC, 0x382C, 0xB1DF, 0x382C, 0xF18E, 0x382D, 0x30C7, 0x382D, 0x6F8F, 0x382D, 0xADE9, 0x382D, 0xEBD2, 0x382E, 0x294E, 0x382E, 0x6661, 0x382E, 0xA309, 0x382E, 0xDF48, 0x382F, 0x1B1F, 0x382F, 0x5693, 0x382F, 0x919F, 0x382F, 0xCC4A, 0x3830, 0x0692, 0x3830, 0x407A, 0x3830, 0x7A02, 0x3830, 0xB330, 0x3830, 0xEBFD, 0x3831, 0x246F, 0x3831, 0x5C87, 0x3831, 0x9444, 0x3831, 0xCBA9, 0x3832, 0x02B8, 0x3832, 0x3970, 0x3832, 0x6FD3, 0x3832, 0xA5E3, 0x3832, 0xDB9E, 0x3833, 0x1106, 0x3833, 0x461F, 0x3833, 0x7AE8, 0x3833, 0xAF61, 0x3833, 0xE38B, 0x3834, 0x176A, 0x3834, 0x4AFA, 0x3834, 0x7E3F, 0x3834, 0xB13A, 0x3834, 0xE3E8, 0x3835, 0x1652, 0x3835, 0x4871, 0x3835, 0x7A46, 0x3835, 0xABD9, 0x3835, 0xDD22, 0x3836, 0x0E29, 0x3836, 0x3EEB, 0x3836, 0x6F69, 0x3836, 0x9FA2, 0x3836, 0xCF9B, 0x3836, 0xFF53, 0x3837, 0x2EC8, 0x3837, 0x5DFF, 0x3837, 0x8CF6, 0x3837, 0xBBAE, 0x3837, 0xEA27, 0x3838, 0x1863, 0x3838, 0x4663, 0x3838, 0x7426, 0x3838, 0xA1B0, 0x3838, 0xCEFA, 0x3838, 0xFC0D, 0x3839, 0x28E7, 0x3839, 0x5584, 0x3839, 0x81EA, 0x3839, 0xAE19, 0x3839, 0xDA0F, 0x383A, 0x05D0, 0x383A, 0x315B, 0x383A, 0x5CAB, 0x383A, 0x87CA, 0x383A, 0xB2B2, 0x383A, 0xDD66, 0x383B, 0x07E9, 0x383B, 0x3234, 0x383B, 0x5C4E, 0x383B, 0x8637, 0x383B, 0xAFEB, 0x383B, 0xD970, 0x383C, 0x02C2, 0x383C, 0x2BE4, 0x383C, 0x54D8, 0x383C, 0x7D9A, 0x383C, 0xA62B, 0x383C, 0xCE90, 0x383C, 0xF6C6, 0x383D, 0x1ECE, 0x383D, 0x46A9, 0x383D, 0x6E53, 0x383D, 0x95D4, 0x383D, 0xBD29, 0x383D, 0xE44F, 0x383E, 0x0B4C, 0x383E, 0x321D, 0x383E, 0x58C1, 0x383E, 0x7F3D, 0x383E, 0xA58D, 0x383E, 0xCBB3, 0x383E, 0xF1B0, 0x383F, 0x1784, 0x383F, 0x3D32, 0x383F, 0x62B3, 0x383F, 0x880E, 0x383F, 0xAD43, 0x383F, 0xD24E, 0x383F, 0xF733, 0x3840, 0x1BF1, 0x3840, 0x4089, 0x3840, 0x64FA, 0x3840, 0x8945, 0x3840, 0xAD6A, 0x3840, 0xD16A, 0x3840, 0xF547, 0x3841, 0x18FE, 0x3841, 0x3C90, 0x3841, 0x5FFF, 0x3841, 0x834A, 0x3841, 0xA672, 0x3841, 0xC976, 0x3841, 0xEC56, 0x3842, 0x0F15, 0x3842, 0x31B0, 0x3842, 0x542A, 0x3842, 0x7684, 0x3842, 0x98B9, 0x3842, 0xBACE, 0x3842, 0xDCC2, 0x3842, 0xFE97, 0x3843, 0x2049, 0x3843, 0x41D9, 0x3843, 0x634C, 0x3843, 0x84A0, 0x3843, 0xA5D1, 0x3843, 0xC6E6, 0x3843, 0xE7DA, 0x3844, 0x08AD, 0x3844, 0x2964, 0x3844, 0x49FB, 0x3844, 0x6A76, 0x3844, 0x8AD0, 0x3844, 0xAB0E, 0x3844, 0xCB2C, 0x3844, 0xEB2E, 0x3845, 0x0B15, 0x3845, 0x2ADD, 0x3845, 0x4A87, 0x3845, 0x6A16, 0x3845, 0x8989, 0x3845, 0xA8E1, 0x3845, 0xC81A, 0x3845, 0xE738, 0x3846, 0x063B, 0x3846, 0x2522, 0x3846, 0x43F0, 0x3846, 0x62A0, 0x3846, 0x8137, 0x3846, 0x9FB0, 0x3846, 0xBE13, 0x3846, 0xDC58, 0x3846, 0xFA87, 0x3847, 0x1897, 0x3847, 0x3692, 0x3847, 0x5471, 0x3847, 0x7238, 0x3847, 0x8FE2, 0x3847, 0xAD77, 0x3847, 0xCAF1, 0x3847, 0xE851, 0x3848, 0x059C, 0x3848, 0x22CB, 0x3848, 0x3FE4, 0x3848, 0x5CE5, 0x3848, 0x79CD, 0x3848, 0x969C, 0x3848, 0xB355, 0x3848, 0xCFF8, 0x3848, 0xEC7F, 0x3849, 0x08F3, 0x3849, 0x254F, 0x3849, 0x4192, 0x3849, 0x5DC1, 0x3849, 0x79D8, 0x3849, 0x95D9, 0x3849, 0xB1C1, 0x3849, 0xCD96, 0x3849, 0xE955, 0x384A, 0x04FB, 0x384A, 0x208D, 0x384A, 0x3C0A, 0x384A, 0x5771, 0x384A, 0x72C2, 0x384A, 0x8DFD, 0x384A, 0xA925, 0x384A, 0xC436, 0x384A, 0xDF35, 0x384A, 0xFA1D, 0x384B, 0x14F0, 0x384B, 0x2FAF, 0x384B, 0x4A5B, 0x384B, 0x64F1, 0x384B, 0x7F71, 0x384B, 0x99E0, 0x384B, 0xB43A, 0x384B, 0xCE80, 0x384B, 0xE8B3, 0x384C, 0x02D3, 0x384C, 0x1CDF, 0x384C, 0x36D6, 0x384C, 0x50BC, 0x384C, 0x6A8F, 0x384C, 0x844C, 0x384C, 0x9DF8, 0x384C, 0xB791, 0x384C, 0xD11A, 0x384C, 0xEA8C, 0x384D, 0x03EE, 0x384D, 0x1D3D, 0x384D, 0x3679, 0x384D, 0x4FA4, 0x384D, 0x68BC, 0x384D, 0x81C3, 0x384D, 0x9AB8, 0x384D, 0xB39B, 0x384D, 0xCC6C, 0x384D, 0xE52C, 0x384D, 0xFDDB, 0x384E, 0x1677, 0x384E, 0x2F03, 0x384E, 0x477B, 0x384E, 0x5FE6, 0x384E, 0x783E, 0x384E, 0x9085, 0x384E, 0xA8BB, 0x384E, 0xC0E1, 0x384E, 0xD8F7, 0x384E, 0xF0FC, 0x384F, 0x08F0, 0x384F, 0x20D4, 0x384F, 0x38A8, 0x384F, 0x506B, 0x384F, 0x681D, 0x384F, 0x7FBF, 0x384F, 0x9754, 0x384F, 0xAED8, 0x384F, 0xC64B, 0x384F, 0xDDAE, 0x384F, 0xF503, 0x3850, 0x0C47, 0x3850, 0x237B, 0x3850, 0x3AA2, 0x3850, 0x51B8, 0x3850, 0x68C0, 0x3850, 0x7FB8, 0x3850, 0x96A1, 0x3850, 0xAD7B, 0x3850, 0xC446, 0x3850, 0xDB04, 0x3850, 0xF1B2, 0x3851, 0x084F, 0x3851, 0x1EE1, 0x3851, 0x3562, 0x3851, 0x4BD6, 0x3851, 0x623C, 0x3851, 0x7891, 0x3851, 0x8ED9, 0x3851, 0xA513, 0x3851, 0xBB3F, 0x3851, 0xD15E, 0x3851, 0xE76E, 0x3851, 0xFD71, 0x3852, 0x1367, 0x3852, 0x294B, 0x3852, 0x3F25, 0x3852, 0x54F1, 0x3852, 0x6AAF, 0x3852, 0x8060, 0x3852, 0x9603, 0x3852, 0xAB98, 0x3852, 0xC11F, 0x3852, 0xD69B, 0x3852, 0xEC07, 0x3853, 0x0168, 0x3853, 0x16BE, 0x3853, 0x2C03, 0x3853, 0x413E, 0x3853, 0x566A, 0x3853, 0x6B89, 0x3853, 0x809D, 0x3853, 0x95A6, 0x3853, 0xAA9E, 0x3853, 0xBF8B, 0x3853, 0xD46E, 0x3853, 0xE942, 0x3853, 0xFE09, 0x3854, 0x12C5, 0x3854, 0x2776, 0x3854, 0x3C19, 0x3854, 0x50AF, 0x3854, 0x653C, 0x3854, 0x79BB, 0x3854, 0x8E2D, 0x3854, 0xA294, 0x3854, 0xB6EF, 0x3854, 0xCB40, 0x3854, 0xDF83, 0x3854, 0xF3BB, 0x3855, 0x07E8, 0x3855, 0x1C07, 0x3855, 0x301B, 0x3855, 0x4427, 0x3855, 0x5825, 0x3855, 0x6C16, 0x3855, 0x7FFE, 0x3855, 0x93DB, 0x3855, 0xA7AB, 0x3855, 0xBB6F, 0x3855, 0xCF2C, 0x3855, 0xE2DA, 0x3855, 0xF67E, 0x3856, 0x0A16, 0x3856, 0x1DA6, 0x3856, 0x3129, 0x3856, 0x44A1, 0x3856, 0x5810, 0x3856, 0x6B71, 0x3856, 0x7ECB, 0x3856, 0x9216, 0x3856, 0xA55A, 0x3856, 0xB892, 0x3856, 0xCBBF, 0x3856, 0xDEE4, 0x3856, 0xF1FC, 0x3857, 0x050B, 0x3857, 0x180F, 0x3857, 0x2B08, 0x3857, 0x3DF6, 0x3857, 0x50DC, 0x3857, 0x63B7, 0x3857, 0x7687, 0x3857, 0x894E, 0x3857, 0x9C0B, 0x3857, 0xAEBC, 0x3857, 0xC166, 0x3857, 0xD404, 0x3857, 0xE69A, 0x3857, 0xF923, 0x3858, 0x0BA6, 0x3858, 0x1E1D, 0x3858, 0x308A, 0x3858, 0x42EC, 0x3858, 0x5549, 0x3858, 0x6797, 0x3858, 0x79DE, 0x3858, 0x8C1C, 0x3858, 0x9E4F, 0x3858, 0xB07A, 0x3858, 0xC29D, 0x3858, 0xD4B4, 0x3858, 0xE6C1, 0x3858, 0xF8C6, 0x3859, 0x0AC2, 0x3859, 0x1CB6, 0x3859, 0x2E9F, 0x3859, 0x407F, 0x3859, 0x5255, 0x3859, 0x6423, 0x3859, 0x75E8, 0x3859, 0x87A5, 0x3859, 0x9957, 0x3859, 0xAB01, 0x3859, 0xBCA2, 0x3859, 0xCE3B, 0x3859, 0xDFCA, 0x3859, 0xF150, 0xBF80, 0x0000, 0x0000, 0x0000, 0x36E8, 0x8A61, 0x3738, 0x48D3, 0x3768, 0x8A91, 0x3786, 0xFC78, 0x3796, 0x4729, 0x37A3, 0x34FE, 0x37AE, 0x6819, 0x37B8, 0x490F, 0x37C1, 0x1F4E, 0x37C9, 0x1DC0, 0x37D0, 0x6A04, 0x37D7, 0x20AB, 0x37DD, 0x57DE, 0x37E3, 0x213F, 0x37E8, 0x8AFF, 0x37ED, 0xA0B7, 0x37F2, 0x6BFB, 0x37F6, 0xF4E3, 0x37FB, 0x423F, 0x37FF, 0x59DA, 0x3801, 0xA05B, 0x3803, 0x7D95, 0x3805, 0x467D, 0x3806, 0xFCC0, 0x3808, 0xA1D1, 0x380A, 0x36FE, 0x380B, 0xBD6D, 0x380D, 0x3629, 0x380E, 0xA220, 0x3810, 0x0227, 0x3811, 0x5700, 0x3812, 0xA15C, 0x3813, 0xE1DC, 0x3815, 0x1910, 0x3816, 0x4781, 0x3817, 0x6DA8, 0x3818, 0x8BF8, 0x3819, 0xA2D5, 0x381A, 0xB2A6, 0x381B, 0xBBBE, 0x381C, 0xBE74, 0x381D, 0xBB12, 0x381E, 0xB1E2, 0x381F, 0xA327, 0x3820, 0x8F1E, 0x3821, 0x7601, 0x3822, 0x5807, 0x3823, 0x3566, 0x3824, 0x0E49, 0x3824, 0xE2E3, 0x3825, 0xB35D, 0x3826, 0x7FDB, 0x3827, 0x488A, 0x3828, 0x0D87, 0x3828, 0xCEF9, 0x3829, 0x8CFE, 0x382A, 0x47B8, 0x382A, 0xFF3E, 0x382B, 0xB3AF, 0x382C, 0x6524, 0x382D, 0x13B6, 0x382D, 0xBF7D, 0x382E, 0x688F, 0x382F, 0x0F02, 0x382F, 0xB2EB, 0x3830, 0x545D, 0x3830, 0xF36B, 0x3831, 0x9027, 0x3832, 0x2AA1, 0x3832, 0xC2EB, 0x3833, 0x5912, 0x3833, 0xED27, 0x3834, 0x7F39, 0x3835, 0x0F54, 0x3835, 0x9D89, 0x3836, 0x29E0, 0x3836, 0xB469, 0x3837, 0x3D2C, 0x3837, 0xC437, 0x3838, 0x4996, 0x3838, 0xCD50, 0x3839, 0x4F73, 0x3839, 0xD008, 0x383A, 0x4F13, 0x383A, 0xCCA6, 0x383B, 0x48C3, 0x383B, 0xC376, 0x383C, 0x3CC5, 0x383C, 0xB4BB, 0x383D, 0x2B5B, 0x383D, 0xA0B2, 0x383E, 0x14C1, 0x383E, 0x8795, 0x383E, 0xF932, 0x383F, 0x699D, 0x383F, 0xD8DD, 0x3840, 0x46FA, 0x3840, 0xB3F9, 0x3841, 0x1FE0, 0x3841, 0x8AB3, 0x3841, 0xF479, 0x3842, 0x5D38, 0x3842, 0xC4F4, 0x3843, 0x2BB0, 0x3843, 0x9175, 0x3843, 0xF642, 0x3844, 0x5A21, 0x3844, 0xBD16, 0x3845, 0x1F21, 0x3845, 0x8048, 0x3845, 0xE093, 0x3846, 0x4002, 0x3846, 0x9E98, 0x3846, 0xFC5D, 0x3847, 0x5951, 0x3847, 0xB577, 0x3848, 0x10D7, 0x3848, 0x6B71, 0x3848, 0xC548, 0x3849, 0x1E5F, 0x3849, 0x76BE, 0x3849, 0xCE61, 0x384A, 0x254F, 0x384A, 0x7B8B, 0x384A, 0xD116, 0x384B, 0x25F7, 0x384B, 0x7A2B, 0x384B, 0xCDB7, 0x384C, 0x209F, 0x384C, 0x72E4, 0x384C, 0xC487, 0x384D, 0x1590, 0x384D, 0x65FA, 0x384D, 0xB5CC, 0x384E, 0x0507, 0x384E, 0x53AE, 0x384E, 0xA1C3, 0x384E, 0xEF49, 0x384F, 0x3C3E, 0x384F, 0x88A9, 0x384F, 0xD488, 0x3850, 0x1FE0, 0x3850, 0x6AAF, 0x3850, 0xB4FC, 0x3850, 0xFEC6, 0x3851, 0x480E, 0x3851, 0x90D8, 0x3851, 0xD924, 0x3852, 0x20F4, 0x3852, 0x684A, 0x3852, 0xAF28, 0x3852, 0xF58D, 0x3853, 0x3B7F, 0x3853, 0x80FD, 0x3853, 0xC608, 0x3854, 0x0AA2, 0x3854, 0x4ECB, 0x3854, 0x9286, 0x3854, 0xD5D6, 0x3855, 0x18BB, 0x3855, 0x5B35, 0x3855, 0x9D46, 0x3855, 0xDEF2, 0x3856, 0x2035, 0x3856, 0x6112, 0x3856, 0xA18F, 0x3856, 0xE1A7, 0x3857, 0x215E, 0x3857, 0x60B5, 0x3857, 0x9FAC, 0x3857, 0xDE48, 0x3858, 0x1C84, 0x3858, 0x5A65, 0x3858, 0x97EC, 0x3858, 0xD517, 0x3859, 0x11EB, 0x3859, 0x4E67, 0x3859, 0x8A8E, 0x3859, 0xC65C, 0x385A, 0x01D9, 0x385A, 0x3CFD, 0x385A, 0x77D2, 0x385A, 0xB254, 0x385A, 0xEC86, 0x385B, 0x2666, 0x385B, 0x5FF6, 0x385B, 0x9939, 0x385B, 0xD22D, 0x385C, 0x0AD3, 0x385C, 0x4330, 0x385C, 0x7B3F, 0x385C, 0xB307, 0x385C, 0xEA82, 0x385D, 0x21B6, 0x385D, 0x589F, 0x385D, 0x8F41, 0x385D, 0xC59E, 0x385D, 0xFBB3, 0x385E, 0x3184, 0x385E, 0x6710, 0x385E, 0x9C58, 0x385E, 0xD15D, 0x385F, 0x061E, 0x385F, 0x3A9F, 0x385F, 0x6EDC, 0x385F, 0xA2DA, 0x385F, 0xD698, 0x3860, 0x0A15, 0x3860, 0x3D55, 0x3860, 0x7055, 0x3860, 0xA319, 0x3860, 0xD59E, 0x3861, 0x07E7, 0x3861, 0x39F6, 0x3861, 0x6BC5, 0x3861, 0x9D5E, 0x3861, 0xCEBA, 0x3861, 0xFFDD, 0x3862, 0x30C5, 0x3862, 0x6177, 0x3862, 0x91EF, 0x3862, 0xC230, 0x3862, 0xF23A, 0x3863, 0x220A, 0x3863, 0x51A6, 0x3863, 0x810E, 0x3863, 0xB03F, 0x3863, 0xDF3C, 0x3864, 0x0E01, 0x3864, 0x3C96, 0x3864, 0x6AF6, 0x3864, 0x9924, 0x3864, 0xC71E, 0x3864, 0xF4E7, 0x3865, 0x227F, 0x3865, 0x4FE4, 0x3865, 0x7D19, 0x3865, 0xAA1C, 0x3865, 0xD6F0, 0x3866, 0x0392, 0x3866, 0x3006, 0x3866, 0x5C4E, 0x3866, 0x8865, 0x3866, 0xB44D, 0x3866, 0xE008, 0x3867, 0x0B98, 0x3867, 0x36F7, 0x3867, 0x622C, 0x3867, 0x8D35, 0x3867, 0xB80F, 0x3867, 0xE2C0, 0x3868, 0x0D45, 0x3868, 0x379F, 0x3868, 0x61CF, 0x3868, 0x8BD3, 0x3868, 0xB5AD, 0x3868, 0xDF5F, 0x3869, 0x08E7, 0x3869, 0x3246, 0x3869, 0x5B7F, 0x3869, 0x848B, 0x3869, 0xAD71, 0x3869, 0xD631, 0x3869, 0xFEC7, 0x386A, 0x2737, 0x386A, 0x4F81, 0x386A, 0x77A4, 0x386A, 0x9FA0, 0x386A, 0xC776, 0x386A, 0xEF25, 0x386B, 0x16B1, 0x386B, 0x3E19, 0x386B, 0x6558, 0x386B, 0x8C76, 0x386B, 0xB36D, 0x386B, 0xDA41, 0x386C, 0x00F3, 0x386C, 0x277F, 0x386C, 0x4DE8, 0x386C, 0x742F, 0x386C, 0x9A53, 0x386C, 0xC053, 0x386C, 0xE632, 0x386D, 0x0BF0, 0x386D, 0x318A, 0x386D, 0x5703, 0x386D, 0x7C5B, 0x386D, 0xA190, 0x386D, 0xC6A6, 0x386D, 0xEB9C, 0x386E, 0x1070, 0x386E, 0x3526, 0x386E, 0x59B8, 0x386E, 0x7E2F, 0x386E, 0xA282, 0x386E, 0xC6B7, 0x386E, 0xEACE, 0x386F, 0x0EC6, 0x386F, 0x32A0, 0x386F, 0x565A, 0x386F, 0x79F5, 0x386F, 0x9D74, 0x386F, 0xC0D2, 0x386F, 0xE415, 0x3870, 0x073A, 0x3870, 0x2A41, 0x3870, 0x4D2C, 0x3870, 0x6FF9, 0x3870, 0x92A7, 0x3870, 0xB53D, 0x3870, 0xD7B2, 0x3870, 0xFA0E, 0x3871, 0x1C4E, 0x3871, 0x3E71, 0x3871, 0x6078, 0x3871, 0x8263, 0x3871, 0xA433, 0x3871, 0xC5EA, 0x3871, 0xE783, 0x3872, 0x0903, 0x3872, 0x2A68, 0x3872, 0x4BB1, 0x3872, 0x6CE2, 0x3872, 0x8DF7, 0x3872, 0xAEF3, 0x3872, 0xCFD6, 0x3872, 0xF09E, 0x3873, 0x114E, 0x3873, 0x31E2, 0x3873, 0x525D, 0x3873, 0x72C2, 0x3873, 0x930B, 0x3873, 0xB33C, 0x3873, 0xD354, 0x3873, 0xF354, 0x3874, 0x133D, 0x3874, 0x330B, 0x3874, 0x52C3, 0x3874, 0x7262, 0x3874, 0x91EB, 0x3874, 0xB15B, 0x3874, 0xD0B3, 0x3874, 0xEFF5, 0x3875, 0x0F1E, 0x3875, 0x2E31, 0x3875, 0x4D2E, 0x3875, 0x6C12, 0x3875, 0x8AE3, 0x3875, 0xA998, 0x3875, 0xC83B, 0x3875, 0xE6C7, 0x3876, 0x053B, 0x3876, 0x239B, 0x3876, 0x41E2, 0x3876, 0x6017, 0x3876, 0x7E35, 0x3876, 0x9C3D, 0x3876, 0xBA30, 0x3876, 0xD80C, 0x3876, 0xF5D2, 0x3877, 0x1386, 0x3877, 0x3125, 0x3877, 0x4EAD, 0x3877, 0x6C23, 0x3877, 0x8981, 0x3877, 0xA6CC, 0x3877, 0xC403, 0x3877, 0xE127, 0x3877, 0xFE36, 0x3878, 0x1B2E, 0x3878, 0x3816, 0x3878, 0x54E7, 0x3878, 0x71A6, 0x3878, 0x8E51, 0x3878, 0xAAE9, 0x3878, 0xC76B, 0x3878, 0xE3DC, 0x3879, 0x003B, 0x3879, 0x1C86, 0x3879, 0x38BB, 0x3879, 0x54DF, 0x3879, 0x70F1, 0x3879, 0x8CF2, 0x3879, 0xA8DC, 0x3879, 0xC4B7, 0x3879, 0xE07E, 0x3879, 0xFC32, 0x387A, 0x17D5, 0x387A, 0x3365, 0x387A, 0x4EE2, 0x387A, 0x6A4E, 0x387A, 0x85AA, 0x387A, 0xA0F3, 0x387A, 0xBC28, 0x387A, 0xD750, 0x387A, 0xF262, 0x387B, 0x0D66, 0x387B, 0x2856, 0x387B, 0x4336, 0x387B, 0x5E03, 0x387B, 0x78C3, 0x387B, 0x936F, 0x387B, 0xAE0A, 0x387B, 0xC895, 0x387B, 0xE310, 0x387B, 0xFD77, 0x387C, 0x17D0, 0x387C, 0x3219, 0x387C, 0x4C4F, 0x387C, 0x6677, 0x387C, 0x808F, 0x387C, 0x9A96, 0x387C, 0xB48C, 0x387C, 0xCE72, 0x387C, 0xE84B, 0x387D, 0x0210, 0x387D, 0x1BC7, 0x387D, 0x3571, 0x387D, 0x4F07, 0x387D, 0x688F, 0x387D, 0x8208, 0x387D, 0x9B72, 0x387D, 0xB4CC, 0x387D, 0xCE15, 0x387D, 0xE751, 0x387E, 0x007C, 0x387E, 0x1999, 0x387E, 0x32A9, 0x387E, 0x4BA8, 0x387E, 0x6497, 0x387E, 0x7D7A, 0x387E, 0x964B, 0x387E, 0xAF10, 0x387E, 0xC7C5, 0x387E, 0xE06C, 0x387E, 0xF906, 0x387F, 0x118F, 0x387F, 0x2A0A, 0x387F, 0x4278, 0x387F, 0x5AD7, 0x387F, 0x7329, 0x387F, 0x8B6E, 0x387F, 0xA3A1, 0x387F, 0xBBCA, 0x387F, 0xD3E2, 0x387F, 0xEBED, 0x3880, 0x01F6, 0x3880, 0x0DEE, 0x3880, 0x19E0, 0x3880, 0x25C9, 0x3880, 0x31AE, 0x3880, 0x3D8A, 0x3880, 0x4960, 0x3880, 0x5530, 0x3880, 0x60F9, 0x3880, 0x6CBC, 0x3880, 0x7877, 0x3880, 0x842D, 0x3880, 0x8FDB, 0x3880, 0x9B83, 0x3880, 0xA725, 0x3880, 0xB2C1, 0x3880, 0xBE55, 0x3880, 0xC9E4, 0x3880, 0xD56D, 0x3880, 0xE0EE, 0x3880, 0xEC6A, 0x3880, 0xF7DF, 0x3881, 0x034E, 0x3881, 0x0EB7, 0x3881, 0x1A18, 0x3881, 0x2576, 0x3881, 0x30CB, 0x3881, 0x3C1B, 0x3881, 0x4766, 0x3881, 0x52AA, 0x3881, 0x5DE8, 0x3881, 0x691F, 0x3881, 0x7452, 0x3881, 0x7F7D, 0x3881, 0x8AA4, 0x3881, 0x95C4, 0x3881, 0xA0DE, 0x3881, 0xABF2, 0x3881, 0xB702, 0x3881, 0xC20A, 0x3881, 0xCD0D, 0x3881, 0xD80A, 0x3881, 0xE301, 0x3881, 0xEDF3, 0x3881, 0xF8DF, 0x3882, 0x03C5, 0x3882, 0x0EA7, 0x3882, 0x1982, 0x3882, 0x2456, 0x3882, 0x2F26, 0x3882, 0x39F0, 0x3882, 0x44B5, 0x3882, 0x4F75, 0x3882, 0x5A2E, 0x3882, 0x64E2, 0x3882, 0x6F91, 0x3882, 0x7A3B, 0x3882, 0x84DF, 0x3882, 0x8F7D, 0x3882, 0x9A16, 0x3882, 0xA4AA, 0x3882, 0xAF39, 0x3882, 0xB9C2, 0x3882, 0xC446, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3904, 0xCF18, 0x3952, 0x814E, 0x3984, 0xD142, 0x399A, 0x3308, 0x39AB, 0xAB9C, 0x39BA, 0x713C, 0x39C7, 0x3D1D, 0x39D2, 0x86B3, 0x39DC, 0x9F96, 0x39E5, 0xC1F1, 0x39EE, 0x18BA, 0x39F5, 0xC48F, 0x39FC, 0xDED2, 0x3A01, 0xBDCD, 0x3A04, 0xD58F, 0x3A07, 0xBD4E, 0x3A0A, 0x7A8A, 0x3A0D, 0x11DA, 0x3A0F, 0x8725, 0x3A11, 0xDDBA, 0x3A14, 0x1878, 0x3A16, 0x39D6, 0x3A18, 0x43FF, 0x3A1A, 0x38D8, 0x3A1C, 0x1A0A, 0x3A1D, 0xE916, 0x3A1F, 0xA749, 0x3A21, 0x55D6, 0x3A22, 0xF5C8, 0x3A24, 0x881A, 0x3A26, 0x0DA4, 0x3A27, 0x8732, 0x3A28, 0xF57B, 0x3A2A, 0x5927, 0x3A2B, 0xB2CD, 0x3A2D, 0x02FC, 0x3A2E, 0x4A33, 0x3A2F, 0x88EC, 0x3A30, 0xBF93, 0x3A31, 0xEE8D, 0x3A33, 0x163C, 0x3A34, 0x36F4, 0x3A35, 0x510C, 0x3A36, 0x64CA, 0x3A37, 0x727B, 0x3A38, 0x7A60, 0x3A39, 0x7CB5, 0x3A3A, 0x79B7, 0x3A3B, 0x719E, 0x3A3C, 0x649B, 0x3A3D, 0x52E0, 0x3A3E, 0x3C9D, 0x3A3F, 0x21FB, 0x3A40, 0x0323, 0x3A40, 0xE03D, 0x3A41, 0xB96C, 0x3A42, 0x8ED6, 0x3A43, 0x609B, 0x3A44, 0x2ED8, 0x3A44, 0xF9AD, 0x3A45, 0xC136, 0x3A46, 0x858D, 0x3A47, 0x46CC, 0x3A48, 0x050D, 0x3A48, 0xC067, 0x3A49, 0x78EF, 0x3A4A, 0x2EBB, 0x3A4A, 0xE1E1, 0x3A4B, 0x9273, 0x3A4C, 0x4084, 0x3A4C, 0xEC26, 0x3A4D, 0x9569, 0x3A4E, 0x3C5E, 0x3A4E, 0xE116, 0x3A4F, 0x83A0, 0x3A50, 0x240B, 0x3A50, 0xC263, 0x3A51, 0x5EB7, 0x3A51, 0xF914, 0x3A52, 0x9186, 0x3A53, 0x2819, 0x3A53, 0xBCD8, 0x3A54, 0x4FD0, 0x3A54, 0xE10B, 0x3A55, 0x7093, 0x3A55, 0xFE73, 0x3A56, 0x8AB3, 0x3A57, 0x155E, 0x3A57, 0x9E7C, 0x3A58, 0x2615, 0x3A58, 0xAC35, 0x3A59, 0x30E0, 0x3A59, 0xB420, 0x3A5A, 0x35FD, 0x3A5A, 0xB67F, 0x3A5B, 0x35AB, 0x3A5B, 0xB389, 0x3A5C, 0x3021, 0x3A5C, 0xAB78, 0x3A5D, 0x2595, 0x3A5D, 0x9E7C, 0x3A5E, 0x1638, 0x3A5E, 0x8CCA, 0x3A5F, 0x023B, 0x3A5F, 0x768E, 0x3A5F, 0xE9CA, 0x3A60, 0x5BF2, 0x3A60, 0xCD0F, 0x3A61, 0x3D23, 0x3A61, 0xAC32, 0x3A62, 0x1A45, 0x3A62, 0x875A, 0x3A62, 0xF37B, 0x3A63, 0x5EAA, 0x3A63, 0xC8EB, 0x3A64, 0x3244, 0x3A64, 0x9AB7, 0x3A65, 0x0247, 0x3A65, 0x68FB, 0x3A65, 0xCED3, 0x3A66, 0x33D6, 0x3A66, 0x9804, 0x3A66, 0xFB64, 0x3A67, 0x5DF8, 0x3A67, 0xBFC2, 0x3A68, 0x20C7, 0x3A68, 0x8108, 0x3A68, 0xE08B, 0x3A69, 0x3F50, 0x3A69, 0x9D5C, 0x3A69, 0xFAB0, 0x3A6A, 0x5750, 0x3A6A, 0xB33E, 0x3A6B, 0x0E7E, 0x3A6B, 0x6910, 0x3A6B, 0xC2F9, 0x3A6C, 0x1C3C, 0x3A6C, 0x74D9, 0x3A6C, 0xCCD3, 0x3A6D, 0x242D, 0x3A6D, 0x7AEA, 0x3A6D, 0xD109, 0x3A6E, 0x2690, 0x3A6E, 0x7B7F, 0x3A6E, 0xCFD9, 0x3A6F, 0x23A0, 0x3A6F, 0x76D4, 0x3A6F, 0xC97A, 0x3A70, 0x1B92, 0x3A70, 0x6D1F, 0x3A70, 0xBE21, 0x3A71, 0x0E9B, 0x3A71, 0x5E91, 0x3A71, 0xAE01, 0x3A71, 0xFCEE, 0x3A72, 0x4B5B, 0x3A72, 0x9948, 0x3A72, 0xE6B6, 0x3A73, 0x33A8, 0x3A73, 0x8021, 0x3A73, 0xCC1F, 0x3A74, 0x17A7, 0x3A74, 0x62B7, 0x3A74, 0xAD54, 0x3A74, 0xF77B, 0x3A75, 0x4133, 0x3A75, 0x8A78, 0x3A75, 0xD34F, 0x3A76, 0x1BB9, 0x3A76, 0x63B4, 0x3A76, 0xAB44, 0x3A76, 0xF26C, 0x3A77, 0x3929, 0x3A77, 0x7F7E, 0x3A77, 0xC56D, 0x3A78, 0x0AF7, 0x3A78, 0x501D, 0x3A78, 0x94DF, 0x3A78, 0xD940, 0x3A79, 0x1D3F, 0x3A79, 0x60DD, 0x3A79, 0xA41F, 0x3A79, 0xE702, 0x3A7A, 0x2987, 0x3A7A, 0x6BB2, 0x3A7A, 0xAD81, 0x3A7A, 0xEEF6, 0x3A7B, 0x3013, 0x3A7B, 0x70D8, 0x3A7B, 0xB144, 0x3A7B, 0xF15D, 0x3A7C, 0x311F, 0x3A7C, 0x708C, 0x3A7C, 0xAFA8, 0x3A7C, 0xEE70, 0x3A7D, 0x2CE5, 0x3A7D, 0x6B0B, 0x3A7D, 0xA8DF, 0x3A7D, 0xE666, 0x3A7E, 0x239D, 0x3A7E, 0x6086, 0x3A7E, 0x9D23, 0x3A7E, 0xD972, 0x3A7F, 0x1578, 0x3A7F, 0x5132, 0x3A7F, 0x8CA0, 0x3A7F, 0xC7C8, 0x3A80, 0x0153, 0x3A80, 0x1E9E, 0x3A80, 0x3BC5, 0x3A80, 0x58CA, 0x3A80, 0x75AA, 0x3A80, 0x9269, 0x3A80, 0xAF05, 0x3A80, 0xCB7F, 0x3A80, 0xE7D8, 0x3A81, 0x040F, 0x3A81, 0x2026, 0x3A81, 0x3C1B, 0x3A81, 0x57F1, 0x3A81, 0x73A5, 0x3A81, 0x8F3A, 0x3A81, 0xAAAF, 0x3A81, 0xC606, 0x3A81, 0xE13D, 0x3A81, 0xFC55, 0x3A82, 0x174F, 0x3A82, 0x322A, 0x3A82, 0x4CE8, 0x3A82, 0x6787, 0x3A82, 0x820A, 0x3A82, 0x9C70, 0x3A82, 0xB6B8, 0x3A82, 0xD0E4, 0x3A82, 0xEAF3, 0x3A83, 0x04E6, 0x3A83, 0x1EBF, 0x3A83, 0x387C, 0x3A83, 0x5216, 0x3A83, 0x6B9F, 0x3A83, 0x8505, 0x3A83, 0x9E52, 0x3A83, 0xB785, 0x3A83, 0xD0A7, 0x3A83, 0xE9A6, 0x3A84, 0x028C, 0x3A84, 0x1B58, 0x3A84, 0x340A, 0x3A84, 0x4CA3, 0x3A84, 0x6521, 0x3A84, 0x7D86, 0x3A84, 0x95D1, 0x3A84, 0xAE0B, 0x3A84, 0xC62B, 0x3A84, 0xDE29, 0x3A84, 0xF616, 0x3A85, 0x0DF1, 0x3A85, 0x25AA, 0x3A85, 0x3D52, 0x3A85, 0x54E0, 0x3A85, 0x6C5D, 0x3A85, 0x83B8, 0x3A85, 0x9B0A, 0x3A85, 0xB23A, 0x3A85, 0xC958, 0x3A85, 0xE05D, 0x3A85, 0xF750, 0x3A86, 0x0E2A, 0x3A86, 0x24F3, 0x3A86, 0x3BA1, 0x3A86, 0x523F, 0x3A86, 0x68C3, 0x3A86, 0x7F36, 0x3A86, 0x958E, 0x3A86, 0xABD6, 0x3A86, 0xC204, 0x3A86, 0xD821, 0x3A86, 0xEE2C, 0x3A87, 0x0427, 0x3A87, 0x1A08, 0x3A87, 0x2FCE, 0x3A87, 0x458D, 0x3A87, 0x5B31, 0x3A87, 0x70C5, 0x3A87, 0x8647, 0x3A87, 0x9BAF, 0x3A87, 0xB106, 0x3A87, 0xC64C, 0x3A87, 0xDB81, 0x3A87, 0xF0A5, 0x3A88, 0x05AF, 0x3A88, 0x1AA7, 0x3A88, 0x2F97, 0x3A88, 0x446E, 0x3A88, 0x5933, 0x3A88, 0x6DDE, 0x3A88, 0x8281, 0x3A88, 0x9713, 0x3A88, 0xAB93, 0x3A88, 0xBFFA, 0x3A88, 0xD458, 0x3A88, 0xE8A5, 0x3A88, 0xFCD8, 0x3A89, 0x1103, 0x3A89, 0x251C, 0x3A89, 0x391C, 0x3A89, 0x4D13, 0x3A89, 0x60F8, 0x3A89, 0x74CD, 0x3A89, 0x8891, 0x3A89, 0x9C43, 0x3A89, 0xAFED, 0x3A89, 0xC37D, 0x3A89, 0xD704, 0x3A89, 0xEA71, 0x3A89, 0xFDD6, 0x3A8A, 0x112A, 0x3A8A, 0x2475, 0x3A8A, 0x37A7, 0x3A8A, 0x4AD0, 0x3A8A, 0x5DE7, 0x3A8A, 0x70EE, 0x3A8A, 0x83E3, 0x3A8A, 0x96D0, 0x3A8A, 0xA9AB, 0x3A8A, 0xBC76, 0x3A8A, 0xCF38, 0x3A8A, 0xE1E8, 0x3A8A, 0xF488, 0x3A8B, 0x0716, 0x3A8B, 0x199B, 0x3A8B, 0x2C10, 0x3A8B, 0x3E73, 0x3A8B, 0x50CE, 0x3A8B, 0x6317, 0x3A8B, 0x7558, 0x3A8B, 0x8788, 0x3A8B, 0x99A7, 0x3A8B, 0xABBD, 0x3A8B, 0xBDC1, 0x3A8B, 0xCFBE, 0x3A8B, 0xE1A9, 0x3A8B, 0xF383, 0x3A8C, 0x0554, 0x3A8C, 0x171C, 0x3A8C, 0x28D4, 0x3A8C, 0x3A7A, 0x3A8C, 0x4C18, 0x3A8C, 0x5DA4, 0x3A8C, 0x6F28, 0x3A8C, 0x809B, 0x3A8C, 0x9205, 0x3A8C, 0xA367, 0x3A8C, 0xB4B7, 0x3A8C, 0xC5F7, 0x3A8C, 0xD72D, 0x3A8C, 0xE85B, 0x3A8C, 0xF978, 0x3A8D, 0x0A8C, 0x3A8D, 0x1B90, 0x3A8D, 0x2C8A, 0x3A8D, 0x3D7C, 0x3A8D, 0x4E5D, 0x3A8D, 0x5F35, 0x3A8D, 0x6FFC, 0x3A8D, 0x80BA, 0x3A8D, 0x9170, 0x3A8D, 0xA215, 0x3A8D, 0xB2B9, 0x3A8D, 0xC344, 0x3A8D, 0xD3CF, 0x3A8D, 0xE449, 0x3A8D, 0xF4B1, 0x3A8E, 0x0519, 0x3A8E, 0x1571, 0x3A8E, 0x25BF, 0x3A8E, 0x35FD, 0x3A8E, 0x4632, 0x3A8E, 0x565E, 0x3A8E, 0x6682, 0x3A8E, 0x769D, 0x3A8E, 0x86A7, 0x3A8E, 0x96A9, 0x3A8E, 0xA6A1, 0x3A8E, 0xB689, 0x3A8E, 0xC668, 0x3A8E, 0xD63F, 0x3A8E, 0xE60C, 0x3A8E, 0xF5D2, 0x3A8F, 0x0586, 0x3A8F, 0x1531, 0x3A8F, 0x24D4, 0x3A8F, 0x346E, 0x3A8F, 0x4400, 0x3A8F, 0x5381, 0x3A8F, 0x6301, 0x3A8F, 0x7271, 0x3A8F, 0x81D7, 0x3A8F, 0x9136, 0x3A8F, 0xA083, 0x3A8F, 0xAFD0, 0x3A8F, 0xBF14, 0x3A8F, 0xCE47, 0x3A8F, 0xDD72, 0x3A8F, 0xEC94, 0x3A8F, 0xFBAE, 0x3A90, 0x0ABE, 0x3A90, 0x19C7, 0x3A90, 0x28BE, 0x3A90, 0x37B5, 0x3A90, 0x46A3, 0x3A90, 0x5581, 0x3A90, 0x6456, 0x3A90, 0x732A, 0x3A90, 0x81EE, 0x3A90, 0x90A9, 0x3A90, 0x9F5B, 0x3A90, 0xAE05, 0x3A90, 0xBCA6, 0x3A90, 0xCB3F, 0x3A90, 0xD9CF, 0x3A90, 0xE856, 0x3A90, 0xF6D5, 0x3A91, 0x054B, 0x3A91, 0x13B9, 0x3A91, 0x221E, 0x3A91, 0x307B, 0x3A91, 0x3ECF, 0x3A91, 0x4D11, 0x3A91, 0x5B54, 0x3A91, 0x698E, 0x3A91, 0x77C0, 0x3A91, 0x85E9, 0x3A91, 0x9409, 0x3A91, 0xA221, 0x3A91, 0xB030, 0x3A91, 0xBE37, 0x3A91, 0xCC35, 0x3A91, 0xDA33, 0x3A91, 0xE81F, 0x3A91, 0xF604, 0x3A92, 0x03E8, 0x3A92, 0x11BB, 0x3A92, 0x1F8E, 0x3A92, 0x2D50, 0x3A92, 0x3B12, 0x3A92, 0x48CB, 0x3A92, 0x5673, 0x3A92, 0x641B, 0x3A92, 0x71BB, 0x3A92, 0x7F52, 0x3A92, 0x8CE9, 0x3A92, 0x9A6E, 0x3A92, 0xA7F4, 0x3A92, 0xB569, 0x3A92, 0xC2DD, 0x3A92, 0xD049, 0x3A92, 0xDDAD, 0x3A92, 0xEB07, 0x3A92, 0xF85A, 0x3A93, 0x05A3, 0x3A93, 0x12ED, 0x3A93, 0x2025, 0x3A93, 0x2D5E, 0x3A93, 0x3A8D, 0x3A93, 0x47B5, 0x3A93, 0x54DC, 0x3A93, 0x61F2, 0x3A93, 0x6F08, 0x3A93, 0x7C0D, 0x3A93, 0x8912, 0x3A93, 0x960E, 0x3A93, 0xA30B, 0x3A93, 0xAFF6, 0x3A93, 0xBCE1, 0x3A93, 0xC9C3, 0x3A93, 0xD69D, 0x3A93, 0xE36F, 0x3A93, 0xF040, 0x3A93, 0xFD00, 0x3A94, 0x09C0, 0x3A94, 0x1678, 0x3A94, 0x232F, 0x3A94, 0x2FD6, 0x3A94, 0x3C7C, 0x3A94, 0x491A, 0x3A94, 0x55AF, 0x3A94, 0x6245, 0x3A94, 0x6EC9, 0x3A94, 0x7B4D, 0x3A94, 0x87D1, 0x3A94, 0x9444, 0x3A94, 0xA0B6, 0x3A94, 0xAD21, 0x3A94, 0xB982, 0x3A94, 0xC5DB, 0x3A94, 0xD235, 0x3A94, 0xDE85, 0x3A94, 0xEACD, 0x3A94, 0xF70C, 0x3A95, 0x034C, 0x3A95, 0x0F82, 0x3A95, 0x1BB9, 0x3A95, 0x27DF, 0x3A95, 0x3404, 0x3A95, 0x4021, 0x3A95, 0x4C3E, 0x3A95, 0x584A, 0x3A95, 0x6456, 0x3A95, 0x7062, 0xBF80, 0x0000, 0x0000, 0x0000, 0x391A, 0xC8FE, 0x3975, 0x56DD, 0x399A, 0xCBEF, 0x39B3, 0xB7B1, 0x39C8, 0x148F, 0x39D9, 0x4C26, 0x39E8, 0x3648, 0x39F5, 0x5E35, 0x3A00, 0x917F, 0x3A05, 0xE437, 0x3A0A, 0xC050, 0x3A0F, 0x38C9, 0x3A13, 0x5C6E, 0x3A17, 0x36F1, 0x3A1A, 0xD1C7, 0x3A1E, 0x34AA, 0x3A21, 0x65FD, 0x3A24, 0x6B1F, 0x3A27, 0x489A, 0x3A2A, 0x024B, 0x3A2C, 0x9B88, 0x3A2F, 0x1731, 0x3A31, 0x77CF, 0x3A33, 0xBF93, 0x3A35, 0xF073, 0x3A38, 0x0C29, 0x3A3A, 0x143F, 0x3A3C, 0x0A15, 0x3A3D, 0xEEE9, 0x3A3F, 0xC3D7, 0x3A41, 0x89E1, 0x3A43, 0x41F3, 0x3A44, 0xECE4, 0x3A46, 0x8B73, 0x3A48, 0x1E56, 0x3A49, 0xA62F, 0x3A4B, 0x2396, 0x3A4C, 0x9714, 0x3A4E, 0x012C, 0x3A4F, 0x6253, 0x3A50, 0xBAF8, 0x3A52, 0x0B80, 0x3A53, 0x544D, 0x3A54, 0x95B6, 0x3A55, 0xD010, 0x3A57, 0x03A6, 0x3A58, 0x30C4, 0x3A59, 0x57AC, 0x3A5A, 0x789F, 0x3A5B, 0x93D9, 0x3A5C, 0xA994, 0x3A5D, 0xBA05, 0x3A5E, 0xC55E, 0x3A5F, 0xCBCF, 0x3A60, 0xCD87, 0x3A61, 0xCAAF, 0x3A62, 0xC371, 0x3A63, 0xB7F1, 0x3A64, 0xA856, 0x3A65, 0x94C1, 0x3A66, 0x7D56, 0x3A67, 0x6230, 0x3A68, 0x4371, 0x3A69, 0x2134, 0x3A69, 0xFB95, 0x3A6A, 0xD2AC, 0x3A6B, 0xA695, 0x3A6C, 0x7765, 0x3A6D, 0x4535, 0x3A6E, 0x1019, 0x3A6E, 0xD826, 0x3A6F, 0x9D73, 0x3A70, 0x600F, 0x3A71, 0x200E, 0x3A71, 0xDD84, 0x3A72, 0x987F, 0x3A73, 0x5111, 0x3A74, 0x0749, 0x3A74, 0xBB36, 0x3A75, 0x6CE7, 0x3A76, 0x1C69, 0x3A76, 0xC9CB, 0x3A77, 0x751A, 0x3A78, 0x1E63, 0x3A78, 0xC5B0, 0x3A79, 0x6B0F, 0x3A7A, 0x0E8B, 0x3A7A, 0xB02C, 0x3A7B, 0x5000, 0x3A7B, 0xEE10, 0x3A7C, 0x8A64, 0x3A7D, 0x2509, 0x3A7D, 0xBE06, 0x3A7E, 0x5565, 0x3A7E, 0xEB2F, 0x3A7F, 0x7F6B, 0x3A80, 0x0911, 0x3A80, 0x51AE, 0x3A80, 0x9990, 0x3A80, 0xE0BB, 0x3A81, 0x2733, 0x3A81, 0x6CFA, 0x3A81, 0xB215, 0x3A81, 0xF687, 0x3A82, 0x3A53, 0x3A82, 0x7D7C, 0x3A82, 0xC005, 0x3A83, 0x01F1, 0x3A83, 0x4341, 0x3A83, 0x83FB, 0x3A83, 0xC423, 0x3A84, 0x03B9, 0x3A84, 0x42BD, 0x3A84, 0x8137, 0x3A84, 0xBF20, 0x3A84, 0xFC87, 0x3A85, 0x3965, 0x3A85, 0x75C3, 0x3A85, 0xB19F, 0x3A85, 0xECFB, 0x3A86, 0x27D5, 0x3A86, 0x6238, 0x3A86, 0x9C22, 0x3A86, 0xD59D, 0x3A87, 0x0E96, 0x3A87, 0x4720, 0x3A87, 0x7F3B, 0x3A87, 0xB6E5, 0x3A87, 0xEE21, 0x3A88, 0x24F4, 0x3A88, 0x5B59, 0x3A88, 0x9156, 0x3A88, 0xC6E3, 0x3A88, 0xFC13, 0x3A89, 0x30DB, 0x3A89, 0x6544, 0x3A89, 0x9946, 0x3A89, 0xCCF3, 0x3A8A, 0x0038, 0x3A8A, 0x331F, 0x3A8A, 0x65A8, 0x3A8A, 0x97DA, 0x3A8A, 0xC9B7, 0x3A8A, 0xFB35, 0x3A8B, 0x2C5D, 0x3A8B, 0x5D30, 0x3A8B, 0x8DB5, 0x3A8B, 0xBDDB, 0x3A8B, 0xEDB4, 0x3A8C, 0x1D40, 0x3A8C, 0x4C76, 0x3A8C, 0x7B5F, 0x3A8C, 0xA9F2, 0x3A8C, 0xD840, 0x3A8D, 0x0641, 0x3A8D, 0x33F4, 0x3A8D, 0x6163, 0x3A8D, 0x8E85, 0x3A8D, 0xBB59, 0x3A8D, 0xE7E8, 0x3A8E, 0x1433, 0x3A8E, 0x4039, 0x3A8E, 0x6BFA, 0x3A8E, 0x9777, 0x3A8E, 0xC2AF, 0x3A8E, 0xEDAA, 0x3A8F, 0x1859, 0x3A8F, 0x42CB, 0x3A8F, 0x6D01, 0x3A8F, 0x96F3, 0x3A8F, 0xC0A8, 0x3A8F, 0xEA21, 0x3A90, 0x135E, 0x3A90, 0x3C5F, 0x3A90, 0x651B, 0x3A90, 0x8DA4, 0x3A90, 0xB5F0, 0x3A90, 0xDE09, 0x3A91, 0x05DD, 0x3A91, 0x2D7E, 0x3A91, 0x54EB, 0x3A91, 0x7C1C, 0x3A91, 0xA31A, 0x3A91, 0xC9DB, 0x3A91, 0xF069, 0x3A92, 0x16CC, 0x3A92, 0x3CF3, 0x3A92, 0x62DD, 0x3A92, 0x889D, 0x3A92, 0xAE32, 0x3A92, 0xD38A, 0x3A92, 0xF8AF, 0x3A93, 0x1DAA, 0x3A93, 0x4270, 0x3A93, 0x670C, 0x3A93, 0x8B6B, 0x3A93, 0xAFA8, 0x3A93, 0xD3B2, 0x3A93, 0xF791, 0x3A94, 0x1B3C, 0x3A94, 0x3EBC, 0x3A94, 0x6211, 0x3A94, 0x8533, 0x3A94, 0xA832, 0x3A94, 0xCAFE, 0x3A94, 0xEDA7, 0x3A95, 0x101D, 0x3A95, 0x3268, 0x3A95, 0x5490, 0x3A95, 0x768E, 0x3A95, 0x9861, 0x3A95, 0xBA08, 0x3A95, 0xDB8E, 0x3A95, 0xFCE8, 0x3A96, 0x1E18, 0x3A96, 0x3F25, 0x3A96, 0x6007, 0x3A96, 0x80BE, 0x3A96, 0xA15B, 0x3A96, 0xC1CE, 0x3A96, 0xE215, 0x3A97, 0x023B, 0x3A97, 0x223D, 0x3A97, 0x421E, 0x3A97, 0x61D3, 0x3A97, 0x8166, 0x3A97, 0xA0E0, 0x3A97, 0xC02E, 0x3A97, 0xDF52, 0x3A97, 0xFE5B, 0x3A98, 0x1D43, 0x3A98, 0x3C08, 0x3A98, 0x5AAA, 0x3A98, 0x792B, 0x3A98, 0x9791, 0x3A98, 0xB5CD, 0x3A98, 0xD3EE, 0x3A98, 0xF1EE, 0x3A99, 0x0FCB, 0x3A99, 0x2D85, 0x3A99, 0x4B26, 0x3A99, 0x68A5, 0x3A99, 0x860A, 0x3A99, 0xA34C, 0x3A99, 0xC06C, 0x3A99, 0xDD72, 0x3A99, 0xFA5F, 0x3A9A, 0x1729, 0x3A9A, 0x33D1, 0x3A9A, 0x505F, 0x3A9A, 0x6CD3, 0x3A9A, 0x8925, 0x3A9A, 0xA55D, 0x3A9A, 0xC17C, 0x3A9A, 0xDD78, 0x3A9A, 0xF962, 0x3A9B, 0x152B, 0x3A9B, 0x30D1, 0x3A9B, 0x4C66, 0x3A9B, 0x67D9, 0x3A9B, 0x833A, 0x3A9B, 0x9E79, 0x3A9B, 0xB99E, 0x3A9B, 0xD4AA, 0x3A9B, 0xEF9B, 0x3A9C, 0x0A73, 0x3A9C, 0x2532, 0x3A9C, 0x3FD6, 0x3A9C, 0x5A61, 0x3A9C, 0x74D1, 0x3A9C, 0x8F31, 0x3A9C, 0xA96E, 0x3A9C, 0xC39B, 0x3A9C, 0xDDA4, 0x3A9C, 0xF79D, 0x3A9D, 0x117C, 0x3A9D, 0x2B41, 0x3A9D, 0x44F5, 0x3A9D, 0x5E8F, 0x3A9D, 0x780F, 0x3A9D, 0x9176, 0x3A9D, 0xAACB, 0x3A9D, 0xC407, 0x3A9D, 0xDD29, 0x3A9D, 0xF639, 0x3A9E, 0x0F30, 0x3A9E, 0x2816, 0x3A9E, 0x40E2, 0x3A9E, 0x5994, 0x3A9E, 0x7235, 0x3A9E, 0x8AC5, 0x3A9E, 0xA33B, 0x3A9E, 0xBB97, 0x3A9E, 0xD3E3, 0x3A9E, 0xEC1C, 0x3A9F, 0x043D, 0x3A9F, 0x1C43, 0x3A9F, 0x3441, 0x3A9F, 0x4C1C, 0x3A9F, 0x63EF, 0x3A9F, 0x7BA8, 0x3A9F, 0x9350, 0x3A9F, 0xAADE, 0x3A9F, 0xC264, 0x3A9F, 0xD9C7, 0x3A9F, 0xF122, 0x3AA0, 0x0862, 0x3AA0, 0x1F9B, 0x3AA0, 0x36B1, 0x3AA0, 0x4DBE, 0x3AA0, 0x64BA, 0x3AA0, 0x7B9C, 0x3AA0, 0x926D, 0x3AA0, 0xA92D, 0x3AA0, 0xBFDC, 0x3AA0, 0xD671, 0x3AA0, 0xECFE, 0x3AA1, 0x0370, 0x3AA1, 0x19D2, 0x3AA1, 0x302B, 0x3AA1, 0x466A, 0x3AA1, 0x5C98, 0x3AA1, 0x72B5, 0x3AA1, 0x88C0, 0x3AA1, 0x9EBB, 0x3AA1, 0xB4A4, 0x3AA1, 0xCA7C, 0x3AA1, 0xE043, 0x3AA1, 0xF5F8, 0x3AA2, 0x0B9D, 0x3AA2, 0x2139, 0x3AA2, 0x36BB, 0x3AA2, 0x4C2C, 0x3AA2, 0x6194, 0x3AA2, 0x76E3, 0x3AA2, 0x8C29, 0x3AA2, 0xA155, 0x3AA2, 0xB679, 0x3AA2, 0xCB8B, 0x3AA2, 0xE08D, 0x3AA2, 0xF585, 0x3AA3, 0x0A64, 0x3AA3, 0x1F3B, 0x3AA3, 0x3400, 0x3AA3, 0x48B4, 0x3AA3, 0x5D57, 0x3AA3, 0x71F1, 0x3AA3, 0x867A, 0x3AA3, 0x9AF2, 0x3AA3, 0xAF58, 0x3AA3, 0xC3B6, 0x3AA3, 0xD803, 0x3AA3, 0xEC3F, 0x3AA4, 0x006A, 0x3AA4, 0x148C, 0x3AA4, 0x289C, 0x3AA4, 0x3C9C, 0x3AA4, 0x5093, 0x3AA4, 0x6479, 0x3AA4, 0x7856, 0x3AA4, 0x8C1A, 0x3AA4, 0x9FDD, 0x3AA4, 0xB387, 0x3AA4, 0xC728, 0x3AA4, 0xDAB8, 0x3AA4, 0xEE3F, 0x3AA5, 0x01B5, 0x3AA5, 0x1523, 0x3AA5, 0x287F, 0x3AA5, 0x3BD3, 0x3AA5, 0x4F0D, 0x3AA5, 0x6247, 0x3AA5, 0x7570, 0x3AA5, 0x8888, 0x3AA5, 0x9B97, 0x3AA5, 0xAE95, 0x3AA5, 0xC18A, 0x3AA5, 0xD46E, 0x3AA5, 0xE74A, 0x3AA5, 0xFA1D, 0x3AA6, 0x0CD6, 0x3AA6, 0x1F8F, 0x3AA6, 0x3237, 0x3AA6, 0x44CE, 0x3AA6, 0x575C, 0x3AA6, 0x69E2, 0x3AA6, 0x7C56, 0x3AA6, 0x8EC2, 0x3AA6, 0xA125, 0x3AA6, 0xB377, 0x3AA6, 0xC5B8, 0x3AA6, 0xD7F1, 0x3AA6, 0xEA20, 0x3AA6, 0xFC47, 0x3AA7, 0x0E5D, 0x3AA7, 0x206B, 0x3AA7, 0x3267, 0x3AA7, 0x445B, 0x3AA7, 0x5646, 0x3AA7, 0x6820, 0x3AA7, 0x79F1, 0x3AA7, 0x8BB9, 0x3AA7, 0x9D71, 0x3AA7, 0xAF28, 0x3AA7, 0xC0C6, 0x3AA7, 0xD264, 0x3AA7, 0xE3F0, 0x3AA7, 0xF574, 0x3AA8, 0x06F0, 0x3AA8, 0x185A, 0x3AA8, 0x29BB, 0x3AA8, 0x3B14, 0x3AA8, 0x4C65, 0x3AA8, 0x5DA4, 0x3AA8, 0x6EDB, 0x3AA8, 0x8009, 0x3AA8, 0x912E, 0x3AA8, 0xA24B, 0x3AA8, 0xB357, 0x3AA8, 0xC45A, 0x3AA8, 0xD554, 0x3AA8, 0xE63E, 0x3AA8, 0xF727, 0x3AA9, 0x07FF, 0x3AA9, 0x18CF, 0x3AA9, 0x2996, 0x3AA9, 0x3A54, 0x3AA9, 0x4B0A, 0x3AA9, 0x5BAE, 0x3AA9, 0x6C4B, 0x3AA9, 0x7CDE, 0x3AA9, 0x8D69, 0x3AA9, 0x9DEB, 0x3AA9, 0xAE65, 0x3AA9, 0xBED6, 0x3AA9, 0xCF36, 0x3AA9, 0xDF96, 0x3AA9, 0xEFE4, 0x3AAA, 0x002A, 0x3AAA, 0x1068, 0x3AAA, 0x209D, 0x3AAA, 0x30C9, 0x3AAA, 0x40ED, 0x3AAA, 0x50FF, 0x3AAA, 0x6112, 0x3AAA, 0x7113, 0x3AAA, 0x8115, 0x3AAA, 0x9105, 0x3AAA, 0xA0F5, 0x3AAA, 0xB0D4, 0x3AAA, 0xC0AB, 0x3AAA, 0xD079, 0x3AAA, 0xE047, 0x3AAA, 0xF003, 0x3AAA, 0xFFB7, 0x3AAB, 0x0F63, 0x3AAB, 0x1F06, 0x3AAB, 0x2EA0, 0x3AAB, 0x3E32, 0x3AAB, 0x4DBB, 0x3AAB, 0x5D3B, 0x3AAB, 0x6CB3, 0x3AAB, 0x7C23, 0x3AAB, 0x8B8A, 0x3AAB, 0x9AE8, 0x3AAB, 0xAA3D, 0x3AAB, 0xB993, 0x3AAB, 0xC8D7, 0x3AAB, 0xD813, 0x3AAB, 0xE746, 0x3AAB, 0xF671, 0x3AAC, 0x059C, 0x3AAC, 0x14B5, 0x3AAC, 0x23C6, 0x3AAC, 0x32D7, 0x3AAC, 0x41D7, 0x3AAC, 0x50D6, 0x3AAC, 0x5FC5, 0x3AAC, 0x6EB3, 0x3AAC, 0x7D99, 0x3AAC, 0x8C77, 0x3AAC, 0x9B4B, 0x3AAC, 0xAA18, 0x3AAC, 0xB8DB, 0x3AAC, 0xC796, 0x3AAC, 0xD649, 0x3AAC, 0xE4F2, 0x3AAC, 0xF39C, 0x3AAD, 0x023D, 0x3AAD, 0x10CD, 0x3AAD, 0x1F5D, 0x3AAD, 0x2DE5, 0x3AAD, 0x3C64, 0x3AAD, 0x4ADA, 0x3AAD, 0x5950, 0x3AAD, 0x67B5, 0x3AAD, 0x761A, 0x3AAD, 0x846E, 0x3AAD, 0x92C2, 0x3AAD, 0xA10E, 0x3AAD, 0xAF59, 0x3AAD, 0xBD93, 0x3AAD, 0xCBC4, 0x3AAD, 0xD9F6, 0x3AAD, 0xE81F, 0x3AAD, 0xF63F, 0x3AAE, 0x0457, 0x3AAE, 0x1266, 0x3AAE, 0x2075, 0x3AAE, 0x2E7C, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3939, 0x6DD5, 0x3992, 0xF4E5, 0x39B9, 0x7208, 0x39D7, 0x4D35, 0x39EF, 0xB277, 0x3A02, 0x297E, 0x3A0B, 0x18AB, 0x3A12, 0xFA2B, 0x3A1A, 0x06EF, 0x3A20, 0x6796, 0x3A26, 0x3A1D, 0x3A2B, 0x954B, 0x3A30, 0x8AD7, 0x3A35, 0x28C6, 0x3A39, 0x7A6C, 0x3A3D, 0x890A, 0x3A41, 0x5C47, 0x3A44, 0xFA95, 0x3A48, 0x695D, 0x3A4B, 0xAD47, 0x3A4E, 0xCA4E, 0x3A51, 0xC3E9, 0x3A54, 0x9D18, 0x3A57, 0x5886, 0x3A59, 0xF886, 0x3A5C, 0x7F2A, 0x3A5E, 0xEE4A, 0x3A61, 0x478D, 0x3A63, 0x8C6F, 0x3A65, 0xBE47, 0x3A67, 0xDE46, 0x3A69, 0xED8B, 0x3A6B, 0xED12, 0x3A6D, 0xDDC7, 0x3A6F, 0xC07E, 0x3A71, 0x95FB, 0x3A73, 0x5EF3, 0x3A75, 0x1C0E, 0x3A76, 0xCDE5, 0x3A78, 0x7506, 0x3A7A, 0x11F5, 0x3A7B, 0xA52D, 0x3A7D, 0x2F20, 0x3A7E, 0xB039, 0x3A80, 0x146E, 0x3A80, 0xCCB3, 0x3A81, 0x8117, 0x3A82, 0x31C3, 0x3A82, 0xDEDE, 0x3A83, 0x888B, 0x3A84, 0x2EF1, 0x3A84, 0xD226, 0x3A85, 0x724E, 0x3A86, 0x0F8A, 0x3A86, 0xA9ED, 0x3A87, 0x4197, 0x3A87, 0xD69B, 0x3A88, 0x6912, 0x3A88, 0xF916, 0x3A89, 0x86B8, 0x3A8A, 0x1212, 0x3A8A, 0x9B2D, 0x3A8B, 0x2221, 0x3A8B, 0xA6F9, 0x3A8C, 0x29CD, 0x3A8C, 0xAAA6, 0x3A8D, 0x299F, 0x3A8D, 0xA6B6, 0x3A8E, 0x21FD, 0x3A8E, 0x9B8F, 0x3A8F, 0x136A, 0x3A8F, 0x8998, 0x3A8F, 0xFE32, 0x3A90, 0x7138, 0x3A90, 0xE2B3, 0x3A91, 0x52BD, 0x3A91, 0xC14D, 0x3A92, 0x2E7C, 0x3A92, 0x9A43, 0x3A93, 0x04BB, 0x3A93, 0x6DDB, 0x3A93, 0xD5BE, 0x3A94, 0x3C5A, 0x3A94, 0xA1C9, 0x3A95, 0x0603, 0x3A95, 0x6911, 0x3A95, 0xCB03, 0x3A96, 0x2BDA, 0x3A96, 0x8B9D, 0x3A96, 0xEA4E, 0x3A97, 0x47F4, 0x3A97, 0xA499, 0x3A98, 0x0045, 0x3A98, 0x5AEF, 0x3A98, 0xB4B1, 0x3A99, 0x0D7A, 0x3A99, 0x6564, 0x3A99, 0xBC65, 0x3A9A, 0x1288, 0x3A9A, 0x67CB, 0x3A9A, 0xBC37, 0x3A9B, 0x0FD5, 0x3A9B, 0x62A5, 0x3A9B, 0xB4A7, 0x3A9C, 0x05E3, 0x3A9C, 0x565A, 0x3A9C, 0xA613, 0x3A9C, 0xF510, 0x3A9D, 0x4350, 0x3A9D, 0x90E4, 0x3A9D, 0xDDBB, 0x3A9E, 0x29EF, 0x3A9E, 0x756E, 0x3A9E, 0xC04A, 0x3A9F, 0x0A7A, 0x3A9F, 0x5410, 0x3A9F, 0x9CFA, 0x3A9F, 0xE552, 0x3AA0, 0x2D07, 0x3AA0, 0x7429, 0x3AA0, 0xBAB1, 0x3AA1, 0x00A7, 0x3AA1, 0x460B, 0x3AA1, 0x8AE6, 0x3AA1, 0xCF2E, 0x3AA2, 0x12ED, 0x3AA2, 0x5623, 0x3AA2, 0x98D8, 0x3AA2, 0xDB03, 0x3AA3, 0x1CAE, 0x3AA3, 0x5DE0, 0x3AA3, 0x9E91, 0x3AA3, 0xDEC2, 0x3AA4, 0x1E7A, 0x3AA4, 0x5DBA, 0x3AA4, 0x9C82, 0x3AA4, 0xDADA, 0x3AA5, 0x18BA, 0x3AA5, 0x562A, 0x3AA5, 0x932B, 0x3AA5, 0xCFBB, 0x3AA6, 0x0BE5, 0x3AA6, 0x479F, 0x3AA6, 0x82EA, 0x3AA6, 0xBDD6, 0x3AA6, 0xF852, 0x3AA7, 0x3270, 0x3AA7, 0x6C26, 0x3AA7, 0xA57F, 0x3AA7, 0xDE70, 0x3AA8, 0x1702, 0x3AA8, 0x4F36, 0x3AA8, 0x870C, 0x3AA8, 0xBE83, 0x3AA8, 0xF5A4, 0x3AA9, 0x2C67, 0x3AA9, 0x62D4, 0x3AA9, 0x98E3, 0x3AA9, 0xCEA4, 0x3AAA, 0x0406, 0x3AAA, 0x391B, 0x3AAA, 0x6DDB, 0x3AAA, 0xA244, 0x3AAA, 0xD660, 0x3AAB, 0x0A27, 0x3AAB, 0x3DA0, 0x3AAB, 0x70CB, 0x3AAB, 0xA3AA, 0x3AAB, 0xD63B, 0x3AAC, 0x087E, 0x3AAC, 0x3A7D, 0x3AAC, 0x6C2F, 0x3AAC, 0x9D94, 0x3AAC, 0xCEB3, 0x3AAC, 0xFF86, 0x3AAD, 0x301C, 0x3AAD, 0x6065, 0x3AAD, 0x9069, 0x3AAD, 0xC028, 0x3AAD, 0xEFA3, 0x3AAE, 0x1ED9, 0x3AAE, 0x4DD3, 0x3AAE, 0x7C88, 0x3AAE, 0xAB01, 0x3AAE, 0xD936, 0x3AAF, 0x0725, 0x3AAF, 0x34E1, 0x3AAF, 0x6259, 0x3AAF, 0x8F94, 0x3AAF, 0xBC93, 0x3AAF, 0xE956, 0x3AB0, 0x15DD, 0x3AB0, 0x4228, 0x3AB0, 0x6E36, 0x3AB0, 0x9A11, 0x3AB0, 0xC5B0, 0x3AB0, 0xF113, 0x3AB1, 0x1C42, 0x3AB1, 0x4735, 0x3AB1, 0x71F5, 0x3AB1, 0x9C81, 0x3AB1, 0xC6D9, 0x3AB1, 0xF0F6, 0x3AB2, 0x1ADF, 0x3AB2, 0x4494, 0x3AB2, 0x6E16, 0x3AB2, 0x9764, 0x3AB2, 0xC07F, 0x3AB2, 0xE96E, 0x3AB3, 0x1222, 0x3AB3, 0x3AAA, 0x3AB3, 0x6300, 0x3AB3, 0x8B2A, 0x3AB3, 0xB320, 0x3AB3, 0xDAE3, 0x3AB4, 0x027C, 0x3AB4, 0x29E0, 0x3AB4, 0x5122, 0x3AB4, 0x7828, 0x3AB4, 0x9F0C, 0x3AB4, 0xC5BC, 0x3AB4, 0xEC42, 0x3AB5, 0x129C, 0x3AB5, 0x38CB, 0x3AB5, 0x5ED0, 0x3AB5, 0x84A9, 0x3AB5, 0xAA58, 0x3AB5, 0xCFDB, 0x3AB5, 0xF534, 0x3AB6, 0x1A61, 0x3AB6, 0x3F6D, 0x3AB6, 0x6444, 0x3AB6, 0x88FA, 0x3AB6, 0xAD8D, 0x3AB6, 0xD1EC, 0x3AB6, 0xF632, 0x3AB7, 0x1A44, 0x3AB7, 0x3E34, 0x3AB7, 0x6201, 0x3AB7, 0x85A4, 0x3AB7, 0xA924, 0x3AB7, 0xCC79, 0x3AB7, 0xEFB5, 0x3AB8, 0x12BD, 0x3AB8, 0x35AB, 0x3AB8, 0x586E, 0x3AB8, 0x7B0F, 0x3AB8, 0x9D96, 0x3AB8, 0xBFE9, 0x3AB8, 0xE223, 0x3AB9, 0x043A, 0x3AB9, 0x262F, 0x3AB9, 0x47FA, 0x3AB9, 0x69AA, 0x3AB9, 0x8B38, 0x3AB9, 0xACA3, 0x3AB9, 0xCDED, 0x3AB9, 0xEF13, 0x3ABA, 0x1020, 0x3ABA, 0x310B, 0x3ABA, 0x51CB, 0x3ABA, 0x727A, 0x3ABA, 0x92FD, 0x3ABA, 0xB367, 0x3ABA, 0xD3AF, 0x3ABA, 0xF3DC, 0x3ABB, 0x13E8, 0x3ABB, 0x33D1, 0x3ABB, 0x53A0, 0x3ABB, 0x7356, 0x3ABB, 0x92E9, 0x3ABB, 0xB259, 0x3ABB, 0xD1B0, 0x3ABB, 0xF0EE, 0x3ABC, 0x1009, 0x3ABC, 0x2F0A, 0x3ABC, 0x4DF1, 0x3ABC, 0x6CB6, 0x3ABC, 0x8B61, 0x3ABC, 0xA9F3, 0x3ABC, 0xC862, 0x3ABC, 0xE6C0, 0x3ABD, 0x04FB, 0x3ABD, 0x231D, 0x3ABD, 0x411C, 0x3ABD, 0x5F0A, 0x3ABD, 0x7CDF, 0x3ABD, 0x9A91, 0x3ABD, 0xB832, 0x3ABD, 0xD5B0, 0x3ABD, 0xF31E, 0x3ABE, 0x1069, 0x3ABE, 0x2D9A, 0x3ABE, 0x4ABA, 0x3ABE, 0x67B8, 0x3ABE, 0x84A4, 0x3ABE, 0xA177, 0x3ABE, 0xBE30, 0x3ABE, 0xDACF, 0x3ABE, 0xF755, 0x3ABF, 0x13C0, 0x3ABF, 0x301B, 0x3ABF, 0x4C53, 0x3ABF, 0x687A, 0x3ABF, 0x8490, 0x3ABF, 0xA083, 0x3ABF, 0xBC65, 0x3ABF, 0xD82E, 0x3ABF, 0xF3E5, 0x3AC0, 0x0F7A, 0x3AC0, 0x2B06, 0x3AC0, 0x4670, 0x3AC0, 0x61C9, 0x3AC0, 0x7D08, 0x3AC0, 0x9836, 0x3AC0, 0xB34A, 0x3AC0, 0xCE4D, 0x3AC0, 0xE936, 0x3AC1, 0x040E, 0x3AC1, 0x1ECC, 0x3AC1, 0x3971, 0x3AC1, 0x540D, 0x3AC1, 0x6E86, 0x3AC1, 0x88F7, 0x3AC1, 0xA34E, 0x3AC1, 0xBD8B, 0x3AC1, 0xD7B7, 0x3AC1, 0xF1D2, 0x3AC2, 0x0BD4, 0x3AC2, 0x25C4, 0x3AC2, 0x3FA2, 0x3AC2, 0x5968, 0x3AC2, 0x731B, 0x3AC2, 0x8CBE, 0x3AC2, 0xA650, 0x3AC2, 0xBFC7, 0x3AC2, 0xD92E, 0x3AC2, 0xF27B, 0x3AC3, 0x0BBF, 0x3AC3, 0x24E9, 0x3AC3, 0x3E03, 0x3AC3, 0x570B, 0x3AC3, 0x7002, 0x3AC3, 0x88E8, 0x3AC3, 0xA1B3, 0x3AC3, 0xBA77, 0x3AC3, 0xD320, 0x3AC3, 0xEBB9, 0x3AC4, 0x0440, 0x3AC4, 0x1CB6, 0x3AC4, 0x351B, 0x3AC4, 0x4D66, 0x3AC4, 0x65A9, 0x3AC4, 0x7DDA, 0x3AC4, 0x95F2, 0x3AC4, 0xAE01, 0x3AC4, 0xC5FE, 0x3AC4, 0xDDE2, 0x3AC4, 0xF5BE, 0x3AC5, 0x0D88, 0x3AC5, 0x2539, 0x3AC5, 0x3CE1, 0x3AC5, 0x5477, 0x3AC5, 0x6BFD, 0x3AC5, 0x8371, 0x3AC5, 0x9AD4, 0x3AC5, 0xB226, 0x3AC5, 0xC970, 0x3AC5, 0xE09F, 0x3AC5, 0xF7C6, 0x3AC6, 0x0ED4, 0x3AC6, 0x25D8, 0x3AC6, 0x3CCC, 0x3AC6, 0x53B7, 0x3AC6, 0x6A88, 0x3AC6, 0x8151, 0x3AC6, 0x97FF, 0x3AC6, 0xAEA6, 0x3AC6, 0xC543, 0x3AC6, 0xDBC7, 0x3AC6, 0xF242, 0x3AC7, 0x08AC, 0x3AC7, 0x1F05, 0x3AC7, 0x354D, 0x3AC7, 0x4B8C, 0x3AC7, 0x61BA, 0x3AC7, 0x77D7, 0x3AC7, 0x8DEB, 0x3AC7, 0xA3EE, 0x3AC7, 0xB9E0, 0x3AC7, 0xCFC9, 0x3AC7, 0xE5A1, 0x3AC7, 0xFB68, 0x3AC8, 0x1126, 0x3AC8, 0x26D3, 0x3AC8, 0x3C6F, 0x3AC8, 0x5203, 0x3AC8, 0x6785, 0x3AC8, 0x7CF6, 0x3AC8, 0x925E, 0x3AC8, 0xA7BE, 0x3AC8, 0xBD0C, 0x3AC8, 0xD24A, 0x3AC8, 0xE776, 0x3AC8, 0xFC9A, 0x3AC9, 0x11B5, 0x3AC9, 0x26BF, 0x3AC9, 0x3BB7, 0x3AC9, 0x50A8, 0x3AC9, 0x658F, 0x3AC9, 0x7A65, 0x3AC9, 0x8F2B, 0x3AC9, 0xA3E7, 0x3AC9, 0xB893, 0x3AC9, 0xCD35, 0x3AC9, 0xE1D0, 0x3AC9, 0xF659, 0x3ACA, 0x0AD1, 0x3ACA, 0x1F40, 0x3ACA, 0x33A7, 0x3ACA, 0x47FC, 0x3ACA, 0x5C49, 0x3ACA, 0x7085, 0x3ACA, 0x84B8, 0x3ACA, 0x98DA, 0x3ACA, 0xACF3, 0x3ACA, 0xC104, 0x3ACA, 0xD504, 0x3ACA, 0xE8FB, 0x3ACA, 0xFCE9, 0x3ACB, 0x10C6, 0x3ACB, 0x2492, 0x3ACB, 0x385E, 0x3ACB, 0x4C19, 0x3ACB, 0x5FC3, 0x3ACB, 0x736D, 0x3ACB, 0x8705, 0x3ACB, 0x9A8C, 0x3ACB, 0xAE14, 0x3ACB, 0xC18A, 0x3ACB, 0xD4F8, 0x3ACB, 0xE854, 0x3ACB, 0xFBA8, 0x3ACC, 0x0EF3, 0x3ACC, 0x222D, 0x3ACC, 0x3567, 0x3ACC, 0x4890, 0x3ACC, 0x5BA8, 0x3ACC, 0x6EBF, 0x3ACC, 0x81C6, 0x3ACC, 0x94C4, 0x3ACC, 0xA7B0, 0x3ACC, 0xBA9D, 0x3ACC, 0xCD79, 0x3ACC, 0xE04C, 0x3ACC, 0xF30D, 0x3ACD, 0x05CF, 0x3ACD, 0x1880, 0x3ACD, 0x2B28, 0x3ACD, 0x3DC7, 0x3ACD, 0x505E, 0x3ACD, 0x62E4, 0x3ACD, 0x7561, 0x3ACD, 0x87D5, 0x3ACD, 0x9A41, 0x3ACD, 0xACA4, 0x3ACD, 0xBEFF, 0x3ACD, 0xD148, 0x3ACD, 0xE389, 0x3ACD, 0xF5C2, 0x3ACE, 0x07F1, 0x3ACE, 0x1A19, 0x3ACE, 0x2C2F, 0x3ACE, 0x3E45, 0x3ACE, 0x5049, 0x3ACE, 0x6246, 0x3ACE, 0x7439, 0x3ACE, 0x8624, 0x3ACE, 0x9807, 0x3ACE, 0xA9E0, 0x3ACE, 0xBBB2, 0x3ACE, 0xCD72, 0x3ACE, 0xDF32, 0x3ACE, 0xF0E1, 0x3ACF, 0x0287, 0x3ACF, 0x142D, 0x3ACF, 0x25C3, 0x3ACF, 0x374F, 0x3ACF, 0x48D3, 0x3ACF, 0x5A4E, 0x3ACF, 0x6BB9, 0x3ACF, 0x7D23, 0x3ACF, 0x8E84, 0x3ACF, 0x9FDD, 0x3ACF, 0xB125, 0x3ACF, 0xC26D, 0x3ACF, 0xD3A4, 0x3ACF, 0xE4DA, 0x3ACF, 0xF608, 0x3AD0, 0x0725, 0x3AD0, 0x1842, 0x3AD0, 0x294E, 0x3AD0, 0x3A51, 0x3AD0, 0x4B54, 0x3AD0, 0x5C46, 0x3AD0, 0x6D38, 0x3AD0, 0x7E18, 0x3AD0, 0x8EF9, 0x3AD0, 0x9FC9, 0x3AD0, 0xB098, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3967, 0x339A, 0x39B7, 0x3C13, 0x39E7, 0x3A1D, 0x3A06, 0x3A58, 0x3A15, 0x701D, 0x3A22, 0x4C6B, 0x3A2D, 0x707C, 0x3A37, 0x4447, 0x3A40, 0x0ED0, 0x3A48, 0x02BE, 0x3A4F, 0x4571, 0x3A55, 0xF356, 0x3A5C, 0x227B, 0x3A61, 0xE465, 0x3A67, 0x472C, 0x3A6C, 0x565C, 0x3A71, 0x1B86, 0x3A75, 0x9EAA, 0x3A79, 0xE68F, 0x3A7D, 0xF8FD, 0x3A80, 0xED77, 0x3A82, 0xC859, 0x3A84, 0x8F02, 0x3A86, 0x4326, 0x3A87, 0xE624, 0x3A89, 0x795D, 0x3A8A, 0xFDE4, 0x3A8C, 0x74D4, 0x3A8D, 0xDF04, 0x3A8F, 0x3D5B, 0x3A90, 0x908F, 0x3A91, 0xD953, 0x3A93, 0x184B, 0x3A94, 0x4E09, 0x3A95, 0x7B05, 0x3A96, 0x9FC8, 0x3A97, 0xBCB9, 0x3A98, 0xD241, 0x3A99, 0xE0C5, 0x3A9A, 0xE89C, 0x3A9B, 0xEA1B, 0x3A9C, 0xE587, 0x3A9D, 0xDB2E, 0x3A9E, 0xCB54, 0x3A9F, 0xB62D, 0x3AA0, 0x9BFE, 0x3AA1, 0x7CF0, 0x3AA2, 0x594B, 0x3AA3, 0x312E, 0x3AA4, 0x04C6, 0x3AA4, 0xD446, 0x3AA5, 0x9FD1, 0x3AA6, 0x6791, 0x3AA7, 0x2BA8, 0x3AA7, 0xEC32, 0x3AA8, 0xA957, 0x3AA9, 0x6333, 0x3AAA, 0x19DE, 0x3AAA, 0xCD7C, 0x3AAB, 0x7E1E, 0x3AAC, 0x2BE5, 0x3AAC, 0xD6E3, 0x3AAD, 0x7F2A, 0x3AAE, 0x24DB, 0x3AAE, 0xC808, 0x3AAF, 0x68B9, 0x3AB0, 0x0711, 0x3AB0, 0xA30F, 0x3AB1, 0x3CD7, 0x3AB1, 0xD470, 0x3AB2, 0x69E4, 0x3AB2, 0xFD54, 0x3AB3, 0x8EB8, 0x3AB4, 0x1E2A, 0x3AB4, 0xABBB, 0x3AB5, 0x376B, 0x3AB5, 0xC154, 0x3AB6, 0x497E, 0x3AB6, 0xCFE9, 0x3AB7, 0x54AF, 0x3AB7, 0xD7D1, 0x3AB8, 0x595E, 0x3AB8, 0xD958, 0x3AB9, 0x57D9, 0x3AB9, 0xD4D6, 0x3ABA, 0x506B, 0x3ABA, 0xCA8E, 0x3ABB, 0x4351, 0x3ABB, 0xBABD, 0x3ABC, 0x30D9, 0x3ABC, 0xA5A7, 0x3ABD, 0x192E, 0x3ABD, 0x8B80, 0x3ABD, 0xFC9D, 0x3ABE, 0x6C84, 0x3ABE, 0xDB48, 0x3ABF, 0x48E7, 0x3ABF, 0xB56B, 0x3AC0, 0x20D3, 0x3AC0, 0x8B31, 0x3AC0, 0xF47C, 0x3AC1, 0x5CC6, 0x3AC1, 0xC405, 0x3AC2, 0x2A4B, 0x3AC2, 0x8FA1, 0x3AC2, 0xF3FD, 0x3AC3, 0x5769, 0x3AC3, 0xB9ED, 0x3AC4, 0x1B8A, 0x3AC4, 0x7C46, 0x3AC4, 0xDC24, 0x3AC5, 0x3B22, 0x3AC5, 0x9952, 0x3AC5, 0xF6AB, 0x3AC6, 0x5336, 0x3AC6, 0xAEF3, 0x3AC7, 0x09EA, 0x3AC7, 0x641C, 0x3AC7, 0xBD91, 0x3AC8, 0x1649, 0x3AC8, 0x6E3B, 0x3AC8, 0xC581, 0x3AC9, 0x1C0B, 0x3AC9, 0x71E8, 0x3AC9, 0xC711, 0x3ACA, 0x1B98, 0x3ACA, 0x6F69, 0x3ACA, 0xC298, 0x3ACB, 0x1523, 0x3ACB, 0x670B, 0x3ACB, 0xB858, 0x3ACC, 0x0903, 0x3ACC, 0x5912, 0x3ACC, 0xA890, 0x3ACC, 0xF773, 0x3ACD, 0x45BB, 0x3ACD, 0x937A, 0x3ACD, 0xE0A7, 0x3ACE, 0x2D4A, 0x3ACE, 0x795B, 0x3ACE, 0xC4EC, 0x3ACF, 0x0FEA, 0x3ACF, 0x5A68, 0x3ACF, 0xA465, 0x3ACF, 0xEDE1, 0x3AD0, 0x36D3, 0x3AD0, 0x7F4E, 0x3AD0, 0xC747, 0x3AD1, 0x0EC8, 0x3AD1, 0x55D1, 0x3AD1, 0x9C62, 0x3AD1, 0xE27A, 0x3AD2, 0x281A, 0x3AD2, 0x6D4B, 0x3AD2, 0xB20B, 0x3AD2, 0xF65D, 0x3AD3, 0x3A35, 0x3AD3, 0x7DA7, 0x3AD3, 0xC0B2, 0x3AD4, 0x034D, 0x3AD4, 0x4578, 0x3AD4, 0x8745, 0x3AD4, 0xC8A2, 0x3AD5, 0x09A1, 0x3AD5, 0x4A39, 0x3AD5, 0x8A69, 0x3AD5, 0xCA3B, 0x3AD6, 0x09AF, 0x3AD6, 0x48C4, 0x3AD6, 0x8772, 0x3AD6, 0xC5CA, 0x3AD7, 0x03C4, 0x3AD7, 0x415F, 0x3AD7, 0x7EA4, 0x3AD7, 0xBB8B, 0x3AD7, 0xF81B, 0x3AD8, 0x3456, 0x3AD8, 0x703B, 0x3AD8, 0xABCB, 0x3AD8, 0xE704, 0x3AD9, 0x21E7, 0x3AD9, 0x5C7D, 0x3AD9, 0x96BD, 0x3AD9, 0xD0B0, 0x3ADA, 0x0A4D, 0x3ADA, 0x43A5, 0x3ADA, 0x7CA8, 0x3ADA, 0xB55D, 0x3ADA, 0xEDC4, 0x3ADB, 0x25E7, 0x3ADB, 0x5DB4, 0x3ADB, 0x953D, 0x3ADB, 0xCC80, 0x3ADC, 0x0377, 0x3ADC, 0x3A28, 0x3ADC, 0x708C, 0x3ADC, 0xA6AC, 0x3ADC, 0xDC87, 0x3ADD, 0x121D, 0x3ADD, 0x476E, 0x3ADD, 0x7C7B, 0x3ADD, 0xB14C, 0x3ADD, 0xE5CF, 0x3ADE, 0x1A16, 0x3ADE, 0x4E21, 0x3ADE, 0x81E7, 0x3ADE, 0xB569, 0x3ADE, 0xE8AE, 0x3ADF, 0x1BB7, 0x3ADF, 0x4E85, 0x3ADF, 0x810D, 0x3ADF, 0xB359, 0x3ADF, 0xE572, 0x3AE0, 0x1746, 0x3AE0, 0x48E7, 0x3AE0, 0x7A43, 0x3AE0, 0xAB6B, 0x3AE0, 0xDC57, 0x3AE1, 0x0D0F, 0x3AE1, 0x3D8C, 0x3AE1, 0x6DCC, 0x3AE1, 0x9DD9, 0x3AE1, 0xCDB2, 0x3AE1, 0xFD4F, 0x3AE2, 0x2CB9, 0x3AE2, 0x5BEF, 0x3AE2, 0x8AE9, 0x3AE2, 0xB9AF, 0x3AE2, 0xE84B, 0x3AE3, 0x16AA, 0x3AE3, 0x44D6, 0x3AE3, 0x72D7, 0x3AE3, 0xA09B, 0x3AE3, 0xCE35, 0x3AE3, 0xFB9B, 0x3AE4, 0x28CE, 0x3AE4, 0x55D5, 0x3AE4, 0x82AA, 0x3AE4, 0xAF4A, 0x3AE4, 0xDBC0, 0x3AE5, 0x0802, 0x3AE5, 0x3419, 0x3AE5, 0x6005, 0x3AE5, 0x8BBE, 0x3AE5, 0xB74C, 0x3AE5, 0xE2A6, 0x3AE6, 0x0DDE, 0x3AE6, 0x38E2, 0x3AE6, 0x63BC, 0x3AE6, 0x8E6A, 0x3AE6, 0xB8ED, 0x3AE6, 0xE346, 0x3AE7, 0x0D73, 0x3AE7, 0x3776, 0x3AE7, 0x614E, 0x3AE7, 0x8AFA, 0x3AE7, 0xB47C, 0x3AE7, 0xDDDB, 0x3AE8, 0x0710, 0x3AE8, 0x3019, 0x3AE8, 0x58F8, 0x3AE8, 0x81B4, 0x3AE8, 0xAA45, 0x3AE8, 0xD2B4, 0x3AE8, 0xFAF8, 0x3AE9, 0x231A, 0x3AE9, 0x4B10, 0x3AE9, 0x72E5, 0x3AE9, 0x9A8E, 0x3AE9, 0xC215, 0x3AE9, 0xE971, 0x3AEA, 0x10B3, 0x3AEA, 0x37CA, 0x3AEA, 0x5EBF, 0x3AEA, 0x8589, 0x3AEA, 0xAC39, 0x3AEA, 0xD2BF, 0x3AEA, 0xF922, 0x3AEB, 0x1F62, 0x3AEB, 0x4580, 0x3AEB, 0x6B7C, 0x3AEB, 0x9155, 0x3AEB, 0xB70D, 0x3AEB, 0xDCA1, 0x3AEC, 0x0214, 0x3AEC, 0x2764, 0x3AEC, 0x4C91, 0x3AEC, 0x71A5, 0x3AEC, 0x968E, 0x3AEC, 0xBB5D, 0x3AEC, 0xE00A, 0x3AED, 0x049D, 0x3AED, 0x2905, 0x3AED, 0x4D53, 0x3AED, 0x7188, 0x3AED, 0x9592, 0x3AED, 0xB981, 0x3AED, 0xDD57, 0x3AEE, 0x010B, 0x3AEE, 0x249C, 0x3AEE, 0x4814, 0x3AEE, 0x6B69, 0x3AEE, 0x8EA5, 0x3AEE, 0xB1C6, 0x3AEE, 0xD4C6, 0x3AEE, 0xF7A3, 0x3AEF, 0x1A6E, 0x3AEF, 0x3D18, 0x3AEF, 0x5F9F, 0x3AEF, 0x820C, 0x3AEF, 0xA460, 0x3AEF, 0xC699, 0x3AEF, 0xE8B1, 0x3AF0, 0x0AB7, 0x3AF0, 0x2C9B, 0x3AF0, 0x4E5C, 0x3AF0, 0x700C, 0x3AF0, 0x919A, 0x3AF0, 0xB317, 0x3AF0, 0xD472, 0x3AF0, 0xF5B2, 0x3AF1, 0x16D9, 0x3AF1, 0x37E6, 0x3AF1, 0x58D9, 0x3AF1, 0x79B3, 0x3AF1, 0x9A73, 0x3AF1, 0xBB19, 0x3AF1, 0xDBA5, 0x3AF1, 0xFC17, 0x3AF2, 0x1C70, 0x3AF2, 0x3CB8, 0x3AF2, 0x5CDD, 0x3AF2, 0x7CE8, 0x3AF2, 0x9CE2, 0x3AF2, 0xBCC3, 0x3AF2, 0xDC8A, 0x3AF2, 0xFC36, 0x3AF3, 0x1BCA, 0x3AF3, 0x3B4C, 0x3AF3, 0x5AB4, 0x3AF3, 0x7A02, 0x3AF3, 0x9937, 0x3AF3, 0xB85A, 0x3AF3, 0xD764, 0x3AF3, 0xF654, 0x3AF4, 0x1533, 0x3AF4, 0x33F8, 0x3AF4, 0x52A3, 0x3AF4, 0x713D, 0x3AF4, 0x8FBD, 0x3AF4, 0xAE2C, 0x3AF4, 0xCC81, 0x3AF4, 0xEABD, 0x3AF5, 0x08E7, 0x3AF5, 0x2700, 0x3AF5, 0x44F7, 0x3AF5, 0x62E5, 0x3AF5, 0x80BA, 0x3AF5, 0x9E75, 0x3AF5, 0xBC1E, 0x3AF5, 0xD9B6, 0x3AF5, 0xF735, 0x3AF6, 0x149A, 0x3AF6, 0x31F6, 0x3AF6, 0x4F30, 0x3AF6, 0x6C61, 0x3AF6, 0x8978, 0x3AF6, 0xA67F, 0x3AF6, 0xC36B, 0x3AF6, 0xE047, 0x3AF6, 0xFD11, 0x3AF7, 0x19CA, 0x3AF7, 0x3669, 0x3AF7, 0x52F7, 0x3AF7, 0x6F6B, 0x3AF7, 0x8BD7, 0x3AF7, 0xA829, 0x3AF7, 0xC46A, 0x3AF7, 0xE091, 0x3AF7, 0xFCAF, 0x3AF8, 0x18B4, 0x3AF8, 0x34A7, 0x3AF8, 0x5089, 0x3AF8, 0x6C5A, 0x3AF8, 0x881A, 0x3AF8, 0xA3C0, 0x3AF8, 0xBF5E, 0x3AF8, 0xDAE1, 0x3AF8, 0xF654, 0x3AF9, 0x11B5, 0x3AF9, 0x2D06, 0x3AF9, 0x4845, 0x3AF9, 0x6373, 0x3AF9, 0x7E8F, 0x3AF9, 0x9992, 0x3AF9, 0xB48C, 0x3AF9, 0xCF76, 0x3AF9, 0xEA45, 0x3AFA, 0x050C, 0x3AFA, 0x1FC1, 0x3AFA, 0x3A5D, 0x3AFA, 0x54F0, 0x3AFA, 0x6F72, 0x3AFA, 0x89E3, 0x3AFA, 0xA443, 0x3AFA, 0xBE91, 0x3AFA, 0xD8CF, 0x3AFA, 0xF2FB, 0x3AFB, 0x0D16, 0x3AFB, 0x2720, 0x3AFB, 0x4121, 0x3AFB, 0x5B08, 0x3AFB, 0x74E7, 0x3AFB, 0x8EB5, 0x3AFB, 0xA871, 0x3AFB, 0xC21D, 0x3AFB, 0xDBB7, 0x3AFB, 0xF548, 0x3AFC, 0x0EC0, 0x3AFC, 0x282F, 0x3AFC, 0x418D, 0x3AFC, 0x5ADA, 0x3AFC, 0x741E, 0x3AFC, 0x8D51, 0x3AFC, 0xA673, 0x3AFC, 0xBF84, 0x3AFC, 0xD883, 0x3AFC, 0xF17A, 0x3AFD, 0x0A60, 0x3AFD, 0x2334, 0x3AFD, 0x3C00, 0x3AFD, 0x54BB, 0x3AFD, 0x6D65, 0x3AFD, 0x85FD, 0x3AFD, 0x9E8D, 0x3AFD, 0xB70C, 0x3AFD, 0xCF79, 0x3AFD, 0xE7DE, 0x3AFE, 0x0032, 0x3AFE, 0x187D, 0x3AFE, 0x30B7, 0x3AFE, 0x48E0, 0x3AFE, 0x60F7, 0x3AFE, 0x7906, 0x3AFE, 0x910C, 0x3AFE, 0xA8F9, 0x3AFE, 0xC0E6, 0x3AFE, 0xD8B9, 0x3AFE, 0xF083, 0x3AFF, 0x083C, 0x3AFF, 0x1FEC, 0x3AFF, 0x3794, 0x3AFF, 0x4F22, 0x3AFF, 0x66A8, 0x3AFF, 0x7E25, 0x3AFF, 0x9591, 0x3AFF, 0xACF4, 0x3AFF, 0xC446, 0x3AFF, 0xDB87, 0x3AFF, 0xF2BF, 0x3B00, 0x04F7, 0x3B00, 0x1087, 0x3B00, 0x1C11, 0x3B00, 0x2794, 0x3B00, 0x330E, 0x3B00, 0x3E83, 0x3B00, 0x49F4, 0x3B00, 0x555D, 0x3B00, 0x60C1, 0x3B00, 0x6C21, 0x3B00, 0x7774, 0x3B00, 0x82C7, 0x3B00, 0x8E12, 0x3B00, 0x9958, 0x3B00, 0xA496, 0x3B00, 0xAFCF, 0x3B00, 0xBB00, 0x3B00, 0xC62C, 0x3B00, 0xD154, 0x3B00, 0xDC74, 0x3B00, 0xE78F, 0x3B00, 0xF2A2, 0x3B00, 0xFDB0, 0x3B01, 0x08BA, 0x3B01, 0x13C0, 0x3B01, 0x1EBD, 0x3B01, 0x29B2, 0x3B01, 0x34A7, 0x3B01, 0x3F93, 0x3B01, 0x4A7A, 0x3B01, 0x5559, 0x3B01, 0x6034, 0x3B01, 0x6B0B, 0x3B01, 0x75D9, 0x3B01, 0x80A7, 0x3B01, 0x8B68, 0x3B01, 0x9629, 0x3B01, 0xA0E1, 0x3B01, 0xAB96, 0x3B01, 0xB645, 0x3B01, 0xC0F1, 0x3B01, 0xCB94, 0x3B01, 0xD633, 0x3B01, 0xE0CD, 0x3B01, 0xEB5F, 0x3B01, 0xF5ED, 0x3B02, 0x0076, 0x3B02, 0x0AFB, 0x3B02, 0x1577, 0x3B02, 0x1FF3, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3B8E, 0x43B4, 0x3BE1, 0xC520, 0x3C0E, 0x92C4, 0x3C25, 0xA35D, 0x3C38, 0x81DC, 0x3C48, 0x7A58, 0x3C56, 0x5313, 0x3C62, 0x8C3C, 0x3C6D, 0x7D51, 0x3C77, 0x64C6, 0x3C80, 0x3864, 0x3C84, 0x623A, 0x3C88, 0x3D81, 0x3C8B, 0xD50B, 0x3C8F, 0x3191, 0x3C92, 0x5A3B, 0x3C95, 0x54F1, 0x3C98, 0x26A8, 0x3C9A, 0xD391, 0x3C9D, 0x5F41, 0x3C9F, 0xCCCF, 0x3CA2, 0x1EE4, 0x3CA4, 0x57D9, 0x3CA6, 0x79B2, 0x3CA8, 0x864C, 0x3CAA, 0x7F30, 0x3CAC, 0x65DA, 0x3CAE, 0x3B87, 0x3CB0, 0x0160, 0x3CB1, 0xB86F, 0x3CB3, 0x61A7, 0x3CB4, 0xFDD9, 0x3CB6, 0x8DD1, 0x3CB8, 0x1245, 0x3CB9, 0x8BD8, 0x3CBA, 0xFB23, 0x3CBC, 0x60AE, 0x3CBD, 0xBCFF, 0x3CBF, 0x1091, 0x3CC0, 0x5BCB, 0x3CC1, 0x9F17, 0x3CC2, 0xDAD1, 0x3CC4, 0x0F54, 0x3CC5, 0x3CF6, 0x3CC6, 0x63FD, 0x3CC7, 0x84B9, 0x3CC8, 0x9F6C, 0x3CC9, 0xB454, 0x3CCA, 0xC3A8, 0x3CCB, 0xCDA9, 0x3CCC, 0xD286, 0x3CCD, 0xD271, 0x3CCE, 0xCD9E, 0x3CCF, 0xC433, 0x3CD0, 0xB661, 0x3CD1, 0xA44D, 0x3CD2, 0x8E1D, 0x3CD3, 0x73F0, 0x3CD4, 0x55EE, 0x3CD5, 0x3435, 0x3CD6, 0x0EE5, 0x3CD6, 0xE61B, 0x3CD7, 0xB9F0, 0x3CD8, 0x8A86, 0x3CD9, 0x57F0, 0x3CDA, 0x224B, 0x3CDA, 0xE9A6, 0x3CDB, 0xAE1C, 0x3CDC, 0x6FC8, 0x3CDD, 0x2EB5, 0x3CDD, 0xEAFD, 0x3CDE, 0xA4B1, 0x3CDF, 0x5BE0, 0x3CE0, 0x109C, 0x3CE0, 0xC2F9, 0x3CE1, 0x7307, 0x3CE2, 0x20D2, 0x3CE2, 0xCC68, 0x3CE3, 0x75DC, 0x3CE4, 0x1D36, 0x3CE4, 0xC282, 0x3CE5, 0x65D6, 0x3CE6, 0x0736, 0x3CE6, 0xA6AD, 0x3CE7, 0x4452, 0x3CE7, 0xE01E, 0x3CE8, 0x7A2D, 0x3CE9, 0x127E, 0x3CE9, 0xA91C, 0x3CEA, 0x3E12, 0x3CEA, 0xD16A, 0x3CEB, 0x6330, 0x3CEB, 0xF369, 0x3CEC, 0x821F, 0x3CED, 0x0F52, 0x3CED, 0x9B19, 0x3CEE, 0x256D, 0x3CEE, 0xAE5E, 0x3CEF, 0x35F3, 0x3CEF, 0xBC2B, 0x3CF0, 0x411B, 0x3CF0, 0xC4B9, 0x3CF1, 0x471A, 0x3CF1, 0xC83A, 0x3CF2, 0x4821, 0x3CF2, 0xC6D7, 0x3CF3, 0x4466, 0x3CF3, 0xC0C7, 0x3CF4, 0x3C0D, 0x3CF4, 0xB635, 0x3CF5, 0x2F47, 0x3CF5, 0xA747, 0x3CF6, 0x1E3A, 0x3CF6, 0x9426, 0x3CF7, 0x090B, 0x3CF7, 0x7CF4, 0x3CF7, 0xEFE1, 0x3CF8, 0x61D6, 0x3CF8, 0xD2DA, 0x3CF9, 0x42ED, 0x3CF9, 0xB218, 0x3CFA, 0x205D, 0x3CFA, 0x8DBB, 0x3CFA, 0xFA3C, 0x3CFB, 0x65E2, 0x3CFB, 0xD0AB, 0x3CFC, 0x3AA4, 0x3CFC, 0xA3CA, 0x3CFD, 0x0C20, 0x3CFD, 0x73A9, 0x3CFD, 0xDA6C, 0x3CFE, 0x406D, 0x3CFE, 0xA5A8, 0x3CFF, 0x0A21, 0x3CFF, 0x6DE4, 0x3CFF, 0xD0E6, 0x3D00, 0x199B, 0x3D00, 0x4A68, 0x3D00, 0x7ADA, 0x3D00, 0xAAF6, 0x3D00, 0xDABC, 0x3D01, 0x0A2C, 0x3D01, 0x3948, 0x3D01, 0x6812, 0x3D01, 0x9688, 0x3D01, 0xC4AE, 0x3D01, 0xF286, 0x3D02, 0x2010, 0x3D02, 0x4D4A, 0x3D02, 0x7A39, 0x3D02, 0xA6DC, 0x3D02, 0xD334, 0x3D02, 0xFF44, 0x3D03, 0x2B0B, 0x3D03, 0x5689, 0x3D03, 0x81C2, 0x3D03, 0xACB3, 0x3D03, 0xD760, 0x3D04, 0x01CA, 0x3D04, 0x2BF1, 0x3D04, 0x55D5, 0x3D04, 0x7F76, 0x3D04, 0xA8D9, 0x3D04, 0xD1FA, 0x3D04, 0xFADC, 0x3D05, 0x2380, 0x3D05, 0x4BE7, 0x3D05, 0x7410, 0x3D05, 0x9BFC, 0x3D05, 0xC3AC, 0x3D05, 0xEB24, 0x3D06, 0x1261, 0x3D06, 0x3962, 0x3D06, 0x602C, 0x3D06, 0x86BD, 0x3D06, 0xAD18, 0x3D06, 0xD33B, 0x3D06, 0xF926, 0x3D07, 0x1EDE, 0x3D07, 0x4460, 0x3D07, 0x69AC, 0x3D07, 0x8EC5, 0x3D07, 0xB3AB, 0x3D07, 0xD85E, 0x3D07, 0xFCDF, 0x3D08, 0x212C, 0x3D08, 0x454C, 0x3D08, 0x6938, 0x3D08, 0x8CF4, 0x3D08, 0xB080, 0x3D08, 0xD3DF, 0x3D08, 0xF70D, 0x3D09, 0x1A0D, 0x3D09, 0x3CE0, 0x3D09, 0x5F85, 0x3D09, 0x81FC, 0x3D09, 0xA449, 0x3D09, 0xC66B, 0x3D09, 0xE85E, 0x3D0A, 0x0A27, 0x3D0A, 0x2BC8, 0x3D0A, 0x4D3B, 0x3D0A, 0x6E86, 0x3D0A, 0x8FA9, 0x3D0A, 0xB0A0, 0x3D0A, 0xD170, 0x3D0A, 0xF217, 0x3D0B, 0x1298, 0x3D0B, 0x32EF, 0x3D0B, 0x5320, 0x3D0B, 0x732B, 0x3D0B, 0x930E, 0x3D0B, 0xB2CE, 0x3D0B, 0xD266, 0x3D0B, 0xF1D9, 0x3D0C, 0x1128, 0x3D0C, 0x3052, 0x3D0C, 0x4F56, 0x3D0C, 0x6E38, 0x3D0C, 0x8CF6, 0x3D0C, 0xAB8F, 0x3D0C, 0xCA08, 0x3D0C, 0xE85B, 0x3D0D, 0x068E, 0x3D0D, 0x249E, 0x3D0D, 0x428E, 0x3D0D, 0x605B, 0x3D0D, 0x7E05, 0x3D0D, 0x9B92, 0x3D0D, 0xB8FB, 0x3D0D, 0xD645, 0x3D0D, 0xF370, 0x3D0E, 0x1079, 0x3D0E, 0x2D65, 0x3D0E, 0x4A30, 0x3D0E, 0x66DB, 0x3D0E, 0x8369, 0x3D0E, 0x9FD9, 0x3D0E, 0xBC2B, 0x3D0E, 0xD85D, 0x3D0E, 0xF472, 0x3D0F, 0x106C, 0x3D0F, 0x2C46, 0x3D0F, 0x4804, 0x3D0F, 0x63A6, 0x3D0F, 0x7F29, 0x3D0F, 0x9A92, 0x3D0F, 0xB5DE, 0x3D0F, 0xD10E, 0x3D0F, 0xEC24, 0x3D10, 0x071C, 0x3D10, 0x21F9, 0x3D10, 0x3CBE, 0x3D10, 0x5766, 0x3D10, 0x71F3, 0x3D10, 0x8C68, 0x3D10, 0xA6C1, 0x3D10, 0xC100, 0x3D10, 0xDB27, 0x3D10, 0xF533, 0x3D11, 0x0F24, 0x3D11, 0x2900, 0x3D11, 0x42C0, 0x3D11, 0x5C69, 0x3D11, 0x75F7, 0x3D11, 0x8F6F, 0x3D11, 0xA8CD, 0x3D11, 0xC215, 0x3D11, 0xDB42, 0x3D11, 0xF459, 0x3D12, 0x0D59, 0x3D12, 0x2643, 0x3D12, 0x3F15, 0x3D12, 0x57CE, 0x3D12, 0x7070, 0x3D12, 0x88FF, 0x3D12, 0xA175, 0x3D12, 0xB9D4, 0x3D12, 0xD21D, 0x3D12, 0xEA50, 0x3D13, 0x026E, 0x3D13, 0x1A77, 0x3D13, 0x326A, 0x3D13, 0x4A47, 0x3D13, 0x6210, 0x3D13, 0x79C2, 0x3D13, 0x915F, 0x3D13, 0xA8E7, 0x3D13, 0xC05C, 0x3D13, 0xD7BB, 0x3D13, 0xEF08, 0x3D14, 0x063F, 0x3D14, 0x1D61, 0x3D14, 0x3470, 0x3D14, 0x4B6C, 0x3D14, 0x6253, 0x3D14, 0x7926, 0x3D14, 0x8FE7, 0x3D14, 0xA693, 0x3D14, 0xBD2E, 0x3D14, 0xD3B4, 0x3D14, 0xEA28, 0x3D15, 0x0088, 0x3D15, 0x16D6, 0x3D15, 0x2D13, 0x3D15, 0x433B, 0x3D15, 0x5953, 0x3D15, 0x6F58, 0x3D15, 0x854B, 0x3D15, 0x9B2A, 0x3D15, 0xB0FA, 0x3D15, 0xC6B6, 0x3D15, 0xDC60, 0x3D15, 0xF1FA, 0x3D16, 0x0784, 0x3D16, 0x1CFB, 0x3D16, 0x3261, 0x3D16, 0x47B5, 0x3D16, 0x5CF9, 0x3D16, 0x722D, 0x3D16, 0x874E, 0x3D16, 0x9C5F, 0x3D16, 0xB160, 0x3D16, 0xC650, 0x3D16, 0xDB31, 0x3D16, 0xF001, 0x3D17, 0x04C2, 0x3D17, 0x196F, 0x3D17, 0x2E0F, 0x3D17, 0x429F, 0x3D17, 0x571F, 0x3D17, 0x6B8F, 0x3D17, 0x7FF1, 0x3D17, 0x9441, 0x3D17, 0xA883, 0x3D17, 0xBCB5, 0x3D17, 0xD0DA, 0x3D17, 0xE4EE, 0x3D17, 0xF8F3, 0x3D18, 0x0CE7, 0x3D18, 0x20D1, 0x3D18, 0x34A7, 0x3D18, 0x4871, 0x3D18, 0x5C2D, 0x3D18, 0x6FD9, 0x3D18, 0x8377, 0x3D18, 0x9708, 0x3D18, 0xAA89, 0x3D18, 0xBDFC, 0x3D18, 0xD163, 0x3D18, 0xE4B8, 0x3D18, 0xF801, 0x3D19, 0x0B3C, 0x3D19, 0x1E6A, 0x3D19, 0x318A, 0x3D19, 0x449D, 0x3D19, 0x57A2, 0x3D19, 0x6A98, 0x3D19, 0x7D82, 0x3D19, 0x905F, 0x3D19, 0xA32C, 0x3D19, 0xB5EF, 0x3D19, 0xC8A4, 0x3D19, 0xDB4B, 0x3D19, 0xEDE5, 0x3D1A, 0x0074, 0x3D1A, 0x12F4, 0x3D1A, 0x2568, 0x3D1A, 0x37CF, 0x3D1A, 0x4A2B, 0x3D1A, 0x5C7A, 0x3D1A, 0x6EBC, 0x3D1A, 0x80F0, 0x3D1A, 0x9319, 0x3D1A, 0xA535, 0x3D1A, 0xB746, 0x3D1A, 0xC94A, 0x3D1A, 0xDB43, 0x3D1A, 0xED2E, 0x3D1A, 0xFF0F, 0x3D1B, 0x10E3, 0x3D1B, 0x22AB, 0x3D1B, 0x3467, 0x3D1B, 0x461A, 0x3D1B, 0x57BD, 0x3D1B, 0x6958, 0x3D1B, 0x7AE5, 0x3D1B, 0x8C68, 0x3D1B, 0x9DDE, 0x3D1B, 0xAF4B, 0x3D1B, 0xC0AB, 0x3D1B, 0xD200, 0x3D1B, 0xE348, 0x3D1B, 0xF488, 0x3D1C, 0x05BA, 0x3D1C, 0x16E5, 0x3D1C, 0x2801, 0x3D1C, 0x3914, 0x3D1C, 0x4A1B, 0x3D1C, 0x5B18, 0x3D1C, 0x6C0C, 0x3D1C, 0x7CF3, 0x3D1C, 0x8DD0, 0x3D1C, 0x9EA2, 0x3D1C, 0xAF69, 0x3D1C, 0xC027, 0x3D1C, 0xD0D9, 0x3D1C, 0xE182, 0x3D1C, 0xF21E, 0x3D1D, 0x02B2, 0x3D1D, 0x133C, 0x3D1D, 0x23BD, 0x3D1D, 0x3431, 0x3D1D, 0x449C, 0x3D1D, 0x54FD, 0x3D1D, 0x6553, 0x3D1D, 0x75A2, 0x3D1D, 0x85E2, 0x3D1D, 0x961E, 0x3D1D, 0xA64C, 0x3D1D, 0xB672, 0x3D1D, 0xC68D, 0x3D1D, 0xD6A0, 0x3D1D, 0xE6A8, 0x3D1D, 0xF6A6, 0x3D1E, 0x069B, 0x3D1E, 0x1689, 0x3D1E, 0x266C, 0x3D1E, 0x3644, 0x3D1E, 0x4614, 0x3D1E, 0x55D9, 0x3D1E, 0x6596, 0x3D1E, 0x754C, 0x3D1E, 0x84F6, 0x3D1E, 0x9498, 0x3D1E, 0xA430, 0x3D1E, 0xB3C0, 0x3D1E, 0xC344, 0x3D1E, 0xD2C4, 0x3D1E, 0xE236, 0x3D1E, 0xF1A3, 0x3D1F, 0x0105, 0x3D1F, 0x105E, 0x3D1F, 0x1FB0, 0x3D1F, 0x2EF7, 0x3D1F, 0x3E39, 0x3D1F, 0x4D6D, 0x3D1F, 0x5C9C, 0x3D1F, 0x6BC3, 0x3D1F, 0x7ADF, 0x3D1F, 0x89F4, 0x3D1F, 0x9900, 0x3D1F, 0xA804, 0x3D1F, 0xB700, 0x3D1F, 0xC5F3, 0x3D1F, 0xD4DD, 0x3D1F, 0xE3C0, 0x3D1F, 0xF299, 0x3D20, 0x016A, 0x3D20, 0x1033, 0x3D20, 0x1EF7, 0x3D20, 0x2DB0, 0x3D20, 0x3C61, 0x3D20, 0x4B09, 0x3D20, 0x59AA, 0x3D20, 0x6845, 0x3D20, 0x76D6, 0x3D20, 0x855E, 0x3D20, 0x93E1, 0x3D20, 0xA25A, 0x3D20, 0xB0CD, 0x3D20, 0xBF35, 0x3D20, 0xCD98, 0x3D20, 0xDBF3, 0x3D20, 0xEA46, 0x3D20, 0xF891, 0x3D21, 0x06D3, 0x3D21, 0x1511, 0x3D21, 0x2346, 0x3D21, 0x3173, 0x3D21, 0x3F98, 0x3D21, 0x4DB6, 0x3D21, 0x5BCD, 0x3D21, 0x69DA, 0x3D21, 0x77E5, 0x3D21, 0x85E4, 0x3D21, 0x93DF, 0x3D21, 0xA1CE, 0x3D21, 0xAFBB, 0x3D21, 0xBD9D, 0x3D21, 0xCB7A, 0x3D21, 0xD94E, 0x3D21, 0xE71E, 0x3D21, 0xF4E5, 0x3D22, 0x02A4, 0x3D22, 0x105B, 0x3D22, 0x1E0D, 0x3D22, 0x2BB9, 0x3D22, 0x395E, 0x3D22, 0x46FA, 0x3D22, 0x548E, 0x3D22, 0x6220, 0x3D22, 0x6FA7, 0x3D22, 0x7D28, 0x3D22, 0x8AA2, 0x3D22, 0x9816, 0x3D22, 0xA584, 0x3D22, 0xB2EB, 0x3D22, 0xC049, 0x3D22, 0xCDA3, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3BB1, 0xED50, 0x3C0D, 0x3A42, 0x3C32, 0x68FE, 0x3C4F, 0x4F08, 0x3C66, 0xF537, 0x3C7A, 0xFABD, 0x3C86, 0x2BCE, 0x3C8D, 0xD617, 0x3C94, 0xB2EA, 0x3C9A, 0xE96B, 0x3CA0, 0x9678, 0x3CA5, 0xD003, 0x3CAA, 0xA723, 0x3CAF, 0x295E, 0x3CB3, 0x61A7, 0x3CB7, 0x58E7, 0x3CBB, 0x1692, 0x3CBE, 0xA0D5, 0x3CC1, 0xFCF0, 0x3CC5, 0x2F6A, 0x3CC8, 0x3C14, 0x3CCB, 0x264F, 0x3CCD, 0xF104, 0x3CD0, 0x9EC4, 0x3CD3, 0x31D6, 0x3CD5, 0xAC34, 0x3CD8, 0x0FAC, 0x3CDA, 0x5DDA, 0x3CDC, 0x982C, 0x3CDE, 0xBFF4, 0x3CE0, 0xD654, 0x3CE2, 0xDC63, 0x3CE4, 0xD319, 0x3CE6, 0xBB5B, 0x3CE8, 0x95F6, 0x3CEA, 0x63A6, 0x3CEC, 0x2522, 0x3CED, 0xDB0A, 0x3CEF, 0x85EF, 0x3CF1, 0x265E, 0x3CF2, 0xBCD6, 0x3CF4, 0x49D4, 0x3CF5, 0xCDBD, 0x3CF7, 0x4907, 0x3CF8, 0xBC09, 0x3CFA, 0x271E, 0x3CFB, 0x8AA0, 0x3CFC, 0xE6D6, 0x3CFE, 0x3C16, 0x3CFF, 0x8A9F, 0x3D00, 0x695C, 0x3D01, 0x0A4F, 0x3D01, 0xA846, 0x3D02, 0x435C, 0x3D02, 0xDBAA, 0x3D03, 0x714F, 0x3D04, 0x045C, 0x3D04, 0x94ED, 0x3D05, 0x2312, 0x3D05, 0xAEE4, 0x3D06, 0x3874, 0x3D06, 0xBFD5, 0x3D07, 0x4519, 0x3D07, 0xC84E, 0x3D08, 0x4988, 0x3D08, 0xC8D4, 0x3D09, 0x4642, 0x3D09, 0xC1DE, 0x3D0A, 0x3BB6, 0x3D0A, 0xB3D6, 0x3D0B, 0x2A4E, 0x3D0B, 0x9F23, 0x3D0C, 0x1268, 0x3D0C, 0x8422, 0x3D0C, 0xF45D, 0x3D0D, 0x6322, 0x3D0D, 0xD080, 0x3D0E, 0x3C79, 0x3D0E, 0xA71A, 0x3D0F, 0x106C, 0x3D0F, 0x7873, 0x3D0F, 0xDF3B, 0x3D10, 0x44C9, 0x3D10, 0xA928, 0x3D11, 0x0C5D, 0x3D11, 0x6E6D, 0x3D11, 0xCF60, 0x3D12, 0x2F3F, 0x3D12, 0x8E0D, 0x3D12, 0xEBD0, 0x3D13, 0x488F, 0x3D13, 0xA44F, 0x3D13, 0xFF16, 0x3D14, 0x58E8, 0x3D14, 0xB1CE, 0x3D15, 0x09C8, 0x3D15, 0x60DD, 0x3D15, 0xB711, 0x3D16, 0x0C69, 0x3D16, 0x60EA, 0x3D16, 0xB498, 0x3D17, 0x0773, 0x3D17, 0x5986, 0x3D17, 0xAAD2, 0x3D17, 0xFB59, 0x3D18, 0x4B20, 0x3D18, 0x9A2B, 0x3D18, 0xE87C, 0x3D19, 0x3617, 0x3D19, 0x8301, 0x3D19, 0xCF3C, 0x3D1A, 0x1AC9, 0x3D1A, 0x65AF, 0x3D1A, 0xAFEF, 0x3D1A, 0xF989, 0x3D1B, 0x4284, 0x3D1B, 0x8AE3, 0x3D1B, 0xD2A4, 0x3D1C, 0x19CF, 0x3D1C, 0x6061, 0x3D1C, 0xA661, 0x3D1C, 0xEBD1, 0x3D1D, 0x30B0, 0x3D1D, 0x7506, 0x3D1D, 0xB8CE, 0x3D1D, 0xFC0F, 0x3D1E, 0x3ECA, 0x3D1E, 0x8102, 0x3D1E, 0xC2B9, 0x3D1F, 0x03EC, 0x3D1F, 0x44A4, 0x3D1F, 0x84E0, 0x3D1F, 0xC4A1, 0x3D20, 0x03EC, 0x3D20, 0x42BE, 0x3D20, 0x811A, 0x3D20, 0xBF05, 0x3D20, 0xFC7D, 0x3D21, 0x3986, 0x3D21, 0x761F, 0x3D21, 0xB24D, 0x3D21, 0xEE11, 0x3D22, 0x2968, 0x3D22, 0x6459, 0x3D22, 0x9EE1, 0x3D22, 0xD906, 0x3D23, 0x12C4, 0x3D23, 0x4C23, 0x3D23, 0x851D, 0x3D23, 0xBDBA, 0x3D23, 0xF5F6, 0x3D24, 0x2DD5, 0x3D24, 0x6558, 0x3D24, 0x9C7D, 0x3D24, 0xD34C, 0x3D25, 0x09C0, 0x3D25, 0x3FDB, 0x3D25, 0x75A0, 0x3D25, 0xAB10, 0x3D25, 0xE02C, 0x3D26, 0x14F2, 0x3D26, 0x4968, 0x3D26, 0x7D8B, 0x3D26, 0xB160, 0x3D26, 0xE4E4, 0x3D27, 0x1817, 0x3D27, 0x4B00, 0x3D27, 0x7D9B, 0x3D27, 0xAFE8, 0x3D27, 0xE1EC, 0x3D28, 0x13A5, 0x3D28, 0x4516, 0x3D28, 0x763E, 0x3D28, 0xA721, 0x3D28, 0xD7BB, 0x3D29, 0x080F, 0x3D29, 0x381D, 0x3D29, 0x67E6, 0x3D29, 0x976E, 0x3D29, 0xC6B3, 0x3D29, 0xF5B2, 0x3D2A, 0x2474, 0x3D2A, 0x52F2, 0x3D2A, 0x8133, 0x3D2A, 0xAF33, 0x3D2A, 0xDCF6, 0x3D2B, 0x0A78, 0x3D2B, 0x37BF, 0x3D2B, 0x64C8, 0x3D2B, 0x9196, 0x3D2B, 0xBE2A, 0x3D2B, 0xEA7F, 0x3D2C, 0x169C, 0x3D2C, 0x4281, 0x3D2C, 0x6E2B, 0x3D2C, 0x999C, 0x3D2C, 0xC4D7, 0x3D2C, 0xEFDB, 0x3D2D, 0x1AA5, 0x3D2D, 0x453D, 0x3D2D, 0x6F9D, 0x3D2D, 0x99C7, 0x3D2D, 0xC3BD, 0x3D2D, 0xED81, 0x3D2E, 0x170F, 0x3D2E, 0x406A, 0x3D2E, 0x6992, 0x3D2E, 0x928A, 0x3D2E, 0xBB4F, 0x3D2E, 0xE3E3, 0x3D2F, 0x0C48, 0x3D2F, 0x3479, 0x3D2F, 0x5C7C, 0x3D2F, 0x844F, 0x3D2F, 0xABF5, 0x3D2F, 0xD36A, 0x3D2F, 0xFAB4, 0x3D30, 0x21CE, 0x3D30, 0x48BB, 0x3D30, 0x6F7C, 0x3D30, 0x9610, 0x3D30, 0xBC79, 0x3D30, 0xE2B4, 0x3D31, 0x08C4, 0x3D31, 0x2EAC, 0x3D31, 0x5466, 0x3D31, 0x79F8, 0x3D31, 0x9F5F, 0x3D31, 0xC49E, 0x3D31, 0xE9B2, 0x3D32, 0x0EA0, 0x3D32, 0x3364, 0x3D32, 0x5801, 0x3D32, 0x7C74, 0x3D32, 0xA0C2, 0x3D32, 0xC4E9, 0x3D32, 0xE8E9, 0x3D33, 0x0CC2, 0x3D33, 0x3074, 0x3D33, 0x5403, 0x3D33, 0x776C, 0x3D33, 0x9AAF, 0x3D33, 0xBDCD, 0x3D33, 0xE0C5, 0x3D34, 0x039B, 0x3D34, 0x264D, 0x3D34, 0x48DD, 0x3D34, 0x6B47, 0x3D34, 0x8D8E, 0x3D34, 0xAFB2, 0x3D34, 0xD1B6, 0x3D34, 0xF398, 0x3D35, 0x1556, 0x3D35, 0x36F1, 0x3D35, 0x586C, 0x3D35, 0x79C7, 0x3D35, 0x9AFF, 0x3D35, 0xBC1A, 0x3D35, 0xDD11, 0x3D35, 0xFDE9, 0x3D36, 0x1EA3, 0x3D36, 0x3F3A, 0x3D36, 0x5FB3, 0x3D36, 0x800C, 0x3D36, 0xA048, 0x3D36, 0xC064, 0x3D36, 0xE061, 0x3D37, 0x0042, 0x3D37, 0x2002, 0x3D37, 0x3FA8, 0x3D37, 0x5F2D, 0x3D37, 0x7E94, 0x3D37, 0x9DE1, 0x3D37, 0xBD0E, 0x3D37, 0xDC1F, 0x3D37, 0xFB16, 0x3D38, 0x19F0, 0x3D38, 0x38AC, 0x3D38, 0x574D, 0x3D38, 0x75D3, 0x3D38, 0x943B, 0x3D38, 0xB289, 0x3D38, 0xD0BC, 0x3D38, 0xEED4, 0x3D39, 0x0CD1, 0x3D39, 0x2AB4, 0x3D39, 0x487B, 0x3D39, 0x662B, 0x3D39, 0x83BF, 0x3D39, 0xA139, 0x3D39, 0xBE9B, 0x3D39, 0xDBE1, 0x3D39, 0xF90D, 0x3D3A, 0x1624, 0x3D3A, 0x331F, 0x3D3A, 0x5000, 0x3D3A, 0x6CCB, 0x3D3A, 0x897C, 0x3D3A, 0xA616, 0x3D3A, 0xC297, 0x3D3A, 0xDEFE, 0x3D3A, 0xFB51, 0x3D3B, 0x178B, 0x3D3B, 0x33AB, 0x3D3B, 0x4FB7, 0x3D3B, 0x6BA9, 0x3D3B, 0x8785, 0x3D3B, 0xA34C, 0x3D3B, 0xBEF8, 0x3D3B, 0xDA92, 0x3D3B, 0xF613, 0x3D3C, 0x117E, 0x3D3C, 0x2CD2, 0x3D3C, 0x4810, 0x3D3C, 0x633B, 0x3D3C, 0x7E4E, 0x3D3C, 0x9949, 0x3D3C, 0xB431, 0x3D3C, 0xCF03, 0x3D3C, 0xE9C0, 0x3D3D, 0x0468, 0x3D3D, 0x1EFD, 0x3D3D, 0x3979, 0x3D3D, 0x53E3, 0x3D3D, 0x6E38, 0x3D3D, 0x8879, 0x3D3D, 0xA2A3, 0x3D3D, 0xBCBC, 0x3D3D, 0xD6C0, 0x3D3D, 0xF0AE, 0x3D3E, 0x0A8A, 0x3D3E, 0x2453, 0x3D3E, 0x3E06, 0x3D3E, 0x57A7, 0x3D3E, 0x7135, 0x3D3E, 0x8AB0, 0x3D3E, 0xA415, 0x3D3E, 0xBD6B, 0x3D3E, 0xD6AA, 0x3D3E, 0xEFDA, 0x3D3F, 0x08F5, 0x3D3F, 0x21FC, 0x3D3F, 0x3AF4, 0x3D3F, 0x53D8, 0x3D3F, 0x6CA7, 0x3D3F, 0x8569, 0x3D3F, 0x9E15, 0x3D3F, 0xB6B2, 0x3D3F, 0xCF38, 0x3D3F, 0xE7B2, 0x3D40, 0x0018, 0x3D40, 0x186C, 0x3D40, 0x30AF, 0x3D40, 0x48E0, 0x3D40, 0x6101, 0x3D40, 0x790F, 0x3D40, 0x910D, 0x3D40, 0xA8FA, 0x3D40, 0xC0D5, 0x3D40, 0xD8A0, 0x3D40, 0xF05B, 0x3D41, 0x0805, 0x3D41, 0x1F9D, 0x3D41, 0x3728, 0x3D41, 0x4E9F, 0x3D41, 0x6609, 0x3D41, 0x7D61, 0x3D41, 0x94A8, 0x3D41, 0xABDF, 0x3D41, 0xC309, 0x3D41, 0xDA20, 0x3D41, 0xF129, 0x3D42, 0x0823, 0x3D42, 0x1F09, 0x3D42, 0x35E5, 0x3D42, 0x4CAE, 0x3D42, 0x636A, 0x3D42, 0x7A16, 0x3D42, 0x90B1, 0x3D42, 0xA73F, 0x3D42, 0xBDBD, 0x3D42, 0xD42E, 0x3D42, 0xEA8E, 0x3D43, 0x00E1, 0x3D43, 0x1724, 0x3D43, 0x2D57, 0x3D43, 0x437C, 0x3D43, 0x5994, 0x3D43, 0x6F9E, 0x3D43, 0x8599, 0x3D43, 0x9B86, 0x3D43, 0xB163, 0x3D43, 0xC732, 0x3D43, 0xDCF4, 0x3D43, 0xF2A9, 0x3D44, 0x0850, 0x3D44, 0x1DE7, 0x3D44, 0x3373, 0x3D44, 0x48F0, 0x3D44, 0x5E5F, 0x3D44, 0x73C0, 0x3D44, 0x8917, 0x3D44, 0x9E5D, 0x3D44, 0xB396, 0x3D44, 0xC8C2, 0x3D44, 0xDDE0, 0x3D44, 0xF2F4, 0x3D45, 0x07F7, 0x3D45, 0x1CF0, 0x3D45, 0x31D9, 0x3D45, 0x46B6, 0x3D45, 0x5B8A, 0x3D45, 0x704D, 0x3D45, 0x8505, 0x3D45, 0x99B0, 0x3D45, 0xAE4D, 0x3D45, 0xC2DD, 0x3D45, 0xD762, 0x3D45, 0xEBDD, 0x3D46, 0x0047, 0x3D46, 0x14A7, 0x3D46, 0x28FC, 0x3D46, 0x3D44, 0x3D46, 0x5180, 0x3D46, 0x65B0, 0x3D46, 0x79D2, 0x3D46, 0x8DE9, 0x3D46, 0xA1F6, 0x3D46, 0xB5F5, 0x3D46, 0xC9E9, 0x3D46, 0xDDD0, 0x3D46, 0xF1AC, 0x3D47, 0x057D, 0x3D47, 0x1941, 0x3D47, 0x2CFD, 0x3D47, 0x40A9, 0x3D47, 0x544D, 0x3D47, 0x67E3, 0x3D47, 0x7B6F, 0x3D47, 0x8EF0, 0x3D47, 0xA266, 0x3D47, 0xB5D2, 0x3D47, 0xC930, 0x3D47, 0xDC85, 0x3D47, 0xEFCE, 0x3D48, 0x030C, 0x3D48, 0x163F, 0x3D48, 0x2967, 0x3D48, 0x3C85, 0x3D48, 0x4F98, 0x3D48, 0x62A0, 0x3D48, 0x759D, 0x3D48, 0x8890, 0x3D48, 0x9B78, 0x3D48, 0xAE55, 0x3D48, 0xC12A, 0x3D48, 0xD3F2, 0x3D48, 0xE6AE, 0x3D48, 0xF963, 0x3D49, 0x0C0D, 0x3D49, 0x1EAD, 0x3D49, 0x3142, 0x3D49, 0x43CC, 0x3D49, 0x564D, 0x3D49, 0x68C5, 0x3D49, 0x7B31, 0x3D49, 0x8D93, 0x3D49, 0x9FEC, 0x3D49, 0xB23B, 0x3D49, 0xC47F, 0x3D49, 0xD6B9, 0x3D49, 0xE8EA, 0x3D49, 0xFB13, 0x3D4A, 0x0D2F, 0x3D4A, 0x1F43, 0x3D4A, 0x314F, 0x3D4A, 0x4350, 0x3D4A, 0x5546, 0x3D4A, 0x6734, 0x3D4A, 0x7918, 0x3D4A, 0x8AF3, 0x3D4A, 0x9CC4, 0x3D4A, 0xAE8D, 0x3D4A, 0xC04B, 0x3D4A, 0xD201, 0x3D4A, 0xE3AE, 0x3D4A, 0xF54F, 0x3D4B, 0x06EA, 0x3D4B, 0x187A, 0x3D4B, 0x2A02, 0x3D4B, 0x3B80, 0x3D4B, 0x4CF5, 0x3D4B, 0x5E63, 0x3D4B, 0x6FC5, 0x3D4B, 0x8120, 0x3D4B, 0x9273, 0x3D4B, 0xA3BA, 0x3D4B, 0xB4FD, 0x3D4B, 0xC632, 0x3D4B, 0xD761, 0x3D4B, 0xE886, 0x3D4B, 0xF9A6, 0x3D4C, 0x0AB8, 0x3D4C, 0x1BC5, 0x3D4C, 0x2CCA, 0x3D4C, 0x3DC4, 0x3D4C, 0x4EB5, 0x3D4C, 0x5F9F, 0x3D4C, 0x7081, 0x3D4C, 0x815B, 0xBF80, 0x0000, 0x0000, 0x0000, 0x3BED, 0x734F, 0x3C3C, 0x92CE, 0x3C6E, 0x4F89, 0x3C8A, 0x7F15, 0x3C9A, 0x5526, 0x3CA7, 0xBED1, 0x3CB3, 0x61A7, 0x3CBD, 0xA89D, 0x3CC6, 0xDCD4, 0x3CCF, 0x3283, 0x3CD6, 0xD046, 0x3CDD, 0xD36A, 0x3CE4, 0x52D0, 0x3CEA, 0x608C, 0x3CF0, 0x0B40, 0x3CF5, 0x5ED7, 0x3CFA, 0x6547, 0x3CFF, 0x26D7, 0x3D01, 0xD548, 0x3D03, 0xFB3D, 0x3D06, 0x07DA, 0x3D07, 0xFD65, 0x3D09, 0xDDCD, 0x3D0B, 0xAAC9, 0x3D0D, 0x65E2, 0x3D0F, 0x106C, 0x3D10, 0xAB99, 0x3D12, 0x3882, 0x3D13, 0xB816, 0x3D15, 0x2B38, 0x3D16, 0x92AE, 0x3D17, 0xEF35, 0x3D19, 0x416D, 0x3D1A, 0x89F2, 0x3D1B, 0xC94C, 0x3D1D, 0x0001, 0x3D1E, 0x2E7F, 0x3D1F, 0x5538, 0x3D20, 0x748D, 0x3D21, 0x8CDB, 0x3D22, 0x9E7B, 0x3D23, 0xA9BB, 0x3D24, 0xAEE9, 0x3D25, 0xAE45, 0x3D26, 0xA813, 0x3D27, 0x9C92, 0x3D28, 0x8BF5, 0x3D29, 0x7679, 0x3D2A, 0x5C4A, 0x3D2B, 0x3D9B, 0x3D2C, 0x1A98, 0x3D2C, 0xF36B, 0x3D2D, 0xC83A, 0x3D2E, 0x992D, 0x3D2F, 0x6665, 0x3D30, 0x3004, 0x3D30, 0xF62A, 0x3D31, 0xB8F8, 0x3D32, 0x7888, 0x3D33, 0x34F6, 0x3D33, 0xEE5A, 0x3D34, 0xA4D0, 0x3D35, 0x586C, 0x3D36, 0x0949, 0x3D36, 0xB77A, 0x3D37, 0x6311, 0x3D38, 0x0C26, 0x3D38, 0xB2C7, 0x3D39, 0x570C, 0x3D39, 0xF900, 0x3D3A, 0x98B8, 0x3D3B, 0x363F, 0x3D3B, 0xD1AB, 0x3D3C, 0x6B03, 0x3D3D, 0x025A, 0x3D3D, 0x97BB, 0x3D3E, 0x2B34, 0x3D3E, 0xBCD2, 0x3D3F, 0x4C9F, 0x3D3F, 0xDAA6, 0x3D40, 0x66F6, 0x3D40, 0xF195, 0x3D41, 0x7A91, 0x3D42, 0x01F3, 0x3D42, 0x87C2, 0x3D43, 0x0C09, 0x3D43, 0x8ED3, 0x3D44, 0x1025, 0x3D44, 0x9008, 0x3D45, 0x0E88, 0x3D45, 0x8BA8, 0x3D46, 0x0771, 0x3D46, 0x81EA, 0x3D46, 0xFB1C, 0x3D47, 0x730C, 0x3D47, 0xE9C1, 0x3D48, 0x5F42, 0x3D48, 0xD394, 0x3D49, 0x46BE, 0x3D49, 0xB8C6, 0x3D4A, 0x29B2, 0x3D4A, 0x9984, 0x3D4B, 0x0847, 0x3D4B, 0x75FD, 0x3D4B, 0xE2AD, 0x3D4C, 0x4E57, 0x3D4C, 0xB906, 0x3D4D, 0x22BB, 0x3D4D, 0x8B7C, 0x3D4D, 0xF34B, 0x3D4E, 0x5A30, 0x3D4E, 0xC02D, 0x3D4F, 0x2544, 0x3D4F, 0x8980, 0x3D4F, 0xECDD, 0x3D50, 0x4F61, 0x3D50, 0xB113, 0x3D51, 0x11F3, 0x3D51, 0x7206, 0x3D51, 0xD14E, 0x3D52, 0x2FD0, 0x3D52, 0x8D8E, 0x3D52, 0xEA8E, 0x3D53, 0x46CF, 0x3D53, 0xA257, 0x3D53, 0xFD25, 0x3D54, 0x5740, 0x3D54, 0xB0A9, 0x3D55, 0x0964, 0x3D55, 0x6174, 0x3D55, 0xB8D7, 0x3D56, 0x0F94, 0x3D56, 0x65AD, 0x3D56, 0xBB25, 0x3D57, 0x0FFA, 0x3D57, 0x6435, 0x3D57, 0xB7D2, 0x3D58, 0x0AD9, 0x3D58, 0x5D47, 0x3D58, 0xAF21, 0x3D59, 0x0067, 0x3D59, 0x511F, 0x3D59, 0xA147, 0x3D59, 0xF0E2, 0x3D5A, 0x3FF5, 0x3D5A, 0x8E7C, 0x3D5A, 0xDC80, 0x3D5B, 0x29FA, 0x3D5B, 0x76F4, 0x3D5B, 0xC36D, 0x3D5C, 0x0F63, 0x3D5C, 0x5ADD, 0x3D5C, 0xA5DB, 0x3D5C, 0xF05B, 0x3D5D, 0x3A66, 0x3D5D, 0x83F7, 0x3D5D, 0xCD10, 0x3D5E, 0x15B5, 0x3D5E, 0x5DE9, 0x3D5E, 0xA5A8, 0x3D5E, 0xECF8, 0x3D5F, 0x33DA, 0x3D5F, 0x7A4C, 0x3D5F, 0xC052, 0x3D60, 0x05ED, 0x3D60, 0x4B1F, 0x3D60, 0x8FE5, 0x3D60, 0xD449, 0x3D61, 0x1843, 0x3D61, 0x5BD8, 0x3D61, 0x9F09, 0x3D61, 0xE1DA, 0x3D62, 0x2448, 0x3D62, 0x6654, 0x3D62, 0xA803, 0x3D62, 0xE951, 0x3D63, 0x2A44, 0x3D63, 0x6ADC, 0x3D63, 0xAB15, 0x3D63, 0xEAF7, 0x3D64, 0x2A7F, 0x3D64, 0x69AF, 0x3D64, 0xA886, 0x3D64, 0xE70A, 0x3D65, 0x2536, 0x3D65, 0x630E, 0x3D65, 0xA093, 0x3D65, 0xDDC5, 0x3D66, 0x1AA7, 0x3D66, 0x5735, 0x3D66, 0x9375, 0x3D66, 0xCF65, 0x3D67, 0x0B04, 0x3D67, 0x4658, 0x3D67, 0x8161, 0x3D67, 0xBC19, 0x3D67, 0xF689, 0x3D68, 0x30AE, 0x3D68, 0x6A8A, 0x3D68, 0xA41B, 0x3D68, 0xDD64, 0x3D69, 0x1667, 0x3D69, 0x4F21, 0x3D69, 0x8796, 0x3D69, 0xBFC5, 0x3D69, 0xF7B0, 0x3D6A, 0x2F56, 0x3D6A, 0x66B9, 0x3D6A, 0x9DD6, 0x3D6A, 0xD4B2, 0x3D6B, 0x0B4F, 0x3D6B, 0x41AA, 0x3D6B, 0x77C3, 0x3D6B, 0xAD9B, 0x3D6B, 0xE335, 0x3D6C, 0x1892, 0x3D6C, 0x4DAE, 0x3D6C, 0x8290, 0x3D6C, 0xB733, 0x3D6C, 0xEB99, 0x3D6D, 0x1FC3, 0x3D6D, 0x53B3, 0x3D6D, 0x8768, 0x3D6D, 0xBAE1, 0x3D6D, 0xEE20, 0x3D6E, 0x2128, 0x3D6E, 0x53F6, 0x3D6E, 0x868B, 0x3D6E, 0xB8E8, 0x3D6E, 0xEB10, 0x3D6F, 0x1CFE, 0x3D6F, 0x4EB8, 0x3D6F, 0x803B, 0x3D6F, 0xB189, 0x3D6F, 0xE2A1, 0x3D70, 0x1384, 0x3D70, 0x4436, 0x3D70, 0x74AF, 0x3D70, 0xA4F9, 0x3D70, 0xD50F, 0x3D71, 0x04F3, 0x3D71, 0x34A3, 0x3D71, 0x6423, 0x3D71, 0x9373, 0x3D71, 0xC290, 0x3D71, 0xF17F, 0x3D72, 0x203B, 0x3D72, 0x4ECA, 0x3D72, 0x7D28, 0x3D72, 0xAB59, 0x3D72, 0xD959, 0x3D73, 0x072C, 0x3D73, 0x34D1, 0x3D73, 0x6248, 0x3D73, 0x8F92, 0x3D73, 0xBCB0, 0x3D73, 0xE9A2, 0x3D74, 0x1668, 0x3D74, 0x4300, 0x3D74, 0x6F71, 0x3D74, 0x9BB3, 0x3D74, 0xC7CB, 0x3D74, 0xF3BA, 0x3D75, 0x1F7F, 0x3D75, 0x4B19, 0x3D75, 0x768A, 0x3D75, 0xA1D0, 0x3D75, 0xCCF1, 0x3D75, 0xF7E7, 0x3D76, 0x22B4, 0x3D76, 0x4D59, 0x3D76, 0x77D9, 0x3D76, 0xA231, 0x3D76, 0xCC60, 0x3D76, 0xF669, 0x3D77, 0x204D, 0x3D77, 0x4A09, 0x3D77, 0x739F, 0x3D77, 0x9D10, 0x3D77, 0xC65B, 0x3D77, 0xEF83, 0x3D78, 0x1883, 0x3D78, 0x4160, 0x3D78, 0x6A1A, 0x3D78, 0x92AE, 0x3D78, 0xBB1D, 0x3D78, 0xE369, 0x3D79, 0x0B95, 0x3D79, 0x339B, 0x3D79, 0x5B7E, 0x3D79, 0x833F, 0x3D79, 0xAADC, 0x3D79, 0xD257, 0x3D79, 0xF9B1, 0x3D7A, 0x20EB, 0x3D7A, 0x4800, 0x3D7A, 0x6EF7, 0x3D7A, 0x95CB, 0x3D7A, 0xBC7F, 0x3D7A, 0xE313, 0x3D7B, 0x0984, 0x3D7B, 0x2FD7, 0x3D7B, 0x560A, 0x3D7B, 0x7C1A, 0x3D7B, 0xA210, 0x3D7B, 0xC7E2, 0x3D7B, 0xED97, 0x3D7C, 0x132C, 0x3D7C, 0x38A3, 0x3D7C, 0x5DFA, 0x3D7C, 0x8333, 0x3D7C, 0xA84F, 0x3D7C, 0xCD4E, 0x3D7C, 0xF22F, 0x3D7D, 0x16EF, 0x3D7D, 0x3B95, 0x3D7D, 0x601D, 0x3D7D, 0x8488, 0x3D7D, 0xA8D5, 0x3D7D, 0xCD05, 0x3D7D, 0xF11A, 0x3D7E, 0x1511, 0x3D7E, 0x38EE, 0x3D7E, 0x5CAD, 0x3D7E, 0x8051, 0x3D7E, 0xA3DA, 0x3D7E, 0xC748, 0x3D7E, 0xEA99, 0x3D7F, 0x0DCF, 0x3D7F, 0x30EB, 0x3D7F, 0x53EB, 0x3D7F, 0x76D1, 0x3D7F, 0x999E, 0x3D7F, 0xBC4E, 0x3D7F, 0xDEE5, 0x3D80, 0x00B1, 0x3D80, 0x11E2, 0x3D80, 0x2307, 0x3D80, 0x341F, 0x3D80, 0x452A, 0x3D80, 0x5629, 0x3D80, 0x671B, 0x3D80, 0x7800, 0x3D80, 0x88DA, 0x3D80, 0x99A6, 0x3D80, 0xAA66, 0x3D80, 0xBB1A, 0x3D80, 0xCBC2, 0x3D80, 0xDC5E, 0x3D80, 0xECEE, 0x3D80, 0xFD72, 0x3D81, 0x0DEA, 0x3D81, 0x1E57, 0x3D81, 0x2EB7, 0x3D81, 0x3F0C, 0x3D81, 0x4F56, 0x3D81, 0x5F92, 0x3D81, 0x6FC6, 0x3D81, 0x7FEC, 0x3D81, 0x9008, 0x3D81, 0xA019, 0x3D81, 0xB01D, 0x3D81, 0xC017, 0x3D81, 0xD005, 0x3D81, 0xDFEA, 0x3D81, 0xEFC2, 0x3D81, 0xFF90, 0x3D82, 0x0F53, 0x3D82, 0x1F0B, 0x3D82, 0x2EB8, 0x3D82, 0x3E5A, 0x3D82, 0x4DF3, 0x3D82, 0x5D80, 0x3D82, 0x6D04, 0x3D82, 0x7C7C, 0x3D82, 0x8BEA, 0x3D82, 0x9B4E, 0x3D82, 0xAAA8, 0x3D82, 0xB9F7, 0x3D82, 0xC93B, 0x3D82, 0xD876, 0x3D82, 0xE7A6, 0x3D82, 0xF6CD, 0x3D83, 0x05E9, 0x3D83, 0x14FC, 0x3D83, 0x2406, 0x3D83, 0x3306, 0x3D83, 0x41FB, 0x3D83, 0x50E5, 0x3D83, 0x5FC8, 0x3D83, 0x6E9F, 0x3D83, 0x7D6F, 0x3D83, 0x8C34, 0x3D83, 0x9AF0, 0x3D83, 0xA9A2, 0x3D83, 0xB84A, 0x3D83, 0xC6EA, 0x3D83, 0xD580, 0x3D83, 0xE40E, 0x3D83, 0xF291, 0x3D84, 0x010C, 0x3D84, 0x0F7D, 0x3D84, 0x1DE6, 0x3D84, 0x2C45, 0x3D84, 0x3A9C, 0x3D84, 0x48E9, 0x3D84, 0x572D, 0x3D84, 0x6569, 0x3D84, 0x739C, 0x3D84, 0x81C6, 0x3D84, 0x8FE7, 0x3D84, 0x9E01, 0x3D84, 0xAC10, 0x3D84, 0xBA18, 0x3D84, 0xC818, 0x3D84, 0xD60E, 0x3D84, 0xE3FC, 0x3D84, 0xF1E1, 0x3D84, 0xFFBF, 0x3D85, 0x0D93, 0x3D85, 0x1B60, 0x3D85, 0x2923, 0x3D85, 0x36E0, 0x3D85, 0x4494, 0x3D85, 0x523F, 0x3D85, 0x5FE2, 0x3D85, 0x6D7F, 0x3D85, 0x7B11, 0x3D85, 0x889E, 0x3D85, 0x9620, 0x3D85, 0xA39C, 0x3D85, 0xB10F, 0x3D85, 0xBE7B, 0x3D85, 0xCBDF, 0x3D85, 0xD93B, 0x3D85, 0xE690, 0x3D85, 0xF3DC, 0x3D86, 0x0121, 0x3D86, 0x0E5E, 0x3D86, 0x1B94, 0x3D86, 0x28C2, 0x3D86, 0x35E9, 0x3D86, 0x4308, 0x3D86, 0x501F, 0x3D86, 0x5D30, 0x3D86, 0x6A39, 0x3D86, 0x7739, 0x3D86, 0x8433, 0x3D86, 0x9127, 0x3D86, 0x9E12, 0x3D86, 0xAAF6, 0x3D86, 0xB7D2, 0x3D86, 0xC4A8, 0x3D86, 0xD177, 0x3D86, 0xDE3F, 0x3D86, 0xEAFF, 0x3D86, 0xF7B9, 0x3D87, 0x046A, 0x3D87, 0x1116, 0x3D87, 0x1DBA, 0x3D87, 0x2A58, 0x3D87, 0x36EE, 0x3D87, 0x437E, 0x3D87, 0x5006, 0x3D87, 0x5C88, 0x3D87, 0x6904, 0x3D87, 0x7578, 0x3D87, 0x81E6, 0x3D87, 0x8E4C, 0x3D87, 0x9AAD, 0x3D87, 0xA706, 0x3D87, 0xB359, 0x3D87, 0xBFA6, 0x3D87, 0xCBEB, 0x3D87, 0xD82A, 0x3D87, 0xE463, 0x3D87, 0xF096, 0x3D87, 0xFCC1, 0x3D88, 0x08E7, 0x3D88, 0x1506, 0x3D88, 0x211F, 0x3D88, 0x2D30, 0x3D88, 0x393D, 0x3D88, 0x4542, 0x3D88, 0x5141, 0x3D88, 0x5D3B, 0x3D88, 0x692D, 0x3D88, 0x751B, 0x3D88, 0x8100, 0x3D88, 0x8CE2, 0x3D88, 0x98BB, 0x3D88, 0xA490, 0x3D88, 0xB05E, 0x3D88, 0xBC25, 0x3D88, 0xC7E8, 0x3D88, 0xD3A4, 0x3D88, 0xDF5A, 0x3D88, 0xEB0A, 0x3D88, 0xF6B4, 0x3D89, 0x0258, 0x3D89, 0x0DF6, 0x3D89, 0x198F, 0x3D89, 0x2522, 0x3D89, 0x30AF, 0x3D89, 0x3C35, 0x3D89, 0x47B7, 0x3D89, 0x5333, 0x3D89, 0x5EA9, 0x3D89, 0x6A18, 0x3D89, 0x7583, 0x0001, 0x0203, 0x0400, 0x0102, 0x0304, 0x0001, 0x0203, 0x0400, 0x0102, 0x0304, 0x0001, 0x0203, 0x0405, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0805, 0x0607, 0x0809, 0x0A0B, 0x090A, 0x0B09, 0x0A0B, 0x090A, 0x0B09, 0x0A0B, 0x0000, 0x0000, 0x0001, 0x0101, 0x0101, 0x0202, 0x0202, 0x0203, 0x0303, 0x0303, 0x0404, 0x0404, 0x0400, 0x0000, 0x0001, 0x0101, 0x0102, 0x0202, 0x0203, 0x0303, 0x0304, 0x0404, 0x0400, 0x0000, 0x0101, 0x0102, 0x0202, 0x0303, 0x0304, 0x0404, 0x0000, 0x0000, 0x0000, 0x0000 diff --git a/ver/us/asm/data/world/area_end/end_00/DF9540.data.s b/ver/us/asm/data/world/area_end/end_00/DF9540.data.s index d1848e1685..9beb81cae7 100644 --- a/ver/us/asm/data/world/area_end/end_00/DF9540.data.s +++ b/ver/us/asm/data/world/area_end/end_00/DF9540.data.s @@ -8,16 +8,16 @@ dlabel D_80242B40_DF9540 dlabel D_80242B90_DF9590 .word 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000023, 0x00000010, 0x00001000, 0x00000043, 0x00000006, SetCamViewport, 0x00000000, 0x0000000F, 0x0000001C, 0x00000122, 0x00000080, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, EnableStatusMenu, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000044, 0x00000001, 0x80246B28, 0x00000002, 0x00000000, 0x00000001, 0x00000000 -dlabel D_80242C70_DF9670 +dlabel end_00_Font4Patterns .word 0x02070001, 0x020A0001, 0x03040001, 0x070D0001, 0x09040001, 0x0C040001, 0x0C0C0001, 0x0C140001, 0x0D030001, 0x0D040001, 0x0D0A0001, 0x0D140001, 0x0E0D0001, 0x0E110001, 0x11040001, 0x110F0001, 0x14020001, 0x140D0001, 0x140F0001, 0x14120001, 0x12020001, 0x12070001, 0x120F0001, 0x15040001, 0x16110001, 0x00000000 -dlabel D_80242CD8_DF96D8 +dlabel end_00_Font3Patterns .word 0x00020001, 0x00060001, 0x000E0001, 0x00030001, 0x00080001, 0x000A0001, 0x000D0001, 0x00130001, 0x00140001, 0x07000001, 0x07060001, 0x07080001, 0x08020001, 0x08040001, 0x08060001, 0x080A0001, 0x080D0001, 0x080E0001, 0x08130001, 0x08180001, 0x09080001, 0x0C0E0001, 0x0C080001, 0x0D060001, 0x0D080001, 0x0D0E0001, 0x0D130001, 0x12040001, 0x12080001, 0x13040001, 0x14020001, 0x14080001, 0x140A0001, 0x00000000 -dlabel D_80242D60_DF9760 +dlabel end_00_CreditsViewport .word 0x028001E0, 0x01FF0000, 0x028001E0, 0x01FF0000 -dlabel D_80242D70_DF9770 +dlabel end_00_CreditsBufferIndex .word 0x00000000 dlabel D_80242D74_DF9774 @@ -27,4 +27,4 @@ dlabel D_80242DE4_DF97E4 .word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000EB, 0x00000000, 0x002E0009, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E000A, 0x000000A0, 0x000000AF, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E000B, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x0000024C, 0x00000000, 0x0000001E, 0x00000000, 0x00000292, 0x00010000, 0x002E000C, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x002E000D, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E000E, 0x000000A0, 0x000000AF, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E000F, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x00000584, 0x00000000, 0x0000001E, 0x00000000, 0x000005CA, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x002E0010, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0011, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0023, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000BE, 0x00000000, 0x0000001E, 0x00000001, 0x000000F6, 0x00010000, 0x002E0012, 0x000000A0, 0x000000A6, 0x00000000, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000002F2, 0x00000000, 0x0000001E, 0x00000000, 0x00000338, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x002E0013, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0014, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0015, 0x000000A0, 0x000000AF, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0016, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0017, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0018, 0x000000A0, 0x000000AF, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x002E001F, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0029, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E002A, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E002B, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x0000017E, 0x00000000, 0x0000001E, 0x00000000, 0x000001C4, 0x00010000, 0x002E002C, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x0000017E, 0x00000000, 0x0000001E, 0x00000000, 0x000001C4, 0x00010000, 0x002E0024, 0x000000A0, 0x000000AA, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x000000B0, 0x00000000, 0x0000001E, 0x00000000, 0x000000F6, 0x00010000, 0x002E0022, 0x000000A0, 0x000000A6, 0x00000000, 0x00000004, 0x00000028, 0x00000002, 0x00000000, 0x0000017E, 0x00000000, 0x0000001E, 0x00000000, 0x000001C4, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000 dlabel D_80243474_DF9E74 -.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000EB, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E002D, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E002E, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000094, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E002F, 0x0000009F, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0030, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0031, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0032, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0033, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0034, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0035, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0036, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0037, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0038, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0039, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003A, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003B, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003C, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003E, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003D, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003F, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0040, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0041, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0042, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0043, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0044, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0045, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0046, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0047, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0048, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0049, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E004A, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E004B, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E004C, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E004D, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E004E, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0050, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E004F, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006F, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0069, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0079, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E007A, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E007B, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E007C, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E007D, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E007E, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E007F, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0080, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0081, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0082, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0083, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0084, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0077, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0067, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0074, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0056, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0057, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0058, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000001, func_80242558_DF8F58, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80242580_DF8F80, D_80242DE4_DF97E4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80242580_DF8F80, D_80243474_DF9E74, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80242580_DF8F80, D_80242D74_DF9774, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000EB, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E002D, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E002E, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000094, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E002F, 0x0000009F, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0030, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0031, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0032, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0033, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0034, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0035, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0036, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0037, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0038, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0039, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003A, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003B, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003C, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003E, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E003D, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E003F, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0040, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0041, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0042, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0043, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0044, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0045, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0046, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0047, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0048, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0049, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E004A, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E004B, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E004C, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E004D, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E004E, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0050, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E004F, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006F, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0069, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0079, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E007A, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E007B, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E007C, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E007D, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E007E, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E007F, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0080, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0081, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0082, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0083, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0084, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0077, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0067, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0074, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x00000096, 0x00000000, 0x0000001E, 0x00000001, 0x000000CE, 0x00010000, 0x002E0056, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0057, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0058, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000088, 0x00000000, 0x0000001E, 0x00000000, 0x000000CE, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000001, end_00_InitCredits, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, end_00_ShowCreditList, D_80242DE4_DF97E4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, end_00_ShowCreditList, D_80243474_DF9E74, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, end_00_ShowCreditList, D_80242D74_DF9774, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_end/end_00/DFB0B0.data.s b/ver/us/asm/data/world/area_end/end_00/DFB0B0.data.s index 6bc467bf1b..4c99c40831 100644 --- a/ver/us/asm/data/world/area_end/end_00/DFB0B0.data.s +++ b/ver/us/asm/data/world/area_end/end_00/DFB0B0.data.s @@ -56,7 +56,7 @@ dlabel D_80244D40_DFB740 dlabel D_80244D58_DFB758 .word 0x00600014, 0x0060000C, 0x0060000E, 0x0060000F, 0x00600012, 0x00600007, 0xFFFFFFFF -dlabel D_80244D74_DFB774 +dlabel end_00_ParadeNpcsTable .word 0x00D90002, 0x00000000, 0xC5340000, 0x00000000, 0x00000000, 0x43870000, 0x00DF0002, 0x00000000, 0xC5340000, 0x00000000, 0xC1A00000, 0x43870000, 0x00DF0002, 0x00000000, 0xC5340000, 0x00000000, 0x41A00000, 0x43870000, 0x00DF0003, 0x00000000, 0xC530E000, 0x00000000, 0xC1A00000, 0x43870000, 0x00DF0003, 0x00000000, 0xC530E000, 0x00000000, 0x41A00000, 0x43870000, 0x00DF0004, 0x00000000, 0xC52DC000, 0x00000000, 0xC1A00000, 0x43870000, 0x00DF0004, 0x00000000, 0xC52DC000, 0x00000000, 0x41A00000, 0x43870000, 0x00DA0000, 0x00000000, 0xC5219000, 0x428C0000, 0x41700000, 0x43870000, 0x00DA0001, 0x00000000, 0xC51D5000, 0x42200000, 0x40E00000, 0x42B40000, 0x00DA0002, 0x00000000, 0xC51E8000, 0x42480000, 0x42180000, 0x43870000, 0x00DA0003, 0x00000000, 0xC51D3000, 0x42A00000, 0x40A00000, 0x43870000, 0x00DA0004, 0x00000000, 0xC51AB000, 0x42600000, 0x00000000, 0x43870000, 0x00DA0005, 0x00000000, 0xC520F000, 0x41A00000, 0x42400000, 0x43870000, 0x00DA0006, 0x00000000, 0xC520A000, 0x42740000, 0x40E00000, 0x42B40000, 0x00DA0007, 0x00000000, 0xC524B000, 0x42200000, 0x00000000, 0x43870000, 0x00DF0005, 0x00000000, 0xC512E000, 0x00000000, 0x00000000, 0x43870000, 0x00DF0005, 0x00000000, 0xC50FC000, 0x00000000, 0x00000000, 0x43870000, 0x00DF0005, 0x00000000, 0xC50CA000, 0x00000000, 0x00000000, 0x43870000, 0x00DF0009, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00DF0009, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00DF0009, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00AF0002, 0x00000000, 0xC5048000, 0x00000000, 0x00000000, 0x43870000, 0x00850001, 0x00000000, 0xC5016000, 0x00000000, 0x00000000, 0x43870000, 0x0066011A, 0x00000000, 0xC4E88000, 0x42820000, 0x41200000, 0x43870000, 0x0066001A, 0x00000000, 0xC4E60000, 0x42820000, 0x41200000, 0x42B40000, 0x0066021A, 0x00000000, 0xC4E9C000, 0x41400000, 0x42140000, 0x43870000, 0x0066031A, 0x00000000, 0xC4E4C000, 0x41400000, 0x42140000, 0x42B40000, 0x002C0005, 0x00000000, 0xC4DAC000, 0x00000000, 0x422C0000, 0x43870000, 0x002C0005, 0x00000000, 0xC4D70000, 0x00000000, 0x422C0000, 0x43870000, 0x002C0005, 0x00000000, 0xC4D34000, 0x00000000, 0x422C0000, 0x43870000, 0x002C0005, 0x00000000, 0xC4CF8000, 0x00000000, 0x422C0000, 0x43870000, 0x00DC0001, 0x00000000, 0xC4C26000, 0x42340000, 0xC33E0000, 0x43870000, 0x00DC0004, 0x00000000, 0xC4C4E000, 0x42340000, 0xC3520000, 0x43870000, 0x00A7000A, D_80244C78_DFB678, 0xC4DDE000, 0x00000000, 0x40000000, 0x42B40000, 0x00A7000A, D_80244C78_DFB678, 0xC4D98000, 0x00000000, 0x40000000, 0x42B40000, 0x00BD0004, D_80244C94_DFB694, 0xC49B0000, 0x00000000, 0xC0000000, 0x43870000, 0x00940004, D_80244CAC_DFB6AC, 0xC4974000, 0x00000000, 0xC0000000, 0x43870000, 0x00940004, D_80244CAC_DFB6AC, 0xC4938000, 0x00000000, 0xC0000000, 0x43870000, 0x00680002, D_80244C60_DFB660, 0xC4820000, 0x00000000, 0x41F00000, 0x43870000, 0x00690003, 0x00000000, 0xC47A0000, 0x00000000, 0x41F00000, 0x43870000, 0x00670005, D_80244CBC_DFB6BC, 0xC455C000, 0x428C0000, 0xC30C0000, 0x43870000, 0x00DD0002, 0x00000000, 0xC45AC000, 0x428C0000, 0xC3250000, 0x43870000, 0x00DD0002, 0x00000000, 0xC455C000, 0x428C0000, 0xC3200000, 0x42B40000, 0x00DD0002, 0x00000000, 0xC450C000, 0x428C0000, 0xC3250000, 0x42B40000, 0x00BF0001, 0x00000000, 0xC4228000, 0x41A00000, 0x00000000, 0x43870000, 0x00680002, D_80244C60_DFB660, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00690003, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00690003, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00690003, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00E40000, 0x00000000, 0xC39B0000, 0x420C0000, 0x00000000, 0x43870000, 0x0095000D, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x0095000D, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x0095000D, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x006C0001, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00630000, D_80244CC8_DFB6C8, 0xC28C0000, 0x43020000, 0xC2700000, 0x43870000, 0x00620004, 0x00000000, 0xC2DC0000, 0x00000000, 0xC1E00000, 0x42B40000, 0x00620104, 0x00000000, 0xC1F00000, 0x00000000, 0xC2000000, 0x43870000, 0x00DB0005, 0x00000000, 0x43540000, 0x42200000, 0x420C0000, 0x43870000, 0x00DB0006, 0x00000000, 0x43770000, 0x42200000, 0x420C0000, 0x43870000, 0x00DB0007, 0x00000000, 0x438D0000, 0x42200000, 0x420C0000, 0x42B40000, 0x00DB0008, 0x00000000, 0x43880000, 0x42480000, 0x41C80000, 0x42B40000, 0x00DB0009, 0x00000000, 0x43680000, 0x42480000, 0x41C80000, 0x43870000, 0x00C40003, D_80244CD8_DFB6D8, 0x43B28000, 0xC2F00000, 0xC1F00000, 0x42B40000, 0x00790004, D_80244CE0_DFB6E0, 0x43FD8000, 0x42480000, 0xC0A00000, 0x42B40000, 0x00970002, 0x00000000, 0x440E8000, 0x42480000, 0x00000000, 0x42B40000, 0x00970103, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00970203, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00970303, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00970403, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x007C0001, D_80244CE8_DFB6E8, 0x44848000, 0x42A00000, 0x00000000, 0x43870000, 0x007C0002, D_80244CE8_DFB6E8, 0x44848000, 0x42A00000, 0x00000000, 0x43870000, 0x007C0003, D_80244CE8_DFB6E8, 0x44848000, 0x42A00000, 0x00000000, 0x43870000, 0x007D0001, D_80244D10_DFB710, 0x44750000, 0x42700000, 0x00000000, 0x43870000, 0x007D0001, D_80244D10_DFB710, 0x448E8000, 0x42700000, 0x00000000, 0x43870000, 0x00C10002, D_80244D20_DFB720, 0x449EC000, 0x00000000, 0xC1A00000, 0x43870000, 0x004E000A, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x004E000A, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x007F000E, 0x00000000, 0x44B40000, 0x00000000, 0x00000000, 0x43870000, 0x007F000E, 0x00000000, 0x44C80000, 0x00000000, 0x00000000, 0x43870000, 0x007F000A, 0x00000000, 0x44FA0000, 0x42C80000, 0x00000000, 0x43870000, 0x007F000B, 0x00000000, 0x45002000, 0x42C80000, 0x00000000, 0x43870000, 0x007F000C, 0x00000000, 0x45034000, 0x42C80000, 0x00000000, 0x43870000, 0x00600014, D_80244D58_DFB758, 0x45070000, 0x42700000, 0x00000000, 0x43870000, 0x00240006, D_80244D40_DFB740, 0x4500C000, 0x00000000, 0x00000000, 0x42B40000, 0x00D70000, 0x00000000, 0x45156000, 0x41200000, 0x00000000, 0x43870000, 0x00D70001, 0x00000000, 0x45156000, 0x41200000, 0x00000000, 0x43870000, 0x00D70002, 0x00000000, 0x450FC000, 0x00000000, 0x00000000, 0x43870000, 0x00D70002, 0x00000000, 0x450D4000, 0x00000000, 0x00000000, 0x43870000, 0x00D70003, 0x00000000, 0x451B0000, 0x00000000, 0x00000000, 0x43870000, 0x00D70003, 0x00000000, 0x451D8000, 0x00000000, 0x00000000, 0x43870000, 0x00D80000, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00D80002, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000 dlabel D_80245614_DFC014 diff --git a/ver/us/asm/data/world/area_end/end_01/E08470.data.s b/ver/us/asm/data/world/area_end/end_01/E08470.data.s index e5830a95d6..614d26acac 100644 --- a/ver/us/asm/data/world/area_end/end_01/E08470.data.s +++ b/ver/us/asm/data/world/area_end/end_01/E08470.data.s @@ -2,16 +2,16 @@ .section .data -dlabel D_80243110_E08470 +dlabel end_01_Font3Patterns .word 0x02070001, 0x020A0001, 0x03040001, 0x070D0001, 0x09040001, 0x0C040001, 0x0C0C0001, 0x0C140001, 0x0D030001, 0x0D040001, 0x0D0A0001, 0x0D140001, 0x0E0D0001, 0x0E110001, 0x11040001, 0x110F0001, 0x14020001, 0x140D0001, 0x140F0001, 0x14120001, 0x12020001, 0x12070001, 0x120F0001, 0x15040001, 0x16110001, 0x00000000 -dlabel D_80243178_E084D8 +dlabel end_01_Font4Patterns .word 0x00020001, 0x00060001, 0x000E0001, 0x00030001, 0x00080001, 0x000A0001, 0x000D0001, 0x00130001, 0x00140001, 0x07000001, 0x07060001, 0x07080001, 0x08020001, 0x08040001, 0x08060001, 0x080A0001, 0x080D0001, 0x080E0001, 0x08130001, 0x08180001, 0x09080001, 0x0C0E0001, 0x0C080001, 0x0D060001, 0x0D080001, 0x0D0E0001, 0x0D130001, 0x12040001, 0x12080001, 0x13040001, 0x14020001, 0x14080001, 0x140A0001, 0x00000000 -dlabel D_80243200_E08560 +dlabel end_01_CreditsViewport .word 0x028001E0, 0x01FF0000, 0x028001E0, 0x01FF0000 -dlabel D_80243210_E08570 +dlabel end_01_CreditsBufferIndex .word 0x00000000 dlabel D_80243214_E08574 @@ -21,13 +21,13 @@ dlabel D_80243524_E08884 .word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0071, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0072, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0066, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0065, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0075, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0073, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0055, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0051, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0059, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E005A, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0053, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E005B, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E005C, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E005D, 0x000000A0, 0x000000BA, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E005E, 0x000000A0, 0x000000CB, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E005F, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0060, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x00000000, 0x00010000, 0x002E0061, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0068, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0085, 0x000000A0, 0x000000B6, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0086, 0x000000A0, 0x000000C3, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x00000000, 0x00010000, 0x002E0087, 0x000000A0, 0x000000D0, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E0052, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006A, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E0054, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006D, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006C, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000AE, 0x00000000, 0x0000001E, 0x00000001, 0x000000E6, 0x00010000, 0x002E006B, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000028, 0x00000000, 0x002E006E, 0x000000A0, 0x000000BF, 0x00000001, 0x00000000, 0x00000028, 0x00000000, 0x00000000, 0x000000A0, 0x00000000, 0x0000001E, 0x00000000, 0x000000E6, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000 dlabel D_80243D74_E090D4 -.word 0x00000043, 0x00000001, func_80242568_E078C8, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, end_01_InitCredits, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243D90_E090F0 -.word 0x00000043, 0x00000002, func_80242590_E078F0, D_80243214_E08574, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000002, end_01_ShowCreditList, D_80243214_E08574, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243DB0_E09110 -.word 0x00000043, 0x00000002, func_80242590_E078F0, D_80243524_E08884, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000002, end_01_ShowCreditList, D_80243524_E08884, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243DD0_E09130 .word 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFF3C1, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFF3C1, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 @@ -65,7 +65,7 @@ dlabel D_802441D8_E09538 dlabel D_802441E0_E09540 .word 0x003B0004, 0x003B0010, 0x003B0001, 0xFFFFFFFF -dlabel D_802441F0_E09550 +dlabel end_01_ParadeNpcsTable .word 0x00190001, D_802441A0_E09500, 0xC543F000, 0x43520000, 0xC2F00000, 0x43870000, 0x001A0001, D_802441A8_E09508, 0xC547B000, 0x43480000, 0xC2F00000, 0x43870000, 0x001B0001, D_802441B0_E09510, 0xC5403000, 0x43430000, 0xC2F00000, 0x43870000, 0x001C0001, D_802441B8_E09518, 0xC53E5000, 0x43140000, 0xC2D00000, 0x43870000, 0x001D0000, D_802441C0_E09520, 0xC5421000, 0x431E0000, 0xC2D00000, 0x43870000, 0x001E0001, D_802441C8_E09528, 0xC545D000, 0x431E0000, 0xC2D00000, 0x43870000, 0x001F0001, D_802441D0_E09530, 0xC5499000, 0x43140000, 0xC2D00000, 0x43870000, 0x00DE0004, 0x00000000, 0xC528C000, 0x00000000, 0xC2140000, 0x43870000, 0x00DE0004, 0x00000000, 0xC528C000, 0x00000000, 0x42140000, 0x43870000, 0x00DE0010, 0x00000000, 0xC525A000, 0x00000000, 0xC29A0000, 0x43870000, 0x00DE0013, 0x00000000, 0xC5232000, 0x00000000, 0xC29A0000, 0x43870000, 0x00DE0002, 0x00000000, 0xC51FB000, 0x40A00000, 0x41F00000, 0x43870000, 0x00DE0003, 0x00000000, 0xC51DF000, 0x40A00000, 0x420C0000, 0x43870000, 0x00DE0002, 0x00000000, 0xC51BF000, 0x40A00000, 0x41F00000, 0x42B40000, 0x008E0207, 0x00000000, 0xC5240000, 0x41A00000, 0x00000000, 0x42B40000, 0x00DE000C, 0x00000000, 0xC51E1000, 0x00000000, 0x00000000, 0x43870000, 0x00480102, 0x00000000, 0xC50A2000, 0x00000000, 0xC1A00000, 0x43870000, 0x00480102, 0x00000000, 0xC50A2000, 0x00000000, 0x41A00000, 0x43870000, 0x00E50000, 0x00000000, 0xC4FD2000, 0x41A00000, 0x41E00000, 0x43870000, 0x00E50002, 0x00000000, 0xC4F96000, 0x41A00000, 0x41A00000, 0x43870000, 0x00E50004, 0x00000000, 0xC5007000, 0x41A00000, 0x420C0000, 0x43870000, 0x00E50006, 0x00000000, 0xC5025000, 0x41A00000, 0x41E00000, 0x43870000, 0x00E50008, 0x00000000, 0xC503E000, 0x41A00000, 0x41A00000, 0x43870000, 0x00E5000A, 0x00000000, 0xC4F78000, 0x42700000, 0x41A00000, 0x43870000, 0x00CB0007, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x00CB0008, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x0099000B, 0x00000000, 0xC4E74000, 0x00000000, 0xC1A00000, 0x43870000, 0x0099000B, 0x00000000, 0xC4E74000, 0x00000000, 0x41A00000, 0x43870000, 0x00E7000A, 0x00000000, 0xC4C18000, 0x00000000, 0x00000000, 0x43870000, 0x00E7000E, 0x00000000, 0xC4B50000, 0x42640000, 0xC1C80000, 0x43870000, 0x00E70007, 0x00000000, 0xC4B96000, 0x41C00000, 0xC2200000, 0x42B40000, 0x00E70007, 0x00000000, 0xC4B0A000, 0x41C00000, 0xC2200000, 0x43870000, 0x00E70002, 0x00000000, 0xC4B78000, 0x41C00000, 0xC0A00000, 0x43870000, 0x00E70002, 0x00000000, 0xC4B64000, 0x41C00000, 0xC0A00000, 0x43870000, 0x00E70002, 0x00000000, 0xC4B3C000, 0x41C00000, 0xC0A00000, 0x42B40000, 0x00E70002, 0x00000000, 0xC4B28000, 0x41C00000, 0xC0A00000, 0x42B40000, 0x003E0003, D_802441D8_E09538, 0x00000000, 0xC3FA0000, 0x00000000, 0x42B40000, 0x003E0003, D_802441D8_E09538, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4830000, 0x00000000, 0xC1F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4830000, 0x00000000, 0x00000000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4830000, 0x00000000, 0x41F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC47E8000, 0x00000000, 0xC1F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC47E8000, 0x00000000, 0x00000000, 0x43870000, 0x00E7000F, 0x00000000, 0xC47E8000, 0x00000000, 0x41F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4770000, 0x00000000, 0xC1F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4770000, 0x00000000, 0x00000000, 0x43870000, 0x00E7000F, 0x00000000, 0xC4770000, 0x00000000, 0x41F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC46F8000, 0x00000000, 0xC1F00000, 0x43870000, 0x00E7000F, 0x00000000, 0xC46F8000, 0x00000000, 0x00000000, 0x43870000, 0x00E7000F, 0x00000000, 0xC46F8000, 0x00000000, 0x41F00000, 0x43870000, 0x003B0004, D_802441E0_E09540, 0xC4450000, 0x00000000, 0x00000000, 0x43870000, 0x00E30002, 0x00000000, 0xC42C4000, 0x00000000, 0xC1A00000, 0x43870000, 0x00E30002, 0x00000000, 0xC42C4000, 0x00000000, 0x41A00000, 0x43870000, 0x00E10002, 0x00000000, 0xC41FC000, 0x00000000, 0xC1A00000, 0x43870000, 0x00E10002, 0x00000000, 0xC41FC000, 0x00000000, 0x41A00000, 0x43870000, 0x00E20002, 0x00000000, 0xC4134000, 0x00000000, 0xC1A00000, 0x43870000, 0x00E20002, 0x00000000, 0xC4134000, 0x00000000, 0x41A00000, 0x43870000, 0x00E60005, 0x00000000, 0xC3A48000, 0x42140000, 0x00000000, 0x43870000, 0x00D60014, 0x00000000, 0xC3908000, 0x42140000, 0x00000000, 0x43870000, 0x00E80001, 0x00000000, 0xC3C28000, 0x42F00000, 0x00000000, 0x42B40000, 0x00E00002, 0x00000000, 0xC2DA0000, 0x00000000, 0x00000000, 0x43870000, 0x00E00002, 0x00000000, 0xC28A0000, 0x00000000, 0x00000000, 0x43870000, 0x00E00002, 0x00000000, 0xC1E80000, 0x00000000, 0x00000000, 0x43870000, 0x00E00006, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00E00006, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00E00006, 0x00000000, 0x00000000, 0xC3FA0000, 0x00000000, 0x43870000, 0x00E20002, 0x00000000, 0x42240000, 0x00000000, 0xC1A00000, 0x43870000, 0x00E20002, 0x00000000, 0x42240000, 0x00000000, 0x41A00000, 0x43870000 dlabel D_80244850_E09BB0 diff --git a/ver/us/asm/data/world/area_end/end_01/E0E700.data.s b/ver/us/asm/data/world/area_end/end_01/E0E700.data.s deleted file mode 100644 index 5e332e26f6..0000000000 --- a/ver/us/asm/data/world/area_end/end_01/E0E700.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802493A0_E0E700 -.word 0x80241C24, 0x80241C54, 0x80241C54, 0x80241C18, 0x80241C18, 0x80241C18, 0x80241C54, 0x80241C54, 0x80241C54, 0x80241C54, 0x80241C54, 0x80241C54, 0x80241C54, 0x80241C24, 0x80241C54, 0x80241C2C diff --git a/ver/us/asm/data/world/area_hos/hos_06/A3C090.data.s b/ver/us/asm/data/world/area_hos/hos_06/A3C090.data.s index e08e351fde..0628497539 100644 --- a/ver/us/asm/data/world/area_hos/hos_06/A3C090.data.s +++ b/ver/us/asm/data/world/area_hos/hos_06/A3C090.data.s @@ -51,7 +51,7 @@ dlabel D_802435EC_A3CACC .word 0x000000F3, 0x00000001, 0x0024008D, 0x000000FC, 0x00000001, 0x00240096, 0x000000FE, 0x00000003, 0x00240098, 0x000000F1, 0x00000005, 0x00240081, 0x000000F2, 0x00000005, 0x0024008C, 0x000000FF, 0x00000008, 0x00240079, 0x00000140, 0x00000008, 0x0024007A, 0x00000144, 0x0000000A, 0x0024009F, 0x00000100, 0x0000000A, 0x00240099, 0x0000011A, 0x0000000C, 0x0024007C, 0x0000011B, 0x0000000C, 0x0024007D, 0x000000F5, 0x0000000F, 0x00240078, 0x000000FD, 0x00000014, 0x0024009A, 0x00000105, 0x00000019, 0x0024007B, 0x000000E2, 0x00000019, 0x00240073 dlabel D_802436A0_A3CB80 -.word 0x00000046, 0x00000001, D_8024351C_A3C9FC, 0x00000046, 0x00000001, D_8024356C_A3CA4C, 0x0000000B, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE02E1, 0x0000000F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004D, 0x00000012, 0x00000000, 0x0000000A, 0x00000002, 0xF840626A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004A, 0x00000024, 0x00000002, 0xF840626A, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004B, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, ShowChoice, 0x001E0014, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004E, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_80240A68_A39F48, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004F, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0050, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_80240AD0_A39FB0, 0x00000008, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0051, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_80240A68_A39F48, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0xFE363C81, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0051, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetMessageMsg, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetMessageValue, 0xFE363C81, 0x00000001, 0x00000043, 0x00000003, SetMessageValue, 0xFE363C85, 0x00000002, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0053, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0052, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0054, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, CloseMessage, 0x00000029, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000043, 0x00000002, AddStarPieces, 0xFE363C81, 0x00000027, 0x00000002, 0xF5DE02E1, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000002, func_80240A94_A39F74, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000024, 0x00000002, 0xFE363C81, 0x00000002, 0x00000046, 0x00000001, D_80242C0C_A3C0EC, 0x00000043, 0x00000003, AddBadge, 0xFE363C80, 0xFE363C81, 0x0000000F, 0x00000002, 0xF5DE02E1, 0x0000000F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0055, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_80240A68_A39F48, 0xFE363C80, 0x0000000E, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0055, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0056, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0057, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, CloseMessage, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000046, 0x00000001, D_8024351C_A3C9FC, 0x00000046, 0x00000001, D_8024356C_A3CA4C, 0x0000000B, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE02E1, 0x0000000F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004D, 0x00000012, 0x00000000, 0x0000000A, 0x00000002, 0xF840626A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004A, 0x00000024, 0x00000002, 0xF840626A, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004B, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, ShowChoice, 0x001E0014, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004E, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, Merlow_GetPlayerStarPieces, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A004F, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0050, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, Merlow_ShopBadgesPopup, 0x00000008, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0051, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, Merlow_GetPlayerStarPieces, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0xFE363C81, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0051, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetMessageMsg, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetMessageValue, 0xFE363C81, 0x00000001, 0x00000043, 0x00000003, SetMessageValue, 0xFE363C85, 0x00000002, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0053, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0052, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0054, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, CloseMessage, 0x00000029, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000043, 0x00000002, AddStarPieces, 0xFE363C81, 0x00000027, 0x00000002, 0xF5DE02E1, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000002, Merlow_SetBadgePurchased, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000024, 0x00000002, 0xFE363C81, 0x00000002, 0x00000046, 0x00000001, D_80242C0C_A3C0EC, 0x00000043, 0x00000003, AddBadge, 0xFE363C80, 0xFE363C81, 0x0000000F, 0x00000002, 0xF5DE02E1, 0x0000000F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0055, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, Merlow_GetPlayerStarPieces, 0xFE363C80, 0x0000000E, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0055, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0056, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000006, ContinueSpeech, 0x00000001, 0x00B20004, 0x00B20001, 0x00000000, 0x000A0057, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, CloseMessage, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243C04_A3D0E4 .word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802435D0_A3CAB0, 0x00000044, 0x00000001, 0x80245604, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_04/A4C0D0.data.s b/ver/us/asm/data/world/area_kpa/kpa_04/A4C0D0.data.s index 430c88e670..5b2b0787de 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_04/A4C0D0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_04/A4C0D0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240170_A4C0D0 -.word 0x43540000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x438F8000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024036C, D_80240170_A4C0D0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x43540000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x438F8000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024036C, D_80240170_A4C0D0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_08/A4DEC0.data.s b/ver/us/asm/data/world/area_kpa/kpa_08/A4DEC0.data.s index 361a508cb3..8fc13b7688 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_08/A4DEC0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_08/A4DEC0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_802414A0_A4DEC0 -.word 0xC3F18000, 0x00000000, 0xC1980000, 0x42B40000, 0x434B0000, 0x42C80000, 0xC1B00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241768, D_802414A0_A4DEC0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190172, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F18000, 0x00000000, 0xC1980000, 0x42B40000, 0x434B0000, 0x42C80000, 0xC1B00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241768, D_802414A0_A4DEC0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190172, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_09/A502F0.data.s b/ver/us/asm/data/world/area_kpa/kpa_09/A502F0.data.s index 2ab485d396..446c079bbd 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_09/A502F0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_09/A502F0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_802412F0_A502F0 -.word 0xC3F18000, 0x42C80000, 0xC1880000, 0x42B40000, 0x434A0000, 0x00000000, 0xC1800000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802415C4, D_802412F0_A502F0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F18000, 0x42C80000, 0xC1880000, 0x42B40000, 0x434A0000, 0x00000000, 0xC1800000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802415C4, D_802412F0_A502F0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_10/A51C90.data.s b/ver/us/asm/data/world/area_kpa/kpa_10/A51C90.data.s index d05b91e018..d0a9af5306 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_10/A51C90.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_10/A51C90.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240310_A51C90 -.word 0x41C80000, 0x42C80000, 0xC30C0000, 0x42B40000, 0x44AF4000, 0x41F00000, 0xC4874000, 0x43340000, 0x44AC4000, 0x41F00000, 0xC4350000, 0x42B40000, 0x41700000, 0xC1A00000, 0xC1A00000, 0x42B40000, 0x44BF2000, 0xC1A00000, 0xC4874000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240794, D_80240310_A51C90, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190158, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x41C80000, 0x42C80000, 0xC30C0000, 0x42B40000, 0x44AF4000, 0x41F00000, 0xC4874000, 0x43340000, 0x44AC4000, 0x41F00000, 0xC4350000, 0x42B40000, 0x41700000, 0xC1A00000, 0xC1A00000, 0x42B40000, 0x44BF2000, 0xC1A00000, 0xC4874000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240794, D_80240310_A51C90, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190158, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_100/A931B0.data.s b/ver/us/asm/data/world/area_kpa/kpa_100/A931B0.data.s index b2f536114e..4936cbdfe7 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_100/A931B0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_100/A931B0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240050_A931B0 -.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240198, D_80240050_A931B0, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190173, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240198, D_80240050_A931B0, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190173, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_101/A93490.data.s b/ver/us/asm/data/world/area_kpa/kpa_101/A93490.data.s index 07ac7190ee..53efc6e706 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_101/A93490.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_101/A93490.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240050_A93490 -.word 0x40C00000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240198, D_80240050_A93490, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x40C00000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240198, D_80240050_A93490, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_102/A96CD0.data.s b/ver/us/asm/data/world/area_kpa/kpa_102/A96CD0.data.s index e88bced653..347deb940c 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_102/A96CD0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_102/A96CD0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80243590_A96CD0 -.word 0xC3F00000, 0x00000000, 0xC3570000, 0x42B40000, 0x443F0000, 0x00000000, 0xC3570000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80243900, D_80243590_A96CD0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F00000, 0x00000000, 0xC3570000, 0x42B40000, 0x443F0000, 0x00000000, 0xC3570000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80243900, D_80243590_A96CD0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_11/A533B0.data.s b/ver/us/asm/data/world/area_kpa/kpa_11/A533B0.data.s index 71c34ba597..a3bf8df5fa 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_11/A533B0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_11/A533B0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240AF0_A533B0 -.word 0x41F00000, 0x42C80000, 0xC30C0000, 0x42B40000, 0x44AF4000, 0x41F00000, 0xC485C000, 0x43340000, 0x44AC4000, 0x41F00000, 0xC4350000, 0x42B40000, 0x41700000, 0xC1A00000, 0xC1A00000, 0x42B40000, 0x44BF2000, 0xC1A00000, 0xC4874000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802411E0, D_80240AF0_A533B0, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190158, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x41F00000, 0x42C80000, 0xC30C0000, 0x42B40000, 0x44AF4000, 0x41F00000, 0xC485C000, 0x43340000, 0x44AC4000, 0x41F00000, 0xC4350000, 0x42B40000, 0x41700000, 0xC1A00000, 0xC1A00000, 0x42B40000, 0x44BF2000, 0xC1A00000, 0xC4874000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802411E0, D_80240AF0_A533B0, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190158, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_111/A9A950.data.s b/ver/us/asm/data/world/area_kpa/kpa_111/A9A950.data.s index 297c722a0a..2135d3f9da 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_111/A9A950.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_111/A9A950.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_802413C0_A9A950 -.word 0xC3500000, 0x00000000, 0x42D20000, 0x42B40000, 0x43960000, 0x00000000, 0x41C80000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241694, D_802413C0_A9A950, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3500000, 0x00000000, 0x42D20000, 0x42B40000, 0x43960000, 0x00000000, 0x41C80000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241694, D_802413C0_A9A950, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_112/A9C990.data.s b/ver/us/asm/data/world/area_kpa/kpa_112/A9C990.data.s index 257942d657..50550b0b2e 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_112/A9C990.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_112/A9C990.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A9C990 -.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A9C990, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190180, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A9C990, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190180, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_113/A9D6D0.data.s b/ver/us/asm/data/world/area_kpa/kpa_113/A9D6D0.data.s index 1c70e76dd3..b247cc612f 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_113/A9D6D0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_113/A9D6D0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240AA0_A9D6D0 -.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x43CC0000, 0x00000000, 0x42C80000, 0x43870000, 0xC2CC0000, 0x00000000, 0x41A00000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240D5C, D_80240AA0_A9D6D0, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190181, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x43CC0000, 0x00000000, 0x42C80000, 0x43870000, 0xC2CC0000, 0x00000000, 0x41A00000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240D5C, D_80240AA0_A9D6D0, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190181, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_114/A9E9D0.data.s b/ver/us/asm/data/world/area_kpa/kpa_114/A9E9D0.data.s index 2d6a3f5cbd..df26e8694f 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_114/A9E9D0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_114/A9E9D0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240050_A9E9D0 -.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802402A0, D_80240050_A9E9D0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190182, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802402A0, D_80240050_A9E9D0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190182, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_115/AA0100.data.s b/ver/us/asm/data/world/area_kpa/kpa_115/AA0100.data.s index f794aea50c..aa661f828a 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_115/AA0100.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_115/AA0100.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_802413C0_AA0100 -.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x42C80000, 0x00000000, 0x41A00000, 0x43340000, 0x42480000, 0x00000000, 0x41A00000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241618, D_802413C0_AA0100, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190183, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3500000, 0x00000000, 0x42C80000, 0x42B40000, 0x42C80000, 0x00000000, 0x41A00000, 0x43340000, 0x42480000, 0x00000000, 0x41A00000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241618, D_802413C0_AA0100, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190183, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_116/AA1EE0.data.s b/ver/us/asm/data/world/area_kpa/kpa_116/AA1EE0.data.s index 57d6c1b377..68131fc17a 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_116/AA1EE0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_116/AA1EE0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_AA1EE0 -.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_AA1EE0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190184, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3160000, 0x00000000, 0x42DC0000, 0x00000000, 0x43EC8000, 0x00000000, 0x42E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_AA1EE0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190184, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_117/AA2180.data.s b/ver/us/asm/data/world/area_kpa/kpa_117/AA2180.data.s index 7e42584c1b..4a8b8c4ae8 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_117/AA2180.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_117/AA2180.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_AA2180 -.word 0xC3520000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240158, D_80240000_AA2180, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190185, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3520000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240158, D_80240000_AA2180, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190185, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_118/AA23C0.data.s b/ver/us/asm/data/world/area_kpa/kpa_118/AA23C0.data.s index a13fe6bb82..9b13b4a8b0 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_118/AA23C0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_118/AA23C0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_AA23C0 -.word 0x43100000, 0x00000000, 0x42C80000, 0x00000000, 0xC3EB8000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_AA23C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190186, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x43100000, 0x00000000, 0x42C80000, 0x00000000, 0xC3EB8000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_AA23C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190186, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_119/AA2660.data.s b/ver/us/asm/data/world/area_kpa/kpa_119/AA2660.data.s index 9f2e13bfd7..eee86728b0 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_119/AA2660.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_119/AA2660.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_AA2660 -.word 0x40C00000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240188, D_80240000_AA2660, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190187, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x40C00000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240188, D_80240000_AA2660, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190187, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_12/A54DC0.data.s b/ver/us/asm/data/world/area_kpa/kpa_12/A54DC0.data.s index d4135efcc2..e24f927b31 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_12/A54DC0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_12/A54DC0.data.s @@ -6,7 +6,7 @@ dlabel D_80240470_A54DC0 .word 0x41F00000, 0x41F00000, 0xC3160000, 0x42B40000, 0x44B7C000, 0x41F00000, 0xC3160000, 0x43870000, 0x41880000, 0xC1A00000, 0xC1880000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_802409F8_A55348, D_80240470_A54DC0, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80240000_A54950 dlabel D_802404E0_A54E30 -.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240570_A54EC0 .word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, kpa_12_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, kpa_12_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_121/AA28F0.data.s b/ver/us/asm/data/world/area_kpa/kpa_121/AA28F0.data.s index d827478359..39f50d14ca 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_121/AA28F0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_121/AA28F0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_AA28F0 -.word 0xC3BA8000, 0xC3700000, 0x42C80000, 0x42B40000, 0x43E88000, 0x00000000, 0x42BE0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240364, D_80240000_AA28F0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190188, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3BA8000, 0xC3700000, 0x42C80000, 0x42B40000, 0x43E88000, 0x00000000, 0x42BE0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240364, D_80240000_AA28F0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190188, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_13/A56390.data.s b/ver/us/asm/data/world/area_kpa/kpa_13/A56390.data.s index 5d8cac8d74..a2380604a1 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_13/A56390.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_13/A56390.data.s @@ -6,7 +6,7 @@ dlabel D_80240470_A56390 .word 0x41F00000, 0x41F00000, 0xC3160000, 0x42B40000, 0x44F00000, 0x41F00000, 0xC3160000, 0x43870000, 0x4421C000, 0x00000000, 0xC32D0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_802409A0_A568C0, D_80240470_A56390, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80240000_A55F20 dlabel D_802404E0_A56400 -.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240570_A56490 .word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, kpa_13_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, kpa_13_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_130/AA3460.data.s b/ver/us/asm/data/world/area_kpa/kpa_130/AA3460.data.s index 92919a0d67..0da6137ffc 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_130/AA3460.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_130/AA3460.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240740_AA3460 -.word 0xC473C000, 0x00000000, 0xC0A00000, 0x42B40000, 0x4473C000, 0x44340000, 0xC2C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240A7C, D_80240740_AA3460, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC473C000, 0x00000000, 0xC0A00000, 0x42B40000, 0x4473C000, 0x44340000, 0xC2C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240A7C, D_80240740_AA3460, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_133/AA78F0.data.s b/ver/us/asm/data/world/area_kpa/kpa_133/AA78F0.data.s index c653349408..89f1d9572a 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_133/AA78F0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_133/AA78F0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240470_AA78F0 -.word 0xC3C18000, 0x00000000, 0x42E60000, 0x42B40000, 0x43B90000, 0x00000000, 0x42F00000, 0x43870000, 0x43B90000, 0x42C80000, 0x42F00000, 0x43870000, 0x43B68000, 0x43700000, 0xC1A00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240A7C, D_80240470_AA78F0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3C18000, 0x00000000, 0x42E60000, 0x42B40000, 0x43B90000, 0x00000000, 0x42F00000, 0x43870000, 0x43B90000, 0x42C80000, 0x42F00000, 0x43870000, 0x43B68000, 0x43700000, 0xC1A00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240A7C, D_80240470_AA78F0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_134/AA96A0.data.s b/ver/us/asm/data/world/area_kpa/kpa_134/AA96A0.data.s index 0af304ceb0..4617410568 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_134/AA96A0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_134/AA96A0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240700_AA96A0 -.word 0xC3B90000, 0x00000000, 0x42E60000, 0x42B40000, 0x44368000, 0x00000000, 0x42E60000, 0x43870000, 0xC3B90000, 0x42C80000, 0x43000000, 0x42B40000, 0xC3B68000, 0x43700000, 0xC1B00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240BA8, D_80240700_AA96A0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3B90000, 0x00000000, 0x42E60000, 0x42B40000, 0x44368000, 0x00000000, 0x42E60000, 0x43870000, 0xC3B90000, 0x42C80000, 0x43000000, 0x42B40000, 0xC3B68000, 0x43700000, 0xC1B00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240BA8, D_80240700_AA96A0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_14/A57D20.data.s b/ver/us/asm/data/world/area_kpa/kpa_14/A57D20.data.s index 2415788d95..f8a3612f28 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_14/A57D20.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_14/A57D20.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240870_A57D20 -.word 0x41F00000, 0x41F00000, 0xC3160000, 0x42B40000, 0x44F8C000, 0x41F00000, 0xC3160000, 0x43870000, 0x44DE0000, 0x00000000, 0xC33B0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241570, D_80240870_A57D20, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80240000_A574B0, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000012, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x41F00000, 0x41F00000, 0xC3160000, 0x42B40000, 0x44F8C000, 0x41F00000, 0xC3160000, 0x43870000, 0x44DE0000, 0x00000000, 0xC33B0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241570, D_80240870_A57D20, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80240000_A574B0, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000012, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_15/A59960.data.s b/ver/us/asm/data/world/area_kpa/kpa_15/A59960.data.s index 42d6f9eb5c..00d51cc343 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_15/A59960.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_15/A59960.data.s @@ -6,7 +6,7 @@ dlabel D_802405D0_A59960 .word 0x41400000, 0x00000000, 0xC2C20000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80240938_A59CC8, D_802405D0_A59960, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190166 dlabel D_80240620_A599B0 -.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802406B0_A59A40 .word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, kpa_15_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, kpa_15_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_16/A5A3D0.data.s b/ver/us/asm/data/world/area_kpa/kpa_16/A5A3D0.data.s index 5e2f4f7d24..f97185b336 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_16/A5A3D0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_16/A5A3D0.data.s @@ -6,7 +6,7 @@ dlabel D_802403A0_A5A3D0 .word 0x41C80000, 0x00000000, 0xC2B80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80240E5C_A5AE8C, D_802403A0_A5A3D0, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190167 dlabel D_802403F0_A5A420 -.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x0000000B, 0x00000013, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x0000000B, 0x00000013, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240480_A5A4B0 .word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, kpa_16_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, kpa_16_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_17/A5CA20.data.s b/ver/us/asm/data/world/area_kpa/kpa_17/A5CA20.data.s index ca5113212d..ecb01df3a1 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_17/A5CA20.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_17/A5CA20.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A5CA20 -.word 0x44824000, 0x437A0000, 0xC3F80000, 0x42B40000, 0x44920000, 0x41F00000, 0xC40C0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802402F0, D_80240000_A5CA20, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x44824000, 0x437A0000, 0xC3F80000, 0x42B40000, 0x44920000, 0x41F00000, 0xC40C0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802402F0, D_80240000_A5CA20, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015F, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_32/A5E3D0.data.s b/ver/us/asm/data/world/area_kpa/kpa_32/A5E3D0.data.s index b86ef3ca2b..842ea68f14 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_32/A5E3D0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_32/A5E3D0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240310_A5E3D0 -.word 0xC40FC000, 0xC2480000, 0xC0A00000, 0x42B40000, 0x44084000, 0xC2480000, 0xC0A00000, 0x43870000, 0x4405C000, 0x430C0000, 0x00000000, 0x43870000, 0xC405C000, 0x430C0000, 0x00000000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240944, D_80240310_A5E3D0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019016B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC40FC000, 0xC2480000, 0xC0A00000, 0x42B40000, 0x44084000, 0xC2480000, 0xC0A00000, 0x43870000, 0x4405C000, 0x430C0000, 0x00000000, 0x43870000, 0xC405C000, 0x430C0000, 0x00000000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240944, D_80240310_A5E3D0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019016B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_33/A5F390.data.s b/ver/us/asm/data/world/area_kpa/kpa_33/A5F390.data.s index 62e90bbbab..8366146607 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_33/A5F390.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_33/A5F390.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240310_A5F390 -.word 0xC408C000, 0xC2480000, 0xC0A00000, 0x42B40000, 0x4408C000, 0xC2480000, 0xC0A00000, 0x43870000, 0x44098000, 0x430C0000, 0x00000000, 0x43870000, 0xC4098000, 0x430C0000, 0x00000000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240944, D_80240310_A5F390, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190178, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC408C000, 0xC2480000, 0xC0A00000, 0x42B40000, 0x4408C000, 0xC2480000, 0xC0A00000, 0x43870000, 0x44098000, 0x430C0000, 0x00000000, 0x43870000, 0xC4098000, 0x430C0000, 0x00000000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240944, D_80240310_A5F390, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190178, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_40/A60040.data.s b/ver/us/asm/data/world/area_kpa/kpa_40/A60040.data.s index 8324d27fd6..fc14ea5597 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_40/A60040.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_40/A60040.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A60040 -.word 0xC3F50000, 0x00000000, 0xC2A00000, 0x42B40000, 0x43F50000, 0x00000000, 0xC1F00000, 0x43870000, 0x43F50000, 0x42F00000, 0xC3020000, 0x43870000, 0xC3D70000, 0x43050000, 0xC2A00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024036C, D_80240000_A60040, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190174, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F50000, 0x00000000, 0xC2A00000, 0x42B40000, 0x43F50000, 0x00000000, 0xC1F00000, 0x43870000, 0x43F50000, 0x42F00000, 0xC3020000, 0x43870000, 0xC3D70000, 0x43050000, 0xC2A00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024036C, D_80240000_A60040, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190174, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_41/A60470.data.s b/ver/us/asm/data/world/area_kpa/kpa_41/A60470.data.s index 7ca4962b86..f465f88806 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_41/A60470.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_41/A60470.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A60470 -.word 0xC3AA0000, 0x00000000, 0xC28C0000, 0x42B40000, 0x43AA0000, 0x00000000, 0xC28C0000, 0x43870000, 0x43AA0000, 0x42EE0000, 0xC3660000, 0x43870000, 0xC3AA0000, 0x42EE0000, 0xC3660000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024049C, D_80240000_A60470, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190175, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3AA0000, 0x00000000, 0xC28C0000, 0x42B40000, 0x43AA0000, 0x00000000, 0xC28C0000, 0x43870000, 0x43AA0000, 0x42EE0000, 0xC3660000, 0x43870000, 0xC3AA0000, 0x42EE0000, 0xC3660000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024049C, D_80240000_A60470, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190175, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_50/A623F0.data.s b/ver/us/asm/data/world/area_kpa/kpa_50/A623F0.data.s index f09ff5a052..3b35a2014d 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_50/A623F0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_50/A623F0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241A20_A623F0 -.word 0xC3F00000, 0x00000000, 0xC1E00000, 0x42B40000, 0x44408000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241CF8, D_80241A20_A623F0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F00000, 0x00000000, 0xC1E00000, 0x42B40000, 0x44408000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241CF8, D_80241A20_A623F0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_51/A65CB0.data.s b/ver/us/asm/data/world/area_kpa/kpa_51/A65CB0.data.s index 0faaca7ce3..186ac32c89 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_51/A65CB0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_51/A65CB0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241C20_A65CB0 -.word 0xC3EB0000, 0x00000000, 0xC1E00000, 0x42B40000, 0x443A4000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241F5C, D_80241C20_A65CB0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3EB0000, 0x00000000, 0xC1E00000, 0x42B40000, 0x443A4000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241F5C, D_80241C20_A65CB0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015D, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_52/A68430.data.s b/ver/us/asm/data/world/area_kpa/kpa_52/A68430.data.s index b2fa624fd4..ba4ae44d77 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_52/A68430.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_52/A68430.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241330_A68430 -.word 0xC3AC8000, 0x00000000, 0xC2A00000, 0x42B40000, 0x43A50000, 0x00000000, 0xC1C80000, 0x43870000, 0x43A50000, 0x42EE0000, 0xC30C0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241974, D_80241330_A68430, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190171, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3AC8000, 0x00000000, 0xC2A00000, 0x42B40000, 0x43A50000, 0x00000000, 0xC1C80000, 0x43870000, 0x43A50000, 0x42EE0000, 0xC30C0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241974, D_80241330_A68430, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190171, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_53/A6AE10.data.s b/ver/us/asm/data/world/area_kpa/kpa_53/A6AE10.data.s index 17ea0bfced..02db088603 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_53/A6AE10.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_53/A6AE10.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240170_A6AE10 -.word 0xC3F00000, 0x00000000, 0xC1E00000, 0x42B40000, 0x44400000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802404C4, D_80240170_A6AE10, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F00000, 0x00000000, 0xC1E00000, 0x42B40000, 0x44400000, 0x00000000, 0xC1E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802404C4, D_80240170_A6AE10, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s b/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s index bc75845fd8..971294665a 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_802403F0_A6CEF0 -.word 0xC33F0000, 0x00000000, 0xC3070000, 0x43340000, 0x438A0000, 0x00000000, 0xC3988000, 0x43340000, 0x43C10000, 0xC1C80000, 0xC3670000, 0x43340000, 0x42960000, 0x41A80000, 0x44160000, 0x42B40000, 0x00000000, 0xC47A0000, 0x00000000, 0x00000000, 0x00000000, 0xC47A0000, 0x00000000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_8024113C_A6DC3C, D_802403F0_A6CEF0, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190157, 0x0000000B, 0x00000002, 0xF5DE0180, 0x0000005C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0xC33F0000, 0x00000000, 0xC3070000, 0x43340000, 0x438A0000, 0x00000000, 0xC3988000, 0x43340000, 0x43C10000, 0xC1C80000, 0xC3670000, 0x43340000, 0x42960000, 0x41A80000, 0x44160000, 0x42B40000, 0x00000000, 0xC47A0000, 0x00000000, 0x00000000, 0x00000000, 0xC47A0000, 0x00000000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_8024113C_A6DC3C, D_802403F0_A6CEF0, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190157, 0x0000000B, 0x00000002, 0xF5DE0180, 0x0000005C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240510_A6D010 .word 0x0000001A, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_61/A70720.data.s b/ver/us/asm/data/world/area_kpa/kpa_61/A70720.data.s index 1693521171..ddc33a85bf 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_61/A70720.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_61/A70720.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80242340_A70720 -.word 0xC2C80000, 0xC3200000, 0x42E80000, 0x42F00000, 0xC2C80000, 0x43480000, 0x42CC0000, 0x42F00000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80242B28, D_80242340_A70720, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190177, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC2C80000, 0xC3200000, 0x42E80000, 0x42F00000, 0xC2C80000, 0x43480000, 0x42CC0000, 0x42F00000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80242B28, D_80242340_A70720, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190177, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_62/A72610.data.s b/ver/us/asm/data/world/area_kpa/kpa_62/A72610.data.s index 134cddcec8..d8bf75184f 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_62/A72610.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_62/A72610.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_802403F0_A72610 -.word 0xC33F0000, 0x00000000, 0xC3070000, 0x43340000, 0x438A0000, 0x00000000, 0xC3988000, 0x43340000, 0x43C10000, 0xC2340000, 0xC3670000, 0x43340000, 0x42960000, 0x41A80000, 0x44160000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802411A0, D_802403F0_A72610, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190157, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x0000000A, 0x00000012, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC33F0000, 0x00000000, 0xC3070000, 0x43340000, 0x438A0000, 0x00000000, 0xC3988000, 0x43340000, 0x43C10000, 0xC2340000, 0xC3670000, 0x43340000, 0x42960000, 0x41A80000, 0x44160000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802411A0, D_802403F0_A72610, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190157, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x0000000A, 0x00000002, 0xF8406194, 0x00000000, 0x00000043, 0x00000002, PlayAmbientSounds, 0x0000000A, 0x00000012, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_63/A73740.data.s b/ver/us/asm/data/world/area_kpa/kpa_63/A73740.data.s index 379581257d..4a75b21ca6 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_63/A73740.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_63/A73740.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240190_A73740 -.word 0x43200000, 0x00000000, 0x43700000, 0x00000000, 0xC2200000, 0x00000000, 0x43610000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024068C, D_80240190_A73740, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190156, 0x00000043, 0x00000002, GetLoadType, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x43200000, 0x00000000, 0x43700000, 0x00000000, 0xC2200000, 0x00000000, 0x43610000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024068C, D_80240190_A73740, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190156, 0x00000043, 0x00000002, GetLoadType, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_63/A73D30.data.s b/ver/us/asm/data/world/area_kpa/kpa_63/A73D30.data.s index 466de10bdd..636d2b1ae1 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_63/A73D30.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_63/A73D30.data.s @@ -6,4 +6,4 @@ dlabel D_80240780_A73D30 .word 0x0000000A, 0x00000002, 0xFD050F8C, 0x00000001, 0x00000043, 0x00000004, func_80240000_A735B0, 0x00000000, 0xFE363C83, 0xFD050F8B, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F8D, 0x00000001, 0x00000043, 0x00000004, func_80240000_A735B0, 0x00000001, 0xFE363C83, 0xFD050F8B, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802407F0_A73DA0 -.word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000064, 0x0000001E, 0x0000000A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C83, 0xF24A7AE7, 0x0000002C, 0x00000002, 0xFE363C83, 0xFD050F8A, 0x00000043, 0x00000005, TranslateGroup, 0x0000004E, 0x00000000, 0xFE363C83, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000004E, 0xFD050F8B, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240780_A73D30, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000064, 0x00000000, 0x0000001E, 0x0000000A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C83, 0xF24A7AE7, 0x0000002C, 0x00000002, 0xFE363C83, 0xFD050F8A, 0x00000043, 0x00000005, TranslateGroup, 0x0000004E, 0x00000000, 0xFE363C83, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000004E, 0xFD050F8B, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240780_A73D30, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, GetCurrentPartner, 0xFE363C89, 0x0000000B, 0x00000002, 0xFE363C89, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000043, 0x00000002, GetModelCenter, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFFB, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000000, 0x00000043, 0x00000005, PlayerJump2, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x000000E1, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000027, 0x00000002, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D0188, 0x000000A0, 0x00000028, 0x00000043, 0x00000002, ShowChoice, 0x001E000C, 0x00000043, 0x00000001, CloseMessage, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000002, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000000, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFFCE, 0x00000000, 0x000000E1, 0x0000000D, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000000, 0x00000043, 0x00000002, PartnerIsFlying, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000002, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFFFFFFBF, 0x00000000, 0x000000E1, 0x0000000D, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000040, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000001, 0x00000008, 0x00000056, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x0000017E, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F8A, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFF92, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000032, 0x00000043, 0x00000003, GotoMap, 0x802412B8, 0x00000005, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8A, 0xFFFFFF9C, 0x00000024, 0x00000002, 0xFD050F8B, 0x000000B4, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000001, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFF88, 0x00000000, 0x000000E6, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFF88, 0x00000000, 0x000000E6, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000045, 0x00000002, D_80240780_A73D30, 0xFE363C89, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x0000017F, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFF9C, 0x00000000, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000056, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000028, 0x00000057, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000000B4, 0x00000000, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000049, 0x00000001, 0xFE363C89, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000002, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000000, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFFCE, 0x00000000, 0x000000E1, 0x0000000D, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000000, 0x00000043, 0x00000002, PartnerIsFlying, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000002, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFFFFFFBF, 0x00000000, 0x000000E1, 0x0000000D, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x0000000C, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000024, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000004, 0x00000057, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_802407F0_A73DA0, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000014, 0x0000004B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000002, UpdateColliderTransform, 0x00000014, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000064, 0x0000001E, 0x0000000A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C83, 0xF24A7AE7, 0x0000002C, 0x00000002, 0xFE363C83, 0xFD050F8A, 0x00000043, 0x00000005, TranslateGroup, 0x0000004E, 0x00000000, 0xFE363C83, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000004E, 0xFD050F8B, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240780_A73D30, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000064, 0x00000000, 0x0000001E, 0x0000000A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C83, 0xF24A7AE7, 0x0000002C, 0x00000002, 0xFE363C83, 0xFD050F8A, 0x00000043, 0x00000005, TranslateGroup, 0x0000004E, 0x00000000, 0xFE363C83, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000004E, 0xFD050F8B, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240780_A73D30, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, GetCurrentPartner, 0xFE363C89, 0x0000000B, 0x00000002, 0xFE363C89, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000043, 0x00000002, GetModelCenter, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFFB, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000000, 0x00000043, 0x00000005, PlayerJump2, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x000000E1, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000027, 0x00000002, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D0188, 0x000000A0, 0x00000028, 0x00000043, 0x00000002, ShowChoice, 0x001E000C, 0x00000043, 0x00000001, CloseMessage, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000002, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000000, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFFCE, 0x00000000, 0x000000E1, 0x0000000D, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000000, 0x00000043, 0x00000002, PartnerIsFlying, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000002, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFFFFFFBF, 0x00000000, 0x000000E1, 0x0000000D, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000040, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000001, 0x00000008, 0x00000056, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x0000017E, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F8A, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFF92, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000032, 0x00000043, 0x00000003, GotoMap, 0x802412B8, 0x00000005, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8A, 0xFFFFFF9C, 0x00000024, 0x00000002, 0xFD050F8B, 0x000000B4, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000001, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFF88, 0x00000000, 0x000000E6, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFF88, 0x00000000, 0x000000E6, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000045, 0x00000002, D_80240780_A73D30, 0xFE363C89, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x0000017F, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFF9C, 0x00000000, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000056, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000028, 0x00000057, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000000B4, 0x00000000, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000049, 0x00000001, 0xFE363C89, 0x00000043, 0x00000002, SetPlayerJumpscale, 0x00000002, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000000, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFFCE, 0x00000000, 0x000000E1, 0x0000000D, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000000, 0x00000043, 0x00000002, PartnerIsFlying, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0x00000002, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFFFFFFBF, 0x00000000, 0x000000E1, 0x0000000D, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x0000000C, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000024, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000004, 0x00000057, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_802407F0_A73DA0, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000014, 0x0000004B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000002, UpdateColliderTransform, 0x00000014, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_70/A75360.data.s b/ver/us/asm/data/world/area_kpa/kpa_70/A75360.data.s index be09f67fb2..2e46f34478 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_70/A75360.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_70/A75360.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240AF0_A75360 -.word 0x41500000, 0x00000000, 0x43060000, 0x42B40000, 0x449A2000, 0x00000000, 0x42FC0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802410F4, D_80240AF0_A75360, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190159, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x41500000, 0x00000000, 0x43060000, 0x42B40000, 0x449A2000, 0x00000000, 0x42FC0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802410F4, D_80240AF0_A75360, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190159, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, PlayAmbientSounds, 0x00000004, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_81/A78900.data.s b/ver/us/asm/data/world/area_kpa/kpa_81/A78900.data.s index 2b60d82ebc..84b104aec2 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_81/A78900.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_81/A78900.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240440_A78900 -.word 0xC3430000, 0x00000000, 0x43160000, 0x42B40000, 0x00000000, 0x43480000, 0x43160000, 0x00000000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x426C0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024099C, D_80240440_A78900, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3430000, 0x00000000, 0x43160000, 0x42B40000, 0x00000000, 0x43480000, 0x43160000, 0x00000000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x426C0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024099C, D_80240440_A78900, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000005, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_82/A7A940.data.s b/ver/us/asm/data/world/area_kpa/kpa_82/A7A940.data.s index 82604856a9..6f7763c952 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_82/A7A940.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_82/A7A940.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240440_A7A940 -.word 0xC3520000, 0x00000000, 0x43160000, 0x42B40000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240830, D_80240440_A7A940, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190176, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3520000, 0x00000000, 0x43160000, 0x42B40000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240830, D_80240440_A7A940, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190176, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_83/A83500.data.s b/ver/us/asm/data/world/area_kpa/kpa_83/A83500.data.s index 6b45a396a5..66f4c79436 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_83/A83500.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_83/A83500.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240070_A83500 -.word 0xC3520000, 0x00000000, 0x43160000, 0x42B40000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802403E4, D_80240070_A83500, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190170, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3520000, 0x00000000, 0x43160000, 0x42B40000, 0x43160000, 0x00000000, 0x43160000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802403E4, D_80240070_A83500, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190170, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_83/A83AC0.data.s b/ver/us/asm/data/world/area_kpa/kpa_83/A83AC0.data.s index 67ebde693c..ea8e76b085 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_83/A83AC0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_83/A83AC0.data.s @@ -36,7 +36,7 @@ dlabel D_80240C64_A840F4 .word 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C80, 0x000000E9, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000005, 0xF24A7CE7, 0x00000057, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x0066011E, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000002, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000002, 0xFFFFFFCE, 0x000000C8, 0x000000AA, 0x00000028, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000200, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0066001E, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000001, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0x00000000, 0x000000C8, 0x0000007F, 0x00000028, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000200, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x0066021E, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000003, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000003, 0x00000064, 0x000000C8, 0x000000C8, 0x00000028, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000003, 0x00000200, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000003, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000016, 0x00000001, 0x00000004, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x0066031E, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000004, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000004, 0x00000096, 0x000000C8, 0x00000096, 0x00000028, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000200, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240EEC_A8437C -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFF6A, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetCamType, 0x00000000, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000008, 0x00000001, 0x00000096, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000000FA, 0x00000008, 0x00000001, 0x0000000F, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000001E, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000003, 0x00000001, 0x00000005, 0x00000057, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130053, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000052, 0x00000002, 0x00000008, 0x00000024, 0x00000002, 0xFE363C83, 0x00000041, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24BE280, 0x00000046, 0x00000001, D_80240858_A83CE8, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000010, 0x7FFFFE00, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x000000DC, 0x000000B4, 0x000000A0, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660111, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000002, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000002, 0x00000014, 0x000000A0, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000002, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000014, 0x00000000, 0x000000A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660105, 0x00000043, 0x00000003, SetNpcYaw, 0x00000002, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x000000F8, 0x000000B4, 0x000000B9, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660011, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000001, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000001, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000001, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000001, 0x00000030, 0x000000B9, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000030, 0x00000000, 0x000000B9, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660005, 0x00000043, 0x00000003, SetNpcYaw, 0x00000001, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetNpcPos, 0x00000003, 0x00000104, 0x000000B4, 0x0000006E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660211, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000003, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000003, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000003, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000003, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000003, 0x0000003C, 0x0000006E, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000003, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x0000003C, 0x00000000, 0x0000006E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000003, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660205, 0x00000043, 0x00000003, SetNpcYaw, 0x00000003, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000120, 0x000000B4, 0x0000009B, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660311, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000004, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000004, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000004, 0x00000058, 0x0000009B, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000004, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000058, 0x00000000, 0x0000009B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000004, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660305, 0x00000043, 0x00000003, SetNpcYaw, 0x00000004, 0x0000010E, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000041, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000010, 0x7FFFFE00, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000002, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x0066011A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0066001A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000003, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x0066021A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000004, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x0066031A, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x0066011A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0066001A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x0066021A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x0066031A, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFFCE, 0x00000096, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x0066011A, 0x0066011A, 0x00000000, 0x00130054, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802408F4_A83D84, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660104, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660004, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660204, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660304, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130055, 0x00000043, 0x00000002, ShowChoice, 0x001E0013, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130056, 0x00000012, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130057, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130058, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24BE280, 0x00000046, 0x00000001, D_802408F4_A83D84, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130059, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000047, 0x00000001, 0x00000008, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x0013005A, 0x00000000, 0x00000096, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0xFFFFFF6A, 0x00000000, 0x0000008C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A9A80, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0x00000005, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000E, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x10101000, 0x00000001, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x000007BC, 0x00000032, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C80, 0x00000000, 0x00000043, 0x00000001, func_80240050_A834E0, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x10101000, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F80, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F82, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F83, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000016, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000032, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000003E, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000005A, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000064, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000062, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F83, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000019, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000046, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F82, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000004B, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000001E, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F80, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000019, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000003A, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000004B, 0x0000008C, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000005, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000064, 0x0000008C, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x00210003, 0x00000043, 0x00000003, SetNpcYaw, 0x00000005, 0x0000010E, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x0013005B, 0x000000A0, 0x00000028, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C83, 0x00000064, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_80240990_A83E20, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x00210016, 0x00210003, 0x00000000, 0x0013005C, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802407BC_A83C4C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A8E80, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFFE2, 0x0000008C, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000003C, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, StartBossBattle, 0x00000004, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x0021001D, 0x0021001D, 0x00000000, 0x00130061, 0x00000024, 0x00000002, 0xFD050F84, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802407BC_A83C4C, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x00130062, 0x000000A0, 0x00000028, 0x00000024, 0x00000002, 0xFD050F84, 0x00000001, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A9A80, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFFCE, 0x0000008C, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFF38, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000044, 0x00000001, 0x802400D0, 0x00000005, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F84, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130063, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000024, 0x00000002, 0xF5DE02AC, 0x00000001, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFF6A, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetCamType, 0x00000000, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000008, 0x00000001, 0x00000096, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000000FA, 0x00000008, 0x00000001, 0x0000000F, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000001E, 0x0000000B, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000004, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000003, 0x00000001, 0x00000005, 0x00000057, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130053, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000052, 0x00000002, 0x00000008, 0x00000024, 0x00000002, 0xFE363C83, 0x00000041, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24BE280, 0x00000046, 0x00000001, D_80240858_A83CE8, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000010, 0x7FFFFE00, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x000000DC, 0x000000B4, 0x000000A0, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660111, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000002, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000002, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000002, 0x00000014, 0x000000A0, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000002, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000014, 0x00000000, 0x000000A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660105, 0x00000043, 0x00000003, SetNpcYaw, 0x00000002, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x000000F8, 0x000000B4, 0x000000B9, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660011, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000001, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000001, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000001, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000001, 0x00000030, 0x000000B9, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000030, 0x00000000, 0x000000B9, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660005, 0x00000043, 0x00000003, SetNpcYaw, 0x00000001, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetNpcPos, 0x00000003, 0x00000104, 0x000000B4, 0x0000006E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660211, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000003, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000003, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000003, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000003, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000003, 0x0000003C, 0x0000006E, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000003, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x0000003C, 0x00000000, 0x0000006E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000003, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660205, 0x00000043, 0x00000003, SetNpcYaw, 0x00000003, 0x0000010E, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000120, 0x000000B4, 0x0000009B, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660311, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000004, 0x00000001, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000004, 0xF24A7E80, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000200, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000008, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000004, 0x00000058, 0x0000009B, 0x00000014, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000004, 0x000003E9, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000001, 0x00000058, 0x00000000, 0x0000009B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000004, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660305, 0x00000043, 0x00000003, SetNpcYaw, 0x00000004, 0x0000010E, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000041, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000010, 0x7FFFFE00, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000002, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x0066011A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0066001A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000003, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x0066021A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000004, 0x000020F3, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x0066031A, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x0066011A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0066001A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x0066021A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x0066031A, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFFCE, 0x00000096, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x0066011A, 0x0066011A, 0x00000000, 0x00130054, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802408F4_A83D84, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00660104, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00660004, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000003, 0x00660204, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00660304, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130055, 0x00000043, 0x00000002, ShowChoice, 0x001E0013, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130056, 0x00000012, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130057, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130058, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24BE280, 0x00000046, 0x00000001, D_802408F4_A83D84, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00660114, 0x00660104, 0x00000000, 0x00130059, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000047, 0x00000001, 0x00000008, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x0013005A, 0x00000000, 0x00000096, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0xFFFFFF6A, 0x00000000, 0x0000008C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A9A80, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0x00000005, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000E, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x10101000, 0x00000001, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x000007BC, 0x00000032, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C80, 0x00000000, 0x00000043, 0x00000001, func_80240050_A834E0, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x10101000, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F80, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F82, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000045, 0x00000002, D_80240A2C_A83EBC, 0xFD050F83, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000016, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000032, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000003E, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000005A, 0x0000008C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000044, 0x00000001, D_80240BC0_A84050, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000064, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000062, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F83, 0x00000024, 0x00000002, 0xFE363C80, 0x00000004, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000019, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000046, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F82, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000004B, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000001E, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F80, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000019, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000003A, 0x0000008C, 0x00000000, 0x00000049, 0x00000001, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000044, 0x00000001, D_80240C64_A840F4, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x0000004B, 0x0000008C, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000005, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0x00000064, 0x0000008C, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x00210003, 0x00000043, 0x00000003, SetNpcYaw, 0x00000005, 0x0000010E, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x0013005B, 0x000000A0, 0x00000028, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C83, 0x00000064, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_80240990_A83E20, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x00210016, 0x00210003, 0x00000000, 0x0013005C, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802407BC_A83C4C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A8E80, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFFE2, 0x0000008C, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000003C, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, StartBossBattle, 0x00000004, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x0021001D, 0x0021001D, 0x00000000, 0x00130061, 0x00000024, 0x00000002, 0xFD050F84, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802407BC_A83C4C, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x00130062, 0x000000A0, 0x00000028, 0x00000024, 0x00000002, 0xFD050F84, 0x00000001, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021000B, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000005, 0xF24A9A80, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFFCE, 0x0000008C, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000005, 0xFFFFFF38, 0x0000008C, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000044, 0x00000001, 0x802400D0, 0x00000005, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F84, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0xF24A8680, 0x00000046, 0x00000001, D_802406E0_A83B70, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830001, 0x00830001, 0x00000000, 0x00130063, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000024, 0x00000002, 0xF5DE02AC, 0x00000001, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024257C_A85A0C .word 0x00000043, 0x00000002, GetBattleOutcome, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000064, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000096, 0x00000024, 0x00000002, 0xFE363C86, 0xF24BE280, 0x00000046, 0x00000001, D_80240990_A83E20, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000005, 0x0021001D, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000064, 0x00000000, 0x0000008C, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x000000B8, 0x00000014, 0x00000096, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_90/A867B0.data.s b/ver/us/asm/data/world/area_kpa/kpa_90/A867B0.data.s index 37f57f1626..79f95b87fe 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_90/A867B0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_90/A867B0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A867B0 -.word 0xC3EB0000, 0x00000000, 0x42C80000, 0x42B40000, 0x43848000, 0xC3700000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A867B0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3EB0000, 0x00000000, 0x42C80000, 0x42B40000, 0x43848000, 0xC3700000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A867B0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_91/A88360.data.s b/ver/us/asm/data/world/area_kpa/kpa_91/A88360.data.s index ad3eee8697..eb25593e1e 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_91/A88360.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_91/A88360.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241910_A88360 -.word 0xC3480000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241BA8, D_80241910_A88360, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3480000, 0x00000000, 0x42C80000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241BA8, D_80241910_A88360, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019015C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_94/A8C7C0.data.s b/ver/us/asm/data/world/area_kpa/kpa_94/A8C7C0.data.s index cf2ef3290a..c750d83295 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_94/A8C7C0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_94/A8C7C0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240000_A8C7C0 -.word 0xC3870000, 0xC3700000, 0x42C80000, 0x42B40000, 0x43EB0000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A8C7C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190179, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3870000, 0xC3700000, 0x42C80000, 0x42B40000, 0x43EB0000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x802401D0, D_80240000_A8C7C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00190179, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_95/A8E390.data.s b/ver/us/asm/data/world/area_kpa/kpa_95/A8E390.data.s index f698071004..4c125a3b93 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_95/A8E390.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_95/A8E390.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241910_A8E390 -.word 0x434D0000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241DE8, D_80241910_A8E390, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x434D0000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241DE8, D_80241910_A8E390, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019017A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000007, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_96/A927F0.data.s b/ver/us/asm/data/world/area_kpa/kpa_96/A927F0.data.s index 77db29cb33..ba4669d957 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_96/A927F0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_96/A927F0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240030_A927F0 -.word 0x43520000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240218, D_80240030_A927F0, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, func_802D5FA4, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x43520000, 0x00000000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240218, D_80240030_A927F0, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0019016C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000064, 0x00000000, 0x00000008, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetMusicTrackVolumes, 0x00000006, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_00/7F9100.data.s b/ver/us/asm/data/world/area_mac/mac_00/7F9100.data.s index 32c354019a..a0b80b3dbf 100644 --- a/ver/us/asm/data/world/area_mac/mac_00/7F9100.data.s +++ b/ver/us/asm/data/world/area_mac/mac_00/7F9100.data.s @@ -6,4 +6,4 @@ dlabel D_8024E3F0_7F9100 .word 0x41700000, 0xC3C80000, 0x42B40000, 0x42F00000, 0x00000007, 0xFAA2B58A dlabel D_8024E408_7F9118 -.word 0x43DE8000, 0xC3998000, 0x42B40000, 0x42DC0000, 0x00000003, 0xFAA2B58B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_00_UnkMusicFunc, D_8024E3F0_7F9100, 0x00000057, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFF99, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_00_UnkMusicFunc, D_8024E408_7F9118, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x43DE8000, 0xC3998000, 0x42B40000, 0x42DC0000, 0x00000003, 0xFAA2B58B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_00_MonitorMusicProximityTrigger, D_8024E3F0_7F9100, 0x00000057, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFF99, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_00_MonitorMusicProximityTrigger, D_8024E408_7F9118, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_01/806F50.data.s b/ver/us/asm/data/world/area_mac/mac_01/806F50.data.s index 7ef0ef57b2..fbe6342a4f 100644 --- a/ver/us/asm/data/world/area_mac/mac_01/806F50.data.s +++ b/ver/us/asm/data/world/area_mac/mac_01/806F50.data.s @@ -6,7 +6,7 @@ dlabel D_802466D0_806F50 .word 0xC4160000, 0x00000000, 0x00000000, 0x42B40000, 0x44160000, 0x00000000, 0x00000000, 0x43870000, 0x00000000, 0x00000000, 0xC40E8000, 0x43340000, 0x00000000, 0x00000000, 0x44160000, 0x00000000, 0xC3C80000, 0x00000000, 0x00000000, 0x42B40000, 0x43840000, 0x41D80000, 0x43AF0000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80246EF8_807778, D_802466D0_806F50, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190001 dlabel D_80246770_806FF0 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000016, 0x00000001, 0xFFFFFF80, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000001, 0x00000008, 0x00000016, 0x00000001, 0x00000060, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000000, 0x00000008, 0x00000021, 0x00000002, 0xFFFFFFF3, 0x00000005, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000004A, 0x00000000, 0x00000008, 0x0000001C, 0x00000000, 0x00000044, 0x00000001, 0x802488A8, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000007C, 0x00000001, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000021, 0x00000002, 0xFFFFFFF3, 0x00000005, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000004A, 0x00000000, 0x00000008, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000043, 0x00000004, func_802D5F28, 0x00000000, 0x00000002, 0x00000002, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000008A, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000088, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000016, 0x00000001, 0xFFFFFF80, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000001, 0x00000008, 0x00000016, 0x00000001, 0x00000060, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000000, 0x00000008, 0x00000021, 0x00000002, 0xFFFFFFF3, 0x00000005, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000004A, 0x00000000, 0x00000008, 0x0000001C, 0x00000000, 0x00000044, 0x00000001, 0x802488A8, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000007C, 0x00000001, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000021, 0x00000002, 0xFFFFFFF3, 0x00000005, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000004A, 0x00000000, 0x00000008, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000043, 0x00000004, AdjustMusicProximityMix, 0x00000000, 0x00000002, 0x00000002, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000008A, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000088, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80246950_8071D0 .word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x802626B0, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_01/808D70.data.s b/ver/us/asm/data/world/area_mac/mac_01/808D70.data.s index d835f27941..2e5e8ca201 100644 --- a/ver/us/asm/data/world/area_mac/mac_01/808D70.data.s +++ b/ver/us/asm/data/world/area_mac/mac_01/808D70.data.s @@ -24,4 +24,4 @@ dlabel D_80248878_8090F8 .word 0xC3160000, 0x43A50000, 0x42DC0000, 0x43020000, 0x00000008, 0xFAA2B58B dlabel D_80248890_809110 -.word 0x43850000, 0x43B90000, 0x43480000, 0x435C0000, 0x00000005, 0xFAA2B58C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B58E, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B58E, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_UnkMusicFunc, D_80248860_8090E0, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_UnkMusicFunc, D_80248878_8090F8, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_UnkMusicFunc, D_80248890_809110, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x43850000, 0x43B90000, 0x43480000, 0x435C0000, 0x00000005, 0xFAA2B58C, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B58E, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B58E, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_MonitorMusicProximityTrigger, D_80248860_8090E0, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_MonitorMusicProximityTrigger, D_80248878_8090F8, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_01_MonitorMusicProximityTrigger, D_80248890_809110, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_02/8313E0.data.s b/ver/us/asm/data/world/area_mac/mac_02/8313E0.data.s index 4d8e90ee49..b22adfb95e 100644 --- a/ver/us/asm/data/world/area_mac/mac_02/8313E0.data.s +++ b/ver/us/asm/data/world/area_mac/mac_02/8313E0.data.s @@ -6,4 +6,4 @@ dlabel D_8024E120_8313E0 .word 0xC3160000, 0xC34D0000, 0x42F00000, 0x43160000, 0x00000001, 0xFAA2B58A dlabel D_8024E138_8313F8 -.word 0xC3C80000, 0x437A0000, 0x42DC0000, 0x43020000, 0x00000004, 0xFAA2B58B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_02_UnkMusicFunc, D_8024E120_8313E0, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_02_UnkMusicFunc, D_8024E138_8313F8, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0xC3C80000, 0x437A0000, 0x42DC0000, 0x43020000, 0x00000004, 0xFAA2B58B, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_02_MonitorMusicProximityTrigger, D_8024E120_8313E0, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_02_MonitorMusicProximityTrigger, D_8024E138_8313F8, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_04/8520A0.data.s b/ver/us/asm/data/world/area_mac/mac_04/8520A0.data.s index 6dbc96d199..8726bfd7f5 100644 --- a/ver/us/asm/data/world/area_mac/mac_04/8520A0.data.s +++ b/ver/us/asm/data/world/area_mac/mac_04/8520A0.data.s @@ -3,4 +3,4 @@ .section .data dlabel gBadgeMenuElements_8520A0 -.word 0xC3F00000, 0x435C0000, 0x42C80000, 0x42F00000, 0x00000009, 0xFAA2B58A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_04_UnkMusicFunc, gBadgeMenuElements_8520A0, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3F00000, 0x435C0000, 0x42C80000, 0x42F00000, 0x00000009, 0xFAA2B58A, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000043, 0x00000002, func_802D5EE0, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, mac_04_MonitorMusicProximityTrigger, gBadgeMenuElements_8520A0, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_obk/obk_05/BCDB00.data.s b/ver/us/asm/data/world/area_obk/obk_05/BCDB00.data.s index 4ab791d0c4..55df92ea11 100644 --- a/ver/us/asm/data/world/area_obk/obk_05/BCDB00.data.s +++ b/ver/us/asm/data/world/area_obk/obk_05/BCDB00.data.s @@ -12,10 +12,10 @@ dlabel D_80240BD0_BCDC30 .word 0x00000043, 0x00000003, SetTexPanner, 0x00000021, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x00000022, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x0000012C, 0x00000027, 0x00000002, 0xFE363C81, 0x00000064, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000000, 0x00000000, 0xFE363C80, 0xFE363C81, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240C84_BCDCE4 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_80240038_BCD098, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B58A, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x00002082, 0x00000000, 0x00000043, 0x00000002, Disable8bitMario, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000041, 0x00000001, 0x00000008, 0x00000024, 0x00000002, 0xFAA2B58A, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x00002081, 0x00000000, 0x00000043, 0x00000002, Disable8bitMario, 0x00000001, 0x00000044, 0x00000001, 0x80240A30, 0x00000024, 0x00000002, 0xFAA2B58A, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, obk_05_SetCamera0MoveFlag1, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFF97, 0x0000001E, 0xFFFFFFC9, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000001, obk_05_UnsetCamera0MoveFlag1, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x0000000D, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x802414E8, 0x00000046, 0x00000001, 0x80241520, 0x00000044, 0x00000001, D_80240F10_BCDF70, 0x00000044, 0x00000001, 0x80240F90, 0x00000044, 0x00000001, D_80240BD0_BCDC30, 0x00000047, 0x00000005, D_80240B1C_BCDB7C, 0x00000100, 0x0000000C, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240AA0_BCDB00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000011, 0x7FFFFE00, 0x00000044, 0x00000001, 0x80240A30, 0x00000044, 0x00000001, D_80240C84_BCDCE4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, obk_05_RetroJar_AwaitPlayerEntry, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B58A, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x00002082, 0x00000000, 0x00000043, 0x00000002, Disable8bitMario, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000041, 0x00000001, 0x00000008, 0x00000024, 0x00000002, 0xFAA2B58A, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x00002081, 0x00000000, 0x00000043, 0x00000002, Disable8bitMario, 0x00000001, 0x00000044, 0x00000001, 0x80240A30, 0x00000024, 0x00000002, 0xFAA2B58A, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, obk_05_SetCamera0MoveFlag1, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFF97, 0x0000001E, 0xFFFFFFC9, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000001, obk_05_UnsetCamera0MoveFlag1, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x0000000D, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x802414E8, 0x00000046, 0x00000001, 0x80241520, 0x00000044, 0x00000001, D_80240F10_BCDF70, 0x00000044, 0x00000001, 0x80240F90, 0x00000044, 0x00000001, D_80240BD0_BCDC30, 0x00000047, 0x00000005, D_80240B1C_BCDB7C, 0x00000100, 0x0000000C, 0x00000001, 0x00000000, 0x00000044, 0x00000001, D_80240AA0_BCDB00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000011, 0x7FFFFE00, 0x00000044, 0x00000001, 0x80240A30, 0x00000044, 0x00000001, D_80240C84_BCDCE4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240F10_BCDF70 .word 0x00000044, 0x00000001, D_80240F2C_BCDF8C, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240F2C_BCDF8C -.word 0x00000043, 0x00000003, ParentColliderToModel, 0x00000008, 0x00000019, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000009, 0x0000001B, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000000A, 0x0000001B, 0x00000043, 0x00000001, func_80240050_BCD0B0, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000003, ParentColliderToModel, 0x00000008, 0x00000019, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000009, 0x0000001B, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000000A, 0x0000001B, 0x00000043, 0x00000001, obk_05_RockingChair_UpdatePhysics, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_pra/pra_01/D4EF50.data.s b/ver/us/asm/data/world/area_pra/pra_01/D4EF50.data.s index a05cfd153b..7b4b7b9c8e 100644 --- a/ver/us/asm/data/world/area_pra/pra_01/D4EF50.data.s +++ b/ver/us/asm/data/world/area_pra/pra_01/D4EF50.data.s @@ -15,7 +15,7 @@ dlabel D_80241F9C_D4EFDC .word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, pra_01_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000042, 0x00000002, 0xFE363C80, 0x00050000, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80241200_D4E240, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80241238_D4E278, 0xFE363C80, 0x0000004E, 0x00000006, D_80241F9C_D4EFDC, 0x00000010, 0x00000000, D_80242FB0, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802411AC_D4E1EC, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242130_D4F170 -.word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowConsumableChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, pra_01_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80241200_D4E240, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_802412D4_D4E314, 0xFE363C80, 0x0000004E, 0x00000006, D_80242130_D4F170, 0x00000010, 0x00000000, D_80243178_E084D8, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802411AC_D4E1EC, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowConsumableChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, pra_01_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80241200_D4E240, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_802412D4_D4E314, 0xFE363C80, 0x0000004E, 0x00000006, D_80242130_D4F170, 0x00000010, 0x00000000, pra_01_80243178, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802411AC_D4E1EC, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802422B4_D4F2F4 .word 0x00000005, 0x00000001, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_sbk/sbk_02/92AEB0.data.s b/ver/us/asm/data/world/area_sbk/sbk_02/92AEB0.data.s index 2db9288410..42528d4f0b 100644 --- a/ver/us/asm/data/world/area_sbk/sbk_02/92AEB0.data.s +++ b/ver/us/asm/data/world/area_sbk/sbk_02/92AEB0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80240C00_92AEB0 -.word 0xC3ED8000, 0x00000000, 0x00000000, 0x42B40000, 0x43ED8000, 0x00000000, 0x00000000, 0x43870000, 0x00000000, 0x00000000, 0xC3ED8000, 0x43340000, 0x00000000, 0x00000000, 0x43ED8000, 0x00000000, 0x00000000, 0x42A00000, 0xC3430000, 0x43340000, 0x41A00000, 0x00000000, 0x42DC0000, 0x43870000, 0xC2A00000, 0x00000000, 0x42A00000, 0x43340000, 0x42A00000, 0x00000000, 0x42A00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240FCC, D_80240C00_92AEB0, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, func_80240000_92A2B0, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000006, 0x0000001D, 0x00000001, 0x00000007, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000017, 0x00000000, 0x00000008, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0xC3ED8000, 0x00000000, 0x00000000, 0x42B40000, 0x43ED8000, 0x00000000, 0x00000000, 0x43870000, 0x00000000, 0x00000000, 0xC3ED8000, 0x43340000, 0x00000000, 0x00000000, 0x43ED8000, 0x00000000, 0x00000000, 0x42A00000, 0xC3430000, 0x43340000, 0x41A00000, 0x00000000, 0x42DC0000, 0x43870000, 0xC2A00000, 0x00000000, 0x42A00000, 0x43340000, 0x42A00000, 0x00000000, 0x42A00000, 0x42B40000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240FCC, D_80240C00_92AEB0, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, sbk_02_GetTattle, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000006, 0x0000001D, 0x00000001, 0x00000007, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000017, 0x00000000, 0x00000008, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004B748.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004B748.s deleted file mode 100644 index 2f2c4ab4e6..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004B748.s +++ /dev/null @@ -1,192 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004B748 -/* 26B48 8004B748 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 26B4C 8004B74C AFB40030 */ sw $s4, 0x30($sp) -/* 26B50 8004B750 0080A02D */ daddu $s4, $a0, $zero -/* 26B54 8004B754 AFBF0038 */ sw $ra, 0x38($sp) -/* 26B58 8004B758 AFB50034 */ sw $s5, 0x34($sp) -/* 26B5C 8004B75C AFB3002C */ sw $s3, 0x2c($sp) -/* 26B60 8004B760 AFB20028 */ sw $s2, 0x28($sp) -/* 26B64 8004B764 AFB10024 */ sw $s1, 0x24($sp) -/* 26B68 8004B768 AFB00020 */ sw $s0, 0x20($sp) -/* 26B6C 8004B76C 8E820030 */ lw $v0, 0x30($s4) -/* 26B70 8004B770 8E830168 */ lw $v1, 0x168($s4) -/* 26B74 8004B774 24420001 */ addiu $v0, $v0, 1 -/* 26B78 8004B778 10600004 */ beqz $v1, .L8004B78C -/* 26B7C 8004B77C AE820030 */ sw $v0, 0x30($s4) -/* 26B80 8004B780 0C01352F */ jal func_8004D4BC -/* 26B84 8004B784 00000000 */ nop -/* 26B88 8004B788 AE800168 */ sw $zero, 0x168($s4) -.L8004B78C: -/* 26B8C 8004B78C 0280802D */ daddu $s0, $s4, $zero -.L8004B790: -/* 26B90 8004B790 92030090 */ lbu $v1, 0x90($s0) -/* 26B94 8004B794 10600035 */ beqz $v1, .L8004B86C -/* 26B98 8004B798 2C620002 */ sltiu $v0, $v1, 2 -/* 26B9C 8004B79C 10400033 */ beqz $v0, .L8004B86C -/* 26BA0 8004B7A0 00031040 */ sll $v0, $v1, 1 -/* 26BA4 8004B7A4 00431021 */ addu $v0, $v0, $v1 -/* 26BA8 8004B7A8 00021040 */ sll $v0, $v0, 1 -/* 26BAC 8004B7AC 3C038008 */ lui $v1, %hi(D_8007836A) -/* 26BB0 8004B7B0 2463836A */ addiu $v1, $v1, %lo(D_8007836A) -/* 26BB4 8004B7B4 00433021 */ addu $a2, $v0, $v1 -/* 26BB8 8004B7B8 94C20002 */ lhu $v0, 2($a2) -/* 26BBC 8004B7BC 10400020 */ beqz $v0, .L8004B840 -/* 26BC0 8004B7C0 0000882D */ daddu $s1, $zero, $zero -/* 26BC4 8004B7C4 0040282D */ daddu $a1, $v0, $zero -/* 26BC8 8004B7C8 0200202D */ daddu $a0, $s0, $zero -/* 26BCC 8004B7CC 0280182D */ daddu $v1, $s4, $zero -.L8004B7D0: -/* 26BD0 8004B7D0 94620202 */ lhu $v0, 0x202($v1) -/* 26BD4 8004B7D4 54450015 */ bnel $v0, $a1, .L8004B82C -/* 26BD8 8004B7D8 26310001 */ addiu $s1, $s1, 1 -/* 26BDC 8004B7DC 94C20000 */ lhu $v0, ($a2) -/* 26BE0 8004B7E0 A7A00012 */ sh $zero, 0x12($sp) -/* 26BE4 8004B7E4 A7A00016 */ sh $zero, 0x16($sp) -/* 26BE8 8004B7E8 A7A20010 */ sh $v0, 0x10($sp) -/* 26BEC 8004B7EC 90C20004 */ lbu $v0, 4($a2) -/* 26BF0 8004B7F0 30420001 */ andi $v0, $v0, 1 -/* 26BF4 8004B7F4 50400008 */ beql $v0, $zero, .L8004B818 -/* 26BF8 8004B7F8 A7A00014 */ sh $zero, 0x14($sp) -/* 26BFC 8004B7FC 90820093 */ lbu $v0, 0x93($a0) -/* 26C00 8004B800 50400005 */ beql $v0, $zero, .L8004B818 -/* 26C04 8004B804 A7A00014 */ sh $zero, 0x14($sp) -/* 26C08 8004B808 90820093 */ lbu $v0, 0x93($a0) -/* 26C0C 8004B80C 00021200 */ sll $v0, $v0, 8 -/* 26C10 8004B810 244200FF */ addiu $v0, $v0, 0xff -/* 26C14 8004B814 A7A20014 */ sh $v0, 0x14($sp) -.L8004B818: -/* 26C18 8004B818 A3A00018 */ sb $zero, 0x18($sp) -/* 26C1C 8004B81C 0280202D */ daddu $a0, $s4, $zero -/* 26C20 8004B820 27A50010 */ addiu $a1, $sp, 0x10 -/* 26C24 8004B824 08012E19 */ j .L8004B864 -/* 26C28 8004B828 0000302D */ daddu $a2, $zero, $zero -.L8004B82C: -/* 26C2C 8004B82C 2E220008 */ sltiu $v0, $s1, 8 -/* 26C30 8004B830 1440FFE7 */ bnez $v0, .L8004B7D0 -/* 26C34 8004B834 246300AC */ addiu $v1, $v1, 0xac -/* 26C38 8004B838 08012E1C */ j .L8004B870 -/* 26C3C 8004B83C AE000090 */ sw $zero, 0x90($s0) -.L8004B840: -/* 26C40 8004B840 0280202D */ daddu $a0, $s4, $zero -/* 26C44 8004B844 27A50010 */ addiu $a1, $sp, 0x10 -/* 26C48 8004B848 94C20000 */ lhu $v0, ($a2) -/* 26C4C 8004B84C 0000302D */ daddu $a2, $zero, $zero -/* 26C50 8004B850 A7A00012 */ sh $zero, 0x12($sp) -/* 26C54 8004B854 A7A00014 */ sh $zero, 0x14($sp) -/* 26C58 8004B858 A7A00016 */ sh $zero, 0x16($sp) -/* 26C5C 8004B85C A3A00018 */ sb $zero, 0x18($sp) -/* 26C60 8004B860 A7A20010 */ sh $v0, 0x10($sp) -.L8004B864: -/* 26C64 8004B864 0C012E9D */ jal func_8004BA74 -/* 26C68 8004B868 00000000 */ nop -.L8004B86C: -/* 26C6C 8004B86C AE000090 */ sw $zero, 0x90($s0) -.L8004B870: -/* 26C70 8004B870 26100004 */ addiu $s0, $s0, 4 -/* 26C74 8004B874 26820010 */ addiu $v0, $s4, 0x10 -/* 26C78 8004B878 0202102B */ sltu $v0, $s0, $v0 -/* 26C7C 8004B87C 1440FFC4 */ bnez $v0, .L8004B790 -/* 26C80 8004B880 0000902D */ daddu $s2, $zero, $zero -/* 26C84 8004B884 24130001 */ addiu $s3, $zero, 1 -/* 26C88 8004B888 241100A0 */ addiu $s1, $zero, 0xa0 -/* 26C8C 8004B88C 0280802D */ daddu $s0, $s4, $zero -.L8004B890: -/* 26C90 8004B890 960200A0 */ lhu $v0, 0xa0($s0) -/* 26C94 8004B894 10400009 */ beqz $v0, .L8004B8BC -/* 26C98 8004B898 0280202D */ daddu $a0, $s4, $zero -/* 26C9C 8004B89C 27A50010 */ addiu $a1, $sp, 0x10 -/* 26CA0 8004B8A0 02913021 */ addu $a2, $s4, $s1 -/* 26CA4 8004B8A4 A7B30010 */ sh $s3, 0x10($sp) -/* 26CA8 8004B8A8 A7A00012 */ sh $zero, 0x12($sp) -/* 26CAC 8004B8AC A7A00014 */ sh $zero, 0x14($sp) -/* 26CB0 8004B8B0 A7A00016 */ sh $zero, 0x16($sp) -/* 26CB4 8004B8B4 0C012E9D */ jal func_8004BA74 -/* 26CB8 8004B8B8 A3A00018 */ sb $zero, 0x18($sp) -.L8004B8BC: -/* 26CBC 8004B8BC A60000A0 */ sh $zero, 0xa0($s0) -/* 26CC0 8004B8C0 26310006 */ addiu $s1, $s1, 6 -/* 26CC4 8004B8C4 26520001 */ addiu $s2, $s2, 1 -/* 26CC8 8004B8C8 2E420004 */ sltiu $v0, $s2, 4 -/* 26CCC 8004B8CC 1440FFF0 */ bnez $v0, .L8004B890 -/* 26CD0 8004B8D0 26100006 */ addiu $s0, $s0, 6 -/* 26CD4 8004B8D4 92820164 */ lbu $v0, 0x164($s4) -/* 26CD8 8004B8D8 92830163 */ lbu $v1, 0x163($s4) -/* 26CDC 8004B8DC 0043A823 */ subu $s5, $v0, $v1 -/* 26CE0 8004B8E0 06A20001 */ bltzl $s5, .L8004B8E8 -/* 26CE4 8004B8E4 26B50010 */ addiu $s5, $s5, 0x10 -.L8004B8E8: -/* 26CE8 8004B8E8 26A2FFFF */ addiu $v0, $s5, -1 -/* 26CEC 8004B8EC 2C42000F */ sltiu $v0, $v0, 0xf -/* 26CF0 8004B8F0 10400033 */ beqz $v0, .L8004B9C0 -/* 26CF4 8004B8F4 0060882D */ daddu $s1, $v1, $zero -/* 26CF8 8004B8F8 12A0002F */ beqz $s5, .L8004B9B8 -/* 26CFC 8004B8FC 0000902D */ daddu $s2, $zero, $zero -/* 26D00 8004B900 00111080 */ sll $v0, $s1, 2 -/* 26D04 8004B904 00511021 */ addu $v0, $v0, $s1 -/* 26D08 8004B908 00021040 */ sll $v0, $v0, 1 -/* 26D0C 8004B90C 245300C2 */ addiu $s3, $v0, 0xc2 -/* 26D10 8004B910 02938021 */ addu $s0, $s4, $s3 -.L8004B914: -/* 26D14 8004B914 96030000 */ lhu $v1, ($s0) -/* 26D18 8004B918 306223FF */ andi $v0, $v1, 0x23ff -/* 26D1C 8004B91C 1040001B */ beqz $v0, .L8004B98C -/* 26D20 8004B920 30628000 */ andi $v0, $v1, 0x8000 -/* 26D24 8004B924 10400005 */ beqz $v0, .L8004B93C -/* 26D28 8004B928 3065FFFF */ andi $a1, $v1, 0xffff -/* 26D2C 8004B92C 0C0130A9 */ jal func_8004C2A4 -/* 26D30 8004B930 0280202D */ daddu $a0, $s4, $zero -/* 26D34 8004B934 08012E64 */ j .L8004B990 -/* 26D38 8004B938 A6000000 */ sh $zero, ($s0) -.L8004B93C: -/* 26D3C 8004B93C 30621C00 */ andi $v0, $v1, 0x1c00 -/* 26D40 8004B940 14400007 */ bnez $v0, .L8004B960 -/* 26D44 8004B944 30620C00 */ andi $v0, $v1, 0xc00 -/* 26D48 8004B948 0280202D */ daddu $a0, $s4, $zero -/* 26D4C 8004B94C 0200282D */ daddu $a1, $s0, $zero -/* 26D50 8004B950 0C012E9D */ jal func_8004BA74 -/* 26D54 8004B954 0000302D */ daddu $a2, $zero, $zero -/* 26D58 8004B958 08012E64 */ j .L8004B990 -/* 26D5C 8004B95C A6000000 */ sh $zero, ($s0) -.L8004B960: -/* 26D60 8004B960 10400004 */ beqz $v0, .L8004B974 -/* 26D64 8004B964 00000000 */ nop -/* 26D68 8004B968 96050000 */ lhu $a1, ($s0) -/* 26D6C 8004B96C 0C01309A */ jal func_8004C268 -/* 26D70 8004B970 0280202D */ daddu $a0, $s4, $zero -.L8004B974: -/* 26D74 8004B974 96020000 */ lhu $v0, ($s0) -/* 26D78 8004B978 30421000 */ andi $v0, $v0, 0x1000 -/* 26D7C 8004B97C 10400003 */ beqz $v0, .L8004B98C -/* 26D80 8004B980 0280202D */ daddu $a0, $s4, $zero -/* 26D84 8004B984 0C0130D6 */ jal snd_set_modifiers -/* 26D88 8004B988 0200282D */ daddu $a1, $s0, $zero -.L8004B98C: -/* 26D8C 8004B98C A6000000 */ sh $zero, ($s0) -.L8004B990: -/* 26D90 8004B990 26310001 */ addiu $s1, $s1, 1 -/* 26D94 8004B994 2E220010 */ sltiu $v0, $s1, 0x10 -/* 26D98 8004B998 14400003 */ bnez $v0, .L8004B9A8 -/* 26D9C 8004B99C 2673000A */ addiu $s3, $s3, 0xa -/* 26DA0 8004B9A0 241300C2 */ addiu $s3, $zero, 0xc2 -/* 26DA4 8004B9A4 0000882D */ daddu $s1, $zero, $zero -.L8004B9A8: -/* 26DA8 8004B9A8 26520001 */ addiu $s2, $s2, 1 -/* 26DAC 8004B9AC 0255102B */ sltu $v0, $s2, $s5 -/* 26DB0 8004B9B0 1440FFD8 */ bnez $v0, .L8004B914 -/* 26DB4 8004B9B4 02938021 */ addu $s0, $s4, $s3 -.L8004B9B8: -/* 26DB8 8004B9B8 92820164 */ lbu $v0, 0x164($s4) -/* 26DBC 8004B9BC A2820163 */ sb $v0, 0x163($s4) -.L8004B9C0: -/* 26DC0 8004B9C0 8FBF0038 */ lw $ra, 0x38($sp) -/* 26DC4 8004B9C4 8FB50034 */ lw $s5, 0x34($sp) -/* 26DC8 8004B9C8 8FB40030 */ lw $s4, 0x30($sp) -/* 26DCC 8004B9CC 8FB3002C */ lw $s3, 0x2c($sp) -/* 26DD0 8004B9D0 8FB20028 */ lw $s2, 0x28($sp) -/* 26DD4 8004B9D4 8FB10024 */ lw $s1, 0x24($sp) -/* 26DD8 8004B9D8 8FB00020 */ lw $s0, 0x20($sp) -/* 26DDC 8004B9DC 03E00008 */ jr $ra -/* 26DE0 8004B9E0 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C0E4.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C0E4.s deleted file mode 100644 index 9dcdaadfb7..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C0E4.s +++ /dev/null @@ -1,107 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C0E4 -/* 274E4 8004C0E4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 274E8 8004C0E8 AFBF0010 */ sw $ra, 0x10($sp) -/* 274EC 8004C0EC 908200C0 */ lbu $v0, 0xc0($a0) -/* 274F0 8004C0F0 1440005A */ bnez $v0, .L8004C25C -/* 274F4 8004C0F4 00000000 */ nop -/* 274F8 8004C0F8 ACA60000 */ sw $a2, ($a1) -/* 274FC 8004C0FC ACA60050 */ sw $a2, 0x50($a1) -/* 27500 8004C100 8C820000 */ lw $v0, ($a0) -/* 27504 8004C104 3C047FFF */ lui $a0, 0x7fff -/* 27508 8004C108 24060001 */ addiu $a2, $zero, 1 -/* 2750C 8004C10C 8C430004 */ lw $v1, 4($v0) -/* 27510 8004C110 24020040 */ addiu $v0, $zero, 0x40 -/* 27514 8004C114 A0A2009B */ sb $v0, 0x9b($a1) -/* 27518 8004C118 24027FFF */ addiu $v0, $zero, 0x7fff -/* 2751C 8004C11C A4A2005C */ sh $v0, 0x5c($a1) -/* 27520 8004C120 A4A2005E */ sh $v0, 0x5e($a1) -/* 27524 8004C124 2402007F */ addiu $v0, $zero, 0x7f -/* 27528 8004C128 A0A0009C */ sb $zero, 0x9c($a1) -/* 2752C 8004C12C A0A0009D */ sb $zero, 0x9d($a1) -/* 27530 8004C130 A0A0009E */ sb $zero, 0x9e($a1) -/* 27534 8004C134 A0A2009F */ sb $v0, 0x9f($a1) -/* 27538 8004C138 A4A00092 */ sh $zero, 0x92($a1) -/* 2753C 8004C13C A0A00094 */ sb $zero, 0x94($a1) -/* 27540 8004C140 ACA00088 */ sw $zero, 0x88($a1) -/* 27544 8004C144 A0A0008C */ sb $zero, 0x8c($a1) -/* 27548 8004C148 A4A6008E */ sh $a2, 0x8e($a1) -/* 2754C 8004C14C A4A00090 */ sh $zero, 0x90($a1) -/* 27550 8004C150 ACA3001C */ sw $v1, 0x1c($a1) -/* 27554 8004C154 94E30000 */ lhu $v1, ($a3) -/* 27558 8004C158 8FA20028 */ lw $v0, 0x28($sp) -/* 2755C 8004C15C 3484FFFF */ ori $a0, $a0, 0xffff -/* 27560 8004C160 A0A20098 */ sb $v0, 0x98($a1) -/* 27564 8004C164 8FA2002C */ lw $v0, 0x2c($sp) -/* 27568 8004C168 306323FF */ andi $v1, $v1, 0x23ff -/* 2756C 8004C16C ACA00018 */ sw $zero, 0x18($a1) -/* 27570 8004C170 ACA00054 */ sw $zero, 0x54($a1) -/* 27574 8004C174 A0A000A0 */ sb $zero, 0xa0($a1) -/* 27578 8004C178 A0A000A1 */ sb $zero, 0xa1($a1) -/* 2757C 8004C17C A0A000A2 */ sb $zero, 0xa2($a1) -/* 27580 8004C180 A0A000A3 */ sb $zero, 0xa3($a1) -/* 27584 8004C184 ACA4006C */ sw $a0, 0x6c($a1) -/* 27588 8004C188 A4A00074 */ sh $zero, 0x74($a1) -/* 2758C 8004C18C ACA00070 */ sw $zero, 0x70($a1) -/* 27590 8004C190 A4A00076 */ sh $zero, 0x76($a1) -/* 27594 8004C194 A0A20099 */ sb $v0, 0x99($a1) -/* 27598 8004C198 ACA00060 */ sw $zero, 0x60($a1) -/* 2759C 8004C19C A4A30096 */ sh $v1, 0x96($a1) -/* 275A0 8004C1A0 A4A00068 */ sh $zero, 0x68($a1) -/* 275A4 8004C1A4 8CA30000 */ lw $v1, ($a1) -/* 275A8 8004C1A8 ACA00064 */ sw $zero, 0x64($a1) -/* 275AC 8004C1AC A4A0006A */ sh $zero, 0x6a($a1) -/* 275B0 8004C1B0 ACA00080 */ sw $zero, 0x80($a1) -/* 275B4 8004C1B4 A0A00084 */ sb $zero, 0x84($a1) -/* 275B8 8004C1B8 A0A00085 */ sb $zero, 0x85($a1) -/* 275BC 8004C1BC 90620000 */ lbu $v0, ($v1) -/* 275C0 8004C1C0 24630001 */ addiu $v1, $v1, 1 -/* 275C4 8004C1C4 ACA30000 */ sw $v1, ($a1) -/* 275C8 8004C1C8 A0A2009A */ sb $v0, 0x9a($a1) -/* 275CC 8004C1CC 0040202D */ daddu $a0, $v0, $zero -/* 275D0 8004C1D0 30430003 */ andi $v1, $v0, 3 -/* 275D4 8004C1D4 24020001 */ addiu $v0, $zero, 1 -/* 275D8 8004C1D8 1062000B */ beq $v1, $v0, .L8004C208 -/* 275DC 8004C1DC 28620002 */ slti $v0, $v1, 2 -/* 275E0 8004C1E0 10400005 */ beqz $v0, .L8004C1F8 -/* 275E4 8004C1E4 24020002 */ addiu $v0, $zero, 2 -/* 275E8 8004C1E8 10600007 */ beqz $v1, .L8004C208 -/* 275EC 8004C1EC 00A0202D */ daddu $a0, $a1, $zero -/* 275F0 8004C1F0 08013095 */ j .L8004C254 -/* 275F4 8004C1F4 00000000 */ nop -.L8004C1F8: -/* 275F8 8004C1F8 10620005 */ beq $v1, $v0, .L8004C210 -/* 275FC 8004C1FC 308200FC */ andi $v0, $a0, 0xfc -/* 27600 8004C200 08013095 */ j .L8004C254 -/* 27604 8004C204 00A0202D */ daddu $a0, $a1, $zero -.L8004C208: -/* 27608 8004C208 08013094 */ j .L8004C250 -/* 2760C 8004C20C A0A600A9 */ sb $a2, 0xa9($a1) -.L8004C210: -/* 27610 8004C210 8CA30000 */ lw $v1, ($a1) -/* 27614 8004C214 A0A2009A */ sb $v0, 0x9a($a1) -/* 27618 8004C218 A0A600A9 */ sb $a2, 0xa9($a1) -/* 2761C 8004C21C 90620000 */ lbu $v0, ($v1) -/* 27620 8004C220 A0A20078 */ sb $v0, 0x78($a1) -/* 27624 8004C224 90620001 */ lbu $v0, 1($v1) -/* 27628 8004C228 A0A20079 */ sb $v0, 0x79($a1) -/* 2762C 8004C22C 90620002 */ lbu $v0, 2($v1) -/* 27630 8004C230 00021042 */ srl $v0, $v0, 1 -/* 27634 8004C234 34420003 */ ori $v0, $v0, 3 -/* 27638 8004C238 A0A2007A */ sb $v0, 0x7a($a1) -/* 2763C 8004C23C 90620002 */ lbu $v0, 2($v1) -/* 27640 8004C240 24A30078 */ addiu $v1, $a1, 0x78 -/* 27644 8004C244 ACA30000 */ sw $v1, ($a1) -/* 27648 8004C248 30420007 */ andi $v0, $v0, 7 -/* 2764C 8004C24C A0A2007E */ sb $v0, 0x7e($a1) -.L8004C250: -/* 27650 8004C250 00A0202D */ daddu $a0, $a1, $zero -.L8004C254: -/* 27654 8004C254 0C0130F5 */ jal snd_set_player_modifiers -/* 27658 8004C258 00E0282D */ daddu $a1, $a3, $zero -.L8004C25C: -/* 2765C 8004C25C 8FBF0010 */ lw $ra, 0x10($sp) -/* 27660 8004C260 03E00008 */ jr $ra -/* 27664 8004C264 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C268.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C268.s deleted file mode 100644 index 786ee911af..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C268.s +++ /dev/null @@ -1,21 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C268 -/* 27668 8004C268 30A20C00 */ andi $v0, $a1, 0xc00 -/* 2766C 8004C26C 00024282 */ srl $t0, $v0, 0xa -/* 27670 8004C270 0000382D */ daddu $a3, $zero, $zero -/* 27674 8004C274 30A523FF */ andi $a1, $a1, 0x23ff -/* 27678 8004C278 2406016C */ addiu $a2, $zero, 0x16c -.L8004C27C: -/* 2767C 8004C27C 00861821 */ addu $v1, $a0, $a2 -/* 27680 8004C280 94620096 */ lhu $v0, 0x96($v1) -/* 27684 8004C284 50450001 */ beql $v0, $a1, .L8004C28C -/* 27688 8004C288 A0680085 */ sb $t0, 0x85($v1) -.L8004C28C: -/* 2768C 8004C28C 24E70001 */ addiu $a3, $a3, 1 -/* 27690 8004C290 28E20008 */ slti $v0, $a3, 8 -/* 27694 8004C294 1440FFF9 */ bnez $v0, .L8004C27C -/* 27698 8004C298 24C600AC */ addiu $a2, $a2, 0xac -/* 2769C 8004C29C 03E00008 */ jr $ra -/* 276A0 8004C2A0 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C2A4.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C2A4.s deleted file mode 100644 index 8520404106..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C2A4.s +++ /dev/null @@ -1,29 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C2A4 -/* 276A4 8004C2A4 0000382D */ daddu $a3, $zero, $zero -/* 276A8 8004C2A8 30A523FF */ andi $a1, $a1, 0x23ff -/* 276AC 8004C2AC 3C0A8008 */ lui $t2, %hi(D_80078464) -/* 276B0 8004C2B0 254A8464 */ addiu $t2, $t2, %lo(D_80078464) -/* 276B4 8004C2B4 24090001 */ addiu $t1, $zero, 1 -/* 276B8 8004C2B8 24080001 */ addiu $t0, $zero, 1 -/* 276BC 8004C2BC 2406016C */ addiu $a2, $zero, 0x16c -.L8004C2C0: -/* 276C0 8004C2C0 00861821 */ addu $v1, $a0, $a2 -/* 276C4 8004C2C4 94620096 */ lhu $v0, 0x96($v1) -/* 276C8 8004C2C8 14450008 */ bne $v0, $a1, .L8004C2EC -/* 276CC 8004C2CC 24E70001 */ addiu $a3, $a3, 1 -/* 276D0 8004C2D0 AC6A0000 */ sw $t2, ($v1) -/* 276D4 8004C2D4 AC600080 */ sw $zero, 0x80($v1) -/* 276D8 8004C2D8 A069009A */ sb $t1, 0x9a($v1) -/* 276DC 8004C2DC A06000A9 */ sb $zero, 0xa9($v1) -/* 276E0 8004C2E0 A468008E */ sh $t0, 0x8e($v1) -/* 276E4 8004C2E4 A0600098 */ sb $zero, 0x98($v1) -/* 276E8 8004C2E8 A0600099 */ sb $zero, 0x99($v1) -.L8004C2EC: -/* 276EC 8004C2EC 28E20008 */ slti $v0, $a3, 8 -/* 276F0 8004C2F0 1440FFF3 */ bnez $v0, .L8004C2C0 -/* 276F4 8004C2F4 24C600AC */ addiu $a2, $a2, 0xac -/* 276F8 8004C2F8 03E00008 */ jr $ra -/* 276FC 8004C2FC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C300.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C300.s deleted file mode 100644 index efc57d0e5d..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C300.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C300 -/* 27700 8004C300 0000382D */ daddu $a3, $zero, $zero -/* 27704 8004C304 3C0A8008 */ lui $t2, %hi(D_80078464) -/* 27708 8004C308 254A8464 */ addiu $t2, $t2, %lo(D_80078464) -/* 2770C 8004C30C 24090001 */ addiu $t1, $zero, 1 -/* 27710 8004C310 24080001 */ addiu $t0, $zero, 1 -/* 27714 8004C314 2406016C */ addiu $a2, $zero, 0x16c -.L8004C318: -/* 27718 8004C318 00861821 */ addu $v1, $a0, $a2 -/* 2771C 8004C31C 90620099 */ lbu $v0, 0x99($v1) -/* 27720 8004C320 14A20008 */ bne $a1, $v0, .L8004C344 -/* 27724 8004C324 24E70001 */ addiu $a3, $a3, 1 -/* 27728 8004C328 AC6A0000 */ sw $t2, ($v1) -/* 2772C 8004C32C AC600080 */ sw $zero, 0x80($v1) -/* 27730 8004C330 A069009A */ sb $t1, 0x9a($v1) -/* 27734 8004C334 A06000A9 */ sb $zero, 0xa9($v1) -/* 27738 8004C338 A468008E */ sh $t0, 0x8e($v1) -/* 2773C 8004C33C A0600098 */ sb $zero, 0x98($v1) -/* 27740 8004C340 A0600099 */ sb $zero, 0x99($v1) -.L8004C344: -/* 27744 8004C344 28E20008 */ slti $v0, $a3, 8 -/* 27748 8004C348 1440FFF3 */ bnez $v0, .L8004C318 -/* 2774C 8004C34C 24C600AC */ addiu $a2, $a2, 0xac -/* 27750 8004C350 03E00008 */ jr $ra -/* 27754 8004C354 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C578.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C578.s deleted file mode 100644 index 29a202ed31..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C578.s +++ /dev/null @@ -1,197 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C578 -/* 27978 8004C578 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2797C 8004C57C AFB20018 */ sw $s2, 0x18($sp) -/* 27980 8004C580 0080902D */ daddu $s2, $a0, $zero -/* 27984 8004C584 AFB00010 */ sw $s0, 0x10($sp) -/* 27988 8004C588 00A0802D */ daddu $s0, $a1, $zero -/* 2798C 8004C58C AFB10014 */ sw $s1, 0x14($sp) -/* 27990 8004C590 00C0882D */ daddu $s1, $a2, $zero -/* 27994 8004C594 AFBF0020 */ sw $ra, 0x20($sp) -/* 27998 8004C598 AFB3001C */ sw $s3, 0x1c($sp) -/* 2799C 8004C59C 920300A9 */ lbu $v1, 0xa9($s0) -/* 279A0 8004C5A0 10600006 */ beqz $v1, .L8004C5BC -/* 279A4 8004C5A4 00E0982D */ daddu $s3, $a3, $zero -/* 279A8 8004C5A8 24020001 */ addiu $v0, $zero, 1 -/* 279AC 8004C5AC 1062003D */ beq $v1, $v0, .L8004C6A4 -/* 279B0 8004C5B0 0240202D */ daddu $a0, $s2, $zero -/* 279B4 8004C5B4 08013208 */ j .L8004C820 -/* 279B8 8004C5B8 AE000000 */ sw $zero, ($s0) -.L8004C5BC: -/* 279BC 8004C5BC 92230045 */ lbu $v1, 0x45($s1) -/* 279C0 8004C5C0 924200BC */ lbu $v0, 0xbc($s2) -/* 279C4 8004C5C4 54620096 */ bnel $v1, $v0, .L8004C820 -/* 279C8 8004C5C8 AE000000 */ sw $zero, ($s0) -/* 279CC 8004C5CC 9202009A */ lbu $v0, 0x9a($s0) -/* 279D0 8004C5D0 30420010 */ andi $v0, $v0, 0x10 -/* 279D4 8004C5D4 14400017 */ bnez $v0, .L8004C634 -/* 279D8 8004C5D8 00000000 */ nop -/* 279DC 8004C5DC 8E02001C */ lw $v0, 0x1c($s0) -/* 279E0 8004C5E0 86040060 */ lh $a0, 0x60($s0) -/* 279E4 8004C5E4 9442001E */ lhu $v0, 0x1e($v0) -/* 279E8 8004C5E8 860300A4 */ lh $v1, 0xa4($s0) -/* 279EC 8004C5EC 00822023 */ subu $a0, $a0, $v0 -/* 279F0 8004C5F0 0C014E3E */ jal snd_tune_param_to_timescale -/* 279F4 8004C5F4 00832021 */ addu $a0, $a0, $v1 -/* 279F8 8004C5F8 8E02001C */ lw $v0, 0x1c($s0) -/* 279FC 8004C5FC C4420020 */ lwc1 $f2, 0x20($v0) -/* 27A00 8004C600 46020002 */ mul.s $f0, $f0, $f2 -/* 27A04 8004C604 00000000 */ nop -/* 27A08 8004C608 E6000058 */ swc1 $f0, 0x58($s0) -/* 27A0C 8004C60C C6220004 */ lwc1 $f2, 4($s1) -/* 27A10 8004C610 46001032 */ c.eq.s $f2, $f0 -/* 27A14 8004C614 00000000 */ nop -/* 27A18 8004C618 45010006 */ bc1t .L8004C634 -/* 27A1C 8004C61C 00000000 */ nop -/* 27A20 8004C620 92220043 */ lbu $v0, 0x43($s1) -/* 27A24 8004C624 34420008 */ ori $v0, $v0, 8 -/* 27A28 8004C628 A2220043 */ sb $v0, 0x43($s1) -/* 27A2C 8004C62C C6000058 */ lwc1 $f0, 0x58($s0) -/* 27A30 8004C630 E6200004 */ swc1 $f0, 4($s1) -.L8004C634: -/* 27A34 8004C634 9202009A */ lbu $v0, 0x9a($s0) -/* 27A38 8004C638 30420008 */ andi $v0, $v0, 8 -/* 27A3C 8004C63C 14400004 */ bnez $v0, .L8004C650 -/* 27A40 8004C640 00000000 */ nop -/* 27A44 8004C644 920200A8 */ lbu $v0, 0xa8($s0) -/* 27A48 8004C648 14400002 */ bnez $v0, .L8004C654 -/* 27A4C 8004C64C 0040182D */ daddu $v1, $v0, $zero -.L8004C650: -/* 27A50 8004C650 9203009B */ lbu $v1, 0x9b($s0) -.L8004C654: -/* 27A54 8004C654 9222000E */ lbu $v0, 0xe($s1) -/* 27A58 8004C658 10430005 */ beq $v0, $v1, .L8004C670 -/* 27A5C 8004C65C 0240202D */ daddu $a0, $s2, $zero -/* 27A60 8004C660 92220043 */ lbu $v0, 0x43($s1) -/* 27A64 8004C664 A223000E */ sb $v1, 0xe($s1) -/* 27A68 8004C668 34420010 */ ori $v0, $v0, 0x10 -/* 27A6C 8004C66C A2220043 */ sb $v0, 0x43($s1) -.L8004C670: -/* 27A70 8004C670 0C013211 */ jal snd_get_scaled_volume -/* 27A74 8004C674 0200282D */ daddu $a1, $s0, $zero -/* 27A78 8004C678 0040202D */ daddu $a0, $v0, $zero -/* 27A7C 8004C67C 86230040 */ lh $v1, 0x40($s1) -/* 27A80 8004C680 00041400 */ sll $v0, $a0, 0x10 -/* 27A84 8004C684 00021403 */ sra $v0, $v0, 0x10 -/* 27A88 8004C688 10620067 */ beq $v1, $v0, .L8004C828 -/* 27A8C 8004C68C 00000000 */ nop -/* 27A90 8004C690 9222003D */ lbu $v0, 0x3d($s1) -/* 27A94 8004C694 A6240040 */ sh $a0, 0x40($s1) -/* 27A98 8004C698 34420020 */ ori $v0, $v0, 0x20 -/* 27A9C 8004C69C 0801320A */ j .L8004C828 -/* 27AA0 8004C6A0 A222003D */ sb $v0, 0x3d($s1) -.L8004C6A4: -/* 27AA4 8004C6A4 0C0133B1 */ jal snd_SEFCmd_02_SetInstrument -/* 27AA8 8004C6A8 0200282D */ daddu $a1, $s0, $zero -/* 27AAC 8004C6AC 0240202D */ daddu $a0, $s2, $zero -/* 27AB0 8004C6B0 0C01339C */ jal snd_SEFCmd_00_SetVolume -/* 27AB4 8004C6B4 0200282D */ daddu $a1, $s0, $zero -/* 27AB8 8004C6B8 0240202D */ daddu $a0, $s2, $zero -/* 27ABC 8004C6BC 0C0133A9 */ jal snd_SEFCmd_01_SetPan -/* 27AC0 8004C6C0 0200282D */ daddu $a1, $s0, $zero -/* 27AC4 8004C6C4 0240202D */ daddu $a0, $s2, $zero -/* 27AC8 8004C6C8 0C0133C3 */ jal snd_SEFCmd_03_SetReverb -/* 27ACC 8004C6CC 0200282D */ daddu $a1, $s0, $zero -/* 27AD0 8004C6D0 8E040000 */ lw $a0, ($s0) -/* 27AD4 8004C6D4 90830000 */ lbu $v1, ($a0) -/* 27AD8 8004C6D8 24840001 */ addiu $a0, $a0, 1 -/* 27ADC 8004C6DC AE040000 */ sw $a0, ($s0) -/* 27AE0 8004C6E0 3063007F */ andi $v1, $v1, 0x7f -/* 27AE4 8004C6E4 00031040 */ sll $v0, $v1, 1 -/* 27AE8 8004C6E8 00431021 */ addu $v0, $v0, $v1 -/* 27AEC 8004C6EC 000210C0 */ sll $v0, $v0, 3 -/* 27AF0 8004C6F0 00431821 */ addu $v1, $v0, $v1 -/* 27AF4 8004C6F4 90820000 */ lbu $v0, ($a0) -/* 27AF8 8004C6F8 00033080 */ sll $a2, $v1, 2 -/* 27AFC 8004C6FC 3042000F */ andi $v0, $v0, 0xf -/* 27B00 8004C700 000210C0 */ sll $v0, $v0, 3 -/* 27B04 8004C704 10400006 */ beqz $v0, .L8004C720 -/* 27B08 8004C708 A20200A1 */ sb $v0, 0xa1($s0) -/* 27B0C 8004C70C 8E440060 */ lw $a0, 0x60($s2) -/* 27B10 8004C710 0C01350A */ jal func_8004D428 -/* 27B14 8004C714 304500FF */ andi $a1, $v0, 0xff -/* 27B18 8004C718 080131C9 */ j .L8004C724 -/* 27B1C 8004C71C 00021400 */ sll $v0, $v0, 0x10 -.L8004C720: -/* 27B20 8004C720 00031480 */ sll $v0, $v1, 0x12 -.L8004C724: -/* 27B24 8004C724 AE020060 */ sw $v0, 0x60($s0) -/* 27B28 8004C728 9202009A */ lbu $v0, 0x9a($s0) -/* 27B2C 8004C72C 30420010 */ andi $v0, $v0, 0x10 -/* 27B30 8004C730 10400006 */ beqz $v0, .L8004C74C -/* 27B34 8004C734 00000000 */ nop -/* 27B38 8004C738 8E02001C */ lw $v0, 0x1c($s0) -/* 27B3C 8004C73C 86030060 */ lh $v1, 0x60($s0) -/* 27B40 8004C740 9442001E */ lhu $v0, 0x1e($v0) -/* 27B44 8004C744 080131D9 */ j .L8004C764 -/* 27B48 8004C748 00623023 */ subu $a2, $v1, $v0 -.L8004C74C: -/* 27B4C 8004C74C 8E03001C */ lw $v1, 0x1c($s0) -/* 27B50 8004C750 86020060 */ lh $v0, 0x60($s0) -/* 27B54 8004C754 9463001E */ lhu $v1, 0x1e($v1) -/* 27B58 8004C758 860400A4 */ lh $a0, 0xa4($s0) -/* 27B5C 8004C75C 00431023 */ subu $v0, $v0, $v1 -/* 27B60 8004C760 00443021 */ addu $a2, $v0, $a0 -.L8004C764: -/* 27B64 8004C764 0C014E3E */ jal snd_tune_param_to_timescale -/* 27B68 8004C768 00C0202D */ daddu $a0, $a2, $zero -/* 27B6C 8004C76C 8E02001C */ lw $v0, 0x1c($s0) -/* 27B70 8004C770 C4420020 */ lwc1 $f2, 0x20($v0) -/* 27B74 8004C774 46020002 */ mul.s $f0, $f0, $f2 -/* 27B78 8004C778 00000000 */ nop -/* 27B7C 8004C77C E6000058 */ swc1 $f0, 0x58($s0) -/* 27B80 8004C780 92230045 */ lbu $v1, 0x45($s1) -/* 27B84 8004C784 924200BC */ lbu $v0, 0xbc($s2) -/* 27B88 8004C788 0043102B */ sltu $v0, $v0, $v1 -/* 27B8C 8004C78C 54400026 */ bnel $v0, $zero, .L8004C828 -/* 27B90 8004C790 A20000A9 */ sb $zero, 0xa9($s0) -/* 27B94 8004C794 0220202D */ daddu $a0, $s1, $zero -/* 27B98 8004C798 0C014E22 */ jal func_80053888 -/* 27B9C 8004C79C 326500FF */ andi $a1, $s3, 0xff -/* 27BA0 8004C7A0 9202009A */ lbu $v0, 0x9a($s0) -/* 27BA4 8004C7A4 30420008 */ andi $v0, $v0, 8 -/* 27BA8 8004C7A8 14400004 */ bnez $v0, .L8004C7BC -/* 27BAC 8004C7AC 00000000 */ nop -/* 27BB0 8004C7B0 920200A8 */ lbu $v0, 0xa8($s0) -/* 27BB4 8004C7B4 54400003 */ bnel $v0, $zero, .L8004C7C4 -/* 27BB8 8004C7B8 A222000E */ sb $v0, 0xe($s1) -.L8004C7BC: -/* 27BBC 8004C7BC 9202009B */ lbu $v0, 0x9b($s0) -/* 27BC0 8004C7C0 A222000E */ sb $v0, 0xe($s1) -.L8004C7C4: -/* 27BC4 8004C7C4 0240202D */ daddu $a0, $s2, $zero -/* 27BC8 8004C7C8 9202009C */ lbu $v0, 0x9c($s0) -/* 27BCC 8004C7CC 0200282D */ daddu $a1, $s0, $zero -/* 27BD0 8004C7D0 0C013211 */ jal snd_get_scaled_volume -/* 27BD4 8004C7D4 A222000F */ sb $v0, 0xf($s1) -/* 27BD8 8004C7D8 A6220040 */ sh $v0, 0x40($s1) -/* 27BDC 8004C7DC 8E020010 */ lw $v0, 0x10($s0) -/* 27BE0 8004C7E0 AE220014 */ sw $v0, 0x14($s1) -/* 27BE4 8004C7E4 8E020014 */ lw $v0, 0x14($s0) -/* 27BE8 8004C7E8 AE220018 */ sw $v0, 0x18($s1) -/* 27BEC 8004C7EC 8E02001C */ lw $v0, 0x1c($s0) -/* 27BF0 8004C7F0 AE220000 */ sw $v0, ($s1) -/* 27BF4 8004C7F4 C6000058 */ lwc1 $f0, 0x58($s0) -/* 27BF8 8004C7F8 24020002 */ addiu $v0, $zero, 2 -/* 27BFC 8004C7FC A2220043 */ sb $v0, 0x43($s1) -/* 27C00 8004C800 E6200004 */ swc1 $f0, 4($s1) -/* 27C04 8004C804 924200BC */ lbu $v0, 0xbc($s2) -/* 27C08 8004C808 A2220045 */ sb $v0, 0x45($s1) -/* 27C0C 8004C80C A2220044 */ sb $v0, 0x44($s1) -/* 27C10 8004C810 924200BE */ lbu $v0, 0xbe($s2) -/* 27C14 8004C814 A2220010 */ sb $v0, 0x10($s1) -/* 27C18 8004C818 0801320A */ j .L8004C828 -/* 27C1C 8004C81C A20000A9 */ sb $zero, 0xa9($s0) -.L8004C820: -/* 27C20 8004C820 A6000096 */ sh $zero, 0x96($s0) -/* 27C24 8004C824 A2000098 */ sb $zero, 0x98($s0) -.L8004C828: -/* 27C28 8004C828 8FBF0020 */ lw $ra, 0x20($sp) -/* 27C2C 8004C82C 8FB3001C */ lw $s3, 0x1c($sp) -/* 27C30 8004C830 8FB20018 */ lw $s2, 0x18($sp) -/* 27C34 8004C834 8FB10014 */ lw $s1, 0x14($sp) -/* 27C38 8004C838 8FB00010 */ lw $s0, 0x10($sp) -/* 27C3C 8004C83C 03E00008 */ jr $ra -/* 27C40 8004C840 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C884.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C884.s deleted file mode 100644 index 8982b7848d..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004C884.s +++ /dev/null @@ -1,362 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004C884 -/* 27C84 8004C884 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 27C88 8004C888 AFB20018 */ sw $s2, 0x18($sp) -/* 27C8C 8004C88C 0080902D */ daddu $s2, $a0, $zero -/* 27C90 8004C890 AFB00010 */ sw $s0, 0x10($sp) -/* 27C94 8004C894 00A0802D */ daddu $s0, $a1, $zero -/* 27C98 8004C898 AFB10014 */ sw $s1, 0x14($sp) -/* 27C9C 8004C89C 00C0882D */ daddu $s1, $a2, $zero -/* 27CA0 8004C8A0 AFB3001C */ sw $s3, 0x1c($sp) -/* 27CA4 8004C8A4 0000982D */ daddu $s3, $zero, $zero -/* 27CA8 8004C8A8 AFB40020 */ sw $s4, 0x20($sp) -/* 27CAC 8004C8AC AFBF0028 */ sw $ra, 0x28($sp) -/* 27CB0 8004C8B0 AFB50024 */ sw $s5, 0x24($sp) -/* 27CB4 8004C8B4 920300A9 */ lbu $v1, 0xa9($s0) -/* 27CB8 8004C8B8 24020001 */ addiu $v0, $zero, 1 -/* 27CBC 8004C8BC 14620008 */ bne $v1, $v0, .L8004C8E0 -/* 27CC0 8004C8C0 00E0A02D */ daddu $s4, $a3, $zero -/* 27CC4 8004C8C4 A20000A9 */ sb $zero, 0xa9($s0) -/* 27CC8 8004C8C8 92230045 */ lbu $v1, 0x45($s1) -/* 27CCC 8004C8CC 924200BC */ lbu $v0, 0xbc($s2) -/* 27CD0 8004C8D0 14620003 */ bne $v1, $v0, .L8004C8E0 -/* 27CD4 8004C8D4 0220202D */ daddu $a0, $s1, $zero -/* 27CD8 8004C8D8 0C014E31 */ jal func_800538C4 -/* 27CDC 8004C8DC 328500FF */ andi $a1, $s4, 0xff -.L8004C8E0: -/* 27CE0 8004C8E0 8E030080 */ lw $v1, 0x80($s0) -/* 27CE4 8004C8E4 10600008 */ beqz $v1, .L8004C908 -/* 27CE8 8004C8E8 24020001 */ addiu $v0, $zero, 1 -/* 27CEC 8004C8EC 92040085 */ lbu $a0, 0x85($s0) -/* 27CF0 8004C8F0 14820005 */ bne $a0, $v0, .L8004C908 -/* 27CF4 8004C8F4 00000000 */ nop -/* 27CF8 8004C8F8 AE030000 */ sw $v1, ($s0) -/* 27CFC 8004C8FC AE000080 */ sw $zero, 0x80($s0) -/* 27D00 8004C900 A2000085 */ sb $zero, 0x85($s0) -/* 27D04 8004C904 A604008E */ sh $a0, 0x8e($s0) -.L8004C908: -/* 27D08 8004C908 92030085 */ lbu $v1, 0x85($s0) -/* 27D0C 8004C90C 24020002 */ addiu $v0, $zero, 2 -/* 27D10 8004C910 14620004 */ bne $v1, $v0, .L8004C924 -/* 27D14 8004C914 24020001 */ addiu $v0, $zero, 1 -/* 27D18 8004C918 9603005E */ lhu $v1, 0x5e($s0) -/* 27D1C 8004C91C A2020055 */ sb $v0, 0x55($s0) -/* 27D20 8004C920 A603005C */ sh $v1, 0x5c($s0) -.L8004C924: -/* 27D24 8004C924 9602008E */ lhu $v0, 0x8e($s0) -/* 27D28 8004C928 2442FFFF */ addiu $v0, $v0, -1 -/* 27D2C 8004C92C A602008E */ sh $v0, 0x8e($s0) -/* 27D30 8004C930 3042FFFF */ andi $v0, $v0, 0xffff -/* 27D34 8004C934 14400090 */ bnez $v0, .L8004CB78 -/* 27D38 8004C938 00000000 */ nop -/* 27D3C 8004C93C 3C158008 */ lui $s5, %hi(D_80078400) -/* 27D40 8004C940 26B58400 */ addiu $s5, $s5, %lo(D_80078400) -.L8004C944: -/* 27D44 8004C944 8E040000 */ lw $a0, ($s0) -/* 27D48 8004C948 90860000 */ lbu $a2, ($a0) -/* 27D4C 8004C94C 24840001 */ addiu $a0, $a0, 1 -/* 27D50 8004C950 00061600 */ sll $v0, $a2, 0x18 -/* 27D54 8004C954 0440001D */ bltz $v0, .L8004C9CC -/* 27D58 8004C958 AE040000 */ sw $a0, ($s0) -/* 27D5C 8004C95C 30C200FF */ andi $v0, $a2, 0xff -/* 27D60 8004C960 1440000D */ bnez $v0, .L8004C998 -/* 27D64 8004C964 2C420078 */ sltiu $v0, $v0, 0x78 -/* 27D68 8004C968 92230045 */ lbu $v1, 0x45($s1) -/* 27D6C 8004C96C 924200BC */ lbu $v0, 0xbc($s2) -/* 27D70 8004C970 54620005 */ bnel $v1, $v0, .L8004C988 -/* 27D74 8004C974 AE000000 */ sw $zero, ($s0) -/* 27D78 8004C978 0220202D */ daddu $a0, $s1, $zero -/* 27D7C 8004C97C 0C014E31 */ jal func_800538C4 -/* 27D80 8004C980 328500FF */ andi $a1, $s4, 0xff -/* 27D84 8004C984 AE000000 */ sw $zero, ($s0) -.L8004C988: -/* 27D88 8004C988 A6000096 */ sh $zero, 0x96($s0) -/* 27D8C 8004C98C A2000098 */ sb $zero, 0x98($s0) -/* 27D90 8004C990 0801335C */ j .L8004CD70 -/* 27D94 8004C994 A2000099 */ sb $zero, 0x99($s0) -.L8004C998: -/* 27D98 8004C998 1440000A */ bnez $v0, .L8004C9C4 -/* 27D9C 8004C99C 30C200FF */ andi $v0, $a2, 0xff -/* 27DA0 8004C9A0 90830000 */ lbu $v1, ($a0) -/* 27DA4 8004C9A4 24820001 */ addiu $v0, $a0, 1 -/* 27DA8 8004C9A8 AE020000 */ sw $v0, ($s0) -/* 27DAC 8004C9AC 30C20007 */ andi $v0, $a2, 7 -/* 27DB0 8004C9B0 00021200 */ sll $v0, $v0, 8 -/* 27DB4 8004C9B4 00621821 */ addu $v1, $v1, $v0 -/* 27DB8 8004C9B8 24630078 */ addiu $v1, $v1, 0x78 -/* 27DBC 8004C9BC 080132DB */ j .L8004CB6C -/* 27DC0 8004C9C0 A603008E */ sh $v1, 0x8e($s0) -.L8004C9C4: -/* 27DC4 8004C9C4 080132DB */ j .L8004CB6C -/* 27DC8 8004C9C8 A602008E */ sh $v0, 0x8e($s0) -.L8004C9CC: -/* 27DCC 8004C9CC 30C300FF */ andi $v1, $a2, 0xff -/* 27DD0 8004C9D0 2C6200D8 */ sltiu $v0, $v1, 0xd8 -/* 27DD4 8004C9D4 1040005D */ beqz $v0, .L8004CB4C -/* 27DD8 8004C9D8 0240202D */ daddu $a0, $s2, $zero -/* 27DDC 8004C9DC 920200A1 */ lbu $v0, 0xa1($s0) -/* 27DE0 8004C9E0 1040000B */ beqz $v0, .L8004CA10 -/* 27DE4 8004C9E4 0040282D */ daddu $a1, $v0, $zero -/* 27DE8 8004C9E8 30C2007F */ andi $v0, $a2, 0x7f -/* 27DEC 8004C9EC 00023040 */ sll $a2, $v0, 1 -/* 27DF0 8004C9F0 00C23021 */ addu $a2, $a2, $v0 -/* 27DF4 8004C9F4 000630C0 */ sll $a2, $a2, 3 -/* 27DF8 8004C9F8 00C23021 */ addu $a2, $a2, $v0 -/* 27DFC 8004C9FC 8E440060 */ lw $a0, 0x60($s2) -/* 27E00 8004CA00 0C01350A */ jal func_8004D428 -/* 27E04 8004CA04 00063080 */ sll $a2, $a2, 2 -/* 27E08 8004CA08 0801328A */ j .L8004CA28 -/* 27E0C 8004CA0C 00021400 */ sll $v0, $v0, 0x10 -.L8004CA10: -/* 27E10 8004CA10 30C3007F */ andi $v1, $a2, 0x7f -/* 27E14 8004CA14 00031040 */ sll $v0, $v1, 1 -/* 27E18 8004CA18 00431021 */ addu $v0, $v0, $v1 -/* 27E1C 8004CA1C 000210C0 */ sll $v0, $v0, 3 -/* 27E20 8004CA20 00431021 */ addu $v0, $v0, $v1 -/* 27E24 8004CA24 00021480 */ sll $v0, $v0, 0x12 -.L8004CA28: -/* 27E28 8004CA28 AE020060 */ sw $v0, 0x60($s0) -/* 27E2C 8004CA2C 920200A2 */ lbu $v0, 0xa2($s0) -/* 27E30 8004CA30 10400009 */ beqz $v0, .L8004CA58 -/* 27E34 8004CA34 00000000 */ nop -/* 27E38 8004CA38 8E020000 */ lw $v0, ($s0) -/* 27E3C 8004CA3C 8E440060 */ lw $a0, 0x60($s2) -/* 27E40 8004CA40 90460000 */ lbu $a2, ($v0) -/* 27E44 8004CA44 920500A2 */ lbu $a1, 0xa2($s0) -/* 27E48 8004CA48 0C013521 */ jal func_8004D484 -/* 27E4C 8004CA4C 30C6007F */ andi $a2, $a2, 0x7f -/* 27E50 8004CA50 0801329A */ j .L8004CA68 -/* 27E54 8004CA54 A202009F */ sb $v0, 0x9f($s0) -.L8004CA58: -/* 27E58 8004CA58 8E020000 */ lw $v0, ($s0) -/* 27E5C 8004CA5C 90420000 */ lbu $v0, ($v0) -/* 27E60 8004CA60 3042007F */ andi $v0, $v0, 0x7f -/* 27E64 8004CA64 A202009F */ sb $v0, 0x9f($s0) -.L8004CA68: -/* 27E68 8004CA68 8E040000 */ lw $a0, ($s0) -/* 27E6C 8004CA6C 90850001 */ lbu $a1, 1($a0) -/* 27E70 8004CA70 2CA200C0 */ sltiu $v0, $a1, 0xc0 -/* 27E74 8004CA74 14400009 */ bnez $v0, .L8004CA9C -/* 27E78 8004CA78 24820002 */ addiu $v0, $a0, 2 -/* 27E7C 8004CA7C 90830002 */ lbu $v1, 2($a0) -/* 27E80 8004CA80 24820003 */ addiu $v0, $a0, 3 -/* 27E84 8004CA84 AE020000 */ sw $v0, ($s0) -/* 27E88 8004CA88 30A2003F */ andi $v0, $a1, 0x3f -/* 27E8C 8004CA8C 00021200 */ sll $v0, $v0, 8 -/* 27E90 8004CA90 00621821 */ addu $v1, $v1, $v0 -/* 27E94 8004CA94 080132A8 */ j .L8004CAA0 -/* 27E98 8004CA98 246500C0 */ addiu $a1, $v1, 0xc0 -.L8004CA9C: -/* 27E9C 8004CA9C AE020000 */ sw $v0, ($s0) -.L8004CAA0: -/* 27EA0 8004CAA0 A6050090 */ sh $a1, 0x90($s0) -/* 27EA4 8004CAA4 92230045 */ lbu $v1, 0x45($s1) -/* 27EA8 8004CAA8 924200BC */ lbu $v0, 0xbc($s2) -/* 27EAC 8004CAAC 0043102B */ sltu $v0, $v0, $v1 -/* 27EB0 8004CAB0 1440002E */ bnez $v0, .L8004CB6C -/* 27EB4 8004CAB4 0220202D */ daddu $a0, $s1, $zero -/* 27EB8 8004CAB8 0C014E22 */ jal func_80053888 -/* 27EBC 8004CABC 328500FF */ andi $a1, $s4, 0xff -/* 27EC0 8004CAC0 9202009A */ lbu $v0, 0x9a($s0) -/* 27EC4 8004CAC4 30420008 */ andi $v0, $v0, 8 -/* 27EC8 8004CAC8 14400004 */ bnez $v0, .L8004CADC -/* 27ECC 8004CACC 00000000 */ nop -/* 27ED0 8004CAD0 920200A8 */ lbu $v0, 0xa8($s0) -/* 27ED4 8004CAD4 54400003 */ bnel $v0, $zero, .L8004CAE4 -/* 27ED8 8004CAD8 A222000E */ sb $v0, 0xe($s1) -.L8004CADC: -/* 27EDC 8004CADC 9202009B */ lbu $v0, 0x9b($s0) -/* 27EE0 8004CAE0 A222000E */ sb $v0, 0xe($s1) -.L8004CAE4: -/* 27EE4 8004CAE4 0220202D */ daddu $a0, $s1, $zero -/* 27EE8 8004CAE8 0240282D */ daddu $a1, $s2, $zero -/* 27EEC 8004CAEC 9202009C */ lbu $v0, 0x9c($s0) -/* 27EF0 8004CAF0 0200302D */ daddu $a2, $s0, $zero -/* 27EF4 8004CAF4 0C013365 */ jal snd_set_voice_volume -/* 27EF8 8004CAF8 A222000F */ sb $v0, 0xf($s1) -/* 27EFC 8004CAFC 8E020018 */ lw $v0, 0x18($s0) -/* 27F00 8004CB00 54400003 */ bnel $v0, $zero, .L8004CB10 -/* 27F04 8004CB04 AE220014 */ sw $v0, 0x14($s1) -/* 27F08 8004CB08 8E020010 */ lw $v0, 0x10($s0) -/* 27F0C 8004CB0C AE220014 */ sw $v0, 0x14($s1) -.L8004CB10: -/* 27F10 8004CB10 8E020014 */ lw $v0, 0x14($s0) -/* 27F14 8004CB14 AE220018 */ sw $v0, 0x18($s1) -/* 27F18 8004CB18 8E02001C */ lw $v0, 0x1c($s0) -/* 27F1C 8004CB1C AE220000 */ sw $v0, ($s1) -/* 27F20 8004CB20 924200BE */ lbu $v0, 0xbe($s2) -/* 27F24 8004CB24 A2220010 */ sb $v0, 0x10($s1) -/* 27F28 8004CB28 924300BC */ lbu $v1, 0xbc($s2) -/* 27F2C 8004CB2C 24020002 */ addiu $v0, $zero, 2 -/* 27F30 8004CB30 A2220043 */ sb $v0, 0x43($s1) -/* 27F34 8004CB34 A2230045 */ sb $v1, 0x45($s1) -/* 27F38 8004CB38 924200BC */ lbu $v0, 0xbc($s2) -/* 27F3C 8004CB3C 24130001 */ addiu $s3, $zero, 1 -/* 27F40 8004CB40 A2220044 */ sb $v0, 0x44($s1) -/* 27F44 8004CB44 080132DB */ j .L8004CB6C -/* 27F48 8004CB48 A2130054 */ sb $s3, 0x54($s0) -.L8004CB4C: -/* 27F4C 8004CB4C 2462FF20 */ addiu $v0, $v1, -0xe0 -/* 27F50 8004CB50 00021080 */ sll $v0, $v0, 2 -/* 27F54 8004CB54 00551021 */ addu $v0, $v0, $s5 -/* 27F58 8004CB58 8C420000 */ lw $v0, ($v0) -/* 27F5C 8004CB5C 3C01800A */ lui $at, %hi(D_8009A5D4) -/* 27F60 8004CB60 AC22A5D4 */ sw $v0, %lo(D_8009A5D4)($at) -/* 27F64 8004CB64 0040F809 */ jalr $v0 -/* 27F68 8004CB68 0200282D */ daddu $a1, $s0, $zero -.L8004CB6C: -/* 27F6C 8004CB6C 9602008E */ lhu $v0, 0x8e($s0) -/* 27F70 8004CB70 1040FF74 */ beqz $v0, .L8004C944 -/* 27F74 8004CB74 00000000 */ nop -.L8004CB78: -/* 27F78 8004CB78 86020074 */ lh $v0, 0x74($s0) -/* 27F7C 8004CB7C 96030074 */ lhu $v1, 0x74($s0) -/* 27F80 8004CB80 1040000E */ beqz $v0, .L8004CBBC -/* 27F84 8004CB84 2462FFFF */ addiu $v0, $v1, -1 -/* 27F88 8004CB88 A6020074 */ sh $v0, 0x74($s0) -/* 27F8C 8004CB8C 00021400 */ sll $v0, $v0, 0x10 -/* 27F90 8004CB90 10400005 */ beqz $v0, .L8004CBA8 -/* 27F94 8004CB94 00000000 */ nop -/* 27F98 8004CB98 8E02006C */ lw $v0, 0x6c($s0) -/* 27F9C 8004CB9C 8E030070 */ lw $v1, 0x70($s0) -/* 27FA0 8004CBA0 080132EC */ j .L8004CBB0 -/* 27FA4 8004CBA4 00431021 */ addu $v0, $v0, $v1 -.L8004CBA8: -/* 27FA8 8004CBA8 86020076 */ lh $v0, 0x76($s0) -/* 27FAC 8004CBAC 00021400 */ sll $v0, $v0, 0x10 -.L8004CBB0: -/* 27FB0 8004CBB0 AE02006C */ sw $v0, 0x6c($s0) -/* 27FB4 8004CBB4 24020001 */ addiu $v0, $zero, 1 -/* 27FB8 8004CBB8 A2020055 */ sb $v0, 0x55($s0) -.L8004CBBC: -/* 27FBC 8004CBBC 16600031 */ bnez $s3, .L8004CC84 -/* 27FC0 8004CBC0 00000000 */ nop -/* 27FC4 8004CBC4 96020090 */ lhu $v0, 0x90($s0) -/* 27FC8 8004CBC8 1040000C */ beqz $v0, .L8004CBFC -/* 27FCC 8004CBCC 2442FFFF */ addiu $v0, $v0, -1 -/* 27FD0 8004CBD0 A6020090 */ sh $v0, 0x90($s0) -/* 27FD4 8004CBD4 3042FFFF */ andi $v0, $v0, 0xffff -/* 27FD8 8004CBD8 14400008 */ bnez $v0, .L8004CBFC -/* 27FDC 8004CBDC 00000000 */ nop -/* 27FE0 8004CBE0 92230045 */ lbu $v1, 0x45($s1) -/* 27FE4 8004CBE4 924200BC */ lbu $v0, 0xbc($s2) -/* 27FE8 8004CBE8 14620004 */ bne $v1, $v0, .L8004CBFC -/* 27FEC 8004CBEC 00000000 */ nop -/* 27FF0 8004CBF0 9222003D */ lbu $v0, 0x3d($s1) -/* 27FF4 8004CBF4 34420010 */ ori $v0, $v0, 0x10 -/* 27FF8 8004CBF8 A222003D */ sb $v0, 0x3d($s1) -.L8004CBFC: -/* 27FFC 8004CBFC 86020068 */ lh $v0, 0x68($s0) -/* 28000 8004CC00 96030068 */ lhu $v1, 0x68($s0) -/* 28004 8004CC04 1040000E */ beqz $v0, .L8004CC40 -/* 28008 8004CC08 2462FFFF */ addiu $v0, $v1, -1 -/* 2800C 8004CC0C A6020068 */ sh $v0, 0x68($s0) -/* 28010 8004CC10 00021400 */ sll $v0, $v0, 0x10 -/* 28014 8004CC14 10400005 */ beqz $v0, .L8004CC2C -/* 28018 8004CC18 00000000 */ nop -/* 2801C 8004CC1C 8E020060 */ lw $v0, 0x60($s0) -/* 28020 8004CC20 8E030064 */ lw $v1, 0x64($s0) -/* 28024 8004CC24 0801330D */ j .L8004CC34 -/* 28028 8004CC28 00431021 */ addu $v0, $v0, $v1 -.L8004CC2C: -/* 2802C 8004CC2C 8602006A */ lh $v0, 0x6a($s0) -/* 28030 8004CC30 00021400 */ sll $v0, $v0, 0x10 -.L8004CC34: -/* 28034 8004CC34 AE020060 */ sw $v0, 0x60($s0) -/* 28038 8004CC38 24020001 */ addiu $v0, $zero, 1 -/* 2803C 8004CC3C A2020054 */ sb $v0, 0x54($s0) -.L8004CC40: -/* 28040 8004CC40 96020056 */ lhu $v0, 0x56($s0) -/* 28044 8004CC44 1040000F */ beqz $v0, .L8004CC84 -/* 28048 8004CC48 00000000 */ nop -/* 2804C 8004CC4C 9202009A */ lbu $v0, 0x9a($s0) -/* 28050 8004CC50 30420008 */ andi $v0, $v0, 8 -/* 28054 8004CC54 14400004 */ bnez $v0, .L8004CC68 -/* 28058 8004CC58 00000000 */ nop -/* 2805C 8004CC5C 920200A8 */ lbu $v0, 0xa8($s0) -/* 28060 8004CC60 54400003 */ bnel $v0, $zero, .L8004CC70 -/* 28064 8004CC64 A222000E */ sb $v0, 0xe($s1) -.L8004CC68: -/* 28068 8004CC68 9202009B */ lbu $v0, 0x9b($s0) -/* 2806C 8004CC6C A222000E */ sb $v0, 0xe($s1) -.L8004CC70: -/* 28070 8004CC70 92220043 */ lbu $v0, 0x43($s1) -/* 28074 8004CC74 34420010 */ ori $v0, $v0, 0x10 -/* 28078 8004CC78 A2220043 */ sb $v0, 0x43($s1) -/* 2807C 8004CC7C 9202009C */ lbu $v0, 0x9c($s0) -/* 28080 8004CC80 A222000F */ sb $v0, 0xf($s1) -.L8004CC84: -/* 28084 8004CC84 92020055 */ lbu $v0, 0x55($s0) -/* 28088 8004CC88 1040000B */ beqz $v0, .L8004CCB8 -/* 2808C 8004CC8C 00000000 */ nop -/* 28090 8004CC90 92230045 */ lbu $v1, 0x45($s1) -/* 28094 8004CC94 924200BC */ lbu $v0, 0xbc($s2) -/* 28098 8004CC98 14620007 */ bne $v1, $v0, .L8004CCB8 -/* 2809C 8004CC9C 0220202D */ daddu $a0, $s1, $zero -/* 280A0 8004CCA0 0240282D */ daddu $a1, $s2, $zero -/* 280A4 8004CCA4 0C013365 */ jal snd_set_voice_volume -/* 280A8 8004CCA8 0200302D */ daddu $a2, $s0, $zero -/* 280AC 8004CCAC 9222003D */ lbu $v0, 0x3d($s1) -/* 280B0 8004CCB0 34420020 */ ori $v0, $v0, 0x20 -/* 280B4 8004CCB4 A222003D */ sb $v0, 0x3d($s1) -.L8004CCB8: -/* 280B8 8004CCB8 92020054 */ lbu $v0, 0x54($s0) -/* 280BC 8004CCBC 5040002C */ beql $v0, $zero, .L8004CD70 -/* 280C0 8004CCC0 AE000054 */ sw $zero, 0x54($s0) -/* 280C4 8004CCC4 9202009A */ lbu $v0, 0x9a($s0) -/* 280C8 8004CCC8 30420010 */ andi $v0, $v0, 0x10 -/* 280CC 8004CCCC 10400009 */ beqz $v0, .L8004CCF4 -/* 280D0 8004CCD0 00000000 */ nop -/* 280D4 8004CCD4 86020092 */ lh $v0, 0x92($s0) -/* 280D8 8004CCD8 86030060 */ lh $v1, 0x60($s0) -/* 280DC 8004CCDC 8E04001C */ lw $a0, 0x1c($s0) -/* 280E0 8004CCE0 00431021 */ addu $v0, $v0, $v1 -/* 280E4 8004CCE4 9483001E */ lhu $v1, 0x1e($a0) -/* 280E8 8004CCE8 82040094 */ lb $a0, 0x94($s0) -/* 280EC 8004CCEC 08013346 */ j .L8004CD18 -/* 280F0 8004CCF0 00431023 */ subu $v0, $v0, $v1 -.L8004CCF4: -/* 280F4 8004CCF4 86020092 */ lh $v0, 0x92($s0) -/* 280F8 8004CCF8 8E03001C */ lw $v1, 0x1c($s0) -/* 280FC 8004CCFC 86040060 */ lh $a0, 0x60($s0) -/* 28100 8004CD00 9463001E */ lhu $v1, 0x1e($v1) -/* 28104 8004CD04 00441021 */ addu $v0, $v0, $a0 -/* 28108 8004CD08 00431023 */ subu $v0, $v0, $v1 -/* 2810C 8004CD0C 82030094 */ lb $v1, 0x94($s0) -/* 28110 8004CD10 860400A4 */ lh $a0, 0xa4($s0) -/* 28114 8004CD14 00431021 */ addu $v0, $v0, $v1 -.L8004CD18: -/* 28118 8004CD18 0C014E3E */ jal snd_tune_param_to_timescale -/* 2811C 8004CD1C 00442021 */ addu $a0, $v0, $a0 -/* 28120 8004CD20 8E02001C */ lw $v0, 0x1c($s0) -/* 28124 8004CD24 C4420020 */ lwc1 $f2, 0x20($v0) -/* 28128 8004CD28 46020082 */ mul.s $f2, $f0, $f2 -/* 2812C 8004CD2C 00000000 */ nop -/* 28130 8004CD30 E6020058 */ swc1 $f2, 0x58($s0) -/* 28134 8004CD34 92230045 */ lbu $v1, 0x45($s1) -/* 28138 8004CD38 924200BC */ lbu $v0, 0xbc($s2) -/* 2813C 8004CD3C 5462000C */ bnel $v1, $v0, .L8004CD70 -/* 28140 8004CD40 AE000054 */ sw $zero, 0x54($s0) -/* 28144 8004CD44 C6200004 */ lwc1 $f0, 4($s1) -/* 28148 8004CD48 46020032 */ c.eq.s $f0, $f2 -/* 2814C 8004CD4C 00000000 */ nop -/* 28150 8004CD50 45030007 */ bc1tl .L8004CD70 -/* 28154 8004CD54 AE000054 */ sw $zero, 0x54($s0) -/* 28158 8004CD58 92220043 */ lbu $v0, 0x43($s1) -/* 2815C 8004CD5C 34420008 */ ori $v0, $v0, 8 -/* 28160 8004CD60 A2220043 */ sb $v0, 0x43($s1) -/* 28164 8004CD64 C6000058 */ lwc1 $f0, 0x58($s0) -/* 28168 8004CD68 E6200004 */ swc1 $f0, 4($s1) -/* 2816C 8004CD6C AE000054 */ sw $zero, 0x54($s0) -.L8004CD70: -/* 28170 8004CD70 8FBF0028 */ lw $ra, 0x28($sp) -/* 28174 8004CD74 8FB50024 */ lw $s5, 0x24($sp) -/* 28178 8004CD78 8FB40020 */ lw $s4, 0x20($sp) -/* 2817C 8004CD7C 8FB3001C */ lw $s3, 0x1c($sp) -/* 28180 8004CD80 8FB20018 */ lw $s2, 0x18($sp) -/* 28184 8004CD84 8FB10014 */ lw $s1, 0x14($sp) -/* 28188 8004CD88 8FB00010 */ lw $s0, 0x10($sp) -/* 2818C 8004CD8C 03E00008 */ jr $ra -/* 28190 8004CD90 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004CDF8.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004CDF8.s deleted file mode 100644 index 1e35d93055..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004CDF8.s +++ /dev/null @@ -1,38 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004CDF8 -/* 281F8 8004CDF8 30A500FF */ andi $a1, $a1, 0xff -/* 281FC 8004CDFC 00041943 */ sra $v1, $a0, 5 -/* 28200 8004CE00 000410C3 */ sra $v0, $a0, 3 -/* 28204 8004CE04 00621821 */ addu $v1, $v1, $v0 -/* 28208 8004CE08 30630001 */ andi $v1, $v1, 1 -/* 2820C 8004CE0C 00041203 */ sra $v0, $a0, 8 -/* 28210 8004CE10 3042001F */ andi $v0, $v0, 0x1f -/* 28214 8004CE14 000420C0 */ sll $a0, $a0, 3 -/* 28218 8004CE18 308400E0 */ andi $a0, $a0, 0xe0 -/* 2821C 8004CE1C 10600007 */ beqz $v1, .L8004CE3C -/* 28220 8004CE20 00442021 */ addu $a0, $v0, $a0 -/* 28224 8004CE24 30C200FF */ andi $v0, $a2, 0xff -/* 28228 8004CE28 00440018 */ mult $v0, $a0 -/* 2822C 8004CE2C 00003812 */ mflo $a3 -/* 28230 8004CE30 00071203 */ sra $v0, $a3, 8 -/* 28234 8004CE34 08013394 */ j .L8004CE50 -/* 28238 8004CE38 00A22821 */ addu $a1, $a1, $v0 -.L8004CE3C: -/* 2823C 8004CE3C 30C200FF */ andi $v0, $a2, 0xff -/* 28240 8004CE40 00440018 */ mult $v0, $a0 -/* 28244 8004CE44 00003812 */ mflo $a3 -/* 28248 8004CE48 00071203 */ sra $v0, $a3, 8 -/* 2824C 8004CE4C 00A22823 */ subu $a1, $a1, $v0 -.L8004CE50: -/* 28250 8004CE50 04A10003 */ bgez $a1, .L8004CE60 -/* 28254 8004CE54 28A20080 */ slti $v0, $a1, 0x80 -/* 28258 8004CE58 0801339A */ j .L8004CE68 -/* 2825C 8004CE5C 0000282D */ daddu $a1, $zero, $zero -.L8004CE60: -/* 28260 8004CE60 50400001 */ beql $v0, $zero, .L8004CE68 -/* 28264 8004CE64 2405007F */ addiu $a1, $zero, 0x7f -.L8004CE68: -/* 28268 8004CE68 03E00008 */ jr $ra -/* 2826C 8004CE6C 30A200FF */ andi $v0, $a1, 0xff diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D428.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D428.s deleted file mode 100644 index dbb8a83686..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D428.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004D428 -/* 28828 8004D428 000419C3 */ sra $v1, $a0, 7 -/* 2882C 8004D42C 3063000F */ andi $v1, $v1, 0xf -/* 28830 8004D430 000410C0 */ sll $v0, $a0, 3 -/* 28834 8004D434 304200F0 */ andi $v0, $v0, 0xf0 -/* 28838 8004D438 00621821 */ addu $v1, $v1, $v0 -/* 2883C 8004D43C 00041143 */ sra $v0, $a0, 5 -/* 28840 8004D440 00042083 */ sra $a0, $a0, 2 -/* 28844 8004D444 00441021 */ addu $v0, $v0, $a0 -/* 28848 8004D448 30420001 */ andi $v0, $v0, 1 -/* 2884C 8004D44C 14400007 */ bnez $v0, .L8004D46C -/* 28850 8004D450 00031080 */ sll $v0, $v1, 2 -/* 28854 8004D454 00431021 */ addu $v0, $v0, $v1 -/* 28858 8004D458 00A20018 */ mult $a1, $v0 -/* 2885C 8004D45C 00003812 */ mflo $a3 -/* 28860 8004D460 00071203 */ sra $v0, $a3, 8 -/* 28864 8004D464 03E00008 */ jr $ra -/* 28868 8004D468 00C21023 */ subu $v0, $a2, $v0 -.L8004D46C: -/* 2886C 8004D46C 00431021 */ addu $v0, $v0, $v1 -/* 28870 8004D470 00A20018 */ mult $a1, $v0 -/* 28874 8004D474 00003812 */ mflo $a3 -/* 28878 8004D478 00071203 */ sra $v0, $a3, 8 -/* 2887C 8004D47C 03E00008 */ jr $ra -/* 28880 8004D480 00C21021 */ addu $v0, $a2, $v0 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D484.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D484.s deleted file mode 100644 index 584640d1d7..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D484.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004D484 -/* 28884 8004D484 308200CC */ andi $v0, $a0, 0xcc -/* 28888 8004D488 00021083 */ sra $v0, $v0, 2 -/* 2888C 8004D48C 30840013 */ andi $a0, $a0, 0x13 -/* 28890 8004D490 00042080 */ sll $a0, $a0, 2 -/* 28894 8004D494 00441021 */ addu $v0, $v0, $a0 -/* 28898 8004D498 00A20018 */ mult $a1, $v0 -/* 2889C 8004D49C 00001812 */ mflo $v1 -/* 288A0 8004D4A0 34028000 */ ori $v0, $zero, 0x8000 -/* 288A4 8004D4A4 00431023 */ subu $v0, $v0, $v1 -/* 288A8 8004D4A8 00C20018 */ mult $a2, $v0 -/* 288AC 8004D4AC 00001812 */ mflo $v1 -/* 288B0 8004D4B0 000313C3 */ sra $v0, $v1, 0xf -/* 288B4 8004D4B4 03E00008 */ jr $ra -/* 288B8 8004D4B8 304200FF */ andi $v0, $v0, 0xff diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D4BC.s b/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D4BC.s deleted file mode 100644 index f7ced1a8ee..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004D4BC.s +++ /dev/null @@ -1,26 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004D4BC -/* 288BC 8004D4BC 0000282D */ daddu $a1, $zero, $zero -/* 288C0 8004D4C0 3C088008 */ lui $t0, %hi(D_80078464) -/* 288C4 8004D4C4 25088464 */ addiu $t0, $t0, %lo(D_80078464) -/* 288C8 8004D4C8 24070001 */ addiu $a3, $zero, 1 -/* 288CC 8004D4CC 24060001 */ addiu $a2, $zero, 1 -/* 288D0 8004D4D0 2403016C */ addiu $v1, $zero, 0x16c -.L8004D4D4: -/* 288D4 8004D4D4 00831021 */ addu $v0, $a0, $v1 -/* 288D8 8004D4D8 24A50001 */ addiu $a1, $a1, 1 -/* 288DC 8004D4DC AC480000 */ sw $t0, ($v0) -/* 288E0 8004D4E0 AC400080 */ sw $zero, 0x80($v0) -/* 288E4 8004D4E4 A047009A */ sb $a3, 0x9a($v0) -/* 288E8 8004D4E8 A04000A9 */ sb $zero, 0xa9($v0) -/* 288EC 8004D4EC A446008E */ sh $a2, 0x8e($v0) -/* 288F0 8004D4F0 A0400098 */ sb $zero, 0x98($v0) -/* 288F4 8004D4F4 A0400099 */ sb $zero, 0x99($v0) -/* 288F8 8004D4F8 28A20008 */ slti $v0, $a1, 8 -/* 288FC 8004D4FC 1440FFF5 */ bnez $v0, .L8004D4D4 -/* 28900 8004D500 246300AC */ addiu $v1, $v1, 0xac -/* 28904 8004D504 03E00008 */ jr $ra -/* 28908 8004D508 00000000 */ nop -/* 2890C 8004D50C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_00_SetVolume.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_00_SetVolume.s deleted file mode 100644 index c333c618e8..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_00_SetVolume.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_00_SetVolume -/* 28270 8004CE70 8CA20000 */ lw $v0, ($a1) -/* 28274 8004CE74 90430000 */ lbu $v1, ($v0) -/* 28278 8004CE78 24420001 */ addiu $v0, $v0, 1 -/* 2827C 8004CE7C ACA20000 */ sw $v0, ($a1) -/* 28280 8004CE80 A4A3005C */ sh $v1, 0x5c($a1) -/* 28284 8004CE84 84A2005C */ lh $v0, 0x5c($a1) -/* 28288 8004CE88 10400003 */ beqz $v0, .L8004CE98 -/* 2828C 8004CE8C 00031200 */ sll $v0, $v1, 8 -/* 28290 8004CE90 344200FF */ ori $v0, $v0, 0xff -/* 28294 8004CE94 A4A2005C */ sh $v0, 0x5c($a1) -.L8004CE98: -/* 28298 8004CE98 24020001 */ addiu $v0, $zero, 1 -/* 2829C 8004CE9C 03E00008 */ jr $ra -/* 282A0 8004CEA0 A0A20055 */ sb $v0, 0x55($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_02_SetInstrument.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_02_SetInstrument.s deleted file mode 100644 index 7fdd2cbe1a..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_02_SetInstrument.s +++ /dev/null @@ -1,22 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_02_SetInstrument -/* 282C4 8004CEC4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 282C8 8004CEC8 AFB00010 */ sw $s0, 0x10($sp) -/* 282CC 8004CECC 00A0802D */ daddu $s0, $a1, $zero -/* 282D0 8004CED0 AFBF0014 */ sw $ra, 0x14($sp) -/* 282D4 8004CED4 8E020000 */ lw $v0, ($s0) -/* 282D8 8004CED8 90450000 */ lbu $a1, ($v0) -/* 282DC 8004CEDC 90460001 */ lbu $a2, 1($v0) -/* 282E0 8004CEE0 24420002 */ addiu $v0, $v0, 2 -/* 282E4 8004CEE4 AE020000 */ sw $v0, ($s0) -/* 282E8 8004CEE8 A206009D */ sb $a2, 0x9d($s0) -/* 282EC 8004CEEC 8C840000 */ lw $a0, ($a0) -/* 282F0 8004CEF0 0C014EFA */ jal func_80053BE8 -/* 282F4 8004CEF4 26070010 */ addiu $a3, $s0, 0x10 -/* 282F8 8004CEF8 AE02001C */ sw $v0, 0x1c($s0) -/* 282FC 8004CEFC 8FBF0014 */ lw $ra, 0x14($sp) -/* 28300 8004CF00 8FB00010 */ lw $s0, 0x10($sp) -/* 28304 8004CF04 03E00008 */ jr $ra -/* 28308 8004CF08 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_03_SetReverb.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_03_SetReverb.s deleted file mode 100644 index dc102f4b28..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_03_SetReverb.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_03_SetReverb -/* 2830C 8004CF0C 8CA20000 */ lw $v0, ($a1) -/* 28310 8004CF10 90A3009A */ lbu $v1, 0x9a($a1) -/* 28314 8004CF14 90460000 */ lbu $a2, ($v0) -/* 28318 8004CF18 24420001 */ addiu $v0, $v0, 1 -/* 2831C 8004CF1C 30630020 */ andi $v1, $v1, 0x20 -/* 28320 8004CF20 10600002 */ beqz $v1, .L8004CF2C -/* 28324 8004CF24 ACA20000 */ sw $v0, ($a1) -/* 28328 8004CF28 9086008D */ lbu $a2, 0x8d($a0) -.L8004CF2C: -/* 2832C 8004CF2C 24020001 */ addiu $v0, $zero, 1 -/* 28330 8004CF30 A0A6009C */ sb $a2, 0x9c($a1) -/* 28334 8004CF34 03E00008 */ jr $ra -/* 28338 8004CF38 A0A20057 */ sb $v0, 0x57($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_04.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_04.s deleted file mode 100644 index 877699b721..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_04.s +++ /dev/null @@ -1,57 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_04 -/* 2833C 8004CF3C 8CA20000 */ lw $v0, ($a1) -/* 28340 8004CF40 8CA4001C */ lw $a0, 0x1c($a1) -/* 28344 8004CF44 90430000 */ lbu $v1, ($v0) -/* 28348 8004CF48 24420001 */ addiu $v0, $v0, 1 -/* 2834C 8004CF4C ACA20000 */ sw $v0, ($a1) -/* 28350 8004CF50 3063007F */ andi $v1, $v1, 0x7f -/* 28354 8004CF54 A0A3009E */ sb $v1, 0x9e($a1) -/* 28358 8004CF58 8C820000 */ lw $v0, ($a0) -/* 2835C 8004CF5C ACA20020 */ sw $v0, 0x20($a1) -/* 28360 8004CF60 8C820004 */ lw $v0, 4($a0) -/* 28364 8004CF64 ACA20024 */ sw $v0, 0x24($a1) -/* 28368 8004CF68 8C820008 */ lw $v0, 8($a0) -/* 2836C 8004CF6C ACA20028 */ sw $v0, 0x28($a1) -/* 28370 8004CF70 8C82000C */ lw $v0, 0xc($a0) -/* 28374 8004CF74 ACA2002C */ sw $v0, 0x2c($a1) -/* 28378 8004CF78 8C820010 */ lw $v0, 0x10($a0) -/* 2837C 8004CF7C ACA20030 */ sw $v0, 0x30($a1) -/* 28380 8004CF80 8C820014 */ lw $v0, 0x14($a0) -/* 28384 8004CF84 ACA20034 */ sw $v0, 0x34($a1) -/* 28388 8004CF88 8C820018 */ lw $v0, 0x18($a0) -/* 2838C 8004CF8C ACA20038 */ sw $v0, 0x38($a1) -/* 28390 8004CF90 9482001C */ lhu $v0, 0x1c($a0) -/* 28394 8004CF94 A4A2003C */ sh $v0, 0x3c($a1) -/* 28398 8004CF98 9482001E */ lhu $v0, 0x1e($a0) -/* 2839C 8004CF9C A4A2003E */ sh $v0, 0x3e($a1) -/* 283A0 8004CFA0 C4800020 */ lwc1 $f0, 0x20($a0) -/* 283A4 8004CFA4 E4A00040 */ swc1 $f0, 0x40($a1) -/* 283A8 8004CFA8 90820024 */ lbu $v0, 0x24($a0) -/* 283AC 8004CFAC A0A20044 */ sb $v0, 0x44($a1) -/* 283B0 8004CFB0 90A2009E */ lbu $v0, 0x9e($a1) -/* 283B4 8004CFB4 90830025 */ lbu $v1, 0x25($a0) -/* 283B8 8004CFB8 00021080 */ sll $v0, $v0, 2 -/* 283BC 8004CFBC A0A30045 */ sb $v1, 0x45($a1) -/* 283C0 8004CFC0 3C018008 */ lui $at, %hi(D_800783C0) -/* 283C4 8004CFC4 00220821 */ addu $at, $at, $v0 -/* 283C8 8004CFC8 8C2283C0 */ lw $v0, %lo(D_800783C0)($at) -/* 283CC 8004CFCC ACA2004C */ sw $v0, 0x4c($a1) -/* 283D0 8004CFD0 0040182D */ daddu $v1, $v0, $zero -/* 283D4 8004CFD4 24A20020 */ addiu $v0, $a1, 0x20 -/* 283D8 8004CFD8 1060000A */ beqz $v1, .L8004D004 -/* 283DC 8004CFDC ACA2001C */ sw $v0, 0x1c($a1) -/* 283E0 8004CFE0 90620000 */ lbu $v0, ($v1) -/* 283E4 8004CFE4 10400007 */ beqz $v0, .L8004D004 -/* 283E8 8004CFE8 00000000 */ nop -/* 283EC 8004CFEC 94620004 */ lhu $v0, 4($v1) -/* 283F0 8004CFF0 00431021 */ addu $v0, $v0, $v1 -/* 283F4 8004CFF4 ACA20010 */ sw $v0, 0x10($a1) -/* 283F8 8004CFF8 94620006 */ lhu $v0, 6($v1) -/* 283FC 8004CFFC 00431021 */ addu $v0, $v0, $v1 -/* 28400 8004D000 ACA20014 */ sw $v0, 0x14($a1) -.L8004D004: -/* 28404 8004D004 03E00008 */ jr $ra -/* 28408 8004D008 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_07.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_07.s deleted file mode 100644 index 64b9f7e082..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_07.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_07 -/* 28450 8004D050 8C820004 */ lw $v0, 4($a0) -/* 28454 8004D054 90430045 */ lbu $v1, 0x45($v0) -/* 28458 8004D058 908200BC */ lbu $v0, 0xbc($a0) -/* 2845C 8004D05C 14620005 */ bne $v1, $v0, .L8004D074 -/* 28460 8004D060 24030002 */ addiu $v1, $zero, 2 -/* 28464 8004D064 8CA20000 */ lw $v0, ($a1) -/* 28468 8004D068 A4A3008E */ sh $v1, 0x8e($a1) -/* 2846C 8004D06C 2442FFFF */ addiu $v0, $v0, -1 -/* 28470 8004D070 ACA20000 */ sw $v0, ($a1) -.L8004D074: -/* 28474 8004D074 03E00008 */ jr $ra -/* 28478 8004D078 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_08.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_08.s deleted file mode 100644 index 828daa6d87..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_08.s +++ /dev/null @@ -1,45 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_08 -/* 2847C 8004D07C 00A0382D */ daddu $a3, $a1, $zero -/* 28480 8004D080 8CE20000 */ lw $v0, ($a3) -/* 28484 8004D084 90430000 */ lbu $v1, ($v0) -/* 28488 8004D088 90450001 */ lbu $a1, 1($v0) -/* 2848C 8004D08C 90440002 */ lbu $a0, 2($v0) -/* 28490 8004D090 24420003 */ addiu $v0, $v0, 3 -/* 28494 8004D094 ACE20000 */ sw $v0, ($a3) -/* 28498 8004D098 00031A00 */ sll $v1, $v1, 8 -/* 2849C 8004D09C 00A32821 */ addu $a1, $a1, $v1 -/* 284A0 8004D0A0 00A0302D */ daddu $a2, $a1, $zero -/* 284A4 8004D0A4 3084007F */ andi $a0, $a0, 0x7f -/* 284A8 8004D0A8 00041040 */ sll $v0, $a0, 1 -/* 284AC 8004D0AC 00441021 */ addu $v0, $v0, $a0 -/* 284B0 8004D0B0 000210C0 */ sll $v0, $v0, 3 -/* 284B4 8004D0B4 00441821 */ addu $v1, $v0, $a0 -/* 284B8 8004D0B8 00052C00 */ sll $a1, $a1, 0x10 -/* 284BC 8004D0BC 1CA00002 */ bgtz $a1, .L8004D0C8 -/* 284C0 8004D0C0 00032080 */ sll $a0, $v1, 2 -/* 284C4 8004D0C4 24060001 */ addiu $a2, $zero, 1 -.L8004D0C8: -/* 284C8 8004D0C8 8CE20060 */ lw $v0, 0x60($a3) -/* 284CC 8004D0CC 00031C80 */ sll $v1, $v1, 0x12 -/* 284D0 8004D0D0 00621823 */ subu $v1, $v1, $v0 -/* 284D4 8004D0D4 00061400 */ sll $v0, $a2, 0x10 -/* 284D8 8004D0D8 00021403 */ sra $v0, $v0, 0x10 -/* 284DC 8004D0DC 14400002 */ bnez $v0, .L8004D0E8 -/* 284E0 8004D0E0 0062001A */ div $zero, $v1, $v0 -/* 284E4 8004D0E4 0007000D */ break 7 -.L8004D0E8: -/* 284E8 8004D0E8 2401FFFF */ addiu $at, $zero, -1 -/* 284EC 8004D0EC 14410004 */ bne $v0, $at, .L8004D100 -/* 284F0 8004D0F0 3C018000 */ lui $at, 0x8000 -/* 284F4 8004D0F4 14610002 */ bne $v1, $at, .L8004D100 -/* 284F8 8004D0F8 00000000 */ nop -/* 284FC 8004D0FC 0006000D */ break 6 -.L8004D100: -/* 28500 8004D100 00001812 */ mflo $v1 -/* 28504 8004D104 A4E60068 */ sh $a2, 0x68($a3) -/* 28508 8004D108 A4E4006A */ sh $a0, 0x6a($a3) -/* 2850C 8004D10C 03E00008 */ jr $ra -/* 28510 8004D110 ACE30064 */ sw $v1, 0x64($a3) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0A_EndLoop.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0A_EndLoop.s deleted file mode 100644 index bcf48c54d0..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0A_EndLoop.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_0A_EndLoop -/* 28530 8004D130 90A2008C */ lbu $v0, 0x8c($a1) -/* 28534 8004D134 10400005 */ beqz $v0, .L8004D14C -/* 28538 8004D138 2442FFFF */ addiu $v0, $v0, -1 -/* 2853C 8004D13C A0A2008C */ sb $v0, 0x8c($a1) -/* 28540 8004D140 304200FF */ andi $v0, $v0, 0xff -/* 28544 8004D144 10400003 */ beqz $v0, .L8004D154 -/* 28548 8004D148 00000000 */ nop -.L8004D14C: -/* 2854C 8004D14C 8CA20088 */ lw $v0, 0x88($a1) -/* 28550 8004D150 ACA20000 */ sw $v0, ($a1) -.L8004D154: -/* 28554 8004D154 03E00008 */ jr $ra -/* 28558 8004D158 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0C.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0C.s deleted file mode 100644 index 59e9a6babe..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0C.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_0C -/* 28580 8004D180 8CA20000 */ lw $v0, ($a1) -/* 28584 8004D184 90440000 */ lbu $a0, ($v0) -/* 28588 8004D188 24420001 */ addiu $v0, $v0, 1 -/* 2858C 8004D18C 10800005 */ beqz $a0, .L8004D1A4 -/* 28590 8004D190 ACA20000 */ sw $v0, ($a1) -/* 28594 8004D194 3C0300FF */ lui $v1, 0xff -/* 28598 8004D198 3463FFFF */ ori $v1, $v1, 0xffff -/* 2859C 8004D19C 00041600 */ sll $v0, $a0, 0x18 -/* 285A0 8004D1A0 00432025 */ or $a0, $v0, $v1 -.L8004D1A4: -/* 285A4 8004D1A4 24020001 */ addiu $v0, $zero, 1 -/* 285A8 8004D1A8 ACA4006C */ sw $a0, 0x6c($a1) -/* 285AC 8004D1AC 03E00008 */ jr $ra -/* 285B0 8004D1B0 A0A20055 */ sb $v0, 0x55($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0D.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0D.s deleted file mode 100644 index 9888116944..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0D.s +++ /dev/null @@ -1,42 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_0D -/* 285B4 8004D1B4 8CA20000 */ lw $v0, ($a1) -/* 285B8 8004D1B8 90470002 */ lbu $a3, 2($v0) -/* 285BC 8004D1BC 90430000 */ lbu $v1, ($v0) -/* 285C0 8004D1C0 90440001 */ lbu $a0, 1($v0) -/* 285C4 8004D1C4 24420003 */ addiu $v0, $v0, 3 -/* 285C8 8004D1C8 ACA20000 */ sw $v0, ($a1) -/* 285CC 8004D1CC 00031A00 */ sll $v1, $v1, 8 -/* 285D0 8004D1D0 00832021 */ addu $a0, $a0, $v1 -/* 285D4 8004D1D4 10E00003 */ beqz $a3, .L8004D1E4 -/* 285D8 8004D1D8 0080302D */ daddu $a2, $a0, $zero -/* 285DC 8004D1DC 00071200 */ sll $v0, $a3, 8 -/* 285E0 8004D1E0 344700FF */ ori $a3, $v0, 0xff -.L8004D1E4: -/* 285E4 8004D1E4 00041400 */ sll $v0, $a0, 0x10 -/* 285E8 8004D1E8 58400001 */ blezl $v0, .L8004D1F0 -/* 285EC 8004D1EC 24060001 */ addiu $a2, $zero, 1 -.L8004D1F0: -/* 285F0 8004D1F0 8CA2006C */ lw $v0, 0x6c($a1) -/* 285F4 8004D1F4 00071C00 */ sll $v1, $a3, 0x10 -/* 285F8 8004D1F8 00621823 */ subu $v1, $v1, $v0 -/* 285FC 8004D1FC 00061400 */ sll $v0, $a2, 0x10 -/* 28600 8004D200 00021403 */ sra $v0, $v0, 0x10 -/* 28604 8004D204 14400002 */ bnez $v0, .L8004D210 -/* 28608 8004D208 0062001A */ div $zero, $v1, $v0 -/* 2860C 8004D20C 0007000D */ break 7 -.L8004D210: -/* 28610 8004D210 2401FFFF */ addiu $at, $zero, -1 -/* 28614 8004D214 14410004 */ bne $v0, $at, .L8004D228 -/* 28618 8004D218 3C018000 */ lui $at, 0x8000 -/* 2861C 8004D21C 14610002 */ bne $v1, $at, .L8004D228 -/* 28620 8004D220 00000000 */ nop -/* 28624 8004D224 0006000D */ break 6 -.L8004D228: -/* 28628 8004D228 00001812 */ mflo $v1 -/* 2862C 8004D22C A4A60074 */ sh $a2, 0x74($a1) -/* 28630 8004D230 A4A70076 */ sh $a3, 0x76($a1) -/* 28634 8004D234 03E00008 */ jr $ra -/* 28638 8004D238 ACA30070 */ sw $v1, 0x70($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0E.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0E.s deleted file mode 100644 index aff2723679..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0E.s +++ /dev/null @@ -1,36 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_0E -/* 2863C 8004D23C 00A0382D */ daddu $a3, $a1, $zero -/* 28640 8004D240 8CE20000 */ lw $v0, ($a3) -/* 28644 8004D244 8C860008 */ lw $a2, 8($a0) -/* 28648 8004D248 90430001 */ lbu $v1, 1($v0) -/* 2864C 8004D24C 90450002 */ lbu $a1, 2($v0) -/* 28650 8004D250 90440000 */ lbu $a0, ($v0) -/* 28654 8004D254 24420003 */ addiu $v0, $v0, 3 -/* 28658 8004D258 ACE20000 */ sw $v0, ($a3) -/* 2865C 8004D25C 24020002 */ addiu $v0, $zero, 2 -/* 28660 8004D260 00031A00 */ sll $v1, $v1, 8 -/* 28664 8004D264 00651821 */ addu $v1, $v1, $a1 -/* 28668 8004D268 A0E40084 */ sb $a0, 0x84($a3) -/* 2866C 8004D26C 308400FF */ andi $a0, $a0, 0xff -/* 28670 8004D270 1082000B */ beq $a0, $v0, .L8004D2A0 -/* 28674 8004D274 00661821 */ addu $v1, $v1, $a2 -/* 28678 8004D278 28820003 */ slti $v0, $a0, 3 -/* 2867C 8004D27C 10400005 */ beqz $v0, .L8004D294 -/* 28680 8004D280 24020001 */ addiu $v0, $zero, 1 -/* 28684 8004D284 10820006 */ beq $a0, $v0, .L8004D2A0 -/* 28688 8004D288 00000000 */ nop -/* 2868C 8004D28C 03E00008 */ jr $ra -/* 28690 8004D290 ACE00080 */ sw $zero, 0x80($a3) -.L8004D294: -/* 28694 8004D294 24020003 */ addiu $v0, $zero, 3 -/* 28698 8004D298 54820003 */ bnel $a0, $v0, .L8004D2A8 -/* 2869C 8004D29C ACE00080 */ sw $zero, 0x80($a3) -.L8004D2A0: -/* 286A0 8004D2A0 03E00008 */ jr $ra -/* 286A4 8004D2A4 ACE30080 */ sw $v1, 0x80($a3) -.L8004D2A8: -/* 286A8 8004D2A8 03E00008 */ jr $ra -/* 286AC 8004D2AC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0F.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0F.s deleted file mode 100644 index 8ab3aa1bb2..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_0F.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_0F -/* 286B0 8004D2B0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 286B4 8004D2B4 AFBF0010 */ sw $ra, 0x10($sp) -/* 286B8 8004D2B8 8C860004 */ lw $a2, 4($a0) -/* 286BC 8004D2BC 908200BC */ lbu $v0, 0xbc($a0) -/* 286C0 8004D2C0 90C30045 */ lbu $v1, 0x45($a2) -/* 286C4 8004D2C4 14620004 */ bne $v1, $v0, .L8004D2D8 -/* 286C8 8004D2C8 00000000 */ nop -/* 286CC 8004D2CC 908500BF */ lbu $a1, 0xbf($a0) -/* 286D0 8004D2D0 0C014E31 */ jal func_800538C4 -/* 286D4 8004D2D4 00C0202D */ daddu $a0, $a2, $zero -.L8004D2D8: -/* 286D8 8004D2D8 8FBF0010 */ lw $ra, 0x10($sp) -/* 286DC 8004D2DC 03E00008 */ jr $ra -/* 286E0 8004D2E0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_10_Jump.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_10_Jump.s deleted file mode 100644 index da76ef1080..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_10_Jump.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_10_Jump -/* 286E4 8004D2E4 8CA30000 */ lw $v1, ($a1) -/* 286E8 8004D2E8 24620002 */ addiu $v0, $v1, 2 -/* 286EC 8004D2EC ACA20050 */ sw $v0, 0x50($a1) -/* 286F0 8004D2F0 90620000 */ lbu $v0, ($v1) -/* 286F4 8004D2F4 90630001 */ lbu $v1, 1($v1) -/* 286F8 8004D2F8 8C840008 */ lw $a0, 8($a0) -/* 286FC 8004D2FC 00021200 */ sll $v0, $v0, 8 -/* 28700 8004D300 00431021 */ addu $v0, $v0, $v1 -/* 28704 8004D304 00441021 */ addu $v0, $v0, $a0 -/* 28708 8004D308 03E00008 */ jr $ra -/* 2870C 8004D30C ACA20000 */ sw $v0, ($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_16.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_16.s deleted file mode 100644 index 88ac52d0b2..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_16.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_16 -/* 2876C 8004D36C 8CA60000 */ lw $a2, ($a1) -/* 28770 8004D370 90C20000 */ lbu $v0, ($a2) -/* 28774 8004D374 90C30001 */ lbu $v1, 1($a2) -/* 28778 8004D378 00021200 */ sll $v0, $v0, 8 -/* 2877C 8004D37C 00431821 */ addu $v1, $v0, $v1 -/* 28780 8004D380 50600004 */ beql $v1, $zero, .L8004D394 -/* 28784 8004D384 ACA00018 */ sw $zero, 0x18($a1) -/* 28788 8004D388 8C820008 */ lw $v0, 8($a0) -/* 2878C 8004D38C 00621021 */ addu $v0, $v1, $v0 -/* 28790 8004D390 ACA20018 */ sw $v0, 0x18($a1) -.L8004D394: -/* 28794 8004D394 24C20002 */ addiu $v0, $a2, 2 -/* 28798 8004D398 03E00008 */ jr $ra -/* 2879C 8004D39C ACA20000 */ sw $v0, ($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_17.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_17.s deleted file mode 100644 index 760345f2e3..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_17.s +++ /dev/null @@ -1,29 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_17 -/* 287A0 8004D3A0 8CA60000 */ lw $a2, ($a1) -/* 287A4 8004D3A4 0000182D */ daddu $v1, $zero, $zero -.L8004D3A8: -/* 287A8 8004D3A8 948200A0 */ lhu $v0, 0xa0($a0) -/* 287AC 8004D3AC 1440000C */ bnez $v0, .L8004D3E0 -/* 287B0 8004D3B0 24630001 */ addiu $v1, $v1, 1 -/* 287B4 8004D3B4 90C20000 */ lbu $v0, ($a2) -/* 287B8 8004D3B8 90C30001 */ lbu $v1, 1($a2) -/* 287BC 8004D3BC 00021200 */ sll $v0, $v0, 8 -/* 287C0 8004D3C0 00621821 */ addu $v1, $v1, $v0 -/* 287C4 8004D3C4 A48300A0 */ sh $v1, 0xa0($a0) -/* 287C8 8004D3C8 90C20002 */ lbu $v0, 2($a2) -/* 287CC 8004D3CC 90C30003 */ lbu $v1, 3($a2) -/* 287D0 8004D3D0 00021200 */ sll $v0, $v0, 8 -/* 287D4 8004D3D4 00621821 */ addu $v1, $v1, $v0 -/* 287D8 8004D3D8 080134FB */ j .L8004D3EC -/* 287DC 8004D3DC A48300A2 */ sh $v1, 0xa2($a0) -.L8004D3E0: -/* 287E0 8004D3E0 2C620004 */ sltiu $v0, $v1, 4 -/* 287E4 8004D3E4 1440FFF0 */ bnez $v0, .L8004D3A8 -/* 287E8 8004D3E8 24840006 */ addiu $a0, $a0, 6 -.L8004D3EC: -/* 287EC 8004D3EC 24C20004 */ addiu $v0, $a2, 4 -/* 287F0 8004D3F0 03E00008 */ jr $ra -/* 287F4 8004D3F4 ACA20000 */ sw $v0, ($a1) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_18.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_18.s deleted file mode 100644 index 5685c54688..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_SEFCmd_18.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_SEFCmd_18 -/* 287F8 8004D3F8 8CA20000 */ lw $v0, ($a1) -/* 287FC 8004D3FC 90430000 */ lbu $v1, ($v0) -/* 28800 8004D400 24420001 */ addiu $v0, $v0, 1 -/* 28804 8004D404 ACA20000 */ sw $v0, ($a1) -/* 28808 8004D408 A4A3005E */ sh $v1, 0x5e($a1) -/* 2880C 8004D40C 84A2005E */ lh $v0, 0x5e($a1) -/* 28810 8004D410 10400003 */ beqz $v0, .L8004D420 -/* 28814 8004D414 00031200 */ sll $v0, $v1, 8 -/* 28818 8004D418 344200FF */ ori $v0, $v0, 0xff -/* 2881C 8004D41C A4A2005E */ sh $v0, 0x5e($a1) -.L8004D420: -/* 28820 8004D420 03E00008 */ jr $ra -/* 28824 8004D424 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_get_scaled_volume.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_get_scaled_volume.s deleted file mode 100644 index ace59439b2..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_get_scaled_volume.s +++ /dev/null @@ -1,21 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_get_scaled_volume -/* 27C44 8004C844 948300B8 */ lhu $v1, 0xb8($a0) -/* 27C48 8004C848 84A2005C */ lh $v0, 0x5c($a1) -/* 27C4C 8004C84C 00620018 */ mult $v1, $v0 -/* 27C50 8004C850 90A2009A */ lbu $v0, 0x9a($a1) -/* 27C54 8004C854 30420004 */ andi $v0, $v0, 4 -/* 27C58 8004C858 00003012 */ mflo $a2 -/* 27C5C 8004C85C 14400006 */ bnez $v0, .L8004C878 -/* 27C60 8004C860 00061BC3 */ sra $v1, $a2, 0xf -/* 27C64 8004C864 84A200A6 */ lh $v0, 0xa6($a1) -/* 27C68 8004C868 10400003 */ beqz $v0, .L8004C878 -/* 27C6C 8004C86C 00620018 */ mult $v1, $v0 -/* 27C70 8004C870 00003012 */ mflo $a2 -/* 27C74 8004C874 00061BC3 */ sra $v1, $a2, 0xf -.L8004C878: -/* 27C78 8004C878 00031400 */ sll $v0, $v1, 0x10 -/* 27C7C 8004C87C 03E00008 */ jr $ra -/* 27C80 8004C880 00021403 */ sra $v0, $v0, 0x10 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_load_sfx_groups_from_SEF.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_load_sfx_groups_from_SEF.s deleted file mode 100644 index 6df0089ba9..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_load_sfx_groups_from_SEF.s +++ /dev/null @@ -1,34 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_load_sfx_groups_from_SEF -/* 26A2C 8004B62C 24080008 */ addiu $t0, $zero, 8 -/* 26A30 8004B630 8C820000 */ lw $v0, ($a0) -/* 26A34 8004B634 0000382D */ daddu $a3, $zero, $zero -/* 26A38 8004B638 8C4500A0 */ lw $a1, 0xa0($v0) -/* 26A3C 8004B63C 0080302D */ daddu $a2, $a0, $zero -/* 26A40 8004B640 00A0182D */ daddu $v1, $a1, $zero -/* 26A44 8004B644 AC850008 */ sw $a1, 8($a0) -.L8004B648: -/* 26A48 8004B648 94620010 */ lhu $v0, 0x10($v1) -/* 26A4C 8004B64C 50400004 */ beql $v0, $zero, .L8004B660 -/* 26A50 8004B650 24C60004 */ addiu $a2, $a2, 4 -/* 26A54 8004B654 00451021 */ addu $v0, $v0, $a1 -/* 26A58 8004B658 ACC2000C */ sw $v0, 0xc($a2) -/* 26A5C 8004B65C 24C60004 */ addiu $a2, $a2, 4 -.L8004B660: -/* 26A60 8004B660 24E70001 */ addiu $a3, $a3, 1 -/* 26A64 8004B664 00E8102B */ sltu $v0, $a3, $t0 -/* 26A68 8004B668 1440FFF7 */ bnez $v0, .L8004B648 -/* 26A6C 8004B66C 24630002 */ addiu $v1, $v1, 2 -/* 26A70 8004B670 90A3000E */ lbu $v1, 0xe($a1) -/* 26A74 8004B674 24020001 */ addiu $v0, $zero, 1 -/* 26A78 8004B678 14620005 */ bne $v1, $v0, .L8004B690 -/* 26A7C 8004B67C 00000000 */ nop -/* 26A80 8004B680 94A20020 */ lhu $v0, 0x20($a1) -/* 26A84 8004B684 10400002 */ beqz $v0, .L8004B690 -/* 26A88 8004B688 00451021 */ addu $v0, $v0, $a1 -/* 26A8C 8004B68C AC82002C */ sw $v0, 0x2c($a0) -.L8004B690: -/* 26A90 8004B690 03E00008 */ jr $ra -/* 26A94 8004B694 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_modifiers.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_modifiers.s deleted file mode 100644 index 8b114d439b..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_modifiers.s +++ /dev/null @@ -1,37 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_modifiers -/* 27758 8004C358 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2775C 8004C35C AFB40020 */ sw $s4, 0x20($sp) -/* 27760 8004C360 0080A02D */ daddu $s4, $a0, $zero -/* 27764 8004C364 AFB20018 */ sw $s2, 0x18($sp) -/* 27768 8004C368 00A0902D */ daddu $s2, $a1, $zero -/* 2776C 8004C36C AFB10014 */ sw $s1, 0x14($sp) -/* 27770 8004C370 0000882D */ daddu $s1, $zero, $zero -/* 27774 8004C374 AFBF0024 */ sw $ra, 0x24($sp) -/* 27778 8004C378 AFB3001C */ sw $s3, 0x1c($sp) -/* 2777C 8004C37C AFB00010 */ sw $s0, 0x10($sp) -/* 27780 8004C380 96420000 */ lhu $v0, ($s2) -/* 27784 8004C384 2410016C */ addiu $s0, $zero, 0x16c -/* 27788 8004C388 305323FF */ andi $s3, $v0, 0x23ff -.L8004C38C: -/* 2778C 8004C38C 02902021 */ addu $a0, $s4, $s0 -/* 27790 8004C390 94820096 */ lhu $v0, 0x96($a0) -/* 27794 8004C394 54530004 */ bnel $v0, $s3, .L8004C3A8 -/* 27798 8004C398 26310001 */ addiu $s1, $s1, 1 -/* 2779C 8004C39C 0C0130F5 */ jal snd_set_player_modifiers -/* 277A0 8004C3A0 0240282D */ daddu $a1, $s2, $zero -/* 277A4 8004C3A4 26310001 */ addiu $s1, $s1, 1 -.L8004C3A8: -/* 277A8 8004C3A8 2A220008 */ slti $v0, $s1, 8 -/* 277AC 8004C3AC 1440FFF7 */ bnez $v0, .L8004C38C -/* 277B0 8004C3B0 261000AC */ addiu $s0, $s0, 0xac -/* 277B4 8004C3B4 8FBF0024 */ lw $ra, 0x24($sp) -/* 277B8 8004C3B8 8FB40020 */ lw $s4, 0x20($sp) -/* 277BC 8004C3BC 8FB3001C */ lw $s3, 0x1c($sp) -/* 277C0 8004C3C0 8FB20018 */ lw $s2, 0x18($sp) -/* 277C4 8004C3C4 8FB10014 */ lw $s1, 0x14($sp) -/* 277C8 8004C3C8 8FB00010 */ lw $s0, 0x10($sp) -/* 277CC 8004C3CC 03E00008 */ jr $ra -/* 277D0 8004C3D0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_player_modifiers.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_player_modifiers.s deleted file mode 100644 index ce2ce96cba..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_player_modifiers.s +++ /dev/null @@ -1,37 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_player_modifiers -/* 277D4 8004C3D4 9082009A */ lbu $v0, 0x9a($a0) -/* 277D8 8004C3D8 30420004 */ andi $v0, $v0, 4 -/* 277DC 8004C3DC 10400003 */ beqz $v0, .L8004C3EC -/* 277E0 8004C3E0 24020001 */ addiu $v0, $zero, 1 -/* 277E4 8004C3E4 080130FE */ j .L8004C3F8 -/* 277E8 8004C3E8 A48000A6 */ sh $zero, 0xa6($a0) -.L8004C3EC: -/* 277EC 8004C3EC 94A30004 */ lhu $v1, 4($a1) -/* 277F0 8004C3F0 A0820055 */ sb $v0, 0x55($a0) -/* 277F4 8004C3F4 A48300A6 */ sh $v1, 0xa6($a0) -.L8004C3F8: -/* 277F8 8004C3F8 9082009A */ lbu $v0, 0x9a($a0) -/* 277FC 8004C3FC 30420008 */ andi $v0, $v0, 8 -/* 27800 8004C400 10400003 */ beqz $v0, .L8004C410 -/* 27804 8004C404 24020001 */ addiu $v0, $zero, 1 -/* 27808 8004C408 08013107 */ j .L8004C41C -/* 2780C 8004C40C A08000A8 */ sb $zero, 0xa8($a0) -.L8004C410: -/* 27810 8004C410 90A30008 */ lbu $v1, 8($a1) -/* 27814 8004C414 A0820056 */ sb $v0, 0x56($a0) -/* 27818 8004C418 A08300A8 */ sb $v1, 0xa8($a0) -.L8004C41C: -/* 2781C 8004C41C 9082009A */ lbu $v0, 0x9a($a0) -/* 27820 8004C420 30420010 */ andi $v0, $v0, 0x10 -/* 27824 8004C424 10400003 */ beqz $v0, .L8004C434 -/* 27828 8004C428 24020001 */ addiu $v0, $zero, 1 -/* 2782C 8004C42C 03E00008 */ jr $ra -/* 27830 8004C430 A48000A4 */ sh $zero, 0xa4($a0) -.L8004C434: -/* 27834 8004C434 94A30006 */ lhu $v1, 6($a1) -/* 27838 8004C438 A0820054 */ sb $v0, 0x54($a0) -/* 2783C 8004C43C 03E00008 */ jr $ra -/* 27840 8004C440 A48300A4 */ sh $v1, 0xa4($a0) diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_voice_volume.s b/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_voice_volume.s deleted file mode 100644 index 0018a86dd6..0000000000 --- a/ver/us/asm/nonmatchings/26840_len_20d0/snd_set_voice_volume.s +++ /dev/null @@ -1,31 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_voice_volume -/* 28194 8004CD94 94A300B8 */ lhu $v1, 0xb8($a1) -/* 28198 8004CD98 84C2005C */ lh $v0, 0x5c($a2) -/* 2819C 8004CD9C 00620018 */ mult $v1, $v0 -/* 281A0 8004CDA0 00003812 */ mflo $a3 -/* 281A4 8004CDA4 90C3009F */ lbu $v1, 0x9f($a2) -/* 281A8 8004CDA8 000713C3 */ sra $v0, $a3, 0xf -/* 281AC 8004CDAC 00430018 */ mult $v0, $v1 -/* 281B0 8004CDB0 00003812 */ mflo $a3 -/* 281B4 8004CDB4 84C3006C */ lh $v1, 0x6c($a2) -/* 281B8 8004CDB8 000711C3 */ sra $v0, $a3, 7 -/* 281BC 8004CDBC 00430018 */ mult $v0, $v1 -/* 281C0 8004CDC0 90C2009A */ lbu $v0, 0x9a($a2) -/* 281C4 8004CDC4 30420004 */ andi $v0, $v0, 4 -/* 281C8 8004CDC8 00003812 */ mflo $a3 -/* 281CC 8004CDCC 14400004 */ bnez $v0, .L8004CDE0 -/* 281D0 8004CDD0 00071BC3 */ sra $v1, $a3, 0xf -/* 281D4 8004CDD4 84C200A6 */ lh $v0, 0xa6($a2) -/* 281D8 8004CDD8 14400003 */ bnez $v0, .L8004CDE8 -/* 281DC 8004CDDC 00620018 */ mult $v1, $v0 -.L8004CDE0: -/* 281E0 8004CDE0 03E00008 */ jr $ra -/* 281E4 8004CDE4 A4830040 */ sh $v1, 0x40($a0) -.L8004CDE8: -/* 281E8 8004CDE8 00003812 */ mflo $a3 -/* 281EC 8004CDEC 000713C3 */ sra $v0, $a3, 0xf -/* 281F0 8004CDF0 03E00008 */ jr $ra -/* 281F4 8004CDF4 A4820040 */ sh $v0, 0x40($a0) diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004D510.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004D510.s deleted file mode 100644 index 701ed81b9b..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004D510.s +++ /dev/null @@ -1,184 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004D510 -/* 28910 8004D510 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 28914 8004D514 AFB10014 */ sw $s1, 0x14($sp) -/* 28918 8004D518 0080882D */ daddu $s1, $a0, $zero -/* 2891C 8004D51C AFB3001C */ sw $s3, 0x1c($sp) -/* 28920 8004D520 0000982D */ daddu $s3, $zero, $zero -/* 28924 8004D524 2406FFFF */ addiu $a2, $zero, -1 -/* 28928 8004D528 AFBF0020 */ sw $ra, 0x20($sp) -/* 2892C 8004D52C AFB20018 */ sw $s2, 0x18($sp) -/* 28930 8004D530 AFB00010 */ sw $s0, 0x10($sp) -/* 28934 8004D534 8E220014 */ lw $v0, 0x14($s1) -/* 28938 8004D538 92230258 */ lbu $v1, 0x258($s1) -/* 2893C 8004D53C 24420001 */ addiu $v0, $v0, 1 -/* 28940 8004D540 1060008D */ beqz $v1, .L8004D778 -/* 28944 8004D544 AE220014 */ sw $v0, 0x14($s1) -/* 28948 8004D548 2C620008 */ sltiu $v0, $v1, 8 -/* 2894C 8004D54C 10400023 */ beqz $v0, .L8004D5DC -/* 28950 8004D550 0263102B */ sltu $v0, $s3, $v1 -/* 28954 8004D554 92240259 */ lbu $a0, 0x259($s1) -/* 28958 8004D558 10400015 */ beqz $v0, .L8004D5B0 -/* 2895C 8004D55C 0260282D */ daddu $a1, $s3, $zero -/* 28960 8004D560 0060382D */ daddu $a3, $v1, $zero -/* 28964 8004D564 308200FF */ andi $v0, $a0, 0xff -.L8004D568: -/* 28968 8004D568 00021080 */ sll $v0, $v0, 2 -/* 2896C 8004D56C 02221021 */ addu $v0, $s1, $v0 -/* 28970 8004D570 8C430238 */ lw $v1, 0x238($v0) -/* 28974 8004D574 10600009 */ beqz $v1, .L8004D59C -/* 28978 8004D578 2C620010 */ sltiu $v0, $v1, 0x10 -/* 2897C 8004D57C 10400003 */ beqz $v0, .L8004D58C -/* 28980 8004D580 24840001 */ addiu $a0, $a0, 1 -/* 28984 8004D584 30660003 */ andi $a2, $v1, 3 -/* 28988 8004D588 00039882 */ srl $s3, $v1, 2 -.L8004D58C: -/* 2898C 8004D58C 308200FF */ andi $v0, $a0, 0xff -/* 28990 8004D590 2C420008 */ sltiu $v0, $v0, 8 -/* 28994 8004D594 50400001 */ beql $v0, $zero, .L8004D59C -/* 28998 8004D598 0000202D */ daddu $a0, $zero, $zero -.L8004D59C: -/* 2899C 8004D59C 24A50001 */ addiu $a1, $a1, 1 -/* 289A0 8004D5A0 30A200FF */ andi $v0, $a1, 0xff -/* 289A4 8004D5A4 0047102B */ sltu $v0, $v0, $a3 -/* 289A8 8004D5A8 1440FFEF */ bnez $v0, .L8004D568 -/* 289AC 8004D5AC 308200FF */ andi $v0, $a0, 0xff -.L8004D5B0: -/* 289B0 8004D5B0 9223025A */ lbu $v1, 0x25a($s1) -/* 289B4 8004D5B4 92220259 */ lbu $v0, 0x259($s1) -/* 289B8 8004D5B8 00622023 */ subu $a0, $v1, $v0 -/* 289BC 8004D5BC 04820001 */ bltzl $a0, .L8004D5C4 -/* 289C0 8004D5C0 24840008 */ addiu $a0, $a0, 8 -.L8004D5C4: -/* 289C4 8004D5C4 92220258 */ lbu $v0, 0x258($s1) -/* 289C8 8004D5C8 9223025A */ lbu $v1, 0x25a($s1) -/* 289CC 8004D5CC 00441023 */ subu $v0, $v0, $a0 -/* 289D0 8004D5D0 A2220258 */ sb $v0, 0x258($s1) -/* 289D4 8004D5D4 08013578 */ j .L8004D5E0 -/* 289D8 8004D5D8 A2230259 */ sb $v1, 0x259($s1) -.L8004D5DC: -/* 289DC 8004D5DC A2200258 */ sb $zero, 0x258($s1) -.L8004D5E0: -/* 289E0 8004D5E0 2402FFFF */ addiu $v0, $zero, -1 -/* 289E4 8004D5E4 10C20064 */ beq $a2, $v0, .L8004D778 -/* 289E8 8004D5E8 00000000 */ nop -/* 289EC 8004D5EC 10C00058 */ beqz $a2, .L8004D750 -/* 289F0 8004D5F0 00000000 */ nop -/* 289F4 8004D5F4 96220058 */ lhu $v0, 0x58($s1) -/* 289F8 8004D5F8 10C2005F */ beq $a2, $v0, .L8004D778 -/* 289FC 8004D5FC 3C030002 */ lui $v1, 2 -/* 28A00 8004D600 3463625A */ ori $v1, $v1, 0x625a -/* 28A04 8004D604 30C200FF */ andi $v0, $a2, 0xff -/* 28A08 8004D608 A6220058 */ sh $v0, 0x58($s1) -/* 28A0C 8004D60C A622005A */ sh $v0, 0x5a($s1) -/* 28A10 8004D610 24020003 */ addiu $v0, $zero, 3 -/* 28A14 8004D614 A2220221 */ sb $v0, 0x221($s1) -/* 28A18 8004D618 24020002 */ addiu $v0, $zero, 2 -/* 28A1C 8004D61C 14C20004 */ bne $a2, $v0, .L8004D630 -/* 28A20 8004D620 AE230008 */ sw $v1, 8($s1) -/* 28A24 8004D624 8E220000 */ lw $v0, ($s1) -/* 28A28 8004D628 0801358E */ j .L8004D638 -/* 28A2C 8004D62C 8C500060 */ lw $s0, 0x60($v0) -.L8004D630: -/* 28A30 8004D630 8E220000 */ lw $v0, ($s1) -/* 28A34 8004D634 8C50005C */ lw $s0, 0x5c($v0) -.L8004D638: -/* 28A38 8004D638 8E220074 */ lw $v0, 0x74($s1) -/* 28A3C 8004D63C 0220202D */ daddu $a0, $s1, $zero -/* 28A40 8004D640 AE300064 */ sw $s0, 0x64($s1) -/* 28A44 8004D644 90420000 */ lbu $v0, ($v0) -/* 28A48 8004D648 3C050002 */ lui $a1, 2 -/* 28A4C 8004D64C 30420007 */ andi $v0, $v0, 7 -/* 28A50 8004D650 3C068008 */ lui $a2, %hi(D_80078510) -/* 28A54 8004D654 00C23021 */ addu $a2, $a2, $v0 -/* 28A58 8004D658 90C68510 */ lbu $a2, %lo(D_80078510)($a2) -/* 28A5C 8004D65C 0C013A20 */ jal func_8004E880 -/* 28A60 8004D660 34A5625A */ ori $a1, $a1, 0x625a -/* 28A64 8004D664 26120010 */ addiu $s2, $s0, 0x10 -/* 28A68 8004D668 00131040 */ sll $v0, $s3, 1 -/* 28A6C 8004D66C 02421021 */ addu $v0, $s2, $v0 -/* 28A70 8004D670 94420004 */ lhu $v0, 4($v0) -/* 28A74 8004D674 14400003 */ bnez $v0, .L8004D684 -/* 28A78 8004D678 00021080 */ sll $v0, $v0, 2 -/* 28A7C 8004D67C 96020014 */ lhu $v0, 0x14($s0) -/* 28A80 8004D680 00021080 */ sll $v0, $v0, 2 -.L8004D684: -/* 28A84 8004D684 00501021 */ addu $v0, $v0, $s0 -/* 28A88 8004D688 AE22006C */ sw $v0, 0x6c($s1) -/* 28A8C 8004D68C AE220068 */ sw $v0, 0x68($s1) -/* 28A90 8004D690 9602001C */ lhu $v0, 0x1c($s0) -/* 28A94 8004D694 10400020 */ beqz $v0, .L8004D718 -/* 28A98 8004D698 00021080 */ sll $v0, $v0, 2 -/* 28A9C 8004D69C 8E230064 */ lw $v1, 0x64($s1) -/* 28AA0 8004D6A0 00431021 */ addu $v0, $v0, $v1 -/* 28AA4 8004D6A4 AE220078 */ sw $v0, 0x78($s1) -/* 28AA8 8004D6A8 9202001F */ lbu $v0, 0x1f($s0) -/* 28AAC 8004D6AC A222021C */ sb $v0, 0x21c($s1) -/* 28AB0 8004D6B0 304200FF */ andi $v0, $v0, 0xff -/* 28AB4 8004D6B4 1040000C */ beqz $v0, .L8004D6E8 -/* 28AB8 8004D6B8 0000182D */ daddu $v1, $zero, $zero -/* 28ABC 8004D6BC 0220282D */ daddu $a1, $s1, $zero -/* 28AC0 8004D6C0 0060202D */ daddu $a0, $v1, $zero -.L8004D6C4: -/* 28AC4 8004D6C4 8E220078 */ lw $v0, 0x78($s1) -/* 28AC8 8004D6C8 24630001 */ addiu $v1, $v1, 1 -/* 28ACC 8004D6CC 00441021 */ addu $v0, $v0, $a0 -/* 28AD0 8004D6D0 ACA20080 */ sw $v0, 0x80($a1) -/* 28AD4 8004D6D4 24A50004 */ addiu $a1, $a1, 4 -/* 28AD8 8004D6D8 9222021C */ lbu $v0, 0x21c($s1) -/* 28ADC 8004D6DC 0062102B */ sltu $v0, $v1, $v0 -/* 28AE0 8004D6E0 1440FFF8 */ bnez $v0, .L8004D6C4 -/* 28AE4 8004D6E4 2484000C */ addiu $a0, $a0, 0xc -.L8004D6E8: -/* 28AE8 8004D6E8 2C62000C */ sltiu $v0, $v1, 0xc -/* 28AEC 8004D6EC 1040000C */ beqz $v0, .L8004D720 -/* 28AF0 8004D6F0 00031080 */ sll $v0, $v1, 2 -/* 28AF4 8004D6F4 00512021 */ addu $a0, $v0, $s1 -.L8004D6F8: -/* 28AF8 8004D6F8 8E220080 */ lw $v0, 0x80($s1) -/* 28AFC 8004D6FC 24630001 */ addiu $v1, $v1, 1 -/* 28B00 8004D700 AC820080 */ sw $v0, 0x80($a0) -/* 28B04 8004D704 2C62000C */ sltiu $v0, $v1, 0xc -/* 28B08 8004D708 1440FFFB */ bnez $v0, .L8004D6F8 -/* 28B0C 8004D70C 24840004 */ addiu $a0, $a0, 4 -/* 28B10 8004D710 080135C8 */ j .L8004D720 -/* 28B14 8004D714 00000000 */ nop -.L8004D718: -/* 28B18 8004D718 AE200078 */ sw $zero, 0x78($s1) -/* 28B1C 8004D71C A220021C */ sb $zero, 0x21c($s1) -.L8004D720: -/* 28B20 8004D720 96420010 */ lhu $v0, 0x10($s2) -/* 28B24 8004D724 10400007 */ beqz $v0, .L8004D744 -/* 28B28 8004D728 00021080 */ sll $v0, $v0, 2 -/* 28B2C 8004D72C 8E230064 */ lw $v1, 0x64($s1) -/* 28B30 8004D730 00431021 */ addu $v0, $v0, $v1 -/* 28B34 8004D734 AE22007C */ sw $v0, 0x7c($s1) -/* 28B38 8004D738 92420013 */ lbu $v0, 0x13($s2) -/* 28B3C 8004D73C 080135DE */ j .L8004D778 -/* 28B40 8004D740 A222021D */ sb $v0, 0x21d($s1) -.L8004D744: -/* 28B44 8004D744 AE20007C */ sw $zero, 0x7c($s1) -/* 28B48 8004D748 080135DE */ j .L8004D778 -/* 28B4C 8004D74C A220021D */ sb $zero, 0x21d($s1) -.L8004D750: -/* 28B50 8004D750 96220058 */ lhu $v0, 0x58($s1) -/* 28B54 8004D754 10400006 */ beqz $v0, .L8004D770 -/* 28B58 8004D758 24020004 */ addiu $v0, $zero, 4 -/* 28B5C 8004D75C A2220221 */ sb $v0, 0x221($s1) -/* 28B60 8004D760 24020001 */ addiu $v0, $zero, 1 -/* 28B64 8004D764 AE220010 */ sw $v0, 0x10($s1) -/* 28B68 8004D768 080135DE */ j .L8004D778 -/* 28B6C 8004D76C AE220008 */ sw $v0, 8($s1) -.L8004D770: -/* 28B70 8004D770 0C0136AA */ jal func_8004DAA8 -/* 28B74 8004D774 0220202D */ daddu $a0, $s1, $zero -.L8004D778: -/* 28B78 8004D778 8FBF0020 */ lw $ra, 0x20($sp) -/* 28B7C 8004D77C 8FB3001C */ lw $s3, 0x1c($sp) -/* 28B80 8004D780 8FB20018 */ lw $s2, 0x18($sp) -/* 28B84 8004D784 8FB10014 */ lw $s1, 0x14($sp) -/* 28B88 8004D788 8FB00010 */ lw $s0, 0x10($sp) -/* 28B8C 8004D78C 03E00008 */ jr $ra -/* 28B90 8004D790 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB28.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB28.s deleted file mode 100644 index 55fdb3004f..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB28.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DB28 -/* 28F28 8004DB28 8C82001C */ lw $v0, 0x1c($a0) -/* 28F2C 8004DB2C 10400005 */ beqz $v0, .L8004DB44 -/* 28F30 8004DB30 0000102D */ daddu $v0, $zero, $zero -/* 28F34 8004DB34 90830221 */ lbu $v1, 0x221($a0) -/* 28F38 8004DB38 14600002 */ bnez $v1, .L8004DB44 -/* 28F3C 8004DB3C 24020001 */ addiu $v0, $zero, 1 -/* 28F40 8004DB40 0000102D */ daddu $v0, $zero, $zero -.L8004DB44: -/* 28F44 8004DB44 03E00008 */ jr $ra -/* 28F48 8004DB48 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB4C.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB4C.s deleted file mode 100644 index 38f1a9b27e..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DB4C.s +++ /dev/null @@ -1,86 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DB4C -/* 28F4C 8004DB4C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 28F50 8004DB50 AFB3001C */ sw $s3, 0x1c($sp) -/* 28F54 8004DB54 0080982D */ daddu $s3, $a0, $zero -/* 28F58 8004DB58 AFB20018 */ sw $s2, 0x18($sp) -/* 28F5C 8004DB5C AFBF0024 */ sw $ra, 0x24($sp) -/* 28F60 8004DB60 AFB40020 */ sw $s4, 0x20($sp) -/* 28F64 8004DB64 AFB10014 */ sw $s1, 0x14($sp) -/* 28F68 8004DB68 AFB00010 */ sw $s0, 0x10($sp) -/* 28F6C 8004DB6C 8E700000 */ lw $s0, ($s3) -/* 28F70 8004DB70 8E710004 */ lw $s1, 4($s3) -/* 28F74 8004DB74 9674000E */ lhu $s4, 0xe($s3) -/* 28F78 8004DB78 12000037 */ beqz $s0, .L8004DC58 -/* 28F7C 8004DB7C 0000902D */ daddu $s2, $zero, $zero -/* 28F80 8004DB80 2622FF06 */ addiu $v0, $s1, -0xfa -/* 28F84 8004DB84 2C422617 */ sltiu $v0, $v0, 0x2617 -/* 28F88 8004DB88 50400034 */ beql $v0, $zero, .L8004DC5C -/* 28F8C 8004DB8C 24120004 */ addiu $s2, $zero, 4 -/* 28F90 8004DB90 0C0135E5 */ jal snd_get_player_with_song_name -/* 28F94 8004DB94 0200202D */ daddu $a0, $s0, $zero -/* 28F98 8004DB98 0040282D */ daddu $a1, $v0, $zero -/* 28F9C 8004DB9C 50A0002F */ beql $a1, $zero, .L8004DC5C -/* 28FA0 8004DBA0 24120002 */ addiu $s2, $zero, 2 -/* 28FA4 8004DBA4 8CA6001C */ lw $a2, 0x1c($a1) -/* 28FA8 8004DBA8 14D0002D */ bne $a2, $s0, .L8004DC60 -/* 28FAC 8004DBAC 0240102D */ daddu $v0, $s2, $zero -/* 28FB0 8004DBB0 90A20221 */ lbu $v0, 0x221($a1) -/* 28FB4 8004DBB4 1040002A */ beqz $v0, .L8004DC60 -/* 28FB8 8004DBB8 0240102D */ daddu $v0, $s2, $zero -/* 28FBC 8004DBBC 90A20220 */ lbu $v0, 0x220($a1) -/* 28FC0 8004DBC0 14400027 */ bnez $v0, .L8004DC60 -/* 28FC4 8004DBC4 0240102D */ daddu $v0, $s2, $zero -/* 28FC8 8004DBC8 00111140 */ sll $v0, $s1, 5 -/* 28FCC 8004DBCC 00511023 */ subu $v0, $v0, $s1 -/* 28FD0 8004DBD0 00021080 */ sll $v0, $v0, 2 -/* 28FD4 8004DBD4 00511021 */ addu $v0, $v0, $s1 -/* 28FD8 8004DBD8 000210C0 */ sll $v0, $v0, 3 -/* 28FDC 8004DBDC 3C03B65C */ lui $v1, 0xb65c -/* 28FE0 8004DBE0 34636D59 */ ori $v1, $v1, 0x6d59 -/* 28FE4 8004DBE4 00430019 */ multu $v0, $v1 -/* 28FE8 8004DBE8 8CA2002C */ lw $v0, 0x2c($a1) -/* 28FEC 8004DBEC 00001810 */ mfhi $v1 -/* 28FF0 8004DBF0 00032302 */ srl $a0, $v1, 0xc -/* 28FF4 8004DBF4 00141C00 */ sll $v1, $s4, 0x10 -/* 28FF8 8004DBF8 00621823 */ subu $v1, $v1, $v0 -/* 28FFC 8004DBFC 00041400 */ sll $v0, $a0, 0x10 -/* 29000 8004DC00 00021403 */ sra $v0, $v0, 0x10 -/* 29004 8004DC04 14400002 */ bnez $v0, .L8004DC10 -/* 29008 8004DC08 0062001A */ div $zero, $v1, $v0 -/* 2900C 8004DC0C 0007000D */ break 7 -.L8004DC10: -/* 29010 8004DC10 2401FFFF */ addiu $at, $zero, -1 -/* 29014 8004DC14 14410004 */ bne $v0, $at, .L8004DC28 -/* 29018 8004DC18 3C018000 */ lui $at, 0x8000 -/* 2901C 8004DC1C 14610002 */ bne $v1, $at, .L8004DC28 -/* 29020 8004DC20 00000000 */ nop -/* 29024 8004DC24 0006000D */ break 6 -.L8004DC28: -/* 29028 8004DC28 00001812 */ mflo $v1 -/* 2902C 8004DC2C A4B40034 */ sh $s4, 0x34($a1) -/* 29030 8004DC30 A4A40036 */ sh $a0, 0x36($a1) -/* 29034 8004DC34 ACA30030 */ sw $v1, 0x30($a1) -/* 29038 8004DC38 8E620010 */ lw $v0, 0x10($s3) -/* 2903C 8004DC3C ACA20038 */ sw $v0, 0x38($a1) -/* 29040 8004DC40 8E630014 */ lw $v1, 0x14($s3) -/* 29044 8004DC44 24020001 */ addiu $v0, $zero, 1 -/* 29048 8004DC48 50620004 */ beql $v1, $v0, .L8004DC5C -/* 2904C 8004DC4C ACA60020 */ sw $a2, 0x20($a1) -/* 29050 8004DC50 08013718 */ j .L8004DC60 -/* 29054 8004DC54 0240102D */ daddu $v0, $s2, $zero -.L8004DC58: -/* 29058 8004DC58 24120003 */ addiu $s2, $zero, 3 -.L8004DC5C: -/* 2905C 8004DC5C 0240102D */ daddu $v0, $s2, $zero -.L8004DC60: -/* 29060 8004DC60 8FBF0024 */ lw $ra, 0x24($sp) -/* 29064 8004DC64 8FB40020 */ lw $s4, 0x20($sp) -/* 29068 8004DC68 8FB3001C */ lw $s3, 0x1c($sp) -/* 2906C 8004DC6C 8FB20018 */ lw $s2, 0x18($sp) -/* 29070 8004DC70 8FB10014 */ lw $s1, 0x14($sp) -/* 29074 8004DC74 8FB00010 */ lw $s0, 0x10($sp) -/* 29078 8004DC78 03E00008 */ jr $ra -/* 2907C 8004DC7C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DC80.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DC80.s deleted file mode 100644 index 4bbfc19da1..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DC80.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DC80 -/* 29080 8004DC80 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 29084 8004DC84 AFA40010 */ sw $a0, 0x10($sp) -/* 29088 8004DC88 27A40010 */ addiu $a0, $sp, 0x10 -/* 2908C 8004DC8C 0000282D */ daddu $a1, $zero, $zero -/* 29090 8004DC90 AFBF0030 */ sw $ra, 0x30($sp) -/* 29094 8004DC94 AFA00014 */ sw $zero, 0x14($sp) -/* 29098 8004DC98 AFA00018 */ sw $zero, 0x18($sp) -/* 2909C 8004DC9C AFA0001C */ sw $zero, 0x1c($sp) -/* 290A0 8004DCA0 AFA00020 */ sw $zero, 0x20($sp) -/* 290A4 8004DCA4 0C01372E */ jal func_8004DCB8 -/* 290A8 8004DCA8 AFA00024 */ sw $zero, 0x24($sp) -/* 290AC 8004DCAC 8FBF0030 */ lw $ra, 0x30($sp) -/* 290B0 8004DCB0 03E00008 */ jr $ra -/* 290B4 8004DCB4 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DCB8.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DCB8.s deleted file mode 100644 index 48bceb13d0..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DCB8.s +++ /dev/null @@ -1,105 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DCB8 -/* 290B8 8004DCB8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 290BC 8004DCBC AFB20018 */ sw $s2, 0x18($sp) -/* 290C0 8004DCC0 0080902D */ daddu $s2, $a0, $zero -/* 290C4 8004DCC4 AFB50024 */ sw $s5, 0x24($sp) -/* 290C8 8004DCC8 00A0A82D */ daddu $s5, $a1, $zero -/* 290CC 8004DCCC AFB3001C */ sw $s3, 0x1c($sp) -/* 290D0 8004DCD0 AFBF0028 */ sw $ra, 0x28($sp) -/* 290D4 8004DCD4 AFB40020 */ sw $s4, 0x20($sp) -/* 290D8 8004DCD8 AFB10014 */ sw $s1, 0x14($sp) -/* 290DC 8004DCDC AFB00010 */ sw $s0, 0x10($sp) -/* 290E0 8004DCE0 8E510000 */ lw $s1, ($s2) -/* 290E4 8004DCE4 8E540010 */ lw $s4, 0x10($s2) -/* 290E8 8004DCE8 12200045 */ beqz $s1, .L8004DE00 -/* 290EC 8004DCEC 0000982D */ daddu $s3, $zero, $zero -/* 290F0 8004DCF0 0C0135E5 */ jal snd_get_player_with_song_name -/* 290F4 8004DCF4 0220202D */ daddu $a0, $s1, $zero -/* 290F8 8004DCF8 0040802D */ daddu $s0, $v0, $zero -/* 290FC 8004DCFC 52000041 */ beql $s0, $zero, .L8004DE04 -/* 29100 8004DD00 24130002 */ addiu $s3, $zero, 2 -/* 29104 8004DD04 8E420014 */ lw $v0, 0x14($s2) -/* 29108 8004DD08 14400032 */ bnez $v0, .L8004DDD4 -/* 2910C 8004DD0C 00000000 */ nop -/* 29110 8004DD10 0C014FD9 */ jal func_80053F64 -/* 29114 8004DD14 0280202D */ daddu $a0, $s4, $zero -/* 29118 8004DD18 0040402D */ daddu $t0, $v0, $zero -/* 2911C 8004DD1C 51000039 */ beql $t0, $zero, .L8004DE04 -/* 29120 8004DD20 24130004 */ addiu $s3, $zero, 4 -/* 29124 8004DD24 8E02001C */ lw $v0, 0x1c($s0) -/* 29128 8004DD28 16220037 */ bne $s1, $v0, .L8004DE08 -/* 2912C 8004DD2C 0260102D */ daddu $v0, $s3, $zero -/* 29130 8004DD30 16A00015 */ bnez $s5, .L8004DD88 -/* 29134 8004DD34 001428C0 */ sll $a1, $s4, 3 -/* 29138 8004DD38 0260382D */ daddu $a3, $s3, $zero -/* 2913C 8004DD3C 2406025C */ addiu $a2, $zero, 0x25c -.L8004DD40: -/* 29140 8004DD40 02062821 */ addu $a1, $s0, $a2 -/* 29144 8004DD44 8CA20000 */ lw $v0, ($a1) -/* 29148 8004DD48 5040000B */ beql $v0, $zero, .L8004DD78 -/* 2914C 8004DD4C 24E70001 */ addiu $a3, $a3, 1 -/* 29150 8004DD50 90A30052 */ lbu $v1, 0x52($a1) -/* 29154 8004DD54 90A40053 */ lbu $a0, 0x53($a1) -/* 29158 8004DD58 0064102B */ sltu $v0, $v1, $a0 -/* 2915C 8004DD5C 50400006 */ beql $v0, $zero, .L8004DD78 -/* 29160 8004DD60 24E70001 */ addiu $a3, $a3, 1 -.L8004DD64: -/* 29164 8004DD64 24630001 */ addiu $v1, $v1, 1 -/* 29168 8004DD68 0064102B */ sltu $v0, $v1, $a0 -/* 2916C 8004DD6C 1440FFFD */ bnez $v0, .L8004DD64 -/* 29170 8004DD70 ACA00040 */ sw $zero, 0x40($a1) -/* 29174 8004DD74 24E70001 */ addiu $a3, $a3, 1 -.L8004DD78: -/* 29178 8004DD78 2CE20010 */ sltiu $v0, $a3, 0x10 -/* 2917C 8004DD7C 1440FFF0 */ bnez $v0, .L8004DD40 -/* 29180 8004DD80 24C60060 */ addiu $a2, $a2, 0x60 -/* 29184 8004DD84 001428C0 */ sll $a1, $s4, 3 -.L8004DD88: -/* 29188 8004DD88 0200202D */ daddu $a0, $s0, $zero -/* 2918C 8004DD8C 24060A9C */ addiu $a2, $zero, 0xa9c -/* 29190 8004DD90 8E020000 */ lw $v0, ($s0) -/* 29194 8004DD94 92030234 */ lbu $v1, 0x234($s0) -/* 29198 8004DD98 00451021 */ addu $v0, $v0, $a1 -/* 2919C 8004DD9C A0430071 */ sb $v1, 0x71($v0) -/* 291A0 8004DDA0 8E020000 */ lw $v0, ($s0) -/* 291A4 8004DDA4 24030001 */ addiu $v1, $zero, 1 -/* 291A8 8004DDA8 00451021 */ addu $v0, $v0, $a1 -/* 291AC 8004DDAC 0100282D */ daddu $a1, $t0, $zero -/* 291B0 8004DDB0 A0430070 */ sb $v1, 0x70($v0) -/* 291B4 8004DDB4 0C0153DD */ jal snd_copy_words -/* 291B8 8004DDB8 AE000020 */ sw $zero, 0x20($s0) -/* 291BC 8004DDBC 16A00012 */ bnez $s5, .L8004DE08 -/* 291C0 8004DDC0 0260102D */ daddu $v0, $s3, $zero -/* 291C4 8004DDC4 0C0136AA */ jal func_8004DAA8 -/* 291C8 8004DDC8 0200202D */ daddu $a0, $s0, $zero -/* 291CC 8004DDCC 08013782 */ j .L8004DE08 -/* 291D0 8004DDD0 0260102D */ daddu $v0, $s3, $zero -.L8004DDD4: -/* 291D4 8004DDD4 8E02001C */ lw $v0, 0x1c($s0) -/* 291D8 8004DDD8 1622000B */ bne $s1, $v0, .L8004DE08 -/* 291DC 8004DDDC 0260102D */ daddu $v0, $s3, $zero -/* 291E0 8004DDE0 92020221 */ lbu $v0, 0x221($s0) -/* 291E4 8004DDE4 10400007 */ beqz $v0, .L8004DE04 -/* 291E8 8004DDE8 24020001 */ addiu $v0, $zero, 1 -/* 291EC 8004DDEC A2020220 */ sb $v0, 0x220($s0) -/* 291F0 8004DDF0 0C014240 */ jal func_80050900 -/* 291F4 8004DDF4 0200202D */ daddu $a0, $s0, $zero -/* 291F8 8004DDF8 08013782 */ j .L8004DE08 -/* 291FC 8004DDFC 0260102D */ daddu $v0, $s3, $zero -.L8004DE00: -/* 29200 8004DE00 24130003 */ addiu $s3, $zero, 3 -.L8004DE04: -/* 29204 8004DE04 0260102D */ daddu $v0, $s3, $zero -.L8004DE08: -/* 29208 8004DE08 8FBF0028 */ lw $ra, 0x28($sp) -/* 2920C 8004DE0C 8FB50024 */ lw $s5, 0x24($sp) -/* 29210 8004DE10 8FB40020 */ lw $s4, 0x20($sp) -/* 29214 8004DE14 8FB3001C */ lw $s3, 0x1c($sp) -/* 29218 8004DE18 8FB20018 */ lw $s2, 0x18($sp) -/* 2921C 8004DE1C 8FB10014 */ lw $s1, 0x14($sp) -/* 29220 8004DE20 8FB00010 */ lw $s0, 0x10($sp) -/* 29224 8004DE24 03E00008 */ jr $ra -/* 29228 8004DE28 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DE2C.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DE2C.s deleted file mode 100644 index 4ab49f4b6d..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DE2C.s +++ /dev/null @@ -1,122 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DE2C -/* 2922C 8004DE2C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 29230 8004DE30 AFB3001C */ sw $s3, 0x1c($sp) -/* 29234 8004DE34 0080982D */ daddu $s3, $a0, $zero -/* 29238 8004DE38 AFB20018 */ sw $s2, 0x18($sp) -/* 2923C 8004DE3C AFBF0024 */ sw $ra, 0x24($sp) -/* 29240 8004DE40 AFB40020 */ sw $s4, 0x20($sp) -/* 29244 8004DE44 AFB10014 */ sw $s1, 0x14($sp) -/* 29248 8004DE48 AFB00010 */ sw $s0, 0x10($sp) -/* 2924C 8004DE4C 8E740000 */ lw $s4, ($s3) -/* 29250 8004DE50 8E700010 */ lw $s0, 0x10($s3) -/* 29254 8004DE54 12800055 */ beqz $s4, .L8004DFAC -/* 29258 8004DE58 0000902D */ daddu $s2, $zero, $zero -/* 2925C 8004DE5C 8E620014 */ lw $v0, 0x14($s3) -/* 29260 8004DE60 14400045 */ bnez $v0, .L8004DF78 -/* 29264 8004DE64 00000000 */ nop -/* 29268 8004DE68 0C014FD9 */ jal func_80053F64 -/* 2926C 8004DE6C 0200202D */ daddu $a0, $s0, $zero -/* 29270 8004DE70 0040882D */ daddu $s1, $v0, $zero -/* 29274 8004DE74 1220003E */ beqz $s1, .L8004DF70 -/* 29278 8004DE78 001010C0 */ sll $v0, $s0, 3 -/* 2927C 8004DE7C 8E230000 */ lw $v1, ($s1) -/* 29280 8004DE80 00622021 */ addu $a0, $v1, $v0 -/* 29284 8004DE84 90830070 */ lbu $v1, 0x70($a0) -/* 29288 8004DE88 24020001 */ addiu $v0, $zero, 1 -/* 2928C 8004DE8C 54620048 */ bnel $v1, $v0, .L8004DFB0 -/* 29290 8004DE90 24120004 */ addiu $s2, $zero, 4 -/* 29294 8004DE94 90840071 */ lbu $a0, 0x71($a0) -/* 29298 8004DE98 0C015092 */ jal func_80054248 -/* 2929C 8004DE9C 00000000 */ nop -/* 292A0 8004DEA0 0040802D */ daddu $s0, $v0, $zero -/* 292A4 8004DEA4 52000042 */ beql $s0, $zero, .L8004DFB0 -/* 292A8 8004DEA8 24120006 */ addiu $s2, $zero, 6 -/* 292AC 8004DEAC 0C0136CA */ jal func_8004DB28 -/* 292B0 8004DEB0 0200202D */ daddu $a0, $s0, $zero -/* 292B4 8004DEB4 1440003E */ bnez $v0, .L8004DFB0 -/* 292B8 8004DEB8 24120007 */ addiu $s2, $zero, 7 -/* 292BC 8004DEBC 8E240028 */ lw $a0, 0x28($s1) -/* 292C0 8004DEC0 0C014F96 */ jal func_80053E58 -/* 292C4 8004DEC4 8E250064 */ lw $a1, 0x64($s1) -/* 292C8 8004DEC8 8E650004 */ lw $a1, 4($s3) -/* 292CC 8004DECC 10A00008 */ beqz $a1, .L8004DEF0 -/* 292D0 8004DED0 0040902D */ daddu $s2, $v0, $zero -/* 292D4 8004DED4 28A22711 */ slti $v0, $a1, 0x2711 -/* 292D8 8004DED8 14400003 */ bnez $v0, .L8004DEE8 -/* 292DC 8004DEDC 28A200FA */ slti $v0, $a1, 0xfa -/* 292E0 8004DEE0 080137BC */ j .L8004DEF0 -/* 292E4 8004DEE4 24052710 */ addiu $a1, $zero, 0x2710 -.L8004DEE8: -/* 292E8 8004DEE8 54400001 */ bnel $v0, $zero, .L8004DEF0 -/* 292EC 8004DEEC 240500FA */ addiu $a1, $zero, 0xfa -.L8004DEF0: -/* 292F0 8004DEF0 8E630008 */ lw $v1, 8($s3) -/* 292F4 8004DEF4 28620080 */ slti $v0, $v1, 0x80 -/* 292F8 8004DEF8 50400001 */ beql $v0, $zero, .L8004DF00 -/* 292FC 8004DEFC 2403007F */ addiu $v1, $zero, 0x7f -.L8004DF00: -/* 29300 8004DF00 10600002 */ beqz $v1, .L8004DF0C -/* 29304 8004DF04 00031200 */ sll $v0, $v1, 8 -/* 29308 8004DF08 344300FF */ ori $v1, $v0, 0xff -.L8004DF0C: -/* 2930C 8004DF0C 8E64000C */ lw $a0, 0xc($s3) -/* 29310 8004DF10 28820080 */ slti $v0, $a0, 0x80 -/* 29314 8004DF14 50400001 */ beql $v0, $zero, .L8004DF1C -/* 29318 8004DF18 2404007F */ addiu $a0, $zero, 0x7f -.L8004DF1C: -/* 2931C 8004DF1C 10800003 */ beqz $a0, .L8004DF2C -/* 29320 8004DF20 00041200 */ sll $v0, $a0, 8 -/* 29324 8004DF24 080137CC */ j .L8004DF30 -/* 29328 8004DF28 344400FF */ ori $a0, $v0, 0xff -.L8004DF2C: -/* 2932C 8004DF2C 24047FFF */ addiu $a0, $zero, 0x7fff -.L8004DF30: -/* 29330 8004DF30 8E020000 */ lw $v0, ($s0) -/* 29334 8004DF34 AC500074 */ sw $s0, 0x74($v0) -/* 29338 8004DF38 8E020000 */ lw $v0, ($s0) -/* 2933C 8004DF3C AC510078 */ sw $s1, 0x78($v0) -/* 29340 8004DF40 8E020000 */ lw $v0, ($s0) -/* 29344 8004DF44 AC54007C */ sw $s4, 0x7c($v0) -/* 29348 8004DF48 8E020000 */ lw $v0, ($s0) -/* 2934C 8004DF4C AC450084 */ sw $a1, 0x84($v0) -/* 29350 8004DF50 8E020000 */ lw $v0, ($s0) -/* 29354 8004DF54 AC430088 */ sw $v1, 0x88($v0) -/* 29358 8004DF58 8E020000 */ lw $v0, ($s0) -/* 2935C 8004DF5C AC44008C */ sw $a0, 0x8c($v0) -/* 29360 8004DF60 8E030000 */ lw $v1, ($s0) -/* 29364 8004DF64 24020001 */ addiu $v0, $zero, 1 -/* 29368 8004DF68 080137EC */ j .L8004DFB0 -/* 2936C 8004DF6C AC620080 */ sw $v0, 0x80($v1) -.L8004DF70: -/* 29370 8004DF70 080137EC */ j .L8004DFB0 -/* 29374 8004DF74 24120004 */ addiu $s2, $zero, 4 -.L8004DF78: -/* 29378 8004DF78 0C0135E5 */ jal snd_get_player_with_song_name -/* 2937C 8004DF7C 0280202D */ daddu $a0, $s4, $zero -/* 29380 8004DF80 0040802D */ daddu $s0, $v0, $zero -/* 29384 8004DF84 1200000B */ beqz $s0, .L8004DFB4 -/* 29388 8004DF88 0240102D */ daddu $v0, $s2, $zero -/* 2938C 8004DF8C 8E02001C */ lw $v0, 0x1c($s0) -/* 29390 8004DF90 16820008 */ bne $s4, $v0, .L8004DFB4 -/* 29394 8004DF94 0240102D */ daddu $v0, $s2, $zero -/* 29398 8004DF98 92020220 */ lbu $v0, 0x220($s0) -/* 2939C 8004DF9C 54400004 */ bnel $v0, $zero, .L8004DFB0 -/* 293A0 8004DFA0 A2000220 */ sb $zero, 0x220($s0) -/* 293A4 8004DFA4 080137ED */ j .L8004DFB4 -/* 293A8 8004DFA8 0240102D */ daddu $v0, $s2, $zero -.L8004DFAC: -/* 293AC 8004DFAC 24120003 */ addiu $s2, $zero, 3 -.L8004DFB0: -/* 293B0 8004DFB0 0240102D */ daddu $v0, $s2, $zero -.L8004DFB4: -/* 293B4 8004DFB4 8FBF0024 */ lw $ra, 0x24($sp) -/* 293B8 8004DFB8 8FB40020 */ lw $s4, 0x20($sp) -/* 293BC 8004DFBC 8FB3001C */ lw $s3, 0x1c($sp) -/* 293C0 8004DFC0 8FB20018 */ lw $s2, 0x18($sp) -/* 293C4 8004DFC4 8FB10014 */ lw $s1, 0x14($sp) -/* 293C8 8004DFC8 8FB00010 */ lw $s0, 0x10($sp) -/* 293CC 8004DFCC 03E00008 */ jr $ra -/* 293D0 8004DFD0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DFD4.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004DFD4.s deleted file mode 100644 index 9563ed9dbe..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004DFD4.s +++ /dev/null @@ -1,83 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004DFD4 -/* 293D4 8004DFD4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 293D8 8004DFD8 AFB3001C */ sw $s3, 0x1c($sp) -/* 293DC 8004DFDC 0080982D */ daddu $s3, $a0, $zero -/* 293E0 8004DFE0 24060A9C */ addiu $a2, $zero, 0xa9c -/* 293E4 8004DFE4 AFBF0024 */ sw $ra, 0x24($sp) -/* 293E8 8004DFE8 AFB40020 */ sw $s4, 0x20($sp) -/* 293EC 8004DFEC AFB20018 */ sw $s2, 0x18($sp) -/* 293F0 8004DFF0 AFB10014 */ sw $s1, 0x14($sp) -/* 293F4 8004DFF4 AFB00010 */ sw $s0, 0x10($sp) -/* 293F8 8004DFF8 8E710074 */ lw $s1, 0x74($s3) -/* 293FC 8004DFFC 8E640078 */ lw $a0, 0x78($s3) -/* 29400 8004E000 0C0153DD */ jal snd_copy_words -/* 29404 8004E004 0220282D */ daddu $a1, $s1, $zero -/* 29408 8004E008 8E63007C */ lw $v1, 0x7c($s3) -/* 2940C 8004E00C 8E22001C */ lw $v0, 0x1c($s1) -/* 29410 8004E010 54620030 */ bnel $v1, $v0, .L8004E0D4 -/* 29414 8004E014 AE600080 */ sw $zero, 0x80($s3) -/* 29418 8004E018 0000302D */ daddu $a2, $zero, $zero -/* 2941C 8004E01C 2405025C */ addiu $a1, $zero, 0x25c -.L8004E020: -/* 29420 8004E020 02259021 */ addu $s2, $s1, $a1 -/* 29424 8004E024 8E420000 */ lw $v0, ($s2) -/* 29428 8004E028 50400011 */ beql $v0, $zero, .L8004E070 -/* 2942C 8004E02C 24C60001 */ addiu $a2, $a2, 1 -/* 29430 8004E030 92430052 */ lbu $v1, 0x52($s2) -/* 29434 8004E034 92420053 */ lbu $v0, 0x53($s2) -/* 29438 8004E038 0062102B */ sltu $v0, $v1, $v0 -/* 2943C 8004E03C 1040000B */ beqz $v0, .L8004E06C -/* 29440 8004E040 00031040 */ sll $v0, $v1, 1 -/* 29444 8004E044 00431021 */ addu $v0, $v0, $v1 -/* 29448 8004E048 000210C0 */ sll $v0, $v0, 3 -/* 2944C 8004E04C 2444085C */ addiu $a0, $v0, 0x85c -.L8004E050: -/* 29450 8004E050 02241021 */ addu $v0, $s1, $a0 -/* 29454 8004E054 AC40000C */ sw $zero, 0xc($v0) -/* 29458 8004E058 92420053 */ lbu $v0, 0x53($s2) -/* 2945C 8004E05C 24630001 */ addiu $v1, $v1, 1 -/* 29460 8004E060 0062102B */ sltu $v0, $v1, $v0 -/* 29464 8004E064 1440FFFA */ bnez $v0, .L8004E050 -/* 29468 8004E068 24840018 */ addiu $a0, $a0, 0x18 -.L8004E06C: -/* 2946C 8004E06C 24C60001 */ addiu $a2, $a2, 1 -.L8004E070: -/* 29470 8004E070 2CC20010 */ sltiu $v0, $a2, 0x10 -/* 29474 8004E074 1440FFEA */ bnez $v0, .L8004E020 -/* 29478 8004E078 24A50060 */ addiu $a1, $a1, 0x60 -/* 2947C 8004E07C 0000802D */ daddu $s0, $zero, $zero -/* 29480 8004E080 241400FF */ addiu $s4, $zero, 0xff -/* 29484 8004E084 02301821 */ addu $v1, $s1, $s0 -.L8004E088: -/* 29488 8004E088 9062004C */ lbu $v0, 0x4c($v1) -/* 2948C 8004E08C 50540008 */ beql $v0, $s4, .L8004E0B0 -/* 29490 8004E090 26100001 */ addiu $s0, $s0, 1 -/* 29494 8004E094 0220202D */ daddu $a0, $s1, $zero -/* 29498 8004E098 A22200D4 */ sb $v0, 0xd4($s1) -/* 2949C 8004E09C 90620224 */ lbu $v0, 0x224($v1) -/* 294A0 8004E0A0 0240282D */ daddu $a1, $s2, $zero -/* 294A4 8004E0A4 0C013F4E */ jal snd_BGMCmd_E6_MasterEffect -/* 294A8 8004E0A8 A22200D5 */ sb $v0, 0xd5($s1) -/* 294AC 8004E0AC 26100001 */ addiu $s0, $s0, 1 -.L8004E0B0: -/* 294B0 8004E0B0 2A020004 */ slti $v0, $s0, 4 -/* 294B4 8004E0B4 1440FFF4 */ bnez $v0, .L8004E088 -/* 294B8 8004E0B8 02301821 */ addu $v1, $s1, $s0 -/* 294BC 8004E0BC 8E650084 */ lw $a1, 0x84($s3) -/* 294C0 8004E0C0 8E660088 */ lw $a2, 0x88($s3) -/* 294C4 8004E0C4 8E67008C */ lw $a3, 0x8c($s3) -/* 294C8 8004E0C8 0C014E5D */ jal snd_initialize_bgm_fade -/* 294CC 8004E0CC 2624002C */ addiu $a0, $s1, 0x2c -/* 294D0 8004E0D0 AE600080 */ sw $zero, 0x80($s3) -.L8004E0D4: -/* 294D4 8004E0D4 8FBF0024 */ lw $ra, 0x24($sp) -/* 294D8 8004E0D8 8FB40020 */ lw $s4, 0x20($sp) -/* 294DC 8004E0DC 8FB3001C */ lw $s3, 0x1c($sp) -/* 294E0 8004E0E0 8FB20018 */ lw $s2, 0x18($sp) -/* 294E4 8004E0E4 8FB10014 */ lw $s1, 0x14($sp) -/* 294E8 8004E0E8 8FB00010 */ lw $s0, 0x10($sp) -/* 294EC 8004E0EC 03E00008 */ jr $ra -/* 294F0 8004E0F0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E344.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004E344.s deleted file mode 100644 index 39f3e6b4bf..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E344.s +++ /dev/null @@ -1,32 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004E344 -/* 29744 8004E344 0000182D */ daddu $v1, $zero, $zero -.L8004E348: -/* 29748 8004E348 90A60000 */ lbu $a2, ($a1) -/* 2974C 8004E34C 00061600 */ sll $v0, $a2, 0x18 -/* 29750 8004E350 04400007 */ bltz $v0, .L8004E370 -/* 29754 8004E354 24A50001 */ addiu $a1, $a1, 1 -/* 29758 8004E358 00831021 */ addu $v0, $a0, $v1 -/* 2975C 8004E35C A046004C */ sb $a2, 0x4c($v0) -/* 29760 8004E360 24630001 */ addiu $v1, $v1, 1 -/* 29764 8004E364 28620004 */ slti $v0, $v1, 4 -/* 29768 8004E368 1440FFF7 */ bnez $v0, .L8004E348 -/* 2976C 8004E36C 00000000 */ nop -.L8004E370: -/* 29770 8004E370 24020004 */ addiu $v0, $zero, 4 -/* 29774 8004E374 00432823 */ subu $a1, $v0, $v1 -/* 29778 8004E378 18A00008 */ blez $a1, .L8004E39C -/* 2977C 8004E37C 24A5FFFF */ addiu $a1, $a1, -1 -/* 29780 8004E380 240600FF */ addiu $a2, $zero, 0xff -.L8004E384: -/* 29784 8004E384 00831021 */ addu $v0, $a0, $v1 -/* 29788 8004E388 A046004C */ sb $a2, 0x4c($v0) -/* 2978C 8004E38C 24630001 */ addiu $v1, $v1, 1 -/* 29790 8004E390 00A0102D */ daddu $v0, $a1, $zero -/* 29794 8004E394 1440FFFB */ bnez $v0, .L8004E384 -/* 29798 8004E398 24A5FFFF */ addiu $a1, $a1, -1 -.L8004E39C: -/* 2979C 8004E39C 03E00008 */ jr $ra -/* 297A0 8004E3A0 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E4B8.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004E4B8.s deleted file mode 100644 index b837ff508f..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E4B8.s +++ /dev/null @@ -1,87 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_800988C0 -.word 0x8004E5A8, 0x8004E54C, 0x8004E574, 0x8004E584, 0x8004E594, 0x00000000 - -.section .text - -glabel func_8004E4B8 -/* 298B8 8004E4B8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 298BC 8004E4BC AFB00010 */ sw $s0, 0x10($sp) -/* 298C0 8004E4C0 0080802D */ daddu $s0, $a0, $zero -/* 298C4 8004E4C4 AFB10014 */ sw $s1, 0x14($sp) -/* 298C8 8004E4C8 24110001 */ addiu $s1, $zero, 1 -/* 298CC 8004E4CC AFB20018 */ sw $s2, 0x18($sp) -/* 298D0 8004E4D0 0000902D */ daddu $s2, $zero, $zero -/* 298D4 8004E4D4 AFB40020 */ sw $s4, 0x20($sp) -/* 298D8 8004E4D8 3C14800A */ lui $s4, %hi(D_800988C0) -/* 298DC 8004E4DC 269488C0 */ addiu $s4, $s4, %lo(D_800988C0) -/* 298E0 8004E4E0 AFB3001C */ sw $s3, 0x1c($sp) -/* 298E4 8004E4E4 24130001 */ addiu $s3, $zero, 1 -/* 298E8 8004E4E8 AFBF0024 */ sw $ra, 0x24($sp) -/* 298EC 8004E4EC 96020052 */ lhu $v0, 0x52($s0) -/* 298F0 8004E4F0 9603001A */ lhu $v1, 0x1a($s0) -/* 298F4 8004E4F4 8E040018 */ lw $a0, 0x18($s0) -/* 298F8 8004E4F8 00431021 */ addu $v0, $v0, $v1 -/* 298FC 8004E4FC 96030016 */ lhu $v1, 0x16($s0) -/* 29900 8004E500 00042100 */ sll $a0, $a0, 4 -/* 29904 8004E504 00431021 */ addu $v0, $v0, $v1 -/* 29908 8004E508 96030056 */ lhu $v1, 0x56($s0) -/* 2990C 8004E50C 3084FFFF */ andi $a0, $a0, 0xffff -/* 29910 8004E510 AE020050 */ sw $v0, 0x50($s0) -/* 29914 8004E514 8E020014 */ lw $v0, 0x14($s0) -/* 29918 8004E518 00641821 */ addu $v1, $v1, $a0 -/* 2991C 8004E51C 00021103 */ sra $v0, $v0, 4 -/* 29920 8004E520 3042FFFF */ andi $v0, $v0, 0xffff -/* 29924 8004E524 00621821 */ addu $v1, $v1, $v0 -/* 29928 8004E528 AE030054 */ sw $v1, 0x54($s0) -.L8004E52C: -/* 2992C 8004E52C 92030221 */ lbu $v1, 0x221($s0) -/* 29930 8004E530 2C620005 */ sltiu $v0, $v1, 5 -/* 29934 8004E534 1040001B */ beqz $v0, .L8004E5A4 -/* 29938 8004E538 00031080 */ sll $v0, $v1, 2 -/* 2993C 8004E53C 00541021 */ addu $v0, $v0, $s4 -/* 29940 8004E540 8C420000 */ lw $v0, ($v0) -/* 29944 8004E544 00400008 */ jr $v0 -/* 29948 8004E548 00000000 */ nop -/* 2994C 8004E54C 92020220 */ lbu $v0, 0x220($s0) -/* 29950 8004E550 54400016 */ bnel $v0, $zero, .L8004E5AC -/* 29954 8004E554 0000882D */ daddu $s1, $zero, $zero -/* 29958 8004E558 0C013B1A */ jal func_8004EC68 -/* 2995C 8004E55C 0200202D */ daddu $a0, $s0, $zero -/* 29960 8004E560 92020221 */ lbu $v0, 0x221($s0) -/* 29964 8004E564 14530012 */ bne $v0, $s3, .L8004E5B0 -/* 29968 8004E568 3222FFFF */ andi $v0, $s1, 0xffff -/* 2996C 8004E56C 0801396B */ j .L8004E5AC -/* 29970 8004E570 0000882D */ daddu $s1, $zero, $zero -/* 29974 8004E574 0C013A41 */ jal func_8004E904 -/* 29978 8004E578 0200202D */ daddu $a0, $s0, $zero -/* 2997C 8004E57C 0801396C */ j .L8004E5B0 -/* 29980 8004E580 3222FFFF */ andi $v0, $s1, 0xffff -/* 29984 8004E584 0C013976 */ jal snd_initialize_bgm_player -/* 29988 8004E588 0200202D */ daddu $a0, $s0, $zero -/* 2998C 8004E58C 0801396B */ j .L8004E5AC -/* 29990 8004E590 0000882D */ daddu $s1, $zero, $zero -/* 29994 8004E594 0C013B01 */ jal func_8004EC04 -/* 29998 8004E598 0200202D */ daddu $a0, $s0, $zero -/* 2999C 8004E59C 0801396C */ j .L8004E5B0 -/* 299A0 8004E5A0 3222FFFF */ andi $v0, $s1, 0xffff -.L8004E5A4: -/* 299A4 8004E5A4 24120001 */ addiu $s2, $zero, 1 -/* 299A8 8004E5A8 0000882D */ daddu $s1, $zero, $zero -.L8004E5AC: -/* 299AC 8004E5AC 3222FFFF */ andi $v0, $s1, 0xffff -.L8004E5B0: -/* 299B0 8004E5B0 1440FFDE */ bnez $v0, .L8004E52C -/* 299B4 8004E5B4 0240102D */ daddu $v0, $s2, $zero -/* 299B8 8004E5B8 8FBF0024 */ lw $ra, 0x24($sp) -/* 299BC 8004E5BC 8FB40020 */ lw $s4, 0x20($sp) -/* 299C0 8004E5C0 8FB3001C */ lw $s3, 0x1c($sp) -/* 299C4 8004E5C4 8FB20018 */ lw $s2, 0x18($sp) -/* 299C8 8004E5C8 8FB10014 */ lw $s1, 0x14($sp) -/* 299CC 8004E5CC 8FB00010 */ lw $s0, 0x10($sp) -/* 299D0 8004E5D0 03E00008 */ jr $ra -/* 299D4 8004E5D4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E844.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004E844.s deleted file mode 100644 index 22e666b09b..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E844.s +++ /dev/null @@ -1,20 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004E844 -/* 29C44 8004E844 000510C0 */ sll $v0, $a1, 3 -/* 29C48 8004E848 00451021 */ addu $v0, $v0, $a1 -/* 29C4C 8004E84C 00021040 */ sll $v0, $v0, 1 -/* 29C50 8004E850 24420174 */ addiu $v0, $v0, 0x174 -/* 29C54 8004E854 00821821 */ addu $v1, $a0, $v0 -/* 29C58 8004E858 00852021 */ addu $a0, $a0, $a1 -/* 29C5C 8004E85C A0800212 */ sb $zero, 0x212($a0) -/* 29C60 8004E860 3404FF00 */ ori $a0, $zero, 0xff00 -/* 29C64 8004E864 24020008 */ addiu $v0, $zero, 8 -.L8004E868: -/* 29C68 8004E868 A4640000 */ sh $a0, ($v1) -/* 29C6C 8004E86C 2442FFFF */ addiu $v0, $v0, -1 -/* 29C70 8004E870 0441FFFD */ bgez $v0, .L8004E868 -/* 29C74 8004E874 24630002 */ addiu $v1, $v1, 2 -/* 29C78 8004E878 03E00008 */ jr $ra -/* 29C7C 8004E87C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E880.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004E880.s deleted file mode 100644 index 17d020e387..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E880.s +++ /dev/null @@ -1,42 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004E880 -/* 29C80 8004E880 3C02009F */ lui $v0, 0x9f -/* 29C84 8004E884 344238DE */ ori $v0, $v0, 0x38de -/* 29C88 8004E888 14C00002 */ bnez $a2, .L8004E894 -/* 29C8C 8004E88C 0046001B */ divu $zero, $v0, $a2 -/* 29C90 8004E890 0007000D */ break 7 -.L8004E894: -/* 29C94 8004E894 00001812 */ mflo $v1 -/* 29C98 8004E898 3C020007 */ lui $v0, 7 -/* 29C9C 8004E89C 3442A120 */ ori $v0, $v0, 0xa120 -/* 29CA0 8004E8A0 0043102B */ sltu $v0, $v0, $v1 -/* 29CA4 8004E8A4 10400004 */ beqz $v0, .L8004E8B8 -/* 29CA8 8004E8A8 3C020001 */ lui $v0, 1 -/* 29CAC 8004E8AC 3C030007 */ lui $v1, 7 -/* 29CB0 8004E8B0 08013A34 */ j .L8004E8D0 -/* 29CB4 8004E8B4 3463A120 */ ori $v1, $v1, 0xa120 -.L8004E8B8: -/* 29CB8 8004E8B8 3442387F */ ori $v0, $v0, 0x387f -/* 29CBC 8004E8BC 0043102B */ sltu $v0, $v0, $v1 -/* 29CC0 8004E8C0 14400004 */ bnez $v0, .L8004E8D4 -/* 29CC4 8004E8C4 0065102B */ sltu $v0, $v1, $a1 -/* 29CC8 8004E8C8 3C030001 */ lui $v1, 1 -/* 29CCC 8004E8CC 34633880 */ ori $v1, $v1, 0x3880 -.L8004E8D0: -/* 29CD0 8004E8D0 0065102B */ sltu $v0, $v1, $a1 -.L8004E8D4: -/* 29CD4 8004E8D4 54400001 */ bnel $v0, $zero, .L8004E8DC -/* 29CD8 8004E8D8 0060282D */ daddu $a1, $v1, $zero -.L8004E8DC: -/* 29CDC 8004E8DC 3C021062 */ lui $v0, 0x1062 -/* 29CE0 8004E8E0 34424DD3 */ ori $v0, $v0, 0x4dd3 -/* 29CE4 8004E8E4 00620019 */ multu $v1, $v0 -/* 29CE8 8004E8E8 AC850008 */ sw $a1, 8($a0) -/* 29CEC 8004E8EC AC83000C */ sw $v1, 0xc($a0) -/* 29CF0 8004E8F0 AC830010 */ sw $v1, 0x10($a0) -/* 29CF4 8004E8F4 00003810 */ mfhi $a3 -/* 29CF8 8004E8F8 00071182 */ srl $v0, $a3, 6 -/* 29CFC 8004E8FC 03E00008 */ jr $ra -/* 29D00 8004E900 A482020A */ sh $v0, 0x20a($a0) diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E904.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004E904.s deleted file mode 100644 index 003e1b38d6..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E904.s +++ /dev/null @@ -1,91 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004E904 -/* 29D04 8004E904 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 29D08 8004E908 AFB00010 */ sw $s0, 0x10($sp) -/* 29D0C 8004E90C 0080802D */ daddu $s0, $a0, $zero -/* 29D10 8004E910 AFB10014 */ sw $s1, 0x14($sp) -/* 29D14 8004E914 24110001 */ addiu $s1, $zero, 1 -/* 29D18 8004E918 AFB40020 */ sw $s4, 0x20($sp) -/* 29D1C 8004E91C 24140004 */ addiu $s4, $zero, 4 -/* 29D20 8004E920 AFB3001C */ sw $s3, 0x1c($sp) -/* 29D24 8004E924 3C130004 */ lui $s3, 4 -/* 29D28 8004E928 AFB20018 */ sw $s2, 0x18($sp) -/* 29D2C 8004E92C 3C120006 */ lui $s2, 6 -/* 29D30 8004E930 AFBF0024 */ sw $ra, 0x24($sp) -/* 29D34 8004E934 AE0000B4 */ sw $zero, 0xb4($s0) -/* 29D38 8004E938 AE0000BC */ sw $zero, 0xbc($s0) -.L8004E93C: -/* 29D3C 8004E93C 8E020068 */ lw $v0, 0x68($s0) -/* 29D40 8004E940 8C450000 */ lw $a1, ($v0) -/* 29D44 8004E944 24420004 */ addiu $v0, $v0, 4 -/* 29D48 8004E948 14A00003 */ bnez $a1, .L8004E958 -/* 29D4C 8004E94C AE020068 */ sw $v0, 0x68($s0) -/* 29D50 8004E950 08013A81 */ j .L8004EA04 -/* 29D54 8004E954 A2140221 */ sb $s4, 0x221($s0) -.L8004E958: -/* 29D58 8004E958 00051B02 */ srl $v1, $a1, 0xc -/* 29D5C 8004E95C 10730029 */ beq $v1, $s3, .L8004EA04 -/* 29D60 8004E960 0263102B */ sltu $v0, $s3, $v1 -/* 29D64 8004E964 14400007 */ bnez $v0, .L8004E984 -/* 29D68 8004E968 3C020001 */ lui $v0, 1 -/* 29D6C 8004E96C 10620012 */ beq $v1, $v0, .L8004E9B8 -/* 29D70 8004E970 3C020003 */ lui $v0, 3 -/* 29D74 8004E974 10620025 */ beq $v1, $v0, .L8004EA0C -/* 29D78 8004E978 3222FFFF */ andi $v0, $s1, 0xffff -/* 29D7C 8004E97C 08013A82 */ j .L8004EA08 -/* 29D80 8004E980 0000882D */ daddu $s1, $zero, $zero -.L8004E984: -/* 29D84 8004E984 10720011 */ beq $v1, $s2, .L8004E9CC -/* 29D88 8004E988 0243102B */ sltu $v0, $s2, $v1 -/* 29D8C 8004E98C 14400006 */ bnez $v0, .L8004E9A8 -/* 29D90 8004E990 3C020007 */ lui $v0, 7 -/* 29D94 8004E994 3C020005 */ lui $v0, 5 -/* 29D98 8004E998 10620016 */ beq $v1, $v0, .L8004E9F4 -/* 29D9C 8004E99C 00000000 */ nop -/* 29DA0 8004E9A0 08013A82 */ j .L8004EA08 -/* 29DA4 8004E9A4 0000882D */ daddu $s1, $zero, $zero -.L8004E9A8: -/* 29DA8 8004E9A8 1062000E */ beq $v1, $v0, .L8004E9E4 -/* 29DAC 8004E9AC 00000000 */ nop -/* 29DB0 8004E9B0 08013A82 */ j .L8004EA08 -/* 29DB4 8004E9B4 0000882D */ daddu $s1, $zero, $zero -.L8004E9B8: -/* 29DB8 8004E9B8 0C013AB5 */ jal func_8004EAD4 -/* 29DBC 8004E9BC 0200202D */ daddu $a0, $s0, $zero -/* 29DC0 8004E9C0 24020001 */ addiu $v0, $zero, 1 -/* 29DC4 8004E9C4 08013A81 */ j .L8004EA04 -/* 29DC8 8004E9C8 A2020221 */ sb $v0, 0x221($s0) -.L8004E9CC: -/* 29DCC 8004E9CC 92020223 */ lbu $v0, 0x223($s0) -/* 29DD0 8004E9D0 30420001 */ andi $v0, $v0, 1 -/* 29DD4 8004E9D4 1440000D */ bnez $v0, .L8004EA0C -/* 29DD8 8004E9D8 3222FFFF */ andi $v0, $s1, 0xffff -/* 29DDC 8004E9DC 08013A7D */ j .L8004E9F4 -/* 29DE0 8004E9E0 00000000 */ nop -.L8004E9E4: -/* 29DE4 8004E9E4 92020223 */ lbu $v0, 0x223($s0) -/* 29DE8 8004E9E8 30420001 */ andi $v0, $v0, 1 -/* 29DEC 8004E9EC 10400007 */ beqz $v0, .L8004EA0C -/* 29DF0 8004E9F0 3222FFFF */ andi $v0, $s1, 0xffff -.L8004E9F4: -/* 29DF4 8004E9F4 0C013A8D */ jal func_8004EA34 -/* 29DF8 8004E9F8 0200202D */ daddu $a0, $s0, $zero -/* 29DFC 8004E9FC 08013A83 */ j .L8004EA0C -/* 29E00 8004EA00 3222FFFF */ andi $v0, $s1, 0xffff -.L8004EA04: -/* 29E04 8004EA04 0000882D */ daddu $s1, $zero, $zero -.L8004EA08: -/* 29E08 8004EA08 3222FFFF */ andi $v0, $s1, 0xffff -.L8004EA0C: -/* 29E0C 8004EA0C 1440FFCB */ bnez $v0, .L8004E93C -/* 29E10 8004EA10 00000000 */ nop -/* 29E14 8004EA14 8FBF0024 */ lw $ra, 0x24($sp) -/* 29E18 8004EA18 8FB40020 */ lw $s4, 0x20($sp) -/* 29E1C 8004EA1C 8FB3001C */ lw $s3, 0x1c($sp) -/* 29E20 8004EA20 8FB20018 */ lw $s2, 0x18($sp) -/* 29E24 8004EA24 8FB10014 */ lw $s1, 0x14($sp) -/* 29E28 8004EA28 8FB00010 */ lw $s0, 0x10($sp) -/* 29E2C 8004EA2C 03E00008 */ jr $ra -/* 29E30 8004EA30 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EA34.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004EA34.s deleted file mode 100644 index c2aeef63b5..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EA34.s +++ /dev/null @@ -1,50 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004EA34 -/* 29E34 8004EA34 30A8001F */ andi $t0, $a1, 0x1f -/* 29E38 8004EA38 90830210 */ lbu $v1, 0x210($a0) -/* 29E3C 8004EA3C 00052942 */ srl $a1, $a1, 5 -/* 29E40 8004EA40 00031080 */ sll $v0, $v1, 2 -/* 29E44 8004EA44 00823021 */ addu $a2, $a0, $v0 -/* 29E48 8004EA48 8CC20158 */ lw $v0, 0x158($a2) -/* 29E4C 8004EA4C 10400017 */ beqz $v0, .L8004EAAC -/* 29E50 8004EA50 30A5007F */ andi $a1, $a1, 0x7f -/* 29E54 8004EA54 8C870068 */ lw $a3, 0x68($a0) -/* 29E58 8004EA58 1447000D */ bne $v0, $a3, .L8004EA90 -/* 29E5C 8004EA5C 2C620004 */ sltiu $v0, $v1, 4 -/* 29E60 8004EA60 00832821 */ addu $a1, $a0, $v1 -/* 29E64 8004EA64 90A20168 */ lbu $v0, 0x168($a1) -/* 29E68 8004EA68 10400014 */ beqz $v0, .L8004EABC -/* 29E6C 8004EA6C 2442FFFF */ addiu $v0, $v0, -1 -/* 29E70 8004EA70 A0A20168 */ sb $v0, 0x168($a1) -/* 29E74 8004EA74 304200FF */ andi $v0, $v0, 0xff -/* 29E78 8004EA78 54400011 */ bnel $v0, $zero, .L8004EAC0 -/* 29E7C 8004EA7C 00081080 */ sll $v0, $t0, 2 -/* 29E80 8004EA80 10600012 */ beqz $v1, .L8004EACC -/* 29E84 8004EA84 ACC00158 */ sw $zero, 0x158($a2) -/* 29E88 8004EA88 08013AB3 */ j .L8004EACC -/* 29E8C 8004EA8C 2463FFFF */ addiu $v1, $v1, -1 -.L8004EA90: -/* 29E90 8004EA90 1040000E */ beqz $v0, .L8004EACC -/* 29E94 8004EA94 00000000 */ nop -/* 29E98 8004EA98 24630001 */ addiu $v1, $v1, 1 -/* 29E9C 8004EA9C 00031080 */ sll $v0, $v1, 2 -/* 29EA0 8004EAA0 00821021 */ addu $v0, $a0, $v0 -/* 29EA4 8004EAA4 08013AAD */ j .L8004EAB4 -/* 29EA8 8004EAA8 AC470158 */ sw $a3, 0x158($v0) -.L8004EAAC: -/* 29EAC 8004EAAC 8C820068 */ lw $v0, 0x68($a0) -/* 29EB0 8004EAB0 ACC20158 */ sw $v0, 0x158($a2) -.L8004EAB4: -/* 29EB4 8004EAB4 00831021 */ addu $v0, $a0, $v1 -/* 29EB8 8004EAB8 A0450168 */ sb $a1, 0x168($v0) -.L8004EABC: -/* 29EBC 8004EABC 00081080 */ sll $v0, $t0, 2 -.L8004EAC0: -/* 29EC0 8004EAC0 00821021 */ addu $v0, $a0, $v0 -/* 29EC4 8004EAC4 8C4200D8 */ lw $v0, 0xd8($v0) -/* 29EC8 8004EAC8 AC820068 */ sw $v0, 0x68($a0) -.L8004EACC: -/* 29ECC 8004EACC 03E00008 */ jr $ra -/* 29ED0 8004EAD0 A0830210 */ sb $v1, 0x210($a0) diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EAD4.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004EAD4.s deleted file mode 100644 index e5913e7fb1..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EAD4.s +++ /dev/null @@ -1,85 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004EAD4 -/* 29ED4 8004EAD4 0000402D */ daddu $t0, $zero, $zero -/* 29ED8 8004EAD8 0100582D */ daddu $t3, $t0, $zero -/* 29EDC 8004EADC 0100482D */ daddu $t1, $t0, $zero -/* 29EE0 8004EAE0 240C0001 */ addiu $t4, $zero, 1 -/* 29EE4 8004EAE4 240A025C */ addiu $t2, $zero, 0x25c -/* 29EE8 8004EAE8 30A5FFFF */ andi $a1, $a1, 0xffff -/* 29EEC 8004EAEC 8C82006C */ lw $v0, 0x6c($a0) -/* 29EF0 8004EAF0 00052880 */ sll $a1, $a1, 2 -/* 29EF4 8004EAF4 00A22821 */ addu $a1, $a1, $v0 -/* 29EF8 8004EAF8 AC850070 */ sw $a1, 0x70($a0) -.L8004EAFC: -/* 29EFC 8004EAFC 8CA30000 */ lw $v1, ($a1) -/* 29F00 8004EB00 24A50004 */ addiu $a1, $a1, 4 -/* 29F04 8004EB04 008A3021 */ addu $a2, $a0, $t2 -/* 29F08 8004EB08 00031402 */ srl $v0, $v1, 0x10 -/* 29F0C 8004EB0C 10400034 */ beqz $v0, .L8004EBE0 -/* 29F10 8004EB10 ACC20000 */ sw $v0, ($a2) -/* 29F14 8004EB14 30620100 */ andi $v0, $v1, 0x100 -/* 29F18 8004EB18 54400031 */ bnel $v0, $zero, .L8004EBE0 -/* 29F1C 8004EB1C ACC00000 */ sw $zero, ($a2) -/* 29F20 8004EB20 3062E000 */ andi $v0, $v1, 0xe000 -/* 29F24 8004EB24 00021342 */ srl $v0, $v0, 0xd -/* 29F28 8004EB28 A0C20054 */ sb $v0, 0x54($a2) -/* 29F2C 8004EB2C 000311C2 */ srl $v0, $v1, 7 -/* 29F30 8004EB30 30420001 */ andi $v0, $v0, 1 -/* 29F34 8004EB34 A0C20058 */ sb $v0, 0x58($a2) -/* 29F38 8004EB38 30621E00 */ andi $v0, $v1, 0x1e00 -/* 29F3C 8004EB3C 00023A42 */ srl $a3, $v0, 9 -/* 29F40 8004EB40 10E0001B */ beqz $a3, .L8004EBB0 -/* 29F44 8004EB44 A0C00059 */ sb $zero, 0x59($a2) -/* 29F48 8004EB48 00071040 */ sll $v0, $a3, 1 -/* 29F4C 8004EB4C 00471021 */ addu $v0, $v0, $a3 -/* 29F50 8004EB50 00021140 */ sll $v0, $v0, 5 -/* 29F54 8004EB54 244201FC */ addiu $v0, $v0, 0x1fc -/* 29F58 8004EB58 00821821 */ addu $v1, $a0, $v0 -/* 29F5C 8004EB5C 24E2FFFF */ addiu $v0, $a3, -1 -/* 29F60 8004EB60 0049102B */ sltu $v0, $v0, $t1 -/* 29F64 8004EB64 5040001E */ beql $v0, $zero, .L8004EBE0 -/* 29F68 8004EB68 ACC00000 */ sw $zero, ($a2) -/* 29F6C 8004EB6C 90620051 */ lbu $v0, 0x51($v1) -/* 29F70 8004EB70 A0C20051 */ sb $v0, 0x51($a2) -/* 29F74 8004EB74 90620052 */ lbu $v0, 0x52($v1) -/* 29F78 8004EB78 A0C20052 */ sb $v0, 0x52($a2) -/* 29F7C 8004EB7C 90620053 */ lbu $v0, 0x53($v1) -/* 29F80 8004EB80 A0C20053 */ sb $v0, 0x53($a2) -/* 29F84 8004EB84 8CC20000 */ lw $v0, ($a2) -/* 29F88 8004EB88 8C830070 */ lw $v1, 0x70($a0) -/* 29F8C 8004EB8C ACCC0028 */ sw $t4, 0x28($a2) -/* 29F90 8004EB90 A0C70059 */ sb $a3, 0x59($a2) -/* 29F94 8004EB94 00431021 */ addu $v0, $v0, $v1 -/* 29F98 8004EB98 ACC20000 */ sw $v0, ($a2) -/* 29F9C 8004EB9C 90820233 */ lbu $v0, 0x233($a0) -/* 29FA0 8004EBA0 54400001 */ bnel $v0, $zero, .L8004EBA8 -/* 29FA4 8004EBA4 A0CC005A */ sb $t4, 0x5a($a2) -.L8004EBA8: -/* 29FA8 8004EBA8 08013AF8 */ j .L8004EBE0 -/* 29FAC 8004EBAC 240B0001 */ addiu $t3, $zero, 1 -.L8004EBB0: -/* 29FB0 8004EBB0 90C20054 */ lbu $v0, 0x54($a2) -/* 29FB4 8004EBB4 00821021 */ addu $v0, $a0, $v0 -/* 29FB8 8004EBB8 9042022A */ lbu $v0, 0x22a($v0) -/* 29FBC 8004EBBC A0C80052 */ sb $t0, 0x52($a2) -/* 29FC0 8004EBC0 01024021 */ addu $t0, $t0, $v0 -/* 29FC4 8004EBC4 A0C20051 */ sb $v0, 0x51($a2) -/* 29FC8 8004EBC8 8CC20000 */ lw $v0, ($a2) -/* 29FCC 8004EBCC A0C80053 */ sb $t0, 0x53($a2) -/* 29FD0 8004EBD0 8C830070 */ lw $v1, 0x70($a0) -/* 29FD4 8004EBD4 ACCC0028 */ sw $t4, 0x28($a2) -/* 29FD8 8004EBD8 00431021 */ addu $v0, $v0, $v1 -/* 29FDC 8004EBDC ACC20000 */ sw $v0, ($a2) -.L8004EBE0: -/* 29FE0 8004EBE0 25290001 */ addiu $t1, $t1, 1 -/* 29FE4 8004EBE4 29220010 */ slti $v0, $t1, 0x10 -/* 29FE8 8004EBE8 1440FFC4 */ bnez $v0, .L8004EAFC -/* 29FEC 8004EBEC 254A0060 */ addiu $t2, $t2, 0x60 -/* 29FF0 8004EBF0 11600002 */ beqz $t3, .L8004EBFC -/* 29FF4 8004EBF4 A088021B */ sb $t0, 0x21b($a0) -/* 29FF8 8004EBF8 A0800233 */ sb $zero, 0x233($a0) -.L8004EBFC: -/* 29FFC 8004EBFC 03E00008 */ jr $ra -/* 2A000 8004EC00 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC04.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC04.s deleted file mode 100644 index 5d596da751..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC04.s +++ /dev/null @@ -1,30 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004EC04 -/* 2A004 8004EC04 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 2A008 8004EC08 AFB00010 */ sw $s0, 0x10($sp) -/* 2A00C 8004EC0C 0080802D */ daddu $s0, $a0, $zero -/* 2A010 8004EC10 2403000F */ addiu $v1, $zero, 0xf -/* 2A014 8004EC14 260205A0 */ addiu $v0, $s0, 0x5a0 -/* 2A018 8004EC18 AFBF0014 */ sw $ra, 0x14($sp) -/* 2A01C 8004EC1C A2000220 */ sb $zero, 0x220($s0) -/* 2A020 8004EC20 AE00001C */ sw $zero, 0x1c($s0) -/* 2A024 8004EC24 AE000020 */ sw $zero, 0x20($s0) -/* 2A028 8004EC28 A6000058 */ sh $zero, 0x58($s0) -/* 2A02C 8004EC2C A600005A */ sh $zero, 0x5a($s0) -.L8004EC30: -/* 2A030 8004EC30 AC40025C */ sw $zero, 0x25c($v0) -/* 2A034 8004EC34 2463FFFF */ addiu $v1, $v1, -1 -/* 2A038 8004EC38 0461FFFD */ bgez $v1, .L8004EC30 -/* 2A03C 8004EC3C 2442FFA0 */ addiu $v0, $v0, -0x60 -/* 2A040 8004EC40 0C014240 */ jal func_80050900 -/* 2A044 8004EC44 0200202D */ daddu $a0, $s0, $zero -/* 2A048 8004EC48 3C020002 */ lui $v0, 2 -/* 2A04C 8004EC4C 3442625A */ ori $v0, $v0, 0x625a -/* 2A050 8004EC50 A2000221 */ sb $zero, 0x221($s0) -/* 2A054 8004EC54 AE020008 */ sw $v0, 8($s0) -/* 2A058 8004EC58 8FBF0014 */ lw $ra, 0x14($sp) -/* 2A05C 8004EC5C 8FB00010 */ lw $s0, 0x10($sp) -/* 2A060 8004EC60 03E00008 */ jr $ra -/* 2A064 8004EC64 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC68.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC68.s deleted file mode 100644 index 0b2dfb64a9..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004EC68.s +++ /dev/null @@ -1,1080 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8004EC68 -/* 2A068 8004EC68 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 2A06C 8004EC6C AFB40040 */ sw $s4, 0x40($sp) -/* 2A070 8004EC70 0080A02D */ daddu $s4, $a0, $zero -/* 2A074 8004EC74 AFBF0054 */ sw $ra, 0x54($sp) -/* 2A078 8004EC78 AFBE0050 */ sw $fp, 0x50($sp) -/* 2A07C 8004EC7C AFB7004C */ sw $s7, 0x4c($sp) -/* 2A080 8004EC80 AFB60048 */ sw $s6, 0x48($sp) -/* 2A084 8004EC84 AFB50044 */ sw $s5, 0x44($sp) -/* 2A088 8004EC88 AFB3003C */ sw $s3, 0x3c($sp) -/* 2A08C 8004EC8C AFB20038 */ sw $s2, 0x38($sp) -/* 2A090 8004EC90 AFB10034 */ sw $s1, 0x34($sp) -/* 2A094 8004EC94 AFB00030 */ sw $s0, 0x30($sp) -/* 2A098 8004EC98 AFA00010 */ sw $zero, 0x10($sp) -/* 2A09C 8004EC9C 8E8200BC */ lw $v0, 0xbc($s4) -/* 2A0A0 8004ECA0 10400011 */ beqz $v0, .L8004ECE8 -/* 2A0A4 8004ECA4 A3A00028 */ sb $zero, 0x28($sp) -/* 2A0A8 8004ECA8 2442FFFF */ addiu $v0, $v0, -1 -/* 2A0AC 8004ECAC 14400005 */ bnez $v0, .L8004ECC4 -/* 2A0B0 8004ECB0 AE8200BC */ sw $v0, 0xbc($s4) -/* 2A0B4 8004ECB4 8E8200B8 */ lw $v0, 0xb8($s4) -/* 2A0B8 8004ECB8 AE8000B8 */ sw $zero, 0xb8($s4) -/* 2A0BC 8004ECBC 08013B34 */ j .L8004ECD0 -/* 2A0C0 8004ECC0 AE8000B4 */ sw $zero, 0xb4($s4) -.L8004ECC4: -/* 2A0C4 8004ECC4 8E8200B0 */ lw $v0, 0xb0($s4) -/* 2A0C8 8004ECC8 8E8300B4 */ lw $v1, 0xb4($s4) -/* 2A0CC 8004ECCC 00431021 */ addu $v0, $v0, $v1 -.L8004ECD0: -/* 2A0D0 8004ECD0 AE8200B0 */ sw $v0, 0xb0($s4) -/* 2A0D4 8004ECD4 8E8300B0 */ lw $v1, 0xb0($s4) -/* 2A0D8 8004ECD8 00031080 */ sll $v0, $v1, 2 -/* 2A0DC 8004ECDC 00431021 */ addu $v0, $v0, $v1 -/* 2A0E0 8004ECE0 00021040 */ sll $v0, $v0, 1 -/* 2A0E4 8004ECE4 AE820008 */ sw $v0, 8($s4) -.L8004ECE8: -/* 2A0E8 8004ECE8 8E8200CC */ lw $v0, 0xcc($s4) -/* 2A0EC 8004ECEC 1040000D */ beqz $v0, .L8004ED24 -/* 2A0F0 8004ECF0 2442FFFF */ addiu $v0, $v0, -1 -/* 2A0F4 8004ECF4 14400005 */ bnez $v0, .L8004ED0C -/* 2A0F8 8004ECF8 AE8200CC */ sw $v0, 0xcc($s4) -/* 2A0FC 8004ECFC 8E8200C8 */ lw $v0, 0xc8($s4) -/* 2A100 8004ED00 AE8000C8 */ sw $zero, 0xc8($s4) -/* 2A104 8004ED04 08013B46 */ j .L8004ED18 -/* 2A108 8004ED08 AE8000C4 */ sw $zero, 0xc4($s4) -.L8004ED0C: -/* 2A10C 8004ED0C 8E8200C0 */ lw $v0, 0xc0($s4) -/* 2A110 8004ED10 8E8300C4 */ lw $v1, 0xc4($s4) -/* 2A114 8004ED14 00431021 */ addu $v0, $v0, $v1 -.L8004ED18: -/* 2A118 8004ED18 AE8200C0 */ sw $v0, 0xc0($s4) -/* 2A11C 8004ED1C 240B0001 */ addiu $t3, $zero, 1 -/* 2A120 8004ED20 AFAB0010 */ sw $t3, 0x10($sp) -.L8004ED24: -/* 2A124 8004ED24 8E820204 */ lw $v0, 0x204($s4) -/* 2A128 8004ED28 1040003B */ beqz $v0, .L8004EE18 -/* 2A12C 8004ED2C A280021A */ sb $zero, 0x21a($s4) -/* 2A130 8004ED30 92820232 */ lbu $v0, 0x232($s4) -/* 2A134 8004ED34 1040001D */ beqz $v0, .L8004EDAC -/* 2A138 8004ED38 2411000F */ addiu $s1, $zero, 0xf -/* 2A13C 8004ED3C 24160030 */ addiu $s6, $zero, 0x30 -.L8004ED40: -/* 2A140 8004ED40 8E820204 */ lw $v0, 0x204($s4) -/* 2A144 8004ED44 90570000 */ lbu $s7, ($v0) -/* 2A148 8004ED48 24420001 */ addiu $v0, $v0, 1 -/* 2A14C 8004ED4C 12E00030 */ beqz $s7, .L8004EE10 -/* 2A150 8004ED50 AE820204 */ sw $v0, 0x204($s4) -/* 2A154 8004ED54 0040182D */ daddu $v1, $v0, $zero -/* 2A158 8004ED58 00171040 */ sll $v0, $s7, 1 -/* 2A15C 8004ED5C 00571021 */ addu $v0, $v0, $s7 -/* 2A160 8004ED60 00021140 */ sll $v0, $v0, 5 -/* 2A164 8004ED64 244201FC */ addiu $v0, $v0, 0x1fc -/* 2A168 8004ED68 02828021 */ addu $s0, $s4, $v0 -/* 2A16C 8004ED6C A69600D4 */ sh $s6, 0xd4($s4) -/* 2A170 8004ED70 90620000 */ lbu $v0, ($v1) -/* 2A174 8004ED74 24630001 */ addiu $v1, $v1, 1 -/* 2A178 8004ED78 AE830204 */ sw $v1, 0x204($s4) -/* 2A17C 8004ED7C A28200D6 */ sb $v0, 0xd6($s4) -/* 2A180 8004ED80 8E020000 */ lw $v0, ($s0) -/* 2A184 8004ED84 10400005 */ beqz $v0, .L8004ED9C -/* 2A188 8004ED88 0220102D */ daddu $v0, $s1, $zero -/* 2A18C 8004ED8C 0280202D */ daddu $a0, $s4, $zero -/* 2A190 8004ED90 0C013FB4 */ jal snd_BGMCmd_F6_TrackVolumeFade -/* 2A194 8004ED94 0200282D */ daddu $a1, $s0, $zero -/* 2A198 8004ED98 0220102D */ daddu $v0, $s1, $zero -.L8004ED9C: -/* 2A19C 8004ED9C 1440FFE8 */ bnez $v0, .L8004ED40 -/* 2A1A0 8004EDA0 2631FFFF */ addiu $s1, $s1, -1 -/* 2A1A4 8004EDA4 08013B85 */ j .L8004EE14 -/* 2A1A8 8004EDA8 AE800204 */ sw $zero, 0x204($s4) -.L8004EDAC: -/* 2A1AC 8004EDAC 24160030 */ addiu $s6, $zero, 0x30 -.L8004EDB0: -/* 2A1B0 8004EDB0 8E820204 */ lw $v0, 0x204($s4) -/* 2A1B4 8004EDB4 90570000 */ lbu $s7, ($v0) -/* 2A1B8 8004EDB8 24420001 */ addiu $v0, $v0, 1 -/* 2A1BC 8004EDBC 12E00014 */ beqz $s7, .L8004EE10 -/* 2A1C0 8004EDC0 AE820204 */ sw $v0, 0x204($s4) -/* 2A1C4 8004EDC4 00171040 */ sll $v0, $s7, 1 -/* 2A1C8 8004EDC8 00571021 */ addu $v0, $v0, $s7 -/* 2A1CC 8004EDCC 00021140 */ sll $v0, $v0, 5 -/* 2A1D0 8004EDD0 244201FC */ addiu $v0, $v0, 0x1fc -/* 2A1D4 8004EDD4 8E830204 */ lw $v1, 0x204($s4) -/* 2A1D8 8004EDD8 02828021 */ addu $s0, $s4, $v0 -/* 2A1DC 8004EDDC A69600D4 */ sh $s6, 0xd4($s4) -/* 2A1E0 8004EDE0 A28000D6 */ sb $zero, 0xd6($s4) -/* 2A1E4 8004EDE4 24630001 */ addiu $v1, $v1, 1 -/* 2A1E8 8004EDE8 AE830204 */ sw $v1, 0x204($s4) -/* 2A1EC 8004EDEC 8E020000 */ lw $v0, ($s0) -/* 2A1F0 8004EDF0 10400005 */ beqz $v0, .L8004EE08 -/* 2A1F4 8004EDF4 0220102D */ daddu $v0, $s1, $zero -/* 2A1F8 8004EDF8 0280202D */ daddu $a0, $s4, $zero -/* 2A1FC 8004EDFC 0C013FB4 */ jal snd_BGMCmd_F6_TrackVolumeFade -/* 2A200 8004EE00 0200282D */ daddu $a1, $s0, $zero -/* 2A204 8004EE04 0220102D */ daddu $v0, $s1, $zero -.L8004EE08: -/* 2A208 8004EE08 1440FFE9 */ bnez $v0, .L8004EDB0 -/* 2A20C 8004EE0C 2631FFFF */ addiu $s1, $s1, -1 -.L8004EE10: -/* 2A210 8004EE10 AE800204 */ sw $zero, 0x204($s4) -.L8004EE14: -/* 2A214 8004EE14 A2800232 */ sb $zero, 0x232($s4) -.L8004EE18: -/* 2A218 8004EE18 0000B82D */ daddu $s7, $zero, $zero -/* 2A21C 8004EE1C 00171040 */ sll $v0, $s7, 1 -.L8004EE20: -/* 2A220 8004EE20 00571021 */ addu $v0, $v0, $s7 -/* 2A224 8004EE24 00021140 */ sll $v0, $v0, 5 -/* 2A228 8004EE28 2442025C */ addiu $v0, $v0, 0x25c -/* 2A22C 8004EE2C 02828021 */ addu $s0, $s4, $v0 -/* 2A230 8004EE30 8E020000 */ lw $v0, ($s0) -/* 2A234 8004EE34 5040034E */ beql $v0, $zero, .L8004FB70 -/* 2A238 8004EE38 26F70001 */ addiu $s7, $s7, 1 -/* 2A23C 8004EE3C AE000040 */ sw $zero, 0x40($s0) -/* 2A240 8004EE40 8FAB0010 */ lw $t3, 0x10($sp) -/* 2A244 8004EE44 15600004 */ bnez $t3, .L8004EE58 -/* 2A248 8004EE48 240B0001 */ addiu $t3, $zero, 1 -/* 2A24C 8004EE4C 8282021A */ lb $v0, 0x21a($s4) -/* 2A250 8004EE50 50400002 */ beql $v0, $zero, .L8004EE5C -/* 2A254 8004EE54 A2000041 */ sb $zero, 0x41($s0) -.L8004EE58: -/* 2A258 8004EE58 A20B0041 */ sb $t3, 0x41($s0) -.L8004EE5C: -/* 2A25C 8004EE5C 8E020024 */ lw $v0, 0x24($s0) -/* 2A260 8004EE60 1040000C */ beqz $v0, .L8004EE94 -/* 2A264 8004EE64 2442FFFF */ addiu $v0, $v0, -1 -/* 2A268 8004EE68 14400004 */ bnez $v0, .L8004EE7C -/* 2A26C 8004EE6C AE020024 */ sw $v0, 0x24($s0) -/* 2A270 8004EE70 8E020020 */ lw $v0, 0x20($s0) -/* 2A274 8004EE74 08013BA3 */ j .L8004EE8C -/* 2A278 8004EE78 AE020018 */ sw $v0, 0x18($s0) -.L8004EE7C: -/* 2A27C 8004EE7C 8E020018 */ lw $v0, 0x18($s0) -/* 2A280 8004EE80 8E03001C */ lw $v1, 0x1c($s0) -/* 2A284 8004EE84 00431021 */ addu $v0, $v0, $v1 -/* 2A288 8004EE88 AE020018 */ sw $v0, 0x18($s0) -.L8004EE8C: -/* 2A28C 8004EE8C 240B0001 */ addiu $t3, $zero, 1 -/* 2A290 8004EE90 A20B0041 */ sb $t3, 0x41($s0) -.L8004EE94: -/* 2A294 8004EE94 86020036 */ lh $v0, 0x36($s0) -/* 2A298 8004EE98 96030036 */ lhu $v1, 0x36($s0) -/* 2A29C 8004EE9C 1040000E */ beqz $v0, .L8004EED8 -/* 2A2A0 8004EEA0 2462FFFF */ addiu $v0, $v1, -1 -/* 2A2A4 8004EEA4 A6020036 */ sh $v0, 0x36($s0) -/* 2A2A8 8004EEA8 00021400 */ sll $v0, $v0, 0x10 -/* 2A2AC 8004EEAC 14400004 */ bnez $v0, .L8004EEC0 -/* 2A2B0 8004EEB0 00000000 */ nop -/* 2A2B4 8004EEB4 86020034 */ lh $v0, 0x34($s0) -/* 2A2B8 8004EEB8 08013BB3 */ j .L8004EECC -/* 2A2BC 8004EEBC 00021400 */ sll $v0, $v0, 0x10 -.L8004EEC0: -/* 2A2C0 8004EEC0 8E02002C */ lw $v0, 0x2c($s0) -/* 2A2C4 8004EEC4 8E030030 */ lw $v1, 0x30($s0) -/* 2A2C8 8004EEC8 00431021 */ addu $v0, $v0, $v1 -.L8004EECC: -/* 2A2CC 8004EECC AE02002C */ sw $v0, 0x2c($s0) -/* 2A2D0 8004EED0 240B0001 */ addiu $t3, $zero, 1 -/* 2A2D4 8004EED4 A20B0041 */ sb $t3, 0x41($s0) -.L8004EED8: -/* 2A2D8 8004EED8 8E020028 */ lw $v0, 0x28($s0) -/* 2A2DC 8004EEDC 2442FFFF */ addiu $v0, $v0, -1 -/* 2A2E0 8004EEE0 1C400250 */ bgtz $v0, .L8004F824 -/* 2A2E4 8004EEE4 AE020028 */ sw $v0, 0x28($s0) -/* 2A2E8 8004EEE8 920B0052 */ lbu $t3, 0x52($s0) -/* 2A2EC 8004EEEC 1440024D */ bnez $v0, .L8004F824 -/* 2A2F0 8004EEF0 A3AB001F */ sb $t3, 0x1f($sp) -.L8004EEF4: -/* 2A2F4 8004EEF4 8E020000 */ lw $v0, ($s0) -/* 2A2F8 8004EEF8 90470000 */ lbu $a3, ($v0) -/* 2A2FC 8004EEFC 24420001 */ addiu $v0, $v0, 1 -/* 2A300 8004EF00 AE020000 */ sw $v0, ($s0) -/* 2A304 8004EF04 8602003E */ lh $v0, 0x3e($s0) -/* 2A308 8004EF08 9603003E */ lhu $v1, 0x3e($s0) -/* 2A30C 8004EF0C 10400007 */ beqz $v0, .L8004EF2C -/* 2A310 8004EF10 2462FFFF */ addiu $v0, $v1, -1 -/* 2A314 8004EF14 A602003E */ sh $v0, 0x3e($s0) -/* 2A318 8004EF18 00021400 */ sll $v0, $v0, 0x10 -/* 2A31C 8004EF1C 14400004 */ bnez $v0, .L8004EF30 -/* 2A320 8004EF20 00071600 */ sll $v0, $a3, 0x18 -/* 2A324 8004EF24 8E020004 */ lw $v0, 4($s0) -/* 2A328 8004EF28 AE020000 */ sw $v0, ($s0) -.L8004EF2C: -/* 2A32C 8004EF2C 00071600 */ sll $v0, $a3, 0x18 -.L8004EF30: -/* 2A330 8004EF30 0440002B */ bltz $v0, .L8004EFE0 -/* 2A334 8004EF34 30E300FF */ andi $v1, $a3, 0xff -/* 2A338 8004EF38 14600009 */ bnez $v1, .L8004EF60 -/* 2A33C 8004EF3C 2C620078 */ sltiu $v0, $v1, 0x78 -/* 2A340 8004EF40 8E020008 */ lw $v0, 8($s0) -/* 2A344 8004EF44 10400004 */ beqz $v0, .L8004EF58 -/* 2A348 8004EF48 240B0001 */ addiu $t3, $zero, 1 -/* 2A34C 8004EF4C AE020000 */ sw $v0, ($s0) -/* 2A350 8004EF50 08013E06 */ j .L8004F818 -/* 2A354 8004EF54 AE000008 */ sw $zero, 8($s0) -.L8004EF58: -/* 2A358 8004EF58 08013E09 */ j .L8004F824 -/* 2A35C 8004EF5C A3AB0028 */ sb $t3, 0x28($sp) -.L8004EF60: -/* 2A360 8004EF60 5440022D */ bnel $v0, $zero, .L8004F818 -/* 2A364 8004EF64 AE030028 */ sw $v1, 0x28($s0) -/* 2A368 8004EF68 8E020000 */ lw $v0, ($s0) -/* 2A36C 8004EF6C 90430000 */ lbu $v1, ($v0) -/* 2A370 8004EF70 24420001 */ addiu $v0, $v0, 1 -/* 2A374 8004EF74 AE020000 */ sw $v0, ($s0) -/* 2A378 8004EF78 30E20007 */ andi $v0, $a3, 7 -/* 2A37C 8004EF7C 00021200 */ sll $v0, $v0, 8 -/* 2A380 8004EF80 00431021 */ addu $v0, $v0, $v1 -/* 2A384 8004EF84 24420078 */ addiu $v0, $v0, 0x78 -/* 2A388 8004EF88 AE020028 */ sw $v0, 0x28($s0) -/* 2A38C 8004EF8C 8602003E */ lh $v0, 0x3e($s0) -/* 2A390 8004EF90 9603003E */ lhu $v1, 0x3e($s0) -/* 2A394 8004EF94 10400220 */ beqz $v0, .L8004F818 -/* 2A398 8004EF98 2462FFFF */ addiu $v0, $v1, -1 -/* 2A39C 8004EF9C A602003E */ sh $v0, 0x3e($s0) -/* 2A3A0 8004EFA0 00021400 */ sll $v0, $v0, 0x10 -/* 2A3A4 8004EFA4 1440021C */ bnez $v0, .L8004F818 -/* 2A3A8 8004EFA8 00000000 */ nop -/* 2A3AC 8004EFAC 8E020004 */ lw $v0, 4($s0) -/* 2A3B0 8004EFB0 08013E06 */ j .L8004F818 -/* 2A3B4 8004EFB4 AE020000 */ sw $v0, ($s0) -.L8004EFB8: -/* 2A3B8 8004EFB8 08013C47 */ j .L8004F11C -/* 2A3BC 8004EFBC 24110001 */ addiu $s1, $zero, 1 -.L8004EFC0: -/* 2A3C0 8004EFC0 0C014E31 */ jal func_800538C4 -/* 2A3C4 8004EFC4 0240202D */ daddu $a0, $s2, $zero -/* 2A3C8 8004EFC8 08013C63 */ j .L8004F18C -/* 2A3CC 8004EFCC 24110001 */ addiu $s1, $zero, 1 -.L8004EFD0: -/* 2A3D0 8004EFD0 0C014E31 */ jal func_800538C4 -/* 2A3D4 8004EFD4 0240202D */ daddu $a0, $s2, $zero -/* 2A3D8 8004EFD8 08013C82 */ j .L8004F208 -/* 2A3DC 8004EFDC 24110001 */ addiu $s1, $zero, 1 -.L8004EFE0: -/* 2A3E0 8004EFE0 2C6200D4 */ sltiu $v0, $v1, 0xd4 -/* 2A3E4 8004EFE4 104001B7 */ beqz $v0, .L8004F6C4 -/* 2A3E8 8004EFE8 00000000 */ nop -/* 2A3EC 8004EFEC 8E020000 */ lw $v0, ($s0) -/* 2A3F0 8004EFF0 905E0000 */ lbu $fp, ($v0) -/* 2A3F4 8004EFF4 24420001 */ addiu $v0, $v0, 1 -/* 2A3F8 8004EFF8 AE020000 */ sw $v0, ($s0) -/* 2A3FC 8004EFFC 30E2007F */ andi $v0, $a3, 0x7f -/* 2A400 8004F000 304200FF */ andi $v0, $v0, 0xff -/* 2A404 8004F004 A7A20026 */ sh $v0, 0x26($sp) -/* 2A408 8004F008 8602003E */ lh $v0, 0x3e($s0) -/* 2A40C 8004F00C 9603003E */ lhu $v1, 0x3e($s0) -/* 2A410 8004F010 10400007 */ beqz $v0, .L8004F030 -/* 2A414 8004F014 2462FFFF */ addiu $v0, $v1, -1 -/* 2A418 8004F018 A602003E */ sh $v0, 0x3e($s0) -/* 2A41C 8004F01C 00021400 */ sll $v0, $v0, 0x10 -/* 2A420 8004F020 14400003 */ bnez $v0, .L8004F030 -/* 2A424 8004F024 00000000 */ nop -/* 2A428 8004F028 8E020004 */ lw $v0, 4($s0) -/* 2A42C 8004F02C AE020000 */ sw $v0, ($s0) -.L8004F030: -/* 2A430 8004F030 8E020000 */ lw $v0, ($s0) -/* 2A434 8004F034 90560000 */ lbu $s6, ($v0) -/* 2A438 8004F038 24420001 */ addiu $v0, $v0, 1 -/* 2A43C 8004F03C AE020000 */ sw $v0, ($s0) -/* 2A440 8004F040 8602003E */ lh $v0, 0x3e($s0) -/* 2A444 8004F044 9603003E */ lhu $v1, 0x3e($s0) -/* 2A448 8004F048 10400007 */ beqz $v0, .L8004F068 -/* 2A44C 8004F04C 2462FFFF */ addiu $v0, $v1, -1 -/* 2A450 8004F050 A602003E */ sh $v0, 0x3e($s0) -/* 2A454 8004F054 00021400 */ sll $v0, $v0, 0x10 -/* 2A458 8004F058 14400004 */ bnez $v0, .L8004F06C -/* 2A45C 8004F05C 2AC200C0 */ slti $v0, $s6, 0xc0 -/* 2A460 8004F060 8E020004 */ lw $v0, 4($s0) -/* 2A464 8004F064 AE020000 */ sw $v0, ($s0) -.L8004F068: -/* 2A468 8004F068 2AC200C0 */ slti $v0, $s6, 0xc0 -.L8004F06C: -/* 2A46C 8004F06C 14400013 */ bnez $v0, .L8004F0BC -/* 2A470 8004F070 00000000 */ nop -/* 2A474 8004F074 8E020000 */ lw $v0, ($s0) -/* 2A478 8004F078 90430000 */ lbu $v1, ($v0) -/* 2A47C 8004F07C 24420001 */ addiu $v0, $v0, 1 -/* 2A480 8004F080 AE020000 */ sw $v0, ($s0) -/* 2A484 8004F084 32C2003F */ andi $v0, $s6, 0x3f -/* 2A488 8004F088 00021200 */ sll $v0, $v0, 8 -/* 2A48C 8004F08C 00431021 */ addu $v0, $v0, $v1 -/* 2A490 8004F090 245600C0 */ addiu $s6, $v0, 0xc0 -/* 2A494 8004F094 8602003E */ lh $v0, 0x3e($s0) -/* 2A498 8004F098 9603003E */ lhu $v1, 0x3e($s0) -/* 2A49C 8004F09C 10400007 */ beqz $v0, .L8004F0BC -/* 2A4A0 8004F0A0 2462FFFF */ addiu $v0, $v1, -1 -/* 2A4A4 8004F0A4 A602003E */ sh $v0, 0x3e($s0) -/* 2A4A8 8004F0A8 00021400 */ sll $v0, $v0, 0x10 -/* 2A4AC 8004F0AC 14400003 */ bnez $v0, .L8004F0BC -/* 2A4B0 8004F0B0 00000000 */ nop -/* 2A4B4 8004F0B4 8E020004 */ lw $v0, 4($s0) -/* 2A4B8 8004F0B8 AE020000 */ sw $v0, ($s0) -.L8004F0BC: -/* 2A4BC 8004F0BC 9202005A */ lbu $v0, 0x5a($s0) -/* 2A4C0 8004F0C0 14400097 */ bnez $v0, .L8004F320 -/* 2A4C4 8004F0C4 0000882D */ daddu $s1, $zero, $zero -/* 2A4C8 8004F0C8 93B5001F */ lbu $s5, 0x1f($sp) -/* 2A4CC 8004F0CC 92040053 */ lbu $a0, 0x53($s0) -/* 2A4D0 8004F0D0 32A300FF */ andi $v1, $s5, 0xff -/* 2A4D4 8004F0D4 0064102B */ sltu $v0, $v1, $a0 -/* 2A4D8 8004F0D8 10400010 */ beqz $v0, .L8004F11C -/* 2A4DC 8004F0DC 000310C0 */ sll $v0, $v1, 3 -/* 2A4E0 8004F0E0 8E850000 */ lw $a1, ($s4) -.L8004F0E4: -/* 2A4E4 8004F0E4 00431021 */ addu $v0, $v0, $v1 -/* 2A4E8 8004F0E8 000210C0 */ sll $v0, $v0, 3 -/* 2A4EC 8004F0EC 24421320 */ addiu $v0, $v0, 0x1320 -/* 2A4F0 8004F0F0 00A29021 */ addu $s2, $a1, $v0 -/* 2A4F4 8004F0F4 93AB001F */ lbu $t3, 0x1f($sp) -/* 2A4F8 8004F0F8 92420045 */ lbu $v0, 0x45($s2) -/* 2A4FC 8004F0FC 256B0001 */ addiu $t3, $t3, 1 -/* 2A500 8004F100 1040FFAD */ beqz $v0, .L8004EFB8 -/* 2A504 8004F104 A3AB001F */ sb $t3, 0x1f($sp) -/* 2A508 8004F108 26B50001 */ addiu $s5, $s5, 1 -/* 2A50C 8004F10C 32A300FF */ andi $v1, $s5, 0xff -/* 2A510 8004F110 0064102B */ sltu $v0, $v1, $a0 -/* 2A514 8004F114 1440FFF3 */ bnez $v0, .L8004F0E4 -/* 2A518 8004F118 000310C0 */ sll $v0, $v1, 3 -.L8004F11C: -/* 2A51C 8004F11C 16200082 */ bnez $s1, .L8004F328 -/* 2A520 8004F120 32A200FF */ andi $v0, $s5, 0xff -/* 2A524 8004F124 92020054 */ lbu $v0, 0x54($s0) -/* 2A528 8004F128 2C420005 */ sltiu $v0, $v0, 5 -/* 2A52C 8004F12C 14400066 */ bnez $v0, .L8004F2C8 -/* 2A530 8004F130 00000000 */ nop -/* 2A534 8004F134 92150052 */ lbu $s5, 0x52($s0) -/* 2A538 8004F138 92030053 */ lbu $v1, 0x53($s0) -/* 2A53C 8004F13C 32A500FF */ andi $a1, $s5, 0xff -/* 2A540 8004F140 00A3102B */ sltu $v0, $a1, $v1 -/* 2A544 8004F144 10400011 */ beqz $v0, .L8004F18C -/* 2A548 8004F148 000510C0 */ sll $v0, $a1, 3 -/* 2A54C 8004F14C 0060302D */ daddu $a2, $v1, $zero -/* 2A550 8004F150 8E840000 */ lw $a0, ($s4) -/* 2A554 8004F154 92830234 */ lbu $v1, 0x234($s4) -.L8004F158: -/* 2A558 8004F158 00451021 */ addu $v0, $v0, $a1 -/* 2A55C 8004F15C 000210C0 */ sll $v0, $v0, 3 -/* 2A560 8004F160 24421320 */ addiu $v0, $v0, 0x1320 -/* 2A564 8004F164 00829021 */ addu $s2, $a0, $v0 -/* 2A568 8004F168 92420045 */ lbu $v0, 0x45($s2) -/* 2A56C 8004F16C 0043102B */ sltu $v0, $v0, $v1 -/* 2A570 8004F170 1440FF93 */ bnez $v0, .L8004EFC0 -/* 2A574 8004F174 00000000 */ nop -/* 2A578 8004F178 26B50001 */ addiu $s5, $s5, 1 -/* 2A57C 8004F17C 32A500FF */ andi $a1, $s5, 0xff -/* 2A580 8004F180 00A6102B */ sltu $v0, $a1, $a2 -/* 2A584 8004F184 1440FFF4 */ bnez $v0, .L8004F158 -/* 2A588 8004F188 000510C0 */ sll $v0, $a1, 3 -.L8004F18C: -/* 2A58C 8004F18C 16200066 */ bnez $s1, .L8004F328 -/* 2A590 8004F190 32A200FF */ andi $v0, $s5, 0xff -/* 2A594 8004F194 92150052 */ lbu $s5, 0x52($s0) -/* 2A598 8004F198 92030053 */ lbu $v1, 0x53($s0) -/* 2A59C 8004F19C 32A500FF */ andi $a1, $s5, 0xff -/* 2A5A0 8004F1A0 00A3102B */ sltu $v0, $a1, $v1 -/* 2A5A4 8004F1A4 10400018 */ beqz $v0, .L8004F208 -/* 2A5A8 8004F1A8 000510C0 */ sll $v0, $a1, 3 -/* 2A5AC 8004F1AC 0060302D */ daddu $a2, $v1, $zero -/* 2A5B0 8004F1B0 8E840000 */ lw $a0, ($s4) -/* 2A5B4 8004F1B4 92830234 */ lbu $v1, 0x234($s4) -.L8004F1B8: -/* 2A5B8 8004F1B8 00451021 */ addu $v0, $v0, $a1 -/* 2A5BC 8004F1BC 000210C0 */ sll $v0, $v0, 3 -/* 2A5C0 8004F1C0 24421320 */ addiu $v0, $v0, 0x1320 -/* 2A5C4 8004F1C4 00829021 */ addu $s2, $a0, $v0 -/* 2A5C8 8004F1C8 92420045 */ lbu $v0, 0x45($s2) -/* 2A5CC 8004F1CC 5443000A */ bnel $v0, $v1, .L8004F1F8 -/* 2A5D0 8004F1D0 26B50001 */ addiu $s5, $s5, 1 -/* 2A5D4 8004F1D4 00051040 */ sll $v0, $a1, 1 -/* 2A5D8 8004F1D8 00451021 */ addu $v0, $v0, $a1 -/* 2A5DC 8004F1DC 000210C0 */ sll $v0, $v0, 3 -/* 2A5E0 8004F1E0 2442085C */ addiu $v0, $v0, 0x85c -/* 2A5E4 8004F1E4 02829821 */ addu $s3, $s4, $v0 -/* 2A5E8 8004F1E8 8E62000C */ lw $v0, 0xc($s3) -/* 2A5EC 8004F1EC 1040FF78 */ beqz $v0, .L8004EFD0 -/* 2A5F0 8004F1F0 00000000 */ nop -/* 2A5F4 8004F1F4 26B50001 */ addiu $s5, $s5, 1 -.L8004F1F8: -/* 2A5F8 8004F1F8 32A500FF */ andi $a1, $s5, 0xff -/* 2A5FC 8004F1FC 00A6102B */ sltu $v0, $a1, $a2 -/* 2A600 8004F200 1440FFED */ bnez $v0, .L8004F1B8 -/* 2A604 8004F204 000510C0 */ sll $v0, $a1, 3 -.L8004F208: -/* 2A608 8004F208 16200047 */ bnez $s1, .L8004F328 -/* 2A60C 8004F20C 32A200FF */ andi $v0, $s5, 0xff -/* 2A610 8004F210 92050052 */ lbu $a1, 0x52($s0) -/* 2A614 8004F214 92040053 */ lbu $a0, 0x53($s0) -/* 2A618 8004F218 30A300FF */ andi $v1, $a1, 0xff -/* 2A61C 8004F21C 0064102B */ sltu $v0, $v1, $a0 -/* 2A620 8004F220 10400022 */ beqz $v0, .L8004F2AC -/* 2A624 8004F224 3407FFFF */ ori $a3, $zero, 0xffff -/* 2A628 8004F228 0080502D */ daddu $t2, $a0, $zero -/* 2A62C 8004F22C 8E890000 */ lw $t1, ($s4) -/* 2A630 8004F230 92880234 */ lbu $t0, 0x234($s4) -/* 2A634 8004F234 000310C0 */ sll $v0, $v1, 3 -.L8004F238: -/* 2A638 8004F238 00431021 */ addu $v0, $v0, $v1 -/* 2A63C 8004F23C 000210C0 */ sll $v0, $v0, 3 -/* 2A640 8004F240 24421320 */ addiu $v0, $v0, 0x1320 -/* 2A644 8004F244 01223021 */ addu $a2, $t1, $v0 -/* 2A648 8004F248 90C20045 */ lbu $v0, 0x45($a2) -/* 2A64C 8004F24C 54480013 */ bnel $v0, $t0, .L8004F29C -/* 2A650 8004F250 24A50001 */ addiu $a1, $a1, 1 -/* 2A654 8004F254 00031040 */ sll $v0, $v1, 1 -/* 2A658 8004F258 00431021 */ addu $v0, $v0, $v1 -/* 2A65C 8004F25C 000210C0 */ sll $v0, $v0, 3 -/* 2A660 8004F260 2442085C */ addiu $v0, $v0, 0x85c -/* 2A664 8004F264 02822021 */ addu $a0, $s4, $v0 -/* 2A668 8004F268 90820017 */ lbu $v0, 0x17($a0) -/* 2A66C 8004F26C 5440000B */ bnel $v0, $zero, .L8004F29C -/* 2A670 8004F270 24A50001 */ addiu $a1, $a1, 1 -/* 2A674 8004F274 8C83000C */ lw $v1, 0xc($a0) -/* 2A678 8004F278 0067102A */ slt $v0, $v1, $a3 -/* 2A67C 8004F27C 50400007 */ beql $v0, $zero, .L8004F29C -/* 2A680 8004F280 24A50001 */ addiu $a1, $a1, 1 -/* 2A684 8004F284 0060382D */ daddu $a3, $v1, $zero -/* 2A688 8004F288 00C0902D */ daddu $s2, $a2, $zero -/* 2A68C 8004F28C 0080982D */ daddu $s3, $a0, $zero -/* 2A690 8004F290 00A0A82D */ daddu $s5, $a1, $zero -/* 2A694 8004F294 24110001 */ addiu $s1, $zero, 1 -/* 2A698 8004F298 24A50001 */ addiu $a1, $a1, 1 -.L8004F29C: -/* 2A69C 8004F29C 30A300FF */ andi $v1, $a1, 0xff -/* 2A6A0 8004F2A0 006A102B */ sltu $v0, $v1, $t2 -/* 2A6A4 8004F2A4 1440FFE4 */ bnez $v0, .L8004F238 -/* 2A6A8 8004F2A8 000310C0 */ sll $v0, $v1, 3 -.L8004F2AC: -/* 2A6AC 8004F2AC 1220015A */ beqz $s1, .L8004F818 -/* 2A6B0 8004F2B0 0240202D */ daddu $a0, $s2, $zero -/* 2A6B4 8004F2B4 AE60000C */ sw $zero, 0xc($s3) -/* 2A6B8 8004F2B8 0C014E31 */ jal func_800538C4 -/* 2A6BC 8004F2BC 32A500FF */ andi $a1, $s5, 0xff -/* 2A6C0 8004F2C0 08013CC8 */ j .L8004F320 -/* 2A6C4 8004F2C4 00000000 */ nop -.L8004F2C8: -/* 2A6C8 8004F2C8 92150052 */ lbu $s5, 0x52($s0) -/* 2A6CC 8004F2CC 8E830000 */ lw $v1, ($s4) -/* 2A6D0 8004F2D0 32A500FF */ andi $a1, $s5, 0xff -/* 2A6D4 8004F2D4 000510C0 */ sll $v0, $a1, 3 -/* 2A6D8 8004F2D8 00451021 */ addu $v0, $v0, $a1 -/* 2A6DC 8004F2DC 000210C0 */ sll $v0, $v0, 3 -/* 2A6E0 8004F2E0 24421320 */ addiu $v0, $v0, 0x1320 -/* 2A6E4 8004F2E4 00629021 */ addu $s2, $v1, $v0 -/* 2A6E8 8004F2E8 00051040 */ sll $v0, $a1, 1 -/* 2A6EC 8004F2EC 00451021 */ addu $v0, $v0, $a1 -/* 2A6F0 8004F2F0 000210C0 */ sll $v0, $v0, 3 -/* 2A6F4 8004F2F4 2442085C */ addiu $v0, $v0, 0x85c -/* 2A6F8 8004F2F8 02829821 */ addu $s3, $s4, $v0 -/* 2A6FC 8004F2FC AE60000C */ sw $zero, 0xc($s3) -/* 2A700 8004F300 92430045 */ lbu $v1, 0x45($s2) -/* 2A704 8004F304 92820234 */ lbu $v0, 0x234($s4) -/* 2A708 8004F308 0043102B */ sltu $v0, $v0, $v1 -/* 2A70C 8004F30C 14400004 */ bnez $v0, .L8004F320 -/* 2A710 8004F310 00000000 */ nop -/* 2A714 8004F314 0C014E31 */ jal func_800538C4 -/* 2A718 8004F318 0240202D */ daddu $a0, $s2, $zero -/* 2A71C 8004F31C 24110001 */ addiu $s1, $zero, 1 -.L8004F320: -/* 2A720 8004F320 1220013D */ beqz $s1, .L8004F818 -/* 2A724 8004F324 32A200FF */ andi $v0, $s5, 0xff -.L8004F328: -/* 2A728 8004F328 00021840 */ sll $v1, $v0, 1 -/* 2A72C 8004F32C 00621821 */ addu $v1, $v1, $v0 -/* 2A730 8004F330 000318C0 */ sll $v1, $v1, 3 -/* 2A734 8004F334 2463085C */ addiu $v1, $v1, 0x85c -/* 2A738 8004F338 02839821 */ addu $s3, $s4, $v1 -/* 2A73C 8004F33C 33C200FF */ andi $v0, $fp, 0xff -/* 2A740 8004F340 10400004 */ beqz $v0, .L8004F354 -/* 2A744 8004F344 A2600012 */ sb $zero, 0x12($s3) -/* 2A748 8004F348 27C20001 */ addiu $v0, $fp, 1 -/* 2A74C 8004F34C 08013CD6 */ j .L8004F358 -/* 2A750 8004F350 A2620016 */ sb $v0, 0x16($s3) -.L8004F354: -/* 2A754 8004F354 A2600016 */ sb $zero, 0x16($s3) -.L8004F358: -/* 2A758 8004F358 AE76000C */ sw $s6, 0xc($s3) -/* 2A75C 8004F35C 92020058 */ lbu $v0, 0x58($s0) -/* 2A760 8004F360 10400072 */ beqz $v0, .L8004F52C -/* 2A764 8004F364 00000000 */ nop -/* 2A768 8004F368 97AB0026 */ lhu $t3, 0x26($sp) -/* 2A76C 8004F36C 0160202D */ daddu $a0, $t3, $zero -/* 2A770 8004F370 28820048 */ slti $v0, $a0, 0x48 -/* 2A774 8004F374 10400007 */ beqz $v0, .L8004F394 -/* 2A778 8004F378 00041040 */ sll $v0, $a0, 1 -/* 2A77C 8004F37C 8E830000 */ lw $v1, ($s4) -/* 2A780 8004F380 00441021 */ addu $v0, $v0, $a0 -/* 2A784 8004F384 8C630054 */ lw $v1, 0x54($v1) -/* 2A788 8004F388 00021080 */ sll $v0, $v0, 2 -/* 2A78C 8004F38C 08013CE9 */ j .L8004F3A4 -/* 2A790 8004F390 00628821 */ addu $s1, $v1, $v0 -.L8004F394: -/* 2A794 8004F394 2482FFB8 */ addiu $v0, $a0, -0x48 -/* 2A798 8004F398 00021080 */ sll $v0, $v0, 2 -/* 2A79C 8004F39C 02821021 */ addu $v0, $s4, $v0 -/* 2A7A0 8004F3A0 8C510080 */ lw $s1, 0x80($v0) -.L8004F3A4: -/* 2A7A4 8004F3A4 26470014 */ addiu $a3, $s2, 0x14 -/* 2A7A8 8004F3A8 96260000 */ lhu $a2, ($s1) -/* 2A7AC 8004F3AC 8E840000 */ lw $a0, ($s4) -/* 2A7B0 8004F3B0 00062A02 */ srl $a1, $a2, 8 -/* 2A7B4 8004F3B4 0C014EFA */ jal func_80053BE8 -/* 2A7B8 8004F3B8 30C600FF */ andi $a2, $a2, 0xff -/* 2A7BC 8004F3BC AE620000 */ sw $v0, ($s3) -/* 2A7C0 8004F3C0 92220008 */ lbu $v0, 8($s1) -/* 2A7C4 8004F3C4 10400008 */ beqz $v0, .L8004F3E8 -/* 2A7C8 8004F3C8 00000000 */ nop -/* 2A7CC 8004F3CC 8E840050 */ lw $a0, 0x50($s4) -/* 2A7D0 8004F3D0 92250004 */ lbu $a1, 4($s1) -/* 2A7D4 8004F3D4 0C014195 */ jal func_80050654 -/* 2A7D8 8004F3D8 0040302D */ daddu $a2, $v0, $zero -/* 2A7DC 8004F3DC 92630016 */ lbu $v1, 0x16($s3) -/* 2A7E0 8004F3E0 08013CFC */ j .L8004F3F0 -/* 2A7E4 8004F3E4 304200FF */ andi $v0, $v0, 0xff -.L8004F3E8: -/* 2A7E8 8004F3E8 92630016 */ lbu $v1, 0x16($s3) -/* 2A7EC 8004F3EC 92220004 */ lbu $v0, 4($s1) -.L8004F3F0: -/* 2A7F0 8004F3F0 00620018 */ mult $v1, $v0 -/* 2A7F4 8004F3F4 00005812 */ mflo $t3 -/* 2A7F8 8004F3F8 A66B0008 */ sh $t3, 8($s3) -/* 2A7FC 8004F3FC 8E8300C0 */ lw $v1, 0xc0($s4) -/* 2A800 8004F400 8E020018 */ lw $v0, 0x18($s0) -/* 2A804 8004F404 00031D43 */ sra $v1, $v1, 0x15 -/* 2A808 8004F408 00021543 */ sra $v0, $v0, 0x15 -/* 2A80C 8004F40C 00620018 */ mult $v1, $v0 -/* 2A810 8004F410 8E02002C */ lw $v0, 0x2c($s0) -/* 2A814 8004F414 00001812 */ mflo $v1 -/* 2A818 8004F418 00021543 */ sra $v0, $v0, 0x15 -/* 2A81C 8004F41C 00000000 */ nop -/* 2A820 8004F420 00620018 */ mult $v1, $v0 -/* 2A824 8004F424 82030049 */ lb $v1, 0x49($s0) -/* 2A828 8004F428 00002012 */ mflo $a0 -/* 2A82C 8004F42C 86620008 */ lh $v0, 8($s3) -/* 2A830 8004F430 00000000 */ nop -/* 2A834 8004F434 00620018 */ mult $v1, $v0 -/* 2A838 8004F438 00001812 */ mflo $v1 -/* 2A83C 8004F43C 00041503 */ sra $v0, $a0, 0x14 -/* 2A840 8004F440 00000000 */ nop -/* 2A844 8004F444 00430018 */ mult $v0, $v1 -/* 2A848 8004F448 00001812 */ mflo $v1 -/* 2A84C 8004F44C 00031403 */ sra $v0, $v1, 0x10 -/* 2A850 8004F450 A6420040 */ sh $v0, 0x40($s2) -/* 2A854 8004F454 92020048 */ lbu $v0, 0x48($s0) -/* 2A858 8004F458 96230002 */ lhu $v1, 2($s1) -/* 2A85C 8004F45C 96040046 */ lhu $a0, 0x46($s0) -/* 2A860 8004F460 8E650000 */ lw $a1, ($s3) -/* 2A864 8004F464 00021600 */ sll $v0, $v0, 0x18 -/* 2A868 8004F468 00021603 */ sra $v0, $v0, 0x18 -/* 2A86C 8004F46C 00641821 */ addu $v1, $v1, $a0 -/* 2A870 8004F470 94A4001E */ lhu $a0, 0x1e($a1) -/* 2A874 8004F474 00431021 */ addu $v0, $v0, $v1 -/* 2A878 8004F478 00441023 */ subu $v0, $v0, $a0 -/* 2A87C 8004F47C A662000A */ sh $v0, 0xa($s3) -/* 2A880 8004F480 00021400 */ sll $v0, $v0, 0x10 -/* 2A884 8004F484 86030038 */ lh $v1, 0x38($s0) -/* 2A888 8004F488 00021403 */ sra $v0, $v0, 0x10 -/* 2A88C 8004F48C 00431021 */ addu $v0, $v0, $v1 -/* 2A890 8004F490 8683020E */ lh $v1, 0x20e($s4) -/* 2A894 8004F494 92240007 */ lbu $a0, 7($s1) -/* 2A898 8004F498 10800007 */ beqz $a0, .L8004F4B8 -/* 2A89C 8004F49C 00432821 */ addu $a1, $v0, $v1 -/* 2A8A0 8004F4A0 8E840050 */ lw $a0, 0x50($s4) -/* 2A8A4 8004F4A4 0C014179 */ jal func_800505E4 -/* 2A8A8 8004F4A8 92260007 */ lbu $a2, 7($s1) -/* 2A8AC 8004F4AC 00021C00 */ sll $v1, $v0, 0x10 -/* 2A8B0 8004F4B0 00032C03 */ sra $a1, $v1, 0x10 -/* 2A8B4 8004F4B4 A6620014 */ sh $v0, 0x14($s3) -.L8004F4B8: -/* 2A8B8 8004F4B8 0C014E3E */ jal snd_tune_param_to_timescale -/* 2A8BC 8004F4BC 00A0202D */ daddu $a0, $a1, $zero -/* 2A8C0 8004F4C0 8E620000 */ lw $v0, ($s3) -/* 2A8C4 8004F4C4 C4420020 */ lwc1 $f2, 0x20($v0) -/* 2A8C8 8004F4C8 46020002 */ mul.s $f0, $f0, $f2 -/* 2A8CC 8004F4CC 00000000 */ nop -/* 2A8D0 8004F4D0 E6600004 */ swc1 $f0, 4($s3) -/* 2A8D4 8004F4D4 92220009 */ lbu $v0, 9($s1) -/* 2A8D8 8004F4D8 10400006 */ beqz $v0, .L8004F4F4 -/* 2A8DC 8004F4DC 0040302D */ daddu $a2, $v0, $zero -/* 2A8E0 8004F4E0 92250005 */ lbu $a1, 5($s1) -/* 2A8E4 8004F4E4 0C01415A */ jal func_80050568 -/* 2A8E8 8004F4E8 0280202D */ daddu $a0, $s4, $zero -/* 2A8EC 8004F4EC 08013D3F */ j .L8004F4FC -/* 2A8F0 8004F4F0 A242000E */ sb $v0, 0xe($s2) -.L8004F4F4: -/* 2A8F4 8004F4F4 92220005 */ lbu $v0, 5($s1) -/* 2A8F8 8004F4F8 A242000E */ sb $v0, 0xe($s2) -.L8004F4FC: -/* 2A8FC 8004F4FC 9222000A */ lbu $v0, 0xa($s1) -/* 2A900 8004F500 10400007 */ beqz $v0, .L8004F520 -/* 2A904 8004F504 00000000 */ nop -/* 2A908 8004F508 8E840050 */ lw $a0, 0x50($s4) -/* 2A90C 8004F50C 92250006 */ lbu $a1, 6($s1) -/* 2A910 8004F510 0C0141A3 */ jal func_8005068C -/* 2A914 8004F514 0040302D */ daddu $a2, $v0, $zero -/* 2A918 8004F518 08013D9B */ j .L8004F66C -/* 2A91C 8004F51C A242000F */ sb $v0, 0xf($s2) -.L8004F520: -/* 2A920 8004F520 92220006 */ lbu $v0, 6($s1) -/* 2A924 8004F524 08013D9B */ j .L8004F66C -/* 2A928 8004F528 A242000F */ sb $v0, 0xf($s2) -.L8004F52C: -/* 2A92C 8004F52C 8E8300C0 */ lw $v1, 0xc0($s4) -/* 2A930 8004F530 8E020018 */ lw $v0, 0x18($s0) -/* 2A934 8004F534 00031D43 */ sra $v1, $v1, 0x15 -/* 2A938 8004F538 00021543 */ sra $v0, $v0, 0x15 -/* 2A93C 8004F53C 00620018 */ mult $v1, $v0 -/* 2A940 8004F540 8E02002C */ lw $v0, 0x2c($s0) -/* 2A944 8004F544 00001812 */ mflo $v1 -/* 2A948 8004F548 00021543 */ sra $v0, $v0, 0x15 -/* 2A94C 8004F54C 00000000 */ nop -/* 2A950 8004F550 00620018 */ mult $v1, $v0 -/* 2A954 8004F554 82030049 */ lb $v1, 0x49($s0) -/* 2A958 8004F558 00002012 */ mflo $a0 -/* 2A95C 8004F55C 92620016 */ lbu $v0, 0x16($s3) -/* 2A960 8004F560 00000000 */ nop -/* 2A964 8004F564 00620018 */ mult $v1, $v0 -/* 2A968 8004F568 00001812 */ mflo $v1 -/* 2A96C 8004F56C 00041503 */ sra $v0, $a0, 0x14 -/* 2A970 8004F570 00000000 */ nop -/* 2A974 8004F574 00430018 */ mult $v0, $v1 -/* 2A978 8004F578 00001812 */ mflo $v1 -/* 2A97C 8004F57C 00031243 */ sra $v0, $v1, 9 -/* 2A980 8004F580 A6620008 */ sh $v0, 8($s3) -/* 2A984 8004F584 A6420040 */ sh $v0, 0x40($s2) -/* 2A988 8004F588 8E06000C */ lw $a2, 0xc($s0) -/* 2A98C 8004F58C AE660000 */ sw $a2, ($s3) -/* 2A990 8004F590 92040048 */ lbu $a0, 0x48($s0) -/* 2A994 8004F594 97AB0026 */ lhu $t3, 0x26($sp) -/* 2A998 8004F598 9685020C */ lhu $a1, 0x20c($s4) -/* 2A99C 8004F59C 00042600 */ sll $a0, $a0, 0x18 -/* 2A9A0 8004F5A0 00042603 */ sra $a0, $a0, 0x18 -/* 2A9A4 8004F5A4 0160182D */ daddu $v1, $t3, $zero -/* 2A9A8 8004F5A8 00031040 */ sll $v0, $v1, 1 -/* 2A9AC 8004F5AC 00431021 */ addu $v0, $v0, $v1 -/* 2A9B0 8004F5B0 000210C0 */ sll $v0, $v0, 3 -/* 2A9B4 8004F5B4 00431021 */ addu $v0, $v0, $v1 -/* 2A9B8 8004F5B8 96030046 */ lhu $v1, 0x46($s0) -/* 2A9BC 8004F5BC 00021080 */ sll $v0, $v0, 2 -/* 2A9C0 8004F5C0 00621821 */ addu $v1, $v1, $v0 -/* 2A9C4 8004F5C4 00A32821 */ addu $a1, $a1, $v1 -/* 2A9C8 8004F5C8 94C2001E */ lhu $v0, 0x1e($a2) -/* 2A9CC 8004F5CC 00852021 */ addu $a0, $a0, $a1 -/* 2A9D0 8004F5D0 00822023 */ subu $a0, $a0, $v0 -/* 2A9D4 8004F5D4 A664000A */ sh $a0, 0xa($s3) -/* 2A9D8 8004F5D8 00042400 */ sll $a0, $a0, 0x10 -/* 2A9DC 8004F5DC 00042403 */ sra $a0, $a0, 0x10 -/* 2A9E0 8004F5E0 86020038 */ lh $v0, 0x38($s0) -/* 2A9E4 8004F5E4 8683020E */ lh $v1, 0x20e($s4) -/* 2A9E8 8004F5E8 00822021 */ addu $a0, $a0, $v0 -/* 2A9EC 8004F5EC 0C014E3E */ jal snd_tune_param_to_timescale -/* 2A9F0 8004F5F0 00832021 */ addu $a0, $a0, $v1 -/* 2A9F4 8004F5F4 8E02000C */ lw $v0, 0xc($s0) -/* 2A9F8 8004F5F8 C4420020 */ lwc1 $f2, 0x20($v0) -/* 2A9FC 8004F5FC 46020002 */ mul.s $f0, $f0, $f2 -/* 2AA00 8004F600 00000000 */ nop -/* 2AA04 8004F604 E6600004 */ swc1 $f0, 4($s3) -/* 2AA08 8004F608 92020057 */ lbu $v0, 0x57($s0) -/* 2AA0C 8004F60C 10400006 */ beqz $v0, .L8004F628 -/* 2AA10 8004F610 0040302D */ daddu $a2, $v0, $zero -/* 2AA14 8004F614 9205004A */ lbu $a1, 0x4a($s0) -/* 2AA18 8004F618 0C01415A */ jal func_80050568 -/* 2AA1C 8004F61C 0280202D */ daddu $a0, $s4, $zero -/* 2AA20 8004F620 08013D8C */ j .L8004F630 -/* 2AA24 8004F624 A242000E */ sb $v0, 0xe($s2) -.L8004F628: -/* 2AA28 8004F628 9202004A */ lbu $v0, 0x4a($s0) -/* 2AA2C 8004F62C A242000E */ sb $v0, 0xe($s2) -.L8004F630: -/* 2AA30 8004F630 9202004B */ lbu $v0, 0x4b($s0) -/* 2AA34 8004F634 A242000F */ sb $v0, 0xf($s2) -/* 2AA38 8004F638 9202004C */ lbu $v0, 0x4c($s0) -/* 2AA3C 8004F63C 10400007 */ beqz $v0, .L8004F65C -/* 2AA40 8004F640 0040182D */ daddu $v1, $v0, $zero -/* 2AA44 8004F644 000310C0 */ sll $v0, $v1, 3 -/* 2AA48 8004F648 00431021 */ addu $v0, $v0, $v1 -/* 2AA4C 8004F64C 00021040 */ sll $v0, $v0, 1 -/* 2AA50 8004F650 24420162 */ addiu $v0, $v0, 0x162 -/* 2AA54 8004F654 08013D98 */ j .L8004F660 -/* 2AA58 8004F658 02821021 */ addu $v0, $s4, $v0 -.L8004F65C: -/* 2AA5C 8004F65C 8E020010 */ lw $v0, 0x10($s0) -.L8004F660: -/* 2AA60 8004F660 AE420014 */ sw $v0, 0x14($s2) -/* 2AA64 8004F664 8E020014 */ lw $v0, 0x14($s0) -/* 2AA68 8004F668 AE420018 */ sw $v0, 0x18($s2) -.L8004F66C: -/* 2AA6C 8004F66C 8E620000 */ lw $v0, ($s3) -/* 2AA70 8004F670 AE420000 */ sw $v0, ($s2) -/* 2AA74 8004F674 C6600004 */ lwc1 $f0, 4($s3) -/* 2AA78 8004F678 E6400004 */ swc1 $f0, 4($s2) -/* 2AA7C 8004F67C 9202005B */ lbu $v0, 0x5b($s0) -/* 2AA80 8004F680 A2420010 */ sb $v0, 0x10($s2) -/* 2AA84 8004F684 8E62000C */ lw $v0, 0xc($s3) -/* 2AA88 8004F688 28420002 */ slti $v0, $v0, 2 -/* 2AA8C 8004F68C 14400062 */ bnez $v0, .L8004F818 -/* 2AA90 8004F690 240B0001 */ addiu $t3, $zero, 1 -/* 2AA94 8004F694 A26B0017 */ sb $t3, 0x17($s3) -/* 2AA98 8004F698 92020056 */ lbu $v0, 0x56($s0) -/* 2AA9C 8004F69C A2600013 */ sb $zero, 0x13($s3) -/* 2AAA0 8004F6A0 A2620012 */ sb $v0, 0x12($s3) -/* 2AAA4 8004F6A4 9602003A */ lhu $v0, 0x3a($s0) -/* 2AAA8 8004F6A8 A6620010 */ sh $v0, 0x10($s3) -/* 2AAAC 8004F6AC 24020002 */ addiu $v0, $zero, 2 -/* 2AAB0 8004F6B0 A2420043 */ sb $v0, 0x43($s2) -/* 2AAB4 8004F6B4 92820234 */ lbu $v0, 0x234($s4) -/* 2AAB8 8004F6B8 A2420045 */ sb $v0, 0x45($s2) -/* 2AABC 8004F6BC 08013E06 */ j .L8004F818 -/* 2AAC0 8004F6C0 A2420044 */ sb $v0, 0x44($s2) -.L8004F6C4: -/* 2AAC4 8004F6C4 3C058008 */ lui $a1, %hi(D_80078410) -/* 2AAC8 8004F6C8 00A32821 */ addu $a1, $a1, $v1 -/* 2AACC 8004F6CC 90A58410 */ lbu $a1, %lo(D_80078410)($a1) -/* 2AAD0 8004F6D0 10A00047 */ beqz $a1, .L8004F7F0 -/* 2AAD4 8004F6D4 0280202D */ daddu $a0, $s4, $zero -/* 2AAD8 8004F6D8 8E020000 */ lw $v0, ($s0) -/* 2AADC 8004F6DC 90430000 */ lbu $v1, ($v0) -/* 2AAE0 8004F6E0 24420001 */ addiu $v0, $v0, 1 -/* 2AAE4 8004F6E4 A28300D4 */ sb $v1, 0xd4($s4) -/* 2AAE8 8004F6E8 AE020000 */ sw $v0, ($s0) -/* 2AAEC 8004F6EC 8602003E */ lh $v0, 0x3e($s0) -/* 2AAF0 8004F6F0 9603003E */ lhu $v1, 0x3e($s0) -/* 2AAF4 8004F6F4 10400007 */ beqz $v0, .L8004F714 -/* 2AAF8 8004F6F8 2462FFFF */ addiu $v0, $v1, -1 -/* 2AAFC 8004F6FC A602003E */ sh $v0, 0x3e($s0) -/* 2AB00 8004F700 00021400 */ sll $v0, $v0, 0x10 -/* 2AB04 8004F704 14400004 */ bnez $v0, .L8004F718 -/* 2AB08 8004F708 28A20002 */ slti $v0, $a1, 2 -/* 2AB0C 8004F70C 8E020004 */ lw $v0, 4($s0) -/* 2AB10 8004F710 AE020000 */ sw $v0, ($s0) -.L8004F714: -/* 2AB14 8004F714 28A20002 */ slti $v0, $a1, 2 -.L8004F718: -/* 2AB18 8004F718 14400035 */ bnez $v0, .L8004F7F0 -/* 2AB1C 8004F71C 0280202D */ daddu $a0, $s4, $zero -/* 2AB20 8004F720 8E020000 */ lw $v0, ($s0) -/* 2AB24 8004F724 90430000 */ lbu $v1, ($v0) -/* 2AB28 8004F728 24420001 */ addiu $v0, $v0, 1 -/* 2AB2C 8004F72C A28300D5 */ sb $v1, 0xd5($s4) -/* 2AB30 8004F730 AE020000 */ sw $v0, ($s0) -/* 2AB34 8004F734 8602003E */ lh $v0, 0x3e($s0) -/* 2AB38 8004F738 9603003E */ lhu $v1, 0x3e($s0) -/* 2AB3C 8004F73C 10400007 */ beqz $v0, .L8004F75C -/* 2AB40 8004F740 2462FFFF */ addiu $v0, $v1, -1 -/* 2AB44 8004F744 A602003E */ sh $v0, 0x3e($s0) -/* 2AB48 8004F748 00021400 */ sll $v0, $v0, 0x10 -/* 2AB4C 8004F74C 14400004 */ bnez $v0, .L8004F760 -/* 2AB50 8004F750 28A20003 */ slti $v0, $a1, 3 -/* 2AB54 8004F754 8E020004 */ lw $v0, 4($s0) -/* 2AB58 8004F758 AE020000 */ sw $v0, ($s0) -.L8004F75C: -/* 2AB5C 8004F75C 28A20003 */ slti $v0, $a1, 3 -.L8004F760: -/* 2AB60 8004F760 14400023 */ bnez $v0, .L8004F7F0 -/* 2AB64 8004F764 0280202D */ daddu $a0, $s4, $zero -/* 2AB68 8004F768 8E020000 */ lw $v0, ($s0) -/* 2AB6C 8004F76C 90430000 */ lbu $v1, ($v0) -/* 2AB70 8004F770 24420001 */ addiu $v0, $v0, 1 -/* 2AB74 8004F774 A28300D6 */ sb $v1, 0xd6($s4) -/* 2AB78 8004F778 AE020000 */ sw $v0, ($s0) -/* 2AB7C 8004F77C 8602003E */ lh $v0, 0x3e($s0) -/* 2AB80 8004F780 9603003E */ lhu $v1, 0x3e($s0) -/* 2AB84 8004F784 10400007 */ beqz $v0, .L8004F7A4 -/* 2AB88 8004F788 2462FFFF */ addiu $v0, $v1, -1 -/* 2AB8C 8004F78C A602003E */ sh $v0, 0x3e($s0) -/* 2AB90 8004F790 00021400 */ sll $v0, $v0, 0x10 -/* 2AB94 8004F794 14400004 */ bnez $v0, .L8004F7A8 -/* 2AB98 8004F798 28A20004 */ slti $v0, $a1, 4 -/* 2AB9C 8004F79C 8E020004 */ lw $v0, 4($s0) -/* 2ABA0 8004F7A0 AE020000 */ sw $v0, ($s0) -.L8004F7A4: -/* 2ABA4 8004F7A4 28A20004 */ slti $v0, $a1, 4 -.L8004F7A8: -/* 2ABA8 8004F7A8 14400011 */ bnez $v0, .L8004F7F0 -/* 2ABAC 8004F7AC 0280202D */ daddu $a0, $s4, $zero -/* 2ABB0 8004F7B0 8E020000 */ lw $v0, ($s0) -/* 2ABB4 8004F7B4 90430000 */ lbu $v1, ($v0) -/* 2ABB8 8004F7B8 24420001 */ addiu $v0, $v0, 1 -/* 2ABBC 8004F7BC A28300D7 */ sb $v1, 0xd7($s4) -/* 2ABC0 8004F7C0 AE020000 */ sw $v0, ($s0) -/* 2ABC4 8004F7C4 8602003E */ lh $v0, 0x3e($s0) -/* 2ABC8 8004F7C8 9603003E */ lhu $v1, 0x3e($s0) -/* 2ABCC 8004F7CC 10400008 */ beqz $v0, .L8004F7F0 -/* 2ABD0 8004F7D0 2462FFFF */ addiu $v0, $v1, -1 -/* 2ABD4 8004F7D4 A602003E */ sh $v0, 0x3e($s0) -/* 2ABD8 8004F7D8 00021400 */ sll $v0, $v0, 0x10 -/* 2ABDC 8004F7DC 14400005 */ bnez $v0, .L8004F7F4 -/* 2ABE0 8004F7E0 30E200FF */ andi $v0, $a3, 0xff -/* 2ABE4 8004F7E4 8E020004 */ lw $v0, 4($s0) -/* 2ABE8 8004F7E8 AE020000 */ sw $v0, ($s0) -/* 2ABEC 8004F7EC 0280202D */ daddu $a0, $s4, $zero -.L8004F7F0: -/* 2ABF0 8004F7F0 30E200FF */ andi $v0, $a3, 0xff -.L8004F7F4: -/* 2ABF4 8004F7F4 2442FF20 */ addiu $v0, $v0, -0xe0 -/* 2ABF8 8004F7F8 00021080 */ sll $v0, $v0, 2 -/* 2ABFC 8004F7FC 3C018008 */ lui $at, %hi(D_80078470) -/* 2AC00 8004F800 00220821 */ addu $at, $at, $v0 -/* 2AC04 8004F804 8C228470 */ lw $v0, %lo(D_80078470)($at) -/* 2AC08 8004F808 3C01800A */ lui $at, %hi(D_800A3FD0) -/* 2AC0C 8004F80C AC223FD0 */ sw $v0, %lo(D_800A3FD0)($at) -/* 2AC10 8004F810 0040F809 */ jalr $v0 -/* 2AC14 8004F814 0200282D */ daddu $a1, $s0, $zero -.L8004F818: -/* 2AC18 8004F818 8E020028 */ lw $v0, 0x28($s0) -/* 2AC1C 8004F81C 1040FDB5 */ beqz $v0, .L8004EEF4 -/* 2AC20 8004F820 00000000 */ nop -.L8004F824: -/* 2AC24 8004F824 08013ED6 */ j .L8004FB58 -/* 2AC28 8004F828 92150052 */ lbu $s5, 0x52($s0) -.L8004F82C: -/* 2AC2C 8004F82C 9202005A */ lbu $v0, 0x5a($s0) -/* 2AC30 8004F830 544000C9 */ bnel $v0, $zero, .L8004FB58 -/* 2AC34 8004F834 26B50001 */ addiu $s5, $s5, 1 -/* 2AC38 8004F838 000410C0 */ sll $v0, $a0, 3 -/* 2AC3C 8004F83C 00441021 */ addu $v0, $v0, $a0 -/* 2AC40 8004F840 000210C0 */ sll $v0, $v0, 3 -/* 2AC44 8004F844 8E830000 */ lw $v1, ($s4) -/* 2AC48 8004F848 24421320 */ addiu $v0, $v0, 0x1320 -/* 2AC4C 8004F84C 00629021 */ addu $s2, $v1, $v0 -/* 2AC50 8004F850 92430045 */ lbu $v1, 0x45($s2) -/* 2AC54 8004F854 92820234 */ lbu $v0, 0x234($s4) -/* 2AC58 8004F858 546200BF */ bnel $v1, $v0, .L8004FB58 -/* 2AC5C 8004F85C 26B50001 */ addiu $s5, $s5, 1 -/* 2AC60 8004F860 00041040 */ sll $v0, $a0, 1 -/* 2AC64 8004F864 00441021 */ addu $v0, $v0, $a0 -/* 2AC68 8004F868 000210C0 */ sll $v0, $v0, 3 -/* 2AC6C 8004F86C 2442085C */ addiu $v0, $v0, 0x85c -/* 2AC70 8004F870 02829821 */ addu $s3, $s4, $v0 -/* 2AC74 8004F874 92620017 */ lbu $v0, 0x17($s3) -/* 2AC78 8004F878 544000B6 */ bnel $v0, $zero, .L8004FB54 -/* 2AC7C 8004F87C A2600017 */ sb $zero, 0x17($s3) -/* 2AC80 8004F880 8E62000C */ lw $v0, 0xc($s3) -/* 2AC84 8004F884 18400006 */ blez $v0, .L8004F8A0 -/* 2AC88 8004F888 2442FFFF */ addiu $v0, $v0, -1 -/* 2AC8C 8004F88C 14400004 */ bnez $v0, .L8004F8A0 -/* 2AC90 8004F890 AE62000C */ sw $v0, 0xc($s3) -/* 2AC94 8004F894 9242003D */ lbu $v0, 0x3d($s2) -/* 2AC98 8004F898 34420010 */ ori $v0, $v0, 0x10 -/* 2AC9C 8004F89C A242003D */ sb $v0, 0x3d($s2) -.L8004F8A0: -/* 2ACA0 8004F8A0 92020058 */ lbu $v0, 0x58($s0) -/* 2ACA4 8004F8A4 1040003A */ beqz $v0, .L8004F990 -/* 2ACA8 8004F8A8 00000000 */ nop -/* 2ACAC 8004F8AC 92020040 */ lbu $v0, 0x40($s0) -/* 2ACB0 8004F8B0 14400004 */ bnez $v0, .L8004F8C4 -/* 2ACB4 8004F8B4 00000000 */ nop -/* 2ACB8 8004F8B8 8682020E */ lh $v0, 0x20e($s4) -/* 2ACBC 8004F8BC 10400017 */ beqz $v0, .L8004F91C -/* 2ACC0 8004F8C0 00000000 */ nop -.L8004F8C4: -/* 2ACC4 8004F8C4 8664000A */ lh $a0, 0xa($s3) -/* 2ACC8 8004F8C8 86620014 */ lh $v0, 0x14($s3) -/* 2ACCC 8004F8CC 00822021 */ addu $a0, $a0, $v0 -/* 2ACD0 8004F8D0 86020038 */ lh $v0, 0x38($s0) -/* 2ACD4 8004F8D4 8683020E */ lh $v1, 0x20e($s4) -/* 2ACD8 8004F8D8 00822021 */ addu $a0, $a0, $v0 -/* 2ACDC 8004F8DC 0C014E3E */ jal snd_tune_param_to_timescale -/* 2ACE0 8004F8E0 00832021 */ addu $a0, $a0, $v1 -/* 2ACE4 8004F8E4 8E620000 */ lw $v0, ($s3) -/* 2ACE8 8004F8E8 C4420020 */ lwc1 $f2, 0x20($v0) -/* 2ACEC 8004F8EC 46020082 */ mul.s $f2, $f0, $f2 -/* 2ACF0 8004F8F0 00000000 */ nop -/* 2ACF4 8004F8F4 E6620004 */ swc1 $f2, 4($s3) -/* 2ACF8 8004F8F8 C6400004 */ lwc1 $f0, 4($s2) -/* 2ACFC 8004F8FC 46020032 */ c.eq.s $f0, $f2 -/* 2AD00 8004F900 00000000 */ nop -/* 2AD04 8004F904 45010005 */ bc1t .L8004F91C -/* 2AD08 8004F908 00000000 */ nop -/* 2AD0C 8004F90C 92420043 */ lbu $v0, 0x43($s2) -/* 2AD10 8004F910 E6420004 */ swc1 $f2, 4($s2) -/* 2AD14 8004F914 34420008 */ ori $v0, $v0, 8 -/* 2AD18 8004F918 A2420043 */ sb $v0, 0x43($s2) -.L8004F91C: -/* 2AD1C 8004F91C 92020041 */ lbu $v0, 0x41($s0) -/* 2AD20 8004F920 5040008C */ beql $v0, $zero, .L8004FB54 -/* 2AD24 8004F924 A2600017 */ sb $zero, 0x17($s3) -/* 2AD28 8004F928 8E8300C0 */ lw $v1, 0xc0($s4) -/* 2AD2C 8004F92C 8E020018 */ lw $v0, 0x18($s0) -/* 2AD30 8004F930 00031D43 */ sra $v1, $v1, 0x15 -/* 2AD34 8004F934 00021543 */ sra $v0, $v0, 0x15 -/* 2AD38 8004F938 00620018 */ mult $v1, $v0 -/* 2AD3C 8004F93C 8E02002C */ lw $v0, 0x2c($s0) -/* 2AD40 8004F940 00001812 */ mflo $v1 -/* 2AD44 8004F944 00021543 */ sra $v0, $v0, 0x15 -/* 2AD48 8004F948 00000000 */ nop -/* 2AD4C 8004F94C 00620018 */ mult $v1, $v0 -/* 2AD50 8004F950 82030049 */ lb $v1, 0x49($s0) -/* 2AD54 8004F954 00002012 */ mflo $a0 -/* 2AD58 8004F958 86620008 */ lh $v0, 8($s3) -/* 2AD5C 8004F95C 00000000 */ nop -/* 2AD60 8004F960 00620018 */ mult $v1, $v0 -/* 2AD64 8004F964 00001812 */ mflo $v1 -/* 2AD68 8004F968 00041503 */ sra $v0, $a0, 0x14 -/* 2AD6C 8004F96C 00000000 */ nop -/* 2AD70 8004F970 00430018 */ mult $v0, $v1 -/* 2AD74 8004F974 9242003D */ lbu $v0, 0x3d($s2) -/* 2AD78 8004F978 34420020 */ ori $v0, $v0, 0x20 -/* 2AD7C 8004F97C A242003D */ sb $v0, 0x3d($s2) -/* 2AD80 8004F980 00001812 */ mflo $v1 -/* 2AD84 8004F984 00031403 */ sra $v0, $v1, 0x10 -/* 2AD88 8004F988 08013ED4 */ j .L8004FB50 -/* 2AD8C 8004F98C A6420040 */ sh $v0, 0x40($s2) -.L8004F990: -/* 2AD90 8004F990 92620012 */ lbu $v0, 0x12($s3) -/* 2AD94 8004F994 10400027 */ beqz $v0, .L8004FA34 -/* 2AD98 8004F998 00000000 */ nop -/* 2AD9C 8004F99C 96620010 */ lhu $v0, 0x10($s3) -/* 2ADA0 8004F9A0 10400003 */ beqz $v0, .L8004F9B0 -/* 2ADA4 8004F9A4 2442FFFF */ addiu $v0, $v0, -1 -/* 2ADA8 8004F9A8 08013EA8 */ j .L8004FAA0 -/* 2ADAC 8004F9AC A6620010 */ sh $v0, 0x10($s3) -.L8004F9B0: -/* 2ADB0 8004F9B0 92630013 */ lbu $v1, 0x13($s3) -/* 2ADB4 8004F9B4 92020055 */ lbu $v0, 0x55($s0) -/* 2ADB8 8004F9B8 00621821 */ addu $v1, $v1, $v0 -/* 2ADBC 8004F9BC 00031080 */ sll $v0, $v1, 2 -/* 2ADC0 8004F9C0 24440003 */ addiu $a0, $v0, 3 -/* 2ADC4 8004F9C4 306200FF */ andi $v0, $v1, 0xff -/* 2ADC8 8004F9C8 00023182 */ srl $a2, $v0, 6 -/* 2ADCC 8004F9CC A2630013 */ sb $v1, 0x13($s3) -/* 2ADD0 8004F9D0 30C300FF */ andi $v1, $a2, 0xff -/* 2ADD4 8004F9D4 24020001 */ addiu $v0, $zero, 1 -/* 2ADD8 8004F9D8 10620004 */ beq $v1, $v0, .L8004F9EC -/* 2ADDC 8004F9DC 0080382D */ daddu $a3, $a0, $zero -/* 2ADE0 8004F9E0 24020003 */ addiu $v0, $zero, 3 -/* 2ADE4 8004F9E4 54620004 */ bnel $v1, $v0, .L8004F9F8 -/* 2ADE8 8004F9E8 30E500FF */ andi $a1, $a3, 0xff -.L8004F9EC: -/* 2ADEC 8004F9EC 00041027 */ nor $v0, $zero, $a0 -/* 2ADF0 8004F9F0 304200FF */ andi $v0, $v0, 0xff -/* 2ADF4 8004F9F4 24450001 */ addiu $a1, $v0, 1 -.L8004F9F8: -/* 2ADF8 8004F9F8 92020056 */ lbu $v0, 0x56($s0) -/* 2ADFC 8004F9FC 00A20018 */ mult $a1, $v0 -/* 2AE00 8004FA00 24C2FFFE */ addiu $v0, $a2, -2 -/* 2AE04 8004FA04 2C420002 */ sltiu $v0, $v0, 2 -/* 2AE08 8004FA08 00005812 */ mflo $t3 -/* 2AE0C 8004FA0C 10400002 */ beqz $v0, .L8004FA18 -/* 2AE10 8004FA10 000B2A03 */ sra $a1, $t3, 8 -/* 2AE14 8004FA14 00052823 */ negu $a1, $a1 -.L8004FA18: -/* 2AE18 8004FA18 8664000A */ lh $a0, 0xa($s3) -/* 2AE1C 8004FA1C 86020038 */ lh $v0, 0x38($s0) -/* 2AE20 8004FA20 8683020E */ lh $v1, 0x20e($s4) -/* 2AE24 8004FA24 00822021 */ addu $a0, $a0, $v0 -/* 2AE28 8004FA28 00832021 */ addu $a0, $a0, $v1 -/* 2AE2C 8004FA2C 08013E98 */ j .L8004FA60 -/* 2AE30 8004FA30 00A42021 */ addu $a0, $a1, $a0 -.L8004FA34: -/* 2AE34 8004FA34 92020040 */ lbu $v0, 0x40($s0) -/* 2AE38 8004FA38 14400004 */ bnez $v0, .L8004FA4C -/* 2AE3C 8004FA3C 00000000 */ nop -/* 2AE40 8004FA40 8682020E */ lh $v0, 0x20e($s4) -/* 2AE44 8004FA44 10400016 */ beqz $v0, .L8004FAA0 -/* 2AE48 8004FA48 00000000 */ nop -.L8004FA4C: -/* 2AE4C 8004FA4C 8664000A */ lh $a0, 0xa($s3) -/* 2AE50 8004FA50 86020038 */ lh $v0, 0x38($s0) -/* 2AE54 8004FA54 8683020E */ lh $v1, 0x20e($s4) -/* 2AE58 8004FA58 00822021 */ addu $a0, $a0, $v0 -/* 2AE5C 8004FA5C 00832021 */ addu $a0, $a0, $v1 -.L8004FA60: -/* 2AE60 8004FA60 0C014E3E */ jal snd_tune_param_to_timescale -/* 2AE64 8004FA64 00000000 */ nop -/* 2AE68 8004FA68 8E620000 */ lw $v0, ($s3) -/* 2AE6C 8004FA6C C4420020 */ lwc1 $f2, 0x20($v0) -/* 2AE70 8004FA70 46020082 */ mul.s $f2, $f0, $f2 -/* 2AE74 8004FA74 00000000 */ nop -/* 2AE78 8004FA78 E6620004 */ swc1 $f2, 4($s3) -/* 2AE7C 8004FA7C C6400004 */ lwc1 $f0, 4($s2) -/* 2AE80 8004FA80 46020032 */ c.eq.s $f0, $f2 -/* 2AE84 8004FA84 00000000 */ nop -/* 2AE88 8004FA88 45010005 */ bc1t .L8004FAA0 -/* 2AE8C 8004FA8C 00000000 */ nop -/* 2AE90 8004FA90 92420043 */ lbu $v0, 0x43($s2) -/* 2AE94 8004FA94 E6420004 */ swc1 $f2, 4($s2) -/* 2AE98 8004FA98 34420008 */ ori $v0, $v0, 8 -/* 2AE9C 8004FA9C A2420043 */ sb $v0, 0x43($s2) -.L8004FAA0: -/* 2AEA0 8004FAA0 92020041 */ lbu $v0, 0x41($s0) -/* 2AEA4 8004FAA4 10400020 */ beqz $v0, .L8004FB28 -/* 2AEA8 8004FAA8 00000000 */ nop -/* 2AEAC 8004FAAC 8E8300C0 */ lw $v1, 0xc0($s4) -/* 2AEB0 8004FAB0 8E020018 */ lw $v0, 0x18($s0) -/* 2AEB4 8004FAB4 00031D43 */ sra $v1, $v1, 0x15 -/* 2AEB8 8004FAB8 00021543 */ sra $v0, $v0, 0x15 -/* 2AEBC 8004FABC 00620018 */ mult $v1, $v0 -/* 2AEC0 8004FAC0 8E02002C */ lw $v0, 0x2c($s0) -/* 2AEC4 8004FAC4 00001812 */ mflo $v1 -/* 2AEC8 8004FAC8 00021543 */ sra $v0, $v0, 0x15 -/* 2AECC 8004FACC 00000000 */ nop -/* 2AED0 8004FAD0 00620018 */ mult $v1, $v0 -/* 2AED4 8004FAD4 82030049 */ lb $v1, 0x49($s0) -/* 2AED8 8004FAD8 00002012 */ mflo $a0 -/* 2AEDC 8004FADC 92620016 */ lbu $v0, 0x16($s3) -/* 2AEE0 8004FAE0 00000000 */ nop -/* 2AEE4 8004FAE4 00620018 */ mult $v1, $v0 -/* 2AEE8 8004FAE8 00001812 */ mflo $v1 -/* 2AEEC 8004FAEC 00041503 */ sra $v0, $a0, 0x14 -/* 2AEF0 8004FAF0 00000000 */ nop -/* 2AEF4 8004FAF4 00430018 */ mult $v0, $v1 -/* 2AEF8 8004FAF8 00001812 */ mflo $v1 -/* 2AEFC 8004FAFC 00031A43 */ sra $v1, $v1, 9 -/* 2AF00 8004FB00 A6630008 */ sh $v1, 8($s3) -/* 2AF04 8004FB04 9242003D */ lbu $v0, 0x3d($s2) -/* 2AF08 8004FB08 A6430040 */ sh $v1, 0x40($s2) -/* 2AF0C 8004FB0C 34420020 */ ori $v0, $v0, 0x20 -/* 2AF10 8004FB10 A242003D */ sb $v0, 0x3d($s2) -/* 2AF14 8004FB14 9202004A */ lbu $v0, 0x4a($s0) -/* 2AF18 8004FB18 A242000E */ sb $v0, 0xe($s2) -/* 2AF1C 8004FB1C 9202004B */ lbu $v0, 0x4b($s0) -/* 2AF20 8004FB20 08013ED4 */ j .L8004FB50 -/* 2AF24 8004FB24 A242000F */ sb $v0, 0xf($s2) -.L8004FB28: -/* 2AF28 8004FB28 96020042 */ lhu $v0, 0x42($s0) -/* 2AF2C 8004FB2C 50400009 */ beql $v0, $zero, .L8004FB54 -/* 2AF30 8004FB30 A2600017 */ sb $zero, 0x17($s3) -/* 2AF34 8004FB34 9202004A */ lbu $v0, 0x4a($s0) -/* 2AF38 8004FB38 A242000E */ sb $v0, 0xe($s2) -/* 2AF3C 8004FB3C 92420043 */ lbu $v0, 0x43($s2) -/* 2AF40 8004FB40 9203004B */ lbu $v1, 0x4b($s0) -/* 2AF44 8004FB44 34420010 */ ori $v0, $v0, 0x10 -/* 2AF48 8004FB48 A2420043 */ sb $v0, 0x43($s2) -/* 2AF4C 8004FB4C A243000F */ sb $v1, 0xf($s2) -.L8004FB50: -/* 2AF50 8004FB50 A2600017 */ sb $zero, 0x17($s3) -.L8004FB54: -/* 2AF54 8004FB54 26B50001 */ addiu $s5, $s5, 1 -.L8004FB58: -/* 2AF58 8004FB58 92020053 */ lbu $v0, 0x53($s0) -/* 2AF5C 8004FB5C 32A400FF */ andi $a0, $s5, 0xff -/* 2AF60 8004FB60 0082102B */ sltu $v0, $a0, $v0 -/* 2AF64 8004FB64 1440FF31 */ bnez $v0, .L8004F82C -/* 2AF68 8004FB68 00000000 */ nop -/* 2AF6C 8004FB6C 26F70001 */ addiu $s7, $s7, 1 -.L8004FB70: -/* 2AF70 8004FB70 2EE20010 */ sltiu $v0, $s7, 0x10 -/* 2AF74 8004FB74 1440FCAA */ bnez $v0, .L8004EE20 -/* 2AF78 8004FB78 00171040 */ sll $v0, $s7, 1 -/* 2AF7C 8004FB7C 93A20028 */ lbu $v0, 0x28($sp) -/* 2AF80 8004FB80 10400002 */ beqz $v0, .L8004FB8C -/* 2AF84 8004FB84 24020002 */ addiu $v0, $zero, 2 -/* 2AF88 8004FB88 A2820221 */ sb $v0, 0x221($s4) -.L8004FB8C: -/* 2AF8C 8004FB8C 8FBF0054 */ lw $ra, 0x54($sp) -/* 2AF90 8004FB90 8FBE0050 */ lw $fp, 0x50($sp) -/* 2AF94 8004FB94 8FB7004C */ lw $s7, 0x4c($sp) -/* 2AF98 8004FB98 8FB60048 */ lw $s6, 0x48($sp) -/* 2AF9C 8004FB9C 8FB50044 */ lw $s5, 0x44($sp) -/* 2AFA0 8004FBA0 8FB40040 */ lw $s4, 0x40($sp) -/* 2AFA4 8004FBA4 8FB3003C */ lw $s3, 0x3c($sp) -/* 2AFA8 8004FBA8 8FB20038 */ lw $s2, 0x38($sp) -/* 2AFAC 8004FBAC 8FB10034 */ lw $s1, 0x34($sp) -/* 2AFB0 8004FBB0 8FB00030 */ lw $s0, 0x30($sp) -/* 2AFB4 8004FBB4 03E00008 */ jr $ra -/* 2AFB8 8004FBB8 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_80050568.s b/ver/us/asm/nonmatchings/28910_len_5090/func_80050568.s deleted file mode 100644 index 5a2932ff09..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_80050568.s +++ /dev/null @@ -1,39 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050568 -/* 2B968 80050568 8C820050 */ lw $v0, 0x50($a0) -/* 2B96C 8005056C 30A500FF */ andi $a1, $a1, 0xff -/* 2B970 80050570 000221C3 */ sra $a0, $v0, 7 -/* 2B974 80050574 00021883 */ sra $v1, $v0, 2 -/* 2B978 80050578 00832021 */ addu $a0, $a0, $v1 -/* 2B97C 8005057C 30840001 */ andi $a0, $a0, 1 -/* 2B980 80050580 00021A03 */ sra $v1, $v0, 8 -/* 2B984 80050584 3063003F */ andi $v1, $v1, 0x3f -/* 2B988 80050588 00021100 */ sll $v0, $v0, 4 -/* 2B98C 8005058C 304200C0 */ andi $v0, $v0, 0xc0 -/* 2B990 80050590 10800007 */ beqz $a0, .L800505B0 -/* 2B994 80050594 00621821 */ addu $v1, $v1, $v0 -/* 2B998 80050598 30C200FF */ andi $v0, $a2, 0xff -/* 2B99C 8005059C 00430018 */ mult $v0, $v1 -/* 2B9A0 800505A0 00003812 */ mflo $a3 -/* 2B9A4 800505A4 00071203 */ sra $v0, $a3, 8 -/* 2B9A8 800505A8 08014171 */ j .L800505C4 -/* 2B9AC 800505AC 00A22821 */ addu $a1, $a1, $v0 -.L800505B0: -/* 2B9B0 800505B0 30C200FF */ andi $v0, $a2, 0xff -/* 2B9B4 800505B4 00430018 */ mult $v0, $v1 -/* 2B9B8 800505B8 00003812 */ mflo $a3 -/* 2B9BC 800505BC 00071203 */ sra $v0, $a3, 8 -/* 2B9C0 800505C0 00A22823 */ subu $a1, $a1, $v0 -.L800505C4: -/* 2B9C4 800505C4 04A10003 */ bgez $a1, .L800505D4 -/* 2B9C8 800505C8 28A20080 */ slti $v0, $a1, 0x80 -/* 2B9CC 800505CC 08014177 */ j .L800505DC -/* 2B9D0 800505D0 0000282D */ daddu $a1, $zero, $zero -.L800505D4: -/* 2B9D4 800505D4 50400001 */ beql $v0, $zero, .L800505DC -/* 2B9D8 800505D8 2405007F */ addiu $a1, $zero, 0x7f -.L800505DC: -/* 2B9DC 800505DC 03E00008 */ jr $ra -/* 2B9E0 800505E0 30A200FF */ andi $v0, $a1, 0xff diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_800505E4.s b/ver/us/asm/nonmatchings/28910_len_5090/func_800505E4.s deleted file mode 100644 index 5dc431a6a4..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_800505E4.s +++ /dev/null @@ -1,34 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800505E4 -/* 2B9E4 800505E4 00041903 */ sra $v1, $a0, 4 -/* 2B9E8 800505E8 00041043 */ sra $v0, $a0, 1 -/* 2B9EC 800505EC 00621821 */ addu $v1, $v1, $v0 -/* 2B9F0 800505F0 30630001 */ andi $v1, $v1, 1 -/* 2B9F4 800505F4 00041183 */ sra $v0, $a0, 6 -/* 2B9F8 800505F8 3042000F */ andi $v0, $v0, 0xf -/* 2B9FC 800505FC 00042080 */ sll $a0, $a0, 2 -/* 2BA00 80050600 308400F0 */ andi $a0, $a0, 0xf0 -/* 2BA04 80050604 10600009 */ beqz $v1, .L8005062C -/* 2BA08 80050608 00442021 */ addu $a0, $v0, $a0 -/* 2BA0C 8005060C 30C300FF */ andi $v1, $a2, 0xff -/* 2BA10 80050610 00041080 */ sll $v0, $a0, 2 -/* 2BA14 80050614 00441021 */ addu $v0, $v0, $a0 -/* 2BA18 80050618 00620018 */ mult $v1, $v0 -/* 2BA1C 8005061C 00003812 */ mflo $a3 -/* 2BA20 80050620 00071203 */ sra $v0, $a3, 8 -/* 2BA24 80050624 08014192 */ j .L80050648 -/* 2BA28 80050628 00A21021 */ addu $v0, $a1, $v0 -.L8005062C: -/* 2BA2C 8005062C 30C300FF */ andi $v1, $a2, 0xff -/* 2BA30 80050630 00041080 */ sll $v0, $a0, 2 -/* 2BA34 80050634 00441021 */ addu $v0, $v0, $a0 -/* 2BA38 80050638 00620018 */ mult $v1, $v0 -/* 2BA3C 8005063C 00003812 */ mflo $a3 -/* 2BA40 80050640 00071203 */ sra $v0, $a3, 8 -/* 2BA44 80050644 00A21023 */ subu $v0, $a1, $v0 -.L80050648: -/* 2BA48 80050648 00021400 */ sll $v0, $v0, 0x10 -/* 2BA4C 8005064C 03E00008 */ jr $ra -/* 2BA50 80050650 00021403 */ sra $v0, $v0, 0x10 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_80050654.s b/ver/us/asm/nonmatchings/28910_len_5090/func_80050654.s deleted file mode 100644 index 4f196e200b..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_80050654.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050654 -/* 2BA54 80050654 00041203 */ sra $v0, $a0, 8 -/* 2BA58 80050658 3042001F */ andi $v0, $v0, 0x1f -/* 2BA5C 8005065C 308400E0 */ andi $a0, $a0, 0xe0 -/* 2BA60 80050660 00441021 */ addu $v0, $v0, $a0 -/* 2BA64 80050664 30C600FF */ andi $a2, $a2, 0xff -/* 2BA68 80050668 00C20018 */ mult $a2, $v0 -/* 2BA6C 8005066C 30A500FF */ andi $a1, $a1, 0xff -/* 2BA70 80050670 00001812 */ mflo $v1 -/* 2BA74 80050674 34028000 */ ori $v0, $zero, 0x8000 -/* 2BA78 80050678 00431023 */ subu $v0, $v0, $v1 -/* 2BA7C 8005067C 00A20018 */ mult $a1, $v0 -/* 2BA80 80050680 00001812 */ mflo $v1 -/* 2BA84 80050684 03E00008 */ jr $ra -/* 2BA88 80050688 306200FF */ andi $v0, $v1, 0xff diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8005068C.s b/ver/us/asm/nonmatchings/28910_len_5090/func_8005068C.s deleted file mode 100644 index 78934f8b61..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8005068C.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8005068C -/* 2BA8C 8005068C 000411C3 */ sra $v0, $a0, 7 -/* 2BA90 80050690 30420007 */ andi $v0, $v0, 7 -/* 2BA94 80050694 000420C0 */ sll $a0, $a0, 3 -/* 2BA98 80050698 308400F8 */ andi $a0, $a0, 0xf8 -/* 2BA9C 8005069C 00441021 */ addu $v0, $v0, $a0 -/* 2BAA0 800506A0 30C600FF */ andi $a2, $a2, 0xff -/* 2BAA4 800506A4 00C20018 */ mult $a2, $v0 -/* 2BAA8 800506A8 30A500FF */ andi $a1, $a1, 0xff -/* 2BAAC 800506AC 00001812 */ mflo $v1 -/* 2BAB0 800506B0 34028000 */ ori $v0, $zero, 0x8000 -/* 2BAB4 800506B4 00431023 */ subu $v0, $v0, $v1 -/* 2BAB8 800506B8 00A20018 */ mult $a1, $v0 -/* 2BABC 800506BC 00001812 */ mflo $v1 -/* 2BAC0 800506C0 03E00008 */ jr $ra -/* 2BAC4 800506C4 306200FF */ andi $v0, $v1, 0xff diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_800506C8.s b/ver/us/asm/nonmatchings/28910_len_5090/func_800506C8.s deleted file mode 100644 index 20f14d2c23..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_800506C8.s +++ /dev/null @@ -1,50 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800506C8 -/* 2BAC8 800506C8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 2BACC 800506CC AFB00010 */ sw $s0, 0x10($sp) -/* 2BAD0 800506D0 00A0802D */ daddu $s0, $a1, $zero -/* 2BAD4 800506D4 AFB10014 */ sw $s1, 0x14($sp) -/* 2BAD8 800506D8 0000882D */ daddu $s1, $zero, $zero -/* 2BADC 800506DC AFB20018 */ sw $s2, 0x18($sp) -/* 2BAE0 800506E0 0200902D */ daddu $s2, $s0, $zero -/* 2BAE4 800506E4 1080001C */ beqz $a0, .L80050758 -/* 2BAE8 800506E8 AFBF001C */ sw $ra, 0x1c($sp) -/* 2BAEC 800506EC 0C0135E5 */ jal snd_get_player_with_song_name -/* 2BAF0 800506F0 00000000 */ nop -/* 2BAF4 800506F4 0040282D */ daddu $a1, $v0, $zero -/* 2BAF8 800506F8 10A00017 */ beqz $a1, .L80050758 -/* 2BAFC 800506FC 00000000 */ nop -/* 2BB00 80050700 8CA2016C */ lw $v0, 0x16c($a1) -/* 2BB04 80050704 10500014 */ beq $v0, $s0, .L80050758 -/* 2BB08 80050708 324200FF */ andi $v0, $s2, 0xff -/* 2BB0C 8005070C 90A30170 */ lbu $v1, 0x170($a1) -/* 2BB10 80050710 10620003 */ beq $v1, $v0, .L80050720 -/* 2BB14 80050714 ACB0016C */ sw $s0, 0x16c($a1) -/* 2BB18 80050718 A0B00170 */ sb $s0, 0x170($a1) -/* 2BB1C 8005071C 24110001 */ addiu $s1, $zero, 1 -.L80050720: -/* 2BB20 80050720 00101602 */ srl $v0, $s0, 0x18 -/* 2BB24 80050724 3042007F */ andi $v0, $v0, 0x7f -/* 2BB28 80050728 A0A20171 */ sb $v0, 0x171($a1) -/* 2BB2C 8005072C 0000202D */ daddu $a0, $zero, $zero -/* 2BB30 80050730 24060001 */ addiu $a2, $zero, 1 -/* 2BB34 80050734 2403025C */ addiu $v1, $zero, 0x25c -.L80050738: -/* 2BB38 80050738 12200002 */ beqz $s1, .L80050744 -/* 2BB3C 8005073C 00A31021 */ addu $v0, $a1, $v1 -/* 2BB40 80050740 A046004D */ sb $a2, 0x4d($v0) -.L80050744: -/* 2BB44 80050744 A046004E */ sb $a2, 0x4e($v0) -/* 2BB48 80050748 24840001 */ addiu $a0, $a0, 1 -/* 2BB4C 8005074C 28820010 */ slti $v0, $a0, 0x10 -/* 2BB50 80050750 1440FFF9 */ bnez $v0, .L80050738 -/* 2BB54 80050754 24630060 */ addiu $v1, $v1, 0x60 -.L80050758: -/* 2BB58 80050758 8FBF001C */ lw $ra, 0x1c($sp) -/* 2BB5C 8005075C 8FB20018 */ lw $s2, 0x18($sp) -/* 2BB60 80050760 8FB10014 */ lw $s1, 0x14($sp) -/* 2BB64 80050764 8FB00010 */ lw $s0, 0x10($sp) -/* 2BB68 80050768 03E00008 */ jr $ra -/* 2BB6C 8005076C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_80050888.s b/ver/us/asm/nonmatchings/28910_len_5090/func_80050888.s deleted file mode 100644 index d19f8f4431..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_80050888.s +++ /dev/null @@ -1,40 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050888 -/* 2BC88 80050888 10C00002 */ beqz $a2, .L80050894 -/* 2BC8C 8005088C 00061200 */ sll $v0, $a2, 8 -/* 2BC90 80050890 344600FF */ ori $a2, $v0, 0xff -.L80050894: -/* 2BC94 80050894 1CE00003 */ bgtz $a3, .L800508A4 -/* 2BC98 80050898 28E203E9 */ slti $v0, $a3, 0x3e9 -/* 2BC9C 8005089C 0801422B */ j .L800508AC -/* 2BCA0 800508A0 24070001 */ addiu $a3, $zero, 1 -.L800508A4: -/* 2BCA4 800508A4 50400001 */ beql $v0, $zero, .L800508AC -/* 2BCA8 800508A8 240703E8 */ addiu $a3, $zero, 0x3e8 -.L800508AC: -/* 2BCAC 800508AC 8CA2002C */ lw $v0, 0x2c($a1) -/* 2BCB0 800508B0 14C20003 */ bne $a2, $v0, .L800508C0 -/* 2BCB4 800508B4 00061400 */ sll $v0, $a2, 0x10 -/* 2BCB8 800508B8 03E00008 */ jr $ra -/* 2BCBC 800508BC A4A00036 */ sh $zero, 0x36($a1) -.L800508C0: -/* 2BCC0 800508C0 8CA3002C */ lw $v1, 0x2c($a1) -/* 2BCC4 800508C4 00431023 */ subu $v0, $v0, $v1 -/* 2BCC8 800508C8 14E00002 */ bnez $a3, .L800508D4 -/* 2BCCC 800508CC 0047001A */ div $zero, $v0, $a3 -/* 2BCD0 800508D0 0007000D */ break 7 -.L800508D4: -/* 2BCD4 800508D4 2401FFFF */ addiu $at, $zero, -1 -/* 2BCD8 800508D8 14E10004 */ bne $a3, $at, .L800508EC -/* 2BCDC 800508DC 3C018000 */ lui $at, 0x8000 -/* 2BCE0 800508E0 14410002 */ bne $v0, $at, .L800508EC -/* 2BCE4 800508E4 00000000 */ nop -/* 2BCE8 800508E8 0006000D */ break 6 -.L800508EC: -/* 2BCEC 800508EC 00001012 */ mflo $v0 -/* 2BCF0 800508F0 A4A70036 */ sh $a3, 0x36($a1) -/* 2BCF4 800508F4 A4A60034 */ sh $a2, 0x34($a1) -/* 2BCF8 800508F8 03E00008 */ jr $ra -/* 2BCFC 800508FC ACA20030 */ sw $v0, 0x30($a1) diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_80050900.s b/ver/us/asm/nonmatchings/28910_len_5090/func_80050900.s deleted file mode 100644 index 01a5ff6760..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_80050900.s +++ /dev/null @@ -1,34 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050900 -/* 2BD00 80050900 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 2BD04 80050904 AFB10014 */ sw $s1, 0x14($sp) -/* 2BD08 80050908 0080882D */ daddu $s1, $a0, $zero -/* 2BD0C 8005090C AFB00010 */ sw $s0, 0x10($sp) -/* 2BD10 80050910 0000802D */ daddu $s0, $zero, $zero -/* 2BD14 80050914 AFBF0018 */ sw $ra, 0x18($sp) -/* 2BD18 80050918 320500FF */ andi $a1, $s0, 0xff -.L8005091C: -/* 2BD1C 8005091C 000510C0 */ sll $v0, $a1, 3 -/* 2BD20 80050920 00451021 */ addu $v0, $v0, $a1 -/* 2BD24 80050924 000210C0 */ sll $v0, $v0, 3 -/* 2BD28 80050928 8E230000 */ lw $v1, ($s1) -/* 2BD2C 8005092C 24421320 */ addiu $v0, $v0, 0x1320 -/* 2BD30 80050930 00622021 */ addu $a0, $v1, $v0 -/* 2BD34 80050934 90830045 */ lbu $v1, 0x45($a0) -/* 2BD38 80050938 92220234 */ lbu $v0, 0x234($s1) -/* 2BD3C 8005093C 14620003 */ bne $v1, $v0, .L8005094C -/* 2BD40 80050940 26100001 */ addiu $s0, $s0, 1 -/* 2BD44 80050944 0C014E31 */ jal func_800538C4 -/* 2BD48 80050948 00000000 */ nop -.L8005094C: -/* 2BD4C 8005094C 320200FF */ andi $v0, $s0, 0xff -/* 2BD50 80050950 2C420018 */ sltiu $v0, $v0, 0x18 -/* 2BD54 80050954 1440FFF1 */ bnez $v0, .L8005091C -/* 2BD58 80050958 320500FF */ andi $a1, $s0, 0xff -/* 2BD5C 8005095C 8FBF0018 */ lw $ra, 0x18($sp) -/* 2BD60 80050960 8FB10014 */ lw $s1, 0x14($sp) -/* 2BD64 80050964 8FB00010 */ lw $s0, 0x10($sp) -/* 2BD68 80050968 03E00008 */ jr $ra -/* 2BD6C 8005096C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_80050970.s b/ver/us/asm/nonmatchings/28910_len_5090/func_80050970.s deleted file mode 100644 index 670eda1769..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_80050970.s +++ /dev/null @@ -1,155 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050970 -/* 2BD70 80050970 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 2BD74 80050974 AFBF003C */ sw $ra, 0x3c($sp) -/* 2BD78 80050978 AFBE0038 */ sw $fp, 0x38($sp) -/* 2BD7C 8005097C AFB70034 */ sw $s7, 0x34($sp) -/* 2BD80 80050980 AFB60030 */ sw $s6, 0x30($sp) -/* 2BD84 80050984 AFB5002C */ sw $s5, 0x2c($sp) -/* 2BD88 80050988 AFB40028 */ sw $s4, 0x28($sp) -/* 2BD8C 8005098C AFB30024 */ sw $s3, 0x24($sp) -/* 2BD90 80050990 AFB20020 */ sw $s2, 0x20($sp) -/* 2BD94 80050994 AFB1001C */ sw $s1, 0x1c($sp) -/* 2BD98 80050998 AFB00018 */ sw $s0, 0x18($sp) -/* 2BD9C 8005099C 8C820000 */ lw $v0, ($a0) -/* 2BDA0 800509A0 8C840010 */ lw $a0, 0x10($a0) -/* 2BDA4 800509A4 0000B82D */ daddu $s7, $zero, $zero -/* 2BDA8 800509A8 1040006A */ beqz $v0, .L80050B54 -/* 2BDAC 800509AC AFA40010 */ sw $a0, 0x10($sp) -/* 2BDB0 800509B0 0C0135E5 */ jal snd_get_player_with_song_name -/* 2BDB4 800509B4 0040202D */ daddu $a0, $v0, $zero -/* 2BDB8 800509B8 0040882D */ daddu $s1, $v0, $zero -/* 2BDBC 800509BC 12200063 */ beqz $s1, .L80050B4C -/* 2BDC0 800509C0 02E0A82D */ daddu $s5, $s7, $zero -/* 2BDC4 800509C4 241E0001 */ addiu $fp, $zero, 1 -/* 2BDC8 800509C8 3C168008 */ lui $s6, %hi(D_80078554) -/* 2BDCC 800509CC 26D68554 */ addiu $s6, $s6, %lo(D_80078554) -/* 2BDD0 800509D0 2414025C */ addiu $s4, $zero, 0x25c -.L800509D4: -/* 2BDD4 800509D4 02349021 */ addu $s2, $s1, $s4 -/* 2BDD8 800509D8 8E420000 */ lw $v0, ($s2) -/* 2BDDC 800509DC 50400056 */ beql $v0, $zero, .L80050B38 -/* 2BDE0 800509E0 26B50001 */ addiu $s5, $s5, 1 -/* 2BDE4 800509E4 92420059 */ lbu $v0, 0x59($s2) -/* 2BDE8 800509E8 10400052 */ beqz $v0, .L80050B34 -/* 2BDEC 800509EC 0040182D */ daddu $v1, $v0, $zero -/* 2BDF0 800509F0 00031040 */ sll $v0, $v1, 1 -/* 2BDF4 800509F4 00431021 */ addu $v0, $v0, $v1 -/* 2BDF8 800509F8 00021140 */ sll $v0, $v0, 5 -/* 2BDFC 800509FC 244201FC */ addiu $v0, $v0, 0x1fc -/* 2BE00 80050A00 8FA70010 */ lw $a3, 0x10($sp) -/* 2BE04 80050A04 10E00024 */ beqz $a3, .L80050A98 -/* 2BE08 80050A08 02229821 */ addu $s3, $s1, $v0 -/* 2BE0C 80050A0C 9242005A */ lbu $v0, 0x5a($s2) -/* 2BE10 80050A10 50400049 */ beql $v0, $zero, .L80050B38 -/* 2BE14 80050A14 26B50001 */ addiu $s5, $s5, 1 -/* 2BE18 80050A18 A240005A */ sb $zero, 0x5a($s2) -/* 2BE1C 80050A1C 92650052 */ lbu $a1, 0x52($s3) -/* 2BE20 80050A20 92620053 */ lbu $v0, 0x53($s3) -/* 2BE24 80050A24 00A2102A */ slt $v0, $a1, $v0 -/* 2BE28 80050A28 10400014 */ beqz $v0, .L80050A7C -/* 2BE2C 80050A2C A27E005A */ sb $fp, 0x5a($s3) -/* 2BE30 80050A30 000510C0 */ sll $v0, $a1, 3 -/* 2BE34 80050A34 00451021 */ addu $v0, $v0, $a1 -/* 2BE38 80050A38 000210C0 */ sll $v0, $v0, 3 -/* 2BE3C 80050A3C 24461320 */ addiu $a2, $v0, 0x1320 -.L80050A40: -/* 2BE40 80050A40 8E220000 */ lw $v0, ($s1) -/* 2BE44 80050A44 00462021 */ addu $a0, $v0, $a2 -/* 2BE48 80050A48 90830045 */ lbu $v1, 0x45($a0) -/* 2BE4C 80050A4C 92220234 */ lbu $v0, 0x234($s1) -/* 2BE50 80050A50 14620005 */ bne $v1, $v0, .L80050A68 -/* 2BE54 80050A54 00000000 */ nop -/* 2BE58 80050A58 9082003D */ lbu $v0, 0x3d($a0) -/* 2BE5C 80050A5C AC960018 */ sw $s6, 0x18($a0) -/* 2BE60 80050A60 34420010 */ ori $v0, $v0, 0x10 -/* 2BE64 80050A64 A082003D */ sb $v0, 0x3d($a0) -.L80050A68: -/* 2BE68 80050A68 92620053 */ lbu $v0, 0x53($s3) -/* 2BE6C 80050A6C 24A50001 */ addiu $a1, $a1, 1 -/* 2BE70 80050A70 00A2102A */ slt $v0, $a1, $v0 -/* 2BE74 80050A74 1440FFF2 */ bnez $v0, .L80050A40 -/* 2BE78 80050A78 24C60048 */ addiu $a2, $a2, 0x48 -.L80050A7C: -/* 2BE7C 80050A7C 0220202D */ daddu $a0, $s1, $zero -/* 2BE80 80050A80 82500018 */ lb $s0, 0x18($s2) -/* 2BE84 80050A84 0C013FAC */ jal snd_BGMCmd_E9_SubTrackVolume -/* 2BE88 80050A88 0240282D */ daddu $a1, $s2, $zero -/* 2BE8C 80050A8C 0220202D */ daddu $a0, $s1, $zero -/* 2BE90 80050A90 080142C8 */ j .L80050B20 -/* 2BE94 80050A94 0240282D */ daddu $a1, $s2, $zero -.L80050A98: -/* 2BE98 80050A98 9242005A */ lbu $v0, 0x5a($s2) -/* 2BE9C 80050A9C 54400026 */ bnel $v0, $zero, .L80050B38 -/* 2BEA0 80050AA0 26B50001 */ addiu $s5, $s5, 1 -/* 2BEA4 80050AA4 A25E005A */ sb $fp, 0x5a($s2) -/* 2BEA8 80050AA8 A260005A */ sb $zero, 0x5a($s3) -/* 2BEAC 80050AAC 92450052 */ lbu $a1, 0x52($s2) -/* 2BEB0 80050AB0 92420053 */ lbu $v0, 0x53($s2) -/* 2BEB4 80050AB4 00A2102A */ slt $v0, $a1, $v0 -/* 2BEB8 80050AB8 10400013 */ beqz $v0, .L80050B08 -/* 2BEBC 80050ABC 000510C0 */ sll $v0, $a1, 3 -/* 2BEC0 80050AC0 00451021 */ addu $v0, $v0, $a1 -/* 2BEC4 80050AC4 000210C0 */ sll $v0, $v0, 3 -/* 2BEC8 80050AC8 24461320 */ addiu $a2, $v0, 0x1320 -.L80050ACC: -/* 2BECC 80050ACC 8E220000 */ lw $v0, ($s1) -/* 2BED0 80050AD0 00462021 */ addu $a0, $v0, $a2 -/* 2BED4 80050AD4 90830045 */ lbu $v1, 0x45($a0) -/* 2BED8 80050AD8 92220234 */ lbu $v0, 0x234($s1) -/* 2BEDC 80050ADC 14620005 */ bne $v1, $v0, .L80050AF4 -/* 2BEE0 80050AE0 00000000 */ nop -/* 2BEE4 80050AE4 9082003D */ lbu $v0, 0x3d($a0) -/* 2BEE8 80050AE8 AC960018 */ sw $s6, 0x18($a0) -/* 2BEEC 80050AEC 34420010 */ ori $v0, $v0, 0x10 -/* 2BEF0 80050AF0 A082003D */ sb $v0, 0x3d($a0) -.L80050AF4: -/* 2BEF4 80050AF4 92420053 */ lbu $v0, 0x53($s2) -/* 2BEF8 80050AF8 24A50001 */ addiu $a1, $a1, 1 -/* 2BEFC 80050AFC 00A2102A */ slt $v0, $a1, $v0 -/* 2BF00 80050B00 1440FFF2 */ bnez $v0, .L80050ACC -/* 2BF04 80050B04 24C60048 */ addiu $a2, $a2, 0x48 -.L80050B08: -/* 2BF08 80050B08 0220202D */ daddu $a0, $s1, $zero -/* 2BF0C 80050B0C 82700018 */ lb $s0, 0x18($s3) -/* 2BF10 80050B10 0C013FAC */ jal snd_BGMCmd_E9_SubTrackVolume -/* 2BF14 80050B14 0260282D */ daddu $a1, $s3, $zero -/* 2BF18 80050B18 0220202D */ daddu $a0, $s1, $zero -/* 2BF1C 80050B1C 0260282D */ daddu $a1, $s3, $zero -.L80050B20: -/* 2BF20 80050B20 24020060 */ addiu $v0, $zero, 0x60 -/* 2BF24 80050B24 A22000D4 */ sb $zero, 0xd4($s1) -/* 2BF28 80050B28 A62200D4 */ sh $v0, 0xd4($s1) -/* 2BF2C 80050B2C 0C013FB4 */ jal snd_BGMCmd_F6_TrackVolumeFade -/* 2BF30 80050B30 A23000D6 */ sb $s0, 0xd6($s1) -.L80050B34: -/* 2BF34 80050B34 26B50001 */ addiu $s5, $s5, 1 -.L80050B38: -/* 2BF38 80050B38 2AA20010 */ slti $v0, $s5, 0x10 -/* 2BF3C 80050B3C 1440FFA5 */ bnez $v0, .L800509D4 -/* 2BF40 80050B40 26940060 */ addiu $s4, $s4, 0x60 -/* 2BF44 80050B44 080142D7 */ j .L80050B5C -/* 2BF48 80050B48 02E0102D */ daddu $v0, $s7, $zero -.L80050B4C: -/* 2BF4C 80050B4C 080142D6 */ j .L80050B58 -/* 2BF50 80050B50 24170002 */ addiu $s7, $zero, 2 -.L80050B54: -/* 2BF54 80050B54 24170003 */ addiu $s7, $zero, 3 -.L80050B58: -/* 2BF58 80050B58 02E0102D */ daddu $v0, $s7, $zero -.L80050B5C: -/* 2BF5C 80050B5C 8FBF003C */ lw $ra, 0x3c($sp) -/* 2BF60 80050B60 8FBE0038 */ lw $fp, 0x38($sp) -/* 2BF64 80050B64 8FB70034 */ lw $s7, 0x34($sp) -/* 2BF68 80050B68 8FB60030 */ lw $s6, 0x30($sp) -/* 2BF6C 80050B6C 8FB5002C */ lw $s5, 0x2c($sp) -/* 2BF70 80050B70 8FB40028 */ lw $s4, 0x28($sp) -/* 2BF74 80050B74 8FB30024 */ lw $s3, 0x24($sp) -/* 2BF78 80050B78 8FB20020 */ lw $s2, 0x20($sp) -/* 2BF7C 80050B7C 8FB1001C */ lw $s1, 0x1c($sp) -/* 2BF80 80050B80 8FB00018 */ lw $s0, 0x18($sp) -/* 2BF84 80050B84 03E00008 */ jr $ra -/* 2BF88 80050B88 27BD0040 */ addiu $sp, $sp, 0x40 -/* 2BF8C 80050B8C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_F5_TrackVoice.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_F5_TrackVoice.s deleted file mode 100644 index 6060b41490..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_F5_TrackVoice.s +++ /dev/null @@ -1,74 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_BGMCmd_F5_TrackVoice -/* 2B420 80050020 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 2B424 80050024 AFB20018 */ sw $s2, 0x18($sp) -/* 2B428 80050028 00A0902D */ daddu $s2, $a1, $zero -/* 2B42C 8005002C AFBF001C */ sw $ra, 0x1c($sp) -/* 2B430 80050030 AFB10014 */ sw $s1, 0x14($sp) -/* 2B434 80050034 AFB00010 */ sw $s0, 0x10($sp) -/* 2B438 80050038 908500D4 */ lbu $a1, 0xd4($a0) -/* 2B43C 8005003C 2CA20080 */ sltiu $v0, $a1, 0x80 -/* 2B440 80050040 50400008 */ beql $v0, $zero, .L80050064 -/* 2B444 80050044 24A5FF80 */ addiu $a1, $a1, -0x80 -/* 2B448 80050048 9082021D */ lbu $v0, 0x21d($a0) -/* 2B44C 8005004C 00A2102B */ sltu $v0, $a1, $v0 -/* 2B450 80050050 1040000C */ beqz $v0, .L80050084 -/* 2B454 80050054 000510C0 */ sll $v0, $a1, 3 -/* 2B458 80050058 8C83007C */ lw $v1, 0x7c($a0) -/* 2B45C 8005005C 08014023 */ j .L8005008C -/* 2B460 80050060 00628821 */ addu $s1, $v1, $v0 -.L80050064: -/* 2B464 80050064 2CA20040 */ sltiu $v0, $a1, 0x40 -/* 2B468 80050068 10400006 */ beqz $v0, .L80050084 -/* 2B46C 8005006C 00000000 */ nop -/* 2B470 80050070 8C820000 */ lw $v0, ($a0) -/* 2B474 80050074 8C430058 */ lw $v1, 0x58($v0) -/* 2B478 80050078 000510C0 */ sll $v0, $a1, 3 -/* 2B47C 8005007C 08014023 */ j .L8005008C -/* 2B480 80050080 00628821 */ addu $s1, $v1, $v0 -.L80050084: -/* 2B484 80050084 8C820000 */ lw $v0, ($a0) -/* 2B488 80050088 24510014 */ addiu $s1, $v0, 0x14 -.L8005008C: -/* 2B48C 8005008C 26470010 */ addiu $a3, $s2, 0x10 -/* 2B490 80050090 96250000 */ lhu $a1, ($s1) -/* 2B494 80050094 92220002 */ lbu $v0, 2($s1) -/* 2B498 80050098 92260001 */ lbu $a2, 1($s1) -/* 2B49C 8005009C 3050007F */ andi $s0, $v0, 0x7f -/* 2B4A0 800500A0 A6460044 */ sh $a2, 0x44($s2) -/* 2B4A4 800500A4 8C840000 */ lw $a0, ($a0) -/* 2B4A8 800500A8 0C014EFA */ jal func_80053BE8 -/* 2B4AC 800500AC 00052A02 */ srl $a1, $a1, 8 -/* 2B4B0 800500B0 12000002 */ beqz $s0, .L800500BC -/* 2B4B4 800500B4 AE42000C */ sw $v0, 0xc($s2) -/* 2B4B8 800500B8 00108600 */ sll $s0, $s0, 0x18 -.L800500BC: -/* 2B4BC 800500BC AE500018 */ sw $s0, 0x18($s2) -/* 2B4C0 800500C0 92220003 */ lbu $v0, 3($s1) -/* 2B4C4 800500C4 3042007F */ andi $v0, $v0, 0x7f -/* 2B4C8 800500C8 A242004A */ sb $v0, 0x4a($s2) -/* 2B4CC 800500CC 92220004 */ lbu $v0, 4($s1) -/* 2B4D0 800500D0 3C040001 */ lui $a0, 1 -/* 2B4D4 800500D4 3042007F */ andi $v0, $v0, 0x7f -/* 2B4D8 800500D8 A242004B */ sb $v0, 0x4b($s2) -/* 2B4DC 800500DC 82230005 */ lb $v1, 5($s1) -/* 2B4E0 800500E0 34840101 */ ori $a0, $a0, 0x101 -/* 2B4E4 800500E4 00031040 */ sll $v0, $v1, 1 -/* 2B4E8 800500E8 00431021 */ addu $v0, $v0, $v1 -/* 2B4EC 800500EC 000210C0 */ sll $v0, $v0, 3 -/* 2B4F0 800500F0 00431021 */ addu $v0, $v0, $v1 -/* 2B4F4 800500F4 00021080 */ sll $v0, $v0, 2 -/* 2B4F8 800500F8 A6420046 */ sh $v0, 0x46($s2) -/* 2B4FC 800500FC 8E420040 */ lw $v0, 0x40($s2) -/* 2B500 80050100 92230006 */ lbu $v1, 6($s1) -/* 2B504 80050104 00441025 */ or $v0, $v0, $a0 -/* 2B508 80050108 AE420040 */ sw $v0, 0x40($s2) -/* 2B50C 8005010C A2430048 */ sb $v1, 0x48($s2) -/* 2B510 80050110 8FBF001C */ lw $ra, 0x1c($sp) -/* 2B514 80050114 8FB20018 */ lw $s2, 0x18($sp) -/* 2B518 80050118 8FB10014 */ lw $s1, 0x14($sp) -/* 2B51C 8005011C 8FB00010 */ lw $s0, 0x10($sp) -/* 2B520 80050120 03E00008 */ jr $ra -/* 2B524 80050124 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FC_Jump.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FC_Jump.s deleted file mode 100644 index 39df987e6c..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FC_Jump.s +++ /dev/null @@ -1,91 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_BGMCmd_FC_Jump -/* 2B5A8 800501A8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2B5AC 800501AC AFB3001C */ sw $s3, 0x1c($sp) -/* 2B5B0 800501B0 0080982D */ daddu $s3, $a0, $zero -/* 2B5B4 800501B4 AFB20018 */ sw $s2, 0x18($sp) -/* 2B5B8 800501B8 00A0902D */ daddu $s2, $a1, $zero -/* 2B5BC 800501BC AFBF0020 */ sw $ra, 0x20($sp) -/* 2B5C0 800501C0 AFB10014 */ sw $s1, 0x14($sp) -/* 2B5C4 800501C4 AFB00010 */ sw $s0, 0x10($sp) -/* 2B5C8 800501C8 966500D4 */ lhu $a1, 0xd4($s3) -/* 2B5CC 800501CC 8E640064 */ lw $a0, 0x64($s3) -/* 2B5D0 800501D0 92620170 */ lbu $v0, 0x170($s3) -/* 2B5D4 800501D4 926300D6 */ lbu $v1, 0xd6($s3) -/* 2B5D8 800501D8 0043102B */ sltu $v0, $v0, $v1 -/* 2B5DC 800501DC 10400005 */ beqz $v0, .L800501F4 -/* 2B5E0 800501E0 00A42821 */ addu $a1, $a1, $a0 -/* 2B5E4 800501E4 92630170 */ lbu $v1, 0x170($s3) -/* 2B5E8 800501E8 00031040 */ sll $v0, $v1, 1 -/* 2B5EC 800501EC 00431021 */ addu $v0, $v0, $v1 -/* 2B5F0 800501F0 00A22821 */ addu $a1, $a1, $v0 -.L800501F4: -/* 2B5F4 800501F4 8E420000 */ lw $v0, ($s2) -/* 2B5F8 800501F8 AE420008 */ sw $v0, 8($s2) -/* 2B5FC 800501FC 90A20000 */ lbu $v0, ($a1) -/* 2B600 80050200 90A30001 */ lbu $v1, 1($a1) -/* 2B604 80050204 8E640064 */ lw $a0, 0x64($s3) -/* 2B608 80050208 00021200 */ sll $v0, $v0, 8 -/* 2B60C 8005020C 00431021 */ addu $v0, $v0, $v1 -/* 2B610 80050210 00441021 */ addu $v0, $v0, $a0 -/* 2B614 80050214 AE420000 */ sw $v0, ($s2) -/* 2B618 80050218 90A20002 */ lbu $v0, 2($a1) -/* 2B61C 8005021C 9243004D */ lbu $v1, 0x4d($s2) -/* 2B620 80050220 1060001B */ beqz $v1, .L80050290 -/* 2B624 80050224 A2420058 */ sb $v0, 0x58($s2) -/* 2B628 80050228 92500052 */ lbu $s0, 0x52($s2) -/* 2B62C 8005022C 92420053 */ lbu $v0, 0x53($s2) -/* 2B630 80050230 A240004D */ sb $zero, 0x4d($s2) -/* 2B634 80050234 0202102B */ sltu $v0, $s0, $v0 -/* 2B638 80050238 10400015 */ beqz $v0, .L80050290 -/* 2B63C 8005023C AE40002C */ sw $zero, 0x2c($s2) -/* 2B640 80050240 001010C0 */ sll $v0, $s0, 3 -/* 2B644 80050244 00501021 */ addu $v0, $v0, $s0 -/* 2B648 80050248 000210C0 */ sll $v0, $v0, 3 -/* 2B64C 8005024C 24511320 */ addiu $s1, $v0, 0x1320 -.L80050250: -/* 2B650 80050250 8E620000 */ lw $v0, ($s3) -/* 2B654 80050254 00512021 */ addu $a0, $v0, $s1 -/* 2B658 80050258 90830045 */ lbu $v1, 0x45($a0) -/* 2B65C 8005025C 92620234 */ lbu $v0, 0x234($s3) -/* 2B660 80050260 14620006 */ bne $v1, $v0, .L8005027C -/* 2B664 80050264 00000000 */ nop -/* 2B668 80050268 8C82001C */ lw $v0, 0x1c($a0) -/* 2B66C 8005026C 10400003 */ beqz $v0, .L8005027C -/* 2B670 80050270 00000000 */ nop -/* 2B674 80050274 0C014E31 */ jal func_800538C4 -/* 2B678 80050278 320500FF */ andi $a1, $s0, 0xff -.L8005027C: -/* 2B67C 8005027C 92420053 */ lbu $v0, 0x53($s2) -/* 2B680 80050280 26100001 */ addiu $s0, $s0, 1 -/* 2B684 80050284 0202102B */ sltu $v0, $s0, $v0 -/* 2B688 80050288 1440FFF1 */ bnez $v0, .L80050250 -/* 2B68C 8005028C 26310048 */ addiu $s1, $s1, 0x48 -.L80050290: -/* 2B690 80050290 9242004E */ lbu $v0, 0x4e($s2) -/* 2B694 80050294 10400006 */ beqz $v0, .L800502B0 -/* 2B698 80050298 0260202D */ daddu $a0, $s3, $zero -/* 2B69C 8005029C 0240282D */ daddu $a1, $s2, $zero -/* 2B6A0 800502A0 A240004E */ sb $zero, 0x4e($s2) -/* 2B6A4 800502A4 92660171 */ lbu $a2, 0x171($s3) -/* 2B6A8 800502A8 0C014222 */ jal func_80050888 -/* 2B6AC 800502AC 24070090 */ addiu $a3, $zero, 0x90 -.L800502B0: -/* 2B6B0 800502B0 A6400046 */ sh $zero, 0x46($s2) -/* 2B6B4 800502B4 A2400048 */ sb $zero, 0x48($s2) -/* 2B6B8 800502B8 A240004C */ sb $zero, 0x4c($s2) -/* 2B6BC 800502BC A6400038 */ sh $zero, 0x38($s2) -/* 2B6C0 800502C0 A2400056 */ sb $zero, 0x56($s2) -/* 2B6C4 800502C4 AE400024 */ sw $zero, 0x24($s2) -/* 2B6C8 800502C8 A2400057 */ sb $zero, 0x57($s2) -/* 2B6CC 800502CC 92620235 */ lbu $v0, 0x235($s3) -/* 2B6D0 800502D0 A242005B */ sb $v0, 0x5b($s2) -/* 2B6D4 800502D4 8FBF0020 */ lw $ra, 0x20($sp) -/* 2B6D8 800502D8 8FB3001C */ lw $s3, 0x1c($sp) -/* 2B6DC 800502DC 8FB20018 */ lw $s2, 0x18($sp) -/* 2B6E0 800502E0 8FB10014 */ lw $s1, 0x14($sp) -/* 2B6E4 800502E4 8FB00010 */ lw $s0, 0x10($sp) -/* 2B6E8 800502E8 03E00008 */ jr $ra -/* 2B6EC 800502EC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FD.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FD.s deleted file mode 100644 index 4910c415cb..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FD.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_BGMCmd_FD -/* 2B55C 8005015C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 2B560 80050160 AFBF0010 */ sw $ra, 0x10($sp) -/* 2B564 80050164 8C8600D4 */ lw $a2, 0xd4($a0) -/* 2B568 80050168 90840234 */ lbu $a0, 0x234($a0) -/* 2B56C 8005016C 90A5005C */ lbu $a1, 0x5c($a1) -/* 2B570 80050170 0C01582F */ jal func_800560BC -/* 2B574 80050174 00063202 */ srl $a2, $a2, 8 -/* 2B578 80050178 8FBF0010 */ lw $ra, 0x10($sp) -/* 2B57C 8005017C 03E00008 */ jr $ra -/* 2B580 80050180 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FF.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FF.s deleted file mode 100644 index a0d73a9fa7..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_BGMCmd_FF.s +++ /dev/null @@ -1,186 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_800988D8 -.word .L8005033C_2B73C, .L800503C0_2B7C0, .L800503E4_2B7E4, .L8005045C_2B85C, .L80050470_2B870, .L800504A8_2B8A8 - -.section .text - -glabel snd_BGMCmd_FF -/* 2B6F0 800502F0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2B6F4 800502F4 AFB20018 */ sw $s2, 0x18($sp) -/* 2B6F8 800502F8 0080902D */ daddu $s2, $a0, $zero -/* 2B6FC 800502FC AFBF0020 */ sw $ra, 0x20($sp) -/* 2B700 80050300 AFB3001C */ sw $s3, 0x1c($sp) -/* 2B704 80050304 AFB10014 */ sw $s1, 0x14($sp) -/* 2B708 80050308 AFB00010 */ sw $s0, 0x10($sp) -/* 2B70C 8005030C 924200D4 */ lbu $v0, 0xd4($s2) -/* 2B710 80050310 924300D5 */ lbu $v1, 0xd5($s2) -/* 2B714 80050314 924600D6 */ lbu $a2, 0xd6($s2) -/* 2B718 80050318 2444FFFF */ addiu $a0, $v0, -1 -/* 2B71C 8005031C 2C820006 */ sltiu $v0, $a0, 6 -/* 2B720 80050320 10400088 */ beqz $v0, .L80050544 -/* 2B724 80050324 00041080 */ sll $v0, $a0, 2 -/* 2B728 80050328 3C01800A */ lui $at, %hi(jtbl_800988D8) -/* 2B72C 8005032C 00220821 */ addu $at, $at, $v0 -/* 2B730 80050330 8C2288D8 */ lw $v0, %lo(jtbl_800988D8)($at) -/* 2B734 80050334 00400008 */ jr $v0 -/* 2B738 80050338 00000000 */ nop -.L8005033C_2B73C: -/* 2B73C 8005033C 2C620004 */ sltiu $v0, $v1, 4 -/* 2B740 80050340 10400080 */ beqz $v0, .L80050544 -/* 2B744 80050344 02431021 */ addu $v0, $s2, $v1 -/* 2B748 80050348 8043004C */ lb $v1, 0x4c($v0) -/* 2B74C 8005034C 0460007D */ bltz $v1, .L80050544 -/* 2B750 80050350 9044004C */ lbu $a0, 0x4c($v0) -/* 2B754 80050354 8E420000 */ lw $v0, ($s2) -/* 2B758 80050358 10C00010 */ beqz $a2, .L8005039C -/* 2B75C 8005035C A0440051 */ sb $a0, 0x51($v0) -/* 2B760 80050360 30C7000F */ andi $a3, $a2, 0xf -/* 2B764 80050364 00061102 */ srl $v0, $a2, 4 -/* 2B768 80050368 30420001 */ andi $v0, $v0, 1 -/* 2B76C 8005036C 8E430000 */ lw $v1, ($s2) -/* 2B770 80050370 24450001 */ addiu $a1, $v0, 1 -/* 2B774 80050374 90620052 */ lbu $v0, 0x52($v1) -/* 2B778 80050378 14470004 */ bne $v0, $a3, .L8005038C -/* 2B77C 8005037C 00A0202D */ daddu $a0, $a1, $zero -/* 2B780 80050380 90620053 */ lbu $v0, 0x53($v1) -/* 2B784 80050384 1044006F */ beq $v0, $a0, .L80050544 -/* 2B788 80050388 00000000 */ nop -.L8005038C: -/* 2B78C 8005038C A0670052 */ sb $a3, 0x52($v1) -/* 2B790 80050390 8E420000 */ lw $v0, ($s2) -/* 2B794 80050394 080140EC */ j .L800503B0 -/* 2B798 80050398 A0450053 */ sb $a1, 0x53($v0) -.L8005039C: -/* 2B79C 8005039C 8E430000 */ lw $v1, ($s2) -/* 2B7A0 800503A0 90620053 */ lbu $v0, 0x53($v1) -/* 2B7A4 800503A4 10400067 */ beqz $v0, .L80050544 -/* 2B7A8 800503A8 00000000 */ nop -/* 2B7AC 800503AC A0600053 */ sb $zero, 0x53($v1) -.L800503B0: -/* 2B7B0 800503B0 8E430000 */ lw $v1, ($s2) -/* 2B7B4 800503B4 24020001 */ addiu $v0, $zero, 1 -/* 2B7B8 800503B8 08014151 */ j .L80050544 -/* 2B7BC 800503BC A0620050 */ sb $v0, 0x50($v1) -.L800503C0_2B7C0: -/* 2B7C0 800503C0 2465FFFF */ addiu $a1, $v1, -1 -/* 2B7C4 800503C4 2CA20008 */ sltiu $v0, $a1, 8 -/* 2B7C8 800503C8 5040005E */ beql $v0, $zero, .L80050544 -/* 2B7CC 800503CC A2400211 */ sb $zero, 0x211($s2) -/* 2B7D0 800503D0 A2430211 */ sb $v1, 0x211($s2) -/* 2B7D4 800503D4 0C013A11 */ jal func_8004E844 -/* 2B7D8 800503D8 0240202D */ daddu $a0, $s2, $zero -/* 2B7DC 800503DC 08014151 */ j .L80050544 -/* 2B7E0 800503E0 00000000 */ nop -.L800503E4_2B7E4: -/* 2B7E4 800503E4 92500211 */ lbu $s0, 0x211($s2) -/* 2B7E8 800503E8 2604FFFF */ addiu $a0, $s0, -1 -/* 2B7EC 800503EC 2C820008 */ sltiu $v0, $a0, 8 -/* 2B7F0 800503F0 10400054 */ beqz $v0, .L80050544 -/* 2B7F4 800503F4 0080802D */ daddu $s0, $a0, $zero -/* 2B7F8 800503F8 02501021 */ addu $v0, $s2, $s0 -/* 2B7FC 800503FC 90440212 */ lbu $a0, 0x212($v0) -/* 2B800 80050400 2C820008 */ sltiu $v0, $a0, 8 -/* 2B804 80050404 1040004F */ beqz $v0, .L80050544 -/* 2B808 80050408 2C620028 */ sltiu $v0, $v1, 0x28 -/* 2B80C 8005040C 14400005 */ bnez $v0, .L80050424 -/* 2B810 80050410 001010C0 */ sll $v0, $s0, 3 -/* 2B814 80050414 00501021 */ addu $v0, $v0, $s0 -/* 2B818 80050418 00441021 */ addu $v0, $v0, $a0 -/* 2B81C 8005041C 0801410F */ j .L8005043C -/* 2B820 80050420 00021040 */ sll $v0, $v0, 1 -.L80050424: -/* 2B824 80050424 00501021 */ addu $v0, $v0, $s0 -/* 2B828 80050428 00441021 */ addu $v0, $v0, $a0 -/* 2B82C 8005042C 00021040 */ sll $v0, $v0, 1 -/* 2B830 80050430 3C018008 */ lui $at, %hi(D_80078558) -/* 2B834 80050434 00230821 */ addu $at, $at, $v1 -/* 2B838 80050438 90238558 */ lbu $v1, %lo(D_80078558)($at) -.L8005043C: -/* 2B83C 8005043C 02421021 */ addu $v0, $s2, $v0 -/* 2B840 80050440 00031A00 */ sll $v1, $v1, 8 -/* 2B844 80050444 00661821 */ addu $v1, $v1, $a2 -/* 2B848 80050448 A4430174 */ sh $v1, 0x174($v0) -/* 2B84C 8005044C 02501821 */ addu $v1, $s2, $s0 -/* 2B850 80050450 24820001 */ addiu $v0, $a0, 1 -/* 2B854 80050454 08014151 */ j .L80050544 -/* 2B858 80050458 A0620212 */ sb $v0, 0x212($v1) -.L8005045C_2B85C: -/* 2B85C 8005045C 2C620009 */ sltiu $v0, $v1, 9 -/* 2B860 80050460 50400038 */ beql $v0, $zero, .L80050544 -/* 2B864 80050464 A0A0004C */ sb $zero, 0x4c($a1) -/* 2B868 80050468 08014151 */ j .L80050544 -/* 2B86C 8005046C A0A3004C */ sb $v1, 0x4c($a1) -.L80050470_2B870: -/* 2B870 80050470 8E420004 */ lw $v0, 4($s2) -/* 2B874 80050474 10400033 */ beqz $v0, .L80050544 -/* 2B878 80050478 0000802D */ daddu $s0, $zero, $zero -/* 2B87C 8005047C 0040282D */ daddu $a1, $v0, $zero -.L80050480: -/* 2B880 80050480 00A0202D */ daddu $a0, $a1, $zero -/* 2B884 80050484 90820090 */ lbu $v0, 0x90($a0) -/* 2B888 80050488 10400022 */ beqz $v0, .L80050514 -/* 2B88C 8005048C 00103080 */ sll $a2, $s0, 2 -/* 2B890 80050490 26100001 */ addiu $s0, $s0, 1 -/* 2B894 80050494 2E020004 */ sltiu $v0, $s0, 4 -/* 2B898 80050498 1440FFF9 */ bnez $v0, .L80050480 -/* 2B89C 8005049C 24850004 */ addiu $a1, $a0, 4 -/* 2B8A0 800504A0 08014151 */ j .L80050544 -/* 2B8A4 800504A4 00000000 */ nop -.L800504A8_2B8A8: -/* 2B8A8 800504A8 54600025 */ bnel $v1, $zero, .L80050540 -/* 2B8AC 800504AC A0A3004F */ sb $v1, 0x4f($a1) -/* 2B8B0 800504B0 90A2004E */ lbu $v0, 0x4e($a1) -/* 2B8B4 800504B4 10400023 */ beqz $v0, .L80050544 -/* 2B8B8 800504B8 0000802D */ daddu $s0, $zero, $zero -/* 2B8BC 800504BC A0A0004E */ sb $zero, 0x4e($a1) -/* 2B8C0 800504C0 2413007F */ addiu $s3, $zero, 0x7f -/* 2B8C4 800504C4 2411025C */ addiu $s1, $zero, 0x25c -.L800504C8: -/* 2B8C8 800504C8 92420171 */ lbu $v0, 0x171($s2) -/* 2B8CC 800504CC 14530004 */ bne $v0, $s3, .L800504E0 -/* 2B8D0 800504D0 02512821 */ addu $a1, $s2, $s1 -/* 2B8D4 800504D4 90A2004F */ lbu $v0, 0x4f($a1) -/* 2B8D8 800504D8 08014139 */ j .L800504E4 -/* 2B8DC 800504DC 00000000 */ nop -.L800504E0: -/* 2B8E0 800504E0 90A20050 */ lbu $v0, 0x50($a1) -.L800504E4: -/* 2B8E4 800504E4 10400005 */ beqz $v0, .L800504FC -/* 2B8E8 800504E8 0240202D */ daddu $a0, $s2, $zero -/* 2B8EC 800504EC 0040302D */ daddu $a2, $v0, $zero -/* 2B8F0 800504F0 24070048 */ addiu $a3, $zero, 0x48 -/* 2B8F4 800504F4 0C014222 */ jal func_80050888 -/* 2B8F8 800504F8 A0A0004E */ sb $zero, 0x4e($a1) -.L800504FC: -/* 2B8FC 800504FC 26100001 */ addiu $s0, $s0, 1 -/* 2B900 80050500 2E020010 */ sltiu $v0, $s0, 0x10 -/* 2B904 80050504 1440FFF0 */ bnez $v0, .L800504C8 -/* 2B908 80050508 26310060 */ addiu $s1, $s1, 0x60 -/* 2B90C 8005050C 08014151 */ j .L80050544 -/* 2B910 80050510 00000000 */ nop -.L80050514: -/* 2B914 80050514 A0A30090 */ sb $v1, 0x90($a1) -/* 2B918 80050518 9643002C */ lhu $v1, 0x2c($s2) -/* 2B91C 8005051C 9642003C */ lhu $v0, 0x3c($s2) -/* 2B920 80050520 00620018 */ mult $v1, $v0 -/* 2B924 80050524 8E430004 */ lw $v1, 4($s2) -/* 2B928 80050528 00661821 */ addu $v1, $v1, $a2 -/* 2B92C 8005052C 00004012 */ mflo $t0 -/* 2B930 80050530 25027FFF */ addiu $v0, $t0, 0x7fff -/* 2B934 80050534 000215C3 */ sra $v0, $v0, 0x17 -/* 2B938 80050538 08014151 */ j .L80050544 -/* 2B93C 8005053C A0620093 */ sb $v0, 0x93($v1) -.L80050540: -/* 2B940 80050540 A0A60050 */ sb $a2, 0x50($a1) -.L80050544: -/* 2B944 80050544 8FBF0020 */ lw $ra, 0x20($sp) -/* 2B948 80050548 8FB3001C */ lw $s3, 0x1c($sp) -/* 2B94C 8005054C 8FB20018 */ lw $s2, 0x18($sp) -/* 2B950 80050550 8FB10014 */ lw $s1, 0x14($sp) -/* 2B954 80050554 8FB00010 */ lw $s0, 0x10($sp) -/* 2B958 80050558 03E00008 */ jr $ra -/* 2B95C 8005055C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_dispatch_bgm_player_event.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_dispatch_bgm_player_event.s deleted file mode 100644 index 5548a22b06..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_dispatch_bgm_player_event.s +++ /dev/null @@ -1,162 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_dispatch_bgm_player_event -/* 28BE0 8004D7E0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 28BE4 8004D7E4 AFB20018 */ sw $s2, 0x18($sp) -/* 28BE8 8004D7E8 0080902D */ daddu $s2, $a0, $zero -/* 28BEC 8004D7EC AFB50024 */ sw $s5, 0x24($sp) -/* 28BF0 8004D7F0 AFBF0028 */ sw $ra, 0x28($sp) -/* 28BF4 8004D7F4 AFB40020 */ sw $s4, 0x20($sp) -/* 28BF8 8004D7F8 AFB3001C */ sw $s3, 0x1c($sp) -/* 28BFC 8004D7FC AFB10014 */ sw $s1, 0x14($sp) -/* 28C00 8004D800 AFB00010 */ sw $s0, 0x10($sp) -/* 28C04 8004D804 8E540000 */ lw $s4, ($s2) -/* 28C08 8004D808 8E530010 */ lw $s3, 0x10($s2) -/* 28C0C 8004D80C 12800074 */ beqz $s4, .L8004D9E0 -/* 28C10 8004D810 0000A82D */ daddu $s5, $zero, $zero -/* 28C14 8004D814 0C0135E5 */ jal snd_get_player_with_song_name -/* 28C18 8004D818 0280202D */ daddu $a0, $s4, $zero -/* 28C1C 8004D81C 0040802D */ daddu $s0, $v0, $zero -/* 28C20 8004D820 52000070 */ beql $s0, $zero, .L8004D9E4 -/* 28C24 8004D824 24150002 */ addiu $s5, $zero, 2 -/* 28C28 8004D828 8E020064 */ lw $v0, 0x64($s0) -/* 28C2C 8004D82C 8E450004 */ lw $a1, 4($s2) -/* 28C30 8004D830 10A00008 */ beqz $a1, .L8004D854 -/* 28C34 8004D834 24510010 */ addiu $s1, $v0, 0x10 -/* 28C38 8004D838 28A22711 */ slti $v0, $a1, 0x2711 -/* 28C3C 8004D83C 14400003 */ bnez $v0, .L8004D84C -/* 28C40 8004D840 28A200FA */ slti $v0, $a1, 0xfa -/* 28C44 8004D844 08013615 */ j .L8004D854 -/* 28C48 8004D848 24052710 */ addiu $a1, $zero, 0x2710 -.L8004D84C: -/* 28C4C 8004D84C 54400001 */ bnel $v0, $zero, .L8004D854 -/* 28C50 8004D850 240500FA */ addiu $a1, $zero, 0xfa -.L8004D854: -/* 28C54 8004D854 8E460008 */ lw $a2, 8($s2) -/* 28C58 8004D858 28C20080 */ slti $v0, $a2, 0x80 -/* 28C5C 8004D85C 50400001 */ beql $v0, $zero, .L8004D864 -/* 28C60 8004D860 2406007F */ addiu $a2, $zero, 0x7f -.L8004D864: -/* 28C64 8004D864 10C00002 */ beqz $a2, .L8004D870 -/* 28C68 8004D868 00061200 */ sll $v0, $a2, 8 -/* 28C6C 8004D86C 344600FF */ ori $a2, $v0, 0xff -.L8004D870: -/* 28C70 8004D870 8E47000C */ lw $a3, 0xc($s2) -/* 28C74 8004D874 28E20080 */ slti $v0, $a3, 0x80 -/* 28C78 8004D878 50400001 */ beql $v0, $zero, .L8004D880 -/* 28C7C 8004D87C 2407007F */ addiu $a3, $zero, 0x7f -.L8004D880: -/* 28C80 8004D880 10E00003 */ beqz $a3, .L8004D890 -/* 28C84 8004D884 00071200 */ sll $v0, $a3, 8 -/* 28C88 8004D888 08013625 */ j .L8004D894 -/* 28C8C 8004D88C 344700FF */ ori $a3, $v0, 0xff -.L8004D890: -/* 28C90 8004D890 24077FFF */ addiu $a3, $zero, 0x7fff -.L8004D894: -/* 28C94 8004D894 0C014E5D */ jal snd_initialize_bgm_fade -/* 28C98 8004D898 2604002C */ addiu $a0, $s0, 0x2c -/* 28C9C 8004D89C 0200202D */ daddu $a0, $s0, $zero -/* 28CA0 8004D8A0 24027FFF */ addiu $v0, $zero, 0x7fff -/* 28CA4 8004D8A4 A6020044 */ sh $v0, 0x44($s0) -/* 28CA8 8004D8A8 24020001 */ addiu $v0, $zero, 1 -/* 28CAC 8004D8AC A6020046 */ sh $v0, 0x46($s0) -/* 28CB0 8004D8B0 92220000 */ lbu $v0, ($s1) -/* 28CB4 8004D8B4 3C050002 */ lui $a1, 2 -/* 28CB8 8004D8B8 30420007 */ andi $v0, $v0, 7 -/* 28CBC 8004D8BC 3C068008 */ lui $a2, %hi(D_80078510) -/* 28CC0 8004D8C0 00C23021 */ addu $a2, $a2, $v0 -/* 28CC4 8004D8C4 90C68510 */ lbu $a2, %lo(D_80078510)($a2) -/* 28CC8 8004D8C8 0C013A20 */ jal func_8004E880 -/* 28CCC 8004D8CC 34A5625A */ ori $a1, $a1, 0x625a -/* 28CD0 8004D8D0 2E620004 */ sltiu $v0, $s3, 4 -/* 28CD4 8004D8D4 10400005 */ beqz $v0, .L8004D8EC -/* 28CD8 8004D8D8 00131040 */ sll $v0, $s3, 1 -/* 28CDC 8004D8DC 02221021 */ addu $v0, $s1, $v0 -/* 28CE0 8004D8E0 94420004 */ lhu $v0, 4($v0) -/* 28CE4 8004D8E4 14400003 */ bnez $v0, .L8004D8F4 -/* 28CE8 8004D8E8 00131040 */ sll $v0, $s3, 1 -.L8004D8EC: -/* 28CEC 8004D8EC 0000982D */ daddu $s3, $zero, $zero -/* 28CF0 8004D8F0 00131040 */ sll $v0, $s3, 1 -.L8004D8F4: -/* 28CF4 8004D8F4 02221021 */ addu $v0, $s1, $v0 -/* 28CF8 8004D8F8 AE130060 */ sw $s3, 0x60($s0) -/* 28CFC 8004D8FC 94420004 */ lhu $v0, 4($v0) -/* 28D00 8004D900 8E030064 */ lw $v1, 0x64($s0) -/* 28D04 8004D904 00021080 */ sll $v0, $v0, 2 -/* 28D08 8004D908 00431021 */ addu $v0, $v0, $v1 -/* 28D0C 8004D90C AE02006C */ sw $v0, 0x6c($s0) -/* 28D10 8004D910 AE020068 */ sw $v0, 0x68($s0) -/* 28D14 8004D914 9622000C */ lhu $v0, 0xc($s1) -/* 28D18 8004D918 1040001F */ beqz $v0, .L8004D998 -/* 28D1C 8004D91C 00021080 */ sll $v0, $v0, 2 -/* 28D20 8004D920 00431021 */ addu $v0, $v0, $v1 -/* 28D24 8004D924 AE020078 */ sw $v0, 0x78($s0) -/* 28D28 8004D928 9222000F */ lbu $v0, 0xf($s1) -/* 28D2C 8004D92C A202021C */ sb $v0, 0x21c($s0) -/* 28D30 8004D930 304200FF */ andi $v0, $v0, 0xff -/* 28D34 8004D934 1040000C */ beqz $v0, .L8004D968 -/* 28D38 8004D938 0000182D */ daddu $v1, $zero, $zero -/* 28D3C 8004D93C 0200282D */ daddu $a1, $s0, $zero -/* 28D40 8004D940 0060202D */ daddu $a0, $v1, $zero -.L8004D944: -/* 28D44 8004D944 8E020078 */ lw $v0, 0x78($s0) -/* 28D48 8004D948 24630001 */ addiu $v1, $v1, 1 -/* 28D4C 8004D94C 00441021 */ addu $v0, $v0, $a0 -/* 28D50 8004D950 ACA20080 */ sw $v0, 0x80($a1) -/* 28D54 8004D954 24A50004 */ addiu $a1, $a1, 4 -/* 28D58 8004D958 9202021C */ lbu $v0, 0x21c($s0) -/* 28D5C 8004D95C 0062102B */ sltu $v0, $v1, $v0 -/* 28D60 8004D960 1440FFF8 */ bnez $v0, .L8004D944 -/* 28D64 8004D964 2484000C */ addiu $a0, $a0, 0xc -.L8004D968: -/* 28D68 8004D968 2C62000C */ sltiu $v0, $v1, 0xc -/* 28D6C 8004D96C 1040000C */ beqz $v0, .L8004D9A0 -/* 28D70 8004D970 00031080 */ sll $v0, $v1, 2 -/* 28D74 8004D974 00502021 */ addu $a0, $v0, $s0 -.L8004D978: -/* 28D78 8004D978 8E020080 */ lw $v0, 0x80($s0) -/* 28D7C 8004D97C 24630001 */ addiu $v1, $v1, 1 -/* 28D80 8004D980 AC820080 */ sw $v0, 0x80($a0) -/* 28D84 8004D984 2C62000C */ sltiu $v0, $v1, 0xc -/* 28D88 8004D988 1440FFFB */ bnez $v0, .L8004D978 -/* 28D8C 8004D98C 24840004 */ addiu $a0, $a0, 4 -/* 28D90 8004D990 08013668 */ j .L8004D9A0 -/* 28D94 8004D994 00000000 */ nop -.L8004D998: -/* 28D98 8004D998 AE000078 */ sw $zero, 0x78($s0) -/* 28D9C 8004D99C A200021C */ sb $zero, 0x21c($s0) -.L8004D9A0: -/* 28DA0 8004D9A0 96220010 */ lhu $v0, 0x10($s1) -/* 28DA4 8004D9A4 10400007 */ beqz $v0, .L8004D9C4 -/* 28DA8 8004D9A8 00021080 */ sll $v0, $v0, 2 -/* 28DAC 8004D9AC 8E030064 */ lw $v1, 0x64($s0) -/* 28DB0 8004D9B0 00431021 */ addu $v0, $v0, $v1 -/* 28DB4 8004D9B4 AE02007C */ sw $v0, 0x7c($s0) -/* 28DB8 8004D9B8 92220013 */ lbu $v0, 0x13($s1) -/* 28DBC 8004D9BC 08013673 */ j .L8004D9CC -/* 28DC0 8004D9C0 A202021D */ sb $v0, 0x21d($s0) -.L8004D9C4: -/* 28DC4 8004D9C4 AE00007C */ sw $zero, 0x7c($s0) -/* 28DC8 8004D9C8 A200021D */ sb $zero, 0x21d($s0) -.L8004D9CC: -/* 28DCC 8004D9CC AE14001C */ sw $s4, 0x1c($s0) -/* 28DD0 8004D9D0 0C013976 */ jal snd_initialize_bgm_player -/* 28DD4 8004D9D4 0200202D */ daddu $a0, $s0, $zero -/* 28DD8 8004D9D8 0801367A */ j .L8004D9E8 -/* 28DDC 8004D9DC 02A0102D */ daddu $v0, $s5, $zero -.L8004D9E0: -/* 28DE0 8004D9E0 24150003 */ addiu $s5, $zero, 3 -.L8004D9E4: -/* 28DE4 8004D9E4 02A0102D */ daddu $v0, $s5, $zero -.L8004D9E8: -/* 28DE8 8004D9E8 8FBF0028 */ lw $ra, 0x28($sp) -/* 28DEC 8004D9EC 8FB50024 */ lw $s5, 0x24($sp) -/* 28DF0 8004D9F0 8FB40020 */ lw $s4, 0x20($sp) -/* 28DF4 8004D9F4 8FB3001C */ lw $s3, 0x1c($sp) -/* 28DF8 8004D9F8 8FB20018 */ lw $s2, 0x18($sp) -/* 28DFC 8004D9FC 8FB10014 */ lw $s1, 0x14($sp) -/* 28E00 8004DA00 8FB00010 */ lw $s0, 0x10($sp) -/* 28E04 8004DA04 03E00008 */ jr $ra -/* 28E08 8004DA08 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_initialize_bgm_player.s b/ver/us/asm/nonmatchings/28910_len_5090/snd_initialize_bgm_player.s deleted file mode 100644 index 4732e82428..0000000000 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_initialize_bgm_player.s +++ /dev/null @@ -1,167 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_initialize_bgm_player -/* 299D8 8004E5D8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 299DC 8004E5DC AFB10014 */ sw $s1, 0x14($sp) -/* 299E0 8004E5E0 0080882D */ daddu $s1, $a0, $zero -/* 299E4 8004E5E4 AFB00010 */ sw $s0, 0x10($sp) -/* 299E8 8004E5E8 0000802D */ daddu $s0, $zero, $zero -/* 299EC 8004E5EC 2408FFFF */ addiu $t0, $zero, -1 -/* 299F0 8004E5F0 3C057FFF */ lui $a1, 0x7fff -/* 299F4 8004E5F4 24070040 */ addiu $a3, $zero, 0x40 -/* 299F8 8004E5F8 2406007F */ addiu $a2, $zero, 0x7f -/* 299FC 8004E5FC 2404025C */ addiu $a0, $zero, 0x25c -/* 29A00 8004E600 AFBF0018 */ sw $ra, 0x18($sp) -.L8004E604: -/* 29A04 8004E604 02241021 */ addu $v0, $s1, $a0 -/* 29A08 8004E608 AC48000C */ sw $t0, 0xc($v0) -/* 29A0C 8004E60C AC450018 */ sw $a1, 0x18($v0) -/* 29A10 8004E610 A047004A */ sb $a3, 0x4a($v0) -/* 29A14 8004E614 A040004B */ sb $zero, 0x4b($v0) -/* 29A18 8004E618 A4400044 */ sh $zero, 0x44($v0) -/* 29A1C 8004E61C A4400046 */ sh $zero, 0x46($v0) -/* 29A20 8004E620 A0400048 */ sb $zero, 0x48($v0) -/* 29A24 8004E624 A0460049 */ sb $a2, 0x49($v0) -/* 29A28 8004E628 A040004C */ sb $zero, 0x4c($v0) -/* 29A2C 8004E62C AC45002C */ sw $a1, 0x2c($v0) -/* 29A30 8004E630 AC400004 */ sw $zero, 4($v0) -/* 29A34 8004E634 AC400008 */ sw $zero, 8($v0) -/* 29A38 8004E638 A440003E */ sh $zero, 0x3e($v0) -/* 29A3C 8004E63C A4400038 */ sh $zero, 0x38($v0) -/* 29A40 8004E640 A0400056 */ sb $zero, 0x56($v0) -/* 29A44 8004E644 A440003A */ sh $zero, 0x3a($v0) -/* 29A48 8004E648 A0400055 */ sb $zero, 0x55($v0) -/* 29A4C 8004E64C AC40001C */ sw $zero, 0x1c($v0) -/* 29A50 8004E650 AC400020 */ sw $zero, 0x20($v0) -/* 29A54 8004E654 AC400024 */ sw $zero, 0x24($v0) -/* 29A58 8004E658 AC400030 */ sw $zero, 0x30($v0) -/* 29A5C 8004E65C A4400034 */ sh $zero, 0x34($v0) -/* 29A60 8004E660 A4400036 */ sh $zero, 0x36($v0) -/* 29A64 8004E664 A040004D */ sb $zero, 0x4d($v0) -/* 29A68 8004E668 A040004E */ sb $zero, 0x4e($v0) -/* 29A6C 8004E66C A040004F */ sb $zero, 0x4f($v0) -/* 29A70 8004E670 A0400050 */ sb $zero, 0x50($v0) -/* 29A74 8004E674 A0400051 */ sb $zero, 0x51($v0) -/* 29A78 8004E678 A0400054 */ sb $zero, 0x54($v0) -/* 29A7C 8004E67C A0400057 */ sb $zero, 0x57($v0) -/* 29A80 8004E680 A0400058 */ sb $zero, 0x58($v0) -/* 29A84 8004E684 A0400059 */ sb $zero, 0x59($v0) -/* 29A88 8004E688 A040005A */ sb $zero, 0x5a($v0) -/* 29A8C 8004E68C 92230235 */ lbu $v1, 0x235($s1) -/* 29A90 8004E690 A043005B */ sb $v1, 0x5b($v0) -/* 29A94 8004E694 A050005C */ sb $s0, 0x5c($v0) -/* 29A98 8004E698 26100001 */ addiu $s0, $s0, 1 -/* 29A9C 8004E69C 2A020010 */ slti $v0, $s0, 0x10 -/* 29AA0 8004E6A0 1440FFD8 */ bnez $v0, .L8004E604 -/* 29AA4 8004E6A4 24840060 */ addiu $a0, $a0, 0x60 -/* 29AA8 8004E6A8 0000802D */ daddu $s0, $zero, $zero -/* 29AAC 8004E6AC 2404FFFF */ addiu $a0, $zero, -1 -/* 29AB0 8004E6B0 3C014000 */ lui $at, 0x4000 -/* 29AB4 8004E6B4 44810000 */ mtc1 $at, $f0 -/* 29AB8 8004E6B8 2403085C */ addiu $v1, $zero, 0x85c -.L8004E6BC: -/* 29ABC 8004E6BC 02231021 */ addu $v0, $s1, $v1 -/* 29AC0 8004E6C0 26100001 */ addiu $s0, $s0, 1 -/* 29AC4 8004E6C4 AC440000 */ sw $a0, ($v0) -/* 29AC8 8004E6C8 E4400004 */ swc1 $f0, 4($v0) -/* 29ACC 8004E6CC A4400014 */ sh $zero, 0x14($v0) -/* 29AD0 8004E6D0 A0400016 */ sb $zero, 0x16($v0) -/* 29AD4 8004E6D4 AC40000C */ sw $zero, 0xc($v0) -/* 29AD8 8004E6D8 A0400012 */ sb $zero, 0x12($v0) -/* 29ADC 8004E6DC 2A020018 */ slti $v0, $s0, 0x18 -/* 29AE0 8004E6E0 1440FFF6 */ bnez $v0, .L8004E6BC -/* 29AE4 8004E6E4 24630018 */ addiu $v1, $v1, 0x18 -/* 29AE8 8004E6E8 0C014240 */ jal func_80050900 -/* 29AEC 8004E6EC 0220202D */ daddu $a0, $s1, $zero -/* 29AF0 8004E6F0 0000802D */ daddu $s0, $zero, $zero -/* 29AF4 8004E6F4 3C014300 */ lui $at, 0x4300 -/* 29AF8 8004E6F8 44810000 */ mtc1 $at, $f0 -/* 29AFC 8004E6FC 3C013F80 */ lui $at, 0x3f80 -/* 29B00 8004E700 44811000 */ mtc1 $at, $f2 -/* 29B04 8004E704 24023CF0 */ addiu $v0, $zero, 0x3cf0 -/* 29B08 8004E708 AE2200B0 */ sw $v0, 0xb0($s1) -/* 29B0C 8004E70C 2402009C */ addiu $v0, $zero, 0x9c -/* 29B10 8004E710 A6220208 */ sh $v0, 0x208($s1) -/* 29B14 8004E714 24020080 */ addiu $v0, $zero, 0x80 -/* 29B18 8004E718 A222021E */ sb $v0, 0x21e($s1) -/* 29B1C 8004E71C 3C027F00 */ lui $v0, 0x7f00 -/* 29B20 8004E720 AE2200C0 */ sw $v0, 0xc0($s1) -/* 29B24 8004E724 24020001 */ addiu $v0, $zero, 1 -/* 29B28 8004E728 AE200020 */ sw $zero, 0x20($s1) -/* 29B2C 8004E72C AE200074 */ sw $zero, 0x74($s1) -/* 29B30 8004E730 AE2000B8 */ sw $zero, 0xb8($s1) -/* 29B34 8004E734 A620020C */ sh $zero, 0x20c($s1) -/* 29B38 8004E738 A620020E */ sh $zero, 0x20e($s1) -/* 29B3C 8004E73C AE2000CC */ sw $zero, 0xcc($s1) -/* 29B40 8004E740 AE2000C8 */ sw $zero, 0xc8($s1) -/* 29B44 8004E744 AE2000C4 */ sw $zero, 0xc4($s1) -/* 29B48 8004E748 AE20016C */ sw $zero, 0x16c($s1) -/* 29B4C 8004E74C A2200170 */ sb $zero, 0x170($s1) -/* 29B50 8004E750 A2200171 */ sb $zero, 0x171($s1) -/* 29B54 8004E754 AE200164 */ sw $zero, 0x164($s1) -/* 29B58 8004E758 AE200160 */ sw $zero, 0x160($s1) -/* 29B5C 8004E75C AE20015C */ sw $zero, 0x15c($s1) -/* 29B60 8004E760 AE200158 */ sw $zero, 0x158($s1) -/* 29B64 8004E764 AE200168 */ sw $zero, 0x168($s1) -/* 29B68 8004E768 A2200210 */ sb $zero, 0x210($s1) -/* 29B6C 8004E76C A2200222 */ sb $zero, 0x222($s1) -/* 29B70 8004E770 A2200223 */ sb $zero, 0x223($s1) -/* 29B74 8004E774 AE200204 */ sw $zero, 0x204($s1) -/* 29B78 8004E778 A2200232 */ sb $zero, 0x232($s1) -/* 29B7C 8004E77C A2220233 */ sb $v0, 0x233($s1) -/* 29B80 8004E780 A2200211 */ sb $zero, 0x211($s1) -/* 29B84 8004E784 E62000D0 */ swc1 $f0, 0xd0($s1) -/* 29B88 8004E788 E62200D0 */ swc1 $f2, 0xd0($s1) -/* 29B8C 8004E78C 0220202D */ daddu $a0, $s1, $zero -.L8004E790: -/* 29B90 8004E790 0C013A11 */ jal func_8004E844 -/* 29B94 8004E794 0200282D */ daddu $a1, $s0, $zero -/* 29B98 8004E798 26100001 */ addiu $s0, $s0, 1 -/* 29B9C 8004E79C 2A020008 */ slti $v0, $s0, 8 -/* 29BA0 8004E7A0 1440FFFB */ bnez $v0, .L8004E790 -/* 29BA4 8004E7A4 0220202D */ daddu $a0, $s1, $zero -/* 29BA8 8004E7A8 24100003 */ addiu $s0, $zero, 3 -/* 29BAC 8004E7AC 02301021 */ addu $v0, $s1, $s0 -.L8004E7B0: -/* 29BB0 8004E7B0 A0400224 */ sb $zero, 0x224($v0) -/* 29BB4 8004E7B4 2610FFFF */ addiu $s0, $s0, -1 -/* 29BB8 8004E7B8 0601FFFD */ bgez $s0, .L8004E7B0 -/* 29BBC 8004E7BC 2442FFFF */ addiu $v0, $v0, -1 -/* 29BC0 8004E7C0 0000802D */ daddu $s0, $zero, $zero -/* 29BC4 8004E7C4 0220182D */ daddu $v1, $s1, $zero -/* 29BC8 8004E7C8 A2200220 */ sb $zero, 0x220($s1) -/* 29BCC 8004E7CC AE200018 */ sw $zero, 0x18($s1) -.L8004E7D0: -/* 29BD0 8004E7D0 8E220068 */ lw $v0, 0x68($s1) -/* 29BD4 8004E7D4 26100001 */ addiu $s0, $s0, 1 -/* 29BD8 8004E7D8 AC6200D8 */ sw $v0, 0xd8($v1) -/* 29BDC 8004E7DC 2A020020 */ slti $v0, $s0, 0x20 -/* 29BE0 8004E7E0 1440FFFB */ bnez $v0, .L8004E7D0 -/* 29BE4 8004E7E4 24630004 */ addiu $v1, $v1, 4 -/* 29BE8 8004E7E8 8E240068 */ lw $a0, 0x68($s1) -/* 29BEC 8004E7EC 24050001 */ addiu $a1, $zero, 1 -/* 29BF0 8004E7F0 3C07F000 */ lui $a3, 0xf000 -/* 29BF4 8004E7F4 3C063000 */ lui $a2, 0x3000 -.L8004E7F8: -/* 29BF8 8004E7F8 8C830000 */ lw $v1, ($a0) -/* 29BFC 8004E7FC 14600003 */ bnez $v1, .L8004E80C -/* 29C00 8004E800 24840004 */ addiu $a0, $a0, 4 -/* 29C04 8004E804 08013A09 */ j .L8004E824 -/* 29C08 8004E808 0000282D */ daddu $a1, $zero, $zero -.L8004E80C: -/* 29C0C 8004E80C 00671024 */ and $v0, $v1, $a3 -/* 29C10 8004E810 14460004 */ bne $v0, $a2, .L8004E824 -/* 29C14 8004E814 3062001F */ andi $v0, $v1, 0x1f -/* 29C18 8004E818 00021080 */ sll $v0, $v0, 2 -/* 29C1C 8004E81C 02221021 */ addu $v0, $s1, $v0 -/* 29C20 8004E820 AC4400D8 */ sw $a0, 0xd8($v0) -.L8004E824: -/* 29C24 8004E824 14A0FFF4 */ bnez $a1, .L8004E7F8 -/* 29C28 8004E828 24020002 */ addiu $v0, $zero, 2 -/* 29C2C 8004E82C A2220221 */ sb $v0, 0x221($s1) -/* 29C30 8004E830 8FBF0018 */ lw $ra, 0x18($sp) -/* 29C34 8004E834 8FB10014 */ lw $s1, 0x14($sp) -/* 29C38 8004E838 8FB00010 */ lw $s0, 0x10($sp) -/* 29C3C 8004E83C 03E00008 */ jr $ra -/* 29C40 8004E840 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050B90.s b/ver/us/asm/nonmatchings/2BF90/func_80050B90.s deleted file mode 100644 index e1f5ded4d4..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050B90.s +++ /dev/null @@ -1,45 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050B90 -/* 2BF90 80050B90 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2BF94 80050B94 AFB00010 */ sw $s0, 0x10($sp) -/* 2BF98 80050B98 0080802D */ daddu $s0, $a0, $zero -/* 2BF9C 80050B9C AFB3001C */ sw $s3, 0x1c($sp) -/* 2BFA0 80050BA0 00E0982D */ daddu $s3, $a3, $zero -/* 2BFA4 80050BA4 AFB10014 */ sw $s1, 0x14($sp) -/* 2BFA8 80050BA8 00A0882D */ daddu $s1, $a1, $zero -/* 2BFAC 80050BAC AFB20018 */ sw $s2, 0x18($sp) -/* 2BFB0 80050BB0 00C0902D */ daddu $s2, $a2, $zero -/* 2BFB4 80050BB4 24050834 */ addiu $a1, $zero, 0x834 -/* 2BFB8 80050BB8 AFBF0020 */ sw $ra, 0x20($sp) -/* 2BFBC 80050BBC 0C0153A4 */ jal snd_memset -/* 2BFC0 80050BC0 0000302D */ daddu $a2, $zero, $zero -/* 2BFC4 80050BC4 0000182D */ daddu $v1, $zero, $zero -/* 2BFC8 80050BC8 24060001 */ addiu $a2, $zero, 1 -/* 2BFCC 80050BCC 3C057F00 */ lui $a1, 0x7f00 -/* 2BFD0 80050BD0 24040024 */ addiu $a0, $zero, 0x24 -.L80050BD4: -/* 2BFD4 80050BD4 02041021 */ addu $v0, $s0, $a0 -/* 2BFD8 80050BD8 A0430014 */ sb $v1, 0x14($v0) -/* 2BFDC 80050BDC 24630001 */ addiu $v1, $v1, 1 -/* 2BFE0 80050BE0 AC460018 */ sw $a2, 0x18($v0) -/* 2BFE4 80050BE4 AC450038 */ sw $a1, 0x38($v0) -/* 2BFE8 80050BE8 28620004 */ slti $v0, $v1, 4 -/* 2BFEC 80050BEC 1440FFF9 */ bnez $v0, .L80050BD4 -/* 2BFF0 80050BF0 248401E4 */ addiu $a0, $a0, 0x1e4 -/* 2BFF4 80050BF4 24020001 */ addiu $v0, $zero, 1 -/* 2BFF8 80050BF8 AE020004 */ sw $v0, 4($s0) -/* 2BFFC 80050BFC 24020002 */ addiu $v0, $zero, 2 -/* 2C000 80050C00 AE130000 */ sw $s3, ($s0) -/* 2C004 80050C04 AE02000C */ sw $v0, 0xc($s0) -/* 2C008 80050C08 AE020008 */ sw $v0, 8($s0) -/* 2C00C 80050C0C A2110022 */ sb $s1, 0x22($s0) -/* 2C010 80050C10 A2120023 */ sb $s2, 0x23($s0) -/* 2C014 80050C14 8FBF0020 */ lw $ra, 0x20($sp) -/* 2C018 80050C18 8FB3001C */ lw $s3, 0x1c($sp) -/* 2C01C 80050C1C 8FB20018 */ lw $s2, 0x18($sp) -/* 2C020 80050C20 8FB10014 */ lw $s1, 0x14($sp) -/* 2C024 80050C24 8FB00010 */ lw $s0, 0x10($sp) -/* 2C028 80050C28 03E00008 */ jr $ra -/* 2C02C 80050C2C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050C64.s b/ver/us/asm/nonmatchings/2BF90/func_80050C64.s deleted file mode 100644 index 49e1ce14c1..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050C64.s +++ /dev/null @@ -1,20 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050C64 -/* 2C064 80050C64 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C068 80050C68 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C06C 80050C6C 00041100 */ sll $v0, $a0, 4 -/* 2C070 80050C70 00441023 */ subu $v0, $v0, $a0 -/* 2C074 80050C74 000210C0 */ sll $v0, $v0, 3 -/* 2C078 80050C78 00441021 */ addu $v0, $v0, $a0 -/* 2C07C 80050C7C 00021080 */ sll $v0, $v0, 2 -/* 2C080 80050C80 24420024 */ addiu $v0, $v0, 0x24 -/* 2C084 80050C84 14A00003 */ bnez $a1, .L80050C94 -/* 2C088 80050C88 00621821 */ addu $v1, $v1, $v0 -/* 2C08C 80050C8C 03E00008 */ jr $ra -/* 2C090 80050C90 A0600025 */ sb $zero, 0x25($v1) -.L80050C94: -/* 2C094 80050C94 24020002 */ addiu $v0, $zero, 2 -/* 2C098 80050C98 03E00008 */ jr $ra -/* 2C09C 80050C9C A0620025 */ sb $v0, 0x25($v1) diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050CA0.s b/ver/us/asm/nonmatchings/2BF90/func_80050CA0.s deleted file mode 100644 index 92cda6417c..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050CA0.s +++ /dev/null @@ -1,51 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050CA0 -/* 2C0A0 80050CA0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 2C0A4 80050CA4 0080302D */ daddu $a2, $a0, $zero -/* 2C0A8 80050CA8 AFB20018 */ sw $s2, 0x18($sp) -/* 2C0AC 80050CAC 00A0902D */ daddu $s2, $a1, $zero -/* 2C0B0 80050CB0 AFB10014 */ sw $s1, 0x14($sp) -/* 2C0B4 80050CB4 0000882D */ daddu $s1, $zero, $zero -/* 2C0B8 80050CB8 00061900 */ sll $v1, $a2, 4 -/* 2C0BC 80050CBC 00661823 */ subu $v1, $v1, $a2 -/* 2C0C0 80050CC0 000318C0 */ sll $v1, $v1, 3 -/* 2C0C4 80050CC4 00661821 */ addu $v1, $v1, $a2 -/* 2C0C8 80050CC8 00031880 */ sll $v1, $v1, 2 -/* 2C0CC 80050CCC 24630024 */ addiu $v1, $v1, 0x24 -/* 2C0D0 80050CD0 3C04800A */ lui $a0, %hi(D_8009A628) -/* 2C0D4 80050CD4 8C84A628 */ lw $a0, %lo(D_8009A628)($a0) -/* 2C0D8 80050CD8 00061080 */ sll $v0, $a2, 2 -/* 2C0DC 80050CDC AFBF001C */ sw $ra, 0x1c($sp) -/* 2C0E0 80050CE0 AFB00010 */ sw $s0, 0x10($sp) -/* 2C0E4 80050CE4 00821021 */ addu $v0, $a0, $v0 -/* 2C0E8 80050CE8 8C450010 */ lw $a1, 0x10($v0) -/* 2C0EC 80050CEC 10A00010 */ beqz $a1, .L80050D30 -/* 2C0F0 80050CF0 00838021 */ addu $s0, $a0, $v1 -/* 2C0F4 80050CF4 8E020020 */ lw $v0, 0x20($s0) -/* 2C0F8 80050CF8 5440000E */ bnel $v0, $zero, .L80050D34 -/* 2C0FC 80050CFC 24110001 */ addiu $s1, $zero, 1 -/* 2C100 80050D00 0C014429 */ jal func_800510A4 -/* 2C104 80050D04 00000000 */ nop -/* 2C108 80050D08 1240000A */ beqz $s2, .L80050D34 -/* 2C10C 80050D0C 0200202D */ daddu $a0, $s0, $zero -/* 2C110 80050D10 2402007F */ addiu $v0, $zero, 0x7f -/* 2C114 80050D14 A4920028 */ sh $s2, 0x28($a0) -/* 2C118 80050D18 A080002A */ sb $zero, 0x2a($a0) -/* 2C11C 80050D1C A082002B */ sb $v0, 0x2b($a0) -/* 2C120 80050D20 0C014354 */ jal func_80050D50 -/* 2C124 80050D24 A0800026 */ sb $zero, 0x26($a0) -/* 2C128 80050D28 0801434E */ j .L80050D38 -/* 2C12C 80050D2C 0220102D */ daddu $v0, $s1, $zero -.L80050D30: -/* 2C130 80050D30 24110002 */ addiu $s1, $zero, 2 -.L80050D34: -/* 2C134 80050D34 0220102D */ daddu $v0, $s1, $zero -.L80050D38: -/* 2C138 80050D38 8FBF001C */ lw $ra, 0x1c($sp) -/* 2C13C 80050D3C 8FB20018 */ lw $s2, 0x18($sp) -/* 2C140 80050D40 8FB10014 */ lw $s1, 0x14($sp) -/* 2C144 80050D44 8FB00010 */ lw $s0, 0x10($sp) -/* 2C148 80050D48 03E00008 */ jr $ra -/* 2C14C 80050D4C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050D50.s b/ver/us/asm/nonmatchings/2BF90/func_80050D50.s deleted file mode 100644 index d1475534b4..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050D50.s +++ /dev/null @@ -1,58 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050D50 -/* 2C150 80050D50 0080302D */ daddu $a2, $a0, $zero -/* 2C154 80050D54 240300FF */ addiu $v1, $zero, 0xff -/* 2C158 80050D58 90C2002A */ lbu $v0, 0x2a($a2) -/* 2C15C 80050D5C 94C50028 */ lhu $a1, 0x28($a2) -/* 2C160 80050D60 14430004 */ bne $v0, $v1, .L80050D74 -/* 2C164 80050D64 24A2FF06 */ addiu $v0, $a1, -0xfa -/* 2C168 80050D68 80C20038 */ lb $v0, 0x38($a2) -/* 2C16C 80050D6C A0C2002A */ sb $v0, 0x2a($a2) -/* 2C170 80050D70 24A2FF06 */ addiu $v0, $a1, -0xfa -.L80050D74: -/* 2C174 80050D74 3042FFFF */ andi $v0, $v0, 0xffff -/* 2C178 80050D78 2C422617 */ sltiu $v0, $v0, 0x2617 -/* 2C17C 80050D7C 10400022 */ beqz $v0, .L80050E08 -/* 2C180 80050D80 3C041CF0 */ lui $a0, 0x1cf0 -/* 2C184 80050D84 34846ADB */ ori $a0, $a0, 0x6adb -/* 2C188 80050D88 30A3FFFF */ andi $v1, $a1, 0xffff -/* 2C18C 80050D8C 00031080 */ sll $v0, $v1, 2 -/* 2C190 80050D90 00431021 */ addu $v0, $v0, $v1 -/* 2C194 80050D94 00021040 */ sll $v0, $v0, 1 -/* 2C198 80050D98 00440019 */ multu $v0, $a0 -/* 2C19C 80050D9C 90C3002B */ lbu $v1, 0x2b($a2) -/* 2C1A0 80050DA0 00002010 */ mfhi $a0 -/* 2C1A4 80050DA4 00441023 */ subu $v0, $v0, $a0 -/* 2C1A8 80050DA8 00021042 */ srl $v0, $v0, 1 -/* 2C1AC 80050DAC 00822021 */ addu $a0, $a0, $v0 -/* 2C1B0 80050DB0 90C2002A */ lbu $v0, 0x2a($a2) -/* 2C1B4 80050DB4 00042182 */ srl $a0, $a0, 6 -/* 2C1B8 80050DB8 00621823 */ subu $v1, $v1, $v0 -/* 2C1BC 80050DBC 00031E00 */ sll $v1, $v1, 0x18 -/* 2C1C0 80050DC0 3082FFFF */ andi $v0, $a0, 0xffff -/* 2C1C4 80050DC4 14400002 */ bnez $v0, .L80050DD0 -/* 2C1C8 80050DC8 0062001A */ div $zero, $v1, $v0 -/* 2C1CC 80050DCC 0007000D */ break 7 -.L80050DD0: -/* 2C1D0 80050DD0 2401FFFF */ addiu $at, $zero, -1 -/* 2C1D4 80050DD4 14410004 */ bne $v0, $at, .L80050DE8 -/* 2C1D8 80050DD8 3C018000 */ lui $at, 0x8000 -/* 2C1DC 80050DDC 14610002 */ bne $v1, $at, .L80050DE8 -/* 2C1E0 80050DE0 00000000 */ nop -/* 2C1E4 80050DE4 0006000D */ break 6 -.L80050DE8: -/* 2C1E8 80050DE8 00001812 */ mflo $v1 -/* 2C1EC 80050DEC 90C5002B */ lbu $a1, 0x2b($a2) -/* 2C1F0 80050DF0 90C2002A */ lbu $v0, 0x2a($a2) -/* 2C1F4 80050DF4 A0C50042 */ sb $a1, 0x42($a2) -/* 2C1F8 80050DF8 A4C40040 */ sh $a0, 0x40($a2) -/* 2C1FC 80050DFC 00021600 */ sll $v0, $v0, 0x18 -/* 2C200 80050E00 ACC20038 */ sw $v0, 0x38($a2) -/* 2C204 80050E04 ACC3003C */ sw $v1, 0x3c($a2) -.L80050E08: -/* 2C208 80050E08 A4C00028 */ sh $zero, 0x28($a2) -/* 2C20C 80050E0C A0C0002A */ sb $zero, 0x2a($a2) -/* 2C210 80050E10 03E00008 */ jr $ra -/* 2C214 80050E14 A0C0002B */ sb $zero, 0x2b($a2) diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050E18.s b/ver/us/asm/nonmatchings/2BF90/func_80050E18.s deleted file mode 100644 index e6fd996388..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050E18.s +++ /dev/null @@ -1,33 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050E18 -/* 2C218 80050E18 00041100 */ sll $v0, $a0, 4 -/* 2C21C 80050E1C 00441023 */ subu $v0, $v0, $a0 -/* 2C220 80050E20 000210C0 */ sll $v0, $v0, 3 -/* 2C224 80050E24 00441021 */ addu $v0, $v0, $a0 -/* 2C228 80050E28 00021080 */ sll $v0, $v0, 2 -/* 2C22C 80050E2C 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C230 80050E30 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C234 80050E34 24420024 */ addiu $v0, $v0, 0x24 -/* 2C238 80050E38 00621821 */ addu $v1, $v1, $v0 -/* 2C23C 80050E3C 8C620004 */ lw $v0, 4($v1) -/* 2C240 80050E40 1040000E */ beqz $v0, .L80050E7C -/* 2C244 80050E44 00000000 */ nop -/* 2C248 80050E48 8C620008 */ lw $v0, 8($v1) -/* 2C24C 80050E4C 1040000B */ beqz $v0, .L80050E7C -/* 2C250 80050E50 00000000 */ nop -/* 2C254 80050E54 10A00008 */ beqz $a1, .L80050E78 -/* 2C258 80050E58 24020003 */ addiu $v0, $zero, 3 -/* 2C25C 80050E5C 240200FF */ addiu $v0, $zero, 0xff -/* 2C260 80050E60 A062002A */ sb $v0, 0x2a($v1) -/* 2C264 80050E64 24020002 */ addiu $v0, $zero, 2 -/* 2C268 80050E68 A4650028 */ sh $a1, 0x28($v1) -/* 2C26C 80050E6C A060002B */ sb $zero, 0x2b($v1) -/* 2C270 80050E70 03E00008 */ jr $ra -/* 2C274 80050E74 A0620026 */ sb $v0, 0x26($v1) -.L80050E78: -/* 2C278 80050E78 A0620024 */ sb $v0, 0x24($v1) -.L80050E7C: -/* 2C27C 80050E7C 03E00008 */ jr $ra -/* 2C280 80050E80 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050E84.s b/ver/us/asm/nonmatchings/2BF90/func_80050E84.s deleted file mode 100644 index 75f1b02c0f..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050E84.s +++ /dev/null @@ -1,34 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050E84 -/* 2C284 80050E84 00041100 */ sll $v0, $a0, 4 -/* 2C288 80050E88 00441023 */ subu $v0, $v0, $a0 -/* 2C28C 80050E8C 000210C0 */ sll $v0, $v0, 3 -/* 2C290 80050E90 00441021 */ addu $v0, $v0, $a0 -/* 2C294 80050E94 00021080 */ sll $v0, $v0, 2 -/* 2C298 80050E98 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C29C 80050E9C 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C2A0 80050EA0 24420024 */ addiu $v0, $v0, 0x24 -/* 2C2A4 80050EA4 00621821 */ addu $v1, $v1, $v0 -/* 2C2A8 80050EA8 8C620004 */ lw $v0, 4($v1) -/* 2C2AC 80050EAC 1040000E */ beqz $v0, .L80050EE8 -/* 2C2B0 80050EB0 00000000 */ nop -/* 2C2B4 80050EB4 8C620008 */ lw $v0, 8($v1) -/* 2C2B8 80050EB8 1040000B */ beqz $v0, .L80050EE8 -/* 2C2BC 80050EBC 24020001 */ addiu $v0, $zero, 1 -/* 2C2C0 80050EC0 10A00003 */ beqz $a1, .L80050ED0 -/* 2C2C4 80050EC4 A0620024 */ sb $v0, 0x24($v1) -/* 2C2C8 80050EC8 080143B6 */ j .L80050ED8 -/* 2C2CC 80050ECC A4650028 */ sh $a1, 0x28($v1) -.L80050ED0: -/* 2C2D0 80050ED0 240200FA */ addiu $v0, $zero, 0xfa -/* 2C2D4 80050ED4 A4620028 */ sh $v0, 0x28($v1) -.L80050ED8: -/* 2C2D8 80050ED8 2402007F */ addiu $v0, $zero, 0x7f -/* 2C2DC 80050EDC A060002A */ sb $zero, 0x2a($v1) -/* 2C2E0 80050EE0 A062002B */ sb $v0, 0x2b($v1) -/* 2C2E4 80050EE4 A0600026 */ sb $zero, 0x26($v1) -.L80050EE8: -/* 2C2E8 80050EE8 03E00008 */ jr $ra -/* 2C2EC 80050EEC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050EF0.s b/ver/us/asm/nonmatchings/2BF90/func_80050EF0.s deleted file mode 100644 index 592b76bcf4..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050EF0.s +++ /dev/null @@ -1,35 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050EF0 -/* 2C2F0 80050EF0 00041100 */ sll $v0, $a0, 4 -/* 2C2F4 80050EF4 00441023 */ subu $v0, $v0, $a0 -/* 2C2F8 80050EF8 000210C0 */ sll $v0, $v0, 3 -/* 2C2FC 80050EFC 00441021 */ addu $v0, $v0, $a0 -/* 2C300 80050F00 00021080 */ sll $v0, $v0, 2 -/* 2C304 80050F04 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C308 80050F08 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C30C 80050F0C 24420024 */ addiu $v0, $v0, 0x24 -/* 2C310 80050F10 00621821 */ addu $v1, $v1, $v0 -/* 2C314 80050F14 8C620004 */ lw $v0, 4($v1) -/* 2C318 80050F18 10400010 */ beqz $v0, .L80050F5C -/* 2C31C 80050F1C 00000000 */ nop -/* 2C320 80050F20 8C620008 */ lw $v0, 8($v1) -/* 2C324 80050F24 1040000D */ beqz $v0, .L80050F5C -/* 2C328 80050F28 00000000 */ nop -/* 2C32C 80050F2C 90620024 */ lbu $v0, 0x24($v1) -/* 2C330 80050F30 10400005 */ beqz $v0, .L80050F48 -/* 2C334 80050F34 00000000 */ nop -/* 2C338 80050F38 AC600008 */ sw $zero, 8($v1) -/* 2C33C 80050F3C AC600020 */ sw $zero, 0x20($v1) -/* 2C340 80050F40 03E00008 */ jr $ra -/* 2C344 80050F44 A0600024 */ sb $zero, 0x24($v1) -.L80050F48: -/* 2C348 80050F48 3C028008 */ lui $v0, %hi(D_80078520) -/* 2C34C 80050F4C 24428520 */ addiu $v0, $v0, %lo(D_80078520) -/* 2C350 80050F50 AC620008 */ sw $v0, 8($v1) -/* 2C354 80050F54 24020001 */ addiu $v0, $zero, 1 -/* 2C358 80050F58 AC620018 */ sw $v0, 0x18($v1) -.L80050F5C: -/* 2C35C 80050F5C 03E00008 */ jr $ra -/* 2C360 80050F60 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050F64.s b/ver/us/asm/nonmatchings/2BF90/func_80050F64.s deleted file mode 100644 index b33439e0f0..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050F64.s +++ /dev/null @@ -1,34 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050F64 -/* 2C364 80050F64 00041100 */ sll $v0, $a0, 4 -/* 2C368 80050F68 00441023 */ subu $v0, $v0, $a0 -/* 2C36C 80050F6C 000210C0 */ sll $v0, $v0, 3 -/* 2C370 80050F70 00441021 */ addu $v0, $v0, $a0 -/* 2C374 80050F74 00021080 */ sll $v0, $v0, 2 -/* 2C378 80050F78 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C37C 80050F7C 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C380 80050F80 24420024 */ addiu $v0, $v0, 0x24 -/* 2C384 80050F84 00621821 */ addu $v1, $v1, $v0 -/* 2C388 80050F88 8C620004 */ lw $v0, 4($v1) -/* 2C38C 80050F8C 1040000E */ beqz $v0, .L80050FC8 -/* 2C390 80050F90 00000000 */ nop -/* 2C394 80050F94 8C620008 */ lw $v0, 8($v1) -/* 2C398 80050F98 1040000B */ beqz $v0, .L80050FC8 -/* 2C39C 80050F9C 00000000 */ nop -/* 2C3A0 80050FA0 10A00003 */ beqz $a1, .L80050FB0 -/* 2C3A4 80050FA4 240200FA */ addiu $v0, $zero, 0xfa -/* 2C3A8 80050FA8 080143ED */ j .L80050FB4 -/* 2C3AC 80050FAC A4650028 */ sh $a1, 0x28($v1) -.L80050FB0: -/* 2C3B0 80050FB0 A4620028 */ sh $v0, 0x28($v1) -.L80050FB4: -/* 2C3B4 80050FB4 240200FF */ addiu $v0, $zero, 0xff -/* 2C3B8 80050FB8 A062002A */ sb $v0, 0x2a($v1) -/* 2C3BC 80050FBC 24020001 */ addiu $v0, $zero, 1 -/* 2C3C0 80050FC0 A060002B */ sb $zero, 0x2b($v1) -/* 2C3C4 80050FC4 A0620026 */ sb $v0, 0x26($v1) -.L80050FC8: -/* 2C3C8 80050FC8 03E00008 */ jr $ra -/* 2C3CC 80050FCC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_80050FD0.s b/ver/us/asm/nonmatchings/2BF90/func_80050FD0.s deleted file mode 100644 index 50ea0d38f7..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80050FD0.s +++ /dev/null @@ -1,41 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80050FD0 -/* 2C3D0 80050FD0 00041100 */ sll $v0, $a0, 4 -/* 2C3D4 80050FD4 00441023 */ subu $v0, $v0, $a0 -/* 2C3D8 80050FD8 000210C0 */ sll $v0, $v0, 3 -/* 2C3DC 80050FDC 00441021 */ addu $v0, $v0, $a0 -/* 2C3E0 80050FE0 00021080 */ sll $v0, $v0, 2 -/* 2C3E4 80050FE4 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C3E8 80050FE8 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C3EC 80050FEC 24420024 */ addiu $v0, $v0, 0x24 -/* 2C3F0 80050FF0 00621821 */ addu $v1, $v1, $v0 -/* 2C3F4 80050FF4 8C620004 */ lw $v0, 4($v1) -/* 2C3F8 80050FF8 10400013 */ beqz $v0, .L80051048 -/* 2C3FC 80050FFC 00000000 */ nop -/* 2C400 80051000 8C620008 */ lw $v0, 8($v1) -/* 2C404 80051004 10400010 */ beqz $v0, .L80051048 -/* 2C408 80051008 00000000 */ nop -/* 2C40C 8005100C 1CC00003 */ bgtz $a2, .L8005101C -/* 2C410 80051010 28C20080 */ slti $v0, $a2, 0x80 -/* 2C414 80051014 08014409 */ j .L80051024 -/* 2C418 80051018 24060001 */ addiu $a2, $zero, 1 -.L8005101C: -/* 2C41C 8005101C 50400001 */ beql $v0, $zero, .L80051024 -/* 2C420 80051020 2406007F */ addiu $a2, $zero, 0x7f -.L80051024: -/* 2C424 80051024 10A00003 */ beqz $a1, .L80051034 -/* 2C428 80051028 240200FA */ addiu $v0, $zero, 0xfa -/* 2C42C 8005102C 0801440E */ j .L80051038 -/* 2C430 80051030 A4650028 */ sh $a1, 0x28($v1) -.L80051034: -/* 2C434 80051034 A4620028 */ sh $v0, 0x28($v1) -.L80051038: -/* 2C438 80051038 240200FF */ addiu $v0, $zero, 0xff -/* 2C43C 8005103C A062002A */ sb $v0, 0x2a($v1) -/* 2C440 80051040 A066002B */ sb $a2, 0x2b($v1) -/* 2C444 80051044 A0600026 */ sb $zero, 0x26($v1) -.L80051048: -/* 2C448 80051048 03E00008 */ jr $ra -/* 2C44C 8005104C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_80051050.s b/ver/us/asm/nonmatchings/2BF90/func_80051050.s deleted file mode 100644 index 4843baf201..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80051050.s +++ /dev/null @@ -1,26 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80051050 -/* 2C450 80051050 00041100 */ sll $v0, $a0, 4 -/* 2C454 80051054 00441023 */ subu $v0, $v0, $a0 -/* 2C458 80051058 000210C0 */ sll $v0, $v0, 3 -/* 2C45C 8005105C 00441021 */ addu $v0, $v0, $a0 -/* 2C460 80051060 00021080 */ sll $v0, $v0, 2 -/* 2C464 80051064 3C03800A */ lui $v1, %hi(D_8009A628) -/* 2C468 80051068 8C63A628 */ lw $v1, %lo(D_8009A628)($v1) -/* 2C46C 8005106C 24420024 */ addiu $v0, $v0, 0x24 -/* 2C470 80051070 00621821 */ addu $v1, $v1, $v0 -/* 2C474 80051074 8C620004 */ lw $v0, 4($v1) -/* 2C478 80051078 10400008 */ beqz $v0, .L8005109C -/* 2C47C 8005107C 0000202D */ daddu $a0, $zero, $zero -/* 2C480 80051080 8C620008 */ lw $v0, 8($v1) -/* 2C484 80051084 10400005 */ beqz $v0, .L8005109C -/* 2C488 80051088 00000000 */ nop -/* 2C48C 8005108C 90620024 */ lbu $v0, 0x24($v1) -/* 2C490 80051090 10400002 */ beqz $v0, .L8005109C -/* 2C494 80051094 24040001 */ addiu $a0, $zero, 1 -/* 2C498 80051098 24040002 */ addiu $a0, $zero, 2 -.L8005109C: -/* 2C49C 8005109C 03E00008 */ jr $ra -/* 2C4A0 800510A0 0080102D */ daddu $v0, $a0, $zero diff --git a/ver/us/asm/nonmatchings/2BF90/func_800510A4.s b/ver/us/asm/nonmatchings/2BF90/func_800510A4.s deleted file mode 100644 index 6c4dddc86a..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_800510A4.s +++ /dev/null @@ -1,76 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800510A4 -/* 2C4A4 800510A4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2C4A8 800510A8 AFB3001C */ sw $s3, 0x1c($sp) -/* 2C4AC 800510AC 0080982D */ daddu $s3, $a0, $zero -/* 2C4B0 800510B0 AFB00010 */ sw $s0, 0x10($sp) -/* 2C4B4 800510B4 00A0802D */ daddu $s0, $a1, $zero -/* 2C4B8 800510B8 AFB10014 */ sw $s1, 0x14($sp) -/* 2C4BC 800510BC 00C0882D */ daddu $s1, $a2, $zero -/* 2C4C0 800510C0 00111100 */ sll $v0, $s1, 4 -/* 2C4C4 800510C4 00511023 */ subu $v0, $v0, $s1 -/* 2C4C8 800510C8 000210C0 */ sll $v0, $v0, 3 -/* 2C4CC 800510CC 00511021 */ addu $v0, $v0, $s1 -/* 2C4D0 800510D0 00021080 */ sll $v0, $v0, 2 -/* 2C4D4 800510D4 24420024 */ addiu $v0, $v0, 0x24 -/* 2C4D8 800510D8 AFB20018 */ sw $s2, 0x18($sp) -/* 2C4DC 800510DC 02629021 */ addu $s2, $s3, $v0 -/* 2C4E0 800510E0 0240202D */ daddu $a0, $s2, $zero -/* 2C4E4 800510E4 240501E4 */ addiu $a1, $zero, 0x1e4 -/* 2C4E8 800510E8 AFBF0020 */ sw $ra, 0x20($sp) -/* 2C4EC 800510EC 0C0153A4 */ jal snd_memset -/* 2C4F0 800510F0 0000302D */ daddu $a2, $zero, $zero -/* 2C4F4 800510F4 AE500000 */ sw $s0, ($s2) -/* 2C4F8 800510F8 96030010 */ lhu $v1, 0x10($s0) -/* 2C4FC 800510FC 24020001 */ addiu $v0, $zero, 1 -/* 2C500 80051100 AE420018 */ sw $v0, 0x18($s2) -/* 2C504 80051104 3C027F00 */ lui $v0, 0x7f00 -/* 2C508 80051108 AE420038 */ sw $v0, 0x38($s2) -/* 2C50C 8005110C 2402007F */ addiu $v0, $zero, 0x7f -/* 2C510 80051110 A2420042 */ sb $v0, 0x42($s2) -/* 2C514 80051114 0200102D */ daddu $v0, $s0, $zero -/* 2C518 80051118 A2510014 */ sb $s1, 0x14($s2) -/* 2C51C 8005111C 02038021 */ addu $s0, $s0, $v1 -/* 2C520 80051120 AE500008 */ sw $s0, 8($s2) -/* 2C524 80051124 AE500010 */ sw $s0, 0x10($s2) -/* 2C528 80051128 AE50000C */ sw $s0, 0xc($s2) -/* 2C52C 8005112C AE500004 */ sw $s0, 4($s2) -/* 2C530 80051130 8C420008 */ lw $v0, 8($v0) -/* 2C534 80051134 8E430000 */ lw $v1, ($s2) -/* 2C538 80051138 AE420020 */ sw $v0, 0x20($s2) -/* 2C53C 8005113C 9062000C */ lbu $v0, 0xc($v1) -/* 2C540 80051140 AE420030 */ sw $v0, 0x30($s2) -/* 2C544 80051144 24420010 */ addiu $v0, $v0, 0x10 -/* 2C548 80051148 AE420034 */ sw $v0, 0x34($s2) -/* 2C54C 8005114C 2C420019 */ sltiu $v0, $v0, 0x19 -/* 2C550 80051150 14400003 */ bnez $v0, .L80051160 -/* 2C554 80051154 0000282D */ daddu $a1, $zero, $zero -/* 2C558 80051158 24020018 */ addiu $v0, $zero, 0x18 -/* 2C55C 8005115C AE420034 */ sw $v0, 0x34($s2) -.L80051160: -/* 2C560 80051160 3C067FFF */ lui $a2, 0x7fff -/* 2C564 80051164 34C6FFFF */ ori $a2, $a2, 0xffff -/* 2C568 80051168 24070040 */ addiu $a3, $zero, 0x40 -/* 2C56C 8005116C 24040044 */ addiu $a0, $zero, 0x44 -.L80051170: -/* 2C570 80051170 02441821 */ addu $v1, $s2, $a0 -/* 2C574 80051174 8E620000 */ lw $v0, ($s3) -/* 2C578 80051178 8C420004 */ lw $v0, 4($v0) -/* 2C57C 8005117C 24A50001 */ addiu $a1, $a1, 1 -/* 2C580 80051180 AC660018 */ sw $a2, 0x18($v1) -/* 2C584 80051184 A0670024 */ sb $a3, 0x24($v1) -/* 2C588 80051188 AC620000 */ sw $v0, ($v1) -/* 2C58C 8005118C 28A2000A */ slti $v0, $a1, 0xa -/* 2C590 80051190 1440FFF7 */ bnez $v0, .L80051170 -/* 2C594 80051194 24840028 */ addiu $a0, $a0, 0x28 -/* 2C598 80051198 24020001 */ addiu $v0, $zero, 1 -/* 2C59C 8005119C A2420043 */ sb $v0, 0x43($s2) -/* 2C5A0 800511A0 8FBF0020 */ lw $ra, 0x20($sp) -/* 2C5A4 800511A4 8FB3001C */ lw $s3, 0x1c($sp) -/* 2C5A8 800511A8 8FB20018 */ lw $s2, 0x18($sp) -/* 2C5AC 800511AC 8FB10014 */ lw $s1, 0x14($sp) -/* 2C5B0 800511B0 8FB00010 */ lw $s0, 0x10($sp) -/* 2C5B4 800511B4 03E00008 */ jr $ra -/* 2C5B8 800511B8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/2BF90/func_80051334.s b/ver/us/asm/nonmatchings/2BF90/func_80051334.s deleted file mode 100644 index 36dae0e8ac..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_80051334.s +++ /dev/null @@ -1,77 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80051334 -/* 2C734 80051334 8CA30000 */ lw $v1, ($a1) -/* 2C738 80051338 9067000D */ lbu $a3, 0xd($v1) -/* 2C73C 8005133C 10E0003B */ beqz $a3, .L8005142C -/* 2C740 80051340 00000000 */ nop -/* 2C744 80051344 9462000E */ lhu $v0, 0xe($v1) -/* 2C748 80051348 10400038 */ beqz $v0, .L8005142C -/* 2C74C 8005134C 24E7FFFF */ addiu $a3, $a3, -1 -/* 2C750 80051350 24090001 */ addiu $t1, $zero, 1 -/* 2C754 80051354 00624021 */ addu $t0, $v1, $v0 -/* 2C758 80051358 25040006 */ addiu $a0, $t0, 6 -.L8005135C: -/* 2C75C 8005135C 91030000 */ lbu $v1, ($t0) -/* 2C760 80051360 00031080 */ sll $v0, $v1, 2 -/* 2C764 80051364 00431021 */ addu $v0, $v0, $v1 -/* 2C768 80051368 000210C0 */ sll $v0, $v0, 3 -/* 2C76C 8005136C 24420044 */ addiu $v0, $v0, 0x44 -/* 2C770 80051370 9083FFFB */ lbu $v1, -5($a0) -/* 2C774 80051374 14600014 */ bnez $v1, .L800513C8 -/* 2C778 80051378 00A23021 */ addu $a2, $a1, $v0 -/* 2C77C 8005137C 9482FFFC */ lhu $v0, -4($a0) -/* 2C780 80051380 A4C20014 */ sh $v0, 0x14($a2) -/* 2C784 80051384 8482FFFE */ lh $v0, -2($a0) -/* 2C788 80051388 8483FFFC */ lh $v1, -4($a0) -/* 2C78C 8005138C 00021400 */ sll $v0, $v0, 0x10 -/* 2C790 80051390 14600002 */ bnez $v1, .L8005139C -/* 2C794 80051394 0043001A */ div $zero, $v0, $v1 -/* 2C798 80051398 0007000D */ break 7 -.L8005139C: -/* 2C79C 8005139C 2401FFFF */ addiu $at, $zero, -1 -/* 2C7A0 800513A0 14610004 */ bne $v1, $at, .L800513B4 -/* 2C7A4 800513A4 3C018000 */ lui $at, 0x8000 -/* 2C7A8 800513A8 14410002 */ bne $v0, $at, .L800513B4 -/* 2C7AC 800513AC 00000000 */ nop -/* 2C7B0 800513B0 0006000D */ break 6 -.L800513B4: -/* 2C7B4 800513B4 00001012 */ mflo $v0 -/* 2C7B8 800513B8 ACC20010 */ sw $v0, 0x10($a2) -/* 2C7BC 800513BC 94820000 */ lhu $v0, ($a0) -/* 2C7C0 800513C0 08014506 */ j .L80051418 -/* 2C7C4 800513C4 A4C20016 */ sh $v0, 0x16($a2) -.L800513C8: -/* 2C7C8 800513C8 54690014 */ bnel $v1, $t1, .L8005141C -/* 2C7CC 800513CC 24840008 */ addiu $a0, $a0, 8 -/* 2C7D0 800513D0 9482FFFC */ lhu $v0, -4($a0) -/* 2C7D4 800513D4 A4C20020 */ sh $v0, 0x20($a2) -/* 2C7D8 800513D8 8482FFFE */ lh $v0, -2($a0) -/* 2C7DC 800513DC 8483FFFC */ lh $v1, -4($a0) -/* 2C7E0 800513E0 00021400 */ sll $v0, $v0, 0x10 -/* 2C7E4 800513E4 14600002 */ bnez $v1, .L800513F0 -/* 2C7E8 800513E8 0043001A */ div $zero, $v0, $v1 -/* 2C7EC 800513EC 0007000D */ break 7 -.L800513F0: -/* 2C7F0 800513F0 2401FFFF */ addiu $at, $zero, -1 -/* 2C7F4 800513F4 14610004 */ bne $v1, $at, .L80051408 -/* 2C7F8 800513F8 3C018000 */ lui $at, 0x8000 -/* 2C7FC 800513FC 14410002 */ bne $v0, $at, .L80051408 -/* 2C800 80051400 00000000 */ nop -/* 2C804 80051404 0006000D */ break 6 -.L80051408: -/* 2C808 80051408 00001012 */ mflo $v0 -/* 2C80C 8005140C ACC2001C */ sw $v0, 0x1c($a2) -/* 2C810 80051410 94820000 */ lhu $v0, ($a0) -/* 2C814 80051414 A4C20022 */ sh $v0, 0x22($a2) -.L80051418: -/* 2C818 80051418 24840008 */ addiu $a0, $a0, 8 -.L8005141C: -/* 2C81C 8005141C 25080008 */ addiu $t0, $t0, 8 -/* 2C820 80051420 00E0102D */ daddu $v0, $a3, $zero -/* 2C824 80051424 1440FFCD */ bnez $v0, .L8005135C -/* 2C828 80051428 24E7FFFF */ addiu $a3, $a3, -1 -.L8005142C: -/* 2C82C 8005142C 03E00008 */ jr $ra -/* 2C830 80051430 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_800521D0.s b/ver/us/asm/nonmatchings/2BF90/func_800521D0.s deleted file mode 100644 index af9aa206f6..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_800521D0.s +++ /dev/null @@ -1,10 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800521D0 -/* 2D5D0 800521D0 8C830008 */ lw $v1, 8($a0) -/* 2D5D4 800521D4 90620000 */ lbu $v0, ($v1) -/* 2D5D8 800521D8 24630001 */ addiu $v1, $v1, 1 -/* 2D5DC 800521DC AC830008 */ sw $v1, 8($a0) -/* 2D5E0 800521E0 03E00008 */ jr $ra -/* 2D5E4 800521E4 304200FF */ andi $v0, $v0, 0xff diff --git a/ver/us/asm/nonmatchings/2BF90/func_800521E8.s b/ver/us/asm/nonmatchings/2BF90/func_800521E8.s deleted file mode 100644 index 1ae6b9b813..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_800521E8.s +++ /dev/null @@ -1,55 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800521E8 -/* 2D5E8 800521E8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 2D5EC 800521EC AFB3001C */ sw $s3, 0x1c($sp) -/* 2D5F0 800521F0 00A0982D */ daddu $s3, $a1, $zero -/* 2D5F4 800521F4 AFBF0024 */ sw $ra, 0x24($sp) -/* 2D5F8 800521F8 AFB40020 */ sw $s4, 0x20($sp) -/* 2D5FC 800521FC AFB20018 */ sw $s2, 0x18($sp) -/* 2D600 80052200 AFB10014 */ sw $s1, 0x14($sp) -/* 2D604 80052204 AFB00010 */ sw $s0, 0x10($sp) -/* 2D608 80052208 8E700030 */ lw $s0, 0x30($s3) -/* 2D60C 8005220C 8E620034 */ lw $v0, 0x34($s3) -/* 2D610 80052210 0202102B */ sltu $v0, $s0, $v0 -/* 2D614 80052214 1040001C */ beqz $v0, .L80052288 -/* 2D618 80052218 0080A02D */ daddu $s4, $a0, $zero -/* 2D61C 8005221C 001010C0 */ sll $v0, $s0, 3 -/* 2D620 80052220 00501021 */ addu $v0, $v0, $s0 -/* 2D624 80052224 000210C0 */ sll $v0, $v0, 3 -/* 2D628 80052228 24521320 */ addiu $s2, $v0, 0x1320 -.L8005222C: -/* 2D62C 8005222C 8E620030 */ lw $v0, 0x30($s3) -/* 2D630 80052230 02021023 */ subu $v0, $s0, $v0 -/* 2D634 80052234 000210C0 */ sll $v0, $v0, 3 -/* 2D638 80052238 244207B4 */ addiu $v0, $v0, 0x7b4 -/* 2D63C 8005223C 02828821 */ addu $s1, $s4, $v0 -/* 2D640 80052240 92230000 */ lbu $v1, ($s1) -/* 2D644 80052244 92620014 */ lbu $v0, 0x14($s3) -/* 2D648 80052248 1462000A */ bne $v1, $v0, .L80052274 -/* 2D64C 8005224C 00000000 */ nop -/* 2D650 80052250 8E820000 */ lw $v0, ($s4) -/* 2D654 80052254 00522021 */ addu $a0, $v0, $s2 -/* 2D658 80052258 90830045 */ lbu $v1, 0x45($a0) -/* 2D65C 8005225C 92820022 */ lbu $v0, 0x22($s4) -/* 2D660 80052260 54620004 */ bnel $v1, $v0, .L80052274 -/* 2D664 80052264 AE200000 */ sw $zero, ($s1) -/* 2D668 80052268 0C014E31 */ jal func_800538C4 -/* 2D66C 8005226C 320500FF */ andi $a1, $s0, 0xff -/* 2D670 80052270 AE200000 */ sw $zero, ($s1) -.L80052274: -/* 2D674 80052274 8E620034 */ lw $v0, 0x34($s3) -/* 2D678 80052278 26100001 */ addiu $s0, $s0, 1 -/* 2D67C 8005227C 0202102B */ sltu $v0, $s0, $v0 -/* 2D680 80052280 1440FFEA */ bnez $v0, .L8005222C -/* 2D684 80052284 26520048 */ addiu $s2, $s2, 0x48 -.L80052288: -/* 2D688 80052288 8FBF0024 */ lw $ra, 0x24($sp) -/* 2D68C 8005228C 8FB40020 */ lw $s4, 0x20($sp) -/* 2D690 80052290 8FB3001C */ lw $s3, 0x1c($sp) -/* 2D694 80052294 8FB20018 */ lw $s2, 0x18($sp) -/* 2D698 80052298 8FB10014 */ lw $s1, 0x14($sp) -/* 2D69C 8005229C 8FB00010 */ lw $s0, 0x10($sp) -/* 2D6A0 800522A0 03E00008 */ jr $ra -/* 2D6A4 800522A4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/2BF90/func_800522A8.s b/ver/us/asm/nonmatchings/2BF90/func_800522A8.s deleted file mode 100644 index 8b439539a9..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_800522A8.s +++ /dev/null @@ -1,40 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800522A8 -/* 2D6A8 800522A8 24A901D4 */ addiu $t1, $a1, 0x1d4 -/* 2D6AC 800522AC 8CA70030 */ lw $a3, 0x30($a1) -/* 2D6B0 800522B0 8CA20034 */ lw $v0, 0x34($a1) -/* 2D6B4 800522B4 00E2102B */ sltu $v0, $a3, $v0 -/* 2D6B8 800522B8 1040001A */ beqz $v0, .L80052324 -/* 2D6BC 800522BC 0000402D */ daddu $t0, $zero, $zero -/* 2D6C0 800522C0 24A601D6 */ addiu $a2, $a1, 0x1d6 -.L800522C4: -/* 2D6C4 800522C4 8CA20030 */ lw $v0, 0x30($a1) -/* 2D6C8 800522C8 00E21023 */ subu $v0, $a3, $v0 -/* 2D6CC 800522CC 000210C0 */ sll $v0, $v0, 3 -/* 2D6D0 800522D0 244207B4 */ addiu $v0, $v0, 0x7b4 -/* 2D6D4 800522D4 00821821 */ addu $v1, $a0, $v0 -/* 2D6D8 800522D8 90620007 */ lbu $v0, 7($v1) -/* 2D6DC 800522DC 1040000C */ beqz $v0, .L80052310 -/* 2D6E0 800522E0 00000000 */ nop -/* 2D6E4 800522E4 90620001 */ lbu $v0, 1($v1) -/* 2D6E8 800522E8 A1220000 */ sb $v0, ($t1) -/* 2D6EC 800522EC 90620002 */ lbu $v0, 2($v1) -/* 2D6F0 800522F0 25080001 */ addiu $t0, $t0, 1 -/* 2D6F4 800522F4 A0C2FFFF */ sb $v0, -1($a2) -/* 2D6F8 800522F8 90620006 */ lbu $v0, 6($v1) -/* 2D6FC 800522FC 25290004 */ addiu $t1, $t1, 4 -/* 2D700 80052300 A0C20000 */ sb $v0, ($a2) -/* 2D704 80052304 2D020004 */ sltiu $v0, $t0, 4 -/* 2D708 80052308 10400006 */ beqz $v0, .L80052324 -/* 2D70C 8005230C 24C60004 */ addiu $a2, $a2, 4 -.L80052310: -/* 2D710 80052310 8CA20034 */ lw $v0, 0x34($a1) -/* 2D714 80052314 24E70001 */ addiu $a3, $a3, 1 -/* 2D718 80052318 00E2102B */ sltu $v0, $a3, $v0 -/* 2D71C 8005231C 1440FFE9 */ bnez $v0, .L800522C4 -/* 2D720 80052320 00000000 */ nop -.L80052324: -/* 2D724 80052324 03E00008 */ jr $ra -/* 2D728 80052328 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2BF90/func_8005232C.s b/ver/us/asm/nonmatchings/2BF90/func_8005232C.s deleted file mode 100644 index eab7ec0a40..0000000000 --- a/ver/us/asm/nonmatchings/2BF90/func_8005232C.s +++ /dev/null @@ -1,172 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8005232C -/* 2D72C 8005232C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 2D730 80052330 AFB60028 */ sw $s6, 0x28($sp) -/* 2D734 80052334 0080B02D */ daddu $s6, $a0, $zero -/* 2D738 80052338 AFB40020 */ sw $s4, 0x20($sp) -/* 2D73C 8005233C 00A0A02D */ daddu $s4, $a1, $zero -/* 2D740 80052340 AFBF0030 */ sw $ra, 0x30($sp) -/* 2D744 80052344 AFB7002C */ sw $s7, 0x2c($sp) -/* 2D748 80052348 AFB50024 */ sw $s5, 0x24($sp) -/* 2D74C 8005234C AFB3001C */ sw $s3, 0x1c($sp) -/* 2D750 80052350 AFB20018 */ sw $s2, 0x18($sp) -/* 2D754 80052354 AFB10014 */ sw $s1, 0x14($sp) -/* 2D758 80052358 AFB00010 */ sw $s0, 0x10($sp) -/* 2D75C 8005235C 92820025 */ lbu $v0, 0x25($s4) -/* 2D760 80052360 8ED70000 */ lw $s7, ($s6) -/* 2D764 80052364 14400081 */ bnez $v0, .L8005256C -/* 2D768 80052368 0000A82D */ daddu $s5, $zero, $zero -.L8005236C: -/* 2D76C 8005236C 00151080 */ sll $v0, $s5, 2 -/* 2D770 80052370 244201D4 */ addiu $v0, $v0, 0x1d4 -/* 2D774 80052374 02829821 */ addu $s3, $s4, $v0 -/* 2D778 80052378 92620001 */ lbu $v0, 1($s3) -/* 2D77C 8005237C 50400076 */ beql $v0, $zero, .L80052558 -/* 2D780 80052380 26B50001 */ addiu $s5, $s5, 1 -/* 2D784 80052384 92620000 */ lbu $v0, ($s3) -/* 2D788 80052388 8E900030 */ lw $s0, 0x30($s4) -/* 2D78C 8005238C 8E840034 */ lw $a0, 0x34($s4) -/* 2D790 80052390 00021880 */ sll $v1, $v0, 2 -/* 2D794 80052394 00621821 */ addu $v1, $v1, $v0 -/* 2D798 80052398 000318C0 */ sll $v1, $v1, 3 -/* 2D79C 8005239C 24630044 */ addiu $v1, $v1, 0x44 -/* 2D7A0 800523A0 0204102B */ sltu $v0, $s0, $a0 -/* 2D7A4 800523A4 10400012 */ beqz $v0, .L800523F0 -/* 2D7A8 800523A8 02839021 */ addu $s2, $s4, $v1 -/* 2D7AC 800523AC 001010C0 */ sll $v0, $s0, 3 -/* 2D7B0 800523B0 00501021 */ addu $v0, $v0, $s0 -/* 2D7B4 800523B4 000210C0 */ sll $v0, $v0, 3 -/* 2D7B8 800523B8 24431320 */ addiu $v1, $v0, 0x1320 -.L800523BC: -/* 2D7BC 800523BC 02E38821 */ addu $s1, $s7, $v1 -/* 2D7C0 800523C0 92220045 */ lbu $v0, 0x45($s1) -/* 2D7C4 800523C4 10400005 */ beqz $v0, .L800523DC -/* 2D7C8 800523C8 00000000 */ nop -/* 2D7CC 800523CC 26100001 */ addiu $s0, $s0, 1 -/* 2D7D0 800523D0 0204102B */ sltu $v0, $s0, $a0 -/* 2D7D4 800523D4 1440FFF9 */ bnez $v0, .L800523BC -/* 2D7D8 800523D8 24630048 */ addiu $v1, $v1, 0x48 -.L800523DC: -/* 2D7DC 800523DC 8E820034 */ lw $v0, 0x34($s4) -/* 2D7E0 800523E0 0202102B */ sltu $v0, $s0, $v0 -/* 2D7E4 800523E4 1440001C */ bnez $v0, .L80052458 -/* 2D7E8 800523E8 00000000 */ nop -/* 2D7EC 800523EC 8E900030 */ lw $s0, 0x30($s4) -.L800523F0: -/* 2D7F0 800523F0 8E820034 */ lw $v0, 0x34($s4) -/* 2D7F4 800523F4 0202102B */ sltu $v0, $s0, $v0 -/* 2D7F8 800523F8 10400056 */ beqz $v0, .L80052554 -/* 2D7FC 800523FC 001010C0 */ sll $v0, $s0, 3 -/* 2D800 80052400 00501021 */ addu $v0, $v0, $s0 -/* 2D804 80052404 000210C0 */ sll $v0, $v0, 3 -/* 2D808 80052408 24441320 */ addiu $a0, $v0, 0x1320 -.L8005240C: -/* 2D80C 8005240C 02E48821 */ addu $s1, $s7, $a0 -/* 2D810 80052410 92220045 */ lbu $v0, 0x45($s1) -/* 2D814 80052414 92C30022 */ lbu $v1, 0x22($s6) -/* 2D818 80052418 0043102B */ sltu $v0, $v0, $v1 -/* 2D81C 8005241C 50400006 */ beql $v0, $zero, .L80052438 -/* 2D820 80052420 26100001 */ addiu $s0, $s0, 1 -/* 2D824 80052424 0220202D */ daddu $a0, $s1, $zero -/* 2D828 80052428 0C014E31 */ jal func_800538C4 -/* 2D82C 8005242C 320500FF */ andi $a1, $s0, 0xff -/* 2D830 80052430 08014912 */ j .L80052448 -/* 2D834 80052434 00000000 */ nop -.L80052438: -/* 2D838 80052438 8E820034 */ lw $v0, 0x34($s4) -/* 2D83C 8005243C 0202102B */ sltu $v0, $s0, $v0 -/* 2D840 80052440 1440FFF2 */ bnez $v0, .L8005240C -/* 2D844 80052444 24840048 */ addiu $a0, $a0, 0x48 -.L80052448: -/* 2D848 80052448 8E820034 */ lw $v0, 0x34($s4) -/* 2D84C 8005244C 0202102B */ sltu $v0, $s0, $v0 -/* 2D850 80052450 50400041 */ beql $v0, $zero, .L80052558 -/* 2D854 80052454 26B50001 */ addiu $s5, $s5, 1 -.L80052458: -/* 2D858 80052458 8E850030 */ lw $a1, 0x30($s4) -/* 2D85C 8005245C 92640000 */ lbu $a0, ($s3) -/* 2D860 80052460 8E830014 */ lw $v1, 0x14($s4) -/* 2D864 80052464 92620001 */ lbu $v0, 1($s3) -/* 2D868 80052468 02052823 */ subu $a1, $s0, $a1 -/* 2D86C 8005246C 000528C0 */ sll $a1, $a1, 3 -/* 2D870 80052470 24A507B4 */ addiu $a1, $a1, 0x7b4 -/* 2D874 80052474 02C52821 */ addu $a1, $s6, $a1 -/* 2D878 80052478 00042400 */ sll $a0, $a0, 0x10 -/* 2D87C 8005247C 00641821 */ addu $v1, $v1, $a0 -/* 2D880 80052480 00021200 */ sll $v0, $v0, 8 -/* 2D884 80052484 00621821 */ addu $v1, $v1, $v0 -/* 2D888 80052488 ACA30000 */ sw $v1, ($a1) -/* 2D88C 8005248C 92630001 */ lbu $v1, 1($s3) -/* 2D890 80052490 8E440000 */ lw $a0, ($s2) -/* 2D894 80052494 3063007F */ andi $v1, $v1, 0x7f -/* 2D898 80052498 00031040 */ sll $v0, $v1, 1 -/* 2D89C 8005249C 00431021 */ addu $v0, $v0, $v1 -/* 2D8A0 800524A0 000210C0 */ sll $v0, $v0, 3 -/* 2D8A4 800524A4 00431021 */ addu $v0, $v0, $v1 -/* 2D8A8 800524A8 9483001E */ lhu $v1, 0x1e($a0) -/* 2D8AC 800524AC 00021080 */ sll $v0, $v0, 2 -/* 2D8B0 800524B0 00431023 */ subu $v0, $v0, $v1 -/* 2D8B4 800524B4 A4A20004 */ sh $v0, 4($a1) -/* 2D8B8 800524B8 92630002 */ lbu $v1, 2($s3) -/* 2D8BC 800524BC 3063007F */ andi $v1, $v1, 0x7f -/* 2D8C0 800524C0 A0A30006 */ sb $v1, 6($a1) -/* 2D8C4 800524C4 82840038 */ lb $a0, 0x38($s4) -/* 2D8C8 800524C8 86420018 */ lh $v0, 0x18($s2) -/* 2D8CC 800524CC 00820018 */ mult $a0, $v0 -/* 2D8D0 800524D0 00003012 */ mflo $a2 -/* 2D8D4 800524D4 00000000 */ nop -/* 2D8D8 800524D8 00000000 */ nop -/* 2D8DC 800524DC 00C30018 */ mult $a2, $v1 -/* 2D8E0 800524E0 00003012 */ mflo $a2 -/* 2D8E4 800524E4 00061383 */ sra $v0, $a2, 0xe -/* 2D8E8 800524E8 A6220040 */ sh $v0, 0x40($s1) -/* 2D8EC 800524EC 84A20004 */ lh $v0, 4($a1) -/* 2D8F0 800524F0 8644000C */ lh $a0, 0xc($s2) -/* 2D8F4 800524F4 0C014E3E */ jal snd_tune_param_to_timescale -/* 2D8F8 800524F8 00442021 */ addu $a0, $v0, $a0 -/* 2D8FC 800524FC 8E420000 */ lw $v0, ($s2) -/* 2D900 80052500 C4420020 */ lwc1 $f2, 0x20($v0) -/* 2D904 80052504 46020002 */ mul.s $f0, $f0, $f2 -/* 2D908 80052508 00000000 */ nop -/* 2D90C 8005250C E6200004 */ swc1 $f0, 4($s1) -/* 2D910 80052510 92420024 */ lbu $v0, 0x24($s2) -/* 2D914 80052514 A222000E */ sb $v0, 0xe($s1) -/* 2D918 80052518 92420025 */ lbu $v0, 0x25($s2) -/* 2D91C 8005251C A222000F */ sb $v0, 0xf($s1) -/* 2D920 80052520 8E420000 */ lw $v0, ($s2) -/* 2D924 80052524 AE220000 */ sw $v0, ($s1) -/* 2D928 80052528 92C20023 */ lbu $v0, 0x23($s6) -/* 2D92C 8005252C A2220010 */ sb $v0, 0x10($s1) -/* 2D930 80052530 8E420004 */ lw $v0, 4($s2) -/* 2D934 80052534 AE220014 */ sw $v0, 0x14($s1) -/* 2D938 80052538 8E430008 */ lw $v1, 8($s2) -/* 2D93C 8005253C 24020002 */ addiu $v0, $zero, 2 -/* 2D940 80052540 A2220043 */ sb $v0, 0x43($s1) -/* 2D944 80052544 AE230018 */ sw $v1, 0x18($s1) -/* 2D948 80052548 92C20022 */ lbu $v0, 0x22($s6) -/* 2D94C 8005254C A2220045 */ sb $v0, 0x45($s1) -/* 2D950 80052550 A2220044 */ sb $v0, 0x44($s1) -.L80052554: -/* 2D954 80052554 26B50001 */ addiu $s5, $s5, 1 -.L80052558: -/* 2D958 80052558 2EA20004 */ sltiu $v0, $s5, 4 -/* 2D95C 8005255C A2600000 */ sb $zero, ($s3) -/* 2D960 80052560 A2600001 */ sb $zero, 1($s3) -/* 2D964 80052564 1440FF81 */ bnez $v0, .L8005236C -/* 2D968 80052568 A2600002 */ sb $zero, 2($s3) -.L8005256C: -/* 2D96C 8005256C 8FBF0030 */ lw $ra, 0x30($sp) -/* 2D970 80052570 8FB7002C */ lw $s7, 0x2c($sp) -/* 2D974 80052574 8FB60028 */ lw $s6, 0x28($sp) -/* 2D978 80052578 8FB50024 */ lw $s5, 0x24($sp) -/* 2D97C 8005257C 8FB40020 */ lw $s4, 0x20($sp) -/* 2D980 80052580 8FB3001C */ lw $s3, 0x1c($sp) -/* 2D984 80052584 8FB20018 */ lw $s2, 0x18($sp) -/* 2D988 80052588 8FB10014 */ lw $s1, 0x14($sp) -/* 2D98C 8005258C 8FB00010 */ lw $s0, 0x10($sp) -/* 2D990 80052590 03E00008 */ jr $ra -/* 2D994 80052594 27BD0038 */ addiu $sp, $sp, 0x38 -/* 2D998 80052598 00000000 */ nop -/* 2D99C 8005259C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052660.s b/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052660.s deleted file mode 100644 index 9ac92afc1a..0000000000 --- a/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052660.s +++ /dev/null @@ -1,343 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80052660 -/* 2DA60 80052660 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 2DA64 80052664 AFB60028 */ sw $s6, 0x28($sp) -/* 2DA68 80052668 0080B02D */ daddu $s6, $a0, $zero -/* 2DA6C 8005266C AFB20018 */ sw $s2, 0x18($sp) -/* 2DA70 80052670 0000902D */ daddu $s2, $zero, $zero -/* 2DA74 80052674 AFB50024 */ sw $s5, 0x24($sp) -/* 2DA78 80052678 3C158008 */ lui $s5, %hi(D_800785A0) -/* 2DA7C 8005267C 26B585A0 */ addiu $s5, $s5, %lo(D_800785A0) -/* 2DA80 80052680 AFB3001C */ sw $s3, 0x1c($sp) -/* 2DA84 80052684 241300B8 */ addiu $s3, $zero, 0xb8 -/* 2DA88 80052688 AFB40020 */ sw $s4, 0x20($sp) -/* 2DA8C 8005268C 2414FFFF */ addiu $s4, $zero, -1 -/* 2DA90 80052690 AFB10014 */ sw $s1, 0x14($sp) -/* 2DA94 80052694 24111320 */ addiu $s1, $zero, 0x1320 -/* 2DA98 80052698 AFBF002C */ sw $ra, 0x2c($sp) -/* 2DA9C 8005269C AFB00010 */ sw $s0, 0x10($sp) -/* 2DAA0 800526A0 02D18021 */ addu $s0, $s6, $s1 -.L800526A4: -/* 2DAA4 800526A4 8E02001C */ lw $v0, 0x1c($s0) -/* 2DAA8 800526A8 50400118 */ beql $v0, $zero, .L80052B0C -/* 2DAAC 800526AC 26310048 */ addiu $s1, $s1, 0x48 -/* 2DAB0 800526B0 9204003D */ lbu $a0, 0x3d($s0) -/* 2DAB4 800526B4 30820002 */ andi $v0, $a0, 2 -/* 2DAB8 800526B8 10400005 */ beqz $v0, .L800526D0 -/* 2DABC 800526BC 30820010 */ andi $v0, $a0, 0x10 -/* 2DAC0 800526C0 0C014AD1 */ jal func_80052B44 -/* 2DAC4 800526C4 0200202D */ daddu $a0, $s0, $zero -/* 2DAC8 800526C8 08014AC3 */ j .L80052B0C -/* 2DACC 800526CC 26310048 */ addiu $s1, $s1, 0x48 -.L800526D0: -/* 2DAD0 800526D0 1040005C */ beqz $v0, .L80052844 -/* 2DAD4 800526D4 308200EF */ andi $v0, $a0, 0xef -/* 2DAD8 800526D8 8E030018 */ lw $v1, 0x18($s0) -/* 2DADC 800526DC 8E040028 */ lw $a0, 0x28($s0) -/* 2DAE0 800526E0 34420001 */ ori $v0, $v0, 1 -/* 2DAE4 800526E4 A202003D */ sb $v0, 0x3d($s0) -/* 2DAE8 800526E8 28821677 */ slti $v0, $a0, 0x1677 -/* 2DAEC 800526EC 1440000E */ bnez $v0, .L80052728 -/* 2DAF0 800526F0 AE03001C */ sw $v1, 0x1c($s0) -/* 2DAF4 800526F4 8E020024 */ lw $v0, 0x24($s0) -/* 2DAF8 800526F8 C602002C */ lwc1 $f2, 0x2c($s0) -/* 2DAFC 800526FC 00441023 */ subu $v0, $v0, $a0 -/* 2DB00 80052700 44820000 */ mtc1 $v0, $f0 -/* 2DB04 80052704 00000000 */ nop -/* 2DB08 80052708 46800020 */ cvt.s.w $f0, $f0 -/* 2DB0C 8005270C 46001082 */ mul.s $f2, $f2, $f0 -/* 2DB10 80052710 00000000 */ nop -/* 2DB14 80052714 92020039 */ lbu $v0, 0x39($s0) -/* 2DB18 80052718 4600110D */ trunc.w.s $f4, $f2 -/* 2DB1C 8005271C 44032000 */ mfc1 $v1, $f4 -/* 2DB20 80052720 080149CB */ j .L8005272C -/* 2DB24 80052724 00431021 */ addu $v0, $v0, $v1 -.L80052728: -/* 2DB28 80052728 9202003A */ lbu $v0, 0x3a($s0) -.L8005272C: -/* 2DB2C 8005272C A2020039 */ sb $v0, 0x39($s0) -/* 2DB30 80052730 8E02001C */ lw $v0, 0x1c($s0) -/* 2DB34 80052734 90430000 */ lbu $v1, ($v0) -/* 2DB38 80052738 24420001 */ addiu $v0, $v0, 1 -/* 2DB3C 8005273C AE02001C */ sw $v0, 0x1c($s0) -/* 2DB40 80052740 A203003B */ sb $v1, 0x3b($s0) -/* 2DB44 80052744 90440000 */ lbu $a0, ($v0) -/* 2DB48 80052748 80430000 */ lb $v1, ($v0) -/* 2DB4C 8005274C 24420001 */ addiu $v0, $v0, 1 -/* 2DB50 80052750 04610006 */ bgez $v1, .L8005276C -/* 2DB54 80052754 AE02001C */ sw $v0, 0x1c($s0) -/* 2DB58 80052758 3084007F */ andi $a0, $a0, 0x7f -/* 2DB5C 8005275C 92030039 */ lbu $v1, 0x39($s0) -/* 2DB60 80052760 24020001 */ addiu $v0, $zero, 1 -/* 2DB64 80052764 A202003E */ sb $v0, 0x3e($s0) -/* 2DB68 80052768 A203003F */ sb $v1, 0x3f($s0) -.L8005276C: -/* 2DB6C 8005276C 9202003B */ lbu $v0, 0x3b($s0) -/* 2DB70 80052770 9205003D */ lbu $a1, 0x3d($s0) -/* 2DB74 80052774 A204003A */ sb $a0, 0x3a($s0) -/* 2DB78 80052778 00021080 */ sll $v0, $v0, 2 -/* 2DB7C 8005277C 00551021 */ addu $v0, $v0, $s5 -/* 2DB80 80052780 8C440000 */ lw $a0, ($v0) -/* 2DB84 80052784 30A20020 */ andi $v0, $a1, 0x20 -/* 2DB88 80052788 AE040028 */ sw $a0, 0x28($s0) -/* 2DB8C 8005278C 1040001A */ beqz $v0, .L800527F8 -/* 2DB90 80052790 AE040024 */ sw $a0, 0x24($s0) -/* 2DB94 80052794 0080182D */ daddu $v1, $a0, $zero -/* 2DB98 80052798 30A200DF */ andi $v0, $a1, 0xdf -/* 2DB9C 8005279C A202003D */ sb $v0, 0x3d($s0) -/* 2DBA0 800527A0 28621677 */ slti $v0, $v1, 0x1677 -/* 2DBA4 800527A4 14400011 */ bnez $v0, .L800527EC -/* 2DBA8 800527A8 2462E98A */ addiu $v0, $v1, -0x1676 -/* 2DBAC 800527AC 00621823 */ subu $v1, $v1, $v0 -/* 2DBB0 800527B0 C602002C */ lwc1 $f2, 0x2c($s0) -/* 2DBB4 800527B4 44830000 */ mtc1 $v1, $f0 -/* 2DBB8 800527B8 00000000 */ nop -/* 2DBBC 800527BC 46800020 */ cvt.s.w $f0, $f0 -/* 2DBC0 800527C0 AE020028 */ sw $v0, 0x28($s0) -/* 2DBC4 800527C4 46001082 */ mul.s $f2, $f2, $f0 -/* 2DBC8 800527C8 00000000 */ nop -/* 2DBCC 800527CC 9202003D */ lbu $v0, 0x3d($s0) -/* 2DBD0 800527D0 92030039 */ lbu $v1, 0x39($s0) -/* 2DBD4 800527D4 34420002 */ ori $v0, $v0, 2 -/* 2DBD8 800527D8 A202003D */ sb $v0, 0x3d($s0) -/* 2DBDC 800527DC 4600110D */ trunc.w.s $f4, $f2 -/* 2DBE0 800527E0 44022000 */ mfc1 $v0, $f4 -/* 2DBE4 800527E4 080149FC */ j .L800527F0 -/* 2DBE8 800527E8 00621821 */ addu $v1, $v1, $v0 -.L800527EC: -/* 2DBEC 800527EC 9203003A */ lbu $v1, 0x3a($s0) -.L800527F0: -/* 2DBF0 800527F0 08014A02 */ j .L80052808 -/* 2DBF4 800527F4 AE130008 */ sw $s3, 8($s0) -.L800527F8: -/* 2DBF8 800527F8 0C014AF0 */ jal func_80052BC0 -/* 2DBFC 800527FC 00000000 */ nop -/* 2DC00 80052800 9203003A */ lbu $v1, 0x3a($s0) -/* 2DC04 80052804 AE020008 */ sw $v0, 8($s0) -.L80052808: -/* 2DC08 80052808 00031400 */ sll $v0, $v1, 0x10 -/* 2DC0C 8005280C 86030040 */ lh $v1, 0x40($s0) -/* 2DC10 80052810 00021403 */ sra $v0, $v0, 0x10 -/* 2DC14 80052814 00430018 */ mult $v0, $v1 -/* 2DC18 80052818 00003012 */ mflo $a2 -/* 2DC1C 8005281C 9202003F */ lbu $v0, 0x3f($s0) -/* 2DC20 80052820 00000000 */ nop -/* 2DC24 80052824 00C20018 */ mult $a2, $v0 -/* 2DC28 80052828 00003012 */ mflo $a2 -/* 2DC2C 8005282C 8E030030 */ lw $v1, 0x30($s0) -/* 2DC30 80052830 00061383 */ sra $v0, $a2, 0xe -/* 2DC34 80052834 00430018 */ mult $v0, $v1 -/* 2DC38 80052838 92020043 */ lbu $v0, 0x43($s0) -/* 2DC3C 8005283C 08014ABE */ j .L80052AF8 -/* 2DC40 80052840 34420004 */ ori $v0, $v0, 4 -.L80052844: -/* 2DC44 80052844 8E020028 */ lw $v0, 0x28($s0) -/* 2DC48 80052848 14540015 */ bne $v0, $s4, .L800528A0 -/* 2DC4C 8005284C 2442E98A */ addiu $v0, $v0, -0x1676 -/* 2DC50 80052850 30820020 */ andi $v0, $a0, 0x20 -/* 2DC54 80052854 504000AD */ beql $v0, $zero, .L80052B0C -/* 2DC58 80052858 26310048 */ addiu $s1, $s1, 0x48 -/* 2DC5C 8005285C 92030039 */ lbu $v1, 0x39($s0) -/* 2DC60 80052860 86020040 */ lh $v0, 0x40($s0) -/* 2DC64 80052864 00620018 */ mult $v1, $v0 -/* 2DC68 80052868 00003012 */ mflo $a2 -/* 2DC6C 8005286C 9202003F */ lbu $v0, 0x3f($s0) -/* 2DC70 80052870 00000000 */ nop -/* 2DC74 80052874 00C20018 */ mult $a2, $v0 -/* 2DC78 80052878 00003012 */ mflo $a2 -/* 2DC7C 8005287C 8E030030 */ lw $v1, 0x30($s0) -/* 2DC80 80052880 00061383 */ sra $v0, $a2, 0xe -/* 2DC84 80052884 00430018 */ mult $v0, $v1 -/* 2DC88 80052888 92030043 */ lbu $v1, 0x43($s0) -/* 2DC8C 8005288C 308200DF */ andi $v0, $a0, 0xdf -/* 2DC90 80052890 A202003D */ sb $v0, 0x3d($s0) -/* 2DC94 80052894 34630004 */ ori $v1, $v1, 4 -/* 2DC98 80052898 08014ABF */ j .L80052AFC -/* 2DC9C 8005289C A2030043 */ sb $v1, 0x43($s0) -.L800528A0: -/* 2DCA0 800528A0 1C40006A */ bgtz $v0, .L80052A4C -/* 2DCA4 800528A4 AE020028 */ sw $v0, 0x28($s0) -/* 2DCA8 800528A8 8E02001C */ lw $v0, 0x1c($s0) -/* 2DCAC 800528AC 90430000 */ lbu $v1, ($v0) -/* 2DCB0 800528B0 240200FF */ addiu $v0, $zero, 0xff -/* 2DCB4 800528B4 14620012 */ bne $v1, $v0, .L80052900 -/* 2DCB8 800528B8 00000000 */ nop -/* 2DCBC 800528BC 9202003D */ lbu $v0, 0x3d($s0) -/* 2DCC0 800528C0 30420001 */ andi $v0, $v0, 1 -/* 2DCC4 800528C4 10400005 */ beqz $v0, .L800528DC -/* 2DCC8 800528C8 24020001 */ addiu $v0, $zero, 1 -/* 2DCCC 800528CC A200003D */ sb $zero, 0x3d($s0) -/* 2DCD0 800528D0 AE00001C */ sw $zero, 0x1c($s0) -/* 2DCD4 800528D4 08014AC2 */ j .L80052B08 -/* 2DCD8 800528D8 A2020042 */ sb $v0, 0x42($s0) -.L800528DC: -/* 2DCDC 800528DC 9203003A */ lbu $v1, 0x3a($s0) -/* 2DCE0 800528E0 2402003B */ addiu $v0, $zero, 0x3b -/* 2DCE4 800528E4 AE140028 */ sw $s4, 0x28($s0) -/* 2DCE8 800528E8 AE140024 */ sw $s4, 0x24($s0) -/* 2DCEC 800528EC A202003B */ sb $v0, 0x3b($s0) -/* 2DCF0 800528F0 AE130008 */ sw $s3, 8($s0) -/* 2DCF4 800528F4 AE00002C */ sw $zero, 0x2c($s0) -/* 2DCF8 800528F8 08014AC2 */ j .L80052B08 -/* 2DCFC 800528FC A2030039 */ sb $v1, 0x39($s0) -.L80052900: -/* 2DD00 80052900 0C014B3F */ jal func_80052CFC -/* 2DD04 80052904 0200202D */ daddu $a0, $s0, $zero -/* 2DD08 80052908 A202003B */ sb $v0, 0x3b($s0) -/* 2DD0C 8005290C 304200FF */ andi $v0, $v0, 0xff -/* 2DD10 80052910 00021080 */ sll $v0, $v0, 2 -/* 2DD14 80052914 8E03001C */ lw $v1, 0x1c($s0) -/* 2DD18 80052918 9204003A */ lbu $a0, 0x3a($s0) -/* 2DD1C 8005291C 00551021 */ addu $v0, $v0, $s5 -/* 2DD20 80052920 A2040039 */ sb $a0, 0x39($s0) -/* 2DD24 80052924 90640000 */ lbu $a0, ($v1) -/* 2DD28 80052928 24630001 */ addiu $v1, $v1, 1 -/* 2DD2C 8005292C AE03001C */ sw $v1, 0x1c($s0) -/* 2DD30 80052930 3084007F */ andi $a0, $a0, 0x7f -/* 2DD34 80052934 A204003A */ sb $a0, 0x3a($s0) -/* 2DD38 80052938 8C440000 */ lw $a0, ($v0) -/* 2DD3C 8005293C AE040028 */ sw $a0, 0x28($s0) -/* 2DD40 80052940 10800010 */ beqz $a0, .L80052984 -/* 2DD44 80052944 AE040024 */ sw $a0, 0x24($s0) -/* 2DD48 80052948 9202003A */ lbu $v0, 0x3a($s0) -/* 2DD4C 8005294C 92030039 */ lbu $v1, 0x39($s0) -/* 2DD50 80052950 44821000 */ mtc1 $v0, $f2 -/* 2DD54 80052954 00000000 */ nop -/* 2DD58 80052958 468010A0 */ cvt.s.w $f2, $f2 -/* 2DD5C 8005295C 44830000 */ mtc1 $v1, $f0 -/* 2DD60 80052960 00000000 */ nop -/* 2DD64 80052964 46800020 */ cvt.s.w $f0, $f0 -/* 2DD68 80052968 46001081 */ sub.s $f2, $f2, $f0 -/* 2DD6C 8005296C 44840000 */ mtc1 $a0, $f0 -/* 2DD70 80052970 00000000 */ nop -/* 2DD74 80052974 46800020 */ cvt.s.w $f0, $f0 -/* 2DD78 80052978 46001083 */ div.s $f2, $f2, $f0 -/* 2DD7C 8005297C 08014A62 */ j .L80052988 -/* 2DD80 80052980 E602002C */ swc1 $f2, 0x2c($s0) -.L80052984: -/* 2DD84 80052984 AE00002C */ sw $zero, 0x2c($s0) -.L80052988: -/* 2DD88 80052988 9203003D */ lbu $v1, 0x3d($s0) -/* 2DD8C 8005298C 30620020 */ andi $v0, $v1, 0x20 -/* 2DD90 80052990 1040001A */ beqz $v0, .L800529FC -/* 2DD94 80052994 306200DF */ andi $v0, $v1, 0xdf -/* 2DD98 80052998 8E040028 */ lw $a0, 0x28($s0) -/* 2DD9C 8005299C A202003D */ sb $v0, 0x3d($s0) -/* 2DDA0 800529A0 28821677 */ slti $v0, $a0, 0x1677 -/* 2DDA4 800529A4 14400012 */ bnez $v0, .L800529F0 -/* 2DDA8 800529A8 2482E98A */ addiu $v0, $a0, -0x1676 -/* 2DDAC 800529AC 8E030024 */ lw $v1, 0x24($s0) -/* 2DDB0 800529B0 C602002C */ lwc1 $f2, 0x2c($s0) -/* 2DDB4 800529B4 AE020028 */ sw $v0, 0x28($s0) -/* 2DDB8 800529B8 00621823 */ subu $v1, $v1, $v0 -/* 2DDBC 800529BC 44830000 */ mtc1 $v1, $f0 -/* 2DDC0 800529C0 00000000 */ nop -/* 2DDC4 800529C4 46800020 */ cvt.s.w $f0, $f0 -/* 2DDC8 800529C8 46001082 */ mul.s $f2, $f2, $f0 -/* 2DDCC 800529CC 00000000 */ nop -/* 2DDD0 800529D0 9202003D */ lbu $v0, 0x3d($s0) -/* 2DDD4 800529D4 92030039 */ lbu $v1, 0x39($s0) -/* 2DDD8 800529D8 34420002 */ ori $v0, $v0, 2 -/* 2DDDC 800529DC A202003D */ sb $v0, 0x3d($s0) -/* 2DDE0 800529E0 4600110D */ trunc.w.s $f4, $f2 -/* 2DDE4 800529E4 44022000 */ mfc1 $v0, $f4 -/* 2DDE8 800529E8 08014A7D */ j .L800529F4 -/* 2DDEC 800529EC 00621821 */ addu $v1, $v1, $v0 -.L800529F0: -/* 2DDF0 800529F0 9203003A */ lbu $v1, 0x3a($s0) -.L800529F4: -/* 2DDF4 800529F4 08014A84 */ j .L80052A10 -/* 2DDF8 800529F8 AE130008 */ sw $s3, 8($s0) -.L800529FC: -/* 2DDFC 800529FC 8E040024 */ lw $a0, 0x24($s0) -/* 2DE00 80052A00 0C014AF0 */ jal func_80052BC0 -/* 2DE04 80052A04 00000000 */ nop -/* 2DE08 80052A08 9203003A */ lbu $v1, 0x3a($s0) -/* 2DE0C 80052A0C AE020008 */ sw $v0, 8($s0) -.L80052A10: -/* 2DE10 80052A10 00031400 */ sll $v0, $v1, 0x10 -/* 2DE14 80052A14 86030040 */ lh $v1, 0x40($s0) -/* 2DE18 80052A18 00021403 */ sra $v0, $v0, 0x10 -/* 2DE1C 80052A1C 00430018 */ mult $v0, $v1 -/* 2DE20 80052A20 00003012 */ mflo $a2 -/* 2DE24 80052A24 9202003F */ lbu $v0, 0x3f($s0) -/* 2DE28 80052A28 00000000 */ nop -/* 2DE2C 80052A2C 00C20018 */ mult $a2, $v0 -/* 2DE30 80052A30 00003012 */ mflo $a2 -/* 2DE34 80052A34 8E030030 */ lw $v1, 0x30($s0) -/* 2DE38 80052A38 00061383 */ sra $v0, $a2, 0xe -/* 2DE3C 80052A3C 00430018 */ mult $v0, $v1 -/* 2DE40 80052A40 92020043 */ lbu $v0, 0x43($s0) -/* 2DE44 80052A44 08014ABE */ j .L80052AF8 -/* 2DE48 80052A48 34420004 */ ori $v0, $v0, 4 -.L80052A4C: -/* 2DE4C 80052A4C 9203003D */ lbu $v1, 0x3d($s0) -/* 2DE50 80052A50 30620020 */ andi $v0, $v1, 0x20 -/* 2DE54 80052A54 5040002D */ beql $v0, $zero, .L80052B0C -/* 2DE58 80052A58 26310048 */ addiu $s1, $s1, 0x48 -/* 2DE5C 80052A5C 8E040028 */ lw $a0, 0x28($s0) -/* 2DE60 80052A60 306200DF */ andi $v0, $v1, 0xdf -/* 2DE64 80052A64 A202003D */ sb $v0, 0x3d($s0) -/* 2DE68 80052A68 28821677 */ slti $v0, $a0, 0x1677 -/* 2DE6C 80052A6C 14400012 */ bnez $v0, .L80052AB8 -/* 2DE70 80052A70 2482E98A */ addiu $v0, $a0, -0x1676 -/* 2DE74 80052A74 8E030024 */ lw $v1, 0x24($s0) -/* 2DE78 80052A78 C602002C */ lwc1 $f2, 0x2c($s0) -/* 2DE7C 80052A7C AE020028 */ sw $v0, 0x28($s0) -/* 2DE80 80052A80 00621823 */ subu $v1, $v1, $v0 -/* 2DE84 80052A84 44830000 */ mtc1 $v1, $f0 -/* 2DE88 80052A88 00000000 */ nop -/* 2DE8C 80052A8C 46800020 */ cvt.s.w $f0, $f0 -/* 2DE90 80052A90 46001082 */ mul.s $f2, $f2, $f0 -/* 2DE94 80052A94 00000000 */ nop -/* 2DE98 80052A98 9202003D */ lbu $v0, 0x3d($s0) -/* 2DE9C 80052A9C 92030039 */ lbu $v1, 0x39($s0) -/* 2DEA0 80052AA0 34420002 */ ori $v0, $v0, 2 -/* 2DEA4 80052AA4 A202003D */ sb $v0, 0x3d($s0) -/* 2DEA8 80052AA8 4600110D */ trunc.w.s $f4, $f2 -/* 2DEAC 80052AAC 44022000 */ mfc1 $v0, $f4 -/* 2DEB0 80052AB0 08014AAF */ j .L80052ABC -/* 2DEB4 80052AB4 00621821 */ addu $v1, $v1, $v0 -.L80052AB8: -/* 2DEB8 80052AB8 9203003A */ lbu $v1, 0x3a($s0) -.L80052ABC: -/* 2DEBC 80052ABC 00031400 */ sll $v0, $v1, 0x10 -/* 2DEC0 80052AC0 86030040 */ lh $v1, 0x40($s0) -/* 2DEC4 80052AC4 00021403 */ sra $v0, $v0, 0x10 -/* 2DEC8 80052AC8 00430018 */ mult $v0, $v1 -/* 2DECC 80052ACC 00003012 */ mflo $a2 -/* 2DED0 80052AD0 9202003F */ lbu $v0, 0x3f($s0) -/* 2DED4 80052AD4 00000000 */ nop -/* 2DED8 80052AD8 00C20018 */ mult $a2, $v0 -/* 2DEDC 80052ADC 00003012 */ mflo $a2 -/* 2DEE0 80052AE0 8E030030 */ lw $v1, 0x30($s0) -/* 2DEE4 80052AE4 00061383 */ sra $v0, $a2, 0xe -/* 2DEE8 80052AE8 00430018 */ mult $v0, $v1 -/* 2DEEC 80052AEC 92020043 */ lbu $v0, 0x43($s0) -/* 2DEF0 80052AF0 AE130008 */ sw $s3, 8($s0) -/* 2DEF4 80052AF4 34420004 */ ori $v0, $v0, 4 -.L80052AF8: -/* 2DEF8 80052AF8 A2020043 */ sb $v0, 0x43($s0) -.L80052AFC: -/* 2DEFC 80052AFC 00003012 */ mflo $a2 -/* 2DF00 80052B00 000611C3 */ sra $v0, $a2, 7 -/* 2DF04 80052B04 A602000C */ sh $v0, 0xc($s0) -.L80052B08: -/* 2DF08 80052B08 26310048 */ addiu $s1, $s1, 0x48 -.L80052B0C: -/* 2DF0C 80052B0C 26520001 */ addiu $s2, $s2, 1 -/* 2DF10 80052B10 2A420018 */ slti $v0, $s2, 0x18 -/* 2DF14 80052B14 1440FEE3 */ bnez $v0, .L800526A4 -/* 2DF18 80052B18 02D18021 */ addu $s0, $s6, $s1 -/* 2DF1C 80052B1C 8FBF002C */ lw $ra, 0x2c($sp) -/* 2DF20 80052B20 8FB60028 */ lw $s6, 0x28($sp) -/* 2DF24 80052B24 8FB50024 */ lw $s5, 0x24($sp) -/* 2DF28 80052B28 8FB40020 */ lw $s4, 0x20($sp) -/* 2DF2C 80052B2C 8FB3001C */ lw $s3, 0x1c($sp) -/* 2DF30 80052B30 8FB20018 */ lw $s2, 0x18($sp) -/* 2DF34 80052B34 8FB10014 */ lw $s1, 0x14($sp) -/* 2DF38 80052B38 8FB00010 */ lw $s0, 0x10($sp) -/* 2DF3C 80052B3C 03E00008 */ jr $ra -/* 2DF40 80052B40 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052BF8.s b/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052BF8.s deleted file mode 100644 index 5727aa97e4..0000000000 --- a/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052BF8.s +++ /dev/null @@ -1,71 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80052BF8 -/* 2DFF8 80052BF8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 2DFFC 80052BFC AFB00010 */ sw $s0, 0x10($sp) -/* 2E000 80052C00 0080802D */ daddu $s0, $a0, $zero -/* 2E004 80052C04 AFBF0014 */ sw $ra, 0x14($sp) -/* 2E008 80052C08 8CA20000 */ lw $v0, ($a1) -/* 2E00C 80052C0C AE020014 */ sw $v0, 0x14($s0) -/* 2E010 80052C10 AE02001C */ sw $v0, 0x1c($s0) -/* 2E014 80052C14 8CA30004 */ lw $v1, 4($a1) -/* 2E018 80052C18 24020080 */ addiu $v0, $zero, 0x80 -/* 2E01C 80052C1C AE020030 */ sw $v0, 0x30($s0) -/* 2E020 80052C20 AE000034 */ sw $zero, 0x34($s0) -/* 2E024 80052C24 0C014B3F */ jal func_80052CFC -/* 2E028 80052C28 AE030018 */ sw $v1, 0x18($s0) -/* 2E02C 80052C2C 8E03001C */ lw $v1, 0x1c($s0) -/* 2E030 80052C30 A200003D */ sb $zero, 0x3d($s0) -/* 2E034 80052C34 A2000039 */ sb $zero, 0x39($s0) -/* 2E038 80052C38 90640000 */ lbu $a0, ($v1) -/* 2E03C 80052C3C 24630001 */ addiu $v1, $v1, 1 -/* 2E040 80052C40 AE03001C */ sw $v1, 0x1c($s0) -/* 2E044 80052C44 86030040 */ lh $v1, 0x40($s0) -/* 2E048 80052C48 A204003A */ sb $a0, 0x3a($s0) -/* 2E04C 80052C4C 308400FF */ andi $a0, $a0, 0xff -/* 2E050 80052C50 00830018 */ mult $a0, $v1 -/* 2E054 80052C54 304200FF */ andi $v0, $v0, 0xff -/* 2E058 80052C58 A202003B */ sb $v0, 0x3b($s0) -/* 2E05C 80052C5C 00021080 */ sll $v0, $v0, 2 -/* 2E060 80052C60 00003012 */ mflo $a2 -/* 2E064 80052C64 8E030030 */ lw $v1, 0x30($s0) -/* 2E068 80052C68 3C018008 */ lui $at, %hi(D_800785A0) -/* 2E06C 80052C6C 00220821 */ addu $at, $at, $v0 -/* 2E070 80052C70 8C2285A0 */ lw $v0, %lo(D_800785A0)($at) -/* 2E074 80052C74 00C30018 */ mult $a2, $v1 -/* 2E078 80052C78 AE020024 */ sw $v0, 0x24($s0) -/* 2E07C 80052C7C 0040202D */ daddu $a0, $v0, $zero -/* 2E080 80052C80 AE020028 */ sw $v0, 0x28($s0) -/* 2E084 80052C84 00003012 */ mflo $a2 -/* 2E088 80052C88 00061383 */ sra $v0, $a2, 0xe -/* 2E08C 80052C8C 0C014AF0 */ jal func_80052BC0 -/* 2E090 80052C90 A602000C */ sh $v0, 0xc($s0) -/* 2E094 80052C94 8E040024 */ lw $a0, 0x24($s0) -/* 2E098 80052C98 10800010 */ beqz $a0, .L80052CDC -/* 2E09C 80052C9C AE020008 */ sw $v0, 8($s0) -/* 2E0A0 80052CA0 9202003A */ lbu $v0, 0x3a($s0) -/* 2E0A4 80052CA4 92030039 */ lbu $v1, 0x39($s0) -/* 2E0A8 80052CA8 44820000 */ mtc1 $v0, $f0 -/* 2E0AC 80052CAC 00000000 */ nop -/* 2E0B0 80052CB0 46800020 */ cvt.s.w $f0, $f0 -/* 2E0B4 80052CB4 44831000 */ mtc1 $v1, $f2 -/* 2E0B8 80052CB8 00000000 */ nop -/* 2E0BC 80052CBC 468010A0 */ cvt.s.w $f2, $f2 -/* 2E0C0 80052CC0 46020001 */ sub.s $f0, $f0, $f2 -/* 2E0C4 80052CC4 44841000 */ mtc1 $a0, $f2 -/* 2E0C8 80052CC8 00000000 */ nop -/* 2E0CC 80052CCC 468010A0 */ cvt.s.w $f2, $f2 -/* 2E0D0 80052CD0 46020003 */ div.s $f0, $f0, $f2 -/* 2E0D4 80052CD4 08014B38 */ j .L80052CE0 -/* 2E0D8 80052CD8 E600002C */ swc1 $f0, 0x2c($s0) -.L80052CDC: -/* 2E0DC 80052CDC AE00002C */ sw $zero, 0x2c($s0) -.L80052CE0: -/* 2E0E0 80052CE0 24020080 */ addiu $v0, $zero, 0x80 -/* 2E0E4 80052CE4 A200003E */ sb $zero, 0x3e($s0) -/* 2E0E8 80052CE8 A202003F */ sb $v0, 0x3f($s0) -/* 2E0EC 80052CEC 8FBF0014 */ lw $ra, 0x14($sp) -/* 2E0F0 80052CF0 8FB00010 */ lw $s0, 0x10($sp) -/* 2E0F4 80052CF4 03E00008 */ jr $ra -/* 2E0F8 80052CF8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/2e230_len_2190/snd_memset.s b/ver/us/asm/nonmatchings/2e230_len_2190/snd_memset.s deleted file mode 100644 index 3c2c41c8b9..0000000000 --- a/ver/us/asm/nonmatchings/2e230_len_2190/snd_memset.s +++ /dev/null @@ -1,59 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_memset -/* 30290 80054E90 10A0000A */ beqz $a1, .L80054EBC -/* 30294 80054E94 28A20400 */ slti $v0, $a1, 0x400 -/* 30298 80054E98 1040000A */ beqz $v0, .L80054EC4 -/* 3029C 80054E9C 00A0102D */ daddu $v0, $a1, $zero -/* 302A0 80054EA0 10400006 */ beqz $v0, .L80054EBC -/* 302A4 80054EA4 24A5FFFF */ addiu $a1, $a1, -1 -.L80054EA8: -/* 302A8 80054EA8 A0860000 */ sb $a2, ($a0) -/* 302AC 80054EAC 24840001 */ addiu $a0, $a0, 1 -/* 302B0 80054EB0 00A0102D */ daddu $v0, $a1, $zero -/* 302B4 80054EB4 1440FFFC */ bnez $v0, .L80054EA8 -/* 302B8 80054EB8 24A5FFFF */ addiu $a1, $a1, -1 -.L80054EBC: -/* 302BC 80054EBC 03E00008 */ jr $ra -/* 302C0 80054EC0 00000000 */ nop -.L80054EC4: -/* 302C4 80054EC4 30870003 */ andi $a3, $a0, 3 -/* 302C8 80054EC8 10E00009 */ beqz $a3, .L80054EF0 -/* 302CC 80054ECC 24020004 */ addiu $v0, $zero, 4 -/* 302D0 80054ED0 00473823 */ subu $a3, $v0, $a3 -/* 302D4 80054ED4 080153B9 */ j .L80054EE4 -/* 302D8 80054ED8 00A72823 */ subu $a1, $a1, $a3 -.L80054EDC: -/* 302DC 80054EDC A0860000 */ sb $a2, ($a0) -/* 302E0 80054EE0 24840001 */ addiu $a0, $a0, 1 -.L80054EE4: -/* 302E4 80054EE4 00E0102D */ daddu $v0, $a3, $zero -/* 302E8 80054EE8 1440FFFC */ bnez $v0, .L80054EDC -/* 302EC 80054EEC 24E7FFFF */ addiu $a3, $a3, -1 -.L80054EF0: -/* 302F0 80054EF0 00053883 */ sra $a3, $a1, 2 -/* 302F4 80054EF4 30C300FF */ andi $v1, $a2, 0xff -/* 302F8 80054EF8 00031200 */ sll $v0, $v1, 8 -/* 302FC 80054EFC 00431821 */ addu $v1, $v0, $v1 -/* 30300 80054F00 00031400 */ sll $v0, $v1, 0x10 -/* 30304 80054F04 080153C5 */ j .L80054F14 -/* 30308 80054F08 00621821 */ addu $v1, $v1, $v0 -.L80054F0C: -/* 3030C 80054F0C AC830000 */ sw $v1, ($a0) -/* 30310 80054F10 24840004 */ addiu $a0, $a0, 4 -.L80054F14: -/* 30314 80054F14 00E0102D */ daddu $v0, $a3, $zero -/* 30318 80054F18 1440FFFC */ bnez $v0, .L80054F0C -/* 3031C 80054F1C 24E7FFFF */ addiu $a3, $a3, -1 -/* 30320 80054F20 30A70003 */ andi $a3, $a1, 3 -/* 30324 80054F24 10E0FFE5 */ beqz $a3, .L80054EBC -/* 30328 80054F28 24E7FFFF */ addiu $a3, $a3, -1 -.L80054F2C: -/* 3032C 80054F2C A0860000 */ sb $a2, ($a0) -/* 30330 80054F30 24840001 */ addiu $a0, $a0, 1 -/* 30334 80054F34 00E0102D */ daddu $v0, $a3, $zero -/* 30338 80054F38 1440FFFC */ bnez $v0, .L80054F2C -/* 3033C 80054F3C 24E7FFFF */ addiu $a3, $a3, -1 -/* 30340 80054F40 03E00008 */ jr $ra -/* 30344 80054F44 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/2e230_len_2190/snd_tune_param_to_timescale.s b/ver/us/asm/nonmatchings/2e230_len_2190/snd_tune_param_to_timescale.s deleted file mode 100644 index f84168ac0d..0000000000 --- a/ver/us/asm/nonmatchings/2e230_len_2190/snd_tune_param_to_timescale.s +++ /dev/null @@ -1,36 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_tune_param_to_timescale -/* 2ECF8 800538F8 0080282D */ daddu $a1, $a0, $zero -/* 2ECFC 800538FC 04A10010 */ bgez $a1, .L80053940 -/* 2ED00 80053900 30A3007F */ andi $v1, $a1, 0x7f -/* 2ED04 80053904 00052823 */ negu $a1, $a1 -/* 2ED08 80053908 3C048008 */ lui $a0, %hi(D_80078730) -/* 2ED0C 8005390C 24848730 */ addiu $a0, $a0, %lo(D_80078730) -/* 2ED10 80053910 30A2007F */ andi $v0, $a1, 0x7f -/* 2ED14 80053914 244200A0 */ addiu $v0, $v0, 0xa0 -/* 2ED18 80053918 00021080 */ sll $v0, $v0, 2 -/* 2ED1C 8005391C 00441021 */ addu $v0, $v0, $a0 -/* 2ED20 80053920 30A33F80 */ andi $v1, $a1, 0x3f80 -/* 2ED24 80053924 00031942 */ srl $v1, $v1, 5 -/* 2ED28 80053928 00641821 */ addu $v1, $v1, $a0 -/* 2ED2C 8005392C C4420000 */ lwc1 $f2, ($v0) -/* 2ED30 80053930 C4600480 */ lwc1 $f0, 0x480($v1) -/* 2ED34 80053934 46001002 */ mul.s $f0, $f2, $f0 -/* 2ED38 80053938 03E00008 */ jr $ra -/* 2ED3C 8005393C 00000000 */ nop -.L80053940: -/* 2ED40 80053940 3C048008 */ lui $a0, %hi(D_80078730) -/* 2ED44 80053944 24848730 */ addiu $a0, $a0, %lo(D_80078730) -/* 2ED48 80053948 00031880 */ sll $v1, $v1, 2 -/* 2ED4C 8005394C 00641821 */ addu $v1, $v1, $a0 -/* 2ED50 80053950 30A20F80 */ andi $v0, $a1, 0xf80 -/* 2ED54 80053954 00021142 */ srl $v0, $v0, 5 -/* 2ED58 80053958 34420200 */ ori $v0, $v0, 0x200 -/* 2ED5C 8005395C 00441021 */ addu $v0, $v0, $a0 -/* 2ED60 80053960 C4620000 */ lwc1 $f2, ($v1) -/* 2ED64 80053964 C4400000 */ lwc1 $f0, ($v0) -/* 2ED68 80053968 46001002 */ mul.s $f0, $f2, $f0 -/* 2ED6C 8005396C 03E00008 */ jr $ra -/* 2ED70 80053970 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/30450/func_80055AF0.s b/ver/us/asm/nonmatchings/30450/func_80055AF0.s deleted file mode 100644 index 9700ec153a..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055AF0.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055AF0 -/* 30EF0 80055AF0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30EF4 80055AF4 AFA40010 */ sw $a0, 0x10($sp) -/* 30EF8 80055AF8 27A40010 */ addiu $a0, $sp, 0x10 -/* 30EFC 80055AFC 0000282D */ daddu $a1, $zero, $zero -/* 30F00 80055B00 AFBF0030 */ sw $ra, 0x30($sp) -/* 30F04 80055B04 AFA00014 */ sw $zero, 0x14($sp) -/* 30F08 80055B08 AFA00018 */ sw $zero, 0x18($sp) -/* 30F0C 80055B0C AFA0001C */ sw $zero, 0x1c($sp) -/* 30F10 80055B10 AFA00020 */ sw $zero, 0x20($sp) -/* 30F14 80055B14 0C01372E */ jal func_8004DCB8 -/* 30F18 80055B18 AFA00024 */ sw $zero, 0x24($sp) -/* 30F1C 80055B1C 8FBF0030 */ lw $ra, 0x30($sp) -/* 30F20 80055B20 03E00008 */ jr $ra -/* 30F24 80055B24 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055B28.s b/ver/us/asm/nonmatchings/30450/func_80055B28.s deleted file mode 100644 index 1489541c05..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055B28.s +++ /dev/null @@ -1,26 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055B28 -/* 30F28 80055B28 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30F2C 80055B2C AFB00030 */ sw $s0, 0x30($sp) -/* 30F30 80055B30 3C108008 */ lui $s0, %hi(D_80078DB0) -/* 30F34 80055B34 26108DB0 */ addiu $s0, $s0, %lo(D_80078DB0) -/* 30F38 80055B38 24030001 */ addiu $v1, $zero, 1 -/* 30F3C 80055B3C 240207D0 */ addiu $v0, $zero, 0x7d0 -/* 30F40 80055B40 AFBF0034 */ sw $ra, 0x34($sp) -/* 30F44 80055B44 AE030000 */ sw $v1, ($s0) -/* 30F48 80055B48 AFA20014 */ sw $v0, 0x14($sp) -/* 30F4C 80055B4C 2402007F */ addiu $v0, $zero, 0x7f -/* 30F50 80055B50 AFA40010 */ sw $a0, 0x10($sp) -/* 30F54 80055B54 27A40010 */ addiu $a0, $sp, 0x10 -/* 30F58 80055B58 AFA30018 */ sw $v1, 0x18($sp) -/* 30F5C 80055B5C AFA2001C */ sw $v0, 0x1c($sp) -/* 30F60 80055B60 AFA00020 */ sw $zero, 0x20($sp) -/* 30F64 80055B64 0C01378B */ jal func_8004DE2C -/* 30F68 80055B68 AFA00024 */ sw $zero, 0x24($sp) -/* 30F6C 80055B6C AE000000 */ sw $zero, ($s0) -/* 30F70 80055B70 8FBF0034 */ lw $ra, 0x34($sp) -/* 30F74 80055B74 8FB00030 */ lw $s0, 0x30($sp) -/* 30F78 80055B78 03E00008 */ jr $ra -/* 30F7C 80055B7C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055B80.s b/ver/us/asm/nonmatchings/30450/func_80055B80.s deleted file mode 100644 index 369e9f3be2..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055B80.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055B80 -/* 30F80 80055B80 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30F84 80055B84 AFA40010 */ sw $a0, 0x10($sp) -/* 30F88 80055B88 27A40010 */ addiu $a0, $sp, 0x10 -/* 30F8C 80055B8C 24050001 */ addiu $a1, $zero, 1 -/* 30F90 80055B90 AFBF0030 */ sw $ra, 0x30($sp) -/* 30F94 80055B94 AFA00014 */ sw $zero, 0x14($sp) -/* 30F98 80055B98 AFA00018 */ sw $zero, 0x18($sp) -/* 30F9C 80055B9C AFA0001C */ sw $zero, 0x1c($sp) -/* 30FA0 80055BA0 AFA00020 */ sw $zero, 0x20($sp) -/* 30FA4 80055BA4 0C01372E */ jal func_8004DCB8 -/* 30FA8 80055BA8 AFA00024 */ sw $zero, 0x24($sp) -/* 30FAC 80055BAC 8FBF0030 */ lw $ra, 0x30($sp) -/* 30FB0 80055BB0 03E00008 */ jr $ra -/* 30FB4 80055BB4 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055BB8.s b/ver/us/asm/nonmatchings/30450/func_80055BB8.s deleted file mode 100644 index 8fad91c870..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055BB8.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055BB8 -/* 30FB8 80055BB8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30FBC 80055BBC 24020001 */ addiu $v0, $zero, 1 -/* 30FC0 80055BC0 AFA40010 */ sw $a0, 0x10($sp) -/* 30FC4 80055BC4 27A40010 */ addiu $a0, $sp, 0x10 -/* 30FC8 80055BC8 AFBF0030 */ sw $ra, 0x30($sp) -/* 30FCC 80055BCC AFA50014 */ sw $a1, 0x14($sp) -/* 30FD0 80055BD0 AFA00018 */ sw $zero, 0x18($sp) -/* 30FD4 80055BD4 AFA0001C */ sw $zero, 0x1c($sp) -/* 30FD8 80055BD8 AFA00020 */ sw $zero, 0x20($sp) -/* 30FDC 80055BDC 0C0136D3 */ jal func_8004DB4C -/* 30FE0 80055BE0 AFA20024 */ sw $v0, 0x24($sp) -/* 30FE4 80055BE4 8FBF0030 */ lw $ra, 0x30($sp) -/* 30FE8 80055BE8 03E00008 */ jr $ra -/* 30FEC 80055BEC 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055BF0.s b/ver/us/asm/nonmatchings/30450/func_80055BF0.s deleted file mode 100644 index 542458a7b6..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055BF0.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055BF0 -/* 30FF0 80055BF0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30FF4 80055BF4 24020001 */ addiu $v0, $zero, 1 -/* 30FF8 80055BF8 AFA40010 */ sw $a0, 0x10($sp) -/* 30FFC 80055BFC 27A40010 */ addiu $a0, $sp, 0x10 -/* 31000 80055C00 0000282D */ daddu $a1, $zero, $zero -/* 31004 80055C04 AFBF0030 */ sw $ra, 0x30($sp) -/* 31008 80055C08 AFA00014 */ sw $zero, 0x14($sp) -/* 3100C 80055C0C AFA00018 */ sw $zero, 0x18($sp) -/* 31010 80055C10 AFA0001C */ sw $zero, 0x1c($sp) -/* 31014 80055C14 AFA00020 */ sw $zero, 0x20($sp) -/* 31018 80055C18 0C01372E */ jal func_8004DCB8 -/* 3101C 80055C1C AFA20024 */ sw $v0, 0x24($sp) -/* 31020 80055C20 8FBF0030 */ lw $ra, 0x30($sp) -/* 31024 80055C24 03E00008 */ jr $ra -/* 31028 80055C28 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055C2C.s b/ver/us/asm/nonmatchings/30450/func_80055C2C.s deleted file mode 100644 index 2ed59a3826..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055C2C.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055C2C -/* 3102C 80055C2C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 31030 80055C30 24020001 */ addiu $v0, $zero, 1 -/* 31034 80055C34 AFA40010 */ sw $a0, 0x10($sp) -/* 31038 80055C38 27A40010 */ addiu $a0, $sp, 0x10 -/* 3103C 80055C3C AFBF0030 */ sw $ra, 0x30($sp) -/* 31040 80055C40 AFA00014 */ sw $zero, 0x14($sp) -/* 31044 80055C44 AFA00018 */ sw $zero, 0x18($sp) -/* 31048 80055C48 AFA0001C */ sw $zero, 0x1c($sp) -/* 3104C 80055C4C AFA00020 */ sw $zero, 0x20($sp) -/* 31050 80055C50 0C01378B */ jal func_8004DE2C -/* 31054 80055C54 AFA20024 */ sw $v0, 0x24($sp) -/* 31058 80055C58 8FBF0030 */ lw $ra, 0x30($sp) -/* 3105C 80055C5C 03E00008 */ jr $ra -/* 31060 80055C60 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055C64.s b/ver/us/asm/nonmatchings/30450/func_80055C64.s deleted file mode 100644 index 7dcfec2939..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055C64.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055C64 -/* 31064 80055C64 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 31068 80055C68 240201F4 */ addiu $v0, $zero, 0x1f4 -/* 3106C 80055C6C AFA20014 */ sw $v0, 0x14($sp) -/* 31070 80055C70 24022000 */ addiu $v0, $zero, 0x2000 -/* 31074 80055C74 AFA40010 */ sw $a0, 0x10($sp) -/* 31078 80055C78 27A40010 */ addiu $a0, $sp, 0x10 -/* 3107C 80055C7C AFBF0030 */ sw $ra, 0x30($sp) -/* 31080 80055C80 0C01383D */ jal func_8004E0F4 -/* 31084 80055C84 AFA2001C */ sw $v0, 0x1c($sp) -/* 31088 80055C88 8FBF0030 */ lw $ra, 0x30($sp) -/* 3108C 80055C8C 03E00008 */ jr $ra -/* 31090 80055C90 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055C94.s b/ver/us/asm/nonmatchings/30450/func_80055C94.s deleted file mode 100644 index 0d41ba8237..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055C94.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055C94 -/* 31094 80055C94 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 31098 80055C98 240201F4 */ addiu $v0, $zero, 0x1f4 -/* 3109C 80055C9C AFA20014 */ sw $v0, 0x14($sp) -/* 310A0 80055CA0 24027FFF */ addiu $v0, $zero, 0x7fff -/* 310A4 80055CA4 AFA40010 */ sw $a0, 0x10($sp) -/* 310A8 80055CA8 27A40010 */ addiu $a0, $sp, 0x10 -/* 310AC 80055CAC AFBF0030 */ sw $ra, 0x30($sp) -/* 310B0 80055CB0 0C01383D */ jal func_8004E0F4 -/* 310B4 80055CB4 AFA2001C */ sw $v0, 0x1c($sp) -/* 310B8 80055CB8 8FBF0030 */ lw $ra, 0x30($sp) -/* 310BC 80055CBC 03E00008 */ jr $ra -/* 310C0 80055CC0 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055CC4.s b/ver/us/asm/nonmatchings/30450/func_80055CC4.s deleted file mode 100644 index 1ab559322c..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055CC4.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055CC4 -/* 310C4 80055CC4 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 310C8 80055CC8 AFA40010 */ sw $a0, 0x10($sp) -/* 310CC 80055CCC 27A40010 */ addiu $a0, $sp, 0x10 -/* 310D0 80055CD0 AFBF0030 */ sw $ra, 0x30($sp) -/* 310D4 80055CD4 0C01425C */ jal func_80050970 -/* 310D8 80055CD8 AFA50020 */ sw $a1, 0x20($sp) -/* 310DC 80055CDC 8FBF0030 */ lw $ra, 0x30($sp) -/* 310E0 80055CE0 03E00008 */ jr $ra -/* 310E4 80055CE4 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/func_80055CE8.s b/ver/us/asm/nonmatchings/30450/func_80055CE8.s deleted file mode 100644 index d97d6fda51..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_80055CE8.s +++ /dev/null @@ -1,27 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80055CE8 -/* 310E8 80055CE8 3C07800A */ lui $a3, %hi(D_8009A5C0) -/* 310EC 80055CEC 8CE7A5C0 */ lw $a3, %lo(D_8009A5C0)($a3) -/* 310F0 80055CF0 8CE3005C */ lw $v1, 0x5c($a3) -/* 310F4 80055CF4 8C620008 */ lw $v0, 8($v1) -/* 310F8 80055CF8 14820005 */ bne $a0, $v0, .L80055D10 -/* 310FC 80055CFC 0000402D */ daddu $t0, $zero, $zero -/* 31100 80055D00 3C02800A */ lui $v0, %hi(D_8009A664) -/* 31104 80055D04 8C42A664 */ lw $v0, %lo(D_8009A664)($v0) -/* 31108 80055D08 0801574B */ j .L80055D2C -/* 3110C 80055D0C ACC20000 */ sw $v0, ($a2) -.L80055D10: -/* 31110 80055D10 8CE30060 */ lw $v1, 0x60($a3) -/* 31114 80055D14 8C620008 */ lw $v0, 8($v1) -/* 31118 80055D18 54820005 */ bnel $a0, $v0, .L80055D30 -/* 3111C 80055D1C 24080001 */ addiu $t0, $zero, 1 -/* 31120 80055D20 3C02800A */ lui $v0, %hi(D_8009A5FC) -/* 31124 80055D24 8C42A5FC */ lw $v0, %lo(D_8009A5FC)($v0) -/* 31128 80055D28 ACC20000 */ sw $v0, ($a2) -.L80055D2C: -/* 3112C 80055D2C ACA30000 */ sw $v1, ($a1) -.L80055D30: -/* 31130 80055D30 03E00008 */ jr $ra -/* 31134 80055D34 0100102D */ daddu $v0, $t0, $zero diff --git a/ver/us/asm/nonmatchings/30450/func_800560BC.s b/ver/us/asm/nonmatchings/30450/func_800560BC.s deleted file mode 100644 index d9237dbc5c..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_800560BC.s +++ /dev/null @@ -1,25 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800560BC -/* 314BC 800560BC 3C07800A */ lui $a3, %hi(D_8009A5C0) -/* 314C0 800560C0 8CE7A5C0 */ lw $a3, %lo(D_8009A5C0)($a3) -/* 314C4 800560C4 8CE20098 */ lw $v0, 0x98($a3) -/* 314C8 800560C8 2C420010 */ sltiu $v0, $v0, 0x10 -/* 314CC 800560CC 1040000D */ beqz $v0, .L80056104 -/* 314D0 800560D0 0080182D */ daddu $v1, $a0, $zero -/* 314D4 800560D4 00031F00 */ sll $v1, $v1, 0x1c -/* 314D8 800560D8 30A2000F */ andi $v0, $a1, 0xf -/* 314DC 800560DC 00021600 */ sll $v0, $v0, 0x18 -/* 314E0 800560E0 00621821 */ addu $v1, $v1, $v0 -/* 314E4 800560E4 8CE40090 */ lw $a0, 0x90($a3) -/* 314E8 800560E8 00661821 */ addu $v1, $v1, $a2 -/* 314EC 800560EC AC830000 */ sw $v1, ($a0) -/* 314F0 800560F0 8CE20098 */ lw $v0, 0x98($a3) -/* 314F4 800560F4 24840004 */ addiu $a0, $a0, 4 -/* 314F8 800560F8 ACE40090 */ sw $a0, 0x90($a3) -/* 314FC 800560FC 24420001 */ addiu $v0, $v0, 1 -/* 31500 80056100 ACE20098 */ sw $v0, 0x98($a3) -.L80056104: -/* 31504 80056104 03E00008 */ jr $ra -/* 31508 80056108 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/30450/func_8005610C.s b/ver/us/asm/nonmatchings/30450/func_8005610C.s deleted file mode 100644 index 6afad0a2df..0000000000 --- a/ver/us/asm/nonmatchings/30450/func_8005610C.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8005610C -/* 3150C 8005610C 3C05800A */ lui $a1, %hi(D_8009A5C0) -/* 31510 80056110 8CA5A5C0 */ lw $a1, %lo(D_8009A5C0)($a1) -/* 31514 80056114 2404000F */ addiu $a0, $zero, 0xf -/* 31518 80056118 8CA30094 */ lw $v1, 0x94($a1) -.L8005611C: -/* 3151C 8005611C AC600000 */ sw $zero, ($v1) -/* 31520 80056120 24630004 */ addiu $v1, $v1, 4 -/* 31524 80056124 0080102D */ daddu $v0, $a0, $zero -/* 31528 80056128 1440FFFC */ bnez $v0, .L8005611C -/* 3152C 8005612C 2484FFFF */ addiu $a0, $a0, -1 -/* 31530 80056130 8CA20094 */ lw $v0, 0x94($a1) -/* 31534 80056134 ACA00098 */ sw $zero, 0x98($a1) -/* 31538 80056138 ACA0009C */ sw $zero, 0x9c($a1) -/* 3153C 8005613C 03E00008 */ jr $ra -/* 31540 80056140 ACA20090 */ sw $v0, 0x90($a1) diff --git a/ver/us/asm/nonmatchings/30450/snd_set_song_fade.s b/ver/us/asm/nonmatchings/30450/snd_set_song_fade.s deleted file mode 100644 index a4f5548e5f..0000000000 --- a/ver/us/asm/nonmatchings/30450/snd_set_song_fade.s +++ /dev/null @@ -1,24 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_song_fade -/* 30E6C 80055A6C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30E70 80055A70 AFB00030 */ sw $s0, 0x30($sp) -/* 30E74 80055A74 3C108008 */ lui $s0, %hi(D_80078DB0) -/* 30E78 80055A78 26108DB0 */ addiu $s0, $s0, %lo(D_80078DB0) -/* 30E7C 80055A7C 24020001 */ addiu $v0, $zero, 1 -/* 30E80 80055A80 AFBF0034 */ sw $ra, 0x34($sp) -/* 30E84 80055A84 AE020000 */ sw $v0, ($s0) -/* 30E88 80055A88 AFA40010 */ sw $a0, 0x10($sp) -/* 30E8C 80055A8C 27A40010 */ addiu $a0, $sp, 0x10 -/* 30E90 80055A90 AFA50014 */ sw $a1, 0x14($sp) -/* 30E94 80055A94 AFA60018 */ sw $a2, 0x18($sp) -/* 30E98 80055A98 AFA7001C */ sw $a3, 0x1c($sp) -/* 30E9C 80055A9C AFA00020 */ sw $zero, 0x20($sp) -/* 30EA0 80055AA0 0C0135F8 */ jal snd_dispatch_bgm_player_event -/* 30EA4 80055AA4 AFA00024 */ sw $zero, 0x24($sp) -/* 30EA8 80055AA8 AE000000 */ sw $zero, ($s0) -/* 30EAC 80055AAC 8FBF0034 */ lw $ra, 0x34($sp) -/* 30EB0 80055AB0 8FB00030 */ lw $s0, 0x30($sp) -/* 30EB4 80055AB4 03E00008 */ jr $ra -/* 30EB8 80055AB8 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade.s b/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade.s deleted file mode 100644 index d0969d0021..0000000000 --- a/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade.s +++ /dev/null @@ -1,25 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_song_variation_fade -/* 30E18 80055A18 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30E1C 80055A1C AFB00030 */ sw $s0, 0x30($sp) -/* 30E20 80055A20 3C108008 */ lui $s0, %hi(D_80078DB0) -/* 30E24 80055A24 26108DB0 */ addiu $s0, $s0, %lo(D_80078DB0) -/* 30E28 80055A28 8FA30048 */ lw $v1, 0x48($sp) -/* 30E2C 80055A2C 24020001 */ addiu $v0, $zero, 1 -/* 30E30 80055A30 AFBF0034 */ sw $ra, 0x34($sp) -/* 30E34 80055A34 AE020000 */ sw $v0, ($s0) -/* 30E38 80055A38 AFA40010 */ sw $a0, 0x10($sp) -/* 30E3C 80055A3C 27A40010 */ addiu $a0, $sp, 0x10 -/* 30E40 80055A40 AFA60014 */ sw $a2, 0x14($sp) -/* 30E44 80055A44 AFA70018 */ sw $a3, 0x18($sp) -/* 30E48 80055A48 AFA50020 */ sw $a1, 0x20($sp) -/* 30E4C 80055A4C AFA00024 */ sw $zero, 0x24($sp) -/* 30E50 80055A50 0C0135F8 */ jal snd_dispatch_bgm_player_event -/* 30E54 80055A54 AFA3001C */ sw $v1, 0x1c($sp) -/* 30E58 80055A58 AE000000 */ sw $zero, ($s0) -/* 30E5C 80055A5C 8FBF0034 */ lw $ra, 0x34($sp) -/* 30E60 80055A60 8FB00030 */ lw $s0, 0x30($sp) -/* 30E64 80055A64 03E00008 */ jr $ra -/* 30E68 80055A68 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade_time.s b/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade_time.s deleted file mode 100644 index 8326a2d984..0000000000 --- a/ver/us/asm/nonmatchings/30450/snd_set_song_variation_fade_time.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_set_song_variation_fade_time -/* 30EBC 80055ABC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30EC0 80055AC0 AFA40010 */ sw $a0, 0x10($sp) -/* 30EC4 80055AC4 27A40010 */ addiu $a0, $sp, 0x10 -/* 30EC8 80055AC8 AFBF0030 */ sw $ra, 0x30($sp) -/* 30ECC 80055ACC AFA50014 */ sw $a1, 0x14($sp) -/* 30ED0 80055AD0 AFA00018 */ sw $zero, 0x18($sp) -/* 30ED4 80055AD4 AFA0001C */ sw $zero, 0x1c($sp) -/* 30ED8 80055AD8 AFA60020 */ sw $a2, 0x20($sp) -/* 30EDC 80055ADC 0C0136D3 */ jal func_8004DB4C -/* 30EE0 80055AE0 AFA00024 */ sw $zero, 0x24($sp) -/* 30EE4 80055AE4 8FBF0030 */ lw $ra, 0x30($sp) -/* 30EE8 80055AE8 03E00008 */ jr $ra -/* 30EEC 80055AEC 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/snd_start_song.s b/ver/us/asm/nonmatchings/30450/snd_start_song.s deleted file mode 100644 index a51574a36d..0000000000 --- a/ver/us/asm/nonmatchings/30450/snd_start_song.s +++ /dev/null @@ -1,25 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_start_song -/* 30D1C 8005591C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30D20 80055920 AFB00030 */ sw $s0, 0x30($sp) -/* 30D24 80055924 3C108008 */ lui $s0, %hi(D_80078DB0) -/* 30D28 80055928 26108DB0 */ addiu $s0, $s0, %lo(D_80078DB0) -/* 30D2C 8005592C 24020001 */ addiu $v0, $zero, 1 -/* 30D30 80055930 AFBF0034 */ sw $ra, 0x34($sp) -/* 30D34 80055934 AE020000 */ sw $v0, ($s0) -/* 30D38 80055938 2402007F */ addiu $v0, $zero, 0x7f -/* 30D3C 8005593C AFA40010 */ sw $a0, 0x10($sp) -/* 30D40 80055940 27A40010 */ addiu $a0, $sp, 0x10 -/* 30D44 80055944 AFA00014 */ sw $zero, 0x14($sp) -/* 30D48 80055948 AFA20018 */ sw $v0, 0x18($sp) -/* 30D4C 8005594C AFA2001C */ sw $v0, 0x1c($sp) -/* 30D50 80055950 AFA00020 */ sw $zero, 0x20($sp) -/* 30D54 80055954 0C0135F8 */ jal snd_dispatch_bgm_player_event -/* 30D58 80055958 AFA00024 */ sw $zero, 0x24($sp) -/* 30D5C 8005595C AE000000 */ sw $zero, ($s0) -/* 30D60 80055960 8FBF0034 */ lw $ra, 0x34($sp) -/* 30D64 80055964 8FB00030 */ lw $s0, 0x30($sp) -/* 30D68 80055968 03E00008 */ jr $ra -/* 30D6C 8005596C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/30450/snd_start_song_variation.s b/ver/us/asm/nonmatchings/30450/snd_start_song_variation.s deleted file mode 100644 index 9ed87fe97b..0000000000 --- a/ver/us/asm/nonmatchings/30450/snd_start_song_variation.s +++ /dev/null @@ -1,25 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel snd_start_song_variation -/* 30D70 80055970 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 30D74 80055974 AFB00030 */ sw $s0, 0x30($sp) -/* 30D78 80055978 3C108008 */ lui $s0, %hi(D_80078DB0) -/* 30D7C 8005597C 26108DB0 */ addiu $s0, $s0, %lo(D_80078DB0) -/* 30D80 80055980 24020001 */ addiu $v0, $zero, 1 -/* 30D84 80055984 AFBF0034 */ sw $ra, 0x34($sp) -/* 30D88 80055988 AE020000 */ sw $v0, ($s0) -/* 30D8C 8005598C 2402007F */ addiu $v0, $zero, 0x7f -/* 30D90 80055990 AFA40010 */ sw $a0, 0x10($sp) -/* 30D94 80055994 27A40010 */ addiu $a0, $sp, 0x10 -/* 30D98 80055998 AFA00014 */ sw $zero, 0x14($sp) -/* 30D9C 8005599C AFA20018 */ sw $v0, 0x18($sp) -/* 30DA0 800559A0 AFA2001C */ sw $v0, 0x1c($sp) -/* 30DA4 800559A4 AFA50020 */ sw $a1, 0x20($sp) -/* 30DA8 800559A8 0C0135F8 */ jal snd_dispatch_bgm_player_event -/* 30DAC 800559AC AFA00024 */ sw $zero, 0x24($sp) -/* 30DB0 800559B0 AE000000 */ sw $zero, ($s0) -/* 30DB4 800559B4 8FBF0034 */ lw $ra, 0x34($sp) -/* 30DB8 800559B8 8FB00030 */ lw $s0, 0x30($sp) -/* 30DBC 800559BC 03E00008 */ jr $ra -/* 30DC0 800559C0 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/31650/alAudioFrame.s b/ver/us/asm/nonmatchings/31650/alAudioFrame.s deleted file mode 100644 index ba229034d4..0000000000 --- a/ver/us/asm/nonmatchings/31650/alAudioFrame.s +++ /dev/null @@ -1,517 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel alAudioFrame -/* 319C0 800565C0 3C028008 */ lui $v0, %hi(D_80078E50) -/* 319C4 800565C4 8C428E50 */ lw $v0, %lo(D_80078E50)($v0) -/* 319C8 800565C8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 319CC 800565CC AFB3002C */ sw $s3, 0x2c($sp) -/* 319D0 800565D0 AFA40048 */ sw $a0, 0x48($sp) -/* 319D4 800565D4 0080982D */ daddu $s3, $a0, $zero -/* 319D8 800565D8 AFBF0044 */ sw $ra, 0x44($sp) -/* 319DC 800565DC AFBE0040 */ sw $fp, 0x40($sp) -/* 319E0 800565E0 AFB7003C */ sw $s7, 0x3c($sp) -/* 319E4 800565E4 AFB60038 */ sw $s6, 0x38($sp) -/* 319E8 800565E8 AFB50034 */ sw $s5, 0x34($sp) -/* 319EC 800565EC AFB40030 */ sw $s4, 0x30($sp) -/* 319F0 800565F0 AFB20028 */ sw $s2, 0x28($sp) -/* 319F4 800565F4 AFB10024 */ sw $s1, 0x24($sp) -/* 319F8 800565F8 AFB00020 */ sw $s0, 0x20($sp) -/* 319FC 800565FC AFA5004C */ sw $a1, 0x4c($sp) -/* 31A00 80056600 AFA70054 */ sw $a3, 0x54($sp) -/* 31A04 80056604 14400003 */ bnez $v0, .L80056614 -/* 31A08 80056608 AFA60010 */ sw $a2, 0x10($sp) -/* 31A0C 8005660C 08015B40 */ j .L80056D00 -/* 31A10 80056610 ACA00000 */ sw $zero, ($a1) -.L80056614: -/* 31A14 80056614 0C014D70 */ jal func_800535C0 -/* 31A18 80056618 00000000 */ nop -/* 31A1C 8005661C 3C028008 */ lui $v0, %hi(D_80078E5C) -/* 31A20 80056620 90428E5C */ lbu $v0, %lo(D_80078E5C)($v0) -/* 31A24 80056624 1040001B */ beqz $v0, .L80056694 -/* 31A28 80056628 00000000 */ nop -/* 31A2C 8005662C 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31A30 80056630 24638E54 */ addiu $v1, $v1, %lo(D_80078E54) -/* 31A34 80056634 8C620000 */ lw $v0, ($v1) -/* 31A38 80056638 8C42000C */ lw $v0, 0xc($v0) -/* 31A3C 8005663C 18400013 */ blez $v0, .L8005668C -/* 31A40 80056640 0000A82D */ daddu $s5, $zero, $zero -/* 31A44 80056644 0060882D */ daddu $s1, $v1, $zero -/* 31A48 80056648 24120001 */ addiu $s2, $zero, 1 -/* 31A4C 8005664C 02A0802D */ daddu $s0, $s5, $zero -.L80056650: -/* 31A50 80056650 8E220000 */ lw $v0, ($s1) -/* 31A54 80056654 8C42001C */ lw $v0, 0x1c($v0) -/* 31A58 80056658 00502021 */ addu $a0, $v0, $s0 -/* 31A5C 8005665C 8C820070 */ lw $v0, 0x70($a0) -/* 31A60 80056660 14520004 */ bne $v0, $s2, .L80056674 -/* 31A64 80056664 00000000 */ nop -/* 31A68 80056668 9085004D */ lbu $a1, 0x4d($a0) -/* 31A6C 8005666C 0C015E1D */ jal func_80057874 -/* 31A70 80056670 32A400FF */ andi $a0, $s5, 0xff -.L80056674: -/* 31A74 80056674 8E220000 */ lw $v0, ($s1) -/* 31A78 80056678 8C42000C */ lw $v0, 0xc($v0) -/* 31A7C 8005667C 26B50001 */ addiu $s5, $s5, 1 -/* 31A80 80056680 02A2102A */ slt $v0, $s5, $v0 -/* 31A84 80056684 1440FFF2 */ bnez $v0, .L80056650 -/* 31A88 80056688 2610007C */ addiu $s0, $s0, 0x7c -.L8005668C: -/* 31A8C 8005668C 3C018008 */ lui $at, %hi(D_80078E5C) -/* 31A90 80056690 A0208E5C */ sb $zero, %lo(D_80078E5C)($at) -.L80056694: -/* 31A94 80056694 8FA90054 */ lw $t1, 0x54($sp) -/* 31A98 80056698 19200194 */ blez $t1, .L80056CEC -/* 31A9C 8005669C 00000000 */ nop -/* 31AA0 800566A0 3C1E800A */ lui $fp, %hi(D_800A3FE8) -/* 31AA4 800566A4 27DE3FE8 */ addiu $fp, $fp, %lo(D_800A3FE8) -.L800566A8: -/* 31AA8 800566A8 0C014CF4 */ jal snd_update_sequence_players -/* 31AAC 800566AC 0000A82D */ daddu $s5, $zero, $zero -/* 31AB0 800566B0 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31AB4 800566B4 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 31AB8 800566B8 8C62000C */ lw $v0, 0xc($v1) -/* 31ABC 800566BC 1840001E */ blez $v0, .L80056738 -/* 31AC0 800566C0 24170001 */ addiu $s7, $zero, 1 -/* 31AC4 800566C4 0060302D */ daddu $a2, $v1, $zero -/* 31AC8 800566C8 02A0282D */ daddu $a1, $s5, $zero -.L800566CC: -/* 31ACC 800566CC 8CC2001C */ lw $v0, 0x1c($a2) -/* 31AD0 800566D0 00452021 */ addu $a0, $v0, $a1 -/* 31AD4 800566D4 90820078 */ lbu $v0, 0x78($a0) -/* 31AD8 800566D8 240900FF */ addiu $t1, $zero, 0xff -/* 31ADC 800566DC 1049000E */ beq $v0, $t1, .L80056718 -/* 31AE0 800566E0 0040182D */ daddu $v1, $v0, $zero -/* 31AE4 800566E4 8CC20010 */ lw $v0, 0x10($a2) -/* 31AE8 800566E8 0062102A */ slt $v0, $v1, $v0 -/* 31AEC 800566EC 1040000A */ beqz $v0, .L80056718 -/* 31AF0 800566F0 00031040 */ sll $v0, $v1, 1 -/* 31AF4 800566F4 00431021 */ addu $v0, $v0, $v1 -/* 31AF8 800566F8 8CC30020 */ lw $v1, 0x20($a2) -/* 31AFC 800566FC 000210C0 */ sll $v0, $v0, 3 -/* 31B00 80056700 0062A021 */ addu $s4, $v1, $v0 -/* 31B04 80056704 8E820014 */ lw $v0, 0x14($s4) -/* 31B08 80056708 50400002 */ beql $v0, $zero, .L80056714 -/* 31B0C 8005670C AE840010 */ sw $a0, 0x10($s4) -/* 31B10 80056710 AC440000 */ sw $a0, ($v0) -.L80056714: -/* 31B14 80056714 AE840014 */ sw $a0, 0x14($s4) -.L80056718: -/* 31B18 80056718 3C028008 */ lui $v0, %hi(D_80078E54) -/* 31B1C 8005671C 8C428E54 */ lw $v0, %lo(D_80078E54)($v0) -/* 31B20 80056720 8C42000C */ lw $v0, 0xc($v0) -/* 31B24 80056724 26B50001 */ addiu $s5, $s5, 1 -/* 31B28 80056728 02A2102A */ slt $v0, $s5, $v0 -/* 31B2C 8005672C 1440FFE7 */ bnez $v0, .L800566CC -/* 31B30 80056730 24A5007C */ addiu $a1, $a1, 0x7c -/* 31B34 80056734 24170001 */ addiu $s7, $zero, 1 -.L80056738: -/* 31B38 80056738 3C028008 */ lui $v0, %hi(D_80078E54) -/* 31B3C 8005673C 8C428E54 */ lw $v0, %lo(D_80078E54)($v0) -/* 31B40 80056740 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31B44 80056744 24638E54 */ addiu $v1, $v1, %lo(D_80078E54) -/* 31B48 80056748 8C420010 */ lw $v0, 0x10($v0) -/* 31B4C 8005674C 18400110 */ blez $v0, .L80056B90 -/* 31B50 80056750 0000A82D */ daddu $s5, $zero, $zero -/* 31B54 80056754 02A0B02D */ daddu $s6, $s5, $zero -.L80056758: -/* 31B58 80056758 8C620000 */ lw $v0, ($v1) -/* 31B5C 8005675C 8C420020 */ lw $v0, 0x20($v0) -/* 31B60 80056760 0056A021 */ addu $s4, $v0, $s6 -/* 31B64 80056764 8E820010 */ lw $v0, 0x10($s4) -/* 31B68 80056768 10400101 */ beqz $v0, .L80056B70 -/* 31B6C 8005676C 3C020200 */ lui $v0, 0x200 -/* 31B70 80056770 344204E0 */ ori $v0, $v0, 0x4e0 -/* 31B74 80056774 0260182D */ daddu $v1, $s3, $zero -/* 31B78 80056778 AC620000 */ sw $v0, ($v1) -/* 31B7C 8005677C 240205C0 */ addiu $v0, $zero, 0x5c0 -/* 31B80 80056780 AC620004 */ sw $v0, 4($v1) -/* 31B84 80056784 8E820010 */ lw $v0, 0x10($s4) -/* 31B88 80056788 1040000B */ beqz $v0, .L800567B8 -/* 31B8C 8005678C 26730008 */ addiu $s3, $s3, 8 -.L80056790: -/* 31B90 80056790 8E840010 */ lw $a0, 0x10($s4) -/* 31B94 80056794 0C016014 */ jal func_80058050 -/* 31B98 80056798 0260282D */ daddu $a1, $s3, $zero -/* 31B9C 8005679C 8E830010 */ lw $v1, 0x10($s4) -/* 31BA0 800567A0 8C640000 */ lw $a0, ($v1) -/* 31BA4 800567A4 0040982D */ daddu $s3, $v0, $zero -/* 31BA8 800567A8 AC600000 */ sw $zero, ($v1) -/* 31BAC 800567AC 1480FFF8 */ bnez $a0, .L80056790 -/* 31BB0 800567B0 AE840010 */ sw $a0, 0x10($s4) -/* 31BB4 800567B4 AE800014 */ sw $zero, 0x14($s4) -.L800567B8: -/* 31BB8 800567B8 9282000C */ lbu $v0, 0xc($s4) -/* 31BBC 800567BC 1040000B */ beqz $v0, .L800567EC -/* 31BC0 800567C0 0260282D */ daddu $a1, $s3, $zero -/* 31BC4 800567C4 240607C0 */ addiu $a2, $zero, 0x7c0 -/* 31BC8 800567C8 8E840004 */ lw $a0, 4($s4) -/* 31BCC 800567CC 0C0164C4 */ jal func_80059310 -/* 31BD0 800567D0 0000382D */ daddu $a3, $zero, $zero -/* 31BD4 800567D4 0040282D */ daddu $a1, $v0, $zero -/* 31BD8 800567D8 24060930 */ addiu $a2, $zero, 0x930 -/* 31BDC 800567DC 8E840008 */ lw $a0, 8($s4) -/* 31BE0 800567E0 0C0164C4 */ jal func_80059310 -/* 31BE4 800567E4 0000382D */ daddu $a3, $zero, $zero -/* 31BE8 800567E8 0040982D */ daddu $s3, $v0, $zero -.L800567EC: -/* 31BEC 800567EC 3C02800A */ lui $v0, %hi(D_800A3FEC) -/* 31BF0 800567F0 90423FEC */ lbu $v0, %lo(D_800A3FEC)($v0) -/* 31BF4 800567F4 16A20089 */ bne $s5, $v0, .L80056A1C -/* 31BF8 800567F8 24020001 */ addiu $v0, $zero, 1 -/* 31BFC 800567FC 3C03800A */ lui $v1, %hi(D_800A3FEE) -/* 31C00 80056800 84633FEE */ lh $v1, %lo(D_800A3FEE)($v1) -/* 31C04 80056804 10620006 */ beq $v1, $v0, .L80056820 -/* 31C08 80056808 2410FFFF */ addiu $s0, $zero, -1 -/* 31C0C 8005680C 24020002 */ addiu $v0, $zero, 2 -/* 31C10 80056810 10620006 */ beq $v1, $v0, .L8005682C -/* 31C14 80056814 00101400 */ sll $v0, $s0, 0x10 -/* 31C18 80056818 08015A10 */ j .L80056840 -/* 31C1C 8005681C 00021403 */ sra $v0, $v0, 0x10 -.L80056820: -/* 31C20 80056820 241004E0 */ addiu $s0, $zero, 0x4e0 -/* 31C24 80056824 08015A0D */ j .L80056834 -/* 31C28 80056828 240907C0 */ addiu $t1, $zero, 0x7c0 -.L8005682C: -/* 31C2C 8005682C 24100650 */ addiu $s0, $zero, 0x650 -/* 31C30 80056830 24090930 */ addiu $t1, $zero, 0x930 -.L80056834: -/* 31C34 80056834 A7A9001E */ sh $t1, 0x1e($sp) -/* 31C38 80056838 00101400 */ sll $v0, $s0, 0x10 -/* 31C3C 8005683C 00021403 */ sra $v0, $v0, 0x10 -.L80056840: -/* 31C40 80056840 2403FFFF */ addiu $v1, $zero, -1 -/* 31C44 80056844 10430075 */ beq $v0, $v1, .L80056A1C -/* 31C48 80056848 0260882D */ daddu $s1, $s3, $zero -/* 31C4C 8005684C 8FC30000 */ lw $v1, ($fp) -/* 31C50 80056850 3C02800A */ lui $v0, %hi(D_800A3FF0) -/* 31C54 80056854 8C423FF0 */ lw $v0, %lo(D_800A3FF0)($v0) -/* 31C58 80056858 14400002 */ bnez $v0, .L80056864 -/* 31C5C 8005685C 0062001A */ div $zero, $v1, $v0 -/* 31C60 80056860 0007000D */ break 7 -.L80056864: -/* 31C64 80056864 2401FFFF */ addiu $at, $zero, -1 -/* 31C68 80056868 14410004 */ bne $v0, $at, .L8005687C -/* 31C6C 8005686C 3C018000 */ lui $at, 0x8000 -/* 31C70 80056870 14610002 */ bne $v1, $at, .L8005687C -/* 31C74 80056874 00000000 */ nop -/* 31C78 80056878 0006000D */ break 6 -.L8005687C: -/* 31C7C 8005687C 00002810 */ mfhi $a1 -/* 31C80 80056880 32100FFF */ andi $s0, $s0, 0xfff -/* 31C84 80056884 3C090617 */ lui $t1, 0x617 -/* 31C88 80056888 02091025 */ or $v0, $s0, $t1 -/* 31C8C 8005688C AE220000 */ sw $v0, ($s1) -/* 31C90 80056890 3C02800A */ lui $v0, %hi(D_800A3FE0) -/* 31C94 80056894 8C423FE0 */ lw $v0, %lo(D_800A3FE0)($v0) -/* 31C98 80056898 00052040 */ sll $a0, $a1, 1 -/* 31C9C 8005689C 00852021 */ addu $a0, $a0, $a1 -/* 31CA0 800568A0 000420C0 */ sll $a0, $a0, 3 -/* 31CA4 800568A4 00852023 */ subu $a0, $a0, $a1 -/* 31CA8 800568A8 00042100 */ sll $a0, $a0, 4 -/* 31CAC 800568AC 0C0187A4 */ jal osVirtualToPhysical -/* 31CB0 800568B0 00442021 */ addu $a0, $v0, $a0 -/* 31CB4 800568B4 8FC30000 */ lw $v1, ($fp) -/* 31CB8 800568B8 3C04800A */ lui $a0, %hi(D_800A3FF0) -/* 31CBC 800568BC 8C843FF0 */ lw $a0, %lo(D_800A3FF0)($a0) -/* 31CC0 800568C0 24630001 */ addiu $v1, $v1, 1 -/* 31CC4 800568C4 14800002 */ bnez $a0, .L800568D0 -/* 31CC8 800568C8 0064001A */ div $zero, $v1, $a0 -/* 31CCC 800568CC 0007000D */ break 7 -.L800568D0: -/* 31CD0 800568D0 2401FFFF */ addiu $at, $zero, -1 -/* 31CD4 800568D4 14810004 */ bne $a0, $at, .L800568E8 -/* 31CD8 800568D8 3C018000 */ lui $at, 0x8000 -/* 31CDC 800568DC 14610002 */ bne $v1, $at, .L800568E8 -/* 31CE0 800568E0 00000000 */ nop -/* 31CE4 800568E4 0006000D */ break 6 -.L800568E8: -/* 31CE8 800568E8 00002810 */ mfhi $a1 -/* 31CEC 800568EC 26730008 */ addiu $s3, $s3, 8 -/* 31CF0 800568F0 AE220004 */ sw $v0, 4($s1) -/* 31CF4 800568F4 0260882D */ daddu $s1, $s3, $zero -/* 31CF8 800568F8 3C090417 */ lui $t1, 0x417 -/* 31CFC 800568FC 3C02800A */ lui $v0, %hi(D_800A3FE0) -/* 31D00 80056900 8C423FE0 */ lw $v0, %lo(D_800A3FE0)($v0) -/* 31D04 80056904 02098025 */ or $s0, $s0, $t1 -/* 31D08 80056908 AE300000 */ sw $s0, ($s1) -/* 31D0C 8005690C 00052040 */ sll $a0, $a1, 1 -/* 31D10 80056910 00852021 */ addu $a0, $a0, $a1 -/* 31D14 80056914 000420C0 */ sll $a0, $a0, 3 -/* 31D18 80056918 00852023 */ subu $a0, $a0, $a1 -/* 31D1C 8005691C 00042100 */ sll $a0, $a0, 4 -/* 31D20 80056920 0C0187A4 */ jal osVirtualToPhysical -/* 31D24 80056924 00442021 */ addu $a0, $v0, $a0 -/* 31D28 80056928 8FC40000 */ lw $a0, ($fp) -/* 31D2C 8005692C 3C03800A */ lui $v1, %hi(D_800A3FF0) -/* 31D30 80056930 8C633FF0 */ lw $v1, %lo(D_800A3FF0)($v1) -/* 31D34 80056934 14600002 */ bnez $v1, .L80056940 -/* 31D38 80056938 0083001A */ div $zero, $a0, $v1 -/* 31D3C 8005693C 0007000D */ break 7 -.L80056940: -/* 31D40 80056940 2401FFFF */ addiu $at, $zero, -1 -/* 31D44 80056944 14610004 */ bne $v1, $at, .L80056958 -/* 31D48 80056948 3C018000 */ lui $at, 0x8000 -/* 31D4C 8005694C 14810002 */ bne $a0, $at, .L80056958 -/* 31D50 80056950 00000000 */ nop -/* 31D54 80056954 0006000D */ break 6 -.L80056958: -/* 31D58 80056958 00001810 */ mfhi $v1 -/* 31D5C 8005695C 26730008 */ addiu $s3, $s3, 8 -/* 31D60 80056960 AE220004 */ sw $v0, 4($s1) -/* 31D64 80056964 97A9001E */ lhu $t1, 0x1e($sp) -/* 31D68 80056968 0260902D */ daddu $s2, $s3, $zero -/* 31D6C 8005696C 31300FFF */ andi $s0, $t1, 0xfff -/* 31D70 80056970 3C090617 */ lui $t1, 0x617 -/* 31D74 80056974 02091025 */ or $v0, $s0, $t1 -/* 31D78 80056978 AE420000 */ sw $v0, ($s2) -/* 31D7C 8005697C 3C02800A */ lui $v0, %hi(D_800A3FE4) -/* 31D80 80056980 8C423FE4 */ lw $v0, %lo(D_800A3FE4)($v0) -/* 31D84 80056984 00032040 */ sll $a0, $v1, 1 -/* 31D88 80056988 00832021 */ addu $a0, $a0, $v1 -/* 31D8C 8005698C 000420C0 */ sll $a0, $a0, 3 -/* 31D90 80056990 00832023 */ subu $a0, $a0, $v1 -/* 31D94 80056994 00042100 */ sll $a0, $a0, 4 -/* 31D98 80056998 0C0187A4 */ jal osVirtualToPhysical -/* 31D9C 8005699C 00442021 */ addu $a0, $v0, $a0 -/* 31DA0 800569A0 8FC30000 */ lw $v1, ($fp) -/* 31DA4 800569A4 3C04800A */ lui $a0, %hi(D_800A3FF0) -/* 31DA8 800569A8 8C843FF0 */ lw $a0, %lo(D_800A3FF0)($a0) -/* 31DAC 800569AC 24630001 */ addiu $v1, $v1, 1 -/* 31DB0 800569B0 14800002 */ bnez $a0, .L800569BC -/* 31DB4 800569B4 0064001A */ div $zero, $v1, $a0 -/* 31DB8 800569B8 0007000D */ break 7 -.L800569BC: -/* 31DBC 800569BC 2401FFFF */ addiu $at, $zero, -1 -/* 31DC0 800569C0 14810004 */ bne $a0, $at, .L800569D4 -/* 31DC4 800569C4 3C018000 */ lui $at, 0x8000 -/* 31DC8 800569C8 14610002 */ bne $v1, $at, .L800569D4 -/* 31DCC 800569CC 00000000 */ nop -/* 31DD0 800569D0 0006000D */ break 6 -.L800569D4: -/* 31DD4 800569D4 00002810 */ mfhi $a1 -/* 31DD8 800569D8 26730008 */ addiu $s3, $s3, 8 -/* 31DDC 800569DC 0260882D */ daddu $s1, $s3, $zero -/* 31DE0 800569E0 26730008 */ addiu $s3, $s3, 8 -/* 31DE4 800569E4 3C090417 */ lui $t1, 0x417 -/* 31DE8 800569E8 AE420004 */ sw $v0, 4($s2) -/* 31DEC 800569EC 3C02800A */ lui $v0, %hi(D_800A3FE4) -/* 31DF0 800569F0 8C423FE4 */ lw $v0, %lo(D_800A3FE4)($v0) -/* 31DF4 800569F4 02098025 */ or $s0, $s0, $t1 -/* 31DF8 800569F8 AE300000 */ sw $s0, ($s1) -/* 31DFC 800569FC 00052040 */ sll $a0, $a1, 1 -/* 31E00 80056A00 00852021 */ addu $a0, $a0, $a1 -/* 31E04 80056A04 000420C0 */ sll $a0, $a0, 3 -/* 31E08 80056A08 00852023 */ subu $a0, $a0, $a1 -/* 31E0C 80056A0C 00042100 */ sll $a0, $a0, 4 -/* 31E10 80056A10 0C0187A4 */ jal osVirtualToPhysical -/* 31E14 80056A14 00442021 */ addu $a0, $v0, $a0 -/* 31E18 80056A18 AE220004 */ sw $v0, 4($s1) -.L80056A1C: -/* 31E1C 80056A1C 12E00007 */ beqz $s7, .L80056A3C -/* 31E20 80056A20 0260102D */ daddu $v0, $s3, $zero -/* 31E24 80056A24 26730008 */ addiu $s3, $s3, 8 -/* 31E28 80056A28 3C030200 */ lui $v1, 0x200 -/* 31E2C 80056A2C AC430000 */ sw $v1, ($v0) -/* 31E30 80056A30 240302E0 */ addiu $v1, $zero, 0x2e0 -/* 31E34 80056A34 08015A98 */ j .L80056A60 -/* 31E38 80056A38 AC430004 */ sw $v1, 4($v0) -.L80056A3C: -/* 31E3C 80056A3C 0260802D */ daddu $s0, $s3, $zero -/* 31E40 80056A40 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31E44 80056A44 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 31E48 80056A48 3C02042E */ lui $v0, 0x42e -/* 31E4C 80056A4C AE020000 */ sw $v0, ($s0) -/* 31E50 80056A50 8C640028 */ lw $a0, 0x28($v1) -/* 31E54 80056A54 0C0187A4 */ jal osVirtualToPhysical -/* 31E58 80056A58 26730008 */ addiu $s3, $s3, 8 -/* 31E5C 80056A5C AE020004 */ sw $v0, 4($s0) -.L80056A60: -/* 31E60 80056A60 0260202D */ daddu $a0, $s3, $zero -/* 31E64 80056A64 26730008 */ addiu $s3, $s3, 8 -/* 31E68 80056A68 0260282D */ daddu $a1, $s3, $zero -/* 31E6C 80056A6C 26730008 */ addiu $s3, $s3, 8 -/* 31E70 80056A70 3C060930 */ lui $a2, 0x930 -/* 31E74 80056A74 3C0207C0 */ lui $v0, 0x7c0 -/* 31E78 80056A78 3C090C00 */ lui $t1, 0xc00 -/* 31E7C 80056A7C 96830000 */ lhu $v1, ($s4) -/* 31E80 80056A80 34C60170 */ ori $a2, $a2, 0x170 -/* 31E84 80056A84 AC820004 */ sw $v0, 4($a0) -/* 31E88 80056A88 00691825 */ or $v1, $v1, $t1 -/* 31E8C 80056A8C AC830000 */ sw $v1, ($a0) -/* 31E90 80056A90 96820000 */ lhu $v0, ($s4) -/* 31E94 80056A94 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31E98 80056A98 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 31E9C 80056A9C 0260802D */ daddu $s0, $s3, $zero -/* 31EA0 80056AA0 ACA60004 */ sw $a2, 4($a1) -/* 31EA4 80056AA4 00491025 */ or $v0, $v0, $t1 -/* 31EA8 80056AA8 ACA20000 */ sw $v0, ($a1) -/* 31EAC 80056AAC 3C02062E */ lui $v0, 0x62e -/* 31EB0 80056AB0 AE020000 */ sw $v0, ($s0) -/* 31EB4 80056AB4 8C640028 */ lw $a0, 0x28($v1) -/* 31EB8 80056AB8 0C0187A4 */ jal osVirtualToPhysical -/* 31EBC 80056ABC 26730008 */ addiu $s3, $s3, 8 -/* 31EC0 80056AC0 12E00009 */ beqz $s7, .L80056AE8 -/* 31EC4 80056AC4 AE020004 */ sw $v0, 4($s0) -/* 31EC8 80056AC8 0260102D */ daddu $v0, $s3, $zero -/* 31ECC 80056ACC 26730008 */ addiu $s3, $s3, 8 -/* 31ED0 80056AD0 0000B82D */ daddu $s7, $zero, $zero -/* 31ED4 80056AD4 3C030200 */ lui $v1, 0x200 -/* 31ED8 80056AD8 AC430000 */ sw $v1, ($v0) -/* 31EDC 80056ADC 240302E0 */ addiu $v1, $zero, 0x2e0 -/* 31EE0 80056AE0 08015AC3 */ j .L80056B0C -/* 31EE4 80056AE4 AC430004 */ sw $v1, 4($v0) -.L80056AE8: -/* 31EE8 80056AE8 0260802D */ daddu $s0, $s3, $zero -/* 31EEC 80056AEC 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31EF0 80056AF0 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 31EF4 80056AF4 3C02042E */ lui $v0, 0x42e -/* 31EF8 80056AF8 AE020000 */ sw $v0, ($s0) -/* 31EFC 80056AFC 8C640024 */ lw $a0, 0x24($v1) -/* 31F00 80056B00 0C0187A4 */ jal osVirtualToPhysical -/* 31F04 80056B04 26730008 */ addiu $s3, $s3, 8 -/* 31F08 80056B08 AE020004 */ sw $v0, 4($s0) -.L80056B0C: -/* 31F0C 80056B0C 0260202D */ daddu $a0, $s3, $zero -/* 31F10 80056B10 26730008 */ addiu $s3, $s3, 8 -/* 31F14 80056B14 0260282D */ daddu $a1, $s3, $zero -/* 31F18 80056B18 26730008 */ addiu $s3, $s3, 8 -/* 31F1C 80056B1C 3C060650 */ lui $a2, 0x650 -/* 31F20 80056B20 3C0204E0 */ lui $v0, 0x4e0 -/* 31F24 80056B24 3C090C00 */ lui $t1, 0xc00 -/* 31F28 80056B28 96830000 */ lhu $v1, ($s4) -/* 31F2C 80056B2C 34C60170 */ ori $a2, $a2, 0x170 -/* 31F30 80056B30 AC820004 */ sw $v0, 4($a0) -/* 31F34 80056B34 00691825 */ or $v1, $v1, $t1 -/* 31F38 80056B38 AC830000 */ sw $v1, ($a0) -/* 31F3C 80056B3C 96820000 */ lhu $v0, ($s4) -/* 31F40 80056B40 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31F44 80056B44 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 31F48 80056B48 0260802D */ daddu $s0, $s3, $zero -/* 31F4C 80056B4C ACA60004 */ sw $a2, 4($a1) -/* 31F50 80056B50 00491025 */ or $v0, $v0, $t1 -/* 31F54 80056B54 ACA20000 */ sw $v0, ($a1) -/* 31F58 80056B58 3C02062E */ lui $v0, 0x62e -/* 31F5C 80056B5C AE020000 */ sw $v0, ($s0) -/* 31F60 80056B60 8C640024 */ lw $a0, 0x24($v1) -/* 31F64 80056B64 0C0187A4 */ jal osVirtualToPhysical -/* 31F68 80056B68 26730008 */ addiu $s3, $s3, 8 -/* 31F6C 80056B6C AE020004 */ sw $v0, 4($s0) -.L80056B70: -/* 31F70 80056B70 3C038008 */ lui $v1, %hi(D_80078E54) -/* 31F74 80056B74 24638E54 */ addiu $v1, $v1, %lo(D_80078E54) -/* 31F78 80056B78 8C620000 */ lw $v0, ($v1) -/* 31F7C 80056B7C 8C420010 */ lw $v0, 0x10($v0) -/* 31F80 80056B80 26B50001 */ addiu $s5, $s5, 1 -/* 31F84 80056B84 02A2102A */ slt $v0, $s5, $v0 -/* 31F88 80056B88 1440FEF3 */ bnez $v0, .L80056758 -/* 31F8C 80056B8C 26D60018 */ addiu $s6, $s6, 0x18 -.L80056B90: -/* 31F90 80056B90 0260182D */ daddu $v1, $s3, $zero -/* 31F94 80056B94 26730008 */ addiu $s3, $s3, 8 -/* 31F98 80056B98 3C0404E0 */ lui $a0, 0x4e0 -/* 31F9C 80056B9C 348402E0 */ ori $a0, $a0, 0x2e0 -/* 31FA0 80056BA0 3C05042E */ lui $a1, 0x42e -/* 31FA4 80056BA4 34A507C0 */ ori $a1, $a1, 0x7c0 -/* 31FA8 80056BA8 3C020A00 */ lui $v0, 0xa00 -/* 31FAC 80056BAC AC620000 */ sw $v0, ($v1) -/* 31FB0 80056BB0 3C028008 */ lui $v0, %hi(D_80078E54) -/* 31FB4 80056BB4 8C428E54 */ lw $v0, %lo(D_80078E54)($v0) -/* 31FB8 80056BB8 0260802D */ daddu $s0, $s3, $zero -/* 31FBC 80056BBC AC640004 */ sw $a0, 4($v1) -/* 31FC0 80056BC0 AE050000 */ sw $a1, ($s0) -/* 31FC4 80056BC4 8C440028 */ lw $a0, 0x28($v0) -/* 31FC8 80056BC8 0C0187A4 */ jal osVirtualToPhysical -/* 31FCC 80056BCC 26730008 */ addiu $s3, $s3, 8 -/* 31FD0 80056BD0 0260382D */ daddu $a3, $s3, $zero -/* 31FD4 80056BD4 26730008 */ addiu $s3, $s3, 8 -/* 31FD8 80056BD8 3C060C00 */ lui $a2, 0xc00 -/* 31FDC 80056BDC 34C67FFF */ ori $a2, $a2, 0x7fff -/* 31FE0 80056BE0 3C0807C0 */ lui $t0, 0x7c0 -/* 31FE4 80056BE4 350804E0 */ ori $t0, $t0, 0x4e0 -/* 31FE8 80056BE8 0260182D */ daddu $v1, $s3, $zero -/* 31FEC 80056BEC 26730008 */ addiu $s3, $s3, 8 -/* 31FF0 80056BF0 3C040930 */ lui $a0, 0x930 -/* 31FF4 80056BF4 3C058008 */ lui $a1, %hi(D_80078E58) -/* 31FF8 80056BF8 90A58E58 */ lbu $a1, %lo(D_80078E58)($a1) -/* 31FFC 80056BFC 34840650 */ ori $a0, $a0, 0x650 -/* 32000 80056C00 AE020004 */ sw $v0, 4($s0) -/* 32004 80056C04 ACE60000 */ sw $a2, ($a3) -/* 32008 80056C08 ACE80004 */ sw $t0, 4($a3) -/* 3200C 80056C0C AC660000 */ sw $a2, ($v1) -/* 32010 80056C10 10A0001D */ beqz $a1, .L80056C88 -/* 32014 80056C14 AC640004 */ sw $a0, 4($v1) -/* 32018 80056C18 0260202D */ daddu $a0, $s3, $zero -/* 3201C 80056C1C 26730008 */ addiu $s3, $s3, 8 -/* 32020 80056C20 3C020A00 */ lui $v0, 0xa00 -/* 32024 80056C24 344204E0 */ ori $v0, $v0, 0x4e0 -/* 32028 80056C28 0260182D */ daddu $v1, $s3, $zero -/* 3202C 80056C2C 26730008 */ addiu $s3, $s3, 8 -/* 32030 80056C30 3C070200 */ lui $a3, 0x200 -/* 32034 80056C34 34E704E0 */ ori $a3, $a3, 0x4e0 -/* 32038 80056C38 0260282D */ daddu $a1, $s3, $zero -/* 3203C 80056C3C 26730008 */ addiu $s3, $s3, 8 -/* 32040 80056C40 0260302D */ daddu $a2, $s3, $zero -/* 32044 80056C44 26730008 */ addiu $s3, $s3, 8 -/* 32048 80056C48 3C080170 */ lui $t0, 0x170 -/* 3204C 80056C4C 35080650 */ ori $t0, $t0, 0x650 -/* 32050 80056C50 AC820000 */ sw $v0, ($a0) -/* 32054 80056C54 240202E0 */ addiu $v0, $zero, 0x2e0 -/* 32058 80056C58 AC820004 */ sw $v0, 4($a0) -/* 3205C 80056C5C AC670000 */ sw $a3, ($v1) -/* 32060 80056C60 AC620004 */ sw $v0, 4($v1) -/* 32064 80056C64 3C038008 */ lui $v1, %hi(D_80078E5A) -/* 32068 80056C68 94638E5A */ lhu $v1, %lo(D_80078E5A)($v1) -/* 3206C 80056C6C 240204E0 */ addiu $v0, $zero, 0x4e0 -/* 32070 80056C70 ACA20004 */ sw $v0, 4($a1) -/* 32074 80056C74 3C020C00 */ lui $v0, 0xc00 -/* 32078 80056C78 00621825 */ or $v1, $v1, $v0 -/* 3207C 80056C7C ACA30000 */ sw $v1, ($a1) -/* 32080 80056C80 ACC30000 */ sw $v1, ($a2) -/* 32084 80056C84 ACC80004 */ sw $t0, 4($a2) -.L80056C88: -/* 32088 80056C88 0260202D */ daddu $a0, $s3, $zero -/* 3208C 80056C8C 26730008 */ addiu $s3, $s3, 8 -/* 32090 80056C90 0260182D */ daddu $v1, $s3, $zero -/* 32094 80056C94 8FA90054 */ lw $t1, 0x54($sp) -/* 32098 80056C98 3C020D00 */ lui $v0, 0xd00 -/* 3209C 80056C9C 2529FF48 */ addiu $t1, $t1, -0xb8 -/* 320A0 80056CA0 AFA90054 */ sw $t1, 0x54($sp) -/* 320A4 80056CA4 AC820000 */ sw $v0, ($a0) -/* 320A8 80056CA8 8FA90010 */ lw $t1, 0x10($sp) -/* 320AC 80056CAC 3C048008 */ lui $a0, %hi(D_80078E54) -/* 320B0 80056CB0 8C848E54 */ lw $a0, %lo(D_80078E54)($a0) -/* 320B4 80056CB4 3C02062E */ lui $v0, 0x62e -/* 320B8 80056CB8 AC690004 */ sw $t1, 4($v1) -/* 320BC 80056CBC 252902E0 */ addiu $t1, $t1, 0x2e0 -/* 320C0 80056CC0 AFA90010 */ sw $t1, 0x10($sp) -/* 320C4 80056CC4 AC620000 */ sw $v0, ($v1) -/* 320C8 80056CC8 8FC20000 */ lw $v0, ($fp) -/* 320CC 80056CCC 8C830000 */ lw $v1, ($a0) -/* 320D0 80056CD0 24420001 */ addiu $v0, $v0, 1 -/* 320D4 80056CD4 246300B8 */ addiu $v1, $v1, 0xb8 -/* 320D8 80056CD8 AFC20000 */ sw $v0, ($fp) -/* 320DC 80056CDC AC830000 */ sw $v1, ($a0) -/* 320E0 80056CE0 8FA90054 */ lw $t1, 0x54($sp) -/* 320E4 80056CE4 1D20FE70 */ bgtz $t1, .L800566A8 -/* 320E8 80056CE8 26730008 */ addiu $s3, $s3, 8 -.L80056CEC: -/* 320EC 80056CEC 8FA90048 */ lw $t1, 0x48($sp) -/* 320F0 80056CF0 02691023 */ subu $v0, $s3, $t1 -/* 320F4 80056CF4 8FA9004C */ lw $t1, 0x4c($sp) -/* 320F8 80056CF8 000210C3 */ sra $v0, $v0, 3 -/* 320FC 80056CFC AD220000 */ sw $v0, ($t1) -.L80056D00: -/* 32100 80056D00 0260102D */ daddu $v0, $s3, $zero -/* 32104 80056D04 8FBF0044 */ lw $ra, 0x44($sp) -/* 32108 80056D08 8FBE0040 */ lw $fp, 0x40($sp) -/* 3210C 80056D0C 8FB7003C */ lw $s7, 0x3c($sp) -/* 32110 80056D10 8FB60038 */ lw $s6, 0x38($sp) -/* 32114 80056D14 8FB50034 */ lw $s5, 0x34($sp) -/* 32118 80056D18 8FB40030 */ lw $s4, 0x30($sp) -/* 3211C 80056D1C 8FB3002C */ lw $s3, 0x2c($sp) -/* 32120 80056D20 8FB20028 */ lw $s2, 0x28($sp) -/* 32124 80056D24 8FB10024 */ lw $s1, 0x24($sp) -/* 32128 80056D28 8FB00020 */ lw $s0, 0x20($sp) -/* 3212C 80056D2C 03E00008 */ jr $ra -/* 32130 80056D30 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/ver/us/asm/nonmatchings/31650/func_80056D5C.s b/ver/us/asm/nonmatchings/31650/func_80056D5C.s deleted file mode 100644 index 31f3fecee4..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80056D5C.s +++ /dev/null @@ -1,11 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80056D5C -/* 3215C 80056D5C 3C028008 */ lui $v0, %hi(D_80078181) -/* 32160 80056D60 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 32164 80056D64 A0440000 */ sb $a0, ($v0) -/* 32168 80056D68 24020001 */ addiu $v0, $zero, 1 -/* 3216C 80056D6C 3C018008 */ lui $at, %hi(D_80078E5C) -/* 32170 80056D70 03E00008 */ jr $ra -/* 32174 80056D74 A0228E5C */ sb $v0, %lo(D_80078E5C)($at) diff --git a/ver/us/asm/nonmatchings/31650/func_80056E34.s b/ver/us/asm/nonmatchings/31650/func_80056E34.s deleted file mode 100644 index 7b78aba935..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80056E34.s +++ /dev/null @@ -1,39 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80056E34 -/* 32234 80056E34 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 32238 80056E38 AFB3001C */ sw $s3, 0x1c($sp) -/* 3223C 80056E3C 00E0982D */ daddu $s3, $a3, $zero -/* 32240 80056E40 AFB20018 */ sw $s2, 0x18($sp) -/* 32244 80056E44 00059400 */ sll $s2, $a1, 0x10 -/* 32248 80056E48 00129403 */ sra $s2, $s2, 0x10 -/* 3224C 80056E4C 0240282D */ daddu $a1, $s2, $zero -/* 32250 80056E50 AFB10014 */ sw $s1, 0x14($sp) -/* 32254 80056E54 00068C00 */ sll $s1, $a2, 0x10 -/* 32258 80056E58 00118C03 */ sra $s1, $s1, 0x10 -/* 3225C 80056E5C 308400FF */ andi $a0, $a0, 0xff -/* 32260 80056E60 00041040 */ sll $v0, $a0, 1 -/* 32264 80056E64 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32268 80056E68 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 3226C 80056E6C 00441021 */ addu $v0, $v0, $a0 -/* 32270 80056E70 AFBF0020 */ sw $ra, 0x20($sp) -/* 32274 80056E74 AFB00010 */ sw $s0, 0x10($sp) -/* 32278 80056E78 8C700020 */ lw $s0, 0x20($v1) -/* 3227C 80056E7C 000210C0 */ sll $v0, $v0, 3 -/* 32280 80056E80 02028021 */ addu $s0, $s0, $v0 -/* 32284 80056E84 8E040004 */ lw $a0, 4($s0) -/* 32288 80056E88 0C016628 */ jal func_800598A0 -/* 3228C 80056E8C 0220302D */ daddu $a2, $s1, $zero -/* 32290 80056E90 0240282D */ daddu $a1, $s2, $zero -/* 32294 80056E94 0220302D */ daddu $a2, $s1, $zero -/* 32298 80056E98 8E040008 */ lw $a0, 8($s0) -/* 3229C 80056E9C 0C016628 */ jal func_800598A0 -/* 322A0 80056EA0 0260382D */ daddu $a3, $s3, $zero -/* 322A4 80056EA4 8FBF0020 */ lw $ra, 0x20($sp) -/* 322A8 80056EA8 8FB3001C */ lw $s3, 0x1c($sp) -/* 322AC 80056EAC 8FB20018 */ lw $s2, 0x18($sp) -/* 322B0 80056EB0 8FB10014 */ lw $s1, 0x14($sp) -/* 322B4 80056EB4 8FB00010 */ lw $s0, 0x10($sp) -/* 322B8 80056EB8 03E00008 */ jr $ra -/* 322BC 80056EBC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/31650/func_80056EE8.s b/ver/us/asm/nonmatchings/31650/func_80056EE8.s deleted file mode 100644 index 3a672bef01..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80056EE8.s +++ /dev/null @@ -1,42 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80056EE8 -/* 322E8 80056EE8 308400FF */ andi $a0, $a0, 0xff -/* 322EC 80056EEC 00041140 */ sll $v0, $a0, 5 -/* 322F0 80056EF0 00441023 */ subu $v0, $v0, $a0 -/* 322F4 80056EF4 3C038008 */ lui $v1, %hi(D_80078E54) -/* 322F8 80056EF8 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 322FC 80056EFC 00021080 */ sll $v0, $v0, 2 -/* 32300 80056F00 8C63001C */ lw $v1, 0x1c($v1) -/* 32304 80056F04 24050001 */ addiu $a1, $zero, 1 -/* 32308 80056F08 00621821 */ addu $v1, $v1, $v0 -/* 3230C 80056F0C 8C620018 */ lw $v0, 0x18($v1) -/* 32310 80056F10 24640004 */ addiu $a0, $v1, 4 -/* 32314 80056F14 AC600070 */ sw $zero, 0x70($v1) -/* 32318 80056F18 AC65006C */ sw $a1, 0x6c($v1) -/* 3231C 80056F1C A465004E */ sh $a1, 0x4e($v1) -/* 32320 80056F20 AC600040 */ sw $zero, 0x40($v1) -/* 32324 80056F24 AC650044 */ sw $a1, 0x44($v1) -/* 32328 80056F28 AC60002C */ sw $zero, 0x2c($v1) -/* 3232C 80056F2C AC650030 */ sw $a1, 0x30($v1) -/* 32330 80056F30 1040000F */ beqz $v0, .L80056F70 -/* 32334 80056F34 AC600028 */ sw $zero, 0x28($v1) -/* 32338 80056F38 8C820014 */ lw $v0, 0x14($a0) -/* 3233C 80056F3C 8C420000 */ lw $v0, ($v0) -/* 32340 80056F40 AC620034 */ sw $v0, 0x34($v1) -/* 32344 80056F44 8C840014 */ lw $a0, 0x14($a0) -/* 32348 80056F48 90820024 */ lbu $v0, 0x24($a0) -/* 3234C 80056F4C 10400003 */ beqz $v0, .L80056F5C -/* 32350 80056F50 00000000 */ nop -/* 32354 80056F54 14450006 */ bne $v0, $a1, .L80056F70 -/* 32358 80056F58 00000000 */ nop -.L80056F5C: -/* 3235C 80056F5C 8C820010 */ lw $v0, 0x10($a0) -/* 32360 80056F60 10400003 */ beqz $v0, .L80056F70 -/* 32364 80056F64 00000000 */ nop -/* 32368 80056F68 8C820014 */ lw $v0, 0x14($a0) -/* 3236C 80056F6C AC620014 */ sw $v0, 0x14($v1) -.L80056F70: -/* 32370 80056F70 03E00008 */ jr $ra -/* 32374 80056F74 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/31650/func_80056FA4.s b/ver/us/asm/nonmatchings/31650/func_80056FA4.s deleted file mode 100644 index e2de29b215..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80056FA4.s +++ /dev/null @@ -1,173 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80056FA4 -/* 323A4 80056FA4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 323A8 80056FA8 308400FF */ andi $a0, $a0, 0xff -/* 323AC 80056FAC F7B40028 */ sdc1 $f20, 0x28($sp) -/* 323B0 80056FB0 4487A000 */ mtc1 $a3, $f20 -/* 323B4 80056FB4 00041140 */ sll $v0, $a0, 5 -/* 323B8 80056FB8 AFB10014 */ sw $s1, 0x14($sp) -/* 323BC 80056FBC 97B10042 */ lhu $s1, 0x42($sp) -/* 323C0 80056FC0 3C038008 */ lui $v1, %hi(D_80078E54) -/* 323C4 80056FC4 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 323C8 80056FC8 00441023 */ subu $v0, $v0, $a0 -/* 323CC 80056FCC AFB20018 */ sw $s2, 0x18($sp) -/* 323D0 80056FD0 93B20047 */ lbu $s2, 0x47($sp) -/* 323D4 80056FD4 00021080 */ sll $v0, $v0, 2 -/* 323D8 80056FD8 AFBF0024 */ sw $ra, 0x24($sp) -/* 323DC 80056FDC AFB40020 */ sw $s4, 0x20($sp) -/* 323E0 80056FE0 AFB3001C */ sw $s3, 0x1c($sp) -/* 323E4 80056FE4 AFB00010 */ sw $s0, 0x10($sp) -/* 323E8 80056FE8 8C63001C */ lw $v1, 0x1c($v1) -/* 323EC 80056FEC 93B3004B */ lbu $s3, 0x4b($sp) -/* 323F0 80056FF0 00623821 */ addu $a3, $v1, $v0 -/* 323F4 80056FF4 24E40004 */ addiu $a0, $a3, 4 -/* 323F8 80056FF8 A0E50078 */ sb $a1, 0x78($a3) -/* 323FC 80056FFC ACE60018 */ sw $a2, 0x18($a3) -/* 32400 80057000 8C820014 */ lw $v0, 0x14($a0) -/* 32404 80057004 8C420000 */ lw $v0, ($v0) -/* 32408 80057008 ACE00028 */ sw $zero, 0x28($a3) -/* 3240C 8005700C ACE20034 */ sw $v0, 0x34($a3) -/* 32410 80057010 8C850014 */ lw $a1, 0x14($a0) -/* 32414 80057014 24F00048 */ addiu $s0, $a3, 0x48 -/* 32418 80057018 90A30024 */ lbu $v1, 0x24($a1) -/* 3241C 8005701C 10600006 */ beqz $v1, .L80057038 -/* 32420 80057020 24F40038 */ addiu $s4, $a3, 0x38 -/* 32424 80057024 24020001 */ addiu $v0, $zero, 1 -/* 32428 80057028 10620022 */ beq $v1, $v0, .L800570B4 -/* 3242C 8005702C 00000000 */ nop -/* 32430 80057030 08015C3C */ j .L800570F0 -/* 32434 80057034 24050001 */ addiu $a1, $zero, 1 -.L80057038: -/* 32438 80057038 3C0338E3 */ lui $v1, 0x38e3 -/* 3243C 8005703C 8CA20004 */ lw $v0, 4($a1) -/* 32440 80057040 34638E39 */ ori $v1, $v1, 0x8e39 -/* 32444 80057044 00430019 */ multu $v0, $v1 -/* 32448 80057048 00004010 */ mfhi $t0 -/* 3244C 8005704C 00081842 */ srl $v1, $t0, 1 -/* 32450 80057050 000310C0 */ sll $v0, $v1, 3 -/* 32454 80057054 00431021 */ addu $v0, $v0, $v1 -/* 32458 80057058 ACA20004 */ sw $v0, 4($a1) -/* 3245C 8005705C 8C820014 */ lw $v0, 0x14($a0) -/* 32460 80057060 9442001C */ lhu $v0, 0x1c($v0) -/* 32464 80057064 ACE2001C */ sw $v0, 0x1c($a3) -/* 32468 80057068 8C830014 */ lw $v1, 0x14($a0) -/* 3246C 8005706C 8C620010 */ lw $v0, 0x10($v1) -/* 32470 80057070 5040001C */ beql $v0, $zero, .L800570E4 -/* 32474 80057074 ACE00014 */ sw $zero, 0x14($a3) -/* 32478 80057078 8C62000C */ lw $v0, 0xc($v1) -/* 3247C 8005707C ACE2000C */ sw $v0, 0xc($a3) -/* 32480 80057080 8C820014 */ lw $v0, 0x14($a0) -/* 32484 80057084 8C420010 */ lw $v0, 0x10($v0) -/* 32488 80057088 ACE20010 */ sw $v0, 0x10($a3) -/* 3248C 8005708C 8C820014 */ lw $v0, 0x14($a0) -/* 32490 80057090 8C420014 */ lw $v0, 0x14($v0) -/* 32494 80057094 ACE20014 */ sw $v0, 0x14($a3) -/* 32498 80057098 8C820014 */ lw $v0, 0x14($a0) -/* 3249C 8005709C 8CE50008 */ lw $a1, 8($a3) -/* 324A0 800570A0 8C440008 */ lw $a0, 8($v0) -/* 324A4 800570A4 0C015FF6 */ jal alCopy -/* 324A8 800570A8 24060020 */ addiu $a2, $zero, 0x20 -/* 324AC 800570AC 08015C3C */ j .L800570F0 -/* 324B0 800570B0 24050001 */ addiu $a1, $zero, 1 -.L800570B4: -/* 324B4 800570B4 8CA20010 */ lw $v0, 0x10($a1) -/* 324B8 800570B8 5040000A */ beql $v0, $zero, .L800570E4 -/* 324BC 800570BC ACE00014 */ sw $zero, 0x14($a3) -/* 324C0 800570C0 8CA2000C */ lw $v0, 0xc($a1) -/* 324C4 800570C4 ACE2000C */ sw $v0, 0xc($a3) -/* 324C8 800570C8 8C820014 */ lw $v0, 0x14($a0) -/* 324CC 800570CC 8C420010 */ lw $v0, 0x10($v0) -/* 324D0 800570D0 ACE20010 */ sw $v0, 0x10($a3) -/* 324D4 800570D4 8C820014 */ lw $v0, 0x14($a0) -/* 324D8 800570D8 8C420014 */ lw $v0, 0x14($v0) -/* 324DC 800570DC 08015C3B */ j .L800570EC -/* 324E0 800570E0 ACE20014 */ sw $v0, 0x14($a3) -.L800570E4: -/* 324E4 800570E4 ACE00010 */ sw $zero, 0x10($a3) -/* 324E8 800570E8 ACE0000C */ sw $zero, 0xc($a3) -.L800570EC: -/* 324EC 800570EC 24050001 */ addiu $a1, $zero, 1 -.L800570F0: -/* 324F0 800570F0 00111400 */ sll $v0, $s1, 0x10 -/* 324F4 800570F4 00021403 */ sra $v0, $v0, 0x10 -/* 324F8 800570F8 326300FF */ andi $v1, $s3, 0xff -/* 324FC 800570FC 00420018 */ mult $v0, $v0 -/* 32500 80057100 AE050028 */ sw $a1, 0x28($s0) -/* 32504 80057104 AE050024 */ sw $a1, 0x24($s0) -/* 32508 80057108 AE00001C */ sw $zero, 0x1c($s0) -/* 3250C 8005710C 8FA2004C */ lw $v0, 0x4c($sp) -/* 32510 80057110 2406007F */ addiu $a2, $zero, 0x7f -/* 32514 80057114 AE020020 */ sw $v0, 0x20($s0) -/* 32518 80057118 324200FF */ andi $v0, $s2, 0xff -/* 3251C 8005711C A6020004 */ sh $v0, 4($s0) -/* 32520 80057120 00004012 */ mflo $t0 -/* 32524 80057124 000813C3 */ sra $v0, $t0, 0xf -/* 32528 80057128 A6020006 */ sh $v0, 6($s0) -/* 3252C 8005712C 00A31004 */ sllv $v0, $v1, $a1 -/* 32530 80057130 00C31823 */ subu $v1, $a2, $v1 -/* 32534 80057134 3C018008 */ lui $at, %hi(D_80078E60) -/* 32538 80057138 00220821 */ addu $at, $at, $v0 -/* 3253C 8005713C 94228E60 */ lhu $v0, %lo(D_80078E60)($at) -/* 32540 80057140 00A31804 */ sllv $v1, $v1, $a1 -/* 32544 80057144 A602000C */ sh $v0, 0xc($s0) -/* 32548 80057148 3C028008 */ lui $v0, %hi(D_80078E60) -/* 3254C 8005714C 00431021 */ addu $v0, $v0, $v1 -/* 32550 80057150 94428E60 */ lhu $v0, %lo(D_80078E60)($v0) -/* 32554 80057154 A602000E */ sh $v0, 0xe($s0) -/* 32558 80057158 8E020020 */ lw $v0, 0x20($s0) -/* 3255C 8005715C 3C048008 */ lui $a0, %hi(D_80078E60) -/* 32560 80057160 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 32564 80057164 10400004 */ beqz $v0, .L80057178 -/* 32568 80057168 00000000 */ nop -/* 3256C 8005716C A6050008 */ sh $a1, 8($s0) -/* 32570 80057170 08015C7F */ j .L800571FC -/* 32574 80057174 A605000A */ sh $a1, 0xa($s0) -.L80057178: -/* 32578 80057178 3C028008 */ lui $v0, %hi(D_80078181) -/* 3257C 8005717C 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 32580 80057180 90420000 */ lbu $v0, ($v0) -/* 32584 80057184 1440000A */ bnez $v0, .L800571B0 -/* 32588 80057188 00000000 */ nop -/* 3258C 8005718C 86030006 */ lh $v1, 6($s0) -/* 32590 80057190 84820080 */ lh $v0, 0x80($a0) -/* 32594 80057194 00620018 */ mult $v1, $v0 -/* 32598 80057198 00004012 */ mflo $t0 -/* 3259C 8005719C 000813C3 */ sra $v0, $t0, 0xf -/* 325A0 800571A0 A6020008 */ sh $v0, 8($s0) -/* 325A4 800571A4 84820080 */ lh $v0, 0x80($a0) -/* 325A8 800571A8 08015C7C */ j .L800571F0 -/* 325AC 800571AC 00620018 */ mult $v1, $v0 -.L800571B0: -/* 325B0 800571B0 86020004 */ lh $v0, 4($s0) -/* 325B4 800571B4 86030006 */ lh $v1, 6($s0) -/* 325B8 800571B8 00021040 */ sll $v0, $v0, 1 -/* 325BC 800571BC 00441021 */ addu $v0, $v0, $a0 -/* 325C0 800571C0 84420000 */ lh $v0, ($v0) -/* 325C4 800571C4 00620018 */ mult $v1, $v0 -/* 325C8 800571C8 86020004 */ lh $v0, 4($s0) -/* 325CC 800571CC 00C21023 */ subu $v0, $a2, $v0 -/* 325D0 800571D0 00021040 */ sll $v0, $v0, 1 -/* 325D4 800571D4 00441021 */ addu $v0, $v0, $a0 -/* 325D8 800571D8 00004012 */ mflo $t0 -/* 325DC 800571DC 00081BC3 */ sra $v1, $t0, 0xf -/* 325E0 800571E0 A6030008 */ sh $v1, 8($s0) -/* 325E4 800571E4 86030006 */ lh $v1, 6($s0) -/* 325E8 800571E8 84420000 */ lh $v0, ($v0) -/* 325EC 800571EC 00620018 */ mult $v1, $v0 -.L800571F0: -/* 325F0 800571F0 00004012 */ mflo $t0 -/* 325F4 800571F4 000813C3 */ sra $v0, $t0, 0xf -/* 325F8 800571F8 A602000A */ sh $v0, 0xa($s0) -.L800571FC: -/* 325FC 800571FC E6940004 */ swc1 $f20, 4($s4) -/* 32600 80057200 8FBF0024 */ lw $ra, 0x24($sp) -/* 32604 80057204 8FB40020 */ lw $s4, 0x20($sp) -/* 32608 80057208 8FB3001C */ lw $s3, 0x1c($sp) -/* 3260C 8005720C 8FB20018 */ lw $s2, 0x18($sp) -/* 32610 80057210 8FB10014 */ lw $s1, 0x14($sp) -/* 32614 80057214 8FB00010 */ lw $s0, 0x10($sp) -/* 32618 80057218 D7B40028 */ ldc1 $f20, 0x28($sp) -/* 3261C 8005721C 03E00008 */ jr $ra -/* 32620 80057220 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/31650/func_80057224.s b/ver/us/asm/nonmatchings/31650/func_80057224.s deleted file mode 100644 index b39e74c583..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80057224.s +++ /dev/null @@ -1,80 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80057224 -/* 32624 80057224 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 32628 80057228 308400FF */ andi $a0, $a0, 0xff -/* 3262C 8005722C 00041140 */ sll $v0, $a0, 5 -/* 32630 80057230 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32634 80057234 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 32638 80057238 00441023 */ subu $v0, $v0, $a0 -/* 3263C 8005723C AFBF0010 */ sw $ra, 0x10($sp) -/* 32640 80057240 8C63001C */ lw $v1, 0x1c($v1) -/* 32644 80057244 00021080 */ sll $v0, $v0, 2 -/* 32648 80057248 00623021 */ addu $a2, $v1, $v0 -/* 3264C 8005724C ACC50018 */ sw $a1, 0x18($a2) -/* 32650 80057250 24C50004 */ addiu $a1, $a2, 4 -/* 32654 80057254 8CA20014 */ lw $v0, 0x14($a1) -/* 32658 80057258 8C420000 */ lw $v0, ($v0) -/* 3265C 8005725C ACC00028 */ sw $zero, 0x28($a2) -/* 32660 80057260 ACC20034 */ sw $v0, 0x34($a2) -/* 32664 80057264 8CA40014 */ lw $a0, 0x14($a1) -/* 32668 80057268 90830024 */ lbu $v1, 0x24($a0) -/* 3266C 8005726C 10600005 */ beqz $v1, .L80057284 -/* 32670 80057270 24020001 */ addiu $v0, $zero, 1 -/* 32674 80057274 10620022 */ beq $v1, $v0, .L80057300 -/* 32678 80057278 00000000 */ nop -/* 3267C 8005727C 08015CCE */ j .L80057338 -/* 32680 80057280 00000000 */ nop -.L80057284: -/* 32684 80057284 3C0338E3 */ lui $v1, 0x38e3 -/* 32688 80057288 8C820004 */ lw $v0, 4($a0) -/* 3268C 8005728C 34638E39 */ ori $v1, $v1, 0x8e39 -/* 32690 80057290 00430019 */ multu $v0, $v1 -/* 32694 80057294 00003810 */ mfhi $a3 -/* 32698 80057298 00071842 */ srl $v1, $a3, 1 -/* 3269C 8005729C 000310C0 */ sll $v0, $v1, 3 -/* 326A0 800572A0 00431021 */ addu $v0, $v0, $v1 -/* 326A4 800572A4 AC820004 */ sw $v0, 4($a0) -/* 326A8 800572A8 8CA20014 */ lw $v0, 0x14($a1) -/* 326AC 800572AC 9442001C */ lhu $v0, 0x1c($v0) -/* 326B0 800572B0 ACC2001C */ sw $v0, 0x1c($a2) -/* 326B4 800572B4 8CA30014 */ lw $v1, 0x14($a1) -/* 326B8 800572B8 8C620010 */ lw $v0, 0x10($v1) -/* 326BC 800572BC 5040001C */ beql $v0, $zero, .L80057330 -/* 326C0 800572C0 ACC00014 */ sw $zero, 0x14($a2) -/* 326C4 800572C4 8C62000C */ lw $v0, 0xc($v1) -/* 326C8 800572C8 ACC2000C */ sw $v0, 0xc($a2) -/* 326CC 800572CC 8CA20014 */ lw $v0, 0x14($a1) -/* 326D0 800572D0 8C420010 */ lw $v0, 0x10($v0) -/* 326D4 800572D4 ACC20010 */ sw $v0, 0x10($a2) -/* 326D8 800572D8 8CA20014 */ lw $v0, 0x14($a1) -/* 326DC 800572DC 8C420014 */ lw $v0, 0x14($v0) -/* 326E0 800572E0 ACC20014 */ sw $v0, 0x14($a2) -/* 326E4 800572E4 8CA20014 */ lw $v0, 0x14($a1) -/* 326E8 800572E8 8CC50008 */ lw $a1, 8($a2) -/* 326EC 800572EC 8C440008 */ lw $a0, 8($v0) -/* 326F0 800572F0 0C015FF6 */ jal alCopy -/* 326F4 800572F4 24060020 */ addiu $a2, $zero, 0x20 -/* 326F8 800572F8 08015CCE */ j .L80057338 -/* 326FC 800572FC 00000000 */ nop -.L80057300: -/* 32700 80057300 8C820010 */ lw $v0, 0x10($a0) -/* 32704 80057304 5040000A */ beql $v0, $zero, .L80057330 -/* 32708 80057308 ACC00014 */ sw $zero, 0x14($a2) -/* 3270C 8005730C 8C82000C */ lw $v0, 0xc($a0) -/* 32710 80057310 ACC2000C */ sw $v0, 0xc($a2) -/* 32714 80057314 8CA20014 */ lw $v0, 0x14($a1) -/* 32718 80057318 8C420010 */ lw $v0, 0x10($v0) -/* 3271C 8005731C ACC20010 */ sw $v0, 0x10($a2) -/* 32720 80057320 8CA20014 */ lw $v0, 0x14($a1) -/* 32724 80057324 8C420014 */ lw $v0, 0x14($v0) -/* 32728 80057328 08015CCE */ j .L80057338 -/* 3272C 8005732C ACC20014 */ sw $v0, 0x14($a2) -.L80057330: -/* 32730 80057330 ACC00010 */ sw $zero, 0x10($a2) -/* 32734 80057334 ACC0000C */ sw $zero, 0xc($a2) -.L80057338: -/* 32738 80057338 8FBF0010 */ lw $ra, 0x10($sp) -/* 3273C 8005733C 03E00008 */ jr $ra -/* 32740 80057340 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/31650/func_8005736C.s b/ver/us/asm/nonmatchings/31650/func_8005736C.s deleted file mode 100644 index d153088e98..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_8005736C.s +++ /dev/null @@ -1,128 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8005736C -/* 3276C 8005736C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 32770 80057370 AFB50024 */ sw $s5, 0x24($sp) -/* 32774 80057374 00C0A82D */ daddu $s5, $a2, $zero -/* 32778 80057378 AFB3001C */ sw $s3, 0x1c($sp) -/* 3277C 8005737C 00A0982D */ daddu $s3, $a1, $zero -/* 32780 80057380 AFB40020 */ sw $s4, 0x20($sp) -/* 32784 80057384 00E0A02D */ daddu $s4, $a3, $zero -/* 32788 80057388 308400FF */ andi $a0, $a0, 0xff -/* 3278C 8005738C 00041140 */ sll $v0, $a0, 5 -/* 32790 80057390 00441023 */ subu $v0, $v0, $a0 -/* 32794 80057394 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32798 80057398 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 3279C 8005739C 00021080 */ sll $v0, $v0, 2 -/* 327A0 800573A0 AFBF0028 */ sw $ra, 0x28($sp) -/* 327A4 800573A4 AFB20018 */ sw $s2, 0x18($sp) -/* 327A8 800573A8 AFB10014 */ sw $s1, 0x14($sp) -/* 327AC 800573AC AFB00010 */ sw $s0, 0x10($sp) -/* 327B0 800573B0 8C63001C */ lw $v1, 0x1c($v1) -/* 327B4 800573B4 93B20043 */ lbu $s2, 0x43($sp) -/* 327B8 800573B8 00628021 */ addu $s0, $v1, $v0 -/* 327BC 800573BC 8E050064 */ lw $a1, 0x64($s0) -/* 327C0 800573C0 8E030068 */ lw $v1, 0x68($s0) -/* 327C4 800573C4 00A3102A */ slt $v0, $a1, $v1 -/* 327C8 800573C8 14400029 */ bnez $v0, .L80057470 -/* 327CC 800573CC 26110048 */ addiu $s1, $s0, 0x48 -/* 327D0 800573D0 3C028008 */ lui $v0, %hi(D_80078181) -/* 327D4 800573D4 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 327D8 800573D8 90420000 */ lbu $v0, ($v0) -/* 327DC 800573DC 1440000E */ bnez $v0, .L80057418 -/* 327E0 800573E0 AE030064 */ sw $v1, 0x64($s0) -/* 327E4 800573E4 3C048008 */ lui $a0, %hi(D_80078E60) -/* 327E8 800573E8 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 327EC 800573EC 8603004E */ lh $v1, 0x4e($s0) -/* 327F0 800573F0 84820080 */ lh $v0, 0x80($a0) -/* 327F4 800573F4 00620018 */ mult $v1, $v0 -/* 327F8 800573F8 00004012 */ mflo $t0 -/* 327FC 800573FC 000813C3 */ sra $v0, $t0, 0xf -/* 32800 80057400 A6020050 */ sh $v0, 0x50($s0) -/* 32804 80057404 84820080 */ lh $v0, 0x80($a0) -/* 32808 80057408 00620018 */ mult $v1, $v0 -/* 3280C 8005740C 00004012 */ mflo $t0 -/* 32810 80057410 08015D26 */ j .L80057498 -/* 32814 80057414 000813C3 */ sra $v0, $t0, 0xf -.L80057418: -/* 32818 80057418 8602004C */ lh $v0, 0x4c($s0) -/* 3281C 8005741C 8603004E */ lh $v1, 0x4e($s0) -/* 32820 80057420 00021040 */ sll $v0, $v0, 1 -/* 32824 80057424 3C018008 */ lui $at, %hi(D_80078E60) -/* 32828 80057428 00220821 */ addu $at, $at, $v0 -/* 3282C 8005742C 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32830 80057430 00620018 */ mult $v1, $v0 -/* 32834 80057434 8603004C */ lh $v1, 0x4c($s0) -/* 32838 80057438 00004012 */ mflo $t0 -/* 3283C 8005743C 000813C3 */ sra $v0, $t0, 0xf -/* 32840 80057440 A6020050 */ sh $v0, 0x50($s0) -/* 32844 80057444 2402007F */ addiu $v0, $zero, 0x7f -/* 32848 80057448 00431023 */ subu $v0, $v0, $v1 -/* 3284C 8005744C 00021040 */ sll $v0, $v0, 1 -/* 32850 80057450 8603004E */ lh $v1, 0x4e($s0) -/* 32854 80057454 3C018008 */ lui $at, %hi(D_80078E60) -/* 32858 80057458 00220821 */ addu $at, $at, $v0 -/* 3285C 8005745C 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32860 80057460 00620018 */ mult $v1, $v0 -/* 32864 80057464 00004012 */ mflo $t0 -/* 32868 80057468 08015D26 */ j .L80057498 -/* 3286C 8005746C 000813C3 */ sra $v0, $t0, 0xf -.L80057470: -/* 32870 80057470 86040050 */ lh $a0, 0x50($s0) -/* 32874 80057474 8606005A */ lh $a2, 0x5a($s0) -/* 32878 80057478 0C016001 */ jal func_80058004 -/* 3287C 8005747C 96070058 */ lhu $a3, 0x58($s0) -/* 32880 80057480 86040052 */ lh $a0, 0x52($s0) -/* 32884 80057484 8E050064 */ lw $a1, 0x64($s0) -/* 32888 80057488 86060060 */ lh $a2, 0x60($s0) -/* 3288C 8005748C 9607005E */ lhu $a3, 0x5e($s0) -/* 32890 80057490 0C016001 */ jal func_80058004 -/* 32894 80057494 A6020050 */ sh $v0, 0x50($s0) -.L80057498: -/* 32898 80057498 A6020052 */ sh $v0, 0x52($s0) -/* 3289C 8005749C 86220008 */ lh $v0, 8($s1) -/* 328A0 800574A0 14400002 */ bnez $v0, .L800574AC -/* 328A4 800574A4 24020001 */ addiu $v0, $zero, 1 -/* 328A8 800574A8 A6220008 */ sh $v0, 8($s1) -.L800574AC: -/* 328AC 800574AC 8622000A */ lh $v0, 0xa($s1) -/* 328B0 800574B0 14400004 */ bnez $v0, .L800574C4 -/* 328B4 800574B4 00131400 */ sll $v0, $s3, 0x10 -/* 328B8 800574B8 24020001 */ addiu $v0, $zero, 1 -/* 328BC 800574BC A622000A */ sh $v0, 0xa($s1) -/* 328C0 800574C0 00131400 */ sll $v0, $s3, 0x10 -.L800574C4: -/* 328C4 800574C4 00021403 */ sra $v0, $v0, 0x10 -/* 328C8 800574C8 00420018 */ mult $v0, $v0 -/* 328CC 800574CC 328200FF */ andi $v0, $s4, 0xff -/* 328D0 800574D0 324300FF */ andi $v1, $s2, 0xff -/* 328D4 800574D4 AE20001C */ sw $zero, 0x1c($s1) -/* 328D8 800574D8 AE350020 */ sw $s5, 0x20($s1) -/* 328DC 800574DC A6220004 */ sh $v0, 4($s1) -/* 328E0 800574E0 00004012 */ mflo $t0 -/* 328E4 800574E4 000813C3 */ sra $v0, $t0, 0xf -/* 328E8 800574E8 A6220006 */ sh $v0, 6($s1) -/* 328EC 800574EC 00031040 */ sll $v0, $v1, 1 -/* 328F0 800574F0 3C018008 */ lui $at, %hi(D_80078E60) -/* 328F4 800574F4 00220821 */ addu $at, $at, $v0 -/* 328F8 800574F8 94228E60 */ lhu $v0, %lo(D_80078E60)($at) -/* 328FC 800574FC A622000C */ sh $v0, 0xc($s1) -/* 32900 80057500 2402007F */ addiu $v0, $zero, 0x7f -/* 32904 80057504 00431023 */ subu $v0, $v0, $v1 -/* 32908 80057508 00021040 */ sll $v0, $v0, 1 -/* 3290C 8005750C 3C038008 */ lui $v1, %hi(D_80078E60) -/* 32910 80057510 00621821 */ addu $v1, $v1, $v0 -/* 32914 80057514 94638E60 */ lhu $v1, %lo(D_80078E60)($v1) -/* 32918 80057518 24020001 */ addiu $v0, $zero, 1 -/* 3291C 8005751C AE220024 */ sw $v0, 0x24($s1) -/* 32920 80057520 A623000E */ sh $v1, 0xe($s1) -/* 32924 80057524 8FBF0028 */ lw $ra, 0x28($sp) -/* 32928 80057528 8FB50024 */ lw $s5, 0x24($sp) -/* 3292C 8005752C 8FB40020 */ lw $s4, 0x20($sp) -/* 32930 80057530 8FB3001C */ lw $s3, 0x1c($sp) -/* 32934 80057534 8FB20018 */ lw $s2, 0x18($sp) -/* 32938 80057538 8FB10014 */ lw $s1, 0x14($sp) -/* 3293C 8005753C 8FB00010 */ lw $s0, 0x10($sp) -/* 32940 80057540 03E00008 */ jr $ra -/* 32944 80057544 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/31650/func_80057548.s b/ver/us/asm/nonmatchings/31650/func_80057548.s deleted file mode 100644 index 0349d24b40..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80057548.s +++ /dev/null @@ -1,114 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80057548 -/* 32948 80057548 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 3294C 8005754C AFB20018 */ sw $s2, 0x18($sp) -/* 32950 80057550 00A0902D */ daddu $s2, $a1, $zero -/* 32954 80057554 AFB3001C */ sw $s3, 0x1c($sp) -/* 32958 80057558 00C0982D */ daddu $s3, $a2, $zero -/* 3295C 8005755C 308400FF */ andi $a0, $a0, 0xff -/* 32960 80057560 00041140 */ sll $v0, $a0, 5 -/* 32964 80057564 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32968 80057568 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 3296C 8005756C 00441023 */ subu $v0, $v0, $a0 -/* 32970 80057570 AFBF0020 */ sw $ra, 0x20($sp) -/* 32974 80057574 AFB10014 */ sw $s1, 0x14($sp) -/* 32978 80057578 AFB00010 */ sw $s0, 0x10($sp) -/* 3297C 8005757C 8C63001C */ lw $v1, 0x1c($v1) -/* 32980 80057580 00021080 */ sll $v0, $v0, 2 -/* 32984 80057584 00628021 */ addu $s0, $v1, $v0 -/* 32988 80057588 8E050064 */ lw $a1, 0x64($s0) -/* 3298C 8005758C 8E030068 */ lw $v1, 0x68($s0) -/* 32990 80057590 00A3102A */ slt $v0, $a1, $v1 -/* 32994 80057594 14400029 */ bnez $v0, .L8005763C -/* 32998 80057598 26110048 */ addiu $s1, $s0, 0x48 -/* 3299C 8005759C 3C028008 */ lui $v0, %hi(D_80078181) -/* 329A0 800575A0 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 329A4 800575A4 90420000 */ lbu $v0, ($v0) -/* 329A8 800575A8 1440000E */ bnez $v0, .L800575E4 -/* 329AC 800575AC AE030064 */ sw $v1, 0x64($s0) -/* 329B0 800575B0 3C048008 */ lui $a0, %hi(D_80078E60) -/* 329B4 800575B4 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 329B8 800575B8 8603004E */ lh $v1, 0x4e($s0) -/* 329BC 800575BC 84820080 */ lh $v0, 0x80($a0) -/* 329C0 800575C0 00620018 */ mult $v1, $v0 -/* 329C4 800575C4 00004012 */ mflo $t0 -/* 329C8 800575C8 000813C3 */ sra $v0, $t0, 0xf -/* 329CC 800575CC A6020050 */ sh $v0, 0x50($s0) -/* 329D0 800575D0 84820080 */ lh $v0, 0x80($a0) -/* 329D4 800575D4 00620018 */ mult $v1, $v0 -/* 329D8 800575D8 00004012 */ mflo $t0 -/* 329DC 800575DC 08015D99 */ j .L80057664 -/* 329E0 800575E0 000813C3 */ sra $v0, $t0, 0xf -.L800575E4: -/* 329E4 800575E4 8602004C */ lh $v0, 0x4c($s0) -/* 329E8 800575E8 8603004E */ lh $v1, 0x4e($s0) -/* 329EC 800575EC 00021040 */ sll $v0, $v0, 1 -/* 329F0 800575F0 3C018008 */ lui $at, %hi(D_80078E60) -/* 329F4 800575F4 00220821 */ addu $at, $at, $v0 -/* 329F8 800575F8 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 329FC 800575FC 00620018 */ mult $v1, $v0 -/* 32A00 80057600 8603004C */ lh $v1, 0x4c($s0) -/* 32A04 80057604 00004012 */ mflo $t0 -/* 32A08 80057608 000813C3 */ sra $v0, $t0, 0xf -/* 32A0C 8005760C A6020050 */ sh $v0, 0x50($s0) -/* 32A10 80057610 2402007F */ addiu $v0, $zero, 0x7f -/* 32A14 80057614 00431023 */ subu $v0, $v0, $v1 -/* 32A18 80057618 00021040 */ sll $v0, $v0, 1 -/* 32A1C 8005761C 8603004E */ lh $v1, 0x4e($s0) -/* 32A20 80057620 3C018008 */ lui $at, %hi(D_80078E60) -/* 32A24 80057624 00220821 */ addu $at, $at, $v0 -/* 32A28 80057628 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32A2C 8005762C 00620018 */ mult $v1, $v0 -/* 32A30 80057630 00004012 */ mflo $t0 -/* 32A34 80057634 08015D99 */ j .L80057664 -/* 32A38 80057638 000813C3 */ sra $v0, $t0, 0xf -.L8005763C: -/* 32A3C 8005763C 86040050 */ lh $a0, 0x50($s0) -/* 32A40 80057640 8606005A */ lh $a2, 0x5a($s0) -/* 32A44 80057644 0C016001 */ jal func_80058004 -/* 32A48 80057648 96070058 */ lhu $a3, 0x58($s0) -/* 32A4C 8005764C 86040052 */ lh $a0, 0x52($s0) -/* 32A50 80057650 8E050064 */ lw $a1, 0x64($s0) -/* 32A54 80057654 86060060 */ lh $a2, 0x60($s0) -/* 32A58 80057658 9607005E */ lhu $a3, 0x5e($s0) -/* 32A5C 8005765C 0C016001 */ jal func_80058004 -/* 32A60 80057660 A6020050 */ sh $v0, 0x50($s0) -.L80057664: -/* 32A64 80057664 A6020052 */ sh $v0, 0x52($s0) -/* 32A68 80057668 86220008 */ lh $v0, 8($s1) -/* 32A6C 8005766C 14400002 */ bnez $v0, .L80057678 -/* 32A70 80057670 24020001 */ addiu $v0, $zero, 1 -/* 32A74 80057674 A6220008 */ sh $v0, 8($s1) -.L80057678: -/* 32A78 80057678 8622000A */ lh $v0, 0xa($s1) -/* 32A7C 8005767C 14400004 */ bnez $v0, .L80057690 -/* 32A80 80057680 324200FF */ andi $v0, $s2, 0xff -/* 32A84 80057684 24020001 */ addiu $v0, $zero, 1 -/* 32A88 80057688 A622000A */ sh $v0, 0xa($s1) -/* 32A8C 8005768C 324200FF */ andi $v0, $s2, 0xff -.L80057690: -/* 32A90 80057690 326300FF */ andi $v1, $s3, 0xff -/* 32A94 80057694 A6220004 */ sh $v0, 4($s1) -/* 32A98 80057698 00031040 */ sll $v0, $v1, 1 -/* 32A9C 8005769C 3C018008 */ lui $at, %hi(D_80078E60) -/* 32AA0 800576A0 00220821 */ addu $at, $at, $v0 -/* 32AA4 800576A4 94228E60 */ lhu $v0, %lo(D_80078E60)($at) -/* 32AA8 800576A8 A622000C */ sh $v0, 0xc($s1) -/* 32AAC 800576AC 2402007F */ addiu $v0, $zero, 0x7f -/* 32AB0 800576B0 00431023 */ subu $v0, $v0, $v1 -/* 32AB4 800576B4 00021040 */ sll $v0, $v0, 1 -/* 32AB8 800576B8 3C038008 */ lui $v1, %hi(D_80078E60) -/* 32ABC 800576BC 00621821 */ addu $v1, $v1, $v0 -/* 32AC0 800576C0 94638E60 */ lhu $v1, %lo(D_80078E60)($v1) -/* 32AC4 800576C4 24020001 */ addiu $v0, $zero, 1 -/* 32AC8 800576C8 AE220024 */ sw $v0, 0x24($s1) -/* 32ACC 800576CC A623000E */ sh $v1, 0xe($s1) -/* 32AD0 800576D0 8FBF0020 */ lw $ra, 0x20($sp) -/* 32AD4 800576D4 8FB3001C */ lw $s3, 0x1c($sp) -/* 32AD8 800576D8 8FB20018 */ lw $s2, 0x18($sp) -/* 32ADC 800576DC 8FB10014 */ lw $s1, 0x14($sp) -/* 32AE0 800576E0 8FB00010 */ lw $s0, 0x10($sp) -/* 32AE4 800576E4 03E00008 */ jr $ra -/* 32AE8 800576E8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/31650/func_800576EC.s b/ver/us/asm/nonmatchings/31650/func_800576EC.s deleted file mode 100644 index 79ebca8337..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_800576EC.s +++ /dev/null @@ -1,107 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800576EC -/* 32AEC 800576EC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 32AF0 800576F0 AFB3001C */ sw $s3, 0x1c($sp) -/* 32AF4 800576F4 00C0982D */ daddu $s3, $a2, $zero -/* 32AF8 800576F8 AFB20018 */ sw $s2, 0x18($sp) -/* 32AFC 800576FC 00A0902D */ daddu $s2, $a1, $zero -/* 32B00 80057700 308400FF */ andi $a0, $a0, 0xff -/* 32B04 80057704 00041140 */ sll $v0, $a0, 5 -/* 32B08 80057708 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32B0C 8005770C 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 32B10 80057710 00441023 */ subu $v0, $v0, $a0 -/* 32B14 80057714 AFBF0020 */ sw $ra, 0x20($sp) -/* 32B18 80057718 AFB10014 */ sw $s1, 0x14($sp) -/* 32B1C 8005771C AFB00010 */ sw $s0, 0x10($sp) -/* 32B20 80057720 8C63001C */ lw $v1, 0x1c($v1) -/* 32B24 80057724 00021080 */ sll $v0, $v0, 2 -/* 32B28 80057728 00628021 */ addu $s0, $v1, $v0 -/* 32B2C 8005772C 8E050064 */ lw $a1, 0x64($s0) -/* 32B30 80057730 8E030068 */ lw $v1, 0x68($s0) -/* 32B34 80057734 00A3102A */ slt $v0, $a1, $v1 -/* 32B38 80057738 14400029 */ bnez $v0, .L800577E0 -/* 32B3C 8005773C 26110048 */ addiu $s1, $s0, 0x48 -/* 32B40 80057740 3C028008 */ lui $v0, %hi(D_80078181) -/* 32B44 80057744 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 32B48 80057748 90420000 */ lbu $v0, ($v0) -/* 32B4C 8005774C 1440000E */ bnez $v0, .L80057788 -/* 32B50 80057750 AE030064 */ sw $v1, 0x64($s0) -/* 32B54 80057754 3C048008 */ lui $a0, %hi(D_80078E60) -/* 32B58 80057758 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 32B5C 8005775C 8603004E */ lh $v1, 0x4e($s0) -/* 32B60 80057760 84820080 */ lh $v0, 0x80($a0) -/* 32B64 80057764 00620018 */ mult $v1, $v0 -/* 32B68 80057768 00004012 */ mflo $t0 -/* 32B6C 8005776C 000813C3 */ sra $v0, $t0, 0xf -/* 32B70 80057770 A6020050 */ sh $v0, 0x50($s0) -/* 32B74 80057774 84820080 */ lh $v0, 0x80($a0) -/* 32B78 80057778 00620018 */ mult $v1, $v0 -/* 32B7C 8005777C 00004012 */ mflo $t0 -/* 32B80 80057780 08015E02 */ j .L80057808 -/* 32B84 80057784 000813C3 */ sra $v0, $t0, 0xf -.L80057788: -/* 32B88 80057788 8602004C */ lh $v0, 0x4c($s0) -/* 32B8C 8005778C 8603004E */ lh $v1, 0x4e($s0) -/* 32B90 80057790 00021040 */ sll $v0, $v0, 1 -/* 32B94 80057794 3C018008 */ lui $at, %hi(D_80078E60) -/* 32B98 80057798 00220821 */ addu $at, $at, $v0 -/* 32B9C 8005779C 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32BA0 800577A0 00620018 */ mult $v1, $v0 -/* 32BA4 800577A4 8603004C */ lh $v1, 0x4c($s0) -/* 32BA8 800577A8 00004012 */ mflo $t0 -/* 32BAC 800577AC 000813C3 */ sra $v0, $t0, 0xf -/* 32BB0 800577B0 A6020050 */ sh $v0, 0x50($s0) -/* 32BB4 800577B4 2402007F */ addiu $v0, $zero, 0x7f -/* 32BB8 800577B8 00431023 */ subu $v0, $v0, $v1 -/* 32BBC 800577BC 00021040 */ sll $v0, $v0, 1 -/* 32BC0 800577C0 8603004E */ lh $v1, 0x4e($s0) -/* 32BC4 800577C4 3C018008 */ lui $at, %hi(D_80078E60) -/* 32BC8 800577C8 00220821 */ addu $at, $at, $v0 -/* 32BCC 800577CC 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32BD0 800577D0 00620018 */ mult $v1, $v0 -/* 32BD4 800577D4 00004012 */ mflo $t0 -/* 32BD8 800577D8 08015E02 */ j .L80057808 -/* 32BDC 800577DC 000813C3 */ sra $v0, $t0, 0xf -.L800577E0: -/* 32BE0 800577E0 86040050 */ lh $a0, 0x50($s0) -/* 32BE4 800577E4 8606005A */ lh $a2, 0x5a($s0) -/* 32BE8 800577E8 0C016001 */ jal func_80058004 -/* 32BEC 800577EC 96070058 */ lhu $a3, 0x58($s0) -/* 32BF0 800577F0 86040052 */ lh $a0, 0x52($s0) -/* 32BF4 800577F4 8E050064 */ lw $a1, 0x64($s0) -/* 32BF8 800577F8 86060060 */ lh $a2, 0x60($s0) -/* 32BFC 800577FC 9607005E */ lhu $a3, 0x5e($s0) -/* 32C00 80057800 0C016001 */ jal func_80058004 -/* 32C04 80057804 A6020050 */ sh $v0, 0x50($s0) -.L80057808: -/* 32C08 80057808 A6020052 */ sh $v0, 0x52($s0) -/* 32C0C 8005780C 86220008 */ lh $v0, 8($s1) -/* 32C10 80057810 14400002 */ bnez $v0, .L8005781C -/* 32C14 80057814 24020001 */ addiu $v0, $zero, 1 -/* 32C18 80057818 A6220008 */ sh $v0, 8($s1) -.L8005781C: -/* 32C1C 8005781C 8622000A */ lh $v0, 0xa($s1) -/* 32C20 80057820 14400004 */ bnez $v0, .L80057834 -/* 32C24 80057824 00121400 */ sll $v0, $s2, 0x10 -/* 32C28 80057828 24020001 */ addiu $v0, $zero, 1 -/* 32C2C 8005782C A622000A */ sh $v0, 0xa($s1) -/* 32C30 80057830 00121400 */ sll $v0, $s2, 0x10 -.L80057834: -/* 32C34 80057834 00021403 */ sra $v0, $v0, 0x10 -/* 32C38 80057838 00420018 */ mult $v0, $v0 -/* 32C3C 8005783C 24020001 */ addiu $v0, $zero, 1 -/* 32C40 80057840 AE20001C */ sw $zero, 0x1c($s1) -/* 32C44 80057844 AE330020 */ sw $s3, 0x20($s1) -/* 32C48 80057848 AE220024 */ sw $v0, 0x24($s1) -/* 32C4C 8005784C 00004012 */ mflo $t0 -/* 32C50 80057850 000813C3 */ sra $v0, $t0, 0xf -/* 32C54 80057854 A6220006 */ sh $v0, 6($s1) -/* 32C58 80057858 8FBF0020 */ lw $ra, 0x20($sp) -/* 32C5C 8005785C 8FB3001C */ lw $s3, 0x1c($sp) -/* 32C60 80057860 8FB20018 */ lw $s2, 0x18($sp) -/* 32C64 80057864 8FB10014 */ lw $s1, 0x14($sp) -/* 32C68 80057868 8FB00010 */ lw $s0, 0x10($sp) -/* 32C6C 8005786C 03E00008 */ jr $ra -/* 32C70 80057870 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/31650/func_80057874.s b/ver/us/asm/nonmatchings/31650/func_80057874.s deleted file mode 100644 index 9ec4fff3f8..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80057874.s +++ /dev/null @@ -1,98 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80057874 -/* 32C74 80057874 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 32C78 80057878 AFB20018 */ sw $s2, 0x18($sp) -/* 32C7C 8005787C 00A0902D */ daddu $s2, $a1, $zero -/* 32C80 80057880 308400FF */ andi $a0, $a0, 0xff -/* 32C84 80057884 00041140 */ sll $v0, $a0, 5 -/* 32C88 80057888 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32C8C 8005788C 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 32C90 80057890 00441023 */ subu $v0, $v0, $a0 -/* 32C94 80057894 AFBF001C */ sw $ra, 0x1c($sp) -/* 32C98 80057898 AFB10014 */ sw $s1, 0x14($sp) -/* 32C9C 8005789C AFB00010 */ sw $s0, 0x10($sp) -/* 32CA0 800578A0 8C63001C */ lw $v1, 0x1c($v1) -/* 32CA4 800578A4 00021080 */ sll $v0, $v0, 2 -/* 32CA8 800578A8 00628021 */ addu $s0, $v1, $v0 -/* 32CAC 800578AC 8E050064 */ lw $a1, 0x64($s0) -/* 32CB0 800578B0 8E030068 */ lw $v1, 0x68($s0) -/* 32CB4 800578B4 00A3102A */ slt $v0, $a1, $v1 -/* 32CB8 800578B8 14400029 */ bnez $v0, .L80057960 -/* 32CBC 800578BC 26110048 */ addiu $s1, $s0, 0x48 -/* 32CC0 800578C0 3C028008 */ lui $v0, %hi(D_80078181) -/* 32CC4 800578C4 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 32CC8 800578C8 90420000 */ lbu $v0, ($v0) -/* 32CCC 800578CC 1440000E */ bnez $v0, .L80057908 -/* 32CD0 800578D0 AE030064 */ sw $v1, 0x64($s0) -/* 32CD4 800578D4 3C048008 */ lui $a0, %hi(D_80078E60) -/* 32CD8 800578D8 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 32CDC 800578DC 8603004E */ lh $v1, 0x4e($s0) -/* 32CE0 800578E0 84820080 */ lh $v0, 0x80($a0) -/* 32CE4 800578E4 00620018 */ mult $v1, $v0 -/* 32CE8 800578E8 00004012 */ mflo $t0 -/* 32CEC 800578EC 000813C3 */ sra $v0, $t0, 0xf -/* 32CF0 800578F0 A6020050 */ sh $v0, 0x50($s0) -/* 32CF4 800578F4 84820080 */ lh $v0, 0x80($a0) -/* 32CF8 800578F8 00620018 */ mult $v1, $v0 -/* 32CFC 800578FC 00004012 */ mflo $t0 -/* 32D00 80057900 08015E62 */ j .L80057988 -/* 32D04 80057904 000813C3 */ sra $v0, $t0, 0xf -.L80057908: -/* 32D08 80057908 8602004C */ lh $v0, 0x4c($s0) -/* 32D0C 8005790C 8603004E */ lh $v1, 0x4e($s0) -/* 32D10 80057910 00021040 */ sll $v0, $v0, 1 -/* 32D14 80057914 3C018008 */ lui $at, %hi(D_80078E60) -/* 32D18 80057918 00220821 */ addu $at, $at, $v0 -/* 32D1C 8005791C 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32D20 80057920 00620018 */ mult $v1, $v0 -/* 32D24 80057924 8603004C */ lh $v1, 0x4c($s0) -/* 32D28 80057928 00004012 */ mflo $t0 -/* 32D2C 8005792C 000813C3 */ sra $v0, $t0, 0xf -/* 32D30 80057930 A6020050 */ sh $v0, 0x50($s0) -/* 32D34 80057934 2402007F */ addiu $v0, $zero, 0x7f -/* 32D38 80057938 00431023 */ subu $v0, $v0, $v1 -/* 32D3C 8005793C 00021040 */ sll $v0, $v0, 1 -/* 32D40 80057940 8603004E */ lh $v1, 0x4e($s0) -/* 32D44 80057944 3C018008 */ lui $at, %hi(D_80078E60) -/* 32D48 80057948 00220821 */ addu $at, $at, $v0 -/* 32D4C 8005794C 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32D50 80057950 00620018 */ mult $v1, $v0 -/* 32D54 80057954 00004012 */ mflo $t0 -/* 32D58 80057958 08015E62 */ j .L80057988 -/* 32D5C 8005795C 000813C3 */ sra $v0, $t0, 0xf -.L80057960: -/* 32D60 80057960 86040050 */ lh $a0, 0x50($s0) -/* 32D64 80057964 8606005A */ lh $a2, 0x5a($s0) -/* 32D68 80057968 0C016001 */ jal func_80058004 -/* 32D6C 8005796C 96070058 */ lhu $a3, 0x58($s0) -/* 32D70 80057970 86040052 */ lh $a0, 0x52($s0) -/* 32D74 80057974 8E050064 */ lw $a1, 0x64($s0) -/* 32D78 80057978 86060060 */ lh $a2, 0x60($s0) -/* 32D7C 8005797C 9607005E */ lhu $a3, 0x5e($s0) -/* 32D80 80057980 0C016001 */ jal func_80058004 -/* 32D84 80057984 A6020050 */ sh $v0, 0x50($s0) -.L80057988: -/* 32D88 80057988 A6020052 */ sh $v0, 0x52($s0) -/* 32D8C 8005798C 86220008 */ lh $v0, 8($s1) -/* 32D90 80057990 14400002 */ bnez $v0, .L8005799C -/* 32D94 80057994 24020001 */ addiu $v0, $zero, 1 -/* 32D98 80057998 A6220008 */ sh $v0, 8($s1) -.L8005799C: -/* 32D9C 8005799C 8622000A */ lh $v0, 0xa($s1) -/* 32DA0 800579A0 14400004 */ bnez $v0, .L800579B4 -/* 32DA4 800579A4 324200FF */ andi $v0, $s2, 0xff -/* 32DA8 800579A8 24020001 */ addiu $v0, $zero, 1 -/* 32DAC 800579AC A622000A */ sh $v0, 0xa($s1) -/* 32DB0 800579B0 324200FF */ andi $v0, $s2, 0xff -.L800579B4: -/* 32DB4 800579B4 A6220004 */ sh $v0, 4($s1) -/* 32DB8 800579B8 24020001 */ addiu $v0, $zero, 1 -/* 32DBC 800579BC AE220024 */ sw $v0, 0x24($s1) -/* 32DC0 800579C0 8FBF001C */ lw $ra, 0x1c($sp) -/* 32DC4 800579C4 8FB20018 */ lw $s2, 0x18($sp) -/* 32DC8 800579C8 8FB10014 */ lw $s1, 0x14($sp) -/* 32DCC 800579CC 8FB00010 */ lw $s0, 0x10($sp) -/* 32DD0 800579D0 03E00008 */ jr $ra -/* 32DD4 800579D4 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/31650/func_800579D8.s b/ver/us/asm/nonmatchings/31650/func_800579D8.s deleted file mode 100644 index e97a4c0a7a..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_800579D8.s +++ /dev/null @@ -1,108 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_800579D8 -/* 32DD8 800579D8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 32DDC 800579DC AFB20018 */ sw $s2, 0x18($sp) -/* 32DE0 800579E0 00A0902D */ daddu $s2, $a1, $zero -/* 32DE4 800579E4 308400FF */ andi $a0, $a0, 0xff -/* 32DE8 800579E8 00041140 */ sll $v0, $a0, 5 -/* 32DEC 800579EC 3C038008 */ lui $v1, %hi(D_80078E54) -/* 32DF0 800579F0 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 32DF4 800579F4 00441023 */ subu $v0, $v0, $a0 -/* 32DF8 800579F8 AFBF001C */ sw $ra, 0x1c($sp) -/* 32DFC 800579FC AFB10014 */ sw $s1, 0x14($sp) -/* 32E00 80057A00 AFB00010 */ sw $s0, 0x10($sp) -/* 32E04 80057A04 8C63001C */ lw $v1, 0x1c($v1) -/* 32E08 80057A08 00021080 */ sll $v0, $v0, 2 -/* 32E0C 80057A0C 00628021 */ addu $s0, $v1, $v0 -/* 32E10 80057A10 8E050064 */ lw $a1, 0x64($s0) -/* 32E14 80057A14 8E030068 */ lw $v1, 0x68($s0) -/* 32E18 80057A18 00A3102A */ slt $v0, $a1, $v1 -/* 32E1C 80057A1C 14400029 */ bnez $v0, .L80057AC4 -/* 32E20 80057A20 26110048 */ addiu $s1, $s0, 0x48 -/* 32E24 80057A24 3C028008 */ lui $v0, %hi(D_80078181) -/* 32E28 80057A28 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 32E2C 80057A2C 90420000 */ lbu $v0, ($v0) -/* 32E30 80057A30 1440000E */ bnez $v0, .L80057A6C -/* 32E34 80057A34 AE030064 */ sw $v1, 0x64($s0) -/* 32E38 80057A38 3C048008 */ lui $a0, %hi(D_80078E60) -/* 32E3C 80057A3C 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) -/* 32E40 80057A40 8603004E */ lh $v1, 0x4e($s0) -/* 32E44 80057A44 84820080 */ lh $v0, 0x80($a0) -/* 32E48 80057A48 00620018 */ mult $v1, $v0 -/* 32E4C 80057A4C 00004012 */ mflo $t0 -/* 32E50 80057A50 000813C3 */ sra $v0, $t0, 0xf -/* 32E54 80057A54 A6020050 */ sh $v0, 0x50($s0) -/* 32E58 80057A58 84820080 */ lh $v0, 0x80($a0) -/* 32E5C 80057A5C 00620018 */ mult $v1, $v0 -/* 32E60 80057A60 00004012 */ mflo $t0 -/* 32E64 80057A64 08015EBB */ j .L80057AEC -/* 32E68 80057A68 000813C3 */ sra $v0, $t0, 0xf -.L80057A6C: -/* 32E6C 80057A6C 8602004C */ lh $v0, 0x4c($s0) -/* 32E70 80057A70 8603004E */ lh $v1, 0x4e($s0) -/* 32E74 80057A74 00021040 */ sll $v0, $v0, 1 -/* 32E78 80057A78 3C018008 */ lui $at, %hi(D_80078E60) -/* 32E7C 80057A7C 00220821 */ addu $at, $at, $v0 -/* 32E80 80057A80 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32E84 80057A84 00620018 */ mult $v1, $v0 -/* 32E88 80057A88 8603004C */ lh $v1, 0x4c($s0) -/* 32E8C 80057A8C 00004012 */ mflo $t0 -/* 32E90 80057A90 000813C3 */ sra $v0, $t0, 0xf -/* 32E94 80057A94 A6020050 */ sh $v0, 0x50($s0) -/* 32E98 80057A98 2402007F */ addiu $v0, $zero, 0x7f -/* 32E9C 80057A9C 00431023 */ subu $v0, $v0, $v1 -/* 32EA0 80057AA0 00021040 */ sll $v0, $v0, 1 -/* 32EA4 80057AA4 8603004E */ lh $v1, 0x4e($s0) -/* 32EA8 80057AA8 3C018008 */ lui $at, %hi(D_80078E60) -/* 32EAC 80057AAC 00220821 */ addu $at, $at, $v0 -/* 32EB0 80057AB0 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 32EB4 80057AB4 00620018 */ mult $v1, $v0 -/* 32EB8 80057AB8 00004012 */ mflo $t0 -/* 32EBC 80057ABC 08015EBB */ j .L80057AEC -/* 32EC0 80057AC0 000813C3 */ sra $v0, $t0, 0xf -.L80057AC4: -/* 32EC4 80057AC4 86040050 */ lh $a0, 0x50($s0) -/* 32EC8 80057AC8 8606005A */ lh $a2, 0x5a($s0) -/* 32ECC 80057ACC 0C016001 */ jal func_80058004 -/* 32ED0 80057AD0 96070058 */ lhu $a3, 0x58($s0) -/* 32ED4 80057AD4 86040052 */ lh $a0, 0x52($s0) -/* 32ED8 80057AD8 8E050064 */ lw $a1, 0x64($s0) -/* 32EDC 80057ADC 86060060 */ lh $a2, 0x60($s0) -/* 32EE0 80057AE0 9607005E */ lhu $a3, 0x5e($s0) -/* 32EE4 80057AE4 0C016001 */ jal func_80058004 -/* 32EE8 80057AE8 A6020050 */ sh $v0, 0x50($s0) -.L80057AEC: -/* 32EEC 80057AEC A6020052 */ sh $v0, 0x52($s0) -/* 32EF0 80057AF0 86220008 */ lh $v0, 8($s1) -/* 32EF4 80057AF4 14400002 */ bnez $v0, .L80057B00 -/* 32EF8 80057AF8 24020001 */ addiu $v0, $zero, 1 -/* 32EFC 80057AFC A6220008 */ sh $v0, 8($s1) -.L80057B00: -/* 32F00 80057B00 8622000A */ lh $v0, 0xa($s1) -/* 32F04 80057B04 14400003 */ bnez $v0, .L80057B14 -/* 32F08 80057B08 324300FF */ andi $v1, $s2, 0xff -/* 32F0C 80057B0C 24020001 */ addiu $v0, $zero, 1 -/* 32F10 80057B10 A622000A */ sh $v0, 0xa($s1) -.L80057B14: -/* 32F14 80057B14 00031040 */ sll $v0, $v1, 1 -/* 32F18 80057B18 3C018008 */ lui $at, %hi(D_80078E60) -/* 32F1C 80057B1C 00220821 */ addu $at, $at, $v0 -/* 32F20 80057B20 94228E60 */ lhu $v0, %lo(D_80078E60)($at) -/* 32F24 80057B24 A622000C */ sh $v0, 0xc($s1) -/* 32F28 80057B28 2402007F */ addiu $v0, $zero, 0x7f -/* 32F2C 80057B2C 00431023 */ subu $v0, $v0, $v1 -/* 32F30 80057B30 00021040 */ sll $v0, $v0, 1 -/* 32F34 80057B34 3C038008 */ lui $v1, %hi(D_80078E60) -/* 32F38 80057B38 00621821 */ addu $v1, $v1, $v0 -/* 32F3C 80057B3C 94638E60 */ lhu $v1, %lo(D_80078E60)($v1) -/* 32F40 80057B40 24020001 */ addiu $v0, $zero, 1 -/* 32F44 80057B44 AE220024 */ sw $v0, 0x24($s1) -/* 32F48 80057B48 A623000E */ sh $v1, 0xe($s1) -/* 32F4C 80057B4C 8FBF001C */ lw $ra, 0x1c($sp) -/* 32F50 80057B50 8FB20018 */ lw $s2, 0x18($sp) -/* 32F54 80057B54 8FB10014 */ lw $s1, 0x14($sp) -/* 32F58 80057B58 8FB00010 */ lw $s0, 0x10($sp) -/* 32F5C 80057B5C 03E00008 */ jr $ra -/* 32F60 80057B60 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/31650/func_80057C54.s b/ver/us/asm/nonmatchings/31650/func_80057C54.s deleted file mode 100644 index ed0e7d3ba0..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80057C54.s +++ /dev/null @@ -1,53 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80057C54 -/* 33054 80057C54 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 33058 80057C58 308400FF */ andi $a0, $a0, 0xff -/* 3305C 80057C5C 00041140 */ sll $v0, $a0, 5 -/* 33060 80057C60 3C038008 */ lui $v1, %hi(D_80078E54) -/* 33064 80057C64 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 33068 80057C68 00441023 */ subu $v0, $v0, $a0 -/* 3306C 80057C6C AFBF0010 */ sw $ra, 0x10($sp) -/* 33070 80057C70 8C63001C */ lw $v1, 0x1c($v1) -/* 33074 80057C74 00021080 */ sll $v0, $v0, 2 -/* 33078 80057C78 00621821 */ addu $v1, $v1, $v0 -/* 3307C 80057C7C 8C650064 */ lw $a1, 0x64($v1) -/* 33080 80057C80 8C620068 */ lw $v0, 0x68($v1) -/* 33084 80057C84 00A2102A */ slt $v0, $a1, $v0 -/* 33088 80057C88 14400017 */ bnez $v0, .L80057CE8 -/* 3308C 80057C8C 00000000 */ nop -/* 33090 80057C90 3C028008 */ lui $v0, %hi(D_80078181) -/* 33094 80057C94 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 33098 80057C98 90420000 */ lbu $v0, ($v0) -/* 3309C 80057C9C 14400008 */ bnez $v0, .L80057CC0 -/* 330A0 80057CA0 00000000 */ nop -/* 330A4 80057CA4 8463004E */ lh $v1, 0x4e($v1) -/* 330A8 80057CA8 3C028008 */ lui $v0, %hi(D_80078EE0) -/* 330AC 80057CAC 84428EE0 */ lh $v0, %lo(D_80078EE0)($v0) -/* 330B0 80057CB0 00620018 */ mult $v1, $v0 -/* 330B4 80057CB4 00004012 */ mflo $t0 -/* 330B8 80057CB8 08015F3F */ j .L80057CFC -/* 330BC 80057CBC 00081040 */ sll $v0, $t0, 1 -.L80057CC0: -/* 330C0 80057CC0 8462004C */ lh $v0, 0x4c($v1) -/* 330C4 80057CC4 8463004E */ lh $v1, 0x4e($v1) -/* 330C8 80057CC8 00021040 */ sll $v0, $v0, 1 -/* 330CC 80057CCC 3C018008 */ lui $at, %hi(D_80078E60) -/* 330D0 80057CD0 00220821 */ addu $at, $at, $v0 -/* 330D4 80057CD4 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 330D8 80057CD8 00620018 */ mult $v1, $v0 -/* 330DC 80057CDC 00004012 */ mflo $t0 -/* 330E0 80057CE0 08015F3F */ j .L80057CFC -/* 330E4 80057CE4 00081040 */ sll $v0, $t0, 1 -.L80057CE8: -/* 330E8 80057CE8 84640050 */ lh $a0, 0x50($v1) -/* 330EC 80057CEC 8466005A */ lh $a2, 0x5a($v1) -/* 330F0 80057CF0 0C016001 */ jal func_80058004 -/* 330F4 80057CF4 94670058 */ lhu $a3, 0x58($v1) -/* 330F8 80057CF8 00021400 */ sll $v0, $v0, 0x10 -.L80057CFC: -/* 330FC 80057CFC 00021403 */ sra $v0, $v0, 0x10 -/* 33100 80057D00 8FBF0010 */ lw $ra, 0x10($sp) -/* 33104 80057D04 03E00008 */ jr $ra -/* 33108 80057D08 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/31650/func_80057D0C.s b/ver/us/asm/nonmatchings/31650/func_80057D0C.s deleted file mode 100644 index 39ba71cb86..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80057D0C.s +++ /dev/null @@ -1,54 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80057D0C -/* 3310C 80057D0C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 33110 80057D10 308400FF */ andi $a0, $a0, 0xff -/* 33114 80057D14 00041140 */ sll $v0, $a0, 5 -/* 33118 80057D18 3C038008 */ lui $v1, %hi(D_80078E54) -/* 3311C 80057D1C 8C638E54 */ lw $v1, %lo(D_80078E54)($v1) -/* 33120 80057D20 00441023 */ subu $v0, $v0, $a0 -/* 33124 80057D24 AFBF0010 */ sw $ra, 0x10($sp) -/* 33128 80057D28 8C63001C */ lw $v1, 0x1c($v1) -/* 3312C 80057D2C 00021080 */ sll $v0, $v0, 2 -/* 33130 80057D30 00623821 */ addu $a3, $v1, $v0 -/* 33134 80057D34 8CE50064 */ lw $a1, 0x64($a3) -/* 33138 80057D38 8CE20068 */ lw $v0, 0x68($a3) -/* 3313C 80057D3C 00A2102A */ slt $v0, $a1, $v0 -/* 33140 80057D40 14400018 */ bnez $v0, .L80057DA4 -/* 33144 80057D44 00000000 */ nop -/* 33148 80057D48 3C028008 */ lui $v0, %hi(D_80078181) -/* 3314C 80057D4C 24428181 */ addiu $v0, $v0, %lo(D_80078181) -/* 33150 80057D50 90420000 */ lbu $v0, ($v0) -/* 33154 80057D54 54400008 */ bnel $v0, $zero, .L80057D78 -/* 33158 80057D58 2402007F */ addiu $v0, $zero, 0x7f -/* 3315C 80057D5C 84E3004E */ lh $v1, 0x4e($a3) -/* 33160 80057D60 3C028008 */ lui $v0, %hi(D_80078EE0) -/* 33164 80057D64 84428EE0 */ lh $v0, %lo(D_80078EE0)($v0) -/* 33168 80057D68 00620018 */ mult $v1, $v0 -/* 3316C 80057D6C 00004012 */ mflo $t0 -/* 33170 80057D70 08015F6E */ j .L80057DB8 -/* 33174 80057D74 00081040 */ sll $v0, $t0, 1 -.L80057D78: -/* 33178 80057D78 84E3004C */ lh $v1, 0x4c($a3) -/* 3317C 80057D7C 00431023 */ subu $v0, $v0, $v1 -/* 33180 80057D80 00021040 */ sll $v0, $v0, 1 -/* 33184 80057D84 84E3004E */ lh $v1, 0x4e($a3) -/* 33188 80057D88 3C018008 */ lui $at, %hi(D_80078E60) -/* 3318C 80057D8C 00220821 */ addu $at, $at, $v0 -/* 33190 80057D90 84228E60 */ lh $v0, %lo(D_80078E60)($at) -/* 33194 80057D94 00620018 */ mult $v1, $v0 -/* 33198 80057D98 00004012 */ mflo $t0 -/* 3319C 80057D9C 08015F6E */ j .L80057DB8 -/* 331A0 80057DA0 00081040 */ sll $v0, $t0, 1 -.L80057DA4: -/* 331A4 80057DA4 84E40050 */ lh $a0, 0x50($a3) -/* 331A8 80057DA8 84E6005A */ lh $a2, 0x5a($a3) -/* 331AC 80057DAC 0C016001 */ jal func_80058004 -/* 331B0 80057DB0 94E70058 */ lhu $a3, 0x58($a3) -/* 331B4 80057DB4 00021400 */ sll $v0, $v0, 0x10 -.L80057DB8: -/* 331B8 80057DB8 00021403 */ sra $v0, $v0, 0x10 -/* 331BC 80057DBC 8FBF0010 */ lw $ra, 0x10($sp) -/* 331C0 80057DC0 03E00008 */ jr $ra -/* 331C4 80057DC4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/31650/func_80058004.s b/ver/us/asm/nonmatchings/31650/func_80058004.s deleted file mode 100644 index 5d23b47c70..0000000000 --- a/ver/us/asm/nonmatchings/31650/func_80058004.s +++ /dev/null @@ -1,24 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80058004 -/* 33404 80058004 000528C3 */ sra $a1, $a1, 3 -/* 33408 80058008 50A0000E */ beql $a1, $zero, .L80058044 -/* 3340C 8005800C 00041400 */ sll $v0, $a0, 0x10 -/* 33410 80058010 30E2FFFF */ andi $v0, $a3, 0xffff -/* 33414 80058014 00450018 */ mult $v0, $a1 -/* 33418 80058018 00001012 */ mflo $v0 -/* 3341C 8005801C 00061C00 */ sll $v1, $a2, 0x10 -/* 33420 80058020 00031C03 */ sra $v1, $v1, 0x10 -/* 33424 80058024 00650018 */ mult $v1, $a1 -/* 33428 80058028 00021403 */ sra $v0, $v0, 0x10 -/* 3342C 8005802C 00001812 */ mflo $v1 -/* 33430 80058030 00431021 */ addu $v0, $v0, $v1 -/* 33434 80058034 00821021 */ addu $v0, $a0, $v0 -/* 33438 80058038 00021400 */ sll $v0, $v0, 0x10 -/* 3343C 8005803C 03E00008 */ jr $ra -/* 33440 80058040 00021403 */ sra $v0, $v0, 0x10 -.L80058044: -/* 33444 80058044 03E00008 */ jr $ra -/* 33448 80058048 00021403 */ sra $v0, $v0, 0x10 -/* 3344C 8005804C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/33450/func_80058B20.s b/ver/us/asm/nonmatchings/33450/func_80058B20.s deleted file mode 100644 index 07bc6ae0a5..0000000000 --- a/ver/us/asm/nonmatchings/33450/func_80058B20.s +++ /dev/null @@ -1,90 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80058B20 -/* 33F20 80058B20 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 33F24 80058B24 AFB3001C */ sw $s3, 0x1c($sp) -/* 33F28 80058B28 8FB30044 */ lw $s3, 0x44($sp) -/* 33F2C 80058B2C AFB50024 */ sw $s5, 0x24($sp) -/* 33F30 80058B30 8FB50048 */ lw $s5, 0x48($sp) -/* 33F34 80058B34 AFB40020 */ sw $s4, 0x20($sp) -/* 33F38 80058B38 97B40042 */ lhu $s4, 0x42($sp) -/* 33F3C 80058B3C AFB10014 */ sw $s1, 0x14($sp) -/* 33F40 80058B40 0080882D */ daddu $s1, $a0, $zero -/* 33F44 80058B44 AFB20018 */ sw $s2, 0x18($sp) -/* 33F48 80058B48 00A0902D */ daddu $s2, $a1, $zero -/* 33F4C 80058B4C AFB60028 */ sw $s6, 0x28($sp) -/* 33F50 80058B50 00C0B02D */ daddu $s6, $a2, $zero -/* 33F54 80058B54 AFB00010 */ sw $s0, 0x10($sp) -/* 33F58 80058B58 00E0802D */ daddu $s0, $a3, $zero -/* 33F5C 80058B5C 1A000019 */ blez $s0, .L80058BC4 -/* 33F60 80058B60 AFBF002C */ sw $ra, 0x2c($sp) -/* 33F64 80058B64 8E430014 */ lw $v1, 0x14($s2) -/* 33F68 80058B68 8E42001C */ lw $v0, 0x1c($s2) -/* 33F6C 80058B6C 8E440030 */ lw $a0, 0x30($s2) -/* 33F70 80058B70 8E460020 */ lw $a2, 0x20($s2) -/* 33F74 80058B74 90670025 */ lbu $a3, 0x25($v1) -/* 33F78 80058B78 0040F809 */ jalr $v0 -/* 33F7C 80058B7C 0200282D */ daddu $a1, $s0, $zero -/* 33F80 80058B80 30480007 */ andi $t0, $v0, 7 -/* 33F84 80058B84 02088021 */ addu $s0, $s0, $t0 -/* 33F88 80058B88 0220302D */ daddu $a2, $s1, $zero -/* 33F8C 80058B8C 26310008 */ addiu $s1, $s1, 8 -/* 33F90 80058B90 32030007 */ andi $v1, $s0, 7 -/* 33F94 80058B94 2463FFF8 */ addiu $v1, $v1, -8 -/* 33F98 80058B98 02031823 */ subu $v1, $s0, $v1 -/* 33F9C 80058B9C 30630FFF */ andi $v1, $v1, 0xfff -/* 33FA0 80058BA0 00031B00 */ sll $v1, $v1, 0xc -/* 33FA4 80058BA4 32640FFF */ andi $a0, $s3, 0xfff -/* 33FA8 80058BA8 3C050400 */ lui $a1, 0x400 -/* 33FAC 80058BAC 00852025 */ or $a0, $a0, $a1 -/* 33FB0 80058BB0 00641825 */ or $v1, $v1, $a0 -/* 33FB4 80058BB4 00481023 */ subu $v0, $v0, $t0 -/* 33FB8 80058BB8 ACC30000 */ sw $v1, ($a2) -/* 33FBC 80058BBC 080162F2 */ j .L80058BC8 -/* 33FC0 80058BC0 ACC20004 */ sw $v0, 4($a2) -.L80058BC4: -/* 33FC4 80058BC4 0000402D */ daddu $t0, $zero, $zero -.L80058BC8: -/* 33FC8 80058BC8 32A20002 */ andi $v0, $s5, 2 -/* 33FCC 80058BCC 10400009 */ beqz $v0, .L80058BF4 -/* 33FD0 80058BD0 0220202D */ daddu $a0, $s1, $zero -/* 33FD4 80058BD4 26310008 */ addiu $s1, $s1, 8 -/* 33FD8 80058BD8 3C031FFF */ lui $v1, 0x1fff -/* 33FDC 80058BDC 3C020F00 */ lui $v0, 0xf00 -/* 33FE0 80058BE0 AC820000 */ sw $v0, ($a0) -/* 33FE4 80058BE4 8E420004 */ lw $v0, 4($s2) -/* 33FE8 80058BE8 3463FFFF */ ori $v1, $v1, 0xffff -/* 33FEC 80058BEC 00431024 */ and $v0, $v0, $v1 -/* 33FF0 80058BF0 AC820004 */ sw $v0, 4($a0) -.L80058BF4: -/* 33FF4 80058BF4 3C0700FF */ lui $a3, 0xff -/* 33FF8 80058BF8 34E7FFFF */ ori $a3, $a3, 0xffff -/* 33FFC 80058BFC 26220008 */ addiu $v0, $s1, 8 -/* 34000 80058C00 0220302D */ daddu $a2, $s1, $zero -/* 34004 80058C04 00152700 */ sll $a0, $s5, 0x1c -/* 34008 80058C08 00161840 */ sll $v1, $s6, 1 -/* 3400C 80058C0C 30630FFF */ andi $v1, $v1, 0xfff -/* 34010 80058C10 00031C00 */ sll $v1, $v1, 0x10 -/* 34014 80058C14 00832025 */ or $a0, $a0, $v1 -/* 34018 80058C18 00081B00 */ sll $v1, $t0, 0xc -/* 3401C 80058C1C 00832025 */ or $a0, $a0, $v1 -/* 34020 80058C20 32850FFF */ andi $a1, $s4, 0xfff -/* 34024 80058C24 8E430000 */ lw $v1, ($s2) -/* 34028 80058C28 00852025 */ or $a0, $a0, $a1 -/* 3402C 80058C2C ACC40004 */ sw $a0, 4($a2) -/* 34030 80058C30 3C040100 */ lui $a0, 0x100 -/* 34034 80058C34 00671824 */ and $v1, $v1, $a3 -/* 34038 80058C38 00641825 */ or $v1, $v1, $a0 -/* 3403C 80058C3C ACC30000 */ sw $v1, ($a2) -/* 34040 80058C40 AE40002C */ sw $zero, 0x2c($s2) -/* 34044 80058C44 8FBF002C */ lw $ra, 0x2c($sp) -/* 34048 80058C48 8FB60028 */ lw $s6, 0x28($sp) -/* 3404C 80058C4C 8FB50024 */ lw $s5, 0x24($sp) -/* 34050 80058C50 8FB40020 */ lw $s4, 0x20($sp) -/* 34054 80058C54 8FB3001C */ lw $s3, 0x1c($sp) -/* 34058 80058C58 8FB20018 */ lw $s2, 0x18($sp) -/* 3405C 80058C5C 8FB10014 */ lw $s1, 0x14($sp) -/* 34060 80058C60 8FB00010 */ lw $s0, 0x10($sp) -/* 34064 80058C64 03E00008 */ jr $ra -/* 34068 80058C68 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/33450/func_80058C6C.s b/ver/us/asm/nonmatchings/33450/func_80058C6C.s deleted file mode 100644 index 02b9e5cd70..0000000000 --- a/ver/us/asm/nonmatchings/33450/func_80058C6C.s +++ /dev/null @@ -1,106 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_80098938 -.double 65535.0 - -.section .text - -glabel func_80058C6C -/* 3406C 80058C6C 8FA20010 */ lw $v0, 0x10($sp) -/* 34070 80058C70 1440000B */ bnez $v0, .L80058CA0 -/* 34074 80058C74 8FA50014 */ lw $a1, 0x14($sp) -/* 34078 80058C78 462E603E */ c.le.d $f12, $f14 -/* 3407C 80058C7C 00000000 */ nop -/* 34080 80058C80 45020005 */ bc1fl .L80058C98 -/* 34084 80058C84 A4A00000 */ sh $zero, ($a1) -/* 34088 80058C88 3402FFFF */ ori $v0, $zero, 0xffff -/* 3408C 80058C8C A4A20000 */ sh $v0, ($a1) -/* 34090 80058C90 03E00008 */ jr $ra -/* 34094 80058C94 24027FFF */ addiu $v0, $zero, 0x7fff -.L80058C98: -/* 34098 80058C98 03E00008 */ jr $ra -/* 3409C 80058C9C 0000102D */ daddu $v0, $zero, $zero -.L80058CA0: -/* 340A0 80058CA0 3C013FF0 */ lui $at, 0x3ff0 -/* 340A4 80058CA4 44812800 */ mtc1 $at, $f5 -/* 340A8 80058CA8 44802000 */ mtc1 $zero, $f4 -/* 340AC 80058CAC 44820000 */ mtc1 $v0, $f0 -/* 340B0 80058CB0 00000000 */ nop -/* 340B4 80058CB4 46800021 */ cvt.d.w $f0, $f0 -/* 340B8 80058CB8 4624703C */ c.lt.d $f14, $f4 -/* 340BC 80058CBC 00000000 */ nop -/* 340C0 80058CC0 45000002 */ bc1f .L80058CCC -/* 340C4 80058CC4 46202083 */ div.d $f2, $f4, $f0 -/* 340C8 80058CC8 46202386 */ mov.d $f14, $f4 -.L80058CCC: -/* 340CC 80058CCC 44800000 */ mtc1 $zero, $f0 -/* 340D0 80058CD0 44800800 */ mtc1 $zero, $f1 -/* 340D4 80058CD4 00000000 */ nop -/* 340D8 80058CD8 4620603E */ c.le.d $f12, $f0 -/* 340DC 80058CDC 00000000 */ nop -/* 340E0 80058CE0 45030001 */ bc1tl .L80058CE8 -/* 340E4 80058CE4 46202306 */ mov.d $f12, $f4 -.L80058CE8: -/* 340E8 80058CE8 462C7001 */ sub.d $f0, $f14, $f12 -/* 340EC 80058CEC 46220002 */ mul.d $f0, $f0, $f2 -/* 340F0 80058CF0 00000000 */ nop -/* 340F4 80058CF4 3C014020 */ lui $at, 0x4020 -/* 340F8 80058CF8 44811800 */ mtc1 $at, $f3 -/* 340FC 80058CFC 44801000 */ mtc1 $zero, $f2 -/* 34100 80058D00 00000000 */ nop -/* 34104 80058D04 46220002 */ mul.d $f0, $f0, $f2 -/* 34108 80058D08 00000000 */ nop -/* 3410C 80058D0C 4620018D */ trunc.w.d $f6, $f0 -/* 34110 80058D10 44033000 */ mfc1 $v1, $f6 -/* 34114 80058D14 00000000 */ nop -/* 34118 80058D18 00031400 */ sll $v0, $v1, 0x10 -/* 3411C 80058D1C 00021403 */ sra $v0, $v0, 0x10 -/* 34120 80058D20 44821000 */ mtc1 $v0, $f2 -/* 34124 80058D24 00000000 */ nop -/* 34128 80058D28 468010A1 */ cvt.d.w $f2, $f2 -/* 3412C 80058D2C 46220001 */ sub.d $f0, $f0, $f2 -/* 34130 80058D30 46240000 */ add.d $f0, $f0, $f4 -/* 34134 80058D34 4620018D */ trunc.w.d $f6, $f0 -/* 34138 80058D38 44043000 */ mfc1 $a0, $f6 -/* 3413C 80058D3C 00000000 */ nop -/* 34140 80058D40 00041400 */ sll $v0, $a0, 0x10 -/* 34144 80058D44 00021403 */ sra $v0, $v0, 0x10 -/* 34148 80058D48 44821000 */ mtc1 $v0, $f2 -/* 3414C 80058D4C 00000000 */ nop -/* 34150 80058D50 468010A1 */ cvt.d.w $f2, $f2 -/* 34154 80058D54 46220001 */ sub.d $f0, $f0, $f2 -/* 34158 80058D58 3C01800A */ lui $at, %hi(D_80098938) -/* 3415C 80058D5C D4228938 */ ldc1 $f2, %lo(D_80098938)($at) -/* 34160 80058D60 46220002 */ mul.d $f0, $f0, $f2 -/* 34164 80058D64 00000000 */ nop -/* 34168 80058D68 2463FFFF */ addiu $v1, $v1, -1 -/* 3416C 80058D6C 3C0141E0 */ lui $at, 0x41e0 -/* 34170 80058D70 44811800 */ mtc1 $at, $f3 -/* 34174 80058D74 44801000 */ mtc1 $zero, $f2 -/* 34178 80058D78 00000000 */ nop -/* 3417C 80058D7C 4620103E */ c.le.d $f2, $f0 -/* 34180 80058D80 00000000 */ nop -/* 34184 80058D84 45010005 */ bc1t .L80058D9C -/* 34188 80058D88 00641821 */ addu $v1, $v1, $a0 -/* 3418C 80058D8C 4620018D */ trunc.w.d $f6, $f0 -/* 34190 80058D90 44043000 */ mfc1 $a0, $f6 -/* 34194 80058D94 0801636E */ j .L80058DB8 -/* 34198 80058D98 A4A40000 */ sh $a0, ($a1) -.L80058D9C: -/* 3419C 80058D9C 46220001 */ sub.d $f0, $f0, $f2 -/* 341A0 80058DA0 3C028000 */ lui $v0, 0x8000 -/* 341A4 80058DA4 4620018D */ trunc.w.d $f6, $f0 -/* 341A8 80058DA8 44043000 */ mfc1 $a0, $f6 -/* 341AC 80058DAC 00000000 */ nop -/* 341B0 80058DB0 00822025 */ or $a0, $a0, $v0 -/* 341B4 80058DB4 A4A40000 */ sh $a0, ($a1) -.L80058DB8: -/* 341B8 80058DB8 00031400 */ sll $v0, $v1, 0x10 -/* 341BC 80058DBC 03E00008 */ jr $ra -/* 341C0 80058DC0 00021403 */ sra $v0, $v0, 0x10 -/* 341C4 80058DC4 00000000 */ nop -/* 341C8 80058DC8 00000000 */ nop -/* 341CC 80058DCC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/341d0/func_80058DD0.s b/ver/us/asm/nonmatchings/341d0/func_80058DD0.s deleted file mode 100644 index f648c4a19f..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_80058DD0.s +++ /dev/null @@ -1,51 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80058DD0 -/* 341D0 80058DD0 24050007 */ addiu $a1, $zero, 7 -/* 341D4 80058DD4 2486000E */ addiu $a2, $a0, 0xe -/* 341D8 80058DD8 84830000 */ lh $v1, ($a0) -/* 341DC 80058DDC 24020001 */ addiu $v0, $zero, 1 -/* 341E0 80058DE0 AC82002C */ sw $v0, 0x2c($a0) -/* 341E4 80058DE4 00431807 */ srav $v1, $v1, $v0 -/* 341E8 80058DE8 0060382D */ daddu $a3, $v1, $zero -/* 341EC 80058DEC 24024000 */ addiu $v0, $zero, 0x4000 -/* 341F0 80058DF0 00431023 */ subu $v0, $v0, $v1 -/* 341F4 80058DF4 A4820002 */ sh $v0, 2($a0) -.L80058DF8: -/* 341F8 80058DF8 A4C00008 */ sh $zero, 8($a2) -/* 341FC 80058DFC 24A5FFFF */ addiu $a1, $a1, -1 -/* 34200 80058E00 04A1FFFD */ bgez $a1, .L80058DF8 -/* 34204 80058E04 24C6FFFE */ addiu $a2, $a2, -2 -/* 34208 80058E08 00071400 */ sll $v0, $a3, 0x10 -/* 3420C 80058E0C 00021403 */ sra $v0, $v0, 0x10 -/* 34210 80058E10 3C013F10 */ lui $at, 0x3f10 -/* 34214 80058E14 44811800 */ mtc1 $at, $f3 -/* 34218 80058E18 44801000 */ mtc1 $zero, $f2 -/* 3421C 80058E1C 44820000 */ mtc1 $v0, $f0 -/* 34220 80058E20 00000000 */ nop -/* 34224 80058E24 46800021 */ cvt.d.w $f0, $f0 -/* 34228 80058E28 46220082 */ mul.d $f2, $f0, $f2 -/* 3422C 80058E2C 00000000 */ nop -/* 34230 80058E30 24050009 */ addiu $a1, $zero, 9 -/* 34234 80058E34 3C0140D0 */ lui $at, 0x40d0 -/* 34238 80058E38 44813800 */ mtc1 $at, $f7 -/* 3423C 80058E3C 44803000 */ mtc1 $zero, $f6 -/* 34240 80058E40 24830012 */ addiu $v1, $a0, 0x12 -/* 34244 80058E44 A4870018 */ sh $a3, 0x18($a0) -/* 34248 80058E48 46201106 */ mov.d $f4, $f2 -.L80058E4C: -/* 3424C 80058E4C 46241082 */ mul.d $f2, $f2, $f4 -/* 34250 80058E50 00000000 */ nop -/* 34254 80058E54 46261002 */ mul.d $f0, $f2, $f6 -/* 34258 80058E58 00000000 */ nop -/* 3425C 80058E5C 24A50001 */ addiu $a1, $a1, 1 -/* 34260 80058E60 4620020D */ trunc.w.d $f8, $f0 -/* 34264 80058E64 44024000 */ mfc1 $v0, $f8 -/* 34268 80058E68 00000000 */ nop -/* 3426C 80058E6C A4620008 */ sh $v0, 8($v1) -/* 34270 80058E70 28A20010 */ slti $v0, $a1, 0x10 -/* 34274 80058E74 1440FFF5 */ bnez $v0, .L80058E4C -/* 34278 80058E78 24630002 */ addiu $v1, $v1, 2 -/* 3427C 80058E7C 03E00008 */ jr $ra -/* 34280 80058E80 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/341d0/func_80058E84.s b/ver/us/asm/nonmatchings/341d0/func_80058E84.s deleted file mode 100644 index 226b4c4634..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_80058E84.s +++ /dev/null @@ -1,70 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80058E84 -/* 34284 80058E84 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 34288 80058E88 AFB3001C */ sw $s3, 0x1c($sp) -/* 3428C 80058E8C 0080982D */ daddu $s3, $a0, $zero -/* 34290 80058E90 AFB20018 */ sw $s2, 0x18($sp) -/* 34294 80058E94 00C0902D */ daddu $s2, $a2, $zero -/* 34298 80058E98 0240202D */ daddu $a0, $s2, $zero -/* 3429C 80058E9C AFB40020 */ sw $s4, 0x20($sp) -/* 342A0 80058EA0 00A0A02D */ daddu $s4, $a1, $zero -/* 342A4 80058EA4 24050004 */ addiu $a1, $zero, 4 -/* 342A8 80058EA8 24060030 */ addiu $a2, $zero, 0x30 -/* 342AC 80058EAC AFBF0024 */ sw $ra, 0x24($sp) -/* 342B0 80058EB0 AFB10014 */ sw $s1, 0x14($sp) -/* 342B4 80058EB4 0C015FE4 */ jal alHeapAlloc -/* 342B8 80058EB8 AFB00010 */ sw $s0, 0x10($sp) -/* 342BC 80058EBC 0240202D */ daddu $a0, $s2, $zero -/* 342C0 80058EC0 24050A10 */ addiu $a1, $zero, 0xa10 -/* 342C4 80058EC4 24060002 */ addiu $a2, $zero, 2 -/* 342C8 80058EC8 0C015FE4 */ jal alHeapAlloc -/* 342CC 80058ECC AE62000C */ sw $v0, 0xc($s3) -/* 342D0 80058ED0 0000882D */ daddu $s1, $zero, $zero -/* 342D4 80058ED4 AE620000 */ sw $v0, ($s3) -/* 342D8 80058ED8 0240202D */ daddu $a0, $s2, $zero -.L80058EDC: -/* 342DC 80058EDC 24050001 */ addiu $a1, $zero, 1 -/* 342E0 80058EE0 24060010 */ addiu $a2, $zero, 0x10 -/* 342E4 80058EE4 3223FFFF */ andi $v1, $s1, 0xffff -/* 342E8 80058EE8 00A31004 */ sllv $v0, $v1, $a1 -/* 342EC 80058EEC 00431021 */ addu $v0, $v0, $v1 -/* 342F0 80058EF0 8E70000C */ lw $s0, 0xc($s3) -/* 342F4 80058EF4 00021100 */ sll $v0, $v0, 4 -/* 342F8 80058EF8 0C015FE4 */ jal alHeapAlloc -/* 342FC 80058EFC 02028021 */ addu $s0, $s0, $v0 -/* 34300 80058F00 0240202D */ daddu $a0, $s2, $zero -/* 34304 80058F04 24050001 */ addiu $a1, $zero, 1 -/* 34308 80058F08 24060020 */ addiu $a2, $zero, 0x20 -/* 3430C 80058F0C 0C015FE4 */ jal alHeapAlloc -/* 34310 80058F10 AE02002C */ sw $v0, 0x2c($s0) -/* 34314 80058F14 0240202D */ daddu $a0, $s2, $zero -/* 34318 80058F18 24050001 */ addiu $a1, $zero, 1 -/* 3431C 80058F1C 8E03002C */ lw $v1, 0x2c($s0) -/* 34320 80058F20 24060030 */ addiu $a2, $zero, 0x30 -/* 34324 80058F24 0C015FE4 */ jal alHeapAlloc -/* 34328 80058F28 AC620000 */ sw $v0, ($v1) -/* 3432C 80058F2C 0240202D */ daddu $a0, $s2, $zero -/* 34330 80058F30 24050001 */ addiu $a1, $zero, 1 -/* 34334 80058F34 24060008 */ addiu $a2, $zero, 8 -/* 34338 80058F38 0C015FE4 */ jal alHeapAlloc -/* 3433C 80058F3C AE020024 */ sw $v0, 0x24($s0) -/* 34340 80058F40 8E030024 */ lw $v1, 0x24($s0) -/* 34344 80058F44 26310001 */ addiu $s1, $s1, 1 -/* 34348 80058F48 AC620028 */ sw $v0, 0x28($v1) -/* 3434C 80058F4C 3222FFFF */ andi $v0, $s1, 0xffff -/* 34350 80058F50 2C420004 */ sltiu $v0, $v0, 4 -/* 34354 80058F54 1440FFE1 */ bnez $v0, .L80058EDC -/* 34358 80058F58 0240202D */ daddu $a0, $s2, $zero -/* 3435C 80058F5C 0260202D */ daddu $a0, $s3, $zero -/* 34360 80058F60 0C016413 */ jal func_8005904C -/* 34364 80058F64 328500FF */ andi $a1, $s4, 0xff -/* 34368 80058F68 8FBF0024 */ lw $ra, 0x24($sp) -/* 3436C 80058F6C 8FB40020 */ lw $s4, 0x20($sp) -/* 34370 80058F70 8FB3001C */ lw $s3, 0x1c($sp) -/* 34374 80058F74 8FB20018 */ lw $s2, 0x18($sp) -/* 34378 80058F78 8FB10014 */ lw $s1, 0x14($sp) -/* 3437C 80058F7C 8FB00010 */ lw $s0, 0x10($sp) -/* 34380 80058F80 03E00008 */ jr $ra -/* 34384 80058F84 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/341d0/func_80058F88.s b/ver/us/asm/nonmatchings/341d0/func_80058F88.s deleted file mode 100644 index 2aec790b72..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_80058F88.s +++ /dev/null @@ -1,36 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80058F88 -/* 34388 80058F88 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 3438C 80058F8C AFB10014 */ sw $s1, 0x14($sp) -/* 34390 80058F90 0080882D */ daddu $s1, $a0, $zero -/* 34394 80058F94 AFB00010 */ sw $s0, 0x10($sp) -/* 34398 80058F98 00A0802D */ daddu $s0, $a1, $zero -/* 3439C 80058F9C 0200202D */ daddu $a0, $s0, $zero -/* 343A0 80058FA0 24051420 */ addiu $a1, $zero, 0x1420 -/* 343A4 80058FA4 AFBF0018 */ sw $ra, 0x18($sp) -/* 343A8 80058FA8 0C015FE4 */ jal alHeapAlloc -/* 343AC 80058FAC 24060002 */ addiu $a2, $zero, 2 -/* 343B0 80058FB0 0200202D */ daddu $a0, $s0, $zero -/* 343B4 80058FB4 24050001 */ addiu $a1, $zero, 1 -/* 343B8 80058FB8 24060030 */ addiu $a2, $zero, 0x30 -/* 343BC 80058FBC 0C015FE4 */ jal alHeapAlloc -/* 343C0 80058FC0 AE220000 */ sw $v0, ($s1) -/* 343C4 80058FC4 0200202D */ daddu $a0, $s0, $zero -/* 343C8 80058FC8 24050001 */ addiu $a1, $zero, 1 -/* 343CC 80058FCC 24060008 */ addiu $a2, $zero, 8 -/* 343D0 80058FD0 0C015FE4 */ jal alHeapAlloc -/* 343D4 80058FD4 AE220010 */ sw $v0, 0x10($s1) -/* 343D8 80058FD8 0220202D */ daddu $a0, $s1, $zero -/* 343DC 80058FDC 0000282D */ daddu $a1, $zero, $zero -/* 343E0 80058FE0 00A0302D */ daddu $a2, $a1, $zero -/* 343E4 80058FE4 8C830010 */ lw $v1, 0x10($a0) -/* 343E8 80058FE8 24075000 */ addiu $a3, $zero, 0x5000 -/* 343EC 80058FEC 0C016402 */ jal func_80059008 -/* 343F0 80058FF0 AC620028 */ sw $v0, 0x28($v1) -/* 343F4 80058FF4 8FBF0018 */ lw $ra, 0x18($sp) -/* 343F8 80058FF8 8FB10014 */ lw $s1, 0x14($sp) -/* 343FC 80058FFC 8FB00010 */ lw $s0, 0x10($sp) -/* 34400 80059000 03E00008 */ jr $ra -/* 34404 80059004 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/341d0/func_8005904C.s b/ver/us/asm/nonmatchings/341d0/func_8005904C.s deleted file mode 100644 index bd415395cc..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_8005904C.s +++ /dev/null @@ -1,210 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_80098940 -.word .L80059094_34494, .L800590F4_344F4, .L800590AC_344AC, .L800590B8_344B8, .L800590A0_344A0, .L800590C4_344C4, .L800590D0_344D0, .L800590DC_344DC, .L800590E8_344E8, .L800590F4_344F4 - -dlabel D_80098968 -.double 173123.404906676 - -.section .text - -glabel func_8005904C -/* 3444C 8005904C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 34450 80059050 AFB3001C */ sw $s3, 0x1c($sp) -/* 34454 80059054 0080982D */ daddu $s3, $a0, $zero -/* 34458 80059058 30A500FF */ andi $a1, $a1, 0xff -/* 3445C 8005905C 24A5FFFF */ addiu $a1, $a1, -1 -/* 34460 80059060 2CA2000A */ sltiu $v0, $a1, 0xa -/* 34464 80059064 AFBF0020 */ sw $ra, 0x20($sp) -/* 34468 80059068 AFB20018 */ sw $s2, 0x18($sp) -/* 3446C 8005906C AFB10014 */ sw $s1, 0x14($sp) -/* 34470 80059070 AFB00010 */ sw $s0, 0x10($sp) -/* 34474 80059074 8E660000 */ lw $a2, ($s3) -/* 34478 80059078 10400021 */ beqz $v0, .L80059100 -/* 3447C 8005907C 00051080 */ sll $v0, $a1, 2 -/* 34480 80059080 3C01800A */ lui $at, %hi(jtbl_80098940) -/* 34484 80059084 00220821 */ addu $at, $at, $v0 -/* 34488 80059088 8C228940 */ lw $v0, %lo(jtbl_80098940)($at) -/* 3448C 8005908C 00400008 */ jr $v0 -/* 34490 80059090 00000000 */ nop -.L80059094_34494: -/* 34494 80059094 3C048008 */ lui $a0, %hi(D_8007EFE0) -/* 34498 80059098 08016442 */ j .L80059108 -/* 3449C 8005909C 2484EFE0 */ addiu $a0, $a0, %lo(D_8007EFE0) -.L800590A0_344A0: -/* 344A0 800590A0 3C048008 */ lui $a0, %hi(D_8007F158) -/* 344A4 800590A4 08016442 */ j .L80059108 -/* 344A8 800590A8 2484F158 */ addiu $a0, $a0, %lo(D_8007F158) -.L800590AC_344AC: -/* 344AC 800590AC 3C048008 */ lui $a0, %hi(D_8007F180) -/* 344B0 800590B0 08016442 */ j .L80059108 -/* 344B4 800590B4 2484F180 */ addiu $a0, $a0, %lo(D_8007F180) -.L800590B8_344B8: -/* 344B8 800590B8 3C048008 */ lui $a0, %hi(D_8007F1A8) -/* 344BC 800590BC 08016442 */ j .L80059108 -/* 344C0 800590C0 2484F1A8 */ addiu $a0, $a0, %lo(D_8007F1A8) -.L800590C4_344C4: -/* 344C4 800590C4 3C048008 */ lui $a0, %hi(D_8007F1F8) -/* 344C8 800590C8 08016442 */ j .L80059108 -/* 344CC 800590CC 8C84F1F8 */ lw $a0, %lo(D_8007F1F8)($a0) -.L800590D0_344D0: -/* 344D0 800590D0 3C048008 */ lui $a0, %hi(D_8007F1FC) -/* 344D4 800590D4 08016442 */ j .L80059108 -/* 344D8 800590D8 8C84F1FC */ lw $a0, %lo(D_8007F1FC)($a0) -.L800590DC_344DC: -/* 344DC 800590DC 3C048008 */ lui $a0, %hi(D_8007F200) -/* 344E0 800590E0 08016442 */ j .L80059108 -/* 344E4 800590E4 8C84F200 */ lw $a0, %lo(D_8007F200)($a0) -.L800590E8_344E8: -/* 344E8 800590E8 3C048008 */ lui $a0, %hi(D_8007F204) -/* 344EC 800590EC 08016442 */ j .L80059108 -/* 344F0 800590F0 8C84F204 */ lw $a0, %lo(D_8007F204)($a0) -.L800590F4_344F4: -/* 344F4 800590F4 3C048008 */ lui $a0, %hi(D_8007F048) -/* 344F8 800590F8 08016442 */ j .L80059108 -/* 344FC 800590FC 2484F048 */ addiu $a0, $a0, %lo(D_8007F048) -.L80059100: -/* 34500 80059100 3C048008 */ lui $a0, %hi(D_8007F1D0) -/* 34504 80059104 2484F1D0 */ addiu $a0, $a0, %lo(D_8007F1D0) -.L80059108: -/* 34508 80059108 90820003 */ lbu $v0, 3($a0) -/* 3450C 8005910C A2620010 */ sb $v0, 0x10($s3) -/* 34510 80059110 8C830004 */ lw $v1, 4($a0) -/* 34514 80059114 8E620000 */ lw $v0, ($s3) -/* 34518 80059118 24110507 */ addiu $s1, $zero, 0x507 -/* 3451C 8005911C AE620004 */ sw $v0, 4($s3) -/* 34520 80059120 00031040 */ sll $v0, $v1, 1 -/* 34524 80059124 00431021 */ addu $v0, $v0, $v1 -/* 34528 80059128 000210C0 */ sll $v0, $v0, 3 -/* 3452C 8005912C 00431023 */ subu $v0, $v0, $v1 -/* 34530 80059130 000210C0 */ sll $v0, $v0, 3 -/* 34534 80059134 AE620008 */ sw $v0, 8($s3) -.L80059138: -/* 34538 80059138 ACC00000 */ sw $zero, ($a2) -/* 3453C 8005913C 2631FFFF */ addiu $s1, $s1, -1 -/* 34540 80059140 0621FFFD */ bgez $s1, .L80059138 -/* 34544 80059144 24C60004 */ addiu $a2, $a2, 4 -/* 34548 80059148 92620010 */ lbu $v0, 0x10($s3) -/* 3454C 8005914C 10400069 */ beqz $v0, .L800592F4 -/* 34550 80059150 0000882D */ daddu $s1, $zero, $zero -/* 34554 80059154 0220902D */ daddu $s2, $s1, $zero -/* 34558 80059158 24020002 */ addiu $v0, $zero, 2 -/* 3455C 8005915C 00421004 */ sllv $v0, $v0, $v0 -/* 34560 80059160 00448021 */ addu $s0, $v0, $a0 -.L80059164: -/* 34564 80059164 8E62000C */ lw $v0, 0xc($s3) -/* 34568 80059168 8E030000 */ lw $v1, ($s0) -/* 3456C 8005916C 26100004 */ addiu $s0, $s0, 4 -/* 34570 80059170 00522021 */ addu $a0, $v0, $s2 -/* 34574 80059174 00031040 */ sll $v0, $v1, 1 -/* 34578 80059178 00431021 */ addu $v0, $v0, $v1 -/* 3457C 8005917C 000210C0 */ sll $v0, $v0, 3 -/* 34580 80059180 00431023 */ subu $v0, $v0, $v1 -/* 34584 80059184 000210C0 */ sll $v0, $v0, 3 -/* 34588 80059188 AC820000 */ sw $v0, ($a0) -/* 3458C 8005918C 8E030000 */ lw $v1, ($s0) -/* 34590 80059190 26100004 */ addiu $s0, $s0, 4 -/* 34594 80059194 00031040 */ sll $v0, $v1, 1 -/* 34598 80059198 00431021 */ addu $v0, $v0, $v1 -/* 3459C 8005919C 000210C0 */ sll $v0, $v0, 3 -/* 345A0 800591A0 00431023 */ subu $v0, $v0, $v1 -/* 345A4 800591A4 000210C0 */ sll $v0, $v0, 3 -/* 345A8 800591A8 AC820004 */ sw $v0, 4($a0) -/* 345AC 800591AC 96020002 */ lhu $v0, 2($s0) -/* 345B0 800591B0 26100004 */ addiu $s0, $s0, 4 -/* 345B4 800591B4 A482000A */ sh $v0, 0xa($a0) -/* 345B8 800591B8 96020002 */ lhu $v0, 2($s0) -/* 345BC 800591BC 26100004 */ addiu $s0, $s0, 4 -/* 345C0 800591C0 A4820008 */ sh $v0, 8($a0) -/* 345C4 800591C4 96020002 */ lhu $v0, 2($s0) -/* 345C8 800591C8 26100004 */ addiu $s0, $s0, 4 -/* 345CC 800591CC A482000C */ sh $v0, 0xc($a0) -/* 345D0 800591D0 8E020000 */ lw $v0, ($s0) -/* 345D4 800591D4 50400033 */ beql $v0, $zero, .L800592A4 -/* 345D8 800591D8 AC800028 */ sw $zero, 0x28($a0) -/* 345DC 800591DC 26100004 */ addiu $s0, $s0, 4 -/* 345E0 800591E0 44820000 */ mtc1 $v0, $f0 -/* 345E4 800591E4 00000000 */ nop -/* 345E8 800591E8 46800020 */ cvt.s.w $f0, $f0 -/* 345EC 800591EC 3C01447A */ lui $at, 0x447a -/* 345F0 800591F0 44811000 */ mtc1 $at, $f2 -/* 345F4 800591F4 8C830004 */ lw $v1, 4($a0) -/* 345F8 800591F8 8C820000 */ lw $v0, ($a0) -/* 345FC 800591FC 46020003 */ div.s $f0, $f0, $f2 -/* 34600 80059200 46000021 */ cvt.d.s $f0, $f0 -/* 34604 80059204 00621823 */ subu $v1, $v1, $v0 -/* 34608 80059208 46200000 */ add.d $f0, $f0, $f0 -/* 3460C 8005920C 3C028008 */ lui $v0, %hi(D_80078E50) -/* 34610 80059210 8C428E50 */ lw $v0, %lo(D_80078E50)($v0) -/* 34614 80059214 44832000 */ mtc1 $v1, $f4 -/* 34618 80059218 00000000 */ nop -/* 3461C 8005921C 46802121 */ cvt.d.w $f4, $f4 -/* 34620 80059220 C4420008 */ lwc1 $f2, 8($v0) -/* 34624 80059224 468010A1 */ cvt.d.w $f2, $f2 -/* 34628 80059228 46220003 */ div.d $f0, $f0, $f2 -/* 3462C 8005922C 46200020 */ cvt.s.d $f0, $f0 -/* 34630 80059230 E4800010 */ swc1 $f0, 0x10($a0) -/* 34634 80059234 C6000000 */ lwc1 $f0, ($s0) -/* 34638 80059238 46800020 */ cvt.s.w $f0, $f0 -/* 3463C 8005923C 26100004 */ addiu $s0, $s0, 4 -/* 34640 80059240 3C01800A */ lui $at, %hi(D_80098968) -/* 34644 80059244 D4228968 */ ldc1 $f2, %lo(D_80098968)($at) -/* 34648 80059248 46000021 */ cvt.d.s $f0, $f0 -/* 3464C 8005924C 04610006 */ bgez $v1, .L80059268 -/* 34650 80059250 46220083 */ div.d $f2, $f0, $f2 -/* 34654 80059254 3C0141F0 */ lui $at, 0x41f0 -/* 34658 80059258 44810800 */ mtc1 $at, $f1 -/* 3465C 8005925C 44800000 */ mtc1 $zero, $f0 -/* 34660 80059260 00000000 */ nop -/* 34664 80059264 46202100 */ add.d $f4, $f4, $f0 -.L80059268: -/* 34668 80059268 46241002 */ mul.d $f0, $f2, $f4 -/* 3466C 8005926C 00000000 */ nop -/* 34670 80059270 3C013F80 */ lui $at, 0x3f80 -/* 34674 80059274 44811000 */ mtc1 $at, $f2 -/* 34678 80059278 8C82002C */ lw $v0, 0x2c($a0) -/* 3467C 8005927C AC800018 */ sw $zero, 0x18($a0) -/* 34680 80059280 E4820014 */ swc1 $f2, 0x14($a0) -/* 34684 80059284 AC820028 */ sw $v0, 0x28($a0) -/* 34688 80059288 46200020 */ cvt.s.d $f0, $f0 -/* 3468C 8005928C E480001C */ swc1 $f0, 0x1c($a0) -/* 34690 80059290 AC400008 */ sw $zero, 8($v0) -/* 34694 80059294 8C830028 */ lw $v1, 0x28($a0) -/* 34698 80059298 24020001 */ addiu $v0, $zero, 1 -/* 3469C 8005929C 080164AA */ j .L800592A8 -/* 346A0 800592A0 AC62000C */ sw $v0, 0xc($v1) -.L800592A4: -/* 346A4 800592A4 26100008 */ addiu $s0, $s0, 8 -.L800592A8: -/* 346A8 800592A8 8E020000 */ lw $v0, ($s0) -/* 346AC 800592AC 5040000A */ beql $v0, $zero, .L800592D8 -/* 346B0 800592B0 AC800020 */ sw $zero, 0x20($a0) -/* 346B4 800592B4 8C830024 */ lw $v1, 0x24($a0) -/* 346B8 800592B8 AC830020 */ sw $v1, 0x20($a0) -/* 346BC 800592BC 96020002 */ lhu $v0, 2($s0) -/* 346C0 800592C0 A4620000 */ sh $v0, ($v1) -/* 346C4 800592C4 8C840020 */ lw $a0, 0x20($a0) -/* 346C8 800592C8 0C016374 */ jal func_80058DD0 -/* 346CC 800592CC 26100004 */ addiu $s0, $s0, 4 -/* 346D0 800592D0 080164B8 */ j .L800592E0 -/* 346D4 800592D4 26520030 */ addiu $s2, $s2, 0x30 -.L800592D8: -/* 346D8 800592D8 26100004 */ addiu $s0, $s0, 4 -/* 346DC 800592DC 26520030 */ addiu $s2, $s2, 0x30 -.L800592E0: -/* 346E0 800592E0 92620010 */ lbu $v0, 0x10($s3) -/* 346E4 800592E4 26310001 */ addiu $s1, $s1, 1 -/* 346E8 800592E8 0222102A */ slt $v0, $s1, $v0 -/* 346EC 800592EC 1440FF9D */ bnez $v0, .L80059164 -/* 346F0 800592F0 00000000 */ nop -.L800592F4: -/* 346F4 800592F4 8FBF0020 */ lw $ra, 0x20($sp) -/* 346F8 800592F8 8FB3001C */ lw $s3, 0x1c($sp) -/* 346FC 800592FC 8FB20018 */ lw $s2, 0x18($sp) -/* 34700 80059300 8FB10014 */ lw $s1, 0x14($sp) -/* 34704 80059304 8FB00010 */ lw $s0, 0x10($sp) -/* 34708 80059308 03E00008 */ jr $ra -/* 3470C 8005930C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/341d0/func_800598A0.s b/ver/us/asm/nonmatchings/341d0/func_800598A0.s deleted file mode 100644 index 590a6b80d3..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_800598A0.s +++ /dev/null @@ -1,158 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_80098970 -.word .L800598D0_34CD0, .L800598FC_34CFC, .L8005994C_34D4C, .L80059928_34D28, .L80059970_34D70, .L80059994_34D94, .L800599F0_34DF0, .L80059A6C_34E6C - -dlabel D_80098990 -.double 173123.404906676, 0.0 - -.section .text - -glabel func_800598A0 -/* 34CA0 800598A0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 34CA4 800598A4 00063400 */ sll $a2, $a2, 0x10 -/* 34CA8 800598A8 00063403 */ sra $a2, $a2, 0x10 -/* 34CAC 800598AC 2CC20008 */ sltiu $v0, $a2, 8 -/* 34CB0 800598B0 1040007D */ beqz $v0, .L80059AA8 -/* 34CB4 800598B4 AFBF0010 */ sw $ra, 0x10($sp) -/* 34CB8 800598B8 00061080 */ sll $v0, $a2, 2 -/* 34CBC 800598BC 3C01800A */ lui $at, %hi(jtbl_80098970) -/* 34CC0 800598C0 00220821 */ addu $at, $at, $v0 -/* 34CC4 800598C4 8C228970 */ lw $v0, %lo(jtbl_80098970)($at) -/* 34CC8 800598C8 00400008 */ jr $v0 -/* 34CCC 800598CC 00000000 */ nop -.L800598D0_34CD0: -/* 34CD0 800598D0 00051400 */ sll $v0, $a1, 0x10 -/* 34CD4 800598D4 00021403 */ sra $v0, $v0, 0x10 -/* 34CD8 800598D8 00021840 */ sll $v1, $v0, 1 -/* 34CDC 800598DC 00621821 */ addu $v1, $v1, $v0 -/* 34CE0 800598E0 8C82000C */ lw $v0, 0xc($a0) -/* 34CE4 800598E4 00031900 */ sll $v1, $v1, 4 -/* 34CE8 800598E8 00621821 */ addu $v1, $v1, $v0 -/* 34CEC 800598EC 2402FFF8 */ addiu $v0, $zero, -8 -/* 34CF0 800598F0 00E21024 */ and $v0, $a3, $v0 -/* 34CF4 800598F4 080166AA */ j .L80059AA8 -/* 34CF8 800598F8 AC620000 */ sw $v0, ($v1) -.L800598FC_34CFC: -/* 34CFC 800598FC 00051400 */ sll $v0, $a1, 0x10 -/* 34D00 80059900 00021403 */ sra $v0, $v0, 0x10 -/* 34D04 80059904 00021840 */ sll $v1, $v0, 1 -/* 34D08 80059908 00621821 */ addu $v1, $v1, $v0 -/* 34D0C 8005990C 8C82000C */ lw $v0, 0xc($a0) -/* 34D10 80059910 00031900 */ sll $v1, $v1, 4 -/* 34D14 80059914 00621821 */ addu $v1, $v1, $v0 -/* 34D18 80059918 2402FFF8 */ addiu $v0, $zero, -8 -/* 34D1C 8005991C 00E21024 */ and $v0, $a3, $v0 -/* 34D20 80059920 080166AA */ j .L80059AA8 -/* 34D24 80059924 AC620004 */ sw $v0, 4($v1) -.L80059928_34D28: -/* 34D28 80059928 00051400 */ sll $v0, $a1, 0x10 -/* 34D2C 8005992C 00021403 */ sra $v0, $v0, 0x10 -/* 34D30 80059930 00021840 */ sll $v1, $v0, 1 -/* 34D34 80059934 00621821 */ addu $v1, $v1, $v0 -/* 34D38 80059938 8C82000C */ lw $v0, 0xc($a0) -/* 34D3C 8005993C 00031900 */ sll $v1, $v1, 4 -/* 34D40 80059940 00621821 */ addu $v1, $v1, $v0 -/* 34D44 80059944 080166AA */ j .L80059AA8 -/* 34D48 80059948 A4670008 */ sh $a3, 8($v1) -.L8005994C_34D4C: -/* 34D4C 8005994C 00051400 */ sll $v0, $a1, 0x10 -/* 34D50 80059950 00021403 */ sra $v0, $v0, 0x10 -/* 34D54 80059954 00021840 */ sll $v1, $v0, 1 -/* 34D58 80059958 00621821 */ addu $v1, $v1, $v0 -/* 34D5C 8005995C 8C82000C */ lw $v0, 0xc($a0) -/* 34D60 80059960 00031900 */ sll $v1, $v1, 4 -/* 34D64 80059964 00621821 */ addu $v1, $v1, $v0 -/* 34D68 80059968 080166AA */ j .L80059AA8 -/* 34D6C 8005996C A467000A */ sh $a3, 0xa($v1) -.L80059970_34D70: -/* 34D70 80059970 00051400 */ sll $v0, $a1, 0x10 -/* 34D74 80059974 00021403 */ sra $v0, $v0, 0x10 -/* 34D78 80059978 00021840 */ sll $v1, $v0, 1 -/* 34D7C 8005997C 00621821 */ addu $v1, $v1, $v0 -/* 34D80 80059980 8C82000C */ lw $v0, 0xc($a0) -/* 34D84 80059984 00031900 */ sll $v1, $v1, 4 -/* 34D88 80059988 00621821 */ addu $v1, $v1, $v0 -/* 34D8C 8005998C 080166AA */ j .L80059AA8 -/* 34D90 80059990 A467000C */ sh $a3, 0xc($v1) -.L80059994_34D94: -/* 34D94 80059994 00051400 */ sll $v0, $a1, 0x10 -/* 34D98 80059998 00021403 */ sra $v0, $v0, 0x10 -/* 34D9C 8005999C 00021840 */ sll $v1, $v0, 1 -/* 34DA0 800599A0 00621821 */ addu $v1, $v1, $v0 -/* 34DA4 800599A4 00031900 */ sll $v1, $v1, 4 -/* 34DA8 800599A8 44870000 */ mtc1 $a3, $f0 -/* 34DAC 800599AC 00000000 */ nop -/* 34DB0 800599B0 46800020 */ cvt.s.w $f0, $f0 -/* 34DB4 800599B4 3C01447A */ lui $at, 0x447a -/* 34DB8 800599B8 44811000 */ mtc1 $at, $f2 -/* 34DBC 800599BC 8C82000C */ lw $v0, 0xc($a0) -/* 34DC0 800599C0 3C048008 */ lui $a0, %hi(D_80078E50) -/* 34DC4 800599C4 8C848E50 */ lw $a0, %lo(D_80078E50)($a0) -/* 34DC8 800599C8 46020003 */ div.s $f0, $f0, $f2 -/* 34DCC 800599CC 46000021 */ cvt.d.s $f0, $f0 -/* 34DD0 800599D0 46200000 */ add.d $f0, $f0, $f0 -/* 34DD4 800599D4 00621821 */ addu $v1, $v1, $v0 -/* 34DD8 800599D8 C4820008 */ lwc1 $f2, 8($a0) -/* 34DDC 800599DC 468010A1 */ cvt.d.w $f2, $f2 -/* 34DE0 800599E0 46220003 */ div.d $f0, $f0, $f2 -/* 34DE4 800599E4 46200020 */ cvt.s.d $f0, $f0 -/* 34DE8 800599E8 080166AA */ j .L80059AA8 -/* 34DEC 800599EC E4600010 */ swc1 $f0, 0x10($v1) -.L800599F0_34DF0: -/* 34DF0 800599F0 00051400 */ sll $v0, $a1, 0x10 -/* 34DF4 800599F4 00021403 */ sra $v0, $v0, 0x10 -/* 34DF8 800599F8 00021840 */ sll $v1, $v0, 1 -/* 34DFC 800599FC 00621821 */ addu $v1, $v1, $v0 -/* 34E00 80059A00 00031900 */ sll $v1, $v1, 4 -/* 34E04 80059A04 44870000 */ mtc1 $a3, $f0 -/* 34E08 80059A08 00000000 */ nop -/* 34E0C 80059A0C 46800020 */ cvt.s.w $f0, $f0 -/* 34E10 80059A10 46000021 */ cvt.d.s $f0, $f0 -/* 34E14 80059A14 8C82000C */ lw $v0, 0xc($a0) -/* 34E18 80059A18 3C01800A */ lui $at, %hi(D_80098990) -/* 34E1C 80059A1C D4228990 */ ldc1 $f2, %lo(D_80098990)($at) -/* 34E20 80059A20 00622021 */ addu $a0, $v1, $v0 -/* 34E24 80059A24 8C830004 */ lw $v1, 4($a0) -/* 34E28 80059A28 8C820000 */ lw $v0, ($a0) -/* 34E2C 80059A2C 00621823 */ subu $v1, $v1, $v0 -/* 34E30 80059A30 44832000 */ mtc1 $v1, $f4 -/* 34E34 80059A34 00000000 */ nop -/* 34E38 80059A38 46802121 */ cvt.d.w $f4, $f4 -/* 34E3C 80059A3C 04610006 */ bgez $v1, .L80059A58 -/* 34E40 80059A40 46220083 */ div.d $f2, $f0, $f2 -/* 34E44 80059A44 3C0141F0 */ lui $at, 0x41f0 -/* 34E48 80059A48 44810800 */ mtc1 $at, $f1 -/* 34E4C 80059A4C 44800000 */ mtc1 $zero, $f0 -/* 34E50 80059A50 00000000 */ nop -/* 34E54 80059A54 46202100 */ add.d $f4, $f4, $f0 -.L80059A58: -/* 34E58 80059A58 46241002 */ mul.d $f0, $f2, $f4 -/* 34E5C 80059A5C 00000000 */ nop -/* 34E60 80059A60 46200020 */ cvt.s.d $f0, $f0 -/* 34E64 80059A64 080166AA */ j .L80059AA8 -/* 34E68 80059A68 E480001C */ swc1 $f0, 0x1c($a0) -.L80059A6C_34E6C: -/* 34E6C 80059A6C 00051400 */ sll $v0, $a1, 0x10 -/* 34E70 80059A70 00021403 */ sra $v0, $v0, 0x10 -/* 34E74 80059A74 00021840 */ sll $v1, $v0, 1 -/* 34E78 80059A78 00621821 */ addu $v1, $v1, $v0 -/* 34E7C 80059A7C 8C82000C */ lw $v0, 0xc($a0) -/* 34E80 80059A80 00031900 */ sll $v1, $v1, 4 -/* 34E84 80059A84 00621021 */ addu $v0, $v1, $v0 -/* 34E88 80059A88 8C420020 */ lw $v0, 0x20($v0) -/* 34E8C 80059A8C 10400006 */ beqz $v0, .L80059AA8 -/* 34E90 80059A90 00000000 */ nop -/* 34E94 80059A94 A4470000 */ sh $a3, ($v0) -/* 34E98 80059A98 8C82000C */ lw $v0, 0xc($a0) -/* 34E9C 80059A9C 00621021 */ addu $v0, $v1, $v0 -/* 34EA0 80059AA0 0C016374 */ jal func_80058DD0 -/* 34EA4 80059AA4 8C440020 */ lw $a0, 0x20($v0) -.L80059AA8: -/* 34EA8 80059AA8 8FBF0010 */ lw $ra, 0x10($sp) -/* 34EAC 80059AAC 0000102D */ daddu $v0, $zero, $zero -/* 34EB0 80059AB0 03E00008 */ jr $ra -/* 34EB4 80059AB4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/341d0/func_80059AB8.s b/ver/us/asm/nonmatchings/341d0/func_80059AB8.s deleted file mode 100644 index 9cac4b6bae..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_80059AB8.s +++ /dev/null @@ -1,77 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80059AB8 -/* 34EB8 80059AB8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 34EBC 80059ABC AFB50024 */ sw $s5, 0x24($sp) -/* 34EC0 80059AC0 0080A82D */ daddu $s5, $a0, $zero -/* 34EC4 80059AC4 00A0202D */ daddu $a0, $a1, $zero -/* 34EC8 80059AC8 AFB60028 */ sw $s6, 0x28($sp) -/* 34ECC 80059ACC 00C0B02D */ daddu $s6, $a2, $zero -/* 34ED0 80059AD0 AFB40020 */ sw $s4, 0x20($sp) -/* 34ED4 80059AD4 8FB40040 */ lw $s4, 0x40($sp) -/* 34ED8 80059AD8 00073840 */ sll $a3, $a3, 1 -/* 34EDC 80059ADC AFB00010 */ sw $s0, 0x10($sp) -/* 34EE0 80059AE0 00878021 */ addu $s0, $a0, $a3 -/* 34EE4 80059AE4 AFBF002C */ sw $ra, 0x2c($sp) -/* 34EE8 80059AE8 AFB3001C */ sw $s3, 0x1c($sp) -/* 34EEC 80059AEC AFB20018 */ sw $s2, 0x18($sp) -/* 34EF0 80059AF0 AFB10014 */ sw $s1, 0x14($sp) -/* 34EF4 80059AF4 8EA20008 */ lw $v0, 8($s5) -/* 34EF8 80059AF8 8EA30000 */ lw $v1, ($s5) -/* 34EFC 80059AFC 00021040 */ sll $v0, $v0, 1 -/* 34F00 80059B00 00623021 */ addu $a2, $v1, $v0 -/* 34F04 80059B04 00D0102B */ sltu $v0, $a2, $s0 -/* 34F08 80059B08 1040001C */ beqz $v0, .L80059B7C -/* 34F0C 80059B0C 0280902D */ daddu $s2, $s4, $zero -/* 34F10 80059B10 26940008 */ addiu $s4, $s4, 8 -/* 34F14 80059B14 00C48823 */ subu $s1, $a2, $a0 -/* 34F18 80059B18 00118843 */ sra $s1, $s1, 1 -/* 34F1C 80059B1C 00118840 */ sll $s1, $s1, 1 -/* 34F20 80059B20 32230FFF */ andi $v1, $s1, 0xfff -/* 34F24 80059B24 00031B00 */ sll $v1, $v1, 0xc -/* 34F28 80059B28 32C20FFF */ andi $v0, $s6, 0xfff -/* 34F2C 80059B2C 3C130400 */ lui $s3, 0x400 -/* 34F30 80059B30 00531025 */ or $v0, $v0, $s3 -/* 34F34 80059B34 00621825 */ or $v1, $v1, $v0 -/* 34F38 80059B38 02068023 */ subu $s0, $s0, $a2 -/* 34F3C 80059B3C 00108043 */ sra $s0, $s0, 1 -/* 34F40 80059B40 0C0187A4 */ jal osVirtualToPhysical -/* 34F44 80059B44 AE430000 */ sw $v1, ($s2) -/* 34F48 80059B48 AE420004 */ sw $v0, 4($s2) -/* 34F4C 80059B4C 0280902D */ daddu $s2, $s4, $zero -/* 34F50 80059B50 00108040 */ sll $s0, $s0, 1 -/* 34F54 80059B54 32100FFF */ andi $s0, $s0, 0xfff -/* 34F58 80059B58 00108300 */ sll $s0, $s0, 0xc -/* 34F5C 80059B5C 02D18821 */ addu $s1, $s6, $s1 -/* 34F60 80059B60 32310FFF */ andi $s1, $s1, 0xfff -/* 34F64 80059B64 02338825 */ or $s1, $s1, $s3 -/* 34F68 80059B68 02118025 */ or $s0, $s0, $s1 -/* 34F6C 80059B6C AE500000 */ sw $s0, ($s2) -/* 34F70 80059B70 8EA40000 */ lw $a0, ($s5) -/* 34F74 80059B74 080166E7 */ j .L80059B9C -/* 34F78 80059B78 26940008 */ addiu $s4, $s4, 8 -.L80059B7C: -/* 34F7C 80059B7C 26940008 */ addiu $s4, $s4, 8 -/* 34F80 80059B80 30E20FFF */ andi $v0, $a3, 0xfff -/* 34F84 80059B84 00021300 */ sll $v0, $v0, 0xc -/* 34F88 80059B88 32C30FFF */ andi $v1, $s6, 0xfff -/* 34F8C 80059B8C 3C050400 */ lui $a1, 0x400 -/* 34F90 80059B90 00651825 */ or $v1, $v1, $a1 -/* 34F94 80059B94 00431025 */ or $v0, $v0, $v1 -/* 34F98 80059B98 AE420000 */ sw $v0, ($s2) -.L80059B9C: -/* 34F9C 80059B9C 0C0187A4 */ jal osVirtualToPhysical -/* 34FA0 80059BA0 00000000 */ nop -/* 34FA4 80059BA4 AE420004 */ sw $v0, 4($s2) -/* 34FA8 80059BA8 0280102D */ daddu $v0, $s4, $zero -/* 34FAC 80059BAC 8FBF002C */ lw $ra, 0x2c($sp) -/* 34FB0 80059BB0 8FB60028 */ lw $s6, 0x28($sp) -/* 34FB4 80059BB4 8FB50024 */ lw $s5, 0x24($sp) -/* 34FB8 80059BB8 8FB40020 */ lw $s4, 0x20($sp) -/* 34FBC 80059BBC 8FB3001C */ lw $s3, 0x1c($sp) -/* 34FC0 80059BC0 8FB20018 */ lw $s2, 0x18($sp) -/* 34FC4 80059BC4 8FB10014 */ lw $s1, 0x14($sp) -/* 34FC8 80059BC8 8FB00010 */ lw $s0, 0x10($sp) -/* 34FCC 80059BCC 03E00008 */ jr $ra -/* 34FD0 80059BD0 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/341d0/func_80059BD4.s b/ver/us/asm/nonmatchings/341d0/func_80059BD4.s deleted file mode 100644 index 7a4c0126ba..0000000000 --- a/ver/us/asm/nonmatchings/341d0/func_80059BD4.s +++ /dev/null @@ -1,50 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80059BD4 -/* 34FD4 80059BD4 C4800010 */ lwc1 $f0, 0x10($a0) -/* 34FD8 80059BD8 44851000 */ mtc1 $a1, $f2 -/* 34FDC 80059BDC 00000000 */ nop -/* 34FE0 80059BE0 468010A0 */ cvt.s.w $f2, $f2 -/* 34FE4 80059BE4 46020002 */ mul.s $f0, $f0, $f2 -/* 34FE8 80059BE8 00000000 */ nop -/* 34FEC 80059BEC C4820014 */ lwc1 $f2, 0x14($a0) -/* 34FF0 80059BF0 46001080 */ add.s $f2, $f2, $f0 -/* 34FF4 80059BF4 24820014 */ addiu $v0, $a0, 0x14 -/* 34FF8 80059BF8 3C014000 */ lui $at, 0x4000 -/* 34FFC 80059BFC 44810800 */ mtc1 $at, $f1 -/* 35000 80059C00 44800000 */ mtc1 $zero, $f0 -/* 35004 80059C04 46001121 */ cvt.d.s $f4, $f2 -/* 35008 80059C08 4624003C */ c.lt.d $f0, $f4 -/* 3500C 80059C0C 00000000 */ nop -/* 35010 80059C10 45000008 */ bc1f .L80059C34 -/* 35014 80059C14 E4820014 */ swc1 $f2, 0x14($a0) -/* 35018 80059C18 3C014010 */ lui $at, 0x4010 -/* 3501C 80059C1C 44810800 */ mtc1 $at, $f1 -/* 35020 80059C20 44800000 */ mtc1 $zero, $f0 -/* 35024 80059C24 00000000 */ nop -/* 35028 80059C28 46202001 */ sub.d $f0, $f4, $f0 -/* 3502C 80059C2C 0801670E */ j .L80059C38 -/* 35030 80059C30 46200020 */ cvt.s.d $f0, $f0 -.L80059C34: -/* 35034 80059C34 46001006 */ mov.s $f0, $f2 -.L80059C38: -/* 35038 80059C38 E4400000 */ swc1 $f0, ($v0) -/* 3503C 80059C3C C4820014 */ lwc1 $f2, 0x14($a0) -/* 35040 80059C40 44800000 */ mtc1 $zero, $f0 -/* 35044 80059C44 00000000 */ nop -/* 35048 80059C48 4600103C */ c.lt.s $f2, $f0 -/* 3504C 80059C4C 00000000 */ nop -/* 35050 80059C50 45030001 */ bc1tl .L80059C58 -/* 35054 80059C54 46001087 */ neg.s $f2, $f2 -.L80059C58: -/* 35058 80059C58 3C013FF0 */ lui $at, 0x3ff0 -/* 3505C 80059C5C 44810800 */ mtc1 $at, $f1 -/* 35060 80059C60 44800000 */ mtc1 $zero, $f0 -/* 35064 80059C64 460010A1 */ cvt.d.s $f2, $f2 -/* 35068 80059C68 46201081 */ sub.d $f2, $f2, $f0 -/* 3506C 80059C6C C480001C */ lwc1 $f0, 0x1c($a0) -/* 35070 80059C70 462010A0 */ cvt.s.d $f2, $f2 -/* 35074 80059C74 46020002 */ mul.s $f0, $f0, $f2 -/* 35078 80059C78 03E00008 */ jr $ra -/* 3507C 80059C7C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/a5dd0_len_114e0/func_80114B58.s b/ver/us/asm/nonmatchings/a5dd0_len_114e0/func_80114B58.s deleted file mode 100644 index ad30e768a9..0000000000 --- a/ver/us/asm/nonmatchings/a5dd0_len_114e0/func_80114B58.s +++ /dev/null @@ -1,147 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80114B58 -/* AB258 80114B58 3C028015 */ lui $v0, %hi(mdl_nextTextureAddress) -/* AB25C 80114B5C 8C423368 */ lw $v0, %lo(mdl_nextTextureAddress)($v0) -/* AB260 80114B60 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* AB264 80114B64 AFB1002C */ sw $s1, 0x2c($sp) -/* AB268 80114B68 0080882D */ daddu $s1, $a0, $zero -/* AB26C 80114B6C AFB20030 */ sw $s2, 0x30($sp) -/* AB270 80114B70 00A0902D */ daddu $s2, $a1, $zero -/* AB274 80114B74 AFB70044 */ sw $s7, 0x44($sp) -/* AB278 80114B78 00C0B82D */ daddu $s7, $a2, $zero -/* AB27C 80114B7C AFB40038 */ sw $s4, 0x38($sp) -/* AB280 80114B80 AFBF0048 */ sw $ra, 0x48($sp) -/* AB284 80114B84 AFB60040 */ sw $s6, 0x40($sp) -/* AB288 80114B88 AFB5003C */ sw $s5, 0x3c($sp) -/* AB28C 80114B8C AFB30034 */ sw $s3, 0x34($sp) -/* AB290 80114B90 AFB00028 */ sw $s0, 0x28($sp) -/* AB294 80114B94 AE420034 */ sw $v0, 0x34($s2) -/* AB298 80114B98 8FB30060 */ lw $s3, 0x60($sp) -/* AB29C 80114B9C 8FB50064 */ lw $s5, 0x64($sp) -/* AB2A0 80114BA0 8FB60068 */ lw $s6, 0x68($sp) -/* AB2A4 80114BA4 12600004 */ beqz $s3, .L80114BB8 -/* AB2A8 80114BA8 00E0A02D */ daddu $s4, $a3, $zero -/* AB2AC 80114BAC 00541021 */ addu $v0, $v0, $s4 -/* AB2B0 80114BB0 080452EF */ j .L80114BBC -/* AB2B4 80114BB4 AE420038 */ sw $v0, 0x38($s2) -.L80114BB8: -/* AB2B8 80114BB8 AE400038 */ sw $zero, 0x38($s2) -.L80114BBC: -/* AB2BC 80114BBC 0220202D */ daddu $a0, $s1, $zero -/* AB2C0 80114BC0 3C108015 */ lui $s0, %hi(mdl_nextTextureAddress) -/* AB2C4 80114BC4 26103368 */ addiu $s0, $s0, %lo(mdl_nextTextureAddress) -/* AB2C8 80114BC8 02342821 */ addu $a1, $s1, $s4 -/* AB2CC 80114BCC 8E060000 */ lw $a2, ($s0) -/* AB2D0 80114BD0 0C00A5CF */ jal dma_copy -/* AB2D4 80114BD4 00B32821 */ addu $a1, $a1, $s3 -/* AB2D8 80114BD8 02931021 */ addu $v0, $s4, $s3 -/* AB2DC 80114BDC 8E030000 */ lw $v1, ($s0) -/* AB2E0 80114BE0 02228821 */ addu $s1, $s1, $v0 -/* AB2E4 80114BE4 00621021 */ addu $v0, $v1, $v0 -/* AB2E8 80114BE8 12A00013 */ beqz $s5, .L80114C38 -/* AB2EC 80114BEC AE020000 */ sw $v0, ($s0) -/* AB2F0 80114BF0 12C00004 */ beqz $s6, .L80114C04 -/* AB2F4 80114BF4 AE42003C */ sw $v0, 0x3c($s2) -/* AB2F8 80114BF8 00551021 */ addu $v0, $v0, $s5 -/* AB2FC 80114BFC 08045302 */ j .L80114C08 -/* AB300 80114C00 AE420040 */ sw $v0, 0x40($s2) -.L80114C04: -/* AB304 80114C04 AE400040 */ sw $zero, 0x40($s2) -.L80114C08: -/* AB308 80114C08 0220202D */ daddu $a0, $s1, $zero -/* AB30C 80114C0C 3C108015 */ lui $s0, %hi(mdl_nextTextureAddress) -/* AB310 80114C10 26103368 */ addiu $s0, $s0, %lo(mdl_nextTextureAddress) -/* AB314 80114C14 00952821 */ addu $a1, $a0, $s5 -/* AB318 80114C18 8E060000 */ lw $a2, ($s0) -/* AB31C 80114C1C 0C00A5CF */ jal dma_copy -/* AB320 80114C20 00B62821 */ addu $a1, $a1, $s6 -/* AB324 80114C24 8E020000 */ lw $v0, ($s0) -/* AB328 80114C28 02B61821 */ addu $v1, $s5, $s6 -/* AB32C 80114C2C 00431021 */ addu $v0, $v0, $v1 -/* AB330 80114C30 08045310 */ j .L80114C40 -/* AB334 80114C34 AE020000 */ sw $v0, ($s0) -.L80114C38: -/* AB338 80114C38 AE400040 */ sw $zero, 0x40($s2) -/* AB33C 80114C3C AE40003C */ sw $zero, 0x3c($s2) -.L80114C40: -/* AB340 80114C40 26450004 */ addiu $a1, $s2, 4 -/* AB344 80114C44 02E0202D */ daddu $a0, $s7, $zero -/* AB348 80114C48 02E51025 */ or $v0, $s7, $a1 -/* AB34C 80114C4C 3C038015 */ lui $v1, %hi(mdl_nextTextureAddress) -/* AB350 80114C50 8C633368 */ lw $v1, %lo(mdl_nextTextureAddress)($v1) -/* AB354 80114C54 30420003 */ andi $v0, $v0, 3 -/* AB358 80114C58 10400017 */ beqz $v0, .L80114CB8 -/* AB35C 80114C5C AE430000 */ sw $v1, ($s2) -/* AB360 80114C60 26E20030 */ addiu $v0, $s7, 0x30 -.L80114C64: -/* AB364 80114C64 88880000 */ lwl $t0, ($a0) -/* AB368 80114C68 98880003 */ lwr $t0, 3($a0) -/* AB36C 80114C6C 88890004 */ lwl $t1, 4($a0) -/* AB370 80114C70 98890007 */ lwr $t1, 7($a0) -/* AB374 80114C74 888A0008 */ lwl $t2, 8($a0) -/* AB378 80114C78 988A000B */ lwr $t2, 0xb($a0) -/* AB37C 80114C7C 888B000C */ lwl $t3, 0xc($a0) -/* AB380 80114C80 988B000F */ lwr $t3, 0xf($a0) -/* AB384 80114C84 A8A80000 */ swl $t0, ($a1) -/* AB388 80114C88 B8A80003 */ swr $t0, 3($a1) -/* AB38C 80114C8C A8A90004 */ swl $t1, 4($a1) -/* AB390 80114C90 B8A90007 */ swr $t1, 7($a1) -/* AB394 80114C94 A8AA0008 */ swl $t2, 8($a1) -/* AB398 80114C98 B8AA000B */ swr $t2, 0xb($a1) -/* AB39C 80114C9C A8AB000C */ swl $t3, 0xc($a1) -/* AB3A0 80114CA0 B8AB000F */ swr $t3, 0xf($a1) -/* AB3A4 80114CA4 24840010 */ addiu $a0, $a0, 0x10 -/* AB3A8 80114CA8 1482FFEE */ bne $a0, $v0, .L80114C64 -/* AB3AC 80114CAC 24A50010 */ addiu $a1, $a1, 0x10 -/* AB3B0 80114CB0 0804533A */ j .L80114CE8 -/* AB3B4 80114CB4 00000000 */ nop -.L80114CB8: -/* AB3B8 80114CB8 26E20030 */ addiu $v0, $s7, 0x30 -.L80114CBC: -/* AB3BC 80114CBC 8C880000 */ lw $t0, ($a0) -/* AB3C0 80114CC0 8C890004 */ lw $t1, 4($a0) -/* AB3C4 80114CC4 8C8A0008 */ lw $t2, 8($a0) -/* AB3C8 80114CC8 8C8B000C */ lw $t3, 0xc($a0) -/* AB3CC 80114CCC ACA80000 */ sw $t0, ($a1) -/* AB3D0 80114CD0 ACA90004 */ sw $t1, 4($a1) -/* AB3D4 80114CD4 ACAA0008 */ sw $t2, 8($a1) -/* AB3D8 80114CD8 ACAB000C */ sw $t3, 0xc($a1) -/* AB3DC 80114CDC 24840010 */ addiu $a0, $a0, 0x10 -/* AB3E0 80114CE0 1482FFF6 */ bne $a0, $v0, .L80114CBC -/* AB3E4 80114CE4 24A50010 */ addiu $a1, $a1, 0x10 -.L80114CE8: -/* AB3E8 80114CE8 8E42003C */ lw $v0, 0x3c($s2) -/* AB3EC 80114CEC 02E0202D */ daddu $a0, $s7, $zero -/* AB3F0 80114CF0 AFA20010 */ sw $v0, 0x10($sp) -/* AB3F4 80114CF4 8E420040 */ lw $v0, 0x40($s2) -/* AB3F8 80114CF8 3C108015 */ lui $s0, %hi(mdl_nextTextureAddress) -/* AB3FC 80114CFC 26103368 */ addiu $s0, $s0, %lo(mdl_nextTextureAddress) -/* AB400 80114D00 AFA00018 */ sw $zero, 0x18($sp) -/* AB404 80114D04 AFA0001C */ sw $zero, 0x1c($sp) -/* AB408 80114D08 AFA00020 */ sw $zero, 0x20($sp) -/* AB40C 80114D0C AFA00024 */ sw $zero, 0x24($sp) -/* AB410 80114D10 AFA20014 */ sw $v0, 0x14($sp) -/* AB414 80114D14 8E460034 */ lw $a2, 0x34($s2) -/* AB418 80114D18 8E470038 */ lw $a3, 0x38($s2) -/* AB41C 80114D1C 0C04603A */ jal func_801180E8 -/* AB420 80114D20 0200282D */ daddu $a1, $s0, $zero -/* AB424 80114D24 8E020000 */ lw $v0, ($s0) -/* AB428 80114D28 0040182D */ daddu $v1, $v0, $zero -/* AB42C 80114D2C 24420008 */ addiu $v0, $v0, 8 -/* AB430 80114D30 AE020000 */ sw $v0, ($s0) -/* AB434 80114D34 3C02DF00 */ lui $v0, 0xdf00 -/* AB438 80114D38 AC620000 */ sw $v0, ($v1) -/* AB43C 80114D3C AC600004 */ sw $zero, 4($v1) -/* AB440 80114D40 8FBF0048 */ lw $ra, 0x48($sp) -/* AB444 80114D44 8FB70044 */ lw $s7, 0x44($sp) -/* AB448 80114D48 8FB60040 */ lw $s6, 0x40($sp) -/* AB44C 80114D4C 8FB5003C */ lw $s5, 0x3c($sp) -/* AB450 80114D50 8FB40038 */ lw $s4, 0x38($sp) -/* AB454 80114D54 8FB30034 */ lw $s3, 0x34($sp) -/* AB458 80114D58 8FB20030 */ lw $s2, 0x30($sp) -/* AB45C 80114D5C 8FB1002C */ lw $s1, 0x2c($sp) -/* AB460 80114D60 8FB00028 */ lw $s0, 0x28($sp) -/* AB464 80114D64 03E00008 */ jr $ra -/* AB468 80114D68 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/ver/us/asm/nonmatchings/25f00_len_940/func_8004B328.s b/ver/us/asm/nonmatchings/audio/25f00_len_940/func_8004B328.s similarity index 100% rename from ver/us/asm/nonmatchings/25f00_len_940/func_8004B328.s rename to ver/us/asm/nonmatchings/audio/25f00_len_940/func_8004B328.s diff --git a/ver/us/asm/nonmatchings/28910_len_5090/snd_get_player_with_song_name.s b/ver/us/asm/nonmatchings/audio/28910_len_5090/au_bgm_get_player_with_song_name.s similarity index 74% rename from ver/us/asm/nonmatchings/28910_len_5090/snd_get_player_with_song_name.s rename to ver/us/asm/nonmatchings/audio/28910_len_5090/au_bgm_get_player_with_song_name.s index 296720e98a..17695ce61e 100644 --- a/ver/us/asm/nonmatchings/28910_len_5090/snd_get_player_with_song_name.s +++ b/ver/us/asm/nonmatchings/audio/28910_len_5090/au_bgm_get_player_with_song_name.s @@ -1,9 +1,9 @@ .set noat # allow manual use of $at .set noreorder # don't insert nops after branches -glabel snd_get_player_with_song_name -/* 28B94 8004D794 3C05800A */ lui $a1, %hi(D_8009A664) -/* 28B98 8004D798 8CA5A664 */ lw $a1, %lo(D_8009A664)($a1) +glabel au_bgm_get_player_with_song_name +/* 28B94 8004D794 3C05800A */ lui $a1, %hi(gBGMPlayerA) +/* 28B98 8004D798 8CA5A664 */ lw $a1, %lo(gBGMPlayerA)($a1) /* 28B9C 8004D79C 8CA30000 */ lw $v1, ($a1) /* 28BA0 8004D7A0 8C62005C */ lw $v0, 0x5c($v1) /* 28BA4 8004D7A4 8C420008 */ lw $v0, 8($v0) @@ -13,8 +13,8 @@ glabel snd_get_player_with_song_name /* 28BB4 8004D7B4 8C420008 */ lw $v0, 8($v0) /* 28BB8 8004D7B8 14820007 */ bne $a0, $v0, .L8004D7D8 /* 28BBC 8004D7BC 00000000 */ nop -/* 28BC0 8004D7C0 3C02800A */ lui $v0, %hi(D_8009A5FC) -/* 28BC4 8004D7C4 8C42A5FC */ lw $v0, %lo(D_8009A5FC)($v0) +/* 28BC0 8004D7C0 3C02800A */ lui $v0, %hi(gBGMPlayerB) +/* 28BC4 8004D7C4 8C42A5FC */ lw $v0, %lo(gBGMPlayerB)($v0) /* 28BC8 8004D7C8 03E00008 */ jr $ra /* 28BCC 8004D7CC 00000000 */ nop .L8004D7D0: diff --git a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E0F4.s b/ver/us/asm/nonmatchings/audio/28910_len_5090/func_8004E0F4.s similarity index 95% rename from ver/us/asm/nonmatchings/28910_len_5090/func_8004E0F4.s rename to ver/us/asm/nonmatchings/audio/28910_len_5090/func_8004E0F4.s index 593dc3e3a0..73f36c5598 100644 --- a/ver/us/asm/nonmatchings/28910_len_5090/func_8004E0F4.s +++ b/ver/us/asm/nonmatchings/audio/28910_len_5090/func_8004E0F4.s @@ -10,7 +10,7 @@ glabel func_8004E0F4 /* 29508 8004E108 8E240000 */ lw $a0, ($s1) /* 2950C 8004E10C 1080000B */ beqz $a0, .L8004E13C /* 29510 8004E110 0000802D */ daddu $s0, $zero, $zero -/* 29514 8004E114 0C0135E5 */ jal snd_get_player_with_song_name +/* 29514 8004E114 0C0135E5 */ jal au_bgm_get_player_with_song_name /* 29518 8004E118 00000000 */ nop /* 2951C 8004E11C 50400008 */ beql $v0, $zero, .L8004E140 /* 29520 8004E120 24100002 */ addiu $s0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/2BF90/func_80051434.s b/ver/us/asm/nonmatchings/audio/2BF90/func_80051434.s similarity index 97% rename from ver/us/asm/nonmatchings/2BF90/func_80051434.s rename to ver/us/asm/nonmatchings/audio/2BF90/func_80051434.s index 52f7135799..3f97c765e1 100644 --- a/ver/us/asm/nonmatchings/2BF90/func_80051434.s +++ b/ver/us/asm/nonmatchings/audio/2BF90/func_80051434.s @@ -34,7 +34,7 @@ glabel func_80051434 /* 2C8A4 800514A4 14500005 */ bne $v0, $s0, .L800514BC /* 2C8A8 800514A8 00000000 */ nop /* 2C8AC 800514AC 8FA40070 */ lw $a0, 0x70($sp) -/* 2C8B0 800514B0 0C01487A */ jal func_800521E8 +/* 2C8B0 800514B0 0C01487A */ jal au_mseq_player_stop /* 2C8B4 800514B4 02A0282D */ daddu $a1, $s5, $zero /* 2C8B8 800514B8 A2A00043 */ sb $zero, 0x43($s5) .L800514BC: @@ -57,8 +57,8 @@ glabel func_80051434 /* 2C8FC 800514FC AEA20038 */ sw $v0, 0x38($s5) /* 2C900 80051500 1470000D */ bne $v1, $s0, .L80051538 /* 2C904 80051504 24020002 */ addiu $v0, $zero, 2 -/* 2C908 80051508 3C028008 */ lui $v0, %hi(D_80078520) -/* 2C90C 8005150C 24428520 */ addiu $v0, $v0, %lo(D_80078520) +/* 2C908 80051508 3C028008 */ lui $v0, %hi(BlankMseqData) +/* 2C90C 8005150C 24428520 */ addiu $v0, $v0, %lo(BlankMseqData) /* 2C910 80051510 AEA20008 */ sw $v0, 8($s5) /* 2C914 80051514 08014552 */ j .L80051548 /* 2C918 80051518 AEA30018 */ sw $v1, 0x18($s5) @@ -66,7 +66,7 @@ glabel func_80051434 /* 2C91C 8005151C 8FA40070 */ lw $a0, 0x70($sp) /* 2C920 80051520 02A0282D */ daddu $a1, $s5, $zero /* 2C924 80051524 AEA00008 */ sw $zero, 8($s5) -/* 2C928 80051528 0C01487A */ jal func_800521E8 +/* 2C928 80051528 0C01487A */ jal au_mseq_player_stop /* 2C92C 8005152C AEA00020 */ sw $zero, 0x20($s5) /* 2C930 80051530 0801482F */ j .L800520BC /* 2C934 80051534 00000000 */ nop @@ -137,7 +137,7 @@ glabel func_80051434 /* 2CA18 80051618 00000000 */ nop /* 2CA1C 8005161C 86420004 */ lh $v0, 4($s2) /* 2CA20 80051620 8664000C */ lh $a0, 0xc($s3) -/* 2CA24 80051624 0C014E3E */ jal snd_tune_param_to_timescale +/* 2CA24 80051624 0C014E3E */ jal au_compute_pitch_ratio /* 2CA28 80051628 00442021 */ addu $a0, $v0, $a0 /* 2CA2C 8005162C 8E620000 */ lw $v0, ($s3) /* 2CA30 80051630 C4420020 */ lwc1 $f2, 0x20($v0) @@ -256,7 +256,7 @@ glabel func_80051434 /* 2CBD4 800517D4 27A80020 */ addiu $t0, $sp, 0x20 /* 2CBD8 800517D8 AFA8003C */ sw $t0, 0x3c($sp) .L800517DC: -/* 2CBDC 800517DC 0C014874 */ jal func_800521D0 +/* 2CBDC 800517DC 0C014874 */ jal au_mseq_read_next /* 2CBE0 800517E0 02A0202D */ daddu $a0, $s5, $zero /* 2CBE4 800517E4 0040802D */ daddu $s0, $v0, $zero /* 2CBE8 800517E8 00101600 */ sll $v0, $s0, 0x18 @@ -266,7 +266,7 @@ glabel func_80051434 /* 2CBF8 800517F8 2C620078 */ sltiu $v0, $v1, 0x78 /* 2CBFC 800517FC 5440022C */ bnel $v0, $zero, .L800520B0 /* 2CC00 80051800 AEA30018 */ sw $v1, 0x18($s5) -/* 2CC04 80051804 0C014874 */ jal func_800521D0 +/* 2CC04 80051804 0C014874 */ jal au_mseq_read_next /* 2CC08 80051808 02A0202D */ daddu $a0, $s5, $zero /* 2CC0C 8005180C 32030007 */ andi $v1, $s0, 7 /* 2CC10 80051810 00031A00 */ sll $v1, $v1, 8 @@ -276,7 +276,7 @@ glabel func_80051434 /* 2CC20 80051820 0801482C */ j .L800520B0 /* 2CC24 80051824 AEA30018 */ sw $v1, 0x18($s5) .L80051828: -/* 2CC28 80051828 0C014874 */ jal func_800521D0 +/* 2CC28 80051828 0C014874 */ jal au_mseq_read_next /* 2CC2C 8005182C 02A0202D */ daddu $a0, $s5, $zero /* 2CC30 80051830 3216000F */ andi $s6, $s0, 0xf /* 2CC34 80051834 00161880 */ sll $v1, $s6, 2 @@ -361,17 +361,17 @@ glabel func_80051434 /* 2CD5C 8005195C 0801482C */ j .L800520B0 /* 2CD60 80051960 00000000 */ nop .L80051964: -/* 2CD64 80051964 0C014E31 */ jal func_800538C4 +/* 2CD64 80051964 0C014E31 */ jal au_reset_voice /* 2CD68 80051968 320500FF */ andi $a1, $s0, 0xff /* 2CD6C 8005196C 0801468F */ j .L80051A3C /* 2CD70 80051970 00000000 */ nop .L80051974: -/* 2CD74 80051974 0C014E31 */ jal func_800538C4 +/* 2CD74 80051974 0C014E31 */ jal au_reset_voice /* 2CD78 80051978 320500FF */ andi $a1, $s0, 0xff /* 2CD7C 8005197C 080146A8 */ j .L80051AA0 /* 2CD80 80051980 00000000 */ nop .L80051984: -/* 2CD84 80051984 0C014874 */ jal func_800521D0 +/* 2CD84 80051984 0C014874 */ jal au_mseq_read_next /* 2CD88 80051988 02A0202D */ daddu $a0, $s5, $zero /* 2CD8C 8005198C 92A30025 */ lbu $v1, 0x25($s5) /* 2CD90 80051990 146001C7 */ bnez $v1, .L800520B0 @@ -517,7 +517,7 @@ glabel func_80051434 /* 2CF94 80051B94 A6220040 */ sh $v0, 0x40($s1) /* 2CF98 80051B98 86420004 */ lh $v0, 4($s2) /* 2CF9C 80051B9C 8664000C */ lh $a0, 0xc($s3) -/* 2CFA0 80051BA0 0C014E3E */ jal snd_tune_param_to_timescale +/* 2CFA0 80051BA0 0C014E3E */ jal au_compute_pitch_ratio /* 2CFA4 80051BA4 00442021 */ addu $a0, $v0, $a0 /* 2CFA8 80051BA8 8E620000 */ lw $v0, ($s3) /* 2CFAC 80051BAC C4420020 */ lwc1 $f2, 0x20($v0) @@ -550,7 +550,7 @@ glabel func_80051434 /* 2D014 80051C14 96060000 */ lhu $a2, ($s0) /* 2D018 80051C18 26270014 */ addiu $a3, $s1, 0x14 /* 2D01C 80051C1C 00062A02 */ srl $a1, $a2, 8 -/* 2D020 80051C20 0C014EFA */ jal func_80053BE8 +/* 2D020 80051C20 0C014EFA */ jal au_get_instrument /* 2D024 80051C24 30C600FF */ andi $a2, $a2, 0xff /* 2D028 80051C28 AE220000 */ sw $v0, ($s1) /* 2D02C 80051C2C 96030002 */ lhu $v1, 2($s0) @@ -573,7 +573,7 @@ glabel func_80051434 /* 2D070 80051C70 00004012 */ mflo $t0 /* 2D074 80051C74 00081383 */ sra $v0, $t0, 0xe /* 2D078 80051C78 A6220040 */ sh $v0, 0x40($s1) -/* 2D07C 80051C7C 0C014E3E */ jal snd_tune_param_to_timescale +/* 2D07C 80051C7C 0C014E3E */ jal au_compute_pitch_ratio /* 2D080 80051C80 86440004 */ lh $a0, 4($s2) /* 2D084 80051C84 8E220000 */ lw $v0, ($s1) /* 2D088 80051C88 C4420020 */ lwc1 $f2, 0x20($v0) @@ -715,7 +715,7 @@ glabel func_80051434 /* 2D288 80051E88 0801482C */ j .L800520B0 /* 2D28C 80051E8C 00000000 */ nop .L80051E90: -/* 2D290 80051E90 0C014874 */ jal func_800521D0 +/* 2D290 80051E90 0C014874 */ jal au_mseq_read_next /* 2D294 80051E94 02A0202D */ daddu $a0, $s5, $zero /* 2D298 80051E98 0040A02D */ daddu $s4, $v0, $zero /* 2D29C 80051E9C 32E300FF */ andi $v1, $s7, 0xff @@ -786,7 +786,7 @@ glabel func_80051434 /* 2D384 80051F84 0801482C */ j .L800520B0 /* 2D388 80051F88 A2620026 */ sb $v0, 0x26($s3) .L80051F8C: -/* 2D38C 80051F8C 0C014874 */ jal func_800521D0 +/* 2D38C 80051F8C 0C014874 */ jal au_mseq_read_next /* 2D390 80051F90 02A0202D */ daddu $a0, $s5, $zero /* 2D394 80051F94 24080009 */ addiu $t0, $zero, 9 /* 2D398 80051F98 12C80045 */ beq $s6, $t0, .L800520B0 @@ -795,12 +795,12 @@ glabel func_80051434 /* 2D3A4 80051FA4 8FA80070 */ lw $t0, 0x70($sp) /* 2D3A8 80051FA8 328600FF */ andi $a2, $s4, 0xff /* 2D3AC 80051FAC 8D040000 */ lw $a0, ($t0) -/* 2D3B0 80051FB0 0C014EFA */ jal func_80053BE8 +/* 2D3B0 80051FB0 0C014EFA */ jal au_get_instrument /* 2D3B4 80051FB4 26670004 */ addiu $a3, $s3, 4 /* 2D3B8 80051FB8 0801482C */ j .L800520B0 /* 2D3BC 80051FBC AE620000 */ sw $v0, ($s3) .L80051FC0: -/* 2D3C0 80051FC0 0C014874 */ jal func_800521D0 +/* 2D3C0 80051FC0 0C014874 */ jal au_mseq_read_next /* 2D3C4 80051FC4 02A0202D */ daddu $a0, $s5, $zero /* 2D3C8 80051FC8 00171E00 */ sll $v1, $s7, 0x18 /* 2D3CC 80051FCC 304200FF */ andi $v0, $v0, 0xff @@ -841,7 +841,7 @@ glabel func_80051434 /* 2D454 80052054 00000000 */ nop /* 2D458 80052058 86420004 */ lh $v0, 4($s2) /* 2D45C 8005205C 8664000C */ lh $a0, 0xc($s3) -/* 2D460 80052060 0C014E3E */ jal snd_tune_param_to_timescale +/* 2D460 80052060 0C014E3E */ jal au_compute_pitch_ratio /* 2D464 80052064 00442021 */ addu $a0, $v0, $a0 /* 2D468 80052068 8E620000 */ lw $v0, ($s3) /* 2D46C 8005206C C4420020 */ lwc1 $f2, 0x20($v0) diff --git a/ver/us/asm/nonmatchings/2d9a0_len_890/func_80052CFC.s b/ver/us/asm/nonmatchings/audio/2d9a0_len_890/func_80052CFC.s similarity index 100% rename from ver/us/asm/nonmatchings/2d9a0_len_890/func_80052CFC.s rename to ver/us/asm/nonmatchings/audio/2d9a0_len_890/func_80052CFC.s diff --git a/ver/us/asm/nonmatchings/2e230_len_2190/func_80054AA0.s b/ver/us/asm/nonmatchings/audio/2e230_len_2190/func_80054AA0.s similarity index 94% rename from ver/us/asm/nonmatchings/2e230_len_2190/func_80054AA0.s rename to ver/us/asm/nonmatchings/audio/2e230_len_2190/func_80054AA0.s index b9dbcf1739..2705881bfc 100644 --- a/ver/us/asm/nonmatchings/2e230_len_2190/func_80054AA0.s +++ b/ver/us/asm/nonmatchings/audio/2e230_len_2190/func_80054AA0.s @@ -2,8 +2,8 @@ .set noreorder # don't insert nops after branches glabel func_80054AA0 -/* 2FEA0 80054AA0 3C028008 */ lui $v0, %hi(D_80078E54) -/* 2FEA4 80054AA4 8C428E54 */ lw $v0, %lo(D_80078E54)($v0) +/* 2FEA0 80054AA0 3C028008 */ lui $v0, %hi(gSynDriverPtr) +/* 2FEA4 80054AA4 8C428E54 */ lw $v0, %lo(gSynDriverPtr)($v0) /* 2FEA8 80054AA8 27BDFF80 */ addiu $sp, $sp, -0x80 /* 2FEAC 80054AAC AFB60070 */ sw $s6, 0x70($sp) /* 2FEB0 80054AB0 0080B02D */ daddu $s6, $a0, $zero @@ -40,7 +40,7 @@ glabel func_80054AA0 .L80054B28: /* 2FF28 80054B28 27A50018 */ addiu $a1, $sp, 0x18 /* 2FF2C 80054B2C 8EC40000 */ lw $a0, ($s6) -/* 2FF30 80054B30 0C015380 */ jal snd_read_rom +/* 2FF30 80054B30 0C015380 */ jal au_read_rom /* 2FF34 80054B34 24060040 */ addiu $a2, $zero, 0x40 /* 2FF38 80054B38 96830000 */ lhu $v1, ($s4) /* 2FF3C 80054B3C 2402424B */ addiu $v0, $zero, 0x424b @@ -64,11 +64,11 @@ glabel func_80054AA0 .L80054B80: /* 2FF80 80054B80 8EC40000 */ lw $a0, ($s6) /* 2FF84 80054B84 8E860004 */ lw $a2, 4($s4) -/* 2FF88 80054B88 0C015380 */ jal snd_read_rom +/* 2FF88 80054B88 0C015380 */ jal au_read_rom /* 2FF8C 80054B8C 0260282D */ daddu $a1, $s3, $zero /* 2FF90 80054B90 8FA4008C */ lw $a0, 0x8c($sp) /* 2FF94 80054B94 8FA50088 */ lw $a1, 0x88($sp) -/* 2FF98 80054B98 0C0151D1 */ jal snd_get_BK_instruments +/* 2FF98 80054B98 0C0151D1 */ jal au_get_BK_instruments /* 2FF9C 80054B9C 0000802D */ daddu $s0, $zero, $zero /* 2FFA0 80054BA0 0040A82D */ daddu $s5, $v0, $zero /* 2FFA4 80054BA4 02A0182D */ daddu $v1, $s5, $zero @@ -97,7 +97,7 @@ glabel func_80054AA0 /* 2FFF0 80054BF0 0260202D */ daddu $a0, $s3, $zero /* 2FFF4 80054BF4 0260282D */ daddu $a1, $s3, $zero /* 2FFF8 80054BF8 02A0302D */ daddu $a2, $s5, $zero -/* 2FFFC 80054BFC 0C01527E */ jal snd_swizzle_BK_instruments +/* 2FFFC 80054BFC 0C01527E */ jal au_swizzle_BK_instruments /* 30000 80054C00 24070010 */ addiu $a3, $zero, 0x10 /* 30004 80054C04 08015304 */ j .L80054C10 /* 30008 80054C08 0000882D */ daddu $s1, $zero, $zero diff --git a/ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BGM.s b/ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BGM.s similarity index 96% rename from ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BGM.s rename to ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BGM.s index 07364e7a0b..5337168e3f 100644 --- a/ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BGM.s +++ b/ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BGM.s @@ -9,8 +9,8 @@ glabel snd_load_BGM /* 2FA6C 8005466C AFB40028 */ sw $s4, 0x28($sp) /* 2FA70 80054670 3C1400FF */ lui $s4, 0xff /* 2FA74 80054674 AFB20020 */ sw $s2, 0x20($sp) -/* 2FA78 80054678 3C12800A */ lui $s2, %hi(D_8009A5C0) -/* 2FA7C 8005467C 8E52A5C0 */ lw $s2, %lo(D_8009A5C0)($s2) +/* 2FA78 80054678 3C12800A */ lui $s2, %hi(gSoundGlobals) +/* 2FA7C 8005467C 8E52A5C0 */ lw $s2, %lo(gSoundGlobals)($s2) /* 2FA80 80054680 0285A025 */ or $s4, $s4, $a1 /* 2FA84 80054684 AFB5002C */ sw $s5, 0x2c($sp) /* 2FA88 80054688 24150030 */ addiu $s5, $zero, 0x30 diff --git a/ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BK_to_bank.s b/ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BK_to_bank.s similarity index 95% rename from ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BK_to_bank.s rename to ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BK_to_bank.s index 2991348acd..6cc8613f8e 100644 --- a/ver/us/asm/nonmatchings/2e230_len_2190/snd_load_BK_to_bank.s +++ b/ver/us/asm/nonmatchings/audio/2e230_len_2190/snd_load_BK_to_bank.s @@ -14,8 +14,8 @@ glabel snd_load_BK_to_bank /* 2FBEC 800547EC AFB1005C */ sw $s1, 0x5c($sp) /* 2FBF0 800547F0 27B10018 */ addiu $s1, $sp, 0x18 /* 2FBF4 800547F4 0220282D */ daddu $a1, $s1, $zero -/* 2FBF8 800547F8 3C028008 */ lui $v0, %hi(D_80078E54) -/* 2FBFC 800547FC 8C428E54 */ lw $v0, %lo(D_80078E54)($v0) +/* 2FBF8 800547F8 3C028008 */ lui $v0, %hi(gSynDriverPtr) +/* 2FBFC 800547FC 8C428E54 */ lw $v0, %lo(gSynDriverPtr)($v0) /* 2FC00 80054800 24060040 */ addiu $a2, $zero, 0x40 /* 2FC04 80054804 AFB30064 */ sw $s3, 0x64($sp) /* 2FC08 80054808 2413000B */ addiu $s3, $zero, 0xb @@ -24,7 +24,7 @@ glabel snd_load_BK_to_bank /* 2FC14 80054814 AFB60070 */ sw $s6, 0x70($sp) /* 2FC18 80054818 AFB00058 */ sw $s0, 0x58($sp) /* 2FC1C 8005481C 8C560018 */ lw $s6, 0x18($v0) -/* 2FC20 80054820 0C015380 */ jal snd_read_rom +/* 2FC20 80054820 0C015380 */ jal au_read_rom /* 2FC24 80054824 24120001 */ addiu $s2, $zero, 1 /* 2FC28 80054828 3263FFFF */ andi $v1, $s3, 0xffff .L8005482C: @@ -97,10 +97,10 @@ glabel snd_load_BK_to_bank .L80054920: /* 2FD20 80054920 02A0202D */ daddu $a0, $s5, $zero /* 2FD24 80054924 0280282D */ daddu $a1, $s4, $zero -/* 2FD28 80054928 0C015380 */ jal snd_read_rom +/* 2FD28 80054928 0C015380 */ jal au_read_rom /* 2FD2C 8005492C 0200302D */ daddu $a2, $s0, $zero /* 2FD30 80054930 03C0202D */ daddu $a0, $fp, $zero -/* 2FD34 80054934 0C0151D1 */ jal snd_get_BK_instruments +/* 2FD34 80054934 0C0151D1 */ jal au_get_BK_instruments /* 2FD38 80054938 02E0282D */ daddu $a1, $s7, $zero /* 2FD3C 8005493C 0040802D */ daddu $s0, $v0, $zero /* 2FD40 80054940 0200182D */ daddu $v1, $s0, $zero @@ -132,7 +132,7 @@ glabel snd_load_BK_to_bank /* 2FD98 80054998 02A0202D */ daddu $a0, $s5, $zero /* 2FD9C 8005499C 0280282D */ daddu $a1, $s4, $zero /* 2FDA0 800549A0 0200302D */ daddu $a2, $s0, $zero -/* 2FDA4 800549A4 0C01527E */ jal snd_swizzle_BK_instruments +/* 2FDA4 800549A4 0C01527E */ jal au_swizzle_BK_instruments /* 2FDA8 800549A8 24070010 */ addiu $a3, $zero, 0x10 /* 2FDAC 800549AC 0801526E */ j .L800549B8 /* 2FDB0 800549B0 0000982D */ daddu $s3, $zero, $zero diff --git a/ver/us/asm/nonmatchings/33450/func_80058050.s b/ver/us/asm/nonmatchings/audio/33450/func_80058050.s similarity index 97% rename from ver/us/asm/nonmatchings/33450/func_80058050.s rename to ver/us/asm/nonmatchings/audio/33450/func_80058050.s index 2f07557920..e20e3fc835 100644 --- a/ver/us/asm/nonmatchings/33450/func_80058050.s +++ b/ver/us/asm/nonmatchings/audio/33450/func_80058050.s @@ -134,7 +134,7 @@ glabel func_80058050 /* 33620 80058220 AFA00014 */ sw $zero, 0x14($sp) /* 33624 80058224 8E42002C */ lw $v0, 0x2c($s2) /* 33628 80058228 0240282D */ daddu $a1, $s2, $zero -/* 3362C 8005822C 0C0162C8 */ jal func_80058B20 +/* 3362C 8005822C 0C0162C8 */ jal _decodeChunk /* 33630 80058230 AFA20018 */ sw $v0, 0x18($sp) /* 33634 80058234 8E430028 */ lw $v1, 0x28($s2) /* 33638 80058238 10600005 */ beqz $v1, .L80058250 @@ -212,7 +212,7 @@ glabel func_80058050 /* 33740 80058340 8E42002C */ lw $v0, 0x2c($s2) /* 33744 80058344 00F13821 */ addu $a3, $a3, $s1 /* 33748 80058348 34420002 */ ori $v0, $v0, 2 -/* 3374C 8005834C 0C0162C8 */ jal func_80058B20 +/* 3374C 8005834C 0C0162C8 */ jal _decodeChunk /* 33750 80058350 AFA20018 */ sw $v0, 0x18($sp) /* 33754 80058354 0040B02D */ daddu $s6, $v0, $zero /* 33758 80058358 02C0282D */ daddu $a1, $s6, $zero @@ -290,7 +290,7 @@ glabel func_80058050 /* 33864 80058464 AFA00014 */ sw $zero, 0x14($sp) /* 33868 80058468 8E42002C */ lw $v0, 0x2c($s2) /* 3386C 8005846C 02133023 */ subu $a2, $s0, $s3 -/* 33870 80058470 0C0162C8 */ jal func_80058B20 +/* 33870 80058470 0C0162C8 */ jal _decodeChunk /* 33874 80058474 AFA20018 */ sw $v0, 0x18($sp) /* 33878 80058478 8E430028 */ lw $v1, 0x28($s2) /* 3387C 8005847C 10600005 */ beqz $v1, .L80058494 @@ -592,13 +592,13 @@ glabel func_80058050 /* 33CB8 800588B8 8EE20024 */ lw $v0, 0x24($s7) /* 33CBC 800588BC 10400069 */ beqz $v0, .L80058A64 /* 33CC0 800588C0 26D60008 */ addiu $s6, $s6, 8 -/* 33CC4 800588C4 3C028008 */ lui $v0, %hi(D_80078181) -/* 33CC8 800588C8 24428181 */ addiu $v0, $v0, %lo(D_80078181) +/* 33CC4 800588C4 3C028008 */ lui $v0, %hi(AuSynUseStereo) +/* 33CC8 800588C8 24428181 */ addiu $v0, $v0, %lo(AuSynUseStereo) /* 33CCC 800588CC 90420000 */ lbu $v0, ($v0) /* 33CD0 800588D0 1440000C */ bnez $v0, .L80058904 /* 33CD4 800588D4 AEE00024 */ sw $zero, 0x24($s7) -/* 33CD8 800588D8 3C048008 */ lui $a0, %hi(D_80078E60) -/* 33CDC 800588DC 24848E60 */ addiu $a0, $a0, %lo(D_80078E60) +/* 33CD8 800588D8 3C048008 */ lui $a0, %hi(AuEqPower) +/* 33CDC 800588DC 24848E60 */ addiu $a0, $a0, %lo(AuEqPower) /* 33CE0 800588E0 86E30006 */ lh $v1, 6($s7) /* 33CE4 800588E4 84820080 */ lh $v0, 0x80($a0) /* 33CE8 800588E8 00620018 */ mult $v1, $v0 @@ -612,9 +612,9 @@ glabel func_80058050 /* 33D04 80058904 86E20004 */ lh $v0, 4($s7) /* 33D08 80058908 86E30006 */ lh $v1, 6($s7) /* 33D0C 8005890C 00021040 */ sll $v0, $v0, 1 -/* 33D10 80058910 3C018008 */ lui $at, %hi(D_80078E60) +/* 33D10 80058910 3C018008 */ lui $at, %hi(AuEqPower) /* 33D14 80058914 00220821 */ addu $at, $at, $v0 -/* 33D18 80058918 84228E60 */ lh $v0, %lo(D_80078E60)($at) +/* 33D18 80058918 84228E60 */ lh $v0, %lo(AuEqPower)($at) /* 33D1C 8005891C 00620018 */ mult $v1, $v0 /* 33D20 80058920 86E30004 */ lh $v1, 4($s7) /* 33D24 80058924 00004012 */ mflo $t0 @@ -624,9 +624,9 @@ glabel func_80058050 /* 33D34 80058934 00431023 */ subu $v0, $v0, $v1 /* 33D38 80058938 00021040 */ sll $v0, $v0, 1 /* 33D3C 8005893C 86E30006 */ lh $v1, 6($s7) -/* 33D40 80058940 3C018008 */ lui $at, %hi(D_80078E60) +/* 33D40 80058940 3C018008 */ lui $at, %hi(AuEqPower) /* 33D44 80058944 00220821 */ addu $at, $at, $v0 -/* 33D48 80058948 84228E60 */ lh $v0, %lo(D_80078E60)($at) +/* 33D48 80058948 84228E60 */ lh $v0, %lo(AuEqPower)($at) /* 33D4C 8005894C 00620018 */ mult $v1, $v0 .L80058950: /* 33D50 80058950 00004012 */ mflo $t0 @@ -643,7 +643,7 @@ glabel func_80058050 /* 33D7C 8005897C 44847000 */ mtc1 $a0, $f14 /* 33D80 80058980 00000000 */ nop /* 33D84 80058984 468073A1 */ cvt.d.w $f14, $f14 -/* 33D88 80058988 0C01631B */ jal func_80058C6C +/* 33D88 80058988 0C01631B */ jal _getRate /* 33D8C 8005898C AFA50010 */ sw $a1, 0x10($sp) /* 33D90 80058990 86E3000A */ lh $v1, 0xa($s7) /* 33D94 80058994 86E4001A */ lh $a0, 0x1a($s7) @@ -657,7 +657,7 @@ glabel func_80058050 /* 33DB4 800589B4 44847000 */ mtc1 $a0, $f14 /* 33DB8 800589B8 00000000 */ nop /* 33DBC 800589BC 468073A1 */ cvt.d.w $f14, $f14 -/* 33DC0 800589C0 0C01631B */ jal func_80058C6C +/* 33DC0 800589C0 0C01631B */ jal _getRate /* 33DC4 800589C4 AFA50010 */ sw $a1, 0x10($sp) /* 33DC8 800589C8 02C0202D */ daddu $a0, $s6, $zero /* 33DCC 800589CC 26D60008 */ addiu $s6, $s6, 8 diff --git a/ver/us/asm/nonmatchings/341d0/func_80059310.s b/ver/us/asm/nonmatchings/audio/reverb/func_80059310.s similarity index 99% rename from ver/us/asm/nonmatchings/341d0/func_80059310.s rename to ver/us/asm/nonmatchings/audio/reverb/func_80059310.s index f7a1cacf0c..c01e9afdc0 100644 --- a/ver/us/asm/nonmatchings/341d0/func_80059310.s +++ b/ver/us/asm/nonmatchings/audio/reverb/func_80059310.s @@ -169,7 +169,7 @@ glabel func_80059310 /* 34988 80059588 8FA40068 */ lw $a0, 0x68($sp) /* 3498C 8005958C 8FA6002C */ lw $a2, 0x2c($sp) /* 34990 80059590 02833821 */ addu $a3, $s4, $v1 -/* 34994 80059594 0C0166AE */ jal func_80059AB8 +/* 34994 80059594 0C0166AE */ jal _saveBuffer /* 34998 80059598 AFB20010 */ sw $s2, 0x10($sp) /* 3499C 8005959C 0040902D */ daddu $s2, $v0, $zero /* 349A0 800595A0 4616A002 */ mul.s $f0, $f20, $f22 diff --git a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004BA74.s b/ver/us/asm/nonmatchings/audio/sfx_player/func_8004BA74.s similarity index 99% rename from ver/us/asm/nonmatchings/26840_len_20d0/func_8004BA74.s rename to ver/us/asm/nonmatchings/audio/sfx_player/func_8004BA74.s index 8b3dec5867..c3af06b03a 100644 --- a/ver/us/asm/nonmatchings/26840_len_20d0/func_8004BA74.s +++ b/ver/us/asm/nonmatchings/audio/sfx_player/func_8004BA74.s @@ -301,7 +301,7 @@ glabel func_8004BA74 /* 2728C 8004BE8C 2603FFFF */ addiu $v1, $s0, -1 .L8004BE90: /* 27290 8004BE90 96E50000 */ lhu $a1, ($s7) -/* 27294 8004BE94 0C0130A9 */ jal func_8004C2A4 +/* 27294 8004BE94 0C0130A9 */ jal au_sfx_stop_by_id /* 27298 8004BE98 0280202D */ daddu $a0, $s4, $zero /* 2729C 8004BE9C 2603FFFF */ addiu $v1, $s0, -1 .L8004BEA0: @@ -309,8 +309,8 @@ glabel func_8004BA74 /* 272A4 8004BEA4 1260005D */ beqz $s3, .L8004C01C /* 272A8 8004BEA8 00628804 */ sllv $s1, $v0, $v1 /* 272AC 8004BEAC 24100007 */ addiu $s0, $zero, 7 -/* 272B0 8004BEB0 3C1E8008 */ lui $fp, %hi(D_80078464) -/* 272B4 8004BEB4 27DE8464 */ addiu $fp, $fp, %lo(D_80078464) +/* 272B0 8004BEB0 3C1E8008 */ lui $fp, %hi(BlankSEFData) +/* 272B4 8004BEB4 27DE8464 */ addiu $fp, $fp, %lo(BlankSEFData) /* 272B8 8004BEB8 24130620 */ addiu $s3, $zero, 0x620 .L8004BEBC: /* 272BC 8004BEBC 96420000 */ lhu $v0, ($s2) diff --git a/ver/us/asm/nonmatchings/e0b30_len_b80/bgm_update_music_settings.s b/ver/us/asm/nonmatchings/e0b30_len_b80/bgm_update_music_settings.s deleted file mode 100644 index b6d87a85c4..0000000000 --- a/ver/us/asm/nonmatchings/e0b30_len_b80/bgm_update_music_settings.s +++ /dev/null @@ -1,197 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_80151290 -.word .L8014A7A0_E0EA0, .L8014A5AC_E0CAC, .L8014A64C_E0D4C, .L8014A68C_E0D8C, .L8014A644_E0D44, .L8014A698_E0D98, 0, 0 - -.section .text - -glabel bgm_update_music_settings -/* E0C48 8014A548 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* E0C4C 8014A54C AFB1001C */ sw $s1, 0x1c($sp) -/* E0C50 8014A550 3C118016 */ lui $s1, %hi(gMusicSettings) -/* E0C54 8014A554 26319AF0 */ addiu $s1, $s1, %lo(gMusicSettings) -/* E0C58 8014A558 AFB20020 */ sw $s2, 0x20($sp) -/* E0C5C 8014A55C 0000902D */ daddu $s2, $zero, $zero -/* E0C60 8014A560 AFB30024 */ sw $s3, 0x24($sp) -/* E0C64 8014A564 24130002 */ addiu $s3, $zero, 2 -/* E0C68 8014A568 AFB5002C */ sw $s5, 0x2c($sp) -/* E0C6C 8014A56C 2415FFFB */ addiu $s5, $zero, -5 -/* E0C70 8014A570 AFB40028 */ sw $s4, 0x28($sp) -/* E0C74 8014A574 24140005 */ addiu $s4, $zero, 5 -/* E0C78 8014A578 AFB00018 */ sw $s0, 0x18($sp) -/* E0C7C 8014A57C 26300002 */ addiu $s0, $s1, 2 -/* E0C80 8014A580 AFBF0030 */ sw $ra, 0x30($sp) -.L8014A584: -/* E0C84 8014A584 86030000 */ lh $v1, ($s0) -/* E0C88 8014A588 2C620006 */ sltiu $v0, $v1, 6 -/* E0C8C 8014A58C 50400085 */ beql $v0, $zero, .L8014A7A4 -/* E0C90 8014A590 26520001 */ addiu $s2, $s2, 1 -/* E0C94 8014A594 00031080 */ sll $v0, $v1, 2 -/* E0C98 8014A598 3C018015 */ lui $at, %hi(jtbl_80151290) -/* E0C9C 8014A59C 00220821 */ addu $at, $at, $v0 -/* E0CA0 8014A5A0 8C221290 */ lw $v0, %lo(jtbl_80151290)($at) -/* E0CA4 8014A5A4 00400008 */ jr $v0 -/* E0CA8 8014A5A8 00000000 */ nop -.L8014A5AC_E0CAC: -/* E0CAC 8014A5AC 96230000 */ lhu $v1, ($s1) -/* E0CB0 8014A5B0 30620001 */ andi $v0, $v1, 1 -/* E0CB4 8014A5B4 1040001D */ beqz $v0, .L8014A62C -/* E0CB8 8014A5B8 30620004 */ andi $v0, $v1, 4 -/* E0CBC 8014A5BC 8E050002 */ lw $a1, 2($s0) -/* E0CC0 8014A5C0 28A200FA */ slti $v0, $a1, 0xfa -/* E0CC4 8014A5C4 1040000B */ beqz $v0, .L8014A5F4 -/* E0CC8 8014A5C8 30620004 */ andi $v0, $v1, 4 -/* E0CCC 8014A5CC 14400005 */ bnez $v0, .L8014A5E4 -/* E0CD0 8014A5D0 00000000 */ nop -/* E0CD4 8014A5D4 0C015671 */ jal func_800559C4 -/* E0CD8 8014A5D8 8E040016 */ lw $a0, 0x16($s0) -/* E0CDC 8014A5DC 08052987 */ j .L8014A61C -/* E0CE0 8014A5E0 00000000 */ nop -.L8014A5E4: -/* E0CE4 8014A5E4 0C0156BC */ jal func_80055AF0 -/* E0CE8 8014A5E8 8E040016 */ lw $a0, 0x16($s0) -/* E0CEC 8014A5EC 08052987 */ j .L8014A61C -/* E0CF0 8014A5F0 00000000 */ nop -.L8014A5F4: -/* E0CF4 8014A5F4 14400006 */ bnez $v0, .L8014A610 -/* E0CF8 8014A5F8 00000000 */ nop -/* E0CFC 8014A5FC 8E040016 */ lw $a0, 0x16($s0) -/* E0D00 8014A600 0C0156AF */ jal snd_set_song_variation_fade_time -/* E0D04 8014A604 0000302D */ daddu $a2, $zero, $zero -/* E0D08 8014A608 08052987 */ j .L8014A61C -/* E0D0C 8014A60C 00000000 */ nop -.L8014A610: -/* E0D10 8014A610 8E040016 */ lw $a0, 0x16($s0) -/* E0D14 8014A614 0C0156EE */ jal func_80055BB8 -/* E0D18 8014A618 240500FA */ addiu $a1, $zero, 0xfa -.L8014A61C: -/* E0D1C 8014A61C 50400060 */ beql $v0, $zero, .L8014A7A0_E0EA0 -/* E0D20 8014A620 A6130000 */ sh $s3, ($s0) -/* E0D24 8014A624 080529E9 */ j .L8014A7A4 -/* E0D28 8014A628 26520001 */ addiu $s2, $s2, 1 -.L8014A62C: -/* E0D2C 8014A62C 10400002 */ beqz $v0, .L8014A638 -/* E0D30 8014A630 34620010 */ ori $v0, $v1, 0x10 -/* E0D34 8014A634 A6220000 */ sh $v0, ($s1) -.L8014A638: -/* E0D38 8014A638 96220000 */ lhu $v0, ($s1) -/* E0D3C 8014A63C 00551024 */ and $v0, $v0, $s5 -/* E0D40 8014A640 A6220000 */ sh $v0, ($s1) -.L8014A644_E0D44: -/* E0D44 8014A644 080529E8 */ j .L8014A7A0_E0EA0 -/* E0D48 8014A648 A6140000 */ sh $s4, ($s0) -.L8014A64C_E0D4C: -/* E0D4C 8014A64C 96230000 */ lhu $v1, ($s1) -/* E0D50 8014A650 00751024 */ and $v0, $v1, $s5 -/* E0D54 8014A654 30630001 */ andi $v1, $v1, 1 -/* E0D58 8014A658 1060FFFA */ beqz $v1, .L8014A644_E0D44 -/* E0D5C 8014A65C A6220000 */ sh $v0, ($s1) -/* E0D60 8014A660 8E040016 */ lw $a0, 0x16($s0) -/* E0D64 8014A664 0C01567F */ jal func_800559FC -/* E0D68 8014A668 00000000 */ nop -/* E0D6C 8014A66C 5440004D */ bnel $v0, $zero, .L8014A7A4 -/* E0D70 8014A670 26520001 */ addiu $s2, $s2, 1 -/* E0D74 8014A674 96220000 */ lhu $v0, ($s1) -/* E0D78 8014A678 3042FFFE */ andi $v0, $v0, 0xfffe -/* E0D7C 8014A67C A6220000 */ sh $v0, ($s1) -/* E0D80 8014A680 24020003 */ addiu $v0, $zero, 3 -/* E0D84 8014A684 080529E8 */ j .L8014A7A0_E0EA0 -/* E0D88 8014A688 A6020000 */ sh $v0, ($s0) -.L8014A68C_E0D8C: -/* E0D8C 8014A68C 24020004 */ addiu $v0, $zero, 4 -/* E0D90 8014A690 080529E8 */ j .L8014A7A0_E0EA0 -/* E0D94 8014A694 A6020000 */ sh $v0, ($s0) -.L8014A698_E0D98: -/* E0D98 8014A698 96230000 */ lhu $v1, ($s1) -/* E0D9C 8014A69C 30620008 */ andi $v0, $v1, 8 -/* E0DA0 8014A6A0 14400029 */ bnez $v0, .L8014A748 -/* E0DA4 8014A6A4 30620010 */ andi $v0, $v1, 0x10 -/* E0DA8 8014A6A8 8E04000E */ lw $a0, 0xe($s0) -/* E0DAC 8014A6AC 04810003 */ bgez $a0, .L8014A6BC -/* E0DB0 8014A6B0 00000000 */ nop -/* E0DB4 8014A6B4 080529E8 */ j .L8014A7A0_E0EA0 -/* E0DB8 8014A6B8 A6000000 */ sh $zero, ($s0) -.L8014A6BC: -/* E0DBC 8014A6BC 0C015635 */ jal snd_load_song -/* E0DC0 8014A6C0 0240282D */ daddu $a1, $s2, $zero -/* E0DC4 8014A6C4 3403FFFF */ ori $v1, $zero, 0xffff -/* E0DC8 8014A6C8 0062182B */ sltu $v1, $v1, $v0 -/* E0DCC 8014A6CC 10600034 */ beqz $v1, .L8014A7A0_E0EA0 -/* E0DD0 8014A6D0 AE020016 */ sw $v0, 0x16($s0) -/* E0DD4 8014A6D4 96220000 */ lhu $v0, ($s1) -/* E0DD8 8014A6D8 30420020 */ andi $v0, $v0, 0x20 -/* E0DDC 8014A6DC 1040000C */ beqz $v0, .L8014A710 -/* E0DE0 8014A6E0 00000000 */ nop -/* E0DE4 8014A6E4 8602000C */ lh $v0, 0xc($s0) -/* E0DE8 8014A6E8 8607000A */ lh $a3, 0xa($s0) -/* E0DEC 8014A6EC AFA20010 */ sw $v0, 0x10($sp) -/* E0DF0 8014A6F0 8E040016 */ lw $a0, 0x16($s0) -/* E0DF4 8014A6F4 8E050012 */ lw $a1, 0x12($s0) -/* E0DF8 8014A6F8 0C015686 */ jal snd_set_song_variation_fade -/* E0DFC 8014A6FC 8E060006 */ lw $a2, 6($s0) -/* E0E00 8014A700 96220000 */ lhu $v0, ($s1) -/* E0E04 8014A704 3042FFDF */ andi $v0, $v0, 0xffdf -/* E0E08 8014A708 080529C8 */ j .L8014A720 -/* E0E0C 8014A70C A6220000 */ sh $v0, ($s1) -.L8014A710: -/* E0E10 8014A710 3C048016 */ lui $a0, %hi(gMusicUnkVolume) -/* E0E14 8014A714 84849AE0 */ lh $a0, %lo(gMusicUnkVolume)($a0) -/* E0E18 8014A718 0C052B21 */ jal bgm_set_target_volume -/* E0E1C 8014A71C 00000000 */ nop -.L8014A720: -/* E0E20 8014A720 8E040016 */ lw $a0, 0x16($s0) -/* E0E24 8014A724 0C01565C */ jal snd_start_song_variation -/* E0E28 8014A728 8E050012 */ lw $a1, 0x12($s0) -/* E0E2C 8014A72C 5440001D */ bnel $v0, $zero, .L8014A7A4 -/* E0E30 8014A730 26520001 */ addiu $s2, $s2, 1 -/* E0E34 8014A734 96220000 */ lhu $v0, ($s1) -/* E0E38 8014A738 34420001 */ ori $v0, $v0, 1 -/* E0E3C 8014A73C A6220000 */ sh $v0, ($s1) -/* E0E40 8014A740 080529E8 */ j .L8014A7A0_E0EA0 -/* E0E44 8014A744 A6000000 */ sh $zero, ($s0) -.L8014A748: -/* E0E48 8014A748 10400005 */ beqz $v0, .L8014A760 -/* E0E4C 8014A74C 00000000 */ nop -/* E0E50 8014A750 A6000000 */ sh $zero, ($s0) -/* E0E54 8014A754 96220000 */ lhu $v0, ($s1) -/* E0E58 8014A758 080529E7 */ j .L8014A79C -/* E0E5C 8014A75C 3042FFE7 */ andi $v0, $v0, 0xffe7 -.L8014A760: -/* E0E60 8014A760 8E04002A */ lw $a0, 0x2a($s0) -/* E0E64 8014A764 0C0156CA */ jal func_80055B28 -/* E0E68 8014A768 00000000 */ nop -/* E0E6C 8014A76C 5440000D */ bnel $v0, $zero, .L8014A7A4 -/* E0E70 8014A770 26520001 */ addiu $s2, $s2, 1 -/* E0E74 8014A774 8E020022 */ lw $v0, 0x22($s0) -/* E0E78 8014A778 8E030026 */ lw $v1, 0x26($s0) -/* E0E7C 8014A77C 8E04002A */ lw $a0, 0x2a($s0) -/* E0E80 8014A780 A6000000 */ sh $zero, ($s0) -/* E0E84 8014A784 AE02000E */ sw $v0, 0xe($s0) -/* E0E88 8014A788 AE030012 */ sw $v1, 0x12($s0) -/* E0E8C 8014A78C AE040016 */ sw $a0, 0x16($s0) -/* E0E90 8014A790 96220000 */ lhu $v0, ($s1) -/* E0E94 8014A794 34420001 */ ori $v0, $v0, 1 -/* E0E98 8014A798 3042FFF7 */ andi $v0, $v0, 0xfff7 -.L8014A79C: -/* E0E9C 8014A79C A6220000 */ sh $v0, ($s1) -.L8014A7A0_E0EA0: -/* E0EA0 8014A7A0 26520001 */ addiu $s2, $s2, 1 -.L8014A7A4: -/* E0EA4 8014A7A4 26100030 */ addiu $s0, $s0, 0x30 -/* E0EA8 8014A7A8 2A420002 */ slti $v0, $s2, 2 -/* E0EAC 8014A7AC 1440FF75 */ bnez $v0, .L8014A584 -/* E0EB0 8014A7B0 26310030 */ addiu $s1, $s1, 0x30 -/* E0EB4 8014A7B4 0C052B25 */ jal bgm_update_volume -/* E0EB8 8014A7B8 00000000 */ nop -/* E0EBC 8014A7BC 8FBF0030 */ lw $ra, 0x30($sp) -/* E0EC0 8014A7C0 8FB5002C */ lw $s5, 0x2c($sp) -/* E0EC4 8014A7C4 8FB40028 */ lw $s4, 0x28($sp) -/* E0EC8 8014A7C8 8FB30024 */ lw $s3, 0x24($sp) -/* E0ECC 8014A7CC 8FB20020 */ lw $s2, 0x20($sp) -/* E0ED0 8014A7D0 8FB1001C */ lw $s1, 0x1c($sp) -/* E0ED4 8014A7D4 8FB00018 */ lw $s0, 0x18($sp) -/* E0ED8 8014A7D8 03E00008 */ jr $ra -/* E0EDC 8014A7DC 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/evt/fa4c0_len_3bf0/func_802D5B10.s b/ver/us/asm/nonmatchings/evt/fa4c0_len_3bf0/func_802D5B10.s deleted file mode 100644 index 1a368cbeb2..0000000000 --- a/ver/us/asm/nonmatchings/evt/fa4c0_len_3bf0/func_802D5B10.s +++ /dev/null @@ -1,98 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802D5B10 -/* FA4C0 802D5B10 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* FA4C4 802D5B14 27A40010 */ addiu $a0, $sp, 0x10 -/* FA4C8 802D5B18 27A50014 */ addiu $a1, $sp, 0x14 -/* FA4CC 802D5B1C AFBF0038 */ sw $ra, 0x38($sp) -/* FA4D0 802D5B20 AFB70034 */ sw $s7, 0x34($sp) -/* FA4D4 802D5B24 AFB60030 */ sw $s6, 0x30($sp) -/* FA4D8 802D5B28 AFB5002C */ sw $s5, 0x2c($sp) -/* FA4DC 802D5B2C AFB40028 */ sw $s4, 0x28($sp) -/* FA4E0 802D5B30 AFB30024 */ sw $s3, 0x24($sp) -/* FA4E4 802D5B34 AFB20020 */ sw $s2, 0x20($sp) -/* FA4E8 802D5B38 AFB1001C */ sw $s1, 0x1c($sp) -/* FA4EC 802D5B3C 0C015823 */ jal func_8005608C -/* FA4F0 802D5B40 AFB00018 */ sw $s0, 0x18($sp) -/* FA4F4 802D5B44 8FA20014 */ lw $v0, 0x14($sp) -/* FA4F8 802D5B48 10400036 */ beqz $v0, .L802D5C24 -/* FA4FC 802D5B4C 0000982D */ daddu $s3, $zero, $zero -/* FA500 802D5B50 3C1700FF */ lui $s7, 0xff -/* FA504 802D5B54 2416FFFF */ addiu $s6, $zero, -1 -/* FA508 802D5B58 3C15802E */ lui $s5, %hi(D_802DB7D8) -/* FA50C 802D5B5C 26B5B7D8 */ addiu $s5, $s5, %lo(D_802DB7D8) -/* FA510 802D5B60 3C14802E */ lui $s4, %hi(D_802DB800) -/* FA514 802D5B64 2694B800 */ addiu $s4, $s4, %lo(D_802DB800) -.L802D5B68: -/* FA518 802D5B68 8FA20010 */ lw $v0, 0x10($sp) -/* FA51C 802D5B6C 8C430000 */ lw $v1, ($v0) -/* FA520 802D5B70 3C04802E */ lui $a0, %hi(D_802DB7D0) -/* FA524 802D5B74 8C84B7D0 */ lw $a0, %lo(D_802DB7D0)($a0) -/* FA528 802D5B78 00771024 */ and $v0, $v1, $s7 -/* FA52C 802D5B7C 00022C02 */ srl $a1, $v0, 0x10 -/* FA530 802D5B80 8C820000 */ lw $v0, ($a0) -/* FA534 802D5B84 10560009 */ beq $v0, $s6, .L802D5BAC -/* FA538 802D5B88 306300FF */ andi $v1, $v1, 0xff -/* FA53C 802D5B8C 2406FFFF */ addiu $a2, $zero, -1 -/* FA540 802D5B90 8C820000 */ lw $v0, ($a0) -.L802D5B94: -/* FA544 802D5B94 10450005 */ beq $v0, $a1, .L802D5BAC -/* FA548 802D5B98 00000000 */ nop -/* FA54C 802D5B9C 24840014 */ addiu $a0, $a0, 0x14 -/* FA550 802D5BA0 8C820000 */ lw $v0, ($a0) -/* FA554 802D5BA4 1446FFFB */ bne $v0, $a2, .L802D5B94 -/* FA558 802D5BA8 00000000 */ nop -.L802D5BAC: -/* FA55C 802D5BAC 50800017 */ beql $a0, $zero, .L802D5C0C -/* FA560 802D5BB0 26730001 */ addiu $s3, $s3, 1 -/* FA564 802D5BB4 00031080 */ sll $v0, $v1, 2 -/* FA568 802D5BB8 00821021 */ addu $v0, $a0, $v0 -/* FA56C 802D5BBC 00058880 */ sll $s1, $a1, 2 -/* FA570 802D5BC0 02359021 */ addu $s2, $s1, $s5 -/* FA574 802D5BC4 8E430000 */ lw $v1, ($s2) -/* FA578 802D5BC8 8C500004 */ lw $s0, 4($v0) -/* FA57C 802D5BCC 10600004 */ beqz $v1, .L802D5BE0 -/* FA580 802D5BD0 02341021 */ addu $v0, $s1, $s4 -/* FA584 802D5BD4 8C440000 */ lw $a0, ($v0) -/* FA588 802D5BD8 0C0B102B */ jal kill_script_by_ID -/* FA58C 802D5BDC 00000000 */ nop -.L802D5BE0: -/* FA590 802D5BE0 5200000A */ beql $s0, $zero, .L802D5C0C -/* FA594 802D5BE4 26730001 */ addiu $s3, $s3, 1 -/* FA598 802D5BE8 0200202D */ daddu $a0, $s0, $zero -/* FA59C 802D5BEC 24050001 */ addiu $a1, $zero, 1 -/* FA5A0 802D5BF0 0C0B0CF8 */ jal start_script -/* FA5A4 802D5BF4 0000302D */ daddu $a2, $zero, $zero -/* FA5A8 802D5BF8 AE420000 */ sw $v0, ($s2) -/* FA5AC 802D5BFC 8C430144 */ lw $v1, 0x144($v0) -/* FA5B0 802D5C00 02341021 */ addu $v0, $s1, $s4 -/* FA5B4 802D5C04 AC430000 */ sw $v1, ($v0) -/* FA5B8 802D5C08 26730001 */ addiu $s3, $s3, 1 -.L802D5C0C: -/* FA5BC 802D5C0C 8FA20010 */ lw $v0, 0x10($sp) -/* FA5C0 802D5C10 8FA30014 */ lw $v1, 0x14($sp) -/* FA5C4 802D5C14 24420004 */ addiu $v0, $v0, 4 -/* FA5C8 802D5C18 0263182B */ sltu $v1, $s3, $v1 -/* FA5CC 802D5C1C 1460FFD2 */ bnez $v1, .L802D5B68 -/* FA5D0 802D5C20 AFA20010 */ sw $v0, 0x10($sp) -.L802D5C24: -/* FA5D4 802D5C24 0C01582A */ jal func_800560A8 -/* FA5D8 802D5C28 00000000 */ nop -/* FA5DC 802D5C2C 3C04802E */ lui $a0, %hi(D_802D9D30) -/* FA5E0 802D5C30 24849D30 */ addiu $a0, $a0, %lo(D_802D9D30) -/* FA5E4 802D5C34 8C830000 */ lw $v1, ($a0) -/* FA5E8 802D5C38 24630001 */ addiu $v1, $v1, 1 -/* FA5EC 802D5C3C AC830000 */ sw $v1, ($a0) -/* FA5F0 802D5C40 8FBF0038 */ lw $ra, 0x38($sp) -/* FA5F4 802D5C44 8FB70034 */ lw $s7, 0x34($sp) -/* FA5F8 802D5C48 8FB60030 */ lw $s6, 0x30($sp) -/* FA5FC 802D5C4C 8FB5002C */ lw $s5, 0x2c($sp) -/* FA600 802D5C50 8FB40028 */ lw $s4, 0x28($sp) -/* FA604 802D5C54 8FB30024 */ lw $s3, 0x24($sp) -/* FA608 802D5C58 8FB20020 */ lw $s2, 0x20($sp) -/* FA60C 802D5C5C 8FB1001C */ lw $s1, 0x1c($sp) -/* FA610 802D5C60 8FB00018 */ lw $s0, 0x18($sp) -/* FA614 802D5C64 0000102D */ daddu $v0, $zero, $zero -/* FA618 802D5C68 03E00008 */ jr $ra -/* FA61C 802D5C6C 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/sfx/sfx_play_sound_with_params.s b/ver/us/asm/nonmatchings/sfx/sfx_play_sound_with_params.s deleted file mode 100644 index 13167a40eb..0000000000 --- a/ver/us/asm/nonmatchings/sfx/sfx_play_sound_with_params.s +++ /dev/null @@ -1,88 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel sfx_play_sound_with_params -/* E01B8 80149AB8 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* E01BC 80149ABC 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* E01C0 80149AC0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* E01C4 80149AC4 AFBF0010 */ sw $ra, 0x10($sp) -/* E01C8 80149AC8 80420071 */ lb $v0, 0x71($v0) -/* E01CC 80149ACC 14400042 */ bnez $v0, .L80149BD8 -/* E01D0 80149AD0 00E0482D */ daddu $t1, $a3, $zero -/* E01D4 80149AD4 0483003C */ bgezl $a0, .L80149BC8 -/* E01D8 80149AD8 30A500FF */ andi $a1, $a1, 0xff -/* E01DC 80149ADC 00041702 */ srl $v0, $a0, 0x1c -/* E01E0 80149AE0 30430007 */ andi $v1, $v0, 7 -/* E01E4 80149AE4 24020001 */ addiu $v0, $zero, 1 -/* E01E8 80149AE8 10620018 */ beq $v1, $v0, .L80149B4C -/* E01EC 80149AEC 308800FF */ andi $t0, $a0, 0xff -/* E01F0 80149AF0 28620002 */ slti $v0, $v1, 2 -/* E01F4 80149AF4 10400005 */ beqz $v0, .L80149B0C -/* E01F8 80149AF8 24020002 */ addiu $v0, $zero, 2 -/* E01FC 80149AFC 10600009 */ beqz $v1, .L80149B24 -/* E0200 80149B00 00081080 */ sll $v0, $t0, 2 -/* E0204 80149B04 080526F2 */ j .L80149BC8 -/* E0208 80149B08 30A500FF */ andi $a1, $a1, 0xff -.L80149B0C: -/* E020C 80149B0C 10620013 */ beq $v1, $v0, .L80149B5C -/* E0210 80149B10 24020003 */ addiu $v0, $zero, 3 -/* E0214 80149B14 1062001B */ beq $v1, $v0, .L80149B84 -/* E0218 80149B18 000810C0 */ sll $v0, $t0, 3 -/* E021C 80149B1C 080526F2 */ j .L80149BC8 -/* E0220 80149B20 30A500FF */ andi $a1, $a1, 0xff -.L80149B24: -/* E0224 80149B24 3C048015 */ lui $a0, %hi(D_8014F2D0) -/* E0228 80149B28 00822021 */ addu $a0, $a0, $v0 -/* E022C 80149B2C 8C84F2D0 */ lw $a0, %lo(D_8014F2D0)($a0) -/* E0230 80149B30 30A500FF */ andi $a1, $a1, 0xff -/* E0234 80149B34 30C600FF */ andi $a2, $a2, 0xff -/* E0238 80149B38 00073C00 */ sll $a3, $a3, 0x10 -/* E023C 80149B3C 0C052642 */ jal sfx_play_sound_looping -/* E0240 80149B40 00073C03 */ sra $a3, $a3, 0x10 -/* E0244 80149B44 080526F6 */ j .L80149BD8 -/* E0248 80149B48 00000000 */ nop -.L80149B4C: -/* E024C 80149B4C 3C028015 */ lui $v0, %hi(gCurrentDoorSoundsSet) -/* E0250 80149B50 94421340 */ lhu $v0, %lo(gCurrentDoorSoundsSet)($v0) -/* E0254 80149B54 080526DA */ j .L80149B68 -/* E0258 80149B58 00081880 */ sll $v1, $t0, 2 -.L80149B5C: -/* E025C 80149B5C 3C028015 */ lui $v0, %hi(D_80151308) -/* E0260 80149B60 94421308 */ lhu $v0, %lo(D_80151308)($v0) -/* E0264 80149B64 00081880 */ sll $v1, $t0, 2 -.L80149B68: -/* E0268 80149B68 000210C0 */ sll $v0, $v0, 3 -/* E026C 80149B6C 00621821 */ addu $v1, $v1, $v0 -/* E0270 80149B70 3C048015 */ lui $a0, %hi(D_8014F6B4) -/* E0274 80149B74 00832021 */ addu $a0, $a0, $v1 -/* E0278 80149B78 8C84F6B4 */ lw $a0, %lo(D_8014F6B4)($a0) -/* E027C 80149B7C 080526F2 */ j .L80149BC8 -/* E0280 80149B80 30A500FF */ andi $a1, $a1, 0xff -.L80149B84: -/* E0284 80149B84 3C038015 */ lui $v1, %hi(D_8014F5A4) -/* E0288 80149B88 2463F5A4 */ addiu $v1, $v1, %lo(D_8014F5A4) -/* E028C 80149B8C 00432021 */ addu $a0, $v0, $v1 -/* E0290 80149B90 84820006 */ lh $v0, 6($a0) -/* E0294 80149B94 84830004 */ lh $v1, 4($a0) -/* E0298 80149B98 0043102A */ slt $v0, $v0, $v1 -/* E029C 80149B9C 50400001 */ beql $v0, $zero, .L80149BA4 -/* E02A0 80149BA0 A4800006 */ sh $zero, 6($a0) -.L80149BA4: -/* E02A4 80149BA4 94820006 */ lhu $v0, 6($a0) -/* E02A8 80149BA8 24430001 */ addiu $v1, $v0, 1 -/* E02AC 80149BAC 00021400 */ sll $v0, $v0, 0x10 -/* E02B0 80149BB0 A4830006 */ sh $v1, 6($a0) -/* E02B4 80149BB4 8C830000 */ lw $v1, ($a0) -/* E02B8 80149BB8 00021383 */ sra $v0, $v0, 0xe -/* E02BC 80149BBC 00431021 */ addu $v0, $v0, $v1 -/* E02C0 80149BC0 8C440000 */ lw $a0, ($v0) -/* E02C4 80149BC4 30A500FF */ andi $a1, $a1, 0xff -.L80149BC8: -/* E02C8 80149BC8 30C600FF */ andi $a2, $a2, 0xff -/* E02CC 80149BCC 00093C00 */ sll $a3, $t1, 0x10 -/* E02D0 80149BD0 0C015490 */ jal snd_start_sound_with_shift -/* E02D4 80149BD4 00073C03 */ sra $a3, $a3, 0x10 -.L80149BD8: -/* E02D8 80149BD8 8FBF0010 */ lw $ra, 0x10($sp) -/* E02DC 80149BDC 03E00008 */ jr $ra -/* E02E0 80149BE0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240020_DF6A20.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240020_DF6A20.s deleted file mode 100644 index 252043790f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240020_DF6A20.s +++ /dev/null @@ -1,153 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240020_DF6A20 -/* DF6A20 80240020 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* DF6A24 80240024 AFB00088 */ sw $s0, 0x88($sp) -/* DF6A28 80240028 00A0802D */ daddu $s0, $a1, $zero -/* DF6A2C 8024002C AFBF00A0 */ sw $ra, 0xa0($sp) -/* DF6A30 80240030 AFB5009C */ sw $s5, 0x9c($sp) -/* DF6A34 80240034 AFB40098 */ sw $s4, 0x98($sp) -/* DF6A38 80240038 AFB30094 */ sw $s3, 0x94($sp) -/* DF6A3C 8024003C AFB20090 */ sw $s2, 0x90($sp) -/* DF6A40 80240040 AFB1008C */ sw $s1, 0x8c($sp) -/* DF6A44 80240044 F7BA00C0 */ sdc1 $f26, 0xc0($sp) -/* DF6A48 80240048 F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* DF6A4C 8024004C F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* DF6A50 80240050 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* DF6A54 80240054 C6160010 */ lwc1 $f22, 0x10($s0) -/* DF6A58 80240058 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF6A5C 8024005C 4480D000 */ mtc1 $zero, $f26 -/* DF6A60 80240060 3C01437F */ lui $at, 0x437f -/* DF6A64 80240064 4481A000 */ mtc1 $at, $f20 -/* DF6A68 80240068 8C82001C */ lw $v0, 0x1c($a0) -/* DF6A6C 8024006C 4405D000 */ mfc1 $a1, $f26 -/* DF6A70 80240070 4406A000 */ mfc1 $a2, $f20 -/* DF6A74 80240074 C6180014 */ lwc1 $f24, 0x14($s0) -/* DF6A78 80240078 4680C620 */ cvt.s.w $f24, $f24 -/* DF6A7C 8024007C AFA20010 */ sw $v0, 0x10($sp) -/* DF6A80 80240080 8E070018 */ lw $a3, 0x18($s0) -/* DF6A84 80240084 0C00A8ED */ jal update_lerp -/* DF6A88 80240088 0000202D */ daddu $a0, $zero, $zero -/* DF6A8C 8024008C 4600A03C */ c.lt.s $f20, $f0 -/* DF6A90 80240090 00000000 */ nop -/* DF6A94 80240094 45000002 */ bc1f .L802400A0 -/* DF6A98 80240098 27B10038 */ addiu $s1, $sp, 0x38 -/* DF6A9C 8024009C 4600A006 */ mov.s $f0, $f20 -.L802400A0: -/* DF6AA0 802400A0 4600010D */ trunc.w.s $f4, $f0 -/* DF6AA4 802400A4 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6AA8 802400A8 0000202D */ daddu $a0, $zero, $zero -/* DF6AAC 802400AC 24050007 */ addiu $a1, $zero, 7 -/* DF6AB0 802400B0 240600FF */ addiu $a2, $zero, 0xff -/* DF6AB4 802400B4 00C0382D */ daddu $a3, $a2, $zero -/* DF6AB8 802400B8 00C0A82D */ daddu $s5, $a2, $zero -/* DF6ABC 802400BC AFB50010 */ sw $s5, 0x10($sp) -/* DF6AC0 802400C0 0C04EAA7 */ jal fold_update -/* DF6AC4 802400C4 AFA00018 */ sw $zero, 0x18($sp) -/* DF6AC8 802400C8 AFB10010 */ sw $s1, 0x10($sp) -/* DF6ACC 802400CC 8E040004 */ lw $a0, 4($s0) -/* DF6AD0 802400D0 8E050008 */ lw $a1, 8($s0) -/* DF6AD4 802400D4 8E060000 */ lw $a2, ($s0) -/* DF6AD8 802400D8 8E07000C */ lw $a3, 0xc($s0) -/* DF6ADC 802400DC 0C04BA38 */ jal msg_get_glyph -/* DF6AE0 802400E0 3C140001 */ lui $s4, 1 -/* DF6AE4 802400E4 93A20042 */ lbu $v0, 0x42($sp) -/* DF6AE8 802400E8 3C013FE0 */ lui $at, 0x3fe0 -/* DF6AEC 802400EC 4481A800 */ mtc1 $at, $f21 -/* DF6AF0 802400F0 4480A000 */ mtc1 $zero, $f20 -/* DF6AF4 802400F4 44820000 */ mtc1 $v0, $f0 -/* DF6AF8 802400F8 00000000 */ nop -/* DF6AFC 802400FC 46800021 */ cvt.d.w $f0, $f0 -/* DF6B00 80240100 46340002 */ mul.d $f0, $f0, $f20 -/* DF6B04 80240104 00000000 */ nop -/* DF6B08 80240108 36941630 */ ori $s4, $s4, 0x1630 -/* DF6B0C 8024010C 4600B0A1 */ cvt.d.s $f2, $f22 -/* DF6B10 80240110 27B00048 */ addiu $s0, $sp, 0x48 -/* DF6B14 80240114 4600C607 */ neg.s $f24, $f24 -/* DF6B18 80240118 46201080 */ add.d $f2, $f2, $f0 -/* DF6B1C 8024011C 4406C000 */ mfc1 $a2, $f24 -/* DF6B20 80240120 4407D000 */ mfc1 $a3, $f26 -/* DF6B24 80240124 462010A0 */ cvt.s.d $f2, $f2 -/* DF6B28 80240128 44051000 */ mfc1 $a1, $f2 -/* DF6B2C 8024012C 0C019E40 */ jal guTranslateF -/* DF6B30 80240130 0200202D */ daddu $a0, $s0, $zero -/* DF6B34 80240134 0200202D */ daddu $a0, $s0, $zero -/* DF6B38 80240138 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* DF6B3C 8024013C 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* DF6B40 80240140 3C13800A */ lui $s3, %hi(gDisplayContext) -/* DF6B44 80240144 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* DF6B48 80240148 96450000 */ lhu $a1, ($s2) -/* DF6B4C 8024014C 8E620000 */ lw $v0, ($s3) -/* DF6B50 80240150 00052980 */ sll $a1, $a1, 6 -/* DF6B54 80240154 00B42821 */ addu $a1, $a1, $s4 -/* DF6B58 80240158 0C019D40 */ jal guMtxF2L -/* DF6B5C 8024015C 00452821 */ addu $a1, $v0, $a1 -/* DF6B60 80240160 3C03DA38 */ lui $v1, 0xda38 -/* DF6B64 80240164 34630002 */ ori $v1, $v1, 2 -/* DF6B68 80240168 0000202D */ daddu $a0, $zero, $zero -/* DF6B6C 8024016C 27A50020 */ addiu $a1, $sp, 0x20 -/* DF6B70 80240170 3C060005 */ lui $a2, 5 -/* DF6B74 80240174 34C60040 */ ori $a2, $a2, 0x40 -/* DF6B78 80240178 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* DF6B7C 8024017C 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* DF6B80 80240180 0200382D */ daddu $a3, $s0, $zero -/* DF6B84 80240184 8E220000 */ lw $v0, ($s1) -/* DF6B88 80240188 96480000 */ lhu $t0, ($s2) -/* DF6B8C 8024018C 0040482D */ daddu $t1, $v0, $zero -/* DF6B90 80240190 24420008 */ addiu $v0, $v0, 8 -/* DF6B94 80240194 AE220000 */ sw $v0, ($s1) -/* DF6B98 80240198 3102FFFF */ andi $v0, $t0, 0xffff -/* DF6B9C 8024019C 00021180 */ sll $v0, $v0, 6 -/* DF6BA0 802401A0 00541021 */ addu $v0, $v0, $s4 -/* DF6BA4 802401A4 AD230000 */ sw $v1, ($t1) -/* DF6BA8 802401A8 8E630000 */ lw $v1, ($s3) -/* DF6BAC 802401AC 25080001 */ addiu $t0, $t0, 1 -/* DF6BB0 802401B0 00621821 */ addu $v1, $v1, $v0 -/* DF6BB4 802401B4 3C028000 */ lui $v0, 0x8000 -/* DF6BB8 802401B8 00621821 */ addu $v1, $v1, $v0 -/* DF6BBC 802401BC AD230004 */ sw $v1, 4($t1) -/* DF6BC0 802401C0 93A20042 */ lbu $v0, 0x42($sp) -/* DF6BC4 802401C4 8FA3003C */ lw $v1, 0x3c($sp) -/* DF6BC8 802401C8 93A90040 */ lbu $t1, 0x40($sp) -/* DF6BCC 802401CC 93AA0041 */ lbu $t2, 0x41($sp) -/* DF6BD0 802401D0 44820000 */ mtc1 $v0, $f0 -/* DF6BD4 802401D4 00000000 */ nop -/* DF6BD8 802401D8 46800021 */ cvt.d.w $f0, $f0 -/* DF6BDC 802401DC 8FA20038 */ lw $v0, 0x38($sp) -/* DF6BE0 802401E0 46340002 */ mul.d $f0, $f0, $f20 -/* DF6BE4 802401E4 00000000 */ nop -/* DF6BE8 802401E8 A6480000 */ sh $t0, ($s2) -/* DF6BEC 802401EC A7A0002E */ sh $zero, 0x2e($sp) -/* DF6BF0 802401F0 A3B50030 */ sb $s5, 0x30($sp) -/* DF6BF4 802401F4 AFA30024 */ sw $v1, 0x24($sp) -/* DF6BF8 802401F8 A7A90028 */ sh $t1, 0x28($sp) -/* DF6BFC 802401FC A7AA002A */ sh $t2, 0x2a($sp) -/* DF6C00 80240200 AFA20020 */ sw $v0, 0x20($sp) -/* DF6C04 80240204 46200007 */ neg.d $f0, $f0 -/* DF6C08 80240208 4620010D */ trunc.w.d $f4, $f0 -/* DF6C0C 8024020C 44022000 */ mfc1 $v0, $f4 -/* DF6C10 80240210 0C04EBDC */ jal fold_appendGfx_component -/* DF6C14 80240214 A7A2002C */ sh $v0, 0x2c($sp) -/* DF6C18 80240218 3C04D838 */ lui $a0, 0xd838 -/* DF6C1C 8024021C 8E220000 */ lw $v0, ($s1) -/* DF6C20 80240220 34840002 */ ori $a0, $a0, 2 -/* DF6C24 80240224 0040182D */ daddu $v1, $v0, $zero -/* DF6C28 80240228 24420008 */ addiu $v0, $v0, 8 -/* DF6C2C 8024022C AE220000 */ sw $v0, ($s1) -/* DF6C30 80240230 24020040 */ addiu $v0, $zero, 0x40 -/* DF6C34 80240234 AC640000 */ sw $a0, ($v1) -/* DF6C38 80240238 AC620004 */ sw $v0, 4($v1) -/* DF6C3C 8024023C 8FBF00A0 */ lw $ra, 0xa0($sp) -/* DF6C40 80240240 8FB5009C */ lw $s5, 0x9c($sp) -/* DF6C44 80240244 8FB40098 */ lw $s4, 0x98($sp) -/* DF6C48 80240248 8FB30094 */ lw $s3, 0x94($sp) -/* DF6C4C 8024024C 8FB20090 */ lw $s2, 0x90($sp) -/* DF6C50 80240250 8FB1008C */ lw $s1, 0x8c($sp) -/* DF6C54 80240254 8FB00088 */ lw $s0, 0x88($sp) -/* DF6C58 80240258 D7BA00C0 */ ldc1 $f26, 0xc0($sp) -/* DF6C5C 8024025C D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* DF6C60 80240260 D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* DF6C64 80240264 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* DF6C68 80240268 03E00008 */ jr $ra -/* DF6C6C 8024026C 27BD00C8 */ addiu $sp, $sp, 0xc8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240270_DF6C70.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240270_DF6C70.s deleted file mode 100644 index c85a983f05..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240270_DF6C70.s +++ /dev/null @@ -1,190 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240270_DF6C70 -/* DF6C70 80240270 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* DF6C74 80240274 AFB1008C */ sw $s1, 0x8c($sp) -/* DF6C78 80240278 0080882D */ daddu $s1, $a0, $zero -/* DF6C7C 8024027C AFB00088 */ sw $s0, 0x88($sp) -/* DF6C80 80240280 00A0802D */ daddu $s0, $a1, $zero -/* DF6C84 80240284 0000202D */ daddu $a0, $zero, $zero -/* DF6C88 80240288 AFBF00A0 */ sw $ra, 0xa0($sp) -/* DF6C8C 8024028C AFB5009C */ sw $s5, 0x9c($sp) -/* DF6C90 80240290 AFB40098 */ sw $s4, 0x98($sp) -/* DF6C94 80240294 AFB30094 */ sw $s3, 0x94($sp) -/* DF6C98 80240298 AFB20090 */ sw $s2, 0x90($sp) -/* DF6C9C 8024029C F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* DF6CA0 802402A0 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* DF6CA4 802402A4 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* DF6CA8 802402A8 C6160010 */ lwc1 $f22, 0x10($s0) -/* DF6CAC 802402AC 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF6CB0 802402B0 3C01437F */ lui $at, 0x437f -/* DF6CB4 802402B4 4481A000 */ mtc1 $at, $f20 -/* DF6CB8 802402B8 8E22001C */ lw $v0, 0x1c($s1) -/* DF6CBC 802402BC 4406A000 */ mfc1 $a2, $f20 -/* DF6CC0 802402C0 C6180014 */ lwc1 $f24, 0x14($s0) -/* DF6CC4 802402C4 4680C620 */ cvt.s.w $f24, $f24 -/* DF6CC8 802402C8 AFA20010 */ sw $v0, 0x10($sp) -/* DF6CCC 802402CC 8E070018 */ lw $a3, 0x18($s0) -/* DF6CD0 802402D0 0C00A8ED */ jal update_lerp -/* DF6CD4 802402D4 0000282D */ daddu $a1, $zero, $zero -/* DF6CD8 802402D8 4600A03C */ c.lt.s $f20, $f0 -/* DF6CDC 802402DC 00000000 */ nop -/* DF6CE0 802402E0 45000002 */ bc1f .L802402EC -/* DF6CE4 802402E4 27B50038 */ addiu $s5, $sp, 0x38 -/* DF6CE8 802402E8 4600A006 */ mov.s $f0, $f20 -.L802402EC: -/* DF6CEC 802402EC 8E24001C */ lw $a0, 0x1c($s1) -/* DF6CF0 802402F0 8E030018 */ lw $v1, 0x18($s0) -/* DF6CF4 802402F4 2482FFFC */ addiu $v0, $a0, -4 -/* DF6CF8 802402F8 14620007 */ bne $v1, $v0, .L80240318 -/* DF6CFC 802402FC 2482FFFD */ addiu $v0, $a0, -3 -/* DF6D00 80240300 4600010D */ trunc.w.s $f4, $f0 -/* DF6D04 80240304 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6D08 80240308 0000202D */ daddu $a0, $zero, $zero -/* DF6D0C 8024030C 2405000A */ addiu $a1, $zero, 0xa -/* DF6D10 80240310 080900E1 */ j .L80240384 -/* DF6D14 80240314 24060040 */ addiu $a2, $zero, 0x40 -.L80240318: -/* DF6D18 80240318 14620007 */ bne $v1, $v0, .L80240338 -/* DF6D1C 8024031C 2482FFFE */ addiu $v0, $a0, -2 -/* DF6D20 80240320 4600010D */ trunc.w.s $f4, $f0 -/* DF6D24 80240324 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6D28 80240328 0000202D */ daddu $a0, $zero, $zero -/* DF6D2C 8024032C 2405000A */ addiu $a1, $zero, 0xa -/* DF6D30 80240330 080900E1 */ j .L80240384 -/* DF6D34 80240334 24060060 */ addiu $a2, $zero, 0x60 -.L80240338: -/* DF6D38 80240338 14620007 */ bne $v1, $v0, .L80240358 -/* DF6D3C 8024033C 2482FFFF */ addiu $v0, $a0, -1 -/* DF6D40 80240340 4600010D */ trunc.w.s $f4, $f0 -/* DF6D44 80240344 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6D48 80240348 0000202D */ daddu $a0, $zero, $zero -/* DF6D4C 8024034C 2405000A */ addiu $a1, $zero, 0xa -/* DF6D50 80240350 080900E1 */ j .L80240384 -/* DF6D54 80240354 2406007F */ addiu $a2, $zero, 0x7f -.L80240358: -/* DF6D58 80240358 14620006 */ bne $v1, $v0, .L80240374 -/* DF6D5C 8024035C 0000202D */ daddu $a0, $zero, $zero -/* DF6D60 80240360 4600010D */ trunc.w.s $f4, $f0 -/* DF6D64 80240364 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6D68 80240368 2405000A */ addiu $a1, $zero, 0xa -/* DF6D6C 8024036C 080900E1 */ j .L80240384 -/* DF6D70 80240370 24060050 */ addiu $a2, $zero, 0x50 -.L80240374: -/* DF6D74 80240374 4600010D */ trunc.w.s $f4, $f0 -/* DF6D78 80240378 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6D7C 8024037C 24050007 */ addiu $a1, $zero, 7 -/* DF6D80 80240380 240600FF */ addiu $a2, $zero, 0xff -.L80240384: -/* DF6D84 80240384 00C0382D */ daddu $a3, $a2, $zero -/* DF6D88 80240388 00C0102D */ daddu $v0, $a2, $zero -/* DF6D8C 8024038C AFA20010 */ sw $v0, 0x10($sp) -/* DF6D90 80240390 0C04EAA7 */ jal fold_update -/* DF6D94 80240394 AFA00018 */ sw $zero, 0x18($sp) -/* DF6D98 80240398 AFB50010 */ sw $s5, 0x10($sp) -/* DF6D9C 8024039C 8E040004 */ lw $a0, 4($s0) -/* DF6DA0 802403A0 8E050008 */ lw $a1, 8($s0) -/* DF6DA4 802403A4 8E060000 */ lw $a2, ($s0) -/* DF6DA8 802403A8 8E07000C */ lw $a3, 0xc($s0) -/* DF6DAC 802403AC 0C04BA38 */ jal msg_get_glyph -/* DF6DB0 802403B0 3C140001 */ lui $s4, 1 -/* DF6DB4 802403B4 92A2000A */ lbu $v0, 0xa($s5) -/* DF6DB8 802403B8 3C013FE0 */ lui $at, 0x3fe0 -/* DF6DBC 802403BC 4481A800 */ mtc1 $at, $f21 -/* DF6DC0 802403C0 4480A000 */ mtc1 $zero, $f20 -/* DF6DC4 802403C4 44820000 */ mtc1 $v0, $f0 -/* DF6DC8 802403C8 00000000 */ nop -/* DF6DCC 802403CC 46800021 */ cvt.d.w $f0, $f0 -/* DF6DD0 802403D0 46340002 */ mul.d $f0, $f0, $f20 -/* DF6DD4 802403D4 00000000 */ nop -/* DF6DD8 802403D8 36941630 */ ori $s4, $s4, 0x1630 -/* DF6DDC 802403DC 4600B0A1 */ cvt.d.s $f2, $f22 -/* DF6DE0 802403E0 46201080 */ add.d $f2, $f2, $f0 -/* DF6DE4 802403E4 27B30048 */ addiu $s3, $sp, 0x48 -/* DF6DE8 802403E8 0260202D */ daddu $a0, $s3, $zero -/* DF6DEC 802403EC 4600C607 */ neg.s $f24, $f24 -/* DF6DF0 802403F0 4406C000 */ mfc1 $a2, $f24 -/* DF6DF4 802403F4 462010A0 */ cvt.s.d $f2, $f2 -/* DF6DF8 802403F8 44051000 */ mfc1 $a1, $f2 -/* DF6DFC 802403FC 0C019E40 */ jal guTranslateF -/* DF6E00 80240400 0000382D */ daddu $a3, $zero, $zero -/* DF6E04 80240404 0260202D */ daddu $a0, $s3, $zero -/* DF6E08 80240408 3C108007 */ lui $s0, %hi(gMatrixListPos) -/* DF6E0C 8024040C 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos) -/* DF6E10 80240410 3C12800A */ lui $s2, %hi(gDisplayContext) -/* DF6E14 80240414 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* DF6E18 80240418 96050000 */ lhu $a1, ($s0) -/* DF6E1C 8024041C 8E420000 */ lw $v0, ($s2) -/* DF6E20 80240420 00052980 */ sll $a1, $a1, 6 -/* DF6E24 80240424 00B42821 */ addu $a1, $a1, $s4 -/* DF6E28 80240428 0C019D40 */ jal guMtxF2L -/* DF6E2C 8024042C 00452821 */ addu $a1, $v0, $a1 -/* DF6E30 80240430 3C02DA38 */ lui $v0, 0xda38 -/* DF6E34 80240434 34420002 */ ori $v0, $v0, 2 -/* DF6E38 80240438 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* DF6E3C 8024043C 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* DF6E40 80240440 8E240000 */ lw $a0, ($s1) -/* DF6E44 80240444 96050000 */ lhu $a1, ($s0) -/* DF6E48 80240448 0080302D */ daddu $a2, $a0, $zero -/* DF6E4C 8024044C ACC20000 */ sw $v0, ($a2) -/* DF6E50 80240450 30A2FFFF */ andi $v0, $a1, 0xffff -/* DF6E54 80240454 00021180 */ sll $v0, $v0, 6 -/* DF6E58 80240458 8E430000 */ lw $v1, ($s2) -/* DF6E5C 8024045C 00541021 */ addu $v0, $v0, $s4 -/* DF6E60 80240460 00621821 */ addu $v1, $v1, $v0 -/* DF6E64 80240464 3C028000 */ lui $v0, 0x8000 -/* DF6E68 80240468 00621821 */ addu $v1, $v1, $v0 -/* DF6E6C 8024046C ACC30004 */ sw $v1, 4($a2) -/* DF6E70 80240470 8EA20000 */ lw $v0, ($s5) -/* DF6E74 80240474 24840008 */ addiu $a0, $a0, 8 -/* DF6E78 80240478 AE240000 */ sw $a0, ($s1) -/* DF6E7C 8024047C AFA20020 */ sw $v0, 0x20($sp) -/* DF6E80 80240480 8EA20004 */ lw $v0, 4($s5) -/* DF6E84 80240484 24A50001 */ addiu $a1, $a1, 1 -/* DF6E88 80240488 A6050000 */ sh $a1, ($s0) -/* DF6E8C 8024048C AFA20024 */ sw $v0, 0x24($sp) -/* DF6E90 80240490 92A20008 */ lbu $v0, 8($s5) -/* DF6E94 80240494 A7A20028 */ sh $v0, 0x28($sp) -/* DF6E98 80240498 92A20009 */ lbu $v0, 9($s5) -/* DF6E9C 8024049C A7A2002A */ sh $v0, 0x2a($sp) -/* DF6EA0 802404A0 92A2000A */ lbu $v0, 0xa($s5) -/* DF6EA4 802404A4 0260382D */ daddu $a3, $s3, $zero -/* DF6EA8 802404A8 44820000 */ mtc1 $v0, $f0 -/* DF6EAC 802404AC 00000000 */ nop -/* DF6EB0 802404B0 46800021 */ cvt.d.w $f0, $f0 -/* DF6EB4 802404B4 46340002 */ mul.d $f0, $f0, $f20 -/* DF6EB8 802404B8 00000000 */ nop -/* DF6EBC 802404BC 0000202D */ daddu $a0, $zero, $zero -/* DF6EC0 802404C0 3C060005 */ lui $a2, 5 -/* DF6EC4 802404C4 34C60040 */ ori $a2, $a2, 0x40 -/* DF6EC8 802404C8 27A50020 */ addiu $a1, $sp, 0x20 -/* DF6ECC 802404CC A7A0002E */ sh $zero, 0x2e($sp) -/* DF6ED0 802404D0 240200FF */ addiu $v0, $zero, 0xff -/* DF6ED4 802404D4 A3A20030 */ sb $v0, 0x30($sp) -/* DF6ED8 802404D8 46200007 */ neg.d $f0, $f0 -/* DF6EDC 802404DC 4620010D */ trunc.w.d $f4, $f0 -/* DF6EE0 802404E0 44022000 */ mfc1 $v0, $f4 -/* DF6EE4 802404E4 0C04EBDC */ jal fold_appendGfx_component -/* DF6EE8 802404E8 A7A2002C */ sh $v0, 0x2c($sp) -/* DF6EEC 802404EC 3C04D838 */ lui $a0, 0xd838 -/* DF6EF0 802404F0 8E220000 */ lw $v0, ($s1) -/* DF6EF4 802404F4 34840002 */ ori $a0, $a0, 2 -/* DF6EF8 802404F8 0040182D */ daddu $v1, $v0, $zero -/* DF6EFC 802404FC 24420008 */ addiu $v0, $v0, 8 -/* DF6F00 80240500 AE220000 */ sw $v0, ($s1) -/* DF6F04 80240504 24020040 */ addiu $v0, $zero, 0x40 -/* DF6F08 80240508 AC640000 */ sw $a0, ($v1) -/* DF6F0C 8024050C AC620004 */ sw $v0, 4($v1) -/* DF6F10 80240510 8FBF00A0 */ lw $ra, 0xa0($sp) -/* DF6F14 80240514 8FB5009C */ lw $s5, 0x9c($sp) -/* DF6F18 80240518 8FB40098 */ lw $s4, 0x98($sp) -/* DF6F1C 8024051C 8FB30094 */ lw $s3, 0x94($sp) -/* DF6F20 80240520 8FB20090 */ lw $s2, 0x90($sp) -/* DF6F24 80240524 8FB1008C */ lw $s1, 0x8c($sp) -/* DF6F28 80240528 8FB00088 */ lw $s0, 0x88($sp) -/* DF6F2C 8024052C D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* DF6F30 80240530 D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* DF6F34 80240534 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* DF6F38 80240538 03E00008 */ jr $ra -/* DF6F3C 8024053C 27BD00C0 */ addiu $sp, $sp, 0xc0 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240540_DF6F40.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240540_DF6F40.s deleted file mode 100644 index cd18b28788..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240540_DF6F40.s +++ /dev/null @@ -1,190 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240540_DF6F40 -/* DF6F40 80240540 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* DF6F44 80240544 AFB200D0 */ sw $s2, 0xd0($sp) -/* DF6F48 80240548 0080902D */ daddu $s2, $a0, $zero -/* DF6F4C 8024054C AFB000C8 */ sw $s0, 0xc8($sp) -/* DF6F50 80240550 00A0802D */ daddu $s0, $a1, $zero -/* DF6F54 80240554 AFBF00E0 */ sw $ra, 0xe0($sp) -/* DF6F58 80240558 AFB500DC */ sw $s5, 0xdc($sp) -/* DF6F5C 8024055C AFB400D8 */ sw $s4, 0xd8($sp) -/* DF6F60 80240560 AFB300D4 */ sw $s3, 0xd4($sp) -/* DF6F64 80240564 AFB100CC */ sw $s1, 0xcc($sp) -/* DF6F68 80240568 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* DF6F6C 8024056C F7BA0100 */ sdc1 $f26, 0x100($sp) -/* DF6F70 80240570 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* DF6F74 80240574 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* DF6F78 80240578 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* DF6F7C 8024057C C6160010 */ lwc1 $f22, 0x10($s0) -/* DF6F80 80240580 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF6F84 80240584 3C054180 */ lui $a1, 0x4180 -/* DF6F88 80240588 3C064396 */ lui $a2, 0x4396 -/* DF6F8C 8024058C 8E42001C */ lw $v0, 0x1c($s2) -/* DF6F90 80240590 C61C0014 */ lwc1 $f28, 0x14($s0) -/* DF6F94 80240594 4680E720 */ cvt.s.w $f28, $f28 -/* DF6F98 80240598 AFA20010 */ sw $v0, 0x10($sp) -/* DF6F9C 8024059C 8E070018 */ lw $a3, 0x18($s0) -/* DF6FA0 802405A0 0C00A8ED */ jal update_lerp -/* DF6FA4 802405A4 2404000C */ addiu $a0, $zero, 0xc -/* DF6FA8 802405A8 3C01437F */ lui $at, 0x437f -/* DF6FAC 802405AC 44811000 */ mtc1 $at, $f2 -/* DF6FB0 802405B0 00000000 */ nop -/* DF6FB4 802405B4 4600103C */ c.lt.s $f2, $f0 -/* DF6FB8 802405B8 00000000 */ nop -/* DF6FBC 802405BC 45000002 */ bc1f .L802405C8 -/* DF6FC0 802405C0 27B10038 */ addiu $s1, $sp, 0x38 -/* DF6FC4 802405C4 46001006 */ mov.s $f0, $f2 -.L802405C8: -/* DF6FC8 802405C8 4600010D */ trunc.w.s $f4, $f0 -/* DF6FCC 802405CC E7A40014 */ swc1 $f4, 0x14($sp) -/* DF6FD0 802405D0 0000202D */ daddu $a0, $zero, $zero -/* DF6FD4 802405D4 24050007 */ addiu $a1, $zero, 7 -/* DF6FD8 802405D8 240600FF */ addiu $a2, $zero, 0xff -/* DF6FDC 802405DC 00C0382D */ daddu $a3, $a2, $zero -/* DF6FE0 802405E0 00C0A82D */ daddu $s5, $a2, $zero -/* DF6FE4 802405E4 AFB50010 */ sw $s5, 0x10($sp) -/* DF6FE8 802405E8 0C04EAA7 */ jal fold_update -/* DF6FEC 802405EC AFA00018 */ sw $zero, 0x18($sp) -/* DF6FF0 802405F0 8E42001C */ lw $v0, 0x1c($s2) -/* DF6FF4 802405F4 3C053E4C */ lui $a1, 0x3e4c -/* DF6FF8 802405F8 34A5CCCD */ ori $a1, $a1, 0xcccd -/* DF6FFC 802405FC 3C064000 */ lui $a2, 0x4000 -/* DF7000 80240600 AFA20010 */ sw $v0, 0x10($sp) -/* DF7004 80240604 8E070018 */ lw $a3, 0x18($s0) -/* DF7008 80240608 0C00A8ED */ jal update_lerp -/* DF700C 8024060C 0000202D */ daddu $a0, $zero, $zero -/* DF7010 80240610 46000506 */ mov.s $f20, $f0 -/* DF7014 80240614 3C013FF0 */ lui $at, 0x3ff0 -/* DF7018 80240618 4481C800 */ mtc1 $at, $f25 -/* DF701C 8024061C 4480C000 */ mtc1 $zero, $f24 -/* DF7020 80240620 4600A021 */ cvt.d.s $f0, $f20 -/* DF7024 80240624 4620C03C */ c.lt.d $f24, $f0 -/* DF7028 80240628 00000000 */ nop -/* DF702C 8024062C 45000003 */ bc1f .L8024063C -/* DF7030 80240630 AFB10010 */ sw $s1, 0x10($sp) -/* DF7034 80240634 3C013F80 */ lui $at, 0x3f80 -/* DF7038 80240638 4481A000 */ mtc1 $at, $f20 -.L8024063C: -/* DF703C 8024063C 8E040004 */ lw $a0, 4($s0) -/* DF7040 80240640 8E050008 */ lw $a1, 8($s0) -/* DF7044 80240644 8E060000 */ lw $a2, ($s0) -/* DF7048 80240648 0C04BA38 */ jal msg_get_glyph -/* DF704C 8024064C 8E07000C */ lw $a3, 0xc($s0) -/* DF7050 80240650 93A20042 */ lbu $v0, 0x42($sp) -/* DF7054 80240654 3C013FE0 */ lui $at, 0x3fe0 -/* DF7058 80240658 4481D800 */ mtc1 $at, $f27 -/* DF705C 8024065C 4480D000 */ mtc1 $zero, $f26 -/* DF7060 80240660 44820000 */ mtc1 $v0, $f0 -/* DF7064 80240664 00000000 */ nop -/* DF7068 80240668 46800021 */ cvt.d.w $f0, $f0 -/* DF706C 8024066C 463A0002 */ mul.d $f0, $f0, $f26 -/* DF7070 80240670 00000000 */ nop -/* DF7074 80240674 4600B0A1 */ cvt.d.s $f2, $f22 -/* DF7078 80240678 46201080 */ add.d $f2, $f2, $f0 -/* DF707C 8024067C 27B40048 */ addiu $s4, $sp, 0x48 -/* DF7080 80240680 0280202D */ daddu $a0, $s4, $zero -/* DF7084 80240684 4600E707 */ neg.s $f28, $f28 -/* DF7088 80240688 4406E000 */ mfc1 $a2, $f28 -/* DF708C 8024068C 462010A0 */ cvt.s.d $f2, $f2 -/* DF7090 80240690 44051000 */ mfc1 $a1, $f2 -/* DF7094 80240694 0C019E40 */ jal guTranslateF -/* DF7098 80240698 0000382D */ daddu $a3, $zero, $zero -/* DF709C 8024069C 4600A021 */ cvt.d.s $f0, $f20 -/* DF70A0 802406A0 46380032 */ c.eq.d $f0, $f24 -/* DF70A4 802406A4 00000000 */ nop -/* DF70A8 802406A8 4501000C */ bc1t .L802406DC -/* DF70AC 802406AC 3C130001 */ lui $s3, 1 -/* DF70B0 802406B0 27B00088 */ addiu $s0, $sp, 0x88 -/* DF70B4 802406B4 0200202D */ daddu $a0, $s0, $zero -/* DF70B8 802406B8 4405A000 */ mfc1 $a1, $f20 -/* DF70BC 802406BC 3C073F80 */ lui $a3, 0x3f80 -/* DF70C0 802406C0 0C019DF0 */ jal guScaleF -/* DF70C4 802406C4 00A0302D */ daddu $a2, $a1, $zero -/* DF70C8 802406C8 0200202D */ daddu $a0, $s0, $zero -/* DF70CC 802406CC 0280282D */ daddu $a1, $s4, $zero -/* DF70D0 802406D0 0C019D80 */ jal guMtxCatF -/* DF70D4 802406D4 0280302D */ daddu $a2, $s4, $zero -/* DF70D8 802406D8 3C130001 */ lui $s3, 1 -.L802406DC: -/* DF70DC 802406DC 36731630 */ ori $s3, $s3, 0x1630 -/* DF70E0 802406E0 0280202D */ daddu $a0, $s4, $zero -/* DF70E4 802406E4 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* DF70E8 802406E8 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* DF70EC 802406EC 3C12800A */ lui $s2, %hi(gDisplayContext) -/* DF70F0 802406F0 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* DF70F4 802406F4 96250000 */ lhu $a1, ($s1) -/* DF70F8 802406F8 8E420000 */ lw $v0, ($s2) -/* DF70FC 802406FC 00052980 */ sll $a1, $a1, 6 -/* DF7100 80240700 00B32821 */ addu $a1, $a1, $s3 -/* DF7104 80240704 0C019D40 */ jal guMtxF2L -/* DF7108 80240708 00452821 */ addu $a1, $v0, $a1 -/* DF710C 8024070C 3C03DA38 */ lui $v1, 0xda38 -/* DF7110 80240710 34630002 */ ori $v1, $v1, 2 -/* DF7114 80240714 0000202D */ daddu $a0, $zero, $zero -/* DF7118 80240718 27A50020 */ addiu $a1, $sp, 0x20 -/* DF711C 8024071C 24060040 */ addiu $a2, $zero, 0x40 -/* DF7120 80240720 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* DF7124 80240724 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* DF7128 80240728 0280382D */ daddu $a3, $s4, $zero -/* DF712C 8024072C 8E020000 */ lw $v0, ($s0) -/* DF7130 80240730 96280000 */ lhu $t0, ($s1) -/* DF7134 80240734 0040482D */ daddu $t1, $v0, $zero -/* DF7138 80240738 24420008 */ addiu $v0, $v0, 8 -/* DF713C 8024073C AE020000 */ sw $v0, ($s0) -/* DF7140 80240740 3102FFFF */ andi $v0, $t0, 0xffff -/* DF7144 80240744 00021180 */ sll $v0, $v0, 6 -/* DF7148 80240748 00531021 */ addu $v0, $v0, $s3 -/* DF714C 8024074C AD230000 */ sw $v1, ($t1) -/* DF7150 80240750 8E430000 */ lw $v1, ($s2) -/* DF7154 80240754 25080001 */ addiu $t0, $t0, 1 -/* DF7158 80240758 00621821 */ addu $v1, $v1, $v0 -/* DF715C 8024075C 3C028000 */ lui $v0, 0x8000 -/* DF7160 80240760 00621821 */ addu $v1, $v1, $v0 -/* DF7164 80240764 AD230004 */ sw $v1, 4($t1) -/* DF7168 80240768 93A20042 */ lbu $v0, 0x42($sp) -/* DF716C 8024076C 8FA3003C */ lw $v1, 0x3c($sp) -/* DF7170 80240770 93A90040 */ lbu $t1, 0x40($sp) -/* DF7174 80240774 93AA0041 */ lbu $t2, 0x41($sp) -/* DF7178 80240778 44820000 */ mtc1 $v0, $f0 -/* DF717C 8024077C 00000000 */ nop -/* DF7180 80240780 46800021 */ cvt.d.w $f0, $f0 -/* DF7184 80240784 8FA20038 */ lw $v0, 0x38($sp) -/* DF7188 80240788 463A0002 */ mul.d $f0, $f0, $f26 -/* DF718C 8024078C 00000000 */ nop -/* DF7190 80240790 A6280000 */ sh $t0, ($s1) -/* DF7194 80240794 A7A0002E */ sh $zero, 0x2e($sp) -/* DF7198 80240798 A3B50030 */ sb $s5, 0x30($sp) -/* DF719C 8024079C AFA30024 */ sw $v1, 0x24($sp) -/* DF71A0 802407A0 A7A90028 */ sh $t1, 0x28($sp) -/* DF71A4 802407A4 A7AA002A */ sh $t2, 0x2a($sp) -/* DF71A8 802407A8 AFA20020 */ sw $v0, 0x20($sp) -/* DF71AC 802407AC 46200007 */ neg.d $f0, $f0 -/* DF71B0 802407B0 4620010D */ trunc.w.d $f4, $f0 -/* DF71B4 802407B4 44022000 */ mfc1 $v0, $f4 -/* DF71B8 802407B8 0C04EBDC */ jal fold_appendGfx_component -/* DF71BC 802407BC A7A2002C */ sh $v0, 0x2c($sp) -/* DF71C0 802407C0 3C04D838 */ lui $a0, 0xd838 -/* DF71C4 802407C4 8E020000 */ lw $v0, ($s0) -/* DF71C8 802407C8 34840002 */ ori $a0, $a0, 2 -/* DF71CC 802407CC 0040182D */ daddu $v1, $v0, $zero -/* DF71D0 802407D0 24420008 */ addiu $v0, $v0, 8 -/* DF71D4 802407D4 AE020000 */ sw $v0, ($s0) -/* DF71D8 802407D8 24020040 */ addiu $v0, $zero, 0x40 -/* DF71DC 802407DC AC640000 */ sw $a0, ($v1) -/* DF71E0 802407E0 AC620004 */ sw $v0, 4($v1) -/* DF71E4 802407E4 8FBF00E0 */ lw $ra, 0xe0($sp) -/* DF71E8 802407E8 8FB500DC */ lw $s5, 0xdc($sp) -/* DF71EC 802407EC 8FB400D8 */ lw $s4, 0xd8($sp) -/* DF71F0 802407F0 8FB300D4 */ lw $s3, 0xd4($sp) -/* DF71F4 802407F4 8FB200D0 */ lw $s2, 0xd0($sp) -/* DF71F8 802407F8 8FB100CC */ lw $s1, 0xcc($sp) -/* DF71FC 802407FC 8FB000C8 */ lw $s0, 0xc8($sp) -/* DF7200 80240800 D7BC0108 */ ldc1 $f28, 0x108($sp) -/* DF7204 80240804 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* DF7208 80240808 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* DF720C 8024080C D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* DF7210 80240810 D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* DF7214 80240814 03E00008 */ jr $ra -/* DF7218 80240818 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_8024081C_DF721C.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_8024081C_DF721C.s deleted file mode 100644 index 2a4a9c1a23..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_8024081C_DF721C.s +++ /dev/null @@ -1,186 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024081C_DF721C -/* DF721C 8024081C 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* DF7220 80240820 AFB200D0 */ sw $s2, 0xd0($sp) -/* DF7224 80240824 0080902D */ daddu $s2, $a0, $zero -/* DF7228 80240828 AFB000C8 */ sw $s0, 0xc8($sp) -/* DF722C 8024082C 00A0802D */ daddu $s0, $a1, $zero -/* DF7230 80240830 AFBF00E0 */ sw $ra, 0xe0($sp) -/* DF7234 80240834 AFB500DC */ sw $s5, 0xdc($sp) -/* DF7238 80240838 AFB400D8 */ sw $s4, 0xd8($sp) -/* DF723C 8024083C AFB300D4 */ sw $s3, 0xd4($sp) -/* DF7240 80240840 AFB100CC */ sw $s1, 0xcc($sp) -/* DF7244 80240844 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* DF7248 80240848 F7BA0100 */ sdc1 $f26, 0x100($sp) -/* DF724C 8024084C F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* DF7250 80240850 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* DF7254 80240854 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* DF7258 80240858 C6180010 */ lwc1 $f24, 0x10($s0) -/* DF725C 8024085C 4680C620 */ cvt.s.w $f24, $f24 -/* DF7260 80240860 3C054200 */ lui $a1, 0x4200 -/* DF7264 80240864 3C064396 */ lui $a2, 0x4396 -/* DF7268 80240868 8E42001C */ lw $v0, 0x1c($s2) -/* DF726C 8024086C C61C0014 */ lwc1 $f28, 0x14($s0) -/* DF7270 80240870 4680E720 */ cvt.s.w $f28, $f28 -/* DF7274 80240874 AFA20010 */ sw $v0, 0x10($sp) -/* DF7278 80240878 8E070018 */ lw $a3, 0x18($s0) -/* DF727C 8024087C 0C00A8ED */ jal update_lerp -/* DF7280 80240880 2404000C */ addiu $a0, $zero, 0xc -/* DF7284 80240884 3C01437F */ lui $at, 0x437f -/* DF7288 80240888 44811000 */ mtc1 $at, $f2 -/* DF728C 8024088C 00000000 */ nop -/* DF7290 80240890 4600103C */ c.lt.s $f2, $f0 -/* DF7294 80240894 00000000 */ nop -/* DF7298 80240898 45000002 */ bc1f .L802408A4 -/* DF729C 8024089C 27B10038 */ addiu $s1, $sp, 0x38 -/* DF72A0 802408A0 46001006 */ mov.s $f0, $f2 -.L802408A4: -/* DF72A4 802408A4 4600010D */ trunc.w.s $f4, $f0 -/* DF72A8 802408A8 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF72AC 802408AC 0000202D */ daddu $a0, $zero, $zero -/* DF72B0 802408B0 24050007 */ addiu $a1, $zero, 7 -/* DF72B4 802408B4 240600FF */ addiu $a2, $zero, 0xff -/* DF72B8 802408B8 00C0382D */ daddu $a3, $a2, $zero -/* DF72BC 802408BC 00C0A82D */ daddu $s5, $a2, $zero -/* DF72C0 802408C0 AFB50010 */ sw $s5, 0x10($sp) -/* DF72C4 802408C4 0C04EAA7 */ jal fold_update -/* DF72C8 802408C8 AFA00018 */ sw $zero, 0x18($sp) -/* DF72CC 802408CC 8E42001C */ lw $v0, 0x1c($s2) -/* DF72D0 802408D0 3C05C296 */ lui $a1, 0xc296 -/* DF72D4 802408D4 3C0641F0 */ lui $a2, 0x41f0 -/* DF72D8 802408D8 AFA20010 */ sw $v0, 0x10($sp) -/* DF72DC 802408DC 8E070018 */ lw $a3, 0x18($s0) -/* DF72E0 802408E0 0C00A8ED */ jal update_lerp -/* DF72E4 802408E4 0000202D */ daddu $a0, $zero, $zero -/* DF72E8 802408E8 4480B000 */ mtc1 $zero, $f22 -/* DF72EC 802408EC 46000506 */ mov.s $f20, $f0 -/* DF72F0 802408F0 4614B03E */ c.le.s $f22, $f20 -/* DF72F4 802408F4 00000000 */ nop -/* DF72F8 802408F8 45030001 */ bc1tl .L80240900 -/* DF72FC 802408FC 4600B506 */ mov.s $f20, $f22 -.L80240900: -/* DF7300 80240900 AFB10010 */ sw $s1, 0x10($sp) -/* DF7304 80240904 8E040004 */ lw $a0, 4($s0) -/* DF7308 80240908 8E050008 */ lw $a1, 8($s0) -/* DF730C 8024090C 8E060000 */ lw $a2, ($s0) -/* DF7310 80240910 0C04BA38 */ jal msg_get_glyph -/* DF7314 80240914 8E07000C */ lw $a3, 0xc($s0) -/* DF7318 80240918 93A20042 */ lbu $v0, 0x42($sp) -/* DF731C 8024091C 3C013FE0 */ lui $at, 0x3fe0 -/* DF7320 80240920 4481D800 */ mtc1 $at, $f27 -/* DF7324 80240924 4480D000 */ mtc1 $zero, $f26 -/* DF7328 80240928 44820000 */ mtc1 $v0, $f0 -/* DF732C 8024092C 00000000 */ nop -/* DF7330 80240930 46800021 */ cvt.d.w $f0, $f0 -/* DF7334 80240934 463A0002 */ mul.d $f0, $f0, $f26 -/* DF7338 80240938 00000000 */ nop -/* DF733C 8024093C 4600C0A1 */ cvt.d.s $f2, $f24 -/* DF7340 80240940 27B40048 */ addiu $s4, $sp, 0x48 -/* DF7344 80240944 4600E707 */ neg.s $f28, $f28 -/* DF7348 80240948 46201080 */ add.d $f2, $f2, $f0 -/* DF734C 8024094C 4406E000 */ mfc1 $a2, $f28 -/* DF7350 80240950 4407B000 */ mfc1 $a3, $f22 -/* DF7354 80240954 462010A0 */ cvt.s.d $f2, $f2 -/* DF7358 80240958 44051000 */ mfc1 $a1, $f2 -/* DF735C 8024095C 0C019E40 */ jal guTranslateF -/* DF7360 80240960 0280202D */ daddu $a0, $s4, $zero -/* DF7364 80240964 4616A032 */ c.eq.s $f20, $f22 -/* DF7368 80240968 00000000 */ nop -/* DF736C 8024096C 4501000D */ bc1t .L802409A4 -/* DF7370 80240970 3C130001 */ lui $s3, 1 -/* DF7374 80240974 27B00088 */ addiu $s0, $sp, 0x88 -/* DF7378 80240978 4405A000 */ mfc1 $a1, $f20 -/* DF737C 8024097C 4406B000 */ mfc1 $a2, $f22 -/* DF7380 80240980 3C073F80 */ lui $a3, 0x3f80 -/* DF7384 80240984 0200202D */ daddu $a0, $s0, $zero -/* DF7388 80240988 0C019EC8 */ jal guRotateF -/* DF738C 8024098C AFA60010 */ sw $a2, 0x10($sp) -/* DF7390 80240990 0200202D */ daddu $a0, $s0, $zero -/* DF7394 80240994 0280282D */ daddu $a1, $s4, $zero -/* DF7398 80240998 0C019D80 */ jal guMtxCatF -/* DF739C 8024099C 0280302D */ daddu $a2, $s4, $zero -/* DF73A0 802409A0 3C130001 */ lui $s3, 1 -.L802409A4: -/* DF73A4 802409A4 36731630 */ ori $s3, $s3, 0x1630 -/* DF73A8 802409A8 0280202D */ daddu $a0, $s4, $zero -/* DF73AC 802409AC 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* DF73B0 802409B0 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* DF73B4 802409B4 3C12800A */ lui $s2, %hi(gDisplayContext) -/* DF73B8 802409B8 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* DF73BC 802409BC 96250000 */ lhu $a1, ($s1) -/* DF73C0 802409C0 8E420000 */ lw $v0, ($s2) -/* DF73C4 802409C4 00052980 */ sll $a1, $a1, 6 -/* DF73C8 802409C8 00B32821 */ addu $a1, $a1, $s3 -/* DF73CC 802409CC 0C019D40 */ jal guMtxF2L -/* DF73D0 802409D0 00452821 */ addu $a1, $v0, $a1 -/* DF73D4 802409D4 3C03DA38 */ lui $v1, 0xda38 -/* DF73D8 802409D8 34630002 */ ori $v1, $v1, 2 -/* DF73DC 802409DC 0000202D */ daddu $a0, $zero, $zero -/* DF73E0 802409E0 27A50020 */ addiu $a1, $sp, 0x20 -/* DF73E4 802409E4 3C060001 */ lui $a2, 1 -/* DF73E8 802409E8 34C60040 */ ori $a2, $a2, 0x40 -/* DF73EC 802409EC 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* DF73F0 802409F0 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* DF73F4 802409F4 0280382D */ daddu $a3, $s4, $zero -/* DF73F8 802409F8 8E020000 */ lw $v0, ($s0) -/* DF73FC 802409FC 96280000 */ lhu $t0, ($s1) -/* DF7400 80240A00 0040482D */ daddu $t1, $v0, $zero -/* DF7404 80240A04 24420008 */ addiu $v0, $v0, 8 -/* DF7408 80240A08 AE020000 */ sw $v0, ($s0) -/* DF740C 80240A0C 3102FFFF */ andi $v0, $t0, 0xffff -/* DF7410 80240A10 00021180 */ sll $v0, $v0, 6 -/* DF7414 80240A14 00531021 */ addu $v0, $v0, $s3 -/* DF7418 80240A18 AD230000 */ sw $v1, ($t1) -/* DF741C 80240A1C 8E430000 */ lw $v1, ($s2) -/* DF7420 80240A20 25080001 */ addiu $t0, $t0, 1 -/* DF7424 80240A24 00621821 */ addu $v1, $v1, $v0 -/* DF7428 80240A28 3C028000 */ lui $v0, 0x8000 -/* DF742C 80240A2C 00621821 */ addu $v1, $v1, $v0 -/* DF7430 80240A30 AD230004 */ sw $v1, 4($t1) -/* DF7434 80240A34 93A20042 */ lbu $v0, 0x42($sp) -/* DF7438 80240A38 8FA3003C */ lw $v1, 0x3c($sp) -/* DF743C 80240A3C 93A90040 */ lbu $t1, 0x40($sp) -/* DF7440 80240A40 93AA0041 */ lbu $t2, 0x41($sp) -/* DF7444 80240A44 44820000 */ mtc1 $v0, $f0 -/* DF7448 80240A48 00000000 */ nop -/* DF744C 80240A4C 46800021 */ cvt.d.w $f0, $f0 -/* DF7450 80240A50 8FA20038 */ lw $v0, 0x38($sp) -/* DF7454 80240A54 463A0002 */ mul.d $f0, $f0, $f26 -/* DF7458 80240A58 00000000 */ nop -/* DF745C 80240A5C A6280000 */ sh $t0, ($s1) -/* DF7460 80240A60 A7A0002E */ sh $zero, 0x2e($sp) -/* DF7464 80240A64 A3B50030 */ sb $s5, 0x30($sp) -/* DF7468 80240A68 AFA30024 */ sw $v1, 0x24($sp) -/* DF746C 80240A6C A7A90028 */ sh $t1, 0x28($sp) -/* DF7470 80240A70 A7AA002A */ sh $t2, 0x2a($sp) -/* DF7474 80240A74 AFA20020 */ sw $v0, 0x20($sp) -/* DF7478 80240A78 46200007 */ neg.d $f0, $f0 -/* DF747C 80240A7C 4620010D */ trunc.w.d $f4, $f0 -/* DF7480 80240A80 44022000 */ mfc1 $v0, $f4 -/* DF7484 80240A84 0C04EBDC */ jal fold_appendGfx_component -/* DF7488 80240A88 A7A2002C */ sh $v0, 0x2c($sp) -/* DF748C 80240A8C 3C04D838 */ lui $a0, 0xd838 -/* DF7490 80240A90 8E020000 */ lw $v0, ($s0) -/* DF7494 80240A94 34840002 */ ori $a0, $a0, 2 -/* DF7498 80240A98 0040182D */ daddu $v1, $v0, $zero -/* DF749C 80240A9C 24420008 */ addiu $v0, $v0, 8 -/* DF74A0 80240AA0 AE020000 */ sw $v0, ($s0) -/* DF74A4 80240AA4 24020040 */ addiu $v0, $zero, 0x40 -/* DF74A8 80240AA8 AC640000 */ sw $a0, ($v1) -/* DF74AC 80240AAC AC620004 */ sw $v0, 4($v1) -/* DF74B0 80240AB0 8FBF00E0 */ lw $ra, 0xe0($sp) -/* DF74B4 80240AB4 8FB500DC */ lw $s5, 0xdc($sp) -/* DF74B8 80240AB8 8FB400D8 */ lw $s4, 0xd8($sp) -/* DF74BC 80240ABC 8FB300D4 */ lw $s3, 0xd4($sp) -/* DF74C0 80240AC0 8FB200D0 */ lw $s2, 0xd0($sp) -/* DF74C4 80240AC4 8FB100CC */ lw $s1, 0xcc($sp) -/* DF74C8 80240AC8 8FB000C8 */ lw $s0, 0xc8($sp) -/* DF74CC 80240ACC D7BC0108 */ ldc1 $f28, 0x108($sp) -/* DF74D0 80240AD0 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* DF74D4 80240AD4 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* DF74D8 80240AD8 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* DF74DC 80240ADC D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* DF74E0 80240AE0 03E00008 */ jr $ra -/* DF74E4 80240AE4 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240AE8_DF74E8.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240AE8_DF74E8.s deleted file mode 100644 index 4cb251348f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240AE8_DF74E8.s +++ /dev/null @@ -1,251 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240AE8_DF74E8 -/* DF74E8 80240AE8 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* DF74EC 80240AEC AFB000C8 */ sw $s0, 0xc8($sp) -/* DF74F0 80240AF0 0080802D */ daddu $s0, $a0, $zero -/* DF74F4 80240AF4 AFB100CC */ sw $s1, 0xcc($sp) -/* DF74F8 80240AF8 00A0882D */ daddu $s1, $a1, $zero -/* DF74FC 80240AFC AFB600E0 */ sw $s6, 0xe0($sp) -/* DF7500 80240B00 24160040 */ addiu $s6, $zero, 0x40 -/* DF7504 80240B04 AFBF00E4 */ sw $ra, 0xe4($sp) -/* DF7508 80240B08 AFB500DC */ sw $s5, 0xdc($sp) -/* DF750C 80240B0C AFB400D8 */ sw $s4, 0xd8($sp) -/* DF7510 80240B10 AFB300D4 */ sw $s3, 0xd4($sp) -/* DF7514 80240B14 AFB200D0 */ sw $s2, 0xd0($sp) -/* DF7518 80240B18 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* DF751C 80240B1C F7BA0100 */ sdc1 $f26, 0x100($sp) -/* DF7520 80240B20 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* DF7524 80240B24 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* DF7528 80240B28 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* DF752C 80240B2C C6200010 */ lwc1 $f0, 0x10($s1) -/* DF7530 80240B30 46800020 */ cvt.s.w $f0, $f0 -/* DF7534 80240B34 8E020068 */ lw $v0, 0x68($s0) -/* DF7538 80240B38 8E030014 */ lw $v1, 0x14($s0) -/* DF753C 80240B3C 44060000 */ mfc1 $a2, $f0 -/* DF7540 80240B40 8E07001C */ lw $a3, 0x1c($s0) -/* DF7544 80240B44 00431021 */ addu $v0, $v0, $v1 -/* DF7548 80240B48 2442FFF0 */ addiu $v0, $v0, -0x10 -/* DF754C 80240B4C 44822000 */ mtc1 $v0, $f4 -/* DF7550 80240B50 00000000 */ nop -/* DF7554 80240B54 46802120 */ cvt.s.w $f4, $f4 -/* DF7558 80240B58 8E03006C */ lw $v1, 0x6c($s0) -/* DF755C 80240B5C 44052000 */ mfc1 $a1, $f4 -/* DF7560 80240B60 AFA70010 */ sw $a3, 0x10($sp) -/* DF7564 80240B64 8E270018 */ lw $a3, 0x18($s1) -/* DF7568 80240B68 2463003C */ addiu $v1, $v1, 0x3c -/* DF756C 80240B6C 4483A000 */ mtc1 $v1, $f20 -/* DF7570 80240B70 00000000 */ nop -/* DF7574 80240B74 4680A520 */ cvt.s.w $f20, $f20 -/* DF7578 80240B78 0C00A8ED */ jal update_lerp -/* DF757C 80240B7C 2404000A */ addiu $a0, $zero, 0xa -/* DF7580 80240B80 C6220014 */ lwc1 $f2, 0x14($s1) -/* DF7584 80240B84 468010A0 */ cvt.s.w $f2, $f2 -/* DF7588 80240B88 4405A000 */ mfc1 $a1, $f20 -/* DF758C 80240B8C 44061000 */ mfc1 $a2, $f2 -/* DF7590 80240B90 8E02001C */ lw $v0, 0x1c($s0) -/* DF7594 80240B94 24040005 */ addiu $a0, $zero, 5 -/* DF7598 80240B98 AFA20010 */ sw $v0, 0x10($sp) -/* DF759C 80240B9C 8E270018 */ lw $a3, 0x18($s1) -/* DF75A0 80240BA0 0C00A8ED */ jal update_lerp -/* DF75A4 80240BA4 46000506 */ mov.s $f20, $f0 -/* DF75A8 80240BA8 27B50038 */ addiu $s5, $sp, 0x38 -/* DF75AC 80240BAC 8E220018 */ lw $v0, 0x18($s1) -/* DF75B0 80240BB0 8E03001C */ lw $v1, 0x1c($s0) -/* DF75B4 80240BB4 14430004 */ bne $v0, $v1, .L80240BC8 -/* DF75B8 80240BB8 46000706 */ mov.s $f28, $f0 -/* DF75BC 80240BBC 4480B000 */ mtc1 $zero, $f22 -/* DF75C0 80240BC0 080902F9 */ j .L80240BE4 -/* DF75C4 80240BC4 00000000 */ nop -.L80240BC8: -/* DF75C8 80240BC8 00621823 */ subu $v1, $v1, $v0 -/* DF75CC 80240BCC 00031080 */ sll $v0, $v1, 2 -/* DF75D0 80240BD0 00431021 */ addu $v0, $v0, $v1 -/* DF75D4 80240BD4 00021040 */ sll $v0, $v0, 1 -/* DF75D8 80240BD8 4482B000 */ mtc1 $v0, $f22 -/* DF75DC 80240BDC 00000000 */ nop -/* DF75E0 80240BE0 4680B5A0 */ cvt.s.w $f22, $f22 -.L80240BE4: -/* DF75E4 80240BE4 8E02001C */ lw $v0, 0x1c($s0) -/* DF75E8 80240BE8 3C054000 */ lui $a1, 0x4000 -/* DF75EC 80240BEC 3C063F80 */ lui $a2, 0x3f80 -/* DF75F0 80240BF0 AFA20010 */ sw $v0, 0x10($sp) -/* DF75F4 80240BF4 8E270018 */ lw $a3, 0x18($s1) -/* DF75F8 80240BF8 0C00A8ED */ jal update_lerp -/* DF75FC 80240BFC 24040004 */ addiu $a0, $zero, 4 -/* DF7600 80240C00 8E220018 */ lw $v0, 0x18($s1) -/* DF7604 80240C04 8E04001C */ lw $a0, 0x1c($s0) -/* DF7608 80240C08 1444000C */ bne $v0, $a0, .L80240C3C -/* DF760C 80240C0C 46000686 */ mov.s $f26, $f0 -/* DF7610 80240C10 0000202D */ daddu $a0, $zero, $zero -/* DF7614 80240C14 0080282D */ daddu $a1, $a0, $zero -/* DF7618 80240C18 0080302D */ daddu $a2, $a0, $zero -/* DF761C 80240C1C 0080382D */ daddu $a3, $a0, $zero -/* DF7620 80240C20 AFA00010 */ sw $zero, 0x10($sp) -/* DF7624 80240C24 AFA00014 */ sw $zero, 0x14($sp) -/* DF7628 80240C28 0C04EAA7 */ jal fold_update -/* DF762C 80240C2C AFA00018 */ sw $zero, 0x18($sp) -/* DF7630 80240C30 3C020001 */ lui $v0, 1 -/* DF7634 80240C34 08090326 */ j .L80240C98 -/* DF7638 80240C38 02C2B025 */ or $s6, $s6, $v0 -.L80240C3C: -/* DF763C 80240C3C 3C054180 */ lui $a1, 0x4180 -/* DF7640 80240C40 3C064396 */ lui $a2, 0x4396 -/* DF7644 80240C44 AFA40010 */ sw $a0, 0x10($sp) -/* DF7648 80240C48 8E270018 */ lw $a3, 0x18($s1) -/* DF764C 80240C4C 0C00A8ED */ jal update_lerp -/* DF7650 80240C50 0000202D */ daddu $a0, $zero, $zero -/* DF7654 80240C54 3C01437F */ lui $at, 0x437f -/* DF7658 80240C58 44811000 */ mtc1 $at, $f2 -/* DF765C 80240C5C 00000000 */ nop -/* DF7660 80240C60 4600103C */ c.lt.s $f2, $f0 -/* DF7664 80240C64 00000000 */ nop -/* DF7668 80240C68 45030001 */ bc1tl .L80240C70 -/* DF766C 80240C6C 46001006 */ mov.s $f0, $f2 -.L80240C70: -/* DF7670 80240C70 4600010D */ trunc.w.s $f4, $f0 -/* DF7674 80240C74 E7A40014 */ swc1 $f4, 0x14($sp) -/* DF7678 80240C78 0000202D */ daddu $a0, $zero, $zero -/* DF767C 80240C7C 24050007 */ addiu $a1, $zero, 7 -/* DF7680 80240C80 240600FF */ addiu $a2, $zero, 0xff -/* DF7684 80240C84 00C0382D */ daddu $a3, $a2, $zero -/* DF7688 80240C88 00C0102D */ daddu $v0, $a2, $zero -/* DF768C 80240C8C AFA20010 */ sw $v0, 0x10($sp) -/* DF7690 80240C90 0C04EAA7 */ jal fold_update -/* DF7694 80240C94 AFA00018 */ sw $zero, 0x18($sp) -.L80240C98: -/* DF7698 80240C98 AFB50010 */ sw $s5, 0x10($sp) -/* DF769C 80240C9C 8E240004 */ lw $a0, 4($s1) -/* DF76A0 80240CA0 8E250008 */ lw $a1, 8($s1) -/* DF76A4 80240CA4 8E260000 */ lw $a2, ($s1) -/* DF76A8 80240CA8 8E27000C */ lw $a3, 0xc($s1) -/* DF76AC 80240CAC 0C04BA38 */ jal msg_get_glyph -/* DF76B0 80240CB0 3C140001 */ lui $s4, 1 -/* DF76B4 80240CB4 92A2000A */ lbu $v0, 0xa($s5) -/* DF76B8 80240CB8 3C013FE0 */ lui $at, 0x3fe0 -/* DF76BC 80240CBC 4481C800 */ mtc1 $at, $f25 -/* DF76C0 80240CC0 4480C000 */ mtc1 $zero, $f24 -/* DF76C4 80240CC4 44820000 */ mtc1 $v0, $f0 -/* DF76C8 80240CC8 00000000 */ nop -/* DF76CC 80240CCC 46800021 */ cvt.d.w $f0, $f0 -/* DF76D0 80240CD0 46380002 */ mul.d $f0, $f0, $f24 -/* DF76D4 80240CD4 00000000 */ nop -/* DF76D8 80240CD8 36941630 */ ori $s4, $s4, 0x1630 -/* DF76DC 80240CDC 4600A0A1 */ cvt.d.s $f2, $f20 -/* DF76E0 80240CE0 27B10048 */ addiu $s1, $sp, 0x48 -/* DF76E4 80240CE4 4600E707 */ neg.s $f28, $f28 -/* DF76E8 80240CE8 4480A000 */ mtc1 $zero, $f20 -/* DF76EC 80240CEC 46201080 */ add.d $f2, $f2, $f0 -/* DF76F0 80240CF0 4406E000 */ mfc1 $a2, $f28 -/* DF76F4 80240CF4 4407A000 */ mfc1 $a3, $f20 -/* DF76F8 80240CF8 462010A0 */ cvt.s.d $f2, $f2 -/* DF76FC 80240CFC 44051000 */ mfc1 $a1, $f2 -/* DF7700 80240D00 0C019E40 */ jal guTranslateF -/* DF7704 80240D04 0220202D */ daddu $a0, $s1, $zero -/* DF7708 80240D08 27B00088 */ addiu $s0, $sp, 0x88 -/* DF770C 80240D0C 4405B000 */ mfc1 $a1, $f22 -/* DF7710 80240D10 3C013F80 */ lui $at, 0x3f80 -/* DF7714 80240D14 4481B000 */ mtc1 $at, $f22 -/* DF7718 80240D18 4406A000 */ mfc1 $a2, $f20 -/* DF771C 80240D1C 3C013E4C */ lui $at, 0x3e4c -/* DF7720 80240D20 3421CCCD */ ori $at, $at, 0xcccd -/* DF7724 80240D24 44810000 */ mtc1 $at, $f0 -/* DF7728 80240D28 4407B000 */ mfc1 $a3, $f22 -/* DF772C 80240D2C 0200202D */ daddu $a0, $s0, $zero -/* DF7730 80240D30 0C019EC8 */ jal guRotateF -/* DF7734 80240D34 E7A00010 */ swc1 $f0, 0x10($sp) -/* DF7738 80240D38 0200202D */ daddu $a0, $s0, $zero -/* DF773C 80240D3C 0220282D */ daddu $a1, $s1, $zero -/* DF7740 80240D40 0C019D80 */ jal guMtxCatF -/* DF7744 80240D44 0220302D */ daddu $a2, $s1, $zero -/* DF7748 80240D48 0200202D */ daddu $a0, $s0, $zero -/* DF774C 80240D4C 4405D000 */ mfc1 $a1, $f26 -/* DF7750 80240D50 4407B000 */ mfc1 $a3, $f22 -/* DF7754 80240D54 0C019DF0 */ jal guScaleF -/* DF7758 80240D58 00A0302D */ daddu $a2, $a1, $zero -/* DF775C 80240D5C 0200202D */ daddu $a0, $s0, $zero -/* DF7760 80240D60 0220282D */ daddu $a1, $s1, $zero -/* DF7764 80240D64 0C019D80 */ jal guMtxCatF -/* DF7768 80240D68 0220302D */ daddu $a2, $s1, $zero -/* DF776C 80240D6C 0220202D */ daddu $a0, $s1, $zero -/* DF7770 80240D70 3C108007 */ lui $s0, %hi(gMatrixListPos) -/* DF7774 80240D74 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos) -/* DF7778 80240D78 3C13800A */ lui $s3, %hi(gDisplayContext) -/* DF777C 80240D7C 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* DF7780 80240D80 96050000 */ lhu $a1, ($s0) -/* DF7784 80240D84 8E620000 */ lw $v0, ($s3) -/* DF7788 80240D88 00052980 */ sll $a1, $a1, 6 -/* DF778C 80240D8C 00B42821 */ addu $a1, $a1, $s4 -/* DF7790 80240D90 0C019D40 */ jal guMtxF2L -/* DF7794 80240D94 00452821 */ addu $a1, $v0, $a1 -/* DF7798 80240D98 3C02DA38 */ lui $v0, 0xda38 -/* DF779C 80240D9C 34420002 */ ori $v0, $v0, 2 -/* DF77A0 80240DA0 3C12800A */ lui $s2, %hi(gMasterGfxPos) -/* DF77A4 80240DA4 2652A66C */ addiu $s2, $s2, %lo(gMasterGfxPos) -/* DF77A8 80240DA8 8E440000 */ lw $a0, ($s2) -/* DF77AC 80240DAC 96050000 */ lhu $a1, ($s0) -/* DF77B0 80240DB0 0080302D */ daddu $a2, $a0, $zero -/* DF77B4 80240DB4 ACC20000 */ sw $v0, ($a2) -/* DF77B8 80240DB8 30A2FFFF */ andi $v0, $a1, 0xffff -/* DF77BC 80240DBC 00021180 */ sll $v0, $v0, 6 -/* DF77C0 80240DC0 8E630000 */ lw $v1, ($s3) -/* DF77C4 80240DC4 00541021 */ addu $v0, $v0, $s4 -/* DF77C8 80240DC8 00621821 */ addu $v1, $v1, $v0 -/* DF77CC 80240DCC 3C028000 */ lui $v0, 0x8000 -/* DF77D0 80240DD0 00621821 */ addu $v1, $v1, $v0 -/* DF77D4 80240DD4 ACC30004 */ sw $v1, 4($a2) -/* DF77D8 80240DD8 8EA20000 */ lw $v0, ($s5) -/* DF77DC 80240DDC 24840008 */ addiu $a0, $a0, 8 -/* DF77E0 80240DE0 AE440000 */ sw $a0, ($s2) -/* DF77E4 80240DE4 AFA20020 */ sw $v0, 0x20($sp) -/* DF77E8 80240DE8 8EA20004 */ lw $v0, 4($s5) -/* DF77EC 80240DEC 24A50001 */ addiu $a1, $a1, 1 -/* DF77F0 80240DF0 A6050000 */ sh $a1, ($s0) -/* DF77F4 80240DF4 AFA20024 */ sw $v0, 0x24($sp) -/* DF77F8 80240DF8 92A20008 */ lbu $v0, 8($s5) -/* DF77FC 80240DFC A7A20028 */ sh $v0, 0x28($sp) -/* DF7800 80240E00 92A20009 */ lbu $v0, 9($s5) -/* DF7804 80240E04 A7A2002A */ sh $v0, 0x2a($sp) -/* DF7808 80240E08 92A2000A */ lbu $v0, 0xa($s5) -/* DF780C 80240E0C 44820000 */ mtc1 $v0, $f0 -/* DF7810 80240E10 00000000 */ nop -/* DF7814 80240E14 46800021 */ cvt.d.w $f0, $f0 -/* DF7818 80240E18 46380002 */ mul.d $f0, $f0, $f24 -/* DF781C 80240E1C 00000000 */ nop -/* DF7820 80240E20 0220382D */ daddu $a3, $s1, $zero -/* DF7824 80240E24 0000202D */ daddu $a0, $zero, $zero -/* DF7828 80240E28 02C0302D */ daddu $a2, $s6, $zero -/* DF782C 80240E2C 27A50020 */ addiu $a1, $sp, 0x20 -/* DF7830 80240E30 A7A0002E */ sh $zero, 0x2e($sp) -/* DF7834 80240E34 240200FF */ addiu $v0, $zero, 0xff -/* DF7838 80240E38 A3A20030 */ sb $v0, 0x30($sp) -/* DF783C 80240E3C 46200007 */ neg.d $f0, $f0 -/* DF7840 80240E40 4620010D */ trunc.w.d $f4, $f0 -/* DF7844 80240E44 44022000 */ mfc1 $v0, $f4 -/* DF7848 80240E48 0C04EBDC */ jal fold_appendGfx_component -/* DF784C 80240E4C A7A2002C */ sh $v0, 0x2c($sp) -/* DF7850 80240E50 3C04D838 */ lui $a0, 0xd838 -/* DF7854 80240E54 8E420000 */ lw $v0, ($s2) -/* DF7858 80240E58 34840002 */ ori $a0, $a0, 2 -/* DF785C 80240E5C 0040182D */ daddu $v1, $v0, $zero -/* DF7860 80240E60 24420008 */ addiu $v0, $v0, 8 -/* DF7864 80240E64 AE420000 */ sw $v0, ($s2) -/* DF7868 80240E68 24020040 */ addiu $v0, $zero, 0x40 -/* DF786C 80240E6C AC640000 */ sw $a0, ($v1) -/* DF7870 80240E70 AC620004 */ sw $v0, 4($v1) -/* DF7874 80240E74 8FBF00E4 */ lw $ra, 0xe4($sp) -/* DF7878 80240E78 8FB600E0 */ lw $s6, 0xe0($sp) -/* DF787C 80240E7C 8FB500DC */ lw $s5, 0xdc($sp) -/* DF7880 80240E80 8FB400D8 */ lw $s4, 0xd8($sp) -/* DF7884 80240E84 8FB300D4 */ lw $s3, 0xd4($sp) -/* DF7888 80240E88 8FB200D0 */ lw $s2, 0xd0($sp) -/* DF788C 80240E8C 8FB100CC */ lw $s1, 0xcc($sp) -/* DF7890 80240E90 8FB000C8 */ lw $s0, 0xc8($sp) -/* DF7894 80240E94 D7BC0108 */ ldc1 $f28, 0x108($sp) -/* DF7898 80240E98 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* DF789C 80240E9C D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* DF78A0 80240EA0 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* DF78A4 80240EA4 D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* DF78A8 80240EA8 03E00008 */ jr $ra -/* DF78AC 80240EAC 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240EB0_DF78B0.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240EB0_DF78B0.s deleted file mode 100644 index 872748f633..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240EB0_DF78B0.s +++ /dev/null @@ -1,85 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240EB0_DF78B0 -/* DF78B0 80240EB0 27BDFF90 */ addiu $sp, $sp, -0x70 -/* DF78B4 80240EB4 AFB00048 */ sw $s0, 0x48($sp) -/* DF78B8 80240EB8 00A0802D */ daddu $s0, $a1, $zero -/* DF78BC 80240EBC AFBF0050 */ sw $ra, 0x50($sp) -/* DF78C0 80240EC0 AFB1004C */ sw $s1, 0x4c($sp) -/* DF78C4 80240EC4 F7B80068 */ sdc1 $f24, 0x68($sp) -/* DF78C8 80240EC8 F7B60060 */ sdc1 $f22, 0x60($sp) -/* DF78CC 80240ECC F7B40058 */ sdc1 $f20, 0x58($sp) -/* DF78D0 80240ED0 8C82001C */ lw $v0, 0x1c($a0) -/* DF78D4 80240ED4 0000202D */ daddu $a0, $zero, $zero -/* DF78D8 80240ED8 0000282D */ daddu $a1, $zero, $zero -/* DF78DC 80240EDC C6140010 */ lwc1 $f20, 0x10($s0) -/* DF78E0 80240EE0 4680A520 */ cvt.s.w $f20, $f20 -/* DF78E4 80240EE4 3C06437F */ lui $a2, 0x437f -/* DF78E8 80240EE8 C6160014 */ lwc1 $f22, 0x14($s0) -/* DF78EC 80240EEC 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF78F0 80240EF0 AFA20010 */ sw $v0, 0x10($sp) -/* DF78F4 80240EF4 8E070018 */ lw $a3, 0x18($s0) -/* DF78F8 80240EF8 0C00A8ED */ jal update_lerp -/* DF78FC 80240EFC 27B10038 */ addiu $s1, $sp, 0x38 -/* DF7900 80240F00 AFB10010 */ sw $s1, 0x10($sp) -/* DF7904 80240F04 8E040004 */ lw $a0, 4($s0) -/* DF7908 80240F08 8E050008 */ lw $a1, 8($s0) -/* DF790C 80240F0C 8E060000 */ lw $a2, ($s0) -/* DF7910 80240F10 8E07000C */ lw $a3, 0xc($s0) -/* DF7914 80240F14 0C04BA38 */ jal msg_get_glyph -/* DF7918 80240F18 46000606 */ mov.s $f24, $f0 -/* DF791C 80240F1C 4600A08D */ trunc.w.s $f2, $f20 -/* DF7920 80240F20 44021000 */ mfc1 $v0, $f2 -/* DF7924 80240F24 93A50040 */ lbu $a1, 0x40($sp) -/* DF7928 80240F28 93A60041 */ lbu $a2, 0x41($sp) -/* DF792C 80240F2C 00021400 */ sll $v0, $v0, 0x10 -/* DF7930 80240F30 AFA00010 */ sw $zero, 0x10($sp) -/* DF7934 80240F34 8FA3003C */ lw $v1, 0x3c($sp) -/* DF7938 80240F38 00021403 */ sra $v0, $v0, 0x10 -/* DF793C 80240F3C AFA20018 */ sw $v0, 0x18($sp) -/* DF7940 80240F40 4600B08D */ trunc.w.s $f2, $f22 -/* DF7944 80240F44 44021000 */ mfc1 $v0, $f2 -/* DF7948 80240F48 00000000 */ nop -/* DF794C 80240F4C 00021400 */ sll $v0, $v0, 0x10 -/* DF7950 80240F50 3C014F00 */ lui $at, 0x4f00 -/* DF7954 80240F54 44810000 */ mtc1 $at, $f0 -/* DF7958 80240F58 00021403 */ sra $v0, $v0, 0x10 -/* DF795C 80240F5C AFA2001C */ sw $v0, 0x1c($sp) -/* DF7960 80240F60 2402000A */ addiu $v0, $zero, 0xa -/* DF7964 80240F64 AFA20020 */ sw $v0, 0x20($sp) -/* DF7968 80240F68 24020014 */ addiu $v0, $zero, 0x14 -/* DF796C 80240F6C AFA20024 */ sw $v0, 0x24($sp) -/* DF7970 80240F70 2402012C */ addiu $v0, $zero, 0x12c -/* DF7974 80240F74 AFA20028 */ sw $v0, 0x28($sp) -/* DF7978 80240F78 240200C8 */ addiu $v0, $zero, 0xc8 -/* DF797C 80240F7C AFA2002C */ sw $v0, 0x2c($sp) -/* DF7980 80240F80 4618003E */ c.le.s $f0, $f24 -/* DF7984 80240F84 00000000 */ nop -/* DF7988 80240F88 45010005 */ bc1t .L80240FA0 -/* DF798C 80240F8C AFA30014 */ sw $v1, 0x14($sp) -/* DF7990 80240F90 4600C08D */ trunc.w.s $f2, $f24 -/* DF7994 80240F94 44031000 */ mfc1 $v1, $f2 -/* DF7998 80240F98 080903EF */ j .L80240FBC -/* DF799C 80240F9C 306200FF */ andi $v0, $v1, 0xff -.L80240FA0: -/* DF79A0 80240FA0 4600C001 */ sub.s $f0, $f24, $f0 -/* DF79A4 80240FA4 3C028000 */ lui $v0, 0x8000 -/* DF79A8 80240FA8 4600008D */ trunc.w.s $f2, $f0 -/* DF79AC 80240FAC 44031000 */ mfc1 $v1, $f2 -/* DF79B0 80240FB0 00000000 */ nop -/* DF79B4 80240FB4 00621825 */ or $v1, $v1, $v0 -/* DF79B8 80240FB8 306200FF */ andi $v0, $v1, 0xff -.L80240FBC: -/* DF79BC 80240FBC AFA20030 */ sw $v0, 0x30($sp) -/* DF79C0 80240FC0 8E240000 */ lw $a0, ($s1) -/* DF79C4 80240FC4 0C04BA68 */ jal draw_ci_image_with_clipping -/* DF79C8 80240FC8 24070002 */ addiu $a3, $zero, 2 -/* DF79CC 80240FCC 8FBF0050 */ lw $ra, 0x50($sp) -/* DF79D0 80240FD0 8FB1004C */ lw $s1, 0x4c($sp) -/* DF79D4 80240FD4 8FB00048 */ lw $s0, 0x48($sp) -/* DF79D8 80240FD8 D7B80068 */ ldc1 $f24, 0x68($sp) -/* DF79DC 80240FDC D7B60060 */ ldc1 $f22, 0x60($sp) -/* DF79E0 80240FE0 D7B40058 */ ldc1 $f20, 0x58($sp) -/* DF79E4 80240FE4 03E00008 */ jr $ra -/* DF79E8 80240FE8 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240FEC_DF79EC.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240FEC_DF79EC.s deleted file mode 100644 index f4adffadae..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80240FEC_DF79EC.s +++ /dev/null @@ -1,124 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240FEC_DF79EC -/* DF79EC 80240FEC 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* DF79F0 80240FF0 AFB00088 */ sw $s0, 0x88($sp) -/* DF79F4 80240FF4 00A0802D */ daddu $s0, $a1, $zero -/* DF79F8 80240FF8 0000202D */ daddu $a0, $zero, $zero -/* DF79FC 80240FFC 0080282D */ daddu $a1, $a0, $zero -/* DF7A00 80241000 0080302D */ daddu $a2, $a0, $zero -/* DF7A04 80241004 0080382D */ daddu $a3, $a0, $zero -/* DF7A08 80241008 AFBF00A0 */ sw $ra, 0xa0($sp) -/* DF7A0C 8024100C AFB5009C */ sw $s5, 0x9c($sp) -/* DF7A10 80241010 AFB40098 */ sw $s4, 0x98($sp) -/* DF7A14 80241014 AFB30094 */ sw $s3, 0x94($sp) -/* DF7A18 80241018 AFB20090 */ sw $s2, 0x90($sp) -/* DF7A1C 8024101C AFB1008C */ sw $s1, 0x8c($sp) -/* DF7A20 80241020 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* DF7A24 80241024 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* DF7A28 80241028 C6140010 */ lwc1 $f20, 0x10($s0) -/* DF7A2C 8024102C 4680A520 */ cvt.s.w $f20, $f20 -/* DF7A30 80241030 C6160014 */ lwc1 $f22, 0x14($s0) -/* DF7A34 80241034 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF7A38 80241038 AFA00010 */ sw $zero, 0x10($sp) -/* DF7A3C 8024103C AFA00014 */ sw $zero, 0x14($sp) -/* DF7A40 80241040 0C04EAA7 */ jal fold_update -/* DF7A44 80241044 AFA00018 */ sw $zero, 0x18($sp) -/* DF7A48 80241048 27B40048 */ addiu $s4, $sp, 0x48 -/* DF7A4C 8024104C 0280202D */ daddu $a0, $s4, $zero -/* DF7A50 80241050 0000382D */ daddu $a3, $zero, $zero -/* DF7A54 80241054 3C150001 */ lui $s5, 1 -/* DF7A58 80241058 4600B587 */ neg.s $f22, $f22 -/* DF7A5C 8024105C 4405A000 */ mfc1 $a1, $f20 -/* DF7A60 80241060 4406B000 */ mfc1 $a2, $f22 -/* DF7A64 80241064 0C019E40 */ jal guTranslateF -/* DF7A68 80241068 36B51630 */ ori $s5, $s5, 0x1630 -/* DF7A6C 8024106C 0280202D */ daddu $a0, $s4, $zero -/* DF7A70 80241070 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* DF7A74 80241074 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* DF7A78 80241078 3C12800A */ lui $s2, %hi(gDisplayContext) -/* DF7A7C 8024107C 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* DF7A80 80241080 96250000 */ lhu $a1, ($s1) -/* DF7A84 80241084 8E420000 */ lw $v0, ($s2) -/* DF7A88 80241088 00052980 */ sll $a1, $a1, 6 -/* DF7A8C 8024108C 00B52821 */ addu $a1, $a1, $s5 -/* DF7A90 80241090 0C019D40 */ jal guMtxF2L -/* DF7A94 80241094 00452821 */ addu $a1, $v0, $a1 -/* DF7A98 80241098 3C02DA38 */ lui $v0, 0xda38 -/* DF7A9C 8024109C 34420002 */ ori $v0, $v0, 2 -/* DF7AA0 802410A0 3C13800A */ lui $s3, %hi(gMasterGfxPos) -/* DF7AA4 802410A4 2673A66C */ addiu $s3, $s3, %lo(gMasterGfxPos) -/* DF7AA8 802410A8 8E680000 */ lw $t0, ($s3) -/* DF7AAC 802410AC 96290000 */ lhu $t1, ($s1) -/* DF7AB0 802410B0 0100202D */ daddu $a0, $t0, $zero -/* DF7AB4 802410B4 AC820000 */ sw $v0, ($a0) -/* DF7AB8 802410B8 3122FFFF */ andi $v0, $t1, 0xffff -/* DF7ABC 802410BC 00021180 */ sll $v0, $v0, 6 -/* DF7AC0 802410C0 00551021 */ addu $v0, $v0, $s5 -/* DF7AC4 802410C4 8E430000 */ lw $v1, ($s2) -/* DF7AC8 802410C8 25080008 */ addiu $t0, $t0, 8 -/* DF7ACC 802410CC 00621821 */ addu $v1, $v1, $v0 -/* DF7AD0 802410D0 3C028000 */ lui $v0, 0x8000 -/* DF7AD4 802410D4 00621821 */ addu $v1, $v1, $v0 -/* DF7AD8 802410D8 27A20038 */ addiu $v0, $sp, 0x38 -/* DF7ADC 802410DC AC830004 */ sw $v1, 4($a0) -/* DF7AE0 802410E0 AFA20010 */ sw $v0, 0x10($sp) -/* DF7AE4 802410E4 8E040004 */ lw $a0, 4($s0) -/* DF7AE8 802410E8 8E050008 */ lw $a1, 8($s0) -/* DF7AEC 802410EC 8E060000 */ lw $a2, ($s0) -/* DF7AF0 802410F0 8E07000C */ lw $a3, 0xc($s0) -/* DF7AF4 802410F4 25290001 */ addiu $t1, $t1, 1 -/* DF7AF8 802410F8 AE680000 */ sw $t0, ($s3) -/* DF7AFC 802410FC 0C04BA38 */ jal msg_get_glyph -/* DF7B00 80241100 A6290000 */ sh $t1, ($s1) -/* DF7B04 80241104 0000202D */ daddu $a0, $zero, $zero -/* DF7B08 80241108 27A50020 */ addiu $a1, $sp, 0x20 -/* DF7B0C 8024110C 3C060005 */ lui $a2, 5 -/* DF7B10 80241110 34C60040 */ ori $a2, $a2, 0x40 -/* DF7B14 80241114 0280382D */ daddu $a3, $s4, $zero -/* DF7B18 80241118 93A20042 */ lbu $v0, 0x42($sp) -/* DF7B1C 8024111C 3C013FE0 */ lui $at, 0x3fe0 -/* DF7B20 80241120 44810800 */ mtc1 $at, $f1 -/* DF7B24 80241124 44800000 */ mtc1 $zero, $f0 -/* DF7B28 80241128 8FA30038 */ lw $v1, 0x38($sp) -/* DF7B2C 8024112C 8FA8003C */ lw $t0, 0x3c($sp) -/* DF7B30 80241130 93A90040 */ lbu $t1, 0x40($sp) -/* DF7B34 80241134 93AA0041 */ lbu $t2, 0x41($sp) -/* DF7B38 80241138 44821000 */ mtc1 $v0, $f2 -/* DF7B3C 8024113C 00000000 */ nop -/* DF7B40 80241140 468010A1 */ cvt.d.w $f2, $f2 -/* DF7B44 80241144 46201082 */ mul.d $f2, $f2, $f0 -/* DF7B48 80241148 00000000 */ nop -/* DF7B4C 8024114C A7A0002E */ sh $zero, 0x2e($sp) -/* DF7B50 80241150 240200FF */ addiu $v0, $zero, 0xff -/* DF7B54 80241154 A3A20030 */ sb $v0, 0x30($sp) -/* DF7B58 80241158 AFA30020 */ sw $v1, 0x20($sp) -/* DF7B5C 8024115C AFA80024 */ sw $t0, 0x24($sp) -/* DF7B60 80241160 A7A90028 */ sh $t1, 0x28($sp) -/* DF7B64 80241164 A7AA002A */ sh $t2, 0x2a($sp) -/* DF7B68 80241168 46201087 */ neg.d $f2, $f2 -/* DF7B6C 8024116C 4620110D */ trunc.w.d $f4, $f2 -/* DF7B70 80241170 44022000 */ mfc1 $v0, $f4 -/* DF7B74 80241174 0C04EBDC */ jal fold_appendGfx_component -/* DF7B78 80241178 A7A2002C */ sh $v0, 0x2c($sp) -/* DF7B7C 8024117C 3C04D838 */ lui $a0, 0xd838 -/* DF7B80 80241180 8E620000 */ lw $v0, ($s3) -/* DF7B84 80241184 34840002 */ ori $a0, $a0, 2 -/* DF7B88 80241188 0040182D */ daddu $v1, $v0, $zero -/* DF7B8C 8024118C 24420008 */ addiu $v0, $v0, 8 -/* DF7B90 80241190 AE620000 */ sw $v0, ($s3) -/* DF7B94 80241194 24020040 */ addiu $v0, $zero, 0x40 -/* DF7B98 80241198 AC640000 */ sw $a0, ($v1) -/* DF7B9C 8024119C AC620004 */ sw $v0, 4($v1) -/* DF7BA0 802411A0 8FBF00A0 */ lw $ra, 0xa0($sp) -/* DF7BA4 802411A4 8FB5009C */ lw $s5, 0x9c($sp) -/* DF7BA8 802411A8 8FB40098 */ lw $s4, 0x98($sp) -/* DF7BAC 802411AC 8FB30094 */ lw $s3, 0x94($sp) -/* DF7BB0 802411B0 8FB20090 */ lw $s2, 0x90($sp) -/* DF7BB4 802411B4 8FB1008C */ lw $s1, 0x8c($sp) -/* DF7BB8 802411B8 8FB00088 */ lw $s0, 0x88($sp) -/* DF7BBC 802411BC D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* DF7BC0 802411C0 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* DF7BC4 802411C4 03E00008 */ jr $ra -/* DF7BC8 802411C8 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802411CC_DF7BCC.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802411CC_DF7BCC.s deleted file mode 100644 index b3766f153d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802411CC_DF7BCC.s +++ /dev/null @@ -1,54 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802411CC_DF7BCC -/* DF7BCC 802411CC 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* DF7BD0 802411D0 00A0102D */ daddu $v0, $a1, $zero -/* DF7BD4 802411D4 27A30038 */ addiu $v1, $sp, 0x38 -/* DF7BD8 802411D8 AFBF0048 */ sw $ra, 0x48($sp) -/* DF7BDC 802411DC F7B60058 */ sdc1 $f22, 0x58($sp) -/* DF7BE0 802411E0 F7B40050 */ sdc1 $f20, 0x50($sp) -/* DF7BE4 802411E4 C4540010 */ lwc1 $f20, 0x10($v0) -/* DF7BE8 802411E8 4680A520 */ cvt.s.w $f20, $f20 -/* DF7BEC 802411EC C4560014 */ lwc1 $f22, 0x14($v0) -/* DF7BF0 802411F0 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF7BF4 802411F4 AFA30010 */ sw $v1, 0x10($sp) -/* DF7BF8 802411F8 8C440004 */ lw $a0, 4($v0) -/* DF7BFC 802411FC 8C450008 */ lw $a1, 8($v0) -/* DF7C00 80241200 8C460000 */ lw $a2, ($v0) -/* DF7C04 80241204 0C04BA38 */ jal msg_get_glyph -/* DF7C08 80241208 8C47000C */ lw $a3, 0xc($v0) -/* DF7C0C 8024120C 4600A00D */ trunc.w.s $f0, $f20 -/* DF7C10 80241210 44020000 */ mfc1 $v0, $f0 -/* DF7C14 80241214 93A50040 */ lbu $a1, 0x40($sp) -/* DF7C18 80241218 93A60041 */ lbu $a2, 0x41($sp) -/* DF7C1C 8024121C 00021400 */ sll $v0, $v0, 0x10 -/* DF7C20 80241220 AFA00010 */ sw $zero, 0x10($sp) -/* DF7C24 80241224 8FA3003C */ lw $v1, 0x3c($sp) -/* DF7C28 80241228 00021403 */ sra $v0, $v0, 0x10 -/* DF7C2C 8024122C AFA20018 */ sw $v0, 0x18($sp) -/* DF7C30 80241230 4600B00D */ trunc.w.s $f0, $f22 -/* DF7C34 80241234 44020000 */ mfc1 $v0, $f0 -/* DF7C38 80241238 00000000 */ nop -/* DF7C3C 8024123C 00021400 */ sll $v0, $v0, 0x10 -/* DF7C40 80241240 00021403 */ sra $v0, $v0, 0x10 -/* DF7C44 80241244 AFA2001C */ sw $v0, 0x1c($sp) -/* DF7C48 80241248 2402000A */ addiu $v0, $zero, 0xa -/* DF7C4C 8024124C AFA20020 */ sw $v0, 0x20($sp) -/* DF7C50 80241250 24020014 */ addiu $v0, $zero, 0x14 -/* DF7C54 80241254 AFA20024 */ sw $v0, 0x24($sp) -/* DF7C58 80241258 2402012C */ addiu $v0, $zero, 0x12c -/* DF7C5C 8024125C AFA20028 */ sw $v0, 0x28($sp) -/* DF7C60 80241260 240200C8 */ addiu $v0, $zero, 0xc8 -/* DF7C64 80241264 AFA2002C */ sw $v0, 0x2c($sp) -/* DF7C68 80241268 240200FF */ addiu $v0, $zero, 0xff -/* DF7C6C 8024126C AFA20030 */ sw $v0, 0x30($sp) -/* DF7C70 80241270 AFA30014 */ sw $v1, 0x14($sp) -/* DF7C74 80241274 8FA40038 */ lw $a0, 0x38($sp) -/* DF7C78 80241278 0C04BA68 */ jal draw_ci_image_with_clipping -/* DF7C7C 8024127C 24070002 */ addiu $a3, $zero, 2 -/* DF7C80 80241280 8FBF0048 */ lw $ra, 0x48($sp) -/* DF7C84 80241284 D7B60058 */ ldc1 $f22, 0x58($sp) -/* DF7C88 80241288 D7B40050 */ ldc1 $f20, 0x50($sp) -/* DF7C8C 8024128C 03E00008 */ jr $ra -/* DF7C90 80241290 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241294_DF7C94.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241294_DF7C94.s deleted file mode 100644 index acf4e43e84..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241294_DF7C94.s +++ /dev/null @@ -1,146 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241294_DF7C94 -/* DF7C94 80241294 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* DF7C98 80241298 AFB00088 */ sw $s0, 0x88($sp) -/* DF7C9C 8024129C 00A0802D */ daddu $s0, $a1, $zero -/* DF7CA0 802412A0 AFBF00A0 */ sw $ra, 0xa0($sp) -/* DF7CA4 802412A4 AFB5009C */ sw $s5, 0x9c($sp) -/* DF7CA8 802412A8 AFB40098 */ sw $s4, 0x98($sp) -/* DF7CAC 802412AC AFB30094 */ sw $s3, 0x94($sp) -/* DF7CB0 802412B0 AFB20090 */ sw $s2, 0x90($sp) -/* DF7CB4 802412B4 AFB1008C */ sw $s1, 0x8c($sp) -/* DF7CB8 802412B8 F7BA00C0 */ sdc1 $f26, 0xc0($sp) -/* DF7CBC 802412BC F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* DF7CC0 802412C0 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* DF7CC4 802412C4 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* DF7CC8 802412C8 C6140010 */ lwc1 $f20, 0x10($s0) -/* DF7CCC 802412CC 4680A520 */ cvt.s.w $f20, $f20 -/* DF7CD0 802412D0 4480C000 */ mtc1 $zero, $f24 -/* DF7CD4 802412D4 3C05437F */ lui $a1, 0x437f -/* DF7CD8 802412D8 8C820050 */ lw $v0, 0x50($a0) -/* DF7CDC 802412DC 4406C000 */ mfc1 $a2, $f24 -/* DF7CE0 802412E0 C61A0014 */ lwc1 $f26, 0x14($s0) -/* DF7CE4 802412E4 4680D6A0 */ cvt.s.w $f26, $f26 -/* DF7CE8 802412E8 AFA20010 */ sw $v0, 0x10($sp) -/* DF7CEC 802412EC 8E070018 */ lw $a3, 0x18($s0) -/* DF7CF0 802412F0 0C00A8ED */ jal update_lerp -/* DF7CF4 802412F4 2404000B */ addiu $a0, $zero, 0xb -/* DF7CF8 802412F8 4600008D */ trunc.w.s $f2, $f0 -/* DF7CFC 802412FC E7A20014 */ swc1 $f2, 0x14($sp) -/* DF7D00 80241300 0000202D */ daddu $a0, $zero, $zero -/* DF7D04 80241304 24050007 */ addiu $a1, $zero, 7 -/* DF7D08 80241308 240600FF */ addiu $a2, $zero, 0xff -/* DF7D0C 8024130C 00C0382D */ daddu $a3, $a2, $zero -/* DF7D10 80241310 00C0A82D */ daddu $s5, $a2, $zero -/* DF7D14 80241314 AFB50010 */ sw $s5, 0x10($sp) -/* DF7D18 80241318 0C04EAA7 */ jal fold_update -/* DF7D1C 8024131C AFA00018 */ sw $zero, 0x18($sp) -/* DF7D20 80241320 27A20038 */ addiu $v0, $sp, 0x38 -/* DF7D24 80241324 AFA20010 */ sw $v0, 0x10($sp) -/* DF7D28 80241328 8E040004 */ lw $a0, 4($s0) -/* DF7D2C 8024132C 8E050008 */ lw $a1, 8($s0) -/* DF7D30 80241330 8E060000 */ lw $a2, ($s0) -/* DF7D34 80241334 8E07000C */ lw $a3, 0xc($s0) -/* DF7D38 80241338 0C04BA38 */ jal msg_get_glyph -/* DF7D3C 8024133C 3C140001 */ lui $s4, 1 -/* DF7D40 80241340 93A20042 */ lbu $v0, 0x42($sp) -/* DF7D44 80241344 3C013FE0 */ lui $at, 0x3fe0 -/* DF7D48 80241348 4481B800 */ mtc1 $at, $f23 -/* DF7D4C 8024134C 4480B000 */ mtc1 $zero, $f22 -/* DF7D50 80241350 44820000 */ mtc1 $v0, $f0 -/* DF7D54 80241354 00000000 */ nop -/* DF7D58 80241358 46800021 */ cvt.d.w $f0, $f0 -/* DF7D5C 8024135C 46360002 */ mul.d $f0, $f0, $f22 -/* DF7D60 80241360 00000000 */ nop -/* DF7D64 80241364 36941630 */ ori $s4, $s4, 0x1630 -/* DF7D68 80241368 4600A521 */ cvt.d.s $f20, $f20 -/* DF7D6C 8024136C 27B00048 */ addiu $s0, $sp, 0x48 -/* DF7D70 80241370 4600D687 */ neg.s $f26, $f26 -/* DF7D74 80241374 4620A500 */ add.d $f20, $f20, $f0 -/* DF7D78 80241378 4406D000 */ mfc1 $a2, $f26 -/* DF7D7C 8024137C 4407C000 */ mfc1 $a3, $f24 -/* DF7D80 80241380 4620A520 */ cvt.s.d $f20, $f20 -/* DF7D84 80241384 4405A000 */ mfc1 $a1, $f20 -/* DF7D88 80241388 0C019E40 */ jal guTranslateF -/* DF7D8C 8024138C 0200202D */ daddu $a0, $s0, $zero -/* DF7D90 80241390 0200202D */ daddu $a0, $s0, $zero -/* DF7D94 80241394 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* DF7D98 80241398 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* DF7D9C 8024139C 3C13800A */ lui $s3, %hi(gDisplayContext) -/* DF7DA0 802413A0 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* DF7DA4 802413A4 96450000 */ lhu $a1, ($s2) -/* DF7DA8 802413A8 8E620000 */ lw $v0, ($s3) -/* DF7DAC 802413AC 00052980 */ sll $a1, $a1, 6 -/* DF7DB0 802413B0 00B42821 */ addu $a1, $a1, $s4 -/* DF7DB4 802413B4 0C019D40 */ jal guMtxF2L -/* DF7DB8 802413B8 00452821 */ addu $a1, $v0, $a1 -/* DF7DBC 802413BC 3C03DA38 */ lui $v1, 0xda38 -/* DF7DC0 802413C0 34630002 */ ori $v1, $v1, 2 -/* DF7DC4 802413C4 0000202D */ daddu $a0, $zero, $zero -/* DF7DC8 802413C8 27A50020 */ addiu $a1, $sp, 0x20 -/* DF7DCC 802413CC 3C060001 */ lui $a2, 1 -/* DF7DD0 802413D0 34C60040 */ ori $a2, $a2, 0x40 -/* DF7DD4 802413D4 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* DF7DD8 802413D8 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* DF7DDC 802413DC 0200382D */ daddu $a3, $s0, $zero -/* DF7DE0 802413E0 8E220000 */ lw $v0, ($s1) -/* DF7DE4 802413E4 96480000 */ lhu $t0, ($s2) -/* DF7DE8 802413E8 0040482D */ daddu $t1, $v0, $zero -/* DF7DEC 802413EC 24420008 */ addiu $v0, $v0, 8 -/* DF7DF0 802413F0 AE220000 */ sw $v0, ($s1) -/* DF7DF4 802413F4 3102FFFF */ andi $v0, $t0, 0xffff -/* DF7DF8 802413F8 00021180 */ sll $v0, $v0, 6 -/* DF7DFC 802413FC 00541021 */ addu $v0, $v0, $s4 -/* DF7E00 80241400 AD230000 */ sw $v1, ($t1) -/* DF7E04 80241404 8E630000 */ lw $v1, ($s3) -/* DF7E08 80241408 25080001 */ addiu $t0, $t0, 1 -/* DF7E0C 8024140C 00621821 */ addu $v1, $v1, $v0 -/* DF7E10 80241410 3C028000 */ lui $v0, 0x8000 -/* DF7E14 80241414 00621821 */ addu $v1, $v1, $v0 -/* DF7E18 80241418 AD230004 */ sw $v1, 4($t1) -/* DF7E1C 8024141C 93A20042 */ lbu $v0, 0x42($sp) -/* DF7E20 80241420 8FA3003C */ lw $v1, 0x3c($sp) -/* DF7E24 80241424 93A90040 */ lbu $t1, 0x40($sp) -/* DF7E28 80241428 93AA0041 */ lbu $t2, 0x41($sp) -/* DF7E2C 8024142C 44820000 */ mtc1 $v0, $f0 -/* DF7E30 80241430 00000000 */ nop -/* DF7E34 80241434 46800021 */ cvt.d.w $f0, $f0 -/* DF7E38 80241438 8FA20038 */ lw $v0, 0x38($sp) -/* DF7E3C 8024143C 46360002 */ mul.d $f0, $f0, $f22 -/* DF7E40 80241440 00000000 */ nop -/* DF7E44 80241444 A6480000 */ sh $t0, ($s2) -/* DF7E48 80241448 A7A0002E */ sh $zero, 0x2e($sp) -/* DF7E4C 8024144C A3B50030 */ sb $s5, 0x30($sp) -/* DF7E50 80241450 AFA30024 */ sw $v1, 0x24($sp) -/* DF7E54 80241454 A7A90028 */ sh $t1, 0x28($sp) -/* DF7E58 80241458 A7AA002A */ sh $t2, 0x2a($sp) -/* DF7E5C 8024145C AFA20020 */ sw $v0, 0x20($sp) -/* DF7E60 80241460 46200007 */ neg.d $f0, $f0 -/* DF7E64 80241464 4620008D */ trunc.w.d $f2, $f0 -/* DF7E68 80241468 44021000 */ mfc1 $v0, $f2 -/* DF7E6C 8024146C 0C04EBDC */ jal fold_appendGfx_component -/* DF7E70 80241470 A7A2002C */ sh $v0, 0x2c($sp) -/* DF7E74 80241474 3C04D838 */ lui $a0, 0xd838 -/* DF7E78 80241478 8E220000 */ lw $v0, ($s1) -/* DF7E7C 8024147C 34840002 */ ori $a0, $a0, 2 -/* DF7E80 80241480 0040182D */ daddu $v1, $v0, $zero -/* DF7E84 80241484 24420008 */ addiu $v0, $v0, 8 -/* DF7E88 80241488 AE220000 */ sw $v0, ($s1) -/* DF7E8C 8024148C 24020040 */ addiu $v0, $zero, 0x40 -/* DF7E90 80241490 AC640000 */ sw $a0, ($v1) -/* DF7E94 80241494 AC620004 */ sw $v0, 4($v1) -/* DF7E98 80241498 8FBF00A0 */ lw $ra, 0xa0($sp) -/* DF7E9C 8024149C 8FB5009C */ lw $s5, 0x9c($sp) -/* DF7EA0 802414A0 8FB40098 */ lw $s4, 0x98($sp) -/* DF7EA4 802414A4 8FB30094 */ lw $s3, 0x94($sp) -/* DF7EA8 802414A8 8FB20090 */ lw $s2, 0x90($sp) -/* DF7EAC 802414AC 8FB1008C */ lw $s1, 0x8c($sp) -/* DF7EB0 802414B0 8FB00088 */ lw $s0, 0x88($sp) -/* DF7EB4 802414B4 D7BA00C0 */ ldc1 $f26, 0xc0($sp) -/* DF7EB8 802414B8 D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* DF7EBC 802414BC D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* DF7EC0 802414C0 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* DF7EC4 802414C4 03E00008 */ jr $ra -/* DF7EC8 802414C8 27BD00C8 */ addiu $sp, $sp, 0xc8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802414CC_DF7ECC.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802414CC_DF7ECC.s deleted file mode 100644 index a660e31d5c..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802414CC_DF7ECC.s +++ /dev/null @@ -1,171 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802414CC_DF7ECC -/* DF7ECC 802414CC 27BDFEE8 */ addiu $sp, $sp, -0x118 -/* DF7ED0 802414D0 AFB100CC */ sw $s1, 0xcc($sp) -/* DF7ED4 802414D4 0080882D */ daddu $s1, $a0, $zero -/* DF7ED8 802414D8 AFB000C8 */ sw $s0, 0xc8($sp) -/* DF7EDC 802414DC 00A0802D */ daddu $s0, $a1, $zero -/* DF7EE0 802414E0 AFBF00E0 */ sw $ra, 0xe0($sp) -/* DF7EE4 802414E4 AFB500DC */ sw $s5, 0xdc($sp) -/* DF7EE8 802414E8 AFB400D8 */ sw $s4, 0xd8($sp) -/* DF7EEC 802414EC AFB300D4 */ sw $s3, 0xd4($sp) -/* DF7EF0 802414F0 AFB200D0 */ sw $s2, 0xd0($sp) -/* DF7EF4 802414F4 F7BE0110 */ sdc1 $f30, 0x110($sp) -/* DF7EF8 802414F8 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* DF7EFC 802414FC F7BA0100 */ sdc1 $f26, 0x100($sp) -/* DF7F00 80241500 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* DF7F04 80241504 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* DF7F08 80241508 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* DF7F0C 8024150C C6140010 */ lwc1 $f20, 0x10($s0) -/* DF7F10 80241510 4680A520 */ cvt.s.w $f20, $f20 -/* DF7F14 80241514 4480E000 */ mtc1 $zero, $f28 -/* DF7F18 80241518 3C05437F */ lui $a1, 0x437f -/* DF7F1C 8024151C 8E220050 */ lw $v0, 0x50($s1) -/* DF7F20 80241520 4406E000 */ mfc1 $a2, $f28 -/* DF7F24 80241524 C61E0014 */ lwc1 $f30, 0x14($s0) -/* DF7F28 80241528 4680F7A0 */ cvt.s.w $f30, $f30 -/* DF7F2C 8024152C AFA20010 */ sw $v0, 0x10($sp) -/* DF7F30 80241530 8E070018 */ lw $a3, 0x18($s0) -/* DF7F34 80241534 0C00A8ED */ jal update_lerp -/* DF7F38 80241538 2404000B */ addiu $a0, $zero, 0xb -/* DF7F3C 8024153C 4600008D */ trunc.w.s $f2, $f0 -/* DF7F40 80241540 E7A20014 */ swc1 $f2, 0x14($sp) -/* DF7F44 80241544 0000202D */ daddu $a0, $zero, $zero -/* DF7F48 80241548 24050007 */ addiu $a1, $zero, 7 -/* DF7F4C 8024154C 240600FF */ addiu $a2, $zero, 0xff -/* DF7F50 80241550 00C0382D */ daddu $a3, $a2, $zero -/* DF7F54 80241554 00C0A82D */ daddu $s5, $a2, $zero -/* DF7F58 80241558 AFB50010 */ sw $s5, 0x10($sp) -/* DF7F5C 8024155C 0C04EAA7 */ jal fold_update -/* DF7F60 80241560 AFA00018 */ sw $zero, 0x18($sp) -/* DF7F64 80241564 3C013F80 */ lui $at, 0x3f80 -/* DF7F68 80241568 4481D000 */ mtc1 $at, $f26 -/* DF7F6C 8024156C 8E220050 */ lw $v0, 0x50($s1) -/* DF7F70 80241570 3C063E4C */ lui $a2, 0x3e4c -/* DF7F74 80241574 34C6CCCD */ ori $a2, $a2, 0xcccd -/* DF7F78 80241578 4405D000 */ mfc1 $a1, $f26 -/* DF7F7C 8024157C AFA20010 */ sw $v0, 0x10($sp) -/* DF7F80 80241580 8E070018 */ lw $a3, 0x18($s0) -/* DF7F84 80241584 0C00A8ED */ jal update_lerp -/* DF7F88 80241588 0000202D */ daddu $a0, $zero, $zero -/* DF7F8C 8024158C 27A20038 */ addiu $v0, $sp, 0x38 -/* DF7F90 80241590 AFA20010 */ sw $v0, 0x10($sp) -/* DF7F94 80241594 8E040004 */ lw $a0, 4($s0) -/* DF7F98 80241598 8E050008 */ lw $a1, 8($s0) -/* DF7F9C 8024159C 8E060000 */ lw $a2, ($s0) -/* DF7FA0 802415A0 8E07000C */ lw $a3, 0xc($s0) -/* DF7FA4 802415A4 0C04BA38 */ jal msg_get_glyph -/* DF7FA8 802415A8 46000586 */ mov.s $f22, $f0 -/* DF7FAC 802415AC 93A20042 */ lbu $v0, 0x42($sp) -/* DF7FB0 802415B0 3C013FE0 */ lui $at, 0x3fe0 -/* DF7FB4 802415B4 4481C800 */ mtc1 $at, $f25 -/* DF7FB8 802415B8 4480C000 */ mtc1 $zero, $f24 -/* DF7FBC 802415BC 44820000 */ mtc1 $v0, $f0 -/* DF7FC0 802415C0 00000000 */ nop -/* DF7FC4 802415C4 46800021 */ cvt.d.w $f0, $f0 -/* DF7FC8 802415C8 46380002 */ mul.d $f0, $f0, $f24 -/* DF7FCC 802415CC 00000000 */ nop -/* DF7FD0 802415D0 3C140001 */ lui $s4, 1 -/* DF7FD4 802415D4 36941630 */ ori $s4, $s4, 0x1630 -/* DF7FD8 802415D8 4600A521 */ cvt.d.s $f20, $f20 -/* DF7FDC 802415DC 27B10048 */ addiu $s1, $sp, 0x48 -/* DF7FE0 802415E0 4600F787 */ neg.s $f30, $f30 -/* DF7FE4 802415E4 4620A500 */ add.d $f20, $f20, $f0 -/* DF7FE8 802415E8 4406F000 */ mfc1 $a2, $f30 -/* DF7FEC 802415EC 4407E000 */ mfc1 $a3, $f28 -/* DF7FF0 802415F0 4620A520 */ cvt.s.d $f20, $f20 -/* DF7FF4 802415F4 4405A000 */ mfc1 $a1, $f20 -/* DF7FF8 802415F8 0C019E40 */ jal guTranslateF -/* DF7FFC 802415FC 0220202D */ daddu $a0, $s1, $zero -/* DF8000 80241600 27B00088 */ addiu $s0, $sp, 0x88 -/* DF8004 80241604 0200202D */ daddu $a0, $s0, $zero -/* DF8008 80241608 4405B000 */ mfc1 $a1, $f22 -/* DF800C 8024160C 4407D000 */ mfc1 $a3, $f26 -/* DF8010 80241610 0C019DF0 */ jal guScaleF -/* DF8014 80241614 00A0302D */ daddu $a2, $a1, $zero -/* DF8018 80241618 0200202D */ daddu $a0, $s0, $zero -/* DF801C 8024161C 0220282D */ daddu $a1, $s1, $zero -/* DF8020 80241620 0C019D80 */ jal guMtxCatF -/* DF8024 80241624 0220302D */ daddu $a2, $s1, $zero -/* DF8028 80241628 0220202D */ daddu $a0, $s1, $zero -/* DF802C 8024162C 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* DF8030 80241630 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* DF8034 80241634 3C13800A */ lui $s3, %hi(gDisplayContext) -/* DF8038 80241638 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* DF803C 8024163C 96450000 */ lhu $a1, ($s2) -/* DF8040 80241640 8E620000 */ lw $v0, ($s3) -/* DF8044 80241644 00052980 */ sll $a1, $a1, 6 -/* DF8048 80241648 00B42821 */ addu $a1, $a1, $s4 -/* DF804C 8024164C 0C019D40 */ jal guMtxF2L -/* DF8050 80241650 00452821 */ addu $a1, $v0, $a1 -/* DF8054 80241654 3C03DA38 */ lui $v1, 0xda38 -/* DF8058 80241658 34630002 */ ori $v1, $v1, 2 -/* DF805C 8024165C 0000202D */ daddu $a0, $zero, $zero -/* DF8060 80241660 27A50020 */ addiu $a1, $sp, 0x20 -/* DF8064 80241664 24060040 */ addiu $a2, $zero, 0x40 -/* DF8068 80241668 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* DF806C 8024166C 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* DF8070 80241670 0220382D */ daddu $a3, $s1, $zero -/* DF8074 80241674 8E020000 */ lw $v0, ($s0) -/* DF8078 80241678 96480000 */ lhu $t0, ($s2) -/* DF807C 8024167C 0040482D */ daddu $t1, $v0, $zero -/* DF8080 80241680 24420008 */ addiu $v0, $v0, 8 -/* DF8084 80241684 AE020000 */ sw $v0, ($s0) -/* DF8088 80241688 3102FFFF */ andi $v0, $t0, 0xffff -/* DF808C 8024168C 00021180 */ sll $v0, $v0, 6 -/* DF8090 80241690 00541021 */ addu $v0, $v0, $s4 -/* DF8094 80241694 AD230000 */ sw $v1, ($t1) -/* DF8098 80241698 8E630000 */ lw $v1, ($s3) -/* DF809C 8024169C 25080001 */ addiu $t0, $t0, 1 -/* DF80A0 802416A0 00621821 */ addu $v1, $v1, $v0 -/* DF80A4 802416A4 3C028000 */ lui $v0, 0x8000 -/* DF80A8 802416A8 00621821 */ addu $v1, $v1, $v0 -/* DF80AC 802416AC AD230004 */ sw $v1, 4($t1) -/* DF80B0 802416B0 93A20042 */ lbu $v0, 0x42($sp) -/* DF80B4 802416B4 8FA3003C */ lw $v1, 0x3c($sp) -/* DF80B8 802416B8 93A90040 */ lbu $t1, 0x40($sp) -/* DF80BC 802416BC 93AA0041 */ lbu $t2, 0x41($sp) -/* DF80C0 802416C0 44820000 */ mtc1 $v0, $f0 -/* DF80C4 802416C4 00000000 */ nop -/* DF80C8 802416C8 46800021 */ cvt.d.w $f0, $f0 -/* DF80CC 802416CC 8FA20038 */ lw $v0, 0x38($sp) -/* DF80D0 802416D0 46380002 */ mul.d $f0, $f0, $f24 -/* DF80D4 802416D4 00000000 */ nop -/* DF80D8 802416D8 A6480000 */ sh $t0, ($s2) -/* DF80DC 802416DC A7A0002E */ sh $zero, 0x2e($sp) -/* DF80E0 802416E0 A3B50030 */ sb $s5, 0x30($sp) -/* DF80E4 802416E4 AFA30024 */ sw $v1, 0x24($sp) -/* DF80E8 802416E8 A7A90028 */ sh $t1, 0x28($sp) -/* DF80EC 802416EC A7AA002A */ sh $t2, 0x2a($sp) -/* DF80F0 802416F0 AFA20020 */ sw $v0, 0x20($sp) -/* DF80F4 802416F4 46200007 */ neg.d $f0, $f0 -/* DF80F8 802416F8 4620008D */ trunc.w.d $f2, $f0 -/* DF80FC 802416FC 44021000 */ mfc1 $v0, $f2 -/* DF8100 80241700 0C04EBDC */ jal fold_appendGfx_component -/* DF8104 80241704 A7A2002C */ sh $v0, 0x2c($sp) -/* DF8108 80241708 3C04D838 */ lui $a0, 0xd838 -/* DF810C 8024170C 8E020000 */ lw $v0, ($s0) -/* DF8110 80241710 34840002 */ ori $a0, $a0, 2 -/* DF8114 80241714 0040182D */ daddu $v1, $v0, $zero -/* DF8118 80241718 24420008 */ addiu $v0, $v0, 8 -/* DF811C 8024171C AE020000 */ sw $v0, ($s0) -/* DF8120 80241720 24020040 */ addiu $v0, $zero, 0x40 -/* DF8124 80241724 AC640000 */ sw $a0, ($v1) -/* DF8128 80241728 AC620004 */ sw $v0, 4($v1) -/* DF812C 8024172C 8FBF00E0 */ lw $ra, 0xe0($sp) -/* DF8130 80241730 8FB500DC */ lw $s5, 0xdc($sp) -/* DF8134 80241734 8FB400D8 */ lw $s4, 0xd8($sp) -/* DF8138 80241738 8FB300D4 */ lw $s3, 0xd4($sp) -/* DF813C 8024173C 8FB200D0 */ lw $s2, 0xd0($sp) -/* DF8140 80241740 8FB100CC */ lw $s1, 0xcc($sp) -/* DF8144 80241744 8FB000C8 */ lw $s0, 0xc8($sp) -/* DF8148 80241748 D7BE0110 */ ldc1 $f30, 0x110($sp) -/* DF814C 8024174C D7BC0108 */ ldc1 $f28, 0x108($sp) -/* DF8150 80241750 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* DF8154 80241754 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* DF8158 80241758 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* DF815C 8024175C D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* DF8160 80241760 03E00008 */ jr $ra -/* DF8164 80241764 27BD0118 */ addiu $sp, $sp, 0x118 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241768_DF8168.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241768_DF8168.s deleted file mode 100644 index e4014e3f91..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241768_DF8168.s +++ /dev/null @@ -1,168 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241768_DF8168 -/* DF8168 80241768 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* DF816C 8024176C AFB100CC */ sw $s1, 0xcc($sp) -/* DF8170 80241770 0080882D */ daddu $s1, $a0, $zero -/* DF8174 80241774 AFB000C8 */ sw $s0, 0xc8($sp) -/* DF8178 80241778 00A0802D */ daddu $s0, $a1, $zero -/* DF817C 8024177C AFBF00E0 */ sw $ra, 0xe0($sp) -/* DF8180 80241780 AFB500DC */ sw $s5, 0xdc($sp) -/* DF8184 80241784 AFB400D8 */ sw $s4, 0xd8($sp) -/* DF8188 80241788 AFB300D4 */ sw $s3, 0xd4($sp) -/* DF818C 8024178C AFB200D0 */ sw $s2, 0xd0($sp) -/* DF8190 80241790 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* DF8194 80241794 F7BA0100 */ sdc1 $f26, 0x100($sp) -/* DF8198 80241798 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* DF819C 8024179C F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* DF81A0 802417A0 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* DF81A4 802417A4 C6140010 */ lwc1 $f20, 0x10($s0) -/* DF81A8 802417A8 4680A520 */ cvt.s.w $f20, $f20 -/* DF81AC 802417AC 4480B000 */ mtc1 $zero, $f22 -/* DF81B0 802417B0 3C05437F */ lui $a1, 0x437f -/* DF81B4 802417B4 8E220050 */ lw $v0, 0x50($s1) -/* DF81B8 802417B8 4406B000 */ mfc1 $a2, $f22 -/* DF81BC 802417BC C61C0014 */ lwc1 $f28, 0x14($s0) -/* DF81C0 802417C0 4680E720 */ cvt.s.w $f28, $f28 -/* DF81C4 802417C4 AFA20010 */ sw $v0, 0x10($sp) -/* DF81C8 802417C8 8E070018 */ lw $a3, 0x18($s0) -/* DF81CC 802417CC 0C00A8ED */ jal update_lerp -/* DF81D0 802417D0 2404000B */ addiu $a0, $zero, 0xb -/* DF81D4 802417D4 4600008D */ trunc.w.s $f2, $f0 -/* DF81D8 802417D8 E7A20014 */ swc1 $f2, 0x14($sp) -/* DF81DC 802417DC 0000202D */ daddu $a0, $zero, $zero -/* DF81E0 802417E0 24050007 */ addiu $a1, $zero, 7 -/* DF81E4 802417E4 240600FF */ addiu $a2, $zero, 0xff -/* DF81E8 802417E8 00C0382D */ daddu $a3, $a2, $zero -/* DF81EC 802417EC 00C0A82D */ daddu $s5, $a2, $zero -/* DF81F0 802417F0 AFB50010 */ sw $s5, 0x10($sp) -/* DF81F4 802417F4 0C04EAA7 */ jal fold_update -/* DF81F8 802417F8 AFA00018 */ sw $zero, 0x18($sp) -/* DF81FC 802417FC 8E220050 */ lw $v0, 0x50($s1) -/* DF8200 80241800 4405B000 */ mfc1 $a1, $f22 -/* DF8204 80241804 3C064270 */ lui $a2, 0x4270 -/* DF8208 80241808 AFA20010 */ sw $v0, 0x10($sp) -/* DF820C 8024180C 8E070018 */ lw $a3, 0x18($s0) -/* DF8210 80241810 0C00A8ED */ jal update_lerp -/* DF8214 80241814 0000202D */ daddu $a0, $zero, $zero -/* DF8218 80241818 27A20038 */ addiu $v0, $sp, 0x38 -/* DF821C 8024181C AFA20010 */ sw $v0, 0x10($sp) -/* DF8220 80241820 8E040004 */ lw $a0, 4($s0) -/* DF8224 80241824 8E050008 */ lw $a1, 8($s0) -/* DF8228 80241828 8E060000 */ lw $a2, ($s0) -/* DF822C 8024182C 8E07000C */ lw $a3, 0xc($s0) -/* DF8230 80241830 0C04BA38 */ jal msg_get_glyph -/* DF8234 80241834 46000606 */ mov.s $f24, $f0 -/* DF8238 80241838 93A20042 */ lbu $v0, 0x42($sp) -/* DF823C 8024183C 3C013FE0 */ lui $at, 0x3fe0 -/* DF8240 80241840 4481D800 */ mtc1 $at, $f27 -/* DF8244 80241844 4480D000 */ mtc1 $zero, $f26 -/* DF8248 80241848 44820000 */ mtc1 $v0, $f0 -/* DF824C 8024184C 00000000 */ nop -/* DF8250 80241850 46800021 */ cvt.d.w $f0, $f0 -/* DF8254 80241854 463A0002 */ mul.d $f0, $f0, $f26 -/* DF8258 80241858 00000000 */ nop -/* DF825C 8024185C 3C140001 */ lui $s4, 1 -/* DF8260 80241860 36941630 */ ori $s4, $s4, 0x1630 -/* DF8264 80241864 4600A521 */ cvt.d.s $f20, $f20 -/* DF8268 80241868 27B10048 */ addiu $s1, $sp, 0x48 -/* DF826C 8024186C 4600E707 */ neg.s $f28, $f28 -/* DF8270 80241870 4620A500 */ add.d $f20, $f20, $f0 -/* DF8274 80241874 4406E000 */ mfc1 $a2, $f28 -/* DF8278 80241878 4407B000 */ mfc1 $a3, $f22 -/* DF827C 8024187C 4620A520 */ cvt.s.d $f20, $f20 -/* DF8280 80241880 4405A000 */ mfc1 $a1, $f20 -/* DF8284 80241884 0C019E40 */ jal guTranslateF -/* DF8288 80241888 0220202D */ daddu $a0, $s1, $zero -/* DF828C 8024188C 27B00088 */ addiu $s0, $sp, 0x88 -/* DF8290 80241890 4405C000 */ mfc1 $a1, $f24 -/* DF8294 80241894 4406B000 */ mfc1 $a2, $f22 -/* DF8298 80241898 3C073F80 */ lui $a3, 0x3f80 -/* DF829C 8024189C 0200202D */ daddu $a0, $s0, $zero -/* DF82A0 802418A0 0C019EC8 */ jal guRotateF -/* DF82A4 802418A4 AFA60010 */ sw $a2, 0x10($sp) -/* DF82A8 802418A8 0200202D */ daddu $a0, $s0, $zero -/* DF82AC 802418AC 0220282D */ daddu $a1, $s1, $zero -/* DF82B0 802418B0 0C019D80 */ jal guMtxCatF -/* DF82B4 802418B4 0220302D */ daddu $a2, $s1, $zero -/* DF82B8 802418B8 0220202D */ daddu $a0, $s1, $zero -/* DF82BC 802418BC 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* DF82C0 802418C0 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* DF82C4 802418C4 3C13800A */ lui $s3, %hi(gDisplayContext) -/* DF82C8 802418C8 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* DF82CC 802418CC 96450000 */ lhu $a1, ($s2) -/* DF82D0 802418D0 8E620000 */ lw $v0, ($s3) -/* DF82D4 802418D4 00052980 */ sll $a1, $a1, 6 -/* DF82D8 802418D8 00B42821 */ addu $a1, $a1, $s4 -/* DF82DC 802418DC 0C019D40 */ jal guMtxF2L -/* DF82E0 802418E0 00452821 */ addu $a1, $v0, $a1 -/* DF82E4 802418E4 3C03DA38 */ lui $v1, 0xda38 -/* DF82E8 802418E8 34630002 */ ori $v1, $v1, 2 -/* DF82EC 802418EC 0000202D */ daddu $a0, $zero, $zero -/* DF82F0 802418F0 27A50020 */ addiu $a1, $sp, 0x20 -/* DF82F4 802418F4 3C060001 */ lui $a2, 1 -/* DF82F8 802418F8 34C60040 */ ori $a2, $a2, 0x40 -/* DF82FC 802418FC 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* DF8300 80241900 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* DF8304 80241904 0220382D */ daddu $a3, $s1, $zero -/* DF8308 80241908 8E020000 */ lw $v0, ($s0) -/* DF830C 8024190C 96480000 */ lhu $t0, ($s2) -/* DF8310 80241910 0040482D */ daddu $t1, $v0, $zero -/* DF8314 80241914 24420008 */ addiu $v0, $v0, 8 -/* DF8318 80241918 AE020000 */ sw $v0, ($s0) -/* DF831C 8024191C 3102FFFF */ andi $v0, $t0, 0xffff -/* DF8320 80241920 00021180 */ sll $v0, $v0, 6 -/* DF8324 80241924 00541021 */ addu $v0, $v0, $s4 -/* DF8328 80241928 AD230000 */ sw $v1, ($t1) -/* DF832C 8024192C 8E630000 */ lw $v1, ($s3) -/* DF8330 80241930 25080001 */ addiu $t0, $t0, 1 -/* DF8334 80241934 00621821 */ addu $v1, $v1, $v0 -/* DF8338 80241938 3C028000 */ lui $v0, 0x8000 -/* DF833C 8024193C 00621821 */ addu $v1, $v1, $v0 -/* DF8340 80241940 AD230004 */ sw $v1, 4($t1) -/* DF8344 80241944 93A20042 */ lbu $v0, 0x42($sp) -/* DF8348 80241948 8FA3003C */ lw $v1, 0x3c($sp) -/* DF834C 8024194C 93A90040 */ lbu $t1, 0x40($sp) -/* DF8350 80241950 93AA0041 */ lbu $t2, 0x41($sp) -/* DF8354 80241954 44820000 */ mtc1 $v0, $f0 -/* DF8358 80241958 00000000 */ nop -/* DF835C 8024195C 46800021 */ cvt.d.w $f0, $f0 -/* DF8360 80241960 8FA20038 */ lw $v0, 0x38($sp) -/* DF8364 80241964 463A0002 */ mul.d $f0, $f0, $f26 -/* DF8368 80241968 00000000 */ nop -/* DF836C 8024196C A6480000 */ sh $t0, ($s2) -/* DF8370 80241970 A7A0002E */ sh $zero, 0x2e($sp) -/* DF8374 80241974 A3B50030 */ sb $s5, 0x30($sp) -/* DF8378 80241978 AFA30024 */ sw $v1, 0x24($sp) -/* DF837C 8024197C A7A90028 */ sh $t1, 0x28($sp) -/* DF8380 80241980 A7AA002A */ sh $t2, 0x2a($sp) -/* DF8384 80241984 AFA20020 */ sw $v0, 0x20($sp) -/* DF8388 80241988 46200007 */ neg.d $f0, $f0 -/* DF838C 8024198C 4620008D */ trunc.w.d $f2, $f0 -/* DF8390 80241990 44021000 */ mfc1 $v0, $f2 -/* DF8394 80241994 0C04EBDC */ jal fold_appendGfx_component -/* DF8398 80241998 A7A2002C */ sh $v0, 0x2c($sp) -/* DF839C 8024199C 3C04D838 */ lui $a0, 0xd838 -/* DF83A0 802419A0 8E020000 */ lw $v0, ($s0) -/* DF83A4 802419A4 34840002 */ ori $a0, $a0, 2 -/* DF83A8 802419A8 0040182D */ daddu $v1, $v0, $zero -/* DF83AC 802419AC 24420008 */ addiu $v0, $v0, 8 -/* DF83B0 802419B0 AE020000 */ sw $v0, ($s0) -/* DF83B4 802419B4 24020040 */ addiu $v0, $zero, 0x40 -/* DF83B8 802419B8 AC640000 */ sw $a0, ($v1) -/* DF83BC 802419BC AC620004 */ sw $v0, 4($v1) -/* DF83C0 802419C0 8FBF00E0 */ lw $ra, 0xe0($sp) -/* DF83C4 802419C4 8FB500DC */ lw $s5, 0xdc($sp) -/* DF83C8 802419C8 8FB400D8 */ lw $s4, 0xd8($sp) -/* DF83CC 802419CC 8FB300D4 */ lw $s3, 0xd4($sp) -/* DF83D0 802419D0 8FB200D0 */ lw $s2, 0xd0($sp) -/* DF83D4 802419D4 8FB100CC */ lw $s1, 0xcc($sp) -/* DF83D8 802419D8 8FB000C8 */ lw $s0, 0xc8($sp) -/* DF83DC 802419DC D7BC0108 */ ldc1 $f28, 0x108($sp) -/* DF83E0 802419E0 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* DF83E4 802419E4 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* DF83E8 802419E8 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* DF83EC 802419EC D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* DF83F0 802419F0 03E00008 */ jr $ra -/* DF83F4 802419F4 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802419F8_DF83F8.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802419F8_DF83F8.s deleted file mode 100644 index ad1627dba7..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802419F8_DF83F8.s +++ /dev/null @@ -1,85 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802419F8_DF83F8 -/* DF83F8 802419F8 27BDFF90 */ addiu $sp, $sp, -0x70 -/* DF83FC 802419FC AFB00048 */ sw $s0, 0x48($sp) -/* DF8400 80241A00 00A0802D */ daddu $s0, $a1, $zero -/* DF8404 80241A04 AFBF0050 */ sw $ra, 0x50($sp) -/* DF8408 80241A08 AFB1004C */ sw $s1, 0x4c($sp) -/* DF840C 80241A0C F7B80068 */ sdc1 $f24, 0x68($sp) -/* DF8410 80241A10 F7B60060 */ sdc1 $f22, 0x60($sp) -/* DF8414 80241A14 F7B40058 */ sdc1 $f20, 0x58($sp) -/* DF8418 80241A18 8C820050 */ lw $v0, 0x50($a0) -/* DF841C 80241A1C 2404000B */ addiu $a0, $zero, 0xb -/* DF8420 80241A20 0000302D */ daddu $a2, $zero, $zero -/* DF8424 80241A24 C6140010 */ lwc1 $f20, 0x10($s0) -/* DF8428 80241A28 4680A520 */ cvt.s.w $f20, $f20 -/* DF842C 80241A2C 3C05437F */ lui $a1, 0x437f -/* DF8430 80241A30 C6160014 */ lwc1 $f22, 0x14($s0) -/* DF8434 80241A34 4680B5A0 */ cvt.s.w $f22, $f22 -/* DF8438 80241A38 AFA20010 */ sw $v0, 0x10($sp) -/* DF843C 80241A3C 8E070018 */ lw $a3, 0x18($s0) -/* DF8440 80241A40 0C00A8ED */ jal update_lerp -/* DF8444 80241A44 27B10038 */ addiu $s1, $sp, 0x38 -/* DF8448 80241A48 AFB10010 */ sw $s1, 0x10($sp) -/* DF844C 80241A4C 8E040004 */ lw $a0, 4($s0) -/* DF8450 80241A50 8E050008 */ lw $a1, 8($s0) -/* DF8454 80241A54 8E060000 */ lw $a2, ($s0) -/* DF8458 80241A58 8E07000C */ lw $a3, 0xc($s0) -/* DF845C 80241A5C 0C04BA38 */ jal msg_get_glyph -/* DF8460 80241A60 46000606 */ mov.s $f24, $f0 -/* DF8464 80241A64 4600A08D */ trunc.w.s $f2, $f20 -/* DF8468 80241A68 44021000 */ mfc1 $v0, $f2 -/* DF846C 80241A6C 93A50040 */ lbu $a1, 0x40($sp) -/* DF8470 80241A70 93A60041 */ lbu $a2, 0x41($sp) -/* DF8474 80241A74 00021400 */ sll $v0, $v0, 0x10 -/* DF8478 80241A78 AFA00010 */ sw $zero, 0x10($sp) -/* DF847C 80241A7C 8FA3003C */ lw $v1, 0x3c($sp) -/* DF8480 80241A80 00021403 */ sra $v0, $v0, 0x10 -/* DF8484 80241A84 AFA20018 */ sw $v0, 0x18($sp) -/* DF8488 80241A88 4600B08D */ trunc.w.s $f2, $f22 -/* DF848C 80241A8C 44021000 */ mfc1 $v0, $f2 -/* DF8490 80241A90 00000000 */ nop -/* DF8494 80241A94 00021400 */ sll $v0, $v0, 0x10 -/* DF8498 80241A98 3C014F00 */ lui $at, 0x4f00 -/* DF849C 80241A9C 44810000 */ mtc1 $at, $f0 -/* DF84A0 80241AA0 00021403 */ sra $v0, $v0, 0x10 -/* DF84A4 80241AA4 AFA2001C */ sw $v0, 0x1c($sp) -/* DF84A8 80241AA8 2402000A */ addiu $v0, $zero, 0xa -/* DF84AC 80241AAC AFA20020 */ sw $v0, 0x20($sp) -/* DF84B0 80241AB0 24020014 */ addiu $v0, $zero, 0x14 -/* DF84B4 80241AB4 AFA20024 */ sw $v0, 0x24($sp) -/* DF84B8 80241AB8 2402012C */ addiu $v0, $zero, 0x12c -/* DF84BC 80241ABC AFA20028 */ sw $v0, 0x28($sp) -/* DF84C0 80241AC0 240200C8 */ addiu $v0, $zero, 0xc8 -/* DF84C4 80241AC4 AFA2002C */ sw $v0, 0x2c($sp) -/* DF84C8 80241AC8 4618003E */ c.le.s $f0, $f24 -/* DF84CC 80241ACC 00000000 */ nop -/* DF84D0 80241AD0 45010005 */ bc1t .L80241AE8 -/* DF84D4 80241AD4 AFA30014 */ sw $v1, 0x14($sp) -/* DF84D8 80241AD8 4600C08D */ trunc.w.s $f2, $f24 -/* DF84DC 80241ADC 44031000 */ mfc1 $v1, $f2 -/* DF84E0 80241AE0 080906C1 */ j .L80241B04 -/* DF84E4 80241AE4 306200FF */ andi $v0, $v1, 0xff -.L80241AE8: -/* DF84E8 80241AE8 4600C001 */ sub.s $f0, $f24, $f0 -/* DF84EC 80241AEC 3C028000 */ lui $v0, 0x8000 -/* DF84F0 80241AF0 4600008D */ trunc.w.s $f2, $f0 -/* DF84F4 80241AF4 44031000 */ mfc1 $v1, $f2 -/* DF84F8 80241AF8 00000000 */ nop -/* DF84FC 80241AFC 00621825 */ or $v1, $v1, $v0 -/* DF8500 80241B00 306200FF */ andi $v0, $v1, 0xff -.L80241B04: -/* DF8504 80241B04 AFA20030 */ sw $v0, 0x30($sp) -/* DF8508 80241B08 8E240000 */ lw $a0, ($s1) -/* DF850C 80241B0C 0C04BA68 */ jal draw_ci_image_with_clipping -/* DF8510 80241B10 24070002 */ addiu $a3, $zero, 2 -/* DF8514 80241B14 8FBF0050 */ lw $ra, 0x50($sp) -/* DF8518 80241B18 8FB1004C */ lw $s1, 0x4c($sp) -/* DF851C 80241B1C 8FB00048 */ lw $s0, 0x48($sp) -/* DF8520 80241B20 D7B80068 */ ldc1 $f24, 0x68($sp) -/* DF8524 80241B24 D7B60060 */ ldc1 $f22, 0x60($sp) -/* DF8528 80241B28 D7B40058 */ ldc1 $f20, 0x58($sp) -/* DF852C 80241B2C 03E00008 */ jr $ra -/* DF8530 80241B30 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241B34_DF8534.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241B34_DF8534.s deleted file mode 100644 index 1e82dc4093..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80241B34_DF8534.s +++ /dev/null @@ -1,494 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_8024E8C0 -.word .L80241C14_DF8614, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C08_DF8608, .L80241C08_DF8608, .L80241C08_DF8608, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C44_DF8644, .L80241C14_DF8614, .L80241C44_DF8644, .L80241C1C_DF861C - -dlabel jtbl_8024E900 -.word .L80241DE4_DF87E4, .L80241E18_DF8818, .L80241E18_DF8818, .L80241DD8_DF87D8, .L80241DD8_DF87D8, .L80241DD8_DF87D8, .L80241E18_DF8818, .L80241E18_DF8818, .L80241E18_DF8818, .L80241E18_DF8818, .L80241E18_DF8818, .L80241E18_DF8818, .L80241E18_DF8818, .L80241DE4_DF87E4, .L80241E18_DF8818, .L80241DF0_DF87F0 - -dlabel jtbl_8024E940 -.word .L80241F28_DF8928, .L80241ED8_DF88D8, .L80241EEC_DF88EC, .L80241F00_DF8900, .L80241F14_DF8914, .L80241F28_DF8928 - -.section .text - -glabel func_80241B34_DF8534 -/* DF8534 80241B34 27BDFF80 */ addiu $sp, $sp, -0x80 -/* DF8538 80241B38 AFB30064 */ sw $s3, 0x64($sp) -/* DF853C 80241B3C 0080982D */ daddu $s3, $a0, $zero -/* DF8540 80241B40 AFBE0078 */ sw $fp, 0x78($sp) -/* DF8544 80241B44 0000F02D */ daddu $fp, $zero, $zero -/* DF8548 80241B48 AFBF007C */ sw $ra, 0x7c($sp) -/* DF854C 80241B4C AFB70074 */ sw $s7, 0x74($sp) -/* DF8550 80241B50 AFB60070 */ sw $s6, 0x70($sp) -/* DF8554 80241B54 AFB5006C */ sw $s5, 0x6c($sp) -/* DF8558 80241B58 AFB40068 */ sw $s4, 0x68($sp) -/* DF855C 80241B5C AFB20060 */ sw $s2, 0x60($sp) -/* DF8560 80241B60 AFB1005C */ sw $s1, 0x5c($sp) -/* DF8564 80241B64 AFB00058 */ sw $s0, 0x58($sp) -/* DF8568 80241B68 96630070 */ lhu $v1, 0x70($s3) -/* DF856C 80241B6C 30620002 */ andi $v0, $v1, 2 -/* DF8570 80241B70 10400005 */ beqz $v0, .L80241B88 -/* DF8574 80241B74 27B00020 */ addiu $s0, $sp, 0x20 -/* DF8578 80241B78 3062FFFD */ andi $v0, $v1, 0xfffd -/* DF857C 80241B7C A6620070 */ sh $v0, 0x70($s3) -/* DF8580 80241B80 AE600008 */ sw $zero, 8($s3) -/* DF8584 80241B84 AE60000C */ sw $zero, 0xc($s3) -.L80241B88: -/* DF8588 80241B88 27A50040 */ addiu $a1, $sp, 0x40 -/* DF858C 80241B8C 27A60044 */ addiu $a2, $sp, 0x44 -/* DF8590 80241B90 27A70048 */ addiu $a3, $sp, 0x48 -/* DF8594 80241B94 0000882D */ daddu $s1, $zero, $zero -/* DF8598 80241B98 AFA00010 */ sw $zero, 0x10($sp) -/* DF859C 80241B9C AFA00014 */ sw $zero, 0x14($sp) -/* DF85A0 80241BA0 AFA00018 */ sw $zero, 0x18($sp) -/* DF85A4 80241BA4 AFA0001C */ sw $zero, 0x1c($sp) -/* DF85A8 80241BA8 8E640000 */ lw $a0, ($s3) -/* DF85AC 80241BAC 0C0497DA */ jal get_msg_properties -/* DF85B0 80241BB0 24170008 */ addiu $s7, $zero, 8 -/* DF85B4 80241BB4 24020001 */ addiu $v0, $zero, 1 -/* DF85B8 80241BB8 AFA00024 */ sw $zero, 0x24($sp) -/* DF85BC 80241BBC AFA00028 */ sw $zero, 0x28($sp) -/* DF85C0 80241BC0 AFA20044 */ sw $v0, 0x44($sp) -.L80241BC4: -/* DF85C4 80241BC4 8E620000 */ lw $v0, ($s3) -/* DF85C8 80241BC8 00511821 */ addu $v1, $v0, $s1 -/* DF85CC 80241BCC 26310001 */ addiu $s1, $s1, 1 -/* DF85D0 80241BD0 00511021 */ addu $v0, $v0, $s1 -/* DF85D4 80241BD4 90740000 */ lbu $s4, ($v1) -/* DF85D8 80241BD8 90550000 */ lbu $s5, ($v0) -/* DF85DC 80241BDC 2684FF10 */ addiu $a0, $s4, -0xf0 -/* DF85E0 80241BE0 2C830010 */ sltiu $v1, $a0, 0x10 -/* DF85E4 80241BE4 10600017 */ beqz $v1, .L80241C44_DF8644 -/* DF85E8 80241BE8 0000B02D */ daddu $s6, $zero, $zero -/* DF85EC 80241BEC 00041080 */ sll $v0, $a0, 2 -/* DF85F0 80241BF0 3C098025 */ lui $t1, %hi(jtbl_8024E8C0) -/* DF85F4 80241BF4 2529E8C0 */ addiu $t1, $t1, %lo(jtbl_8024E8C0) -/* DF85F8 80241BF8 00491021 */ addu $v0, $v0, $t1 -/* DF85FC 80241BFC 8C420000 */ lw $v0, ($v0) -/* DF8600 80241C00 00400008 */ jr $v0 -/* DF8604 80241C04 00000000 */ nop -.L80241C08_DF8608: -/* DF8608 80241C08 2682FF0D */ addiu $v0, $s4, -0xf3 -/* DF860C 80241C0C 08090743 */ j .L80241D0C -/* DF8610 80241C10 AE020008 */ sw $v0, 8($s0) -.L80241C14_DF8614: -/* DF8614 80241C14 08090743 */ j .L80241D0C -/* DF8618 80241C18 24160001 */ addiu $s6, $zero, 1 -.L80241C1C_DF861C: -/* DF861C 80241C1C 8E630000 */ lw $v1, ($s3) -/* DF8620 80241C20 00711021 */ addu $v0, $v1, $s1 -/* DF8624 80241C24 90420000 */ lbu $v0, ($v0) -/* DF8628 80241C28 14400038 */ bnez $v0, .L80241D0C -/* DF862C 80241C2C 26310001 */ addiu $s1, $s1, 1 -/* DF8630 80241C30 00711021 */ addu $v0, $v1, $s1 -/* DF8634 80241C34 90420000 */ lbu $v0, ($v0) -/* DF8638 80241C38 26310001 */ addiu $s1, $s1, 1 -/* DF863C 80241C3C 08090743 */ j .L80241D0C -/* DF8640 80241C40 AE020004 */ sw $v0, 4($s0) -.L80241C44_DF8644: -/* DF8644 80241C44 24020001 */ addiu $v0, $zero, 1 -/* DF8648 80241C48 329200FF */ andi $s2, $s4, 0xff -/* DF864C 80241C4C AFA00010 */ sw $zero, 0x10($sp) -/* DF8650 80241C50 AFA20014 */ sw $v0, 0x14($sp) -/* DF8654 80241C54 8E050004 */ lw $a1, 4($s0) -/* DF8658 80241C58 8E060008 */ lw $a2, 8($s0) -/* DF865C 80241C5C 3C073F80 */ lui $a3, 0x3f80 -/* DF8660 80241C60 0C049721 */ jal msg_get_print_char_width -/* DF8664 80241C64 0240202D */ daddu $a0, $s2, $zero -/* DF8668 80241C68 8FA30044 */ lw $v1, 0x44($sp) -/* DF866C 80241C6C 8E040004 */ lw $a0, 4($s0) -/* DF8670 80241C70 2463FFFF */ addiu $v1, $v1, -1 -/* DF8674 80241C74 00621821 */ addu $v1, $v1, $v0 -/* DF8678 80241C78 2482FFFD */ addiu $v0, $a0, -3 -/* DF867C 80241C7C 2C420002 */ sltiu $v0, $v0, 2 -/* DF8680 80241C80 10400022 */ beqz $v0, .L80241D0C -/* DF8684 80241C84 AFA30044 */ sw $v1, 0x44($sp) -/* DF8688 80241C88 3C058024 */ lui $a1, %hi(D_80242CD8_DF96D8) -/* DF868C 80241C8C 24A52CD8 */ addiu $a1, $a1, %lo(D_80242CD8_DF96D8) -/* DF8690 80241C90 24090004 */ addiu $t1, $zero, 4 -/* DF8694 80241C94 14890003 */ bne $a0, $t1, .L80241CA4 -/* DF8698 80241C98 00000000 */ nop -/* DF869C 80241C9C 3C058024 */ lui $a1, %hi(D_80242C70_DF9670) -/* DF86A0 80241CA0 24A52C70 */ addiu $a1, $a1, %lo(D_80242C70_DF9670) -.L80241CA4: -/* DF86A4 80241CA4 14890007 */ bne $a0, $t1, .L80241CC4 -/* DF86A8 80241CA8 0000302D */ daddu $a2, $zero, $zero -/* DF86AC 80241CAC 12570004 */ beq $s2, $s7, .L80241CC0 -/* DF86B0 80241CB0 24620001 */ addiu $v0, $v1, 1 -/* DF86B4 80241CB4 16B70004 */ bne $s5, $s7, .L80241CC8 -/* DF86B8 80241CB8 328800FF */ andi $t0, $s4, 0xff -/* DF86BC 80241CBC 24620001 */ addiu $v0, $v1, 1 -.L80241CC0: -/* DF86C0 80241CC0 AFA20044 */ sw $v0, 0x44($sp) -.L80241CC4: -/* DF86C4 80241CC4 328800FF */ andi $t0, $s4, 0xff -.L80241CC8: -/* DF86C8 80241CC8 32A7FFFF */ andi $a3, $s5, 0xffff -/* DF86CC 80241CCC 00061080 */ sll $v0, $a2, 2 -/* DF86D0 80241CD0 00452021 */ addu $a0, $v0, $a1 -.L80241CD4: -/* DF86D4 80241CD4 90820000 */ lbu $v0, ($a0) -/* DF86D8 80241CD8 55020009 */ bnel $t0, $v0, .L80241D00 -/* DF86DC 80241CDC 24840004 */ addiu $a0, $a0, 4 -/* DF86E0 80241CE0 90820001 */ lbu $v0, 1($a0) -/* DF86E4 80241CE4 54E20006 */ bnel $a3, $v0, .L80241D00 -/* DF86E8 80241CE8 24840004 */ addiu $a0, $a0, 4 -/* DF86EC 80241CEC 84830002 */ lh $v1, 2($a0) -/* DF86F0 80241CF0 8FA20044 */ lw $v0, 0x44($sp) -/* DF86F4 80241CF4 00431021 */ addu $v0, $v0, $v1 -/* DF86F8 80241CF8 AFA20044 */ sw $v0, 0x44($sp) -/* DF86FC 80241CFC 24840004 */ addiu $a0, $a0, 4 -.L80241D00: -/* DF8700 80241D00 84820002 */ lh $v0, 2($a0) -/* DF8704 80241D04 1440FFF3 */ bnez $v0, .L80241CD4 -/* DF8708 80241D08 00000000 */ nop -.L80241D0C: -/* DF870C 80241D0C 32C2FFFF */ andi $v0, $s6, 0xffff -/* DF8710 80241D10 1040FFAC */ beqz $v0, .L80241BC4 -/* DF8714 80241D14 00000000 */ nop -/* DF8718 80241D18 96620070 */ lhu $v0, 0x70($s3) -/* DF871C 80241D1C 8FA30044 */ lw $v1, 0x44($sp) -/* DF8720 80241D20 30420001 */ andi $v0, $v0, 1 -/* DF8724 80241D24 10400015 */ beqz $v0, .L80241D7C -/* DF8728 80241D28 AE630014 */ sw $v1, 0x14($s3) -/* DF872C 80241D2C 44831000 */ mtc1 $v1, $f2 -/* DF8730 80241D30 00000000 */ nop -/* DF8734 80241D34 468010A0 */ cvt.s.w $f2, $f2 -/* DF8738 80241D38 3C013FE0 */ lui $at, 0x3fe0 -/* DF873C 80241D3C 44810800 */ mtc1 $at, $f1 -/* DF8740 80241D40 44800000 */ mtc1 $zero, $f0 -/* DF8744 80241D44 460010A1 */ cvt.d.s $f2, $f2 -/* DF8748 80241D48 46201082 */ mul.d $f2, $f2, $f0 -/* DF874C 80241D4C 00000000 */ nop -/* DF8750 80241D50 44800000 */ mtc1 $zero, $f0 -/* DF8754 80241D54 44800800 */ mtc1 $zero, $f1 -/* DF8758 80241D58 00000000 */ nop -/* DF875C 80241D5C 46201080 */ add.d $f2, $f2, $f0 -/* DF8760 80241D60 C6600068 */ lwc1 $f0, 0x68($s3) -/* DF8764 80241D64 46800021 */ cvt.d.w $f0, $f0 -/* DF8768 80241D68 46220001 */ sub.d $f0, $f0, $f2 -/* DF876C 80241D6C 4620010D */ trunc.w.d $f4, $f0 -/* DF8770 80241D70 44152000 */ mfc1 $s5, $f4 -/* DF8774 80241D74 08090761 */ j .L80241D84 -/* DF8778 80241D78 0000B82D */ daddu $s7, $zero, $zero -.L80241D7C: -/* DF877C 80241D7C 8E750068 */ lw $s5, 0x68($s3) -/* DF8780 80241D80 0000B82D */ daddu $s7, $zero, $zero -.L80241D84: -/* DF8784 80241D84 AE000004 */ sw $zero, 4($s0) -/* DF8788 80241D88 AE000008 */ sw $zero, 8($s0) -/* DF878C 80241D8C 8E620010 */ lw $v0, 0x10($s3) -/* DF8790 80241D90 02E0882D */ daddu $s1, $s7, $zero -/* DF8794 80241D94 AE02000C */ sw $v0, 0xc($s0) -.L80241D98: -/* DF8798 80241D98 8E620000 */ lw $v0, ($s3) -/* DF879C 80241D9C A7A00050 */ sh $zero, 0x50($sp) -/* DF87A0 80241DA0 00511821 */ addu $v1, $v0, $s1 -/* DF87A4 80241DA4 26310001 */ addiu $s1, $s1, 1 -/* DF87A8 80241DA8 00511021 */ addu $v0, $v0, $s1 -/* DF87AC 80241DAC 90740000 */ lbu $s4, ($v1) -/* DF87B0 80241DB0 90560000 */ lbu $s6, ($v0) -/* DF87B4 80241DB4 2684FF10 */ addiu $a0, $s4, -0xf0 -/* DF87B8 80241DB8 2C830010 */ sltiu $v1, $a0, 0x10 -/* DF87BC 80241DBC 10600016 */ beqz $v1, .L80241E18_DF8818 -/* DF87C0 80241DC0 00041080 */ sll $v0, $a0, 2 -/* DF87C4 80241DC4 3C018025 */ lui $at, %hi(jtbl_8024E900) -/* DF87C8 80241DC8 00220821 */ addu $at, $at, $v0 -/* DF87CC 80241DCC 8C22E900 */ lw $v0, %lo(jtbl_8024E900)($at) -/* DF87D0 80241DD0 00400008 */ jr $v0 -/* DF87D4 80241DD4 00000000 */ nop -.L80241DD8_DF87D8: -/* DF87D8 80241DD8 2682FF0D */ addiu $v0, $s4, -0xf3 -/* DF87DC 80241DDC 0809083B */ j .L802420EC -/* DF87E0 80241DE0 AE020008 */ sw $v0, 8($s0) -.L80241DE4_DF87E4: -/* DF87E4 80241DE4 24090001 */ addiu $t1, $zero, 1 -/* DF87E8 80241DE8 0809083B */ j .L802420EC -/* DF87EC 80241DEC A7A90050 */ sh $t1, 0x50($sp) -.L80241DF0_DF87F0: -/* DF87F0 80241DF0 8E630000 */ lw $v1, ($s3) -/* DF87F4 80241DF4 00711021 */ addu $v0, $v1, $s1 -/* DF87F8 80241DF8 90420000 */ lbu $v0, ($v0) -/* DF87FC 80241DFC 144000BB */ bnez $v0, .L802420EC -/* DF8800 80241E00 26310001 */ addiu $s1, $s1, 1 -/* DF8804 80241E04 00711021 */ addu $v0, $v1, $s1 -/* DF8808 80241E08 90420000 */ lbu $v0, ($v0) -/* DF880C 80241E0C 26310001 */ addiu $s1, $s1, 1 -/* DF8810 80241E10 0809083B */ j .L802420EC -/* DF8814 80241E14 AE020004 */ sw $v0, 4($s0) -.L80241E18_DF8818: -/* DF8818 80241E18 328300FF */ andi $v1, $s4, 0xff -/* DF881C 80241E1C 2C6200F0 */ sltiu $v0, $v1, 0xf0 -/* DF8820 80241E20 10400083 */ beqz $v0, .L80242030 -/* DF8824 80241E24 24090001 */ addiu $t1, $zero, 1 -/* DF8828 80241E28 AE030000 */ sw $v1, ($s0) -/* DF882C 80241E2C AE150010 */ sw $s5, 0x10($s0) -/* DF8830 80241E30 8E62006C */ lw $v0, 0x6c($s3) -/* DF8834 80241E34 AE020014 */ sw $v0, 0x14($s0) -/* DF8838 80241E38 8E63000C */ lw $v1, 0xc($s3) -/* DF883C 80241E3C 1069003F */ beq $v1, $t1, .L80241F3C -/* DF8840 80241E40 28620002 */ slti $v0, $v1, 2 -/* DF8844 80241E44 50400005 */ beql $v0, $zero, .L80241E5C -/* DF8848 80241E48 24090002 */ addiu $t1, $zero, 2 -/* DF884C 80241E4C 10600007 */ beqz $v1, .L80241E6C -/* DF8850 80241E50 00000000 */ nop -/* DF8854 80241E54 0809080D */ j .L80242034 -/* DF8858 80241E58 26F70001 */ addiu $s7, $s7, 1 -.L80241E5C: -/* DF885C 80241E5C 10690043 */ beq $v1, $t1, .L80241F6C -/* DF8860 80241E60 00000000 */ nop -/* DF8864 80241E64 0809080C */ j .L80242030 -/* DF8868 80241E68 26F70001 */ addiu $s7, $s7, 1 -.L80241E6C: -/* DF886C 80241E6C 8E620020 */ lw $v0, 0x20($s3) -/* DF8870 80241E70 00570018 */ mult $v0, $s7 -/* DF8874 80241E74 8E620008 */ lw $v0, 8($s3) -/* DF8878 80241E78 00004812 */ mflo $t1 -/* DF887C 80241E7C 00491023 */ subu $v0, $v0, $t1 -/* DF8880 80241E80 0440006A */ bltz $v0, .L8024202C -/* DF8884 80241E84 AE020018 */ sw $v0, 0x18($s0) -/* DF8888 80241E88 8E63001C */ lw $v1, 0x1c($s3) -/* DF888C 80241E8C 0062102A */ slt $v0, $v1, $v0 -/* DF8890 80241E90 54400001 */ bnel $v0, $zero, .L80241E98 -/* DF8894 80241E94 AE030018 */ sw $v1, 0x18($s0) -.L80241E98: -/* DF8898 80241E98 240900FD */ addiu $t1, $zero, 0xfd -/* DF889C 80241E9C 16C90005 */ bne $s6, $t1, .L80241EB4 -/* DF88A0 80241EA0 00000000 */ nop -/* DF88A4 80241EA4 8E030018 */ lw $v1, 0x18($s0) -/* DF88A8 80241EA8 8E62001C */ lw $v0, 0x1c($s3) -/* DF88AC 80241EAC 50620001 */ beql $v1, $v0, .L80241EB4 -/* DF88B0 80241EB0 241E0001 */ addiu $fp, $zero, 1 -.L80241EB4: -/* DF88B4 80241EB4 8E630018 */ lw $v1, 0x18($s3) -/* DF88B8 80241EB8 2C620006 */ sltiu $v0, $v1, 6 -/* DF88BC 80241EBC 1040005B */ beqz $v0, .L8024202C -/* DF88C0 80241EC0 00031080 */ sll $v0, $v1, 2 -/* DF88C4 80241EC4 3C018025 */ lui $at, %hi(jtbl_8024E940) -/* DF88C8 80241EC8 00220821 */ addu $at, $at, $v0 -/* DF88CC 80241ECC 8C22E940 */ lw $v0, %lo(jtbl_8024E940)($at) -/* DF88D0 80241ED0 00400008 */ jr $v0 -/* DF88D4 80241ED4 00000000 */ nop -.L80241ED8_DF88D8: -/* DF88D8 80241ED8 0260202D */ daddu $a0, $s3, $zero -/* DF88DC 80241EDC 0C09009C */ jal func_80240270_DF6C70 -/* DF88E0 80241EE0 0200282D */ daddu $a1, $s0, $zero -/* DF88E4 80241EE4 0809080C */ j .L80242030 -/* DF88E8 80241EE8 26F70001 */ addiu $s7, $s7, 1 -.L80241EEC_DF88EC: -/* DF88EC 80241EEC 0260202D */ daddu $a0, $s3, $zero -/* DF88F0 80241EF0 0C090150 */ jal func_80240540_DF6F40 -/* DF88F4 80241EF4 0200282D */ daddu $a1, $s0, $zero -/* DF88F8 80241EF8 0809080C */ j .L80242030 -/* DF88FC 80241EFC 26F70001 */ addiu $s7, $s7, 1 -.L80241F00_DF8900: -/* DF8900 80241F00 0260202D */ daddu $a0, $s3, $zero -/* DF8904 80241F04 0C090207 */ jal func_8024081C_DF721C -/* DF8908 80241F08 0200282D */ daddu $a1, $s0, $zero -/* DF890C 80241F0C 0809080C */ j .L80242030 -/* DF8910 80241F10 26F70001 */ addiu $s7, $s7, 1 -.L80241F14_DF8914: -/* DF8914 80241F14 0260202D */ daddu $a0, $s3, $zero -/* DF8918 80241F18 0C0902BA */ jal func_80240AE8_DF74E8 -/* DF891C 80241F1C 0200282D */ daddu $a1, $s0, $zero -/* DF8920 80241F20 0809080C */ j .L80242030 -/* DF8924 80241F24 26F70001 */ addiu $s7, $s7, 1 -.L80241F28_DF8928: -/* DF8928 80241F28 0260202D */ daddu $a0, $s3, $zero -/* DF892C 80241F2C 0C0903AC */ jal func_80240EB0_DF78B0 -/* DF8930 80241F30 0200282D */ daddu $a1, $s0, $zero -/* DF8934 80241F34 0809080C */ j .L80242030 -/* DF8938 80241F38 26F70001 */ addiu $s7, $s7, 1 -.L80241F3C: -/* DF893C 80241F3C 240900FD */ addiu $t1, $zero, 0xfd -/* DF8940 80241F40 16C90006 */ bne $s6, $t1, .L80241F5C -/* DF8944 80241F44 0260202D */ daddu $a0, $s3, $zero -/* DF8948 80241F48 8E630008 */ lw $v1, 8($s3) -/* DF894C 80241F4C 8E620038 */ lw $v0, 0x38($s3) -/* DF8950 80241F50 50620002 */ beql $v1, $v0, .L80241F5C -/* DF8954 80241F54 241E0001 */ addiu $fp, $zero, 1 -/* DF8958 80241F58 0260202D */ daddu $a0, $s3, $zero -.L80241F5C: -/* DF895C 80241F5C 0C090473 */ jal func_802411CC_DF7BCC -/* DF8960 80241F60 0200282D */ daddu $a1, $s0, $zero -/* DF8964 80241F64 0809080C */ j .L80242030 -/* DF8968 80241F68 26F70001 */ addiu $s7, $s7, 1 -.L80241F6C: -/* DF896C 80241F6C 8E620054 */ lw $v0, 0x54($s3) -/* DF8970 80241F70 00570018 */ mult $v0, $s7 -/* DF8974 80241F74 8E620008 */ lw $v0, 8($s3) -/* DF8978 80241F78 00004812 */ mflo $t1 -/* DF897C 80241F7C 00491023 */ subu $v0, $v0, $t1 -/* DF8980 80241F80 04410002 */ bgez $v0, .L80241F8C -/* DF8984 80241F84 AE020018 */ sw $v0, 0x18($s0) -/* DF8988 80241F88 AE000018 */ sw $zero, 0x18($s0) -.L80241F8C: -/* DF898C 80241F8C 8E020018 */ lw $v0, 0x18($s0) -/* DF8990 80241F90 8E630050 */ lw $v1, 0x50($s3) -/* DF8994 80241F94 0062102A */ slt $v0, $v1, $v0 -/* DF8998 80241F98 54400001 */ bnel $v0, $zero, .L80241FA0 -/* DF899C 80241F9C AE030018 */ sw $v1, 0x18($s0) -.L80241FA0: -/* DF89A0 80241FA0 240900FD */ addiu $t1, $zero, 0xfd -/* DF89A4 80241FA4 16C90005 */ bne $s6, $t1, .L80241FBC -/* DF89A8 80241FA8 00000000 */ nop -/* DF89AC 80241FAC 8E030018 */ lw $v1, 0x18($s0) -/* DF89B0 80241FB0 8E620050 */ lw $v0, 0x50($s3) -/* DF89B4 80241FB4 50620001 */ beql $v1, $v0, .L80241FBC -/* DF89B8 80241FB8 241E0001 */ addiu $fp, $zero, 1 -.L80241FBC: -/* DF89BC 80241FBC 8E63004C */ lw $v1, 0x4c($s3) -/* DF89C0 80241FC0 24090001 */ addiu $t1, $zero, 1 -/* DF89C4 80241FC4 1069000D */ beq $v1, $t1, .L80241FFC -/* DF89C8 80241FC8 28620002 */ slti $v0, $v1, 2 -/* DF89CC 80241FCC 50400005 */ beql $v0, $zero, .L80241FE4 -/* DF89D0 80241FD0 24090002 */ addiu $t1, $zero, 2 -/* DF89D4 80241FD4 10600013 */ beqz $v1, .L80242024 -/* DF89D8 80241FD8 0260202D */ daddu $a0, $s3, $zero -/* DF89DC 80241FDC 0809080D */ j .L80242034 -/* DF89E0 80241FE0 26F70001 */ addiu $s7, $s7, 1 -.L80241FE4: -/* DF89E4 80241FE4 1069000A */ beq $v1, $t1, .L80242010 -/* DF89E8 80241FE8 24020003 */ addiu $v0, $zero, 3 -/* DF89EC 80241FEC 1062000D */ beq $v1, $v0, .L80242024 -/* DF89F0 80241FF0 0260202D */ daddu $a0, $s3, $zero -/* DF89F4 80241FF4 0809080C */ j .L80242030 -/* DF89F8 80241FF8 26F70001 */ addiu $s7, $s7, 1 -.L80241FFC: -/* DF89FC 80241FFC 0260202D */ daddu $a0, $s3, $zero -/* DF8A00 80242000 0C090533 */ jal func_802414CC_DF7ECC -/* DF8A04 80242004 0200282D */ daddu $a1, $s0, $zero -/* DF8A08 80242008 0809080C */ j .L80242030 -/* DF8A0C 8024200C 26F70001 */ addiu $s7, $s7, 1 -.L80242010: -/* DF8A10 80242010 0260202D */ daddu $a0, $s3, $zero -/* DF8A14 80242014 0C0905DA */ jal func_80241768_DF8168 -/* DF8A18 80242018 0200282D */ daddu $a1, $s0, $zero -/* DF8A1C 8024201C 0809080C */ j .L80242030 -/* DF8A20 80242020 26F70001 */ addiu $s7, $s7, 1 -.L80242024: -/* DF8A24 80242024 0C09067E */ jal func_802419F8_DF83F8 -/* DF8A28 80242028 0200282D */ daddu $a1, $s0, $zero -.L8024202C: -/* DF8A2C 8024202C 26F70001 */ addiu $s7, $s7, 1 -.L80242030: -/* DF8A30 80242030 24090001 */ addiu $t1, $zero, 1 -.L80242034: -/* DF8A34 80242034 329200FF */ andi $s2, $s4, 0xff -/* DF8A38 80242038 AFA00010 */ sw $zero, 0x10($sp) -/* DF8A3C 8024203C AFA90014 */ sw $t1, 0x14($sp) -/* DF8A40 80242040 8E050004 */ lw $a1, 4($s0) -/* DF8A44 80242044 8E060008 */ lw $a2, 8($s0) -/* DF8A48 80242048 3C073F80 */ lui $a3, 0x3f80 -/* DF8A4C 8024204C 0C049721 */ jal msg_get_print_char_width -/* DF8A50 80242050 0240202D */ daddu $a0, $s2, $zero -/* DF8A54 80242054 26A3FFFF */ addiu $v1, $s5, -1 -/* DF8A58 80242058 8E040004 */ lw $a0, 4($s0) -/* DF8A5C 8024205C 0062A821 */ addu $s5, $v1, $v0 -/* DF8A60 80242060 2482FFFD */ addiu $v0, $a0, -3 -/* DF8A64 80242064 2C420002 */ sltiu $v0, $v0, 2 -/* DF8A68 80242068 10400020 */ beqz $v0, .L802420EC -/* DF8A6C 8024206C 00000000 */ nop -/* DF8A70 80242070 3C058024 */ lui $a1, %hi(D_80242CD8_DF96D8) -/* DF8A74 80242074 24A52CD8 */ addiu $a1, $a1, %lo(D_80242CD8_DF96D8) -/* DF8A78 80242078 24090004 */ addiu $t1, $zero, 4 -/* DF8A7C 8024207C 14890003 */ bne $a0, $t1, .L8024208C -/* DF8A80 80242080 00000000 */ nop -/* DF8A84 80242084 3C058024 */ lui $a1, %hi(D_80242C70_DF9670) -/* DF8A88 80242088 24A52C70 */ addiu $a1, $a1, %lo(D_80242C70_DF9670) -.L8024208C: -/* DF8A8C 8024208C 14890007 */ bne $a0, $t1, .L802420AC -/* DF8A90 80242090 0000302D */ daddu $a2, $zero, $zero -/* DF8A94 80242094 24020008 */ addiu $v0, $zero, 8 -/* DF8A98 80242098 52420004 */ beql $s2, $v0, .L802420AC -/* DF8A9C 8024209C 26B50001 */ addiu $s5, $s5, 1 -/* DF8AA0 802420A0 16C20003 */ bne $s6, $v0, .L802420B0 -/* DF8AA4 802420A4 328300FF */ andi $v1, $s4, 0xff -/* DF8AA8 802420A8 26B50001 */ addiu $s5, $s5, 1 -.L802420AC: -/* DF8AAC 802420AC 328300FF */ andi $v1, $s4, 0xff -.L802420B0: -/* DF8AB0 802420B0 32C7FFFF */ andi $a3, $s6, 0xffff -/* DF8AB4 802420B4 00061080 */ sll $v0, $a2, 2 -/* DF8AB8 802420B8 00452021 */ addu $a0, $v0, $a1 -.L802420BC: -/* DF8ABC 802420BC 90820000 */ lbu $v0, ($a0) -/* DF8AC0 802420C0 54620007 */ bnel $v1, $v0, .L802420E0 -/* DF8AC4 802420C4 24840004 */ addiu $a0, $a0, 4 -/* DF8AC8 802420C8 90820001 */ lbu $v0, 1($a0) -/* DF8ACC 802420CC 54E20004 */ bnel $a3, $v0, .L802420E0 -/* DF8AD0 802420D0 24840004 */ addiu $a0, $a0, 4 -/* DF8AD4 802420D4 84820002 */ lh $v0, 2($a0) -/* DF8AD8 802420D8 02A2A821 */ addu $s5, $s5, $v0 -/* DF8ADC 802420DC 24840004 */ addiu $a0, $a0, 4 -.L802420E0: -/* DF8AE0 802420E0 84820002 */ lh $v0, 2($a0) -/* DF8AE4 802420E4 1440FFF5 */ bnez $v0, .L802420BC -/* DF8AE8 802420E8 00000000 */ nop -.L802420EC: -/* DF8AEC 802420EC 97A20050 */ lhu $v0, 0x50($sp) -/* DF8AF0 802420F0 1040FF29 */ beqz $v0, .L80241D98 -/* DF8AF4 802420F4 00000000 */ nop -/* DF8AF8 802420F8 8E62000C */ lw $v0, 0xc($s3) -/* DF8AFC 802420FC 14400015 */ bnez $v0, .L80242154 -/* DF8B00 80242100 00000000 */ nop -/* DF8B04 80242104 13C00013 */ beqz $fp, .L80242154 -/* DF8B08 80242108 0000282D */ daddu $a1, $zero, $zero -/* DF8B0C 8024210C 00A0302D */ daddu $a2, $a1, $zero -/* DF8B10 80242110 AFA0004C */ sw $zero, 0x4c($sp) -/* DF8B14 80242114 AFA00010 */ sw $zero, 0x10($sp) -/* DF8B18 80242118 AFA00014 */ sw $zero, 0x14($sp) -/* DF8B1C 8024211C AFA00018 */ sw $zero, 0x18($sp) -/* DF8B20 80242120 AFA0001C */ sw $zero, 0x1c($sp) -/* DF8B24 80242124 8E640000 */ lw $a0, ($s3) -/* DF8B28 80242128 0C0497DA */ jal get_msg_properties -/* DF8B2C 8024212C 27A7004C */ addiu $a3, $sp, 0x4c -/* DF8B30 80242130 8E64000C */ lw $a0, 0xc($s3) -/* DF8B34 80242134 8E630038 */ lw $v1, 0x38($s3) -/* DF8B38 80242138 AE600008 */ sw $zero, 8($s3) -/* DF8B3C 8024213C 24820001 */ addiu $v0, $a0, 1 -/* DF8B40 80242140 1C600016 */ bgtz $v1, .L8024219C -/* DF8B44 80242144 AE62000C */ sw $v0, 0xc($s3) -/* DF8B48 80242148 24820002 */ addiu $v0, $a0, 2 -/* DF8B4C 8024214C 08090867 */ j .L8024219C -/* DF8B50 80242150 AE62000C */ sw $v0, 0xc($s3) -.L80242154: -/* DF8B54 80242154 8E63000C */ lw $v1, 0xc($s3) -/* DF8B58 80242158 24020001 */ addiu $v0, $zero, 1 -/* DF8B5C 8024215C 14620008 */ bne $v1, $v0, .L80242180 -/* DF8B60 80242160 24020002 */ addiu $v0, $zero, 2 -/* DF8B64 80242164 13C00005 */ beqz $fp, .L8024217C -/* DF8B68 80242168 0060102D */ daddu $v0, $v1, $zero -/* DF8B6C 8024216C 24420001 */ addiu $v0, $v0, 1 -/* DF8B70 80242170 AE600008 */ sw $zero, 8($s3) -/* DF8B74 80242174 08090867 */ j .L8024219C -/* DF8B78 80242178 AE62000C */ sw $v0, 0xc($s3) -.L8024217C: -/* DF8B7C 8024217C 24020002 */ addiu $v0, $zero, 2 -.L80242180: -/* DF8B80 80242180 14620006 */ bne $v1, $v0, .L8024219C -/* DF8B84 80242184 00000000 */ nop -/* DF8B88 80242188 13C00004 */ beqz $fp, .L8024219C -/* DF8B8C 8024218C 00000000 */ nop -/* DF8B90 80242190 96620070 */ lhu $v0, 0x70($s3) -/* DF8B94 80242194 3042FFFE */ andi $v0, $v0, 0xfffe -/* DF8B98 80242198 A6620070 */ sh $v0, 0x70($s3) -.L8024219C: -/* DF8B9C 8024219C 8E620008 */ lw $v0, 8($s3) -/* DF8BA0 802421A0 24420001 */ addiu $v0, $v0, 1 -/* DF8BA4 802421A4 AE620008 */ sw $v0, 8($s3) -/* DF8BA8 802421A8 8FBF007C */ lw $ra, 0x7c($sp) -/* DF8BAC 802421AC 8FBE0078 */ lw $fp, 0x78($sp) -/* DF8BB0 802421B0 8FB70074 */ lw $s7, 0x74($sp) -/* DF8BB4 802421B4 8FB60070 */ lw $s6, 0x70($sp) -/* DF8BB8 802421B8 8FB5006C */ lw $s5, 0x6c($sp) -/* DF8BBC 802421BC 8FB40068 */ lw $s4, 0x68($sp) -/* DF8BC0 802421C0 8FB30064 */ lw $s3, 0x64($sp) -/* DF8BC4 802421C4 8FB20060 */ lw $s2, 0x60($sp) -/* DF8BC8 802421C8 8FB1005C */ lw $s1, 0x5c($sp) -/* DF8BCC 802421CC 8FB00058 */ lw $s0, 0x58($sp) -/* DF8BD0 802421D0 03E00008 */ jr $ra -/* DF8BD4 802421D4 27BD0080 */ addiu $sp, $sp, 0x80 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802421D8_DF8BD8.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802421D8_DF8BD8.s deleted file mode 100644 index 00d993688d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_802421D8_DF8BD8.s +++ /dev/null @@ -1,102 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802421D8_DF8BD8 -/* DF8BD8 802421D8 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* DF8BDC 802421DC 3C05DC08 */ lui $a1, 0xdc08 -/* DF8BE0 802421E0 34A50008 */ ori $a1, $a1, 8 -/* DF8BE4 802421E4 AFB40030 */ sw $s4, 0x30($sp) -/* DF8BE8 802421E8 0000A02D */ daddu $s4, $zero, $zero -/* DF8BEC 802421EC AFB10024 */ sw $s1, 0x24($sp) -/* DF8BF0 802421F0 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* DF8BF4 802421F4 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* DF8BF8 802421F8 AFB3002C */ sw $s3, 0x2c($sp) -/* DF8BFC 802421FC 24130004 */ addiu $s3, $zero, 4 -/* DF8C00 80242200 3C028025 */ lui $v0, %hi(D_80250EF0) -/* DF8C04 80242204 24420EF0 */ addiu $v0, $v0, %lo(D_80250EF0) -/* DF8C08 80242208 AFBF0038 */ sw $ra, 0x38($sp) -/* DF8C0C 8024220C AFB50034 */ sw $s5, 0x34($sp) -/* DF8C10 80242210 AFB20028 */ sw $s2, 0x28($sp) -/* DF8C14 80242214 AFB00020 */ sw $s0, 0x20($sp) -/* DF8C18 80242218 8E230000 */ lw $v1, ($s1) -/* DF8C1C 8024221C 3C108007 */ lui $s0, %hi(gCurrentDisplayContextIndex) -/* DF8C20 80242220 8E1041F4 */ lw $s0, %lo(gCurrentDisplayContextIndex)($s0) -/* DF8C24 80242224 3C158025 */ lui $s5, %hi(D_8024F7E4) -/* DF8C28 80242228 8EB5F7E4 */ lw $s5, %lo(D_8024F7E4)($s5) -/* DF8C2C 8024222C 44800000 */ mtc1 $zero, $f0 -/* DF8C30 80242230 3C01C2C8 */ lui $at, 0xc2c8 -/* DF8C34 80242234 44811000 */ mtc1 $at, $f2 -/* DF8C38 80242238 3C0142C8 */ lui $at, 0x42c8 -/* DF8C3C 8024223C 44812000 */ mtc1 $at, $f4 -/* DF8C40 80242240 3C013F80 */ lui $at, 0x3f80 -/* DF8C44 80242244 44813000 */ mtc1 $at, $f6 -/* DF8C48 80242248 3C0643A0 */ lui $a2, 0x43a0 -/* DF8C4C 8024224C 3C07C370 */ lui $a3, 0xc370 -/* DF8C50 80242250 0060402D */ daddu $t0, $v1, $zero -/* DF8C54 80242254 24630008 */ addiu $v1, $v1, 8 -/* DF8C58 80242258 00108180 */ sll $s0, $s0, 6 -/* DF8C5C 8024225C 02028021 */ addu $s0, $s0, $v0 -/* DF8C60 80242260 0200202D */ daddu $a0, $s0, $zero -/* DF8C64 80242264 02A0902D */ daddu $s2, $s5, $zero -/* DF8C68 80242268 AE230000 */ sw $v1, ($s1) -/* DF8C6C 8024226C AD050000 */ sw $a1, ($t0) -/* DF8C70 80242270 44050000 */ mfc1 $a1, $f0 -/* DF8C74 80242274 3C028024 */ lui $v0, %hi(D_80242D60_DF9760) -/* DF8C78 80242278 24422D60 */ addiu $v0, $v0, %lo(D_80242D60_DF9760) -/* DF8C7C 8024227C AD020004 */ sw $v0, 4($t0) -/* DF8C80 80242280 E7A20014 */ swc1 $f2, 0x14($sp) -/* DF8C84 80242284 E7A40018 */ swc1 $f4, 0x18($sp) -/* DF8C88 80242288 E7A6001C */ swc1 $f6, 0x1c($sp) -/* DF8C8C 8024228C 0C018E90 */ jal guOrtho -/* DF8C90 80242290 AFA50010 */ sw $a1, 0x10($sp) -/* DF8C94 80242294 3C03DA38 */ lui $v1, 0xda38 -/* DF8C98 80242298 34630007 */ ori $v1, $v1, 7 -/* DF8C9C 8024229C 3C05D9C0 */ lui $a1, 0xd9c0 -/* DF8CA0 802422A0 34A5F9FB */ ori $a1, $a1, 0xf9fb -/* DF8CA4 802422A4 3C07D9FF */ lui $a3, 0xd9ff -/* DF8CA8 802422A8 34E7FFFF */ ori $a3, $a3, 0xffff -/* DF8CAC 802422AC 3C060020 */ lui $a2, 0x20 -/* DF8CB0 802422B0 8E220000 */ lw $v0, ($s1) -/* DF8CB4 802422B4 00D33025 */ or $a2, $a2, $s3 -/* DF8CB8 802422B8 0040202D */ daddu $a0, $v0, $zero -/* DF8CBC 802422BC 24420008 */ addiu $v0, $v0, 8 -/* DF8CC0 802422C0 AE220000 */ sw $v0, ($s1) -/* DF8CC4 802422C4 AC830000 */ sw $v1, ($a0) -/* DF8CC8 802422C8 3C038000 */ lui $v1, 0x8000 -/* DF8CCC 802422CC 02038021 */ addu $s0, $s0, $v1 -/* DF8CD0 802422D0 24430008 */ addiu $v1, $v0, 8 -/* DF8CD4 802422D4 AC900004 */ sw $s0, 4($a0) -/* DF8CD8 802422D8 AE230000 */ sw $v1, ($s1) -/* DF8CDC 802422DC 3C03E700 */ lui $v1, 0xe700 -/* DF8CE0 802422E0 AC430000 */ sw $v1, ($v0) -/* DF8CE4 802422E4 24430010 */ addiu $v1, $v0, 0x10 -/* DF8CE8 802422E8 AC400004 */ sw $zero, 4($v0) -/* DF8CEC 802422EC AE230000 */ sw $v1, ($s1) -/* DF8CF0 802422F0 24430018 */ addiu $v1, $v0, 0x18 -/* DF8CF4 802422F4 AC450008 */ sw $a1, 8($v0) -/* DF8CF8 802422F8 AC40000C */ sw $zero, 0xc($v0) -/* DF8CFC 802422FC AE230000 */ sw $v1, ($s1) -/* DF8D00 80242300 AC470010 */ sw $a3, 0x10($v0) -/* DF8D04 80242304 AC460014 */ sw $a2, 0x14($v0) -.L80242308: -/* DF8D08 80242308 96420074 */ lhu $v0, 0x74($s2) -/* DF8D0C 8024230C 30420001 */ andi $v0, $v0, 1 -/* DF8D10 80242310 50400004 */ beql $v0, $zero, .L80242324 -/* DF8D14 80242314 26730074 */ addiu $s3, $s3, 0x74 -/* DF8D18 80242318 0C0906CD */ jal func_80241B34_DF8534 -/* DF8D1C 8024231C 02B32021 */ addu $a0, $s5, $s3 -/* DF8D20 80242320 26730074 */ addiu $s3, $s3, 0x74 -.L80242324: -/* DF8D24 80242324 26940001 */ addiu $s4, $s4, 1 -/* DF8D28 80242328 2A820020 */ slti $v0, $s4, 0x20 -/* DF8D2C 8024232C 1440FFF6 */ bnez $v0, .L80242308 -/* DF8D30 80242330 26520074 */ addiu $s2, $s2, 0x74 -/* DF8D34 80242334 8FBF0038 */ lw $ra, 0x38($sp) -/* DF8D38 80242338 8FB50034 */ lw $s5, 0x34($sp) -/* DF8D3C 8024233C 8FB40030 */ lw $s4, 0x30($sp) -/* DF8D40 80242340 8FB3002C */ lw $s3, 0x2c($sp) -/* DF8D44 80242344 8FB20028 */ lw $s2, 0x28($sp) -/* DF8D48 80242348 8FB10024 */ lw $s1, 0x24($sp) -/* DF8D4C 8024234C 8FB00020 */ lw $s0, 0x20($sp) -/* DF8D50 80242350 03E00008 */ jr $ra -/* DF8D54 80242354 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242358_DF8D58.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242358_DF8D58.s deleted file mode 100644 index 0bd8482b2d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242358_DF8D58.s +++ /dev/null @@ -1,116 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242358_DF8D58 -/* DF8D58 80242358 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* DF8D5C 8024235C AFB20030 */ sw $s2, 0x30($sp) -/* DF8D60 80242360 0080902D */ daddu $s2, $a0, $zero -/* DF8D64 80242364 0000182D */ daddu $v1, $zero, $zero -/* DF8D68 80242368 3C068025 */ lui $a2, %hi(D_8024F7E4) -/* DF8D6C 8024236C 8CC6F7E4 */ lw $a2, %lo(D_8024F7E4)($a2) -/* DF8D70 80242370 24040020 */ addiu $a0, $zero, 0x20 -/* DF8D74 80242374 AFBF0038 */ sw $ra, 0x38($sp) -/* DF8D78 80242378 AFB30034 */ sw $s3, 0x34($sp) -/* DF8D7C 8024237C AFB1002C */ sw $s1, 0x2c($sp) -/* DF8D80 80242380 AFB00028 */ sw $s0, 0x28($sp) -/* DF8D84 80242384 00C0282D */ daddu $a1, $a2, $zero -.L80242388: -/* DF8D88 80242388 94A20074 */ lhu $v0, 0x74($a1) -/* DF8D8C 8024238C 30420001 */ andi $v0, $v0, 1 -/* DF8D90 80242390 10400006 */ beqz $v0, .L802423AC -/* DF8D94 80242394 000310C0 */ sll $v0, $v1, 3 -/* DF8D98 80242398 24630001 */ addiu $v1, $v1, 1 -/* DF8D9C 8024239C 10640051 */ beq $v1, $a0, .L802424E4 -/* DF8DA0 802423A0 24A50074 */ addiu $a1, $a1, 0x74 -/* DF8DA4 802423A4 080908E2 */ j .L80242388 -/* DF8DA8 802423A8 00000000 */ nop -.L802423AC: -/* DF8DAC 802423AC 00431023 */ subu $v0, $v0, $v1 -/* DF8DB0 802423B0 00021080 */ sll $v0, $v0, 2 -/* DF8DB4 802423B4 00431021 */ addu $v0, $v0, $v1 -/* DF8DB8 802423B8 00021080 */ sll $v0, $v0, 2 -/* DF8DBC 802423BC 24420004 */ addiu $v0, $v0, 4 -/* DF8DC0 802423C0 8E440000 */ lw $a0, ($s2) -/* DF8DC4 802423C4 10800047 */ beqz $a0, .L802424E4 -/* DF8DC8 802423C8 00C28821 */ addu $s1, $a2, $v0 -/* DF8DCC 802423CC 04820014 */ bltzl $a0, .L80242420 -/* DF8DD0 802423D0 AE240000 */ sw $a0, ($s1) -/* DF8DD4 802423D4 3C138024 */ lui $s3, %hi(D_80242D70_DF9770) -/* DF8DD8 802423D8 26732D70 */ addiu $s3, $s3, %lo(D_80242D70_DF9770) -/* DF8DDC 802423DC 8E650000 */ lw $a1, ($s3) -/* DF8DE0 802423E0 3C108025 */ lui $s0, %hi(D_8024F7F0) -/* DF8DE4 802423E4 2610F7F0 */ addiu $s0, $s0, %lo(D_8024F7F0) -/* DF8DE8 802423E8 00052A00 */ sll $a1, $a1, 8 -/* DF8DEC 802423EC 0C049601 */ jal dma_load_msg -/* DF8DF0 802423F0 00B02821 */ addu $a1, $a1, $s0 -/* DF8DF4 802423F4 8E630000 */ lw $v1, ($s3) -/* DF8DF8 802423F8 00031200 */ sll $v0, $v1, 8 -/* DF8DFC 802423FC 00501021 */ addu $v0, $v0, $s0 -/* DF8E00 80242400 24630001 */ addiu $v1, $v1, 1 -/* DF8E04 80242404 AE220000 */ sw $v0, ($s1) -/* DF8E08 80242408 AE630000 */ sw $v1, ($s3) -/* DF8E0C 8024240C 28630017 */ slti $v1, $v1, 0x17 -/* DF8E10 80242410 50600003 */ beql $v1, $zero, .L80242420 -/* DF8E14 80242414 AE600000 */ sw $zero, ($s3) -/* DF8E18 80242418 08090909 */ j .L80242424 -/* DF8E1C 8024241C 0000282D */ daddu $a1, $zero, $zero -.L80242420: -/* DF8E20 80242420 0000282D */ daddu $a1, $zero, $zero -.L80242424: -/* DF8E24 80242424 27A20024 */ addiu $v0, $sp, 0x24 -/* DF8E28 80242428 00A0302D */ daddu $a2, $a1, $zero -/* DF8E2C 8024242C AFA00010 */ sw $zero, 0x10($sp) -/* DF8E30 80242430 AFA00014 */ sw $zero, 0x14($sp) -/* DF8E34 80242434 AFA20018 */ sw $v0, 0x18($sp) -/* DF8E38 80242438 AFA0001C */ sw $zero, 0x1c($sp) -/* DF8E3C 8024243C 8E240000 */ lw $a0, ($s1) -/* DF8E40 80242440 0C0497DA */ jal get_msg_properties -/* DF8E44 80242444 27A70020 */ addiu $a3, $sp, 0x20 -/* DF8E48 80242448 8E420004 */ lw $v0, 4($s2) -/* DF8E4C 8024244C AE220068 */ sw $v0, 0x68($s1) -/* DF8E50 80242450 8E420008 */ lw $v0, 8($s2) -/* DF8E54 80242454 AE22006C */ sw $v0, 0x6c($s1) -/* DF8E58 80242458 8E42000C */ lw $v0, 0xc($s2) -/* DF8E5C 8024245C AE220010 */ sw $v0, 0x10($s1) -/* DF8E60 80242460 8E420010 */ lw $v0, 0x10($s2) -/* DF8E64 80242464 AE220018 */ sw $v0, 0x18($s1) -/* DF8E68 80242468 8E420014 */ lw $v0, 0x14($s2) -/* DF8E6C 8024246C AE22001C */ sw $v0, 0x1c($s1) -/* DF8E70 80242470 8E42001C */ lw $v0, 0x1c($s2) -/* DF8E74 80242474 AE220034 */ sw $v0, 0x34($s1) -/* DF8E78 80242478 8E420020 */ lw $v0, 0x20($s2) -/* DF8E7C 8024247C AE220038 */ sw $v0, 0x38($s1) -/* DF8E80 80242480 8E440018 */ lw $a0, 0x18($s2) -/* DF8E84 80242484 1080000C */ beqz $a0, .L802424B8 -/* DF8E88 80242488 00000000 */ nop -/* DF8E8C 8024248C 8FA20024 */ lw $v0, 0x24($sp) -/* DF8E90 80242490 8FA30020 */ lw $v1, 0x20($sp) -/* DF8E94 80242494 24420001 */ addiu $v0, $v0, 1 -/* DF8E98 80242498 00621823 */ subu $v1, $v1, $v0 -/* DF8E9C 8024249C 00640018 */ mult $v1, $a0 -/* DF8EA0 802424A0 8E420020 */ lw $v0, 0x20($s2) -/* DF8EA4 802424A4 00004012 */ mflo $t0 -/* DF8EA8 802424A8 00481023 */ subu $v0, $v0, $t0 -/* DF8EAC 802424AC 04410002 */ bgez $v0, .L802424B8 -/* DF8EB0 802424B0 AE220038 */ sw $v0, 0x38($s1) -/* DF8EB4 802424B4 AE200038 */ sw $zero, 0x38($s1) -.L802424B8: -/* DF8EB8 802424B8 8E420024 */ lw $v0, 0x24($s2) -/* DF8EBC 802424BC AE22004C */ sw $v0, 0x4c($s1) -/* DF8EC0 802424C0 8E420028 */ lw $v0, 0x28($s2) -/* DF8EC4 802424C4 AE220050 */ sw $v0, 0x50($s1) -/* DF8EC8 802424C8 8E420018 */ lw $v0, 0x18($s2) -/* DF8ECC 802424CC AE220020 */ sw $v0, 0x20($s1) -/* DF8ED0 802424D0 8E42002C */ lw $v0, 0x2c($s2) -/* DF8ED4 802424D4 AE220054 */ sw $v0, 0x54($s1) -/* DF8ED8 802424D8 96420034 */ lhu $v0, 0x34($s2) -/* DF8EDC 802424DC 34420003 */ ori $v0, $v0, 3 -/* DF8EE0 802424E0 A6220070 */ sh $v0, 0x70($s1) -.L802424E4: -/* DF8EE4 802424E4 8FBF0038 */ lw $ra, 0x38($sp) -/* DF8EE8 802424E8 8FB30034 */ lw $s3, 0x34($sp) -/* DF8EEC 802424EC 8FB20030 */ lw $s2, 0x30($sp) -/* DF8EF0 802424F0 8FB1002C */ lw $s1, 0x2c($sp) -/* DF8EF4 802424F4 8FB00028 */ lw $s0, 0x28($sp) -/* DF8EF8 802424F8 03E00008 */ jr $ra -/* DF8EFC 802424FC 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242500_DF8F00.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242500_DF8F00.s deleted file mode 100644 index 58b353ea96..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242500_DF8F00.s +++ /dev/null @@ -1,27 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242500_DF8F00 -/* DF8F00 80242500 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* DF8F04 80242504 AFB00010 */ sw $s0, 0x10($sp) -/* DF8F08 80242508 3C108025 */ lui $s0, %hi(D_8024E960) -/* DF8F0C 8024250C 2610E960 */ addiu $s0, $s0, %lo(D_8024E960) -/* DF8F10 80242510 3C058024 */ lui $a1, %hi(func_802421D8_DF8BD8) -/* DF8F14 80242514 24A521D8 */ addiu $a1, $a1, %lo(func_802421D8_DF8BD8) -/* DF8F18 80242518 AFBF0014 */ sw $ra, 0x14($sp) -/* DF8F1C 8024251C 3C018025 */ lui $at, %hi(D_8024F7E4) -/* DF8F20 80242520 AC30F7E4 */ sw $s0, %lo(D_8024F7E4)($at) -/* DF8F24 80242524 0C048C8F */ jal create_generic_entity_frontUI -/* DF8F28 80242528 0000202D */ daddu $a0, $zero, $zero -/* DF8F2C 8024252C 2404001F */ addiu $a0, $zero, 0x1f -/* DF8F30 80242530 26030E0C */ addiu $v1, $s0, 0xe0c -/* DF8F34 80242534 AE020000 */ sw $v0, ($s0) -.L80242538: -/* DF8F38 80242538 A4600074 */ sh $zero, 0x74($v1) -/* DF8F3C 8024253C 2484FFFF */ addiu $a0, $a0, -1 -/* DF8F40 80242540 0481FFFD */ bgez $a0, .L80242538 -/* DF8F44 80242544 2463FF8C */ addiu $v1, $v1, -0x74 -/* DF8F48 80242548 8FBF0014 */ lw $ra, 0x14($sp) -/* DF8F4C 8024254C 8FB00010 */ lw $s0, 0x10($sp) -/* DF8F50 80242550 03E00008 */ jr $ra -/* DF8F54 80242554 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242580_DF8F80.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242580_DF8F80.s deleted file mode 100644 index 6a138e4bd6..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242580_DF8F80.s +++ /dev/null @@ -1,76 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242580_DF8F80 -/* DF8F80 80242580 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* DF8F84 80242584 AFB10014 */ sw $s1, 0x14($sp) -/* DF8F88 80242588 0080882D */ daddu $s1, $a0, $zero -/* DF8F8C 8024258C AFBF001C */ sw $ra, 0x1c($sp) -/* DF8F90 80242590 AFB20018 */ sw $s2, 0x18($sp) -/* DF8F94 80242594 AFB00010 */ sw $s0, 0x10($sp) -/* DF8F98 80242598 8E22000C */ lw $v0, 0xc($s1) -/* DF8F9C 8024259C 00A0802D */ daddu $s0, $a1, $zero -/* DF8FA0 802425A0 0C0B1EAF */ jal evt_get_variable -/* DF8FA4 802425A4 8C450000 */ lw $a1, ($v0) -/* DF8FA8 802425A8 12000005 */ beqz $s0, .L802425C0 -/* DF8FAC 802425AC 0040902D */ daddu $s2, $v0, $zero -/* DF8FB0 802425B0 2402FFFF */ addiu $v0, $zero, -1 -/* DF8FB4 802425B4 AE200084 */ sw $zero, 0x84($s1) -/* DF8FB8 802425B8 AE220088 */ sw $v0, 0x88($s1) -/* DF8FBC 802425BC AE20008C */ sw $zero, 0x8c($s1) -.L802425C0: -/* DF8FC0 802425C0 8E230084 */ lw $v1, 0x84($s1) -/* DF8FC4 802425C4 10600005 */ beqz $v1, .L802425DC -/* DF8FC8 802425C8 24020001 */ addiu $v0, $zero, 1 -/* DF8FCC 802425CC 10620020 */ beq $v1, $v0, .L80242650 -/* DF8FD0 802425D0 0000102D */ daddu $v0, $zero, $zero -/* DF8FD4 802425D4 0809099A */ j .L80242668 -/* DF8FD8 802425D8 00000000 */ nop -.L802425DC: -/* DF8FDC 802425DC 2410FFFF */ addiu $s0, $zero, -1 -.L802425E0: -/* DF8FE0 802425E0 8E22008C */ lw $v0, 0x8c($s1) -/* DF8FE4 802425E4 000218C0 */ sll $v1, $v0, 3 -/* DF8FE8 802425E8 00621823 */ subu $v1, $v1, $v0 -/* DF8FEC 802425EC 000318C0 */ sll $v1, $v1, 3 -/* DF8FF0 802425F0 00722021 */ addu $a0, $v1, $s2 -/* DF8FF4 802425F4 8C820000 */ lw $v0, ($a0) -/* DF8FF8 802425F8 10400003 */ beqz $v0, .L80242608 -/* DF8FFC 802425FC 00000000 */ nop -/* DF9000 80242600 0C0908D6 */ jal func_80242358_DF8D58 -/* DF9004 80242604 00000000 */ nop -.L80242608: -/* DF9008 80242608 8E23008C */ lw $v1, 0x8c($s1) -/* DF900C 8024260C 000310C0 */ sll $v0, $v1, 3 -/* DF9010 80242610 00431023 */ subu $v0, $v0, $v1 -/* DF9014 80242614 000210C0 */ sll $v0, $v0, 3 -/* DF9018 80242618 00521021 */ addu $v0, $v0, $s2 -/* DF901C 8024261C 8C420030 */ lw $v0, 0x30($v0) -/* DF9020 80242620 AE220088 */ sw $v0, 0x88($s1) -/* DF9024 80242624 0060102D */ daddu $v0, $v1, $zero -/* DF9028 80242628 8E230088 */ lw $v1, 0x88($s1) -/* DF902C 8024262C 24420001 */ addiu $v0, $v0, 1 -/* DF9030 80242630 1C600005 */ bgtz $v1, .L80242648 -/* DF9034 80242634 AE22008C */ sw $v0, 0x8c($s1) -/* DF9038 80242638 1470FFE9 */ bne $v1, $s0, .L802425E0 -/* DF903C 8024263C 24020002 */ addiu $v0, $zero, 2 -/* DF9040 80242640 0809099A */ j .L80242668 -/* DF9044 80242644 00000000 */ nop -.L80242648: -/* DF9048 80242648 24020001 */ addiu $v0, $zero, 1 -/* DF904C 8024264C AE220084 */ sw $v0, 0x84($s1) -.L80242650: -/* DF9050 80242650 8E220088 */ lw $v0, 0x88($s1) -/* DF9054 80242654 2442FFFF */ addiu $v0, $v0, -1 -/* DF9058 80242658 1C400002 */ bgtz $v0, .L80242664 -/* DF905C 8024265C AE220088 */ sw $v0, 0x88($s1) -/* DF9060 80242660 AE200084 */ sw $zero, 0x84($s1) -.L80242664: -/* DF9064 80242664 0000102D */ daddu $v0, $zero, $zero -.L80242668: -/* DF9068 80242668 8FBF001C */ lw $ra, 0x1c($sp) -/* DF906C 8024266C 8FB20018 */ lw $s2, 0x18($sp) -/* DF9070 80242670 8FB10014 */ lw $s1, 0x14($sp) -/* DF9074 80242674 8FB00010 */ lw $s0, 0x10($sp) -/* DF9078 80242678 03E00008 */ jr $ra -/* DF907C 8024267C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240030_E05390.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240030_E05390.s deleted file mode 100644 index 6c286c91e5..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240030_E05390.s +++ /dev/null @@ -1,153 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240030_E05390 -/* E05390 80240030 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* E05394 80240034 AFB00088 */ sw $s0, 0x88($sp) -/* E05398 80240038 00A0802D */ daddu $s0, $a1, $zero -/* E0539C 8024003C AFBF00A0 */ sw $ra, 0xa0($sp) -/* E053A0 80240040 AFB5009C */ sw $s5, 0x9c($sp) -/* E053A4 80240044 AFB40098 */ sw $s4, 0x98($sp) -/* E053A8 80240048 AFB30094 */ sw $s3, 0x94($sp) -/* E053AC 8024004C AFB20090 */ sw $s2, 0x90($sp) -/* E053B0 80240050 AFB1008C */ sw $s1, 0x8c($sp) -/* E053B4 80240054 F7BA00C0 */ sdc1 $f26, 0xc0($sp) -/* E053B8 80240058 F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* E053BC 8024005C F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* E053C0 80240060 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* E053C4 80240064 C6160010 */ lwc1 $f22, 0x10($s0) -/* E053C8 80240068 4680B5A0 */ cvt.s.w $f22, $f22 -/* E053CC 8024006C 4480D000 */ mtc1 $zero, $f26 -/* E053D0 80240070 3C01437F */ lui $at, 0x437f -/* E053D4 80240074 4481A000 */ mtc1 $at, $f20 -/* E053D8 80240078 8C82001C */ lw $v0, 0x1c($a0) -/* E053DC 8024007C 4405D000 */ mfc1 $a1, $f26 -/* E053E0 80240080 4406A000 */ mfc1 $a2, $f20 -/* E053E4 80240084 C6180014 */ lwc1 $f24, 0x14($s0) -/* E053E8 80240088 4680C620 */ cvt.s.w $f24, $f24 -/* E053EC 8024008C AFA20010 */ sw $v0, 0x10($sp) -/* E053F0 80240090 8E070018 */ lw $a3, 0x18($s0) -/* E053F4 80240094 0C00A8ED */ jal update_lerp -/* E053F8 80240098 0000202D */ daddu $a0, $zero, $zero -/* E053FC 8024009C 4600A03C */ c.lt.s $f20, $f0 -/* E05400 802400A0 00000000 */ nop -/* E05404 802400A4 45000002 */ bc1f .L802400B0 -/* E05408 802400A8 27B10038 */ addiu $s1, $sp, 0x38 -/* E0540C 802400AC 4600A006 */ mov.s $f0, $f20 -.L802400B0: -/* E05410 802400B0 4600010D */ trunc.w.s $f4, $f0 -/* E05414 802400B4 E7A40014 */ swc1 $f4, 0x14($sp) -/* E05418 802400B8 0000202D */ daddu $a0, $zero, $zero -/* E0541C 802400BC 24050007 */ addiu $a1, $zero, 7 -/* E05420 802400C0 240600FF */ addiu $a2, $zero, 0xff -/* E05424 802400C4 00C0382D */ daddu $a3, $a2, $zero -/* E05428 802400C8 00C0A82D */ daddu $s5, $a2, $zero -/* E0542C 802400CC AFB50010 */ sw $s5, 0x10($sp) -/* E05430 802400D0 0C04EAA7 */ jal fold_update -/* E05434 802400D4 AFA00018 */ sw $zero, 0x18($sp) -/* E05438 802400D8 AFB10010 */ sw $s1, 0x10($sp) -/* E0543C 802400DC 8E040004 */ lw $a0, 4($s0) -/* E05440 802400E0 8E050008 */ lw $a1, 8($s0) -/* E05444 802400E4 8E060000 */ lw $a2, ($s0) -/* E05448 802400E8 8E07000C */ lw $a3, 0xc($s0) -/* E0544C 802400EC 0C04BA38 */ jal msg_get_glyph -/* E05450 802400F0 3C140001 */ lui $s4, 1 -/* E05454 802400F4 93A20042 */ lbu $v0, 0x42($sp) -/* E05458 802400F8 3C013FE0 */ lui $at, 0x3fe0 -/* E0545C 802400FC 4481A800 */ mtc1 $at, $f21 -/* E05460 80240100 4480A000 */ mtc1 $zero, $f20 -/* E05464 80240104 44820000 */ mtc1 $v0, $f0 -/* E05468 80240108 00000000 */ nop -/* E0546C 8024010C 46800021 */ cvt.d.w $f0, $f0 -/* E05470 80240110 46340002 */ mul.d $f0, $f0, $f20 -/* E05474 80240114 00000000 */ nop -/* E05478 80240118 36941630 */ ori $s4, $s4, 0x1630 -/* E0547C 8024011C 4600B0A1 */ cvt.d.s $f2, $f22 -/* E05480 80240120 27B00048 */ addiu $s0, $sp, 0x48 -/* E05484 80240124 4600C607 */ neg.s $f24, $f24 -/* E05488 80240128 46201080 */ add.d $f2, $f2, $f0 -/* E0548C 8024012C 4406C000 */ mfc1 $a2, $f24 -/* E05490 80240130 4407D000 */ mfc1 $a3, $f26 -/* E05494 80240134 462010A0 */ cvt.s.d $f2, $f2 -/* E05498 80240138 44051000 */ mfc1 $a1, $f2 -/* E0549C 8024013C 0C019E40 */ jal guTranslateF -/* E054A0 80240140 0200202D */ daddu $a0, $s0, $zero -/* E054A4 80240144 0200202D */ daddu $a0, $s0, $zero -/* E054A8 80240148 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* E054AC 8024014C 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* E054B0 80240150 3C13800A */ lui $s3, %hi(gDisplayContext) -/* E054B4 80240154 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* E054B8 80240158 96450000 */ lhu $a1, ($s2) -/* E054BC 8024015C 8E620000 */ lw $v0, ($s3) -/* E054C0 80240160 00052980 */ sll $a1, $a1, 6 -/* E054C4 80240164 00B42821 */ addu $a1, $a1, $s4 -/* E054C8 80240168 0C019D40 */ jal guMtxF2L -/* E054CC 8024016C 00452821 */ addu $a1, $v0, $a1 -/* E054D0 80240170 3C03DA38 */ lui $v1, 0xda38 -/* E054D4 80240174 34630002 */ ori $v1, $v1, 2 -/* E054D8 80240178 0000202D */ daddu $a0, $zero, $zero -/* E054DC 8024017C 27A50020 */ addiu $a1, $sp, 0x20 -/* E054E0 80240180 3C060005 */ lui $a2, 5 -/* E054E4 80240184 34C60040 */ ori $a2, $a2, 0x40 -/* E054E8 80240188 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* E054EC 8024018C 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* E054F0 80240190 0200382D */ daddu $a3, $s0, $zero -/* E054F4 80240194 8E220000 */ lw $v0, ($s1) -/* E054F8 80240198 96480000 */ lhu $t0, ($s2) -/* E054FC 8024019C 0040482D */ daddu $t1, $v0, $zero -/* E05500 802401A0 24420008 */ addiu $v0, $v0, 8 -/* E05504 802401A4 AE220000 */ sw $v0, ($s1) -/* E05508 802401A8 3102FFFF */ andi $v0, $t0, 0xffff -/* E0550C 802401AC 00021180 */ sll $v0, $v0, 6 -/* E05510 802401B0 00541021 */ addu $v0, $v0, $s4 -/* E05514 802401B4 AD230000 */ sw $v1, ($t1) -/* E05518 802401B8 8E630000 */ lw $v1, ($s3) -/* E0551C 802401BC 25080001 */ addiu $t0, $t0, 1 -/* E05520 802401C0 00621821 */ addu $v1, $v1, $v0 -/* E05524 802401C4 3C028000 */ lui $v0, 0x8000 -/* E05528 802401C8 00621821 */ addu $v1, $v1, $v0 -/* E0552C 802401CC AD230004 */ sw $v1, 4($t1) -/* E05530 802401D0 93A20042 */ lbu $v0, 0x42($sp) -/* E05534 802401D4 8FA3003C */ lw $v1, 0x3c($sp) -/* E05538 802401D8 93A90040 */ lbu $t1, 0x40($sp) -/* E0553C 802401DC 93AA0041 */ lbu $t2, 0x41($sp) -/* E05540 802401E0 44820000 */ mtc1 $v0, $f0 -/* E05544 802401E4 00000000 */ nop -/* E05548 802401E8 46800021 */ cvt.d.w $f0, $f0 -/* E0554C 802401EC 8FA20038 */ lw $v0, 0x38($sp) -/* E05550 802401F0 46340002 */ mul.d $f0, $f0, $f20 -/* E05554 802401F4 00000000 */ nop -/* E05558 802401F8 A6480000 */ sh $t0, ($s2) -/* E0555C 802401FC A7A0002E */ sh $zero, 0x2e($sp) -/* E05560 80240200 A3B50030 */ sb $s5, 0x30($sp) -/* E05564 80240204 AFA30024 */ sw $v1, 0x24($sp) -/* E05568 80240208 A7A90028 */ sh $t1, 0x28($sp) -/* E0556C 8024020C A7AA002A */ sh $t2, 0x2a($sp) -/* E05570 80240210 AFA20020 */ sw $v0, 0x20($sp) -/* E05574 80240214 46200007 */ neg.d $f0, $f0 -/* E05578 80240218 4620010D */ trunc.w.d $f4, $f0 -/* E0557C 8024021C 44022000 */ mfc1 $v0, $f4 -/* E05580 80240220 0C04EBDC */ jal fold_appendGfx_component -/* E05584 80240224 A7A2002C */ sh $v0, 0x2c($sp) -/* E05588 80240228 3C04D838 */ lui $a0, 0xd838 -/* E0558C 8024022C 8E220000 */ lw $v0, ($s1) -/* E05590 80240230 34840002 */ ori $a0, $a0, 2 -/* E05594 80240234 0040182D */ daddu $v1, $v0, $zero -/* E05598 80240238 24420008 */ addiu $v0, $v0, 8 -/* E0559C 8024023C AE220000 */ sw $v0, ($s1) -/* E055A0 80240240 24020040 */ addiu $v0, $zero, 0x40 -/* E055A4 80240244 AC640000 */ sw $a0, ($v1) -/* E055A8 80240248 AC620004 */ sw $v0, 4($v1) -/* E055AC 8024024C 8FBF00A0 */ lw $ra, 0xa0($sp) -/* E055B0 80240250 8FB5009C */ lw $s5, 0x9c($sp) -/* E055B4 80240254 8FB40098 */ lw $s4, 0x98($sp) -/* E055B8 80240258 8FB30094 */ lw $s3, 0x94($sp) -/* E055BC 8024025C 8FB20090 */ lw $s2, 0x90($sp) -/* E055C0 80240260 8FB1008C */ lw $s1, 0x8c($sp) -/* E055C4 80240264 8FB00088 */ lw $s0, 0x88($sp) -/* E055C8 80240268 D7BA00C0 */ ldc1 $f26, 0xc0($sp) -/* E055CC 8024026C D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* E055D0 80240270 D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* E055D4 80240274 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* E055D8 80240278 03E00008 */ jr $ra -/* E055DC 8024027C 27BD00C8 */ addiu $sp, $sp, 0xc8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240280_E055E0.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240280_E055E0.s deleted file mode 100644 index 5898b5266d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240280_E055E0.s +++ /dev/null @@ -1,190 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240280_E055E0 -/* E055E0 80240280 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* E055E4 80240284 AFB1008C */ sw $s1, 0x8c($sp) -/* E055E8 80240288 0080882D */ daddu $s1, $a0, $zero -/* E055EC 8024028C AFB00088 */ sw $s0, 0x88($sp) -/* E055F0 80240290 00A0802D */ daddu $s0, $a1, $zero -/* E055F4 80240294 0000202D */ daddu $a0, $zero, $zero -/* E055F8 80240298 AFBF00A0 */ sw $ra, 0xa0($sp) -/* E055FC 8024029C AFB5009C */ sw $s5, 0x9c($sp) -/* E05600 802402A0 AFB40098 */ sw $s4, 0x98($sp) -/* E05604 802402A4 AFB30094 */ sw $s3, 0x94($sp) -/* E05608 802402A8 AFB20090 */ sw $s2, 0x90($sp) -/* E0560C 802402AC F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* E05610 802402B0 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* E05614 802402B4 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* E05618 802402B8 C6160010 */ lwc1 $f22, 0x10($s0) -/* E0561C 802402BC 4680B5A0 */ cvt.s.w $f22, $f22 -/* E05620 802402C0 3C01437F */ lui $at, 0x437f -/* E05624 802402C4 4481A000 */ mtc1 $at, $f20 -/* E05628 802402C8 8E22001C */ lw $v0, 0x1c($s1) -/* E0562C 802402CC 4406A000 */ mfc1 $a2, $f20 -/* E05630 802402D0 C6180014 */ lwc1 $f24, 0x14($s0) -/* E05634 802402D4 4680C620 */ cvt.s.w $f24, $f24 -/* E05638 802402D8 AFA20010 */ sw $v0, 0x10($sp) -/* E0563C 802402DC 8E070018 */ lw $a3, 0x18($s0) -/* E05640 802402E0 0C00A8ED */ jal update_lerp -/* E05644 802402E4 0000282D */ daddu $a1, $zero, $zero -/* E05648 802402E8 4600A03C */ c.lt.s $f20, $f0 -/* E0564C 802402EC 00000000 */ nop -/* E05650 802402F0 45000002 */ bc1f .L802402FC -/* E05654 802402F4 27B50038 */ addiu $s5, $sp, 0x38 -/* E05658 802402F8 4600A006 */ mov.s $f0, $f20 -.L802402FC: -/* E0565C 802402FC 8E24001C */ lw $a0, 0x1c($s1) -/* E05660 80240300 8E030018 */ lw $v1, 0x18($s0) -/* E05664 80240304 2482FFFC */ addiu $v0, $a0, -4 -/* E05668 80240308 14620007 */ bne $v1, $v0, .L80240328 -/* E0566C 8024030C 2482FFFD */ addiu $v0, $a0, -3 -/* E05670 80240310 4600010D */ trunc.w.s $f4, $f0 -/* E05674 80240314 E7A40014 */ swc1 $f4, 0x14($sp) -/* E05678 80240318 0000202D */ daddu $a0, $zero, $zero -/* E0567C 8024031C 2405000A */ addiu $a1, $zero, 0xa -/* E05680 80240320 080900E5 */ j .L80240394 -/* E05684 80240324 24060040 */ addiu $a2, $zero, 0x40 -.L80240328: -/* E05688 80240328 14620007 */ bne $v1, $v0, .L80240348 -/* E0568C 8024032C 2482FFFE */ addiu $v0, $a0, -2 -/* E05690 80240330 4600010D */ trunc.w.s $f4, $f0 -/* E05694 80240334 E7A40014 */ swc1 $f4, 0x14($sp) -/* E05698 80240338 0000202D */ daddu $a0, $zero, $zero -/* E0569C 8024033C 2405000A */ addiu $a1, $zero, 0xa -/* E056A0 80240340 080900E5 */ j .L80240394 -/* E056A4 80240344 24060060 */ addiu $a2, $zero, 0x60 -.L80240348: -/* E056A8 80240348 14620007 */ bne $v1, $v0, .L80240368 -/* E056AC 8024034C 2482FFFF */ addiu $v0, $a0, -1 -/* E056B0 80240350 4600010D */ trunc.w.s $f4, $f0 -/* E056B4 80240354 E7A40014 */ swc1 $f4, 0x14($sp) -/* E056B8 80240358 0000202D */ daddu $a0, $zero, $zero -/* E056BC 8024035C 2405000A */ addiu $a1, $zero, 0xa -/* E056C0 80240360 080900E5 */ j .L80240394 -/* E056C4 80240364 2406007F */ addiu $a2, $zero, 0x7f -.L80240368: -/* E056C8 80240368 14620006 */ bne $v1, $v0, .L80240384 -/* E056CC 8024036C 0000202D */ daddu $a0, $zero, $zero -/* E056D0 80240370 4600010D */ trunc.w.s $f4, $f0 -/* E056D4 80240374 E7A40014 */ swc1 $f4, 0x14($sp) -/* E056D8 80240378 2405000A */ addiu $a1, $zero, 0xa -/* E056DC 8024037C 080900E5 */ j .L80240394 -/* E056E0 80240380 24060050 */ addiu $a2, $zero, 0x50 -.L80240384: -/* E056E4 80240384 4600010D */ trunc.w.s $f4, $f0 -/* E056E8 80240388 E7A40014 */ swc1 $f4, 0x14($sp) -/* E056EC 8024038C 24050007 */ addiu $a1, $zero, 7 -/* E056F0 80240390 240600FF */ addiu $a2, $zero, 0xff -.L80240394: -/* E056F4 80240394 00C0382D */ daddu $a3, $a2, $zero -/* E056F8 80240398 00C0102D */ daddu $v0, $a2, $zero -/* E056FC 8024039C AFA20010 */ sw $v0, 0x10($sp) -/* E05700 802403A0 0C04EAA7 */ jal fold_update -/* E05704 802403A4 AFA00018 */ sw $zero, 0x18($sp) -/* E05708 802403A8 AFB50010 */ sw $s5, 0x10($sp) -/* E0570C 802403AC 8E040004 */ lw $a0, 4($s0) -/* E05710 802403B0 8E050008 */ lw $a1, 8($s0) -/* E05714 802403B4 8E060000 */ lw $a2, ($s0) -/* E05718 802403B8 8E07000C */ lw $a3, 0xc($s0) -/* E0571C 802403BC 0C04BA38 */ jal msg_get_glyph -/* E05720 802403C0 3C140001 */ lui $s4, 1 -/* E05724 802403C4 92A2000A */ lbu $v0, 0xa($s5) -/* E05728 802403C8 3C013FE0 */ lui $at, 0x3fe0 -/* E0572C 802403CC 4481A800 */ mtc1 $at, $f21 -/* E05730 802403D0 4480A000 */ mtc1 $zero, $f20 -/* E05734 802403D4 44820000 */ mtc1 $v0, $f0 -/* E05738 802403D8 00000000 */ nop -/* E0573C 802403DC 46800021 */ cvt.d.w $f0, $f0 -/* E05740 802403E0 46340002 */ mul.d $f0, $f0, $f20 -/* E05744 802403E4 00000000 */ nop -/* E05748 802403E8 36941630 */ ori $s4, $s4, 0x1630 -/* E0574C 802403EC 4600B0A1 */ cvt.d.s $f2, $f22 -/* E05750 802403F0 46201080 */ add.d $f2, $f2, $f0 -/* E05754 802403F4 27B30048 */ addiu $s3, $sp, 0x48 -/* E05758 802403F8 0260202D */ daddu $a0, $s3, $zero -/* E0575C 802403FC 4600C607 */ neg.s $f24, $f24 -/* E05760 80240400 4406C000 */ mfc1 $a2, $f24 -/* E05764 80240404 462010A0 */ cvt.s.d $f2, $f2 -/* E05768 80240408 44051000 */ mfc1 $a1, $f2 -/* E0576C 8024040C 0C019E40 */ jal guTranslateF -/* E05770 80240410 0000382D */ daddu $a3, $zero, $zero -/* E05774 80240414 0260202D */ daddu $a0, $s3, $zero -/* E05778 80240418 3C108007 */ lui $s0, %hi(gMatrixListPos) -/* E0577C 8024041C 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos) -/* E05780 80240420 3C12800A */ lui $s2, %hi(gDisplayContext) -/* E05784 80240424 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* E05788 80240428 96050000 */ lhu $a1, ($s0) -/* E0578C 8024042C 8E420000 */ lw $v0, ($s2) -/* E05790 80240430 00052980 */ sll $a1, $a1, 6 -/* E05794 80240434 00B42821 */ addu $a1, $a1, $s4 -/* E05798 80240438 0C019D40 */ jal guMtxF2L -/* E0579C 8024043C 00452821 */ addu $a1, $v0, $a1 -/* E057A0 80240440 3C02DA38 */ lui $v0, 0xda38 -/* E057A4 80240444 34420002 */ ori $v0, $v0, 2 -/* E057A8 80240448 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* E057AC 8024044C 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* E057B0 80240450 8E240000 */ lw $a0, ($s1) -/* E057B4 80240454 96050000 */ lhu $a1, ($s0) -/* E057B8 80240458 0080302D */ daddu $a2, $a0, $zero -/* E057BC 8024045C ACC20000 */ sw $v0, ($a2) -/* E057C0 80240460 30A2FFFF */ andi $v0, $a1, 0xffff -/* E057C4 80240464 00021180 */ sll $v0, $v0, 6 -/* E057C8 80240468 8E430000 */ lw $v1, ($s2) -/* E057CC 8024046C 00541021 */ addu $v0, $v0, $s4 -/* E057D0 80240470 00621821 */ addu $v1, $v1, $v0 -/* E057D4 80240474 3C028000 */ lui $v0, 0x8000 -/* E057D8 80240478 00621821 */ addu $v1, $v1, $v0 -/* E057DC 8024047C ACC30004 */ sw $v1, 4($a2) -/* E057E0 80240480 8EA20000 */ lw $v0, ($s5) -/* E057E4 80240484 24840008 */ addiu $a0, $a0, 8 -/* E057E8 80240488 AE240000 */ sw $a0, ($s1) -/* E057EC 8024048C AFA20020 */ sw $v0, 0x20($sp) -/* E057F0 80240490 8EA20004 */ lw $v0, 4($s5) -/* E057F4 80240494 24A50001 */ addiu $a1, $a1, 1 -/* E057F8 80240498 A6050000 */ sh $a1, ($s0) -/* E057FC 8024049C AFA20024 */ sw $v0, 0x24($sp) -/* E05800 802404A0 92A20008 */ lbu $v0, 8($s5) -/* E05804 802404A4 A7A20028 */ sh $v0, 0x28($sp) -/* E05808 802404A8 92A20009 */ lbu $v0, 9($s5) -/* E0580C 802404AC A7A2002A */ sh $v0, 0x2a($sp) -/* E05810 802404B0 92A2000A */ lbu $v0, 0xa($s5) -/* E05814 802404B4 0260382D */ daddu $a3, $s3, $zero -/* E05818 802404B8 44820000 */ mtc1 $v0, $f0 -/* E0581C 802404BC 00000000 */ nop -/* E05820 802404C0 46800021 */ cvt.d.w $f0, $f0 -/* E05824 802404C4 46340002 */ mul.d $f0, $f0, $f20 -/* E05828 802404C8 00000000 */ nop -/* E0582C 802404CC 0000202D */ daddu $a0, $zero, $zero -/* E05830 802404D0 3C060005 */ lui $a2, 5 -/* E05834 802404D4 34C60040 */ ori $a2, $a2, 0x40 -/* E05838 802404D8 27A50020 */ addiu $a1, $sp, 0x20 -/* E0583C 802404DC A7A0002E */ sh $zero, 0x2e($sp) -/* E05840 802404E0 240200FF */ addiu $v0, $zero, 0xff -/* E05844 802404E4 A3A20030 */ sb $v0, 0x30($sp) -/* E05848 802404E8 46200007 */ neg.d $f0, $f0 -/* E0584C 802404EC 4620010D */ trunc.w.d $f4, $f0 -/* E05850 802404F0 44022000 */ mfc1 $v0, $f4 -/* E05854 802404F4 0C04EBDC */ jal fold_appendGfx_component -/* E05858 802404F8 A7A2002C */ sh $v0, 0x2c($sp) -/* E0585C 802404FC 3C04D838 */ lui $a0, 0xd838 -/* E05860 80240500 8E220000 */ lw $v0, ($s1) -/* E05864 80240504 34840002 */ ori $a0, $a0, 2 -/* E05868 80240508 0040182D */ daddu $v1, $v0, $zero -/* E0586C 8024050C 24420008 */ addiu $v0, $v0, 8 -/* E05870 80240510 AE220000 */ sw $v0, ($s1) -/* E05874 80240514 24020040 */ addiu $v0, $zero, 0x40 -/* E05878 80240518 AC640000 */ sw $a0, ($v1) -/* E0587C 8024051C AC620004 */ sw $v0, 4($v1) -/* E05880 80240520 8FBF00A0 */ lw $ra, 0xa0($sp) -/* E05884 80240524 8FB5009C */ lw $s5, 0x9c($sp) -/* E05888 80240528 8FB40098 */ lw $s4, 0x98($sp) -/* E0588C 8024052C 8FB30094 */ lw $s3, 0x94($sp) -/* E05890 80240530 8FB20090 */ lw $s2, 0x90($sp) -/* E05894 80240534 8FB1008C */ lw $s1, 0x8c($sp) -/* E05898 80240538 8FB00088 */ lw $s0, 0x88($sp) -/* E0589C 8024053C D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* E058A0 80240540 D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* E058A4 80240544 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* E058A8 80240548 03E00008 */ jr $ra -/* E058AC 8024054C 27BD00C0 */ addiu $sp, $sp, 0xc0 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240550_E058B0.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240550_E058B0.s deleted file mode 100644 index 5e44138433..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240550_E058B0.s +++ /dev/null @@ -1,190 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240550_E058B0 -/* E058B0 80240550 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* E058B4 80240554 AFB200D0 */ sw $s2, 0xd0($sp) -/* E058B8 80240558 0080902D */ daddu $s2, $a0, $zero -/* E058BC 8024055C AFB000C8 */ sw $s0, 0xc8($sp) -/* E058C0 80240560 00A0802D */ daddu $s0, $a1, $zero -/* E058C4 80240564 AFBF00E0 */ sw $ra, 0xe0($sp) -/* E058C8 80240568 AFB500DC */ sw $s5, 0xdc($sp) -/* E058CC 8024056C AFB400D8 */ sw $s4, 0xd8($sp) -/* E058D0 80240570 AFB300D4 */ sw $s3, 0xd4($sp) -/* E058D4 80240574 AFB100CC */ sw $s1, 0xcc($sp) -/* E058D8 80240578 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* E058DC 8024057C F7BA0100 */ sdc1 $f26, 0x100($sp) -/* E058E0 80240580 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* E058E4 80240584 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* E058E8 80240588 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* E058EC 8024058C C6160010 */ lwc1 $f22, 0x10($s0) -/* E058F0 80240590 4680B5A0 */ cvt.s.w $f22, $f22 -/* E058F4 80240594 3C054180 */ lui $a1, 0x4180 -/* E058F8 80240598 3C064396 */ lui $a2, 0x4396 -/* E058FC 8024059C 8E42001C */ lw $v0, 0x1c($s2) -/* E05900 802405A0 C61C0014 */ lwc1 $f28, 0x14($s0) -/* E05904 802405A4 4680E720 */ cvt.s.w $f28, $f28 -/* E05908 802405A8 AFA20010 */ sw $v0, 0x10($sp) -/* E0590C 802405AC 8E070018 */ lw $a3, 0x18($s0) -/* E05910 802405B0 0C00A8ED */ jal update_lerp -/* E05914 802405B4 2404000C */ addiu $a0, $zero, 0xc -/* E05918 802405B8 3C01437F */ lui $at, 0x437f -/* E0591C 802405BC 44811000 */ mtc1 $at, $f2 -/* E05920 802405C0 00000000 */ nop -/* E05924 802405C4 4600103C */ c.lt.s $f2, $f0 -/* E05928 802405C8 00000000 */ nop -/* E0592C 802405CC 45000002 */ bc1f .L802405D8 -/* E05930 802405D0 27B10038 */ addiu $s1, $sp, 0x38 -/* E05934 802405D4 46001006 */ mov.s $f0, $f2 -.L802405D8: -/* E05938 802405D8 4600010D */ trunc.w.s $f4, $f0 -/* E0593C 802405DC E7A40014 */ swc1 $f4, 0x14($sp) -/* E05940 802405E0 0000202D */ daddu $a0, $zero, $zero -/* E05944 802405E4 24050007 */ addiu $a1, $zero, 7 -/* E05948 802405E8 240600FF */ addiu $a2, $zero, 0xff -/* E0594C 802405EC 00C0382D */ daddu $a3, $a2, $zero -/* E05950 802405F0 00C0A82D */ daddu $s5, $a2, $zero -/* E05954 802405F4 AFB50010 */ sw $s5, 0x10($sp) -/* E05958 802405F8 0C04EAA7 */ jal fold_update -/* E0595C 802405FC AFA00018 */ sw $zero, 0x18($sp) -/* E05960 80240600 8E42001C */ lw $v0, 0x1c($s2) -/* E05964 80240604 3C053E4C */ lui $a1, 0x3e4c -/* E05968 80240608 34A5CCCD */ ori $a1, $a1, 0xcccd -/* E0596C 8024060C 3C064000 */ lui $a2, 0x4000 -/* E05970 80240610 AFA20010 */ sw $v0, 0x10($sp) -/* E05974 80240614 8E070018 */ lw $a3, 0x18($s0) -/* E05978 80240618 0C00A8ED */ jal update_lerp -/* E0597C 8024061C 0000202D */ daddu $a0, $zero, $zero -/* E05980 80240620 46000506 */ mov.s $f20, $f0 -/* E05984 80240624 3C013FF0 */ lui $at, 0x3ff0 -/* E05988 80240628 4481C800 */ mtc1 $at, $f25 -/* E0598C 8024062C 4480C000 */ mtc1 $zero, $f24 -/* E05990 80240630 4600A021 */ cvt.d.s $f0, $f20 -/* E05994 80240634 4620C03C */ c.lt.d $f24, $f0 -/* E05998 80240638 00000000 */ nop -/* E0599C 8024063C 45000003 */ bc1f .L8024064C -/* E059A0 80240640 AFB10010 */ sw $s1, 0x10($sp) -/* E059A4 80240644 3C013F80 */ lui $at, 0x3f80 -/* E059A8 80240648 4481A000 */ mtc1 $at, $f20 -.L8024064C: -/* E059AC 8024064C 8E040004 */ lw $a0, 4($s0) -/* E059B0 80240650 8E050008 */ lw $a1, 8($s0) -/* E059B4 80240654 8E060000 */ lw $a2, ($s0) -/* E059B8 80240658 0C04BA38 */ jal msg_get_glyph -/* E059BC 8024065C 8E07000C */ lw $a3, 0xc($s0) -/* E059C0 80240660 93A20042 */ lbu $v0, 0x42($sp) -/* E059C4 80240664 3C013FE0 */ lui $at, 0x3fe0 -/* E059C8 80240668 4481D800 */ mtc1 $at, $f27 -/* E059CC 8024066C 4480D000 */ mtc1 $zero, $f26 -/* E059D0 80240670 44820000 */ mtc1 $v0, $f0 -/* E059D4 80240674 00000000 */ nop -/* E059D8 80240678 46800021 */ cvt.d.w $f0, $f0 -/* E059DC 8024067C 463A0002 */ mul.d $f0, $f0, $f26 -/* E059E0 80240680 00000000 */ nop -/* E059E4 80240684 4600B0A1 */ cvt.d.s $f2, $f22 -/* E059E8 80240688 46201080 */ add.d $f2, $f2, $f0 -/* E059EC 8024068C 27B40048 */ addiu $s4, $sp, 0x48 -/* E059F0 80240690 0280202D */ daddu $a0, $s4, $zero -/* E059F4 80240694 4600E707 */ neg.s $f28, $f28 -/* E059F8 80240698 4406E000 */ mfc1 $a2, $f28 -/* E059FC 8024069C 462010A0 */ cvt.s.d $f2, $f2 -/* E05A00 802406A0 44051000 */ mfc1 $a1, $f2 -/* E05A04 802406A4 0C019E40 */ jal guTranslateF -/* E05A08 802406A8 0000382D */ daddu $a3, $zero, $zero -/* E05A0C 802406AC 4600A021 */ cvt.d.s $f0, $f20 -/* E05A10 802406B0 46380032 */ c.eq.d $f0, $f24 -/* E05A14 802406B4 00000000 */ nop -/* E05A18 802406B8 4501000C */ bc1t .L802406EC -/* E05A1C 802406BC 3C130001 */ lui $s3, 1 -/* E05A20 802406C0 27B00088 */ addiu $s0, $sp, 0x88 -/* E05A24 802406C4 0200202D */ daddu $a0, $s0, $zero -/* E05A28 802406C8 4405A000 */ mfc1 $a1, $f20 -/* E05A2C 802406CC 3C073F80 */ lui $a3, 0x3f80 -/* E05A30 802406D0 0C019DF0 */ jal guScaleF -/* E05A34 802406D4 00A0302D */ daddu $a2, $a1, $zero -/* E05A38 802406D8 0200202D */ daddu $a0, $s0, $zero -/* E05A3C 802406DC 0280282D */ daddu $a1, $s4, $zero -/* E05A40 802406E0 0C019D80 */ jal guMtxCatF -/* E05A44 802406E4 0280302D */ daddu $a2, $s4, $zero -/* E05A48 802406E8 3C130001 */ lui $s3, 1 -.L802406EC: -/* E05A4C 802406EC 36731630 */ ori $s3, $s3, 0x1630 -/* E05A50 802406F0 0280202D */ daddu $a0, $s4, $zero -/* E05A54 802406F4 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* E05A58 802406F8 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* E05A5C 802406FC 3C12800A */ lui $s2, %hi(gDisplayContext) -/* E05A60 80240700 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* E05A64 80240704 96250000 */ lhu $a1, ($s1) -/* E05A68 80240708 8E420000 */ lw $v0, ($s2) -/* E05A6C 8024070C 00052980 */ sll $a1, $a1, 6 -/* E05A70 80240710 00B32821 */ addu $a1, $a1, $s3 -/* E05A74 80240714 0C019D40 */ jal guMtxF2L -/* E05A78 80240718 00452821 */ addu $a1, $v0, $a1 -/* E05A7C 8024071C 3C03DA38 */ lui $v1, 0xda38 -/* E05A80 80240720 34630002 */ ori $v1, $v1, 2 -/* E05A84 80240724 0000202D */ daddu $a0, $zero, $zero -/* E05A88 80240728 27A50020 */ addiu $a1, $sp, 0x20 -/* E05A8C 8024072C 24060040 */ addiu $a2, $zero, 0x40 -/* E05A90 80240730 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* E05A94 80240734 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* E05A98 80240738 0280382D */ daddu $a3, $s4, $zero -/* E05A9C 8024073C 8E020000 */ lw $v0, ($s0) -/* E05AA0 80240740 96280000 */ lhu $t0, ($s1) -/* E05AA4 80240744 0040482D */ daddu $t1, $v0, $zero -/* E05AA8 80240748 24420008 */ addiu $v0, $v0, 8 -/* E05AAC 8024074C AE020000 */ sw $v0, ($s0) -/* E05AB0 80240750 3102FFFF */ andi $v0, $t0, 0xffff -/* E05AB4 80240754 00021180 */ sll $v0, $v0, 6 -/* E05AB8 80240758 00531021 */ addu $v0, $v0, $s3 -/* E05ABC 8024075C AD230000 */ sw $v1, ($t1) -/* E05AC0 80240760 8E430000 */ lw $v1, ($s2) -/* E05AC4 80240764 25080001 */ addiu $t0, $t0, 1 -/* E05AC8 80240768 00621821 */ addu $v1, $v1, $v0 -/* E05ACC 8024076C 3C028000 */ lui $v0, 0x8000 -/* E05AD0 80240770 00621821 */ addu $v1, $v1, $v0 -/* E05AD4 80240774 AD230004 */ sw $v1, 4($t1) -/* E05AD8 80240778 93A20042 */ lbu $v0, 0x42($sp) -/* E05ADC 8024077C 8FA3003C */ lw $v1, 0x3c($sp) -/* E05AE0 80240780 93A90040 */ lbu $t1, 0x40($sp) -/* E05AE4 80240784 93AA0041 */ lbu $t2, 0x41($sp) -/* E05AE8 80240788 44820000 */ mtc1 $v0, $f0 -/* E05AEC 8024078C 00000000 */ nop -/* E05AF0 80240790 46800021 */ cvt.d.w $f0, $f0 -/* E05AF4 80240794 8FA20038 */ lw $v0, 0x38($sp) -/* E05AF8 80240798 463A0002 */ mul.d $f0, $f0, $f26 -/* E05AFC 8024079C 00000000 */ nop -/* E05B00 802407A0 A6280000 */ sh $t0, ($s1) -/* E05B04 802407A4 A7A0002E */ sh $zero, 0x2e($sp) -/* E05B08 802407A8 A3B50030 */ sb $s5, 0x30($sp) -/* E05B0C 802407AC AFA30024 */ sw $v1, 0x24($sp) -/* E05B10 802407B0 A7A90028 */ sh $t1, 0x28($sp) -/* E05B14 802407B4 A7AA002A */ sh $t2, 0x2a($sp) -/* E05B18 802407B8 AFA20020 */ sw $v0, 0x20($sp) -/* E05B1C 802407BC 46200007 */ neg.d $f0, $f0 -/* E05B20 802407C0 4620010D */ trunc.w.d $f4, $f0 -/* E05B24 802407C4 44022000 */ mfc1 $v0, $f4 -/* E05B28 802407C8 0C04EBDC */ jal fold_appendGfx_component -/* E05B2C 802407CC A7A2002C */ sh $v0, 0x2c($sp) -/* E05B30 802407D0 3C04D838 */ lui $a0, 0xd838 -/* E05B34 802407D4 8E020000 */ lw $v0, ($s0) -/* E05B38 802407D8 34840002 */ ori $a0, $a0, 2 -/* E05B3C 802407DC 0040182D */ daddu $v1, $v0, $zero -/* E05B40 802407E0 24420008 */ addiu $v0, $v0, 8 -/* E05B44 802407E4 AE020000 */ sw $v0, ($s0) -/* E05B48 802407E8 24020040 */ addiu $v0, $zero, 0x40 -/* E05B4C 802407EC AC640000 */ sw $a0, ($v1) -/* E05B50 802407F0 AC620004 */ sw $v0, 4($v1) -/* E05B54 802407F4 8FBF00E0 */ lw $ra, 0xe0($sp) -/* E05B58 802407F8 8FB500DC */ lw $s5, 0xdc($sp) -/* E05B5C 802407FC 8FB400D8 */ lw $s4, 0xd8($sp) -/* E05B60 80240800 8FB300D4 */ lw $s3, 0xd4($sp) -/* E05B64 80240804 8FB200D0 */ lw $s2, 0xd0($sp) -/* E05B68 80240808 8FB100CC */ lw $s1, 0xcc($sp) -/* E05B6C 8024080C 8FB000C8 */ lw $s0, 0xc8($sp) -/* E05B70 80240810 D7BC0108 */ ldc1 $f28, 0x108($sp) -/* E05B74 80240814 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* E05B78 80240818 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* E05B7C 8024081C D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* E05B80 80240820 D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* E05B84 80240824 03E00008 */ jr $ra -/* E05B88 80240828 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024082C_E05B8C.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024082C_E05B8C.s deleted file mode 100644 index 5502b33f91..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024082C_E05B8C.s +++ /dev/null @@ -1,186 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024082C_E05B8C -/* E05B8C 8024082C 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* E05B90 80240830 AFB200D0 */ sw $s2, 0xd0($sp) -/* E05B94 80240834 0080902D */ daddu $s2, $a0, $zero -/* E05B98 80240838 AFB000C8 */ sw $s0, 0xc8($sp) -/* E05B9C 8024083C 00A0802D */ daddu $s0, $a1, $zero -/* E05BA0 80240840 AFBF00E0 */ sw $ra, 0xe0($sp) -/* E05BA4 80240844 AFB500DC */ sw $s5, 0xdc($sp) -/* E05BA8 80240848 AFB400D8 */ sw $s4, 0xd8($sp) -/* E05BAC 8024084C AFB300D4 */ sw $s3, 0xd4($sp) -/* E05BB0 80240850 AFB100CC */ sw $s1, 0xcc($sp) -/* E05BB4 80240854 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* E05BB8 80240858 F7BA0100 */ sdc1 $f26, 0x100($sp) -/* E05BBC 8024085C F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* E05BC0 80240860 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* E05BC4 80240864 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* E05BC8 80240868 C6180010 */ lwc1 $f24, 0x10($s0) -/* E05BCC 8024086C 4680C620 */ cvt.s.w $f24, $f24 -/* E05BD0 80240870 3C054200 */ lui $a1, 0x4200 -/* E05BD4 80240874 3C064396 */ lui $a2, 0x4396 -/* E05BD8 80240878 8E42001C */ lw $v0, 0x1c($s2) -/* E05BDC 8024087C C61C0014 */ lwc1 $f28, 0x14($s0) -/* E05BE0 80240880 4680E720 */ cvt.s.w $f28, $f28 -/* E05BE4 80240884 AFA20010 */ sw $v0, 0x10($sp) -/* E05BE8 80240888 8E070018 */ lw $a3, 0x18($s0) -/* E05BEC 8024088C 0C00A8ED */ jal update_lerp -/* E05BF0 80240890 2404000C */ addiu $a0, $zero, 0xc -/* E05BF4 80240894 3C01437F */ lui $at, 0x437f -/* E05BF8 80240898 44811000 */ mtc1 $at, $f2 -/* E05BFC 8024089C 00000000 */ nop -/* E05C00 802408A0 4600103C */ c.lt.s $f2, $f0 -/* E05C04 802408A4 00000000 */ nop -/* E05C08 802408A8 45000002 */ bc1f .L802408B4 -/* E05C0C 802408AC 27B10038 */ addiu $s1, $sp, 0x38 -/* E05C10 802408B0 46001006 */ mov.s $f0, $f2 -.L802408B4: -/* E05C14 802408B4 4600010D */ trunc.w.s $f4, $f0 -/* E05C18 802408B8 E7A40014 */ swc1 $f4, 0x14($sp) -/* E05C1C 802408BC 0000202D */ daddu $a0, $zero, $zero -/* E05C20 802408C0 24050007 */ addiu $a1, $zero, 7 -/* E05C24 802408C4 240600FF */ addiu $a2, $zero, 0xff -/* E05C28 802408C8 00C0382D */ daddu $a3, $a2, $zero -/* E05C2C 802408CC 00C0A82D */ daddu $s5, $a2, $zero -/* E05C30 802408D0 AFB50010 */ sw $s5, 0x10($sp) -/* E05C34 802408D4 0C04EAA7 */ jal fold_update -/* E05C38 802408D8 AFA00018 */ sw $zero, 0x18($sp) -/* E05C3C 802408DC 8E42001C */ lw $v0, 0x1c($s2) -/* E05C40 802408E0 3C05C296 */ lui $a1, 0xc296 -/* E05C44 802408E4 3C0641F0 */ lui $a2, 0x41f0 -/* E05C48 802408E8 AFA20010 */ sw $v0, 0x10($sp) -/* E05C4C 802408EC 8E070018 */ lw $a3, 0x18($s0) -/* E05C50 802408F0 0C00A8ED */ jal update_lerp -/* E05C54 802408F4 0000202D */ daddu $a0, $zero, $zero -/* E05C58 802408F8 4480B000 */ mtc1 $zero, $f22 -/* E05C5C 802408FC 46000506 */ mov.s $f20, $f0 -/* E05C60 80240900 4614B03E */ c.le.s $f22, $f20 -/* E05C64 80240904 00000000 */ nop -/* E05C68 80240908 45030001 */ bc1tl .L80240910 -/* E05C6C 8024090C 4600B506 */ mov.s $f20, $f22 -.L80240910: -/* E05C70 80240910 AFB10010 */ sw $s1, 0x10($sp) -/* E05C74 80240914 8E040004 */ lw $a0, 4($s0) -/* E05C78 80240918 8E050008 */ lw $a1, 8($s0) -/* E05C7C 8024091C 8E060000 */ lw $a2, ($s0) -/* E05C80 80240920 0C04BA38 */ jal msg_get_glyph -/* E05C84 80240924 8E07000C */ lw $a3, 0xc($s0) -/* E05C88 80240928 93A20042 */ lbu $v0, 0x42($sp) -/* E05C8C 8024092C 3C013FE0 */ lui $at, 0x3fe0 -/* E05C90 80240930 4481D800 */ mtc1 $at, $f27 -/* E05C94 80240934 4480D000 */ mtc1 $zero, $f26 -/* E05C98 80240938 44820000 */ mtc1 $v0, $f0 -/* E05C9C 8024093C 00000000 */ nop -/* E05CA0 80240940 46800021 */ cvt.d.w $f0, $f0 -/* E05CA4 80240944 463A0002 */ mul.d $f0, $f0, $f26 -/* E05CA8 80240948 00000000 */ nop -/* E05CAC 8024094C 4600C0A1 */ cvt.d.s $f2, $f24 -/* E05CB0 80240950 27B40048 */ addiu $s4, $sp, 0x48 -/* E05CB4 80240954 4600E707 */ neg.s $f28, $f28 -/* E05CB8 80240958 46201080 */ add.d $f2, $f2, $f0 -/* E05CBC 8024095C 4406E000 */ mfc1 $a2, $f28 -/* E05CC0 80240960 4407B000 */ mfc1 $a3, $f22 -/* E05CC4 80240964 462010A0 */ cvt.s.d $f2, $f2 -/* E05CC8 80240968 44051000 */ mfc1 $a1, $f2 -/* E05CCC 8024096C 0C019E40 */ jal guTranslateF -/* E05CD0 80240970 0280202D */ daddu $a0, $s4, $zero -/* E05CD4 80240974 4616A032 */ c.eq.s $f20, $f22 -/* E05CD8 80240978 00000000 */ nop -/* E05CDC 8024097C 4501000D */ bc1t .L802409B4 -/* E05CE0 80240980 3C130001 */ lui $s3, 1 -/* E05CE4 80240984 27B00088 */ addiu $s0, $sp, 0x88 -/* E05CE8 80240988 4405A000 */ mfc1 $a1, $f20 -/* E05CEC 8024098C 4406B000 */ mfc1 $a2, $f22 -/* E05CF0 80240990 3C073F80 */ lui $a3, 0x3f80 -/* E05CF4 80240994 0200202D */ daddu $a0, $s0, $zero -/* E05CF8 80240998 0C019EC8 */ jal guRotateF -/* E05CFC 8024099C AFA60010 */ sw $a2, 0x10($sp) -/* E05D00 802409A0 0200202D */ daddu $a0, $s0, $zero -/* E05D04 802409A4 0280282D */ daddu $a1, $s4, $zero -/* E05D08 802409A8 0C019D80 */ jal guMtxCatF -/* E05D0C 802409AC 0280302D */ daddu $a2, $s4, $zero -/* E05D10 802409B0 3C130001 */ lui $s3, 1 -.L802409B4: -/* E05D14 802409B4 36731630 */ ori $s3, $s3, 0x1630 -/* E05D18 802409B8 0280202D */ daddu $a0, $s4, $zero -/* E05D1C 802409BC 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* E05D20 802409C0 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* E05D24 802409C4 3C12800A */ lui $s2, %hi(gDisplayContext) -/* E05D28 802409C8 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* E05D2C 802409CC 96250000 */ lhu $a1, ($s1) -/* E05D30 802409D0 8E420000 */ lw $v0, ($s2) -/* E05D34 802409D4 00052980 */ sll $a1, $a1, 6 -/* E05D38 802409D8 00B32821 */ addu $a1, $a1, $s3 -/* E05D3C 802409DC 0C019D40 */ jal guMtxF2L -/* E05D40 802409E0 00452821 */ addu $a1, $v0, $a1 -/* E05D44 802409E4 3C03DA38 */ lui $v1, 0xda38 -/* E05D48 802409E8 34630002 */ ori $v1, $v1, 2 -/* E05D4C 802409EC 0000202D */ daddu $a0, $zero, $zero -/* E05D50 802409F0 27A50020 */ addiu $a1, $sp, 0x20 -/* E05D54 802409F4 3C060001 */ lui $a2, 1 -/* E05D58 802409F8 34C60040 */ ori $a2, $a2, 0x40 -/* E05D5C 802409FC 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* E05D60 80240A00 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* E05D64 80240A04 0280382D */ daddu $a3, $s4, $zero -/* E05D68 80240A08 8E020000 */ lw $v0, ($s0) -/* E05D6C 80240A0C 96280000 */ lhu $t0, ($s1) -/* E05D70 80240A10 0040482D */ daddu $t1, $v0, $zero -/* E05D74 80240A14 24420008 */ addiu $v0, $v0, 8 -/* E05D78 80240A18 AE020000 */ sw $v0, ($s0) -/* E05D7C 80240A1C 3102FFFF */ andi $v0, $t0, 0xffff -/* E05D80 80240A20 00021180 */ sll $v0, $v0, 6 -/* E05D84 80240A24 00531021 */ addu $v0, $v0, $s3 -/* E05D88 80240A28 AD230000 */ sw $v1, ($t1) -/* E05D8C 80240A2C 8E430000 */ lw $v1, ($s2) -/* E05D90 80240A30 25080001 */ addiu $t0, $t0, 1 -/* E05D94 80240A34 00621821 */ addu $v1, $v1, $v0 -/* E05D98 80240A38 3C028000 */ lui $v0, 0x8000 -/* E05D9C 80240A3C 00621821 */ addu $v1, $v1, $v0 -/* E05DA0 80240A40 AD230004 */ sw $v1, 4($t1) -/* E05DA4 80240A44 93A20042 */ lbu $v0, 0x42($sp) -/* E05DA8 80240A48 8FA3003C */ lw $v1, 0x3c($sp) -/* E05DAC 80240A4C 93A90040 */ lbu $t1, 0x40($sp) -/* E05DB0 80240A50 93AA0041 */ lbu $t2, 0x41($sp) -/* E05DB4 80240A54 44820000 */ mtc1 $v0, $f0 -/* E05DB8 80240A58 00000000 */ nop -/* E05DBC 80240A5C 46800021 */ cvt.d.w $f0, $f0 -/* E05DC0 80240A60 8FA20038 */ lw $v0, 0x38($sp) -/* E05DC4 80240A64 463A0002 */ mul.d $f0, $f0, $f26 -/* E05DC8 80240A68 00000000 */ nop -/* E05DCC 80240A6C A6280000 */ sh $t0, ($s1) -/* E05DD0 80240A70 A7A0002E */ sh $zero, 0x2e($sp) -/* E05DD4 80240A74 A3B50030 */ sb $s5, 0x30($sp) -/* E05DD8 80240A78 AFA30024 */ sw $v1, 0x24($sp) -/* E05DDC 80240A7C A7A90028 */ sh $t1, 0x28($sp) -/* E05DE0 80240A80 A7AA002A */ sh $t2, 0x2a($sp) -/* E05DE4 80240A84 AFA20020 */ sw $v0, 0x20($sp) -/* E05DE8 80240A88 46200007 */ neg.d $f0, $f0 -/* E05DEC 80240A8C 4620010D */ trunc.w.d $f4, $f0 -/* E05DF0 80240A90 44022000 */ mfc1 $v0, $f4 -/* E05DF4 80240A94 0C04EBDC */ jal fold_appendGfx_component -/* E05DF8 80240A98 A7A2002C */ sh $v0, 0x2c($sp) -/* E05DFC 80240A9C 3C04D838 */ lui $a0, 0xd838 -/* E05E00 80240AA0 8E020000 */ lw $v0, ($s0) -/* E05E04 80240AA4 34840002 */ ori $a0, $a0, 2 -/* E05E08 80240AA8 0040182D */ daddu $v1, $v0, $zero -/* E05E0C 80240AAC 24420008 */ addiu $v0, $v0, 8 -/* E05E10 80240AB0 AE020000 */ sw $v0, ($s0) -/* E05E14 80240AB4 24020040 */ addiu $v0, $zero, 0x40 -/* E05E18 80240AB8 AC640000 */ sw $a0, ($v1) -/* E05E1C 80240ABC AC620004 */ sw $v0, 4($v1) -/* E05E20 80240AC0 8FBF00E0 */ lw $ra, 0xe0($sp) -/* E05E24 80240AC4 8FB500DC */ lw $s5, 0xdc($sp) -/* E05E28 80240AC8 8FB400D8 */ lw $s4, 0xd8($sp) -/* E05E2C 80240ACC 8FB300D4 */ lw $s3, 0xd4($sp) -/* E05E30 80240AD0 8FB200D0 */ lw $s2, 0xd0($sp) -/* E05E34 80240AD4 8FB100CC */ lw $s1, 0xcc($sp) -/* E05E38 80240AD8 8FB000C8 */ lw $s0, 0xc8($sp) -/* E05E3C 80240ADC D7BC0108 */ ldc1 $f28, 0x108($sp) -/* E05E40 80240AE0 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* E05E44 80240AE4 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* E05E48 80240AE8 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* E05E4C 80240AEC D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* E05E50 80240AF0 03E00008 */ jr $ra -/* E05E54 80240AF4 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240AF8_E05E58.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240AF8_E05E58.s deleted file mode 100644 index df78bc1b16..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240AF8_E05E58.s +++ /dev/null @@ -1,251 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240AF8_E05E58 -/* E05E58 80240AF8 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* E05E5C 80240AFC AFB000C8 */ sw $s0, 0xc8($sp) -/* E05E60 80240B00 0080802D */ daddu $s0, $a0, $zero -/* E05E64 80240B04 AFB100CC */ sw $s1, 0xcc($sp) -/* E05E68 80240B08 00A0882D */ daddu $s1, $a1, $zero -/* E05E6C 80240B0C AFB600E0 */ sw $s6, 0xe0($sp) -/* E05E70 80240B10 24160040 */ addiu $s6, $zero, 0x40 -/* E05E74 80240B14 AFBF00E4 */ sw $ra, 0xe4($sp) -/* E05E78 80240B18 AFB500DC */ sw $s5, 0xdc($sp) -/* E05E7C 80240B1C AFB400D8 */ sw $s4, 0xd8($sp) -/* E05E80 80240B20 AFB300D4 */ sw $s3, 0xd4($sp) -/* E05E84 80240B24 AFB200D0 */ sw $s2, 0xd0($sp) -/* E05E88 80240B28 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* E05E8C 80240B2C F7BA0100 */ sdc1 $f26, 0x100($sp) -/* E05E90 80240B30 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* E05E94 80240B34 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* E05E98 80240B38 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* E05E9C 80240B3C C6200010 */ lwc1 $f0, 0x10($s1) -/* E05EA0 80240B40 46800020 */ cvt.s.w $f0, $f0 -/* E05EA4 80240B44 8E020068 */ lw $v0, 0x68($s0) -/* E05EA8 80240B48 8E030014 */ lw $v1, 0x14($s0) -/* E05EAC 80240B4C 44060000 */ mfc1 $a2, $f0 -/* E05EB0 80240B50 8E07001C */ lw $a3, 0x1c($s0) -/* E05EB4 80240B54 00431021 */ addu $v0, $v0, $v1 -/* E05EB8 80240B58 2442FFF0 */ addiu $v0, $v0, -0x10 -/* E05EBC 80240B5C 44822000 */ mtc1 $v0, $f4 -/* E05EC0 80240B60 00000000 */ nop -/* E05EC4 80240B64 46802120 */ cvt.s.w $f4, $f4 -/* E05EC8 80240B68 8E03006C */ lw $v1, 0x6c($s0) -/* E05ECC 80240B6C 44052000 */ mfc1 $a1, $f4 -/* E05ED0 80240B70 AFA70010 */ sw $a3, 0x10($sp) -/* E05ED4 80240B74 8E270018 */ lw $a3, 0x18($s1) -/* E05ED8 80240B78 2463003C */ addiu $v1, $v1, 0x3c -/* E05EDC 80240B7C 4483A000 */ mtc1 $v1, $f20 -/* E05EE0 80240B80 00000000 */ nop -/* E05EE4 80240B84 4680A520 */ cvt.s.w $f20, $f20 -/* E05EE8 80240B88 0C00A8ED */ jal update_lerp -/* E05EEC 80240B8C 2404000A */ addiu $a0, $zero, 0xa -/* E05EF0 80240B90 C6220014 */ lwc1 $f2, 0x14($s1) -/* E05EF4 80240B94 468010A0 */ cvt.s.w $f2, $f2 -/* E05EF8 80240B98 4405A000 */ mfc1 $a1, $f20 -/* E05EFC 80240B9C 44061000 */ mfc1 $a2, $f2 -/* E05F00 80240BA0 8E02001C */ lw $v0, 0x1c($s0) -/* E05F04 80240BA4 24040005 */ addiu $a0, $zero, 5 -/* E05F08 80240BA8 AFA20010 */ sw $v0, 0x10($sp) -/* E05F0C 80240BAC 8E270018 */ lw $a3, 0x18($s1) -/* E05F10 80240BB0 0C00A8ED */ jal update_lerp -/* E05F14 80240BB4 46000506 */ mov.s $f20, $f0 -/* E05F18 80240BB8 27B50038 */ addiu $s5, $sp, 0x38 -/* E05F1C 80240BBC 8E220018 */ lw $v0, 0x18($s1) -/* E05F20 80240BC0 8E03001C */ lw $v1, 0x1c($s0) -/* E05F24 80240BC4 14430004 */ bne $v0, $v1, .L80240BD8 -/* E05F28 80240BC8 46000706 */ mov.s $f28, $f0 -/* E05F2C 80240BCC 4480B000 */ mtc1 $zero, $f22 -/* E05F30 80240BD0 080902FD */ j .L80240BF4 -/* E05F34 80240BD4 00000000 */ nop -.L80240BD8: -/* E05F38 80240BD8 00621823 */ subu $v1, $v1, $v0 -/* E05F3C 80240BDC 00031080 */ sll $v0, $v1, 2 -/* E05F40 80240BE0 00431021 */ addu $v0, $v0, $v1 -/* E05F44 80240BE4 00021040 */ sll $v0, $v0, 1 -/* E05F48 80240BE8 4482B000 */ mtc1 $v0, $f22 -/* E05F4C 80240BEC 00000000 */ nop -/* E05F50 80240BF0 4680B5A0 */ cvt.s.w $f22, $f22 -.L80240BF4: -/* E05F54 80240BF4 8E02001C */ lw $v0, 0x1c($s0) -/* E05F58 80240BF8 3C054000 */ lui $a1, 0x4000 -/* E05F5C 80240BFC 3C063F80 */ lui $a2, 0x3f80 -/* E05F60 80240C00 AFA20010 */ sw $v0, 0x10($sp) -/* E05F64 80240C04 8E270018 */ lw $a3, 0x18($s1) -/* E05F68 80240C08 0C00A8ED */ jal update_lerp -/* E05F6C 80240C0C 24040004 */ addiu $a0, $zero, 4 -/* E05F70 80240C10 8E220018 */ lw $v0, 0x18($s1) -/* E05F74 80240C14 8E04001C */ lw $a0, 0x1c($s0) -/* E05F78 80240C18 1444000C */ bne $v0, $a0, .L80240C4C -/* E05F7C 80240C1C 46000686 */ mov.s $f26, $f0 -/* E05F80 80240C20 0000202D */ daddu $a0, $zero, $zero -/* E05F84 80240C24 0080282D */ daddu $a1, $a0, $zero -/* E05F88 80240C28 0080302D */ daddu $a2, $a0, $zero -/* E05F8C 80240C2C 0080382D */ daddu $a3, $a0, $zero -/* E05F90 80240C30 AFA00010 */ sw $zero, 0x10($sp) -/* E05F94 80240C34 AFA00014 */ sw $zero, 0x14($sp) -/* E05F98 80240C38 0C04EAA7 */ jal fold_update -/* E05F9C 80240C3C AFA00018 */ sw $zero, 0x18($sp) -/* E05FA0 80240C40 3C020001 */ lui $v0, 1 -/* E05FA4 80240C44 0809032A */ j .L80240CA8 -/* E05FA8 80240C48 02C2B025 */ or $s6, $s6, $v0 -.L80240C4C: -/* E05FAC 80240C4C 3C054180 */ lui $a1, 0x4180 -/* E05FB0 80240C50 3C064396 */ lui $a2, 0x4396 -/* E05FB4 80240C54 AFA40010 */ sw $a0, 0x10($sp) -/* E05FB8 80240C58 8E270018 */ lw $a3, 0x18($s1) -/* E05FBC 80240C5C 0C00A8ED */ jal update_lerp -/* E05FC0 80240C60 0000202D */ daddu $a0, $zero, $zero -/* E05FC4 80240C64 3C01437F */ lui $at, 0x437f -/* E05FC8 80240C68 44811000 */ mtc1 $at, $f2 -/* E05FCC 80240C6C 00000000 */ nop -/* E05FD0 80240C70 4600103C */ c.lt.s $f2, $f0 -/* E05FD4 80240C74 00000000 */ nop -/* E05FD8 80240C78 45030001 */ bc1tl .L80240C80 -/* E05FDC 80240C7C 46001006 */ mov.s $f0, $f2 -.L80240C80: -/* E05FE0 80240C80 4600010D */ trunc.w.s $f4, $f0 -/* E05FE4 80240C84 E7A40014 */ swc1 $f4, 0x14($sp) -/* E05FE8 80240C88 0000202D */ daddu $a0, $zero, $zero -/* E05FEC 80240C8C 24050007 */ addiu $a1, $zero, 7 -/* E05FF0 80240C90 240600FF */ addiu $a2, $zero, 0xff -/* E05FF4 80240C94 00C0382D */ daddu $a3, $a2, $zero -/* E05FF8 80240C98 00C0102D */ daddu $v0, $a2, $zero -/* E05FFC 80240C9C AFA20010 */ sw $v0, 0x10($sp) -/* E06000 80240CA0 0C04EAA7 */ jal fold_update -/* E06004 80240CA4 AFA00018 */ sw $zero, 0x18($sp) -.L80240CA8: -/* E06008 80240CA8 AFB50010 */ sw $s5, 0x10($sp) -/* E0600C 80240CAC 8E240004 */ lw $a0, 4($s1) -/* E06010 80240CB0 8E250008 */ lw $a1, 8($s1) -/* E06014 80240CB4 8E260000 */ lw $a2, ($s1) -/* E06018 80240CB8 8E27000C */ lw $a3, 0xc($s1) -/* E0601C 80240CBC 0C04BA38 */ jal msg_get_glyph -/* E06020 80240CC0 3C140001 */ lui $s4, 1 -/* E06024 80240CC4 92A2000A */ lbu $v0, 0xa($s5) -/* E06028 80240CC8 3C013FE0 */ lui $at, 0x3fe0 -/* E0602C 80240CCC 4481C800 */ mtc1 $at, $f25 -/* E06030 80240CD0 4480C000 */ mtc1 $zero, $f24 -/* E06034 80240CD4 44820000 */ mtc1 $v0, $f0 -/* E06038 80240CD8 00000000 */ nop -/* E0603C 80240CDC 46800021 */ cvt.d.w $f0, $f0 -/* E06040 80240CE0 46380002 */ mul.d $f0, $f0, $f24 -/* E06044 80240CE4 00000000 */ nop -/* E06048 80240CE8 36941630 */ ori $s4, $s4, 0x1630 -/* E0604C 80240CEC 4600A0A1 */ cvt.d.s $f2, $f20 -/* E06050 80240CF0 27B10048 */ addiu $s1, $sp, 0x48 -/* E06054 80240CF4 4600E707 */ neg.s $f28, $f28 -/* E06058 80240CF8 4480A000 */ mtc1 $zero, $f20 -/* E0605C 80240CFC 46201080 */ add.d $f2, $f2, $f0 -/* E06060 80240D00 4406E000 */ mfc1 $a2, $f28 -/* E06064 80240D04 4407A000 */ mfc1 $a3, $f20 -/* E06068 80240D08 462010A0 */ cvt.s.d $f2, $f2 -/* E0606C 80240D0C 44051000 */ mfc1 $a1, $f2 -/* E06070 80240D10 0C019E40 */ jal guTranslateF -/* E06074 80240D14 0220202D */ daddu $a0, $s1, $zero -/* E06078 80240D18 27B00088 */ addiu $s0, $sp, 0x88 -/* E0607C 80240D1C 4405B000 */ mfc1 $a1, $f22 -/* E06080 80240D20 3C013F80 */ lui $at, 0x3f80 -/* E06084 80240D24 4481B000 */ mtc1 $at, $f22 -/* E06088 80240D28 4406A000 */ mfc1 $a2, $f20 -/* E0608C 80240D2C 3C013E4C */ lui $at, 0x3e4c -/* E06090 80240D30 3421CCCD */ ori $at, $at, 0xcccd -/* E06094 80240D34 44810000 */ mtc1 $at, $f0 -/* E06098 80240D38 4407B000 */ mfc1 $a3, $f22 -/* E0609C 80240D3C 0200202D */ daddu $a0, $s0, $zero -/* E060A0 80240D40 0C019EC8 */ jal guRotateF -/* E060A4 80240D44 E7A00010 */ swc1 $f0, 0x10($sp) -/* E060A8 80240D48 0200202D */ daddu $a0, $s0, $zero -/* E060AC 80240D4C 0220282D */ daddu $a1, $s1, $zero -/* E060B0 80240D50 0C019D80 */ jal guMtxCatF -/* E060B4 80240D54 0220302D */ daddu $a2, $s1, $zero -/* E060B8 80240D58 0200202D */ daddu $a0, $s0, $zero -/* E060BC 80240D5C 4405D000 */ mfc1 $a1, $f26 -/* E060C0 80240D60 4407B000 */ mfc1 $a3, $f22 -/* E060C4 80240D64 0C019DF0 */ jal guScaleF -/* E060C8 80240D68 00A0302D */ daddu $a2, $a1, $zero -/* E060CC 80240D6C 0200202D */ daddu $a0, $s0, $zero -/* E060D0 80240D70 0220282D */ daddu $a1, $s1, $zero -/* E060D4 80240D74 0C019D80 */ jal guMtxCatF -/* E060D8 80240D78 0220302D */ daddu $a2, $s1, $zero -/* E060DC 80240D7C 0220202D */ daddu $a0, $s1, $zero -/* E060E0 80240D80 3C108007 */ lui $s0, %hi(gMatrixListPos) -/* E060E4 80240D84 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos) -/* E060E8 80240D88 3C13800A */ lui $s3, %hi(gDisplayContext) -/* E060EC 80240D8C 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* E060F0 80240D90 96050000 */ lhu $a1, ($s0) -/* E060F4 80240D94 8E620000 */ lw $v0, ($s3) -/* E060F8 80240D98 00052980 */ sll $a1, $a1, 6 -/* E060FC 80240D9C 00B42821 */ addu $a1, $a1, $s4 -/* E06100 80240DA0 0C019D40 */ jal guMtxF2L -/* E06104 80240DA4 00452821 */ addu $a1, $v0, $a1 -/* E06108 80240DA8 3C02DA38 */ lui $v0, 0xda38 -/* E0610C 80240DAC 34420002 */ ori $v0, $v0, 2 -/* E06110 80240DB0 3C12800A */ lui $s2, %hi(gMasterGfxPos) -/* E06114 80240DB4 2652A66C */ addiu $s2, $s2, %lo(gMasterGfxPos) -/* E06118 80240DB8 8E440000 */ lw $a0, ($s2) -/* E0611C 80240DBC 96050000 */ lhu $a1, ($s0) -/* E06120 80240DC0 0080302D */ daddu $a2, $a0, $zero -/* E06124 80240DC4 ACC20000 */ sw $v0, ($a2) -/* E06128 80240DC8 30A2FFFF */ andi $v0, $a1, 0xffff -/* E0612C 80240DCC 00021180 */ sll $v0, $v0, 6 -/* E06130 80240DD0 8E630000 */ lw $v1, ($s3) -/* E06134 80240DD4 00541021 */ addu $v0, $v0, $s4 -/* E06138 80240DD8 00621821 */ addu $v1, $v1, $v0 -/* E0613C 80240DDC 3C028000 */ lui $v0, 0x8000 -/* E06140 80240DE0 00621821 */ addu $v1, $v1, $v0 -/* E06144 80240DE4 ACC30004 */ sw $v1, 4($a2) -/* E06148 80240DE8 8EA20000 */ lw $v0, ($s5) -/* E0614C 80240DEC 24840008 */ addiu $a0, $a0, 8 -/* E06150 80240DF0 AE440000 */ sw $a0, ($s2) -/* E06154 80240DF4 AFA20020 */ sw $v0, 0x20($sp) -/* E06158 80240DF8 8EA20004 */ lw $v0, 4($s5) -/* E0615C 80240DFC 24A50001 */ addiu $a1, $a1, 1 -/* E06160 80240E00 A6050000 */ sh $a1, ($s0) -/* E06164 80240E04 AFA20024 */ sw $v0, 0x24($sp) -/* E06168 80240E08 92A20008 */ lbu $v0, 8($s5) -/* E0616C 80240E0C A7A20028 */ sh $v0, 0x28($sp) -/* E06170 80240E10 92A20009 */ lbu $v0, 9($s5) -/* E06174 80240E14 A7A2002A */ sh $v0, 0x2a($sp) -/* E06178 80240E18 92A2000A */ lbu $v0, 0xa($s5) -/* E0617C 80240E1C 44820000 */ mtc1 $v0, $f0 -/* E06180 80240E20 00000000 */ nop -/* E06184 80240E24 46800021 */ cvt.d.w $f0, $f0 -/* E06188 80240E28 46380002 */ mul.d $f0, $f0, $f24 -/* E0618C 80240E2C 00000000 */ nop -/* E06190 80240E30 0220382D */ daddu $a3, $s1, $zero -/* E06194 80240E34 0000202D */ daddu $a0, $zero, $zero -/* E06198 80240E38 02C0302D */ daddu $a2, $s6, $zero -/* E0619C 80240E3C 27A50020 */ addiu $a1, $sp, 0x20 -/* E061A0 80240E40 A7A0002E */ sh $zero, 0x2e($sp) -/* E061A4 80240E44 240200FF */ addiu $v0, $zero, 0xff -/* E061A8 80240E48 A3A20030 */ sb $v0, 0x30($sp) -/* E061AC 80240E4C 46200007 */ neg.d $f0, $f0 -/* E061B0 80240E50 4620010D */ trunc.w.d $f4, $f0 -/* E061B4 80240E54 44022000 */ mfc1 $v0, $f4 -/* E061B8 80240E58 0C04EBDC */ jal fold_appendGfx_component -/* E061BC 80240E5C A7A2002C */ sh $v0, 0x2c($sp) -/* E061C0 80240E60 3C04D838 */ lui $a0, 0xd838 -/* E061C4 80240E64 8E420000 */ lw $v0, ($s2) -/* E061C8 80240E68 34840002 */ ori $a0, $a0, 2 -/* E061CC 80240E6C 0040182D */ daddu $v1, $v0, $zero -/* E061D0 80240E70 24420008 */ addiu $v0, $v0, 8 -/* E061D4 80240E74 AE420000 */ sw $v0, ($s2) -/* E061D8 80240E78 24020040 */ addiu $v0, $zero, 0x40 -/* E061DC 80240E7C AC640000 */ sw $a0, ($v1) -/* E061E0 80240E80 AC620004 */ sw $v0, 4($v1) -/* E061E4 80240E84 8FBF00E4 */ lw $ra, 0xe4($sp) -/* E061E8 80240E88 8FB600E0 */ lw $s6, 0xe0($sp) -/* E061EC 80240E8C 8FB500DC */ lw $s5, 0xdc($sp) -/* E061F0 80240E90 8FB400D8 */ lw $s4, 0xd8($sp) -/* E061F4 80240E94 8FB300D4 */ lw $s3, 0xd4($sp) -/* E061F8 80240E98 8FB200D0 */ lw $s2, 0xd0($sp) -/* E061FC 80240E9C 8FB100CC */ lw $s1, 0xcc($sp) -/* E06200 80240EA0 8FB000C8 */ lw $s0, 0xc8($sp) -/* E06204 80240EA4 D7BC0108 */ ldc1 $f28, 0x108($sp) -/* E06208 80240EA8 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* E0620C 80240EAC D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* E06210 80240EB0 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* E06214 80240EB4 D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* E06218 80240EB8 03E00008 */ jr $ra -/* E0621C 80240EBC 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240EC0_E06220.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240EC0_E06220.s deleted file mode 100644 index 1e93308293..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240EC0_E06220.s +++ /dev/null @@ -1,85 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240EC0_E06220 -/* E06220 80240EC0 27BDFF90 */ addiu $sp, $sp, -0x70 -/* E06224 80240EC4 AFB00048 */ sw $s0, 0x48($sp) -/* E06228 80240EC8 00A0802D */ daddu $s0, $a1, $zero -/* E0622C 80240ECC AFBF0050 */ sw $ra, 0x50($sp) -/* E06230 80240ED0 AFB1004C */ sw $s1, 0x4c($sp) -/* E06234 80240ED4 F7B80068 */ sdc1 $f24, 0x68($sp) -/* E06238 80240ED8 F7B60060 */ sdc1 $f22, 0x60($sp) -/* E0623C 80240EDC F7B40058 */ sdc1 $f20, 0x58($sp) -/* E06240 80240EE0 8C82001C */ lw $v0, 0x1c($a0) -/* E06244 80240EE4 0000202D */ daddu $a0, $zero, $zero -/* E06248 80240EE8 0000282D */ daddu $a1, $zero, $zero -/* E0624C 80240EEC C6140010 */ lwc1 $f20, 0x10($s0) -/* E06250 80240EF0 4680A520 */ cvt.s.w $f20, $f20 -/* E06254 80240EF4 3C06437F */ lui $a2, 0x437f -/* E06258 80240EF8 C6160014 */ lwc1 $f22, 0x14($s0) -/* E0625C 80240EFC 4680B5A0 */ cvt.s.w $f22, $f22 -/* E06260 80240F00 AFA20010 */ sw $v0, 0x10($sp) -/* E06264 80240F04 8E070018 */ lw $a3, 0x18($s0) -/* E06268 80240F08 0C00A8ED */ jal update_lerp -/* E0626C 80240F0C 27B10038 */ addiu $s1, $sp, 0x38 -/* E06270 80240F10 AFB10010 */ sw $s1, 0x10($sp) -/* E06274 80240F14 8E040004 */ lw $a0, 4($s0) -/* E06278 80240F18 8E050008 */ lw $a1, 8($s0) -/* E0627C 80240F1C 8E060000 */ lw $a2, ($s0) -/* E06280 80240F20 8E07000C */ lw $a3, 0xc($s0) -/* E06284 80240F24 0C04BA38 */ jal msg_get_glyph -/* E06288 80240F28 46000606 */ mov.s $f24, $f0 -/* E0628C 80240F2C 4600A08D */ trunc.w.s $f2, $f20 -/* E06290 80240F30 44021000 */ mfc1 $v0, $f2 -/* E06294 80240F34 93A50040 */ lbu $a1, 0x40($sp) -/* E06298 80240F38 93A60041 */ lbu $a2, 0x41($sp) -/* E0629C 80240F3C 00021400 */ sll $v0, $v0, 0x10 -/* E062A0 80240F40 AFA00010 */ sw $zero, 0x10($sp) -/* E062A4 80240F44 8FA3003C */ lw $v1, 0x3c($sp) -/* E062A8 80240F48 00021403 */ sra $v0, $v0, 0x10 -/* E062AC 80240F4C AFA20018 */ sw $v0, 0x18($sp) -/* E062B0 80240F50 4600B08D */ trunc.w.s $f2, $f22 -/* E062B4 80240F54 44021000 */ mfc1 $v0, $f2 -/* E062B8 80240F58 00000000 */ nop -/* E062BC 80240F5C 00021400 */ sll $v0, $v0, 0x10 -/* E062C0 80240F60 3C014F00 */ lui $at, 0x4f00 -/* E062C4 80240F64 44810000 */ mtc1 $at, $f0 -/* E062C8 80240F68 00021403 */ sra $v0, $v0, 0x10 -/* E062CC 80240F6C AFA2001C */ sw $v0, 0x1c($sp) -/* E062D0 80240F70 2402000A */ addiu $v0, $zero, 0xa -/* E062D4 80240F74 AFA20020 */ sw $v0, 0x20($sp) -/* E062D8 80240F78 24020014 */ addiu $v0, $zero, 0x14 -/* E062DC 80240F7C AFA20024 */ sw $v0, 0x24($sp) -/* E062E0 80240F80 2402012C */ addiu $v0, $zero, 0x12c -/* E062E4 80240F84 AFA20028 */ sw $v0, 0x28($sp) -/* E062E8 80240F88 240200C8 */ addiu $v0, $zero, 0xc8 -/* E062EC 80240F8C AFA2002C */ sw $v0, 0x2c($sp) -/* E062F0 80240F90 4618003E */ c.le.s $f0, $f24 -/* E062F4 80240F94 00000000 */ nop -/* E062F8 80240F98 45010005 */ bc1t .L80240FB0 -/* E062FC 80240F9C AFA30014 */ sw $v1, 0x14($sp) -/* E06300 80240FA0 4600C08D */ trunc.w.s $f2, $f24 -/* E06304 80240FA4 44031000 */ mfc1 $v1, $f2 -/* E06308 80240FA8 080903F3 */ j .L80240FCC -/* E0630C 80240FAC 306200FF */ andi $v0, $v1, 0xff -.L80240FB0: -/* E06310 80240FB0 4600C001 */ sub.s $f0, $f24, $f0 -/* E06314 80240FB4 3C028000 */ lui $v0, 0x8000 -/* E06318 80240FB8 4600008D */ trunc.w.s $f2, $f0 -/* E0631C 80240FBC 44031000 */ mfc1 $v1, $f2 -/* E06320 80240FC0 00000000 */ nop -/* E06324 80240FC4 00621825 */ or $v1, $v1, $v0 -/* E06328 80240FC8 306200FF */ andi $v0, $v1, 0xff -.L80240FCC: -/* E0632C 80240FCC AFA20030 */ sw $v0, 0x30($sp) -/* E06330 80240FD0 8E240000 */ lw $a0, ($s1) -/* E06334 80240FD4 0C04BA68 */ jal draw_ci_image_with_clipping -/* E06338 80240FD8 24070002 */ addiu $a3, $zero, 2 -/* E0633C 80240FDC 8FBF0050 */ lw $ra, 0x50($sp) -/* E06340 80240FE0 8FB1004C */ lw $s1, 0x4c($sp) -/* E06344 80240FE4 8FB00048 */ lw $s0, 0x48($sp) -/* E06348 80240FE8 D7B80068 */ ldc1 $f24, 0x68($sp) -/* E0634C 80240FEC D7B60060 */ ldc1 $f22, 0x60($sp) -/* E06350 80240FF0 D7B40058 */ ldc1 $f20, 0x58($sp) -/* E06354 80240FF4 03E00008 */ jr $ra -/* E06358 80240FF8 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240FFC_E0635C.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240FFC_E0635C.s deleted file mode 100644 index 4cc265dd90..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80240FFC_E0635C.s +++ /dev/null @@ -1,124 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240FFC_E0635C -/* E0635C 80240FFC 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* E06360 80241000 AFB00088 */ sw $s0, 0x88($sp) -/* E06364 80241004 00A0802D */ daddu $s0, $a1, $zero -/* E06368 80241008 0000202D */ daddu $a0, $zero, $zero -/* E0636C 8024100C 0080282D */ daddu $a1, $a0, $zero -/* E06370 80241010 0080302D */ daddu $a2, $a0, $zero -/* E06374 80241014 0080382D */ daddu $a3, $a0, $zero -/* E06378 80241018 AFBF00A0 */ sw $ra, 0xa0($sp) -/* E0637C 8024101C AFB5009C */ sw $s5, 0x9c($sp) -/* E06380 80241020 AFB40098 */ sw $s4, 0x98($sp) -/* E06384 80241024 AFB30094 */ sw $s3, 0x94($sp) -/* E06388 80241028 AFB20090 */ sw $s2, 0x90($sp) -/* E0638C 8024102C AFB1008C */ sw $s1, 0x8c($sp) -/* E06390 80241030 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* E06394 80241034 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* E06398 80241038 C6140010 */ lwc1 $f20, 0x10($s0) -/* E0639C 8024103C 4680A520 */ cvt.s.w $f20, $f20 -/* E063A0 80241040 C6160014 */ lwc1 $f22, 0x14($s0) -/* E063A4 80241044 4680B5A0 */ cvt.s.w $f22, $f22 -/* E063A8 80241048 AFA00010 */ sw $zero, 0x10($sp) -/* E063AC 8024104C AFA00014 */ sw $zero, 0x14($sp) -/* E063B0 80241050 0C04EAA7 */ jal fold_update -/* E063B4 80241054 AFA00018 */ sw $zero, 0x18($sp) -/* E063B8 80241058 27B40048 */ addiu $s4, $sp, 0x48 -/* E063BC 8024105C 0280202D */ daddu $a0, $s4, $zero -/* E063C0 80241060 0000382D */ daddu $a3, $zero, $zero -/* E063C4 80241064 3C150001 */ lui $s5, 1 -/* E063C8 80241068 4600B587 */ neg.s $f22, $f22 -/* E063CC 8024106C 4405A000 */ mfc1 $a1, $f20 -/* E063D0 80241070 4406B000 */ mfc1 $a2, $f22 -/* E063D4 80241074 0C019E40 */ jal guTranslateF -/* E063D8 80241078 36B51630 */ ori $s5, $s5, 0x1630 -/* E063DC 8024107C 0280202D */ daddu $a0, $s4, $zero -/* E063E0 80241080 3C118007 */ lui $s1, %hi(gMatrixListPos) -/* E063E4 80241084 263141F0 */ addiu $s1, $s1, %lo(gMatrixListPos) -/* E063E8 80241088 3C12800A */ lui $s2, %hi(gDisplayContext) -/* E063EC 8024108C 2652A674 */ addiu $s2, $s2, %lo(gDisplayContext) -/* E063F0 80241090 96250000 */ lhu $a1, ($s1) -/* E063F4 80241094 8E420000 */ lw $v0, ($s2) -/* E063F8 80241098 00052980 */ sll $a1, $a1, 6 -/* E063FC 8024109C 00B52821 */ addu $a1, $a1, $s5 -/* E06400 802410A0 0C019D40 */ jal guMtxF2L -/* E06404 802410A4 00452821 */ addu $a1, $v0, $a1 -/* E06408 802410A8 3C02DA38 */ lui $v0, 0xda38 -/* E0640C 802410AC 34420002 */ ori $v0, $v0, 2 -/* E06410 802410B0 3C13800A */ lui $s3, %hi(gMasterGfxPos) -/* E06414 802410B4 2673A66C */ addiu $s3, $s3, %lo(gMasterGfxPos) -/* E06418 802410B8 8E680000 */ lw $t0, ($s3) -/* E0641C 802410BC 96290000 */ lhu $t1, ($s1) -/* E06420 802410C0 0100202D */ daddu $a0, $t0, $zero -/* E06424 802410C4 AC820000 */ sw $v0, ($a0) -/* E06428 802410C8 3122FFFF */ andi $v0, $t1, 0xffff -/* E0642C 802410CC 00021180 */ sll $v0, $v0, 6 -/* E06430 802410D0 00551021 */ addu $v0, $v0, $s5 -/* E06434 802410D4 8E430000 */ lw $v1, ($s2) -/* E06438 802410D8 25080008 */ addiu $t0, $t0, 8 -/* E0643C 802410DC 00621821 */ addu $v1, $v1, $v0 -/* E06440 802410E0 3C028000 */ lui $v0, 0x8000 -/* E06444 802410E4 00621821 */ addu $v1, $v1, $v0 -/* E06448 802410E8 27A20038 */ addiu $v0, $sp, 0x38 -/* E0644C 802410EC AC830004 */ sw $v1, 4($a0) -/* E06450 802410F0 AFA20010 */ sw $v0, 0x10($sp) -/* E06454 802410F4 8E040004 */ lw $a0, 4($s0) -/* E06458 802410F8 8E050008 */ lw $a1, 8($s0) -/* E0645C 802410FC 8E060000 */ lw $a2, ($s0) -/* E06460 80241100 8E07000C */ lw $a3, 0xc($s0) -/* E06464 80241104 25290001 */ addiu $t1, $t1, 1 -/* E06468 80241108 AE680000 */ sw $t0, ($s3) -/* E0646C 8024110C 0C04BA38 */ jal msg_get_glyph -/* E06470 80241110 A6290000 */ sh $t1, ($s1) -/* E06474 80241114 0000202D */ daddu $a0, $zero, $zero -/* E06478 80241118 27A50020 */ addiu $a1, $sp, 0x20 -/* E0647C 8024111C 3C060005 */ lui $a2, 5 -/* E06480 80241120 34C60040 */ ori $a2, $a2, 0x40 -/* E06484 80241124 0280382D */ daddu $a3, $s4, $zero -/* E06488 80241128 93A20042 */ lbu $v0, 0x42($sp) -/* E0648C 8024112C 3C013FE0 */ lui $at, 0x3fe0 -/* E06490 80241130 44810800 */ mtc1 $at, $f1 -/* E06494 80241134 44800000 */ mtc1 $zero, $f0 -/* E06498 80241138 8FA30038 */ lw $v1, 0x38($sp) -/* E0649C 8024113C 8FA8003C */ lw $t0, 0x3c($sp) -/* E064A0 80241140 93A90040 */ lbu $t1, 0x40($sp) -/* E064A4 80241144 93AA0041 */ lbu $t2, 0x41($sp) -/* E064A8 80241148 44821000 */ mtc1 $v0, $f2 -/* E064AC 8024114C 00000000 */ nop -/* E064B0 80241150 468010A1 */ cvt.d.w $f2, $f2 -/* E064B4 80241154 46201082 */ mul.d $f2, $f2, $f0 -/* E064B8 80241158 00000000 */ nop -/* E064BC 8024115C A7A0002E */ sh $zero, 0x2e($sp) -/* E064C0 80241160 240200FF */ addiu $v0, $zero, 0xff -/* E064C4 80241164 A3A20030 */ sb $v0, 0x30($sp) -/* E064C8 80241168 AFA30020 */ sw $v1, 0x20($sp) -/* E064CC 8024116C AFA80024 */ sw $t0, 0x24($sp) -/* E064D0 80241170 A7A90028 */ sh $t1, 0x28($sp) -/* E064D4 80241174 A7AA002A */ sh $t2, 0x2a($sp) -/* E064D8 80241178 46201087 */ neg.d $f2, $f2 -/* E064DC 8024117C 4620110D */ trunc.w.d $f4, $f2 -/* E064E0 80241180 44022000 */ mfc1 $v0, $f4 -/* E064E4 80241184 0C04EBDC */ jal fold_appendGfx_component -/* E064E8 80241188 A7A2002C */ sh $v0, 0x2c($sp) -/* E064EC 8024118C 3C04D838 */ lui $a0, 0xd838 -/* E064F0 80241190 8E620000 */ lw $v0, ($s3) -/* E064F4 80241194 34840002 */ ori $a0, $a0, 2 -/* E064F8 80241198 0040182D */ daddu $v1, $v0, $zero -/* E064FC 8024119C 24420008 */ addiu $v0, $v0, 8 -/* E06500 802411A0 AE620000 */ sw $v0, ($s3) -/* E06504 802411A4 24020040 */ addiu $v0, $zero, 0x40 -/* E06508 802411A8 AC640000 */ sw $a0, ($v1) -/* E0650C 802411AC AC620004 */ sw $v0, 4($v1) -/* E06510 802411B0 8FBF00A0 */ lw $ra, 0xa0($sp) -/* E06514 802411B4 8FB5009C */ lw $s5, 0x9c($sp) -/* E06518 802411B8 8FB40098 */ lw $s4, 0x98($sp) -/* E0651C 802411BC 8FB30094 */ lw $s3, 0x94($sp) -/* E06520 802411C0 8FB20090 */ lw $s2, 0x90($sp) -/* E06524 802411C4 8FB1008C */ lw $s1, 0x8c($sp) -/* E06528 802411C8 8FB00088 */ lw $s0, 0x88($sp) -/* E0652C 802411CC D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* E06530 802411D0 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* E06534 802411D4 03E00008 */ jr $ra -/* E06538 802411D8 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802411DC_E0653C.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802411DC_E0653C.s deleted file mode 100644 index 1badc6e986..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802411DC_E0653C.s +++ /dev/null @@ -1,54 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802411DC_E0653C -/* E0653C 802411DC 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* E06540 802411E0 00A0102D */ daddu $v0, $a1, $zero -/* E06544 802411E4 27A30038 */ addiu $v1, $sp, 0x38 -/* E06548 802411E8 AFBF0048 */ sw $ra, 0x48($sp) -/* E0654C 802411EC F7B60058 */ sdc1 $f22, 0x58($sp) -/* E06550 802411F0 F7B40050 */ sdc1 $f20, 0x50($sp) -/* E06554 802411F4 C4540010 */ lwc1 $f20, 0x10($v0) -/* E06558 802411F8 4680A520 */ cvt.s.w $f20, $f20 -/* E0655C 802411FC C4560014 */ lwc1 $f22, 0x14($v0) -/* E06560 80241200 4680B5A0 */ cvt.s.w $f22, $f22 -/* E06564 80241204 AFA30010 */ sw $v1, 0x10($sp) -/* E06568 80241208 8C440004 */ lw $a0, 4($v0) -/* E0656C 8024120C 8C450008 */ lw $a1, 8($v0) -/* E06570 80241210 8C460000 */ lw $a2, ($v0) -/* E06574 80241214 0C04BA38 */ jal msg_get_glyph -/* E06578 80241218 8C47000C */ lw $a3, 0xc($v0) -/* E0657C 8024121C 4600A00D */ trunc.w.s $f0, $f20 -/* E06580 80241220 44020000 */ mfc1 $v0, $f0 -/* E06584 80241224 93A50040 */ lbu $a1, 0x40($sp) -/* E06588 80241228 93A60041 */ lbu $a2, 0x41($sp) -/* E0658C 8024122C 00021400 */ sll $v0, $v0, 0x10 -/* E06590 80241230 AFA00010 */ sw $zero, 0x10($sp) -/* E06594 80241234 8FA3003C */ lw $v1, 0x3c($sp) -/* E06598 80241238 00021403 */ sra $v0, $v0, 0x10 -/* E0659C 8024123C AFA20018 */ sw $v0, 0x18($sp) -/* E065A0 80241240 4600B00D */ trunc.w.s $f0, $f22 -/* E065A4 80241244 44020000 */ mfc1 $v0, $f0 -/* E065A8 80241248 00000000 */ nop -/* E065AC 8024124C 00021400 */ sll $v0, $v0, 0x10 -/* E065B0 80241250 00021403 */ sra $v0, $v0, 0x10 -/* E065B4 80241254 AFA2001C */ sw $v0, 0x1c($sp) -/* E065B8 80241258 2402000A */ addiu $v0, $zero, 0xa -/* E065BC 8024125C AFA20020 */ sw $v0, 0x20($sp) -/* E065C0 80241260 24020014 */ addiu $v0, $zero, 0x14 -/* E065C4 80241264 AFA20024 */ sw $v0, 0x24($sp) -/* E065C8 80241268 2402012C */ addiu $v0, $zero, 0x12c -/* E065CC 8024126C AFA20028 */ sw $v0, 0x28($sp) -/* E065D0 80241270 240200C8 */ addiu $v0, $zero, 0xc8 -/* E065D4 80241274 AFA2002C */ sw $v0, 0x2c($sp) -/* E065D8 80241278 240200FF */ addiu $v0, $zero, 0xff -/* E065DC 8024127C AFA20030 */ sw $v0, 0x30($sp) -/* E065E0 80241280 AFA30014 */ sw $v1, 0x14($sp) -/* E065E4 80241284 8FA40038 */ lw $a0, 0x38($sp) -/* E065E8 80241288 0C04BA68 */ jal draw_ci_image_with_clipping -/* E065EC 8024128C 24070002 */ addiu $a3, $zero, 2 -/* E065F0 80241290 8FBF0048 */ lw $ra, 0x48($sp) -/* E065F4 80241294 D7B60058 */ ldc1 $f22, 0x58($sp) -/* E065F8 80241298 D7B40050 */ ldc1 $f20, 0x50($sp) -/* E065FC 8024129C 03E00008 */ jr $ra -/* E06600 802412A0 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802412A4_E06604.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802412A4_E06604.s deleted file mode 100644 index 16a6f30a01..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802412A4_E06604.s +++ /dev/null @@ -1,146 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802412A4_E06604 -/* E06604 802412A4 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* E06608 802412A8 AFB00088 */ sw $s0, 0x88($sp) -/* E0660C 802412AC 00A0802D */ daddu $s0, $a1, $zero -/* E06610 802412B0 AFBF00A0 */ sw $ra, 0xa0($sp) -/* E06614 802412B4 AFB5009C */ sw $s5, 0x9c($sp) -/* E06618 802412B8 AFB40098 */ sw $s4, 0x98($sp) -/* E0661C 802412BC AFB30094 */ sw $s3, 0x94($sp) -/* E06620 802412C0 AFB20090 */ sw $s2, 0x90($sp) -/* E06624 802412C4 AFB1008C */ sw $s1, 0x8c($sp) -/* E06628 802412C8 F7BA00C0 */ sdc1 $f26, 0xc0($sp) -/* E0662C 802412CC F7B800B8 */ sdc1 $f24, 0xb8($sp) -/* E06630 802412D0 F7B600B0 */ sdc1 $f22, 0xb0($sp) -/* E06634 802412D4 F7B400A8 */ sdc1 $f20, 0xa8($sp) -/* E06638 802412D8 C6140010 */ lwc1 $f20, 0x10($s0) -/* E0663C 802412DC 4680A520 */ cvt.s.w $f20, $f20 -/* E06640 802412E0 4480C000 */ mtc1 $zero, $f24 -/* E06644 802412E4 3C05437F */ lui $a1, 0x437f -/* E06648 802412E8 8C820050 */ lw $v0, 0x50($a0) -/* E0664C 802412EC 4406C000 */ mfc1 $a2, $f24 -/* E06650 802412F0 C61A0014 */ lwc1 $f26, 0x14($s0) -/* E06654 802412F4 4680D6A0 */ cvt.s.w $f26, $f26 -/* E06658 802412F8 AFA20010 */ sw $v0, 0x10($sp) -/* E0665C 802412FC 8E070018 */ lw $a3, 0x18($s0) -/* E06660 80241300 0C00A8ED */ jal update_lerp -/* E06664 80241304 2404000B */ addiu $a0, $zero, 0xb -/* E06668 80241308 4600008D */ trunc.w.s $f2, $f0 -/* E0666C 8024130C E7A20014 */ swc1 $f2, 0x14($sp) -/* E06670 80241310 0000202D */ daddu $a0, $zero, $zero -/* E06674 80241314 24050007 */ addiu $a1, $zero, 7 -/* E06678 80241318 240600FF */ addiu $a2, $zero, 0xff -/* E0667C 8024131C 00C0382D */ daddu $a3, $a2, $zero -/* E06680 80241320 00C0A82D */ daddu $s5, $a2, $zero -/* E06684 80241324 AFB50010 */ sw $s5, 0x10($sp) -/* E06688 80241328 0C04EAA7 */ jal fold_update -/* E0668C 8024132C AFA00018 */ sw $zero, 0x18($sp) -/* E06690 80241330 27A20038 */ addiu $v0, $sp, 0x38 -/* E06694 80241334 AFA20010 */ sw $v0, 0x10($sp) -/* E06698 80241338 8E040004 */ lw $a0, 4($s0) -/* E0669C 8024133C 8E050008 */ lw $a1, 8($s0) -/* E066A0 80241340 8E060000 */ lw $a2, ($s0) -/* E066A4 80241344 8E07000C */ lw $a3, 0xc($s0) -/* E066A8 80241348 0C04BA38 */ jal msg_get_glyph -/* E066AC 8024134C 3C140001 */ lui $s4, 1 -/* E066B0 80241350 93A20042 */ lbu $v0, 0x42($sp) -/* E066B4 80241354 3C013FE0 */ lui $at, 0x3fe0 -/* E066B8 80241358 4481B800 */ mtc1 $at, $f23 -/* E066BC 8024135C 4480B000 */ mtc1 $zero, $f22 -/* E066C0 80241360 44820000 */ mtc1 $v0, $f0 -/* E066C4 80241364 00000000 */ nop -/* E066C8 80241368 46800021 */ cvt.d.w $f0, $f0 -/* E066CC 8024136C 46360002 */ mul.d $f0, $f0, $f22 -/* E066D0 80241370 00000000 */ nop -/* E066D4 80241374 36941630 */ ori $s4, $s4, 0x1630 -/* E066D8 80241378 4600A521 */ cvt.d.s $f20, $f20 -/* E066DC 8024137C 27B00048 */ addiu $s0, $sp, 0x48 -/* E066E0 80241380 4600D687 */ neg.s $f26, $f26 -/* E066E4 80241384 4620A500 */ add.d $f20, $f20, $f0 -/* E066E8 80241388 4406D000 */ mfc1 $a2, $f26 -/* E066EC 8024138C 4407C000 */ mfc1 $a3, $f24 -/* E066F0 80241390 4620A520 */ cvt.s.d $f20, $f20 -/* E066F4 80241394 4405A000 */ mfc1 $a1, $f20 -/* E066F8 80241398 0C019E40 */ jal guTranslateF -/* E066FC 8024139C 0200202D */ daddu $a0, $s0, $zero -/* E06700 802413A0 0200202D */ daddu $a0, $s0, $zero -/* E06704 802413A4 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* E06708 802413A8 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* E0670C 802413AC 3C13800A */ lui $s3, %hi(gDisplayContext) -/* E06710 802413B0 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* E06714 802413B4 96450000 */ lhu $a1, ($s2) -/* E06718 802413B8 8E620000 */ lw $v0, ($s3) -/* E0671C 802413BC 00052980 */ sll $a1, $a1, 6 -/* E06720 802413C0 00B42821 */ addu $a1, $a1, $s4 -/* E06724 802413C4 0C019D40 */ jal guMtxF2L -/* E06728 802413C8 00452821 */ addu $a1, $v0, $a1 -/* E0672C 802413CC 3C03DA38 */ lui $v1, 0xda38 -/* E06730 802413D0 34630002 */ ori $v1, $v1, 2 -/* E06734 802413D4 0000202D */ daddu $a0, $zero, $zero -/* E06738 802413D8 27A50020 */ addiu $a1, $sp, 0x20 -/* E0673C 802413DC 3C060001 */ lui $a2, 1 -/* E06740 802413E0 34C60040 */ ori $a2, $a2, 0x40 -/* E06744 802413E4 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* E06748 802413E8 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* E0674C 802413EC 0200382D */ daddu $a3, $s0, $zero -/* E06750 802413F0 8E220000 */ lw $v0, ($s1) -/* E06754 802413F4 96480000 */ lhu $t0, ($s2) -/* E06758 802413F8 0040482D */ daddu $t1, $v0, $zero -/* E0675C 802413FC 24420008 */ addiu $v0, $v0, 8 -/* E06760 80241400 AE220000 */ sw $v0, ($s1) -/* E06764 80241404 3102FFFF */ andi $v0, $t0, 0xffff -/* E06768 80241408 00021180 */ sll $v0, $v0, 6 -/* E0676C 8024140C 00541021 */ addu $v0, $v0, $s4 -/* E06770 80241410 AD230000 */ sw $v1, ($t1) -/* E06774 80241414 8E630000 */ lw $v1, ($s3) -/* E06778 80241418 25080001 */ addiu $t0, $t0, 1 -/* E0677C 8024141C 00621821 */ addu $v1, $v1, $v0 -/* E06780 80241420 3C028000 */ lui $v0, 0x8000 -/* E06784 80241424 00621821 */ addu $v1, $v1, $v0 -/* E06788 80241428 AD230004 */ sw $v1, 4($t1) -/* E0678C 8024142C 93A20042 */ lbu $v0, 0x42($sp) -/* E06790 80241430 8FA3003C */ lw $v1, 0x3c($sp) -/* E06794 80241434 93A90040 */ lbu $t1, 0x40($sp) -/* E06798 80241438 93AA0041 */ lbu $t2, 0x41($sp) -/* E0679C 8024143C 44820000 */ mtc1 $v0, $f0 -/* E067A0 80241440 00000000 */ nop -/* E067A4 80241444 46800021 */ cvt.d.w $f0, $f0 -/* E067A8 80241448 8FA20038 */ lw $v0, 0x38($sp) -/* E067AC 8024144C 46360002 */ mul.d $f0, $f0, $f22 -/* E067B0 80241450 00000000 */ nop -/* E067B4 80241454 A6480000 */ sh $t0, ($s2) -/* E067B8 80241458 A7A0002E */ sh $zero, 0x2e($sp) -/* E067BC 8024145C A3B50030 */ sb $s5, 0x30($sp) -/* E067C0 80241460 AFA30024 */ sw $v1, 0x24($sp) -/* E067C4 80241464 A7A90028 */ sh $t1, 0x28($sp) -/* E067C8 80241468 A7AA002A */ sh $t2, 0x2a($sp) -/* E067CC 8024146C AFA20020 */ sw $v0, 0x20($sp) -/* E067D0 80241470 46200007 */ neg.d $f0, $f0 -/* E067D4 80241474 4620008D */ trunc.w.d $f2, $f0 -/* E067D8 80241478 44021000 */ mfc1 $v0, $f2 -/* E067DC 8024147C 0C04EBDC */ jal fold_appendGfx_component -/* E067E0 80241480 A7A2002C */ sh $v0, 0x2c($sp) -/* E067E4 80241484 3C04D838 */ lui $a0, 0xd838 -/* E067E8 80241488 8E220000 */ lw $v0, ($s1) -/* E067EC 8024148C 34840002 */ ori $a0, $a0, 2 -/* E067F0 80241490 0040182D */ daddu $v1, $v0, $zero -/* E067F4 80241494 24420008 */ addiu $v0, $v0, 8 -/* E067F8 80241498 AE220000 */ sw $v0, ($s1) -/* E067FC 8024149C 24020040 */ addiu $v0, $zero, 0x40 -/* E06800 802414A0 AC640000 */ sw $a0, ($v1) -/* E06804 802414A4 AC620004 */ sw $v0, 4($v1) -/* E06808 802414A8 8FBF00A0 */ lw $ra, 0xa0($sp) -/* E0680C 802414AC 8FB5009C */ lw $s5, 0x9c($sp) -/* E06810 802414B0 8FB40098 */ lw $s4, 0x98($sp) -/* E06814 802414B4 8FB30094 */ lw $s3, 0x94($sp) -/* E06818 802414B8 8FB20090 */ lw $s2, 0x90($sp) -/* E0681C 802414BC 8FB1008C */ lw $s1, 0x8c($sp) -/* E06820 802414C0 8FB00088 */ lw $s0, 0x88($sp) -/* E06824 802414C4 D7BA00C0 */ ldc1 $f26, 0xc0($sp) -/* E06828 802414C8 D7B800B8 */ ldc1 $f24, 0xb8($sp) -/* E0682C 802414CC D7B600B0 */ ldc1 $f22, 0xb0($sp) -/* E06830 802414D0 D7B400A8 */ ldc1 $f20, 0xa8($sp) -/* E06834 802414D4 03E00008 */ jr $ra -/* E06838 802414D8 27BD00C8 */ addiu $sp, $sp, 0xc8 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802414DC_E0683C.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802414DC_E0683C.s deleted file mode 100644 index 8d4760ec75..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802414DC_E0683C.s +++ /dev/null @@ -1,171 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802414DC_E0683C -/* E0683C 802414DC 27BDFEE8 */ addiu $sp, $sp, -0x118 -/* E06840 802414E0 AFB100CC */ sw $s1, 0xcc($sp) -/* E06844 802414E4 0080882D */ daddu $s1, $a0, $zero -/* E06848 802414E8 AFB000C8 */ sw $s0, 0xc8($sp) -/* E0684C 802414EC 00A0802D */ daddu $s0, $a1, $zero -/* E06850 802414F0 AFBF00E0 */ sw $ra, 0xe0($sp) -/* E06854 802414F4 AFB500DC */ sw $s5, 0xdc($sp) -/* E06858 802414F8 AFB400D8 */ sw $s4, 0xd8($sp) -/* E0685C 802414FC AFB300D4 */ sw $s3, 0xd4($sp) -/* E06860 80241500 AFB200D0 */ sw $s2, 0xd0($sp) -/* E06864 80241504 F7BE0110 */ sdc1 $f30, 0x110($sp) -/* E06868 80241508 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* E0686C 8024150C F7BA0100 */ sdc1 $f26, 0x100($sp) -/* E06870 80241510 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* E06874 80241514 F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* E06878 80241518 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* E0687C 8024151C C6140010 */ lwc1 $f20, 0x10($s0) -/* E06880 80241520 4680A520 */ cvt.s.w $f20, $f20 -/* E06884 80241524 4480E000 */ mtc1 $zero, $f28 -/* E06888 80241528 3C05437F */ lui $a1, 0x437f -/* E0688C 8024152C 8E220050 */ lw $v0, 0x50($s1) -/* E06890 80241530 4406E000 */ mfc1 $a2, $f28 -/* E06894 80241534 C61E0014 */ lwc1 $f30, 0x14($s0) -/* E06898 80241538 4680F7A0 */ cvt.s.w $f30, $f30 -/* E0689C 8024153C AFA20010 */ sw $v0, 0x10($sp) -/* E068A0 80241540 8E070018 */ lw $a3, 0x18($s0) -/* E068A4 80241544 0C00A8ED */ jal update_lerp -/* E068A8 80241548 2404000B */ addiu $a0, $zero, 0xb -/* E068AC 8024154C 4600008D */ trunc.w.s $f2, $f0 -/* E068B0 80241550 E7A20014 */ swc1 $f2, 0x14($sp) -/* E068B4 80241554 0000202D */ daddu $a0, $zero, $zero -/* E068B8 80241558 24050007 */ addiu $a1, $zero, 7 -/* E068BC 8024155C 240600FF */ addiu $a2, $zero, 0xff -/* E068C0 80241560 00C0382D */ daddu $a3, $a2, $zero -/* E068C4 80241564 00C0A82D */ daddu $s5, $a2, $zero -/* E068C8 80241568 AFB50010 */ sw $s5, 0x10($sp) -/* E068CC 8024156C 0C04EAA7 */ jal fold_update -/* E068D0 80241570 AFA00018 */ sw $zero, 0x18($sp) -/* E068D4 80241574 3C013F80 */ lui $at, 0x3f80 -/* E068D8 80241578 4481D000 */ mtc1 $at, $f26 -/* E068DC 8024157C 8E220050 */ lw $v0, 0x50($s1) -/* E068E0 80241580 3C063E4C */ lui $a2, 0x3e4c -/* E068E4 80241584 34C6CCCD */ ori $a2, $a2, 0xcccd -/* E068E8 80241588 4405D000 */ mfc1 $a1, $f26 -/* E068EC 8024158C AFA20010 */ sw $v0, 0x10($sp) -/* E068F0 80241590 8E070018 */ lw $a3, 0x18($s0) -/* E068F4 80241594 0C00A8ED */ jal update_lerp -/* E068F8 80241598 0000202D */ daddu $a0, $zero, $zero -/* E068FC 8024159C 27A20038 */ addiu $v0, $sp, 0x38 -/* E06900 802415A0 AFA20010 */ sw $v0, 0x10($sp) -/* E06904 802415A4 8E040004 */ lw $a0, 4($s0) -/* E06908 802415A8 8E050008 */ lw $a1, 8($s0) -/* E0690C 802415AC 8E060000 */ lw $a2, ($s0) -/* E06910 802415B0 8E07000C */ lw $a3, 0xc($s0) -/* E06914 802415B4 0C04BA38 */ jal msg_get_glyph -/* E06918 802415B8 46000586 */ mov.s $f22, $f0 -/* E0691C 802415BC 93A20042 */ lbu $v0, 0x42($sp) -/* E06920 802415C0 3C013FE0 */ lui $at, 0x3fe0 -/* E06924 802415C4 4481C800 */ mtc1 $at, $f25 -/* E06928 802415C8 4480C000 */ mtc1 $zero, $f24 -/* E0692C 802415CC 44820000 */ mtc1 $v0, $f0 -/* E06930 802415D0 00000000 */ nop -/* E06934 802415D4 46800021 */ cvt.d.w $f0, $f0 -/* E06938 802415D8 46380002 */ mul.d $f0, $f0, $f24 -/* E0693C 802415DC 00000000 */ nop -/* E06940 802415E0 3C140001 */ lui $s4, 1 -/* E06944 802415E4 36941630 */ ori $s4, $s4, 0x1630 -/* E06948 802415E8 4600A521 */ cvt.d.s $f20, $f20 -/* E0694C 802415EC 27B10048 */ addiu $s1, $sp, 0x48 -/* E06950 802415F0 4600F787 */ neg.s $f30, $f30 -/* E06954 802415F4 4620A500 */ add.d $f20, $f20, $f0 -/* E06958 802415F8 4406F000 */ mfc1 $a2, $f30 -/* E0695C 802415FC 4407E000 */ mfc1 $a3, $f28 -/* E06960 80241600 4620A520 */ cvt.s.d $f20, $f20 -/* E06964 80241604 4405A000 */ mfc1 $a1, $f20 -/* E06968 80241608 0C019E40 */ jal guTranslateF -/* E0696C 8024160C 0220202D */ daddu $a0, $s1, $zero -/* E06970 80241610 27B00088 */ addiu $s0, $sp, 0x88 -/* E06974 80241614 0200202D */ daddu $a0, $s0, $zero -/* E06978 80241618 4405B000 */ mfc1 $a1, $f22 -/* E0697C 8024161C 4407D000 */ mfc1 $a3, $f26 -/* E06980 80241620 0C019DF0 */ jal guScaleF -/* E06984 80241624 00A0302D */ daddu $a2, $a1, $zero -/* E06988 80241628 0200202D */ daddu $a0, $s0, $zero -/* E0698C 8024162C 0220282D */ daddu $a1, $s1, $zero -/* E06990 80241630 0C019D80 */ jal guMtxCatF -/* E06994 80241634 0220302D */ daddu $a2, $s1, $zero -/* E06998 80241638 0220202D */ daddu $a0, $s1, $zero -/* E0699C 8024163C 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* E069A0 80241640 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* E069A4 80241644 3C13800A */ lui $s3, %hi(gDisplayContext) -/* E069A8 80241648 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* E069AC 8024164C 96450000 */ lhu $a1, ($s2) -/* E069B0 80241650 8E620000 */ lw $v0, ($s3) -/* E069B4 80241654 00052980 */ sll $a1, $a1, 6 -/* E069B8 80241658 00B42821 */ addu $a1, $a1, $s4 -/* E069BC 8024165C 0C019D40 */ jal guMtxF2L -/* E069C0 80241660 00452821 */ addu $a1, $v0, $a1 -/* E069C4 80241664 3C03DA38 */ lui $v1, 0xda38 -/* E069C8 80241668 34630002 */ ori $v1, $v1, 2 -/* E069CC 8024166C 0000202D */ daddu $a0, $zero, $zero -/* E069D0 80241670 27A50020 */ addiu $a1, $sp, 0x20 -/* E069D4 80241674 24060040 */ addiu $a2, $zero, 0x40 -/* E069D8 80241678 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* E069DC 8024167C 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* E069E0 80241680 0220382D */ daddu $a3, $s1, $zero -/* E069E4 80241684 8E020000 */ lw $v0, ($s0) -/* E069E8 80241688 96480000 */ lhu $t0, ($s2) -/* E069EC 8024168C 0040482D */ daddu $t1, $v0, $zero -/* E069F0 80241690 24420008 */ addiu $v0, $v0, 8 -/* E069F4 80241694 AE020000 */ sw $v0, ($s0) -/* E069F8 80241698 3102FFFF */ andi $v0, $t0, 0xffff -/* E069FC 8024169C 00021180 */ sll $v0, $v0, 6 -/* E06A00 802416A0 00541021 */ addu $v0, $v0, $s4 -/* E06A04 802416A4 AD230000 */ sw $v1, ($t1) -/* E06A08 802416A8 8E630000 */ lw $v1, ($s3) -/* E06A0C 802416AC 25080001 */ addiu $t0, $t0, 1 -/* E06A10 802416B0 00621821 */ addu $v1, $v1, $v0 -/* E06A14 802416B4 3C028000 */ lui $v0, 0x8000 -/* E06A18 802416B8 00621821 */ addu $v1, $v1, $v0 -/* E06A1C 802416BC AD230004 */ sw $v1, 4($t1) -/* E06A20 802416C0 93A20042 */ lbu $v0, 0x42($sp) -/* E06A24 802416C4 8FA3003C */ lw $v1, 0x3c($sp) -/* E06A28 802416C8 93A90040 */ lbu $t1, 0x40($sp) -/* E06A2C 802416CC 93AA0041 */ lbu $t2, 0x41($sp) -/* E06A30 802416D0 44820000 */ mtc1 $v0, $f0 -/* E06A34 802416D4 00000000 */ nop -/* E06A38 802416D8 46800021 */ cvt.d.w $f0, $f0 -/* E06A3C 802416DC 8FA20038 */ lw $v0, 0x38($sp) -/* E06A40 802416E0 46380002 */ mul.d $f0, $f0, $f24 -/* E06A44 802416E4 00000000 */ nop -/* E06A48 802416E8 A6480000 */ sh $t0, ($s2) -/* E06A4C 802416EC A7A0002E */ sh $zero, 0x2e($sp) -/* E06A50 802416F0 A3B50030 */ sb $s5, 0x30($sp) -/* E06A54 802416F4 AFA30024 */ sw $v1, 0x24($sp) -/* E06A58 802416F8 A7A90028 */ sh $t1, 0x28($sp) -/* E06A5C 802416FC A7AA002A */ sh $t2, 0x2a($sp) -/* E06A60 80241700 AFA20020 */ sw $v0, 0x20($sp) -/* E06A64 80241704 46200007 */ neg.d $f0, $f0 -/* E06A68 80241708 4620008D */ trunc.w.d $f2, $f0 -/* E06A6C 8024170C 44021000 */ mfc1 $v0, $f2 -/* E06A70 80241710 0C04EBDC */ jal fold_appendGfx_component -/* E06A74 80241714 A7A2002C */ sh $v0, 0x2c($sp) -/* E06A78 80241718 3C04D838 */ lui $a0, 0xd838 -/* E06A7C 8024171C 8E020000 */ lw $v0, ($s0) -/* E06A80 80241720 34840002 */ ori $a0, $a0, 2 -/* E06A84 80241724 0040182D */ daddu $v1, $v0, $zero -/* E06A88 80241728 24420008 */ addiu $v0, $v0, 8 -/* E06A8C 8024172C AE020000 */ sw $v0, ($s0) -/* E06A90 80241730 24020040 */ addiu $v0, $zero, 0x40 -/* E06A94 80241734 AC640000 */ sw $a0, ($v1) -/* E06A98 80241738 AC620004 */ sw $v0, 4($v1) -/* E06A9C 8024173C 8FBF00E0 */ lw $ra, 0xe0($sp) -/* E06AA0 80241740 8FB500DC */ lw $s5, 0xdc($sp) -/* E06AA4 80241744 8FB400D8 */ lw $s4, 0xd8($sp) -/* E06AA8 80241748 8FB300D4 */ lw $s3, 0xd4($sp) -/* E06AAC 8024174C 8FB200D0 */ lw $s2, 0xd0($sp) -/* E06AB0 80241750 8FB100CC */ lw $s1, 0xcc($sp) -/* E06AB4 80241754 8FB000C8 */ lw $s0, 0xc8($sp) -/* E06AB8 80241758 D7BE0110 */ ldc1 $f30, 0x110($sp) -/* E06ABC 8024175C D7BC0108 */ ldc1 $f28, 0x108($sp) -/* E06AC0 80241760 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* E06AC4 80241764 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* E06AC8 80241768 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* E06ACC 8024176C D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* E06AD0 80241770 03E00008 */ jr $ra -/* E06AD4 80241774 27BD0118 */ addiu $sp, $sp, 0x118 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241778_E06AD8.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241778_E06AD8.s deleted file mode 100644 index c442e00ede..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241778_E06AD8.s +++ /dev/null @@ -1,168 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241778_E06AD8 -/* E06AD8 80241778 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* E06ADC 8024177C AFB100CC */ sw $s1, 0xcc($sp) -/* E06AE0 80241780 0080882D */ daddu $s1, $a0, $zero -/* E06AE4 80241784 AFB000C8 */ sw $s0, 0xc8($sp) -/* E06AE8 80241788 00A0802D */ daddu $s0, $a1, $zero -/* E06AEC 8024178C AFBF00E0 */ sw $ra, 0xe0($sp) -/* E06AF0 80241790 AFB500DC */ sw $s5, 0xdc($sp) -/* E06AF4 80241794 AFB400D8 */ sw $s4, 0xd8($sp) -/* E06AF8 80241798 AFB300D4 */ sw $s3, 0xd4($sp) -/* E06AFC 8024179C AFB200D0 */ sw $s2, 0xd0($sp) -/* E06B00 802417A0 F7BC0108 */ sdc1 $f28, 0x108($sp) -/* E06B04 802417A4 F7BA0100 */ sdc1 $f26, 0x100($sp) -/* E06B08 802417A8 F7B800F8 */ sdc1 $f24, 0xf8($sp) -/* E06B0C 802417AC F7B600F0 */ sdc1 $f22, 0xf0($sp) -/* E06B10 802417B0 F7B400E8 */ sdc1 $f20, 0xe8($sp) -/* E06B14 802417B4 C6140010 */ lwc1 $f20, 0x10($s0) -/* E06B18 802417B8 4680A520 */ cvt.s.w $f20, $f20 -/* E06B1C 802417BC 4480B000 */ mtc1 $zero, $f22 -/* E06B20 802417C0 3C05437F */ lui $a1, 0x437f -/* E06B24 802417C4 8E220050 */ lw $v0, 0x50($s1) -/* E06B28 802417C8 4406B000 */ mfc1 $a2, $f22 -/* E06B2C 802417CC C61C0014 */ lwc1 $f28, 0x14($s0) -/* E06B30 802417D0 4680E720 */ cvt.s.w $f28, $f28 -/* E06B34 802417D4 AFA20010 */ sw $v0, 0x10($sp) -/* E06B38 802417D8 8E070018 */ lw $a3, 0x18($s0) -/* E06B3C 802417DC 0C00A8ED */ jal update_lerp -/* E06B40 802417E0 2404000B */ addiu $a0, $zero, 0xb -/* E06B44 802417E4 4600008D */ trunc.w.s $f2, $f0 -/* E06B48 802417E8 E7A20014 */ swc1 $f2, 0x14($sp) -/* E06B4C 802417EC 0000202D */ daddu $a0, $zero, $zero -/* E06B50 802417F0 24050007 */ addiu $a1, $zero, 7 -/* E06B54 802417F4 240600FF */ addiu $a2, $zero, 0xff -/* E06B58 802417F8 00C0382D */ daddu $a3, $a2, $zero -/* E06B5C 802417FC 00C0A82D */ daddu $s5, $a2, $zero -/* E06B60 80241800 AFB50010 */ sw $s5, 0x10($sp) -/* E06B64 80241804 0C04EAA7 */ jal fold_update -/* E06B68 80241808 AFA00018 */ sw $zero, 0x18($sp) -/* E06B6C 8024180C 8E220050 */ lw $v0, 0x50($s1) -/* E06B70 80241810 4405B000 */ mfc1 $a1, $f22 -/* E06B74 80241814 3C064270 */ lui $a2, 0x4270 -/* E06B78 80241818 AFA20010 */ sw $v0, 0x10($sp) -/* E06B7C 8024181C 8E070018 */ lw $a3, 0x18($s0) -/* E06B80 80241820 0C00A8ED */ jal update_lerp -/* E06B84 80241824 0000202D */ daddu $a0, $zero, $zero -/* E06B88 80241828 27A20038 */ addiu $v0, $sp, 0x38 -/* E06B8C 8024182C AFA20010 */ sw $v0, 0x10($sp) -/* E06B90 80241830 8E040004 */ lw $a0, 4($s0) -/* E06B94 80241834 8E050008 */ lw $a1, 8($s0) -/* E06B98 80241838 8E060000 */ lw $a2, ($s0) -/* E06B9C 8024183C 8E07000C */ lw $a3, 0xc($s0) -/* E06BA0 80241840 0C04BA38 */ jal msg_get_glyph -/* E06BA4 80241844 46000606 */ mov.s $f24, $f0 -/* E06BA8 80241848 93A20042 */ lbu $v0, 0x42($sp) -/* E06BAC 8024184C 3C013FE0 */ lui $at, 0x3fe0 -/* E06BB0 80241850 4481D800 */ mtc1 $at, $f27 -/* E06BB4 80241854 4480D000 */ mtc1 $zero, $f26 -/* E06BB8 80241858 44820000 */ mtc1 $v0, $f0 -/* E06BBC 8024185C 00000000 */ nop -/* E06BC0 80241860 46800021 */ cvt.d.w $f0, $f0 -/* E06BC4 80241864 463A0002 */ mul.d $f0, $f0, $f26 -/* E06BC8 80241868 00000000 */ nop -/* E06BCC 8024186C 3C140001 */ lui $s4, 1 -/* E06BD0 80241870 36941630 */ ori $s4, $s4, 0x1630 -/* E06BD4 80241874 4600A521 */ cvt.d.s $f20, $f20 -/* E06BD8 80241878 27B10048 */ addiu $s1, $sp, 0x48 -/* E06BDC 8024187C 4600E707 */ neg.s $f28, $f28 -/* E06BE0 80241880 4620A500 */ add.d $f20, $f20, $f0 -/* E06BE4 80241884 4406E000 */ mfc1 $a2, $f28 -/* E06BE8 80241888 4407B000 */ mfc1 $a3, $f22 -/* E06BEC 8024188C 4620A520 */ cvt.s.d $f20, $f20 -/* E06BF0 80241890 4405A000 */ mfc1 $a1, $f20 -/* E06BF4 80241894 0C019E40 */ jal guTranslateF -/* E06BF8 80241898 0220202D */ daddu $a0, $s1, $zero -/* E06BFC 8024189C 27B00088 */ addiu $s0, $sp, 0x88 -/* E06C00 802418A0 4405C000 */ mfc1 $a1, $f24 -/* E06C04 802418A4 4406B000 */ mfc1 $a2, $f22 -/* E06C08 802418A8 3C073F80 */ lui $a3, 0x3f80 -/* E06C0C 802418AC 0200202D */ daddu $a0, $s0, $zero -/* E06C10 802418B0 0C019EC8 */ jal guRotateF -/* E06C14 802418B4 AFA60010 */ sw $a2, 0x10($sp) -/* E06C18 802418B8 0200202D */ daddu $a0, $s0, $zero -/* E06C1C 802418BC 0220282D */ daddu $a1, $s1, $zero -/* E06C20 802418C0 0C019D80 */ jal guMtxCatF -/* E06C24 802418C4 0220302D */ daddu $a2, $s1, $zero -/* E06C28 802418C8 0220202D */ daddu $a0, $s1, $zero -/* E06C2C 802418CC 3C128007 */ lui $s2, %hi(gMatrixListPos) -/* E06C30 802418D0 265241F0 */ addiu $s2, $s2, %lo(gMatrixListPos) -/* E06C34 802418D4 3C13800A */ lui $s3, %hi(gDisplayContext) -/* E06C38 802418D8 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) -/* E06C3C 802418DC 96450000 */ lhu $a1, ($s2) -/* E06C40 802418E0 8E620000 */ lw $v0, ($s3) -/* E06C44 802418E4 00052980 */ sll $a1, $a1, 6 -/* E06C48 802418E8 00B42821 */ addu $a1, $a1, $s4 -/* E06C4C 802418EC 0C019D40 */ jal guMtxF2L -/* E06C50 802418F0 00452821 */ addu $a1, $v0, $a1 -/* E06C54 802418F4 3C03DA38 */ lui $v1, 0xda38 -/* E06C58 802418F8 34630002 */ ori $v1, $v1, 2 -/* E06C5C 802418FC 0000202D */ daddu $a0, $zero, $zero -/* E06C60 80241900 27A50020 */ addiu $a1, $sp, 0x20 -/* E06C64 80241904 3C060001 */ lui $a2, 1 -/* E06C68 80241908 34C60040 */ ori $a2, $a2, 0x40 -/* E06C6C 8024190C 3C10800A */ lui $s0, %hi(gMasterGfxPos) -/* E06C70 80241910 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) -/* E06C74 80241914 0220382D */ daddu $a3, $s1, $zero -/* E06C78 80241918 8E020000 */ lw $v0, ($s0) -/* E06C7C 8024191C 96480000 */ lhu $t0, ($s2) -/* E06C80 80241920 0040482D */ daddu $t1, $v0, $zero -/* E06C84 80241924 24420008 */ addiu $v0, $v0, 8 -/* E06C88 80241928 AE020000 */ sw $v0, ($s0) -/* E06C8C 8024192C 3102FFFF */ andi $v0, $t0, 0xffff -/* E06C90 80241930 00021180 */ sll $v0, $v0, 6 -/* E06C94 80241934 00541021 */ addu $v0, $v0, $s4 -/* E06C98 80241938 AD230000 */ sw $v1, ($t1) -/* E06C9C 8024193C 8E630000 */ lw $v1, ($s3) -/* E06CA0 80241940 25080001 */ addiu $t0, $t0, 1 -/* E06CA4 80241944 00621821 */ addu $v1, $v1, $v0 -/* E06CA8 80241948 3C028000 */ lui $v0, 0x8000 -/* E06CAC 8024194C 00621821 */ addu $v1, $v1, $v0 -/* E06CB0 80241950 AD230004 */ sw $v1, 4($t1) -/* E06CB4 80241954 93A20042 */ lbu $v0, 0x42($sp) -/* E06CB8 80241958 8FA3003C */ lw $v1, 0x3c($sp) -/* E06CBC 8024195C 93A90040 */ lbu $t1, 0x40($sp) -/* E06CC0 80241960 93AA0041 */ lbu $t2, 0x41($sp) -/* E06CC4 80241964 44820000 */ mtc1 $v0, $f0 -/* E06CC8 80241968 00000000 */ nop -/* E06CCC 8024196C 46800021 */ cvt.d.w $f0, $f0 -/* E06CD0 80241970 8FA20038 */ lw $v0, 0x38($sp) -/* E06CD4 80241974 463A0002 */ mul.d $f0, $f0, $f26 -/* E06CD8 80241978 00000000 */ nop -/* E06CDC 8024197C A6480000 */ sh $t0, ($s2) -/* E06CE0 80241980 A7A0002E */ sh $zero, 0x2e($sp) -/* E06CE4 80241984 A3B50030 */ sb $s5, 0x30($sp) -/* E06CE8 80241988 AFA30024 */ sw $v1, 0x24($sp) -/* E06CEC 8024198C A7A90028 */ sh $t1, 0x28($sp) -/* E06CF0 80241990 A7AA002A */ sh $t2, 0x2a($sp) -/* E06CF4 80241994 AFA20020 */ sw $v0, 0x20($sp) -/* E06CF8 80241998 46200007 */ neg.d $f0, $f0 -/* E06CFC 8024199C 4620008D */ trunc.w.d $f2, $f0 -/* E06D00 802419A0 44021000 */ mfc1 $v0, $f2 -/* E06D04 802419A4 0C04EBDC */ jal fold_appendGfx_component -/* E06D08 802419A8 A7A2002C */ sh $v0, 0x2c($sp) -/* E06D0C 802419AC 3C04D838 */ lui $a0, 0xd838 -/* E06D10 802419B0 8E020000 */ lw $v0, ($s0) -/* E06D14 802419B4 34840002 */ ori $a0, $a0, 2 -/* E06D18 802419B8 0040182D */ daddu $v1, $v0, $zero -/* E06D1C 802419BC 24420008 */ addiu $v0, $v0, 8 -/* E06D20 802419C0 AE020000 */ sw $v0, ($s0) -/* E06D24 802419C4 24020040 */ addiu $v0, $zero, 0x40 -/* E06D28 802419C8 AC640000 */ sw $a0, ($v1) -/* E06D2C 802419CC AC620004 */ sw $v0, 4($v1) -/* E06D30 802419D0 8FBF00E0 */ lw $ra, 0xe0($sp) -/* E06D34 802419D4 8FB500DC */ lw $s5, 0xdc($sp) -/* E06D38 802419D8 8FB400D8 */ lw $s4, 0xd8($sp) -/* E06D3C 802419DC 8FB300D4 */ lw $s3, 0xd4($sp) -/* E06D40 802419E0 8FB200D0 */ lw $s2, 0xd0($sp) -/* E06D44 802419E4 8FB100CC */ lw $s1, 0xcc($sp) -/* E06D48 802419E8 8FB000C8 */ lw $s0, 0xc8($sp) -/* E06D4C 802419EC D7BC0108 */ ldc1 $f28, 0x108($sp) -/* E06D50 802419F0 D7BA0100 */ ldc1 $f26, 0x100($sp) -/* E06D54 802419F4 D7B800F8 */ ldc1 $f24, 0xf8($sp) -/* E06D58 802419F8 D7B600F0 */ ldc1 $f22, 0xf0($sp) -/* E06D5C 802419FC D7B400E8 */ ldc1 $f20, 0xe8($sp) -/* E06D60 80241A00 03E00008 */ jr $ra -/* E06D64 80241A04 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241A08_E06D68.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241A08_E06D68.s deleted file mode 100644 index bac7d8f8e1..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241A08_E06D68.s +++ /dev/null @@ -1,85 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241A08_E06D68 -/* E06D68 80241A08 27BDFF90 */ addiu $sp, $sp, -0x70 -/* E06D6C 80241A0C AFB00048 */ sw $s0, 0x48($sp) -/* E06D70 80241A10 00A0802D */ daddu $s0, $a1, $zero -/* E06D74 80241A14 AFBF0050 */ sw $ra, 0x50($sp) -/* E06D78 80241A18 AFB1004C */ sw $s1, 0x4c($sp) -/* E06D7C 80241A1C F7B80068 */ sdc1 $f24, 0x68($sp) -/* E06D80 80241A20 F7B60060 */ sdc1 $f22, 0x60($sp) -/* E06D84 80241A24 F7B40058 */ sdc1 $f20, 0x58($sp) -/* E06D88 80241A28 8C820050 */ lw $v0, 0x50($a0) -/* E06D8C 80241A2C 2404000B */ addiu $a0, $zero, 0xb -/* E06D90 80241A30 0000302D */ daddu $a2, $zero, $zero -/* E06D94 80241A34 C6140010 */ lwc1 $f20, 0x10($s0) -/* E06D98 80241A38 4680A520 */ cvt.s.w $f20, $f20 -/* E06D9C 80241A3C 3C05437F */ lui $a1, 0x437f -/* E06DA0 80241A40 C6160014 */ lwc1 $f22, 0x14($s0) -/* E06DA4 80241A44 4680B5A0 */ cvt.s.w $f22, $f22 -/* E06DA8 80241A48 AFA20010 */ sw $v0, 0x10($sp) -/* E06DAC 80241A4C 8E070018 */ lw $a3, 0x18($s0) -/* E06DB0 80241A50 0C00A8ED */ jal update_lerp -/* E06DB4 80241A54 27B10038 */ addiu $s1, $sp, 0x38 -/* E06DB8 80241A58 AFB10010 */ sw $s1, 0x10($sp) -/* E06DBC 80241A5C 8E040004 */ lw $a0, 4($s0) -/* E06DC0 80241A60 8E050008 */ lw $a1, 8($s0) -/* E06DC4 80241A64 8E060000 */ lw $a2, ($s0) -/* E06DC8 80241A68 8E07000C */ lw $a3, 0xc($s0) -/* E06DCC 80241A6C 0C04BA38 */ jal msg_get_glyph -/* E06DD0 80241A70 46000606 */ mov.s $f24, $f0 -/* E06DD4 80241A74 4600A08D */ trunc.w.s $f2, $f20 -/* E06DD8 80241A78 44021000 */ mfc1 $v0, $f2 -/* E06DDC 80241A7C 93A50040 */ lbu $a1, 0x40($sp) -/* E06DE0 80241A80 93A60041 */ lbu $a2, 0x41($sp) -/* E06DE4 80241A84 00021400 */ sll $v0, $v0, 0x10 -/* E06DE8 80241A88 AFA00010 */ sw $zero, 0x10($sp) -/* E06DEC 80241A8C 8FA3003C */ lw $v1, 0x3c($sp) -/* E06DF0 80241A90 00021403 */ sra $v0, $v0, 0x10 -/* E06DF4 80241A94 AFA20018 */ sw $v0, 0x18($sp) -/* E06DF8 80241A98 4600B08D */ trunc.w.s $f2, $f22 -/* E06DFC 80241A9C 44021000 */ mfc1 $v0, $f2 -/* E06E00 80241AA0 00000000 */ nop -/* E06E04 80241AA4 00021400 */ sll $v0, $v0, 0x10 -/* E06E08 80241AA8 3C014F00 */ lui $at, 0x4f00 -/* E06E0C 80241AAC 44810000 */ mtc1 $at, $f0 -/* E06E10 80241AB0 00021403 */ sra $v0, $v0, 0x10 -/* E06E14 80241AB4 AFA2001C */ sw $v0, 0x1c($sp) -/* E06E18 80241AB8 2402000A */ addiu $v0, $zero, 0xa -/* E06E1C 80241ABC AFA20020 */ sw $v0, 0x20($sp) -/* E06E20 80241AC0 24020014 */ addiu $v0, $zero, 0x14 -/* E06E24 80241AC4 AFA20024 */ sw $v0, 0x24($sp) -/* E06E28 80241AC8 2402012C */ addiu $v0, $zero, 0x12c -/* E06E2C 80241ACC AFA20028 */ sw $v0, 0x28($sp) -/* E06E30 80241AD0 240200C8 */ addiu $v0, $zero, 0xc8 -/* E06E34 80241AD4 AFA2002C */ sw $v0, 0x2c($sp) -/* E06E38 80241AD8 4618003E */ c.le.s $f0, $f24 -/* E06E3C 80241ADC 00000000 */ nop -/* E06E40 80241AE0 45010005 */ bc1t .L80241AF8 -/* E06E44 80241AE4 AFA30014 */ sw $v1, 0x14($sp) -/* E06E48 80241AE8 4600C08D */ trunc.w.s $f2, $f24 -/* E06E4C 80241AEC 44031000 */ mfc1 $v1, $f2 -/* E06E50 80241AF0 080906C5 */ j .L80241B14 -/* E06E54 80241AF4 306200FF */ andi $v0, $v1, 0xff -.L80241AF8: -/* E06E58 80241AF8 4600C001 */ sub.s $f0, $f24, $f0 -/* E06E5C 80241AFC 3C028000 */ lui $v0, 0x8000 -/* E06E60 80241B00 4600008D */ trunc.w.s $f2, $f0 -/* E06E64 80241B04 44031000 */ mfc1 $v1, $f2 -/* E06E68 80241B08 00000000 */ nop -/* E06E6C 80241B0C 00621825 */ or $v1, $v1, $v0 -/* E06E70 80241B10 306200FF */ andi $v0, $v1, 0xff -.L80241B14: -/* E06E74 80241B14 AFA20030 */ sw $v0, 0x30($sp) -/* E06E78 80241B18 8E240000 */ lw $a0, ($s1) -/* E06E7C 80241B1C 0C04BA68 */ jal draw_ci_image_with_clipping -/* E06E80 80241B20 24070002 */ addiu $a3, $zero, 2 -/* E06E84 80241B24 8FBF0050 */ lw $ra, 0x50($sp) -/* E06E88 80241B28 8FB1004C */ lw $s1, 0x4c($sp) -/* E06E8C 80241B2C 8FB00048 */ lw $s0, 0x48($sp) -/* E06E90 80241B30 D7B80068 */ ldc1 $f24, 0x68($sp) -/* E06E94 80241B34 D7B60060 */ ldc1 $f22, 0x60($sp) -/* E06E98 80241B38 D7B40058 */ ldc1 $f20, 0x58($sp) -/* E06E9C 80241B3C 03E00008 */ jr $ra -/* E06EA0 80241B40 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241B44_E06EA4.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241B44_E06EA4.s deleted file mode 100644 index e7b760cc3b..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80241B44_E06EA4.s +++ /dev/null @@ -1,488 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel jtbl_802493E0_E0E740 -.word .L80241DF4_E07154, .L80241E28_E07188, .L80241E28_E07188, .L80241DE8_E07148, .L80241DE8_E07148, .L80241DE8_E07148, .L80241E28_E07188, .L80241E28_E07188, .L80241E28_E07188, .L80241E28_E07188, .L80241E28_E07188, .L80241E28_E07188, .L80241E28_E07188, .L80241DF4_E07154, .L80241E28_E07188, .L80241E00_E07160 - -dlabel jtbl_80249420_E0E780 -.word .L80241F38_E07298, .L80241EE8_E07248, .L80241EFC_E0725C, .L80241F10_E07270, .L80241F24_E07284, .L80241F38_E07298 - -.section .text - -glabel func_80241B44_E06EA4 -/* E06EA4 80241B44 27BDFF80 */ addiu $sp, $sp, -0x80 -/* E06EA8 80241B48 AFB30064 */ sw $s3, 0x64($sp) -/* E06EAC 80241B4C 0080982D */ daddu $s3, $a0, $zero -/* E06EB0 80241B50 AFBE0078 */ sw $fp, 0x78($sp) -/* E06EB4 80241B54 0000F02D */ daddu $fp, $zero, $zero -/* E06EB8 80241B58 AFBF007C */ sw $ra, 0x7c($sp) -/* E06EBC 80241B5C AFB70074 */ sw $s7, 0x74($sp) -/* E06EC0 80241B60 AFB60070 */ sw $s6, 0x70($sp) -/* E06EC4 80241B64 AFB5006C */ sw $s5, 0x6c($sp) -/* E06EC8 80241B68 AFB40068 */ sw $s4, 0x68($sp) -/* E06ECC 80241B6C AFB20060 */ sw $s2, 0x60($sp) -/* E06ED0 80241B70 AFB1005C */ sw $s1, 0x5c($sp) -/* E06ED4 80241B74 AFB00058 */ sw $s0, 0x58($sp) -/* E06ED8 80241B78 96630070 */ lhu $v1, 0x70($s3) -/* E06EDC 80241B7C 30620002 */ andi $v0, $v1, 2 -/* E06EE0 80241B80 10400005 */ beqz $v0, .L80241B98 -/* E06EE4 80241B84 27B00020 */ addiu $s0, $sp, 0x20 -/* E06EE8 80241B88 3062FFFD */ andi $v0, $v1, 0xfffd -/* E06EEC 80241B8C A6620070 */ sh $v0, 0x70($s3) -/* E06EF0 80241B90 AE600008 */ sw $zero, 8($s3) -/* E06EF4 80241B94 AE60000C */ sw $zero, 0xc($s3) -.L80241B98: -/* E06EF8 80241B98 27A50040 */ addiu $a1, $sp, 0x40 -/* E06EFC 80241B9C 27A60044 */ addiu $a2, $sp, 0x44 -/* E06F00 80241BA0 27A70048 */ addiu $a3, $sp, 0x48 -/* E06F04 80241BA4 0000882D */ daddu $s1, $zero, $zero -/* E06F08 80241BA8 AFA00010 */ sw $zero, 0x10($sp) -/* E06F0C 80241BAC AFA00014 */ sw $zero, 0x14($sp) -/* E06F10 80241BB0 AFA00018 */ sw $zero, 0x18($sp) -/* E06F14 80241BB4 AFA0001C */ sw $zero, 0x1c($sp) -/* E06F18 80241BB8 8E640000 */ lw $a0, ($s3) -/* E06F1C 80241BBC 0C0497DA */ jal get_msg_properties -/* E06F20 80241BC0 24170008 */ addiu $s7, $zero, 8 -/* E06F24 80241BC4 24020001 */ addiu $v0, $zero, 1 -/* E06F28 80241BC8 AFA00024 */ sw $zero, 0x24($sp) -/* E06F2C 80241BCC AFA00028 */ sw $zero, 0x28($sp) -/* E06F30 80241BD0 AFA20044 */ sw $v0, 0x44($sp) -.L80241BD4: -/* E06F34 80241BD4 8E620000 */ lw $v0, ($s3) -/* E06F38 80241BD8 00511821 */ addu $v1, $v0, $s1 -/* E06F3C 80241BDC 26310001 */ addiu $s1, $s1, 1 -/* E06F40 80241BE0 00511021 */ addu $v0, $v0, $s1 -/* E06F44 80241BE4 90740000 */ lbu $s4, ($v1) -/* E06F48 80241BE8 90550000 */ lbu $s5, ($v0) -/* E06F4C 80241BEC 2684FF10 */ addiu $a0, $s4, -0xf0 -/* E06F50 80241BF0 2C830010 */ sltiu $v1, $a0, 0x10 -/* E06F54 80241BF4 10600017 */ beqz $v1, .L80241C54 -/* E06F58 80241BF8 0000B02D */ daddu $s6, $zero, $zero -/* E06F5C 80241BFC 00041080 */ sll $v0, $a0, 2 -/* E06F60 80241C00 3C098025 */ lui $t1, %hi(D_802493A0_E0E700) -/* E06F64 80241C04 252993A0 */ addiu $t1, $t1, %lo(D_802493A0_E0E700) -/* E06F68 80241C08 00491021 */ addu $v0, $v0, $t1 -/* E06F6C 80241C0C 8C420000 */ lw $v0, ($v0) -/* E06F70 80241C10 00400008 */ jr $v0 -/* E06F74 80241C14 00000000 */ nop -/* E06F78 80241C18 2682FF0D */ addiu $v0, $s4, -0xf3 -/* E06F7C 80241C1C 08090747 */ j .L80241D1C -/* E06F80 80241C20 AE020008 */ sw $v0, 8($s0) -/* E06F84 80241C24 08090747 */ j .L80241D1C -/* E06F88 80241C28 24160001 */ addiu $s6, $zero, 1 -/* E06F8C 80241C2C 8E630000 */ lw $v1, ($s3) -/* E06F90 80241C30 00711021 */ addu $v0, $v1, $s1 -/* E06F94 80241C34 90420000 */ lbu $v0, ($v0) -/* E06F98 80241C38 14400038 */ bnez $v0, .L80241D1C -/* E06F9C 80241C3C 26310001 */ addiu $s1, $s1, 1 -/* E06FA0 80241C40 00711021 */ addu $v0, $v1, $s1 -/* E06FA4 80241C44 90420000 */ lbu $v0, ($v0) -/* E06FA8 80241C48 26310001 */ addiu $s1, $s1, 1 -/* E06FAC 80241C4C 08090747 */ j .L80241D1C -/* E06FB0 80241C50 AE020004 */ sw $v0, 4($s0) -.L80241C54: -/* E06FB4 80241C54 24020001 */ addiu $v0, $zero, 1 -/* E06FB8 80241C58 329200FF */ andi $s2, $s4, 0xff -/* E06FBC 80241C5C AFA00010 */ sw $zero, 0x10($sp) -/* E06FC0 80241C60 AFA20014 */ sw $v0, 0x14($sp) -/* E06FC4 80241C64 8E050004 */ lw $a1, 4($s0) -/* E06FC8 80241C68 8E060008 */ lw $a2, 8($s0) -/* E06FCC 80241C6C 3C073F80 */ lui $a3, 0x3f80 -/* E06FD0 80241C70 0C049721 */ jal msg_get_print_char_width -/* E06FD4 80241C74 0240202D */ daddu $a0, $s2, $zero -/* E06FD8 80241C78 8FA30044 */ lw $v1, 0x44($sp) -/* E06FDC 80241C7C 8E040004 */ lw $a0, 4($s0) -/* E06FE0 80241C80 2463FFFF */ addiu $v1, $v1, -1 -/* E06FE4 80241C84 00621821 */ addu $v1, $v1, $v0 -/* E06FE8 80241C88 2482FFFD */ addiu $v0, $a0, -3 -/* E06FEC 80241C8C 2C420002 */ sltiu $v0, $v0, 2 -/* E06FF0 80241C90 10400022 */ beqz $v0, .L80241D1C -/* E06FF4 80241C94 AFA30044 */ sw $v1, 0x44($sp) -/* E06FF8 80241C98 3C058024 */ lui $a1, %hi(D_80243178_E084D8) -/* E06FFC 80241C9C 24A53178 */ addiu $a1, $a1, %lo(D_80243178_E084D8) -/* E07000 80241CA0 24090004 */ addiu $t1, $zero, 4 -/* E07004 80241CA4 14890003 */ bne $a0, $t1, .L80241CB4 -/* E07008 80241CA8 00000000 */ nop -/* E0700C 80241CAC 3C058024 */ lui $a1, %hi(D_80243110_E08470) -/* E07010 80241CB0 24A53110 */ addiu $a1, $a1, %lo(D_80243110_E08470) -.L80241CB4: -/* E07014 80241CB4 14890007 */ bne $a0, $t1, .L80241CD4 -/* E07018 80241CB8 0000302D */ daddu $a2, $zero, $zero -/* E0701C 80241CBC 12570004 */ beq $s2, $s7, .L80241CD0 -/* E07020 80241CC0 24620001 */ addiu $v0, $v1, 1 -/* E07024 80241CC4 16B70004 */ bne $s5, $s7, .L80241CD8 -/* E07028 80241CC8 328800FF */ andi $t0, $s4, 0xff -/* E0702C 80241CCC 24620001 */ addiu $v0, $v1, 1 -.L80241CD0: -/* E07030 80241CD0 AFA20044 */ sw $v0, 0x44($sp) -.L80241CD4: -/* E07034 80241CD4 328800FF */ andi $t0, $s4, 0xff -.L80241CD8: -/* E07038 80241CD8 32A7FFFF */ andi $a3, $s5, 0xffff -/* E0703C 80241CDC 00061080 */ sll $v0, $a2, 2 -/* E07040 80241CE0 00452021 */ addu $a0, $v0, $a1 -.L80241CE4: -/* E07044 80241CE4 90820000 */ lbu $v0, ($a0) -/* E07048 80241CE8 55020009 */ bnel $t0, $v0, .L80241D10 -/* E0704C 80241CEC 24840004 */ addiu $a0, $a0, 4 -/* E07050 80241CF0 90820001 */ lbu $v0, 1($a0) -/* E07054 80241CF4 54E20006 */ bnel $a3, $v0, .L80241D10 -/* E07058 80241CF8 24840004 */ addiu $a0, $a0, 4 -/* E0705C 80241CFC 84830002 */ lh $v1, 2($a0) -/* E07060 80241D00 8FA20044 */ lw $v0, 0x44($sp) -/* E07064 80241D04 00431021 */ addu $v0, $v0, $v1 -/* E07068 80241D08 AFA20044 */ sw $v0, 0x44($sp) -/* E0706C 80241D0C 24840004 */ addiu $a0, $a0, 4 -.L80241D10: -/* E07070 80241D10 84820002 */ lh $v0, 2($a0) -/* E07074 80241D14 1440FFF3 */ bnez $v0, .L80241CE4 -/* E07078 80241D18 00000000 */ nop -.L80241D1C: -/* E0707C 80241D1C 32C2FFFF */ andi $v0, $s6, 0xffff -/* E07080 80241D20 1040FFAC */ beqz $v0, .L80241BD4 -/* E07084 80241D24 00000000 */ nop -/* E07088 80241D28 96620070 */ lhu $v0, 0x70($s3) -/* E0708C 80241D2C 8FA30044 */ lw $v1, 0x44($sp) -/* E07090 80241D30 30420001 */ andi $v0, $v0, 1 -/* E07094 80241D34 10400015 */ beqz $v0, .L80241D8C -/* E07098 80241D38 AE630014 */ sw $v1, 0x14($s3) -/* E0709C 80241D3C 44831000 */ mtc1 $v1, $f2 -/* E070A0 80241D40 00000000 */ nop -/* E070A4 80241D44 468010A0 */ cvt.s.w $f2, $f2 -/* E070A8 80241D48 3C013FE0 */ lui $at, 0x3fe0 -/* E070AC 80241D4C 44810800 */ mtc1 $at, $f1 -/* E070B0 80241D50 44800000 */ mtc1 $zero, $f0 -/* E070B4 80241D54 460010A1 */ cvt.d.s $f2, $f2 -/* E070B8 80241D58 46201082 */ mul.d $f2, $f2, $f0 -/* E070BC 80241D5C 00000000 */ nop -/* E070C0 80241D60 44800000 */ mtc1 $zero, $f0 -/* E070C4 80241D64 44800800 */ mtc1 $zero, $f1 -/* E070C8 80241D68 00000000 */ nop -/* E070CC 80241D6C 46201080 */ add.d $f2, $f2, $f0 -/* E070D0 80241D70 C6600068 */ lwc1 $f0, 0x68($s3) -/* E070D4 80241D74 46800021 */ cvt.d.w $f0, $f0 -/* E070D8 80241D78 46220001 */ sub.d $f0, $f0, $f2 -/* E070DC 80241D7C 4620010D */ trunc.w.d $f4, $f0 -/* E070E0 80241D80 44152000 */ mfc1 $s5, $f4 -/* E070E4 80241D84 08090765 */ j .L80241D94 -/* E070E8 80241D88 0000B82D */ daddu $s7, $zero, $zero -.L80241D8C: -/* E070EC 80241D8C 8E750068 */ lw $s5, 0x68($s3) -/* E070F0 80241D90 0000B82D */ daddu $s7, $zero, $zero -.L80241D94: -/* E070F4 80241D94 AE000004 */ sw $zero, 4($s0) -/* E070F8 80241D98 AE000008 */ sw $zero, 8($s0) -/* E070FC 80241D9C 8E620010 */ lw $v0, 0x10($s3) -/* E07100 80241DA0 02E0882D */ daddu $s1, $s7, $zero -/* E07104 80241DA4 AE02000C */ sw $v0, 0xc($s0) -.L80241DA8: -/* E07108 80241DA8 8E620000 */ lw $v0, ($s3) -/* E0710C 80241DAC A7A00050 */ sh $zero, 0x50($sp) -/* E07110 80241DB0 00511821 */ addu $v1, $v0, $s1 -/* E07114 80241DB4 26310001 */ addiu $s1, $s1, 1 -/* E07118 80241DB8 00511021 */ addu $v0, $v0, $s1 -/* E0711C 80241DBC 90740000 */ lbu $s4, ($v1) -/* E07120 80241DC0 90560000 */ lbu $s6, ($v0) -/* E07124 80241DC4 2684FF10 */ addiu $a0, $s4, -0xf0 -/* E07128 80241DC8 2C830010 */ sltiu $v1, $a0, 0x10 -/* E0712C 80241DCC 10600016 */ beqz $v1, .L80241E28_E07188 -/* E07130 80241DD0 00041080 */ sll $v0, $a0, 2 -/* E07134 80241DD4 3C018025 */ lui $at, %hi(jtbl_802493E0_E0E740) -/* E07138 80241DD8 00220821 */ addu $at, $at, $v0 -/* E0713C 80241DDC 8C2293E0 */ lw $v0, %lo(jtbl_802493E0_E0E740)($at) -/* E07140 80241DE0 00400008 */ jr $v0 -/* E07144 80241DE4 00000000 */ nop -.L80241DE8_E07148: -/* E07148 80241DE8 2682FF0D */ addiu $v0, $s4, -0xf3 -/* E0714C 80241DEC 0809083F */ j .L802420FC -/* E07150 80241DF0 AE020008 */ sw $v0, 8($s0) -.L80241DF4_E07154: -/* E07154 80241DF4 24090001 */ addiu $t1, $zero, 1 -/* E07158 80241DF8 0809083F */ j .L802420FC -/* E0715C 80241DFC A7A90050 */ sh $t1, 0x50($sp) -.L80241E00_E07160: -/* E07160 80241E00 8E630000 */ lw $v1, ($s3) -/* E07164 80241E04 00711021 */ addu $v0, $v1, $s1 -/* E07168 80241E08 90420000 */ lbu $v0, ($v0) -/* E0716C 80241E0C 144000BB */ bnez $v0, .L802420FC -/* E07170 80241E10 26310001 */ addiu $s1, $s1, 1 -/* E07174 80241E14 00711021 */ addu $v0, $v1, $s1 -/* E07178 80241E18 90420000 */ lbu $v0, ($v0) -/* E0717C 80241E1C 26310001 */ addiu $s1, $s1, 1 -/* E07180 80241E20 0809083F */ j .L802420FC -/* E07184 80241E24 AE020004 */ sw $v0, 4($s0) -.L80241E28_E07188: -/* E07188 80241E28 328300FF */ andi $v1, $s4, 0xff -/* E0718C 80241E2C 2C6200F0 */ sltiu $v0, $v1, 0xf0 -/* E07190 80241E30 10400083 */ beqz $v0, .L80242040 -/* E07194 80241E34 24090001 */ addiu $t1, $zero, 1 -/* E07198 80241E38 AE030000 */ sw $v1, ($s0) -/* E0719C 80241E3C AE150010 */ sw $s5, 0x10($s0) -/* E071A0 80241E40 8E62006C */ lw $v0, 0x6c($s3) -/* E071A4 80241E44 AE020014 */ sw $v0, 0x14($s0) -/* E071A8 80241E48 8E63000C */ lw $v1, 0xc($s3) -/* E071AC 80241E4C 1069003F */ beq $v1, $t1, .L80241F4C -/* E071B0 80241E50 28620002 */ slti $v0, $v1, 2 -/* E071B4 80241E54 50400005 */ beql $v0, $zero, .L80241E6C -/* E071B8 80241E58 24090002 */ addiu $t1, $zero, 2 -/* E071BC 80241E5C 10600007 */ beqz $v1, .L80241E7C -/* E071C0 80241E60 00000000 */ nop -/* E071C4 80241E64 08090811 */ j .L80242044 -/* E071C8 80241E68 26F70001 */ addiu $s7, $s7, 1 -.L80241E6C: -/* E071CC 80241E6C 10690043 */ beq $v1, $t1, .L80241F7C -/* E071D0 80241E70 00000000 */ nop -/* E071D4 80241E74 08090810 */ j .L80242040 -/* E071D8 80241E78 26F70001 */ addiu $s7, $s7, 1 -.L80241E7C: -/* E071DC 80241E7C 8E620020 */ lw $v0, 0x20($s3) -/* E071E0 80241E80 00570018 */ mult $v0, $s7 -/* E071E4 80241E84 8E620008 */ lw $v0, 8($s3) -/* E071E8 80241E88 00004812 */ mflo $t1 -/* E071EC 80241E8C 00491023 */ subu $v0, $v0, $t1 -/* E071F0 80241E90 0440006A */ bltz $v0, .L8024203C -/* E071F4 80241E94 AE020018 */ sw $v0, 0x18($s0) -/* E071F8 80241E98 8E63001C */ lw $v1, 0x1c($s3) -/* E071FC 80241E9C 0062102A */ slt $v0, $v1, $v0 -/* E07200 80241EA0 54400001 */ bnel $v0, $zero, .L80241EA8 -/* E07204 80241EA4 AE030018 */ sw $v1, 0x18($s0) -.L80241EA8: -/* E07208 80241EA8 240900FD */ addiu $t1, $zero, 0xfd -/* E0720C 80241EAC 16C90005 */ bne $s6, $t1, .L80241EC4 -/* E07210 80241EB0 00000000 */ nop -/* E07214 80241EB4 8E030018 */ lw $v1, 0x18($s0) -/* E07218 80241EB8 8E62001C */ lw $v0, 0x1c($s3) -/* E0721C 80241EBC 50620001 */ beql $v1, $v0, .L80241EC4 -/* E07220 80241EC0 241E0001 */ addiu $fp, $zero, 1 -.L80241EC4: -/* E07224 80241EC4 8E630018 */ lw $v1, 0x18($s3) -/* E07228 80241EC8 2C620006 */ sltiu $v0, $v1, 6 -/* E0722C 80241ECC 1040005B */ beqz $v0, .L8024203C -/* E07230 80241ED0 00031080 */ sll $v0, $v1, 2 -/* E07234 80241ED4 3C018025 */ lui $at, %hi(jtbl_80249420_E0E780) -/* E07238 80241ED8 00220821 */ addu $at, $at, $v0 -/* E0723C 80241EDC 8C229420 */ lw $v0, %lo(jtbl_80249420_E0E780)($at) -/* E07240 80241EE0 00400008 */ jr $v0 -/* E07244 80241EE4 00000000 */ nop -.L80241EE8_E07248: -/* E07248 80241EE8 0260202D */ daddu $a0, $s3, $zero -/* E0724C 80241EEC 0C0900A0 */ jal func_80240280_E055E0 -/* E07250 80241EF0 0200282D */ daddu $a1, $s0, $zero -/* E07254 80241EF4 08090810 */ j .L80242040 -/* E07258 80241EF8 26F70001 */ addiu $s7, $s7, 1 -.L80241EFC_E0725C: -/* E0725C 80241EFC 0260202D */ daddu $a0, $s3, $zero -/* E07260 80241F00 0C090154 */ jal func_80240550_E058B0 -/* E07264 80241F04 0200282D */ daddu $a1, $s0, $zero -/* E07268 80241F08 08090810 */ j .L80242040 -/* E0726C 80241F0C 26F70001 */ addiu $s7, $s7, 1 -.L80241F10_E07270: -/* E07270 80241F10 0260202D */ daddu $a0, $s3, $zero -/* E07274 80241F14 0C09020B */ jal func_8024082C_E05B8C -/* E07278 80241F18 0200282D */ daddu $a1, $s0, $zero -/* E0727C 80241F1C 08090810 */ j .L80242040 -/* E07280 80241F20 26F70001 */ addiu $s7, $s7, 1 -.L80241F24_E07284: -/* E07284 80241F24 0260202D */ daddu $a0, $s3, $zero -/* E07288 80241F28 0C0902BE */ jal func_80240AF8_E05E58 -/* E0728C 80241F2C 0200282D */ daddu $a1, $s0, $zero -/* E07290 80241F30 08090810 */ j .L80242040 -/* E07294 80241F34 26F70001 */ addiu $s7, $s7, 1 -.L80241F38_E07298: -/* E07298 80241F38 0260202D */ daddu $a0, $s3, $zero -/* E0729C 80241F3C 0C0903B0 */ jal func_80240EC0_E06220 -/* E072A0 80241F40 0200282D */ daddu $a1, $s0, $zero -/* E072A4 80241F44 08090810 */ j .L80242040 -/* E072A8 80241F48 26F70001 */ addiu $s7, $s7, 1 -.L80241F4C: -/* E072AC 80241F4C 240900FD */ addiu $t1, $zero, 0xfd -/* E072B0 80241F50 16C90006 */ bne $s6, $t1, .L80241F6C -/* E072B4 80241F54 0260202D */ daddu $a0, $s3, $zero -/* E072B8 80241F58 8E630008 */ lw $v1, 8($s3) -/* E072BC 80241F5C 8E620038 */ lw $v0, 0x38($s3) -/* E072C0 80241F60 50620002 */ beql $v1, $v0, .L80241F6C -/* E072C4 80241F64 241E0001 */ addiu $fp, $zero, 1 -/* E072C8 80241F68 0260202D */ daddu $a0, $s3, $zero -.L80241F6C: -/* E072CC 80241F6C 0C090477 */ jal func_802411DC_E0653C -/* E072D0 80241F70 0200282D */ daddu $a1, $s0, $zero -/* E072D4 80241F74 08090810 */ j .L80242040 -/* E072D8 80241F78 26F70001 */ addiu $s7, $s7, 1 -.L80241F7C: -/* E072DC 80241F7C 8E620054 */ lw $v0, 0x54($s3) -/* E072E0 80241F80 00570018 */ mult $v0, $s7 -/* E072E4 80241F84 8E620008 */ lw $v0, 8($s3) -/* E072E8 80241F88 00004812 */ mflo $t1 -/* E072EC 80241F8C 00491023 */ subu $v0, $v0, $t1 -/* E072F0 80241F90 04410002 */ bgez $v0, .L80241F9C -/* E072F4 80241F94 AE020018 */ sw $v0, 0x18($s0) -/* E072F8 80241F98 AE000018 */ sw $zero, 0x18($s0) -.L80241F9C: -/* E072FC 80241F9C 8E020018 */ lw $v0, 0x18($s0) -/* E07300 80241FA0 8E630050 */ lw $v1, 0x50($s3) -/* E07304 80241FA4 0062102A */ slt $v0, $v1, $v0 -/* E07308 80241FA8 54400001 */ bnel $v0, $zero, .L80241FB0 -/* E0730C 80241FAC AE030018 */ sw $v1, 0x18($s0) -.L80241FB0: -/* E07310 80241FB0 240900FD */ addiu $t1, $zero, 0xfd -/* E07314 80241FB4 16C90005 */ bne $s6, $t1, .L80241FCC -/* E07318 80241FB8 00000000 */ nop -/* E0731C 80241FBC 8E030018 */ lw $v1, 0x18($s0) -/* E07320 80241FC0 8E620050 */ lw $v0, 0x50($s3) -/* E07324 80241FC4 50620001 */ beql $v1, $v0, .L80241FCC -/* E07328 80241FC8 241E0001 */ addiu $fp, $zero, 1 -.L80241FCC: -/* E0732C 80241FCC 8E63004C */ lw $v1, 0x4c($s3) -/* E07330 80241FD0 24090001 */ addiu $t1, $zero, 1 -/* E07334 80241FD4 1069000D */ beq $v1, $t1, .L8024200C -/* E07338 80241FD8 28620002 */ slti $v0, $v1, 2 -/* E0733C 80241FDC 50400005 */ beql $v0, $zero, .L80241FF4 -/* E07340 80241FE0 24090002 */ addiu $t1, $zero, 2 -/* E07344 80241FE4 10600013 */ beqz $v1, .L80242034 -/* E07348 80241FE8 0260202D */ daddu $a0, $s3, $zero -/* E0734C 80241FEC 08090811 */ j .L80242044 -/* E07350 80241FF0 26F70001 */ addiu $s7, $s7, 1 -.L80241FF4: -/* E07354 80241FF4 1069000A */ beq $v1, $t1, .L80242020 -/* E07358 80241FF8 24020003 */ addiu $v0, $zero, 3 -/* E0735C 80241FFC 1062000D */ beq $v1, $v0, .L80242034 -/* E07360 80242000 0260202D */ daddu $a0, $s3, $zero -/* E07364 80242004 08090810 */ j .L80242040 -/* E07368 80242008 26F70001 */ addiu $s7, $s7, 1 -.L8024200C: -/* E0736C 8024200C 0260202D */ daddu $a0, $s3, $zero -/* E07370 80242010 0C090537 */ jal func_802414DC_E0683C -/* E07374 80242014 0200282D */ daddu $a1, $s0, $zero -/* E07378 80242018 08090810 */ j .L80242040 -/* E0737C 8024201C 26F70001 */ addiu $s7, $s7, 1 -.L80242020: -/* E07380 80242020 0260202D */ daddu $a0, $s3, $zero -/* E07384 80242024 0C0905DE */ jal func_80241778_E06AD8 -/* E07388 80242028 0200282D */ daddu $a1, $s0, $zero -/* E0738C 8024202C 08090810 */ j .L80242040 -/* E07390 80242030 26F70001 */ addiu $s7, $s7, 1 -.L80242034: -/* E07394 80242034 0C090682 */ jal func_80241A08_E06D68 -/* E07398 80242038 0200282D */ daddu $a1, $s0, $zero -.L8024203C: -/* E0739C 8024203C 26F70001 */ addiu $s7, $s7, 1 -.L80242040: -/* E073A0 80242040 24090001 */ addiu $t1, $zero, 1 -.L80242044: -/* E073A4 80242044 329200FF */ andi $s2, $s4, 0xff -/* E073A8 80242048 AFA00010 */ sw $zero, 0x10($sp) -/* E073AC 8024204C AFA90014 */ sw $t1, 0x14($sp) -/* E073B0 80242050 8E050004 */ lw $a1, 4($s0) -/* E073B4 80242054 8E060008 */ lw $a2, 8($s0) -/* E073B8 80242058 3C073F80 */ lui $a3, 0x3f80 -/* E073BC 8024205C 0C049721 */ jal msg_get_print_char_width -/* E073C0 80242060 0240202D */ daddu $a0, $s2, $zero -/* E073C4 80242064 26A3FFFF */ addiu $v1, $s5, -1 -/* E073C8 80242068 8E040004 */ lw $a0, 4($s0) -/* E073CC 8024206C 0062A821 */ addu $s5, $v1, $v0 -/* E073D0 80242070 2482FFFD */ addiu $v0, $a0, -3 -/* E073D4 80242074 2C420002 */ sltiu $v0, $v0, 2 -/* E073D8 80242078 10400020 */ beqz $v0, .L802420FC -/* E073DC 8024207C 00000000 */ nop -/* E073E0 80242080 3C058024 */ lui $a1, %hi(D_80243178_E084D8) -/* E073E4 80242084 24A53178 */ addiu $a1, $a1, %lo(D_80243178_E084D8) -/* E073E8 80242088 24090004 */ addiu $t1, $zero, 4 -/* E073EC 8024208C 14890003 */ bne $a0, $t1, .L8024209C -/* E073F0 80242090 00000000 */ nop -/* E073F4 80242094 3C058024 */ lui $a1, %hi(D_80243110_E08470) -/* E073F8 80242098 24A53110 */ addiu $a1, $a1, %lo(D_80243110_E08470) -.L8024209C: -/* E073FC 8024209C 14890007 */ bne $a0, $t1, .L802420BC -/* E07400 802420A0 0000302D */ daddu $a2, $zero, $zero -/* E07404 802420A4 24020008 */ addiu $v0, $zero, 8 -/* E07408 802420A8 52420004 */ beql $s2, $v0, .L802420BC -/* E0740C 802420AC 26B50001 */ addiu $s5, $s5, 1 -/* E07410 802420B0 16C20003 */ bne $s6, $v0, .L802420C0 -/* E07414 802420B4 328300FF */ andi $v1, $s4, 0xff -/* E07418 802420B8 26B50001 */ addiu $s5, $s5, 1 -.L802420BC: -/* E0741C 802420BC 328300FF */ andi $v1, $s4, 0xff -.L802420C0: -/* E07420 802420C0 32C7FFFF */ andi $a3, $s6, 0xffff -/* E07424 802420C4 00061080 */ sll $v0, $a2, 2 -/* E07428 802420C8 00452021 */ addu $a0, $v0, $a1 -.L802420CC: -/* E0742C 802420CC 90820000 */ lbu $v0, ($a0) -/* E07430 802420D0 54620007 */ bnel $v1, $v0, .L802420F0 -/* E07434 802420D4 24840004 */ addiu $a0, $a0, 4 -/* E07438 802420D8 90820001 */ lbu $v0, 1($a0) -/* E0743C 802420DC 54E20004 */ bnel $a3, $v0, .L802420F0 -/* E07440 802420E0 24840004 */ addiu $a0, $a0, 4 -/* E07444 802420E4 84820002 */ lh $v0, 2($a0) -/* E07448 802420E8 02A2A821 */ addu $s5, $s5, $v0 -/* E0744C 802420EC 24840004 */ addiu $a0, $a0, 4 -.L802420F0: -/* E07450 802420F0 84820002 */ lh $v0, 2($a0) -/* E07454 802420F4 1440FFF5 */ bnez $v0, .L802420CC -/* E07458 802420F8 00000000 */ nop -.L802420FC: -/* E0745C 802420FC 97A20050 */ lhu $v0, 0x50($sp) -/* E07460 80242100 1040FF29 */ beqz $v0, .L80241DA8 -/* E07464 80242104 00000000 */ nop -/* E07468 80242108 8E62000C */ lw $v0, 0xc($s3) -/* E0746C 8024210C 14400015 */ bnez $v0, .L80242164 -/* E07470 80242110 00000000 */ nop -/* E07474 80242114 13C00013 */ beqz $fp, .L80242164 -/* E07478 80242118 0000282D */ daddu $a1, $zero, $zero -/* E0747C 8024211C 00A0302D */ daddu $a2, $a1, $zero -/* E07480 80242120 AFA0004C */ sw $zero, 0x4c($sp) -/* E07484 80242124 AFA00010 */ sw $zero, 0x10($sp) -/* E07488 80242128 AFA00014 */ sw $zero, 0x14($sp) -/* E0748C 8024212C AFA00018 */ sw $zero, 0x18($sp) -/* E07490 80242130 AFA0001C */ sw $zero, 0x1c($sp) -/* E07494 80242134 8E640000 */ lw $a0, ($s3) -/* E07498 80242138 0C0497DA */ jal get_msg_properties -/* E0749C 8024213C 27A7004C */ addiu $a3, $sp, 0x4c -/* E074A0 80242140 8E64000C */ lw $a0, 0xc($s3) -/* E074A4 80242144 8E630038 */ lw $v1, 0x38($s3) -/* E074A8 80242148 AE600008 */ sw $zero, 8($s3) -/* E074AC 8024214C 24820001 */ addiu $v0, $a0, 1 -/* E074B0 80242150 1C600016 */ bgtz $v1, .L802421AC -/* E074B4 80242154 AE62000C */ sw $v0, 0xc($s3) -/* E074B8 80242158 24820002 */ addiu $v0, $a0, 2 -/* E074BC 8024215C 0809086B */ j .L802421AC -/* E074C0 80242160 AE62000C */ sw $v0, 0xc($s3) -.L80242164: -/* E074C4 80242164 8E63000C */ lw $v1, 0xc($s3) -/* E074C8 80242168 24020001 */ addiu $v0, $zero, 1 -/* E074CC 8024216C 14620008 */ bne $v1, $v0, .L80242190 -/* E074D0 80242170 24020002 */ addiu $v0, $zero, 2 -/* E074D4 80242174 13C00005 */ beqz $fp, .L8024218C -/* E074D8 80242178 0060102D */ daddu $v0, $v1, $zero -/* E074DC 8024217C 24420001 */ addiu $v0, $v0, 1 -/* E074E0 80242180 AE600008 */ sw $zero, 8($s3) -/* E074E4 80242184 0809086B */ j .L802421AC -/* E074E8 80242188 AE62000C */ sw $v0, 0xc($s3) -.L8024218C: -/* E074EC 8024218C 24020002 */ addiu $v0, $zero, 2 -.L80242190: -/* E074F0 80242190 14620006 */ bne $v1, $v0, .L802421AC -/* E074F4 80242194 00000000 */ nop -/* E074F8 80242198 13C00004 */ beqz $fp, .L802421AC -/* E074FC 8024219C 00000000 */ nop -/* E07500 802421A0 96620070 */ lhu $v0, 0x70($s3) -/* E07504 802421A4 3042FFFE */ andi $v0, $v0, 0xfffe -/* E07508 802421A8 A6620070 */ sh $v0, 0x70($s3) -.L802421AC: -/* E0750C 802421AC 8E620008 */ lw $v0, 8($s3) -/* E07510 802421B0 24420001 */ addiu $v0, $v0, 1 -/* E07514 802421B4 AE620008 */ sw $v0, 8($s3) -/* E07518 802421B8 8FBF007C */ lw $ra, 0x7c($sp) -/* E0751C 802421BC 8FBE0078 */ lw $fp, 0x78($sp) -/* E07520 802421C0 8FB70074 */ lw $s7, 0x74($sp) -/* E07524 802421C4 8FB60070 */ lw $s6, 0x70($sp) -/* E07528 802421C8 8FB5006C */ lw $s5, 0x6c($sp) -/* E0752C 802421CC 8FB40068 */ lw $s4, 0x68($sp) -/* E07530 802421D0 8FB30064 */ lw $s3, 0x64($sp) -/* E07534 802421D4 8FB20060 */ lw $s2, 0x60($sp) -/* E07538 802421D8 8FB1005C */ lw $s1, 0x5c($sp) -/* E0753C 802421DC 8FB00058 */ lw $s0, 0x58($sp) -/* E07540 802421E0 03E00008 */ jr $ra -/* E07544 802421E4 27BD0080 */ addiu $sp, $sp, 0x80 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802421E8_E07548.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802421E8_E07548.s deleted file mode 100644 index edb3885c55..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802421E8_E07548.s +++ /dev/null @@ -1,102 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802421E8_E07548 -/* E07548 802421E8 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* E0754C 802421EC 3C05DC08 */ lui $a1, 0xdc08 -/* E07550 802421F0 34A50008 */ ori $a1, $a1, 8 -/* E07554 802421F4 AFB40030 */ sw $s4, 0x30($sp) -/* E07558 802421F8 0000A02D */ daddu $s4, $zero, $zero -/* E0755C 802421FC AFB10024 */ sw $s1, 0x24($sp) -/* E07560 80242200 3C11800A */ lui $s1, %hi(gMasterGfxPos) -/* E07564 80242204 2631A66C */ addiu $s1, $s1, %lo(gMasterGfxPos) -/* E07568 80242208 AFB3002C */ sw $s3, 0x2c($sp) -/* E0756C 8024220C 24130004 */ addiu $s3, $zero, 4 -/* E07570 80242210 3C028025 */ lui $v0, %hi(gFileMenuMessages) -/* E07574 80242214 2442B9D0 */ addiu $v0, $v0, %lo(gFileMenuMessages) -/* E07578 80242218 AFBF0038 */ sw $ra, 0x38($sp) -/* E0757C 8024221C AFB50034 */ sw $s5, 0x34($sp) -/* E07580 80242220 AFB20028 */ sw $s2, 0x28($sp) -/* E07584 80242224 AFB00020 */ sw $s0, 0x20($sp) -/* E07588 80242228 8E230000 */ lw $v1, ($s1) -/* E0758C 8024222C 3C108007 */ lui $s0, %hi(gCurrentDisplayContextIndex) -/* E07590 80242230 8E1041F4 */ lw $s0, %lo(gCurrentDisplayContextIndex)($s0) -/* E07594 80242234 3C158025 */ lui $s5, %hi(D_8024A2C4) -/* E07598 80242238 8EB5A2C4 */ lw $s5, %lo(D_8024A2C4)($s5) -/* E0759C 8024223C 44800000 */ mtc1 $zero, $f0 -/* E075A0 80242240 3C01C2C8 */ lui $at, 0xc2c8 -/* E075A4 80242244 44811000 */ mtc1 $at, $f2 -/* E075A8 80242248 3C0142C8 */ lui $at, 0x42c8 -/* E075AC 8024224C 44812000 */ mtc1 $at, $f4 -/* E075B0 80242250 3C013F80 */ lui $at, 0x3f80 -/* E075B4 80242254 44813000 */ mtc1 $at, $f6 -/* E075B8 80242258 3C0643A0 */ lui $a2, 0x43a0 -/* E075BC 8024225C 3C07C370 */ lui $a3, 0xc370 -/* E075C0 80242260 0060402D */ daddu $t0, $v1, $zero -/* E075C4 80242264 24630008 */ addiu $v1, $v1, 8 -/* E075C8 80242268 00108180 */ sll $s0, $s0, 6 -/* E075CC 8024226C 02028021 */ addu $s0, $s0, $v0 -/* E075D0 80242270 0200202D */ daddu $a0, $s0, $zero -/* E075D4 80242274 02A0902D */ daddu $s2, $s5, $zero -/* E075D8 80242278 AE230000 */ sw $v1, ($s1) -/* E075DC 8024227C AD050000 */ sw $a1, ($t0) -/* E075E0 80242280 44050000 */ mfc1 $a1, $f0 -/* E075E4 80242284 3C028024 */ lui $v0, %hi(D_80243200_E08560) -/* E075E8 80242288 24423200 */ addiu $v0, $v0, %lo(D_80243200_E08560) -/* E075EC 8024228C AD020004 */ sw $v0, 4($t0) -/* E075F0 80242290 E7A20014 */ swc1 $f2, 0x14($sp) -/* E075F4 80242294 E7A40018 */ swc1 $f4, 0x18($sp) -/* E075F8 80242298 E7A6001C */ swc1 $f6, 0x1c($sp) -/* E075FC 8024229C 0C018E90 */ jal guOrtho -/* E07600 802422A0 AFA50010 */ sw $a1, 0x10($sp) -/* E07604 802422A4 3C03DA38 */ lui $v1, 0xda38 -/* E07608 802422A8 34630007 */ ori $v1, $v1, 7 -/* E0760C 802422AC 3C05D9C0 */ lui $a1, 0xd9c0 -/* E07610 802422B0 34A5F9FB */ ori $a1, $a1, 0xf9fb -/* E07614 802422B4 3C07D9FF */ lui $a3, 0xd9ff -/* E07618 802422B8 34E7FFFF */ ori $a3, $a3, 0xffff -/* E0761C 802422BC 3C060020 */ lui $a2, 0x20 -/* E07620 802422C0 8E220000 */ lw $v0, ($s1) -/* E07624 802422C4 00D33025 */ or $a2, $a2, $s3 -/* E07628 802422C8 0040202D */ daddu $a0, $v0, $zero -/* E0762C 802422CC 24420008 */ addiu $v0, $v0, 8 -/* E07630 802422D0 AE220000 */ sw $v0, ($s1) -/* E07634 802422D4 AC830000 */ sw $v1, ($a0) -/* E07638 802422D8 3C038000 */ lui $v1, 0x8000 -/* E0763C 802422DC 02038021 */ addu $s0, $s0, $v1 -/* E07640 802422E0 24430008 */ addiu $v1, $v0, 8 -/* E07644 802422E4 AC900004 */ sw $s0, 4($a0) -/* E07648 802422E8 AE230000 */ sw $v1, ($s1) -/* E0764C 802422EC 3C03E700 */ lui $v1, 0xe700 -/* E07650 802422F0 AC430000 */ sw $v1, ($v0) -/* E07654 802422F4 24430010 */ addiu $v1, $v0, 0x10 -/* E07658 802422F8 AC400004 */ sw $zero, 4($v0) -/* E0765C 802422FC AE230000 */ sw $v1, ($s1) -/* E07660 80242300 24430018 */ addiu $v1, $v0, 0x18 -/* E07664 80242304 AC450008 */ sw $a1, 8($v0) -/* E07668 80242308 AC40000C */ sw $zero, 0xc($v0) -/* E0766C 8024230C AE230000 */ sw $v1, ($s1) -/* E07670 80242310 AC470010 */ sw $a3, 0x10($v0) -/* E07674 80242314 AC460014 */ sw $a2, 0x14($v0) -.L80242318: -/* E07678 80242318 96420074 */ lhu $v0, 0x74($s2) -/* E0767C 8024231C 30420001 */ andi $v0, $v0, 1 -/* E07680 80242320 50400004 */ beql $v0, $zero, .L80242334 -/* E07684 80242324 26730074 */ addiu $s3, $s3, 0x74 -/* E07688 80242328 0C0906D1 */ jal func_80241B44_E06EA4 -/* E0768C 8024232C 02B32021 */ addu $a0, $s5, $s3 -/* E07690 80242330 26730074 */ addiu $s3, $s3, 0x74 -.L80242334: -/* E07694 80242334 26940001 */ addiu $s4, $s4, 1 -/* E07698 80242338 2A820020 */ slti $v0, $s4, 0x20 -/* E0769C 8024233C 1440FFF6 */ bnez $v0, .L80242318 -/* E076A0 80242340 26520074 */ addiu $s2, $s2, 0x74 -/* E076A4 80242344 8FBF0038 */ lw $ra, 0x38($sp) -/* E076A8 80242348 8FB50034 */ lw $s5, 0x34($sp) -/* E076AC 8024234C 8FB40030 */ lw $s4, 0x30($sp) -/* E076B0 80242350 8FB3002C */ lw $s3, 0x2c($sp) -/* E076B4 80242354 8FB20028 */ lw $s2, 0x28($sp) -/* E076B8 80242358 8FB10024 */ lw $s1, 0x24($sp) -/* E076BC 8024235C 8FB00020 */ lw $s0, 0x20($sp) -/* E076C0 80242360 03E00008 */ jr $ra -/* E076C4 80242364 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242368_E076C8.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242368_E076C8.s deleted file mode 100644 index 9089cf521f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242368_E076C8.s +++ /dev/null @@ -1,116 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242368_E076C8 -/* E076C8 80242368 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* E076CC 8024236C AFB20030 */ sw $s2, 0x30($sp) -/* E076D0 80242370 0080902D */ daddu $s2, $a0, $zero -/* E076D4 80242374 0000182D */ daddu $v1, $zero, $zero -/* E076D8 80242378 3C068025 */ lui $a2, %hi(D_8024A2C4) -/* E076DC 8024237C 8CC6A2C4 */ lw $a2, %lo(D_8024A2C4)($a2) -/* E076E0 80242380 24040020 */ addiu $a0, $zero, 0x20 -/* E076E4 80242384 AFBF0038 */ sw $ra, 0x38($sp) -/* E076E8 80242388 AFB30034 */ sw $s3, 0x34($sp) -/* E076EC 8024238C AFB1002C */ sw $s1, 0x2c($sp) -/* E076F0 80242390 AFB00028 */ sw $s0, 0x28($sp) -/* E076F4 80242394 00C0282D */ daddu $a1, $a2, $zero -.L80242398: -/* E076F8 80242398 94A20074 */ lhu $v0, 0x74($a1) -/* E076FC 8024239C 30420001 */ andi $v0, $v0, 1 -/* E07700 802423A0 10400006 */ beqz $v0, .L802423BC -/* E07704 802423A4 000310C0 */ sll $v0, $v1, 3 -/* E07708 802423A8 24630001 */ addiu $v1, $v1, 1 -/* E0770C 802423AC 10640051 */ beq $v1, $a0, .L802424F4 -/* E07710 802423B0 24A50074 */ addiu $a1, $a1, 0x74 -/* E07714 802423B4 080908E6 */ j .L80242398 -/* E07718 802423B8 00000000 */ nop -.L802423BC: -/* E0771C 802423BC 00431023 */ subu $v0, $v0, $v1 -/* E07720 802423C0 00021080 */ sll $v0, $v0, 2 -/* E07724 802423C4 00431021 */ addu $v0, $v0, $v1 -/* E07728 802423C8 00021080 */ sll $v0, $v0, 2 -/* E0772C 802423CC 24420004 */ addiu $v0, $v0, 4 -/* E07730 802423D0 8E440000 */ lw $a0, ($s2) -/* E07734 802423D4 10800047 */ beqz $a0, .L802424F4 -/* E07738 802423D8 00C28821 */ addu $s1, $a2, $v0 -/* E0773C 802423DC 04820014 */ bltzl $a0, .L80242430 -/* E07740 802423E0 AE240000 */ sw $a0, ($s1) -/* E07744 802423E4 3C138024 */ lui $s3, %hi(D_80243210_E08570) -/* E07748 802423E8 26733210 */ addiu $s3, $s3, %lo(D_80243210_E08570) -/* E0774C 802423EC 8E650000 */ lw $a1, ($s3) -/* E07750 802423F0 3C108025 */ lui $s0, %hi(D_8024A2D0) -/* E07754 802423F4 2610A2D0 */ addiu $s0, $s0, %lo(D_8024A2D0) -/* E07758 802423F8 00052A00 */ sll $a1, $a1, 8 -/* E0775C 802423FC 0C049601 */ jal dma_load_msg -/* E07760 80242400 00B02821 */ addu $a1, $a1, $s0 -/* E07764 80242404 8E630000 */ lw $v1, ($s3) -/* E07768 80242408 00031200 */ sll $v0, $v1, 8 -/* E0776C 8024240C 00501021 */ addu $v0, $v0, $s0 -/* E07770 80242410 24630001 */ addiu $v1, $v1, 1 -/* E07774 80242414 AE220000 */ sw $v0, ($s1) -/* E07778 80242418 AE630000 */ sw $v1, ($s3) -/* E0777C 8024241C 28630017 */ slti $v1, $v1, 0x17 -/* E07780 80242420 50600003 */ beql $v1, $zero, .L80242430 -/* E07784 80242424 AE600000 */ sw $zero, ($s3) -/* E07788 80242428 0809090D */ j .L80242434 -/* E0778C 8024242C 0000282D */ daddu $a1, $zero, $zero -.L80242430: -/* E07790 80242430 0000282D */ daddu $a1, $zero, $zero -.L80242434: -/* E07794 80242434 27A20024 */ addiu $v0, $sp, 0x24 -/* E07798 80242438 00A0302D */ daddu $a2, $a1, $zero -/* E0779C 8024243C AFA00010 */ sw $zero, 0x10($sp) -/* E077A0 80242440 AFA00014 */ sw $zero, 0x14($sp) -/* E077A4 80242444 AFA20018 */ sw $v0, 0x18($sp) -/* E077A8 80242448 AFA0001C */ sw $zero, 0x1c($sp) -/* E077AC 8024244C 8E240000 */ lw $a0, ($s1) -/* E077B0 80242450 0C0497DA */ jal get_msg_properties -/* E077B4 80242454 27A70020 */ addiu $a3, $sp, 0x20 -/* E077B8 80242458 8E420004 */ lw $v0, 4($s2) -/* E077BC 8024245C AE220068 */ sw $v0, 0x68($s1) -/* E077C0 80242460 8E420008 */ lw $v0, 8($s2) -/* E077C4 80242464 AE22006C */ sw $v0, 0x6c($s1) -/* E077C8 80242468 8E42000C */ lw $v0, 0xc($s2) -/* E077CC 8024246C AE220010 */ sw $v0, 0x10($s1) -/* E077D0 80242470 8E420010 */ lw $v0, 0x10($s2) -/* E077D4 80242474 AE220018 */ sw $v0, 0x18($s1) -/* E077D8 80242478 8E420014 */ lw $v0, 0x14($s2) -/* E077DC 8024247C AE22001C */ sw $v0, 0x1c($s1) -/* E077E0 80242480 8E42001C */ lw $v0, 0x1c($s2) -/* E077E4 80242484 AE220034 */ sw $v0, 0x34($s1) -/* E077E8 80242488 8E420020 */ lw $v0, 0x20($s2) -/* E077EC 8024248C AE220038 */ sw $v0, 0x38($s1) -/* E077F0 80242490 8E440018 */ lw $a0, 0x18($s2) -/* E077F4 80242494 1080000C */ beqz $a0, .L802424C8 -/* E077F8 80242498 00000000 */ nop -/* E077FC 8024249C 8FA20024 */ lw $v0, 0x24($sp) -/* E07800 802424A0 8FA30020 */ lw $v1, 0x20($sp) -/* E07804 802424A4 24420001 */ addiu $v0, $v0, 1 -/* E07808 802424A8 00621823 */ subu $v1, $v1, $v0 -/* E0780C 802424AC 00640018 */ mult $v1, $a0 -/* E07810 802424B0 8E420020 */ lw $v0, 0x20($s2) -/* E07814 802424B4 00004012 */ mflo $t0 -/* E07818 802424B8 00481023 */ subu $v0, $v0, $t0 -/* E0781C 802424BC 04410002 */ bgez $v0, .L802424C8 -/* E07820 802424C0 AE220038 */ sw $v0, 0x38($s1) -/* E07824 802424C4 AE200038 */ sw $zero, 0x38($s1) -.L802424C8: -/* E07828 802424C8 8E420024 */ lw $v0, 0x24($s2) -/* E0782C 802424CC AE22004C */ sw $v0, 0x4c($s1) -/* E07830 802424D0 8E420028 */ lw $v0, 0x28($s2) -/* E07834 802424D4 AE220050 */ sw $v0, 0x50($s1) -/* E07838 802424D8 8E420018 */ lw $v0, 0x18($s2) -/* E0783C 802424DC AE220020 */ sw $v0, 0x20($s1) -/* E07840 802424E0 8E42002C */ lw $v0, 0x2c($s2) -/* E07844 802424E4 AE220054 */ sw $v0, 0x54($s1) -/* E07848 802424E8 96420034 */ lhu $v0, 0x34($s2) -/* E0784C 802424EC 34420003 */ ori $v0, $v0, 3 -/* E07850 802424F0 A6220070 */ sh $v0, 0x70($s1) -.L802424F4: -/* E07854 802424F4 8FBF0038 */ lw $ra, 0x38($sp) -/* E07858 802424F8 8FB30034 */ lw $s3, 0x34($sp) -/* E0785C 802424FC 8FB20030 */ lw $s2, 0x30($sp) -/* E07860 80242500 8FB1002C */ lw $s1, 0x2c($sp) -/* E07864 80242504 8FB00028 */ lw $s0, 0x28($sp) -/* E07868 80242508 03E00008 */ jr $ra -/* E0786C 8024250C 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242510_E07870.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242510_E07870.s deleted file mode 100644 index 49ae8646cb..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242510_E07870.s +++ /dev/null @@ -1,27 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242510_E07870 -/* E07870 80242510 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* E07874 80242514 AFB00010 */ sw $s0, 0x10($sp) -/* E07878 80242518 3C108025 */ lui $s0, %hi(D_80249440) -/* E0787C 8024251C 26109440 */ addiu $s0, $s0, %lo(D_80249440) -/* E07880 80242520 3C058024 */ lui $a1, %hi(func_802421E8_E07548) -/* E07884 80242524 24A521E8 */ addiu $a1, $a1, %lo(func_802421E8_E07548) -/* E07888 80242528 AFBF0014 */ sw $ra, 0x14($sp) -/* E0788C 8024252C 3C018025 */ lui $at, %hi(D_8024A2C4) -/* E07890 80242530 AC30A2C4 */ sw $s0, %lo(D_8024A2C4)($at) -/* E07894 80242534 0C048C8F */ jal create_generic_entity_frontUI -/* E07898 80242538 0000202D */ daddu $a0, $zero, $zero -/* E0789C 8024253C 2404001F */ addiu $a0, $zero, 0x1f -/* E078A0 80242540 26030E0C */ addiu $v1, $s0, 0xe0c -/* E078A4 80242544 AE020000 */ sw $v0, ($s0) -.L80242548: -/* E078A8 80242548 A4600074 */ sh $zero, 0x74($v1) -/* E078AC 8024254C 2484FFFF */ addiu $a0, $a0, -1 -/* E078B0 80242550 0481FFFD */ bgez $a0, .L80242548 -/* E078B4 80242554 2463FF8C */ addiu $v1, $v1, -0x74 -/* E078B8 80242558 8FBF0014 */ lw $ra, 0x14($sp) -/* E078BC 8024255C 8FB00010 */ lw $s0, 0x10($sp) -/* E078C0 80242560 03E00008 */ jr $ra -/* E078C4 80242564 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242568_E078C8.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242568_E078C8.s deleted file mode 100644 index 28e86738b8..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242568_E078C8.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242568_E078C8 -/* E078C8 80242568 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* E078CC 8024256C AFBF0010 */ sw $ra, 0x10($sp) -/* E078D0 80242570 0C090944 */ jal func_80242510_E07870 -/* E078D4 80242574 00000000 */ nop -/* E078D8 80242578 0C048DCD */ jal load_font -/* E078DC 8024257C 24040001 */ addiu $a0, $zero, 1 -/* E078E0 80242580 8FBF0010 */ lw $ra, 0x10($sp) -/* E078E4 80242584 24020002 */ addiu $v0, $zero, 2 -/* E078E8 80242588 03E00008 */ jr $ra -/* E078EC 8024258C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242590_E078F0.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242590_E078F0.s deleted file mode 100644 index 126d42640b..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242590_E078F0.s +++ /dev/null @@ -1,76 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242590_E078F0 -/* E078F0 80242590 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* E078F4 80242594 AFB10014 */ sw $s1, 0x14($sp) -/* E078F8 80242598 0080882D */ daddu $s1, $a0, $zero -/* E078FC 8024259C AFBF001C */ sw $ra, 0x1c($sp) -/* E07900 802425A0 AFB20018 */ sw $s2, 0x18($sp) -/* E07904 802425A4 AFB00010 */ sw $s0, 0x10($sp) -/* E07908 802425A8 8E22000C */ lw $v0, 0xc($s1) -/* E0790C 802425AC 00A0802D */ daddu $s0, $a1, $zero -/* E07910 802425B0 0C0B1EAF */ jal evt_get_variable -/* E07914 802425B4 8C450000 */ lw $a1, ($v0) -/* E07918 802425B8 12000005 */ beqz $s0, .L802425D0 -/* E0791C 802425BC 0040902D */ daddu $s2, $v0, $zero -/* E07920 802425C0 2402FFFF */ addiu $v0, $zero, -1 -/* E07924 802425C4 AE200084 */ sw $zero, 0x84($s1) -/* E07928 802425C8 AE220088 */ sw $v0, 0x88($s1) -/* E0792C 802425CC AE20008C */ sw $zero, 0x8c($s1) -.L802425D0: -/* E07930 802425D0 8E230084 */ lw $v1, 0x84($s1) -/* E07934 802425D4 10600005 */ beqz $v1, .L802425EC -/* E07938 802425D8 24020001 */ addiu $v0, $zero, 1 -/* E0793C 802425DC 10620020 */ beq $v1, $v0, .L80242660 -/* E07940 802425E0 0000102D */ daddu $v0, $zero, $zero -/* E07944 802425E4 0809099E */ j .L80242678 -/* E07948 802425E8 00000000 */ nop -.L802425EC: -/* E0794C 802425EC 2410FFFF */ addiu $s0, $zero, -1 -.L802425F0: -/* E07950 802425F0 8E22008C */ lw $v0, 0x8c($s1) -/* E07954 802425F4 000218C0 */ sll $v1, $v0, 3 -/* E07958 802425F8 00621823 */ subu $v1, $v1, $v0 -/* E0795C 802425FC 000318C0 */ sll $v1, $v1, 3 -/* E07960 80242600 00722021 */ addu $a0, $v1, $s2 -/* E07964 80242604 8C820000 */ lw $v0, ($a0) -/* E07968 80242608 10400003 */ beqz $v0, .L80242618 -/* E0796C 8024260C 00000000 */ nop -/* E07970 80242610 0C0908DA */ jal func_80242368_E076C8 -/* E07974 80242614 00000000 */ nop -.L80242618: -/* E07978 80242618 8E23008C */ lw $v1, 0x8c($s1) -/* E0797C 8024261C 000310C0 */ sll $v0, $v1, 3 -/* E07980 80242620 00431023 */ subu $v0, $v0, $v1 -/* E07984 80242624 000210C0 */ sll $v0, $v0, 3 -/* E07988 80242628 00521021 */ addu $v0, $v0, $s2 -/* E0798C 8024262C 8C420030 */ lw $v0, 0x30($v0) -/* E07990 80242630 AE220088 */ sw $v0, 0x88($s1) -/* E07994 80242634 0060102D */ daddu $v0, $v1, $zero -/* E07998 80242638 8E230088 */ lw $v1, 0x88($s1) -/* E0799C 8024263C 24420001 */ addiu $v0, $v0, 1 -/* E079A0 80242640 1C600005 */ bgtz $v1, .L80242658 -/* E079A4 80242644 AE22008C */ sw $v0, 0x8c($s1) -/* E079A8 80242648 1470FFE9 */ bne $v1, $s0, .L802425F0 -/* E079AC 8024264C 24020002 */ addiu $v0, $zero, 2 -/* E079B0 80242650 0809099E */ j .L80242678 -/* E079B4 80242654 00000000 */ nop -.L80242658: -/* E079B8 80242658 24020001 */ addiu $v0, $zero, 1 -/* E079BC 8024265C AE220084 */ sw $v0, 0x84($s1) -.L80242660: -/* E079C0 80242660 8E220088 */ lw $v0, 0x88($s1) -/* E079C4 80242664 2442FFFF */ addiu $v0, $v0, -1 -/* E079C8 80242668 1C400002 */ bgtz $v0, .L80242674 -/* E079CC 8024266C AE220088 */ sw $v0, 0x88($s1) -/* E079D0 80242670 AE200084 */ sw $zero, 0x84($s1) -.L80242674: -/* E079D4 80242674 0000102D */ daddu $v0, $zero, $zero -.L80242678: -/* E079D8 80242678 8FBF001C */ lw $ra, 0x1c($sp) -/* E079DC 8024267C 8FB20018 */ lw $s2, 0x18($sp) -/* E079E0 80242680 8FB10014 */ lw $s1, 0x14($sp) -/* E079E4 80242684 8FB00010 */ lw $s0, 0x10($sp) -/* E079E8 80242688 03E00008 */ jr $ra -/* E079EC 8024268C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242690_E079F0.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242690_E079F0.s deleted file mode 100644 index fab327ca46..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242690_E079F0.s +++ /dev/null @@ -1,53 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242690_E079F0 -/* E079F0 80242690 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* E079F4 80242694 AFBF0028 */ sw $ra, 0x28($sp) -/* E079F8 80242698 AFB10024 */ sw $s1, 0x24($sp) -/* E079FC 8024269C AFB00020 */ sw $s0, 0x20($sp) -/* E07A00 802426A0 8C82000C */ lw $v0, 0xc($a0) -/* E07A04 802426A4 0C0B1EAF */ jal evt_get_variable -/* E07A08 802426A8 8C450000 */ lw $a1, ($v0) -/* E07A0C 802426AC 24030100 */ addiu $v1, $zero, 0x100 -/* E07A10 802426B0 0040882D */ daddu $s1, $v0, $zero -/* E07A14 802426B4 3C028024 */ lui $v0, %hi(D_802441F0_E09550) -/* E07A18 802426B8 244241F0 */ addiu $v0, $v0, %lo(D_802441F0_E09550) -/* E07A1C 802426BC 00118040 */ sll $s0, $s1, 1 -/* E07A20 802426C0 02118021 */ addu $s0, $s0, $s1 -/* E07A24 802426C4 001080C0 */ sll $s0, $s0, 3 -/* E07A28 802426C8 02028021 */ addu $s0, $s0, $v0 -/* E07A2C 802426CC AFA30010 */ sw $v1, 0x10($sp) -/* E07A30 802426D0 8E020000 */ lw $v0, ($s0) -/* E07A34 802426D4 AFA00018 */ sw $zero, 0x18($sp) -/* E07A38 802426D8 AFA0001C */ sw $zero, 0x1c($sp) -/* E07A3C 802426DC AFA20014 */ sw $v0, 0x14($sp) -/* E07A40 802426E0 8E050004 */ lw $a1, 4($s0) -/* E07A44 802426E4 24020001 */ addiu $v0, $zero, 1 -/* E07A48 802426E8 3C01802E */ lui $at, %hi(spr_allocateBtlComponentsOnWorldHeap) -/* E07A4C 802426EC AC22F524 */ sw $v0, %lo(spr_allocateBtlComponentsOnWorldHeap)($at) -/* E07A50 802426F0 0C00E219 */ jal _create_npc_standard -/* E07A54 802426F4 27A40010 */ addiu $a0, $sp, 0x10 -/* E07A58 802426F8 0C00E2B7 */ jal get_npc_by_index -/* E07A5C 802426FC 0040202D */ daddu $a0, $v0, $zero -/* E07A60 80242700 3C04FBFF */ lui $a0, 0xfbff -/* E07A64 80242704 8C430000 */ lw $v1, ($v0) -/* E07A68 80242708 3484FFFF */ ori $a0, $a0, 0xffff -/* E07A6C 8024270C A05100A4 */ sb $s1, 0xa4($v0) -/* E07A70 80242710 00641824 */ and $v1, $v1, $a0 -/* E07A74 80242714 AC430000 */ sw $v1, ($v0) -/* E07A78 80242718 C6000008 */ lwc1 $f0, 8($s0) -/* E07A7C 8024271C E4400038 */ swc1 $f0, 0x38($v0) -/* E07A80 80242720 C600000C */ lwc1 $f0, 0xc($s0) -/* E07A84 80242724 E440003C */ swc1 $f0, 0x3c($v0) -/* E07A88 80242728 C6000010 */ lwc1 $f0, 0x10($s0) -/* E07A8C 8024272C E4400040 */ swc1 $f0, 0x40($v0) -/* E07A90 80242730 8E050014 */ lw $a1, 0x14($s0) -/* E07A94 80242734 0C00ECD0 */ jal set_npc_yaw -/* E07A98 80242738 0040202D */ daddu $a0, $v0, $zero -/* E07A9C 8024273C 8FBF0028 */ lw $ra, 0x28($sp) -/* E07AA0 80242740 8FB10024 */ lw $s1, 0x24($sp) -/* E07AA4 80242744 8FB00020 */ lw $s0, 0x20($sp) -/* E07AA8 80242748 24020002 */ addiu $v0, $zero, 2 -/* E07AAC 8024274C 03E00008 */ jr $ra -/* E07AB0 80242750 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242754_E07AB4.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242754_E07AB4.s deleted file mode 100644 index f513e38324..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242754_E07AB4.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242754_E07AB4 -/* E07AB4 80242754 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* E07AB8 80242758 AFB10014 */ sw $s1, 0x14($sp) -/* E07ABC 8024275C 0080882D */ daddu $s1, $a0, $zero -/* E07AC0 80242760 AFBF0018 */ sw $ra, 0x18($sp) -/* E07AC4 80242764 AFB00010 */ sw $s0, 0x10($sp) -/* E07AC8 80242768 8E30000C */ lw $s0, 0xc($s1) -/* E07ACC 8024276C 8E050000 */ lw $a1, ($s0) -/* E07AD0 80242770 0C0B1EAF */ jal evt_get_variable -/* E07AD4 80242774 26100004 */ addiu $s0, $s0, 4 -/* E07AD8 80242778 3C048035 */ lui $a0, %hi(gSpriteHeapPtr) -/* E07ADC 8024277C 2484F800 */ addiu $a0, $a0, %lo(gSpriteHeapPtr) -/* E07AE0 80242780 8E100000 */ lw $s0, ($s0) -/* E07AE4 80242784 0C00A41B */ jal _heap_malloc -/* E07AE8 80242788 0040282D */ daddu $a1, $v0, $zero -/* E07AEC 8024278C 0220202D */ daddu $a0, $s1, $zero -/* E07AF0 80242790 0040302D */ daddu $a2, $v0, $zero -/* E07AF4 80242794 0C0B2026 */ jal evt_set_variable -/* E07AF8 80242798 0200282D */ daddu $a1, $s0, $zero -/* E07AFC 8024279C 8FBF0018 */ lw $ra, 0x18($sp) -/* E07B00 802427A0 8FB10014 */ lw $s1, 0x14($sp) -/* E07B04 802427A4 8FB00010 */ lw $s0, 0x10($sp) -/* E07B08 802427A8 24020002 */ addiu $v0, $zero, 2 -/* E07B0C 802427AC 03E00008 */ jr $ra -/* E07B10 802427B0 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427B4_E07B14.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427B4_E07B14.s deleted file mode 100644 index 20c75c55a1..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427B4_E07B14.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802427B4_E07B14 -/* E07B14 802427B4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* E07B18 802427B8 AFBF0010 */ sw $ra, 0x10($sp) -/* E07B1C 802427BC 8C82000C */ lw $v0, 0xc($a0) -/* E07B20 802427C0 0C0B1EAF */ jal evt_get_variable -/* E07B24 802427C4 8C450000 */ lw $a1, ($v0) -/* E07B28 802427C8 3C048035 */ lui $a0, %hi(gSpriteHeapPtr) -/* E07B2C 802427CC 2484F800 */ addiu $a0, $a0, %lo(gSpriteHeapPtr) -/* E07B30 802427D0 0C00A487 */ jal _heap_free -/* E07B34 802427D4 0040282D */ daddu $a1, $v0, $zero -/* E07B38 802427D8 8FBF0010 */ lw $ra, 0x10($sp) -/* E07B3C 802427DC 24020002 */ addiu $v0, $zero, 2 -/* E07B40 802427E0 03E00008 */ jr $ra -/* E07B44 802427E4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427E8_E07B48.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427E8_E07B48.s deleted file mode 100644 index d0f8c2321e..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_802427E8_E07B48.s +++ /dev/null @@ -1,26 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802427E8_E07B48 -/* E07B48 802427E8 3C04800B */ lui $a0, %hi(gCameras) -/* E07B4C 802427EC 24841D80 */ addiu $a0, $a0, %lo(gCameras) -/* E07B50 802427F0 3C038007 */ lui $v1, %hi(gCurrentCameraID) -/* E07B54 802427F4 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) -/* E07B58 802427F8 3C013F2A */ lui $at, 0x3f2a -/* E07B5C 802427FC 3421AAAB */ ori $at, $at, 0xaaab -/* E07B60 80242800 44810000 */ mtc1 $at, $f0 -/* E07B64 80242804 00031080 */ sll $v0, $v1, 2 -/* E07B68 80242808 00431021 */ addu $v0, $v0, $v1 -/* E07B6C 8024280C 00021080 */ sll $v0, $v0, 2 -/* E07B70 80242810 00431023 */ subu $v0, $v0, $v1 -/* E07B74 80242814 000218C0 */ sll $v1, $v0, 3 -/* E07B78 80242818 00431021 */ addu $v0, $v0, $v1 -/* E07B7C 8024281C 000210C0 */ sll $v0, $v0, 3 -/* E07B80 80242820 00441021 */ addu $v0, $v0, $a0 -/* E07B84 80242824 C44204B0 */ lwc1 $f2, 0x4b0($v0) -/* E07B88 80242828 46001080 */ add.s $f2, $f2, $f0 -/* E07B8C 8024282C 24030001 */ addiu $v1, $zero, 1 -/* E07B90 80242830 A4430506 */ sh $v1, 0x506($v0) -/* E07B94 80242834 E44204B0 */ swc1 $f2, 0x4b0($v0) -/* E07B98 80242838 03E00008 */ jr $ra -/* E07B9C 8024283C 24020002 */ addiu $v0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242840_E07BA0.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242840_E07BA0.s deleted file mode 100644 index da19f64e46..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_80242840_E07BA0.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242840_E07BA0 -/* E07BA0 80242840 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* E07BA4 80242844 AFB00010 */ sw $s0, 0x10($sp) -/* E07BA8 80242848 0080802D */ daddu $s0, $a0, $zero -/* E07BAC 8024284C AFBF0014 */ sw $ra, 0x14($sp) -/* E07BB0 80242850 10A00006 */ beqz $a1, .L8024286C -/* E07BB4 80242854 8E02000C */ lw $v0, 0xc($s0) -/* E07BB8 80242858 0C0B1EAF */ jal evt_get_variable -/* E07BBC 8024285C 8C450000 */ lw $a1, ($v0) -/* E07BC0 80242860 0C00EABB */ jal get_npc_unsafe -/* E07BC4 80242864 0040202D */ daddu $a0, $v0, $zero -/* E07BC8 80242868 AE020074 */ sw $v0, 0x74($s0) -.L8024286C: -/* E07BCC 8024286C 8E030074 */ lw $v1, 0x74($s0) -/* E07BD0 80242870 3C013F2A */ lui $at, 0x3f2a -/* E07BD4 80242874 3421AAAB */ ori $at, $at, 0xaaab -/* E07BD8 80242878 44811000 */ mtc1 $at, $f2 -/* E07BDC 8024287C C4600038 */ lwc1 $f0, 0x38($v1) -/* E07BE0 80242880 46020000 */ add.s $f0, $f0, $f2 -/* E07BE4 80242884 E4600038 */ swc1 $f0, 0x38($v1) -/* E07BE8 80242888 8FBF0014 */ lw $ra, 0x14($sp) -/* E07BEC 8024288C 8FB00010 */ lw $s0, 0x10($sp) -/* E07BF0 80242890 0000102D */ daddu $v0, $zero, $zero -/* E07BF4 80242894 03E00008 */ jr $ra -/* E07BF8 80242898 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024289C_E07BFC.s b/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024289C_E07BFC.s deleted file mode 100644 index ee94aa759b..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_01/E05390/func_8024289C_E07BFC.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024289C_E07BFC -/* E07BFC 8024289C 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* E07C00 802428A0 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* E07C04 802428A4 8C420010 */ lw $v0, 0x10($v0) -/* E07C08 802428A8 30429000 */ andi $v0, $v0, 0x9000 -/* E07C0C 802428AC 0002102B */ sltu $v0, $zero, $v0 -/* E07C10 802428B0 03E00008 */ jr $ra -/* E07C14 802428B4 00021040 */ sll $v0, $v0, 1 -/* E07C18 802428B8 00000000 */ nop -/* E07C1C 802428BC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2AAC0/func_802409C4_A2AC04.s b/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2AAC0/func_802409C4_A2AC04.s deleted file mode 100644 index f634eda029..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2AAC0/func_802409C4_A2AC04.s +++ /dev/null @@ -1,248 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802409C4_A2AC04 -/* A2AC04 802409C4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* A2AC08 802409C8 AFB1001C */ sw $s1, 0x1c($sp) -/* A2AC0C 802409CC 0080882D */ daddu $s1, $a0, $zero -/* A2AC10 802409D0 AFBF0020 */ sw $ra, 0x20($sp) -/* A2AC14 802409D4 AFB00018 */ sw $s0, 0x18($sp) -/* A2AC18 802409D8 10A0003B */ beqz $a1, .L80240AC8 -/* A2AC1C 802409DC 8E30000C */ lw $s0, 0xc($s1) -/* A2AC20 802409E0 3C048025 */ lui $a0, %hi(D_8024F2A0) -/* A2AC24 802409E4 2484F2A0 */ addiu $a0, $a0, %lo(D_8024F2A0) -/* A2AC28 802409E8 3C058025 */ lui $a1, %hi(D_8024F2A1) -/* A2AC2C 802409EC 24A5F2A1 */ addiu $a1, $a1, %lo(D_8024F2A1) -/* A2AC30 802409F0 3C068025 */ lui $a2, %hi(D_8024F2A2) -/* A2AC34 802409F4 24C6F2A2 */ addiu $a2, $a2, %lo(D_8024F2A2) -/* A2AC38 802409F8 3C078025 */ lui $a3, %hi(D_8024F2A3) -/* A2AC3C 802409FC 24E7F2A3 */ addiu $a3, $a3, %lo(D_8024F2A3) -/* A2AC40 80240A00 3C028025 */ lui $v0, %hi(D_8024F2A4) -/* A2AC44 80240A04 2442F2A4 */ addiu $v0, $v0, %lo(D_8024F2A4) -/* A2AC48 80240A08 AFA20010 */ sw $v0, 0x10($sp) -/* A2AC4C 80240A0C 3C028025 */ lui $v0, %hi(D_8024F2A5) -/* A2AC50 80240A10 2442F2A5 */ addiu $v0, $v0, %lo(D_8024F2A5) -/* A2AC54 80240A14 0C046FF5 */ jal get_model_env_color_parameters -/* A2AC58 80240A18 AFA20014 */ sw $v0, 0x14($sp) -/* A2AC5C 80240A1C 8E050000 */ lw $a1, ($s0) -/* A2AC60 80240A20 26100004 */ addiu $s0, $s0, 4 -/* A2AC64 80240A24 0C0B1EAF */ jal evt_get_variable -/* A2AC68 80240A28 0220202D */ daddu $a0, $s1, $zero -/* A2AC6C 80240A2C 3C018025 */ lui $at, %hi(D_8024F2A8) -/* A2AC70 80240A30 AC22F2A8 */ sw $v0, %lo(D_8024F2A8)($at) -/* A2AC74 80240A34 8E050000 */ lw $a1, ($s0) -/* A2AC78 80240A38 26100004 */ addiu $s0, $s0, 4 -/* A2AC7C 80240A3C 0C0B1EAF */ jal evt_get_variable -/* A2AC80 80240A40 0220202D */ daddu $a0, $s1, $zero -/* A2AC84 80240A44 3C018025 */ lui $at, %hi(D_8024F2AC) -/* A2AC88 80240A48 AC22F2AC */ sw $v0, %lo(D_8024F2AC)($at) -/* A2AC8C 80240A4C 8E050000 */ lw $a1, ($s0) -/* A2AC90 80240A50 26100004 */ addiu $s0, $s0, 4 -/* A2AC94 80240A54 0C0B1EAF */ jal evt_get_variable -/* A2AC98 80240A58 0220202D */ daddu $a0, $s1, $zero -/* A2AC9C 80240A5C 3C018025 */ lui $at, %hi(D_8024F2B0) -/* A2ACA0 80240A60 AC22F2B0 */ sw $v0, %lo(D_8024F2B0)($at) -/* A2ACA4 80240A64 8E050000 */ lw $a1, ($s0) -/* A2ACA8 80240A68 26100004 */ addiu $s0, $s0, 4 -/* A2ACAC 80240A6C 0C0B1EAF */ jal evt_get_variable -/* A2ACB0 80240A70 0220202D */ daddu $a0, $s1, $zero -/* A2ACB4 80240A74 3C018025 */ lui $at, %hi(D_8024F2B4) -/* A2ACB8 80240A78 AC22F2B4 */ sw $v0, %lo(D_8024F2B4)($at) -/* A2ACBC 80240A7C 8E050000 */ lw $a1, ($s0) -/* A2ACC0 80240A80 26100004 */ addiu $s0, $s0, 4 -/* A2ACC4 80240A84 0C0B1EAF */ jal evt_get_variable -/* A2ACC8 80240A88 0220202D */ daddu $a0, $s1, $zero -/* A2ACCC 80240A8C 3C018025 */ lui $at, %hi(D_8024F2B8) -/* A2ACD0 80240A90 AC22F2B8 */ sw $v0, %lo(D_8024F2B8)($at) -/* A2ACD4 80240A94 8E050000 */ lw $a1, ($s0) -/* A2ACD8 80240A98 26100004 */ addiu $s0, $s0, 4 -/* A2ACDC 80240A9C 0C0B1EAF */ jal evt_get_variable -/* A2ACE0 80240AA0 0220202D */ daddu $a0, $s1, $zero -/* A2ACE4 80240AA4 3C018025 */ lui $at, %hi(D_8024F2BC) -/* A2ACE8 80240AA8 AC22F2BC */ sw $v0, %lo(D_8024F2BC)($at) -/* A2ACEC 80240AAC 8E050000 */ lw $a1, ($s0) -/* A2ACF0 80240AB0 0C0B1EAF */ jal evt_get_variable -/* A2ACF4 80240AB4 0220202D */ daddu $a0, $s1, $zero -/* A2ACF8 80240AB8 3C018025 */ lui $at, %hi(D_8024F2C0) -/* A2ACFC 80240ABC AC22F2C0 */ sw $v0, %lo(D_8024F2C0)($at) -/* A2AD00 80240AC0 3C018025 */ lui $at, %hi(D_8024F2C4) -/* A2AD04 80240AC4 AC20F2C4 */ sw $zero, %lo(D_8024F2C4)($at) -.L80240AC8: -/* A2AD08 80240AC8 3C118025 */ lui $s1, %hi(D_8024F2C0) -/* A2AD0C 80240ACC 2631F2C0 */ addiu $s1, $s1, %lo(D_8024F2C0) -/* A2AD10 80240AD0 8E2F0000 */ lw $t7, ($s1) -/* A2AD14 80240AD4 19E0008A */ blez $t7, .L80240D00 -/* A2AD18 80240AD8 00000000 */ nop -/* A2AD1C 80240ADC 3C108025 */ lui $s0, %hi(D_8024F2C4) -/* A2AD20 80240AE0 2610F2C4 */ addiu $s0, $s0, %lo(D_8024F2C4) -/* A2AD24 80240AE4 8E030000 */ lw $v1, ($s0) -/* A2AD28 80240AE8 006F102A */ slt $v0, $v1, $t7 -/* A2AD2C 80240AEC 10400093 */ beqz $v0, .L80240D3C -/* A2AD30 80240AF0 24630001 */ addiu $v1, $v1, 1 -/* A2AD34 80240AF4 3C048025 */ lui $a0, %hi(D_8024F2A0) -/* A2AD38 80240AF8 9084F2A0 */ lbu $a0, %lo(D_8024F2A0)($a0) -/* A2AD3C 80240AFC 3C028025 */ lui $v0, %hi(D_8024F2A8) -/* A2AD40 80240B00 8C42F2A8 */ lw $v0, %lo(D_8024F2A8)($v0) -/* A2AD44 80240B04 00441023 */ subu $v0, $v0, $a0 -/* A2AD48 80240B08 00430018 */ mult $v0, $v1 -/* A2AD4C 80240B0C 00004012 */ mflo $t0 -/* A2AD50 80240B10 00000000 */ nop -/* A2AD54 80240B14 15E00002 */ bnez $t7, .L80240B20 -/* A2AD58 80240B18 010F001A */ div $zero, $t0, $t7 -/* A2AD5C 80240B1C 0007000D */ break 7 -.L80240B20: -/* A2AD60 80240B20 2401FFFF */ addiu $at, $zero, -1 -/* A2AD64 80240B24 15E10004 */ bne $t7, $at, .L80240B38 -/* A2AD68 80240B28 3C018000 */ lui $at, 0x8000 -/* A2AD6C 80240B2C 15010002 */ bne $t0, $at, .L80240B38 -/* A2AD70 80240B30 00000000 */ nop -/* A2AD74 80240B34 0006000D */ break 6 -.L80240B38: -/* A2AD78 80240B38 00007012 */ mflo $t6 -/* A2AD7C 80240B3C 3C058025 */ lui $a1, %hi(D_8024F2A1) -/* A2AD80 80240B40 90A5F2A1 */ lbu $a1, %lo(D_8024F2A1)($a1) -/* A2AD84 80240B44 3C028025 */ lui $v0, %hi(D_8024F2AC) -/* A2AD88 80240B48 8C42F2AC */ lw $v0, %lo(D_8024F2AC)($v0) -/* A2AD8C 80240B4C 00451023 */ subu $v0, $v0, $a1 -/* A2AD90 80240B50 00430018 */ mult $v0, $v1 -/* A2AD94 80240B54 00004012 */ mflo $t0 -/* A2AD98 80240B58 00000000 */ nop -/* A2AD9C 80240B5C 15E00002 */ bnez $t7, .L80240B68 -/* A2ADA0 80240B60 010F001A */ div $zero, $t0, $t7 -/* A2ADA4 80240B64 0007000D */ break 7 -.L80240B68: -/* A2ADA8 80240B68 2401FFFF */ addiu $at, $zero, -1 -/* A2ADAC 80240B6C 15E10004 */ bne $t7, $at, .L80240B80 -/* A2ADB0 80240B70 3C018000 */ lui $at, 0x8000 -/* A2ADB4 80240B74 15010002 */ bne $t0, $at, .L80240B80 -/* A2ADB8 80240B78 00000000 */ nop -/* A2ADBC 80240B7C 0006000D */ break 6 -.L80240B80: -/* A2ADC0 80240B80 00006812 */ mflo $t5 -/* A2ADC4 80240B84 3C068025 */ lui $a2, %hi(D_8024F2A2) -/* A2ADC8 80240B88 90C6F2A2 */ lbu $a2, %lo(D_8024F2A2)($a2) -/* A2ADCC 80240B8C 3C028025 */ lui $v0, %hi(D_8024F2B0) -/* A2ADD0 80240B90 8C42F2B0 */ lw $v0, %lo(D_8024F2B0)($v0) -/* A2ADD4 80240B94 00461023 */ subu $v0, $v0, $a2 -/* A2ADD8 80240B98 00430018 */ mult $v0, $v1 -/* A2ADDC 80240B9C 00004012 */ mflo $t0 -/* A2ADE0 80240BA0 00000000 */ nop -/* A2ADE4 80240BA4 15E00002 */ bnez $t7, .L80240BB0 -/* A2ADE8 80240BA8 010F001A */ div $zero, $t0, $t7 -/* A2ADEC 80240BAC 0007000D */ break 7 -.L80240BB0: -/* A2ADF0 80240BB0 2401FFFF */ addiu $at, $zero, -1 -/* A2ADF4 80240BB4 15E10004 */ bne $t7, $at, .L80240BC8 -/* A2ADF8 80240BB8 3C018000 */ lui $at, 0x8000 -/* A2ADFC 80240BBC 15010002 */ bne $t0, $at, .L80240BC8 -/* A2AE00 80240BC0 00000000 */ nop -/* A2AE04 80240BC4 0006000D */ break 6 -.L80240BC8: -/* A2AE08 80240BC8 00006012 */ mflo $t4 -/* A2AE0C 80240BCC 3C078025 */ lui $a3, %hi(D_8024F2A3) -/* A2AE10 80240BD0 90E7F2A3 */ lbu $a3, %lo(D_8024F2A3)($a3) -/* A2AE14 80240BD4 3C028025 */ lui $v0, %hi(D_8024F2B4) -/* A2AE18 80240BD8 8C42F2B4 */ lw $v0, %lo(D_8024F2B4)($v0) -/* A2AE1C 80240BDC 00471023 */ subu $v0, $v0, $a3 -/* A2AE20 80240BE0 00430018 */ mult $v0, $v1 -/* A2AE24 80240BE4 00004012 */ mflo $t0 -/* A2AE28 80240BE8 00000000 */ nop -/* A2AE2C 80240BEC 15E00002 */ bnez $t7, .L80240BF8 -/* A2AE30 80240BF0 010F001A */ div $zero, $t0, $t7 -/* A2AE34 80240BF4 0007000D */ break 7 -.L80240BF8: -/* A2AE38 80240BF8 2401FFFF */ addiu $at, $zero, -1 -/* A2AE3C 80240BFC 15E10004 */ bne $t7, $at, .L80240C10 -/* A2AE40 80240C00 3C018000 */ lui $at, 0x8000 -/* A2AE44 80240C04 15010002 */ bne $t0, $at, .L80240C10 -/* A2AE48 80240C08 00000000 */ nop -/* A2AE4C 80240C0C 0006000D */ break 6 -.L80240C10: -/* A2AE50 80240C10 00005812 */ mflo $t3 -/* A2AE54 80240C14 3C098025 */ lui $t1, %hi(D_8024F2A4) -/* A2AE58 80240C18 9129F2A4 */ lbu $t1, %lo(D_8024F2A4)($t1) -/* A2AE5C 80240C1C 3C028025 */ lui $v0, %hi(D_8024F2B8) -/* A2AE60 80240C20 8C42F2B8 */ lw $v0, %lo(D_8024F2B8)($v0) -/* A2AE64 80240C24 00491023 */ subu $v0, $v0, $t1 -/* A2AE68 80240C28 00430018 */ mult $v0, $v1 -/* A2AE6C 80240C2C 00004012 */ mflo $t0 -/* A2AE70 80240C30 00000000 */ nop -/* A2AE74 80240C34 15E00002 */ bnez $t7, .L80240C40 -/* A2AE78 80240C38 010F001A */ div $zero, $t0, $t7 -/* A2AE7C 80240C3C 0007000D */ break 7 -.L80240C40: -/* A2AE80 80240C40 2401FFFF */ addiu $at, $zero, -1 -/* A2AE84 80240C44 15E10004 */ bne $t7, $at, .L80240C58 -/* A2AE88 80240C48 3C018000 */ lui $at, 0x8000 -/* A2AE8C 80240C4C 15010002 */ bne $t0, $at, .L80240C58 -/* A2AE90 80240C50 00000000 */ nop -/* A2AE94 80240C54 0006000D */ break 6 -.L80240C58: -/* A2AE98 80240C58 00005012 */ mflo $t2 -/* A2AE9C 80240C5C 3C088025 */ lui $t0, %hi(D_8024F2A5) -/* A2AEA0 80240C60 9108F2A5 */ lbu $t0, %lo(D_8024F2A5)($t0) -/* A2AEA4 80240C64 3C028025 */ lui $v0, %hi(D_8024F2BC) -/* A2AEA8 80240C68 8C42F2BC */ lw $v0, %lo(D_8024F2BC)($v0) -/* A2AEAC 80240C6C 00481023 */ subu $v0, $v0, $t0 -/* A2AEB0 80240C70 00430018 */ mult $v0, $v1 -/* A2AEB4 80240C74 0000C812 */ mflo $t9 -/* A2AEB8 80240C78 00000000 */ nop -/* A2AEBC 80240C7C 15E00002 */ bnez $t7, .L80240C88 -/* A2AEC0 80240C80 032F001A */ div $zero, $t9, $t7 -/* A2AEC4 80240C84 0007000D */ break 7 -.L80240C88: -/* A2AEC8 80240C88 2401FFFF */ addiu $at, $zero, -1 -/* A2AECC 80240C8C 15E10004 */ bne $t7, $at, .L80240CA0 -/* A2AED0 80240C90 3C018000 */ lui $at, 0x8000 -/* A2AED4 80240C94 17210002 */ bne $t9, $at, .L80240CA0 -/* A2AED8 80240C98 00000000 */ nop -/* A2AEDC 80240C9C 0006000D */ break 6 -.L80240CA0: -/* A2AEE0 80240CA0 00001012 */ mflo $v0 -/* A2AEE4 80240CA4 AE030000 */ sw $v1, ($s0) -/* A2AEE8 80240CA8 008E2021 */ addu $a0, $a0, $t6 -/* A2AEEC 80240CAC 308400FF */ andi $a0, $a0, 0xff -/* A2AEF0 80240CB0 00AD2821 */ addu $a1, $a1, $t5 -/* A2AEF4 80240CB4 30A500FF */ andi $a1, $a1, 0xff -/* A2AEF8 80240CB8 00CC3021 */ addu $a2, $a2, $t4 -/* A2AEFC 80240CBC 30C600FF */ andi $a2, $a2, 0xff -/* A2AF00 80240CC0 00EB3821 */ addu $a3, $a3, $t3 -/* A2AF04 80240CC4 30E700FF */ andi $a3, $a3, 0xff -/* A2AF08 80240CC8 012A4821 */ addu $t1, $t1, $t2 -/* A2AF0C 80240CCC 312900FF */ andi $t1, $t1, 0xff -/* A2AF10 80240CD0 AFA90010 */ sw $t1, 0x10($sp) -/* A2AF14 80240CD4 01024021 */ addu $t0, $t0, $v0 -/* A2AF18 80240CD8 310800FF */ andi $t0, $t0, 0xff -/* A2AF1C 80240CDC 0C046FE6 */ jal set_model_env_color_parameters -/* A2AF20 80240CE0 AFA80014 */ sw $t0, 0x14($sp) -/* A2AF24 80240CE4 8E020000 */ lw $v0, ($s0) -/* A2AF28 80240CE8 8E230000 */ lw $v1, ($s1) -/* A2AF2C 80240CEC 0043102A */ slt $v0, $v0, $v1 -/* A2AF30 80240CF0 14400013 */ bnez $v0, .L80240D40 -/* A2AF34 80240CF4 0000102D */ daddu $v0, $zero, $zero -/* A2AF38 80240CF8 08090350 */ j .L80240D40 -/* A2AF3C 80240CFC 24020002 */ addiu $v0, $zero, 2 -.L80240D00: -/* A2AF40 80240D00 3C028025 */ lui $v0, %hi(D_8024F2BB) -/* A2AF44 80240D04 9042F2BB */ lbu $v0, %lo(D_8024F2BB)($v0) -/* A2AF48 80240D08 3C048025 */ lui $a0, %hi(D_8024F2AB) -/* A2AF4C 80240D0C 9084F2AB */ lbu $a0, %lo(D_8024F2AB)($a0) -/* A2AF50 80240D10 3C058025 */ lui $a1, %hi(D_8024F2AF) -/* A2AF54 80240D14 90A5F2AF */ lbu $a1, %lo(D_8024F2AF)($a1) -/* A2AF58 80240D18 3C068025 */ lui $a2, %hi(D_8024F2B3) -/* A2AF5C 80240D1C 90C6F2B3 */ lbu $a2, %lo(D_8024F2B3)($a2) -/* A2AF60 80240D20 3C078025 */ lui $a3, %hi(D_8024F2B7) -/* A2AF64 80240D24 90E7F2B7 */ lbu $a3, %lo(D_8024F2B7)($a3) -/* A2AF68 80240D28 3C038025 */ lui $v1, %hi(D_8024F2BF) -/* A2AF6C 80240D2C 9063F2BF */ lbu $v1, %lo(D_8024F2BF)($v1) -/* A2AF70 80240D30 AFA20010 */ sw $v0, 0x10($sp) -/* A2AF74 80240D34 0C046FE6 */ jal set_model_env_color_parameters -/* A2AF78 80240D38 AFA30014 */ sw $v1, 0x14($sp) -.L80240D3C: -/* A2AF7C 80240D3C 24020002 */ addiu $v0, $zero, 2 -.L80240D40: -/* A2AF80 80240D40 8FBF0020 */ lw $ra, 0x20($sp) -/* A2AF84 80240D44 8FB1001C */ lw $s1, 0x1c($sp) -/* A2AF88 80240D48 8FB00018 */ lw $s0, 0x18($sp) -/* A2AF8C 80240D4C 03E00008 */ jr $ra -/* A2AF90 80240D50 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2EC30/func_80244C60_A2EEA0.s b/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2EC30/func_80244C60_A2EEA0.s deleted file mode 100644 index efa113f38d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_05/A2EC30/func_80244C60_A2EEA0.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80244C60_A2EEA0 -/* A2EEA0 80244C60 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* A2EEA4 80244C64 AFBF0010 */ sw $ra, 0x10($sp) -/* A2EEA8 80244C68 8C82000C */ lw $v0, 0xc($a0) -/* A2EEAC 80244C6C 0C0B1EAF */ jal evt_get_variable -/* A2EEB0 80244C70 8C450000 */ lw $a1, ($v0) -/* A2EEB4 80244C74 0C00AFC1 */ jal set_curtain_draw_callback -/* A2EEB8 80244C78 0040202D */ daddu $a0, $v0, $zero -/* A2EEBC 80244C7C 8FBF0010 */ lw $ra, 0x10($sp) -/* A2EEC0 80244C80 24020002 */ addiu $v0, $zero, 2 -/* A2EEC4 80244C84 03E00008 */ jr $ra -/* A2EEC8 80244C88 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A68_A39F48.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A68_A39F48.s deleted file mode 100644 index 145dd5dbea..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A68_A39F48.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240A68_A39F48 -/* A39F48 80240A68 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* A39F4C 80240A6C AFBF0010 */ sw $ra, 0x10($sp) -/* A39F50 80240A70 8C82000C */ lw $v0, 0xc($a0) -/* A39F54 80240A74 3C068011 */ lui $a2, %hi(gPlayerData+0xF) -/* A39F58 80240A78 90C6F29F */ lbu $a2, %lo(gPlayerData+0xF)($a2) -/* A39F5C 80240A7C 0C0B2026 */ jal evt_set_variable -/* A39F60 80240A80 8C450000 */ lw $a1, ($v0) -/* A39F64 80240A84 8FBF0010 */ lw $ra, 0x10($sp) -/* A39F68 80240A88 24020002 */ addiu $v0, $zero, 2 -/* A39F6C 80240A8C 03E00008 */ jr $ra -/* A39F70 80240A90 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A94_A39F74.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A94_A39F74.s deleted file mode 100644 index a9c24851cc..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240A94_A39F74.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240A94_A39F74 -/* A39F74 80240A94 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* A39F78 80240A98 AFBF0010 */ sw $ra, 0x10($sp) -/* A39F7C 80240A9C 8C82000C */ lw $v0, 0xc($a0) -/* A39F80 80240AA0 0C0B1EAF */ jal evt_get_variable -/* A39F84 80240AA4 8C450000 */ lw $a1, ($v0) -/* A39F88 80240AA8 3C05F840 */ lui $a1, 0xf840 -/* A39F8C 80240AAC 34A5626B */ ori $a1, $a1, 0x626b -/* A39F90 80240AB0 0000202D */ daddu $a0, $zero, $zero -/* A39F94 80240AB4 00452821 */ addu $a1, $v0, $a1 -/* A39F98 80240AB8 0C0B2026 */ jal evt_set_variable -/* A39F9C 80240ABC 24060001 */ addiu $a2, $zero, 1 -/* A39FA0 80240AC0 8FBF0010 */ lw $ra, 0x10($sp) -/* A39FA4 80240AC4 24020002 */ addiu $v0, $zero, 2 -/* A39FA8 80240AC8 03E00008 */ jr $ra -/* A39FAC 80240ACC 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240AD0_A39FB0.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240AD0_A39FB0.s deleted file mode 100644 index d882198ea8..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A397F0/func_80240AD0_A39FB0.s +++ /dev/null @@ -1,166 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240AD0_A39FB0 -/* A39FB0 80240AD0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* A39FB4 80240AD4 AFB3001C */ sw $s3, 0x1c($sp) -/* A39FB8 80240AD8 0080982D */ daddu $s3, $a0, $zero -/* A39FBC 80240ADC AFB60028 */ sw $s6, 0x28($sp) -/* A39FC0 80240AE0 3C168011 */ lui $s6, %hi(gPlayerData) -/* A39FC4 80240AE4 26D6F290 */ addiu $s6, $s6, %lo(gPlayerData) -/* A39FC8 80240AE8 AFBF0034 */ sw $ra, 0x34($sp) -/* A39FCC 80240AEC AFBE0030 */ sw $fp, 0x30($sp) -/* A39FD0 80240AF0 AFB7002C */ sw $s7, 0x2c($sp) -/* A39FD4 80240AF4 AFB50024 */ sw $s5, 0x24($sp) -/* A39FD8 80240AF8 AFB40020 */ sw $s4, 0x20($sp) -/* A39FDC 80240AFC AFB20018 */ sw $s2, 0x18($sp) -/* A39FE0 80240B00 AFB10014 */ sw $s1, 0x14($sp) -/* A39FE4 80240B04 10A0003E */ beqz $a1, .L80240C00 -/* A39FE8 80240B08 AFB00010 */ sw $s0, 0x10($sp) -/* A39FEC 80240B0C 0C00AB39 */ jal heap_malloc -/* A39FF0 80240B10 24040330 */ addiu $a0, $zero, 0x330 -/* A39FF4 80240B14 AE620078 */ sw $v0, 0x78($s3) -/* A39FF8 80240B18 0040A82D */ daddu $s5, $v0, $zero -/* A39FFC 80240B1C 0000A02D */ daddu $s4, $zero, $zero -/* A3A000 80240B20 0280902D */ daddu $s2, $s4, $zero -/* A3A004 80240B24 3C17F840 */ lui $s7, 0xf840 -/* A3A008 80240B28 36F7626B */ ori $s7, $s7, 0x626b -/* A3A00C 80240B2C 3C1E8009 */ lui $fp, %hi(gItemHudScripts) -/* A3A010 80240B30 27DEA680 */ addiu $fp, $fp, %lo(gItemHudScripts) -/* A3A014 80240B34 3C118024 */ lui $s1, %hi(D_802435EC_A3CACC) -/* A3A018 80240B38 263135EC */ addiu $s1, $s1, %lo(D_802435EC_A3CACC) -/* A3A01C 80240B3C 02A0802D */ daddu $s0, $s5, $zero -.L80240B40: -/* A3A020 80240B40 0000202D */ daddu $a0, $zero, $zero -/* A3A024 80240B44 0C0B1EAF */ jal evt_get_variable -/* A3A028 80240B48 02572821 */ addu $a1, $s2, $s7 -/* A3A02C 80240B4C 54400022 */ bnel $v0, $zero, .L80240BD8 -/* A3A030 80240B50 26520001 */ addiu $s2, $s2, 1 -/* A3A034 80240B54 8E220000 */ lw $v0, ($s1) -/* A3A038 80240B58 3C068008 */ lui $a2, %hi(gItemTable) -/* A3A03C 80240B5C 24C678E0 */ addiu $a2, $a2, %lo(gItemTable) -/* A3A040 80240B60 00021140 */ sll $v0, $v0, 5 -/* A3A044 80240B64 00461021 */ addu $v0, $v0, $a2 -/* A3A048 80240B68 84430004 */ lh $v1, 4($v0) -/* A3A04C 80240B6C AE120108 */ sw $s2, 0x108($s0) -/* A3A050 80240B70 8C420000 */ lw $v0, ($v0) -/* A3A054 80240B74 000318C0 */ sll $v1, $v1, 3 -/* A3A058 80240B78 007E2021 */ addu $a0, $v1, $fp -/* A3A05C 80240B7C AE020084 */ sw $v0, 0x84($s0) -/* A3A060 80240B80 8C820000 */ lw $v0, ($a0) -/* A3A064 80240B84 AE020000 */ sw $v0, ($s0) -/* A3A068 80240B88 92C2000F */ lbu $v0, 0xf($s6) -/* A3A06C 80240B8C 8E230004 */ lw $v1, 4($s1) -/* A3A070 80240B90 0043102A */ slt $v0, $v0, $v1 -/* A3A074 80240B94 38420001 */ xori $v0, $v0, 1 -/* A3A078 80240B98 AE02018C */ sw $v0, 0x18c($s0) -/* A3A07C 80240B9C 92C2000F */ lbu $v0, 0xf($s6) -/* A3A080 80240BA0 8E230004 */ lw $v1, 4($s1) -/* A3A084 80240BA4 0043102A */ slt $v0, $v0, $v1 -/* A3A088 80240BA8 10400004 */ beqz $v0, .L80240BBC -/* A3A08C 80240BAC 00000000 */ nop -/* A3A090 80240BB0 8C820004 */ lw $v0, 4($a0) -/* A3A094 80240BB4 AE00018C */ sw $zero, 0x18c($s0) -/* A3A098 80240BB8 AE020000 */ sw $v0, ($s0) -.L80240BBC: -/* A3A09C 80240BBC 8E220008 */ lw $v0, 8($s1) -/* A3A0A0 80240BC0 AE020294 */ sw $v0, 0x294($s0) -/* A3A0A4 80240BC4 8E220004 */ lw $v0, 4($s1) -/* A3A0A8 80240BC8 26940001 */ addiu $s4, $s4, 1 -/* A3A0AC 80240BCC AE020210 */ sw $v0, 0x210($s0) -/* A3A0B0 80240BD0 26100004 */ addiu $s0, $s0, 4 -/* A3A0B4 80240BD4 26520001 */ addiu $s2, $s2, 1 -.L80240BD8: -/* A3A0B8 80240BD8 2A42000F */ slti $v0, $s2, 0xf -/* A3A0BC 80240BDC 1440FFD8 */ bnez $v0, .L80240B40 -/* A3A0C0 80240BE0 2631000C */ addiu $s1, $s1, 0xc -/* A3A0C4 80240BE4 02A0202D */ daddu $a0, $s5, $zero -/* A3A0C8 80240BE8 24020003 */ addiu $v0, $zero, 3 -/* A3A0CC 80240BEC AC820318 */ sw $v0, 0x318($a0) -/* A3A0D0 80240BF0 AC940324 */ sw $s4, 0x324($a0) -/* A3A0D4 80240BF4 0C03D390 */ jal create_popup_menu -/* A3A0D8 80240BF8 AC800328 */ sw $zero, 0x328($a0) -/* A3A0DC 80240BFC AE600070 */ sw $zero, 0x70($s3) -.L80240C00: -/* A3A0E0 80240C00 8E620070 */ lw $v0, 0x70($s3) -/* A3A0E4 80240C04 8E750078 */ lw $s5, 0x78($s3) -/* A3A0E8 80240C08 14400008 */ bnez $v0, .L80240C2C -/* A3A0EC 80240C0C 24420001 */ addiu $v0, $v0, 1 -/* A3A0F0 80240C10 86A2032C */ lh $v0, 0x32c($s5) -/* A3A0F4 80240C14 10400009 */ beqz $v0, .L80240C3C -/* A3A0F8 80240C18 AE620074 */ sw $v0, 0x74($s3) -/* A3A0FC 80240C1C 0C03C4EC */ jal hide_popup_menu -/* A3A100 80240C20 00000000 */ nop -/* A3A104 80240C24 8E620070 */ lw $v0, 0x70($s3) -/* A3A108 80240C28 24420001 */ addiu $v0, $v0, 1 -.L80240C2C: -/* A3A10C 80240C2C AE620070 */ sw $v0, 0x70($s3) -/* A3A110 80240C30 28420014 */ slti $v0, $v0, 0x14 -/* A3A114 80240C34 10400003 */ beqz $v0, .L80240C44 -/* A3A118 80240C38 00000000 */ nop -.L80240C3C: -/* A3A11C 80240C3C 0809033D */ j .L80240CF4 -/* A3A120 80240C40 0000102D */ daddu $v0, $zero, $zero -.L80240C44: -/* A3A124 80240C44 0C03C54E */ jal destroy_popup_menu -/* A3A128 80240C48 00000000 */ nop -/* A3A12C 80240C4C 8E630074 */ lw $v1, 0x74($s3) -/* A3A130 80240C50 240200FF */ addiu $v0, $zero, 0xff -/* A3A134 80240C54 10620022 */ beq $v1, $v0, .L80240CE0 -/* A3A138 80240C58 2462FFFF */ addiu $v0, $v1, -1 -/* A3A13C 80240C5C 00021080 */ sll $v0, $v0, 2 -/* A3A140 80240C60 02A21021 */ addu $v0, $s5, $v0 -/* A3A144 80240C64 8C520108 */ lw $s2, 0x108($v0) -/* A3A148 80240C68 3C028024 */ lui $v0, %hi(D_802435EC_A3CACC) -/* A3A14C 80240C6C 244235EC */ addiu $v0, $v0, %lo(D_802435EC_A3CACC) -/* A3A150 80240C70 00121840 */ sll $v1, $s2, 1 -/* A3A154 80240C74 00721821 */ addu $v1, $v1, $s2 -/* A3A158 80240C78 00031880 */ sll $v1, $v1, 2 -/* A3A15C 80240C7C 00621821 */ addu $v1, $v1, $v0 -/* A3A160 80240C80 8C620000 */ lw $v0, ($v1) -/* A3A164 80240C84 AE620084 */ sw $v0, 0x84($s3) -/* A3A168 80240C88 8C620004 */ lw $v0, 4($v1) -/* A3A16C 80240C8C AE72008C */ sw $s2, 0x8c($s3) -/* A3A170 80240C90 AE620088 */ sw $v0, 0x88($s3) -/* A3A174 80240C94 8C620000 */ lw $v0, ($v1) -/* A3A178 80240C98 00021140 */ sll $v0, $v0, 5 -/* A3A17C 80240C9C 3C018008 */ lui $at, %hi(gItemTable) -/* A3A180 80240CA0 00220821 */ addu $at, $at, $v0 -/* A3A184 80240CA4 8C2278E0 */ lw $v0, %lo(gItemTable)($at) -/* A3A188 80240CA8 AE620094 */ sw $v0, 0x94($s3) -/* A3A18C 80240CAC 8C620000 */ lw $v0, ($v1) -/* A3A190 80240CB0 00021140 */ sll $v0, $v0, 5 -/* A3A194 80240CB4 3C038008 */ lui $v1, %hi(gItemTable+0x1A) -/* A3A198 80240CB8 00621821 */ addu $v1, $v1, $v0 -/* A3A19C 80240CBC 906378FA */ lbu $v1, %lo(gItemTable+0x1A)($v1) -/* A3A1A0 80240CC0 00031080 */ sll $v0, $v1, 2 -/* A3A1A4 80240CC4 00431021 */ addu $v0, $v0, $v1 -/* A3A1A8 80240CC8 00021080 */ sll $v0, $v0, 2 -/* A3A1AC 80240CCC 3C018009 */ lui $at, %hi(gMoveTable+0x12) -/* A3A1B0 80240CD0 00220821 */ addu $at, $at, $v0 -/* A3A1B4 80240CD4 8022F072 */ lb $v0, %lo(gMoveTable+0x12)($at) -/* A3A1B8 80240CD8 0809033A */ j .L80240CE8 -/* A3A1BC 80240CDC AE620098 */ sw $v0, 0x98($s3) -.L80240CE0: -/* A3A1C0 80240CE0 2402FFFF */ addiu $v0, $zero, -1 -/* A3A1C4 80240CE4 AE620084 */ sw $v0, 0x84($s3) -.L80240CE8: -/* A3A1C8 80240CE8 0C00AB4B */ jal heap_free -/* A3A1CC 80240CEC 8E640078 */ lw $a0, 0x78($s3) -/* A3A1D0 80240CF0 24020002 */ addiu $v0, $zero, 2 -.L80240CF4: -/* A3A1D4 80240CF4 8FBF0034 */ lw $ra, 0x34($sp) -/* A3A1D8 80240CF8 8FBE0030 */ lw $fp, 0x30($sp) -/* A3A1DC 80240CFC 8FB7002C */ lw $s7, 0x2c($sp) -/* A3A1E0 80240D00 8FB60028 */ lw $s6, 0x28($sp) -/* A3A1E4 80240D04 8FB50024 */ lw $s5, 0x24($sp) -/* A3A1E8 80240D08 8FB40020 */ lw $s4, 0x20($sp) -/* A3A1EC 80240D0C 8FB3001C */ lw $s3, 0x1c($sp) -/* A3A1F0 80240D10 8FB20018 */ lw $s2, 0x18($sp) -/* A3A1F4 80240D14 8FB10014 */ lw $s1, 0x14($sp) -/* A3A1F8 80240D18 8FB00010 */ lw $s0, 0x10($sp) -/* A3A1FC 80240D1C 03E00008 */ jr $ra -/* A3A200 80240D20 27BD0038 */ addiu $sp, $sp, 0x38 -/* A3A204 80240D24 00000000 */ nop -/* A3A208 80240D28 00000000 */ nop -/* A3A20C 80240D2C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A210/func_80240D30_A3A210.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A210/func_80240D30_A3A210.s deleted file mode 100644 index 518290123e..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A210/func_80240D30_A3A210.s +++ /dev/null @@ -1,12 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240D30_A3A210 -/* A3A210 80240D30 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* A3A214 80240D34 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* A3A218 80240D38 8442008E */ lh $v0, 0x8e($v0) -/* A3A21C 80240D3C AC820084 */ sw $v0, 0x84($a0) -/* A3A220 80240D40 03E00008 */ jr $ra -/* A3A224 80240D44 24020002 */ addiu $v0, $zero, 2 -/* A3A228 80240D48 00000000 */ nop -/* A3A22C 80240D4C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411BC_A3A69C.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411BC_A3A69C.s deleted file mode 100644 index 33d396fcaa..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411BC_A3A69C.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802411BC_A3A69C -/* A3A69C 802411BC 0000282D */ daddu $a1, $zero, $zero -/* A3A6A0 802411C0 3C038011 */ lui $v1, %hi(gPlayerData) -/* A3A6A4 802411C4 2463F290 */ addiu $v1, $v1, %lo(gPlayerData) -.L802411C8: -/* A3A6A8 802411C8 846200B4 */ lh $v0, 0xb4($v1) -/* A3A6AC 802411CC 14440003 */ bne $v0, $a0, .L802411DC -/* A3A6B0 802411D0 24A50001 */ addiu $a1, $a1, 1 -/* A3A6B4 802411D4 03E00008 */ jr $ra -/* A3A6B8 802411D8 24020001 */ addiu $v0, $zero, 1 -.L802411DC: -/* A3A6BC 802411DC 28A20080 */ slti $v0, $a1, 0x80 -/* A3A6C0 802411E0 1440FFF9 */ bnez $v0, .L802411C8 -/* A3A6C4 802411E4 24630002 */ addiu $v1, $v1, 2 -/* A3A6C8 802411E8 03E00008 */ jr $ra -/* A3A6CC 802411EC 0000102D */ daddu $v0, $zero, $zero diff --git a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411F0_A3A6D0.s b/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411F0_A3A6D0.s deleted file mode 100644 index f74605a1f6..0000000000 --- a/ver/us/asm/nonmatchings/world/area_hos/hos_06/A3A230/func_802411F0_A3A6D0.s +++ /dev/null @@ -1,37 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802411F0_A3A6D0 -/* A3A6D0 802411F0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* A3A6D4 802411F4 AFB00010 */ sw $s0, 0x10($sp) -/* A3A6D8 802411F8 0000802D */ daddu $s0, $zero, $zero -/* A3A6DC 802411FC AFB10014 */ sw $s1, 0x14($sp) -/* A3A6E0 80241200 3C11F971 */ lui $s1, 0xf971 -/* A3A6E4 80241204 36318883 */ ori $s1, $s1, 0x8883 -/* A3A6E8 80241208 AFBF0018 */ sw $ra, 0x18($sp) -/* A3A6EC 8024120C 0000202D */ daddu $a0, $zero, $zero -.L80241210: -/* A3A6F0 80241210 02112821 */ addu $a1, $s0, $s1 -/* A3A6F4 80241214 0C0B2026 */ jal evt_set_variable -/* A3A6F8 80241218 0080302D */ daddu $a2, $a0, $zero -/* A3A6FC 8024121C 26100001 */ addiu $s0, $s0, 1 -/* A3A700 80241220 2E02004F */ sltiu $v0, $s0, 0x4f -/* A3A704 80241224 1440FFFA */ bnez $v0, .L80241210 -/* A3A708 80241228 0000202D */ daddu $a0, $zero, $zero -/* A3A70C 8024122C 0000802D */ daddu $s0, $zero, $zero -/* A3A710 80241230 3C11F971 */ lui $s1, 0xf971 -/* A3A714 80241234 363188E4 */ ori $s1, $s1, 0x88e4 -.L80241238: -/* A3A718 80241238 02112821 */ addu $a1, $s0, $s1 -/* A3A71C 8024123C 0C0B2026 */ jal evt_set_variable -/* A3A720 80241240 0080302D */ daddu $a2, $a0, $zero -/* A3A724 80241244 26100001 */ addiu $s0, $s0, 1 -/* A3A728 80241248 2E020010 */ sltiu $v0, $s0, 0x10 -/* A3A72C 8024124C 1440FFFA */ bnez $v0, .L80241238 -/* A3A730 80241250 0000202D */ daddu $a0, $zero, $zero -/* A3A734 80241254 8FBF0018 */ lw $ra, 0x18($sp) -/* A3A738 80241258 8FB10014 */ lw $s1, 0x14($sp) -/* A3A73C 8024125C 8FB00010 */ lw $s0, 0x10($sp) -/* A3A740 80241260 24020002 */ addiu $v0, $zero, 2 -/* A3A744 80241264 03E00008 */ jr $ra -/* A3A748 80241268 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C470/func_80240000_B2C470.s b/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C470/func_80240000_B2C470.s deleted file mode 100644 index e94145a4e3..0000000000 --- a/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C470/func_80240000_B2C470.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240000_B2C470 -/* B2C470 80240000 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* B2C474 80240004 0000202D */ daddu $a0, $zero, $zero -/* B2C478 80240008 AFBF0010 */ sw $ra, 0x10($sp) -/* B2C47C 8024000C 0C052AC3 */ jal func_8014AB0C -/* B2C480 80240010 0080282D */ daddu $a1, $a0, $zero -/* B2C484 80240014 8FBF0010 */ lw $ra, 0x10($sp) -/* B2C488 80240018 24020002 */ addiu $v0, $zero, 2 -/* B2C48C 8024001C 03E00008 */ jr $ra -/* B2C490 80240020 27BD0018 */ addiu $sp, $sp, 0x18 -/* B2C494 80240024 00000000 */ nop -/* B2C498 80240028 00000000 */ nop -/* B2C49C 8024002C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C4A0/func_8024033C_B2C7AC.s b/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C4A0/func_8024033C_B2C7AC.s index 9551bc6c08..cd21b64bd3 100644 --- a/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C4A0/func_8024033C_B2C7AC.s +++ b/ver/us/asm/nonmatchings/world/area_jan/jan_02/B2C4A0/func_8024033C_B2C7AC.s @@ -5,7 +5,7 @@ glabel func_8024033C_B2C7AC /* B2C7AC 8024033C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* B2C7B0 80240340 0000202D */ daddu $a0, $zero, $zero /* B2C7B4 80240344 AFBF0010 */ sw $ra, 0x10($sp) -/* B2C7B8 80240348 0C052AD8 */ jal func_8014AB60 +/* B2C7B8 80240348 0C052AD8 */ jal bgm_clear_track_volumes /* B2C7BC 8024034C 0080282D */ daddu $a1, $a0, $zero /* B2C7C0 80240350 8FBF0010 */ lw $ra, 0x10($sp) /* B2C7C4 80240354 24020002 */ addiu $v0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240000_8ABF90.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240000_8ABF90.s deleted file mode 100644 index 6971b2c126..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240000_8ABF90.s +++ /dev/null @@ -1,245 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240000_8ABF90 -/* 8ABF90 80240000 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 8ABF94 80240004 AFB1001C */ sw $s1, 0x1c($sp) -/* 8ABF98 80240008 0080882D */ daddu $s1, $a0, $zero -/* 8ABF9C 8024000C AFBF0020 */ sw $ra, 0x20($sp) -/* 8ABFA0 80240010 AFB00018 */ sw $s0, 0x18($sp) -/* 8ABFA4 80240014 10A0003B */ beqz $a1, .L80240104 -/* 8ABFA8 80240018 8E30000C */ lw $s0, 0xc($s1) -/* 8ABFAC 8024001C 3C048024 */ lui $a0, %hi(D_802440E0) -/* 8ABFB0 80240020 248440E0 */ addiu $a0, $a0, %lo(D_802440E0) -/* 8ABFB4 80240024 3C058024 */ lui $a1, %hi(D_802440E1) -/* 8ABFB8 80240028 24A540E1 */ addiu $a1, $a1, %lo(D_802440E1) -/* 8ABFBC 8024002C 3C068024 */ lui $a2, %hi(D_802440E2) -/* 8ABFC0 80240030 24C640E2 */ addiu $a2, $a2, %lo(D_802440E2) -/* 8ABFC4 80240034 3C078024 */ lui $a3, %hi(D_802440E3) -/* 8ABFC8 80240038 24E740E3 */ addiu $a3, $a3, %lo(D_802440E3) -/* 8ABFCC 8024003C 3C028024 */ lui $v0, %hi(dgb_09_extraAnimationList_802440E4) -/* 8ABFD0 80240040 244240E4 */ addiu $v0, $v0, %lo(dgb_09_extraAnimationList_802440E4) -/* 8ABFD4 80240044 AFA20010 */ sw $v0, 0x10($sp) -/* 8ABFD8 80240048 3C028024 */ lui $v0, %hi(D_802440E5) -/* 8ABFDC 8024004C 244240E5 */ addiu $v0, $v0, %lo(D_802440E5) -/* 8ABFE0 80240050 0C046FF5 */ jal get_model_env_color_parameters -/* 8ABFE4 80240054 AFA20014 */ sw $v0, 0x14($sp) -/* 8ABFE8 80240058 8E050000 */ lw $a1, ($s0) -/* 8ABFEC 8024005C 26100004 */ addiu $s0, $s0, 4 -/* 8ABFF0 80240060 0C0B1EAF */ jal evt_get_variable -/* 8ABFF4 80240064 0220202D */ daddu $a0, $s1, $zero -/* 8ABFF8 80240068 3C018024 */ lui $at, %hi(mac_01_GetPlayerCoins) -/* 8ABFFC 8024006C AC2240E8 */ sw $v0, %lo(mac_01_GetPlayerCoins)($at) -/* 8AC000 80240070 8E050000 */ lw $a1, ($s0) -/* 8AC004 80240074 26100004 */ addiu $s0, $s0, 4 -/* 8AC008 80240078 0C0B1EAF */ jal evt_get_variable -/* 8AC00C 8024007C 0220202D */ daddu $a0, $s1, $zero -/* 8AC010 80240080 3C018024 */ lui $at, %hi(dgb_09_npcAISettings_802440EC) -/* 8AC014 80240084 AC2240EC */ sw $v0, %lo(dgb_09_npcAISettings_802440EC)($at) -/* 8AC018 80240088 8E050000 */ lw $a1, ($s0) -/* 8AC01C 8024008C 26100004 */ addiu $s0, $s0, 4 -/* 8AC020 80240090 0C0B1EAF */ jal evt_get_variable -/* 8AC024 80240094 0220202D */ daddu $a0, $s1, $zero -/* 8AC028 80240098 3C018024 */ lui $at, %hi(obk_01_varStash) -/* 8AC02C 8024009C AC2240F0 */ sw $v0, %lo(obk_01_varStash)($at) -/* 8AC030 802400A0 8E050000 */ lw $a1, ($s0) -/* 8AC034 802400A4 26100004 */ addiu $s0, $s0, 4 -/* 8AC038 802400A8 0C0B1EAF */ jal evt_get_variable -/* 8AC03C 802400AC 0220202D */ daddu $a0, $s1, $zero -/* 8AC040 802400B0 3C018024 */ lui $at, %hi(flo_16_npcGroup_802440F4) -/* 8AC044 802400B4 AC2240F4 */ sw $v0, %lo(flo_16_npcGroup_802440F4)($at) -/* 8AC048 802400B8 8E050000 */ lw $a1, ($s0) -/* 8AC04C 802400BC 26100004 */ addiu $s0, $s0, 4 -/* 8AC050 802400C0 0C0B1EAF */ jal evt_get_variable -/* 8AC054 802400C4 0220202D */ daddu $a0, $s1, $zero -/* 8AC058 802400C8 3C018024 */ lui $at, %hi(D_802440F8) -/* 8AC05C 802400CC AC2240F8 */ sw $v0, %lo(D_802440F8)($at) -/* 8AC060 802400D0 8E050000 */ lw $a1, ($s0) -/* 8AC064 802400D4 26100004 */ addiu $s0, $s0, 4 -/* 8AC068 802400D8 0C0B1EAF */ jal evt_get_variable -/* 8AC06C 802400DC 0220202D */ daddu $a0, $s1, $zero -/* 8AC070 802400E0 3C018024 */ lui $at, %hi(func_802440FC_80497C) -/* 8AC074 802400E4 AC2240FC */ sw $v0, %lo(func_802440FC_80497C)($at) -/* 8AC078 802400E8 8E050000 */ lw $a1, ($s0) -/* 8AC07C 802400EC 0C0B1EAF */ jal evt_get_variable -/* 8AC080 802400F0 0220202D */ daddu $a0, $s1, $zero -/* 8AC084 802400F4 3C018024 */ lui $at, %hi(dgb_08_npcAI_80244100) -/* 8AC088 802400F8 AC224100 */ sw $v0, %lo(dgb_08_npcAI_80244100)($at) -/* 8AC08C 802400FC 3C018024 */ lui $at, %hi(D_80244104) -/* 8AC090 80240100 AC204104 */ sw $zero, %lo(D_80244104)($at) -.L80240104: -/* 8AC094 80240104 3C118024 */ lui $s1, %hi(dgb_08_npcAI_80244100) -/* 8AC098 80240108 26314100 */ addiu $s1, $s1, %lo(dgb_08_npcAI_80244100) -/* 8AC09C 8024010C 8E2F0000 */ lw $t7, ($s1) -/* 8AC0A0 80240110 19E00088 */ blez $t7, .L80240334 -/* 8AC0A4 80240114 00000000 */ nop -/* 8AC0A8 80240118 3C108024 */ lui $s0, %hi(D_80244104) -/* 8AC0AC 8024011C 26104104 */ addiu $s0, $s0, %lo(D_80244104) -/* 8AC0B0 80240120 8E030000 */ lw $v1, ($s0) -/* 8AC0B4 80240124 3C048024 */ lui $a0, %hi(D_802440E0) -/* 8AC0B8 80240128 908440E0 */ lbu $a0, %lo(D_802440E0)($a0) -/* 8AC0BC 8024012C 3C028024 */ lui $v0, %hi(mac_01_GetPlayerCoins) -/* 8AC0C0 80240130 8C4240E8 */ lw $v0, %lo(mac_01_GetPlayerCoins)($v0) -/* 8AC0C4 80240134 24630001 */ addiu $v1, $v1, 1 -/* 8AC0C8 80240138 00441023 */ subu $v0, $v0, $a0 -/* 8AC0CC 8024013C 00430018 */ mult $v0, $v1 -/* 8AC0D0 80240140 00004012 */ mflo $t0 -/* 8AC0D4 80240144 00000000 */ nop -/* 8AC0D8 80240148 15E00002 */ bnez $t7, .L80240154 -/* 8AC0DC 8024014C 010F001A */ div $zero, $t0, $t7 -/* 8AC0E0 80240150 0007000D */ break 7 -.L80240154: -/* 8AC0E4 80240154 2401FFFF */ addiu $at, $zero, -1 -/* 8AC0E8 80240158 15E10004 */ bne $t7, $at, .L8024016C -/* 8AC0EC 8024015C 3C018000 */ lui $at, 0x8000 -/* 8AC0F0 80240160 15010002 */ bne $t0, $at, .L8024016C -/* 8AC0F4 80240164 00000000 */ nop -/* 8AC0F8 80240168 0006000D */ break 6 -.L8024016C: -/* 8AC0FC 8024016C 00007012 */ mflo $t6 -/* 8AC100 80240170 3C058024 */ lui $a1, %hi(D_802440E1) -/* 8AC104 80240174 90A540E1 */ lbu $a1, %lo(D_802440E1)($a1) -/* 8AC108 80240178 3C028024 */ lui $v0, %hi(dgb_09_npcAISettings_802440EC) -/* 8AC10C 8024017C 8C4240EC */ lw $v0, %lo(dgb_09_npcAISettings_802440EC)($v0) -/* 8AC110 80240180 00451023 */ subu $v0, $v0, $a1 -/* 8AC114 80240184 00430018 */ mult $v0, $v1 -/* 8AC118 80240188 00004012 */ mflo $t0 -/* 8AC11C 8024018C 00000000 */ nop -/* 8AC120 80240190 15E00002 */ bnez $t7, .L8024019C -/* 8AC124 80240194 010F001A */ div $zero, $t0, $t7 -/* 8AC128 80240198 0007000D */ break 7 -.L8024019C: -/* 8AC12C 8024019C 2401FFFF */ addiu $at, $zero, -1 -/* 8AC130 802401A0 15E10004 */ bne $t7, $at, .L802401B4 -/* 8AC134 802401A4 3C018000 */ lui $at, 0x8000 -/* 8AC138 802401A8 15010002 */ bne $t0, $at, .L802401B4 -/* 8AC13C 802401AC 00000000 */ nop -/* 8AC140 802401B0 0006000D */ break 6 -.L802401B4: -/* 8AC144 802401B4 00006812 */ mflo $t5 -/* 8AC148 802401B8 3C068024 */ lui $a2, %hi(D_802440E2) -/* 8AC14C 802401BC 90C640E2 */ lbu $a2, %lo(D_802440E2)($a2) -/* 8AC150 802401C0 3C028024 */ lui $v0, %hi(obk_01_varStash) -/* 8AC154 802401C4 8C4240F0 */ lw $v0, %lo(obk_01_varStash)($v0) -/* 8AC158 802401C8 00461023 */ subu $v0, $v0, $a2 -/* 8AC15C 802401CC 00430018 */ mult $v0, $v1 -/* 8AC160 802401D0 00004012 */ mflo $t0 -/* 8AC164 802401D4 00000000 */ nop -/* 8AC168 802401D8 15E00002 */ bnez $t7, .L802401E4 -/* 8AC16C 802401DC 010F001A */ div $zero, $t0, $t7 -/* 8AC170 802401E0 0007000D */ break 7 -.L802401E4: -/* 8AC174 802401E4 2401FFFF */ addiu $at, $zero, -1 -/* 8AC178 802401E8 15E10004 */ bne $t7, $at, .L802401FC -/* 8AC17C 802401EC 3C018000 */ lui $at, 0x8000 -/* 8AC180 802401F0 15010002 */ bne $t0, $at, .L802401FC -/* 8AC184 802401F4 00000000 */ nop -/* 8AC188 802401F8 0006000D */ break 6 -.L802401FC: -/* 8AC18C 802401FC 00006012 */ mflo $t4 -/* 8AC190 80240200 3C078024 */ lui $a3, %hi(D_802440E3) -/* 8AC194 80240204 90E740E3 */ lbu $a3, %lo(D_802440E3)($a3) -/* 8AC198 80240208 3C028024 */ lui $v0, %hi(flo_16_npcGroup_802440F4) -/* 8AC19C 8024020C 8C4240F4 */ lw $v0, %lo(flo_16_npcGroup_802440F4)($v0) -/* 8AC1A0 80240210 00471023 */ subu $v0, $v0, $a3 -/* 8AC1A4 80240214 00430018 */ mult $v0, $v1 -/* 8AC1A8 80240218 00004012 */ mflo $t0 -/* 8AC1AC 8024021C 00000000 */ nop -/* 8AC1B0 80240220 15E00002 */ bnez $t7, .L8024022C -/* 8AC1B4 80240224 010F001A */ div $zero, $t0, $t7 -/* 8AC1B8 80240228 0007000D */ break 7 -.L8024022C: -/* 8AC1BC 8024022C 2401FFFF */ addiu $at, $zero, -1 -/* 8AC1C0 80240230 15E10004 */ bne $t7, $at, .L80240244 -/* 8AC1C4 80240234 3C018000 */ lui $at, 0x8000 -/* 8AC1C8 80240238 15010002 */ bne $t0, $at, .L80240244 -/* 8AC1CC 8024023C 00000000 */ nop -/* 8AC1D0 80240240 0006000D */ break 6 -.L80240244: -/* 8AC1D4 80240244 00005812 */ mflo $t3 -/* 8AC1D8 80240248 3C098024 */ lui $t1, %hi(dgb_09_extraAnimationList_802440E4) -/* 8AC1DC 8024024C 912940E4 */ lbu $t1, %lo(dgb_09_extraAnimationList_802440E4)($t1) -/* 8AC1E0 80240250 3C028024 */ lui $v0, %hi(D_802440F8) -/* 8AC1E4 80240254 8C4240F8 */ lw $v0, %lo(D_802440F8)($v0) -/* 8AC1E8 80240258 00491023 */ subu $v0, $v0, $t1 -/* 8AC1EC 8024025C 00430018 */ mult $v0, $v1 -/* 8AC1F0 80240260 00004012 */ mflo $t0 -/* 8AC1F4 80240264 00000000 */ nop -/* 8AC1F8 80240268 15E00002 */ bnez $t7, .L80240274 -/* 8AC1FC 8024026C 010F001A */ div $zero, $t0, $t7 -/* 8AC200 80240270 0007000D */ break 7 -.L80240274: -/* 8AC204 80240274 2401FFFF */ addiu $at, $zero, -1 -/* 8AC208 80240278 15E10004 */ bne $t7, $at, .L8024028C -/* 8AC20C 8024027C 3C018000 */ lui $at, 0x8000 -/* 8AC210 80240280 15010002 */ bne $t0, $at, .L8024028C -/* 8AC214 80240284 00000000 */ nop -/* 8AC218 80240288 0006000D */ break 6 -.L8024028C: -/* 8AC21C 8024028C 00005012 */ mflo $t2 -/* 8AC220 80240290 3C088024 */ lui $t0, %hi(D_802440E5) -/* 8AC224 80240294 910840E5 */ lbu $t0, %lo(D_802440E5)($t0) -/* 8AC228 80240298 3C028024 */ lui $v0, %hi(func_802440FC_80497C) -/* 8AC22C 8024029C 8C4240FC */ lw $v0, %lo(func_802440FC_80497C)($v0) -/* 8AC230 802402A0 00481023 */ subu $v0, $v0, $t0 -/* 8AC234 802402A4 00430018 */ mult $v0, $v1 -/* 8AC238 802402A8 0000C812 */ mflo $t9 -/* 8AC23C 802402AC 00000000 */ nop -/* 8AC240 802402B0 15E00002 */ bnez $t7, .L802402BC -/* 8AC244 802402B4 032F001A */ div $zero, $t9, $t7 -/* 8AC248 802402B8 0007000D */ break 7 -.L802402BC: -/* 8AC24C 802402BC 2401FFFF */ addiu $at, $zero, -1 -/* 8AC250 802402C0 15E10004 */ bne $t7, $at, .L802402D4 -/* 8AC254 802402C4 3C018000 */ lui $at, 0x8000 -/* 8AC258 802402C8 17210002 */ bne $t9, $at, .L802402D4 -/* 8AC25C 802402CC 00000000 */ nop -/* 8AC260 802402D0 0006000D */ break 6 -.L802402D4: -/* 8AC264 802402D4 00001012 */ mflo $v0 -/* 8AC268 802402D8 AE030000 */ sw $v1, ($s0) -/* 8AC26C 802402DC 008E2021 */ addu $a0, $a0, $t6 -/* 8AC270 802402E0 308400FF */ andi $a0, $a0, 0xff -/* 8AC274 802402E4 00AD2821 */ addu $a1, $a1, $t5 -/* 8AC278 802402E8 30A500FF */ andi $a1, $a1, 0xff -/* 8AC27C 802402EC 00CC3021 */ addu $a2, $a2, $t4 -/* 8AC280 802402F0 30C600FF */ andi $a2, $a2, 0xff -/* 8AC284 802402F4 00EB3821 */ addu $a3, $a3, $t3 -/* 8AC288 802402F8 30E700FF */ andi $a3, $a3, 0xff -/* 8AC28C 802402FC 012A4821 */ addu $t1, $t1, $t2 -/* 8AC290 80240300 312900FF */ andi $t1, $t1, 0xff -/* 8AC294 80240304 AFA90010 */ sw $t1, 0x10($sp) -/* 8AC298 80240308 01024021 */ addu $t0, $t0, $v0 -/* 8AC29C 8024030C 310800FF */ andi $t0, $t0, 0xff -/* 8AC2A0 80240310 0C046FE6 */ jal set_model_env_color_parameters -/* 8AC2A4 80240314 AFA80014 */ sw $t0, 0x14($sp) -/* 8AC2A8 80240318 8E020000 */ lw $v0, ($s0) -/* 8AC2AC 8024031C 8E230000 */ lw $v1, ($s1) -/* 8AC2B0 80240320 0043102A */ slt $v0, $v0, $v1 -/* 8AC2B4 80240324 14400013 */ bnez $v0, .L80240374 -/* 8AC2B8 80240328 0000102D */ daddu $v0, $zero, $zero -/* 8AC2BC 8024032C 080900DD */ j .L80240374 -/* 8AC2C0 80240330 24020002 */ addiu $v0, $zero, 2 -.L80240334: -/* 8AC2C4 80240334 3C028024 */ lui $v0, %hi(D_802440FB) -/* 8AC2C8 80240338 904240FB */ lbu $v0, %lo(D_802440FB)($v0) -/* 8AC2CC 8024033C 3C048024 */ lui $a0, %hi(D_802440EB) -/* 8AC2D0 80240340 908440EB */ lbu $a0, %lo(D_802440EB)($a0) -/* 8AC2D4 80240344 3C058024 */ lui $a1, %hi(D_802440EF) -/* 8AC2D8 80240348 90A540EF */ lbu $a1, %lo(D_802440EF)($a1) -/* 8AC2DC 8024034C 3C068024 */ lui $a2, %hi(D_802440F3) -/* 8AC2E0 80240350 90C640F3 */ lbu $a2, %lo(D_802440F3)($a2) -/* 8AC2E4 80240354 3C078024 */ lui $a3, %hi(D_802440F7) -/* 8AC2E8 80240358 90E740F7 */ lbu $a3, %lo(D_802440F7)($a3) -/* 8AC2EC 8024035C 3C038024 */ lui $v1, %hi(D_802440FF) -/* 8AC2F0 80240360 906340FF */ lbu $v1, %lo(D_802440FF)($v1) -/* 8AC2F4 80240364 AFA20010 */ sw $v0, 0x10($sp) -/* 8AC2F8 80240368 0C046FE6 */ jal set_model_env_color_parameters -/* 8AC2FC 8024036C AFA30014 */ sw $v1, 0x14($sp) -/* 8AC300 80240370 24020002 */ addiu $v0, $zero, 2 -.L80240374: -/* 8AC304 80240374 8FBF0020 */ lw $ra, 0x20($sp) -/* 8AC308 80240378 8FB1001C */ lw $s1, 0x1c($sp) -/* 8AC30C 8024037C 8FB00018 */ lw $s0, 0x18($sp) -/* 8AC310 80240380 03E00008 */ jr $ra -/* 8AC314 80240384 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240388_8AC318.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240388_8AC318.s deleted file mode 100644 index bb9060d069..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240388_8AC318.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240388_8AC318 -/* 8AC318 80240388 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8AC31C 8024038C AFBF0010 */ sw $ra, 0x10($sp) -/* 8AC320 80240390 0C04760B */ jal mdl_set_all_fog_mode -/* 8AC324 80240394 24040003 */ addiu $a0, $zero, 3 -/* 8AC328 80240398 3C038015 */ lui $v1, %hi(D_801512F0) -/* 8AC32C 8024039C 8C6312F0 */ lw $v1, %lo(D_801512F0)($v1) -/* 8AC330 802403A0 24020003 */ addiu $v0, $zero, 3 -/* 8AC334 802403A4 A0620000 */ sb $v0, ($v1) -/* 8AC338 802403A8 8FBF0010 */ lw $ra, 0x10($sp) -/* 8AC33C 802403AC 24020002 */ addiu $v0, $zero, 2 -/* 8AC340 802403B0 03E00008 */ jr $ra -/* 8AC344 802403B4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802404E8_8AC478.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802404E8_8AC478.s deleted file mode 100644 index 8ad1fe89a5..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802404E8_8AC478.s +++ /dev/null @@ -1,22 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802404E8_8AC478 -/* 8AC478 802404E8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8AC47C 802404EC AFBF0010 */ sw $ra, 0x10($sp) -/* 8AC480 802404F0 0C0B1EAF */ jal evt_get_variable -/* 8AC484 802404F4 8C850084 */ lw $a1, 0x84($a0) -/* 8AC488 802404F8 3C013A83 */ lui $at, 0x3a83 -/* 8AC48C 802404FC 3421126F */ ori $at, $at, 0x126f -/* 8AC490 80240500 44811000 */ mtc1 $at, $f2 -/* 8AC494 80240504 44820000 */ mtc1 $v0, $f0 -/* 8AC498 80240508 00000000 */ nop -/* 8AC49C 8024050C 46800020 */ cvt.s.w $f0, $f0 -/* 8AC4A0 80240510 46020002 */ mul.s $f0, $f0, $f2 -/* 8AC4A4 80240514 00000000 */ nop -/* 8AC4A8 80240518 8FBF0010 */ lw $ra, 0x10($sp) -/* 8AC4AC 8024051C 24020002 */ addiu $v0, $zero, 2 -/* 8AC4B0 80240520 3C01800B */ lui $at, %hi(gCameras+0x4E0) -/* 8AC4B4 80240524 E4202260 */ swc1 $f0, %lo(gCameras+0x4E0)($at) -/* 8AC4B8 80240528 03E00008 */ jr $ra -/* 8AC4BC 8024052C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802405F0_8AC580.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802405F0_8AC580.s deleted file mode 100644 index 15ea5c3262..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_802405F0_8AC580.s +++ /dev/null @@ -1,393 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802405F0_8AC580 -/* 8AC580 802405F0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 8AC584 802405F4 AFB1001C */ sw $s1, 0x1c($sp) -/* 8AC588 802405F8 0080882D */ daddu $s1, $a0, $zero -/* 8AC58C 802405FC AFB30024 */ sw $s3, 0x24($sp) -/* 8AC590 80240600 AFBF0028 */ sw $ra, 0x28($sp) -/* 8AC594 80240604 AFB20020 */ sw $s2, 0x20($sp) -/* 8AC598 80240608 AFB00018 */ sw $s0, 0x18($sp) -/* 8AC59C 8024060C F7B60038 */ sdc1 $f22, 0x38($sp) -/* 8AC5A0 80240610 F7B40030 */ sdc1 $f20, 0x30($sp) -/* 8AC5A4 80240614 8E30000C */ lw $s0, 0xc($s1) -/* 8AC5A8 80240618 10A00010 */ beqz $a1, .L8024065C -/* 8AC5AC 8024061C 0000982D */ daddu $s3, $zero, $zero -/* 8AC5B0 80240620 8E050000 */ lw $a1, ($s0) -/* 8AC5B4 80240624 0C0B1EAF */ jal evt_get_variable -/* 8AC5B8 80240628 26100004 */ addiu $s0, $s0, 4 -/* 8AC5BC 8024062C AE220074 */ sw $v0, 0x74($s1) -/* 8AC5C0 80240630 8E050000 */ lw $a1, ($s0) -/* 8AC5C4 80240634 26100004 */ addiu $s0, $s0, 4 -/* 8AC5C8 80240638 0C0B1EAF */ jal evt_get_variable -/* 8AC5CC 8024063C 0220202D */ daddu $a0, $s1, $zero -/* 8AC5D0 80240640 AE220078 */ sw $v0, 0x78($s1) -/* 8AC5D4 80240644 8E050000 */ lw $a1, ($s0) -/* 8AC5D8 80240648 0C0B1EAF */ jal evt_get_variable -/* 8AC5DC 8024064C 0220202D */ daddu $a0, $s1, $zero -/* 8AC5E0 80240650 AE2200C0 */ sw $v0, 0xc0($s1) -/* 8AC5E4 80240654 AE200070 */ sw $zero, 0x70($s1) -/* 8AC5E8 80240658 AE20007C */ sw $zero, 0x7c($s1) -.L8024065C: -/* 8AC5EC 8024065C 8E240074 */ lw $a0, 0x74($s1) -/* 8AC5F0 80240660 0C00EABB */ jal get_npc_unsafe -/* 8AC5F4 80240664 24120001 */ addiu $s2, $zero, 1 -/* 8AC5F8 80240668 8E230070 */ lw $v1, 0x70($s1) -/* 8AC5FC 8024066C 1072005D */ beq $v1, $s2, .L802407E4 -/* 8AC600 80240670 0040802D */ daddu $s0, $v0, $zero -/* 8AC604 80240674 28620002 */ slti $v0, $v1, 2 -/* 8AC608 80240678 10400005 */ beqz $v0, .L80240690 -/* 8AC60C 8024067C 24020002 */ addiu $v0, $zero, 2 -/* 8AC610 80240680 10600009 */ beqz $v1, .L802406A8 -/* 8AC614 80240684 26040038 */ addiu $a0, $s0, 0x38 -/* 8AC618 80240688 080902E5 */ j .L80240B94 -/* 8AC61C 8024068C 00000000 */ nop -.L80240690: -/* 8AC620 80240690 1062009C */ beq $v1, $v0, .L80240904 -/* 8AC624 80240694 24020003 */ addiu $v0, $zero, 3 -/* 8AC628 80240698 106200EF */ beq $v1, $v0, .L80240A58 -/* 8AC62C 8024069C 26040038 */ addiu $a0, $s0, 0x38 -/* 8AC630 802406A0 080902E5 */ j .L80240B94 -/* 8AC634 802406A4 00000000 */ nop -.L802406A8: -/* 8AC638 802406A8 3C01C47A */ lui $at, 0xc47a -/* 8AC63C 802406AC 44810000 */ mtc1 $at, $f0 -/* 8AC640 802406B0 3C01C248 */ lui $at, 0xc248 -/* 8AC644 802406B4 4481B000 */ mtc1 $at, $f22 -/* 8AC648 802406B8 AE000038 */ sw $zero, 0x38($s0) -/* 8AC64C 802406BC E600003C */ swc1 $f0, 0x3c($s0) -/* 8AC650 802406C0 E6160040 */ swc1 $f22, 0x40($s0) -/* 8AC654 802406C4 8E23007C */ lw $v1, 0x7c($s1) -/* 8AC658 802406C8 3C014040 */ lui $at, 0x4040 -/* 8AC65C 802406CC 44810000 */ mtc1 $at, $f0 -/* 8AC660 802406D0 00031040 */ sll $v0, $v1, 1 -/* 8AC664 802406D4 00431021 */ addu $v0, $v0, $v1 -/* 8AC668 802406D8 E6000064 */ swc1 $f0, 0x64($s0) -/* 8AC66C 802406DC 44820000 */ mtc1 $v0, $f0 -/* 8AC670 802406E0 00000000 */ nop -/* 8AC674 802406E4 46800020 */ cvt.s.w $f0, $f0 -/* 8AC678 802406E8 E6000060 */ swc1 $f0, 0x60($s0) -/* 8AC67C 802406EC 8E22007C */ lw $v0, 0x7c($s1) -/* 8AC680 802406F0 8E2300C0 */ lw $v1, 0xc0($s1) -/* 8AC684 802406F4 0043102A */ slt $v0, $v0, $v1 -/* 8AC688 802406F8 14400126 */ bnez $v0, .L80240B94 -/* 8AC68C 802406FC 26050040 */ addiu $a1, $s0, 0x40 -/* 8AC690 80240700 3C0142C8 */ lui $at, 0x42c8 -/* 8AC694 80240704 44810000 */ mtc1 $at, $f0 -/* 8AC698 80240708 00000000 */ nop -/* 8AC69C 8024070C E600003C */ swc1 $f0, 0x3c($s0) -/* 8AC6A0 80240710 8E230078 */ lw $v1, 0x78($s1) -/* 8AC6A4 80240714 C6020060 */ lwc1 $f2, 0x60($s0) -/* 8AC6A8 80240718 00031040 */ sll $v0, $v1, 1 -/* 8AC6AC 8024071C 00431021 */ addu $v0, $v0, $v1 -/* 8AC6B0 80240720 00021900 */ sll $v1, $v0, 4 -/* 8AC6B4 80240724 00431021 */ addu $v0, $v0, $v1 -/* 8AC6B8 80240728 44820000 */ mtc1 $v0, $f0 -/* 8AC6BC 8024072C 00000000 */ nop -/* 8AC6C0 80240730 46800020 */ cvt.s.w $f0, $f0 -/* 8AC6C4 80240734 46001080 */ add.s $f2, $f2, $f0 -/* 8AC6C8 80240738 3C014319 */ lui $at, 0x4319 -/* 8AC6CC 8024073C 44810000 */ mtc1 $at, $f0 -/* 8AC6D0 80240740 3C01428C */ lui $at, 0x428c -/* 8AC6D4 80240744 4481A000 */ mtc1 $at, $f20 -/* 8AC6D8 80240748 46001080 */ add.s $f2, $f2, $f0 -/* 8AC6DC 8024074C 4406A000 */ mfc1 $a2, $f20 -/* 8AC6E0 80240750 44071000 */ mfc1 $a3, $f2 -/* 8AC6E4 80240754 0C00A7E7 */ jal add_vec2D_polar -/* 8AC6E8 80240758 00000000 */ nop -/* 8AC6EC 8024075C C6000040 */ lwc1 $f0, 0x40($s0) -/* 8AC6F0 80240760 46000007 */ neg.s $f0, $f0 -/* 8AC6F4 80240764 46160000 */ add.s $f0, $f0, $f22 -/* 8AC6F8 80240768 46140000 */ add.s $f0, $f0, $f20 -/* 8AC6FC 8024076C 3C013E19 */ lui $at, 0x3e19 -/* 8AC700 80240770 3421999A */ ori $at, $at, 0x999a -/* 8AC704 80240774 44811000 */ mtc1 $at, $f2 -/* 8AC708 80240778 00000000 */ nop -/* 8AC70C 8024077C 46020002 */ mul.s $f0, $f0, $f2 -/* 8AC710 80240780 00000000 */ nop -/* 8AC714 80240784 C602003C */ lwc1 $f2, 0x3c($s0) -/* 8AC718 80240788 3C04B000 */ lui $a0, 0xb000 -/* 8AC71C 8024078C 46001080 */ add.s $f2, $f2, $f0 -/* 8AC720 80240790 C6000040 */ lwc1 $f0, 0x40($s0) -/* 8AC724 80240794 3484001E */ ori $a0, $a0, 0x1e -/* 8AC728 80240798 E602003C */ swc1 $f2, 0x3c($s0) -/* 8AC72C 8024079C E7A00010 */ swc1 $f0, 0x10($sp) -/* 8AC730 802407A0 8E060038 */ lw $a2, 0x38($s0) -/* 8AC734 802407A4 8E07003C */ lw $a3, 0x3c($s0) -/* 8AC738 802407A8 0C052757 */ jal sfx_play_sound_at_position -/* 8AC73C 802407AC 0000282D */ daddu $a1, $zero, $zero -/* 8AC740 802407B0 C602003C */ lwc1 $f2, 0x3c($s0) -/* 8AC744 802407B4 3C0141A0 */ lui $at, 0x41a0 -/* 8AC748 802407B8 44810000 */ mtc1 $at, $f0 -/* 8AC74C 802407BC 00000000 */ nop -/* 8AC750 802407C0 46001080 */ add.s $f2, $f2, $f0 -/* 8AC754 802407C4 E7A00010 */ swc1 $f0, 0x10($sp) -/* 8AC758 802407C8 8E050038 */ lw $a1, 0x38($s0) -/* 8AC75C 802407CC 8E070040 */ lw $a3, 0x40($s0) -/* 8AC760 802407D0 44061000 */ mfc1 $a2, $f2 -/* 8AC764 802407D4 0C01BFBC */ jal fx_sparkles -/* 8AC768 802407D8 0000202D */ daddu $a0, $zero, $zero -/* 8AC76C 802407DC 080902E5 */ j .L80240B94 -/* 8AC770 802407E0 AE320070 */ sw $s2, 0x70($s1) -.L802407E4: -/* 8AC774 802407E4 3C01C248 */ lui $at, 0xc248 -/* 8AC778 802407E8 4481B000 */ mtc1 $at, $f22 -/* 8AC77C 802407EC 3C0142C8 */ lui $at, 0x42c8 -/* 8AC780 802407F0 44810000 */ mtc1 $at, $f0 -/* 8AC784 802407F4 AE000038 */ sw $zero, 0x38($s0) -/* 8AC788 802407F8 E6160040 */ swc1 $f22, 0x40($s0) -/* 8AC78C 802407FC E600003C */ swc1 $f0, 0x3c($s0) -/* 8AC790 80240800 8E230078 */ lw $v1, 0x78($s1) -/* 8AC794 80240804 C6020060 */ lwc1 $f2, 0x60($s0) -/* 8AC798 80240808 00031040 */ sll $v0, $v1, 1 -/* 8AC79C 8024080C 00431021 */ addu $v0, $v0, $v1 -/* 8AC7A0 80240810 00021900 */ sll $v1, $v0, 4 -/* 8AC7A4 80240814 00431021 */ addu $v0, $v0, $v1 -/* 8AC7A8 80240818 44820000 */ mtc1 $v0, $f0 -/* 8AC7AC 8024081C 00000000 */ nop -/* 8AC7B0 80240820 46800020 */ cvt.s.w $f0, $f0 -/* 8AC7B4 80240824 46001080 */ add.s $f2, $f2, $f0 -/* 8AC7B8 80240828 3C014319 */ lui $at, 0x4319 -/* 8AC7BC 8024082C 44810000 */ mtc1 $at, $f0 -/* 8AC7C0 80240830 3C01428C */ lui $at, 0x428c -/* 8AC7C4 80240834 4481A000 */ mtc1 $at, $f20 -/* 8AC7C8 80240838 46001080 */ add.s $f2, $f2, $f0 -/* 8AC7CC 8024083C 26040038 */ addiu $a0, $s0, 0x38 -/* 8AC7D0 80240840 4406A000 */ mfc1 $a2, $f20 -/* 8AC7D4 80240844 44071000 */ mfc1 $a3, $f2 -/* 8AC7D8 80240848 0C00A7E7 */ jal add_vec2D_polar -/* 8AC7DC 8024084C 26050040 */ addiu $a1, $s0, 0x40 -/* 8AC7E0 80240850 C6000040 */ lwc1 $f0, 0x40($s0) -/* 8AC7E4 80240854 46000007 */ neg.s $f0, $f0 -/* 8AC7E8 80240858 46160000 */ add.s $f0, $f0, $f22 -/* 8AC7EC 8024085C 46140000 */ add.s $f0, $f0, $f20 -/* 8AC7F0 80240860 3C013E19 */ lui $at, 0x3e19 -/* 8AC7F4 80240864 3421999A */ ori $at, $at, 0x999a -/* 8AC7F8 80240868 44811000 */ mtc1 $at, $f2 -/* 8AC7FC 8024086C 00000000 */ nop -/* 8AC800 80240870 46020002 */ mul.s $f0, $f0, $f2 -/* 8AC804 80240874 00000000 */ nop -/* 8AC808 80240878 C602003C */ lwc1 $f2, 0x3c($s0) -/* 8AC80C 8024087C 46001080 */ add.s $f2, $f2, $f0 -/* 8AC810 80240880 3C034EC4 */ lui $v1, 0x4ec4 -/* 8AC814 80240884 E602003C */ swc1 $f2, 0x3c($s0) -/* 8AC818 80240888 8E24007C */ lw $a0, 0x7c($s1) -/* 8AC81C 8024088C 8E220078 */ lw $v0, 0x78($s1) -/* 8AC820 80240890 3463EC4F */ ori $v1, $v1, 0xec4f -/* 8AC824 80240894 00822021 */ addu $a0, $a0, $v0 -/* 8AC828 80240898 00830018 */ mult $a0, $v1 -/* 8AC82C 8024089C 000417C3 */ sra $v0, $a0, 0x1f -/* 8AC830 802408A0 00004010 */ mfhi $t0 -/* 8AC834 802408A4 00081883 */ sra $v1, $t0, 2 -/* 8AC838 802408A8 00621823 */ subu $v1, $v1, $v0 -/* 8AC83C 802408AC 00031040 */ sll $v0, $v1, 1 -/* 8AC840 802408B0 00431021 */ addu $v0, $v0, $v1 -/* 8AC844 802408B4 00021080 */ sll $v0, $v0, 2 -/* 8AC848 802408B8 00431021 */ addu $v0, $v0, $v1 -/* 8AC84C 802408BC 1482000B */ bne $a0, $v0, .L802408EC -/* 8AC850 802408C0 00000000 */ nop -/* 8AC854 802408C4 3C014120 */ lui $at, 0x4120 -/* 8AC858 802408C8 44810000 */ mtc1 $at, $f0 -/* 8AC85C 802408CC 00000000 */ nop -/* 8AC860 802408D0 46001080 */ add.s $f2, $f2, $f0 -/* 8AC864 802408D4 E7A00010 */ swc1 $f0, 0x10($sp) -/* 8AC868 802408D8 8E050038 */ lw $a1, 0x38($s0) -/* 8AC86C 802408DC 8E070040 */ lw $a3, 0x40($s0) -/* 8AC870 802408E0 44061000 */ mfc1 $a2, $f2 -/* 8AC874 802408E4 0C01BFBC */ jal fx_sparkles -/* 8AC878 802408E8 24040003 */ addiu $a0, $zero, 3 -.L802408EC: -/* 8AC87C 802408EC 8E22007C */ lw $v0, 0x7c($s1) -/* 8AC880 802408F0 28420101 */ slti $v0, $v0, 0x101 -/* 8AC884 802408F4 144000A7 */ bnez $v0, .L80240B94 -/* 8AC888 802408F8 24020002 */ addiu $v0, $zero, 2 -/* 8AC88C 802408FC 08090294 */ j .L80240A50 -/* 8AC890 80240900 AE220070 */ sw $v0, 0x70($s1) -.L80240904: -/* 8AC894 80240904 3C01C248 */ lui $at, 0xc248 -/* 8AC898 80240908 4481B000 */ mtc1 $at, $f22 -/* 8AC89C 8024090C 3C013E99 */ lui $at, 0x3e99 -/* 8AC8A0 80240910 3421999A */ ori $at, $at, 0x999a -/* 8AC8A4 80240914 44810000 */ mtc1 $at, $f0 -/* 8AC8A8 80240918 AE000038 */ sw $zero, 0x38($s0) -/* 8AC8AC 8024091C E6160040 */ swc1 $f22, 0x40($s0) -/* 8AC8B0 80240920 C62200BC */ lwc1 $f2, 0xbc($s1) -/* 8AC8B4 80240924 468010A0 */ cvt.s.w $f2, $f2 -/* 8AC8B8 80240928 46001082 */ mul.s $f2, $f2, $f0 -/* 8AC8BC 8024092C 00000000 */ nop -/* 8AC8C0 80240930 3C0142C8 */ lui $at, 0x42c8 -/* 8AC8C4 80240934 44810000 */ mtc1 $at, $f0 -/* 8AC8C8 80240938 00000000 */ nop -/* 8AC8CC 8024093C 46020001 */ sub.s $f0, $f0, $f2 -/* 8AC8D0 80240940 E600003C */ swc1 $f0, 0x3c($s0) -/* 8AC8D4 80240944 8E230078 */ lw $v1, 0x78($s1) -/* 8AC8D8 80240948 C6020060 */ lwc1 $f2, 0x60($s0) -/* 8AC8DC 8024094C 00031040 */ sll $v0, $v1, 1 -/* 8AC8E0 80240950 00431021 */ addu $v0, $v0, $v1 -/* 8AC8E4 80240954 00021900 */ sll $v1, $v0, 4 -/* 8AC8E8 80240958 00431021 */ addu $v0, $v0, $v1 -/* 8AC8EC 8024095C 44820000 */ mtc1 $v0, $f0 -/* 8AC8F0 80240960 00000000 */ nop -/* 8AC8F4 80240964 46800020 */ cvt.s.w $f0, $f0 -/* 8AC8F8 80240968 46001080 */ add.s $f2, $f2, $f0 -/* 8AC8FC 8024096C 3C014319 */ lui $at, 0x4319 -/* 8AC900 80240970 44810000 */ mtc1 $at, $f0 -/* 8AC904 80240974 3C01428C */ lui $at, 0x428c -/* 8AC908 80240978 4481A000 */ mtc1 $at, $f20 -/* 8AC90C 8024097C 46001080 */ add.s $f2, $f2, $f0 -/* 8AC910 80240980 26040038 */ addiu $a0, $s0, 0x38 -/* 8AC914 80240984 4406A000 */ mfc1 $a2, $f20 -/* 8AC918 80240988 44071000 */ mfc1 $a3, $f2 -/* 8AC91C 8024098C 0C00A7E7 */ jal add_vec2D_polar -/* 8AC920 80240990 26050040 */ addiu $a1, $s0, 0x40 -/* 8AC924 80240994 C6000040 */ lwc1 $f0, 0x40($s0) -/* 8AC928 80240998 46000007 */ neg.s $f0, $f0 -/* 8AC92C 8024099C 46160000 */ add.s $f0, $f0, $f22 -/* 8AC930 802409A0 46140000 */ add.s $f0, $f0, $f20 -/* 8AC934 802409A4 3C013E19 */ lui $at, 0x3e19 -/* 8AC938 802409A8 3421999A */ ori $at, $at, 0x999a -/* 8AC93C 802409AC 44811000 */ mtc1 $at, $f2 -/* 8AC940 802409B0 00000000 */ nop -/* 8AC944 802409B4 46020002 */ mul.s $f0, $f0, $f2 -/* 8AC948 802409B8 00000000 */ nop -/* 8AC94C 802409BC C602003C */ lwc1 $f2, 0x3c($s0) -/* 8AC950 802409C0 46001080 */ add.s $f2, $f2, $f0 -/* 8AC954 802409C4 3C034EC4 */ lui $v1, 0x4ec4 -/* 8AC958 802409C8 E602003C */ swc1 $f2, 0x3c($s0) -/* 8AC95C 802409CC 8E24007C */ lw $a0, 0x7c($s1) -/* 8AC960 802409D0 8E220078 */ lw $v0, 0x78($s1) -/* 8AC964 802409D4 3463EC4F */ ori $v1, $v1, 0xec4f -/* 8AC968 802409D8 00822021 */ addu $a0, $a0, $v0 -/* 8AC96C 802409DC 00830018 */ mult $a0, $v1 -/* 8AC970 802409E0 000417C3 */ sra $v0, $a0, 0x1f -/* 8AC974 802409E4 00004010 */ mfhi $t0 -/* 8AC978 802409E8 00081883 */ sra $v1, $t0, 2 -/* 8AC97C 802409EC 00621823 */ subu $v1, $v1, $v0 -/* 8AC980 802409F0 00031040 */ sll $v0, $v1, 1 -/* 8AC984 802409F4 00431021 */ addu $v0, $v0, $v1 -/* 8AC988 802409F8 00021080 */ sll $v0, $v0, 2 -/* 8AC98C 802409FC 00431021 */ addu $v0, $v0, $v1 -/* 8AC990 80240A00 1482000B */ bne $a0, $v0, .L80240A30 -/* 8AC994 80240A04 00000000 */ nop -/* 8AC998 80240A08 3C014120 */ lui $at, 0x4120 -/* 8AC99C 80240A0C 44810000 */ mtc1 $at, $f0 -/* 8AC9A0 80240A10 00000000 */ nop -/* 8AC9A4 80240A14 46001080 */ add.s $f2, $f2, $f0 -/* 8AC9A8 80240A18 E7A00010 */ swc1 $f0, 0x10($sp) -/* 8AC9AC 80240A1C 8E050038 */ lw $a1, 0x38($s0) -/* 8AC9B0 80240A20 8E070040 */ lw $a3, 0x40($s0) -/* 8AC9B4 80240A24 44061000 */ mfc1 $a2, $f2 -/* 8AC9B8 80240A28 0C01BFBC */ jal fx_sparkles -/* 8AC9BC 80240A2C 24040003 */ addiu $a0, $zero, 3 -.L80240A30: -/* 8AC9C0 80240A30 8E2200BC */ lw $v0, 0xbc($s1) -/* 8AC9C4 80240A34 0040182D */ daddu $v1, $v0, $zero -/* 8AC9C8 80240A38 24420001 */ addiu $v0, $v0, 1 -/* 8AC9CC 80240A3C 286300B5 */ slti $v1, $v1, 0xb5 -/* 8AC9D0 80240A40 14600054 */ bnez $v1, .L80240B94 -/* 8AC9D4 80240A44 AE2200BC */ sw $v0, 0xbc($s1) -/* 8AC9D8 80240A48 24020003 */ addiu $v0, $zero, 3 -/* 8AC9DC 80240A4C AE220070 */ sw $v0, 0x70($s1) -.L80240A50: -/* 8AC9E0 80240A50 080902E5 */ j .L80240B94 -/* 8AC9E4 80240A54 AE2000BC */ sw $zero, 0xbc($s1) -.L80240A58: -/* 8AC9E8 80240A58 C6000064 */ lwc1 $f0, 0x64($s0) -/* 8AC9EC 80240A5C 3C013CF5 */ lui $at, 0x3cf5 -/* 8AC9F0 80240A60 3421C28F */ ori $at, $at, 0xc28f -/* 8AC9F4 80240A64 44811000 */ mtc1 $at, $f2 -/* 8AC9F8 80240A68 3C01C248 */ lui $at, 0xc248 -/* 8AC9FC 80240A6C 4481B000 */ mtc1 $at, $f22 -/* 8ACA00 80240A70 3C014237 */ lui $at, 0x4237 -/* 8ACA04 80240A74 3421FFFF */ ori $at, $at, 0xffff -/* 8ACA08 80240A78 44812000 */ mtc1 $at, $f4 -/* 8ACA0C 80240A7C AE000038 */ sw $zero, 0x38($s0) -/* 8ACA10 80240A80 46020001 */ sub.s $f0, $f0, $f2 -/* 8ACA14 80240A84 E6160040 */ swc1 $f22, 0x40($s0) -/* 8ACA18 80240A88 E604003C */ swc1 $f4, 0x3c($s0) -/* 8ACA1C 80240A8C E6000064 */ swc1 $f0, 0x64($s0) -/* 8ACA20 80240A90 8E230078 */ lw $v1, 0x78($s1) -/* 8ACA24 80240A94 C6020060 */ lwc1 $f2, 0x60($s0) -/* 8ACA28 80240A98 00031040 */ sll $v0, $v1, 1 -/* 8ACA2C 80240A9C 00431021 */ addu $v0, $v0, $v1 -/* 8ACA30 80240AA0 00021900 */ sll $v1, $v0, 4 -/* 8ACA34 80240AA4 00431021 */ addu $v0, $v0, $v1 -/* 8ACA38 80240AA8 44820000 */ mtc1 $v0, $f0 -/* 8ACA3C 80240AAC 00000000 */ nop -/* 8ACA40 80240AB0 46800020 */ cvt.s.w $f0, $f0 -/* 8ACA44 80240AB4 46001080 */ add.s $f2, $f2, $f0 -/* 8ACA48 80240AB8 3C014319 */ lui $at, 0x4319 -/* 8ACA4C 80240ABC 44810000 */ mtc1 $at, $f0 -/* 8ACA50 80240AC0 3C01428C */ lui $at, 0x428c -/* 8ACA54 80240AC4 4481A000 */ mtc1 $at, $f20 -/* 8ACA58 80240AC8 46001080 */ add.s $f2, $f2, $f0 -/* 8ACA5C 80240ACC 4406A000 */ mfc1 $a2, $f20 -/* 8ACA60 80240AD0 44071000 */ mfc1 $a3, $f2 -/* 8ACA64 80240AD4 0C00A7E7 */ jal add_vec2D_polar -/* 8ACA68 80240AD8 26050040 */ addiu $a1, $s0, 0x40 -/* 8ACA6C 80240ADC C6000040 */ lwc1 $f0, 0x40($s0) -/* 8ACA70 80240AE0 46000007 */ neg.s $f0, $f0 -/* 8ACA74 80240AE4 46160000 */ add.s $f0, $f0, $f22 -/* 8ACA78 80240AE8 46140000 */ add.s $f0, $f0, $f20 -/* 8ACA7C 80240AEC 3C013E19 */ lui $at, 0x3e19 -/* 8ACA80 80240AF0 3421999A */ ori $at, $at, 0x999a -/* 8ACA84 80240AF4 44811000 */ mtc1 $at, $f2 -/* 8ACA88 80240AF8 00000000 */ nop -/* 8ACA8C 80240AFC 46020002 */ mul.s $f0, $f0, $f2 -/* 8ACA90 80240B00 00000000 */ nop -/* 8ACA94 80240B04 C602003C */ lwc1 $f2, 0x3c($s0) -/* 8ACA98 80240B08 46001080 */ add.s $f2, $f2, $f0 -/* 8ACA9C 80240B0C 3C034EC4 */ lui $v1, 0x4ec4 -/* 8ACAA0 80240B10 E602003C */ swc1 $f2, 0x3c($s0) -/* 8ACAA4 80240B14 8E24007C */ lw $a0, 0x7c($s1) -/* 8ACAA8 80240B18 8E220078 */ lw $v0, 0x78($s1) -/* 8ACAAC 80240B1C 3463EC4F */ ori $v1, $v1, 0xec4f -/* 8ACAB0 80240B20 00822021 */ addu $a0, $a0, $v0 -/* 8ACAB4 80240B24 00830018 */ mult $a0, $v1 -/* 8ACAB8 80240B28 000417C3 */ sra $v0, $a0, 0x1f -/* 8ACABC 80240B2C 00004010 */ mfhi $t0 -/* 8ACAC0 80240B30 00081883 */ sra $v1, $t0, 2 -/* 8ACAC4 80240B34 00621823 */ subu $v1, $v1, $v0 -/* 8ACAC8 80240B38 00031040 */ sll $v0, $v1, 1 -/* 8ACACC 80240B3C 00431021 */ addu $v0, $v0, $v1 -/* 8ACAD0 80240B40 00021080 */ sll $v0, $v0, 2 -/* 8ACAD4 80240B44 00431021 */ addu $v0, $v0, $v1 -/* 8ACAD8 80240B48 1482000B */ bne $a0, $v0, .L80240B78 -/* 8ACADC 80240B4C 00000000 */ nop -/* 8ACAE0 80240B50 3C014120 */ lui $at, 0x4120 -/* 8ACAE4 80240B54 44810000 */ mtc1 $at, $f0 -/* 8ACAE8 80240B58 00000000 */ nop -/* 8ACAEC 80240B5C 46001080 */ add.s $f2, $f2, $f0 -/* 8ACAF0 80240B60 E7A00010 */ swc1 $f0, 0x10($sp) -/* 8ACAF4 80240B64 8E050038 */ lw $a1, 0x38($s0) -/* 8ACAF8 80240B68 8E070040 */ lw $a3, 0x40($s0) -/* 8ACAFC 80240B6C 44061000 */ mfc1 $a2, $f2 -/* 8ACB00 80240B70 0C01BFBC */ jal fx_sparkles -/* 8ACB04 80240B74 24040003 */ addiu $a0, $zero, 3 -.L80240B78: -/* 8ACB08 80240B78 C6020064 */ lwc1 $f2, 0x64($s0) -/* 8ACB0C 80240B7C 44800000 */ mtc1 $zero, $f0 -/* 8ACB10 80240B80 00000000 */ nop -/* 8ACB14 80240B84 4600103C */ c.lt.s $f2, $f0 -/* 8ACB18 80240B88 00000000 */ nop -/* 8ACB1C 80240B8C 45030001 */ bc1tl .L80240B94 -/* 8ACB20 80240B90 24130002 */ addiu $s3, $zero, 2 -.L80240B94: -/* 8ACB24 80240B94 8E22007C */ lw $v0, 0x7c($s1) -/* 8ACB28 80240B98 24420001 */ addiu $v0, $v0, 1 -/* 8ACB2C 80240B9C AE22007C */ sw $v0, 0x7c($s1) -/* 8ACB30 80240BA0 C6000060 */ lwc1 $f0, 0x60($s0) -/* 8ACB34 80240BA4 C6020064 */ lwc1 $f2, 0x64($s0) -/* 8ACB38 80240BA8 46020000 */ add.s $f0, $f0, $f2 -/* 8ACB3C 80240BAC 0260102D */ daddu $v0, $s3, $zero -/* 8ACB40 80240BB0 E6000060 */ swc1 $f0, 0x60($s0) -/* 8ACB44 80240BB4 8FBF0028 */ lw $ra, 0x28($sp) -/* 8ACB48 80240BB8 8FB30024 */ lw $s3, 0x24($sp) -/* 8ACB4C 80240BBC 8FB20020 */ lw $s2, 0x20($sp) -/* 8ACB50 80240BC0 8FB1001C */ lw $s1, 0x1c($sp) -/* 8ACB54 80240BC4 8FB00018 */ lw $s0, 0x18($sp) -/* 8ACB58 80240BC8 D7B60038 */ ldc1 $f22, 0x38($sp) -/* 8ACB5C 80240BCC D7B40030 */ ldc1 $f20, 0x30($sp) -/* 8ACB60 80240BD0 03E00008 */ jr $ra -/* 8ACB64 80240BD4 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240CB0_8ACC40.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240CB0_8ACC40.s deleted file mode 100644 index 8ac5dfb623..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_00/8ABF90/func_80240CB0_8ACC40.s +++ /dev/null @@ -1,55 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240CB0_8ACC40 -/* 8ACC40 80240CB0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 8ACC44 80240CB4 AFB10014 */ sw $s1, 0x14($sp) -/* 8ACC48 80240CB8 0080882D */ daddu $s1, $a0, $zero -/* 8ACC4C 80240CBC AFBF0018 */ sw $ra, 0x18($sp) -/* 8ACC50 80240CC0 10A0000C */ beqz $a1, .L80240CF4 -/* 8ACC54 80240CC4 AFB00010 */ sw $s0, 0x10($sp) -/* 8ACC58 80240CC8 8E24014C */ lw $a0, 0x14c($s1) -/* 8ACC5C 80240CCC 0C00EAD2 */ jal get_npc_safe -/* 8ACC60 80240CD0 AE200074 */ sw $zero, 0x74($s1) -/* 8ACC64 80240CD4 8E23014C */ lw $v1, 0x14c($s1) -/* 8ACC68 80240CD8 AE220078 */ sw $v0, 0x78($s1) -/* 8ACC6C 80240CDC 2463FFFF */ addiu $v1, $v1, -1 -/* 8ACC70 80240CE0 00031840 */ sll $v1, $v1, 1 -/* 8ACC74 80240CE4 3C028024 */ lui $v0, %hi(D_80242D60_8AECF0) -/* 8ACC78 80240CE8 00431021 */ addu $v0, $v0, $v1 -/* 8ACC7C 80240CEC 84422D60 */ lh $v0, %lo(D_80242D60_8AECF0)($v0) -/* 8ACC80 80240CF0 AE22007C */ sw $v0, 0x7c($s1) -.L80240CF4: -/* 8ACC84 80240CF4 8E22007C */ lw $v0, 0x7c($s1) -/* 8ACC88 80240CF8 14400015 */ bnez $v0, .L80240D50 -/* 8ACC8C 80240CFC 2442FFFF */ addiu $v0, $v0, -1 -/* 8ACC90 80240D00 C62C0074 */ lwc1 $f12, 0x74($s1) -/* 8ACC94 80240D04 0C00A8BB */ jal sin_deg -/* 8ACC98 80240D08 8E300078 */ lw $s0, 0x78($s1) -/* 8ACC9C 80240D0C 3C013FC0 */ lui $at, 0x3fc0 -/* 8ACCA0 80240D10 44811000 */ mtc1 $at, $f2 -/* 8ACCA4 80240D14 00000000 */ nop -/* 8ACCA8 80240D18 46020002 */ mul.s $f0, $f0, $f2 -/* 8ACCAC 80240D1C 00000000 */ nop -/* 8ACCB0 80240D20 3C014190 */ lui $at, 0x4190 -/* 8ACCB4 80240D24 44816000 */ mtc1 $at, $f12 -/* 8ACCB8 80240D28 4600010D */ trunc.w.s $f4, $f0 -/* 8ACCBC 80240D2C 44022000 */ mfc1 $v0, $f4 -/* 8ACCC0 80240D30 00000000 */ nop -/* 8ACCC4 80240D34 A20200AB */ sb $v0, 0xab($s0) -/* 8ACCC8 80240D38 C6200074 */ lwc1 $f0, 0x74($s1) -/* 8ACCCC 80240D3C 0C00A6C9 */ jal clamp_angle -/* 8ACCD0 80240D40 460C0300 */ add.s $f12, $f0, $f12 -/* 8ACCD4 80240D44 0000102D */ daddu $v0, $zero, $zero -/* 8ACCD8 80240D48 08090356 */ j .L80240D58 -/* 8ACCDC 80240D4C E6200074 */ swc1 $f0, 0x74($s1) -.L80240D50: -/* 8ACCE0 80240D50 AE22007C */ sw $v0, 0x7c($s1) -/* 8ACCE4 80240D54 0000102D */ daddu $v0, $zero, $zero -.L80240D58: -/* 8ACCE8 80240D58 8FBF0018 */ lw $ra, 0x18($sp) -/* 8ACCEC 80240D5C 8FB10014 */ lw $s1, 0x14($sp) -/* 8ACCF0 80240D60 8FB00010 */ lw $s0, 0x10($sp) -/* 8ACCF4 80240D64 03E00008 */ jr $ra -/* 8ACCF8 80240D68 27BD0020 */ addiu $sp, $sp, 0x20 -/* 8ACCFC 80240D6C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE20/func_80240000_8EBE20.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE20/func_80240000_8EBE20.s deleted file mode 100644 index 7e489efa0f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE20/func_80240000_8EBE20.s +++ /dev/null @@ -1,16 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240000_8EBE20 -/* 8EBE20 80240000 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EBE24 80240004 0000202D */ daddu $a0, $zero, $zero -/* 8EBE28 80240008 AFBF0010 */ sw $ra, 0x10($sp) -/* 8EBE2C 8024000C 0C01553A */ jal func_800554E8 -/* 8EBE30 80240010 240501F4 */ addiu $a1, $zero, 0x1f4 -/* 8EBE34 80240014 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EBE38 80240018 24020002 */ addiu $v0, $zero, 2 -/* 8EBE3C 8024001C 03E00008 */ jr $ra -/* 8EBE40 80240020 27BD0018 */ addiu $sp, $sp, 0x18 -/* 8EBE44 80240024 00000000 */ nop -/* 8EBE48 80240028 00000000 */ nop -/* 8EBE4C 8024002C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240330_8EC150.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240330_8EC150.s deleted file mode 100644 index c822864004..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240330_8EC150.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240330_8EC150 -/* 8EC150 80240330 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EC154 80240334 0000202D */ daddu $a0, $zero, $zero -/* 8EC158 80240338 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8EC15C 8024033C AFBF0010 */ sw $ra, 0x10($sp) -/* 8EC160 80240340 0C01559B */ jal func_8005566C -/* 8EC164 80240344 2406003F */ addiu $a2, $zero, 0x3f -/* 8EC168 80240348 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EC16C 8024034C 24020002 */ addiu $v0, $zero, 2 -/* 8EC170 80240350 03E00008 */ jr $ra -/* 8EC174 80240354 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240358_8EC178.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240358_8EC178.s deleted file mode 100644 index 40da48579b..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240358_8EC178.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240358_8EC178 -/* 8EC178 80240358 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EC17C 8024035C 0000202D */ daddu $a0, $zero, $zero -/* 8EC180 80240360 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8EC184 80240364 AFBF0010 */ sw $ra, 0x10($sp) -/* 8EC188 80240368 0C01559B */ jal func_8005566C -/* 8EC18C 8024036C 2406007F */ addiu $a2, $zero, 0x7f -/* 8EC190 80240370 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EC194 80240374 24020002 */ addiu $v0, $zero, 2 -/* 8EC198 80240378 03E00008 */ jr $ra -/* 8EC19C 8024037C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240DA4_8ECBC4.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240DA4_8ECBC4.s deleted file mode 100644 index 6c3b4213cb..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EBE50/func_80240DA4_8ECBC4.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240DA4_8ECBC4 -/* 8ECBC4 80240DA4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8ECBC8 80240DA8 0000202D */ daddu $a0, $zero, $zero -/* 8ECBCC 80240DAC 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8ECBD0 80240DB0 AFBF0010 */ sw $ra, 0x10($sp) -/* 8ECBD4 80240DB4 0C01559B */ jal func_8005566C -/* 8ECBD8 80240DB8 24060001 */ addiu $a2, $zero, 1 -/* 8ECBDC 80240DBC 8FBF0010 */ lw $ra, 0x10($sp) -/* 8ECBE0 80240DC0 24020002 */ addiu $v0, $zero, 2 -/* 8ECBE4 80240DC4 03E00008 */ jr $ra -/* 8ECBE8 80240DC8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 8ECBEC 80240DCC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ECBF0/func_80240DD0_8ECBF0.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ECBF0/func_80240DD0_8ECBF0.s deleted file mode 100644 index 45ca13651b..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ECBF0/func_80240DD0_8ECBF0.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240DD0_8ECBF0 -/* 8ECBF0 80240DD0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8ECBF4 80240DD4 0000202D */ daddu $a0, $zero, $zero -/* 8ECBF8 80240DD8 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8ECBFC 80240DDC AFBF0010 */ sw $ra, 0x10($sp) -/* 8ECC00 80240DE0 0C01559B */ jal func_8005566C -/* 8ECC04 80240DE4 2406003F */ addiu $a2, $zero, 0x3f -/* 8ECC08 80240DE8 8FBF0010 */ lw $ra, 0x10($sp) -/* 8ECC0C 80240DEC 24020002 */ addiu $v0, $zero, 2 -/* 8ECC10 80240DF0 03E00008 */ jr $ra -/* 8ECC14 80240DF4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_8024159C_8ED3BC.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_8024159C_8ED3BC.s deleted file mode 100644 index c8086f6bde..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_8024159C_8ED3BC.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024159C_8ED3BC -/* 8ED3BC 8024159C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8ED3C0 802415A0 0000202D */ daddu $a0, $zero, $zero -/* 8ED3C4 802415A4 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8ED3C8 802415A8 AFBF0010 */ sw $ra, 0x10($sp) -/* 8ED3CC 802415AC 0C01559B */ jal func_8005566C -/* 8ED3D0 802415B0 24060001 */ addiu $a2, $zero, 1 -/* 8ED3D4 802415B4 8FBF0010 */ lw $ra, 0x10($sp) -/* 8ED3D8 802415B8 24020002 */ addiu $v0, $zero, 2 -/* 8ED3DC 802415BC 03E00008 */ jr $ra -/* 8ED3E0 802415C0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_802415C4_8ED3E4.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_802415C4_8ED3E4.s deleted file mode 100644 index 4b51da71b7..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED0C0/func_802415C4_8ED3E4.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802415C4_8ED3E4 -/* 8ED3E4 802415C4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8ED3E8 802415C8 0000202D */ daddu $a0, $zero, $zero -/* 8ED3EC 802415CC 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8ED3F0 802415D0 AFBF0010 */ sw $ra, 0x10($sp) -/* 8ED3F4 802415D4 0C01559B */ jal func_8005566C -/* 8ED3F8 802415D8 2406003F */ addiu $a2, $zero, 0x3f -/* 8ED3FC 802415DC 8FBF0010 */ lw $ra, 0x10($sp) -/* 8ED400 802415E0 24020002 */ addiu $v0, $zero, 2 -/* 8ED404 802415E4 03E00008 */ jr $ra -/* 8ED408 802415E8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED5A0/func_80241D1C_8EDB3C.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED5A0/func_80241D1C_8EDB3C.s deleted file mode 100644 index 87a6b22e3e..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8ED5A0/func_80241D1C_8EDB3C.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241D1C_8EDB3C -/* 8EDB3C 80241D1C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EDB40 80241D20 0000202D */ daddu $a0, $zero, $zero -/* 8EDB44 80241D24 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8EDB48 80241D28 AFBF0010 */ sw $ra, 0x10($sp) -/* 8EDB4C 80241D2C 0C01559B */ jal func_8005566C -/* 8EDB50 80241D30 2406003F */ addiu $a2, $zero, 0x3f -/* 8EDB54 80241D34 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EDB58 80241D38 24020002 */ addiu $v0, $zero, 2 -/* 8EDB5C 80241D3C 03E00008 */ jr $ra -/* 8EDB60 80241D40 27BD0018 */ addiu $sp, $sp, 0x18 -/* 8EDB64 80241D44 00000000 */ nop -/* 8EDB68 80241D48 00000000 */ nop -/* 8EDB6C 80241D4C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_80242144_8EDF64.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_80242144_8EDF64.s deleted file mode 100644 index 65f60e5d17..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_80242144_8EDF64.s +++ /dev/null @@ -1,14 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242144_8EDF64 -/* 8EDF64 80242144 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EDF68 80242148 0000202D */ daddu $a0, $zero, $zero -/* 8EDF6C 8024214C 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8EDF70 80242150 AFBF0010 */ sw $ra, 0x10($sp) -/* 8EDF74 80242154 0C01559B */ jal func_8005566C -/* 8EDF78 80242158 2406003F */ addiu $a2, $zero, 0x3f -/* 8EDF7C 8024215C 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EDF80 80242160 24020002 */ addiu $v0, $zero, 2 -/* 8EDF84 80242164 03E00008 */ jr $ra -/* 8EDF88 80242168 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_8024216C_8EDF8C.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_8024216C_8EDF8C.s deleted file mode 100644 index 1023b7d74d..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_20/8EDB70/func_8024216C_8EDF8C.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024216C_8EDF8C -/* 8EDF8C 8024216C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 8EDF90 80242170 0000202D */ daddu $a0, $zero, $zero -/* 8EDF94 80242174 240503E8 */ addiu $a1, $zero, 0x3e8 -/* 8EDF98 80242178 AFBF0010 */ sw $ra, 0x10($sp) -/* 8EDF9C 8024217C 0C01559B */ jal func_8005566C -/* 8EDFA0 80242180 2406007F */ addiu $a2, $zero, 0x7f -/* 8EDFA4 80242184 8FBF0010 */ lw $ra, 0x10($sp) -/* 8EDFA8 80242188 24020002 */ addiu $v0, $zero, 2 -/* 8EDFAC 8024218C 03E00008 */ jr $ra -/* 8EDFB0 80242190 27BD0018 */ addiu $sp, $sp, 0x18 -/* 8EDFB4 80242194 00000000 */ nop -/* 8EDFB8 80242198 00000000 */ nop -/* 8EDFBC 8024219C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_80240310_A5A340.s b/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_80240310_A5A340.s deleted file mode 100644 index 023378a676..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_80240310_A5A340.s +++ /dev/null @@ -1,19 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240310_A5A340 -/* A5A340 80240310 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* A5A344 80240314 AFBF0010 */ sw $ra, 0x10($sp) -/* A5A348 80240318 8C82000C */ lw $v0, 0xc($a0) -/* A5A34C 8024031C 0C0B1EAF */ jal evt_get_variable -/* A5A350 80240320 8C450000 */ lw $a1, ($v0) -/* A5A354 80240324 44820000 */ mtc1 $v0, $f0 -/* A5A358 80240328 00000000 */ nop -/* A5A35C 8024032C 46800020 */ cvt.s.w $f0, $f0 -/* A5A360 80240330 44050000 */ mfc1 $a1, $f0 -/* A5A364 80240334 0C04DF62 */ jal set_screen_overlay_params_front -/* A5A368 80240338 0000202D */ daddu $a0, $zero, $zero -/* A5A36C 8024033C 8FBF0010 */ lw $ra, 0x10($sp) -/* A5A370 80240340 24020002 */ addiu $v0, $zero, 2 -/* A5A374 80240344 03E00008 */ jr $ra -/* A5A378 80240348 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_8024034C_A5A37C.s b/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_8024034C_A5A37C.s deleted file mode 100644 index 8ba7b03034..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kpa/kpa_16/A5A340/func_8024034C_A5A37C.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024034C_A5A37C -/* A5A37C 8024034C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* A5A380 80240350 0000202D */ daddu $a0, $zero, $zero -/* A5A384 80240354 AFBF0010 */ sw $ra, 0x10($sp) -/* A5A388 80240358 0C015586 */ jal func_80055618 -/* A5A38C 8024035C 24050001 */ addiu $a1, $zero, 1 -/* A5A390 80240360 8FBF0010 */ lw $ra, 0x10($sp) -/* A5A394 80240364 24020002 */ addiu $v0, $zero, 2 -/* A5A398 80240368 03E00008 */ jr $ra -/* A5A39C 8024036C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kzn/kzn_06/C6CD10/func_80240A44_C6D364.s b/ver/us/asm/nonmatchings/world/area_kzn/kzn_06/C6CD10/func_80240A44_C6D364.s deleted file mode 100644 index 377f1c0e39..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kzn/kzn_06/C6CD10/func_80240A44_C6D364.s +++ /dev/null @@ -1,15 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240A44_C6D364 -/* C6D364 80240A44 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* C6D368 80240A48 0000202D */ daddu $a0, $zero, $zero -/* C6D36C 80240A4C AFBF0010 */ sw $ra, 0x10($sp) -/* C6D370 80240A50 0C015586 */ jal func_80055618 -/* C6D374 80240A54 24050001 */ addiu $a1, $zero, 1 -/* C6D378 80240A58 8FBF0010 */ lw $ra, 0x10($sp) -/* C6D37C 80240A5C 24020002 */ addiu $v0, $zero, 2 -/* C6D380 80240A60 03E00008 */ jr $ra -/* C6D384 80240A64 27BD0018 */ addiu $sp, $sp, 0x18 -/* C6D388 80240A68 00000000 */ nop -/* C6D38C 80240A6C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_kzn/kzn_20/C96240/func_80240A68_C96998.s b/ver/us/asm/nonmatchings/world/area_kzn/kzn_20/C96240/func_80240A68_C96998.s deleted file mode 100644 index f125c1c398..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kzn/kzn_20/C96240/func_80240A68_C96998.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240A68_C96998 -/* C96998 80240A68 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* C9699C 80240A6C 0000202D */ daddu $a0, $zero, $zero -/* C969A0 80240A70 AFBF0010 */ sw $ra, 0x10($sp) -/* C969A4 80240A74 0C015586 */ jal func_80055618 -/* C969A8 80240A78 24050001 */ addiu $a1, $zero, 1 -/* C969AC 80240A7C 8FBF0010 */ lw $ra, 0x10($sp) -/* C969B0 80240A80 24020002 */ addiu $v0, $zero, 2 -/* C969B4 80240A84 03E00008 */ jr $ra -/* C969B8 80240A88 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_kzn/kzn_22/C9A540/func_8024036C_C9A56C.s b/ver/us/asm/nonmatchings/world/area_kzn/kzn_22/C9A540/func_8024036C_C9A56C.s deleted file mode 100644 index 4df4300b5f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kzn/kzn_22/C9A540/func_8024036C_C9A56C.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024036C_C9A56C -/* C9A56C 8024036C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* C9A570 80240370 0000202D */ daddu $a0, $zero, $zero -/* C9A574 80240374 AFBF0010 */ sw $ra, 0x10($sp) -/* C9A578 80240378 0C015586 */ jal func_80055618 -/* C9A57C 8024037C 24050001 */ addiu $a1, $zero, 1 -/* C9A580 80240380 8FBF0010 */ lw $ra, 0x10($sp) -/* C9A584 80240384 24020002 */ addiu $v0, $zero, 2 -/* C9A588 80240388 03E00008 */ jr $ra -/* C9A58C 8024038C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242804_9C7BE4.s b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242804_9C7BE4.s index fd19a528ec..324b54c6d9 100644 --- a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242804_9C7BE4.s +++ b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242804_9C7BE4.s @@ -12,11 +12,11 @@ glabel func_80242804_9C7BE4 /* 9C7C00 80242820 24630810 */ addiu $v1, $v1, %lo(D_80250810_9D5BF0) /* 9C7C04 80242824 00028040 */ sll $s0, $v0, 1 /* 9C7C08 80242828 02038021 */ addu $s0, $s0, $v1 -/* 9C7C0C 8024282C 0C015612 */ jal func_80055848 +/* 9C7C0C 8024282C 0C015612 */ jal snd_ambient_80055848 /* 9C7C10 80242830 86040000 */ lh $a0, ($s0) /* 9C7C14 80242834 240505DC */ addiu $a1, $zero, 0x5dc /* 9C7C18 80242838 86040000 */ lh $a0, ($s0) -/* 9C7C1C 8024283C 0C01559B */ jal func_8005566C +/* 9C7C1C 8024283C 0C01559B */ jal au_ambience_set_volume /* 9C7C20 80242840 2406007F */ addiu $a2, $zero, 0x7f /* 9C7C24 80242844 8FBF0014 */ lw $ra, 0x14($sp) /* 9C7C28 80242848 8FB00010 */ lw $s0, 0x10($sp) diff --git a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242858_9C7C38.s b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242858_9C7C38.s index b61f324577..d05ea55c13 100644 --- a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242858_9C7C38.s +++ b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_80242858_9C7C38.s @@ -12,7 +12,7 @@ glabel func_80242858_9C7C38 /* 9C7C54 80242874 3C048025 */ lui $a0, %hi(D_80250810_9D5BF0) /* 9C7C58 80242878 00822021 */ addu $a0, $a0, $v0 /* 9C7C5C 8024287C 84840810 */ lh $a0, %lo(D_80250810_9D5BF0)($a0) -/* 9C7C60 80242880 0C01559B */ jal func_8005566C +/* 9C7C60 80242880 0C01559B */ jal au_ambience_set_volume /* 9C7C64 80242884 24060001 */ addiu $a2, $zero, 1 /* 9C7C68 80242888 8FBF0010 */ lw $ra, 0x10($sp) /* 9C7C6C 8024288C 24020002 */ addiu $v0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_802428D8_9C7CB8.s b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_802428D8_9C7CB8.s index 4b53ddcee3..cf9f8770ce 100644 --- a/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_802428D8_9C7CB8.s +++ b/ver/us/asm/nonmatchings/world/area_nok/nok_01/9C53E0/func_802428D8_9C7CB8.s @@ -10,7 +10,7 @@ glabel func_802428D8_9C7CB8 /* 9C7CCC 802428EC 00021040 */ sll $v0, $v0, 1 /* 9C7CD0 802428F0 3C048025 */ lui $a0, %hi(D_80250810_9D5BF0) /* 9C7CD4 802428F4 00822021 */ addu $a0, $a0, $v0 -/* 9C7CD8 802428F8 0C015612 */ jal func_80055848 +/* 9C7CD8 802428F8 0C015612 */ jal snd_ambient_80055848 /* 9C7CDC 802428FC 84840810 */ lh $a0, %lo(D_80250810_9D5BF0)($a0) /* 9C7CE0 80242900 8FBF0010 */ lw $ra, 0x10($sp) /* 9C7CE4 80242904 24020002 */ addiu $v0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240038_BCD098.s b/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240038_BCD098.s deleted file mode 100644 index f7d98daa85..0000000000 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240038_BCD098.s +++ /dev/null @@ -1,10 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240038_BCD098 -/* BCD098 80240038 3C028016 */ lui $v0, %hi(gCollisionStatus+0x2) -/* BCD09C 8024003C 8442A552 */ lh $v0, %lo(gCollisionStatus+0x2)($v0) -/* BCD0A0 80240040 38420014 */ xori $v0, $v0, 0x14 -/* BCD0A4 80240044 2C420001 */ sltiu $v0, $v0, 1 -/* BCD0A8 80240048 03E00008 */ jr $ra -/* BCD0AC 8024004C 00021040 */ sll $v0, $v0, 1 diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240050_BCD0B0.s b/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240050_BCD0B0.s deleted file mode 100644 index e2f17cc3e8..0000000000 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD060/func_80240050_BCD0B0.s +++ /dev/null @@ -1,487 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240050_BCD0B0 -/* BCD0B0 80240050 27BDFF70 */ addiu $sp, $sp, -0x90 -/* BCD0B4 80240054 AFB20070 */ sw $s2, 0x70($sp) -/* BCD0B8 80240058 AFB30074 */ sw $s3, 0x74($sp) -/* BCD0BC 8024005C 3C138011 */ lui $s3, %hi(gPlayerStatus) -/* BCD0C0 80240060 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus) -/* BCD0C4 80240064 AFB00068 */ sw $s0, 0x68($sp) -/* BCD0C8 80240068 3C108016 */ lui $s0, %hi(gCollisionStatus) -/* BCD0CC 8024006C 2610A550 */ addiu $s0, $s0, %lo(gCollisionStatus) -/* BCD0D0 80240070 AFBF0078 */ sw $ra, 0x78($sp) -/* BCD0D4 80240074 AFB1006C */ sw $s1, 0x6c($sp) -/* BCD0D8 80240078 F7B60088 */ sdc1 $f22, 0x88($sp) -/* BCD0DC 8024007C F7B40080 */ sdc1 $f20, 0x80($sp) -/* BCD0E0 80240080 10A00014 */ beqz $a1, .L802400D4 -/* BCD0E4 80240084 0080902D */ daddu $s2, $a0, $zero -/* BCD0E8 80240088 0C00AB39 */ jal heap_malloc -/* BCD0EC 8024008C 24040020 */ addiu $a0, $zero, 0x20 -/* BCD0F0 80240090 3C013DCC */ lui $at, 0x3dcc -/* BCD0F4 80240094 3421CCCD */ ori $at, $at, 0xcccd -/* BCD0F8 80240098 44810000 */ mtc1 $at, $f0 -/* BCD0FC 8024009C 3C014040 */ lui $at, 0x4040 -/* BCD100 802400A0 44811000 */ mtc1 $at, $f2 -/* BCD104 802400A4 0040882D */ daddu $s1, $v0, $zero -/* BCD108 802400A8 AE510074 */ sw $s1, 0x74($s2) -/* BCD10C 802400AC AE200000 */ sw $zero, ($s1) -/* BCD110 802400B0 AE20000C */ sw $zero, 0xc($s1) -/* BCD114 802400B4 AE200008 */ sw $zero, 8($s1) -/* BCD118 802400B8 AE200010 */ sw $zero, 0x10($s1) -/* BCD11C 802400BC AE200014 */ sw $zero, 0x14($s1) -/* BCD120 802400C0 E6200004 */ swc1 $f0, 4($s1) -/* BCD124 802400C4 E6220018 */ swc1 $f2, 0x18($s1) -/* BCD128 802400C8 AE400070 */ sw $zero, 0x70($s2) -/* BCD12C 802400CC AE400078 */ sw $zero, 0x78($s2) -/* BCD130 802400D0 AE40007C */ sw $zero, 0x7c($s2) -.L802400D4: -/* BCD134 802400D4 24040001 */ addiu $a0, $zero, 1 -/* BCD138 802400D8 8E430070 */ lw $v1, 0x70($s2) -/* BCD13C 802400DC 8E510074 */ lw $s1, 0x74($s2) -/* BCD140 802400E0 10640022 */ beq $v1, $a0, .L8024016C -/* BCD144 802400E4 28620002 */ slti $v0, $v1, 2 -/* BCD148 802400E8 50400005 */ beql $v0, $zero, .L80240100 -/* BCD14C 802400EC 24020002 */ addiu $v0, $zero, 2 -/* BCD150 802400F0 10600007 */ beqz $v1, .L80240110 -/* BCD154 802400F4 2402000A */ addiu $v0, $zero, 0xa -/* BCD158 802400F8 0809015C */ j .L80240570 -/* BCD15C 802400FC 00000000 */ nop -.L80240100: -/* BCD160 80240100 106200BF */ beq $v1, $v0, .L80240400 -/* BCD164 80240104 2402000A */ addiu $v0, $zero, 0xa -/* BCD168 80240108 0809015C */ j .L80240570 -/* BCD16C 8024010C 00000000 */ nop -.L80240110: -/* BCD170 80240110 86030002 */ lh $v1, 2($s0) -/* BCD174 80240114 50620001 */ beql $v1, $v0, .L8024011C -/* BCD178 80240118 AE440070 */ sw $a0, 0x70($s2) -.L8024011C: -/* BCD17C 8024011C 86030002 */ lh $v1, 2($s0) -/* BCD180 80240120 24020009 */ addiu $v0, $zero, 9 -/* BCD184 80240124 50620001 */ beql $v1, $v0, .L8024012C -/* BCD188 80240128 AE440070 */ sw $a0, 0x70($s2) -.L8024012C: -/* BCD18C 8024012C 3C013DCC */ lui $at, 0x3dcc -/* BCD190 80240130 3421CCCD */ ori $at, $at, 0xcccd -/* BCD194 80240134 44810000 */ mtc1 $at, $f0 -/* BCD198 80240138 3C014040 */ lui $at, 0x4040 -/* BCD19C 8024013C 44811000 */ mtc1 $at, $f2 -/* BCD1A0 80240140 3C0141A0 */ lui $at, 0x41a0 -/* BCD1A4 80240144 44812000 */ mtc1 $at, $f4 -/* BCD1A8 80240148 AE200000 */ sw $zero, ($s1) -/* BCD1AC 8024014C AE20000C */ sw $zero, 0xc($s1) -/* BCD1B0 80240150 AE200010 */ sw $zero, 0x10($s1) -/* BCD1B4 80240154 AE200014 */ sw $zero, 0x14($s1) -/* BCD1B8 80240158 AE200008 */ sw $zero, 8($s1) -/* BCD1BC 8024015C E6200004 */ swc1 $f0, 4($s1) -/* BCD1C0 80240160 E6220018 */ swc1 $f2, 0x18($s1) -/* BCD1C4 80240164 0809015C */ j .L80240570 -/* BCD1C8 80240168 E624001C */ swc1 $f4, 0x1c($s1) -.L8024016C: -/* BCD1CC 8024016C 86030002 */ lh $v1, 2($s0) -/* BCD1D0 80240170 2402000A */ addiu $v0, $zero, 0xa -/* BCD1D4 80240174 10620006 */ beq $v1, $v0, .L80240190 -/* BCD1D8 80240178 24020009 */ addiu $v0, $zero, 9 -/* BCD1DC 8024017C 10620004 */ beq $v1, $v0, .L80240190 -/* BCD1E0 80240180 24020078 */ addiu $v0, $zero, 0x78 -/* BCD1E4 80240184 AE42007C */ sw $v0, 0x7c($s2) -/* BCD1E8 80240188 24020002 */ addiu $v0, $zero, 2 -/* BCD1EC 8024018C AE420070 */ sw $v0, 0x70($s2) -.L80240190: -/* BCD1F0 80240190 C6200008 */ lwc1 $f0, 8($s1) -/* BCD1F4 80240194 3C0140A0 */ lui $at, 0x40a0 -/* BCD1F8 80240198 44811000 */ mtc1 $at, $f2 -/* BCD1FC 8024019C 46000005 */ abs.s $f0, $f0 -/* BCD200 802401A0 4602003C */ c.lt.s $f0, $f2 -/* BCD204 802401A4 00000000 */ nop -/* BCD208 802401A8 4500000D */ bc1f .L802401E0 -/* BCD20C 802401AC 00000000 */ nop -/* BCD210 802401B0 C6600028 */ lwc1 $f0, 0x28($s3) -/* BCD214 802401B4 44801000 */ mtc1 $zero, $f2 -/* BCD218 802401B8 44801800 */ mtc1 $zero, $f3 -/* BCD21C 802401BC 46000021 */ cvt.d.s $f0, $f0 -/* BCD220 802401C0 46201081 */ sub.d $f2, $f2, $f0 -/* BCD224 802401C4 3C014348 */ lui $at, 0x4348 -/* BCD228 802401C8 44810000 */ mtc1 $at, $f0 -/* BCD22C 802401CC 462010A0 */ cvt.s.d $f2, $f2 -/* BCD230 802401D0 46001085 */ abs.s $f2, $f2 -/* BCD234 802401D4 46001083 */ div.s $f2, $f2, $f0 -/* BCD238 802401D8 0809007D */ j .L802401F4 -/* BCD23C 802401DC E6220004 */ swc1 $f2, 4($s1) -.L802401E0: -/* BCD240 802401E0 3C013DCC */ lui $at, 0x3dcc -/* BCD244 802401E4 3421CCCD */ ori $at, $at, 0xcccd -/* BCD248 802401E8 44810000 */ mtc1 $at, $f0 -/* BCD24C 802401EC 00000000 */ nop -/* BCD250 802401F0 E6200004 */ swc1 $f0, 4($s1) -.L802401F4: -/* BCD254 802401F4 C6600028 */ lwc1 $f0, 0x28($s3) -/* BCD258 802401F8 44802000 */ mtc1 $zero, $f4 -/* BCD25C 802401FC 44802800 */ mtc1 $zero, $f5 -/* BCD260 80240200 46000021 */ cvt.d.s $f0, $f0 -/* BCD264 80240204 4624003E */ c.le.d $f0, $f4 -/* BCD268 80240208 00000000 */ nop -/* BCD26C 8024020C 45000024 */ bc1f .L802402A0 -/* BCD270 80240210 00000000 */ nop -/* BCD274 80240214 C6200010 */ lwc1 $f0, 0x10($s1) -/* BCD278 80240218 C6220004 */ lwc1 $f2, 4($s1) -/* BCD27C 8024021C 46020000 */ add.s $f0, $f0, $f2 -/* BCD280 80240220 E6200010 */ swc1 $f0, 0x10($s1) -/* BCD284 80240224 C6600028 */ lwc1 $f0, 0x28($s3) -/* BCD288 80240228 46000021 */ cvt.d.s $f0, $f0 -/* BCD28C 8024022C 46202001 */ sub.d $f0, $f4, $f0 -/* BCD290 80240230 46200020 */ cvt.s.d $f0, $f0 -/* BCD294 80240234 46000005 */ abs.s $f0, $f0 -/* BCD298 80240238 46000002 */ mul.s $f0, $f0, $f0 -/* BCD29C 8024023C 00000000 */ nop -/* BCD2A0 80240240 3C014248 */ lui $at, 0x4248 -/* BCD2A4 80240244 44811000 */ mtc1 $at, $f2 -/* BCD2A8 80240248 3C014170 */ lui $at, 0x4170 -/* BCD2AC 8024024C 44812000 */ mtc1 $at, $f4 -/* BCD2B0 80240250 46020003 */ div.s $f0, $f0, $f2 -/* BCD2B4 80240254 4600203C */ c.lt.s $f4, $f0 -/* BCD2B8 80240258 00000000 */ nop -/* BCD2BC 8024025C 45000002 */ bc1f .L80240268 -/* BCD2C0 80240260 E620001C */ swc1 $f0, 0x1c($s1) -/* BCD2C4 80240264 E624001C */ swc1 $f4, 0x1c($s1) -.L80240268: -/* BCD2C8 80240268 C6220008 */ lwc1 $f2, 8($s1) -/* BCD2CC 8024026C C620001C */ lwc1 $f0, 0x1c($s1) -/* BCD2D0 80240270 4602003C */ c.lt.s $f0, $f2 -/* BCD2D4 80240274 00000000 */ nop -/* BCD2D8 80240278 45000031 */ bc1f .L80240340 -/* BCD2DC 8024027C 00000000 */ nop -/* BCD2E0 80240280 C6200004 */ lwc1 $f0, 4($s1) -/* BCD2E4 80240284 C6220018 */ lwc1 $f2, 0x18($s1) -/* BCD2E8 80240288 46020002 */ mul.s $f0, $f0, $f2 -/* BCD2EC 8024028C 00000000 */ nop -/* BCD2F0 80240290 C6220014 */ lwc1 $f2, 0x14($s1) -/* BCD2F4 80240294 46001080 */ add.s $f2, $f2, $f0 -/* BCD2F8 80240298 080900D0 */ j .L80240340 -/* BCD2FC 8024029C E6220014 */ swc1 $f2, 0x14($s1) -.L802402A0: -/* BCD300 802402A0 C6200014 */ lwc1 $f0, 0x14($s1) -/* BCD304 802402A4 C6220004 */ lwc1 $f2, 4($s1) -/* BCD308 802402A8 46020000 */ add.s $f0, $f0, $f2 -/* BCD30C 802402AC E6200014 */ swc1 $f0, 0x14($s1) -/* BCD310 802402B0 C6600028 */ lwc1 $f0, 0x28($s3) -/* BCD314 802402B4 46000021 */ cvt.d.s $f0, $f0 -/* BCD318 802402B8 46202001 */ sub.d $f0, $f4, $f0 -/* BCD31C 802402BC 3C013F00 */ lui $at, 0x3f00 -/* BCD320 802402C0 44811000 */ mtc1 $at, $f2 -/* BCD324 802402C4 46200020 */ cvt.s.d $f0, $f0 -/* BCD328 802402C8 46000005 */ abs.s $f0, $f0 -/* BCD32C 802402CC 46000007 */ neg.s $f0, $f0 -/* BCD330 802402D0 46020002 */ mul.s $f0, $f0, $f2 -/* BCD334 802402D4 00000000 */ nop -/* BCD338 802402D8 46000002 */ mul.s $f0, $f0, $f0 -/* BCD33C 802402DC 00000000 */ nop -/* BCD340 802402E0 3C01C0A0 */ lui $at, 0xc0a0 -/* BCD344 802402E4 44812000 */ mtc1 $at, $f4 -/* BCD348 802402E8 3C014248 */ lui $at, 0x4248 -/* BCD34C 802402EC 44811000 */ mtc1 $at, $f2 -/* BCD350 802402F0 46000007 */ neg.s $f0, $f0 -/* BCD354 802402F4 46020003 */ div.s $f0, $f0, $f2 -/* BCD358 802402F8 4604003C */ c.lt.s $f0, $f4 -/* BCD35C 802402FC 00000000 */ nop -/* BCD360 80240300 45000002 */ bc1f .L8024030C -/* BCD364 80240304 E620001C */ swc1 $f0, 0x1c($s1) -/* BCD368 80240308 E624001C */ swc1 $f4, 0x1c($s1) -.L8024030C: -/* BCD36C 8024030C C6220008 */ lwc1 $f2, 8($s1) -/* BCD370 80240310 C620001C */ lwc1 $f0, 0x1c($s1) -/* BCD374 80240314 4600103C */ c.lt.s $f2, $f0 -/* BCD378 80240318 00000000 */ nop -/* BCD37C 8024031C 45000008 */ bc1f .L80240340 -/* BCD380 80240320 00000000 */ nop -/* BCD384 80240324 C6200004 */ lwc1 $f0, 4($s1) -/* BCD388 80240328 C6220018 */ lwc1 $f2, 0x18($s1) -/* BCD38C 8024032C 46020002 */ mul.s $f0, $f0, $f2 -/* BCD390 80240330 00000000 */ nop -/* BCD394 80240334 C6220010 */ lwc1 $f2, 0x10($s1) -/* BCD398 80240338 46001080 */ add.s $f2, $f2, $f0 -/* BCD39C 8024033C E6220010 */ swc1 $f2, 0x10($s1) -.L80240340: -/* BCD3A0 80240340 C6200010 */ lwc1 $f0, 0x10($s1) -/* BCD3A4 80240344 3C014059 */ lui $at, 0x4059 -/* BCD3A8 80240348 44812800 */ mtc1 $at, $f5 -/* BCD3AC 8024034C 44802000 */ mtc1 $zero, $f4 -/* BCD3B0 80240350 460000A1 */ cvt.d.s $f2, $f0 -/* BCD3B4 80240354 4622203C */ c.lt.d $f4, $f2 -/* BCD3B8 80240358 00000000 */ nop -/* BCD3BC 8024035C 4500000F */ bc1f .L8024039C -/* BCD3C0 80240360 00000000 */ nop -/* BCD3C4 80240364 C6200014 */ lwc1 $f0, 0x14($s1) -/* BCD3C8 80240368 46000021 */ cvt.d.s $f0, $f0 -/* BCD3CC 8024036C 4620203C */ c.lt.d $f4, $f0 -/* BCD3D0 80240370 00000000 */ nop -/* BCD3D4 80240374 45000009 */ bc1f .L8024039C -/* BCD3D8 80240378 00000000 */ nop -/* BCD3DC 8024037C C6200014 */ lwc1 $f0, 0x14($s1) -/* BCD3E0 80240380 46241081 */ sub.d $f2, $f2, $f4 -/* BCD3E4 80240384 46000021 */ cvt.d.s $f0, $f0 -/* BCD3E8 80240388 46240001 */ sub.d $f0, $f0, $f4 -/* BCD3EC 8024038C 462010A0 */ cvt.s.d $f2, $f2 -/* BCD3F0 80240390 E6220010 */ swc1 $f2, 0x10($s1) -/* BCD3F4 80240394 46200020 */ cvt.s.d $f0, $f0 -/* BCD3F8 80240398 E6200014 */ swc1 $f0, 0x14($s1) -.L8024039C: -/* BCD3FC 8024039C C6240010 */ lwc1 $f4, 0x10($s1) -/* BCD400 802403A0 C6220014 */ lwc1 $f2, 0x14($s1) -/* BCD404 802403A4 46022001 */ sub.s $f0, $f4, $f2 -/* BCD408 802403A8 3C013FF8 */ lui $at, 0x3ff8 -/* BCD40C 802403AC 44813800 */ mtc1 $at, $f7 -/* BCD410 802403B0 44803000 */ mtc1 $zero, $f6 -/* BCD414 802403B4 46000005 */ abs.s $f0, $f0 -/* BCD418 802403B8 46000021 */ cvt.d.s $f0, $f0 -/* BCD41C 802403BC 4620303C */ c.lt.d $f6, $f0 -/* BCD420 802403C0 00000000 */ nop -/* BCD424 802403C4 45000063 */ bc1f .L80240554 -/* BCD428 802403C8 00000000 */ nop -/* BCD42C 802403CC 4602203C */ c.lt.s $f4, $f2 -/* BCD430 802403D0 00000000 */ nop -/* BCD434 802403D4 45020006 */ bc1fl .L802403F0 -/* BCD438 802403D8 46001021 */ cvt.d.s $f0, $f2 -/* BCD43C 802403DC 46002021 */ cvt.d.s $f0, $f4 -/* BCD440 802403E0 46260000 */ add.d $f0, $f0, $f6 -/* BCD444 802403E4 46200020 */ cvt.s.d $f0, $f0 -/* BCD448 802403E8 08090155 */ j .L80240554 -/* BCD44C 802403EC E6200014 */ swc1 $f0, 0x14($s1) -.L802403F0: -/* BCD450 802403F0 46260000 */ add.d $f0, $f0, $f6 -/* BCD454 802403F4 46200020 */ cvt.s.d $f0, $f0 -/* BCD458 802403F8 08090155 */ j .L80240554 -/* BCD45C 802403FC E6200010 */ swc1 $f0, 0x10($s1) -.L80240400: -/* BCD460 80240400 86030002 */ lh $v1, 2($s0) -/* BCD464 80240404 50620001 */ beql $v1, $v0, .L8024040C -/* BCD468 80240408 AE440070 */ sw $a0, 0x70($s2) -.L8024040C: -/* BCD46C 8024040C 86030002 */ lh $v1, 2($s0) -/* BCD470 80240410 24020009 */ addiu $v0, $zero, 9 -/* BCD474 80240414 50620001 */ beql $v1, $v0, .L8024041C -/* BCD478 80240418 AE440070 */ sw $a0, 0x70($s2) -.L8024041C: -/* BCD47C 8024041C 3C013DCC */ lui $at, 0x3dcc -/* BCD480 80240420 3421CCCD */ ori $at, $at, 0xcccd -/* BCD484 80240424 44810000 */ mtc1 $at, $f0 -/* BCD488 80240428 C6220010 */ lwc1 $f2, 0x10($s1) -/* BCD48C 8024042C C6240008 */ lwc1 $f4, 8($s1) -/* BCD490 80240430 AE20001C */ sw $zero, 0x1c($s1) -/* BCD494 80240434 46001080 */ add.s $f2, $f2, $f0 -/* BCD498 80240438 E6200004 */ swc1 $f0, 4($s1) -/* BCD49C 8024043C C620001C */ lwc1 $f0, 0x1c($s1) -/* BCD4A0 80240440 4604003C */ c.lt.s $f0, $f4 -/* BCD4A4 80240444 00000000 */ nop -/* BCD4A8 80240448 45000008 */ bc1f .L8024046C -/* BCD4AC 8024044C E6220010 */ swc1 $f2, 0x10($s1) -/* BCD4B0 80240450 C6200004 */ lwc1 $f0, 4($s1) -/* BCD4B4 80240454 C6220018 */ lwc1 $f2, 0x18($s1) -/* BCD4B8 80240458 46020002 */ mul.s $f0, $f0, $f2 -/* BCD4BC 8024045C 00000000 */ nop -/* BCD4C0 80240460 C6220014 */ lwc1 $f2, 0x14($s1) -/* BCD4C4 80240464 46001080 */ add.s $f2, $f2, $f0 -/* BCD4C8 80240468 E6220014 */ swc1 $f2, 0x14($s1) -.L8024046C: -/* BCD4CC 8024046C C6200010 */ lwc1 $f0, 0x10($s1) -/* BCD4D0 80240470 3C014059 */ lui $at, 0x4059 -/* BCD4D4 80240474 44812800 */ mtc1 $at, $f5 -/* BCD4D8 80240478 44802000 */ mtc1 $zero, $f4 -/* BCD4DC 8024047C 460000A1 */ cvt.d.s $f2, $f0 -/* BCD4E0 80240480 4622203C */ c.lt.d $f4, $f2 -/* BCD4E4 80240484 00000000 */ nop -/* BCD4E8 80240488 4500000F */ bc1f .L802404C8 -/* BCD4EC 8024048C 00000000 */ nop -/* BCD4F0 80240490 C6200014 */ lwc1 $f0, 0x14($s1) -/* BCD4F4 80240494 46000021 */ cvt.d.s $f0, $f0 -/* BCD4F8 80240498 4620203C */ c.lt.d $f4, $f0 -/* BCD4FC 8024049C 00000000 */ nop -/* BCD500 802404A0 45000009 */ bc1f .L802404C8 -/* BCD504 802404A4 00000000 */ nop -/* BCD508 802404A8 C6200014 */ lwc1 $f0, 0x14($s1) -/* BCD50C 802404AC 46241081 */ sub.d $f2, $f2, $f4 -/* BCD510 802404B0 46000021 */ cvt.d.s $f0, $f0 -/* BCD514 802404B4 46240001 */ sub.d $f0, $f0, $f4 -/* BCD518 802404B8 462010A0 */ cvt.s.d $f2, $f2 -/* BCD51C 802404BC E6220010 */ swc1 $f2, 0x10($s1) -/* BCD520 802404C0 46200020 */ cvt.s.d $f0, $f0 -/* BCD524 802404C4 E6200014 */ swc1 $f0, 0x14($s1) -.L802404C8: -/* BCD528 802404C8 C6240010 */ lwc1 $f4, 0x10($s1) -/* BCD52C 802404CC C6220014 */ lwc1 $f2, 0x14($s1) -/* BCD530 802404D0 46022001 */ sub.s $f0, $f4, $f2 -/* BCD534 802404D4 3C013FE0 */ lui $at, 0x3fe0 -/* BCD538 802404D8 44813800 */ mtc1 $at, $f7 -/* BCD53C 802404DC 44803000 */ mtc1 $zero, $f6 -/* BCD540 802404E0 46000005 */ abs.s $f0, $f0 -/* BCD544 802404E4 46000021 */ cvt.d.s $f0, $f0 -/* BCD548 802404E8 4620303C */ c.lt.d $f6, $f0 -/* BCD54C 802404EC 00000000 */ nop -/* BCD550 802404F0 4500000D */ bc1f .L80240528 -/* BCD554 802404F4 00000000 */ nop -/* BCD558 802404F8 4602203C */ c.lt.s $f4, $f2 -/* BCD55C 802404FC 00000000 */ nop -/* BCD560 80240500 45020006 */ bc1fl .L8024051C -/* BCD564 80240504 46001021 */ cvt.d.s $f0, $f2 -/* BCD568 80240508 46002021 */ cvt.d.s $f0, $f4 -/* BCD56C 8024050C 46260000 */ add.d $f0, $f0, $f6 -/* BCD570 80240510 46200020 */ cvt.s.d $f0, $f0 -/* BCD574 80240514 0809014A */ j .L80240528 -/* BCD578 80240518 E6200014 */ swc1 $f0, 0x14($s1) -.L8024051C: -/* BCD57C 8024051C 46260000 */ add.d $f0, $f0, $f6 -/* BCD580 80240520 46200020 */ cvt.s.d $f0, $f0 -/* BCD584 80240524 E6200010 */ swc1 $f0, 0x10($s1) -.L80240528: -/* BCD588 80240528 8E42007C */ lw $v0, 0x7c($s2) -/* BCD58C 8024052C 04410008 */ bgez $v0, .L80240550 -/* BCD590 80240530 2442FFFF */ addiu $v0, $v0, -1 -/* BCD594 80240534 44800000 */ mtc1 $zero, $f0 -/* BCD598 80240538 00000000 */ nop -/* BCD59C 8024053C E6200014 */ swc1 $f0, 0x14($s1) -/* BCD5A0 80240540 E6200010 */ swc1 $f0, 0x10($s1) -/* BCD5A4 80240544 E6200000 */ swc1 $f0, ($s1) -/* BCD5A8 80240548 08090155 */ j .L80240554 -/* BCD5AC 8024054C E6200008 */ swc1 $f0, 8($s1) -.L80240550: -/* BCD5B0 80240550 AE42007C */ sw $v0, 0x7c($s2) -.L80240554: -/* BCD5B4 80240554 C6200010 */ lwc1 $f0, 0x10($s1) -/* BCD5B8 80240558 C6220014 */ lwc1 $f2, 0x14($s1) -/* BCD5BC 8024055C 46020001 */ sub.s $f0, $f0, $f2 -/* BCD5C0 80240560 C6220008 */ lwc1 $f2, 8($s1) -/* BCD5C4 80240564 46001080 */ add.s $f2, $f2, $f0 -/* BCD5C8 80240568 E6200000 */ swc1 $f0, ($s1) -/* BCD5CC 8024056C E6220008 */ swc1 $f2, 8($s1) -.L80240570: -/* BCD5D0 80240570 C6220008 */ lwc1 $f2, 8($s1) -/* BCD5D4 80240574 3C01C0E0 */ lui $at, 0xc0e0 -/* BCD5D8 80240578 44810000 */ mtc1 $at, $f0 -/* BCD5DC 8024057C 00000000 */ nop -/* BCD5E0 80240580 4600103E */ c.le.s $f2, $f0 -/* BCD5E4 80240584 00000000 */ nop -/* BCD5E8 80240588 45000013 */ bc1f .L802405D8 -/* BCD5EC 8024058C 2410FFFF */ addiu $s0, $zero, -1 -/* BCD5F0 80240590 8E420078 */ lw $v0, 0x78($s2) -/* BCD5F4 80240594 10500011 */ beq $v0, $s0, .L802405DC -/* BCD5F8 80240598 27A50058 */ addiu $a1, $sp, 0x58 -/* BCD5FC 8024059C 2404000A */ addiu $a0, $zero, 0xa -/* BCD600 802405A0 27A6005C */ addiu $a2, $sp, 0x5c -/* BCD604 802405A4 0C016F84 */ jal get_collider_center -/* BCD608 802405A8 27A70060 */ addiu $a3, $sp, 0x60 -/* BCD60C 802405AC 240401D6 */ addiu $a0, $zero, 0x1d6 -/* BCD610 802405B0 C7A00058 */ lwc1 $f0, 0x58($sp) -/* BCD614 802405B4 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* BCD618 802405B8 44060000 */ mfc1 $a2, $f0 -/* BCD61C 802405BC 44071000 */ mfc1 $a3, $f2 -/* BCD620 802405C0 C7A00060 */ lwc1 $f0, 0x60($sp) -/* BCD624 802405C4 0000282D */ daddu $a1, $zero, $zero -/* BCD628 802405C8 0C052757 */ jal sfx_play_sound_at_position -/* BCD62C 802405CC E7A00010 */ swc1 $f0, 0x10($sp) -/* BCD630 802405D0 08090177 */ j .L802405DC -/* BCD634 802405D4 AE500078 */ sw $s0, 0x78($s2) -.L802405D8: -/* BCD638 802405D8 AE400078 */ sw $zero, 0x78($s2) -.L802405DC: -/* BCD63C 802405DC C6200008 */ lwc1 $f0, 8($s1) -/* BCD640 802405E0 46000002 */ mul.s $f0, $f0, $f0 -/* BCD644 802405E4 00000000 */ nop -/* BCD648 802405E8 3C0142B4 */ lui $at, 0x42b4 -/* BCD64C 802405EC 44811000 */ mtc1 $at, $f2 -/* BCD650 802405F0 2404001B */ addiu $a0, $zero, 0x1b -/* BCD654 802405F4 46020003 */ div.s $f0, $f0, $f2 -/* BCD658 802405F8 0C046C04 */ jal get_model_list_index_from_tree_index -/* BCD65C 802405FC E620000C */ swc1 $f0, 0xc($s1) -/* BCD660 80240600 0C046B4C */ jal get_model_from_list_index -/* BCD664 80240604 0040202D */ daddu $a0, $v0, $zero -/* BCD668 80240608 0040182D */ daddu $v1, $v0, $zero -/* BCD66C 8024060C 24700058 */ addiu $s0, $v1, 0x58 -/* BCD670 80240610 4480A000 */ mtc1 $zero, $f20 -/* BCD674 80240614 94620000 */ lhu $v0, ($v1) -/* BCD678 80240618 4405A000 */ mfc1 $a1, $f20 -/* BCD67C 8024061C 4407A000 */ mfc1 $a3, $f20 -/* BCD680 80240620 34421400 */ ori $v0, $v0, 0x1400 -/* BCD684 80240624 A4620000 */ sh $v0, ($v1) -/* BCD688 80240628 8E26000C */ lw $a2, 0xc($s1) -/* BCD68C 8024062C 3C013F80 */ lui $at, 0x3f80 -/* BCD690 80240630 4481B000 */ mtc1 $at, $f22 -/* BCD694 80240634 0C019E40 */ jal guTranslateF -/* BCD698 80240638 0200202D */ daddu $a0, $s0, $zero -/* BCD69C 8024063C E7B60010 */ swc1 $f22, 0x10($sp) -/* BCD6A0 80240640 8E250008 */ lw $a1, 8($s1) -/* BCD6A4 80240644 4406A000 */ mfc1 $a2, $f20 -/* BCD6A8 80240648 4407A000 */ mfc1 $a3, $f20 -/* BCD6AC 8024064C 0C019EC8 */ jal guRotateF -/* BCD6B0 80240650 27A40018 */ addiu $a0, $sp, 0x18 -/* BCD6B4 80240654 0200202D */ daddu $a0, $s0, $zero -/* BCD6B8 80240658 27A50018 */ addiu $a1, $sp, 0x18 -/* BCD6BC 8024065C 0C019D80 */ jal guMtxCatF -/* BCD6C0 80240660 0080302D */ daddu $a2, $a0, $zero -/* BCD6C4 80240664 0C016E89 */ jal update_collider_transform -/* BCD6C8 80240668 2404000A */ addiu $a0, $zero, 0xa -/* BCD6CC 8024066C 0C016E89 */ jal update_collider_transform -/* BCD6D0 80240670 24040009 */ addiu $a0, $zero, 9 -/* BCD6D4 80240674 0C046C04 */ jal get_model_list_index_from_tree_index -/* BCD6D8 80240678 2404001A */ addiu $a0, $zero, 0x1a -/* BCD6DC 8024067C 0C046B4C */ jal get_model_from_list_index -/* BCD6E0 80240680 0040202D */ daddu $a0, $v0, $zero -/* BCD6E4 80240684 0040182D */ daddu $v1, $v0, $zero -/* BCD6E8 80240688 24700058 */ addiu $s0, $v1, 0x58 -/* BCD6EC 8024068C 4405A000 */ mfc1 $a1, $f20 -/* BCD6F0 80240690 94620000 */ lhu $v0, ($v1) -/* BCD6F4 80240694 4407A000 */ mfc1 $a3, $f20 -/* BCD6F8 80240698 34421400 */ ori $v0, $v0, 0x1400 -/* BCD6FC 8024069C A4620000 */ sh $v0, ($v1) -/* BCD700 802406A0 8E26000C */ lw $a2, 0xc($s1) -/* BCD704 802406A4 0C019E40 */ jal guTranslateF -/* BCD708 802406A8 0200202D */ daddu $a0, $s0, $zero -/* BCD70C 802406AC E7B60010 */ swc1 $f22, 0x10($sp) -/* BCD710 802406B0 8E250008 */ lw $a1, 8($s1) -/* BCD714 802406B4 4406A000 */ mfc1 $a2, $f20 -/* BCD718 802406B8 4407A000 */ mfc1 $a3, $f20 -/* BCD71C 802406BC 0C019EC8 */ jal guRotateF -/* BCD720 802406C0 27A40018 */ addiu $a0, $sp, 0x18 -/* BCD724 802406C4 0200202D */ daddu $a0, $s0, $zero -/* BCD728 802406C8 27A50018 */ addiu $a1, $sp, 0x18 -/* BCD72C 802406CC 0C019D80 */ jal guMtxCatF -/* BCD730 802406D0 0080302D */ daddu $a2, $a0, $zero -/* BCD734 802406D4 0C046C04 */ jal get_model_list_index_from_tree_index -/* BCD738 802406D8 24040019 */ addiu $a0, $zero, 0x19 -/* BCD73C 802406DC 0C046B4C */ jal get_model_from_list_index -/* BCD740 802406E0 0040202D */ daddu $a0, $v0, $zero -/* BCD744 802406E4 0040182D */ daddu $v1, $v0, $zero -/* BCD748 802406E8 24700058 */ addiu $s0, $v1, 0x58 -/* BCD74C 802406EC 4405A000 */ mfc1 $a1, $f20 -/* BCD750 802406F0 94620000 */ lhu $v0, ($v1) -/* BCD754 802406F4 4407A000 */ mfc1 $a3, $f20 -/* BCD758 802406F8 34421400 */ ori $v0, $v0, 0x1400 -/* BCD75C 802406FC A4620000 */ sh $v0, ($v1) -/* BCD760 80240700 8E26000C */ lw $a2, 0xc($s1) -/* BCD764 80240704 0C019E40 */ jal guTranslateF -/* BCD768 80240708 0200202D */ daddu $a0, $s0, $zero -/* BCD76C 8024070C 4406A000 */ mfc1 $a2, $f20 -/* BCD770 80240710 27A40018 */ addiu $a0, $sp, 0x18 -/* BCD774 80240714 E7B60010 */ swc1 $f22, 0x10($sp) -/* BCD778 80240718 8E250008 */ lw $a1, 8($s1) -/* BCD77C 8024071C 0C019EC8 */ jal guRotateF -/* BCD780 80240720 00C0382D */ daddu $a3, $a2, $zero -/* BCD784 80240724 0200202D */ daddu $a0, $s0, $zero -/* BCD788 80240728 27A50018 */ addiu $a1, $sp, 0x18 -/* BCD78C 8024072C 0C019D80 */ jal guMtxCatF -/* BCD790 80240730 0080302D */ daddu $a2, $a0, $zero -/* BCD794 80240734 0C016E89 */ jal update_collider_transform -/* BCD798 80240738 24040008 */ addiu $a0, $zero, 8 -/* BCD79C 8024073C 8FBF0078 */ lw $ra, 0x78($sp) -/* BCD7A0 80240740 8FB30074 */ lw $s3, 0x74($sp) -/* BCD7A4 80240744 8FB20070 */ lw $s2, 0x70($sp) -/* BCD7A8 80240748 8FB1006C */ lw $s1, 0x6c($sp) -/* BCD7AC 8024074C 8FB00068 */ lw $s0, 0x68($sp) -/* BCD7B0 80240750 D7B60088 */ ldc1 $f22, 0x88($sp) -/* BCD7B4 80240754 D7B40080 */ ldc1 $f20, 0x80($sp) -/* BCD7B8 80240758 0000102D */ daddu $v0, $zero, $zero -/* BCD7BC 8024075C 03E00008 */ jr $ra -/* BCD7C0 80240760 27BD0090 */ addiu $sp, $sp, 0x90 -/* BCD7C4 80240764 00000000 */ nop -/* BCD7C8 80240768 00000000 */ nop -/* BCD7CC 8024076C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240770_BCD7D0.s b/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240770_BCD7D0.s deleted file mode 100644 index e3601e97cb..0000000000 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240770_BCD7D0.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240770_BCD7D0 -/* BCD7D0 80240770 3C018011 */ lui $at, %hi(gPlayerStatus+0x2C) -/* BCD7D4 80240774 C422EFF4 */ lwc1 $f2, %lo(gPlayerStatus+0x2C)($at) -/* BCD7D8 80240778 3C01C248 */ lui $at, 0xc248 -/* BCD7DC 8024077C 44810000 */ mtc1 $at, $f0 -/* BCD7E0 80240780 00000000 */ nop -/* BCD7E4 80240784 4600103C */ c.lt.s $f2, $f0 -/* BCD7E8 80240788 00000000 */ nop -/* BCD7EC 8024078C 45010002 */ bc1t .L80240798 -/* BCD7F0 80240790 24020002 */ addiu $v0, $zero, 2 -/* BCD7F4 80240794 0000102D */ daddu $v0, $zero, $zero -.L80240798: -/* BCD7F8 80240798 03E00008 */ jr $ra -/* BCD7FC 8024079C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_802407A0_BCD800.s b/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_802407A0_BCD800.s deleted file mode 100644 index 69e721a1d7..0000000000 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_802407A0_BCD800.s +++ /dev/null @@ -1,7 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802407A0_BCD800 -/* BCD800 802407A0 AC800074 */ sw $zero, 0x74($a0) -/* BCD804 802407A4 03E00008 */ jr $ra -/* BCD808 802407A8 24020002 */ addiu $v0, $zero, 2 diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240934_BCD994.s b/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240934_BCD994.s deleted file mode 100644 index 1440cb6b89..0000000000 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_05/BCD7D0/func_80240934_BCD994.s +++ /dev/null @@ -1,51 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240934_BCD994 -/* BCD994 80240934 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* BCD998 80240938 AFB10014 */ sw $s1, 0x14($sp) -/* BCD99C 8024093C 0080882D */ daddu $s1, $a0, $zero -/* BCD9A0 80240940 AFBF0018 */ sw $ra, 0x18($sp) -/* BCD9A4 80240944 AFB00010 */ sw $s0, 0x10($sp) -/* BCD9A8 80240948 8E240088 */ lw $a0, 0x88($s1) -/* BCD9AC 8024094C 1480000B */ bnez $a0, .L8024097C -/* BCD9B0 80240950 8E300084 */ lw $s0, 0x84($s1) -/* BCD9B4 80240954 0C00A67F */ jal rand_int -/* BCD9B8 80240958 24040003 */ addiu $a0, $zero, 3 -/* BCD9BC 8024095C 00021040 */ sll $v0, $v0, 1 -/* BCD9C0 80240960 3C018024 */ lui $at, %hi(D_8024100C_BCE06C) -/* BCD9C4 80240964 00220821 */ addu $at, $at, $v0 -/* BCD9C8 80240968 8422100C */ lh $v0, %lo(D_8024100C_BCE06C)($at) -/* BCD9CC 8024096C 24040032 */ addiu $a0, $zero, 0x32 -/* BCD9D0 80240970 0C00A67F */ jal rand_int -/* BCD9D4 80240974 AE220078 */ sw $v0, 0x78($s1) -/* BCD9D8 80240978 2444001E */ addiu $a0, $v0, 0x1e -.L8024097C: -/* BCD9DC 8024097C 8E230078 */ lw $v1, 0x78($s1) -/* BCD9E0 80240980 0203102A */ slt $v0, $s0, $v1 -/* BCD9E4 80240984 10400006 */ beqz $v0, .L802409A0 -/* BCD9E8 80240988 2484FFFF */ addiu $a0, $a0, -1 -/* BCD9EC 8024098C 2610000A */ addiu $s0, $s0, 0xa -/* BCD9F0 80240990 0070102A */ slt $v0, $v1, $s0 -/* BCD9F4 80240994 5040000A */ beql $v0, $zero, .L802409C0 -/* BCD9F8 80240998 AE300084 */ sw $s0, 0x84($s1) -/* BCD9FC 8024099C 0060802D */ daddu $s0, $v1, $zero -.L802409A0: -/* BCDA00 802409A0 0070102A */ slt $v0, $v1, $s0 -/* BCDA04 802409A4 50400006 */ beql $v0, $zero, .L802409C0 -/* BCDA08 802409A8 AE300084 */ sw $s0, 0x84($s1) -/* BCDA0C 802409AC 2610FFF6 */ addiu $s0, $s0, -0xa -/* BCDA10 802409B0 0203102A */ slt $v0, $s0, $v1 -/* BCDA14 802409B4 54400001 */ bnel $v0, $zero, .L802409BC -/* BCDA18 802409B8 0060802D */ daddu $s0, $v1, $zero -.L802409BC: -/* BCDA1C 802409BC AE300084 */ sw $s0, 0x84($s1) -.L802409C0: -/* BCDA20 802409C0 AE240088 */ sw $a0, 0x88($s1) -/* BCDA24 802409C4 8FBF0018 */ lw $ra, 0x18($sp) -/* BCDA28 802409C8 8FB10014 */ lw $s1, 0x14($sp) -/* BCDA2C 802409CC 8FB00010 */ lw $s0, 0x10($sp) -/* BCDA30 802409D0 24020002 */ addiu $v0, $zero, 2 -/* BCDA34 802409D4 03E00008 */ jr $ra -/* BCDA38 802409D8 27BD0020 */ addiu $sp, $sp, 0x20 -/* BCDA3C 802409DC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_obk/obk_07/BCF0F0/func_80241358_BCFF48.s b/ver/us/asm/nonmatchings/world/area_obk/obk_07/BCF0F0/func_80241358_BCFF48.s index b19bb13cb4..a660b62359 100644 --- a/ver/us/asm/nonmatchings/world/area_obk/obk_07/BCF0F0/func_80241358_BCFF48.s +++ b/ver/us/asm/nonmatchings/world/area_obk/obk_07/BCF0F0/func_80241358_BCFF48.s @@ -24,8 +24,8 @@ glabel func_80241358_BCFF48 /* BCFF94 802413A4 0C0B1EAF */ jal evt_get_variable /* BCFF98 802413A8 AE020050 */ sw $v0, 0x50($s0) /* BCFF9C 802413AC AE020054 */ sw $v0, 0x54($s0) -/* BCFFA0 802413B0 3C038016 */ lui $v1, %hi(D_80159B08) -/* BCFFA4 802413B4 8C639B08 */ lw $v1, %lo(D_80159B08)($v1) +/* BCFFA0 802413B0 3C038016 */ lui $v1, %hi(gMusicSettings + 0x18) +/* BCFFA4 802413B4 8C639B08 */ lw $v1, %lo(gMusicSettings + 0x18)($v1) /* BCFFA8 802413B8 AE03000C */ sw $v1, 0xc($s0) /* BCFFAC 802413BC 8FBF0014 */ lw $ra, 0x14($sp) /* BCFFB0 802413C0 8FB00010 */ lw $s0, 0x10($sp) diff --git a/ver/us/asm/nonmatchings/world/area_pra/pra_01/D4D060/func_802412D4_D4E314.s b/ver/us/asm/nonmatchings/world/area_pra/pra_01/D4D060/func_802412D4_D4E314.s index dc133cfc8b..ab98139229 100644 --- a/ver/us/asm/nonmatchings/world/area_pra/pra_01/D4D060/func_802412D4_D4E314.s +++ b/ver/us/asm/nonmatchings/world/area_pra/pra_01/D4D060/func_802412D4_D4E314.s @@ -13,8 +13,8 @@ glabel func_802412D4_D4E314 /* D4E334 802412F4 8C620000 */ lw $v0, ($v1) /* D4E338 802412F8 5040000A */ beql $v0, $zero, .L80241324 /* D4E33C 802412FC 00041080 */ sll $v0, $a0, 2 -/* D4E340 80241300 3C058024 */ lui $a1, %hi(D_80243178_E084D8) -/* D4E344 80241304 24A53178 */ addiu $a1, $a1, %lo(D_80243178_E084D8) +/* D4E340 80241300 3C058024 */ lui $a1, %hi(pra_01_80243178) +/* D4E344 80241304 24A53178 */ addiu $a1, $a1, %lo(pra_01_80243178) .L80241308: /* D4E348 80241308 24630004 */ addiu $v1, $v1, 4 /* D4E34C 8024130C 24840001 */ addiu $a0, $a0, 1 @@ -24,14 +24,14 @@ glabel func_802412D4_D4E314 /* D4E35C 8024131C 24A50004 */ addiu $a1, $a1, 4 /* D4E360 80241320 00041080 */ sll $v0, $a0, 2 .L80241324: -/* D4E364 80241324 3C018024 */ lui $at, %hi(D_80243178_E084D8) +/* D4E364 80241324 3C018024 */ lui $at, %hi(pra_01_80243178) /* D4E368 80241328 00220821 */ addu $at, $at, $v0 -/* D4E36C 8024132C AC203178 */ sw $zero, %lo(D_80243178_E084D8)($at) +/* D4E36C 8024132C AC203178 */ sw $zero, %lo(pra_01_80243178)($at) /* D4E370 80241330 080904D8 */ j .L80241360 /* D4E374 80241334 00000000 */ nop .L80241338: -/* D4E378 80241338 3C038024 */ lui $v1, %hi(D_80243178_E084D8) -/* D4E37C 8024133C 24633178 */ addiu $v1, $v1, %lo(D_80243178_E084D8) +/* D4E378 80241338 3C038024 */ lui $v1, %hi(pra_01_80243178) +/* D4E37C 8024133C 24633178 */ addiu $v1, $v1, %lo(pra_01_80243178) /* D4E380 80241340 0060282D */ daddu $a1, $v1, $zero .L80241344: /* D4E384 80241344 24820080 */ addiu $v0, $a0, 0x80 diff --git a/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_80240038_953FF8.s b/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_80240038_953FF8.s deleted file mode 100644 index c9eee6b77e..0000000000 --- a/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_80240038_953FF8.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240038_953FF8 -/* 953FF8 80240038 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 953FFC 8024003C 0000202D */ daddu $a0, $zero, $zero -/* 954000 80240040 AFBF0010 */ sw $ra, 0x10($sp) -/* 954004 80240044 0C052AED */ jal func_8014ABB4 -/* 954008 80240048 24050001 */ addiu $a1, $zero, 1 -/* 95400C 8024004C 8FBF0010 */ lw $ra, 0x10($sp) -/* 954010 80240050 24020002 */ addiu $v0, $zero, 2 -/* 954014 80240054 03E00008 */ jr $ra -/* 954018 80240058 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_8024005C_95401C.s b/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_8024005C_95401C.s deleted file mode 100644 index f86815a2a3..0000000000 --- a/ver/us/asm/nonmatchings/world/area_sbk/sbk_56/953FC0/func_8024005C_95401C.s +++ /dev/null @@ -1,13 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024005C_95401C -/* 95401C 8024005C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 954020 80240060 0000202D */ daddu $a0, $zero, $zero -/* 954024 80240064 AFBF0010 */ sw $ra, 0x10($sp) -/* 954028 80240068 0C052AED */ jal func_8014ABB4 -/* 95402C 8024006C 0080282D */ daddu $a1, $a0, $zero -/* 954030 80240070 8FBF0010 */ lw $ra, 0x10($sp) -/* 954034 80240074 24020002 */ addiu $v0, $zero, 2 -/* 954038 80240078 03E00008 */ jr $ra -/* 95403C 8024007C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/splat.yaml b/ver/us/splat.yaml index 99d9dbba92..8155410492 100644 --- a/ver/us/splat.yaml +++ b/ver/us/splat.yaml @@ -82,17 +82,17 @@ segments: - [0x20EC0, c, status_icons] - [0x23680, c] - [0x25AF0, c] - - [0x25F00, c, 25f00_len_940] - - [0x26840, c, 26840_len_20d0] - - [0x28910, c, 28910_len_5090] - - [0x2BF90, c] - - [0x2D9A0, c, 2d9a0_len_890] - - [0x2E230, c, 2e230_len_2190] - - [0x303C0, c, 303c0_len_3e10] - - [0x30450, c] - - [0x31650, c, 31650] - - [0x33450, c] - - [0x341D0, c, 341d0] + - [0x25F00, c, audio/25f00_len_940] + - [0x26840, c, audio/sfx_player] + - [0x28910, c, audio/28910_len_5090] + - [0x2BF90, c, audio/2BF90] + - [0x2D9A0, c, audio/2d9a0_len_890] + - [0x2E230, c, audio/2e230_len_2190] + - [0x303C0, c, audio/303c0_len_3e10] + - [0x30450, c, audio/30450] + - [0x31650, c, audio/31650] + - [0x33450, c, audio/33450] + - [0x341D0, c, audio/reverb] - [0x341D0, c, 5B320] - [0x35080, c, effects] - [0x35AC0, c, world/world] @@ -317,12 +317,13 @@ segments: - [0x52DC0, .data, state_title_screen] - [0x52EE0, .data, state_demo] - [0x52FF0, data] - - [0x53570, .data, 25f00_len_940] - - [0x53590, data, 26840_len_20d0] - - [0x541B0, .data, 30450] - - [0x54250, .data, 31650] - - [0x542E0, data] - - [0x5A3E0, .data, 341d0] + - [0x53570, .data, audio/25f00_len_940] + - [0x53590, .data, audio/sfx_player] + - [0x541B0, .data, audio/30450] + - [0x54250, .data, audio/31650] + - [0x54260, .data, audio/33450] + - [0x54360, data] + - [0x5A3E0, .data, audio/reverb] - [0x5A610, .data, effects] - [0x5B320, .data, 5B320] - [0x6B360, .data, world/world] @@ -792,11 +793,11 @@ segments: - [0xDBA20, c, dba20_len_350] - [0xDBD70, c, trigger] - [0xDC470, c, dc470_len_14c0] - - [0xDD930, c, dd930_len_1c0] + - [0xDD930, c, audio/ambience] - [0xDDAF0, c, windows] - [0xDE740, c, de740_len_23f0] - - [0xDF950, c, sfx] - - [0xE0B30, c, e0b30_len_b80] + - [0xDF950, c, audio/sfx] + - [0xE0B30, c, audio/e0b30_len_b80] - [0xE16B0, .data, a5dd0_len_114e0] - [0xE2950, .data, B4580] - [0xE2960, .data, entity_model] @@ -819,10 +820,10 @@ segments: - [0xE5510, .data, d0a70_len_4fe0] - [0xE56C0, .data, hud_element] - [0xE5820, .data, dc470_len_14c0] - - [0xE5840, .data, dd930_len_1c0] + - [0xE5840, .data, audio/ambience] - [0xE5850, .data, windows] - - [0xE59D0, .data, sfx] - - [0xE5DF0, .data, e0b30_len_b80] + - [0xE59D0, .data, audio/sfx] + - [0xE5DF0, .data, audio/e0b30_len_b80] - [0xE5E40] - type: code dir: evt @@ -11810,7 +11811,6 @@ segments: - [0xE0B5F0, data] - [0xE0C0C0, data] - [0xE0D510, data] - - [0xE0E700, data] - [0xE0E740] - name: mgm_00 dir: world/area_mgm/mgm_00 diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index e99ca4fd5e..b492364f3a 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -497,61 +497,61 @@ nuAuCleanDMABuffers = 0x8004B268; // type:func rom:0x26668 func_8004B328 = 0x8004B328; // type:func rom:0x26728 alLink = 0x8004B3EC; // type:func rom:0x267EC alUnlink = 0x8004B40C; // type:func rom:0x2680C -func_8004B440 = 0x8004B440; // type:func rom:0x26840 -snd_load_sfx_groups_from_SEF = 0x8004B62C; // type:func rom:0x26A2C -snd_clear_sfx_queue = 0x8004B698; // type:func rom:0x26A98 -snd_enqueue_sfx_event = 0x8004B6D8; // type:func rom:0x26AD8 -func_8004B748 = 0x8004B748; // type:func rom:0x26B48 +au_sfx_init = 0x8004B440; // type:func rom:0x26840 +au_sfx_load_groups_from_SEF = 0x8004B62C; // type:func rom:0x26A2C +au_sfx_clear_queue = 0x8004B698; // type:func rom:0x26A98 +au_sfx_enqueue_event = 0x8004B6D8; // type:func rom:0x26AD8 +au_sfx_update_main = 0x8004B748; // type:func rom:0x26B48 func_8004B9E4 = 0x8004B9E4; // type:func rom:0x26DE4 func_8004BA54 = 0x8004BA54; // type:func rom:0x26E54 func_8004BA74 = 0x8004BA74; // type:func rom:0x26E74 func_8004C0E4 = 0x8004C0E4; // type:func rom:0x274E4 -func_8004C268 = 0x8004C268; // type:func rom:0x27668 -func_8004C2A4 = 0x8004C2A4; // type:func rom:0x276A4 +au_sfx_set_bits_C00 = 0x8004C268; // type:func rom:0x27668 +au_sfx_stop_by_id = 0x8004C2A4; // type:func rom:0x276A4 func_8004C300 = 0x8004C300; // type:func rom:0x27700 -snd_set_modifiers = 0x8004C358; // type:func rom:0x27758 -snd_set_player_modifiers = 0x8004C3D4; // type:func rom:0x277D4 -func_8004C444 = 0x8004C444; // type:func rom:0x27844 -func_8004C578 = 0x8004C578; // type:func rom:0x27978 -snd_get_scaled_volume = 0x8004C844; // type:func rom:0x27C44 -func_8004C884 = 0x8004C884; // type:func rom:0x27C84 +au_sfx_set_modifiers = 0x8004C358; // type:func rom:0x27758 +au_sfx_set_player_modifiers = 0x8004C3D4; // type:func rom:0x277D4 +au_sfx_manager_update = 0x8004C444; // type:func rom:0x27844 +au_sfx_update_mode_0 = 0x8004C578; // type:func rom:0x27978 +au_sfx_get_scaled_volume = 0x8004C844; // type:func rom:0x27C44 +au_sfx_update_mode_1 = 0x8004C884; // type:func rom:0x27C84 snd_set_voice_volume = 0x8004CD94; // type:func rom:0x28194 func_8004CDF8 = 0x8004CDF8; // type:func rom:0x281F8 -snd_SEFCmd_00_SetVolume = 0x8004CE70; // type:func rom:0x28270 -snd_SEFCmd_01_SetPan = 0x8004CEA4; // type:func rom:0x282A4 -snd_SEFCmd_02_SetInstrument = 0x8004CEC4; // type:func rom:0x282C4 -snd_SEFCmd_03_SetReverb = 0x8004CF0C; // type:func rom:0x2830C -snd_SEFCmd_04 = 0x8004CF3C; // type:func rom:0x2833C -snd_SEFCmd_05 = 0x8004D00C; // type:func rom:0x2840C -snd_SEFCmd_06 = 0x8004D038; // type:func rom:0x28438 -snd_SEFCmd_07 = 0x8004D050; // type:func rom:0x28450 -snd_SEFCmd_08 = 0x8004D07C; // type:func rom:0x2847C -snd_SEFCmd_09_StartLoop = 0x8004D114; // type:func rom:0x28514 -snd_SEFCmd_0A_EndLoop = 0x8004D130; // type:func rom:0x28530 -snd_SEFCmd_0B = 0x8004D15C; // type:func rom:0x2855C -snd_SEFCmd_0C = 0x8004D180; // type:func rom:0x28580 -snd_SEFCmd_0D = 0x8004D1B4; // type:func rom:0x285B4 -snd_SEFCmd_0E = 0x8004D23C; // type:func rom:0x2863C -snd_SEFCmd_0F = 0x8004D2B0; // type:func rom:0x286B0 -snd_SEFCmd_10_Jump = 0x8004D2E4; // type:func rom:0x286E4 -snd_SEFCmd_11_Restart = 0x8004D310; // type:func rom:0x28710 -snd_SEFCmd_12_NOP = 0x8004D31C; // type:func rom:0x2871C -snd_SEFCmd_13 = 0x8004D324; // type:func rom:0x28724 -snd_SEFCmd_14 = 0x8004D33C; // type:func rom:0x2873C -snd_SEFCmd_15 = 0x8004D354; // type:func rom:0x28754 -snd_SEFCmd_16 = 0x8004D36C; // type:func rom:0x2876C -snd_SEFCmd_17 = 0x8004D3A0; // type:func rom:0x287A0 -snd_SEFCmd_18 = 0x8004D3F8; // type:func rom:0x287F8 +au_SEFCmd_00_SetVolume = 0x8004CE70; // type:func rom:0x28270 +au_SEFCmd_01_SetPan = 0x8004CEA4; // type:func rom:0x282A4 +au_SEFCmd_02_SetInstrument = 0x8004CEC4; // type:func rom:0x282C4 +au_SEFCmd_03_SetReverb = 0x8004CF0C; // type:func rom:0x2830C +au_SEFCmd_04 = 0x8004CF3C; // type:func rom:0x2833C +au_SEFCmd_05 = 0x8004D00C; // type:func rom:0x2840C +au_SEFCmd_06 = 0x8004D038; // type:func rom:0x28438 +au_SEFCmd_07 = 0x8004D050; // type:func rom:0x28450 +au_SEFCmd_08 = 0x8004D07C; // type:func rom:0x2847C +au_SEFCmd_09_StartLoop = 0x8004D114; // type:func rom:0x28514 +au_SEFCmd_0A_EndLoop = 0x8004D130; // type:func rom:0x28530 +au_SEFCmd_0B = 0x8004D15C; // type:func rom:0x2855C +au_SEFCmd_0C = 0x8004D180; // type:func rom:0x28580 +au_SEFCmd_0D = 0x8004D1B4; // type:func rom:0x285B4 +au_SEFCmd_0E = 0x8004D23C; // type:func rom:0x2863C +au_SEFCmd_0F = 0x8004D2B0; // type:func rom:0x286B0 +au_SEFCmd_10_Jump = 0x8004D2E4; // type:func rom:0x286E4 +au_SEFCmd_11_Restart = 0x8004D310; // type:func rom:0x28710 +au_SEFCmd_12_NOP = 0x8004D31C; // type:func rom:0x2871C +au_SEFCmd_SetRandomPitch = 0x8004D324; // type:func rom:0x28724 +au_SEFCmd_SetRandomVelocity = 0x8004D33C; // type:func rom:0x2873C +au_SEFCmd_SetUnkA3 = 0x8004D354; // type:func rom:0x28754 +au_SEFCmd_16 = 0x8004D36C; // type:func rom:0x2876C +au_SEFCmd_17 = 0x8004D3A0; // type:func rom:0x287A0 +au_SEFCmd_18 = 0x8004D3F8; // type:func rom:0x287F8 func_8004D428 = 0x8004D428; // type:func rom:0x28828 func_8004D484 = 0x8004D484; // type:func rom:0x28884 -func_8004D4BC = 0x8004D4BC; // type:func rom:0x288BC -func_8004D510 = 0x8004D510; // type:func rom:0x28910 -snd_get_player_with_song_name = 0x8004D794; // type:func rom:0x28B94 -snd_dispatch_bgm_player_event = 0x8004D7E0; // type:func rom:0x28BE0 -func_8004DA0C = 0x8004DA0C; // type:func rom:0x28E0C -func_8004DA74 = 0x8004DA74; // type:func rom:0x28E74 -func_8004DAA8 = 0x8004DAA8; // type:func rom:0x28EA8 -snd_is_song_playing = 0x8004DAE0; // type:func rom:0x28EE0 +au_sfx_reset_players = 0x8004D4BC; // type:func rom:0x288BC +au_bgm_update_main = 0x8004D510; // type:func rom:0x28910 +au_bgm_get_player_with_song_name = 0x8004D794; // type:func rom:0x28B94 +au_bgm_dispatch_player_event = 0x8004D7E0; // type:func rom:0x28BE0 +au_bgm_stop_song = 0x8004DA0C; // type:func rom:0x28E0C +au_bgm_stop_all = 0x8004DA74; // type:func rom:0x28E74 +au_bgm_stop_player = 0x8004DAA8; // type:func rom:0x28EA8 +au_bgm_is_song_playing = 0x8004DAE0; // type:func rom:0x28EE0 func_8004DB28 = 0x8004DB28; // type:func rom:0x28F28 func_8004DB4C = 0x8004DB4C; // type:func rom:0x28F4C func_8004DC80 = 0x8004DC80; // type:func rom:0x29080 @@ -559,61 +559,61 @@ func_8004DCB8 = 0x8004DCB8; // type:func rom:0x290B8 func_8004DE2C = 0x8004DE2C; // type:func rom:0x2922C func_8004DFD4 = 0x8004DFD4; // type:func rom:0x293D4 func_8004E0F4 = 0x8004E0F4; // type:func rom:0x294F4 -func_8004E158 = 0x8004E158; // type:func rom:0x29558 -func_8004E344 = 0x8004E344; // type:func rom:0x29744 -snd_update_bgm_fade = 0x8004E3A4; // type:func rom:0x297A4 +au_bgm_player_init = 0x8004E158; // type:func rom:0x29558 +au_bgm_set_effect_indices = 0x8004E344; // type:func rom:0x29744 +au_bgm_update_fade = 0x8004E3A4; // type:func rom:0x297A4 func_8004E444 = 0x8004E444; // type:func rom:0x29844 func_8004E4B8 = 0x8004E4B8; // type:func rom:0x298B8 -snd_initialize_bgm_player = 0x8004E5D8; // type:func rom:0x299D8 +au_bgm_player_initialize = 0x8004E5D8; // type:func rom:0x299D8 func_8004E844 = 0x8004E844; // type:func rom:0x29C44 func_8004E880 = 0x8004E880; // type:func rom:0x29C80 -func_8004E904 = 0x8004E904; // type:func rom:0x29D04 -func_8004EA34 = 0x8004EA34; // type:func rom:0x29E34 -func_8004EAD4 = 0x8004EAD4; // type:func rom:0x29ED4 -func_8004EC04 = 0x8004EC04; // type:func rom:0x2A004 -func_8004EC68 = 0x8004EC68; // type:func rom:0x2A068 -snd_BGMCmd_E0_MasterTempo = 0x8004FBBC; // type:func rom:0x2AFBC +au_bgm_player_read_segment = 0x8004E904; // type:func rom:0x29D04 +au_bgm_end_segment_loop = 0x8004EA34; // type:func rom:0x29E34 +au_bgm_load_subsegment = 0x8004EAD4; // type:func rom:0x29ED4 +au_bgm_player_update_stop = 0x8004EC04; // type:func rom:0x2A004 +au_bgm_player_update_playing = 0x8004EC68; // type:func rom:0x2A068 +au_BGMCmd_E0_MasterTempo = 0x8004FBBC; // type:func rom:0x2AFBC snd_bpm_to_tempo = 0x8004FC08; // type:func rom:0x2B008 -snd_BGMCmd_E1_MasterVolume = 0x8004FCB4; // type:func rom:0x2B0B4 -snd_BGMCmd_E2_MasterTranspose = 0x8004FCE4; // type:func rom:0x2B0E4 -snd_BGMCmd_E3 = 0x8004FD04; // type:func rom:0x2B104 -snd_BGMCmd_E6_MasterEffect = 0x8004FD38; // type:func rom:0x2B138 -snd_BGMCmd_E4_MasterTempoFade = 0x8004FD94; // type:func rom:0x2B194 -snd_BGMCmd_E5_MasterVolumeFade = 0x8004FE10; // type:func rom:0x2B210 -snd_BGMCmd_E8_TrackOverridePatch = 0x8004FE6C; // type:func rom:0x2B26C -snd_BGMCmd_E9_SubTrackVolume = 0x8004FEB0; // type:func rom:0x2B2B0 -snd_BGMCmd_F6_TrackVolumeFade = 0x8004FED0; // type:func rom:0x2B2D0 -snd_BGMCmd_EA_SubTrackPan = 0x8004FF3C; // type:func rom:0x2B33C -snd_BGMCmd_EB_SubTrackReverb = 0x8004FF58; // type:func rom:0x2B358 -snd_BGMCmd_EC_SegTrackVolume = 0x8004FF70; // type:func rom:0x2B370 -snd_BGMCmd_ED_SubTrackCoarseTune = 0x8004FF88; // type:func rom:0x2B388 -snd_BGMCmd_EE_SubTrackFineTune = 0x8004FFA8; // type:func rom:0x2B3A8 -snd_BGMCmd_EF_SegTrackTune = 0x8004FFB4; // type:func rom:0x2B3B4 -snd_BGMCmd_F0_TrackTremolo = 0x8004FFC8; // type:func rom:0x2B3C8 -snd_BGMCmd_F1_TrackTremoloSpeed = 0x8004FFE4; // type:func rom:0x2B3E4 -snd_BGMCmd_F2_TrackTremoloTime = 0x8004FFF0; // type:func rom:0x2B3F0 -snd_BGMCmd_F3_TrackTremoloStop = 0x8004FFFC; // type:func rom:0x2B3FC -snd_BGMCmd_F4 = 0x80050004; // type:func rom:0x2B404 -snd_BGMCmd_F5_TrackVoice = 0x80050020; // type:func rom:0x2B420 -snd_BGMCmd_F7_SubTrackReverbType = 0x80050128; // type:func rom:0x2B528 -snd_BGMCmd_FD = 0x8005015C; // type:func rom:0x2B55C -snd_BGMCmd_FE = 0x80050184; // type:func rom:0x2B584 -snd_BGMCmd_FC_Jump = 0x800501A8; // type:func rom:0x2B5A8 -snd_BGMCmd_FF = 0x800502F0; // type:func rom:0x2B6F0 -snd_BGMCmd_NOP = 0x80050560; // type:func rom:0x2B960 -func_80050568 = 0x80050568; // type:func rom:0x2B968 +au_BGMCmd_E1_MasterVolume = 0x8004FCB4; // type:func rom:0x2B0B4 +au_BGMCmd_E2_MasterPitchShift = 0x8004FCE4; // type:func rom:0x2B0E4 +au_BGMCmd_E3 = 0x8004FD04; // type:func rom:0x2B104 +au_BGMCmd_E6_MasterEffect = 0x8004FD38; // type:func rom:0x2B138 +au_BGMCmd_E4_MasterTempoFade = 0x8004FD94; // type:func rom:0x2B194 +au_BGMCmd_E5_MasterVolumeFade = 0x8004FE10; // type:func rom:0x2B210 +au_BGMCmd_E8_TrackOverridePatch = 0x8004FE6C; // type:func rom:0x2B26C +au_BGMCmd_E9_SubTrackVolume = 0x8004FEB0; // type:func rom:0x2B2B0 +au_BGMCmd_F6_TrackVolumeFade = 0x8004FED0; // type:func rom:0x2B2D0 +au_BGMCmd_EA_SubTrackPan = 0x8004FF3C; // type:func rom:0x2B33C +au_BGMCmd_EB_SubTrackReverb = 0x8004FF58; // type:func rom:0x2B358 +au_BGMCmd_EC_SegTrackVolume = 0x8004FF70; // type:func rom:0x2B370 +au_BGMCmd_ED_SubTrackCoarseTune = 0x8004FF88; // type:func rom:0x2B388 +au_BGMCmd_EE_SubTrackFineTune = 0x8004FFA8; // type:func rom:0x2B3A8 +au_BGMCmd_EF_SegTrackTune = 0x8004FFB4; // type:func rom:0x2B3B4 +au_BGMCmd_F0_TrackTremolo = 0x8004FFC8; // type:func rom:0x2B3C8 +au_BGMCmd_F1_TrackTremoloSpeed = 0x8004FFE4; // type:func rom:0x2B3E4 +au_BGMCmd_F2_TrackTremoloTime = 0x8004FFF0; // type:func rom:0x2B3F0 +au_BGMCmd_F3_TrackTremoloStop = 0x8004FFFC; // type:func rom:0x2B3FC +au_BGMCmd_F4 = 0x80050004; // type:func rom:0x2B404 +au_BGMCmd_F5_TrackVoice = 0x80050020; // type:func rom:0x2B420 +au_BGMCmd_F7_SubTrackReverbType = 0x80050128; // type:func rom:0x2B528 +au_BGMCmd_FD_EventTrigger = 0x8005015C; // type:func rom:0x2B55C +au_BGMCmd_FE_Detour = 0x80050184; // type:func rom:0x2B584 +au_BGMCmd_FC_Jump = 0x800501A8; // type:func rom:0x2B5A8 +au_BGMCmd_FF = 0x800502F0; // type:func rom:0x2B6F0 +au_BGMCmd_NOP = 0x80050560; // type:func rom:0x2B960 +au_bgm_get_random_pan = 0x80050568; // type:func rom:0x2B968 func_800505E4 = 0x800505E4; // type:func rom:0x2B9E4 func_80050654 = 0x80050654; // type:func rom:0x2BA54 -func_8005068C = 0x8005068C; // type:func rom:0x2BA8C -func_800506C8 = 0x800506C8; // type:func rom:0x2BAC8 +au_bgm_get_random_reverb = 0x8005068C; // type:func rom:0x2BA8C +au_bgm_set_proximity_mix = 0x800506C8; // type:func rom:0x2BAC8 func_80050770 = 0x80050770; // type:func rom:0x2BB70 func_80050818 = 0x80050818; // type:func rom:0x2BC18 -func_8005083C = 0x8005083C; // type:func rom:0x2BC3C +au_bgm_change_track_volume = 0x8005083C; // type:func rom:0x2BC3C func_8005087C = 0x8005087C; // type:func rom:0x2BC7C func_80050888 = 0x80050888; // type:func rom:0x2BC88 func_80050900 = 0x80050900; // type:func rom:0x2BD00 func_80050970 = 0x80050970; // type:func rom:0x2BD70 -func_80050B90 = 0x80050B90; // type:func rom:0x2BF90 +au_mseq_manager_init = 0x80050B90; // type:func rom:0x2BF90 func_80050C30 = 0x80050C30; // type:func rom:0x2C030 func_80050C54 = 0x80050C54; // type:func rom:0x2C054 func_80050C64 = 0x80050C64; // type:func rom:0x2C064 @@ -623,14 +623,14 @@ func_80050E18 = 0x80050E18; // type:func rom:0x2C218 func_80050E84 = 0x80050E84; // type:func rom:0x2C284 func_80050EF0 = 0x80050EF0; // type:func rom:0x2C2F0 func_80050F64 = 0x80050F64; // type:func rom:0x2C364 -func_80050FD0 = 0x80050FD0; // type:func rom:0x2C3D0 +au_mseq_set_volume = 0x80050FD0; // type:func rom:0x2C3D0 func_80051050 = 0x80051050; // type:func rom:0x2C450 func_800510A4 = 0x800510A4; // type:func rom:0x2C4A4 -func_800511BC = 0x800511BC; // type:func rom:0x2C5BC +snd_ambient_manager_update = 0x800511BC; // type:func rom:0x2C5BC func_80051334 = 0x80051334; // type:func rom:0x2C734 func_80051434 = 0x80051434; // type:func rom:0x2C834 -func_800521D0 = 0x800521D0; // type:func rom:0x2D5D0 -func_800521E8 = 0x800521E8; // type:func rom:0x2D5E8 +au_mseq_read_next = 0x800521D0; // type:func rom:0x2D5D0 +au_mseq_player_stop = 0x800521E8; // type:func rom:0x2D5E8 func_800522A8 = 0x800522A8; // type:func rom:0x2D6A8 func_8005232C = 0x8005232C; // type:func rom:0x2D72C func_800525A0 = 0x800525A0; // type:func rom:0x2D9A0 @@ -642,51 +642,51 @@ func_80052BF8 = 0x80052BF8; // type:func rom:0x2DFF8 func_80052CFC = 0x80052CFC; // type:func rom:0x2E0FC func_80052E18 = 0x80052E18; // type:func rom:0x2E218 func_80052E30 = 0x80052E30; // type:func rom:0x2E230 -snd_load_audio_data = 0x80052E5C; // type:func rom:0x2E25C -snd_reset_instrument = 0x800532F4; // type:func rom:0x2E6F4 -func_80053370 = 0x80053370; // type:func rom:0x2E770 -func_800533A8 = 0x800533A8; // type:func rom:0x2E7A8 -snd_update_sequence_players = 0x800533D0; // type:func rom:0x2E7D0 -func_800535C0 = 0x800535C0; // type:func rom:0x2E9C0 +au_engine_init = 0x80052E5C; // type:func rom:0x2E25C +au_reset_instrument = 0x800532F4; // type:func rom:0x2E6F4 +au_reset_drum_entry = 0x80053370; // type:func rom:0x2E770 +au_reset_instrument_entry = 0x800533A8; // type:func rom:0x2E7A8 +au_update_clients_2 = 0x800533D0; // type:func rom:0x2E7D0 +snd_add_sfx_output = 0x800535C0; // type:func rom:0x2E9C0 func_80053654 = 0x80053654; // type:func rom:0x2EA54 func_80053888 = 0x80053888; // type:func rom:0x2EC88 -func_800538C4 = 0x800538C4; // type:func rom:0x2ECC4 -snd_tune_param_to_timescale = 0x800538F8; // type:func rom:0x2ECF8 -snd_initialize_bgm_fade = 0x80053974; // type:func rom:0x2ED74 -snd_clear_bgm_fade = 0x80053A18; // type:func rom:0x2EE18 -func_80053A28 = 0x80053A28; // type:func rom:0x2EE28 +au_reset_voice = 0x800538C4; // type:func rom:0x2ECC4 +au_compute_pitch_ratio = 0x800538F8; // type:func rom:0x2ECF8 +au_fade_init = 0x80053974; // type:func rom:0x2ED74 +au_fade_clear = 0x80053A18; // type:func rom:0x2EE18 +au_fade_update = 0x80053A28; // type:func rom:0x2EE28 func_80053A98 = 0x80053A98; // type:func rom:0x2EE98 func_80053AC8 = 0x80053AC8; // type:func rom:0x2EEC8 -func_80053AEC = 0x80053AEC; // type:func rom:0x2EEEC +au_fade_set_vol_scale = 0x80053AEC; // type:func rom:0x2EEEC func_80053B04 = 0x80053B04; // type:func rom:0x2EF04 func_80053BA8 = 0x80053BA8; // type:func rom:0x2EFA8 -func_80053BE8 = 0x80053BE8; // type:func rom:0x2EFE8 -snd_get_sequence_player_and_track = 0x80053C58; // type:func rom:0x2F058 -snd_get_sequence_player = 0x80053CB4; // type:func rom:0x2F0B4 -snd_load_song_files = 0x80053CF8; // type:func rom:0x2F0F8 +au_get_instrument = 0x80053BE8; // type:func rom:0x2EFE8 +au_get_bgm_player_and_file = 0x80053C58; // type:func rom:0x2F058 +au_get_bgm_player = 0x80053CB4; // type:func rom:0x2F0B4 +au_load_song_files = 0x80053CF8; // type:func rom:0x2F0F8 func_80053E58 = 0x80053E58; // type:func rom:0x2F258 func_80053F64 = 0x80053F64; // type:func rom:0x2F364 func_80053F80 = 0x80053F80; // type:func rom:0x2F380 func_80054248 = 0x80054248; // type:func rom:0x2F648 -snd_load_INIT = 0x800542BC; // type:func rom:0x2F6BC -snd_fetch_SBN_file = 0x8005447C; // type:func rom:0x2F87C -snd_load_PER = 0x800544F8; // type:func rom:0x2F8F8 -snd_load_PRG = 0x800545B4; // type:func rom:0x2F9B4 +au_load_INIT = 0x800542BC; // type:func rom:0x2F6BC +au_fetch_SBN_file = 0x8005447C; // type:func rom:0x2F87C +au_load_PER = 0x800544F8; // type:func rom:0x2F8F8 +au_load_PRG = 0x800545B4; // type:func rom:0x2F9B4 snd_load_BGM = 0x8005465C; // type:func rom:0x2FA5C -snd_get_BK_instruments = 0x80054744; // type:func rom:0x2FB44 +au_get_BK_instruments = 0x80054744; // type:func rom:0x2FB44 snd_load_BK_to_bank = 0x800547C8; // type:func rom:0x2FBC8 -snd_swizzle_BK_instruments = 0x800549F8; // type:func rom:0x2FDF8 +au_swizzle_BK_instruments = 0x800549F8; // type:func rom:0x2FDF8 func_80054AA0 = 0x80054AA0; // type:func rom:0x2FEA0 snd_load_BK = 0x80054C4C; // type:func rom:0x3004C func_80054C84 = 0x80054C84; // type:func rom:0x30084 func_80054CE0 = 0x80054CE0; // type:func rom:0x300E0 func_80054D74 = 0x80054D74; // type:func rom:0x30174 func_80054DA8 = 0x80054DA8; // type:func rom:0x301A8 -snd_read_rom = 0x80054E00; // type:func rom:0x30200 -snd_memset = 0x80054E90; // type:func rom:0x30290 -snd_bcopy = 0x80054F48; // type:func rom:0x30348 -snd_copy_words = 0x80054F74; // type:func rom:0x30374 -snd_load_BK_headers = 0x80054FC0; // type:func rom:0x303C0 +au_read_rom = 0x80054E00; // type:func rom:0x30200 +au_memset = 0x80054E90; // type:func rom:0x30290 +au_copy_bytes = 0x80054F48; // type:func rom:0x30348 +au_copy_words = 0x80054F74; // type:func rom:0x30374 +au_load_BK_headers = 0x80054FC0; // type:func rom:0x303C0 func_80055050 = 0x80055050; // type:func rom:0x30450 func_80055068 = 0x80055068; // type:func rom:0x30468 func_80055110 = 0x80055110; // type:func rom:0x30510 @@ -698,26 +698,26 @@ snd_adjust_sound_with_shift = 0x80055330; // type:func rom:0x30730 snd_stop_sound = 0x800553C0; // type:func rom:0x307C0 func_800553F4 = 0x800553F4; // type:func rom:0x307F4 snd_start_sound_raw = 0x80055408; // type:func rom:0x30808 -func_80055448 = 0x80055448; // type:func rom:0x30848 -func_80055464 = 0x80055464; // type:func rom:0x30864 -func_800554A4 = 0x800554A4; // type:func rom:0x308A4 -func_800554E8 = 0x800554E8; // type:func rom:0x308E8 -func_8005553C = 0x8005553C; // type:func rom:0x3093C -func_80055590 = 0x80055590; // type:func rom:0x30990 -func_800555E4 = 0x800555E4; // type:func rom:0x309E4 -func_80055618 = 0x80055618; // type:func rom:0x30A18 -func_8005566C = 0x8005566C; // type:func rom:0x30A6C -func_800556D0 = 0x800556D0; // type:func rom:0x30AD0 -func_80055718 = 0x80055718; // type:func rom:0x30B18 -func_80055760 = 0x80055760; // type:func rom:0x30B60 -func_800557CC = 0x800557CC; // type:func rom:0x30BCC -func_80055848 = 0x80055848; // type:func rom:0x30C48 -snd_load_song = 0x800558D4; // type:func rom:0x30CD4 -snd_start_song = 0x8005591C; // type:func rom:0x30D1C -snd_start_song_variation = 0x80055970; // type:func rom:0x30D70 -func_800559C4 = 0x800559C4; // type:func rom:0x30DC4 -func_800559E0 = 0x800559E0; // type:func rom:0x30DE0 -func_800559FC = 0x800559FC; // type:func rom:0x30DFC +snd_ambient_80055448 = 0x80055448; // type:func rom:0x30848 +snd_ambient_80055464 = 0x80055464; // type:func rom:0x30864 +snd_ambient_quick_fade_out = 0x800554A4; // type:func rom:0x308A4 +snd_ambient_slow_fade_out = 0x800554E8; // type:func rom:0x308E8 +snd_ambient_8005553C = 0x8005553C; // type:func rom:0x3093C +snd_ambient_80055590 = 0x80055590; // type:func rom:0x30990 +snd_ambient_800555E4 = 0x800555E4; // type:func rom:0x309E4 +snd_ambient_80055618 = 0x80055618; // type:func rom:0x30A18 +au_ambience_set_volume = 0x8005566C; // type:func rom:0x30A6C +au_ambience_disable = 0x800556D0; // type:func rom:0x30AD0 +au_ambience_enable = 0x80055718; // type:func rom:0x30B18 +snd_ambient_80055760 = 0x80055760; // type:func rom:0x30B60 +snd_ambient_800557CC = 0x800557CC; // type:func rom:0x30BCC +snd_ambient_80055848 = 0x80055848; // type:func rom:0x30C48 +au_song_load = 0x800558D4; // type:func rom:0x30CD4 +au_song_start = 0x8005591C; // type:func rom:0x30D1C +au_song_start_variation = 0x80055970; // type:func rom:0x30D70 +au_song_stop = 0x800559C4; // type:func rom:0x30DC4 +au_stop_songs = 0x800559E0; // type:func rom:0x30DE0 +au_song_is_playing = 0x800559FC; // type:func rom:0x30DFC snd_set_song_variation_fade = 0x80055A18; // type:func rom:0x30E18 snd_set_song_fade = 0x80055A6C; // type:func rom:0x30E6C snd_set_song_variation_fade_time = 0x80055ABC; // type:func rom:0x30EBC @@ -729,23 +729,23 @@ func_80055BF0 = 0x80055BF0; // type:func rom:0x30FF0 func_80055C2C = 0x80055C2C; // type:func rom:0x3102C func_80055C64 = 0x80055C64; // type:func rom:0x31064 func_80055C94 = 0x80055C94; // type:func rom:0x31094 -func_80055CC4 = 0x80055CC4; // type:func rom:0x310C4 -func_80055CE8 = 0x80055CE8; // type:func rom:0x310E8 +snd_set_song_variation = 0x80055CC4; // type:func rom:0x310C4 +snd_song_get_playing_info = 0x80055CE8; // type:func rom:0x310E8 func_80055D38 = 0x80055D38; // type:func rom:0x31138 func_80055D8C = 0x80055D8C; // type:func rom:0x3118C func_80055DDC = 0x80055DDC; // type:func rom:0x311DC -func_80055E48 = 0x80055E48; // type:func rom:0x31248 +snd_song_clear_track_volumes = 0x80055E48; // type:func rom:0x31248 func_80055EB4 = 0x80055EB4; // type:func rom:0x312B4 -func_80055F58 = 0x80055F58; // type:func rom:0x31358 -func_80055FD4 = 0x80055FD4; // type:func rom:0x313D4 -func_80055FF0 = 0x80055FF0; // type:func rom:0x313F0 -func_8005600C = 0x8005600C; // type:func rom:0x3140C -func_80056028 = 0x80056028; // type:func rom:0x31428 -func_80056044 = 0x80056044; // type:func rom:0x31444 -func_80056068 = 0x80056068; // type:func rom:0x31468 -func_8005608C = 0x8005608C; // type:func rom:0x3148C -func_800560A8 = 0x800560A8; // type:func rom:0x314A8 -func_800560BC = 0x800560BC; // type:func rom:0x314BC +snd_song_change_track_volume = 0x80055F58; // type:func rom:0x31358 +snd_song_set_track_vol_mute = 0x80055FD4; // type:func rom:0x313D4 +snd_song_set_track_vol_quiet = 0x80055FF0; // type:func rom:0x313F0 +snd_song_set_track_vol_full = 0x8005600C; // type:func rom:0x3140C +bgm_set_proximity_mix_far = 0x80056028; // type:func rom:0x31428 +bgm_set_proximity_mix_near = 0x80056044; // type:func rom:0x31444 +bgm_set_proximity_mix_full = 0x80056068; // type:func rom:0x31468 +bgm_poll_music_events = 0x8005608C; // type:func rom:0x3148C +bgm_flush_music_events = 0x800560A8; // type:func rom:0x314A8 +music_event_trigger = 0x800560BC; // type:func rom:0x314BC func_8005610C = 0x8005610C; // type:func rom:0x3150C func_80056144 = 0x80056144; // type:func rom:0x31544 audio_set_stereo = 0x8005615C; // type:func rom:0x3155C @@ -755,8 +755,8 @@ func_800561C4 = 0x800561C4; // type:func rom:0x315C4 func_800561E4 = 0x800561E4; // type:func rom:0x315E4 func_80056204 = 0x80056204; // type:func rom:0x31604 func_80056228 = 0x80056228; // type:func rom:0x31628 -func_80056250 = 0x80056250; // type:func rom:0x31650 -func_800565A4 = 0x800565A4; // type:func rom:0x319A4 +au_driver_init = 0x80056250; // type:func rom:0x31650 +au_driver_release = 0x800565A4; // type:func rom:0x319A4 alAudioFrame = 0x800565C0; // type:func rom:0x319C0 func_80056D34 = 0x80056D34; // type:func rom:0x32134 func_80056D44 = 0x80056D44; // type:func rom:0x32144 @@ -768,7 +768,7 @@ func_80056DCC = 0x80056DCC; // type:func rom:0x321CC func_80056E34 = 0x80056E34; // type:func rom:0x32234 func_80056EC0 = 0x80056EC0; // type:func rom:0x322C0 func_80056EE8 = 0x80056EE8; // type:func rom:0x322E8 -func_80056F78 = 0x80056F78; // type:func rom:0x32378 +au_pvoice_set_playing = 0x80056F78; // type:func rom:0x32378 func_80056FA4 = 0x80056FA4; // type:func rom:0x323A4 func_80057224 = 0x80057224; // type:func rom:0x32624 func_80057344 = 0x80057344; // type:func rom:0x32744 @@ -795,16 +795,16 @@ alHeapAlloc = 0x80057F90; // type:func rom:0x33390 alCopy = 0x80057FD8; // type:func rom:0x333D8 func_80058004 = 0x80058004; // type:func rom:0x33404 func_80058050 = 0x80058050; // type:func rom:0x33450 -func_80058B20 = 0x80058B20; // type:func rom:0x33F20 -func_80058C6C = 0x80058C6C; // type:func rom:0x3406C -func_80058DD0 = 0x80058DD0; // type:func rom:0x341D0 +_decodeChunk = 0x80058B20; // type:func rom:0x33F20 +_getRate = 0x80058C6C; // type:func rom:0x3406C +_init_lpfilter = 0x80058DD0; // type:func rom:0x341D0 func_80058E84 = 0x80058E84; // type:func rom:0x34284 func_80058F88 = 0x80058F88; // type:func rom:0x34388 func_80059008 = 0x80059008; // type:func rom:0x34408 func_8005904C = 0x8005904C; // type:func rom:0x3444C func_80059310 = 0x80059310; // type:func rom:0x34710 -func_800598A0 = 0x800598A0; // type:func rom:0x34CA0 -func_80059AB8 = 0x80059AB8; // type:func rom:0x34EB8 +au_fx_param_hdl = 0x800598A0; // type:func rom:0x34CA0 +_saveBuffer = 0x80059AB8; // type:func rom:0x34EB8 func_80059BD4 = 0x80059BD4; // type:func rom:0x34FD4 stub_effect_delegate = 0x80059C80; // type:func rom:0x35080 set_effect_pos_offset = 0x80059C88; // type:func rom:0x35088 @@ -1409,8 +1409,8 @@ nuAuPreNMIFunc = 0x80078174; // rom:0x53574 nuAuDmaNext = 0x80078178; // rom:0x53578 nuAuFrameCounter = 0x8007817C; // rom:0x5357C nuAuTaskStop = 0x80078180; // type:data rom:0x53580 -D_80078181 = 0x80078181; // type:data rom:0x53581 -D_80078DB0 = 0x80078DB0; // rom:0x541B0 +AuSynUseStereo = 0x80078181; // type:data rom:0x53581 +PreventBGMPlayerUpdate = 0x80078DB0; // rom:0x541B0 D_80078DB4 = 0x80078DB4; // rom:0x541B4 D_80078DB6 = 0x80078DB6; // type:data rom:0x541B6 D_80078DB8 = 0x80078DB8; // type:data rom:0x541B8 @@ -1421,20 +1421,20 @@ D_80078DDC = 0x80078DDC; // type:data rom:0x541DC D_80078DF8 = 0x80078DF8; // type:data rom:0x541F8 D_80078E14 = 0x80078E14; // type:data rom:0x54214 D_80078E30 = 0x80078E30; // type:data rom:0x54230 -D_80078E50 = 0x80078E50; // type:data rom:0x54250 -D_80078E54 = 0x80078E54; // type:data rom:0x54254 +gActiveSynDriverPtr = 0x80078E50; // type:data rom:0x54250 +gSynDriverPtr = 0x80078E54; // type:data rom:0x54254 D_80078E58 = 0x80078E58; // type:data rom:0x54258 D_80078E5A = 0x80078E5A; // type:data rom:0x5425A D_80078E5C = 0x80078E5C; // type:data rom:0x5425C -D_80078E60 = 0x80078E60; // type:data rom:0x54260 +AlCosineBlend = 0x80078E60; // type:data rom:0x54260 D_80078EE0 = 0x80078EE0; // type:func rom:0x542E0 -D_8007EFE0 = 0x8007EFE0; // type:data rom:0x5A3E0 +SMALLROOM_PARAMS_N = 0x8007EFE0; // type:data rom:0x5A3E0 D_8007F048 = 0x8007F048; // type:data rom:0x5A448 D_8007F158 = 0x8007F158; // type:data rom:0x5A558 D_8007F180 = 0x8007F180; // type:data rom:0x5A580 D_8007F1A8 = 0x8007F1A8; // type:data rom:0x5A5A8 D_8007F1D0 = 0x8007F1D0; // type:data rom:0x5A5D0 -D_8007F1F8 = 0x8007F1F8; // type:data rom:0x5A5F8 +AU_FX_CUSTOM_PARAMS = 0x8007F1F8; // type:data rom:0x5A5F8 D_8007F1FC = 0x8007F1FC; // type:data rom:0x5A5FC D_8007F200 = 0x8007F200; // type:data rom:0x5A600 D_8007F204 = 0x8007F204; // type:data rom:0x5A604 @@ -2551,22 +2551,22 @@ npc_raycast_down = 0x800DC500; // type:func rom:0x759B0 D_8009A5B4 = 0x8009A5B4; // type:data rom:0x759B4 D_8009A5B8 = 0x8009A5B8; // type:data rom:0x759B8 D_8009A5BC = 0x8009A5BC; // type:data rom:0x759BC -D_8009A5C0 = 0x8009A5C0; // type:data rom:0x759C0 +gSoundGlobals = 0x8009A5C0; // type:data rom:0x759C0 D_8009A5C4 = 0x8009A5C4; // type:data rom:0x759C4 __osBaseCounter = 0x8009A5C8; // type:data rom:0x759C8 -D_8009A5CC = 0x8009A5CC; // type:data rom:0x759CC +gBGMPlayerC = 0x8009A5CC; // type:data rom:0x759CC D_8009A5D0 = 0x8009A5D0; // type:data rom:0x759D0 -D_8009A5D4 = 0x8009A5D4; // type:data rom:0x759D4 +CurrentSefCmdHandler = 0x8009A5D4; // type:data rom:0x759D4 timeFreezeMode = 0x8009A5D8; // type:data rom:0x759D8 nuGfxZBuffer = 0x8009A5DC; // rom:0x759DC nuContDataLockKey = 0x8009A5E0; // type:data rom:0x759E0 __osViIntrCount = 0x8009A5E4; // type:data rom:0x759E4 -D_8009A5E8 = 0x8009A5E8; // type:data rom:0x759E8 +BeginSoundUpdateCallback = 0x8009A5E8; // type:data rom:0x759E8 D_8009A5EC = 0x8009A5EC; // type:data rom:0x759EC nuGfxCfbCounter = 0x8009A5F0; // type:data rom:0x759F0 mdl_currentModelTreeNodeInfo = 0x8009A5F4; // type:data rom:0x759F4 nuGfxDisplay = 0x8009A5F8; // rom:0x759F8 -D_8009A5FC = 0x8009A5FC; // type:data rom:0x759FC +gBGMPlayerB = 0x8009A5FC; // type:data rom:0x759FC gGameState = 0x8009A600; // rom:0x75A00 gNpcCount = 0x8009A604; // type:data rom:0x75A04 __osMaxControllers = 0x8009A606; // type:data rom:0x75A06 @@ -2578,13 +2578,13 @@ nuGfxTaskSpool = 0x8009A618; // rom:0x75A18 __osContLastCmd = 0x8009A61C; // type:data rom:0x75A1C D_8009A620 = 0x8009A620; // type:data rom:0x75A20 D_8009A624 = 0x8009A624; // type:data rom:0x75A24 -D_8009A628 = 0x8009A628; // type:data rom:0x75A28 +gAuAmbienceManager = 0x8009A628; // type:data rom:0x75A28 __osTimerCounter = 0x8009A62C; // type:data rom:0x75A2C D_8009A630 = 0x8009A630; // type:data rom:0x75A30 gCurrentCamID = 0x8009A634; // type:data rom:0x75A34 nuPiCartHandle = 0x8009A638; // rom:0x75A38 D_8009A63C = 0x8009A63C; // type:data rom:0x75A3C -D_8009A640 = 0x8009A640; // type:data rom:0x75A40 +gSoundManager = 0x8009A640; // type:data rom:0x75A40 D_8009A644 = 0x8009A644; // type:data rom:0x75A44 nuGfxCfb_ptr = 0x8009A64C; // type:data rom:0x75A4C gOverrideFlags = 0x8009A650; // type:data rom:0x75A50 @@ -2592,7 +2592,7 @@ D_8009A654 = 0x8009A654; // type:data rom:0x75A54 nuGfxCfb = 0x8009A658; // type:data rom:0x75A58 D_8009A65C = 0x8009A65C; // type:data rom:0x75A5C D_8009A660 = 0x8009A660; // type:data rom:0x75A60 -D_8009A664 = 0x8009A664; // type:data rom:0x75A64 +gBGMPlayerA = 0x8009A664; // type:data rom:0x75A64 D_8009A668 = 0x8009A668; // type:data rom:0x75A68 gMasterGfxPos = 0x8009A66C; // rom:0x75A6C D_8009A670 = 0x8009A670; // type:data rom:0x75A70 @@ -2810,7 +2810,7 @@ phys_update_interact_collider = 0x800E5150; // type:func rom:0x7E600 phys_check_interactable_collision = 0x800E5174; // type:func rom:0x7E624 phys_can_player_interact = 0x800E52F8; // type:func rom:0x7E7A8 func_800E5348 = 0x800E5348; // type:func rom:0x7E7F8 -D_800A3510 = 0x800A3510; // type:data rom:0x7E910 +AlCmdListBuffers = 0x800A3510; // type:data rom:0x7E910 D_800A3514 = 0x800A3514; // type:data rom:0x7E914 player_get_camera_facing_angle = 0x800E546C; // type:func rom:0x7E91C D_800A3520 = 0x800A3520; // type:data rom:0x7E920 @@ -2819,8 +2819,8 @@ phys_save_ground_pos = 0x800E54E0; // type:func rom:0x7E990 func_800E5520 = 0x800E5520; // type:func rom:0x7E9D0 phys_adjust_cam_on_landing = 0x800E5530; // type:func rom:0x7E9E0 D_800A3628 = 0x800A3628; // type:data rom:0x7EA28 -D_800A3634 = 0x800A3634; // type:data rom:0x7EA34 -D_800A3638 = 0x800A3638; // type:data rom:0x7EA38 +AlFrameSize = 0x800A3634; // type:data rom:0x7EA34 +AlMinFrameSize = 0x800A3638; // type:data rom:0x7EA38 D_800A363C = 0x800A363C; // type:data rom:0x7EA3C nuAuDmaMesgQ = 0x800A3640; // type:data rom:0x7EA40 D_800A3644 = 0x800A3644; // type:data rom:0x7EA44 @@ -2837,7 +2837,7 @@ nuAuDmaBufList = 0x800A3BE0; // rom:0x7EFE0 phys_peach_update = 0x800E5C78; // type:func rom:0x7F128 set_action_state = 0x800E5DA4; // type:func rom:0x7F254 D_800A3FC8 = 0x800A3FC8; // type:data rom:0x7F3C8 -D_800A3FD0 = 0x800A3FD0; // type:data rom:0x7F3D0 +CurrentSeqCmdHandler = 0x800A3FD0; // type:data rom:0x7F3D0 D_800A3FD4 = 0x800A3FD4; // type:data rom:0x7F3D4 D_800A3FE0 = 0x800A3FE0; // type:data rom:0x7F3E0 D_800A3FE4 = 0x800A3FE4; // type:data rom:0x7F3E4 @@ -3221,7 +3221,7 @@ ui_ultra_hammer_pal = 0x800FAEA0; // rom:0x94350 ui_ultra_hammer_disabled_pal = 0x800FAEC0; // rom:0x94370 ui_boots_png = 0x800FAEE0; // rom:0x94390 ui_boots_pal = 0x800FB0E0; // rom:0x94590 -D_800B91A0 = 0x800B91A0; // type:data rom:0x945A0 +auSynDriver = 0x800B91A0; // type:data rom:0x945A0 ui_boots_disabled_pal = 0x800FB100; // rom:0x945B0 ui_super_boots_png = 0x800FB120; // rom:0x945D0 ui_super_boots_pal = 0x800FB320; // rom:0x947D0 @@ -4123,7 +4123,7 @@ render_animated_model = 0x8011F304; // type:func rom:0xB5A04 render_animated_model_with_vertices = 0x8011F3E8; // type:func rom:0xB5AE8 appendGfx_animator = 0x8011F4D4; // type:func rom:0xB5BD4 D_800DAAA8 = 0x800DAAA8; // type:data rom:0xB5EA8 -D_800DAAB8 = 0x800DAAB8; // type:data rom:0xB5EB8 +AlNumFields = 0x800DAAB8; // type:data rom:0xB5EB8 D_800DAABD = 0x800DAABD; // type:data rom:0xB5EBD D_800DAAC0 = 0x800DAAC0; // type:data rom:0xB5EC0 nuContPfs = 0x800DAAD8; // rom:0xB5ED8 @@ -4485,10 +4485,10 @@ bgm_update_music_settings = 0x8014A548; // type:func rom:0xE0C48 _bgm_set_song = 0x8014A7E0; // type:func rom:0xE0EE0 bgm_set_song = 0x8014A918; // type:func rom:0xE1018 func_8014A964 = 0x8014A964; // type:func rom:0xE1064 -func_8014AA54 = 0x8014AA54; // type:func rom:0xE1154 -func_8014AB0C = 0x8014AB0C; // type:func rom:0xE120C -func_8014AB60 = 0x8014AB60; // type:func rom:0xE1260 -func_8014ABB4 = 0x8014ABB4; // type:func rom:0xE12B4 +bgm_adjust_proximity = 0x8014AA54; // type:func rom:0xE1154 +bgm_set_track_volumes = 0x8014AB0C; // type:func rom:0xE120C +bgm_clear_track_volumes = 0x8014AB60; // type:func rom:0xE1260 +bgm_set_variation = 0x8014ABB4; // type:func rom:0xE12B4 bgm_init_music_players = 0x8014AC08; // type:func rom:0xE1308 bgm_quiet_max_volume = 0x8014AC5C; // type:func rom:0xE135C bgm_reset_max_volume = 0x8014AC70; // type:func rom:0xE1370 @@ -4665,7 +4665,7 @@ gSunnyFlowerFieldsBg = 0x8014F128; // type:data rom:0xE5828 D_8014F12F = 0x8014F12F; // type:data rom:0xE582F D_8014F130 = 0x8014F130; // type:data rom:0xE5830 D_8014F134 = 0x8014F134; // type:data rom:0xE5834 -D_8014F140 = 0x8014F140; // type:data rom:0xE5840 +AmbientSound = 0x8014F140; // type:data rom:0xE5840 gWindowStyles = 0x8014F150; // type:data rom:0xE5850 gSimpleWindowUpdates = 0x8014F250; // type:data rom:0xE5950 gWindowAppearScales = 0x8014F298; // type:data rom:0xE5998 @@ -4673,7 +4673,7 @@ gWindowAppearFlags = 0x8014F2A0; // type:data rom:0xE59A0 gWindowDisappearScales = 0x8014F2A8; // type:data rom:0xE59A8 gWindowDisappearFlags = 0x8014F2B4; // type:data rom:0xE59B4 gWindowGroups = 0x8014F2C0; // type:data rom:0xE59C0 -D_8014F2D0 = 0x8014F2D0; // type:data rom:0xE59D0 +LoopingSounds = 0x8014F2D0; // type:data rom:0xE59D0 D_8014F48C = 0x8014F48C; // type:data rom:0xE5B8C D_8014F494 = 0x8014F494; // type:data rom:0xE5B94 D_8014F49C = 0x8014F49C; // type:data rom:0xE5B9C @@ -4708,11 +4708,11 @@ D_8014F584 = 0x8014F584; // type:data rom:0xE5C84 D_8014F58C = 0x8014F58C; // type:data rom:0xE5C8C D_8014F594 = 0x8014F594; // type:data rom:0xE5C94 D_8014F59C = 0x8014F59C; // type:data rom:0xE5C9C -D_8014F5A4 = 0x8014F5A4; // type:data rom:0xE5CA4 -D_8014F6B4 = 0x8014F6B4; // type:data rom:0xE5DB4 +AlternatingSounds = 0x8014F5A4; // type:data rom:0xE5CA4 +OpenCloseSounds = 0x8014F6B4; // type:data rom:0xE5DB4 D_8014F6F0 = 0x8014F6F0; // type:data rom:0xE5DF0 -gSongsUsingVariationFlag = 0x8014F720; // rom:0xE5E20 -D_8014F738 = 0x8014F738; // rom:0xE5E38 +SongsUsingVariationFlag = 0x8014F720; // rom:0xE5E20 +NextVolumeUpdateTimer = 0x8014F738; // rom:0xE5E38 D_8014F940 = 0x8014F940; // type:data rom:0xE6040 D_8014F948 = 0x8014F948; // type:data rom:0xE6048 D_8014F950 = 0x8014F950; // type:data rom:0xE6050 @@ -5256,13 +5256,12 @@ PanToTarget = 0x802CB79C; // type:func rom:0xF014C D_80159AD0 = 0x80159AD0; // type:data rom:0xF01D0 D_80159AD4 = 0x80159AD4; // type:data rom:0xF01D4 D_80159AD8 = 0x80159AD8; // type:data rom:0xF01D8 -gMusicUnkVolume = 0x80159AE0; // rom:0xF01E0 -gMusicTargetVolume = 0x80159AE2; // rom:0xF01E2 -gMusicUnkVolume2 = 0x80159AE4; // rom:0xF01E4 -gMusicCurrentVolume = 0x80159AE6; // rom:0xF01E6 +MusicDefaultVolume = 0x80159AE0; // rom:0xF01E0 +MusicTargetVolume = 0x80159AE2; // rom:0xF01E2 +MusicMaxVolume = 0x80159AE4; // rom:0xF01E4 +MusicCurrentVolume = 0x80159AE6; // rom:0xF01E6 D_80159AE8 = 0x80159AE8; // type:data rom:0xF01E8 gMusicSettings = 0x80159AF0; // rom:0xF01F0 -D_80159B08 = 0x80159B08; // type:data rom:0xF0208 UseSettingsFrom = 0x802CB860; // type:func rom:0xF0210 D_80159B50 = 0x80159B50; // type:data rom:0xF0250 LoadSettings = 0x802CB9F8; // type:func rom:0xF03A8 @@ -5304,7 +5303,7 @@ GetCamPosB = 0x802CC184; // type:func rom:0xF0B34 GetCamPosC = 0x802CC214; // type:func rom:0xF0BC4 gCollisionStatus = 0x8015A550; // rom:0xF0C50 size:0x28 GetCamPosition = 0x802CC2A4; // type:func rom:0xF0C54 -D_8015A578 = 0x8015A578; // type:data rom:0xF0C78 +gCurrentHiddenPanels = 0x8015A578; // type:data rom:0xF0C78 D_8015A57A = 0x8015A57A; // type:data rom:0xF0C7A D_8015A57C = 0x8015A57C; // type:data rom:0xF0C7C mdl_textureHandles = 0x8015A590; // type:data rom:0xF0C90 @@ -5353,7 +5352,7 @@ SetNpcAnimationSpeed = 0x802CE1C0; // type:func rom:0xF2B70 NpcMoveTo = 0x802CE22C; // type:func rom:0xF2BDC _npc_jump_to = 0x802CE434; // type:func rom:0xF2DE4 D_8015C790 = 0x8015C790; // type:data rom:0xF2E90 -D_8015C7C0 = 0x8015C7C0; // type:data rom:0xF2EC0 +AmbientSoundData = 0x8015C7C0; // type:data rom:0xF2EC0 CreateEntityVarArgBuffer = 0x8015C7D0; // type:data rom:0xF2ED0 CreateEntityVarArgBuffer1 = 0x8015C7D4; // type:data rom:0xF2ED4 CreateEntityVarArgBuffer2 = 0x8015C7D8; // type:data rom:0xF2ED8 @@ -5522,14 +5521,14 @@ ShowStatusMenu = 0x802D59DC; // type:func rom:0xFA38C SetGameMode = 0x802D5A28; // type:func rom:0xFA3D8 ClampAngleInt = 0x802D5A58; // type:func rom:0xFA408 ClampAngleFloat = 0x802D5AB4; // type:func rom:0xFA464 -func_802D5B10 = 0x802D5B10; // type:func rom:0xFA4C0 -func_802D5C70 = 0x802D5C70; // type:func rom:0xFA620 +PollMusicEvents = 0x802D5B10; // type:func rom:0xFA4C0 +RegisterMusicEvents = 0x802D5C70; // type:func rom:0xFA620 FadeOutMusic = 0x802D5CE0; // type:func rom:0xFA690 SetMusicTrack = 0x802D5D4C; // type:func rom:0xFA6FC FadeInMusic = 0x802D5DF4; // type:func rom:0xFA7A4 func_802D5EE0 = 0x802D5EE0; // type:func rom:0xFA890 -func_802D5F28 = 0x802D5F28; // type:func rom:0xFA8D8 -func_802D5FA4 = 0x802D5FA4; // type:func rom:0xFA954 +AdjustMusicProximityMix = 0x802D5F28; // type:func rom:0xFA8D8 +SetMusicTrackVolumes = 0x802D5FA4; // type:func rom:0xFA954 PopSong = 0x802D5FD8; // type:func rom:0xFA988 PushSong = 0x802D5FF8; // type:func rom:0xFA9A8 PopBattleSong = 0x802D6050; // type:func rom:0xFAA00 @@ -5604,7 +5603,7 @@ ShakeCam1 = 0x802D9CB0; // rom:0xFE660 ShakeCamX = 0x802D9CE8; // rom:0xFE698 playerNpc = 0x802D9D20; // rom:0xFE6D0 D_802D9D30 = 0x802D9D30; // type:data rom:0xFE6E0 -D_802D9D34 = 0x802D9D34; // type:data rom:0xFE6E4 +EVS_MusicEventMonitor = 0x802D9D34; // type:data rom:0xFE6E4 EVS_UpdateMotionBlurParams = 0x802D9D50; // rom:0xFE700 D_802D9D70 = 0x802D9D70; // type:data rom:0xFE720 D_802D9D71 = 0x802D9D71; // type:data rom:0xFE721 @@ -14993,7 +14992,7 @@ func_802421D0_7ECEE0 = 0x802421D0; // type:func rom:0x7ECEE0 func_80242224_7ECF34 = 0x80242224; // type:func rom:0x7ECF34 func_80242250_7ECF60 = 0x80242250; // type:func rom:0x7ECF60 func_8024228C_7ECF9C = 0x8024228C; // type:func rom:0x7ECF9C -mac_00_UnkMusicFunc = 0x802422C0; // type:func rom:0x7ECFD0 +mac_00_MonitorMusicProximityTrigger = 0x802422C0; // type:func rom:0x7ECFD0 func_802423F0_7ED100 = 0x802423F0; // type:func rom:0x7ED100 mac_00_PatrolAI_MoveInit = 0x80242570; // type:func rom:0x7ED280 mac_00_PatrolAI_Move = 0x802426C8; // type:func rom:0x7ED3D8 @@ -15040,7 +15039,7 @@ func_802405E8_800E68 = 0x802405E8; // type:func rom:0x800E68 func_80240628_800EA8 = 0x80240628; // type:func rom:0x800EA8 func_80240E80_801700 = 0x80240E80; // type:func rom:0x801700 func_80240ED8_801758 = 0x80240ED8; // type:func rom:0x801758 -mac_01_UnkMusicFunc = 0x80240F50; // type:func rom:0x8017D0 +mac_01_MonitorMusicProximityTrigger = 0x80240F50; // type:func rom:0x8017D0 dup_mac_01_PatrolAI_MoveInit = 0x80241080; // type:func rom:0x801900 mac_01_PatrolAI_Move = 0x802411D8; // type:func rom:0x801A58 dup_mac_01_PatrolAI_LoiterInit = 0x80241480; // type:func rom:0x801D00 @@ -15233,7 +15232,7 @@ mac_02_LetterDelivery_Init = 0x80243104; // type:func rom:0x8263C4 mac_02_LetterDelivery_CalcLetterPos = 0x802431F4; // type:func rom:0x8264B4 mac_02_LetterDelivery_SaveNpcAnim = 0x80243380; // type:func rom:0x826640 mac_02_LetterDelivery_RestoreNpcAnim = 0x802433C4; // type:func rom:0x826684 -mac_02_UnkMusicFunc = 0x802433F0; // type:func rom:0x8266B0 +mac_02_MonitorMusicProximityTrigger = 0x802433F0; // type:func rom:0x8266B0 mac_02_Quizmo_varStash = 0x80246150; // type:data rom:0x829410 mac_02_Quizmo_Answers = 0x802461B4; // type:data rom:0x829474 D_802461F4_8294B4 = 0x802461F4; // type:data rom:0x8294B4 @@ -15372,7 +15371,7 @@ func_80241CEC_8448BC = 0x80241CEC; // type:func rom:0x8448BC func_80241D30_844900 = 0x80241D30; // type:func rom:0x844900 func_80241DAC_84497C = 0x80241DAC; // type:func rom:0x84497C mac_04_SetEntityFlags100000 = 0x80241EB0; // type:func rom:0x844A80 -mac_04_UnkMusicFunc = 0x80241EF0; // type:func rom:0x844AC0 +mac_04_MonitorMusicProximityTrigger = 0x80241EF0; // type:func rom:0x844AC0 mac_04_Quizmo_varStash = 0x80243FE8; // type:data rom:0x846BB8 mac_04_Quizmo_Answers = 0x8024404C; // type:data rom:0x846C1C D_8024408C_846C5C = 0x8024408C; // type:data rom:0x846C5C @@ -16536,7 +16535,7 @@ sbk_01_npcSettings_802403CC = 0x802403CC; // type:data rom:0x929E5C sbk_01_npcGroup_802403F8 = 0x802403F8; // type:data rom:0x929E88 sbk_01_npcGroup_802405E8 = 0x802405E8; // type:data rom:0x92A078 sbk_01_npcGroupList_802407D8 = 0x802407D8; // type:data rom:0x92A268 -func_80240000_92A2B0 = 0x80240000; // type:func rom:0x92A2B0 +sbk_02_GetTattle = 0x80240000; // type:func rom:0x92A2B0 sbk_02_UnkFunc27 = 0x80240040; // type:func rom:0x92A2F0 sbk_02_UnkFunc26 = 0x80240164; // type:func rom:0x92A414 func_80240338_92A5E8 = 0x80240338; // type:func rom:0x92A5E8 @@ -18211,9 +18210,9 @@ hos_06_LetterDelivery_Init = 0x8024077C; // type:func rom:0xA39C5C hos_06_LetterDelivery_CalcLetterPos = 0x8024086C; // type:func rom:0xA39D4C hos_06_LetterDelivery_SaveNpcAnim = 0x802409F8; // type:func rom:0xA39ED8 hos_06_LetterDelivery_RestoreNpcAnim = 0x80240A3C; // type:func rom:0xA39F1C -func_80240A68_A39F48 = 0x80240A68; // type:func rom:0xA39F48 -func_80240A94_A39F74 = 0x80240A94; // type:func rom:0xA39F74 -func_80240AD0_A39FB0 = 0x80240AD0; // type:func rom:0xA39FB0 +Merlow_GetPlayerStarPieces = 0x80240A68; // type:func rom:0xA39F48 +Merlow_SetBadgePurchased = 0x80240A94; // type:func rom:0xA39F74 +Merlow_ShopBadgesPopup = 0x80240AD0; // type:func rom:0xA39FB0 func_80240D30_A3A210 = 0x80240D30; // type:func rom:0xA3A210 hos_06_GetNpcCollisionHeight = 0x80240D50; // type:func rom:0xA3A230 hos_06_AddPlayerHandsOffset = 0x80240DAC; // type:func rom:0xA3A28C @@ -19863,8 +19862,8 @@ func_80240E58_BC8CB8 = 0x80240E58; // type:func rom:0xBC8CB8 obk_04_varStash = 0x80243A10; // type:data rom:0xBCB870 obk_05_UnsetCamera0MoveFlag1 = 0x80240000; // type:func rom:0xBCD060 obk_05_SetCamera0MoveFlag1 = 0x8024001C; // type:func rom:0xBCD07C -func_80240038_BCD098 = 0x80240038; // type:func rom:0xBCD098 -func_80240050_BCD0B0 = 0x80240050; // type:func rom:0xBCD0B0 +obk_05_RetroJar_AwaitPlayerEntry = 0x80240038; // type:func rom:0xBCD098 +obk_05_RockingChair_UpdatePhysics = 0x80240050; // type:func rom:0xBCD0B0 func_80240770_BCD7D0 = 0x80240770; // type:func rom:0xBCD7D0 func_802407A0_BCD800 = 0x802407A0; // type:func rom:0xBCD800 func_802407AC_BCD80C = 0x802407AC; // type:func rom:0xBCD80C @@ -24831,24 +24830,24 @@ D_802479B8_DF6858 = 0x802479B8; // type:data rom:0xDF6858 D_802479C0_DF6860 = 0x802479C0; // type:data rom:0xDF6860 D_802479C8_DF6868 = 0x802479C8; // type:data rom:0xDF6868 func_80240000_DF6A00 = 0x80240000; // type:func rom:0xDF6A00 -func_80240020_DF6A20 = 0x80240020; // type:func rom:0xDF6A20 -func_80240270_DF6C70 = 0x80240270; // type:func rom:0xDF6C70 -func_80240540_DF6F40 = 0x80240540; // type:func rom:0xDF6F40 -func_8024081C_DF721C = 0x8024081C; // type:func rom:0xDF721C -func_80240AE8_DF74E8 = 0x80240AE8; // type:func rom:0xDF74E8 -func_80240EB0_DF78B0 = 0x80240EB0; // type:func rom:0xDF78B0 -func_80240FEC_DF79EC = 0x80240FEC; // type:func rom:0xDF79EC -func_802411CC_DF7BCC = 0x802411CC; // type:func rom:0xDF7BCC -func_80241294_DF7C94 = 0x80241294; // type:func rom:0xDF7C94 -func_802414CC_DF7ECC = 0x802414CC; // type:func rom:0xDF7ECC -func_80241768_DF8168 = 0x80241768; // type:func rom:0xDF8168 -func_802419F8_DF83F8 = 0x802419F8; // type:func rom:0xDF83F8 -func_80241B34_DF8534 = 0x80241B34; // type:func rom:0xDF8534 -func_802421D8_DF8BD8 = 0x802421D8; // type:func rom:0xDF8BD8 -func_80242358_DF8D58 = 0x80242358; // type:func rom:0xDF8D58 -func_80242500_DF8F00 = 0x80242500; // type:func rom:0xDF8F00 -func_80242558_DF8F58 = 0x80242558; // type:func rom:0xDF8F58 -func_80242580_DF8F80 = 0x80242580; // type:func rom:0xDF8F80 +end_00_CharAnim_FadeIn_0 = 0x80240020; // type:func rom:0xDF6A20 +end_00_CharAnim_FadeIn_1 = 0x80240270; // type:func rom:0xDF6C70 +end_00_CharAnim_FadeIn_2 = 0x80240540; // type:func rom:0xDF6F40 +end_00_CharAnim_FadeIn_3 = 0x8024081C; // type:func rom:0xDF721C +end_00_CharAnim_FadeIn_4 = 0x80240AE8; // type:func rom:0xDF74E8 +end_00_CharAnim_FadeIn_5 = 0x80240EB0; // type:func rom:0xDF78B0 +end_00_CharAnim_HoldClearFold = 0x80240FEC; // type:func rom:0xDF79EC +end_00_CharAnim_Hold = 0x802411CC; // type:func rom:0xDF7BCC +end_00_CharAnim_FadeOut_0 = 0x80241294; // type:func rom:0xDF7C94 +end_00_CharAnim_FadeOut_1 = 0x802414CC; // type:func rom:0xDF7ECC +end_00_CharAnim_FadeOut_2 = 0x80241768; // type:func rom:0xDF8168 +end_00_CharAnim_FadeOut_3 = 0x802419F8; // type:func rom:0xDF83F8 +end_00_credits_update_line = 0x80241B34; // type:func rom:0xDF8534 +end_00_credits_worker_render = 0x802421D8; // type:func rom:0xDF8BD8 +end_00_credits_load_message = 0x80242358; // type:func rom:0xDF8D58 +end_00_init_credits = 0x80242500; // type:func rom:0xDF8F00 +end_00_InitCredits = 0x80242558; // type:func rom:0xDF8F58 +end_00_ShowCreditList = 0x80242580; // type:func rom:0xDF8F80 func_80242680_DF9080 = 0x80242680; // type:func rom:0xDF9080 func_80242744_DF9144 = 0x80242744; // type:func rom:0xDF9144 func_802427A4_DF91A4 = 0x802427A4; // type:func rom:0xDF91A4 @@ -24859,33 +24858,33 @@ end_00_PlayFX3D = 0x80242900; // type:func rom:0xDF9300 func_80242A30_DF9430 = 0x80242A30; // type:func rom:0xDF9430 func_80242AD4_DF94D4 = 0x80242AD4; // type:func rom:0xDF94D4 func_80242B10_DF9510 = 0x80242B10; // type:func rom:0xDF9510 -D_80242C70_DF9670 = 0x80242C70; // type:data rom:0xDF9670 -D_80242CD8_DF96D8 = 0x80242CD8; // type:data rom:0xDF96D8 -D_80242D60_DF9760 = 0x80242D60; // type:data rom:0xDF9760 -D_80242D70_DF9770 = 0x80242D70; // type:data rom:0xDF9770 -D_80244D74_DFB774 = 0x80244D74; // type:data rom:0xDFB774 +end_00_Font4Patterns = 0x80242C70; // type:data rom:0xDF9670 +end_00_Font3Patterns = 0x80242CD8; // type:data rom:0xDF96D8 +end_00_CreditsViewport = 0x80242D60; // type:data rom:0xDF9760 +end_00_CreditsBufferIndex = 0x80242D70; // type:data rom:0xDF9770 +end_00_ParadeNpcsTable = 0x80244D74; // type:data rom:0xDFB774 D_80249D60_E00760 = 0x80249D60; // type:data rom:0xE00760 D_8024E8C0_E052C0 = 0x8024E8C0; // type:data rom:0xE052C0 func_80240000_E05360 = 0x80240000; // type:func rom:0xE05360 func_80240010_E05370 = 0x80240010; // type:func rom:0xE05370 -func_80240030_E05390 = 0x80240030; // type:func rom:0xE05390 -func_80240280_E055E0 = 0x80240280; // type:func rom:0xE055E0 -func_80240550_E058B0 = 0x80240550; // type:func rom:0xE058B0 -func_8024082C_E05B8C = 0x8024082C; // type:func rom:0xE05B8C -func_80240AF8_E05E58 = 0x80240AF8; // type:func rom:0xE05E58 -func_80240EC0_E06220 = 0x80240EC0; // type:func rom:0xE06220 -func_80240FFC_E0635C = 0x80240FFC; // type:func rom:0xE0635C -func_802411DC_E0653C = 0x802411DC; // type:func rom:0xE0653C -func_802412A4_E06604 = 0x802412A4; // type:func rom:0xE06604 -func_802414DC_E0683C = 0x802414DC; // type:func rom:0xE0683C -func_80241778_E06AD8 = 0x80241778; // type:func rom:0xE06AD8 -func_80241A08_E06D68 = 0x80241A08; // type:func rom:0xE06D68 -func_80241B44_E06EA4 = 0x80241B44; // type:func rom:0xE06EA4 -func_802421E8_E07548 = 0x802421E8; // type:func rom:0xE07548 -func_80242368_E076C8 = 0x80242368; // type:func rom:0xE076C8 -func_80242510_E07870 = 0x80242510; // type:func rom:0xE07870 -func_80242568_E078C8 = 0x80242568; // type:func rom:0xE078C8 -func_80242590_E078F0 = 0x80242590; // type:func rom:0xE078F0 +end_01_CharAnim_FadeIn_0 = 0x80240030; // type:func rom:0xE05390 +end_01_CharAnim_FadeIn_1 = 0x80240280; // type:func rom:0xE055E0 +end_01_CharAnim_FadeIn_2 = 0x80240550; // type:func rom:0xE058B0 +end_01_CharAnim_FadeIn_3 = 0x8024082C; // type:func rom:0xE05B8C +end_01_CharAnim_FadeIn_4 = 0x80240AF8; // type:func rom:0xE05E58 +end_01_CharAnim_FadeIn_5 = 0x80240EC0; // type:func rom:0xE06220 +end_01_CharAnim_HoldClearFold = 0x80240FFC; // type:func rom:0xE0635C +end_01_CharAnim_Hold = 0x802411DC; // type:func rom:0xE0653C +end_01_CharAnim_FadeOut_0 = 0x802412A4; // type:func rom:0xE06604 +end_01_CharAnim_FadeOut_1 = 0x802414DC; // type:func rom:0xE0683C +end_01_CharAnim_FadeOut_2 = 0x80241778; // type:func rom:0xE06AD8 +end_01_CharAnim_FadeOut_3 = 0x80241A08; // type:func rom:0xE06D68 +end_01_credits_update_line = 0x80241B44; // type:func rom:0xE06EA4 +end_01_credits_worker_render = 0x802421E8; // type:func rom:0xE07548 +end_01_credits_load_message = 0x80242368; // type:func rom:0xE076C8 +end_01_init_credits = 0x80242510; // type:func rom:0xE07870 +end_01_InitCredits = 0x80242568; // type:func rom:0xE078C8 +end_01_ShowCreditList = 0x80242590; // type:func rom:0xE078F0 func_80242690_E079F0 = 0x80242690; // type:func rom:0xE079F0 func_80242754_E07AB4 = 0x80242754; // type:func rom:0xE07AB4 func_802427B4_E07B14 = 0x802427B4; // type:func rom:0xE07B14 @@ -24901,10 +24900,11 @@ func_80242C68_E07FC8 = 0x80242C68; // type:func rom:0xE07FC8 func_80242C94_E07FF4 = 0x80242C94; // type:func rom:0xE07FF4 end_01_UnkFunc27 = 0x80242CF0; // type:func rom:0xE08050 end_01_UnkFunc26 = 0x80242E14; // type:func rom:0xE08174 -D_80243178_E084D8 = 0x80243178; // type:data rom:0xE084D8 -D_80243200_E08560 = 0x80243200; // type:data rom:0xE08560 -D_80243210_E08570 = 0x80243210; // type:data rom:0xE08570 -D_802441F0_E09550 = 0x802441F0; // type:data rom:0xE09550 +end_01_Font3Patterns = 0x80243178; // type:data +end_01_Font4Patterns = 0x80243110; // type:data +end_01_CreditsViewport = 0x80243200; // type:data rom:0xE08560 +end_01_CreditsBufferIndex = 0x80243210; // type:data rom:0xE08570 +end_01_ParadeNpcsTable = 0x802441F0; // type:data rom:0xE09550 D_80245D34_E0B094 = 0x80245D34; // type:data rom:0xE0B094 D_80245D37_E0B097 = 0x80245D37; // type:data rom:0xE0B097 D_802493A0_E0E700 = 0x802493A0; // type:data rom:0xE0E700 @@ -25977,7 +25977,7 @@ dead_gCollisionStatus = 0x80169B10; // type:data D_80197000 = 0x80197000; // type:data D_801A6000 = 0x801A6000; // type:data D_801A7000 = 0x801A7000; // type:data -D_801AA000 = 0x801AA000; // type:data +AuHeapBase = 0x801AA000; // type:data D_80200000 = 0x80200000; // type:data gBackgroundImage = 0x80200000; // D_80210000 = 0x80210000; // type:data @@ -26229,6 +26229,7 @@ D_802440F4 = 0x802440F4; // type:data D_802440F7 = 0x802440F7; // type:data D_802440F8 = 0x802440F8; // type:data D_802440FB = 0x802440FB; // type:data +D_802440FC = 0x802440FC; // type:data dgb_08_pad_40FC = 0x802440FC; // type:data D_802440FF = 0x802440FF; // type:data D_80244100 = 0x80244100; // type:data @@ -26392,11 +26393,11 @@ flo_00_pad_9128 = 0x80249128; // type:data D_80249158 = 0x80249158; // type:data D_802491C0 = 0x802491C0; // type:data trd_06_fake_sym = 0x802491C0; // type:data -D_80249440 = 0x80249440; // type:data +end_01_CreditsData = 0x80249440; // type:data D_8024A290 = 0x8024A290; // type:data D_8024A2A0 = 0x8024A2A0; // type:data -D_8024A2C4 = 0x8024A2C4; // type:data -D_8024A2D0 = 0x8024A2D0; // type:data +end_01_CreditsDataPtr = 0x8024A2C4; // type:data +end_01_CreditsMessageBuffers = 0x8024A2D0; // type:data sam_02_Quizmo_Worker = 0x8024B990; // type:data sam_02_Quizmo_StageEffect = 0x8024B9B0; // type:data sam_02_Quizmo_AudienceEffect = 0x8024B9B4; // type:data @@ -26456,7 +26457,7 @@ mac_02_Quizmo_AudienceEffect = 0x8024E564; // type:data mac_02_Quizmo_VannaTEffect = 0x8024E568; // type:data D_8024E570 = 0x8024E570; // type:data D_8024E738 = 0x8024E738; // type:data -D_8024E960 = 0x8024E960; // type:data +end_00_CreditsData = 0x8024E960; // type:data D_8024EA10 = 0x8024EA10; // type:data D_8024EA14 = 0x8024EA14; // type:data mac_02_LetterDelivery_SavedNpcAnim = 0x8024EA18; // type:data @@ -26572,8 +26573,8 @@ mac_04_Quizmo_StageEffect = 0x8024F5C0; // type:data mac_04_Quizmo_AudienceEffect = 0x8024F5C4; // type:data mac_04_Quizmo_VannaTEffect = 0x8024F5C8; // type:data D_8024F5D0 = 0x8024F5D0; // type:data -D_8024F7E4 = 0x8024F7E4; // type:data -D_8024F7F0 = 0x8024F7F0; // type:data +end_00_CreditsDataPtr = 0x8024F7E4; // type:data +end_00_CreditsMessageBuffers = 0x8024F7F0; // type:data D_8024FBA0 = 0x8024FBA0; // type:data D_8024FD68 = 0x8024FD68; // type:data jan_03_Quizmo_Worker = 0x8024FED8; // type:data @@ -26583,7 +26584,7 @@ jan_03_Quizmo_AudienceEffect = 0x8024FEFC; // type:data jan_03_Quizmo_VannaTEffect = 0x8024FF00; // type:data D_8024FF04 = 0x8024FF04; // type:data jan_03_LetterDelivery_SavedNpcAnim = 0x8024FF04; // type:data -D_80250EF0 = 0x80250EF0; // type:data +end_00_CreditsProjMatrices = 0x80250EF0; // type:data D_802510B0 = 0x802510B0; // type:data mac_03_Quizmo_Worker = 0x802513D0; // type:data mac_03_Quizmo_AnswerResult = 0x802513E8; // type:data @@ -26840,9 +26841,9 @@ D_80294420 = 0x80294420; // type:data D_80294440 = 0x80294440; // type:data D_80294460 = 0x80294460; // type:data D_802944A0 = 0x802944A0; // type:data -D_8029DA30 = 0x8029DA30; // type:data +bSavedPartner = 0x8029DA30; // type:data D_8029DA33 = 0x8029DA33; // type:data -D_8029DA34 = 0x8029DA34; // type:data +bSavedOverrideFlags = 0x8029DA34; // type:data D_8029DA40 = 0x8029DA40; // type:data D_8029DA44 = 0x8029DA44; // type:data D_8029DA48 = 0x8029DA48; // type:data @@ -27268,9 +27269,9 @@ D_802DB5B0 = 0x802DB5B0; // type:data D_802DB5C0 = 0x802DB5C0; // type:data D_802DB6C0 = 0x802DB6C0; // type:data D_802DB7C0 = 0x802DB7C0; // type:data -D_802DB7D0 = 0x802DB7D0; // type:data -D_802DB7D8 = 0x802DB7D8; // type:data -D_802DB800 = 0x802DB800; // type:data +MusicEventList = 0x802DB7D0; // type:data +RunningMusicEvents = 0x802DB7D8; // type:data +RunningMusicEventIDs = 0x802DB800; // type:data D_802DB830 = 0x802DB830; // type:data D_802DBB60 = 0x802DBB60; // type:data D_802DBB68 = 0x802DBB68; // type:data diff --git a/ver/us/undefined_syms.txt b/ver/us/undefined_syms.txt index 51afb0cad4..9ff1579bd1 100644 --- a/ver/us/undefined_syms.txt +++ b/ver/us/undefined_syms.txt @@ -324,7 +324,7 @@ D_80164000 = 0x80164000; D_80197000 = 0x80197000; D_801A6000 = 0x801A6000; D_801A7000 = 0x801A7000; -D_801AA000 = 0x801AA000; +AuHeapBase = 0x801AA000; D_80210000 = 0x80210000; D_8022AD80_4C3F70 = 0x8022AD80; D_8022ADD0 = 0x8022ADD0; @@ -402,14 +402,21 @@ D_802440E0 = 0x802440E0; D_802440E1 = 0x802440E1; D_802440E2 = 0x802440E2; D_802440E3 = 0x802440E3; +D_802440E4 = 0x802440E4; D_802440E5 = 0x802440E5; +D_802440E8 = 0x802440E8; D_802440EB = 0x802440EB; +D_802440EC = 0x802440EC; D_802440EF = 0x802440EF; +D_802440F0 = 0x802440F0; D_802440F3 = 0x802440F3; +D_802440F4 = 0x802440F4; D_802440F7 = 0x802440F7; D_802440F8 = 0x802440F8; D_802440FB = 0x802440FB; +D_802440FC = 0x802440FC; D_802440FF = 0x802440FF; +D_80244100 = 0x80244100; D_80244104 = 0x80244104; D_802442D0 = 0x802442D0; kzn_20_LetterDelivery_SavedNpcAnim = 0x80244494; @@ -511,11 +518,11 @@ jan_02_Quizmo_VannaTEffect = 0x80248948; D_80248760_jan_02 = 0x80248760; D_80248F90 = 0x80248F90; D_80249158 = 0x80249158; -D_80249440 = 0x80249440; +end_01_CreditsData = 0x80249440; D_8024A290 = 0x8024A290; D_8024A2A0 = 0x8024A2A0; D_8024A2C4 = 0x8024A2C4; -D_8024A2D0 = 0x8024A2D0; +end_01_CreditsMessageBuffers = 0x8024A2D0; sam_02_Quizmo_Worker = 0x8024B990; sam_02_Quizmo_AudienceEffect = 0x8024B9B4; sam_02_Quizmo_VannaTEffect = 0x8024B9B8; @@ -554,7 +561,7 @@ mac_02_Quizmo_AudienceEffect = 0x8024E564; mac_02_Quizmo_VannaTEffect = 0x8024E568; D_8024E570 = 0x8024E570; D_8024E738 = 0x8024E738; -D_8024E960 = 0x8024E960; +end_00_CreditsData = 0x8024E960; D_8024EA10 = 0x8024EA10; D_8024EA14 = 0x8024EA14; mac_02_LetterDelivery_SavedNpcAnim = 0x8024EA18; @@ -639,8 +646,8 @@ mac_04_Quizmo_AnswerResult = 0x8024F5B8; // type:data mac_04_Quizmo_AudienceEffect = 0x8024F5C4; mac_04_Quizmo_VannaTEffect = 0x8024F5C8; D_8024F5D0 = 0x8024F5D0; -D_8024F7E4 = 0x8024F7E4; -D_8024F7F0 = 0x8024F7F0; +end_00_CreditsDataPtr = 0x8024F7E4; +end_00_CreditsMessageBuffers = 0x8024F7F0; D_8024FBA0 = 0x8024FBA0; D_8024FD68 = 0x8024FD68; jan_03_Quizmo_Worker = 0x8024FED8; @@ -649,7 +656,7 @@ jan_03_Quizmo_StageEffect = 0x8024FEF8; jan_03_Quizmo_AudienceEffect = 0x8024FEFC; jan_03_Quizmo_VannaTEffect = 0x8024FF00; D_8024FF04 = 0x8024FF04; -D_80250EF0 = 0x80250EF0; +end_00_CreditsProjMatrices = 0x80250EF0; mac_03_Quizmo_Worker = 0x802513D0; mac_03_Quizmo_AnswerResult = 0x802513E8; mac_03_Quizmo_StageEffect = 0x802513F0; @@ -749,9 +756,9 @@ D_802705C4 = 0x802705C4; D_802705D0 = 0x802705D0; D_80270634 = 0x80270634; bMarioHideAnims = 0x80283370; -D_8029DA30 = 0x8029DA30; +bSavedPartner = 0x8029DA30; D_8029DA33 = 0x8029DA33; -D_8029DA34 = 0x8029DA34; +bSavedOverrideFlags = 0x8029DA34; D_8029DA40 = 0x8029DA40; D_8029DA44 = 0x8029DA44; D_8029DA48 = 0x8029DA48; @@ -1091,9 +1098,9 @@ D_802DB5B0 = 0x802DB5B0; D_802DB5C0 = 0x802DB5C0; D_802DB6C0 = 0x802DB6C0; D_802DB7C0 = 0x802DB7C0; -D_802DB7D0 = 0x802DB7D0; -D_802DB7D8 = 0x802DB7D8; -D_802DB800 = 0x802DB800; +MusicEventList = 0x802DB7D0; +RunningMusicEvents = 0x802DB7D8; +RunningMusicEventIDs = 0x802DB800; D_802DB830 = 0x802DB830; D_802DBB60 = 0x802DBB60; D_802DBB68 = 0x802DBB68; @@ -1153,6 +1160,7 @@ D_80247420_kzn_03 = 0x80247420; D_80248380_kzn_19 = 0x80248380; kzn_19_LetterDelivery_SavedNpcAnim = 0x8024854C; D_80247BB8_pra_19 = 0x80247BB8; +pra_01_80243178 = 0x80243178; D_802312E0_battle_area_omo2 = 0x802312E0; D_802312F8_battle_area_omo2 = 0x802312F8; some_80241FBC = 0x80241FBC; @@ -1161,7 +1169,8 @@ D_80246538_kkj_19 = 0x80246538; D_80246558_kkj_19 = 0x80246558; D_80246550_kkj_19 = 0x80246550; D_80246560_kkj_19 = 0x80246560; - +end_01_CreditsProjMatrices = 0x8024B9D0; +end_01_CreditsDataPtr = 0x8024A2C4; D_80242568_filemenu = 0x80242568; D_802EA871 = 0x802EA871; D_802EA862 = 0x802EA862;