From e4a84faabf3f4e2f005e55a88babce7e8ae49c58 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 10:49:52 -0500 Subject: through unref_sub_8095C60 --- asm/pokemon_storage_system.s | 241 ----------------------------------- include/decoration.h | 5 - include/pokemon.h | 8 +- ld_script.txt | 3 +- src/field/choose_party.c | 3 +- src/field/field_effect.c | 1 + src/pokemon/pokemon_storage_system.c | 88 +++++++++++++ 7 files changed, 97 insertions(+), 252 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 69c6d9e4f..211481692 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,247 +5,6 @@ .text - thumb_func_start sub_8095ADC -sub_8095ADC: @ 8095ADC - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - movs r4, 0 - movs r5, 0 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r6, r0, 5 -_08095AF0: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - ldr r1, _08095B20 @ =gPokemonStorage + 0x4 - adds r0, r1 - adds r0, r6, r0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _08095B0C - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_08095B0C: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1D - bls _08095AF0 - lsls r0, r5, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095B20: .4byte gPokemonStorage + 0x4 - thumb_func_end sub_8095ADC - - thumb_func_start sub_8095B24 -sub_8095B24: @ 8095B24 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - movs r4, 0 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r5, r0, 5 -_08095B36: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - ldr r1, _08095B54 @ =gPokemonStorage + 0x4 - adds r0, r1 - adds r0, r5, r0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - bne _08095B58 - lsls r0, r4, 16 - asrs r0, 16 - b _08095B66 - .align 2, 0 -_08095B54: .4byte gPokemonStorage + 0x4 -_08095B58: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1D - bls _08095B36 - movs r0, 0x1 - negs r0, r0 -_08095B66: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8095B24 - - thumb_func_start GetNumValidDaycarePartyMons -GetNumValidDaycarePartyMons: @ 8095B6C - push {r4-r6,lr} - movs r5, 0 - movs r6, 0 -_08095B72: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08095BB0 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08095B9A - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _08095B9A - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08095B9A: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _08095B72 - lsls r0, r6, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095BB0: .4byte gPlayerParty - thumb_func_end GetNumValidDaycarePartyMons - - thumb_func_start CountAlivePartyMonsExceptOne -CountAlivePartyMonsExceptOne: @ 8095BB4 - push {r4-r7,lr} - lsls r0, 24 - movs r5, 0 - movs r6, 0 - lsrs r7, r0, 24 -_08095BBE: - cmp r5, r7 - beq _08095BF6 - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08095C0C @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08095BF6 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _08095BF6 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08095BF6 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08095BF6: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _08095BBE - lsls r0, r6, 24 - lsrs r0, 24 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08095C0C: .4byte gPlayerParty - thumb_func_end CountAlivePartyMonsExceptOne - - thumb_func_start CountAlivePartyMonsExceptSelectedOne -CountAlivePartyMonsExceptSelectedOne: @ 8095C10 - push {lr} - ldr r0, _08095C24 @ =gSpecialVar_0x8004 - ldrb r0, [r0] - bl CountAlivePartyMonsExceptOne - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_08095C24: .4byte gSpecialVar_0x8004 - thumb_func_end CountAlivePartyMonsExceptSelectedOne - - thumb_func_start StorageSystemGetPartySize -StorageSystemGetPartySize: @ 8095C28 - push {r4,r5,lr} - movs r4, 0 - movs r5, 0 -_08095C2E: - movs r0, 0x64 - muls r0, r4 - ldr r1, _08095C5C @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08095C46 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_08095C46: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x5 - bls _08095C2E - lsls r0, r5, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_08095C5C: .4byte gPlayerParty - thumb_func_end StorageSystemGetPartySize - - thumb_func_start unref_sub_8095C60 -unref_sub_8095C60: @ 8095C60 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r2, 16 - lsrs r4, 16 - bl StringCopy - adds r1, r0, 0 - adds r5, r4 - cmp r1, r5 - bcs _08095C7E - movs r0, 0 -_08095C76: - strb r0, [r1] - adds r1, 0x1 - cmp r1, r5 - bcc _08095C76 -_08095C7E: - movs r0, 0xFF - strb r0, [r1] - adds r0, r1, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end unref_sub_8095C60 - thumb_func_start sub_8095C8C sub_8095C8C: @ 8095C8C push {r4-r7,lr} diff --git a/include/decoration.h b/include/decoration.h index 972e82faf..3d619a598 100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -127,10 +127,6 @@ extern u8 gUnknown_020388F5; extern u8 gUnknown_020388F6; extern u8 gUnknown_020388D6[16]; extern u8 gUnknown_020388E6[12]; -extern u16 gSpecialVar_0x8004; -extern u16 gSpecialVar_0x8005; -extern u16 gSpecialVar_0x8006; -extern u16 gSpecialVar_0x8007; extern u16 gUnknown_020391A4; extern u16 gUnknown_020391A6; extern u8 gUnknown_020391A8; @@ -161,7 +157,6 @@ extern const struct YesNoFuncTable gUnknown_083ECAA0; extern u8 sub_8134194(u8); // src/decoration_inventory extern bool8 sub_81341D4(void); // src/decoration_inventory extern void sub_8134104(u8); // src/decoration_inventory -extern bool8 sub_807D770(void); extern void sub_8109DAC(u8); // src/trader extern void ReshowPlayerPC(u8); // src/player_pc void Task_SecretBasePC_Decoration(u8); diff --git a/include/pokemon.h b/include/pokemon.h index a1c30f1f3..89599d994 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -418,10 +418,10 @@ struct BattleMove struct PokemonStorage { - /*0x00*/ u8 currentBox; - /*0x01*/ struct BoxPokemon boxes[14][30]; - u8 boxNames[14][9]; - u8 unkArray[14]; + /*0x0000*/ u8 currentBox; + /*0x0004*/ struct BoxPokemon boxes[14][30]; + /*0x8344*/ u8 boxNames[14][9]; + /*0x83c2*/ u8 unkArray[14]; }; struct SpindaSpot diff --git a/ld_script.txt b/ld_script.txt index 5bfc8b171..d0256f397 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -128,8 +128,9 @@ SECTIONS { src/engine/save_menu_util.o(.text); src/battle/battle_party_menu.o(.text); asm/unk_text_8095904.o(.text); - asm/pokemon_storage_system.o(.text); src/pokemon/pokemon_storage_system.o(.text); + asm/pokemon_storage_system.o(.text); + src/pokemon/pokemon_storage_system.o(.text.8098898); asm/pokemon_storage_system.o(.text_8098A38); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); diff --git a/src/field/choose_party.c b/src/field/choose_party.c index d278eda4a..52763b911 100644 --- a/src/field/choose_party.c +++ b/src/field/choose_party.c @@ -1,5 +1,5 @@ #include "global.h" -#include "decoration.h" +#include "event_data.h" #include "field_fadetransition.h" #include "main.h" #include "menu.h" @@ -7,6 +7,7 @@ #include "palette.h" #include "party_menu.h" #include "pokemon_menu.h" +#include "field_weather.h" #include "pokemon.h" #include "pokemon_summary_screen.h" #include "overworld.h" diff --git a/src/field/field_effect.c b/src/field/field_effect.c index 1e2aaa4ed..1fe238901 100644 --- a/src/field/field_effect.c +++ b/src/field/field_effect.c @@ -25,6 +25,7 @@ #include "field_map_obj.h" #include "util.h" #include "field_effect_helpers.h" +#include "pokemon_storage_system.h" #define subsprite_table(ptr) {.subsprites = ptr, .subspriteCount = (sizeof ptr) / (sizeof(struct Subsprite))} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 4a68b846a..2ea7161cf 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -2,6 +2,7 @@ #include "pokemon_storage_system.h" #include "menu.h" #include "string_util.h" +#include "event_data.h" #include "ewram.h" struct StorageAction { @@ -13,6 +14,93 @@ extern const struct StorageAction gUnknown_083B6DF4[]; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; +u8 sub_8095ADC(u8 boxId) +{ + u16 i; + u16 count; + + for (i = 0, count = 0; i < 30; i++) + { + if (GetBoxMonData(gPokemonStorage.boxes[boxId] + i, MON_DATA_SPECIES) != 0) + count++; + } + return count; +} + +s16 sub_8095B24(u8 boxId) +{ + u16 i; + + for (i = 0; i < 30; i++) + { + if (GetBoxMonData(gPokemonStorage.boxes[boxId] + i, MON_DATA_SPECIES) == 0) + return i; + } + return -1; +} + +u8 GetNumValidDaycarePartyMons(void) +{ + u16 i; + u16 count; + + for (i = 0, count = 0; i < PARTY_SIZE; i++) + { + struct Pokemon *pokemon = gPlayerParty + i; + if (GetMonData(pokemon, MON_DATA_SPECIES) != 0 && !GetMonData(pokemon, MON_DATA_IS_EGG)) + count++; + } + return count; +} + +u8 CountAlivePartyMonsExceptOne(u8 toSkip) +{ + u16 i; + u16 count; + + for (i = 0, count = 0; i < PARTY_SIZE; i++) + { + if (i != toSkip) + { + struct Pokemon *pokemon = gPlayerParty + i; + if (GetMonData(pokemon, MON_DATA_SPECIES) != 0 && !GetMonData(pokemon, MON_DATA_IS_EGG) && GetMonData(pokemon, MON_DATA_HP) != 0) + count++; + } + } + return count; +} + +u8 CountAlivePartyMonsExceptSelectedOne(void) +{ + return CountAlivePartyMonsExceptOne(gSpecialVar_0x8004); +} + +u8 StorageSystemGetPartySize(void) +{ + u16 i; + u16 count; + + for (i = 0, count = 0; i < PARTY_SIZE; i++) + { + if (GetMonData(gPlayerParty + i, MON_DATA_SPECIES) != 0) + count++; + } + return count; +} + +u8 *unref_sub_8095C60(u8 *dest, const u8 *src, u16 pad) +{ + u8 *_dest = StringCopy(dest, src); + while (_dest < dest + pad) + { + *_dest++ = CHAR_SPACE; + } + *_dest = EOS; + return _dest; +} + +asm(".section .text.8098898"); + void sub_8098898(u8 index) { u8 *ptr; -- cgit v1.2.3 From 6ce6e18fd50951ec784f5534f0bcb929aadd24d6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 11:05:39 -0500 Subject: sub_8095C8C --- asm/pokemon_storage_system.s | 67 ------------------------------------ src/pokemon/pokemon_storage_system.c | 15 ++++++++ 2 files changed, 15 insertions(+), 67 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 211481692..91f4911ce 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,73 +5,6 @@ .text - thumb_func_start sub_8095C8C -sub_8095C8C: @ 8095C8C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - adds r7, r3, 0 - ldr r5, [sp, 0x1C] - ldr r4, [sp, 0x20] - ldr r0, [sp, 0x24] - mov r9, r0 - ldr r0, [sp, 0x28] - ldr r3, [sp, 0x2C] - lsls r1, 16 - lsrs r1, 16 - lsls r2, 16 - lsls r5, 16 - lsrs r5, 16 - lsls r4, 16 - lsrs r4, 16 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - lsls r3, 16 - lsrs r3, 16 - mov r0, r9 - lsls r0, 17 - mov r9, r0 - lsrs r2, 11 - adds r2, r1 - lsls r2, 1 - adds r6, r2 - adds r0, r4, 0 - muls r0, r3 - adds r0, r5 - lsls r0, 1 - adds r7, r0 - movs r4, 0 - cmp r4, r8 - bcs _08095CFC - mov r0, r9 - lsrs r0, 1 - mov r9, r0 - lsls r5, r3, 1 -_08095CE2: - adds r0, r7, 0 - adds r1, r6, 0 - mov r3, r9 - lsrs r2, r3, 16 - bl CpuSet - adds r6, 0x40 - adds r7, r5 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, r8 - bcc _08095CE2 -_08095CFC: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8095C8C - thumb_func_start unref_sub_8095D08 unref_sub_8095D08: @ 8095D08 push {r4-r7,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 2ea7161cf..3c029b0aa 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -99,6 +99,21 @@ u8 *unref_sub_8095C60(u8 *dest, const u8 *src, u16 pad) return _dest; } +void sub_8095C8C(u16 *dest, u16 dest_left, u16 dest_top, u16 *src, u16 src_left, u16 src_top, u16 dest_width, u16 dest_height, u16 src_width) +{ + u16 i; + + dest_width *= 2; + dest += dest_top * 0x20 + dest_left; + src += src_top * src_width + src_left; + for (i = 0; i < dest_height; i++) + { + CpuCopy16(src, dest, dest_width); + dest += 0x20; + src += src_width; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 4db981200c1d011c370a45d123c31b397b7d62cc Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 11:54:46 -0500 Subject: nonmatching unref_sub_8095D08 --- asm/pokemon_storage_system.s | 103 -------------------------- include/gba/macro.h | 2 +- src/pokemon/pokemon_storage_system.c | 138 ++++++++++++++++++++++++++++++++++- 3 files changed, 138 insertions(+), 105 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 91f4911ce..76fac44bc 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,109 +5,6 @@ .text - thumb_func_start unref_sub_8095D08 -unref_sub_8095D08: @ 8095D08 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r4, r0, 0 - ldr r0, [sp, 0x28] - lsls r1, 16 - lsrs r1, 16 - lsls r2, 16 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsrs r2, 11 - adds r2, r1 - lsls r2, 1 - adds r4, r2 - lsls r3, 17 - lsrs r0, r3, 16 - str r0, [sp, 0x4] - movs r0, 0 - cmp r0, r10 - bcs _08095DB2 - movs r6, 0x80 - lsls r6, 5 - mov r5, sp - ldr r7, _08095D74 @ =0x040000d4 - lsrs r3, 17 - mov r9, r3 - mov r1, r9 - movs r2, 0x81 - lsls r2, 24 - orrs r1, r2 - mov r9, r1 -_08095D4E: - adds r3, r4, 0 - ldr r2, [sp, 0x4] - movs r1, 0x40 - adds r1, r4 - mov r8, r1 - adds r0, 0x1 - mov r12, r0 - cmp r2, r6 - bhi _08095D78 - movs r0, 0 - strh r0, [r5] - mov r2, sp - str r2, [r7] - str r4, [r7, 0x4] - mov r0, r9 - str r0, [r7, 0x8] - ldr r0, [r7, 0x8] - b _08095DA6 - .align 2, 0 -_08095D74: .4byte 0x040000d4 -_08095D78: - movs r4, 0 - strh r4, [r5] - ldr r1, _08095DC4 @ =0x040000d4 - mov r0, sp - str r0, [r1] - str r3, [r1, 0x4] - ldr r0, _08095DC8 @ =0x81000800 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r3, r6 - subs r2, r6 - cmp r2, r6 - bhi _08095D78 - strh r4, [r5] - mov r0, sp - str r0, [r1] - str r3, [r1, 0x4] - lsrs r0, r2, 1 - movs r2, 0x81 - lsls r2, 24 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] -_08095DA6: - mov r4, r8 - mov r1, r12 - lsls r0, r1, 16 - lsrs r0, 16 - cmp r0, r10 - bcc _08095D4E -_08095DB2: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08095DC4: .4byte 0x040000d4 -_08095DC8: .4byte 0x81000800 - thumb_func_end unref_sub_8095D08 - thumb_func_start StorageSystemGetNextMonIndex StorageSystemGetNextMonIndex: @ 8095DCC push {r4-r7,lr} diff --git a/include/gba/macro.h b/include/gba/macro.h index d9e6739b3..540e08375 100644 --- a/include/gba/macro.h +++ b/include/gba/macro.h @@ -105,7 +105,7 @@ #define DmaClearLarge(dmaNum, dest, size, block, bit) \ { \ - const void *_dest = dest; \ + void *_dest = dest; \ u32 _size = size; \ while (1) \ { \ diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 3c029b0aa..5cb61f365 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -99,7 +99,7 @@ u8 *unref_sub_8095C60(u8 *dest, const u8 *src, u16 pad) return _dest; } -void sub_8095C8C(u16 *dest, u16 dest_left, u16 dest_top, u16 *src, u16 src_left, u16 src_top, u16 dest_width, u16 dest_height, u16 src_width) +void sub_8095C8C(u16 *dest, u16 dest_left, u16 dest_top, const u16 *src, u16 src_left, u16 src_top, u16 dest_width, u16 dest_height, u16 src_width) { u16 i; @@ -114,6 +114,142 @@ void sub_8095C8C(u16 *dest, u16 dest_left, u16 dest_top, u16 *src, u16 src_left, } } +#ifdef NONMATCHING +void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) +{ + u16 i; + + dest += dest_top * 0x20 + dest_left; + width *= 2; + for (i = 0; i < height; dest += 0x20, i++) + { + void *_dest = dest; + size_t _size = width; + if (_size <= 0x1000) + { + DmaFill16(3, 0, _dest, _size); + } + else + { + while (1) + { + DmaFill16(3, 0, _dest, 0x1000); + _dest += 0x1000; + _size -= 0x1000; + if (_size <= 0x1000) + { + DmaFill16(3, 0, _dest, _size); + break; + } + } + } + } +} +#else +__attribute__((naked)) void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) +{ + asm_unified("\tpush {r4-r7,lr}\n" + "\tmov r7, r10\n" + "\tmov r6, r9\n" + "\tmov r5, r8\n" + "\tpush {r5-r7}\n" + "\tsub sp, 0x8\n" + "\tadds r4, r0, 0\n" + "\tldr r0, [sp, 0x28]\n" + "\tlsls r1, 16\n" + "\tlsrs r1, 16\n" + "\tlsls r2, 16\n" + "\tlsls r0, 16\n" + "\tlsrs r0, 16\n" + "\tmov r10, r0\n" + "\tlsrs r2, 11\n" + "\tadds r2, r1\n" + "\tlsls r2, 1\n" + "\tadds r4, r2\n" + "\tlsls r3, 17\n" + "\tlsrs r0, r3, 16\n" + "\tstr r0, [sp, 0x4]\n" + "\tmovs r0, 0\n" + "\tcmp r0, r10\n" + "\tbcs _08095DB2\n" + "\tmovs r6, 0x80\n" + "\tlsls r6, 5\n" + "\tmov r5, sp\n" + "\tldr r7, _08095D74 @ =0x040000d4\n" + "\tlsrs r3, 17\n" + "\tmov r9, r3\n" + "\tmov r1, r9\n" + "\tmovs r2, 0x81\n" + "\tlsls r2, 24\n" + "\torrs r1, r2\n" + "\tmov r9, r1\n" + "_08095D4E:\n" + "\tadds r3, r4, 0\n" + "\tldr r2, [sp, 0x4]\n" + "\tmovs r1, 0x40\n" + "\tadds r1, r4\n" + "\tmov r8, r1\n" + "\tadds r0, 0x1\n" + "\tmov r12, r0\n" + "\tcmp r2, r6\n" + "\tbhi _08095D78\n" + "\tmovs r0, 0\n" + "\tstrh r0, [r5]\n" + "\tmov r2, sp\n" + "\tstr r2, [r7]\n" + "\tstr r4, [r7, 0x4]\n" + "\tmov r0, r9\n" + "\tstr r0, [r7, 0x8]\n" + "\tldr r0, [r7, 0x8]\n" + "\tb _08095DA6\n" + "\t.align 2, 0\n" + "_08095D74: .4byte 0x040000d4\n" + "_08095D78:\n" + "\tmovs r4, 0\n" + "\tstrh r4, [r5]\n" + "\tldr r1, _08095DC4 @ =0x040000d4\n" + "\tmov r0, sp\n" + "\tstr r0, [r1]\n" + "\tstr r3, [r1, 0x4]\n" + "\tldr r0, _08095DC8 @ =0x81000800\n" + "\tstr r0, [r1, 0x8]\n" + "\tldr r0, [r1, 0x8]\n" + "\tadds r3, r6\n" + "\tsubs r2, r6\n" + "\tcmp r2, r6\n" + "\tbhi _08095D78\n" + "\tstrh r4, [r5]\n" + "\tmov r0, sp\n" + "\tstr r0, [r1]\n" + "\tstr r3, [r1, 0x4]\n" + "\tlsrs r0, r2, 1\n" + "\tmovs r2, 0x81\n" + "\tlsls r2, 24\n" + "\torrs r0, r2\n" + "\tstr r0, [r1, 0x8]\n" + "\tldr r0, [r1, 0x8]\n" + "_08095DA6:\n" + "\tmov r4, r8\n" + "\tmov r1, r12\n" + "\tlsls r0, r1, 16\n" + "\tlsrs r0, 16\n" + "\tcmp r0, r10\n" + "\tbcc _08095D4E\n" + "_08095DB2:\n" + "\tadd sp, 0x8\n" + "\tpop {r3-r5}\n" + "\tmov r8, r3\n" + "\tmov r9, r4\n" + "\tmov r10, r5\n" + "\tpop {r4-r7}\n" + "\tpop {r0}\n" + "\tbx r0\n" + "\t.align 2, 0\n" + "_08095DC4: .4byte 0x040000d4\n" + "_08095DC8: .4byte 0x81000800"); +} +#endif + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From a7e900e31b472385fda5fab48fc3c76212a0e0c2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 12:47:00 -0500 Subject: StorageSystemGetNextMonIndex --- asm/pokemon_storage_system.s | 116 ----------------------------------- src/pokemon/pokemon_storage_system.c | 31 ++++++++++ 2 files changed, 31 insertions(+), 116 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 76fac44bc..cf8091735 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,122 +5,6 @@ .text - thumb_func_start StorageSystemGetNextMonIndex -StorageSystemGetNextMonIndex: @ 8095DCC - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r7, r2, 24 - lsls r3, 24 - lsrs r0, r3, 24 - cmp r0, 0 - beq _08095DE8 - cmp r0, 0x2 - bne _08095DEC -_08095DE8: - movs r2, 0x1 - b _08095DEE -_08095DEC: - ldr r2, _08095E38 @ =0x0000ffff -_08095DEE: - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08095E44 - lsls r0, r1, 24 - asrs r0, 24 - lsls r2, 16 - asrs r1, r2, 16 - adds r1, r0 - lsls r0, r1, 16 - asrs r1, r0, 16 - adds r6, r2, 0 - cmp r1, 0 - blt _08095E90 - cmp r1, r7 - bgt _08095E90 -_08095E10: - asrs r4, r0, 16 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - add r0, r8 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - bne _08095E3C - asrs r0, r6, 16 - adds r0, r4, r0 - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - blt _08095E90 - cmp r2, r7 - ble _08095E10 - b _08095E90 - .align 2, 0 -_08095E38: .4byte 0x0000ffff -_08095E3C: - adds r0, r4, 0 - b _08095E94 -_08095E40: - adds r0, r5, 0 - b _08095E94 -_08095E44: - lsls r0, r1, 24 - asrs r0, 24 - lsls r2, 16 - asrs r1, r2, 16 - adds r1, r0 - lsls r0, r1, 16 - asrs r1, r0, 16 - adds r6, r2, 0 - cmp r1, 0 - blt _08095E90 - cmp r1, r7 - bgt _08095E90 -_08095E5C: - asrs r5, r0, 16 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 4 - mov r1, r8 - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _08095E80 - adds r0, r4, 0 - movs r1, 0x2D - bl GetBoxMonData - cmp r0, 0 - beq _08095E40 -_08095E80: - asrs r0, r6, 16 - adds r0, r5, r0 - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - blt _08095E90 - cmp r2, r7 - ble _08095E5C -_08095E90: - movs r0, 0x1 - negs r0, r0 -_08095E94: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end StorageSystemGetNextMonIndex - thumb_func_start StorageSystemClearMessageWindow StorageSystemClearMessageWindow: @ 8095EA0 push {lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 5cb61f365..745a27bf6 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -250,6 +250,37 @@ __attribute__((naked)) void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest } #endif +s16 StorageSystemGetNextMonIndex(struct BoxPokemon *box, s8 startIdx, u8 stopIdx, u8 mode) +{ + s16 i; + s16 direction; + if (mode == 0 || mode == 2) + { + direction = 1; + } + else + { + direction = -1; + } + if (mode == 2 || mode == 3) + { + for (i = startIdx + direction; i >= 0 && i <= stopIdx; i += direction) + { + if (GetBoxMonData(box + i, MON_DATA_SPECIES) != 0) + return i; + } + } + else + { + for (i = startIdx + direction; i >= 0 && i <= stopIdx; i += direction) + { + if (GetBoxMonData(box + i, MON_DATA_SPECIES) != 0 && !GetBoxMonData(box + i, MON_DATA_IS_EGG)) + return i; + } + } + return -1; +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From d19de32aba198ac2e5691cab088b3d84cd390b39 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 15:16:51 -0500 Subject: through Task_PokemonStorageSystem --- asm/pokemon_storage_system.s | 298 ----------------------------------- src/pokemon/pokemon_storage_system.c | 124 ++++++++++++++- 2 files changed, 123 insertions(+), 299 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index cf8091735..8fc6cfdb2 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,304 +5,6 @@ .text - thumb_func_start StorageSystemClearMessageWindow -StorageSystemClearMessageWindow: @ 8095EA0 - push {lr} - movs r0, 0x2 - movs r1, 0xF - movs r2, 0x1B - movs r3, 0x12 - bl MenuFillWindowRectWithBlankTile - pop {r0} - bx r0 - thumb_func_end StorageSystemClearMessageWindow - - thumb_func_start Task_PokemonStorageSystem -Task_PokemonStorageSystem: @ 8095EB4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _08095ED8 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _08095ECE - b _080960F4 -_08095ECE: - lsls r0, 2 - ldr r1, _08095EDC @ =_08095EE0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08095ED8: .4byte gTasks -_08095EDC: .4byte _08095EE0 - .align 2, 0 -_08095EE0: - .4byte _08095EF4 - .4byte _08095F1C - .4byte _08095F30 - .4byte _08096042 - .4byte _080960DC -_08095EF4: - ldrb r0, [r4, 0xA] - bl StorageSystemCreatePrimaryMenu - bl MenuDisplayMessageBox - ldr r1, _08095F18 @ =gUnknown_083B600C - movs r2, 0xA - ldrsh r0, [r4, r2] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - b _08095F28 - .align 2, 0 -_08095F18: .4byte gUnknown_083B600C -_08095F1C: - bl sub_807D770 - lsls r0, 24 - cmp r0, 0 - bne _08095F28 - b _080960F4 -_08095F28: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080960F4 -_08095F30: - bl ProcessMenuInput - lsls r0, 24 - asrs r0, 24 - strh r0, [r4, 0xC] - movs r3, 0xC - ldrsh r1, [r4, r3] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08095FC8 - cmp r1, r0 - bgt _08095F52 - subs r0, 0x1 - cmp r1, r0 - beq _08095F58 - b _08095FE8 -_08095F52: - cmp r1, 0x3 - beq _08095FC8 - b _08095FE8 -_08095F58: - ldrh r3, [r4, 0xA] - strh r3, [r4, 0xE] - ldr r2, _08095FC0 @ =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08095F76 - subs r0, r3, 0x1 - strh r0, [r4, 0xE] - lsls r0, 16 - cmp r0, 0 - bge _08095F76 - movs r0, 0x3 - strh r0, [r4, 0xE] -_08095F76: - ldrh r1, [r2, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08095F92 - ldrh r0, [r4, 0xE] - adds r0, 0x1 - strh r0, [r4, 0xE] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - ble _08095F92 - movs r0, 0 - strh r0, [r4, 0xE] -_08095F92: - lsls r0, r3, 16 - asrs r0, 16 - ldrh r2, [r4, 0xE] - movs r3, 0xE - ldrsh r1, [r4, r3] - cmp r0, r1 - bne _08095FA2 - b _080960F4 -_08095FA2: - strh r2, [r4, 0xA] - bl StorageSystemClearMessageWindow - ldr r0, _08095FC4 @ =gUnknown_083B600C - movs r2, 0xA - ldrsh r1, [r4, r2] - lsls r1, 3 - adds r0, 0x4 - adds r1, r0 - ldr r0, [r1] - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - b _080960F4 - .align 2, 0 -_08095FC0: .4byte gMain -_08095FC4: .4byte gUnknown_083B600C -_08095FC8: - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0xD - movs r3, 0x9 - bl MenuZeroFillWindowRect - bl ScriptContext2_Disable - bl EnableBothScriptContexts - adds r0, r5, 0 - bl DestroyTask - b _080960F4 -_08095FE8: - movs r3, 0xC - ldrsh r0, [r4, r3] - cmp r0, 0 - bne _08096008 - bl StorageSystemGetPartySize - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08096008 - bl StorageSystemClearMessageWindow - ldr r0, _08096004 @ =gPCText_PartyFull2 - b _08096022 - .align 2, 0 -_08096004: .4byte gPCText_PartyFull2 -_08096008: - movs r1, 0xC - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _08096034 - bl StorageSystemGetPartySize - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08096034 - bl StorageSystemClearMessageWindow - ldr r0, _08096030 @ =gPCText_OnlyOne -_08096022: - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - movs r0, 0x3 - strh r0, [r4, 0x8] - b _080960F4 - .align 2, 0 -_08096030: .4byte gPCText_OnlyOne -_08096034: - movs r0, 0x1 - movs r1, 0 - bl fade_screen - movs r0, 0x4 - strh r0, [r4, 0x8] - b _080960F4 -_08096042: - ldr r0, _08096088 @ =gMain - ldrh r1, [r0, 0x2E] - movs r3, 0x3 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080960B8 - movs r0, 0x40 - ands r0, r1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0 - beq _08096090 - ldrh r0, [r4, 0xA] - subs r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - cmp r0, 0 - bge _0809606A - strh r3, [r4, 0xA] -_0809606A: - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0xA] - bl StorageSystemClearMessageWindow - ldr r1, _0809608C @ =gUnknown_083B600C - movs r3, 0xA - ldrsh r0, [r4, r3] - b _080960C2 - .align 2, 0 -_08096088: .4byte gMain -_0809608C: .4byte gUnknown_083B600C -_08096090: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080960F4 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - ble _080960A8 - strh r2, [r4, 0xA] -_080960A8: - movs r0, 0x1 - bl MoveMenuCursor - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0xA] -_080960B8: - bl StorageSystemClearMessageWindow - ldr r1, _080960D8 @ =gUnknown_083B600C - movs r2, 0xA - ldrsh r0, [r4, r2] -_080960C2: - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - movs r0, 0x2 - strh r0, [r4, 0x8] - b _080960F4 - .align 2, 0 -_080960D8: .4byte gUnknown_083B600C -_080960DC: - ldr r0, _080960FC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080960F4 - ldrb r0, [r4, 0xC] - bl task_intro_29 - adds r0, r5, 0 - bl DestroyTask -_080960F4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080960FC: .4byte gPaletteFade - thumb_func_end Task_PokemonStorageSystem - thumb_func_start ShowPokemonStorageSystem ShowPokemonStorageSystem: @ 8096100 push {lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 745a27bf6..a5a3bdcd8 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -1,17 +1,32 @@ #include "global.h" -#include "pokemon_storage_system.h" +#include "palette.h" +#include "field_weather.h" #include "menu.h" +#include "main.h" +#include "strings.h" #include "string_util.h" #include "event_data.h" #include "ewram.h" +#include "script.h" +#include "pokemon_storage_system.h" struct StorageAction { u8 *text; u8 format; }; +struct ReverseMenuAction { + u32 unk0; + u8 *text; +}; + +void StorageSystemCreatePrimaryMenu(u8 whichMenu); +void task_intro_29(u8 whichMenu); + extern const struct StorageAction gUnknown_083B6DF4[]; +extern const struct ReverseMenuAction gUnknown_083B600C[]; + EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; u8 sub_8095ADC(u8 boxId) @@ -281,6 +296,113 @@ s16 StorageSystemGetNextMonIndex(struct BoxPokemon *box, s8 startIdx, u8 stopIdx return -1; } +void StorageSystemClearMessageWindow(void) +{ + MenuFillWindowRectWithBlankTile(2, 15, 27, 18); +} + +void Task_PokemonStorageSystem(u8 taskId) +{ + struct Task *task = gTasks + taskId; + switch (task->data[0]) + { + case 0: + StorageSystemCreatePrimaryMenu(task->data[1]); + MenuDisplayMessageBox(); + MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + task->data[0]++; + break; + case 1: + if (sub_807D770()) + { + task->data[0]++; + } + break; + case 2: + task->data[2] = ProcessMenuInput(); + switch(task->data[2]) + { + case -2: + task->data[3] = task->data[1]; + if (gMain.newKeys & DPAD_UP && --task->data[3] < 0) + task->data[3] = 3; + + if (gMain.newKeys & DPAD_DOWN && ++task->data[3] > 3) + task->data[3] = 0; + if (task->data[1] != task->data[3]) + { + task->data[1] = task->data[3]; + StorageSystemClearMessageWindow(); + MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + } + break; + case -1: + case 3: + HandleDestroyMenuCursors(); + MenuZeroFillWindowRect(0, 0, 13, 9); + ScriptContext2_Disable(); + EnableBothScriptContexts(); + DestroyTask(taskId); + break; + default: + if (task->data[2] == 0 && StorageSystemGetPartySize() == PARTY_SIZE) + { + StorageSystemClearMessageWindow(); + MenuPrint(gPCText_PartyFull2, 2, 15); + task->data[0] = 3; + } + else if (task->data[2] == 1 && StorageSystemGetPartySize() == 1) + { + StorageSystemClearMessageWindow(); + MenuPrint(gPCText_OnlyOne, 2, 15); + task->data[0] = 3; + } + else + { + fade_screen(1, 0); + task->data[0] = 4; + } + break; + } + break; + case 3: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + StorageSystemClearMessageWindow(); + MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + task->data[0] = 2; + } + else if (gMain.newKeys & DPAD_UP) + { + if (--task->data[1] < 0) + task->data[1] = 3; + MoveMenuCursor(-1); + task->data[1] = GetMenuCursorPos(); + StorageSystemClearMessageWindow(); + MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + task->data[0] = 2; + } + else if (gMain.newKeys & DPAD_DOWN) + { + if (++task->data[1] > 3) + task->data[1] = 0; + MoveMenuCursor(1); + task->data[1] = GetMenuCursorPos(); + StorageSystemClearMessageWindow(); + MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + task->data[0] = 2; + } + break; + case 4: + if (!gPaletteFade.active) + { + task_intro_29(task->data[2]); + DestroyTask(taskId); + } + break; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 666654ff6dcec5916a7eac8425a5ddaae3be1a0e Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 16:04:53 -0500 Subject: through ResetPokemonStorageSystem --- asm/pokemon_storage_system.s | 179 ----------------------------------- include/decoration.h | 1 - include/pokemon.h | 2 +- src/pokemon/pokemon_storage_system.c | 65 ++++++++++++- 4 files changed, 65 insertions(+), 182 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 8fc6cfdb2..0f7180cc2 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,185 +5,6 @@ .text - thumb_func_start ShowPokemonStorageSystem -ShowPokemonStorageSystem: @ 8096100 - push {lr} - ldr r0, _08096128 @ =Task_PokemonStorageSystem - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0809612C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x8] - strh r0, [r1, 0xA] - bl ScriptContext2_Enable - pop {r0} - bx r0 - .align 2, 0 -_08096128: .4byte Task_PokemonStorageSystem -_0809612C: .4byte gTasks - thumb_func_end ShowPokemonStorageSystem - - thumb_func_start sub_8096130 -sub_8096130: @ 8096130 - push {lr} - ldr r0, _0809615C @ =Task_PokemonStorageSystem - movs r1, 0x50 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08096160 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x8] - ldr r0, _08096164 @ =gUnknown_02038474 - ldrb r0, [r0] - strh r0, [r1, 0xA] - bl pal_fill_black - pop {r0} - bx r0 - .align 2, 0 -_0809615C: .4byte Task_PokemonStorageSystem -_08096160: .4byte gTasks -_08096164: .4byte gUnknown_02038474 - thumb_func_end sub_8096130 - - thumb_func_start StorageSystemCreatePrimaryMenu -StorageSystemCreatePrimaryMenu: @ 8096168 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0xD - movs r3, 0x9 - bl MenuDrawTextWindow - ldr r3, _080961A4 @ =gUnknown_083B600C - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x4 - bl PrintMenuItems - str r4, [sp] - movs r0, 0xC - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - movs r3, 0x4 - bl InitMenu - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080961A4: .4byte gUnknown_083B600C - thumb_func_end StorageSystemCreatePrimaryMenu - - thumb_func_start sub_80961A8 -sub_80961A8: @ 80961A8 - push {lr} - ldr r1, _080961C4 @ =gUnknown_02038474 - ldr r0, _080961C8 @ =gUnknown_083B6DB4 - ldr r0, [r0] - ldrb r0, [r0, 0x5] - strb r0, [r1] - ldr r1, _080961CC @ =gFieldCallback - ldr r0, _080961D0 @ =sub_8096130 - str r0, [r1] - ldr r0, _080961D4 @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_080961C4: .4byte gUnknown_02038474 -_080961C8: .4byte gUnknown_083B6DB4 -_080961CC: .4byte gFieldCallback -_080961D0: .4byte sub_8096130 -_080961D4: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_80961A8 - - thumb_func_start ResetPokemonStorageSystem -ResetPokemonStorageSystem: @ 80961D8 - push {r4-r7,lr} - ldr r1, _08096258 @ =gPokemonStorage - movs r0, 0 - strb r0, [r1] - movs r5, 0 - adds r7, r1, 0x4 -_080961E4: - movs r4, 0 - lsls r1, r5, 2 - adds r1, r5 - lsls r0, r1, 4 - subs r0, r1 - lsls r6, r0, 5 -_080961F0: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - adds r0, r7 - adds r0, r6, r0 - bl ZeroBoxMonData - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1D - bls _080961F0 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0xD - bls _080961E4 - movs r5, 0 -_08096214: - lsls r0, r5, 3 - adds r0, r5 - ldr r6, _0809625C @ =gPokemonStorage + 0x8344 - adds r0, r6 - ldr r1, _08096260 @ =gPCText_BOX - bl StringCopy - adds r4, r5, 0x1 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - lsls r4, 16 - lsrs r5, r4, 16 - cmp r5, 0xD - bls _08096214 - movs r5, 0 - adds r3, r6, 0 - adds r3, 0x7E - movs r2, 0x3 -_0809623E: - adds r0, r5, r3 - adds r1, r5, 0 - ands r1, r2 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0xD - bls _0809623E - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08096258: .4byte gPokemonStorage -_0809625C: .4byte gPokemonStorage + 0x8344 -_08096260: .4byte gPCText_BOX - thumb_func_end ResetPokemonStorageSystem - thumb_func_start sub_8096264 sub_8096264: @ 8096264 push {r4-r6,lr} diff --git a/include/decoration.h b/include/decoration.h index 3d619a598..4ac26998e 100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -133,7 +133,6 @@ extern u8 gUnknown_020391A8; extern u8 gUnknown_020391A9; extern u8 gUnknown_020391AA; extern u8 gUnknown_02039234; -extern void (*gFieldCallback)(void); extern const struct YesNoFuncTable gUnknown_083EC96C[]; extern struct UnkStruct_020391B4 gUnknown_020391B4[16]; diff --git a/include/pokemon.h b/include/pokemon.h index 89599d994..7edd3395f 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -421,7 +421,7 @@ struct PokemonStorage /*0x0000*/ u8 currentBox; /*0x0004*/ struct BoxPokemon boxes[14][30]; /*0x8344*/ u8 boxNames[14][9]; - /*0x83c2*/ u8 unkArray[14]; + /*0x83c2*/ u8 wallpaper[14]; }; struct SpindaSpot diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index a5a3bdcd8..8f0753a2d 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -1,6 +1,8 @@ #include "global.h" #include "palette.h" #include "field_weather.h" +#include "overworld.h" +#include "field_fadetransition.h" #include "menu.h" #include "main.h" #include "strings.h" @@ -20,14 +22,21 @@ struct ReverseMenuAction { u8 *text; }; +struct PokemonStorageSystemData { + u8 filler_0000[5]; + u8 unk_0005; +}; + +const struct PokemonStorageSystemData *gUnknown_083B6DB4; + void StorageSystemCreatePrimaryMenu(u8 whichMenu); void task_intro_29(u8 whichMenu); extern const struct StorageAction gUnknown_083B6DF4[]; - extern const struct ReverseMenuAction gUnknown_083B600C[]; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; +EWRAM_DATA u8 gUnknown_02038474; u8 sub_8095ADC(u8 boxId) { @@ -403,6 +412,60 @@ void Task_PokemonStorageSystem(u8 taskId) } } +void ShowPokemonStorageSystem(void) +{ + u8 taskId = CreateTask(Task_PokemonStorageSystem, 80); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + ScriptContext2_Enable(); +} + +void sub_8096130(void) +{ + u8 taskId = CreateTask(Task_PokemonStorageSystem, 80); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = gUnknown_02038474; + pal_fill_black(); +} + +void StorageSystemCreatePrimaryMenu(u8 a0) +{ + MenuDrawTextWindow(0, 0, 13, 9); + PrintMenuItems(1, 1, 4, (const struct MenuAction *)gUnknown_083B600C); + InitMenu(0, 1, 1, 4, a0, 12); +} + +void sub_80961A8(void) +{ + gUnknown_02038474 = gUnknown_083B6DB4->unk_0005; + gFieldCallback = sub_8096130; + SetMainCallback2(c2_exit_to_overworld_2_switch); +} + +void ResetPokemonStorageSystem(void) +{ + u16 boxId; + u16 boxMon; + + gPokemonStorage.currentBox = 0; + for (boxId = 0; boxId < 14; boxId++) + { + for (boxMon = 0; boxMon < 30; boxMon++) + { + ZeroBoxMonData(gPokemonStorage.boxes[boxId] + boxMon); + } + } + for (boxId = 0; boxId < 14; boxId++) + { + u8 *dest = StringCopy(gPokemonStorage.boxNames[boxId], gPCText_BOX); + ConvertIntToDecimalStringN(dest, boxId + 1, STR_CONV_MODE_LEFT_ALIGN, 2); + } + for (boxId = 0; boxId < 14; boxId++) + { + gPokemonStorage.wallpaper[boxId] = boxId & 0x03; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 92577647185e885298bfe3e4159f702730bdf310 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 16:40:49 -0500 Subject: sub_8096264 --- asm/pokemon_storage_system.s | 81 ------------------------------ data/pokemon_storage_system.s | 55 -------------------- ld_script.txt | 1 + src/pokemon/pokemon_storage_system.c | 97 +++++++++++++++++++++++++++++++----- 4 files changed, 86 insertions(+), 148 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 0f7180cc2..d04e8cec7 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,87 +5,6 @@ .text - thumb_func_start sub_8096264 -sub_8096264: @ 8096264 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x20 - mov r8, r0 - adds r4, r1, 0 - adds r6, r2, 0 - mov r9, r3 - lsls r4, 16 - lsrs r4, 16 - lsls r6, 16 - lsrs r6, 16 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, _080962F4 @ =gBoxSelectionPopupPalette - str r0, [sp, 0x18] - ldr r1, _080962F8 @ =0xffff0000 - add r5, sp, 0x18 - ldr r0, [r5, 0x4] - ands r0, r1 - orrs r0, r6 - str r0, [r5, 0x4] - mov r1, sp - ldr r0, _080962FC @ =gBoxSelectionPopupCenterTiles - str r0, [sp] - movs r0, 0x80 - lsls r0, 4 - strh r0, [r1, 0x4] - strh r4, [r1, 0x6] - ldr r0, _08096300 @ =gBoxSelectionPopupSidesTiles - str r0, [sp, 0x8] - movs r0, 0xC0 - lsls r0, 1 - strh r0, [r1, 0xC] - adds r0, r4, 0x1 - strh r0, [r1, 0xE] - add r0, sp, 0x10 - movs r1, 0 - movs r2, 0x8 - bl memset - adds r0, r5, 0 - bl LoadSpritePalette - mov r0, sp - bl LoadSpriteSheets - ldr r0, _08096304 @ =gUnknown_02038478 - mov r1, r8 - str r1, [r0] - movs r0, 0x90 - lsls r0, 2 - add r0, r8 - strh r4, [r0] - ldr r0, _08096308 @ =0x00000242 - add r0, r8 - strh r6, [r0] - ldr r0, _0809630C @ =0x0000023e - add r8, r0 - mov r0, r9 - mov r1, r8 - strb r0, [r1] - add sp, 0x20 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080962F4: .4byte gBoxSelectionPopupPalette -_080962F8: .4byte 0xffff0000 -_080962FC: .4byte gBoxSelectionPopupCenterTiles -_08096300: .4byte gBoxSelectionPopupSidesTiles -_08096304: .4byte gUnknown_02038478 -_08096308: .4byte 0x00000242 -_0809630C: .4byte 0x0000023e - thumb_func_end sub_8096264 - thumb_func_start sub_8096310 sub_8096310: @ 8096310 push {r4,r5,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index b765656f7..6bdb0edd0 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,61 +3,6 @@ .section .rodata - .align 2 -gUnknown_083B600C:: @ 83B600C - .4byte PCText_WithdrawPoke, PCText_MovePokeToParty - .4byte PCText_DepositPoke, PCText_StorePokeInBox - .4byte PCText_MovePoke, PCText_OrganizeBoxesParty - .4byte PCText_SeeYa, PCText_ReturnToPrevMenu - - .align 2 -gSpriteAnim_83B602C:: @ 83B602C - obj_image_anim_frame 0, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83B6034:: @ 83B6034 - obj_image_anim_frame 4, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83B603C:: @ 83B603C - obj_image_anim_frame 6, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83B6044:: @ 83B6044 - obj_image_anim_frame 10, 5 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_83B604C:: @ 83B604C - .4byte gSpriteAnim_83B602C - .4byte gSpriteAnim_83B6034 - .4byte gSpriteAnim_83B603C - .4byte gSpriteAnim_83B6044 - - .align 2 -gSpriteAffineAnim_83B605C:: @ 83B605C - obj_rot_scal_anim_frame 0xE0, 0xE0, 0, 0 - obj_rot_scal_anim_end - - .align 2 -gSpriteAffineAnimTable_83B606C:: @ 83B606C - .4byte gSpriteAffineAnim_83B605C - - .align 2 -gBoxSelectionPopupPalette:: @ 83B6070 - .incbin "graphics/pokemon_storage/box_selection_popup.gbapal" - - .align 2 -gBoxSelectionPopupCenterTiles:: @ 83B6090 - .incbin "graphics/pokemon_storage/box_selection_popup_center.4bpp" - - .align 2 -gBoxSelectionPopupSidesTiles:: @ 83B6890 - .incbin "graphics/pokemon_storage/box_selection_popup_sides.4bpp" - .align 2 gPokemonStorageScrollingBGPalette:: @ 83B6A10 .incbin "graphics/pokemon_storage/scrolling_bg.gbapal" diff --git a/ld_script.txt b/ld_script.txt index d0256f397..4ac9ea4ee 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -510,6 +510,7 @@ SECTIONS { src/pokemon/pokedex.o(.rodata); src/engine/trainer_card.o(.rodata); src/battle/battle_party_menu.o(.rodata); + src/pokemon/pokemon_storage_system.o(.rodata); data/pokemon_storage_system.o(.rodata); src/pokemon/pokemon_icon.o(.rodata); src/pokemon/pokemon_summary_screen.o(.rodata); diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 8f0753a2d..bc43616a9 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -17,9 +17,9 @@ struct StorageAction { u8 format; }; -struct ReverseMenuAction { - u32 unk0; - u8 *text; +struct PSS_MenuStringPtrs { + const u8 *text; + const u8 *desc; }; struct PokemonStorageSystemData { @@ -27,16 +27,71 @@ struct PokemonStorageSystemData { u8 unk_0005; }; -const struct PokemonStorageSystemData *gUnknown_083B6DB4; +struct UnkPSSStruct_2002370 { + u8 filler_0000[0x23e]; + u8 unk_023e; + u16 unk_0240; + u16 unk_0242; +}; void StorageSystemCreatePrimaryMenu(u8 whichMenu); void task_intro_29(u8 whichMenu); +const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { + {PCText_WithdrawPoke, PCText_MovePokeToParty}, + {PCText_DepositPoke, PCText_StorePokeInBox}, + {PCText_MovePoke, PCText_OrganizeBoxesParty}, + {PCText_SeeYa, PCText_ReturnToPrevMenu} +}; + +const union AnimCmd gSpriteAnim_83B602C[] = { + ANIMCMD_FRAME( 0, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83B6034[] = { + ANIMCMD_FRAME( 4, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83B603C[] = { + ANIMCMD_FRAME( 6, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83B6044[] = { + ANIMCMD_FRAME(10, 5), + ANIMCMD_END +}; + +const union AnimCmd *const gSpriteAnimTable_83B604C[] = { + gSpriteAnim_83B602C, + gSpriteAnim_83B6034, + gSpriteAnim_83B603C, + gSpriteAnim_83B6044 +}; + +const union AffineAnimCmd gSpriteAffineAnim_83B605C[] = { + AFFINEANIMCMD_FRAME(0xe0, 0xe0, 0, 0), + AFFINEANIMCMD_END +}; + +const union AffineAnimCmd *const gSpriteAffineAnimTable_83B606C[] = { + gSpriteAffineAnim_83B605C +}; + +const u16 gBoxSelectionPopupPalette[] = INCBIN_U16("graphics/pokemon_storage/box_selection_popup.gbapal"); + +const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_center.4bpp"); + +const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); + extern const struct StorageAction gUnknown_083B6DF4[]; -extern const struct ReverseMenuAction gUnknown_083B600C[]; +extern const struct PokemonStorageSystemData *gUnknown_083B6DB4; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; EWRAM_DATA u8 gUnknown_02038474; +EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478; u8 sub_8095ADC(u8 boxId) { @@ -318,7 +373,7 @@ void Task_PokemonStorageSystem(u8 taskId) case 0: StorageSystemCreatePrimaryMenu(task->data[1]); MenuDisplayMessageBox(); - MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + MenuPrint(gUnknown_083B600C[task->data[1]].desc, 2, 15); task->data[0]++; break; case 1: @@ -342,7 +397,7 @@ void Task_PokemonStorageSystem(u8 taskId) { task->data[1] = task->data[3]; StorageSystemClearMessageWindow(); - MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + MenuPrint(gUnknown_083B600C[task->data[1]].desc, 2, 15); } break; case -1: @@ -378,7 +433,7 @@ void Task_PokemonStorageSystem(u8 taskId) if (gMain.newKeys & (A_BUTTON | B_BUTTON)) { StorageSystemClearMessageWindow(); - MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + MenuPrint(gUnknown_083B600C[task->data[1]].desc, 2, 15); task->data[0] = 2; } else if (gMain.newKeys & DPAD_UP) @@ -388,7 +443,7 @@ void Task_PokemonStorageSystem(u8 taskId) MoveMenuCursor(-1); task->data[1] = GetMenuCursorPos(); StorageSystemClearMessageWindow(); - MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + MenuPrint(gUnknown_083B600C[task->data[1]].desc, 2, 15); task->data[0] = 2; } else if (gMain.newKeys & DPAD_DOWN) @@ -398,7 +453,7 @@ void Task_PokemonStorageSystem(u8 taskId) MoveMenuCursor(1); task->data[1] = GetMenuCursorPos(); StorageSystemClearMessageWindow(); - MenuPrint(gUnknown_083B600C[task->data[1]].text, 2, 15); + MenuPrint(gUnknown_083B600C[task->data[1]].desc, 2, 15); task->data[0] = 2; } break; @@ -428,11 +483,11 @@ void sub_8096130(void) pal_fill_black(); } -void StorageSystemCreatePrimaryMenu(u8 a0) +void StorageSystemCreatePrimaryMenu(u8 whichMenu) { MenuDrawTextWindow(0, 0, 13, 9); PrintMenuItems(1, 1, 4, (const struct MenuAction *)gUnknown_083B600C); - InitMenu(0, 1, 1, 4, a0, 12); + InitMenu(0, 1, 1, 4, whichMenu, 12); } void sub_80961A8(void) @@ -466,6 +521,24 @@ void ResetPokemonStorageSystem(void) } } +void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3) +{ + struct SpritePalette palette = { + gBoxSelectionPopupPalette, palTag + }; + struct SpriteSheet sheets[] = { + {gBoxSelectionPopupCenterTiles, 0x800, tileTag}, + {gBoxSelectionPopupSidesTiles, 0x180, tileTag + 1}, + {} + }; + LoadSpritePalette(&palette); + LoadSpriteSheets(sheets); + gUnknown_02038478 = a0; + a0->unk_0240 = tileTag; + a0->unk_0242 = palTag; + a0->unk_023e = a3; +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From aa023a5cb52c7b7a4cb2e23aadcd7db4bf0b3483 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 6 Jan 2018 22:21:05 -0500 Subject: through sub_80963D0 --- asm/pokemon_storage_system.s | 319 ----------------------------------- src/pokemon/pokemon_storage_system.c | 113 ++++++++++++- 2 files changed, 112 insertions(+), 320 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index d04e8cec7..ebbc84a5b 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,325 +5,6 @@ .text - thumb_func_start sub_8096310 -sub_8096310: @ 8096310 - push {r4,r5,lr} - ldr r4, _08096344 @ =gUnknown_02038478 - ldr r0, [r4] - ldr r1, _08096348 @ =0x00000242 - adds r0, r1 - ldrh r0, [r0] - bl FreeSpritePaletteByTag - ldr r0, [r4] - movs r5, 0x90 - lsls r5, 2 - adds r0, r5 - ldrh r0, [r0] - bl FreeSpriteTilesByTag - ldr r0, [r4] - adds r0, r5 - ldrh r0, [r0] - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - bl FreeSpriteTilesByTag - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08096344: .4byte gUnknown_02038478 -_08096348: .4byte 0x00000242 - thumb_func_end sub_8096310 - - thumb_func_start sub_809634C -sub_809634C: @ 809634C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_80963D0 - pop {r0} - bx r0 - thumb_func_end sub_809634C - - thumb_func_start sub_809635C -sub_809635C: @ 809635C - push {lr} - bl sub_809658C - pop {r0} - bx r0 - thumb_func_end sub_809635C - - thumb_func_start sub_8096368 -sub_8096368: @ 8096368 - push {lr} - ldr r0, _08096380 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08096384 - movs r0, 0x5 - bl PlaySE - movs r0, 0xC9 - b _080963CC - .align 2, 0 -_08096380: .4byte gMain -_08096384: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080963A4 - movs r0, 0x5 - bl PlaySE - ldr r0, _080963A0 @ =gUnknown_02038478 - ldr r0, [r0] - movs r1, 0x8F - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - b _080963CC - .align 2, 0 -_080963A0: .4byte gUnknown_02038478 -_080963A4: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080963B8 - movs r0, 0x5 - bl PlaySE - bl sub_809662C - b _080963CA -_080963B8: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080963CA - movs r0, 0x5 - bl PlaySE - bl sub_80965F8 -_080963CA: - movs r0, 0xC8 -_080963CC: - pop {r1} - bx r1 - thumb_func_end sub_8096368 - - thumb_func_start sub_80963D0 -sub_80963D0: @ 80963D0 - push {r4-r6,lr} - sub sp, 0x3C - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0 - movs r1, 0 - str r0, [sp, 0x34] - str r1, [sp, 0x38] - movs r1, 0xC0 - lsls r1, 24 - ldr r0, [sp, 0x34] - orrs r0, r1 - str r0, [sp, 0x34] - ldr r1, _08096564 @ =0xffff0fff - add r4, sp, 0x34 - ldr r0, [r4, 0x4] - ands r0, r1 - movs r1, 0x80 - lsls r1, 5 - orrs r0, r1 - str r0, [r4, 0x4] - add r1, sp, 0x1C - movs r2, 0 - strh r2, [r1] - mov r0, sp - adds r0, 0x1E - strh r2, [r0] - str r4, [sp, 0x20] - ldr r0, _08096568 @ =gDummySpriteAnimTable - str r0, [sp, 0x24] - str r2, [sp, 0x28] - ldr r0, _0809656C @ =gDummySpriteAffineAnimTable - str r0, [sp, 0x2C] - ldr r0, _08096570 @ =SpriteCallbackDummy - str r0, [sp, 0x30] - add r0, sp, 0x4 - movs r2, 0x18 - bl memcpy - ldr r6, _08096574 @ =gUnknown_02038478 - ldr r0, [r6] - movs r1, 0x8F - lsls r1, 2 - adds r0, r1 - strb r5, [r0] - add r2, sp, 0x4 - ldr r1, [r6] - movs r5, 0x90 - lsls r5, 2 - adds r0, r1, r5 - ldrh r0, [r0] - strh r0, [r2] - ldr r3, _08096578 @ =0x00000242 - adds r1, r3 - ldrh r0, [r1] - strh r0, [r2, 0x2] - adds r0, r2, 0 - movs r1, 0xA0 - movs r2, 0x60 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - ldr r3, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809657C @ =gSprites - adds r0, r1 - str r0, [r3] - ldrb r2, [r4, 0x1] - movs r1, 0x3F - adds r0, r1, 0 - ands r0, r2 - movs r2, 0x80 - orrs r0, r2 - strb r0, [r4, 0x1] - ldrb r0, [r4, 0x3] - ands r1, r0 - movs r0, 0x40 - orrs r1, r0 - strb r1, [r4, 0x3] - add r1, sp, 0x4 - adds r3, r5 - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r1] - ldr r0, _08096580 @ =gSpriteAnimTable_83B604C - str r0, [sp, 0xC] - movs r4, 0 -_08096488: - ldr r0, [r6] - ldr r1, _08096584 @ =0x0000023e - adds r0, r1 - ldrb r3, [r0] - add r0, sp, 0x4 - movs r1, 0x7C - movs r2, 0x50 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - ldr r2, [r6] - lsls r3, r4, 2 - adds r2, 0x4 - adds r2, r3 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809657C @ =gSprites - adds r1, r0, r1 - str r1, [r2] - movs r5, 0 - movs r0, 0x2 - ands r0, r4 - cmp r0, 0 - beq _080964C2 - movs r0, 0xC4 - strh r0, [r1, 0x20] - movs r5, 0x2 -_080964C2: - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _080964E6 - ldr r1, [r6] - adds r1, 0x4 - adds r1, r3 - ldr r2, [r1] - movs r0, 0x70 - strh r0, [r2, 0x22] - ldr r2, [r1] - ldrb r1, [r2, 0x3] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x3] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_080964E6: - ldr r0, [r6] - adds r0, 0x4 - adds r0, r3 - ldr r0, [r0] - lsls r1, r5, 24 - lsrs r1, 24 - bl StartSpriteAnim - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3 - bls _08096488 - movs r4, 0 - ldr r5, _08096574 @ =gUnknown_02038478 -_08096504: - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 19 - movs r3, 0xF8 - lsls r3, 15 - adds r0, r3 - lsrs r0, 16 - lsls r2, r4, 24 - lsrs r2, 24 - ldr r1, [r5] - ldr r3, _08096584 @ =0x0000023e - adds r1, r3 - ldrb r1, [r1] - str r1, [sp] - movs r1, 0x58 - movs r3, 0 - bl sub_809A9A0 - adds r2, r0, 0 - ldr r0, [r5] - lsls r1, r4, 2 - adds r0, 0x20 - adds r0, r1 - str r2, [r0] - cmp r2, 0 - beq _0809654C - movs r1, 0x1 - cmp r4, 0 - bne _08096544 - movs r3, 0x1 - negs r3, r3 - adds r1, r3, 0 -_08096544: - strh r1, [r2, 0x2E] - ldr r1, [r0] - ldr r0, _08096588 @ =sub_8096784 - str r0, [r1, 0x1C] -_0809654C: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _08096504 - bl sub_809665C - add sp, 0x3C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08096564: .4byte 0xffff0fff -_08096568: .4byte gDummySpriteAnimTable -_0809656C: .4byte gDummySpriteAffineAnimTable -_08096570: .4byte SpriteCallbackDummy -_08096574: .4byte gUnknown_02038478 -_08096578: .4byte 0x00000242 -_0809657C: .4byte gSprites -_08096580: .4byte gSpriteAnimTable_83B604C -_08096584: .4byte 0x0000023e -_08096588: .4byte sub_8096784 - thumb_func_end sub_80963D0 - thumb_func_start sub_809658C sub_809658C: @ 809658C push {r4-r6,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index bc43616a9..37414f32b 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -1,5 +1,7 @@ #include "global.h" #include "palette.h" +#include "constants/songs.h" +#include "sound.h" #include "field_weather.h" #include "overworld.h" #include "field_fadetransition.h" @@ -28,7 +30,13 @@ struct PokemonStorageSystemData { }; struct UnkPSSStruct_2002370 { - u8 filler_0000[0x23e]; + struct Sprite *unk_0000; + struct Sprite *unk_0004[4]; + u32 unk_0014[3]; + struct Sprite *unk_0020[2]; + u8 filler_0028[0x214]; + u8 unk_023c; + u8 unk_023d; u8 unk_023e; u16 unk_0240; u16 unk_0242; @@ -36,6 +44,13 @@ struct UnkPSSStruct_2002370 { void StorageSystemCreatePrimaryMenu(u8 whichMenu); void task_intro_29(u8 whichMenu); +void sub_80963D0(u8 a0); +void sub_809658C(void); +void sub_80965F8(void); +void sub_809662C(void); +void sub_809665C(void); +void sub_8096784(struct Sprite *sprite); +struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, @@ -539,6 +554,102 @@ void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3 a0->unk_023e = a3; } +void sub_8096310(void) +{ + FreeSpritePaletteByTag(gUnknown_02038478->unk_0242); + FreeSpriteTilesByTag(gUnknown_02038478->unk_0240); + FreeSpriteTilesByTag(gUnknown_02038478->unk_0240 + 1); +} + +void sub_809634C(u8 a0) +{ + sub_80963D0(a0); +} + +void sub_809635C(void) +{ + sub_809658C(); +} + +u8 sub_8096368(void) +{ + if (gMain.newKeys & B_BUTTON) + { + PlaySE(SE_SELECT); + return 201; + } + if (gMain.newKeys & A_BUTTON) + { + PlaySE(SE_SELECT); + return gUnknown_02038478->unk_023c; + } + if (gMain.newKeys & DPAD_LEFT) + { + PlaySE(SE_SELECT); + sub_809662C(); + } + else if (gMain.newKeys & DPAD_RIGHT) + { + PlaySE(SE_SELECT); + sub_80965F8(); + } + return 200; +} + +void sub_80963D0(u8 a0) +{ + u16 i; + u8 spriteId; + struct SpriteTemplate template; + struct OamData oamData = {}; + oamData.size = 3; + oamData.paletteNum = 1; + template = (struct SpriteTemplate){ + 0, 0, &oamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + }; + + gUnknown_02038478->unk_023c = a0; + template.tileTag = gUnknown_02038478->unk_0240; + template.paletteTag = gUnknown_02038478->unk_0242; + + spriteId = CreateSprite(&template, 0xa0, 0x60, 0); + gUnknown_02038478->unk_0000 = gSprites + spriteId; + + oamData.shape = ST_OAM_V_RECTANGLE; + oamData.size = 1; + template.tileTag = gUnknown_02038478->unk_0240 + 1; + template.anims = gSpriteAnimTable_83B604C; + for (i = 0; i < 4; i++) + { + u16 r5; + spriteId = CreateSprite(&template, 0x7c, 0x50, gUnknown_02038478->unk_023e); + gUnknown_02038478->unk_0004[i] = gSprites + spriteId; + r5 = 0; + if (i & 2) + { + gUnknown_02038478->unk_0004[i]->pos1.x = 0xc4; + r5 = 2; + } + if (i & 1) + { + gUnknown_02038478->unk_0004[i]->pos1.y = 0x70; + gUnknown_02038478->unk_0004[i]->oam.size = 0; + r5++; + } + StartSpriteAnim(gUnknown_02038478->unk_0004[i], r5); + } + for (i = 0; i < 2; i++) + { + gUnknown_02038478->unk_0020[i] = sub_809A9A0(72 * i + 0x7c, 0x58, i, 0, gUnknown_02038478->unk_023e); + if (gUnknown_02038478->unk_0020[i]) + { + gUnknown_02038478->unk_0020[i]->data[0] = (i == 0 ? -1 : 1); + gUnknown_02038478->unk_0020[i]->callback = sub_8096784; + } + } + sub_809665C(); +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 92fa7570b99d216f75becbd362a124a12cc1dcde Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 18:44:14 -0500 Subject: through task_intro_29 --- asm/pokemon_storage_system.s | 309 +---------------------------------- include/ewram.h | 1 + src/pokemon/pokemon_storage_system.c | 125 ++++++++++++-- 3 files changed, 116 insertions(+), 319 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index ebbc84a5b..b4addb8e7 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,313 +5,6 @@ .text - thumb_func_start sub_809658C -sub_809658C: @ 809658C - push {r4-r6,lr} - ldr r4, _080965F4 @ =gUnknown_02038478 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _080965A2 - bl DestroySprite - ldr r1, [r4] - movs r0, 0 - str r0, [r1] -_080965A2: - movs r5, 0 - adds r6, r4, 0 -_080965A6: - ldr r0, [r6] - lsls r4, r5, 2 - adds r0, 0x4 - adds r0, r4 - ldr r0, [r0] - cmp r0, 0 - beq _080965C2 - bl DestroySprite - ldr r0, [r6] - adds r0, 0x4 - adds r0, r4 - movs r1, 0 - str r1, [r0] -_080965C2: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x3 - bls _080965A6 - movs r5, 0 -_080965CE: - ldr r0, _080965F4 @ =gUnknown_02038478 - ldr r0, [r0] - lsls r1, r5, 2 - adds r0, 0x20 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _080965E2 - bl DestroySprite -_080965E2: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x1 - bls _080965CE - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080965F4: .4byte gUnknown_02038478 - thumb_func_end sub_809658C - - thumb_func_start sub_80965F8 -sub_80965F8: @ 80965F8 - push {lr} - ldr r2, _08096628 @ =gUnknown_02038478 - ldr r1, [r2] - movs r0, 0x8F - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD - bls _0809661E - ldr r0, [r2] - movs r1, 0x8F - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_0809661E: - bl sub_809665C - pop {r0} - bx r0 - .align 2, 0 -_08096628: .4byte gUnknown_02038478 - thumb_func_end sub_80965F8 - - thumb_func_start sub_809662C -sub_809662C: @ 809662C - push {lr} - ldr r0, _08096644 @ =gUnknown_02038478 - ldr r2, [r0] - movs r1, 0x8F - lsls r1, 2 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08096648 - subs r1, r0, 0x1 - b _0809664A - .align 2, 0 -_08096644: .4byte gUnknown_02038478 -_08096648: - movs r1, 0xD -_0809664A: - movs r3, 0x8F - lsls r3, 2 - adds r0, r2, r3 - strb r1, [r0] - bl sub_809665C - pop {r0} - bx r0 - thumb_func_end sub_809662C - - thumb_func_start sub_809665C -sub_809665C: @ 809665C - push {r4-r7,lr} - ldr r5, _080966B4 @ =gUnknown_02038478 - ldr r0, [r5] - movs r4, 0x8F - lsls r4, 2 - adds r0, r4 - ldrb r0, [r0] - bl sub_8095ADC - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, _080966B8 @ =gStringVar1 - movs r6, 0xFC - strb r6, [r2] - movs r0, 0x4 - strb r0, [r2, 0x1] - movs r0, 0xF - strb r0, [r2, 0x2] - movs r0, 0x1 - strb r0, [r2, 0x3] - movs r0, 0xE - strb r0, [r2, 0x4] - adds r2, 0x5 - ldr r0, [r5] - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 3 - adds r1, r0 - ldr r0, _080966BC @ =gPokemonStorage + 0x8344 - adds r1, r0 - adds r0, r2, 0 - bl StringCopy - adds r2, r0, 0 - movs r0, 0xFE - strb r0, [r2] - strb r6, [r2, 0x1] - movs r0, 0x11 - strb r0, [r2, 0x2] - cmp r7, 0x9 - bhi _080966C0 - movs r0, 0x28 - b _080966C2 - .align 2, 0 -_080966B4: .4byte gUnknown_02038478 -_080966B8: .4byte gStringVar1 -_080966BC: .4byte gPokemonStorage + 0x8344 -_080966C0: - movs r0, 0x22 -_080966C2: - strb r0, [r2, 0x3] - adds r2, 0x4 - adds r0, r2, 0 - adds r1, r7, 0 - bl ConvertIntToDecimalString - adds r2, r0, 0 - movs r0, 0xBA - strb r0, [r2] - movs r0, 0xA4 - strb r0, [r2, 0x1] - movs r0, 0xA1 - strb r0, [r2, 0x2] - movs r0, 0xFF - strb r0, [r2, 0x3] - ldr r0, _080966F0 @ =gStringVar1 - movs r1, 0 - movs r2, 0x1 - bl sub_80966F4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080966F0: .4byte gStringVar1 - thumb_func_end sub_809665C - - thumb_func_start sub_80966F4 -sub_80966F4: @ 80966F4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - mov r8, r0 - adds r5, r1, 0 - adds r4, r2, 0 - lsls r5, 16 - lsrs r5, 16 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _08096764 @ =gUnknown_02038478 - ldr r0, [r0] - movs r1, 0x90 - lsls r1, 2 - adds r0, r1 - ldrh r0, [r0] - bl GetSpriteTileStartByTag - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 11 - lsls r4, 8 - ldr r2, _08096768 @ =0x06010000 - adds r4, r2 - adds r6, r4 - lsls r5, 5 - adds r6, r5 - ldr r0, _0809676C @ =gUnknown_083B6DB8 - ldr r5, [r0] - mov r1, sp - ldr r2, _08096770 @ =0x00001111 - adds r0, r2, 0 - strh r0, [r1] - ldr r4, _08096774 @ =0x040000d4 - str r1, [r4] - str r5, [r4, 0x4] - ldr r0, _08096778 @ =0x81000200 - str r0, [r4, 0x8] - ldr r0, [r4, 0x8] - ldr r0, _0809677C @ =gWindowConfig_81E6D38 - adds r1, r5, 0 - mov r2, r8 - bl sub_8004E3C - str r5, [r4] - str r6, [r4, 0x4] - ldr r0, _08096780 @ =0x80000200 - str r0, [r4, 0x8] - ldr r0, [r4, 0x8] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08096764: .4byte gUnknown_02038478 -_08096768: .4byte 0x06010000 -_0809676C: .4byte gUnknown_083B6DB8 -_08096770: .4byte 0x00001111 -_08096774: .4byte 0x040000d4 -_08096778: .4byte 0x81000200 -_0809677C: .4byte gWindowConfig_81E6D38 -_08096780: .4byte 0x80000200 - thumb_func_end sub_80966F4 - - thumb_func_start sub_8096784 -sub_8096784: @ 8096784 - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x30] - adds r0, 0x1 - movs r2, 0 - strh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - ble _080967B4 - strh r2, [r1, 0x30] - ldrh r0, [r1, 0x2E] - ldrh r3, [r1, 0x24] - adds r0, r3 - strh r0, [r1, 0x24] - ldrh r0, [r1, 0x32] - adds r0, 0x1 - strh r0, [r1, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _080967B4 - strh r2, [r1, 0x32] - strh r2, [r1, 0x24] -_080967B4: - pop {r0} - bx r0 - thumb_func_end sub_8096784 - - thumb_func_start task_intro_29 -task_intro_29: @ 80967B8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080967D0 @ =gUnknown_0203847D - strb r0, [r1] - ldr r1, _080967D4 @ =gSharedMem - strb r0, [r1, 0x5] - ldr r0, _080967D8 @ =sub_8096884 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_080967D0: .4byte gUnknown_0203847D -_080967D4: .4byte gSharedMem -_080967D8: .4byte sub_8096884 - thumb_func_end task_intro_29 - thumb_func_start sub_80967DC sub_80967DC: @ 80967DC ldr r0, _08096800 @ =REG_BG0HOFS @@ -9960,7 +9653,7 @@ sub_809B62C: @ 809B62C lsls r0, 24 lsrs r6, r0, 24 adds r0, r6, 0 - bl sub_8095B24 + bl GetIndexOfFirstEmptySpaceInBoxN lsls r0, 16 lsrs r4, r0, 16 asrs r0, 16 diff --git a/include/ewram.h b/include/ewram.h index 5a350840a..9a281368f 100755 --- a/include/ewram.h +++ b/include/ewram.h @@ -28,6 +28,7 @@ extern u8 gSharedMem[]; #define ewram0_9(i) (u8 *)(ewram_addr + (i * 0x20)) #define ewram0_10 (*(struct UnknownPokenav0*)(gSharedMem + 0)) #define ewram0_11 (*(struct UnknownPokenav0_1*)(gSharedMem + 0)) +#define ePokemonStorageSystem (*(struct PokemonStorageSystemData *)(gSharedMem + 0)) #define ewram4 (*(struct UnknownStruct8 *)(gSharedMem + 0x4)) #define ewram520 ((struct UnknownStruct7 *)(gSharedMem + 0x00520)) #define ewram520_2 (u8 *)(ewram_addr + 0x520) diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 37414f32b..30c0f2b67 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -35,7 +35,7 @@ struct UnkPSSStruct_2002370 { u32 unk_0014[3]; struct Sprite *unk_0020[2]; u8 filler_0028[0x214]; - u8 unk_023c; + u8 curBox; u8 unk_023d; u8 unk_023e; u16 unk_0240; @@ -43,13 +43,15 @@ struct UnkPSSStruct_2002370 { }; void StorageSystemCreatePrimaryMenu(u8 whichMenu); -void task_intro_29(u8 whichMenu); -void sub_80963D0(u8 a0); +void sub_80963D0(u8 curBox); void sub_809658C(void); void sub_80965F8(void); void sub_809662C(void); void sub_809665C(void); +void sub_80966F4(const u8 *sourceString, u16 x, u16 y); void sub_8096784(struct Sprite *sprite); +void task_intro_29(u8 whichMenu); +void sub_8096884(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { @@ -103,12 +105,15 @@ const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/bo extern const struct StorageAction gUnknown_083B6DF4[]; extern const struct PokemonStorageSystemData *gUnknown_083B6DB4; +extern u8 *const gUnknown_083B6DB8; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; EWRAM_DATA u8 gUnknown_02038474; EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478; +EWRAM_DATA u8 gUnknown_0203847C; +EWRAM_DATA u8 gUnknown_0203847D; -u8 sub_8095ADC(u8 boxId) +static u8 CountPokemonInBoxN(u8 boxId) { u16 i; u16 count; @@ -121,7 +126,7 @@ u8 sub_8095ADC(u8 boxId) return count; } -s16 sub_8095B24(u8 boxId) +s16 GetIndexOfFirstEmptySpaceInBoxN(u8 boxId) { u16 i; @@ -561,9 +566,9 @@ void sub_8096310(void) FreeSpriteTilesByTag(gUnknown_02038478->unk_0240 + 1); } -void sub_809634C(u8 a0) +void sub_809634C(u8 curBox) { - sub_80963D0(a0); + sub_80963D0(curBox); } void sub_809635C(void) @@ -581,7 +586,7 @@ u8 sub_8096368(void) if (gMain.newKeys & A_BUTTON) { PlaySE(SE_SELECT); - return gUnknown_02038478->unk_023c; + return gUnknown_02038478->curBox; } if (gMain.newKeys & DPAD_LEFT) { @@ -596,7 +601,7 @@ u8 sub_8096368(void) return 200; } -void sub_80963D0(u8 a0) +void sub_80963D0(u8 curBox) { u16 i; u8 spriteId; @@ -608,11 +613,11 @@ void sub_80963D0(u8 a0) 0, 0, &oamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy }; - gUnknown_02038478->unk_023c = a0; + gUnknown_02038478->curBox = curBox; template.tileTag = gUnknown_02038478->unk_0240; template.paletteTag = gUnknown_02038478->unk_0242; - spriteId = CreateSprite(&template, 0xa0, 0x60, 0); + spriteId = CreateSprite(&template, 0xA0, 0x60, 0); gUnknown_02038478->unk_0000 = gSprites + spriteId; oamData.shape = ST_OAM_V_RECTANGLE; @@ -650,6 +655,104 @@ void sub_80963D0(u8 a0) sub_809665C(); } +void sub_809658C(void) +{ + u16 i; + if (gUnknown_02038478->unk_0000) + { + DestroySprite(gUnknown_02038478->unk_0000); + gUnknown_02038478->unk_0000 = NULL; + } + for (i = 0; i < 4; i++) + { + if (gUnknown_02038478->unk_0004[i]) + { + DestroySprite(gUnknown_02038478->unk_0004[i]); + gUnknown_02038478->unk_0004[i] = NULL; + } + } + for (i = 0; i < 2; i++) + { + if (gUnknown_02038478->unk_0020[i]) + DestroySprite(gUnknown_02038478->unk_0020[i]); + } +} + +void sub_80965F8(void) +{ + if (++gUnknown_02038478->curBox > 13) + gUnknown_02038478->curBox = 0; + sub_809665C(); +} + +void sub_809662C(void) +{ + gUnknown_02038478->curBox = (gUnknown_02038478->curBox == 0 ? 13 : gUnknown_02038478->curBox - 1); + sub_809665C(); +} + +void sub_809665C(void) +{ + u8 nPokemonInBox = CountPokemonInBoxN(gUnknown_02038478->curBox); + u8 *stringVar = gStringVar1; + + stringVar[0] = EXT_CTRL_CODE_BEGIN; + stringVar[1] = 0x04; // EXT_CTRL_CODE_COLOR_HIGHLIGHT_SHADOW + stringVar[2] = 0x0F; // TEXT_COLOR_WHITE2 + stringVar[3] = 0x01; // TEXT_COLOR_DARK_GREY + stringVar[4] = 0x0E; // TEXT_COLOR_LIGHT_BLUE + stringVar += 5; + + stringVar = StringCopy(stringVar, gPokemonStorage.boxNames[gUnknown_02038478->curBox]); + + stringVar[0] = CHAR_NEWLINE; + stringVar[1] = EXT_CTRL_CODE_BEGIN; + stringVar[2] = 0x11; // EXT_CTRL_CODE_CLEAR + if (nPokemonInBox < 10) + stringVar[3] = 0x28; + else + stringVar[3] = 0x22; + stringVar += 4; + + stringVar = ConvertIntToDecimalString(stringVar, nPokemonInBox); + + stringVar[0] = CHAR_SLASH; + stringVar[1] = CHAR_0 + 3; + stringVar[2] = CHAR_0 + 0; + stringVar[3] = EOS; + sub_80966F4(gStringVar1, 0, 1); +} + +void sub_80966F4(const u8 *sourceString, u16 x, u16 y) +{ + u16 *vdest = (u16 *)(BG_CHAR_ADDR(4) + (GetSpriteTileStartByTag(gUnknown_02038478->unk_0240) * 32) + y * 256 + x * 32); + u8 *tileBuff = gUnknown_083B6DB8; + DmaFill16(3, 0x1111, tileBuff, 0x400); + sub_8004E3C(&gWindowConfig_81E6D38, tileBuff, sourceString); + DmaCopy16(3, tileBuff, vdest, 0x400); +} + +void sub_8096784(struct Sprite *sprite) +{ + if (++sprite->data[1] > 3) + { + sprite->data[1] = 0; + sprite->pos2.x += sprite->data[0]; + if (++sprite->data[2] > 5) + { + sprite->data[2] = 0; + sprite->pos2.x = 0; + } + } +} + +void task_intro_29(u8 whichMenu) +{ + gUnknown_0203847D = whichMenu; + ePokemonStorageSystem.unk_0005 = whichMenu; + SetMainCallback2(sub_8096884); +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From b9ad9b3ad547b200e66b293169acbbfe4f50f76d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 19:20:15 -0500 Subject: through sub_8096874 --- asm/pokemon_storage_system.s | 88 ------------------------------------ include/main.h | 2 + include/sprite.h | 1 + src/engine/naming_screen.c | 2 - src/field/use_pokeblock.c | 1 - src/pokemon/pokemon_storage_system.c | 47 +++++++++++++++++++ src/pokenav_before.c | 5 +- 7 files changed, 51 insertions(+), 95 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index b4addb8e7..da5d00899 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,94 +5,6 @@ .text - thumb_func_start sub_80967DC -sub_80967DC: @ 80967DC - ldr r0, _08096800 @ =REG_BG0HOFS - movs r1, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - subs r0, 0x2 - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - bx lr - .align 2, 0 -_08096800: .4byte REG_BG0HOFS - thumb_func_end sub_80967DC - - thumb_func_start sub_8096804 -sub_8096804: @ 8096804 - push {lr} - bl ResetPaletteFade - bl ResetSpriteData - bl FreeSpriteTileRanges - bl FreeAllSpritePalettes - bl ResetTasks - ldr r1, _0809683C @ =gReservedSpriteTileCount - movs r2, 0xA0 - lsls r2, 2 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08096840 @ =gSharedMem + 0x20 - adds r1, r0, 0 - adds r1, 0x8 - movs r2, 0x8 - bl sub_809CFDC - ldr r1, _08096844 @ =gKeyRepeatStartDelay - movs r0, 0x14 - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0809683C: .4byte gReservedSpriteTileCount -_08096840: .4byte gSharedMem + 0x20 -_08096844: .4byte gKeyRepeatStartDelay - thumb_func_end sub_8096804 - - thumb_func_start sub_8096848 -sub_8096848: @ 8096848 - push {lr} - bl sub_809B0D4 - ldr r2, _08096868 @ =gUnknown_0203847C - movs r1, 0 - ldr r0, _0809686C @ =gSharedMem - ldrb r0, [r0, 0x5] - cmp r0, 0x1 - bne _0809685C - movs r1, 0x1 -_0809685C: - strb r1, [r2] - ldr r1, _08096870 @ =gUnknown_0203847E - movs r0, 0 - strb r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08096868: .4byte gUnknown_0203847C -_0809686C: .4byte gSharedMem -_08096870: .4byte gUnknown_0203847E - thumb_func_end sub_8096848 - - thumb_func_start sub_8096874 -sub_8096874: @ 8096874 - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xFA - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - bx lr - thumb_func_end sub_8096874 - thumb_func_start sub_8096884 sub_8096884: @ 8096884 push {lr} diff --git a/include/main.h b/include/main.h index ff9bb89c7..78403225e 100644 --- a/include/main.h +++ b/include/main.h @@ -51,6 +51,8 @@ extern bool8 gLinkVSyncDisabled; extern const u8 gGameVersion; extern const u8 gGameLanguage; +extern u16 gKeyRepeatStartDelay; + void AgbMain(void); void SetMainCallback2(MainCallback callback); void InitKeys(void); diff --git a/include/sprite.h b/include/sprite.h index b72c09989..3ad418356 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -235,6 +235,7 @@ extern const union AffineAnimCmd *const gDummySpriteAffineAnimTable[]; extern s16 gSpriteCoordOffsetX; extern s16 gSpriteCoordOffsetY; extern u8 gReservedSpritePaletteCount; +extern u16 gReservedSpriteTileCount; extern u8 gOamLimit; diff --git a/src/engine/naming_screen.c b/src/engine/naming_screen.c index 440504d5a..6f34fd678 100644 --- a/src/engine/naming_screen.c +++ b/src/engine/naming_screen.c @@ -26,8 +26,6 @@ #define COLUMN_COUNT 10 #endif -extern u16 gKeyRepeatStartDelay; - extern u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality); const u8 gSpriteImage_83CE094[] = INCBIN_U8("graphics/naming_screen/pc_icon/0.4bpp"); diff --git a/src/field/use_pokeblock.c b/src/field/use_pokeblock.c index 7253ac901..354193c14 100644 --- a/src/field/use_pokeblock.c +++ b/src/field/use_pokeblock.c @@ -104,7 +104,6 @@ static EWRAM_DATA struct Pokeblock *gUnknown_0203930C = NULL; EWRAM_DATA u8 gPokeblockMonID = 0; EWRAM_DATA s16 gPokeblockGain = 0; -extern u16 gKeyRepeatStartDelay; extern u16 gSpecialVar_ItemId; // FIXME: remove after merge of #349 Pokeblock static void launch_c3_walk_stairs_and_run_once(void (*const)(void)); diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 30c0f2b67..9e559354b 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -24,9 +24,17 @@ struct PSS_MenuStringPtrs { const u8 *desc; }; +struct UnkStruct_2000020 { + struct UnkStruct_2000020 *unk_00; + u8 unk_04; + u8 unk_05; +}; + struct PokemonStorageSystemData { u8 filler_0000[5]; u8 unk_0005; + u8 filler_0006[26]; + struct UnkStruct_2000020 unk_0020[100]; // refine size later }; struct UnkPSSStruct_2002370 { @@ -53,6 +61,8 @@ void sub_8096784(struct Sprite *sprite); void task_intro_29(u8 whichMenu); void sub_8096884(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); +void sub_809B0D4(void); +void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 * a1, u8 a2); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, @@ -112,6 +122,7 @@ EWRAM_DATA u8 gUnknown_02038474; EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478; EWRAM_DATA u8 gUnknown_0203847C; EWRAM_DATA u8 gUnknown_0203847D; +EWRAM_DATA u8 gUnknown_0203847E; static u8 CountPokemonInBoxN(u8 boxId) { @@ -753,6 +764,42 @@ void task_intro_29(u8 whichMenu) SetMainCallback2(sub_8096884); } +void sub_80967DC(void) +{ + REG_BG0HOFS = 0; + REG_BG0VOFS = 0; + REG_BG1HOFS = 0; + REG_BG1VOFS = 0; + REG_BG2VOFS = 0; + REG_BG2HOFS = 0; + REG_BG3HOFS = 0; + REG_BG3VOFS = 0; +} + +void sub_8096804(void) +{ + ResetPaletteFade(); + ResetSpriteData(); + FreeSpriteTileRanges(); + FreeAllSpritePalettes(); + ResetTasks(); + gReservedSpriteTileCount = 0x280; + sub_809CFDC(ePokemonStorageSystem.unk_0020, ePokemonStorageSystem.unk_0020 + 1, 8); + gKeyRepeatStartDelay = 20; +} + +void sub_8096848(void) +{ + sub_809B0D4(); + gUnknown_0203847C = (ePokemonStorageSystem.unk_0005 == 1 ? 1 : 0); + gUnknown_0203847E = 0; +} + +void sub_8096874(void) +{ + REG_DISPCNT = DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON; +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { diff --git a/src/pokenav_before.c b/src/pokenav_before.c index 7693cba7d..53f17b211 100644 --- a/src/pokenav_before.c +++ b/src/pokenav_before.c @@ -294,9 +294,6 @@ extern void sub_80F5BF0(); extern void sub_80F6F64(); extern void sub_80F19FC(); -extern u16 gKeyRepeatStartDelay; - - void sub_80EBA5C() { switch (gMain.state) { default: @@ -378,7 +375,7 @@ void sub_80EBC10() { u16 i; u16 *var1; - gKeyRepeatStartDelay = 0x14; + gKeyRepeatStartDelay = 20; ewram0_10.playerPartyCount = CalculatePlayerPartyCount(); ewram0_10.var6ddc = 0; ewram0_10.var9344 = 0; -- cgit v1.2.3 From bfeaa80fcd9409645325c2f7ae94850f970fbb58 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 19:47:59 -0500 Subject: through sub_8096884 --- asm/pokemon_storage_system.s | 119 ----------------------------------- include/mon_markings.h | 26 ++++++++ src/pokemon/mon_markings.c | 20 +----- src/pokemon/pokemon_storage_system.c | 74 +++++++++++++++++++++- 4 files changed, 100 insertions(+), 139 deletions(-) create mode 100644 include/mon_markings.h diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index da5d00899..071ac48e9 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,125 +5,6 @@ .text - thumb_func_start sub_8096884 -sub_8096884: @ 8096884 - push {lr} - ldr r0, _080968A0 @ =gMain - ldr r1, _080968A4 @ =0x0000043c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x9 - bls _08096894 - b _08096986 -_08096894: - lsls r0, 2 - ldr r1, _080968A8 @ =_080968AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080968A0: .4byte gMain -_080968A4: .4byte 0x0000043c -_080968A8: .4byte _080968AC - .align 2, 0 -_080968AC: - .4byte _080968D4 - .4byte _080968E8 - .4byte _080968F4 - .4byte _08096904 - .4byte _0809690E - .4byte _08096918 - .4byte _0809691E - .4byte _08096924 - .4byte _0809692A - .4byte _08096964 -_080968D4: - movs r0, 0 - bl SetVBlankCallback - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - bl sub_8096804 - b _0809697A -_080968E8: - ldr r0, _080968F0 @ =gWindowConfig_81E6D00 - bl SetUpWindowConfig - b _0809697A - .align 2, 0 -_080968F0: .4byte gWindowConfig_81E6D00 -_080968F4: - ldr r0, _08096900 @ =gWindowConfig_81E6D00 - bl InitMenuWindow - bl MenuZeroFillScreen - b _0809697A - .align 2, 0 -_08096900: .4byte gWindowConfig_81E6D00 -_08096904: - bl sub_80967DC - bl sub_8096848 - b _0809697A -_0809690E: - bl sub_8098B48 - bl sub_809AA24 - b _0809697A -_08096918: - bl sub_8097DE0 - b _0809697A -_0809691E: - bl sub_8097E70 - b _0809697A -_08096924: - bl sub_8098400 - b _0809697A -_0809692A: - ldr r0, _08096950 @ =gPokemonStorage - ldrb r0, [r0] - bl sub_8099BF8 - ldr r2, _08096954 @ =gSharedMem - ldr r1, _08096958 @ =0x000012bc - adds r0, r2, r1 - movs r1, 0xA - strh r1, [r0] - ldr r1, _0809695C @ =0x000012be - adds r2, r1 - ldr r1, _08096960 @ =0x0000dacb - strh r1, [r2] - bl sub_80F727C - bl sub_80F7404 - b _0809697A - .align 2, 0 -_08096950: .4byte gPokemonStorage -_08096954: .4byte gSharedMem -_08096958: .4byte 0x000012bc -_0809695C: .4byte 0x000012be -_08096960: .4byte 0x0000dacb -_08096964: - bl sub_8096874 - ldr r0, _0809698C @ =sub_8096BF0 - bl sub_8096BE0 - ldr r0, _08096990 @ =sub_8096B38 - bl SetMainCallback2 - ldr r0, _08096994 @ =sub_8096AFC - bl SetVBlankCallback -_0809697A: - ldr r1, _08096998 @ =gMain - ldr r0, _0809699C @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08096986: - pop {r0} - bx r0 - .align 2, 0 -_0809698C: .4byte sub_8096BF0 -_08096990: .4byte sub_8096B38 -_08096994: .4byte sub_8096AFC -_08096998: .4byte gMain -_0809699C: .4byte 0x0000043c - thumb_func_end sub_8096884 - thumb_func_start sub_80969A0 sub_80969A0: @ 80969A0 push {r4,lr} diff --git a/include/mon_markings.h b/include/mon_markings.h new file mode 100644 index 000000000..a2b0ac821 --- /dev/null +++ b/include/mon_markings.h @@ -0,0 +1,26 @@ +#ifndef POKERUBY_MON_MARKINGS_H +#define POKERUBY_MON_MARKINGS_H + +struct PokemonMarkMenu +{ + /*0x0000*/ u16 baseTileTag; + /*0x0002*/ u16 basePaletteTag; + /*0x0004*/ u8 markings; // bit flags + /*0x0005*/ s8 cursorPos; + /*0x0006*/ bool8 markingsArray[4]; + /*0x000A*/ u8 cursorBaseY; + /*0x000B*/ bool8 spriteSheetLoadRequired; + /*0x000C*/ struct Sprite *menuWindowSprites[2]; // upper and lower halves of menu window + /*0x0014*/ struct Sprite *menuMarkingSprites[4]; + /*0x0024*/ struct Sprite *menuTextSprite; + /*0x0028*/ const u8 *frameTiles; + /*0x002C*/ const u16 *framePalette; + /*0x0030*/ u8 menuWindowSpriteTiles[0x1000]; + /*0x1030*/ u8 filler1030[0x80]; + /*0x10B0*/ u8 tileLoadState; +}; + +void sub_80F7404(void); +void sub_80F727C(struct PokemonMarkMenu *ptr); + +#endif //POKERUBY_MON_MARKINGS_H diff --git a/src/pokemon/mon_markings.c b/src/pokemon/mon_markings.c index b4144ea34..d27719c4a 100644 --- a/src/pokemon/mon_markings.c +++ b/src/pokemon/mon_markings.c @@ -5,6 +5,7 @@ #include "constants/songs.h" #include "sound.h" #include "sprite.h" +#include "mon_markings.h" #ifdef GERMAN #define MENU_TEXT_SPRITE_X_OFFSET 24 @@ -12,25 +13,6 @@ #define MENU_TEXT_SPRITE_X_OFFSET 32 #endif -struct PokemonMarkMenu -{ - /*0x0000*/ u16 baseTileTag; - /*0x0002*/ u16 basePaletteTag; - /*0x0004*/ u8 markings; // bit flags - /*0x0005*/ s8 cursorPos; - /*0x0006*/ bool8 markingsArray[4]; - /*0x000A*/ u8 cursorBaseY; - /*0x000B*/ bool8 spriteSheetLoadRequired; - /*0x000C*/ struct Sprite *menuWindowSprites[2]; // upper and lower halves of menu window - /*0x0014*/ struct Sprite *menuMarkingSprites[4]; - /*0x0024*/ struct Sprite *menuTextSprite; - /*0x0028*/ const u8 *frameTiles; - /*0x002C*/ const u16 *framePalette; - /*0x0030*/ u8 menuWindowSpriteTiles[0x1000]; - /*0x1030*/ u8 filler1030[0x80]; - /*0x10B0*/ u8 tileLoadState; -}; - extern u8 gPokenavConditionMenuMisc_Gfx[]; extern u16 gUnknown_08E966B8[]; diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 9e559354b..91d56a4b9 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -3,6 +3,7 @@ #include "constants/songs.h" #include "sound.h" #include "field_weather.h" +#include "mon_markings.h" #include "overworld.h" #include "field_fadetransition.h" #include "menu.h" @@ -34,7 +35,9 @@ struct PokemonStorageSystemData { u8 filler_0000[5]; u8 unk_0005; u8 filler_0006[26]; - struct UnkStruct_2000020 unk_0020[100]; // refine size later + struct UnkStruct_2000020 unk_0020[595]; // refine size later + u8 filler_12b8[4]; + struct PokemonMarkMenu unk_12bc; }; struct UnkPSSStruct_2002370 { @@ -60,6 +63,16 @@ void sub_80966F4(const u8 *sourceString, u16 x, u16 y); void sub_8096784(struct Sprite *sprite); void task_intro_29(u8 whichMenu); void sub_8096884(void); +void sub_8096AFC(void); +void sub_8096B38(void); +void sub_8096BE0(void (*func)(void)); +void sub_8096BF0(void); +void sub_8097DE0(void); +void sub_8097E70(void); +void sub_8098400(void); +void sub_8099BF8(u8 a0); +void sub_8098B48(void); +void sub_809AA24(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); void sub_809B0D4(void); void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 * a1, u8 a2); @@ -800,6 +813,65 @@ void sub_8096874(void) REG_DISPCNT = DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON; } +void sub_8096884(void) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + REG_DISPCNT = 0; + sub_8096804(); + gMain.state++; + break; + case 1: + SetUpWindowConfig(&gWindowConfig_81E6D00); + gMain.state++; + break; + case 2: + InitMenuWindow(&gWindowConfig_81E6D00); + MenuZeroFillScreen(); + gMain.state++; + break; + case 3: + sub_80967DC(); + sub_8096848(); + gMain.state++; + break; + case 4: + sub_8098B48(); + sub_809AA24(); + gMain.state++; + break; + case 5: + sub_8097DE0(); + gMain.state++; + break; + case 6: + sub_8097E70(); + gMain.state++; + break; + case 7: + sub_8098400(); + gMain.state++; + break; + case 8: + sub_8099BF8(gPokemonStorage.currentBox); + ePokemonStorageSystem.unk_12bc.baseTileTag = 0x000a; + ePokemonStorageSystem.unk_12bc.basePaletteTag = 0xdacb; + sub_80F727C(&ePokemonStorageSystem.unk_12bc); + sub_80F7404(); + gMain.state++; + break; + case 9: + sub_8096874(); + sub_8096BE0(sub_8096BF0); + SetMainCallback2(sub_8096B38); + SetVBlankCallback(sub_8096AFC); + gMain.state++; + break; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 0947fdf167bff7fe67e1344fea8b287fc59a6cd2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 21:27:40 -0500 Subject: sub_80969A0 --- asm/pokemon_storage_system.s | 150 ----------------------------------- src/pokemon/pokemon_storage_system.c | 97 ++++++++++++++++++++-- sym_ewram.txt | 54 ------------- 3 files changed, 90 insertions(+), 211 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 071ac48e9..47324f443 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,156 +5,6 @@ .text - thumb_func_start sub_80969A0 -sub_80969A0: @ 80969A0 - push {r4,lr} - sub sp, 0x4 - ldr r0, _080969BC @ =gMain - ldr r1, _080969C0 @ =0x0000043c - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0xA - bls _080969B2 - b _08096AE4 -_080969B2: - lsls r0, 2 - ldr r1, _080969C4 @ =_080969C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080969BC: .4byte gMain -_080969C0: .4byte 0x0000043c -_080969C4: .4byte _080969C8 - .align 2, 0 -_080969C8: - .4byte _080969F4 - .4byte _08096A34 - .4byte _08096A40 - .4byte _08096A50 - .4byte _08096A56 - .4byte _08096A60 - .4byte _08096A66 - .4byte _08096A6C - .4byte _08096A72 - .4byte _08096AAC - .4byte _08096AC8 -_080969F4: - movs r0, 0 - bl SetVBlankCallback - movs r1, 0x80 - lsls r1, 19 - movs r0, 0 - strh r0, [r1] - ldr r1, _08096A28 @ =gSharedMem - ldr r0, _08096A2C @ =gUnknown_0203847D - ldrb r0, [r0] - strb r0, [r1, 0x5] - bl sub_8096804 - ldr r4, _08096A30 @ =gUnknown_0203847F - ldrb r0, [r4] - cmp r0, 0x1 - bne _08096A1A - bl sub_809BBC0 -_08096A1A: - ldrb r0, [r4] - cmp r0, 0 - bne _08096AD8 - bl sub_809BD14 - b _08096AD8 - .align 2, 0 -_08096A28: .4byte gSharedMem -_08096A2C: .4byte gUnknown_0203847D -_08096A30: .4byte gUnknown_0203847F -_08096A34: - ldr r0, _08096A3C @ =gWindowConfig_81E6D00 - bl SetUpWindowConfig - b _08096AD8 - .align 2, 0 -_08096A3C: .4byte gWindowConfig_81E6D00 -_08096A40: - ldr r0, _08096A4C @ =gWindowConfig_81E6D00 - bl InitMenuWindow - bl MenuZeroFillScreen - b _08096AD8 - .align 2, 0 -_08096A4C: .4byte gWindowConfig_81E6D00 -_08096A50: - bl sub_80967DC - b _08096AD8 -_08096A56: - bl sub_8098B48 - bl sub_809AA98 - b _08096AD8 -_08096A60: - bl sub_8097DE0 - b _08096AD8 -_08096A66: - bl sub_8097E70 - b _08096AD8 -_08096A6C: - bl sub_8098400 - b _08096AD8 -_08096A72: - ldr r0, _08096A98 @ =gPokemonStorage - ldrb r0, [r0] - bl sub_8099BF8 - ldr r2, _08096A9C @ =gSharedMem - ldr r1, _08096AA0 @ =0x000012bc - adds r0, r2, r1 - movs r1, 0xA - strh r1, [r0] - ldr r1, _08096AA4 @ =0x000012be - adds r2, r1 - ldr r1, _08096AA8 @ =0x0000dacb - strh r1, [r2] - bl sub_80F727C - bl sub_80F7404 - b _08096AD8 - .align 2, 0 -_08096A98: .4byte gPokemonStorage -_08096A9C: .4byte gSharedMem -_08096AA0: .4byte 0x000012bc -_08096AA4: .4byte 0x000012be -_08096AA8: .4byte 0x0000dacb -_08096AAC: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _08096AC4 @ =sub_8096AFC - bl SetVBlankCallback - b _08096AD8 - .align 2, 0 -_08096AC4: .4byte sub_8096AFC -_08096AC8: - bl sub_8096874 - ldr r0, _08096AEC @ =sub_8096C68 - bl sub_8096BE0 - ldr r0, _08096AF0 @ =sub_8096B38 - bl SetMainCallback2 -_08096AD8: - ldr r1, _08096AF4 @ =gMain - ldr r0, _08096AF8 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08096AE4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096AEC: .4byte sub_8096C68 -_08096AF0: .4byte sub_8096B38 -_08096AF4: .4byte gMain -_08096AF8: .4byte 0x0000043c - thumb_func_end sub_80969A0 - thumb_func_start sub_8096AFC sub_8096AFC: @ 8096AFC push {lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 91d56a4b9..2b36f5d71 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -67,15 +67,19 @@ void sub_8096AFC(void); void sub_8096B38(void); void sub_8096BE0(void (*func)(void)); void sub_8096BF0(void); +void sub_8096C68(void); void sub_8097DE0(void); void sub_8097E70(void); void sub_8098400(void); void sub_8099BF8(u8 a0); void sub_8098B48(void); -void sub_809AA24(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); +void sub_809AA24(void); +void sub_809AA98(void); void sub_809B0D4(void); -void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 * a1, u8 a2); +void sub_809BBC0(void); +void sub_809BD14(void); +void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, @@ -131,11 +135,23 @@ extern const struct PokemonStorageSystemData *gUnknown_083B6DB4; extern u8 *const gUnknown_083B6DB8; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; -EWRAM_DATA u8 gUnknown_02038474; -EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478; -EWRAM_DATA u8 gUnknown_0203847C; -EWRAM_DATA u8 gUnknown_0203847D; -EWRAM_DATA u8 gUnknown_0203847E; +EWRAM_DATA u8 gUnknown_02038470[3] = {}; +EWRAM_DATA u8 gUnknown_02038473 = 0; +EWRAM_DATA u8 gUnknown_02038474 = 0; +EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478 = NULL; +EWRAM_DATA u8 gUnknown_0203847C = 0; +EWRAM_DATA u8 gUnknown_0203847D = 0; +EWRAM_DATA u8 gUnknown_0203847E = 0; +EWRAM_DATA u8 gUnknown_0203847F = 0; +EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; +EWRAM_DATA u8 gUnknown_020384E4 = 0; +EWRAM_DATA u8 gUnknown_020384E5 = 0; +EWRAM_DATA u8 gUnknown_020384E6 = 0; +EWRAM_DATA u8 gUnknown_020384E7 = 0; +EWRAM_DATA u8 gUnknown_020384E8 = 0; +EWRAM_DATA u8 gUnknown_020384E9 = 0; +EWRAM_DATA u16 gUnknown_020384EA = 0; +EWRAM_DATA u32 gUnknown_020384EC = 0; static u8 CountPokemonInBoxN(u8 boxId) { @@ -872,6 +888,73 @@ void sub_8096884(void) } } +void sub_80969A0(void) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + REG_DISPCNT = 0x0000; + ePokemonStorageSystem.unk_0005 = gUnknown_0203847D; + sub_8096804(); + if (gUnknown_0203847F == 1) + sub_809BBC0(); + if (gUnknown_0203847F == 0) + sub_809BD14(); + gMain.state++; + break; + case 1: + SetUpWindowConfig(&gWindowConfig_81E6D00); + gMain.state++; + break; + case 2: + InitMenuWindow(&gWindowConfig_81E6D00); + MenuZeroFillScreen(); + gMain.state++; + break; + case 3: + sub_80967DC(); + gMain.state++; + break; + case 4: + sub_8098B48(); + sub_809AA98(); + gMain.state++; + break; + case 5: + sub_8097DE0(); + gMain.state++; + break; + case 6: + sub_8097E70(); + gMain.state++; + break; + case 7: + sub_8098400(); + gMain.state++; + break; + case 8: + sub_8099BF8(gPokemonStorage.currentBox); + ePokemonStorageSystem.unk_12bc.baseTileTag = 0x000a; + ePokemonStorageSystem.unk_12bc.basePaletteTag = 0xdacb; + sub_80F727C(&ePokemonStorageSystem.unk_12bc); + sub_80F7404(); + gMain.state++; + break; + case 9: + BeginNormalPaletteFade(0xffffffff, 0, 16, 0, 0); + SetVBlankCallback(sub_8096AFC); + gMain.state++; + break; + case 10: + sub_8096874(); + sub_8096BE0(sub_8096C68); + SetMainCallback2(sub_8096B38); + gMain.state++; + break; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { diff --git a/sym_ewram.txt b/sym_ewram.txt index 6f7be47c1..de949bbe7 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -379,60 +379,6 @@ gUnknown_0202FFA4: @ 202FFA4 .include "src/engine/trainer_card.o" .include "src/pokemon/pokemon_storage_system.o" -@ still pokemon_storage_system - - .align 2 -gUnknown_02038470: @ 2038470 - .space 0x3 - -gUnknown_02038473: @ 2038473 - .space 0x1 - -gUnknown_02038474: @ 2038474 - .space 0x4 - -gUnknown_02038478: @ 2038478 - .space 0x4 - -gUnknown_0203847C: @ 203847C - .space 0x1 - -gUnknown_0203847D: @ 203847D - .space 0x1 - -gUnknown_0203847E: @ 203847E - .space 0x1 - -gUnknown_0203847F: @ 203847F - .space 0x1 - -gUnknown_02038480: @ 2038480 - .space 0x64 - -gUnknown_020384E4: @ 20384E4 - .space 0x1 - -gUnknown_020384E5: @ 20384E5 - .space 0x1 - -gUnknown_020384E6: @ 20384E6 - .space 0x1 - -gUnknown_020384E7: @ 20384E7 - .space 0x1 - -gUnknown_020384E8: @ 20384E8 - .space 0x1 - -gUnknown_020384E9: @ 20384E9 - .space 0x1 - -gUnknown_020384EA: @ 20384EA - .space 0x2 - -gUnknown_020384EC: @ 20384EC - .space 0x4 - @ pokemon_summary_screen gUnknown_020384F0: @ 20384F0 -- cgit v1.2.3 From ceebbe19918520c65ed9bdcd79d4ae5fbb669d88 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 22:03:21 -0500 Subject: through sub_8096BE0 --- asm/pokemon_storage_system.s | 117 ----------------------------------- include/mon_markings.h | 2 +- src/pokemon/pokemon_storage_system.c | 74 +++++++++++++++++++--- 3 files changed, 66 insertions(+), 127 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 47324f443..4db9c1667 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,123 +5,6 @@ .text - thumb_func_start sub_8096AFC -sub_8096AFC: @ 8096AFC - push {lr} - ldr r2, _08096B2C @ =REG_BG2HOFS - ldr r1, _08096B30 @ =gSharedMem - ldr r3, _08096B34 @ =0x000008b4 - adds r0, r1, r3 - ldrh r0, [r0] - strh r0, [r2] - adds r2, 0x4 - ldrh r0, [r1, 0xA] - strh r0, [r2] - adds r2, 0x2 - ldrh r0, [r1, 0x8] - strh r0, [r2] - bl LoadOam - bl ProcessSpriteCopyRequests - bl sub_809CFF0 - bl TransferPlttBuffer - pop {r0} - bx r0 - .align 2, 0 -_08096B2C: .4byte REG_BG2HOFS -_08096B30: .4byte gSharedMem -_08096B34: .4byte 0x000008b4 - thumb_func_end sub_8096AFC - - thumb_func_start sub_8096B38 -sub_8096B38: @ 8096B38 - push {lr} - ldr r0, _08096B58 @ =gSharedMem - ldr r0, [r0] - bl _call_via_r0 - bl sub_8097E44 - bl sub_8098734 - bl AnimateSprites - bl BuildOamBuffer - pop {r0} - bx r0 - .align 2, 0 -_08096B58: .4byte gSharedMem - thumb_func_end sub_8096B38 - - thumb_func_start sub_8096B5C -sub_8096B5C: @ 8096B5C - push {r4,r5,lr} - sub sp, 0x8 - ldr r4, _08096B70 @ =gSharedMem - ldrb r0, [r4, 0x6] - cmp r0, 0 - beq _08096B74 - cmp r0, 0x1 - beq _08096BAC - b _08096BCC - .align 2, 0 -_08096B70: .4byte gSharedMem -_08096B74: - ldr r1, _08096B98 @ =0x00002690 - adds r0, r4, r1 - ldr r0, [r0] - ldr r2, _08096B9C @ =0x0000268d - adds r1, r4, r2 - ldrb r1, [r1] - ldr r3, _08096BA0 @ =0x0000268c - adds r2, r4, r3 - ldrb r2, [r2] - ldr r3, _08096BA4 @ =sub_80969A0 - ldr r5, _08096BA8 @ =0x0000268e - adds r4, r5 - ldrb r4, [r4] - str r4, [sp] - bl ShowPokemonSummaryScreen - b _08096BCC - .align 2, 0 -_08096B98: .4byte 0x00002690 -_08096B9C: .4byte 0x0000268d -_08096BA0: .4byte 0x0000268c -_08096BA4: .4byte sub_80969A0 -_08096BA8: .4byte 0x0000268e -_08096BAC: - ldr r0, _08096BD4 @ =gPokemonStorage - ldrb r2, [r0] - lsls r1, r2, 3 - adds r1, r2 - ldr r2, _08096BD8 @ =0x00008344 - adds r0, r2 - adds r1, r0 - movs r0, 0 - str r0, [sp] - ldr r0, _08096BDC @ =sub_80969A0 - str r0, [sp, 0x4] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl DoNamingScreen -_08096BCC: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08096BD4: .4byte gPokemonStorage -_08096BD8: .4byte 0x00008344 -_08096BDC: .4byte sub_80969A0 - thumb_func_end sub_8096B5C - - thumb_func_start sub_8096BE0 -sub_8096BE0: @ 8096BE0 - ldr r1, _08096BEC @ =gSharedMem - str r0, [r1] - movs r0, 0 - strb r0, [r1, 0x4] - bx lr - .align 2, 0 -_08096BEC: .4byte gSharedMem - thumb_func_end sub_8096BE0 - thumb_func_start sub_8096BF0 sub_8096BF0: @ 8096BF0 push {r4,lr} diff --git a/include/mon_markings.h b/include/mon_markings.h index a2b0ac821..eae80861a 100644 --- a/include/mon_markings.h +++ b/include/mon_markings.h @@ -18,7 +18,7 @@ struct PokemonMarkMenu /*0x0030*/ u8 menuWindowSpriteTiles[0x1000]; /*0x1030*/ u8 filler1030[0x80]; /*0x10B0*/ u8 tileLoadState; -}; +}; // 10b4 void sub_80F7404(void); void sub_80F727C(struct PokemonMarkMenu *ptr); diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 2b36f5d71..f09d9b302 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -13,6 +13,8 @@ #include "event_data.h" #include "ewram.h" #include "script.h" +#include "pokemon_summary_screen.h" +#include "naming_screen.h" #include "pokemon_storage_system.h" struct StorageAction { @@ -31,15 +33,6 @@ struct UnkStruct_2000020 { u8 unk_05; }; -struct PokemonStorageSystemData { - u8 filler_0000[5]; - u8 unk_0005; - u8 filler_0006[26]; - struct UnkStruct_2000020 unk_0020[595]; // refine size later - u8 filler_12b8[4]; - struct PokemonMarkMenu unk_12bc; -}; - struct UnkPSSStruct_2002370 { struct Sprite *unk_0000; struct Sprite *unk_0004[4]; @@ -51,6 +44,27 @@ struct UnkPSSStruct_2002370 { u8 unk_023e; u16 unk_0240; u16 unk_0242; +}; // 0244 + +struct PokemonStorageSystemData { + void (*unk_0000)(void); + u8 unk_0004; + u8 unk_0005; + u8 unk_0006; + u16 unk_0008; + u16 unk_000a; + u8 filler_000c[20]; + struct UnkStruct_2000020 unk_0020[274]; // refine size later + u8 filler_08b0[4]; + u16 unk_08b4; + u8 filler_08b6[0xa06]; + struct PokemonMarkMenu unk_12bc; + struct UnkPSSStruct_2002370 unk_2370; + u8 filler_25b4[0xd8]; + u8 unk_268c; + u8 unk_268d; + u8 unk_268e; + struct Pokemon *unk_2690; }; void StorageSystemCreatePrimaryMenu(u8 whichMenu); @@ -69,8 +83,10 @@ void sub_8096BE0(void (*func)(void)); void sub_8096BF0(void); void sub_8096C68(void); void sub_8097DE0(void); +void sub_8097E44(void); void sub_8097E70(void); void sub_8098400(void); +void sub_8098734(void); void sub_8099BF8(u8 a0); void sub_8098B48(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); @@ -80,6 +96,7 @@ void sub_809B0D4(void); void sub_809BBC0(void); void sub_809BD14(void); void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); +void sub_809CFF0(void); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, @@ -955,6 +972,45 @@ void sub_80969A0(void) } } +void sub_8096AFC(void) +{ + REG_BG2HOFS = ePokemonStorageSystem.unk_08b4; + REG_BG3HOFS = ePokemonStorageSystem.unk_000a; + REG_BG3VOFS = ePokemonStorageSystem.unk_0008; + LoadOam(); + ProcessSpriteCopyRequests(); + sub_809CFF0(); + TransferPlttBuffer(); +} + +void sub_8096B38(void) +{ + ePokemonStorageSystem.unk_0000(); + sub_8097E44(); + sub_8098734(); + AnimateSprites(); + BuildOamBuffer(); +} + +void sub_8096B5C(void) +{ + switch (ePokemonStorageSystem.unk_0006) + { + case 0: + ShowPokemonSummaryScreen(ePokemonStorageSystem.unk_2690, ePokemonStorageSystem.unk_268d, ePokemonStorageSystem.unk_268c, sub_80969A0, ePokemonStorageSystem.unk_268e); + break; + case 1: + DoNamingScreen(1, gPokemonStorage.boxNames[gPokemonStorage.currentBox], 0, 0, 0, sub_80969A0); + break; + } +} + +void sub_8096BE0(void (*func)(void)) +{ + ePokemonStorageSystem.unk_0000 = func; + ePokemonStorageSystem.unk_0004 = 0; +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 02fea36a2e43523c9e9401897ac2fdbeb37ed3d4 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 22:25:16 -0500 Subject: through sub_8096C68 --- asm/pokemon_storage_system.s | 79 ------------------------------------ include/pc_screen_effect.h | 19 +++++++++ src/field/pc_screen_effect.c | 17 ++------ src/pokemon/pokemon_storage_system.c | 35 +++++++++++++++- src/scene/hall_of_fame.c | 4 +- 5 files changed, 58 insertions(+), 96 deletions(-) create mode 100644 include/pc_screen_effect.h diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 4db9c1667..49bb3995e 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,85 +5,6 @@ .text - thumb_func_start sub_8096BF0 -sub_8096BF0: @ 8096BF0 - push {r4,lr} - ldr r4, _08096C04 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0x1 - beq _08096C16 - cmp r0, 0x1 - bgt _08096C08 - cmp r0, 0 - beq _08096C0E - b _08096C5C - .align 2, 0 -_08096C04: .4byte gSharedMem -_08096C08: - cmp r0, 0x2 - beq _08096C4C - b _08096C5C -_08096C0E: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x10 - b _08096C38 -_08096C16: - movs r0, 0x2 - bl PlaySE - movs r1, 0 - movs r0, 0xE - strh r0, [r4, 0xC] - ldr r0, _08096C48 @ =0x0000dad0 - strh r0, [r4, 0xE] - strh r1, [r4, 0x10] - strh r1, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0xC - bl sub_80C5CD4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 -_08096C38: - movs r2, 0 - bl BlendPalettes - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08096C5C - .align 2, 0 -_08096C48: .4byte 0x0000dad0 -_08096C4C: - bl sub_80C5DCC - lsls r0, 24 - cmp r0, 0 - beq _08096C5C - ldr r0, _08096C64 @ =sub_8096C84 - bl sub_8096BE0 -_08096C5C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096C64: .4byte sub_8096C84 - thumb_func_end sub_8096BF0 - - thumb_func_start sub_8096C68 -sub_8096C68: @ 8096C68 - push {lr} - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08096C7A - ldr r0, _08096C80 @ =sub_8096C84 - bl sub_8096BE0 -_08096C7A: - pop {r0} - bx r0 - .align 2, 0 -_08096C80: .4byte sub_8096C84 - thumb_func_end sub_8096C68 - thumb_func_start sub_8096C84 sub_8096C84: @ 8096C84 push {r4,lr} diff --git a/include/pc_screen_effect.h b/include/pc_screen_effect.h new file mode 100644 index 000000000..a791fc66f --- /dev/null +++ b/include/pc_screen_effect.h @@ -0,0 +1,19 @@ +#ifndef POKERUBY_PC_SCREEN_EFFECT_H +#define POKERUBY_PC_SCREEN_EFFECT_H + +struct PCScreenEffectStruct +{ + /*0x00*/ u16 tileTag; + /*0x02*/ u16 paletteTag; + /*0x04*/ u16 unk04; + /*0x06*/ u16 unk06; + /*0x08*/ u16 unk08; + /*0x0A*/ u16 unk0A; + /*0x0C*/ s16 unk0C; + /*0x10*/ u32 selectedPalettes; +}; + +void sub_80C5CD4(struct PCScreenEffectStruct *unkStruct); +bool8 sub_80C5DCC(void); + +#endif //POKERUBY_PC_SCREEN_EFFECT_H diff --git a/src/field/pc_screen_effect.c b/src/field/pc_screen_effect.c index 364fca0aa..dda569ea4 100644 --- a/src/field/pc_screen_effect.c +++ b/src/field/pc_screen_effect.c @@ -2,18 +2,7 @@ #include "main.h" #include "palette.h" #include "sprite.h" - -struct UnkStruct -{ - /*0x00*/ u16 tileTag; - /*0x02*/ u16 paletteTag; - /*0x04*/ u16 unk04; - /*0x06*/ u16 unk06; - /*0x08*/ u16 unk08; - /*0x0A*/ u16 unk0A; - /*0x0C*/ s16 unk0C; - /*0x10*/ u32 selectedPalettes; -}; +#include "pc_screen_effect.h" void sub_80C603C(void); void sub_80C6078(void); @@ -30,7 +19,7 @@ extern const u16 gUnknownPal_083D18EC[16]; extern const u8 gUnknownGfx_083D190C[128]; -extern struct UnkStruct *gUnknown_020387EC; +extern struct PCScreenEffectStruct *gUnknown_020387EC; const struct SpriteSheet gUnknown_083D1898 = { gUnknownGfx_083D190C, sizeof(gUnknownGfx_083D190C), 0 }; @@ -58,7 +47,7 @@ const struct SpriteTemplate gSpriteTemplate_83D18C0 = sub_80C6130, }; -void sub_80C5CD4(struct UnkStruct *unkStruct) +void sub_80C5CD4(struct PCScreenEffectStruct *unkStruct) { u16 i; diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index f09d9b302..d6119476c 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -14,6 +14,7 @@ #include "ewram.h" #include "script.h" #include "pokemon_summary_screen.h" +#include "pc_screen_effect.h" #include "naming_screen.h" #include "pokemon_storage_system.h" @@ -53,7 +54,7 @@ struct PokemonStorageSystemData { u8 unk_0006; u16 unk_0008; u16 unk_000a; - u8 filler_000c[20]; + struct PCScreenEffectStruct unk_000c; struct UnkStruct_2000020 unk_0020[274]; // refine size later u8 filler_08b0[4]; u16 unk_08b4; @@ -82,6 +83,7 @@ void sub_8096B38(void); void sub_8096BE0(void (*func)(void)); void sub_8096BF0(void); void sub_8096C68(void); +void sub_8096C84(void); void sub_8097DE0(void); void sub_8097E44(void); void sub_8097E70(void); @@ -1011,6 +1013,37 @@ void sub_8096BE0(void (*func)(void)) ePokemonStorageSystem.unk_0004 = 0; } +void sub_8096BF0(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + BlendPalettes(0xffffffff, 16, 0); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + PlaySE(SE_PC_LOGON); + ePokemonStorageSystem.unk_000c.tileTag = 14; + ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; + ePokemonStorageSystem.unk_000c.unk04 = 0; + ePokemonStorageSystem.unk_000c.unk06 = 0; + sub_80C5CD4(&ePokemonStorageSystem.unk_000c); + BlendPalettes(0xffffffff, 0, 0); + ePokemonStorageSystem.unk_0004++; + break; + case 2: + if (sub_80C5DCC()) + sub_8096BE0(sub_8096C84); + break; + } +} + +void sub_8096C68(void) +{ + if (!UpdatePaletteFade()) + sub_8096BE0(sub_8096C84); +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { diff --git a/src/scene/hall_of_fame.c b/src/scene/hall_of_fame.c index 1751ee99c..812c28137 100644 --- a/src/scene/hall_of_fame.c +++ b/src/scene/hall_of_fame.c @@ -17,6 +17,7 @@ #include "decompress.h" #include "random.h" #include "trig.h" +#include "pc_screen_effect.h" #include "ewram.h" static EWRAM_DATA u32 sUnknown_0203931C = 0; @@ -89,7 +90,6 @@ static bool8 sub_81438C4(void); // functions from different files void sub_81439D0(void); -void sub_80C5CD4(void*); // ? void sub_80C5E38(void*); // ? bool8 sub_80C5DCC(void); bool8 sub_80C5F98(void); @@ -811,7 +811,7 @@ void sub_81428CC(void) fameMons = eHallOfFameMons1; fameMons->mons[0] = sDummyFameMon; - sub_80C5CD4(fameMons); + sub_80C5CD4((struct PCScreenEffectStruct *)fameMons); gMain.state++; } break; -- cgit v1.2.3 From fd42bcc78ce229d13afc26af4c6d2dd0187b871d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 7 Jan 2018 23:46:05 -0500 Subject: sub_8096C84 --- asm/pokemon_storage_system.s | 964 +++++++++++------------------------ data/pokemon_storage_system.s | 2 +- src/pokemon/pokemon_storage_system.c | 220 +++++++- 3 files changed, 508 insertions(+), 678 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 49bb3995e..8dab0b2fd 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,374 +5,6 @@ .text - thumb_func_start sub_8096C84 -sub_8096C84: @ 8096C84 - push {r4,lr} - ldr r0, _08096C9C @ =gSharedMem - ldrb r0, [r0, 0x4] - cmp r0, 0x6 - bls _08096C90 - b _08096FBA -_08096C90: - lsls r0, 2 - ldr r1, _08096CA0 @ =_08096CA4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08096C9C: .4byte gSharedMem -_08096CA0: .4byte _08096CA4 - .align 2, 0 -_08096CA4: - .4byte _08096CC0 - .4byte _08096EE0 - .4byte _08096F1C - .4byte _08096F60 - .4byte _08096F80 - .4byte _08096F8A - .4byte _08096FA4 -_08096CC0: - bl sub_809CA40 - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - cmp r0, 0xF - bls _08096CD0 - b _08096FBA -_08096CD0: - lsls r0, 2 - ldr r1, _08096CDC @ =_08096CE0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08096CDC: .4byte _08096CE0 - .align 2, 0 -_08096CE0: - .4byte _08096D20 - .4byte _08096FBA - .4byte _08096FBA - .4byte _08096D94 - .4byte _08096D34 - .4byte _08096D5C - .4byte _08096DAC - .4byte _08096DC0 - .4byte _08096DD4 - .4byte _08096DFC - .4byte _08096E30 - .4byte _08096EB8 - .4byte _08096E70 - .4byte _08096E8C - .4byte _08096ECC - .4byte _08096DA0 -_08096D20: - movs r0, 0x5 - bl PlaySE - ldr r1, _08096D30 @ =gSharedMem - movs r0, 0x1 - strb r0, [r1, 0x4] - b _08096FBA - .align 2, 0 -_08096D30: .4byte gSharedMem -_08096D34: - ldr r4, _08096D48 @ =gSharedMem - ldrb r0, [r4, 0x5] - cmp r0, 0x2 - beq _08096D4C - movs r0, 0x10 - bl sub_8098898 - movs r0, 0x3 - strb r0, [r4, 0x4] - b _08096FBA - .align 2, 0 -_08096D48: .4byte gSharedMem -_08096D4C: - bl sub_809B0D4 - ldr r0, _08096D58 @ =sub_8096FC8 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096D58: .4byte sub_8096FC8 -_08096D5C: - ldr r4, _08096D88 @ =gSharedMem - ldrb r0, [r4, 0x5] - cmp r0, 0x2 - beq _08096D66 - b _08096FBA -_08096D66: - bl sub_809BF20 - lsls r0, 24 - cmp r0, 0 - beq _08096D80 - ldr r1, _08096D8C @ =0x000011f2 - adds r0, r4, r1 - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - bne _08096E4C -_08096D80: - ldr r0, _08096D90 @ =sub_8097004 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096D88: .4byte gSharedMem -_08096D8C: .4byte 0x000011f2 -_08096D90: .4byte sub_8097004 -_08096D94: - ldr r0, _08096D9C @ =sub_8097BA0 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096D9C: .4byte sub_8097BA0 -_08096DA0: - ldr r0, _08096DA8 @ =sub_8097CC0 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096DA8: .4byte sub_8097CC0 -_08096DAC: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096DBC @ =sub_809789C - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096DBC: .4byte sub_809789C -_08096DC0: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096DD0 @ =sub_8097078 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096DD0: .4byte sub_8097078 -_08096DD4: - movs r0, 0x5 - bl PlaySE - ldr r4, _08096DF0 @ =gSharedMem - ldr r0, _08096DF4 @ =gPokemonStorage - ldrb r0, [r0] - adds r0, 0x1 - ldr r2, _08096DF8 @ =0x000008b2 - adds r1, r4, r2 - strh r0, [r1] - cmp r0, 0xD - ble _08096E18 - movs r0, 0 - b _08096E16 - .align 2, 0 -_08096DF0: .4byte gSharedMem -_08096DF4: .4byte gPokemonStorage -_08096DF8: .4byte 0x000008b2 -_08096DFC: - movs r0, 0x5 - bl PlaySE - ldr r4, _08096E24 @ =gSharedMem - ldr r0, _08096E28 @ =gPokemonStorage - ldrb r0, [r0] - subs r0, 0x1 - ldr r2, _08096E2C @ =0x000008b2 - adds r1, r4, r2 - strh r0, [r1] - cmp r0, 0 - bge _08096E18 - movs r0, 0xD -_08096E16: - strh r0, [r1] -_08096E18: - ldrb r0, [r1] - bl sub_8099C70 - movs r0, 0x2 - strb r0, [r4, 0x4] - b _08096FBA - .align 2, 0 -_08096E24: .4byte gSharedMem -_08096E28: .4byte gPokemonStorage -_08096E2C: .4byte 0x000008b2 -_08096E30: - bl sub_809BE80 - lsls r0, 24 - cmp r0, 0 - bne _08096E96 - ldr r4, _08096E54 @ =gSharedMem - ldr r1, _08096E58 @ =0x000011f2 - adds r0, r4, r1 - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _08096E5C -_08096E4C: - movs r0, 0x5 - strb r0, [r4, 0x4] - b _08096FBA - .align 2, 0 -_08096E54: .4byte gSharedMem -_08096E58: .4byte 0x000011f2 -_08096E5C: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096E6C @ =sub_809746C - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096E6C: .4byte sub_809746C -_08096E70: - bl sub_809BE80 - lsls r0, 24 - cmp r0, 0 - bne _08096E96 - movs r0, 0x5 - bl PlaySE - ldr r0, _08096E88 @ =sub_80972A8 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096E88: .4byte sub_80972A8 -_08096E8C: - bl sub_809BEBC - lsls r0, 24 - cmp r0, 0 - bne _08096EA4 -_08096E96: - ldr r1, _08096EA0 @ =gSharedMem - movs r0, 0x4 - strb r0, [r1, 0x4] - b _08096FBA - .align 2, 0 -_08096EA0: .4byte gSharedMem -_08096EA4: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096EB4 @ =c3_0808DC50 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096EB4: .4byte c3_0808DC50 -_08096EB8: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096EC8 @ =sub_8097390 - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096EC8: .4byte sub_8097390 -_08096ECC: - movs r0, 0x5 - bl PlaySE - ldr r0, _08096EDC @ =sub_80972FC - bl sub_8096BE0 - b _08096FBA - .align 2, 0 -_08096EDC: .4byte sub_80972FC -_08096EE0: - bl sub_809AC00 - lsls r0, 24 - cmp r0, 0 - bne _08096FBA - bl sub_809BF48 - lsls r0, 24 - cmp r0, 0 - beq _08096EFA - bl sub_80986E8 - b _08096EFE -_08096EFA: - bl sub_8098710 -_08096EFE: - ldr r4, _08096F14 @ =gSharedMem - ldr r2, _08096F18 @ =0x000011f6 - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08096F0E - bl BoxSetMosaic -_08096F0E: - movs r0, 0 - strb r0, [r4, 0x4] - b _08096FBA - .align 2, 0 -_08096F14: .4byte gSharedMem -_08096F18: .4byte 0x000011f6 -_08096F1C: - bl sub_8099D34 - lsls r0, 24 - cmp r0, 0 - bne _08096FBA - ldr r1, _08096F50 @ =gPokemonStorage - ldr r0, _08096F54 @ =gSharedMem - ldr r2, _08096F58 @ =0x000008b2 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r0, _08096F5C @ =gUnknown_0203847C - ldrb r0, [r0] - cmp r0, 0 - bne _08096F70 - bl sub_809BF20 - lsls r0, 24 - cmp r0, 0 - bne _08096F70 - bl sub_809B440 - bl BoxSetMosaic - b _08096F70 - .align 2, 0 -_08096F50: .4byte gPokemonStorage -_08096F54: .4byte gSharedMem -_08096F58: .4byte 0x000008b2 -_08096F5C: .4byte gUnknown_0203847C -_08096F60: - ldr r0, _08096F78 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _08096FBA - bl sub_8098A5C -_08096F70: - ldr r1, _08096F7C @ =gSharedMem - movs r0, 0 - strb r0, [r1, 0x4] - b _08096FBA - .align 2, 0 -_08096F78: .4byte gMain -_08096F7C: .4byte gSharedMem -_08096F80: - movs r0, 0x20 - bl PlaySE - movs r0, 0xD - b _08096F92 -_08096F8A: - movs r0, 0x20 - bl PlaySE - movs r0, 0x16 -_08096F92: - bl sub_8098898 - ldr r1, _08096FA0 @ =gSharedMem - movs r0, 0x6 - strb r0, [r1, 0x4] - b _08096FBA - .align 2, 0 -_08096FA0: .4byte gSharedMem -_08096FA4: - ldr r0, _08096FC0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _08096FBA - bl sub_8098A5C - ldr r0, _08096FC4 @ =sub_8096C84 - bl sub_8096BE0 -_08096FBA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08096FC0: .4byte gMain -_08096FC4: .4byte sub_8096C84 - thumb_func_end sub_8096C84 - thumb_func_start sub_8096FC8 sub_8096FC8: @ 8096FC8 push {r4,lr} @@ -397,7 +29,7 @@ _08096FE8: cmp r0, 0 bne _08096FF8 ldr r0, _08097000 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08096FF8: pop {r4} pop {r0} @@ -456,7 +88,7 @@ _0809704C: bl BoxSetMosaic _08097064: ldr r0, _08097074 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _0809706A: pop {r4} pop {r0} @@ -532,7 +164,7 @@ _080970E8: _08097110: bl sub_8098A5C ldr r0, _0809711C @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _0809711C: .4byte sub_8096C84 @@ -545,7 +177,7 @@ _08097120: bl PlaySE bl sub_8098A5C ldr r0, _0809713C @ =sub_80972A8 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _0809713C: .4byte sub_80972A8 @@ -554,7 +186,7 @@ _08097140: bl PlaySE bl sub_8098A5C ldr r0, _08097154 @ =sub_80972FC - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _08097154: .4byte sub_80972FC @@ -567,7 +199,7 @@ _08097158: bl PlaySE bl sub_8098A5C ldr r0, _08097174 @ =c3_0808DC50 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _08097174: .4byte c3_0808DC50 @@ -576,7 +208,7 @@ _08097178: bl PlaySE bl sub_8098A5C ldr r0, _0809718C @ =sub_8097390 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _0809718C: .4byte sub_8097390 @@ -597,7 +229,7 @@ _08097190: bl PlaySE bl sub_8098A5C ldr r0, _080971C8 @ =sub_809746C - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _080971C0: .4byte gSharedMem @@ -646,7 +278,7 @@ _0809721C: movs r0, 0x5 bl PlaySE ldr r0, _0809722C @ =sub_8097594 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _0809722C: .4byte sub_8097594 @@ -654,7 +286,7 @@ _08097230: movs r0, 0x5 bl PlaySE ldr r0, _08097240 @ =sub_8097788 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _08097240: .4byte sub_8097788 @@ -662,7 +294,7 @@ _08097244: movs r0, 0x5 bl PlaySE ldr r0, _08097254 @ =sub_80977E4 - bl sub_8096BE0 + bl SetPSSCallback b _0809729A .align 2, 0 _08097254: .4byte sub_80977E4 @@ -697,7 +329,7 @@ _08097284: beq _0809729A bl sub_8098A5C ldr r0, _080972A4 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _0809729A: pop {r4} pop {r0} @@ -736,14 +368,14 @@ _080972CA: cmp r0, 0 beq _080972EC ldr r0, _080972E8 @ =sub_8097858 - bl sub_8096BE0 + bl SetPSSCallback b _080972F2 .align 2, 0 _080972E4: .4byte gUnknown_0203847C _080972E8: .4byte sub_8097858 _080972EC: ldr r0, _080972F8 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _080972F2: pop {r4} pop {r0} @@ -781,14 +413,14 @@ _0809731E: cmp r0, 0 beq _08097340 ldr r0, _0809733C @ =sub_8097858 - bl sub_8096BE0 + bl SetPSSCallback b _08097346 .align 2, 0 _08097338: .4byte gUnknown_0203847C _0809733C: .4byte sub_8097858 _08097340: ldr r0, _0809734C @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08097346: pop {r4} pop {r0} @@ -823,7 +455,7 @@ _08097372: bne _08097386 bl BoxSetMosaic ldr r0, _0809738C @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08097386: pop {r4} pop {r0} @@ -888,7 +520,7 @@ _080973FC: beq _08097462 bl sub_8098A5C ldr r0, _08097418 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097462 .align 2, 0 _08097414: .4byte gMain @@ -924,7 +556,7 @@ _0809744C: _08097458: .4byte gSharedMem _0809745C: ldr r0, _08097468 @ =sub_8097004 - bl sub_8096BE0 + bl SetPSSCallback _08097462: pop {r0} bx r0 @@ -1037,7 +669,7 @@ _08097548: bl sub_80987DC _0809755E: ldr r0, _08097568 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097584 .align 2, 0 _08097568: .4byte sub_8096C84 @@ -1212,7 +844,7 @@ _080976C8: b _08097744 _080976E0: ldr r0, _080976E8 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _0809777A .align 2, 0 _080976E8: .4byte sub_8096C84 @@ -1285,7 +917,7 @@ _08097764: beq _0809777A bl sub_8098A5C ldr r0, _08097784 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _0809777A: pop {r4} pop {r0} @@ -1388,7 +1020,7 @@ _08097824: bl sub_809BDD8 bl sub_809801C ldr r0, _08097854 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _0809784C: pop {r4} pop {r0} @@ -1423,7 +1055,7 @@ _0809787C: bne _08097890 bl sub_80987DC ldr r0, _08097898 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08097890: pop {r4} pop {r0} @@ -1486,7 +1118,7 @@ _08097914: bl sub_809A860 bl sub_8098A5C ldr r0, _08097928 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097968 .align 2, 0 _08097928: .4byte sub_8096C84 @@ -1494,7 +1126,7 @@ _0809792C: movs r0, 0x5 bl PlaySE ldr r0, _0809793C @ =sub_8097B44 - bl sub_8096BE0 + bl SetPSSCallback b _08097968 .align 2, 0 _0809793C: .4byte sub_8097B44 @@ -1503,7 +1135,7 @@ _08097940: bl PlaySE bl sub_8098A5C ldr r0, _08097954 @ =sub_8097974 - bl sub_8096BE0 + bl SetPSSCallback b _08097968 .align 2, 0 _08097954: .4byte sub_8097974 @@ -1512,7 +1144,7 @@ _08097958: bl PlaySE bl sub_8098A5C ldr r0, _08097970 @ =sub_8097A64 - bl sub_8096BE0 + bl SetPSSCallback _08097968: pop {r4} pop {r0} @@ -1561,7 +1193,7 @@ _080979A2: bl sub_809A860 bl sub_8098A5C ldr r0, _080979D0 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097A5A .align 2, 0 _080979CC: .4byte 0x00000d5e @@ -1626,7 +1258,7 @@ _08097A44: movs r0, 0x1 bl sub_809A860 ldr r0, _08097A60 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08097A5A: pop {r4,r5} pop {r0} @@ -1699,7 +1331,7 @@ _08097AE4: movs r0, 0x1 bl sub_809A860 ldr r0, _08097AFC @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097B32 .align 2, 0 _08097AF4: .4byte 0x000008b2 @@ -1728,7 +1360,7 @@ _08097B18: ldrh r0, [r0] strb r0, [r1] ldr r0, _08097B40 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback _08097B32: pop {r4,r5} pop {r0} @@ -1867,7 +1499,7 @@ _08097C46: _08097C4A: bl sub_8098A5C ldr r0, _08097C58 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097CB0 .align 2, 0 _08097C58: .4byte sub_8096C84 @@ -2002,7 +1634,7 @@ _08097D66: _08097D6C: bl sub_8098A5C ldr r0, _08097D78 @ =sub_8096C84 - bl sub_8096BE0 + bl SetPSSCallback b _08097DD0 .align 2, 0 _08097D78: .4byte sub_8096C84 @@ -3514,7 +3146,7 @@ sub_8098B48: @ 8098B48 push {r4,r5,lr} bl sub_809D51C movs r2, 0 - ldr r1, _08098BD8 @ =gUnknown_083B6DB4 + ldr r1, _08098BD8 @ =gPokemonStorageSystemPtr ldr r0, [r1] ldr r4, _08098BDC @ =0x000010d0 adds r3, r0, r4 @@ -3530,7 +3162,7 @@ _08098B5C: cmp r2, 0x27 bls _08098B5C movs r2, 0 - ldr r0, _08098BD8 @ =gUnknown_083B6DB4 + ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x89 lsls r1, 5 @@ -3546,7 +3178,7 @@ _08098B7A: cmp r2, 0x27 bls _08098B7A movs r2, 0 - ldr r0, _08098BD8 @ =gUnknown_083B6DB4 + ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r4, _08098BE0 @ =0x00001038 adds r3, r0, r4 @@ -3561,7 +3193,7 @@ _08098B96: cmp r2, 0x5 bls _08098B96 movs r2, 0 - ldr r0, _08098BD8 @ =gUnknown_083B6DB4 + ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08098BE4 @ =0x00001050 adds r3, r0, r1 @@ -3587,7 +3219,7 @@ _08098BB2: pop {r0} bx r0 .align 2, 0 -_08098BD8: .4byte gUnknown_083B6DB4 +_08098BD8: .4byte gPokemonStorageSystemPtr _08098BDC: .4byte 0x000010d0 _08098BE0: .4byte 0x00001038 _08098BE4: .4byte 0x00001050 @@ -3599,7 +3231,7 @@ _08098BEC: .4byte 0x00000d5c sub_8098BF0: @ 8098BF0 push {r4-r6,lr} sub sp, 0x8 - ldr r0, _08098C38 @ =gUnknown_083B6DB4 + ldr r0, _08098C38 @ =gPokemonStorageSystemPtr ldr r5, [r0] ldr r0, _08098C3C @ =0x000025b4 adds r4, r5, r0 @@ -3630,7 +3262,7 @@ sub_8098BF0: @ 8098BF0 pop {r0} bx r0 .align 2, 0 -_08098C38: .4byte gUnknown_083B6DB4 +_08098C38: .4byte gPokemonStorageSystemPtr _08098C3C: .4byte 0x000025b4 _08098C40: .4byte 0x00001034 _08098C44: .4byte sub_80999C4 @@ -3694,7 +3326,7 @@ _08098C70: adds r0, r4, 0 asrs r3, 16 bl sub_8099AFC - ldr r1, _08098CD0 @ =gUnknown_083B6DB4 + ldr r1, _08098CD0 @ =gPokemonStorageSystemPtr ldr r1, [r1] mov r3, r8 lsls r2, r3, 2 @@ -3705,10 +3337,10 @@ _08098C70: b _08098CE8 .align 2, 0 _08098CCC: .4byte gPokemonStorage + 0x4 -_08098CD0: .4byte gUnknown_083B6DB4 +_08098CD0: .4byte gPokemonStorageSystemPtr _08098CD4: .4byte 0x00001050 _08098CD8: - ldr r0, _08098D18 @ =gUnknown_083B6DB4 + ldr r0, _08098D18 @ =gPokemonStorageSystemPtr ldr r0, [r0] mov r2, r8 lsls r1, r2, 2 @@ -3741,7 +3373,7 @@ _08098CE8: pop {r0} bx r0 .align 2, 0 -_08098D18: .4byte gUnknown_083B6DB4 +_08098D18: .4byte gPokemonStorageSystemPtr _08098D1C: .4byte 0x00001050 thumb_func_end sub_8098C48 @@ -3817,7 +3449,7 @@ sub_8098D20: @ 8098D20 adds r2, r5, 0 adds r3, r4, 0 bl sub_8099AFC - ldr r1, _08098DD8 @ =gUnknown_083B6DB4 + ldr r1, _08098DD8 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _08098DDC @ =0x00001050 adds r1, r2 @@ -3833,7 +3465,7 @@ _08098DC4: bx r0 .align 2, 0 _08098DD4: .4byte gPokemonStorage + 0x4 -_08098DD8: .4byte gUnknown_083B6DB4 +_08098DD8: .4byte gPokemonStorageSystemPtr _08098DDC: .4byte 0x00001050 thumb_func_end sub_8098D20 @@ -3843,7 +3475,7 @@ sub_8098DE0: @ 8098DE0 lsls r0, 16 lsrs r4, r0, 16 movs r2, 0 - ldr r0, _08098E18 @ =gUnknown_083B6DB4 + ldr r0, _08098E18 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08098E1C @ =0x00001050 adds r3, r0, r1 @@ -3870,7 +3502,7 @@ _08098E08: pop {r0} bx r0 .align 2, 0 -_08098E18: .4byte gUnknown_083B6DB4 +_08098E18: .4byte gPokemonStorageSystemPtr _08098E1C: .4byte 0x00001050 _08098E20: .4byte sub_8098E68 thumb_func_end sub_8098DE0 @@ -3892,7 +3524,7 @@ sub_8098E24: @ 8098E24 strh r0, [r2, 0x20] b _08098E56 _08098E40: - ldr r0, _08098E5C @ =gUnknown_083B6DB4 + ldr r0, _08098E5C @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r3, _08098E60 @ =0x00001178 adds r1, r3 @@ -3907,7 +3539,7 @@ _08098E56: pop {r0} bx r0 .align 2, 0 -_08098E5C: .4byte gUnknown_083B6DB4 +_08098E5C: .4byte gPokemonStorageSystemPtr _08098E60: .4byte 0x00001178 _08098E64: .4byte SpriteCallbackDummy thumb_func_end sub_8098E24 @@ -3952,7 +3584,7 @@ sub_8098EA0: @ 8098EA0 lsls r0, 24 lsrs r5, r0, 24 movs r6, 0 - ldr r0, _08098ED8 @ =gUnknown_083B6DB4 + ldr r0, _08098ED8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08098EDC @ =0x00001050 adds r7, r0, r1 @@ -3978,7 +3610,7 @@ _08098EC2: pop {r0} bx r0 .align 2, 0 -_08098ED8: .4byte gUnknown_083B6DB4 +_08098ED8: .4byte gPokemonStorageSystemPtr _08098EDC: .4byte 0x00001050 thumb_func_end sub_8098EA0 @@ -4023,7 +3655,7 @@ sub_8098EE0: @ 8098EE0 movs r0, 0 str r0, [sp, 0x14] mov r9, r0 - ldr r0, _08098FF8 @ =gUnknown_083B6DB4 + ldr r0, _08098FF8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r2, _08098FFC @ =0x0000117d adds r2, r0 @@ -4124,7 +3756,7 @@ _08098FC8: pop {r1} bx r1 .align 2, 0 -_08098FF8: .4byte gUnknown_083B6DB4 +_08098FF8: .4byte gPokemonStorageSystemPtr _08098FFC: .4byte 0x0000117d _08099000: .4byte 0x00001050 _08099004: .4byte gPokemonStorage + 0x4 @@ -4136,7 +3768,7 @@ sub_809900C: @ 809900C push {r4-r6,lr} lsls r1, 24 lsrs r1, 24 - ldr r4, _08099058 @ =gUnknown_083B6DB4 + ldr r4, _08099058 @ =gPokemonStorageSystemPtr ldr r5, [r4] ldr r3, _0809905C @ =0x0000117c adds r2, r5, r3 @@ -4171,7 +3803,7 @@ sub_809900C: @ 809900C movs r0, 0 b _08099076 .align 2, 0 -_08099058: .4byte gUnknown_083B6DB4 +_08099058: .4byte gPokemonStorageSystemPtr _0809905C: .4byte 0x0000117c _08099060: .4byte 0x0000117d _08099064: .4byte 0x0000117b @@ -4211,7 +3843,7 @@ _080990A8: .4byte 0x00001176 thumb_func_start sub_80990AC sub_80990AC: @ 80990AC push {r4-r6,lr} - ldr r0, _080990D4 @ =gUnknown_083B6DB4 + ldr r0, _080990D4 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _080990D8 @ =0x00001172 adds r3, r4, r0 @@ -4232,7 +3864,7 @@ _080990C0: beq _080990E8 b _080991F0 .align 2, 0 -_080990D4: .4byte gUnknown_083B6DB4 +_080990D4: .4byte gPokemonStorageSystemPtr _080990D8: .4byte 0x00001172 _080990DC: .4byte 0x0000117c _080990E0: @@ -4318,7 +3950,7 @@ _08099178: cmp r0, 0 bne _080991B0 _08099182: - ldr r0, _080991A8 @ =gUnknown_083B6DB4 + ldr r0, _080991A8 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r2, _080991AC @ =0x0000117c adds r1, r2 @@ -4332,10 +3964,10 @@ _08099198: .4byte 0x00001176 _0809919C: .4byte 0x0000117a _080991A0: .4byte 0x00001178 _080991A4: .4byte 0x0000117b -_080991A8: .4byte gUnknown_083B6DB4 +_080991A8: .4byte gPokemonStorageSystemPtr _080991AC: .4byte 0x0000117c _080991B0: - ldr r0, _080991D0 @ =gUnknown_083B6DB4 + ldr r0, _080991D0 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r5, _080991D4 @ =0x0000117a adds r3, r1, r5 @@ -4351,7 +3983,7 @@ _080991B0: strb r2, [r1] b _080991F8 .align 2, 0 -_080991D0: .4byte gUnknown_083B6DB4 +_080991D0: .4byte gPokemonStorageSystemPtr _080991D4: .4byte 0x0000117a _080991D8: .4byte 0x0000117b _080991DC: .4byte 0x0000117c @@ -4404,7 +4036,7 @@ sub_8099200: @ 8099200 movs r2, 0x68 movs r3, 0x40 bl sub_8099AFC - ldr r1, _080992A4 @ =gUnknown_083B6DB4 + ldr r1, _080992A4 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _080992A8 @ =0x00001038 adds r1, r2 @@ -4443,7 +4075,7 @@ _08099246: adds r0, r5, 0 movs r2, 0x98 bl sub_8099AFC - ldr r1, _080992A4 @ =gUnknown_083B6DB4 + ldr r1, _080992A4 @ =gPokemonStorageSystemPtr ldr r1, [r1] lsls r2, r6, 2 ldr r3, _080992A8 @ =0x00001038 @@ -4456,10 +4088,10 @@ _08099246: b _080992BA .align 2, 0 _080992A0: .4byte gPlayerParty -_080992A4: .4byte gUnknown_083B6DB4 +_080992A4: .4byte gPokemonStorageSystemPtr _080992A8: .4byte 0x00001038 _080992AC: - ldr r0, _08099308 @ =gUnknown_083B6DB4 + ldr r0, _08099308 @ =gPokemonStorageSystemPtr ldr r0, [r0] lsls r1, r6, 2 ldr r2, _0809930C @ =0x00001038 @@ -4478,7 +4110,7 @@ _080992BA: movs r6, 0 cmp r6, r7 bcs _080992FA - ldr r0, _08099308 @ =gUnknown_083B6DB4 + ldr r0, _08099308 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809930C @ =0x00001038 adds r3, r0, r1 @@ -4508,7 +4140,7 @@ _080992FA: pop {r0} bx r0 .align 2, 0 -_08099308: .4byte gUnknown_083B6DB4 +_08099308: .4byte gPokemonStorageSystemPtr _0809930C: .4byte 0x00001038 thumb_func_end sub_8099200 @@ -4517,7 +4149,7 @@ sub_8099310: @ 8099310 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r0, _08099368 @ =gUnknown_083B6DB4 + ldr r0, _08099368 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r0, _0809936C @ =0x00001171 adds r1, r2, r0 @@ -4561,21 +4193,21 @@ _08099354: pop {r0} bx r0 .align 2, 0 -_08099368: .4byte gUnknown_083B6DB4 +_08099368: .4byte gPokemonStorageSystemPtr _0809936C: .4byte 0x00001171 _08099370: .4byte 0x00001038 thumb_func_end sub_8099310 thumb_func_start sub_8099374 sub_8099374: @ 8099374 - ldr r0, _08099380 @ =gUnknown_083B6DB4 + ldr r0, _08099380 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099384 @ =0x00001171 adds r0, r1 ldrb r0, [r0] bx lr .align 2, 0 -_08099380: .4byte gUnknown_083B6DB4 +_08099380: .4byte gPokemonStorageSystemPtr _08099384: .4byte 0x00001171 thumb_func_end sub_8099374 @@ -4689,7 +4321,7 @@ _08099446: strh r0, [r3, 0x22] ldr r0, _08099470 @ =SpriteCallbackDummy str r0, [r3, 0x1C] - ldr r0, _08099474 @ =gUnknown_083B6DB4 + ldr r0, _08099474 @ =gPokemonStorageSystemPtr ldr r2, [r0] movs r0, 0x30 ldrsh r1, [r3, r0] @@ -4709,7 +4341,7 @@ _08099468: bx r0 .align 2, 0 _08099470: .4byte SpriteCallbackDummy -_08099474: .4byte gUnknown_083B6DB4 +_08099474: .4byte gPokemonStorageSystemPtr _08099478: .4byte 0x00001038 _0809947C: .4byte 0x00001171 thumb_func_end sub_80993F4 @@ -4717,7 +4349,7 @@ _0809947C: .4byte 0x00001171 thumb_func_start sub_8099480 sub_8099480: @ 8099480 push {r4,lr} - ldr r0, _080994A0 @ =gUnknown_083B6DB4 + ldr r0, _080994A0 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _080994A4 @ =0x00001034 adds r4, r0, r1 @@ -4732,7 +4364,7 @@ _08099498: pop {r0} bx r0 .align 2, 0 -_080994A0: .4byte gUnknown_083B6DB4 +_080994A0: .4byte gPokemonStorageSystemPtr _080994A4: .4byte 0x00001034 thumb_func_end sub_8099480 @@ -4740,7 +4372,7 @@ _080994A4: .4byte 0x00001034 sub_80994A8: @ 80994A8 push {r4-r6,lr} movs r3, 0 - ldr r1, _080994FC @ =gUnknown_083B6DB4 + ldr r1, _080994FC @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _08099500 @ =0x00001038 adds r5, r1, r2 @@ -4782,7 +4414,7 @@ _080994BC: strb r1, [r0] b _0809950E .align 2, 0 -_080994FC: .4byte gUnknown_083B6DB4 +_080994FC: .4byte gPokemonStorageSystemPtr _08099500: .4byte 0x00001038 _08099504: adds r2, 0x3E @@ -4805,7 +4437,7 @@ _0809950E: sub_8099520: @ 8099520 push {r4,lr} lsls r0, 24 - ldr r1, _08099544 @ =gUnknown_083B6DB4 + ldr r1, _08099544 @ =gPokemonStorageSystemPtr ldr r1, [r1] lsrs r0, 22 ldr r2, _08099548 @ =0x00001038 @@ -4822,7 +4454,7 @@ _0809953E: pop {r0} bx r0 .align 2, 0 -_08099544: .4byte gUnknown_083B6DB4 +_08099544: .4byte gPokemonStorageSystemPtr _08099548: .4byte 0x00001038 thumb_func_end sub_8099520 @@ -4830,7 +4462,7 @@ _08099548: .4byte 0x00001038 sub_809954C: @ 809954C push {r4-r6,lr} movs r5, 0 - ldr r0, _0809957C @ =gUnknown_083B6DB4 + ldr r0, _0809957C @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099580 @ =0x00001038 adds r6, r0, r1 @@ -4853,7 +4485,7 @@ _0809956A: pop {r0} bx r0 .align 2, 0 -_0809957C: .4byte gUnknown_083B6DB4 +_0809957C: .4byte gPokemonStorageSystemPtr _08099580: .4byte 0x00001038 thumb_func_end sub_809954C @@ -4867,7 +4499,7 @@ sub_8099584: @ 8099584 adds r5, r1, 0 cmp r4, 0 bne _080995B4 - ldr r3, _080995AC @ =gUnknown_083B6DB4 + ldr r3, _080995AC @ =gPokemonStorageSystemPtr ldr r0, [r3] ldr r5, _080995B0 @ =0x00001034 adds r2, r0, r5 @@ -4880,12 +4512,12 @@ sub_8099584: @ 8099584 str r4, [r0] b _080995D0 .align 2, 0 -_080995AC: .4byte gUnknown_083B6DB4 +_080995AC: .4byte gPokemonStorageSystemPtr _080995B0: .4byte 0x00001034 _080995B4: cmp r4, 0x1 bne _080995F4 - ldr r3, _080995FC @ =gUnknown_083B6DB4 + ldr r3, _080995FC @ =gPokemonStorageSystemPtr ldr r0, [r3] ldr r1, _08099600 @ =0x00001034 adds r2, r0, r1 @@ -4921,7 +4553,7 @@ _080995F4: pop {r0} bx r0 .align 2, 0 -_080995FC: .4byte gUnknown_083B6DB4 +_080995FC: .4byte gPokemonStorageSystemPtr _08099600: .4byte 0x00001034 _08099604: .4byte 0x00001050 _08099608: .4byte sub_80999C4 @@ -4936,7 +4568,7 @@ sub_809960C: @ 809960C lsrs r6, r1, 24 cmp r0, 0xE bne _08099654 - ldr r4, _08099648 @ =gUnknown_083B6DB4 + ldr r4, _08099648 @ =gPokemonStorageSystemPtr ldr r0, [r4] lsls r1, r6, 2 ldr r2, _0809964C @ =0x00001038 @@ -4959,11 +4591,11 @@ sub_809960C: @ 809960C strb r1, [r0] b _0809968A .align 2, 0 -_08099648: .4byte gUnknown_083B6DB4 +_08099648: .4byte gPokemonStorageSystemPtr _0809964C: .4byte 0x00001038 _08099650: .4byte 0x00001034 _08099654: - ldr r5, _080996A0 @ =gUnknown_083B6DB4 + ldr r5, _080996A0 @ =gPokemonStorageSystemPtr ldr r0, [r5] lsls r1, r6, 2 ldr r2, _080996A4 @ =0x00001050 @@ -5002,7 +4634,7 @@ _0809968A: pop {r0} bx r0 .align 2, 0 -_080996A0: .4byte gUnknown_083B6DB4 +_080996A0: .4byte gPokemonStorageSystemPtr _080996A4: .4byte 0x00001050 _080996A8: .4byte 0x00001034 _080996AC: .4byte SpriteCallbackDummy @@ -5017,7 +4649,7 @@ sub_80996B0: @ 80996B0 lsrs r4, r1, 24 cmp r0, 0xE bne _080996D8 - ldr r3, _080996CC @ =gUnknown_083B6DB4 + ldr r3, _080996CC @ =gPokemonStorageSystemPtr ldr r1, [r3] ldr r0, _080996D0 @ =0x000010c8 adds r2, r1, r0 @@ -5025,11 +4657,11 @@ sub_80996B0: @ 80996B0 ldr r4, _080996D4 @ =0x00001038 b _080996E4 .align 2, 0 -_080996CC: .4byte gUnknown_083B6DB4 +_080996CC: .4byte gPokemonStorageSystemPtr _080996D0: .4byte 0x000010c8 _080996D4: .4byte 0x00001038 _080996D8: - ldr r3, _08099704 @ =gUnknown_083B6DB4 + ldr r3, _08099704 @ =gPokemonStorageSystemPtr ldr r1, [r3] ldr r0, _08099708 @ =0x000010c8 adds r2, r1, r0 @@ -5053,7 +4685,7 @@ _080996E4: pop {r0} bx r0 .align 2, 0 -_08099704: .4byte gUnknown_083B6DB4 +_08099704: .4byte gPokemonStorageSystemPtr _08099708: .4byte 0x000010c8 _0809970C: .4byte 0x00001050 _08099710: .4byte 0x00001034 @@ -5064,7 +4696,7 @@ _08099718: .4byte 0x00001170 thumb_func_start sub_809971C sub_809971C: @ 809971C push {r4-r7,lr} - ldr r0, _08099730 @ =gUnknown_083B6DB4 + ldr r0, _08099730 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r0, _08099734 @ =0x00001170 adds r7, r2, r0 @@ -5074,7 +4706,7 @@ sub_809971C: @ 809971C movs r0, 0 b _08099800 .align 2, 0 -_08099730: .4byte gUnknown_083B6DB4 +_08099730: .4byte gPokemonStorageSystemPtr _08099734: .4byte 0x00001170 _08099738: adds r0, 0x1 @@ -5214,7 +4846,7 @@ _08099836: beq _0809987C b _080998C0 _0809983C: - ldr r3, _0809984C @ =gUnknown_083B6DB4 + ldr r3, _0809984C @ =gPokemonStorageSystemPtr ldr r1, [r3] ldr r0, _08099850 @ =0x000010cc adds r2, r1, r0 @@ -5222,11 +4854,11 @@ _0809983C: ldr r4, _08099854 @ =0x00001038 b _08099864 .align 2, 0 -_0809984C: .4byte gUnknown_083B6DB4 +_0809984C: .4byte gPokemonStorageSystemPtr _08099850: .4byte 0x000010cc _08099854: .4byte 0x00001038 _08099858: - ldr r3, _08099870 @ =gUnknown_083B6DB4 + ldr r3, _08099870 @ =gPokemonStorageSystemPtr ldr r1, [r3] ldr r0, _08099874 @ =0x000010cc adds r2, r1, r0 @@ -5239,11 +4871,11 @@ _08099864: adds r0, r3, 0 b _0809988A .align 2, 0 -_08099870: .4byte gUnknown_083B6DB4 +_08099870: .4byte gPokemonStorageSystemPtr _08099874: .4byte 0x000010cc _08099878: .4byte 0x00001050 _0809987C: - ldr r0, _080998C8 @ =gUnknown_083B6DB4 + ldr r0, _080998C8 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r3, _080998CC @ =0x000010cc adds r2, r1, r3 @@ -5281,7 +4913,7 @@ _080998C0: pop {r0} bx r0 .align 2, 0 -_080998C8: .4byte gUnknown_083B6DB4 +_080998C8: .4byte gPokemonStorageSystemPtr _080998CC: .4byte 0x000010cc _080998D0: .4byte 0x00001034 _080998D4: .4byte gSpriteAffineAnimTable_83B6F5C @@ -5290,7 +4922,7 @@ _080998D4: .4byte gSpriteAffineAnimTable_83B6F5C thumb_func_start sub_80998D8 sub_80998D8: @ 80998D8 push {lr} - ldr r0, _080998FC @ =gUnknown_083B6DB4 + ldr r0, _080998FC @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099900 @ =0x000010cc adds r0, r1 @@ -5309,7 +4941,7 @@ _080998F8: movs r0, 0 b _0809991A .align 2, 0 -_080998FC: .4byte gUnknown_083B6DB4 +_080998FC: .4byte gPokemonStorageSystemPtr _08099900: .4byte 0x000010cc _08099904: adds r0, r1, 0 @@ -5332,7 +4964,7 @@ _0809991A: thumb_func_start sub_8099920 sub_8099920: @ 8099920 push {r4,lr} - ldr r0, _08099950 @ =gUnknown_083B6DB4 + ldr r0, _08099950 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099954 @ =0x000010cc adds r4, r0, r1 @@ -5355,14 +4987,14 @@ _0809994A: pop {r0} bx r0 .align 2, 0 -_08099950: .4byte gUnknown_083B6DB4 +_08099950: .4byte gPokemonStorageSystemPtr _08099954: .4byte 0x000010cc thumb_func_end sub_8099920 thumb_func_start sub_8099958 sub_8099958: @ 8099958 push {lr} - ldr r0, _08099988 @ =gUnknown_083B6DB4 + ldr r0, _08099988 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809998C @ =0x000010cc adds r3, r0, r1 @@ -5385,14 +5017,14 @@ _08099982: pop {r0} bx r0 .align 2, 0 -_08099988: .4byte gUnknown_083B6DB4 +_08099988: .4byte gPokemonStorageSystemPtr _0809998C: .4byte 0x000010cc thumb_func_end sub_8099958 thumb_func_start sub_8099990 sub_8099990: @ 8099990 push {lr} - ldr r0, _080999A4 @ =gUnknown_083B6DB4 + ldr r0, _080999A4 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _080999A8 @ =0x000010cc adds r2, r0, r1 @@ -5402,7 +5034,7 @@ sub_8099990: @ 8099990 movs r0, 0 b _080999C0 .align 2, 0 -_080999A4: .4byte gUnknown_083B6DB4 +_080999A4: .4byte gPokemonStorageSystemPtr _080999A8: .4byte 0x000010cc _080999AC: ldr r0, [r0] @@ -5423,7 +5055,7 @@ _080999C0: thumb_func_start sub_80999C4 sub_80999C4: @ 80999C4 - ldr r1, _080999E4 @ =gUnknown_083B6DB4 + ldr r1, _080999E4 @ =gPokemonStorageSystemPtr ldr r1, [r1] movs r2, 0x8E lsls r2, 5 @@ -5439,7 +5071,7 @@ sub_80999C4: @ 80999C4 strh r1, [r0, 0x22] bx lr .align 2, 0 -_080999E4: .4byte gUnknown_083B6DB4 +_080999E4: .4byte gPokemonStorageSystemPtr thumb_func_end sub_80999C4 thumb_func_start sub_80999E8 @@ -5448,7 +5080,7 @@ sub_80999E8: @ 80999E8 lsls r0, 16 lsrs r3, r0, 16 movs r4, 0 - ldr r1, _08099A58 @ =gUnknown_083B6DB4 + ldr r1, _08099A58 @ =gPokemonStorageSystemPtr ldr r0, [r1] movs r2, 0x89 lsls r2, 5 @@ -5504,7 +5136,7 @@ _08099A4E: ldr r0, _08099A5C @ =0x0000ffff b _08099A94 .align 2, 0 -_08099A58: .4byte gUnknown_083B6DB4 +_08099A58: .4byte gPokemonStorageSystemPtr _08099A5C: .4byte 0x0000ffff _08099A60: ldr r1, [r2] @@ -5549,7 +5181,7 @@ sub_8099AAC: @ 8099AAC lsls r0, 16 lsrs r6, r0, 16 movs r3, 0 - ldr r0, _08099AE4 @ =gUnknown_083B6DB4 + ldr r0, _08099AE4 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x89 lsls r1, 5 @@ -5574,7 +5206,7 @@ _08099AC6: strh r0, [r2] b _08099AF6 .align 2, 0 -_08099AE4: .4byte gUnknown_083B6DB4 +_08099AE4: .4byte gPokemonStorageSystemPtr _08099AE8: .4byte 0x0000ffff _08099AEC: adds r0, r3, 0x1 @@ -5718,7 +5350,7 @@ sub_8099BF8: @ 8099BF8 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, _08099C50 @ =gUnknown_083B6DB4 + ldr r0, _08099C50 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099C54 @ =0x000008ba adds r2, r0, r1 @@ -5753,7 +5385,7 @@ sub_8099BF8: @ 8099BF8 pop {r0} bx r0 .align 2, 0 -_08099C50: .4byte gUnknown_083B6DB4 +_08099C50: .4byte gPokemonStorageSystemPtr _08099C54: .4byte 0x000008ba _08099C58: .4byte 0x000008b4 _08099C5C: .4byte 0x040000d4 @@ -5775,7 +5407,7 @@ sub_8099C70: @ 8099C70 adds r0, r5, 0 adds r1, r4, 0 bl sub_8099EB0 - ldr r0, _08099D10 @ =gUnknown_083B6DB4 + ldr r0, _08099D10 @ =gPokemonStorageSystemPtr ldr r2, [r0] lsls r0, r4, 1 adds r0, r4 @@ -5843,7 +5475,7 @@ _08099CD6: pop {r0} bx r0 .align 2, 0 -_08099D10: .4byte gUnknown_083B6DB4 +_08099D10: .4byte gPokemonStorageSystemPtr _08099D14: .4byte 0x000008b6 _08099D18: .4byte 0x000008b8 _08099D1C: .4byte 0x000008bb @@ -5860,7 +5492,7 @@ sub_8099D34: @ 8099D34 bl sub_80990AC lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _08099D78 @ =gUnknown_083B6DB4 + ldr r0, _08099D78 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _08099D7C @ =0x000008b8 adds r3, r1, r0 @@ -5889,7 +5521,7 @@ _08099D74: movs r0, 0x1 b _08099D8A .align 2, 0 -_08099D78: .4byte gUnknown_083B6DB4 +_08099D78: .4byte gPokemonStorageSystemPtr _08099D7C: .4byte 0x000008b8 _08099D80: .4byte 0x000008b4 _08099D84: .4byte 0x000001ff @@ -5952,7 +5584,7 @@ sub_8099DCC: @ 8099DCC adds r0, r1 movs r1, 0 strb r4, [r0] - ldr r0, _08099E00 @ =gUnknown_083B6DB4 + ldr r0, _08099E00 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r2, _08099E04 @ =0x00001032 adds r0, r2 @@ -5963,7 +5595,7 @@ sub_8099DCC: @ 8099DCC .align 2, 0 _08099DF8: .4byte gPokemonStorage _08099DFC: .4byte 0x000083c2 -_08099E00: .4byte gUnknown_083B6DB4 +_08099E00: .4byte gPokemonStorageSystemPtr _08099E04: .4byte 0x00001032 thumb_func_end sub_8099DCC @@ -5971,7 +5603,7 @@ _08099E04: .4byte 0x00001032 sub_8099E08: @ 8099E08 push {r4,r5,lr} sub sp, 0x4 - ldr r0, _08099E24 @ =gUnknown_083B6DB4 + ldr r0, _08099E24 @ =gPokemonStorageSystemPtr ldr r5, [r0] ldr r0, _08099E28 @ =0x00001032 adds r4, r5, r0 @@ -5984,7 +5616,7 @@ sub_8099E08: @ 8099E08 beq _08099E36 b _08099EA6 .align 2, 0 -_08099E24: .4byte gUnknown_083B6DB4 +_08099E24: .4byte gPokemonStorageSystemPtr _08099E28: .4byte 0x00001032 _08099E2C: cmp r0, 0x2 @@ -6061,7 +5693,7 @@ sub_8099EB0: @ 8099EB0 lsrs r7, r1, 24 cmp r1, 0 beq _08099ED8 - ldr r0, _08099F38 @ =gUnknown_083B6DB4 + ldr r0, _08099F38 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r2, 0 ldr r3, _08099F3C @ =0x000008ba @@ -6084,7 +5716,7 @@ _08099ED8: ldr r0, _08099F4C @ =gWallpaperTable adds r4, r0 ldr r0, [r4, 0xC] - ldr r1, _08099F38 @ =gUnknown_083B6DB4 + ldr r1, _08099F38 @ =gPokemonStorageSystemPtr ldr r5, [r1] ldr r2, _08099F3C @ =0x000008ba adds r6, r5, r2 @@ -6119,7 +5751,7 @@ _08099ED8: pop {r0} bx r0 .align 2, 0 -_08099F38: .4byte gUnknown_083B6DB4 +_08099F38: .4byte gPokemonStorageSystemPtr _08099F3C: .4byte 0x000008ba _08099F40: .4byte 0x0600d000 _08099F44: .4byte gPokemonStorage @@ -6150,7 +5782,7 @@ sub_8099F58: @ 8099F58 lsls r0, 28 lsrs r0, 16 str r0, [sp, 0x4] - ldr r0, _08099FB8 @ =gUnknown_083B6DB4 + ldr r0, _08099FB8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _08099FBC @ =0x000008b4 adds r0, r1 @@ -6179,7 +5811,7 @@ sub_8099F58: @ 8099F58 movs r7, 0 b _0809A020 .align 2, 0 -_08099FB8: .4byte gUnknown_083B6DB4 +_08099FB8: .4byte gPokemonStorageSystemPtr _08099FBC: .4byte 0x000008b4 _08099FC0: cmp r2, 0x1F @@ -6402,7 +6034,7 @@ _0809A13A: sub_809A14C: @ 809A14C push {r4-r6,lr} adds r2, r0, 0 - ldr r0, _0809A174 @ =gUnknown_083B6DB4 + ldr r0, _0809A174 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809A178 @ =0x000008b4 adds r0, r1 @@ -6421,7 +6053,7 @@ sub_809A14C: @ 809A14C adds r0, r6 b _0809A184 .align 2, 0 -_0809A174: .4byte gUnknown_083B6DB4 +_0809A174: .4byte gPokemonStorageSystemPtr _0809A178: .4byte 0x000008b4 _0809A17C: lsls r0, 1 @@ -6537,7 +6169,7 @@ sub_809A23C: @ 809A23C lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r0, _0809A384 @ =gUnknown_083B6DB4 + ldr r0, _0809A384 @ =gPokemonStorageSystemPtr ldr r5, [r0] ldr r1, _0809A388 @ =0x000008ca adds r7, r5, r1 @@ -6649,7 +6281,7 @@ _0809A328: adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 - ldr r0, _0809A384 @ =gUnknown_083B6DB4 + ldr r0, _0809A384 @ =gPokemonStorageSystemPtr ldr r5, [r0] lsls r0, r4, 2 movs r3, 0xCF @@ -6683,7 +6315,7 @@ _0809A328: pop {r0} bx r0 .align 2, 0 -_0809A384: .4byte gUnknown_083B6DB4 +_0809A384: .4byte gPokemonStorageSystemPtr _0809A388: .4byte 0x000008ca _0809A38C: .4byte 0x00030200 _0809A390: .4byte 0x00000ccc @@ -6718,7 +6350,7 @@ sub_809A3D0: @ 809A3D0 lsls r1, 24 lsrs r1, 24 mov r10, r1 - ldr r3, _0809A43C @ =gUnknown_083B6DB4 + ldr r3, _0809A43C @ =gPokemonStorageSystemPtr ldr r5, [r3] ldr r1, _0809A440 @ =0x000008ca adds r0, r5, r1 @@ -6761,7 +6393,7 @@ _0809A41E: mov r8, r0 b _0809A478 .align 2, 0 -_0809A43C: .4byte gUnknown_083B6DB4 +_0809A43C: .4byte gPokemonStorageSystemPtr _0809A440: .4byte 0x000008ca _0809A444: .4byte 0x0000ffff _0809A448: .4byte 0x00030200 @@ -6847,7 +6479,7 @@ _0809A4DE: bl CreateSprite lsls r0, 24 lsrs r0, 24 - ldr r1, _0809A584 @ =gUnknown_083B6DB4 + ldr r1, _0809A584 @ =gPokemonStorageSystemPtr ldr r4, [r1] lsls r6, r7, 2 ldr r1, _0809A588 @ =0x00000cf8 @@ -6910,7 +6542,7 @@ _0809A574: .4byte 0x0000dac9 _0809A578: .4byte 0x000008ca _0809A57C: .4byte gPokemonStorage + 0x8344 _0809A580: .4byte gUnknown_083BB0A8 -_0809A584: .4byte gUnknown_083B6DB4 +_0809A584: .4byte gPokemonStorageSystemPtr _0809A588: .4byte 0x00000cf8 _0809A58C: .4byte gSprites _0809A590: .4byte sub_809A5E8 @@ -6920,7 +6552,7 @@ _0809A594: .4byte sub_809A61C thumb_func_start sub_809A598 sub_809A598: @ 809A598 push {lr} - ldr r0, _0809A5B0 @ =gUnknown_083B6DB4 + ldr r0, _0809A5B0 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809A5B4 @ =0x00000cca adds r0, r1 @@ -6931,13 +6563,13 @@ sub_809A598: @ 809A598 bl FreeSpriteTilesByTag b _0809A5BE .align 2, 0 -_0809A5B0: .4byte gUnknown_083B6DB4 +_0809A5B0: .4byte gPokemonStorageSystemPtr _0809A5B4: .4byte 0x00000cca _0809A5B8: movs r0, 0x3 bl FreeSpriteTilesByTag _0809A5BE: - ldr r0, _0809A5E0 @ =gUnknown_083B6DB4 + ldr r0, _0809A5E0 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r3, 0xCF lsls r3, 4 @@ -6955,7 +6587,7 @@ _0809A5BE: pop {r0} bx r0 .align 2, 0 -_0809A5E0: .4byte gUnknown_083B6DB4 +_0809A5E0: .4byte gPokemonStorageSystemPtr _0809A5E4: .4byte 0x00000cf4 thumb_func_end sub_809A598 @@ -7034,7 +6666,7 @@ sub_809A654: @ 809A654 adds r1, r2 adds r0, r1 ldrb r1, [r0] - ldr r0, _0809A698 @ =gUnknown_083B6DB4 + ldr r0, _0809A698 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r3, _0809A69C @ =0x00000cca adds r0, r2, r3 @@ -7056,7 +6688,7 @@ sub_809A654: @ 809A654 .align 2, 0 _0809A690: .4byte gPokemonStorage _0809A694: .4byte 0x000083c2 -_0809A698: .4byte gUnknown_083B6DB4 +_0809A698: .4byte gPokemonStorageSystemPtr _0809A69C: .4byte 0x00000cca _0809A6A0: .4byte gUnknown_083BB0A8 _0809A6A4: .4byte gPlttBufferUnfaded @@ -7132,7 +6764,7 @@ _0809A6EC: adds r0, r1, 0 _0809A72C: strh r0, [r4, 0x34] - ldr r0, _0809A770 @ =gUnknown_083B6DB4 + ldr r0, _0809A770 @ =gPokemonStorageSystemPtr ldr r0, [r0] lsls r1, r5, 2 movs r2, 0xD0 @@ -7161,7 +6793,7 @@ _0809A760: .4byte gUnknown_083BB288 _0809A764: .4byte gUnknown_083BB290 _0809A768: .4byte gSpriteTemplate_83BB2F0 _0809A76C: .4byte gSprites -_0809A770: .4byte gUnknown_083B6DB4 +_0809A770: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809A6DC thumb_func_start sub_809A774 @@ -7170,7 +6802,7 @@ sub_809A774: @ 809A774 lsls r0, 24 lsrs r6, r0, 24 movs r2, 0 - ldr r7, _0809A7C4 @ =gUnknown_083B6DB4 + ldr r7, _0809A7C4 @ =gPokemonStorageSystemPtr ldr r0, [r7] movs r1, 0xD0 lsls r1, 4 @@ -7208,7 +6840,7 @@ _0809A78A: movs r2, 0x48 b _0809A7E8 .align 2, 0 -_0809A7C4: .4byte gUnknown_083B6DB4 +_0809A7C4: .4byte gPokemonStorageSystemPtr _0809A7C8: .4byte 0x00000d04 _0809A7CC: ldr r1, [r7] @@ -7252,7 +6884,7 @@ _0809A80C: .4byte 0x00000d04 sub_809A810: @ 809A810 push {r4-r6,lr} movs r3, 0 - ldr r0, _0809A85C @ =gUnknown_083B6DB4 + ldr r0, _0809A85C @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0xD0 lsls r1, 4 @@ -7288,7 +6920,7 @@ _0809A824: pop {r0} bx r0 .align 2, 0 -_0809A85C: .4byte gUnknown_083B6DB4 +_0809A85C: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809A810 thumb_func_start sub_809A860 @@ -7298,7 +6930,7 @@ sub_809A860: @ 809A860 cmp r0, 0 beq _0809A89C movs r2, 0 - ldr r0, _0809A898 @ =gUnknown_083B6DB4 + ldr r0, _0809A898 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0xD0 lsls r1, 4 @@ -7323,10 +6955,10 @@ _0809A878: bls _0809A878 b _0809A8BC .align 2, 0 -_0809A898: .4byte gUnknown_083B6DB4 +_0809A898: .4byte gPokemonStorageSystemPtr _0809A89C: movs r2, 0 - ldr r0, _0809A8C4 @ =gUnknown_083B6DB4 + ldr r0, _0809A8C4 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r3, 0xD0 lsls r3, 4 @@ -7347,7 +6979,7 @@ _0809A8BC: pop {r0} bx r0 .align 2, 0 -_0809A8C4: .4byte gUnknown_083B6DB4 +_0809A8C4: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809A860 thumb_func_start sub_809A8C8 @@ -7405,7 +7037,7 @@ _0809A92C: strh r0, [r2, 0x2E] b _0809A994 _0809A932: - ldr r0, _0809A97C @ =gUnknown_083B6DB4 + ldr r0, _0809A97C @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _0809A980 @ =0x000008b6 adds r1, r0 @@ -7444,10 +7076,10 @@ _0809A958: strh r0, [r2, 0x2E] b _0809A994 .align 2, 0 -_0809A97C: .4byte gUnknown_083B6DB4 +_0809A97C: .4byte gPokemonStorageSystemPtr _0809A980: .4byte 0x000008b6 _0809A984: - ldr r0, _0809A998 @ =gUnknown_083B6DB4 + ldr r0, _0809A998 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809A99C @ =0x000008b6 adds r0, r1 @@ -7459,7 +7091,7 @@ _0809A994: pop {r0} bx r0 .align 2, 0 -_0809A998: .4byte gUnknown_083B6DB4 +_0809A998: .4byte gPokemonStorageSystemPtr _0809A99C: .4byte 0x000008b6 thumb_func_end sub_809A8C8 @@ -7533,7 +7165,7 @@ _0809AA1A: thumb_func_start sub_809AA24 sub_809AA24: @ 809AA24 push {lr} - ldr r0, _0809AA38 @ =gUnknown_083B6DB4 + ldr r0, _0809AA38 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldrb r1, [r0, 0x5] cmp r1, 0x1 @@ -7543,7 +7175,7 @@ sub_809AA24: @ 809AA24 strb r0, [r1] b _0809AA44 .align 2, 0 -_0809AA38: .4byte gUnknown_083B6DB4 +_0809AA38: .4byte gPokemonStorageSystemPtr _0809AA3C: .4byte gUnknown_020384E4 _0809AA40: ldr r0, _0809AA78 @ =gUnknown_020384E4 @@ -7562,7 +7194,7 @@ _0809AA44: strb r1, [r0] bl sub_809B0D4 bl sub_809CC04 - ldr r0, _0809AA90 @ =gUnknown_083B6DB4 + ldr r0, _0809AA90 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809AA94 @ =0x000011e2 adds r0, r1 @@ -7578,7 +7210,7 @@ _0809AA80: .4byte gUnknown_020384E6 _0809AA84: .4byte gUnknown_020384E7 _0809AA88: .4byte gUnknown_020384E8 _0809AA8C: .4byte gUnknown_020384E9 -_0809AA90: .4byte gUnknown_083B6DB4 +_0809AA90: .4byte gPokemonStorageSystemPtr _0809AA94: .4byte 0x000011e2 thumb_func_end sub_809AA24 @@ -7587,7 +7219,7 @@ sub_809AA98: @ 809AA98 push {lr} bl sub_809CC04 bl sub_809C028 - ldr r0, _0809AAC0 @ =gUnknown_083B6DB4 + ldr r0, _0809AAC0 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809AAC4 @ =0x000011e2 adds r0, r1 @@ -7602,7 +7234,7 @@ _0809AABA: pop {r0} bx r0 .align 2, 0 -_0809AAC0: .4byte gUnknown_083B6DB4 +_0809AAC0: .4byte gPokemonStorageSystemPtr _0809AAC4: .4byte 0x000011e2 _0809AAC8: .4byte gUnknown_020384E6 thumb_func_end sub_809AA98 @@ -7772,7 +7404,7 @@ _0809ABFA: thumb_func_start sub_809AC00 sub_809AC00: @ 809AC00 push {r4-r6,lr} - ldr r0, _0809AC14 @ =gUnknown_083B6DB4 + ldr r0, _0809AC14 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _0809AC18 @ =0x000011dc adds r1, r4, r0 @@ -7782,7 +7414,7 @@ sub_809AC00: @ 809AC00 movs r0, 0 b _0809AD2C .align 2, 0 -_0809AC14: .4byte gUnknown_083B6DB4 +_0809AC14: .4byte gPokemonStorageSystemPtr _0809AC18: .4byte 0x000011dc _0809AC1C: subs r0, 0x1 @@ -7947,7 +7579,7 @@ sub_809AD3C: @ 809AD3C mov r2, sp adds r3, r6, 0 bl sub_809AACC - ldr r0, _0809AD88 @ =gUnknown_083B6DB4 + ldr r0, _0809AD88 @ =gPokemonStorageSystemPtr ldr r1, [r0] movs r2, 0x8F lsls r2, 5 @@ -7970,7 +7602,7 @@ sub_809AD3C: @ 809AD3C pop {r0} bx r0 .align 2, 0 -_0809AD88: .4byte gUnknown_083B6DB4 +_0809AD88: .4byte gPokemonStorageSystemPtr _0809AD8C: .4byte 0x000011e1 _0809AD90: .4byte 0x000011da thumb_func_end sub_809AD3C @@ -7978,7 +7610,7 @@ _0809AD90: .4byte 0x000011da thumb_func_start sub_809AD94 sub_809AD94: @ 809AD94 push {r4-r7,lr} - ldr r0, _0809ADB0 @ =gUnknown_083B6DB4 + ldr r0, _0809ADB0 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r3, _0809ADB4 @ =0x000011de adds r1, r2, r3 @@ -7991,7 +7623,7 @@ sub_809AD94: @ 809AD94 movs r0, 0xC b _0809ADC2 .align 2, 0 -_0809ADB0: .4byte gUnknown_083B6DB4 +_0809ADB0: .4byte gPokemonStorageSystemPtr _0809ADB4: .4byte 0x000011de _0809ADB8: .4byte 0x000011dc _0809ADBC: @@ -8181,7 +7813,7 @@ sub_809AF18: @ 809AF18 ldrb r0, [r0] cmp r0, 0 bne _0809AF46 - ldr r0, _0809AFA8 @ =gUnknown_083B6DB4 + ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -8198,7 +7830,7 @@ _0809AF46: asrs r0, 24 cmp r0, 0x1 beq _0809AF70 - ldr r0, _0809AFA8 @ =gUnknown_083B6DB4 + ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r2, _0809AFB0 @ =0x000011e2 adds r1, r0, r2 @@ -8218,7 +7850,7 @@ _0809AF70: blt _0809AF9E cmp r4, 0x3 bgt _0809AF9E - ldr r0, _0809AFA8 @ =gUnknown_083B6DB4 + ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r0, _0809AFB4 @ =0x000011c4 adds r2, r0 @@ -8241,7 +7873,7 @@ _0809AF9E: bx r0 .align 2, 0 _0809AFA4: .4byte gUnknown_020384E6 -_0809AFA8: .4byte gUnknown_083B6DB4 +_0809AFA8: .4byte gPokemonStorageSystemPtr _0809AFAC: .4byte gUnknown_020384E4 _0809AFB0: .4byte 0x000011e2 _0809AFB4: .4byte 0x000011c4 @@ -8251,7 +7883,7 @@ _0809AFB4: .4byte 0x000011c4 sub_809AFB8: @ 809AFB8 push {r4,r5,lr} ldr r5, _0809B000 @ =gUnknown_020384E4 - ldr r0, _0809B004 @ =gUnknown_083B6DB4 + ldr r0, _0809B004 @ =gPokemonStorageSystemPtr ldr r4, [r0] movs r1, 0x8F lsls r1, 5 @@ -8286,7 +7918,7 @@ _0809AFEA: b _0809B05E .align 2, 0 _0809B000: .4byte gUnknown_020384E4 -_0809B004: .4byte gUnknown_083B6DB4 +_0809B004: .4byte gPokemonStorageSystemPtr _0809B008: .4byte gUnknown_020384E5 _0809B00C: .4byte 0x000011e1 _0809B010: .4byte gUnknown_020384E6 @@ -8355,7 +7987,7 @@ _0809B07C: bls _0809B08A movs r3, 0x5 _0809B08A: - ldr r0, _0809B0B8 @ =gUnknown_083B6DB4 + ldr r0, _0809B0B8 @ =gPokemonStorageSystemPtr ldr r2, [r0] movs r1, 0x8E lsls r1, 5 @@ -8378,7 +8010,7 @@ _0809B0AA: pop {r0} bx r0 .align 2, 0 -_0809B0B8: .4byte gUnknown_083B6DB4 +_0809B0B8: .4byte gPokemonStorageSystemPtr _0809B0BC: .4byte 0x000011e3 thumb_func_end sub_809B068 @@ -8428,7 +8060,7 @@ _0809B0FC: .4byte gUnknown_020384EA thumb_func_start sub_809B100 sub_809B100: @ 809B100 lsls r0, 24 - ldr r1, _0809B120 @ =gUnknown_083B6DB4 + ldr r1, _0809B120 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _0809B124 @ =0x000012a4 adds r3, r1, r2 @@ -8443,7 +8075,7 @@ sub_809B100: @ 809B100 strb r0, [r1] bx lr .align 2, 0 -_0809B120: .4byte gUnknown_083B6DB4 +_0809B120: .4byte gPokemonStorageSystemPtr _0809B124: .4byte 0x000012a4 _0809B128: .4byte gUnknown_083BBBC8 _0809B12C: .4byte 0x000012a8 @@ -8452,7 +8084,7 @@ _0809B12C: .4byte 0x000012a8 thumb_func_start sub_809B130 sub_809B130: @ 809B130 push {lr} - ldr r0, _0809B148 @ =gUnknown_083B6DB4 + ldr r0, _0809B148 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809B14C @ =0x000012a4 adds r0, r1 @@ -8463,14 +8095,14 @@ sub_809B130: @ 809B130 pop {r1} bx r1 .align 2, 0 -_0809B148: .4byte gUnknown_083B6DB4 +_0809B148: .4byte gPokemonStorageSystemPtr _0809B14C: .4byte 0x000012a4 thumb_func_end sub_809B130 thumb_func_start sub_809B150 sub_809B150: @ 809B150 push {r4,r5,lr} - ldr r0, _0809B16C @ =gUnknown_083B6DB4 + ldr r0, _0809B16C @ =gPokemonStorageSystemPtr ldr r5, [r0] ldr r0, _0809B170 @ =0x000012a8 adds r4, r5, r0 @@ -8483,7 +8115,7 @@ sub_809B150: @ 809B150 beq _0809B17E b _0809B1CE .align 2, 0 -_0809B16C: .4byte gUnknown_083B6DB4 +_0809B16C: .4byte gPokemonStorageSystemPtr _0809B170: .4byte 0x000012a8 _0809B174: cmp r0, 0x2 @@ -8542,7 +8174,7 @@ _0809B1D0: thumb_func_start sub_809B1D8 sub_809B1D8: @ 809B1D8 push {r4,r5,lr} - ldr r0, _0809B1F4 @ =gUnknown_083B6DB4 + ldr r0, _0809B1F4 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _0809B1F8 @ =0x000012a8 adds r5, r4, r0 @@ -8555,7 +8187,7 @@ sub_809B1D8: @ 809B1D8 beq _0809B202 b _0809B244 .align 2, 0 -_0809B1F4: .4byte gUnknown_083B6DB4 +_0809B1F4: .4byte gPokemonStorageSystemPtr _0809B1F8: .4byte 0x000012a8 _0809B1FC: cmp r0, 0x2 @@ -8604,7 +8236,7 @@ _0809B246: thumb_func_start sub_809B24C sub_809B24C: @ 809B24C push {r4,r5,lr} - ldr r0, _0809B268 @ =gUnknown_083B6DB4 + ldr r0, _0809B268 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _0809B26C @ =0x000012a8 adds r5, r4, r0 @@ -8617,7 +8249,7 @@ sub_809B24C: @ 809B24C beq _0809B276 b _0809B31C .align 2, 0 -_0809B268: .4byte gUnknown_083B6DB4 +_0809B268: .4byte gPokemonStorageSystemPtr _0809B26C: .4byte 0x000012a8 _0809B270: cmp r0, 0x2 @@ -8645,7 +8277,7 @@ _0809B298: adds r1, r4, r2 _0809B2A0: strb r0, [r1] - ldr r0, _0809B2D4 @ =gUnknown_083B6DB4 + ldr r0, _0809B2D4 @ =gPokemonStorageSystemPtr ldr r4, [r0] movs r1, 0x8E lsls r1, 5 @@ -8667,7 +8299,7 @@ _0809B2A0: b _0809B31C .align 2, 0 _0809B2D0: .4byte 0x000012a9 -_0809B2D4: .4byte gUnknown_083B6DB4 +_0809B2D4: .4byte gPokemonStorageSystemPtr _0809B2D8: .4byte gUnknown_020384E5 _0809B2DC: .4byte 0x000012a8 _0809B2E0: @@ -8708,7 +8340,7 @@ _0809B31E: thumb_func_start sub_809B324 sub_809B324: @ 809B324 push {lr} - ldr r0, _0809B348 @ =gUnknown_083B6DB4 + ldr r0, _0809B348 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -8726,7 +8358,7 @@ _0809B33E: strh r0, [r1, 0x26] b _0809B350 .align 2, 0 -_0809B348: .4byte gUnknown_083B6DB4 +_0809B348: .4byte gPokemonStorageSystemPtr _0809B34C: movs r0, 0 b _0809B352 @@ -8740,7 +8372,7 @@ _0809B352: thumb_func_start sub_809B358 sub_809B358: @ 809B358 push {lr} - ldr r0, _0809B378 @ =gUnknown_083B6DB4 + ldr r0, _0809B378 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -8756,7 +8388,7 @@ sub_809B358: @ 809B358 movs r0, 0x1 b _0809B37E .align 2, 0 -_0809B378: .4byte gUnknown_083B6DB4 +_0809B378: .4byte gPokemonStorageSystemPtr _0809B37C: movs r0, 0 _0809B37E: @@ -8873,7 +8505,7 @@ sub_809B44C: @ 809B44C lsrs r5, r1, 24 cmp r4, 0xE bne _0809B488 - ldr r0, _0809B478 @ =gUnknown_083B6DB4 + ldr r0, _0809B478 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809B47C @ =0x000025b4 adds r0, r1 @@ -8888,7 +8520,7 @@ sub_809B44C: @ 809B44C bl memcpy b _0809B4AA .align 2, 0 -_0809B478: .4byte gUnknown_083B6DB4 +_0809B478: .4byte gPokemonStorageSystemPtr _0809B47C: .4byte 0x000025b4 _0809B480: .4byte gPlayerParty _0809B484: .4byte gUnknown_020384E5 @@ -8904,7 +8536,7 @@ _0809B488: ldr r2, _0809B4C0 @ =gPokemonStorage + 0x4 adds r1, r2 adds r0, r1 - ldr r1, _0809B4C4 @ =gUnknown_083B6DB4 + ldr r1, _0809B4C4 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _0809B4C8 @ =0x000025b4 adds r1, r2 @@ -8922,7 +8554,7 @@ _0809B4AA: bx r0 .align 2, 0 _0809B4C0: .4byte gPokemonStorage + 0x4 -_0809B4C4: .4byte gUnknown_083B6DB4 +_0809B4C4: .4byte gPokemonStorageSystemPtr _0809B4C8: .4byte 0x000025b4 _0809B4CC: .4byte gUnknown_020384E7 _0809B4D0: .4byte gUnknown_020384E8 @@ -8941,7 +8573,7 @@ diegohint2: @ 809B4D4 movs r0, 0x64 muls r0, r5 adds r0, r1 - ldr r1, _0809B500 @ =gUnknown_083B6DB4 + ldr r1, _0809B500 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _0809B504 @ =0x000025b4 adds r1, r2 @@ -8950,10 +8582,10 @@ diegohint2: @ 809B4D4 b _0809B536 .align 2, 0 _0809B4FC: .4byte gPlayerParty -_0809B500: .4byte gUnknown_083B6DB4 +_0809B500: .4byte gPokemonStorageSystemPtr _0809B504: .4byte 0x000025b4 _0809B508: - ldr r0, _0809B53C @ =gUnknown_083B6DB4 + ldr r0, _0809B53C @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _0809B540 @ =0x000025b4 adds r4, r0 @@ -8979,7 +8611,7 @@ _0809B536: pop {r0} bx r0 .align 2, 0 -_0809B53C: .4byte gUnknown_083B6DB4 +_0809B53C: .4byte gPokemonStorageSystemPtr _0809B540: .4byte 0x000025b4 _0809B544: .4byte gPokemonStorage thumb_func_end diegohint2 @@ -9030,7 +8662,7 @@ diegohint1: @ 809B58C lsrs r6, r1, 24 cmp r5, 0xE bne _0809B5C0 - ldr r0, _0809B5B4 @ =gUnknown_083B6DB4 + ldr r0, _0809B5B4 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809B5B8 @ =0x00002618 adds r0, r1 @@ -9042,7 +8674,7 @@ diegohint1: @ 809B58C bl memcpy b _0809B5E2 .align 2, 0 -_0809B5B4: .4byte gUnknown_083B6DB4 +_0809B5B4: .4byte gPokemonStorageSystemPtr _0809B5B8: .4byte 0x00002618 _0809B5BC: .4byte gPlayerParty _0809B5C0: @@ -9057,7 +8689,7 @@ _0809B5C0: ldr r2, _0809B614 @ =gPokemonStorage + 0x4 adds r1, r2 adds r0, r1 - ldr r1, _0809B618 @ =gUnknown_083B6DB4 + ldr r1, _0809B618 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _0809B61C @ =0x00002618 adds r1, r2 @@ -9066,7 +8698,7 @@ _0809B5E2: adds r0, r5, 0 adds r1, r6, 0 bl diegohint2 - ldr r0, _0809B618 @ =gUnknown_083B6DB4 + ldr r0, _0809B618 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _0809B620 @ =0x000025b4 adds r4, r1, r0 @@ -9087,7 +8719,7 @@ _0809B5E2: bx r0 .align 2, 0 _0809B614: .4byte gPokemonStorage + 0x4 -_0809B618: .4byte gUnknown_083B6DB4 +_0809B618: .4byte gPokemonStorageSystemPtr _0809B61C: .4byte 0x00002618 _0809B620: .4byte 0x000025b4 _0809B624: .4byte gUnknown_020384E7 @@ -9145,7 +8777,7 @@ _0809B686: lsrs r0, r4, 24 bl sub_8098D20 _0809B698: - ldr r0, _0809B6B8 @ =gUnknown_083B6DB4 + ldr r0, _0809B6B8 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -9160,13 +8792,13 @@ _0809B6AC: bx r1 .align 2, 0 _0809B6B4: .4byte gUnknown_020384E5 -_0809B6B8: .4byte gUnknown_083B6DB4 +_0809B6B8: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809B62C thumb_func_start sub_809B6BC sub_809B6BC: @ 809B6BC push {lr} - ldr r0, _0809B6D8 @ =gUnknown_083B6DB4 + ldr r0, _0809B6D8 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -9178,7 +8810,7 @@ sub_809B6BC: @ 809B6BC pop {r0} bx r0 .align 2, 0 -_0809B6D8: .4byte gUnknown_083B6DB4 +_0809B6D8: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809B6BC thumb_func_start sub_809B6DC @@ -9206,7 +8838,7 @@ _0809B700: ldrb r1, [r0] adds r0, r2, 0 bl sub_809981C - ldr r0, _0809B728 @ =gUnknown_083B6DB4 + ldr r0, _0809B728 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r2, _0809B72C @ =0x000026e4 adds r0, r1, r2 @@ -9218,7 +8850,7 @@ _0809B700: .align 2, 0 _0809B720: .4byte gUnknown_020384E4 _0809B724: .4byte gUnknown_020384E5 -_0809B728: .4byte gUnknown_083B6DB4 +_0809B728: .4byte gPokemonStorageSystemPtr _0809B72C: .4byte 0x000026e4 _0809B730: .4byte 0x000011fa thumb_func_end sub_809B6DC @@ -9233,7 +8865,7 @@ sub_809B734: @ 809B734 movs r0, 0x1 b _0809B758 _0809B744: - ldr r0, _0809B75C @ =gUnknown_083B6DB4 + ldr r0, _0809B75C @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -9246,7 +8878,7 @@ _0809B758: pop {r1} bx r1 .align 2, 0 -_0809B75C: .4byte gUnknown_083B6DB4 +_0809B75C: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809B734 thumb_func_start sub_809B760 @@ -9297,7 +8929,7 @@ sub_809B7AC: @ 809B7AC ldrb r0, [r0] cmp r0, 0 beq _0809B7C8 - ldr r0, _0809B7D0 @ =gUnknown_083B6DB4 + ldr r0, _0809B7D0 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r1, 0x8E lsls r1, 5 @@ -9310,7 +8942,7 @@ _0809B7C8: bx r0 .align 2, 0 _0809B7CC: .4byte gUnknown_020384E6 -_0809B7D0: .4byte gUnknown_083B6DB4 +_0809B7D0: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809B7AC thumb_func_start sub_809B7D4 @@ -9320,7 +8952,7 @@ sub_809B7D4: @ 809B7D4 ldrb r0, [r0] cmp r0, 0 beq _0809B81C - ldr r0, _0809B808 @ =gUnknown_083B6DB4 + ldr r0, _0809B808 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r1, _0809B80C @ =0x00002618 adds r0, r4, r1 @@ -9340,7 +8972,7 @@ sub_809B7D4: @ 809B7D4 b _0809B8A6 .align 2, 0 _0809B804: .4byte gUnknown_020384E6 -_0809B808: .4byte gUnknown_083B6DB4 +_0809B808: .4byte gPokemonStorageSystemPtr _0809B80C: .4byte 0x00002618 _0809B810: .4byte 0x000025b4 _0809B814: .4byte 0x00002682 @@ -9352,7 +8984,7 @@ _0809B81C: asrs r0, 24 cmp r0, 0x1 bne _0809B864 - ldr r0, _0809B850 @ =gUnknown_083B6DB4 + ldr r0, _0809B850 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r2, _0809B854 @ =0x00002618 adds r0, r4, r2 @@ -9371,7 +9003,7 @@ _0809B81C: b _0809B896 .align 2, 0 _0809B84C: .4byte gUnknown_020384E4 -_0809B850: .4byte gUnknown_083B6DB4 +_0809B850: .4byte gPokemonStorageSystemPtr _0809B854: .4byte 0x00002618 _0809B858: .4byte gPlayerParty _0809B85C: .4byte gUnknown_020384E5 @@ -9393,7 +9025,7 @@ _0809B864: adds r2, r5, 0x4 adds r1, r2 adds r0, r1 - ldr r1, _0809B904 @ =gUnknown_083B6DB4 + ldr r1, _0809B904 @ =gPokemonStorageSystemPtr ldr r4, [r1] ldr r2, _0809B908 @ =0x00002618 adds r1, r4, r2 @@ -9403,7 +9035,7 @@ _0809B864: adds r4, r1 _0809B896: strb r0, [r4] - ldr r0, _0809B904 @ =gUnknown_083B6DB4 + ldr r0, _0809B904 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809B900 @ =gUnknown_020384E5 ldrb r1, [r1] @@ -9411,7 +9043,7 @@ _0809B896: adds r0, r2 strb r1, [r0] _0809B8A6: - ldr r0, _0809B904 @ =gUnknown_083B6DB4 + ldr r0, _0809B904 @ =gPokemonStorageSystemPtr ldr r6, [r0] ldr r0, _0809B914 @ =0x0000267e adds r4, r6, r0 @@ -9456,7 +9088,7 @@ _0809B8A6: .align 2, 0 _0809B8FC: .4byte gPokemonStorage _0809B900: .4byte gUnknown_020384E5 -_0809B904: .4byte gUnknown_083B6DB4 +_0809B904: .4byte gPokemonStorageSystemPtr _0809B908: .4byte 0x00002618 _0809B90C: .4byte 0x00002682 _0809B910: .4byte 0x00002683 @@ -9476,7 +9108,7 @@ _0809B934: adds r0, r6, r2 strb r1, [r0] _0809B940: - ldr r0, _0809B958 @ =gUnknown_083B6DB4 + ldr r0, _0809B958 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809B95C @ =0x00002684 adds r0, r1 @@ -9487,7 +9119,7 @@ _0809B940: bx r0 .align 2, 0 _0809B954: .4byte 0x0000267d -_0809B958: .4byte gUnknown_083B6DB4 +_0809B958: .4byte gPokemonStorageSystemPtr _0809B95C: .4byte 0x00002684 thumb_func_end sub_809B7D4 @@ -9498,7 +9130,7 @@ sub_809B960: @ 809B960 mov r6, r9 mov r5, r8 push {r5-r7} - ldr r0, _0809B988 @ =gUnknown_083B6DB4 + ldr r0, _0809B988 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r3, _0809B98C @ =0x0000267d adds r1, r2, r3 @@ -9513,7 +9145,7 @@ sub_809B960: @ 809B960 asrs r0, 24 b _0809BB5C .align 2, 0 -_0809B988: .4byte gUnknown_083B6DB4 +_0809B988: .4byte gPokemonStorageSystemPtr _0809B98C: .4byte 0x0000267d _0809B990: .4byte 0x0000267c _0809B994: @@ -9568,7 +9200,7 @@ _0809B9CC: _0809B9F0: movs r0, 0x2 ands r3, r0 - ldr r7, _0809BA3C @ =gUnknown_083B6DB4 + ldr r7, _0809BA3C @ =gPokemonStorageSystemPtr mov r12, r7 cmp r3, 0 beq _0809BA02 @@ -9600,7 +9232,7 @@ _0809BA2C: .4byte 0x00002683 _0809BA30: .4byte gPlayerParty _0809BA34: .4byte 0x00002686 _0809BA38: .4byte 0x0000267e -_0809BA3C: .4byte gUnknown_083B6DB4 +_0809BA3C: .4byte gPokemonStorageSystemPtr _0809BA40: .4byte 0x0000267f _0809BA44: .4byte 0x0000267d _0809BA48: .4byte 0x0000267c @@ -9708,7 +9340,7 @@ _0809BB00: strb r0, [r1] lsls r0, 24 asrs r0, 24 - ldr r7, _0809BB88 @ =gUnknown_083B6DB4 + ldr r7, _0809BB88 @ =gPokemonStorageSystemPtr mov r12, r7 cmp r0, 0x1D ble _0809BB32 @@ -9764,7 +9396,7 @@ _0809BB78: .4byte gPokemonStorage + 0x4 _0809BB7C: .4byte 0x00002686 _0809BB80: .4byte 0x00002682 _0809BB84: .4byte 0x0000267e -_0809BB88: .4byte gUnknown_083B6DB4 +_0809BB88: .4byte gPokemonStorageSystemPtr _0809BB8C: .4byte 0x0000267d thumb_func_end sub_809B960 @@ -9776,7 +9408,7 @@ sub_809BB90: @ 809BB90 cmp r0, 0 beq _0809BBAA ldr r0, _0809BBB4 @ =gUnknown_02038480 - ldr r1, _0809BBB8 @ =gUnknown_083B6DB4 + ldr r1, _0809BBB8 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _0809BBBC @ =0x000025b4 adds r1, r2 @@ -9788,7 +9420,7 @@ _0809BBAA: .align 2, 0 _0809BBB0: .4byte gUnknown_020384E6 _0809BBB4: .4byte gUnknown_02038480 -_0809BBB8: .4byte gUnknown_083B6DB4 +_0809BBB8: .4byte gPokemonStorageSystemPtr _0809BBBC: .4byte 0x000025b4 thumb_func_end sub_809BB90 @@ -9803,7 +9435,7 @@ sub_809BBC0: @ 809BBC0 ldrb r0, [r0] cmp r0, 0xE bne _0809BBF8 - ldr r0, _0809BBEC @ =gUnknown_083B6DB4 + ldr r0, _0809BBEC @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809BBF0 @ =0x000025b4 adds r0, r1 @@ -9814,11 +9446,11 @@ sub_809BBC0: @ 809BBC0 .align 2, 0 _0809BBE4: .4byte gUnknown_020384E6 _0809BBE8: .4byte gUnknown_020384E7 -_0809BBEC: .4byte gUnknown_083B6DB4 +_0809BBEC: .4byte gPokemonStorageSystemPtr _0809BBF0: .4byte 0x000025b4 _0809BBF4: .4byte gUnknown_02038480 _0809BBF8: - ldr r0, _0809BC0C @ =gUnknown_083B6DB4 + ldr r0, _0809BC0C @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809BC10 @ =0x000025b4 adds r0, r1 @@ -9829,7 +9461,7 @@ _0809BC08: pop {r0} bx r0 .align 2, 0 -_0809BC0C: .4byte gUnknown_083B6DB4 +_0809BC0C: .4byte gPokemonStorageSystemPtr _0809BC10: .4byte 0x000025b4 _0809BC14: .4byte gUnknown_02038480 thumb_func_end sub_809BBC0 @@ -9842,7 +9474,7 @@ sub_809BC18: @ 809BC18 cmp r5, 0 beq _0809BC64 bl sub_809BB90 - ldr r0, _0809BC4C @ =gUnknown_083B6DB4 + ldr r0, _0809BC4C @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r0, _0809BC50 @ =0x00002690 adds r1, r2, r0 @@ -9861,7 +9493,7 @@ sub_809BC18: @ 809BC18 b _0809BCF2 .align 2, 0 _0809BC48: .4byte gUnknown_020384E6 -_0809BC4C: .4byte gUnknown_083B6DB4 +_0809BC4C: .4byte gPokemonStorageSystemPtr _0809BC50: .4byte 0x00002690 _0809BC54: .4byte gUnknown_02038480 _0809BC58: .4byte 0x0000268d @@ -9874,7 +9506,7 @@ _0809BC64: asrs r0, 24 cmp r0, 0x1 bne _0809BCBC - ldr r0, _0809BCA0 @ =gUnknown_083B6DB4 + ldr r0, _0809BCA0 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r2, _0809BCA4 @ =0x00002690 adds r1, r4, r2 @@ -9896,7 +9528,7 @@ _0809BC64: b _0809BCF2 .align 2, 0 _0809BC9C: .4byte gUnknown_020384E4 -_0809BCA0: .4byte gUnknown_083B6DB4 +_0809BCA0: .4byte gPokemonStorageSystemPtr _0809BCA4: .4byte 0x00002690 _0809BCA8: .4byte gPlayerParty _0809BCAC: .4byte gUnknown_020384E5 @@ -9904,7 +9536,7 @@ _0809BCB0: .4byte 0x0000268d _0809BCB4: .4byte 0x0000268c _0809BCB8: .4byte 0x0000268e _0809BCBC: - ldr r0, _0809BCF8 @ =gUnknown_083B6DB4 + ldr r0, _0809BCF8 @ =gPokemonStorageSystemPtr ldr r3, [r0] ldr r0, _0809BCFC @ =0x00002690 adds r4, r3, r0 @@ -9936,7 +9568,7 @@ _0809BCF2: pop {r0} bx r0 .align 2, 0 -_0809BCF8: .4byte gUnknown_083B6DB4 +_0809BCF8: .4byte gPokemonStorageSystemPtr _0809BCFC: .4byte 0x00002690 _0809BD00: .4byte gPokemonStorage _0809BD04: .4byte gUnknown_020384E5 @@ -10060,7 +9692,7 @@ sub_809BDD8: @ 809BDD8 lsrs r0, 24 mov r1, sp strb r0, [r1] - ldr r1, _0809BE04 @ =gUnknown_083B6DB4 + ldr r1, _0809BE04 @ =gPokemonStorageSystemPtr ldr r2, [r1] ldr r3, _0809BE08 @ =0x000011f7 adds r1, r2, r3 @@ -10076,7 +9708,7 @@ sub_809BDD8: @ 809BDD8 bl SetMonData b _0809BE68 .align 2, 0 -_0809BE04: .4byte gUnknown_083B6DB4 +_0809BE04: .4byte gPokemonStorageSystemPtr _0809BE08: .4byte 0x000011f7 _0809BE0C: .4byte gUnknown_020384E6 _0809BE10: .4byte 0x000025b4 @@ -10184,7 +9816,7 @@ sub_809BEBC: @ 809BEBC lsls r0, 24 cmp r0, 0 bne _0809BEFC - ldr r0, _0809BF0C @ =gUnknown_083B6DB4 + ldr r0, _0809BF0C @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r2, _0809BF10 @ =0x000011f9 adds r0, r1, r2 @@ -10204,7 +9836,7 @@ _0809BEFC: _0809BF00: .4byte gUnknown_020384E6 _0809BF04: .4byte gUnknown_020384E4 _0809BF08: .4byte gUnknown_020384E5 -_0809BF0C: .4byte gUnknown_083B6DB4 +_0809BF0C: .4byte gPokemonStorageSystemPtr _0809BF10: .4byte 0x000011f9 _0809BF14: .4byte 0x000025b4 _0809BF18: @@ -10271,7 +9903,7 @@ _0809BF70: .4byte gUnknown_020384E5 thumb_func_start sub_809BF74 sub_809BF74: @ 809BF74 push {r4,lr} - ldr r0, _0809BFA8 @ =gUnknown_083B6DB4 + ldr r0, _0809BFA8 @ =gPokemonStorageSystemPtr ldr r1, [r0] movs r2, 0 ldr r3, _0809BFAC @ =gUnknown_020384E6 @@ -10298,7 +9930,7 @@ _0809BF86: beq _0809BFEE b _0809C018 .align 2, 0 -_0809BFA8: .4byte gUnknown_083B6DB4 +_0809BFA8: .4byte gPokemonStorageSystemPtr _0809BFAC: .4byte gUnknown_020384E6 _0809BFB0: .4byte 0x000011f6 _0809BFB4: .4byte gUnknown_020384E4 @@ -10391,7 +10023,7 @@ sub_809C04C: @ 809C04C lsrs r1, 24 movs r0, 0 str r0, [sp] - ldr r0, _0809C0FC @ =gUnknown_083B6DB4 + ldr r0, _0809C0FC @ =gPokemonStorageSystemPtr ldr r6, [r0] ldr r2, _0809C100 @ =0x000011f2 adds r2, r6 @@ -10459,7 +10091,7 @@ _0809C08C: bl GetMonData b _0809C1B2 .align 2, 0 -_0809C0FC: .4byte gUnknown_083B6DB4 +_0809C0FC: .4byte gPokemonStorageSystemPtr _0809C100: .4byte 0x000011f2 _0809C104: .4byte 0x000011f0 _0809C108: .4byte 0x000011f9 @@ -10550,7 +10182,7 @@ _0809C1D4: ldrh r1, [r1] strh r1, [r0] _0809C1DE: - ldr r0, _0809C224 @ =gUnknown_083B6DB4 + ldr r0, _0809C224 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r2, _0809C220 @ =0x000011f0 adds r0, r4, r2 @@ -10558,7 +10190,7 @@ _0809C1DE: cmp r1, 0 bne _0809C23C _0809C1EC: - ldr r0, _0809C224 @ =gUnknown_083B6DB4 + ldr r0, _0809C224 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _0809C228 @ =0x000011fa adds r2, r1, r0 @@ -10585,7 +10217,7 @@ _0809C1EC: b _0809C43E .align 2, 0 _0809C220: .4byte 0x000011f0 -_0809C224: .4byte gUnknown_083B6DB4 +_0809C224: .4byte gPokemonStorageSystemPtr _0809C228: .4byte 0x000011fa _0809C22C: .4byte 0x0000120f _0809C230: .4byte 0x00001234 @@ -10646,7 +10278,7 @@ _0809C2AC: movs r1, 0xFF str r1, [sp] _0809C2B0: - ldr r0, _0809C388 @ =gUnknown_083B6DB4 + ldr r0, _0809C388 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r2, _0809C38C @ =0x0000120f adds r7, r4, r2 @@ -10751,7 +10383,7 @@ _0809C2B0: beq _0809C3D0 b _0809C3EA .align 2, 0 -_0809C388: .4byte gUnknown_083B6DB4 +_0809C388: .4byte gPokemonStorageSystemPtr _0809C38C: .4byte 0x0000120f _0809C390: .4byte 0x00001214 _0809C394: .4byte 0x000011fa @@ -10794,7 +10426,7 @@ _0809C3E6: _0809C3EA: movs r5, 0xFF strb r5, [r7] - ldr r0, _0809C450 @ =gUnknown_083B6DB4 + ldr r0, _0809C450 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r1, _0809C454 @ =0x0000127a adds r7, r2, r1 @@ -10843,7 +10475,7 @@ _0809C43E: pop {r0} bx r0 .align 2, 0 -_0809C450: .4byte gUnknown_083B6DB4 +_0809C450: .4byte gPokemonStorageSystemPtr _0809C454: .4byte 0x0000127a _0809C458: .4byte 0x000011f2 _0809C45C: .4byte 0x0000127f @@ -10861,7 +10493,7 @@ sub_809C464: @ 809C464 mov r8, r0 ldr r2, _0809C4DC @ =gUnknown_020384E5 ldrb r4, [r2] - ldr r0, _0809C4E0 @ =gUnknown_083B6DB4 + ldr r0, _0809C4E0 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _0809C4E4 @ =0x000011de adds r7, r1, r0 @@ -10914,7 +10546,7 @@ _0809C4BE: .align 2, 0 _0809C4D8: .4byte gUnknown_020384E4 _0809C4DC: .4byte gUnknown_020384E5 -_0809C4E0: .4byte gUnknown_083B6DB4 +_0809C4E0: .4byte gPokemonStorageSystemPtr _0809C4E4: .4byte 0x000011de _0809C4E8: .4byte 0x000011df _0809C4EC: .4byte gMain @@ -11132,7 +10764,7 @@ sub_809C664: @ 809C664 mov r10, r0 ldr r7, _0809C6DC @ =gUnknown_020384E5 ldrb r4, [r7] - ldr r2, _0809C6E0 @ =gUnknown_083B6DB4 + ldr r2, _0809C6E0 @ =gPokemonStorageSystemPtr ldr r5, [r2] ldr r1, _0809C6E4 @ =0x000011df adds r0, r5, r1 @@ -11185,7 +10817,7 @@ _0809C6D0: .align 2, 0 _0809C6D8: .4byte gUnknown_020384E4 _0809C6DC: .4byte gUnknown_020384E5 -_0809C6E0: .4byte gUnknown_083B6DB4 +_0809C6E0: .4byte gPokemonStorageSystemPtr _0809C6E4: .4byte 0x000011df _0809C6E8: .4byte 0x000011de _0809C6EC: .4byte gMain @@ -11313,7 +10945,7 @@ _0809C7D0: ands r0, r1 cmp r0, 0 beq _0809C7F8 - ldr r0, _0809C7F0 @ =gUnknown_083B6DB4 + ldr r0, _0809C7F0 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldrb r0, [r0, 0x5] cmp r0, 0x1 @@ -11322,7 +10954,7 @@ _0809C7D0: b _0809C84C .align 2, 0 _0809C7EC: .4byte gMain -_0809C7F0: .4byte gUnknown_083B6DB4 +_0809C7F0: .4byte gPokemonStorageSystemPtr _0809C7F4: movs r3, 0x1 mov r9, r3 @@ -11386,7 +11018,7 @@ _0809C84C: thumb_func_start sub_809C85C sub_809C85C: @ 809C85C push {r4-r6,lr} - ldr r0, _0809C894 @ =gUnknown_083B6DB4 + ldr r0, _0809C894 @ =gPokemonStorageSystemPtr ldr r2, [r0] ldr r1, _0809C898 @ =0x000011df adds r0, r2, r1 @@ -11413,7 +11045,7 @@ sub_809C85C: @ 809C85C movs r5, 0x2 b _0809C922 .align 2, 0 -_0809C894: .4byte gUnknown_083B6DB4 +_0809C894: .4byte gPokemonStorageSystemPtr _0809C898: .4byte 0x000011df _0809C89C: .4byte 0x000011de _0809C8A0: .4byte 0x000011e3 @@ -11514,7 +11146,7 @@ sub_809C944: @ 809C944 mov r12, r0 ldr r7, _0809C98C @ =gUnknown_020384E5 ldrb r3, [r7] - ldr r0, _0809C990 @ =gUnknown_083B6DB4 + ldr r0, _0809C990 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r0, _0809C994 @ =0x000011df adds r5, r1, r0 @@ -11544,7 +11176,7 @@ sub_809C944: @ 809C944 .align 2, 0 _0809C988: .4byte gUnknown_020384E4 _0809C98C: .4byte gUnknown_020384E5 -_0809C990: .4byte gUnknown_083B6DB4 +_0809C990: .4byte gPokemonStorageSystemPtr _0809C994: .4byte 0x000011df _0809C998: .4byte 0x000011de _0809C99C: .4byte gMain @@ -11706,7 +11338,7 @@ sub_809CAB0: @ 809CAB0 bl sub_809AB8C lsls r0, 16 lsrs r1, r0, 16 - ldr r0, _0809CAD4 @ =gUnknown_083B6DB4 + ldr r0, _0809CAD4 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldrb r0, [r0, 0x5] cmp r0, 0x1 @@ -11717,7 +11349,7 @@ sub_809CAB0: @ 809CAB0 beq _0809CAEA b _0809CB24 .align 2, 0 -_0809CAD4: .4byte gUnknown_083B6DB4 +_0809CAD4: .4byte gPokemonStorageSystemPtr _0809CAD8: cmp r0, 0x2 beq _0809CAF6 @@ -11762,7 +11394,7 @@ _0809CB24: _0809CB28: movs r0, 0x6 bl sub_809CDEC - ldr r0, _0809CB4C @ =gUnknown_083B6DB4 + ldr r0, _0809CB4C @ =gPokemonStorageSystemPtr ldr r0, [r0] ldrb r0, [r0, 0x5] cmp r0, 0x2 @@ -11777,7 +11409,7 @@ _0809CB28: bl sub_809CDEC b _0809CB5A .align 2, 0 -_0809CB4C: .4byte gUnknown_083B6DB4 +_0809CB4C: .4byte gPokemonStorageSystemPtr _0809CB50: .4byte gUnknown_020384E4 _0809CB54: movs r0, 0x1 @@ -11797,7 +11429,7 @@ _0809CB6E: thumb_func_start sub_809CB74 sub_809CB74: @ 809CB74 - ldr r1, _0809CB90 @ =gUnknown_083B6DB4 + ldr r1, _0809CB90 @ =gPokemonStorageSystemPtr ldr r1, [r1] movs r2, 0x8E lsls r2, 5 @@ -11811,7 +11443,7 @@ sub_809CB74: @ 809CB74 strh r1, [r0, 0x22] bx lr .align 2, 0 -_0809CB90: .4byte gUnknown_083B6DB4 +_0809CB90: .4byte gPokemonStorageSystemPtr thumb_func_end sub_809CB74 thumb_func_start unref_sub_809CB94 @@ -11893,7 +11525,7 @@ sub_809CC04: @ 809CC04 bl LoadSpritePalettes ldr r0, _0809CCB8 @ =0x0000dac6 bl IndexOfSpritePaletteTag - ldr r1, _0809CCBC @ =gUnknown_083B6DB4 + ldr r1, _0809CCBC @ =gPokemonStorageSystemPtr ldr r6, [r1] ldr r4, _0809CCC0 @ =0x000011e4 adds r7, r6, r4 @@ -11955,7 +11587,7 @@ sub_809CC04: @ 809CC04 _0809CCB0: .4byte gHandCursorSpriteSheets _0809CCB4: .4byte gHandCursorSpritePalettes _0809CCB8: .4byte 0x0000dac6 -_0809CCBC: .4byte gUnknown_083B6DB4 +_0809CCBC: .4byte gPokemonStorageSystemPtr _0809CCC0: .4byte 0x000011e4 _0809CCC4: .4byte 0x0000dad1 _0809CCC8: .4byte 0x000011e5 @@ -11995,7 +11627,7 @@ _0809CD08: lsrs r2, r0, 24 cmp r2, 0x40 beq _0809CD6C - ldr r0, _0809CD5C @ =gUnknown_083B6DB4 + ldr r0, _0809CD5C @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r1, _0809CD60 @ =0x000011c4 adds r4, r0, r1 @@ -12027,12 +11659,12 @@ _0809CD08: b _0809CD78 .align 2, 0 _0809CD58: .4byte gSpriteTemplate_83BBC88 -_0809CD5C: .4byte gUnknown_083B6DB4 +_0809CD5C: .4byte gPokemonStorageSystemPtr _0809CD60: .4byte 0x000011c4 _0809CD64: .4byte gSprites _0809CD68: .4byte gUnknown_020384E4 _0809CD6C: - ldr r0, _0809CD80 @ =gUnknown_083B6DB4 + ldr r0, _0809CD80 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r2, _0809CD84 @ =0x000011c4 adds r0, r2 @@ -12044,7 +11676,7 @@ _0809CD78: pop {r0} bx r0 .align 2, 0 -_0809CD80: .4byte gUnknown_083B6DB4 +_0809CD80: .4byte gPokemonStorageSystemPtr _0809CD84: .4byte 0x000011c4 thumb_func_end sub_809CC04 @@ -12059,7 +11691,7 @@ sub_809CD88: @ 809CD88 movs r1, 0x1 _0809CD96: strb r1, [r2] - ldr r0, _0809CDC4 @ =gUnknown_083B6DB4 + ldr r0, _0809CDC4 @ =gPokemonStorageSystemPtr ldr r0, [r0] movs r3, 0x8E lsls r3, 5 @@ -12080,13 +11712,13 @@ _0809CD96: bx r0 .align 2, 0 _0809CDC0: .4byte gUnknown_020384E9 -_0809CDC4: .4byte gUnknown_083B6DB4 +_0809CDC4: .4byte gPokemonStorageSystemPtr _0809CDC8: .4byte 0x000011e4 thumb_func_end sub_809CD88 thumb_func_start sub_809CDCC sub_809CDCC: @ 809CDCC - ldr r0, _0809CDE0 @ =gUnknown_083B6DB4 + ldr r0, _0809CDE0 @ =gPokemonStorageSystemPtr ldr r0, [r0] ldr r2, _0809CDE4 @ =0x000011b8 adds r1, r0, r2 @@ -12097,7 +11729,7 @@ sub_809CDCC: @ 809CDCC strb r2, [r0] bx lr .align 2, 0 -_0809CDE0: .4byte gUnknown_083B6DB4 +_0809CDE0: .4byte gPokemonStorageSystemPtr _0809CDE4: .4byte 0x000011b8 _0809CDE8: .4byte 0x000011b9 thumb_func_end sub_809CDCC @@ -12107,7 +11739,7 @@ sub_809CDEC: @ 809CDEC push {r4,r5,lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r0, _0809CE3C @ =gUnknown_083B6DB4 + ldr r0, _0809CE3C @ =gPokemonStorageSystemPtr ldr r5, [r0] ldr r0, _0809CE40 @ =0x000011b8 adds r4, r5, r0 @@ -12146,7 +11778,7 @@ _0809CE36: pop {r0} bx r0 .align 2, 0 -_0809CE3C: .4byte gUnknown_083B6DB4 +_0809CE3C: .4byte gPokemonStorageSystemPtr _0809CE40: .4byte 0x000011b8 _0809CE44: .4byte gUnknown_083BBCA0 _0809CE48: .4byte 0x000011b9 @@ -12157,7 +11789,7 @@ sub_809CE4C: @ 809CE4C push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, _0809CE70 @ =gUnknown_083B6DB4 + ldr r0, _0809CE70 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r3, _0809CE74 @ =0x000011b8 adds r0, r1, r3 @@ -12172,7 +11804,7 @@ sub_809CE4C: @ 809CE4C ldrsb r0, [r1, r0] b _0809CE80 .align 2, 0 -_0809CE70: .4byte gUnknown_083B6DB4 +_0809CE70: .4byte gPokemonStorageSystemPtr _0809CE74: .4byte 0x000011b8 _0809CE78: .4byte 0x00001184 _0809CE7C: @@ -12191,7 +11823,7 @@ sub_809CE84: @ 809CE84 mov r4, r8 push {r4-r6} sub sp, 0x8 - ldr r0, _0809CF20 @ =gUnknown_083B6DB4 + ldr r0, _0809CF20 @ =gPokemonStorageSystemPtr ldr r4, [r0] ldr r0, _0809CF24 @ =0x000011b8 adds r0, r4 @@ -12261,7 +11893,7 @@ sub_809CE84: @ 809CE84 pop {r0} bx r0 .align 2, 0 -_0809CF20: .4byte gUnknown_083B6DB4 +_0809CF20: .4byte gPokemonStorageSystemPtr _0809CF24: .4byte 0x000011b8 _0809CF28: .4byte 0x000011bc _0809CF2C: .4byte 0x000011b9 @@ -12319,7 +11951,7 @@ _0809CF8E: cmp r5, r0 beq _0809CFB2 bl HandleDestroyMenuCursors - ldr r0, _0809CFD0 @ =gUnknown_083B6DB4 + ldr r0, _0809CFD0 @ =gPokemonStorageSystemPtr ldr r1, [r0] ldr r2, _0809CFD4 @ =0x000011ba adds r0, r1, r2 @@ -12333,7 +11965,7 @@ _0809CF8E: _0809CFB2: cmp r5, 0 blt _0809CFC4 - ldr r0, _0809CFD0 @ =gUnknown_083B6DB4 + ldr r0, _0809CFD0 @ =gPokemonStorageSystemPtr ldr r0, [r0] lsls r1, r5, 3 ldr r2, _0809CFD8 @ =0x00001184 @@ -12347,7 +11979,7 @@ _0809CFC4: pop {r1} bx r1 .align 2, 0 -_0809CFD0: .4byte gUnknown_083B6DB4 +_0809CFD0: .4byte gPokemonStorageSystemPtr _0809CFD4: .4byte 0x000011ba _0809CFD8: .4byte 0x00001184 thumb_func_end sub_809CF30 diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 6bdb0edd0..b9b18e707 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -70,7 +70,7 @@ gUnknown_083B6D94:: @ 83B6D94 .incbin "graphics/pokemon_storage/83B6D94.gbapal" .align 2 -gUnknown_083B6DB4:: @ 83B6DB4 +gPokemonStorageSystemPtr:: @ 83B6DB4 .4byte gSharedMem .align 2 diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index d6119476c..b0a317cd9 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -5,6 +5,7 @@ #include "field_weather.h" #include "mon_markings.h" #include "overworld.h" +#include "mail_data.h" #include "field_fadetransition.h" #include "menu.h" #include "main.h" @@ -56,9 +57,14 @@ struct PokemonStorageSystemData { u16 unk_000a; struct PCScreenEffectStruct unk_000c; struct UnkStruct_2000020 unk_0020[274]; // refine size later - u8 filler_08b0[4]; + u8 filler_08b0[2]; + s16 unk_08b2; u16 unk_08b4; - u8 filler_08b6[0xa06]; + u8 filler_08b6[0x93c]; + u16 unk_11f2; + u8 filler_11f4[2]; + u8 unk_11f6; + u8 filler_11f7[0xc5]; struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; u8 filler_25b4[0xd8]; @@ -80,23 +86,48 @@ void task_intro_29(u8 whichMenu); void sub_8096884(void); void sub_8096AFC(void); void sub_8096B38(void); -void sub_8096BE0(void (*func)(void)); +void SetPSSCallback(void (*func)(void)); void sub_8096BF0(void); void sub_8096C68(void); void sub_8096C84(void); +void sub_8097004(void); +void sub_8097078(void); +void sub_80972A8(void); +void sub_80972FC(void); +void c3_0808DC50(void); +void sub_8097390(void); +void sub_809746C(void); +void sub_809789C(void); +void sub_8097BA0(void); +void sub_8097CC0(void); +void BoxSetMosaic(void); +void sub_80986E8(void); +void sub_8098710(void); +void sub_8098A5C(void); +void sub_809B440(void); +void sub_8096FC8(void); void sub_8097DE0(void); void sub_8097E44(void); void sub_8097E70(void); void sub_8098400(void); void sub_8098734(void); -void sub_8099BF8(u8 a0); +void sub_8098898(u8 index); void sub_8098B48(void); +void sub_8099BF8(u8 a0); +void sub_8099C70(u8 whichBox); +bool8 sub_8099D34(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); void sub_809AA24(void); void sub_809AA98(void); +bool8 sub_809AC00(void); void sub_809B0D4(void); void sub_809BBC0(void); void sub_809BD14(void); +bool8 sub_809BE80(void); +bool8 sub_809BEBC(void); +bool8 sub_809BF20(void); +bool8 sub_809BF48(void); +u8 sub_809CA40(void); void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); void sub_809CFF0(void); @@ -150,7 +181,7 @@ const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/b const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); extern const struct StorageAction gUnknown_083B6DF4[]; -extern const struct PokemonStorageSystemData *gUnknown_083B6DB4; +extern const struct PokemonStorageSystemData *gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; @@ -571,7 +602,7 @@ void StorageSystemCreatePrimaryMenu(u8 whichMenu) void sub_80961A8(void) { - gUnknown_02038474 = gUnknown_083B6DB4->unk_0005; + gUnknown_02038474 = gPokemonStorageSystemPtr->unk_0005; gFieldCallback = sub_8096130; SetMainCallback2(c2_exit_to_overworld_2_switch); } @@ -899,7 +930,7 @@ void sub_8096884(void) break; case 9: sub_8096874(); - sub_8096BE0(sub_8096BF0); + SetPSSCallback(sub_8096BF0); SetMainCallback2(sub_8096B38); SetVBlankCallback(sub_8096AFC); gMain.state++; @@ -967,7 +998,7 @@ void sub_80969A0(void) break; case 10: sub_8096874(); - sub_8096BE0(sub_8096C68); + SetPSSCallback(sub_8096C68); SetMainCallback2(sub_8096B38); gMain.state++; break; @@ -1007,7 +1038,7 @@ void sub_8096B5C(void) } } -void sub_8096BE0(void (*func)(void)) +void SetPSSCallback(void (*func)(void)) { ePokemonStorageSystem.unk_0000 = func; ePokemonStorageSystem.unk_0004 = 0; @@ -1033,7 +1064,7 @@ void sub_8096BF0(void) break; case 2: if (sub_80C5DCC()) - sub_8096BE0(sub_8096C84); + SetPSSCallback(sub_8096C84); break; } } @@ -1041,7 +1072,174 @@ void sub_8096BF0(void) void sub_8096C68(void) { if (!UpdatePaletteFade()) - sub_8096BE0(sub_8096C84); + SetPSSCallback(sub_8096C84); +} + +void sub_8096C84(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + switch (sub_809CA40()) + { + case 1: + PlaySE(SE_SELECT); + ePokemonStorageSystem.unk_0004 = 1; + break; + case 5: + if (ePokemonStorageSystem.unk_0005 != 2) + { + sub_8098898(16); + ePokemonStorageSystem.unk_0004 = 3; + } + else + { + sub_809B0D4(); + SetPSSCallback(sub_8096FC8); + } + break; + case 6: + if (ePokemonStorageSystem.unk_0005 == 2) + { + if (sub_809BF20() && ItemIsMail(ePokemonStorageSystem.unk_11f2)) + { + ePokemonStorageSystem.unk_0004 = 5; + } + else + { + SetPSSCallback(sub_8097004); + } + } + break; + case 4: + SetPSSCallback(sub_8097BA0); + break; + case 16: + SetPSSCallback(sub_8097CC0); + break; + case 7: + PlaySE(SE_SELECT); + SetPSSCallback(sub_809789C); + break; + case 8: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097078); + break; + case 9: + PlaySE(SE_SELECT); + ePokemonStorageSystem.unk_08b2 = gPokemonStorage.currentBox + 1; + if (ePokemonStorageSystem.unk_08b2 > 13) + ePokemonStorageSystem.unk_08b2 = 0; + sub_8099C70(ePokemonStorageSystem.unk_08b2); + ePokemonStorageSystem.unk_0004 = 2; + break; + case 10: + PlaySE(SE_SELECT); + ePokemonStorageSystem.unk_08b2 = gPokemonStorage.currentBox - 1; + if (ePokemonStorageSystem.unk_08b2 < 0) + ePokemonStorageSystem.unk_08b2 = 13; + sub_8099C70(ePokemonStorageSystem.unk_08b2); + ePokemonStorageSystem.unk_0004 = 2; + break; + case 11: + if (!sub_809BE80()) + { + if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) + { + ePokemonStorageSystem.unk_0004 = 5; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_809746C); + } + } + else + { + ePokemonStorageSystem.unk_0004 = 4; + } + break; + case 13: + if (sub_809BE80()) + { + ePokemonStorageSystem.unk_0004 = 4; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_80972A8); + } + break; + case 14: + if (!sub_809BEBC()) + { + ePokemonStorageSystem.unk_0004 = 4; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(c3_0808DC50); + } + break; + case 12: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097390); + break; + case 15: + PlaySE(SE_SELECT); + SetPSSCallback(sub_80972FC); + break; + } + break; + case 1: + if (!sub_809AC00()) + { + if (sub_809BF48()) + sub_80986E8(); + else + sub_8098710(); + if (ePokemonStorageSystem.unk_11f6) + BoxSetMosaic(); + ePokemonStorageSystem.unk_0004 = 0; + } + break; + case 2: + if (!sub_8099D34()) + { + gPokemonStorage.currentBox = ePokemonStorageSystem.unk_08b2; + if (!gUnknown_0203847C && !sub_809BF20()) + { + sub_809B440(); + BoxSetMosaic(); + } + ePokemonStorageSystem.unk_0004 = 0; + } + break; + case 3: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + ePokemonStorageSystem.unk_0004 = 0; + } + break; + case 4: + PlaySE(SE_HAZURE); + sub_8098898(13); + ePokemonStorageSystem.unk_0004 = 6; + break; + case 5: + PlaySE(SE_HAZURE); + sub_8098898(22); + ePokemonStorageSystem.unk_0004 = 6; + break; + case 6: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } } asm(".section .text.8098898"); -- cgit v1.2.3 From 56c2c7ef00396c53a8bc859141b46fa488bb42fa Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 13:39:22 -0700 Subject: through sub_8097078 --- asm/pokemon_storage_system.s | 334 ----------------------------------- src/pokemon/pokemon_storage_system.c | 190 +++++++++++++++++++- 2 files changed, 183 insertions(+), 341 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 8dab0b2fd..46d6b8502 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,340 +5,6 @@ .text - thumb_func_start sub_8096FC8 -sub_8096FC8: @ 8096FC8 - push {r4,lr} - ldr r4, _08096FD8 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _08096FDC - cmp r0, 0x1 - beq _08096FE8 - b _08096FF8 - .align 2, 0 -_08096FD8: .4byte gSharedMem -_08096FDC: - bl sub_809880C - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08096FF8 -_08096FE8: - bl sub_8098830 - lsls r0, 24 - cmp r0, 0 - bne _08096FF8 - ldr r0, _08097000 @ =sub_8096C84 - bl SetPSSCallback -_08096FF8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097000: .4byte sub_8096C84 - thumb_func_end sub_8096FC8 - - thumb_func_start sub_8097004 -sub_8097004: @ 8097004 - push {r4,lr} - ldr r4, _08097018 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0x1 - beq _0809702E - cmp r0, 0x1 - bgt _0809701C - cmp r0, 0 - beq _08097022 - b _0809706A - .align 2, 0 -_08097018: .4byte gSharedMem -_0809701C: - cmp r0, 0x2 - beq _0809704C - b _0809706A -_08097022: - movs r0, 0x5 - bl PlaySE - bl add_to_c3_somehow - b _08097044 -_0809702E: - bl sub_80985CC - lsls r0, 24 - cmp r0, 0 - bne _0809706A - bl sub_809B0F4 - lsls r0, 24 - lsrs r0, 24 - bl sub_809B0C0 -_08097044: - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _0809706A -_0809704C: - bl sub_809AC00 - lsls r0, 24 - cmp r0, 0 - bne _0809706A - ldr r1, _08097070 @ =0x000011f6 - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08097064 - bl BoxSetMosaic -_08097064: - ldr r0, _08097074 @ =sub_8096C84 - bl SetPSSCallback -_0809706A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097070: .4byte 0x000011f6 -_08097074: .4byte sub_8096C84 - thumb_func_end sub_8097004 - - thumb_func_start sub_8097078 -sub_8097078: @ 8097078 - push {r4,lr} - ldr r0, _08097090 @ =gSharedMem - ldrb r0, [r0, 0x4] - cmp r0, 0x5 - bls _08097084 - b _0809729A -_08097084: - lsls r0, 2 - ldr r1, _08097094 @ =_08097098 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08097090: .4byte gSharedMem -_08097094: .4byte _08097098 - .align 2, 0 -_08097098: - .4byte _080970B0 - .4byte _080970C8 - .4byte _08097258 - .4byte _0809726C - .4byte _08097262 - .4byte _08097284 -_080970B0: - movs r0, 0x4 - bl sub_8098898 - bl sub_809CE84 - ldr r1, _080970C4 @ =gSharedMem - movs r0, 0x1 - strb r0, [r1, 0x4] - b _0809729A - .align 2, 0 -_080970C4: .4byte gSharedMem -_080970C8: - bl sub_809CF30 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x9 - bls _080970D8 - b _0809729A -_080970D8: - lsls r0, 2 - ldr r1, _080970E4 @ =_080970E8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080970E4: .4byte _080970E8 - .align 2, 0 -_080970E8: - .4byte _08097110 - .4byte _08097110 - .4byte _08097190 - .4byte _08097178 - .4byte _08097120 - .4byte _08097158 - .4byte _08097140 - .4byte _08097230 - .4byte _080971CC - .4byte _08097244 -_08097110: - bl sub_8098A5C - ldr r0, _0809711C @ =sub_8096C84 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_0809711C: .4byte sub_8096C84 -_08097120: - bl sub_809BE80 - lsls r0, 24 - cmp r0, 0 - bne _080971D6 - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _0809713C @ =sub_80972A8 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_0809713C: .4byte sub_80972A8 -_08097140: - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _08097154 @ =sub_80972FC - bl SetPSSCallback - b _0809729A - .align 2, 0 -_08097154: .4byte sub_80972FC -_08097158: - bl sub_809BEBC - lsls r0, 24 - cmp r0, 0 - beq _080971D6 - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _08097174 @ =c3_0808DC50 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_08097174: .4byte c3_0808DC50 -_08097178: - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _0809718C @ =sub_8097390 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_0809718C: .4byte sub_8097390 -_08097190: - bl sub_809BE80 - lsls r0, 24 - cmp r0, 0 - bne _080971D6 - ldr r4, _080971C0 @ =gSharedMem - ldr r1, _080971C4 @ =0x000011f2 - adds r0, r4, r1 - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - bne _08097210 - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _080971C8 @ =sub_809746C - bl SetPSSCallback - b _0809729A - .align 2, 0 -_080971C0: .4byte gSharedMem -_080971C4: .4byte 0x000011f2 -_080971C8: .4byte sub_809746C -_080971CC: - bl sub_809BE80 - lsls r0, 24 - cmp r0, 0 - beq _080971E4 -_080971D6: - ldr r1, _080971E0 @ =gSharedMem - movs r0, 0x2 - strb r0, [r1, 0x4] - b _0809729A - .align 2, 0 -_080971E0: .4byte gSharedMem -_080971E4: - ldr r4, _080971F8 @ =gSharedMem - ldr r1, _080971FC @ =0x000011f9 - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08097200 - movs r0, 0x4 - strb r0, [r4, 0x4] - b _0809729A - .align 2, 0 -_080971F8: .4byte gSharedMem -_080971FC: .4byte 0x000011f9 -_08097200: - ldr r1, _08097218 @ =0x000011f2 - adds r0, r4, r1 - ldrh r0, [r0] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0809721C -_08097210: - movs r0, 0x3 - strb r0, [r4, 0x4] - b _0809729A - .align 2, 0 -_08097218: .4byte 0x000011f2 -_0809721C: - movs r0, 0x5 - bl PlaySE - ldr r0, _0809722C @ =sub_8097594 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_0809722C: .4byte sub_8097594 -_08097230: - movs r0, 0x5 - bl PlaySE - ldr r0, _08097240 @ =sub_8097788 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_08097240: .4byte sub_8097788 -_08097244: - movs r0, 0x5 - bl PlaySE - ldr r0, _08097254 @ =sub_80977E4 - bl SetPSSCallback - b _0809729A - .align 2, 0 -_08097254: .4byte sub_80977E4 -_08097258: - movs r0, 0x20 - bl PlaySE - movs r0, 0xD - b _08097274 -_08097262: - movs r0, 0x20 - bl PlaySE - movs r0, 0x11 - b _08097274 -_0809726C: - movs r0, 0x20 - bl PlaySE - movs r0, 0x16 -_08097274: - bl sub_8098898 - ldr r1, _08097280 @ =gSharedMem - movs r0, 0x5 - strb r0, [r1, 0x4] - b _0809729A - .align 2, 0 -_08097280: .4byte gSharedMem -_08097284: - ldr r0, _080972A0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _0809729A - bl sub_8098A5C - ldr r0, _080972A4 @ =sub_8096C84 - bl SetPSSCallback -_0809729A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080972A0: .4byte gMain -_080972A4: .4byte sub_8096C84 - thumb_func_end sub_8097078 - thumb_func_start sub_80972A8 sub_80972A8: @ 80972A8 push {r4,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index b0a317cd9..feed68e50 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -64,7 +64,9 @@ struct PokemonStorageSystemData { u16 unk_11f2; u8 filler_11f4[2]; u8 unk_11f6; - u8 filler_11f7[0xc5]; + u8 filler_11f7[2]; + u8 unk_11f9; + u8 filler_11fa[0xc2]; struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; u8 filler_25b4[0xd8]; @@ -90,6 +92,7 @@ void SetPSSCallback(void (*func)(void)); void sub_8096BF0(void); void sub_8096C68(void); void sub_8096C84(void); +void sub_8096FC8(void); void sub_8097004(void); void sub_8097078(void); void sub_80972A8(void); @@ -97,21 +100,26 @@ void sub_80972FC(void); void c3_0808DC50(void); void sub_8097390(void); void sub_809746C(void); +void sub_8097594(void); +void sub_8097788(void); +void sub_80977E4(void); void sub_809789C(void); void sub_8097BA0(void); void sub_8097CC0(void); -void BoxSetMosaic(void); -void sub_80986E8(void); -void sub_8098710(void); -void sub_8098A5C(void); -void sub_809B440(void); -void sub_8096FC8(void); void sub_8097DE0(void); void sub_8097E44(void); void sub_8097E70(void); +void BoxSetMosaic(void); void sub_8098400(void); +void add_to_c3_somehow(void); +bool8 sub_80985CC(void); +void sub_80986E8(void); +void sub_8098710(void); void sub_8098734(void); +void sub_809880C(void); +bool8 sub_8098830(void); void sub_8098898(u8 index); +void sub_8098A5C(void); void sub_8098B48(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); @@ -120,7 +128,10 @@ struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); void sub_809AA24(void); void sub_809AA98(void); bool8 sub_809AC00(void); +void sub_809B0C0(u8 a0); void sub_809B0D4(void); +u8 sub_809B0F4(void); +void sub_809B440(void); void sub_809BBC0(void); void sub_809BD14(void); bool8 sub_809BE80(void); @@ -128,6 +139,8 @@ bool8 sub_809BEBC(void); bool8 sub_809BF20(void); bool8 sub_809BF48(void); u8 sub_809CA40(void); +void sub_809CE84(void); +s16 sub_809CF30(void); void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); void sub_809CFF0(void); @@ -1242,6 +1255,169 @@ void sub_8096C84(void) } } +void sub_8096FC8(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809880C(); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_8098830()) + SetPSSCallback(sub_8096C84); + break; + } +} + +void sub_8097004(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PlaySE(SE_SELECT); + add_to_c3_somehow(); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_80985CC()) + { + sub_809B0C0(sub_809B0F4()); + ePokemonStorageSystem.unk_0004++; + } + break; + case 2: + if (!sub_809AC00()) + { + if (ePokemonStorageSystem.unk_11f6) + BoxSetMosaic(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097078(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_8098898(4); + sub_809CE84(); + ePokemonStorageSystem.unk_0004 = 1; + break; + case 1: + switch (sub_809CF30()) + { + case -1: + case 0: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 3: + if (sub_809BE80()) + { + ePokemonStorageSystem.unk_0004 = 2; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_80972A8); + } + break; + case 5: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_80972FC); + break; + case 4: + if (!sub_809BEBC()) + { + ePokemonStorageSystem.unk_0004 = 2; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(c3_0808DC50); + } + break; + case 2: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097390); + break; + case 1: + if (sub_809BE80()) + { + ePokemonStorageSystem.unk_0004 = 2; + } + else if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) + { + ePokemonStorageSystem.unk_0004 = 3; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_809746C); + } + break; + case 7: + if (sub_809BE80()) + { + ePokemonStorageSystem.unk_0004 = 2; + } + else if (ePokemonStorageSystem.unk_11f9) + { + ePokemonStorageSystem.unk_0004 = 4; + } + else if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) + { + ePokemonStorageSystem.unk_0004 = 3; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097594); + } + break; + case 6: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097788); + break; + case 8: + PlaySE(SE_SELECT); + SetPSSCallback(sub_80977E4); + break; + } + break; + case 2: + PlaySE(SE_HAZURE); + sub_8098898(13); + ePokemonStorageSystem.unk_0004 = 5; + break; + case 4: + PlaySE(SE_HAZURE); + sub_8098898(17); + ePokemonStorageSystem.unk_0004 = 5; + break; + case 3: + PlaySE(SE_HAZURE); + sub_8098898(22); + ePokemonStorageSystem.unk_0004 = 5; + break; + case 5: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 673d64c35b21ebb8f3c6fc8b547c7f736fa4f593 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 13:53:24 -0700 Subject: through sub_8097390 --- asm/pokemon_storage_system.s | 225 ----------------------------------- src/pokemon/pokemon_storage_system.c | 114 ++++++++++++++++++ 2 files changed, 114 insertions(+), 225 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 46d6b8502..245a69131 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,231 +5,6 @@ .text - thumb_func_start sub_80972A8 -sub_80972A8: @ 80972A8 - push {r4,lr} - ldr r4, _080972B8 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _080972BC - cmp r0, 0x1 - beq _080972CA - b _080972F2 - .align 2, 0 -_080972B8: .4byte gSharedMem -_080972BC: - movs r0, 0 - bl sub_809B100 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _080972F2 -_080972CA: - bl sub_809B130 - lsls r0, 24 - cmp r0, 0 - bne _080972F2 - ldr r0, _080972E4 @ =gUnknown_0203847C - ldrb r0, [r0] - cmp r0, 0 - beq _080972EC - ldr r0, _080972E8 @ =sub_8097858 - bl SetPSSCallback - b _080972F2 - .align 2, 0 -_080972E4: .4byte gUnknown_0203847C -_080972E8: .4byte sub_8097858 -_080972EC: - ldr r0, _080972F8 @ =sub_8096C84 - bl SetPSSCallback -_080972F2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080972F8: .4byte sub_8096C84 - thumb_func_end sub_80972A8 - - thumb_func_start sub_80972FC -sub_80972FC: @ 80972FC - push {r4,lr} - ldr r4, _0809730C @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _08097310 - cmp r0, 0x1 - beq _0809731E - b _08097346 - .align 2, 0 -_0809730C: .4byte gSharedMem -_08097310: - movs r0, 0x1 - bl sub_809B100 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097346 -_0809731E: - bl sub_809B130 - lsls r0, 24 - cmp r0, 0 - bne _08097346 - ldr r0, _08097338 @ =gUnknown_0203847C - ldrb r0, [r0] - cmp r0, 0 - beq _08097340 - ldr r0, _0809733C @ =sub_8097858 - bl SetPSSCallback - b _08097346 - .align 2, 0 -_08097338: .4byte gUnknown_0203847C -_0809733C: .4byte sub_8097858 -_08097340: - ldr r0, _0809734C @ =sub_8096C84 - bl SetPSSCallback -_08097346: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809734C: .4byte sub_8096C84 - thumb_func_end sub_80972FC - - thumb_func_start c3_0808DC50 -c3_0808DC50: @ 8097350 - push {r4,lr} - ldr r4, _08097360 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _08097364 - cmp r0, 0x1 - beq _08097372 - b _08097386 - .align 2, 0 -_08097360: .4byte gSharedMem -_08097364: - movs r0, 0x2 - bl sub_809B100 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097386 -_08097372: - bl sub_809B130 - lsls r0, 24 - cmp r0, 0 - bne _08097386 - bl BoxSetMosaic - ldr r0, _0809738C @ =sub_8096C84 - bl SetPSSCallback -_08097386: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809738C: .4byte sub_8096C84 - thumb_func_end c3_0808DC50 - - thumb_func_start sub_8097390 -sub_8097390: @ 8097390 - push {lr} - ldr r0, _080973A4 @ =gSharedMem - ldrb r0, [r0, 0x4] - cmp r0, 0x5 - bhi _08097462 - lsls r0, 2 - ldr r1, _080973A8 @ =_080973AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080973A4: .4byte gSharedMem -_080973A8: .4byte _080973AC - .align 2, 0 -_080973AC: - .4byte _080973C4 - .4byte _080973FC - .4byte _0809741C - .4byte _0809742C - .4byte _0809743E - .4byte _0809745C -_080973C4: - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _080973E4 - movs r0, 0xE - bl sub_8098898 - ldr r1, _080973E0 @ =gSharedMem - movs r0, 0x1 - strb r0, [r1, 0x4] - b _08097462 - .align 2, 0 -_080973E0: .4byte gSharedMem -_080973E4: - bl sub_809B0E0 - movs r0, 0 - bl sub_809B100 - ldr r1, _080973F8 @ =gSharedMem - movs r0, 0x2 - strb r0, [r1, 0x4] - b _08097462 - .align 2, 0 -_080973F8: .4byte gSharedMem -_080973FC: - ldr r0, _08097414 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _08097462 - bl sub_8098A5C - ldr r0, _08097418 @ =sub_8096C84 - bl SetPSSCallback - b _08097462 - .align 2, 0 -_08097414: .4byte gMain -_08097418: .4byte sub_8096C84 -_0809741C: - bl sub_809B130 - lsls r0, 24 - cmp r0, 0 - bne _08097462 - bl sub_809880C - b _0809744C -_0809742C: - bl sub_8098830 - lsls r0, 24 - cmp r0, 0 - bne _08097462 - movs r0, 0x1 - bl sub_809B100 - b _0809744C -_0809743E: - bl sub_809B130 - lsls r0, 24 - cmp r0, 0 - bne _08097462 - bl sub_80987DC -_0809744C: - ldr r1, _08097458 @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _08097462 - .align 2, 0 -_08097458: .4byte gSharedMem -_0809745C: - ldr r0, _08097468 @ =sub_8097004 - bl SetPSSCallback -_08097462: - pop {r0} - bx r0 - .align 2, 0 -_08097468: .4byte sub_8097004 - thumb_func_end sub_8097390 - thumb_func_start sub_809746C sub_809746C: @ 809746C push {r4,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index feed68e50..6f51b823e 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -103,6 +103,7 @@ void sub_809746C(void); void sub_8097594(void); void sub_8097788(void); void sub_80977E4(void); +void sub_8097858(void); void sub_809789C(void); void sub_8097BA0(void); void sub_8097CC0(void); @@ -116,10 +117,13 @@ bool8 sub_80985CC(void); void sub_80986E8(void); void sub_8098710(void); void sub_8098734(void); +void sub_80987DC(void); void sub_809880C(void); bool8 sub_8098830(void); void sub_8098898(u8 index); void sub_8098A5C(void); +void sub_809B100(u8 a0); +bool8 sub_809B130(void); void sub_8098B48(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); @@ -130,6 +134,7 @@ void sub_809AA98(void); bool8 sub_809AC00(void); void sub_809B0C0(u8 a0); void sub_809B0D4(void); +void sub_809B0E0(void); u8 sub_809B0F4(void); void sub_809B440(void); void sub_809BBC0(void); @@ -1418,6 +1423,115 @@ void sub_8097078(void) } } +void sub_80972A8(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809B100(0); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + if (gUnknown_0203847C) + SetPSSCallback(sub_8097858); + else + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_80972FC(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809B100(1); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + if (gUnknown_0203847C) + SetPSSCallback(sub_8097858); + else + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void c3_0808DC50(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809B100(2); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + BoxSetMosaic(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097390(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + if (CalculatePlayerPartyCount() == 6) + { + sub_8098898(14); + ePokemonStorageSystem.unk_0004 = 1; + } + else + { + sub_809B0E0(); + sub_809B100(0); + ePokemonStorageSystem.unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + if (!sub_809B130()) + { + sub_809880C(); + ePokemonStorageSystem.unk_0004++; + } + break; + case 3: + if (!sub_8098830()) + { + sub_809B100(1); + ePokemonStorageSystem.unk_0004++; + } + break; + case 4: + if (!sub_809B130()) + { + sub_80987DC(); + ePokemonStorageSystem.unk_0004++; + } + break; + case 5: + SetPSSCallback(sub_8097004); + break; + } +} + asm(".section .text.8098898"); void sub_8098898(u8 index) { -- cgit v1.2.3 From 78df16e7989be5142ed0d1fd01c4ece6483f0571 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 14:57:26 -0700 Subject: Through sub_809746C; enums for PC storage actions --- asm/pokemon_storage_system.s | 153 +++-------------------------- data/pokemon_storage_system.s | 2 +- include/ewram.h | 4 - src/pokemon/pokemon_storage_system.c | 182 +++++++++++++++++++++++++++-------- 4 files changed, 156 insertions(+), 185 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 245a69131..2622e7d84 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,137 +5,6 @@ .text - thumb_func_start sub_809746C -sub_809746C: @ 809746C - push {r4,lr} - ldr r0, _08097484 @ =gSharedMem - ldrb r0, [r0, 0x4] - cmp r0, 0x4 - bls _08097478 - b _08097584 -_08097478: - lsls r0, 2 - ldr r1, _08097488 @ =_0809748C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08097484: .4byte gSharedMem -_08097488: .4byte _0809748C - .align 2, 0 -_0809748C: - .4byte _080974A0 - .4byte _080974D8 - .4byte _08097534 - .4byte _08097548 - .4byte _0809756C -_080974A0: - movs r0, 0x6 - bl sub_8098898 - ldr r4, _080974C8 @ =gSharedMem + 0x2370 - ldr r2, _080974CC @ =0x0000daca - adds r0, r4, 0 - movs r1, 0x7 - movs r3, 0x3 - bl sub_8096264 - ldr r0, _080974D0 @ =gUnknown_0203847E - ldrb r0, [r0] - bl sub_809634C - ldr r0, _080974D4 @ =0xffffdc90 - adds r4, r0 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097584 - .align 2, 0 -_080974C8: .4byte gSharedMem + 0x2370 -_080974CC: .4byte 0x0000daca -_080974D0: .4byte gUnknown_0203847E -_080974D4: .4byte 0xffffdc90 -_080974D8: - bl sub_8096368 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xC8 - beq _08097584 - cmp r4, 0xC9 - bne _080974F6 - bl sub_8098A5C - bl sub_809635C - bl sub_8096310 - b _0809755E -_080974F6: - adds r0, r4, 0 - bl sub_809B62C - lsls r0, 24 - cmp r0, 0 - beq _08097518 - bl sub_8098A5C - bl sub_809635C - bl sub_8096310 - ldr r1, _08097514 @ =gSharedMem - movs r0, 0x2 - b _08097522 - .align 2, 0 -_08097514: .4byte gSharedMem -_08097518: - movs r0, 0x8 - bl sub_8098898 - ldr r1, _0809752C @ =gSharedMem - movs r0, 0x4 -_08097522: - strb r0, [r1, 0x4] - ldr r0, _08097530 @ =gUnknown_0203847E - strb r4, [r0] - b _08097584 - .align 2, 0 -_0809752C: .4byte gSharedMem -_08097530: .4byte gUnknown_0203847E -_08097534: - bl party_compaction - bl sub_8099310 - ldr r1, _08097544 @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - b _08097582 - .align 2, 0 -_08097544: .4byte gSharedMem -_08097548: - bl sub_8099374 - lsls r0, 24 - cmp r0, 0 - bne _08097584 - bl sub_809B6BC - bl BoxSetMosaic - bl sub_80987DC -_0809755E: - ldr r0, _08097568 @ =sub_8096C84 - bl SetPSSCallback - b _08097584 - .align 2, 0 -_08097568: .4byte sub_8096C84 -_0809756C: - ldr r0, _0809758C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08097584 - movs r0, 0x6 - bl sub_8098898 - ldr r1, _08097590 @ =gSharedMem - movs r0, 0x1 -_08097582: - strb r0, [r1, 0x4] -_08097584: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809758C: .4byte gMain -_08097590: .4byte gSharedMem - thumb_func_end sub_809746C - thumb_func_start sub_8097594 sub_8097594: @ 8097594 push {r4,lr} @@ -171,7 +40,7 @@ _080975B4: .4byte _08097764 _080975EC: movs r0, 0x9 - bl sub_8098898 + bl PrintStorageActionText movs r0, 0x1 bl sub_8098A38 ldr r1, _0809761C @ =gSharedMem @@ -332,7 +201,7 @@ _08097732: beq _0809777A movs r0, 0x14 _08097740: - bl sub_8098898 + bl PrintStorageActionText _08097744: ldr r1, _08097754 @ =gSharedMem ldrb r0, [r1, 0x4] @@ -429,7 +298,7 @@ sub_80977E4: @ 80977E4 _080977F4: .4byte gSharedMem _080977F8: movs r0, 0xC - bl sub_8098898 + bl PrintStorageActionText ldr r0, _08097820 @ =0x000011f7 adds r2, r4, r0 ldrb r1, [r2] @@ -519,7 +388,7 @@ sub_809789C: @ 809789C _080978AC: .4byte gSharedMem _080978B0: movs r0, 0x1 - bl sub_8098898 + bl PrintStorageActionText bl sub_809CE84 ldrb r0, [r4, 0x4] adds r0, 0x1 @@ -617,7 +486,7 @@ _0809798C: _08097996: bl sub_8098A80 movs r0, 0x2 - bl sub_8098898 + bl PrintStorageActionText b _08097A3C _080979A2: bl sub_809CF30 @@ -655,7 +524,7 @@ _080979D4: lsrs r0, 24 bl sub_8098AA8 movs r0, 0x3 - bl sub_8098898 + bl PrintStorageActionText b _08097A3C _080979FC: bl sub_809CF30 @@ -730,7 +599,7 @@ _08097A7C: b _08097B32 _08097A86: movs r0, 0x5 - bl sub_8098898 + bl PrintStorageActionText ldr r1, _08097AA4 @ =0x00002370 adds r0, r5, r1 ldr r2, _08097AA8 @ =0x0000daca @@ -891,7 +760,7 @@ _08097BD4: movs r0, 0x20 bl PlaySE movs r0, 0xF - bl sub_8098898 + bl PrintStorageActionText ldr r1, _08097BF4 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] @@ -902,7 +771,7 @@ _08097BF8: movs r0, 0x5 bl PlaySE movs r0, 0 - bl sub_8098898 + bl PrintStorageActionText movs r0, 0 bl sub_8098A38 ldr r1, _08097C14 @ =gSharedMem @@ -1025,7 +894,7 @@ _08097CF4: movs r0, 0x20 bl PlaySE movs r0, 0xF - bl sub_8098898 + bl PrintStorageActionText ldr r1, _08097D14 @ =gSharedMem movs r0, 0x1 strb r0, [r1, 0x4] @@ -1036,7 +905,7 @@ _08097D18: movs r0, 0x5 bl PlaySE movs r0, 0x12 - bl sub_8098898 + bl PrintStorageActionText movs r0, 0 bl sub_8098A38 ldr r1, _08097D34 @ =gSharedMem diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index b9b18e707..4340301ba 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -98,7 +98,7 @@ gSpriteTemplate_83B6DDC:: @ 83B6DDC spr_template 2, 56007, gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy .align 2 -gUnknown_083B6DF4:: @ 83B6DF4 +gPCStorageActionTexts:: @ 83B6DF4 .4byte PCText_ExitBox, 0 .4byte PCText_WhatYouDo, 0 .4byte PCText_PickATheme, 0 diff --git a/include/ewram.h b/include/ewram.h index 19e05134f..d8ebd71ec 100755 --- a/include/ewram.h +++ b/include/ewram.h @@ -39,10 +39,6 @@ extern u8 gSharedMem[]; #define ewram01000 (*(struct Unk2001000 *)(gSharedMem + 0x1000)) #define ewramBerryPicTemp (gSharedMem + 0x1000) #define EWRAM_1000 (*(struct Struct2001000 *)(gSharedMem + 0x1000)) -#define gUnk20011fa (u8 *)(&gSharedMem[0x11FA]) -#define gUnk2002694 (u8 *)(&gSharedMem[0x2694]) -#define gUnk20026A6 (u8 *)(&gSharedMem[0x26A6]) -#define gUnk20026e4 (u8 *)(&gSharedMem[0x26E4]) #define ewram4000 (gSharedMem + 0x4000) #define gUnknown_02007000 (*(ewramStruct_02007000 *)(gSharedMem + 0x7000)) #define ARRAY_2007800 ((struct EasyChatPair *)(gSharedMem + 0x7800)) diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 6f51b823e..916dc411a 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -19,6 +19,42 @@ #include "naming_screen.h" #include "pokemon_storage_system.h" +enum { + PC_TEXT_EXIT_BOX, + PC_TEXT_WHAT_YOU_DO, + PC_TEXT_PICK_A_THEME, + PC_TEXT_PICK_A_WALLPAPER, + PC_TEXT_IS_SELECTED, + PC_TEXT_JUMP_TO_WHICH_BOX, + PC_TEXT_DEPOSIT_IN_WHICH_BOX, + PC_TEXT_WAS_DEPOSITED, + PC_TEXT_BOX_IS_FULL, + PC_TEXT_RELEASE_POKE, + PC_TEXT_WAS_RELEASED, + PC_TEXT_BYE_BYE, + PC_TEXT_MARK_POKE, + PC_TEXT_LAST_POKE, + PC_TEXT_PARTY_FULL, + PC_TEXT_HOLDING_POKE, + PC_TEXT_WHICH_ONE_WILL_TAKE, + PC_TEXT_CANT_RELEASE_EGG, + PC_TEXT_CONTINUE_BOX, + PC_TEXT_CAME_BACK, + PC_TEXT_WORRIED, + PC_TEXT_SURPRISE, + PC_TEXT_PLEASE_REMOVE_MAIL +}; + +enum { + PC_TEXT_FMT_NORMAL, + PC_TEXT_FMT_MON_NAME, + PC_TEXT_FMT_UNK_02, + PC_TEXT_FMT_UNK_03, + PC_TEXT_FMT_MON_NAME_2, + PC_TEXT_FMT_UNK_05, + PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK +}; + struct StorageAction { u8 *text; u8 format; @@ -66,7 +102,7 @@ struct PokemonStorageSystemData { u8 unk_11f6; u8 filler_11f7[2]; u8 unk_11f9; - u8 filler_11fa[0xc2]; + u8 unk_11fa[0xc2]; struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; u8 filler_25b4[0xd8]; @@ -74,6 +110,9 @@ struct PokemonStorageSystemData { u8 unk_268d; u8 unk_268e; struct Pokemon *unk_2690; + u8 unk_2694[18]; + u8 unk_26a6[62]; + u8 unk_26e4[80]; }; void StorageSystemCreatePrimaryMenu(u8 whichMenu); @@ -120,11 +159,13 @@ void sub_8098734(void); void sub_80987DC(void); void sub_809880C(void); bool8 sub_8098830(void); -void sub_8098898(u8 index); +void PrintStorageActionText(u8 index); void sub_8098A5C(void); void sub_809B100(u8 a0); bool8 sub_809B130(void); void sub_8098B48(void); +void sub_8099310(void); +bool8 sub_8099374(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); @@ -137,6 +178,8 @@ void sub_809B0D4(void); void sub_809B0E0(void); u8 sub_809B0F4(void); void sub_809B440(void); +bool8 sub_809B62C(u8); +void sub_809B6BC(void); void sub_809BBC0(void); void sub_809BD14(void); bool8 sub_809BE80(void); @@ -198,7 +241,7 @@ const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/b const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -extern const struct StorageAction gUnknown_083B6DF4[]; +extern const struct StorageAction gPCStorageActionTexts[]; extern const struct PokemonStorageSystemData *gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; @@ -1107,7 +1150,7 @@ void sub_8096C84(void) case 5: if (ePokemonStorageSystem.unk_0005 != 2) { - sub_8098898(16); + PrintStorageActionText(PC_TEXT_WHICH_ONE_WILL_TAKE); ePokemonStorageSystem.unk_0004 = 3; } else @@ -1242,12 +1285,12 @@ void sub_8096C84(void) break; case 4: PlaySE(SE_HAZURE); - sub_8098898(13); + PrintStorageActionText(PC_TEXT_LAST_POKE); ePokemonStorageSystem.unk_0004 = 6; break; case 5: PlaySE(SE_HAZURE); - sub_8098898(22); + PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); ePokemonStorageSystem.unk_0004 = 6; break; case 6: @@ -1307,7 +1350,7 @@ void sub_8097078(void) switch (ePokemonStorageSystem.unk_0004) { case 0: - sub_8098898(4); + PrintStorageActionText(PC_TEXT_IS_SELECTED); sub_809CE84(); ePokemonStorageSystem.unk_0004 = 1; break; @@ -1400,17 +1443,17 @@ void sub_8097078(void) break; case 2: PlaySE(SE_HAZURE); - sub_8098898(13); + PrintStorageActionText(PC_TEXT_LAST_POKE); ePokemonStorageSystem.unk_0004 = 5; break; case 4: PlaySE(SE_HAZURE); - sub_8098898(17); + PrintStorageActionText(PC_TEXT_CANT_RELEASE_EGG); ePokemonStorageSystem.unk_0004 = 5; break; case 3: PlaySE(SE_HAZURE); - sub_8098898(22); + PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); ePokemonStorageSystem.unk_0004 = 5; break; case 5: @@ -1488,7 +1531,7 @@ void sub_8097390(void) case 0: if (CalculatePlayerPartyCount() == 6) { - sub_8098898(14); + PrintStorageActionText(PC_TEXT_PARTY_FULL); ePokemonStorageSystem.unk_0004 = 1; } else @@ -1532,83 +1575,146 @@ void sub_8097390(void) } } +void sub_809746C(void) +{ + u8 r4; + + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + sub_8096264(&ePokemonStorageSystem.unk_2370, 0x0007, 0xdaca, 3); + sub_809634C(gUnknown_0203847E); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + r4 = sub_8096368(); + if (r4 == 200); + else if (r4 == 201) + { + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + SetPSSCallback(sub_8096C84); + } + else + { + if (sub_809B62C(r4)) + { + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + ePokemonStorageSystem.unk_0004 = 2; + } + else + { + PrintStorageActionText(PC_TEXT_BOX_IS_FULL); + ePokemonStorageSystem.unk_0004 = 4; + } + gUnknown_0203847E = r4; + } + break; + case 2: + party_compaction(); + sub_8099310(); + ePokemonStorageSystem.unk_0004++; + break; + case 3: + if (!sub_8099374()) + { + sub_809B6BC(); + BoxSetMosaic(); + sub_80987DC(); + SetPSSCallback(sub_8096C84); + } + break; + case 4: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + ePokemonStorageSystem.unk_0004 = 1; + } + break; + } +} + asm(".section .text.8098898"); -void sub_8098898(u8 index) { +void PrintStorageActionText(u8 index) { u8 *ptr; MenuDrawTextWindow(10, 16, 29, 19); - switch (gUnknown_083B6DF4[index].format) + switch (gPCStorageActionTexts[index].format) { - case 2: - ptr = StringCopy(gUnk2002694, gUnknown_083B6DF4[index].text); - ptr = StringCopy(ptr, gUnk20011fa); + case PC_TEXT_FMT_UNK_02: + ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, ePokemonStorageSystem.unk_11fa); break; - case 5: - ptr = StringCopy(gUnk2002694, gUnknown_083B6DF4[index].text); - ptr = StringCopy(ptr, gUnk20026e4); + case PC_TEXT_FMT_UNK_05: + ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, ePokemonStorageSystem.unk_26e4); break; - case 1: + case PC_TEXT_FMT_MON_NAME: // {var} + " is selected." - ptr = StringCopy(gUnk2002694, gUnk20011fa); - ptr = StringCopy(ptr, gUnknown_083B6DF4[index].text); + ptr = StringCopy(ePokemonStorageSystem.unk_2694, ePokemonStorageSystem.unk_11fa); + ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); break; - case 4: + case PC_TEXT_FMT_MON_NAME_2: // {var} + " was released." - ptr = StringCopy(gUnk2002694, gUnk20026e4); + ptr = StringCopy(ePokemonStorageSystem.unk_2694, ePokemonStorageSystem.unk_26e4); #if ENGLISH - ptr = StringCopy(ptr, gUnknown_083B6DF4[index].text); + ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); #elif GERMAN - ptr = de_sub_8073174(gUnk2002694, gUnknown_083B6DF4[index].text); + ptr = de_sub_8073174(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); #endif break; - case 3: + case PC_TEXT_FMT_UNK_03: { u8 *stringLength; u8 *text; - text = gUnknown_083B6DF4[index].text; + text = gPCStorageActionTexts[index].text; stringLength = &text[StringLength(text)] + 1; - ptr = StringCopy(gUnk2002694, gUnknown_083B6DF4[index].text); - ptr = StringCopy(ptr, gUnk20011fa); + ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, ePokemonStorageSystem.unk_11fa); ptr = StringCopy(ptr, stringLength); } break; - case 6: + case PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK: // "Bye-bye, ".substr(0, -1) + {var} + "Bye-bye, !".substr(-1, 1) { u8 *stringLength; u8 *text; - text = gUnknown_083B6DF4[index].text; + text = gPCStorageActionTexts[index].text; stringLength = &text[StringLength(text)] - 1; - ptr = StringCopy(gUnk2002694, gUnknown_083B6DF4[index].text); - ptr = StringCopy(ptr - 1, gUnk20026e4); + ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr - 1, ePokemonStorageSystem.unk_26e4); ptr = StringCopy(ptr, stringLength); } break; - case 0: + case PC_TEXT_FMT_NORMAL: default: - ptr = StringCopy(gUnk2002694, gUnknown_083B6DF4[index].text); + ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); break; } - while (ptr < gUnk20026A6) + while (ptr < ePokemonStorageSystem.unk_26a6) { ptr[0] = CHAR_SPACE; ptr++; } ptr[0] = EOS; - MenuPrint(gUnk2002694, 11, 17); + MenuPrint(ePokemonStorageSystem.unk_2694, 11, 17); } -- cgit v1.2.3 From 882bf5c3cf945927b3049eb8675bf1964d8706e8 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 15:22:37 -0700 Subject: sub_8097594 --- asm/pokemon_storage_system.s | 232 ----------------------------------- src/pokemon/pokemon_storage_system.c | 144 +++++++++++++++++++++- 2 files changed, 142 insertions(+), 234 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 2622e7d84..8d31aedb4 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,238 +5,6 @@ .text - thumb_func_start sub_8097594 -sub_8097594: @ 8097594 - push {r4,lr} - ldr r0, _080975AC @ =gSharedMem - ldrb r0, [r0, 0x4] - cmp r0, 0xD - bls _080975A0 - b _0809777A -_080975A0: - lsls r0, 2 - ldr r1, _080975B0 @ =_080975B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080975AC: .4byte gSharedMem -_080975B0: .4byte _080975B4 - .align 2, 0 -_080975B4: - .4byte _080975EC - .4byte _08097600 - .4byte _0809763A - .4byte _0809766E - .4byte _0809767A - .4byte _08097690 - .4byte _080976C8 - .4byte _080976E0 - .4byte _080976EC - .4byte _080976F0 - .4byte _08097704 - .4byte _08097720 - .4byte _08097732 - .4byte _08097764 -_080975EC: - movs r0, 0x9 - bl PrintStorageActionText - movs r0, 0x1 - bl sub_8098A38 - ldr r1, _0809761C @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] -_08097600: - bl ProcessMenuInputNoWrap - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0809762C - cmp r1, 0 - bgt _08097620 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08097626 - b _0809777A - .align 2, 0 -_0809761C: .4byte gSharedMem -_08097620: - cmp r1, 0x1 - beq _08097626 - b _0809777A -_08097626: - bl sub_8098A5C - b _080976E0 -_0809762C: - bl sub_8098A5C - bl sub_809B7D4 - bl sub_809B6DC - b _08097744 -_0809763A: - bl sub_809B960 - bl sub_809B734 - lsls r0, 24 - cmp r0, 0 - beq _0809764A - b _0809777A -_0809764A: - ldr r4, _08097650 @ =gSharedMem - b _0809765A - .align 2, 0 -_08097650: .4byte gSharedMem -_08097654: - cmp r0, 0 - bne _0809765A - b _08097758 -_0809765A: - bl sub_809B960 - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _08097654 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _0809777A -_0809766E: - bl sub_809B760 - bl sub_809801C - movs r0, 0xA - b _08097740 -_0809767A: - ldr r0, _0809768C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _08097688 - b _0809777A -_08097688: - movs r0, 0xB - b _08097740 - .align 2, 0 -_0809768C: .4byte gMain -_08097690: - ldr r0, _080976B4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809777A - bl sub_8098A5C - ldr r0, _080976B8 @ =gUnknown_0203847C - ldrb r0, [r0] - cmp r0, 0 - beq _080976BC - bl party_compaction - bl sub_8099310 - b _08097744 - .align 2, 0 -_080976B4: .4byte gMain -_080976B8: .4byte gUnknown_0203847C -_080976BC: - ldr r1, _080976C4 @ =gSharedMem - movs r0, 0x7 - strb r0, [r1, 0x4] - b _0809777A - .align 2, 0 -_080976C4: .4byte gSharedMem -_080976C8: - bl sub_8099374 - lsls r0, 24 - cmp r0, 0 - bne _0809777A - bl sub_809B440 - bl BoxSetMosaic - bl sub_80987DC - b _08097744 -_080976E0: - ldr r0, _080976E8 @ =sub_8096C84 - bl SetPSSCallback - b _0809777A - .align 2, 0 -_080976E8: .4byte sub_8096C84 -_080976EC: - movs r0, 0xA - b _08097740 -_080976F0: - ldr r0, _08097700 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809777A - movs r0, 0x15 - b _08097740 - .align 2, 0 -_08097700: .4byte gMain -_08097704: - ldr r0, _0809771C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809777A - bl sub_8098A5C - bl sub_8099958 - b _08097744 - .align 2, 0 -_0809771C: .4byte gMain -_08097720: - bl sub_8099990 - lsls r0, 24 - cmp r0, 0 - bne _0809777A - bl sub_809B7AC - movs r0, 0x13 - b _08097740 -_08097732: - ldr r0, _08097750 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809777A - movs r0, 0x14 -_08097740: - bl PrintStorageActionText -_08097744: - ldr r1, _08097754 @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _0809777A - .align 2, 0 -_08097750: .4byte gMain -_08097754: .4byte gSharedMem -_08097758: - ldr r1, _08097760 @ =gSharedMem - movs r0, 0x8 - strb r0, [r1, 0x4] - b _0809777A - .align 2, 0 -_08097760: .4byte gSharedMem -_08097764: - ldr r0, _08097780 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _0809777A - bl sub_8098A5C - ldr r0, _08097784 @ =sub_8096C84 - bl SetPSSCallback -_0809777A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097780: .4byte gMain -_08097784: .4byte sub_8096C84 - thumb_func_end sub_8097594 - thumb_func_start sub_8097788 sub_8097788: @ 8097788 push {r4,r5,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 916dc411a..9e18dadb5 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -158,14 +158,16 @@ void sub_8098710(void); void sub_8098734(void); void sub_80987DC(void); void sub_809880C(void); +void sub_809801C(void); bool8 sub_8098830(void); void PrintStorageActionText(u8 index); +void sub_8098A38(u8); void sub_8098A5C(void); -void sub_809B100(u8 a0); -bool8 sub_809B130(void); void sub_8098B48(void); void sub_8099310(void); bool8 sub_8099374(void); +void sub_8099958(void); +bool8 sub_8099990(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); @@ -177,9 +179,17 @@ void sub_809B0C0(u8 a0); void sub_809B0D4(void); void sub_809B0E0(void); u8 sub_809B0F4(void); +void sub_809B100(u8 a0); +bool8 sub_809B130(void); void sub_809B440(void); bool8 sub_809B62C(u8); void sub_809B6BC(void); +void sub_809B6DC(void); +bool8 sub_809B734(void); +void sub_809B760(void); +void sub_809B7AC(void); +void sub_809B7D4(void); +s8 sub_809B960(void); void sub_809BBC0(void); void sub_809BD14(void); bool8 sub_809BE80(void); @@ -1638,6 +1648,136 @@ void sub_809746C(void) } } +void sub_8097594(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_RELEASE_POKE); + sub_8098A38(1); + ePokemonStorageSystem.unk_0004++; + // fallthrough + case 1: + switch (ProcessMenuInputNoWrap()) + { + case -1: + case 1: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 0: + sub_8098A5C(); + sub_809B7D4(); + sub_809B6DC(); + ePokemonStorageSystem.unk_0004++; + break; + } + break; + case 2: + sub_809B960(); + if (!sub_809B734()) + { + while (1) + { + s8 r0 = sub_809B960(); + if (r0 == 1) + { + ePokemonStorageSystem.unk_0004++; + break; + } + if (r0 == 0) + { + ePokemonStorageSystem.unk_0004 = 8; + break; + } + } + } + break; + case 3: + sub_809B760(); + sub_809801C(); + PrintStorageActionText(PC_TEXT_WAS_RELEASED); + ePokemonStorageSystem.unk_0004++; + break; + case 4: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_BYE_BYE); + ePokemonStorageSystem.unk_0004++; + } + break; + case 5: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + if (gUnknown_0203847C) + { + party_compaction(); + sub_8099310(); + ePokemonStorageSystem.unk_0004++; + } + else + { + ePokemonStorageSystem.unk_0004 = 7; + } + } + break; + case 6: + if (!sub_8099374()) + { + sub_809B440(); + BoxSetMosaic(); + sub_80987DC(); + ePokemonStorageSystem.unk_0004++; + } + break; + case 7: + SetPSSCallback(sub_8096C84); + break; + case 8: + PrintStorageActionText(PC_TEXT_WAS_RELEASED); + ePokemonStorageSystem.unk_0004++; + break; + case 9: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_SURPRISE); + ePokemonStorageSystem.unk_0004++; + } + break; + case 10: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + sub_8099958(); + ePokemonStorageSystem.unk_0004++; + } + break; + case 11: + if (!sub_8099990()) + { + sub_809B7AC(); + PrintStorageActionText(PC_TEXT_CAME_BACK); + ePokemonStorageSystem.unk_0004++; + } + break; + case 12: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_WORRIED); + ePokemonStorageSystem.unk_0004++; + } + break; + case 13: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { -- cgit v1.2.3 From 660fa0c0f38a684eda6c117958447deacac88820 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 15:37:05 -0700 Subject: through sub_8097858 --- asm/pokemon_storage_system.s | 137 ----------------------------------- include/mon_markings.h | 5 +- src/pokemon/pokemon_storage_system.c | 67 ++++++++++++++++- 3 files changed, 70 insertions(+), 139 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 8d31aedb4..311b3552a 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,143 +5,6 @@ .text - thumb_func_start sub_8097788 -sub_8097788: @ 8097788 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _0809779C @ =gSharedMem - ldrb r4, [r5, 0x4] - cmp r4, 0 - beq _080977A0 - cmp r4, 0x1 - beq _080977BC - b _080977D4 - .align 2, 0 -_0809779C: .4byte gSharedMem -_080977A0: - bl sub_809BC18 - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldrb r0, [r5, 0x4] - adds r0, 0x1 - strb r0, [r5, 0x4] - b _080977D4 -_080977BC: - bl UpdatePaletteFade - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080977D4 - ldr r0, _080977DC @ =gUnknown_0203847F - strb r1, [r0] - strb r1, [r5, 0x6] - ldr r0, _080977E0 @ =sub_8096B5C - bl SetMainCallback2 -_080977D4: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080977DC: .4byte gUnknown_0203847F -_080977E0: .4byte sub_8096B5C - thumb_func_end sub_8097788 - - thumb_func_start sub_80977E4 -sub_80977E4: @ 80977E4 - push {r4,lr} - ldr r4, _080977F4 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _080977F8 - cmp r0, 0x1 - beq _08097824 - b _0809784C - .align 2, 0 -_080977F4: .4byte gSharedMem -_080977F8: - movs r0, 0xC - bl PrintStorageActionText - ldr r0, _08097820 @ =0x000011f7 - adds r2, r4, r0 - ldrb r1, [r2] - movs r3, 0x96 - lsls r3, 5 - adds r0, r4, r3 - strb r1, [r0] - ldrb r0, [r2] - movs r1, 0xB0 - movs r2, 0x10 - bl sub_80F7418 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _0809784C - .align 2, 0 -_08097820: .4byte 0x000011f7 -_08097824: - bl sub_80F7500 - lsls r0, 24 - cmp r0, 0 - bne _0809784C - bl sub_80F7470 - bl sub_8098A5C - movs r1, 0x96 - lsls r1, 5 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_809BDD8 - bl sub_809801C - ldr r0, _08097854 @ =sub_8096C84 - bl SetPSSCallback -_0809784C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097854: .4byte sub_8096C84 - thumb_func_end sub_80977E4 - - thumb_func_start sub_8097858 -sub_8097858: @ 8097858 - push {r4,lr} - ldr r4, _08097868 @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _0809786C - cmp r0, 0x1 - beq _0809787C - b _08097890 - .align 2, 0 -_08097868: .4byte gSharedMem -_0809786C: - bl party_compaction - bl sub_8099310 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097890 -_0809787C: - bl sub_8099374 - lsls r0, 24 - cmp r0, 0 - bne _08097890 - bl sub_80987DC - ldr r0, _08097898 @ =sub_8096C84 - bl SetPSSCallback -_08097890: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097898: .4byte sub_8096C84 - thumb_func_end sub_8097858 - thumb_func_start sub_809789C sub_809789C: @ 809789C push {r4,lr} diff --git a/include/mon_markings.h b/include/mon_markings.h index eae80861a..3b4aa333c 100644 --- a/include/mon_markings.h +++ b/include/mon_markings.h @@ -20,7 +20,10 @@ struct PokemonMarkMenu /*0x10B0*/ u8 tileLoadState; }; // 10b4 -void sub_80F7404(void); void sub_80F727C(struct PokemonMarkMenu *ptr); +void sub_80F7404(void); +void sub_80F7418(u8 markings, s16 x, s16 y); +void sub_80F7470(void); +bool8 sub_80F7500(void); #endif //POKERUBY_MON_MARKINGS_H diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 9e18dadb5..8b0893c73 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -100,7 +100,8 @@ struct PokemonStorageSystemData { u16 unk_11f2; u8 filler_11f4[2]; u8 unk_11f6; - u8 filler_11f7[2]; + u8 unk_11f7; + u8 unk_11f8; u8 unk_11f9; u8 unk_11fa[0xc2]; struct PokemonMarkMenu unk_12bc; @@ -191,7 +192,9 @@ void sub_809B7AC(void); void sub_809B7D4(void); s8 sub_809B960(void); void sub_809BBC0(void); +void sub_809BC18(void); void sub_809BD14(void); +void sub_809BDD8(u8 markings); bool8 sub_809BE80(void); bool8 sub_809BEBC(void); bool8 sub_809BF20(void); @@ -1778,6 +1781,68 @@ void sub_8097594(void) } } +void sub_8097788(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809BC18(); + BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!UpdatePaletteFade()) + { + gUnknown_0203847F = 0; + ePokemonStorageSystem.unk_0006 = 0; + SetMainCallback2(sub_8096B5C); + } + break; + } +} + +void sub_80977E4(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_MARK_POKE); + ePokemonStorageSystem.unk_12bc.markings = ePokemonStorageSystem.unk_11f7; + sub_80F7418(ePokemonStorageSystem.unk_11f7, 0xb0, 0x10); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_80F7500()) + { + sub_80F7470(); + sub_8098A5C(); + sub_809BDD8(ePokemonStorageSystem.unk_12bc.markings); + sub_809801C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097858(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + party_compaction(); + sub_8099310(); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!sub_8099374()) + { + sub_80987DC(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { -- cgit v1.2.3 From 2fe1da46d9dda22fbe2184a53f71d5e2b8f03aba Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 21:33:51 -0500 Subject: through sub_8097974 --- asm/pokemon_storage_system.s | 203 ----------------------------------- src/pokemon/pokemon_storage_system.c | 108 ++++++++++++++++++- 2 files changed, 106 insertions(+), 205 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 311b3552a..c282ebecd 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,209 +5,6 @@ .text - thumb_func_start sub_809789C -sub_809789C: @ 809789C - push {r4,lr} - ldr r4, _080978AC @ =gSharedMem - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _080978B0 - cmp r0, 0x1 - beq _080978C2 - b _08097968 - .align 2, 0 -_080978AC: .4byte gSharedMem -_080978B0: - movs r0, 0x1 - bl PrintStorageActionText - bl sub_809CE84 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097968 -_080978C2: - bl sub_809CF30 - adds r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xC - bhi _08097968 - lsls r0, 2 - ldr r1, _080978DC @ =_080978E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080978DC: .4byte _080978E0 - .align 2, 0 -_080978E0: - .4byte _08097914 - .4byte _08097914 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097968 - .4byte _08097958 - .4byte _08097940 - .4byte _0809792C -_08097914: - movs r0, 0x1 - bl sub_809A860 - bl sub_8098A5C - ldr r0, _08097928 @ =sub_8096C84 - bl SetPSSCallback - b _08097968 - .align 2, 0 -_08097928: .4byte sub_8096C84 -_0809792C: - movs r0, 0x5 - bl PlaySE - ldr r0, _0809793C @ =sub_8097B44 - bl SetPSSCallback - b _08097968 - .align 2, 0 -_0809793C: .4byte sub_8097B44 -_08097940: - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _08097954 @ =sub_8097974 - bl SetPSSCallback - b _08097968 - .align 2, 0 -_08097954: .4byte sub_8097974 -_08097958: - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldr r0, _08097970 @ =sub_8097A64 - bl SetPSSCallback -_08097968: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097970: .4byte sub_8097A64 - thumb_func_end sub_809789C - - thumb_func_start sub_8097974 -sub_8097974: @ 8097974 - push {r4,r5,lr} - ldr r5, _08097988 @ =gSharedMem - ldrb r0, [r5, 0x4] - cmp r0, 0x1 - beq _080979A2 - cmp r0, 0x1 - bgt _0809798C - cmp r0, 0 - beq _08097996 - b _08097A5A - .align 2, 0 -_08097988: .4byte gSharedMem -_0809798C: - cmp r0, 0x2 - beq _080979FC - cmp r0, 0x3 - beq _08097A44 - b _08097A5A -_08097996: - bl sub_8098A80 - movs r0, 0x2 - bl PrintStorageActionText - b _08097A3C -_080979A2: - bl sub_809CF30 - ldr r1, _080979CC @ =0x00000d5e - adds r4, r5, r1 - strh r0, [r4] - movs r1, 0 - ldrsh r0, [r4, r1] - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080979D4 - movs r0, 0x1 - bl sub_809A860 - bl sub_8098A5C - ldr r0, _080979D0 @ =sub_8096C84 - bl SetPSSCallback - b _08097A5A - .align 2, 0 -_080979CC: .4byte 0x00000d5e -_080979D0: .4byte sub_8096C84 -_080979D4: - cmp r0, r1 - blt _08097A5A - cmp r0, 0xF - bgt _08097A5A - cmp r0, 0xC - blt _08097A5A - movs r0, 0x5 - bl PlaySE - ldrh r0, [r4] - subs r0, 0xC - strh r0, [r4] - lsls r0, 24 - lsrs r0, 24 - bl sub_8098AA8 - movs r0, 0x3 - bl PrintStorageActionText - b _08097A3C -_080979FC: - bl sub_809CF30 - movs r1, 0xD6 - lsls r1, 4 - adds r4, r5, r1 - strh r0, [r4] - movs r0, 0 - ldrsh r1, [r4, r0] - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _08097A5A - adds r0, 0x1 - cmp r1, r0 - bne _08097A24 - bl sub_8098A5C - movs r0, 0 - strb r0, [r5, 0x4] - b _08097A5A -_08097A24: - movs r0, 0x5 - bl PlaySE - bl sub_8098A5C - ldrh r0, [r4] - subs r0, 0x10 - strh r0, [r4] - lsls r0, 24 - lsrs r0, 24 - bl sub_8099DCC -_08097A3C: - ldrb r0, [r5, 0x4] - adds r0, 0x1 - strb r0, [r5, 0x4] - b _08097A5A -_08097A44: - bl sub_8099E08 - lsls r0, 24 - cmp r0, 0 - bne _08097A5A - movs r0, 0x1 - bl sub_809A860 - ldr r0, _08097A60 @ =sub_8096C84 - bl SetPSSCallback -_08097A5A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08097A60: .4byte sub_8096C84 - thumb_func_end sub_8097974 - thumb_func_start sub_8097A64 sub_8097A64: @ 8097A64 push {r4,r5,lr} diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 8b0893c73..0f2350df2 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -96,7 +96,10 @@ struct PokemonStorageSystemData { u8 filler_08b0[2]; s16 unk_08b2; u16 unk_08b4; - u8 filler_08b6[0x93c]; + u8 filler_08b6[0x4a8]; + s16 unk_0d5e; + s16 unk_0d60; + u8 filler_0d62[0x490]; u16 unk_11f2; u8 filler_11f4[2]; u8 unk_11f6; @@ -145,12 +148,16 @@ void sub_8097788(void); void sub_80977E4(void); void sub_8097858(void); void sub_809789C(void); +void sub_8097974(void); +void sub_8097A64(void); +void sub_8097B44(void); void sub_8097BA0(void); void sub_8097CC0(void); void sub_8097DE0(void); void sub_8097E44(void); void sub_8097E70(void); void BoxSetMosaic(void); +void sub_809801C(void); void sub_8098400(void); void add_to_c3_somehow(void); bool8 sub_80985CC(void); @@ -159,11 +166,12 @@ void sub_8098710(void); void sub_8098734(void); void sub_80987DC(void); void sub_809880C(void); -void sub_809801C(void); bool8 sub_8098830(void); void PrintStorageActionText(u8 index); void sub_8098A38(u8); void sub_8098A5C(void); +void sub_8098A80(void); +void sub_8098AA8(u8 a0); void sub_8098B48(void); void sub_8099310(void); bool8 sub_8099374(void); @@ -172,6 +180,9 @@ bool8 sub_8099990(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); +void sub_8099DCC(u8 a0); +bool8 sub_8099E08(void); +void sub_809A860(u8 a0); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); void sub_809AA24(void); void sub_809AA98(void); @@ -1843,6 +1854,99 @@ void sub_8097858(void) } } +void sub_809789C(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_WHAT_YOU_DO); + sub_809CE84(); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + switch (sub_809CF30()) + { + case -1: + case 0: + sub_809A860(1); + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 11: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097B44); + break; + case 10: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097974); + break; + case 9: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097A64); + break; + } + break; + } +} + +void sub_8097974(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_8098A80(); + PrintStorageActionText(PC_TEXT_PICK_A_THEME); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + ePokemonStorageSystem.unk_0d5e = sub_809CF30(); + switch (ePokemonStorageSystem.unk_0d5e) + { + case -1: + sub_809A860(1); + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 12 ... 15: + PlaySE(SE_SELECT); + ePokemonStorageSystem.unk_0d5e -= 12; + sub_8098AA8(ePokemonStorageSystem.unk_0d5e); + PrintStorageActionText(PC_TEXT_PICK_A_WALLPAPER); + ePokemonStorageSystem.unk_0004++; + break; + } + break; + case 2: + ePokemonStorageSystem.unk_0d60 = sub_809CF30(); + switch (ePokemonStorageSystem.unk_0d60) + { + case -1: + sub_8098A5C(); + ePokemonStorageSystem.unk_0004 = 0; + break; + case -2: + break; + default: + PlaySE(SE_SELECT); + sub_8098A5C(); + ePokemonStorageSystem.unk_0d60 -= 16; + sub_8099DCC(ePokemonStorageSystem.unk_0d60); + ePokemonStorageSystem.unk_0004++; + break; + } + break; + case 3: + if (!sub_8099E08()) + { + sub_809A860(1); + SetPSSCallback(sub_8096C84); + } + break; + } +} + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { -- cgit v1.2.3 From e2ff8b73c7e17777be8c4065a93e8727768bb914 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 22:05:43 -0500 Subject: through sub_8097BA0; fix calls to pc_screen_effect from scene/hall_of_fame --- asm/pokemon_storage_system.s | 284 ----------------------------------- include/ewram.h | 1 + include/pc_screen_effect.h | 2 + src/pokemon/pokemon_storage_system.c | 130 +++++++++++++++- src/scene/hall_of_fame.c | 35 ++--- 5 files changed, 143 insertions(+), 309 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index c282ebecd..85e29b183 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,290 +5,6 @@ .text - thumb_func_start sub_8097A64 -sub_8097A64: @ 8097A64 - push {r4,r5,lr} - ldr r5, _08097A78 @ =gSharedMem - ldrb r0, [r5, 0x4] - cmp r0, 0x1 - beq _08097AB0 - cmp r0, 0x1 - bgt _08097A7C - cmp r0, 0 - beq _08097A86 - b _08097B32 - .align 2, 0 -_08097A78: .4byte gSharedMem -_08097A7C: - cmp r0, 0x2 - beq _08097B00 - cmp r0, 0x3 - beq _08097B18 - b _08097B32 -_08097A86: - movs r0, 0x5 - bl PrintStorageActionText - ldr r1, _08097AA4 @ =0x00002370 - adds r0, r5, r1 - ldr r2, _08097AA8 @ =0x0000daca - movs r1, 0x7 - movs r3, 0x3 - bl sub_8096264 - ldr r0, _08097AAC @ =gPokemonStorage - ldrb r0, [r0] - bl sub_809634C - b _08097B0A - .align 2, 0 -_08097AA4: .4byte 0x00002370 -_08097AA8: .4byte 0x0000daca -_08097AAC: .4byte gPokemonStorage -_08097AB0: - bl sub_8096368 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08097AF4 @ =0x000008b2 - adds r4, r5, r2 - strh r0, [r4] - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0xC8 - beq _08097B32 - bl sub_8098A5C - bl sub_809635C - bl sub_8096310 - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0xC9 - beq _08097AE4 - adds r1, r0, 0 - ldr r0, _08097AF8 @ =gPokemonStorage - ldrb r0, [r0] - cmp r1, r0 - bne _08097B0A -_08097AE4: - movs r0, 0x1 - bl sub_809A860 - ldr r0, _08097AFC @ =sub_8096C84 - bl SetPSSCallback - b _08097B32 - .align 2, 0 -_08097AF4: .4byte 0x000008b2 -_08097AF8: .4byte gPokemonStorage -_08097AFC: .4byte sub_8096C84 -_08097B00: - ldr r1, _08097B14 @ =0x000008b2 - adds r0, r5, r1 - ldrb r0, [r0] - bl sub_8099C70 -_08097B0A: - ldrb r0, [r5, 0x4] - adds r0, 0x1 - strb r0, [r5, 0x4] - b _08097B32 - .align 2, 0 -_08097B14: .4byte 0x000008b2 -_08097B18: - bl sub_8099D34 - lsls r0, 24 - cmp r0, 0 - bne _08097B32 - ldr r1, _08097B38 @ =gPokemonStorage - ldr r2, _08097B3C @ =0x000008b2 - adds r0, r5, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r0, _08097B40 @ =sub_8096C84 - bl SetPSSCallback -_08097B32: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08097B38: .4byte gPokemonStorage -_08097B3C: .4byte 0x000008b2 -_08097B40: .4byte sub_8096C84 - thumb_func_end sub_8097A64 - - thumb_func_start sub_8097B44 -sub_8097B44: @ 8097B44 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, _08097B58 @ =gSharedMem - ldrb r4, [r5, 0x4] - cmp r4, 0 - beq _08097B5C - cmp r4, 0x1 - beq _08097B78 - b _08097B8E - .align 2, 0 -_08097B58: .4byte gSharedMem -_08097B5C: - bl sub_809BB90 - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldrb r0, [r5, 0x4] - adds r0, 0x1 - strb r0, [r5, 0x4] - b _08097B8E -_08097B78: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08097B8E - ldr r0, _08097B98 @ =gUnknown_0203847F - strb r4, [r0] - strb r4, [r5, 0x6] - ldr r0, _08097B9C @ =sub_8096B5C - bl SetMainCallback2 -_08097B8E: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08097B98: .4byte gUnknown_0203847F -_08097B9C: .4byte sub_8096B5C - thumb_func_end sub_8097B44 - - thumb_func_start sub_8097BA0 -sub_8097BA0: @ 8097BA0 - push {r4,lr} - ldr r0, _08097BB8 @ =gSharedMem - ldrb r1, [r0, 0x4] - adds r4, r0, 0 - cmp r1, 0x4 - bls _08097BAE - b _08097CB0 -_08097BAE: - lsls r0, r1, 2 - ldr r1, _08097BBC @ =_08097BC0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08097BB8: .4byte gSharedMem -_08097BBC: .4byte _08097BC0 - .align 2, 0 -_08097BC0: - .4byte _08097BD4 - .4byte _08097C18 - .4byte _08097C2C - .4byte _08097C74 - .4byte _08097C98 -_08097BD4: - bl sub_809BF20 - lsls r0, 24 - cmp r0, 0 - beq _08097BF8 - movs r0, 0x20 - bl PlaySE - movs r0, 0xF - bl PrintStorageActionText - ldr r1, _08097BF4 @ =gSharedMem - movs r0, 0x1 - strb r0, [r1, 0x4] - b _08097CB0 - .align 2, 0 -_08097BF4: .4byte gSharedMem -_08097BF8: - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl PrintStorageActionText - movs r0, 0 - bl sub_8098A38 - ldr r1, _08097C14 @ =gSharedMem - movs r0, 0x2 - strb r0, [r1, 0x4] - b _08097CB0 - .align 2, 0 -_08097C14: .4byte gSharedMem -_08097C18: - ldr r0, _08097C28 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _08097CB0 - b _08097C4A - .align 2, 0 -_08097C28: .4byte gMain -_08097C2C: - bl ProcessMenuInputNoWrap - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08097C5C - cmp r1, 0 - bgt _08097C46 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08097C4A - b _08097CB0 -_08097C46: - cmp r1, 0x1 - bne _08097CB0 -_08097C4A: - bl sub_8098A5C - ldr r0, _08097C58 @ =sub_8096C84 - bl SetPSSCallback - b _08097CB0 - .align 2, 0 -_08097C58: .4byte sub_8096C84 -_08097C5C: - movs r0, 0x3 - bl PlaySE - bl sub_8098A5C - ldr r1, _08097C70 @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _08097CB0 - .align 2, 0 -_08097C70: .4byte gSharedMem -_08097C74: - movs r1, 0 - movs r0, 0xE - strh r0, [r4, 0xC] - ldr r0, _08097C94 @ =0x0000dad0 - strh r0, [r4, 0xE] - movs r0, 0x14 - strh r0, [r4, 0x10] - strh r1, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0xC - bl sub_80C5E38 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097CB0 - .align 2, 0 -_08097C94: .4byte 0x0000dad0 -_08097C98: - bl sub_80C5F98 - lsls r0, 24 - cmp r0, 0 - beq _08097CB0 - bl CalculatePlayerPartyCount - ldr r1, _08097CB8 @ =gPlayerPartyCount - strb r0, [r1] - ldr r0, _08097CBC @ =sub_80961A8 - bl SetMainCallback2 -_08097CB0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097CB8: .4byte gPlayerPartyCount -_08097CBC: .4byte sub_80961A8 - thumb_func_end sub_8097BA0 - thumb_func_start sub_8097CC0 sub_8097CC0: @ 8097CC0 push {r4,lr} diff --git a/include/ewram.h b/include/ewram.h index f24f089f6..3f627878f 100755 --- a/include/ewram.h +++ b/include/ewram.h @@ -241,6 +241,7 @@ extern u8 gSharedMem[]; #define ewram1C000 (*(struct Unk201C000 *)(gSharedMem + 0x1C000)) #define ewram1c000 (*(struct Unk201C000 *)(gSharedMem + 0x1C000)) // FIXME, names too similar #define eHallOfFameMons1 (struct HallofFameMons*)(&gSharedMem[0x1C000]) +#define eHOFPCScreenEffect (*(struct PCScreenEffectStruct *)(gSharedMem + 0x1c000)) #define EWRAM_1C800 (*(struct Unk201C800 *)(gSharedMem + 0x1C800)) #define ewram1D000 ((struct Pokemon *)(gSharedMem + 0x1D000)) #define ewram1D000_2 ((u16 *)(gSharedMem + 0x1D000)) diff --git a/include/pc_screen_effect.h b/include/pc_screen_effect.h index a791fc66f..36661bc3b 100644 --- a/include/pc_screen_effect.h +++ b/include/pc_screen_effect.h @@ -15,5 +15,7 @@ struct PCScreenEffectStruct void sub_80C5CD4(struct PCScreenEffectStruct *unkStruct); bool8 sub_80C5DCC(void); +void sub_80C5E38(struct PCScreenEffectStruct *unkStruct); +bool8 sub_80C5F98(void); #endif //POKERUBY_PC_SCREEN_EFFECT_H diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 0f2350df2..daae82df6 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -177,6 +177,7 @@ void sub_8099310(void); bool8 sub_8099374(void); void sub_8099958(void); bool8 sub_8099990(void); +void sub_809BB90(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); @@ -670,7 +671,7 @@ void ShowPokemonStorageSystem(void) ScriptContext2_Enable(); } -void sub_8096130(void) +void FieldCB_ReturnToOverworld(void) { u8 taskId = CreateTask(Task_PokemonStorageSystem, 80); gTasks[taskId].data[0] = 0; @@ -688,7 +689,7 @@ void StorageSystemCreatePrimaryMenu(u8 whichMenu) void sub_80961A8(void) { gUnknown_02038474 = gPokemonStorageSystemPtr->unk_0005; - gFieldCallback = sub_8096130; + gFieldCallback = FieldCB_ReturnToOverworld; SetMainCallback2(c2_exit_to_overworld_2_switch); } @@ -1947,6 +1948,131 @@ void sub_8097974(void) } } +void sub_8097A64(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_JUMP_TO_WHICH_BOX); + sub_8096264(&ePokemonStorageSystem.unk_2370, 0x0007, 0xdaca, 3); + sub_809634C(gPokemonStorage.currentBox); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + ePokemonStorageSystem.unk_08b2 = sub_8096368(); + switch (ePokemonStorageSystem.unk_08b2) + { + case 200: + break; + default: + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + if (ePokemonStorageSystem.unk_08b2 == 201 || ePokemonStorageSystem.unk_08b2 == gPokemonStorage.currentBox) + { + sub_809A860(1); + SetPSSCallback(sub_8096C84); + } + else + { + ePokemonStorageSystem.unk_0004++; + } + break; + } + break; + case 2: + sub_8099C70(ePokemonStorageSystem.unk_08b2); + ePokemonStorageSystem.unk_0004++; + break; + case 3: + if (!sub_8099D34()) + { + gPokemonStorage.currentBox = ePokemonStorageSystem.unk_08b2; + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097B44(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + sub_809BB90(); + BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); + ePokemonStorageSystem.unk_0004++; + break; + case 1: + if (!UpdatePaletteFade()) + { + gUnknown_0203847F = 1; + ePokemonStorageSystem.unk_0006 = 1; + SetMainCallback2(sub_8096B5C); + } + break; + } +} + +void sub_8097BA0(void) +{ + switch (ePokemonStorageSystem.unk_0004) + { + case 0: + if (sub_809BF20()) + { + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_HOLDING_POKE); + ePokemonStorageSystem.unk_0004 = 1; + } + else + { + PlaySE(SE_SELECT); + PrintStorageActionText(PC_TEXT_EXIT_BOX); + sub_8098A38(0); + ePokemonStorageSystem.unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + switch (ProcessMenuInputNoWrap()) + { + case 1: + case -1: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 0: + PlaySE(SE_PC_OFF); + sub_8098A5C(); + ePokemonStorageSystem.unk_0004++; + break; + } + break; + case 3: + ePokemonStorageSystem.unk_000c.tileTag = 0x000e; + ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; + ePokemonStorageSystem.unk_000c.unk04 = 20; + ePokemonStorageSystem.unk_000c.unk06 = 0; + sub_80C5E38(&ePokemonStorageSystem.unk_000c); + ePokemonStorageSystem.unk_0004++; + break; + case 4: + if (sub_80C5F98()) + { + gPlayerPartyCount = CalculatePlayerPartyCount(); + SetMainCallback2(sub_80961A8); + } + break; + } +} + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { diff --git a/src/scene/hall_of_fame.c b/src/scene/hall_of_fame.c index 812c28137..ef5e6f873 100644 --- a/src/scene/hall_of_fame.c +++ b/src/scene/hall_of_fame.c @@ -90,11 +90,7 @@ static bool8 sub_81438C4(void); // functions from different files void sub_81439D0(void); -void sub_80C5E38(void*); // ? -bool8 sub_80C5DCC(void); -bool8 sub_80C5F98(void); void ReturnFromHallOfFamePC(void); -u16 SpeciesToPokedexNum(u16 species); void remove_some_task(void); // data and gfx @@ -130,9 +126,10 @@ static const s16 sHallOfFame_MonsHalfTeamPositions[3][4] = {-41, 214, 184, 64} }; -static const struct HallofFameMon sDummyFameMon = +static const struct PCScreenEffectStruct sDummyFameMon = { - 0x3EA03EA, 0, 0, 0, {0} + .tileTag = 0x3ea, + .paletteTag = 0x3ea }; static const u8 sUnused2[6] = {2, 1, 3, 6, 4, 5}; @@ -800,20 +797,15 @@ void sub_81428CC(void) } break; case 3: - { - struct HallofFameMons* fameMons; - - REG_BLDCNT = 0; - REG_BLDALPHA = 0; - REG_BLDY = 0; - sub_81435B8(); + REG_BLDCNT = 0; + REG_BLDALPHA = 0; + REG_BLDY = 0; + sub_81435B8(); - fameMons = eHallOfFameMons1; - fameMons->mons[0] = sDummyFameMon; + eHOFPCScreenEffect = sDummyFameMon; - sub_80C5CD4((struct PCScreenEffectStruct *)fameMons); - gMain.state++; - } + sub_80C5CD4(&eHOFPCScreenEffect); + gMain.state++; break; case 4: AnimateSprites(); @@ -1022,12 +1014,9 @@ static void sub_8142DF4(u8 taskID) static void sub_8142F78(u8 taskID) { - struct HallofFameMons* fameMons; - CpuSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x200); - fameMons = eHallOfFameMons1; - fameMons->mons[0] = sDummyFameMon; - sub_80C5E38(fameMons); + eHOFPCScreenEffect = sDummyFameMon; + sub_80C5E38(&eHOFPCScreenEffect); gTasks[taskID].func = sub_8142FCC; } -- cgit v1.2.3 From ca2fbbad15daa12858d01eb87ab17a8d41eeffa5 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 8 Jan 2018 22:25:48 -0500 Subject: sDummyPCScreenEffect --> sPCScreenEffectTemplate --- src/scene/hall_of_fame.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/scene/hall_of_fame.c b/src/scene/hall_of_fame.c index ef5e6f873..4740c086d 100644 --- a/src/scene/hall_of_fame.c +++ b/src/scene/hall_of_fame.c @@ -126,8 +126,7 @@ static const s16 sHallOfFame_MonsHalfTeamPositions[3][4] = {-41, 214, 184, 64} }; -static const struct PCScreenEffectStruct sDummyFameMon = -{ +static const struct PCScreenEffectStruct sPCScreenEffectTemplate = { .tileTag = 0x3ea, .paletteTag = 0x3ea }; @@ -802,7 +801,7 @@ void sub_81428CC(void) REG_BLDY = 0; sub_81435B8(); - eHOFPCScreenEffect = sDummyFameMon; + eHOFPCScreenEffect = sPCScreenEffectTemplate; sub_80C5CD4(&eHOFPCScreenEffect); gMain.state++; @@ -1015,7 +1014,7 @@ static void sub_8142DF4(u8 taskID) static void sub_8142F78(u8 taskID) { CpuSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x200); - eHOFPCScreenEffect = sDummyFameMon; + eHOFPCScreenEffect = sPCScreenEffectTemplate; sub_80C5E38(&eHOFPCScreenEffect); gTasks[taskID].func = sub_8142FCC; } -- cgit v1.2.3 From 7b7f11119ac386e51910b957f855eade7e40381b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 00:15:28 -0500 Subject: through sub_8097DE0 --- asm/pokemon_storage_system.s | 177 ----------------------------------- data/pokemon_storage_system.s | 50 ---------- src/pokemon/pokemon_storage_system.c | 109 +++++++++++++++++++++ 3 files changed, 109 insertions(+), 227 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 85e29b183..6b4ccbc06 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,183 +5,6 @@ .text - thumb_func_start sub_8097CC0 -sub_8097CC0: @ 8097CC0 - push {r4,lr} - ldr r0, _08097CD8 @ =gSharedMem - ldrb r1, [r0, 0x4] - adds r4, r0, 0 - cmp r1, 0x4 - bls _08097CCE - b _08097DD0 -_08097CCE: - lsls r0, r1, 2 - ldr r1, _08097CDC @ =_08097CE0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08097CD8: .4byte gSharedMem -_08097CDC: .4byte _08097CE0 - .align 2, 0 -_08097CE0: - .4byte _08097CF4 - .4byte _08097D38 - .4byte _08097D4C - .4byte _08097D94 - .4byte _08097DB8 -_08097CF4: - bl sub_809BF20 - lsls r0, 24 - cmp r0, 0 - beq _08097D18 - movs r0, 0x20 - bl PlaySE - movs r0, 0xF - bl PrintStorageActionText - ldr r1, _08097D14 @ =gSharedMem - movs r0, 0x1 - strb r0, [r1, 0x4] - b _08097DD0 - .align 2, 0 -_08097D14: .4byte gSharedMem -_08097D18: - movs r0, 0x5 - bl PlaySE - movs r0, 0x12 - bl PrintStorageActionText - movs r0, 0 - bl sub_8098A38 - ldr r1, _08097D34 @ =gSharedMem - movs r0, 0x2 - strb r0, [r1, 0x4] - b _08097DD0 - .align 2, 0 -_08097D34: .4byte gSharedMem -_08097D38: - ldr r0, _08097D48 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0xF3 - ands r0, r1 - cmp r0, 0 - beq _08097DD0 - b _08097D6C - .align 2, 0 -_08097D48: .4byte gMain -_08097D4C: - bl ProcessMenuInputNoWrap - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08097D6C - cmp r1, 0 - bgt _08097D66 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08097D7C - b _08097DD0 -_08097D66: - cmp r1, 0x1 - beq _08097D7C - b _08097DD0 -_08097D6C: - bl sub_8098A5C - ldr r0, _08097D78 @ =sub_8096C84 - bl SetPSSCallback - b _08097DD0 - .align 2, 0 -_08097D78: .4byte sub_8096C84 -_08097D7C: - movs r0, 0x3 - bl PlaySE - bl sub_8098A5C - ldr r1, _08097D90 @ =gSharedMem - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _08097DD0 - .align 2, 0 -_08097D90: .4byte gSharedMem -_08097D94: - movs r1, 0 - movs r0, 0xE - strh r0, [r4, 0xC] - ldr r0, _08097DB4 @ =0x0000dad0 - strh r0, [r4, 0xE] - movs r0, 0x14 - strh r0, [r4, 0x10] - strh r1, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0xC - bl sub_80C5E38 - ldrb r0, [r4, 0x4] - adds r0, 0x1 - strb r0, [r4, 0x4] - b _08097DD0 - .align 2, 0 -_08097DB4: .4byte 0x0000dad0 -_08097DB8: - bl sub_80C5F98 - lsls r0, 24 - cmp r0, 0 - beq _08097DD0 - bl CalculatePlayerPartyCount - ldr r1, _08097DD8 @ =gPlayerPartyCount - strb r0, [r1] - ldr r0, _08097DDC @ =sub_80961A8 - bl SetMainCallback2 -_08097DD0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097DD8: .4byte gPlayerPartyCount -_08097DDC: .4byte sub_80961A8 - thumb_func_end sub_8097CC0 - - thumb_func_start sub_8097DE0 -sub_8097DE0: @ 8097DE0 - push {lr} - ldr r1, _08097E1C @ =gSharedMem - movs r0, 0 - strb r0, [r1, 0x7] - strh r0, [r1, 0x8] - strh r0, [r1, 0xA] - ldr r1, _08097E20 @ =REG_BG3CNT - ldr r2, _08097E24 @ =0x00001e0f - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _08097E28 @ =gPokemonStorageScrollingBGTile - ldr r2, _08097E2C @ =0x0600e000 - ldr r0, _08097E30 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _08097E34 @ =0x80000010 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _08097E38 @ =gPokemonStorageScrollingBGTilemap - ldr r1, _08097E3C @ =0x0600f000 - bl LZ77UnCompVram - ldr r0, _08097E40 @ =gPokemonStorageScrollingBGPalette - movs r1, 0xD0 - movs r2, 0x10 - bl LoadPalette - pop {r0} - bx r0 - .align 2, 0 -_08097E1C: .4byte gSharedMem -_08097E20: .4byte REG_BG3CNT -_08097E24: .4byte 0x00001e0f -_08097E28: .4byte gPokemonStorageScrollingBGTile -_08097E2C: .4byte 0x0600e000 -_08097E30: .4byte 0x040000d4 -_08097E34: .4byte 0x80000010 -_08097E38: .4byte gPokemonStorageScrollingBGTilemap -_08097E3C: .4byte 0x0600f000 -_08097E40: .4byte gPokemonStorageScrollingBGPalette - thumb_func_end sub_8097DE0 - thumb_func_start sub_8097E44 sub_8097E44: @ 8097E44 push {lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 4340301ba..4a59bb504 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,56 +3,6 @@ .section .rodata - .align 2 -gPokemonStorageScrollingBGPalette:: @ 83B6A10 - .incbin "graphics/pokemon_storage/scrolling_bg.gbapal" - - .align 2 -gPokemonStorageScrollingBGTile:: @ 83B6A30 - .incbin "graphics/pokemon_storage/scrolling_bg.4bpp" - - .align 2 -gPokemonStorageScrollingBGTilemap:: @ 83B6A50 - .incbin "graphics/pokemon_storage/scrolling_bg_map.bin.lz" - -@ unused tilemap? - .2byte 0x1281 - .2byte 0x1282 - .2byte 0x1283 - .2byte 0x1284 - .2byte 0x1285 - .2byte 0x1286 - .2byte 0x1287 - .2byte 0x1288 - .2byte 0x128C - .2byte 0x128D - .2byte 0x128E - .2byte 0x128F - .2byte 0x1290 - .2byte 0x1291 - .2byte 0x1292 - .2byte 0x1293 - .2byte 0x0281 - .2byte 0x0282 - .2byte 0x0283 - .2byte 0x0284 - .2byte 0x0285 - .2byte 0x0286 - .2byte 0x0287 - .2byte 0x0288 - .2byte 0x028C - .2byte 0x028D - .2byte 0x028E - .2byte 0x028F - .2byte 0x0290 - .2byte 0x0291 - .2byte 0x0292 - .2byte 0x0293 - .2byte 0x12AD - .2byte 0x12AE - .2byte 0x12A8 - .2byte 0x12A8 - .align 2 WaveformPalette: @ 83B6B94 .incbin "graphics/pokemon_storage/waveform.gbapal" diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index daae82df6..5fd43cfb8 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -89,6 +89,7 @@ struct PokemonStorageSystemData { u8 unk_0004; u8 unk_0005; u8 unk_0006; + u8 unk_0007; u16 unk_0008; u16 unk_000a; struct PCScreenEffectStruct unk_000c; @@ -266,6 +267,51 @@ const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/b const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); +const u16 gPokemonStorageScrollingBGPalette[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.gbapal"); + +const u16 gPokemonStorageScrollingBGTile[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.4bpp"); + +const u8 gPokemonStorageScrollingBGTilemap[] = INCBIN_U8("graphics/pokemon_storage/scrolling_bg_map.bin.lz"); + +const u16 sUnknownTilemap[] = { + 0x1281, + 0x1282, + 0x1283, + 0x1284, + 0x1285, + 0x1286, + 0x1287, + 0x1288, + 0x128C, + 0x128D, + 0x128E, + 0x128F, + 0x1290, + 0x1291, + 0x1292, + 0x1293, + 0x0281, + 0x0282, + 0x0283, + 0x0284, + 0x0285, + 0x0286, + 0x0287, + 0x0288, + 0x028C, + 0x028D, + 0x028E, + 0x028F, + 0x0290, + 0x0291, + 0x0292, + 0x0293, + 0x12AD, + 0x12AE, + 0x12A8, + 0x12A8 +}; + extern const struct StorageAction gPCStorageActionTexts[]; extern const struct PokemonStorageSystemData *gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; @@ -2073,6 +2119,69 @@ void sub_8097BA0(void) } } +void sub_8097CC0(void) { + switch (ePokemonStorageSystem.unk_0004) { + case 0: + if (sub_809BF20()) { + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_HOLDING_POKE); + ePokemonStorageSystem.unk_0004 = 1; + } + else { + PlaySE(SE_SELECT); + PrintStorageActionText(PC_TEXT_CONTINUE_BOX); + sub_8098A38(0); + ePokemonStorageSystem.unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + switch (ProcessMenuInputNoWrap()) { + case 0: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case -1: + case 1: + PlaySE(SE_PC_OFF); + sub_8098A5C(); + ePokemonStorageSystem.unk_0004++; + break; + } + break; + case 3: + ePokemonStorageSystem.unk_000c.tileTag = 0x000e; + ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; + ePokemonStorageSystem.unk_000c.unk04 = 20; + ePokemonStorageSystem.unk_000c.unk06 = 0; + sub_80C5E38(&ePokemonStorageSystem.unk_000c); + ePokemonStorageSystem.unk_0004++; + break; + case 4: + if (sub_80C5F98()) { + gPlayerPartyCount = CalculatePlayerPartyCount(); + SetMainCallback2(sub_80961A8); + } + break; + } +} + +void sub_8097DE0(void) +{ + ePokemonStorageSystem.unk_0007 = 0; + ePokemonStorageSystem.unk_0008 = 0; + ePokemonStorageSystem.unk_000a = 0; + REG_BG3CNT = BGCNT_PRIORITY(3) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(30); + DmaCopy16Defvars(3, gPokemonStorageScrollingBGTile, BG_SCREEN_ADDR(28), sizeof gPokemonStorageScrollingBGTile); + LZ77UnCompVram(gPokemonStorageScrollingBGTilemap, BG_SCREEN_ADDR(30)); + LoadPalette(gPokemonStorageScrollingBGPalette, 0xd0, 0x10); +} + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { -- cgit v1.2.3 From 6503d0fee3d9423640f563745692af35f7298c8b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 10:09:55 -0500 Subject: through sub_8097E70; split PSS in 3 --- asm/pokemon_storage_system.s | 118 --- data/pokemon_storage_system.s | 70 -- include/graphics.h | 5 + include/pokemon_storage_system.h | 120 +++ include/text.h | 2 + ld_script.txt | 6 +- src/pokemon/pokemon_storage_system.c | 1553 ------------------------------- src/pokemon/pokemon_storage_system_2.c | 1566 ++++++++++++++++++++++++++++++++ src/pokemon/pokemon_storage_system_3.c | 16 + src/pokemon/pokemon_summary_screen.c | 29 +- src/pokenav_before.c | 1 - sym_ewram.txt | 5 +- 12 files changed, 1730 insertions(+), 1761 deletions(-) create mode 100644 src/pokemon/pokemon_storage_system_2.c create mode 100644 src/pokemon/pokemon_storage_system_3.c diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 6b4ccbc06..bd1007f5d 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,124 +5,6 @@ .text - thumb_func_start sub_8097E44 -sub_8097E44: @ 8097E44 - push {lr} - ldr r1, _08097E6C @ =gSharedMem - ldrb r0, [r1, 0x7] - adds r0, 0x1 - strb r0, [r1, 0x7] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08097E66 - movs r0, 0 - strb r0, [r1, 0x7] - ldrh r0, [r1, 0x8] - subs r0, 0x1 - strh r0, [r1, 0x8] - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] -_08097E66: - pop {r0} - bx r0 - .align 2, 0 -_08097E6C: .4byte gSharedMem - thumb_func_end sub_8097E44 - - thumb_func_start sub_8097E70 -sub_8097E70: @ 8097E70 - push {r4,lr} - sub sp, 0x10 - ldr r0, _08097F2C @ =gPSSMenuHeader_Gfx - ldr r1, _08097F30 @ =0x06005000 - bl LZ77UnCompVram - ldr r0, _08097F34 @ =gPSSMenuHeader_Tilemap - ldr r4, _08097F38 @ =gUnknown_02039760 - adds r1, r4, 0 - bl LZ77UnCompWram - ldr r0, _08097F3C @ =0x06007800 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r1, 0xA - str r1, [sp, 0x8] - movs r1, 0x14 - str r1, [sp, 0xC] - movs r1, 0 - movs r2, 0 - adds r3, r4, 0 - bl sub_809D034 - ldr r0, _08097F40 @ =gPSSMenu1_Pal - movs r1, 0x10 - movs r2, 0x20 - bl LoadPalette - ldr r0, _08097F44 @ =gPSSMenu2_Pal - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _08097F48 @ =gUnknown_083B6D74 - movs r1, 0xB0 - movs r2, 0x20 - bl LoadPalette - ldr r0, _08097F4C @ =gUnknown_083B6D94 - movs r1, 0xC0 - movs r2, 0x20 - bl LoadPalette - ldr r4, _08097F50 @ =gUnknownPalette_81E6692+0x2 - adds r0, r4, 0 - movs r1, 0xF1 - movs r2, 0x2 - bl LoadPalette - adds r0, r4, 0 - movs r1, 0xF2 - movs r2, 0x2 - bl LoadPalette - adds r0, r4, 0 - adds r0, 0x8 - movs r1, 0xF3 - movs r2, 0x2 - bl LoadPalette - adds r0, r4, 0 - adds r0, 0x16 - movs r1, 0xF4 - movs r2, 0x4 - bl LoadPalette - adds r0, r4, 0 - adds r0, 0x12 - movs r1, 0xF6 - movs r2, 0x4 - bl LoadPalette - adds r4, 0x2 - adds r0, r4, 0 - movs r1, 0xFF - movs r2, 0x2 - bl LoadPalette - ldr r0, _08097F54 @ =gWaveformSpritePalette - bl LoadSpritePalette - bl sub_80980D4 - bl sub_8097F58 - bl sub_8097FB8 - bl sub_809801C - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097F2C: .4byte gPSSMenuHeader_Gfx -_08097F30: .4byte 0x06005000 -_08097F34: .4byte gPSSMenuHeader_Tilemap -_08097F38: .4byte gUnknown_02039760 -_08097F3C: .4byte 0x06007800 -_08097F40: .4byte gPSSMenu1_Pal -_08097F44: .4byte gPSSMenu2_Pal -_08097F48: .4byte gUnknown_083B6D74 -_08097F4C: .4byte gUnknown_083B6D94 -_08097F50: .4byte gUnknownPalette_81E6692+0x2 -_08097F54: .4byte gWaveformSpritePalette - thumb_func_end sub_8097E70 - thumb_func_start sub_8097F58 sub_8097F58: @ 8097F58 push {r4,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 4a59bb504..d21bc324f 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,76 +3,6 @@ .section .rodata - .align 2 -WaveformPalette: @ 83B6B94 - .incbin "graphics/pokemon_storage/waveform.gbapal" - - .align 2 -WaveformTiles: @ 83B6BB4 - .incbin "graphics/pokemon_storage/waveform.4bpp" - - .align 2 -gUnknown_083B6D74:: @ 83B6D74 - .incbin "graphics/pokemon_storage/83B6D74.gbapal" - - .align 2 -gUnknown_083B6D94:: @ 83B6D94 - .incbin "graphics/pokemon_storage/83B6D94.gbapal" - - .align 2 -gPokemonStorageSystemPtr:: @ 83B6DB4 - .4byte gSharedMem - - .align 2 -gUnknown_083B6DB8:: @ 83B6DB8 - .4byte gTileBuffer - - .align 2 -gWaveformSpritePalette:: @ 83B6DBC - obj_pal WaveformPalette, 56013 - - .align 2 -gWaveformSpriteSheet:: @ 83B6DC4 - obj_tiles WaveformTiles, 0x1C0, 5 - - .align 2 -gUnknown_083B6DCC:: @ 83B6DCC - obj_tiles gSharedMem + 0x2784, 0x800, 2 - - .align 2 -gUnknown_083B6DD4:: @ 83B6DD4 - obj_pal gSharedMem + 0x2704, 56007 - - .align 2 -gSpriteTemplate_83B6DDC:: @ 83B6DDC - spr_template 2, 56007, gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gPCStorageActionTexts:: @ 83B6DF4 - .4byte PCText_ExitBox, 0 - .4byte PCText_WhatYouDo, 0 - .4byte PCText_PickATheme, 0 - .4byte PCText_PickAWallpaper, 0 - .4byte PCText_IsSelected, 1 - .4byte PCText_JumpToWhichBox, 0 - .4byte PCText_DepositInWhichBox, 0 - .4byte PCText_WasDeposited, 1 - .4byte PCText_BoxIsFull, 0 - .4byte PCText_ReleasePoke, 0 - .4byte PCText_WasReleased, 4 - .4byte PCText_ByeBye, 6 - .4byte PCText_MarkPoke, 0 - .4byte PCText_LastPoke, 0 - .4byte PCText_PartyFull, 0 - .4byte PCText_HoldingPoke, 0 - .4byte PCText_WhichOneWillTake, 0 - .4byte PCText_CantReleaseEgg, 0 - .4byte PCText_ContinueBox, 0 - .4byte PCText_CameBack, 1 - .4byte PCText_Worried, 0 - .4byte PCText_Surprise, 0 - .4byte PCText_PleaseRemoveMail, 0 - .align 2 gOamData_83B6EAC:: @ 83B6EAC .2byte 0x0000 diff --git a/include/graphics.h b/include/graphics.h index 00a210350..91ba45acd 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2743,4 +2743,9 @@ extern const u16 gCableCar_Pal[]; extern const u16 gCableCarBG_Pal[]; extern const u8 gCableCarBG_Gfx[]; +extern const u8 gPSSMenuHeader_Gfx[]; +extern const u8 gPSSMenuHeader_Tilemap[]; +extern const u16 gPSSMenu1_Pal[]; +extern const u16 gPSSMenu2_Pal[]; + #endif // GUARD_GRAPHICS_H diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 9fe3436ef..51ebda88f 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -1,8 +1,128 @@ #ifndef GUARD_POKEMON_STORAGE_SYSTEM_H #define GUARD_POKEMON_STORAGE_SYSTEM_H +#include "pc_screen_effect.h" +#include "mon_markings.h" + +enum { + PC_TEXT_EXIT_BOX, + PC_TEXT_WHAT_YOU_DO, + PC_TEXT_PICK_A_THEME, + PC_TEXT_PICK_A_WALLPAPER, + PC_TEXT_IS_SELECTED, + PC_TEXT_JUMP_TO_WHICH_BOX, + PC_TEXT_DEPOSIT_IN_WHICH_BOX, + PC_TEXT_WAS_DEPOSITED, + PC_TEXT_BOX_IS_FULL, + PC_TEXT_RELEASE_POKE, + PC_TEXT_WAS_RELEASED, + PC_TEXT_BYE_BYE, + PC_TEXT_MARK_POKE, + PC_TEXT_LAST_POKE, + PC_TEXT_PARTY_FULL, + PC_TEXT_HOLDING_POKE, + PC_TEXT_WHICH_ONE_WILL_TAKE, + PC_TEXT_CANT_RELEASE_EGG, + PC_TEXT_CONTINUE_BOX, + PC_TEXT_CAME_BACK, + PC_TEXT_WORRIED, + PC_TEXT_SURPRISE, + PC_TEXT_PLEASE_REMOVE_MAIL +}; + +enum { + PC_TEXT_FMT_NORMAL, + PC_TEXT_FMT_MON_NAME, + PC_TEXT_FMT_UNK_02, + PC_TEXT_FMT_UNK_03, + PC_TEXT_FMT_MON_NAME_2, + PC_TEXT_FMT_UNK_05, + PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK +}; + +struct StorageAction { + const u8 *text; + u8 format; +}; + +struct PSS_MenuStringPtrs { + const u8 *text; + const u8 *desc; +}; + +struct UnkStruct_2000020 { + struct UnkStruct_2000020 *unk_00; + u8 unk_04; + u8 unk_05; +}; + +struct UnkPSSStruct_2002370 { + struct Sprite *unk_0000; + struct Sprite *unk_0004[4]; + u32 unk_0014[3]; + struct Sprite *unk_0020[2]; + u8 filler_0028[0x214]; + u8 curBox; + u8 unk_023d; + u8 unk_023e; + u16 unk_0240; + u16 unk_0242; +}; // 0244 + +struct PokemonStorageSystemData { + void (*unk_0000)(void); + u8 unk_0004; + u8 unk_0005; + u8 unk_0006; + u8 unk_0007; + u16 unk_0008; + u16 unk_000a; + struct PCScreenEffectStruct unk_000c; + struct UnkStruct_2000020 unk_0020[274]; // refine size later + u8 filler_08b0[2]; + s16 unk_08b2; + u16 unk_08b4; + u8 filler_08b6[0x4a8]; + s16 unk_0d5e; + s16 unk_0d60; + u8 filler_0d62[0x490]; + u16 unk_11f2; + u8 filler_11f4[2]; + u8 unk_11f6; + u8 unk_11f7; + u8 unk_11f8; + u8 unk_11f9; + u8 unk_11fa[0xc2]; + struct PokemonMarkMenu unk_12bc; + struct UnkPSSStruct_2002370 unk_2370; + u8 filler_25b4[0xd8]; + u8 unk_268c; + u8 unk_268d; + u8 unk_268e; + struct Pokemon *unk_2690; + u8 unk_2694[18]; + u8 unk_26a6[62]; + u8 unk_26e4[0x20]; + u16 unk_2704[0x40]; + u8 unk_2784[0x800]; +}; + +extern EWRAM_DATA u16 gUnknown_02039760[0x600]; + +extern struct PokemonStorageSystemData *const gPokemonStorageSystemPtr; +extern u8 *const gUnknown_083B6DB8; + +void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3); +void sub_809634C(u8 curBox); +u8 sub_8096368(void); +void sub_809635C(void); +void sub_8096310(void); +void sub_80961A8(void); + +void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); void BoxMonRestorePP(struct BoxPokemon *); void party_compaction(void); +struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); #endif // GUARD_POKEMON_STORAGE_SYSTEM_H diff --git a/include/text.h b/include/text.h index ebc4ebe7e..281a0535a 100644 --- a/include/text.h +++ b/include/text.h @@ -253,4 +253,6 @@ void StripExtCtrlCodes(u8 *str); s32 StringCompareWithoutExtCtrlCodes(const u8 *str1, const u8 *str2); u8 sub_8004FD0(struct Window *win, u8 *dest, const u8 *src, u16 tileDataStartOffset, u8 left, u16 top, u8 width, u32 a8); +extern const u16 gUnknownPalette_81E6692[]; + #endif // GUARD_TEXT_H diff --git a/ld_script.txt b/ld_script.txt index 898c5ae88..2157e6da5 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -128,8 +128,10 @@ SECTIONS { src/battle/battle_party_menu.o(.text); asm/unk_text_8095904.o(.text); src/pokemon/pokemon_storage_system.o(.text); + src/pokemon/pokemon_storage_system_2.o(.text); asm/pokemon_storage_system.o(.text); - src/pokemon/pokemon_storage_system.o(.text.8098898); + src/pokemon/pokemon_storage_system_2.o(.text.8098898); + src/pokemon/pokemon_storage_system_3.o(.text); asm/pokemon_storage_system.o(.text_8098A38); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); @@ -511,6 +513,8 @@ SECTIONS { src/engine/trainer_card.o(.rodata); src/battle/battle_party_menu.o(.rodata); src/pokemon/pokemon_storage_system.o(.rodata); + src/pokemon/pokemon_storage_system_2.o(.rodata); + src/pokemon/pokemon_storage_system_3.o(.rodata); data/pokemon_storage_system.o(.rodata); src/pokemon/pokemon_icon.o(.rodata); src/pokemon/pokemon_summary_screen.o(.rodata); diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 5fd43cfb8..c91e45d7a 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -3,123 +3,16 @@ #include "constants/songs.h" #include "sound.h" #include "field_weather.h" -#include "mon_markings.h" #include "overworld.h" -#include "mail_data.h" #include "field_fadetransition.h" #include "menu.h" #include "main.h" #include "strings.h" #include "string_util.h" #include "event_data.h" -#include "ewram.h" #include "script.h" -#include "pokemon_summary_screen.h" -#include "pc_screen_effect.h" -#include "naming_screen.h" #include "pokemon_storage_system.h" -enum { - PC_TEXT_EXIT_BOX, - PC_TEXT_WHAT_YOU_DO, - PC_TEXT_PICK_A_THEME, - PC_TEXT_PICK_A_WALLPAPER, - PC_TEXT_IS_SELECTED, - PC_TEXT_JUMP_TO_WHICH_BOX, - PC_TEXT_DEPOSIT_IN_WHICH_BOX, - PC_TEXT_WAS_DEPOSITED, - PC_TEXT_BOX_IS_FULL, - PC_TEXT_RELEASE_POKE, - PC_TEXT_WAS_RELEASED, - PC_TEXT_BYE_BYE, - PC_TEXT_MARK_POKE, - PC_TEXT_LAST_POKE, - PC_TEXT_PARTY_FULL, - PC_TEXT_HOLDING_POKE, - PC_TEXT_WHICH_ONE_WILL_TAKE, - PC_TEXT_CANT_RELEASE_EGG, - PC_TEXT_CONTINUE_BOX, - PC_TEXT_CAME_BACK, - PC_TEXT_WORRIED, - PC_TEXT_SURPRISE, - PC_TEXT_PLEASE_REMOVE_MAIL -}; - -enum { - PC_TEXT_FMT_NORMAL, - PC_TEXT_FMT_MON_NAME, - PC_TEXT_FMT_UNK_02, - PC_TEXT_FMT_UNK_03, - PC_TEXT_FMT_MON_NAME_2, - PC_TEXT_FMT_UNK_05, - PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK -}; - -struct StorageAction { - u8 *text; - u8 format; -}; - -struct PSS_MenuStringPtrs { - const u8 *text; - const u8 *desc; -}; - -struct UnkStruct_2000020 { - struct UnkStruct_2000020 *unk_00; - u8 unk_04; - u8 unk_05; -}; - -struct UnkPSSStruct_2002370 { - struct Sprite *unk_0000; - struct Sprite *unk_0004[4]; - u32 unk_0014[3]; - struct Sprite *unk_0020[2]; - u8 filler_0028[0x214]; - u8 curBox; - u8 unk_023d; - u8 unk_023e; - u16 unk_0240; - u16 unk_0242; -}; // 0244 - -struct PokemonStorageSystemData { - void (*unk_0000)(void); - u8 unk_0004; - u8 unk_0005; - u8 unk_0006; - u8 unk_0007; - u16 unk_0008; - u16 unk_000a; - struct PCScreenEffectStruct unk_000c; - struct UnkStruct_2000020 unk_0020[274]; // refine size later - u8 filler_08b0[2]; - s16 unk_08b2; - u16 unk_08b4; - u8 filler_08b6[0x4a8]; - s16 unk_0d5e; - s16 unk_0d60; - u8 filler_0d62[0x490]; - u16 unk_11f2; - u8 filler_11f4[2]; - u8 unk_11f6; - u8 unk_11f7; - u8 unk_11f8; - u8 unk_11f9; - u8 unk_11fa[0xc2]; - struct PokemonMarkMenu unk_12bc; - struct UnkPSSStruct_2002370 unk_2370; - u8 filler_25b4[0xd8]; - u8 unk_268c; - u8 unk_268d; - u8 unk_268e; - struct Pokemon *unk_2690; - u8 unk_2694[18]; - u8 unk_26a6[62]; - u8 unk_26e4[80]; -}; - void StorageSystemCreatePrimaryMenu(u8 whichMenu); void sub_80963D0(u8 curBox); void sub_809658C(void); @@ -128,95 +21,6 @@ void sub_809662C(void); void sub_809665C(void); void sub_80966F4(const u8 *sourceString, u16 x, u16 y); void sub_8096784(struct Sprite *sprite); -void task_intro_29(u8 whichMenu); -void sub_8096884(void); -void sub_8096AFC(void); -void sub_8096B38(void); -void SetPSSCallback(void (*func)(void)); -void sub_8096BF0(void); -void sub_8096C68(void); -void sub_8096C84(void); -void sub_8096FC8(void); -void sub_8097004(void); -void sub_8097078(void); -void sub_80972A8(void); -void sub_80972FC(void); -void c3_0808DC50(void); -void sub_8097390(void); -void sub_809746C(void); -void sub_8097594(void); -void sub_8097788(void); -void sub_80977E4(void); -void sub_8097858(void); -void sub_809789C(void); -void sub_8097974(void); -void sub_8097A64(void); -void sub_8097B44(void); -void sub_8097BA0(void); -void sub_8097CC0(void); -void sub_8097DE0(void); -void sub_8097E44(void); -void sub_8097E70(void); -void BoxSetMosaic(void); -void sub_809801C(void); -void sub_8098400(void); -void add_to_c3_somehow(void); -bool8 sub_80985CC(void); -void sub_80986E8(void); -void sub_8098710(void); -void sub_8098734(void); -void sub_80987DC(void); -void sub_809880C(void); -bool8 sub_8098830(void); -void PrintStorageActionText(u8 index); -void sub_8098A38(u8); -void sub_8098A5C(void); -void sub_8098A80(void); -void sub_8098AA8(u8 a0); -void sub_8098B48(void); -void sub_8099310(void); -bool8 sub_8099374(void); -void sub_8099958(void); -bool8 sub_8099990(void); -void sub_809BB90(void); -void sub_8099BF8(u8 a0); -void sub_8099C70(u8 whichBox); -bool8 sub_8099D34(void); -void sub_8099DCC(u8 a0); -bool8 sub_8099E08(void); -void sub_809A860(u8 a0); -struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); -void sub_809AA24(void); -void sub_809AA98(void); -bool8 sub_809AC00(void); -void sub_809B0C0(u8 a0); -void sub_809B0D4(void); -void sub_809B0E0(void); -u8 sub_809B0F4(void); -void sub_809B100(u8 a0); -bool8 sub_809B130(void); -void sub_809B440(void); -bool8 sub_809B62C(u8); -void sub_809B6BC(void); -void sub_809B6DC(void); -bool8 sub_809B734(void); -void sub_809B760(void); -void sub_809B7AC(void); -void sub_809B7D4(void); -s8 sub_809B960(void); -void sub_809BBC0(void); -void sub_809BC18(void); -void sub_809BD14(void); -void sub_809BDD8(u8 markings); -bool8 sub_809BE80(void); -bool8 sub_809BEBC(void); -bool8 sub_809BF20(void); -bool8 sub_809BF48(void); -u8 sub_809CA40(void); -void sub_809CE84(void); -s16 sub_809CF30(void); -void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); -void sub_809CFF0(void); const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, @@ -267,73 +71,11 @@ const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/b const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -const u16 gPokemonStorageScrollingBGPalette[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.gbapal"); - -const u16 gPokemonStorageScrollingBGTile[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.4bpp"); - -const u8 gPokemonStorageScrollingBGTilemap[] = INCBIN_U8("graphics/pokemon_storage/scrolling_bg_map.bin.lz"); - -const u16 sUnknownTilemap[] = { - 0x1281, - 0x1282, - 0x1283, - 0x1284, - 0x1285, - 0x1286, - 0x1287, - 0x1288, - 0x128C, - 0x128D, - 0x128E, - 0x128F, - 0x1290, - 0x1291, - 0x1292, - 0x1293, - 0x0281, - 0x0282, - 0x0283, - 0x0284, - 0x0285, - 0x0286, - 0x0287, - 0x0288, - 0x028C, - 0x028D, - 0x028E, - 0x028F, - 0x0290, - 0x0291, - 0x0292, - 0x0293, - 0x12AD, - 0x12AE, - 0x12A8, - 0x12A8 -}; - -extern const struct StorageAction gPCStorageActionTexts[]; -extern const struct PokemonStorageSystemData *gPokemonStorageSystemPtr; -extern u8 *const gUnknown_083B6DB8; - EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; EWRAM_DATA u8 gUnknown_02038470[3] = {}; EWRAM_DATA u8 gUnknown_02038473 = 0; EWRAM_DATA u8 gUnknown_02038474 = 0; EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478 = NULL; -EWRAM_DATA u8 gUnknown_0203847C = 0; -EWRAM_DATA u8 gUnknown_0203847D = 0; -EWRAM_DATA u8 gUnknown_0203847E = 0; -EWRAM_DATA u8 gUnknown_0203847F = 0; -EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; -EWRAM_DATA u8 gUnknown_020384E4 = 0; -EWRAM_DATA u8 gUnknown_020384E5 = 0; -EWRAM_DATA u8 gUnknown_020384E6 = 0; -EWRAM_DATA u8 gUnknown_020384E7 = 0; -EWRAM_DATA u8 gUnknown_020384E8 = 0; -EWRAM_DATA u8 gUnknown_020384E9 = 0; -EWRAM_DATA u16 gUnknown_020384EA = 0; -EWRAM_DATA u32 gUnknown_020384EC = 0; static u8 CountPokemonInBoxN(u8 boxId) { @@ -967,1298 +709,3 @@ void sub_8096784(struct Sprite *sprite) } } } - -void task_intro_29(u8 whichMenu) -{ - gUnknown_0203847D = whichMenu; - ePokemonStorageSystem.unk_0005 = whichMenu; - SetMainCallback2(sub_8096884); -} - -void sub_80967DC(void) -{ - REG_BG0HOFS = 0; - REG_BG0VOFS = 0; - REG_BG1HOFS = 0; - REG_BG1VOFS = 0; - REG_BG2VOFS = 0; - REG_BG2HOFS = 0; - REG_BG3HOFS = 0; - REG_BG3VOFS = 0; -} - -void sub_8096804(void) -{ - ResetPaletteFade(); - ResetSpriteData(); - FreeSpriteTileRanges(); - FreeAllSpritePalettes(); - ResetTasks(); - gReservedSpriteTileCount = 0x280; - sub_809CFDC(ePokemonStorageSystem.unk_0020, ePokemonStorageSystem.unk_0020 + 1, 8); - gKeyRepeatStartDelay = 20; -} - -void sub_8096848(void) -{ - sub_809B0D4(); - gUnknown_0203847C = (ePokemonStorageSystem.unk_0005 == 1 ? 1 : 0); - gUnknown_0203847E = 0; -} - -void sub_8096874(void) -{ - REG_DISPCNT = DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON; -} - -void sub_8096884(void) -{ - switch (gMain.state) - { - case 0: - SetVBlankCallback(NULL); - REG_DISPCNT = 0; - sub_8096804(); - gMain.state++; - break; - case 1: - SetUpWindowConfig(&gWindowConfig_81E6D00); - gMain.state++; - break; - case 2: - InitMenuWindow(&gWindowConfig_81E6D00); - MenuZeroFillScreen(); - gMain.state++; - break; - case 3: - sub_80967DC(); - sub_8096848(); - gMain.state++; - break; - case 4: - sub_8098B48(); - sub_809AA24(); - gMain.state++; - break; - case 5: - sub_8097DE0(); - gMain.state++; - break; - case 6: - sub_8097E70(); - gMain.state++; - break; - case 7: - sub_8098400(); - gMain.state++; - break; - case 8: - sub_8099BF8(gPokemonStorage.currentBox); - ePokemonStorageSystem.unk_12bc.baseTileTag = 0x000a; - ePokemonStorageSystem.unk_12bc.basePaletteTag = 0xdacb; - sub_80F727C(&ePokemonStorageSystem.unk_12bc); - sub_80F7404(); - gMain.state++; - break; - case 9: - sub_8096874(); - SetPSSCallback(sub_8096BF0); - SetMainCallback2(sub_8096B38); - SetVBlankCallback(sub_8096AFC); - gMain.state++; - break; - } -} - -void sub_80969A0(void) -{ - switch (gMain.state) - { - case 0: - SetVBlankCallback(NULL); - REG_DISPCNT = 0x0000; - ePokemonStorageSystem.unk_0005 = gUnknown_0203847D; - sub_8096804(); - if (gUnknown_0203847F == 1) - sub_809BBC0(); - if (gUnknown_0203847F == 0) - sub_809BD14(); - gMain.state++; - break; - case 1: - SetUpWindowConfig(&gWindowConfig_81E6D00); - gMain.state++; - break; - case 2: - InitMenuWindow(&gWindowConfig_81E6D00); - MenuZeroFillScreen(); - gMain.state++; - break; - case 3: - sub_80967DC(); - gMain.state++; - break; - case 4: - sub_8098B48(); - sub_809AA98(); - gMain.state++; - break; - case 5: - sub_8097DE0(); - gMain.state++; - break; - case 6: - sub_8097E70(); - gMain.state++; - break; - case 7: - sub_8098400(); - gMain.state++; - break; - case 8: - sub_8099BF8(gPokemonStorage.currentBox); - ePokemonStorageSystem.unk_12bc.baseTileTag = 0x000a; - ePokemonStorageSystem.unk_12bc.basePaletteTag = 0xdacb; - sub_80F727C(&ePokemonStorageSystem.unk_12bc); - sub_80F7404(); - gMain.state++; - break; - case 9: - BeginNormalPaletteFade(0xffffffff, 0, 16, 0, 0); - SetVBlankCallback(sub_8096AFC); - gMain.state++; - break; - case 10: - sub_8096874(); - SetPSSCallback(sub_8096C68); - SetMainCallback2(sub_8096B38); - gMain.state++; - break; - } -} - -void sub_8096AFC(void) -{ - REG_BG2HOFS = ePokemonStorageSystem.unk_08b4; - REG_BG3HOFS = ePokemonStorageSystem.unk_000a; - REG_BG3VOFS = ePokemonStorageSystem.unk_0008; - LoadOam(); - ProcessSpriteCopyRequests(); - sub_809CFF0(); - TransferPlttBuffer(); -} - -void sub_8096B38(void) -{ - ePokemonStorageSystem.unk_0000(); - sub_8097E44(); - sub_8098734(); - AnimateSprites(); - BuildOamBuffer(); -} - -void sub_8096B5C(void) -{ - switch (ePokemonStorageSystem.unk_0006) - { - case 0: - ShowPokemonSummaryScreen(ePokemonStorageSystem.unk_2690, ePokemonStorageSystem.unk_268d, ePokemonStorageSystem.unk_268c, sub_80969A0, ePokemonStorageSystem.unk_268e); - break; - case 1: - DoNamingScreen(1, gPokemonStorage.boxNames[gPokemonStorage.currentBox], 0, 0, 0, sub_80969A0); - break; - } -} - -void SetPSSCallback(void (*func)(void)) -{ - ePokemonStorageSystem.unk_0000 = func; - ePokemonStorageSystem.unk_0004 = 0; -} - -void sub_8096BF0(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - BlendPalettes(0xffffffff, 16, 0); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - PlaySE(SE_PC_LOGON); - ePokemonStorageSystem.unk_000c.tileTag = 14; - ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; - ePokemonStorageSystem.unk_000c.unk04 = 0; - ePokemonStorageSystem.unk_000c.unk06 = 0; - sub_80C5CD4(&ePokemonStorageSystem.unk_000c); - BlendPalettes(0xffffffff, 0, 0); - ePokemonStorageSystem.unk_0004++; - break; - case 2: - if (sub_80C5DCC()) - SetPSSCallback(sub_8096C84); - break; - } -} - -void sub_8096C68(void) -{ - if (!UpdatePaletteFade()) - SetPSSCallback(sub_8096C84); -} - -void sub_8096C84(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - switch (sub_809CA40()) - { - case 1: - PlaySE(SE_SELECT); - ePokemonStorageSystem.unk_0004 = 1; - break; - case 5: - if (ePokemonStorageSystem.unk_0005 != 2) - { - PrintStorageActionText(PC_TEXT_WHICH_ONE_WILL_TAKE); - ePokemonStorageSystem.unk_0004 = 3; - } - else - { - sub_809B0D4(); - SetPSSCallback(sub_8096FC8); - } - break; - case 6: - if (ePokemonStorageSystem.unk_0005 == 2) - { - if (sub_809BF20() && ItemIsMail(ePokemonStorageSystem.unk_11f2)) - { - ePokemonStorageSystem.unk_0004 = 5; - } - else - { - SetPSSCallback(sub_8097004); - } - } - break; - case 4: - SetPSSCallback(sub_8097BA0); - break; - case 16: - SetPSSCallback(sub_8097CC0); - break; - case 7: - PlaySE(SE_SELECT); - SetPSSCallback(sub_809789C); - break; - case 8: - PlaySE(SE_SELECT); - SetPSSCallback(sub_8097078); - break; - case 9: - PlaySE(SE_SELECT); - ePokemonStorageSystem.unk_08b2 = gPokemonStorage.currentBox + 1; - if (ePokemonStorageSystem.unk_08b2 > 13) - ePokemonStorageSystem.unk_08b2 = 0; - sub_8099C70(ePokemonStorageSystem.unk_08b2); - ePokemonStorageSystem.unk_0004 = 2; - break; - case 10: - PlaySE(SE_SELECT); - ePokemonStorageSystem.unk_08b2 = gPokemonStorage.currentBox - 1; - if (ePokemonStorageSystem.unk_08b2 < 0) - ePokemonStorageSystem.unk_08b2 = 13; - sub_8099C70(ePokemonStorageSystem.unk_08b2); - ePokemonStorageSystem.unk_0004 = 2; - break; - case 11: - if (!sub_809BE80()) - { - if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) - { - ePokemonStorageSystem.unk_0004 = 5; - } - else - { - PlaySE(SE_SELECT); - SetPSSCallback(sub_809746C); - } - } - else - { - ePokemonStorageSystem.unk_0004 = 4; - } - break; - case 13: - if (sub_809BE80()) - { - ePokemonStorageSystem.unk_0004 = 4; - } - else - { - PlaySE(SE_SELECT); - SetPSSCallback(sub_80972A8); - } - break; - case 14: - if (!sub_809BEBC()) - { - ePokemonStorageSystem.unk_0004 = 4; - } - else - { - PlaySE(SE_SELECT); - SetPSSCallback(c3_0808DC50); - } - break; - case 12: - PlaySE(SE_SELECT); - SetPSSCallback(sub_8097390); - break; - case 15: - PlaySE(SE_SELECT); - SetPSSCallback(sub_80972FC); - break; - } - break; - case 1: - if (!sub_809AC00()) - { - if (sub_809BF48()) - sub_80986E8(); - else - sub_8098710(); - if (ePokemonStorageSystem.unk_11f6) - BoxSetMosaic(); - ePokemonStorageSystem.unk_0004 = 0; - } - break; - case 2: - if (!sub_8099D34()) - { - gPokemonStorage.currentBox = ePokemonStorageSystem.unk_08b2; - if (!gUnknown_0203847C && !sub_809BF20()) - { - sub_809B440(); - BoxSetMosaic(); - } - ePokemonStorageSystem.unk_0004 = 0; - } - break; - case 3: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) - { - sub_8098A5C(); - ePokemonStorageSystem.unk_0004 = 0; - } - break; - case 4: - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_LAST_POKE); - ePokemonStorageSystem.unk_0004 = 6; - break; - case 5: - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); - ePokemonStorageSystem.unk_0004 = 6; - break; - case 6: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) - { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8096FC8(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809880C(); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_8098830()) - SetPSSCallback(sub_8096C84); - break; - } -} - -void sub_8097004(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PlaySE(SE_SELECT); - add_to_c3_somehow(); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_80985CC()) - { - sub_809B0C0(sub_809B0F4()); - ePokemonStorageSystem.unk_0004++; - } - break; - case 2: - if (!sub_809AC00()) - { - if (ePokemonStorageSystem.unk_11f6) - BoxSetMosaic(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097078(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_IS_SELECTED); - sub_809CE84(); - ePokemonStorageSystem.unk_0004 = 1; - break; - case 1: - switch (sub_809CF30()) - { - case -1: - case 0: - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case 3: - if (sub_809BE80()) - { - ePokemonStorageSystem.unk_0004 = 2; - } - else - { - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_80972A8); - } - break; - case 5: - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_80972FC); - break; - case 4: - if (!sub_809BEBC()) - { - ePokemonStorageSystem.unk_0004 = 2; - } - else - { - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(c3_0808DC50); - } - break; - case 2: - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_8097390); - break; - case 1: - if (sub_809BE80()) - { - ePokemonStorageSystem.unk_0004 = 2; - } - else if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) - { - ePokemonStorageSystem.unk_0004 = 3; - } - else - { - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_809746C); - } - break; - case 7: - if (sub_809BE80()) - { - ePokemonStorageSystem.unk_0004 = 2; - } - else if (ePokemonStorageSystem.unk_11f9) - { - ePokemonStorageSystem.unk_0004 = 4; - } - else if (ItemIsMail(ePokemonStorageSystem.unk_11f2)) - { - ePokemonStorageSystem.unk_0004 = 3; - } - else - { - PlaySE(SE_SELECT); - SetPSSCallback(sub_8097594); - } - break; - case 6: - PlaySE(SE_SELECT); - SetPSSCallback(sub_8097788); - break; - case 8: - PlaySE(SE_SELECT); - SetPSSCallback(sub_80977E4); - break; - } - break; - case 2: - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_LAST_POKE); - ePokemonStorageSystem.unk_0004 = 5; - break; - case 4: - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_CANT_RELEASE_EGG); - ePokemonStorageSystem.unk_0004 = 5; - break; - case 3: - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); - ePokemonStorageSystem.unk_0004 = 5; - break; - case 5: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) - { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_80972A8(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809B100(0); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_809B130()) - { - if (gUnknown_0203847C) - SetPSSCallback(sub_8097858); - else - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_80972FC(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809B100(1); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_809B130()) - { - if (gUnknown_0203847C) - SetPSSCallback(sub_8097858); - else - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void c3_0808DC50(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809B100(2); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_809B130()) - { - BoxSetMosaic(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097390(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - if (CalculatePlayerPartyCount() == 6) - { - PrintStorageActionText(PC_TEXT_PARTY_FULL); - ePokemonStorageSystem.unk_0004 = 1; - } - else - { - sub_809B0E0(); - sub_809B100(0); - ePokemonStorageSystem.unk_0004 = 2; - } - break; - case 1: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) - { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - case 2: - if (!sub_809B130()) - { - sub_809880C(); - ePokemonStorageSystem.unk_0004++; - } - break; - case 3: - if (!sub_8098830()) - { - sub_809B100(1); - ePokemonStorageSystem.unk_0004++; - } - break; - case 4: - if (!sub_809B130()) - { - sub_80987DC(); - ePokemonStorageSystem.unk_0004++; - } - break; - case 5: - SetPSSCallback(sub_8097004); - break; - } -} - -void sub_809746C(void) -{ - u8 r4; - - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); - sub_8096264(&ePokemonStorageSystem.unk_2370, 0x0007, 0xdaca, 3); - sub_809634C(gUnknown_0203847E); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - r4 = sub_8096368(); - if (r4 == 200); - else if (r4 == 201) - { - sub_8098A5C(); - sub_809635C(); - sub_8096310(); - SetPSSCallback(sub_8096C84); - } - else - { - if (sub_809B62C(r4)) - { - sub_8098A5C(); - sub_809635C(); - sub_8096310(); - ePokemonStorageSystem.unk_0004 = 2; - } - else - { - PrintStorageActionText(PC_TEXT_BOX_IS_FULL); - ePokemonStorageSystem.unk_0004 = 4; - } - gUnknown_0203847E = r4; - } - break; - case 2: - party_compaction(); - sub_8099310(); - ePokemonStorageSystem.unk_0004++; - break; - case 3: - if (!sub_8099374()) - { - sub_809B6BC(); - BoxSetMosaic(); - sub_80987DC(); - SetPSSCallback(sub_8096C84); - } - break; - case 4: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); - ePokemonStorageSystem.unk_0004 = 1; - } - break; - } -} - -void sub_8097594(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_RELEASE_POKE); - sub_8098A38(1); - ePokemonStorageSystem.unk_0004++; - // fallthrough - case 1: - switch (ProcessMenuInputNoWrap()) - { - case -1: - case 1: - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case 0: - sub_8098A5C(); - sub_809B7D4(); - sub_809B6DC(); - ePokemonStorageSystem.unk_0004++; - break; - } - break; - case 2: - sub_809B960(); - if (!sub_809B734()) - { - while (1) - { - s8 r0 = sub_809B960(); - if (r0 == 1) - { - ePokemonStorageSystem.unk_0004++; - break; - } - if (r0 == 0) - { - ePokemonStorageSystem.unk_0004 = 8; - break; - } - } - } - break; - case 3: - sub_809B760(); - sub_809801C(); - PrintStorageActionText(PC_TEXT_WAS_RELEASED); - ePokemonStorageSystem.unk_0004++; - break; - case 4: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - PrintStorageActionText(PC_TEXT_BYE_BYE); - ePokemonStorageSystem.unk_0004++; - } - break; - case 5: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - sub_8098A5C(); - if (gUnknown_0203847C) - { - party_compaction(); - sub_8099310(); - ePokemonStorageSystem.unk_0004++; - } - else - { - ePokemonStorageSystem.unk_0004 = 7; - } - } - break; - case 6: - if (!sub_8099374()) - { - sub_809B440(); - BoxSetMosaic(); - sub_80987DC(); - ePokemonStorageSystem.unk_0004++; - } - break; - case 7: - SetPSSCallback(sub_8096C84); - break; - case 8: - PrintStorageActionText(PC_TEXT_WAS_RELEASED); - ePokemonStorageSystem.unk_0004++; - break; - case 9: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - PrintStorageActionText(PC_TEXT_SURPRISE); - ePokemonStorageSystem.unk_0004++; - } - break; - case 10: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - sub_8098A5C(); - sub_8099958(); - ePokemonStorageSystem.unk_0004++; - } - break; - case 11: - if (!sub_8099990()) - { - sub_809B7AC(); - PrintStorageActionText(PC_TEXT_CAME_BACK); - ePokemonStorageSystem.unk_0004++; - } - break; - case 12: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - PrintStorageActionText(PC_TEXT_WORRIED); - ePokemonStorageSystem.unk_0004++; - } - break; - case 13: - if (gMain.newKeys & (A_BUTTON | B_BUTTON)) - { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097788(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809BC18(); - BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!UpdatePaletteFade()) - { - gUnknown_0203847F = 0; - ePokemonStorageSystem.unk_0006 = 0; - SetMainCallback2(sub_8096B5C); - } - break; - } -} - -void sub_80977E4(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_MARK_POKE); - ePokemonStorageSystem.unk_12bc.markings = ePokemonStorageSystem.unk_11f7; - sub_80F7418(ePokemonStorageSystem.unk_11f7, 0xb0, 0x10); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_80F7500()) - { - sub_80F7470(); - sub_8098A5C(); - sub_809BDD8(ePokemonStorageSystem.unk_12bc.markings); - sub_809801C(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097858(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - party_compaction(); - sub_8099310(); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!sub_8099374()) - { - sub_80987DC(); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_809789C(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_WHAT_YOU_DO); - sub_809CE84(); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - switch (sub_809CF30()) - { - case -1: - case 0: - sub_809A860(1); - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case 11: - PlaySE(SE_SELECT); - SetPSSCallback(sub_8097B44); - break; - case 10: - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_8097974); - break; - case 9: - PlaySE(SE_SELECT); - sub_8098A5C(); - SetPSSCallback(sub_8097A64); - break; - } - break; - } -} - -void sub_8097974(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_8098A80(); - PrintStorageActionText(PC_TEXT_PICK_A_THEME); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - ePokemonStorageSystem.unk_0d5e = sub_809CF30(); - switch (ePokemonStorageSystem.unk_0d5e) - { - case -1: - sub_809A860(1); - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case 12 ... 15: - PlaySE(SE_SELECT); - ePokemonStorageSystem.unk_0d5e -= 12; - sub_8098AA8(ePokemonStorageSystem.unk_0d5e); - PrintStorageActionText(PC_TEXT_PICK_A_WALLPAPER); - ePokemonStorageSystem.unk_0004++; - break; - } - break; - case 2: - ePokemonStorageSystem.unk_0d60 = sub_809CF30(); - switch (ePokemonStorageSystem.unk_0d60) - { - case -1: - sub_8098A5C(); - ePokemonStorageSystem.unk_0004 = 0; - break; - case -2: - break; - default: - PlaySE(SE_SELECT); - sub_8098A5C(); - ePokemonStorageSystem.unk_0d60 -= 16; - sub_8099DCC(ePokemonStorageSystem.unk_0d60); - ePokemonStorageSystem.unk_0004++; - break; - } - break; - case 3: - if (!sub_8099E08()) - { - sub_809A860(1); - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097A64(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - PrintStorageActionText(PC_TEXT_JUMP_TO_WHICH_BOX); - sub_8096264(&ePokemonStorageSystem.unk_2370, 0x0007, 0xdaca, 3); - sub_809634C(gPokemonStorage.currentBox); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - ePokemonStorageSystem.unk_08b2 = sub_8096368(); - switch (ePokemonStorageSystem.unk_08b2) - { - case 200: - break; - default: - sub_8098A5C(); - sub_809635C(); - sub_8096310(); - if (ePokemonStorageSystem.unk_08b2 == 201 || ePokemonStorageSystem.unk_08b2 == gPokemonStorage.currentBox) - { - sub_809A860(1); - SetPSSCallback(sub_8096C84); - } - else - { - ePokemonStorageSystem.unk_0004++; - } - break; - } - break; - case 2: - sub_8099C70(ePokemonStorageSystem.unk_08b2); - ePokemonStorageSystem.unk_0004++; - break; - case 3: - if (!sub_8099D34()) - { - gPokemonStorage.currentBox = ePokemonStorageSystem.unk_08b2; - SetPSSCallback(sub_8096C84); - } - break; - } -} - -void sub_8097B44(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - sub_809BB90(); - BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); - ePokemonStorageSystem.unk_0004++; - break; - case 1: - if (!UpdatePaletteFade()) - { - gUnknown_0203847F = 1; - ePokemonStorageSystem.unk_0006 = 1; - SetMainCallback2(sub_8096B5C); - } - break; - } -} - -void sub_8097BA0(void) -{ - switch (ePokemonStorageSystem.unk_0004) - { - case 0: - if (sub_809BF20()) - { - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_HOLDING_POKE); - ePokemonStorageSystem.unk_0004 = 1; - } - else - { - PlaySE(SE_SELECT); - PrintStorageActionText(PC_TEXT_EXIT_BOX); - sub_8098A38(0); - ePokemonStorageSystem.unk_0004 = 2; - } - break; - case 1: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) - { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - case 2: - switch (ProcessMenuInputNoWrap()) - { - case 1: - case -1: - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case 0: - PlaySE(SE_PC_OFF); - sub_8098A5C(); - ePokemonStorageSystem.unk_0004++; - break; - } - break; - case 3: - ePokemonStorageSystem.unk_000c.tileTag = 0x000e; - ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; - ePokemonStorageSystem.unk_000c.unk04 = 20; - ePokemonStorageSystem.unk_000c.unk06 = 0; - sub_80C5E38(&ePokemonStorageSystem.unk_000c); - ePokemonStorageSystem.unk_0004++; - break; - case 4: - if (sub_80C5F98()) - { - gPlayerPartyCount = CalculatePlayerPartyCount(); - SetMainCallback2(sub_80961A8); - } - break; - } -} - -void sub_8097CC0(void) { - switch (ePokemonStorageSystem.unk_0004) { - case 0: - if (sub_809BF20()) { - PlaySE(SE_HAZURE); - PrintStorageActionText(PC_TEXT_HOLDING_POKE); - ePokemonStorageSystem.unk_0004 = 1; - } - else { - PlaySE(SE_SELECT); - PrintStorageActionText(PC_TEXT_CONTINUE_BOX); - sub_8098A38(0); - ePokemonStorageSystem.unk_0004 = 2; - } - break; - case 1: - if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) { - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - } - break; - case 2: - switch (ProcessMenuInputNoWrap()) { - case 0: - sub_8098A5C(); - SetPSSCallback(sub_8096C84); - break; - case -1: - case 1: - PlaySE(SE_PC_OFF); - sub_8098A5C(); - ePokemonStorageSystem.unk_0004++; - break; - } - break; - case 3: - ePokemonStorageSystem.unk_000c.tileTag = 0x000e; - ePokemonStorageSystem.unk_000c.paletteTag = 0xdad0; - ePokemonStorageSystem.unk_000c.unk04 = 20; - ePokemonStorageSystem.unk_000c.unk06 = 0; - sub_80C5E38(&ePokemonStorageSystem.unk_000c); - ePokemonStorageSystem.unk_0004++; - break; - case 4: - if (sub_80C5F98()) { - gPlayerPartyCount = CalculatePlayerPartyCount(); - SetMainCallback2(sub_80961A8); - } - break; - } -} - -void sub_8097DE0(void) -{ - ePokemonStorageSystem.unk_0007 = 0; - ePokemonStorageSystem.unk_0008 = 0; - ePokemonStorageSystem.unk_000a = 0; - REG_BG3CNT = BGCNT_PRIORITY(3) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(30); - DmaCopy16Defvars(3, gPokemonStorageScrollingBGTile, BG_SCREEN_ADDR(28), sizeof gPokemonStorageScrollingBGTile); - LZ77UnCompVram(gPokemonStorageScrollingBGTilemap, BG_SCREEN_ADDR(30)); - LoadPalette(gPokemonStorageScrollingBGPalette, 0xd0, 0x10); -} - -asm(".section .text.8098898"); - -void PrintStorageActionText(u8 index) { - u8 *ptr; - - MenuDrawTextWindow(10, 16, 29, 19); - - switch (gPCStorageActionTexts[index].format) - { - - case PC_TEXT_FMT_UNK_02: - ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); - ptr = StringCopy(ptr, ePokemonStorageSystem.unk_11fa); - break; - - case PC_TEXT_FMT_UNK_05: - ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); - ptr = StringCopy(ptr, ePokemonStorageSystem.unk_26e4); - break; - - case PC_TEXT_FMT_MON_NAME: - // {var} + " is selected." - ptr = StringCopy(ePokemonStorageSystem.unk_2694, ePokemonStorageSystem.unk_11fa); - ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); - break; - - case PC_TEXT_FMT_MON_NAME_2: - // {var} + " was released." - ptr = StringCopy(ePokemonStorageSystem.unk_2694, ePokemonStorageSystem.unk_26e4); -#if ENGLISH - ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); -#elif GERMAN - ptr = de_sub_8073174(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); -#endif - break; - - case PC_TEXT_FMT_UNK_03: - { - u8 *stringLength; - u8 *text; - - text = gPCStorageActionTexts[index].text; - stringLength = &text[StringLength(text)] + 1; - - ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); - ptr = StringCopy(ptr, ePokemonStorageSystem.unk_11fa); - ptr = StringCopy(ptr, stringLength); - } - break; - - case PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK: - // "Bye-bye, ".substr(0, -1) + {var} + "Bye-bye, !".substr(-1, 1) - { - u8 *stringLength; - u8 *text; - - text = gPCStorageActionTexts[index].text; - stringLength = &text[StringLength(text)] - 1; - - ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); - ptr = StringCopy(ptr - 1, ePokemonStorageSystem.unk_26e4); - ptr = StringCopy(ptr, stringLength); - } - break; - - case PC_TEXT_FMT_NORMAL: - default: - ptr = StringCopy(ePokemonStorageSystem.unk_2694, gPCStorageActionTexts[index].text); - break; - } - - while (ptr < ePokemonStorageSystem.unk_26a6) - { - ptr[0] = CHAR_SPACE; - ptr++; - } - - ptr[0] = EOS; - MenuPrint(ePokemonStorageSystem.unk_2694, 11, 17); -} diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c new file mode 100644 index 000000000..5c72d02e9 --- /dev/null +++ b/src/pokemon/pokemon_storage_system_2.c @@ -0,0 +1,1566 @@ + +// Includes +#include "global.h" +#include "constants/songs.h" +#include "sound.h" +#include "ewram.h" +#include "task.h" +#include "main.h" +#include "palette.h" +#include "menu.h" +#include "graphics.h" +#include "strings.h" +#include "string_util.h" +#include "pokemon_summary_screen.h" +#include "mail_data.h" +#include "naming_screen.h" +#include "pokemon_storage_system.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA u8 gUnknown_0203847C = 0; +EWRAM_DATA u8 gUnknown_0203847D = 0; +EWRAM_DATA u8 gUnknown_0203847E = 0; +EWRAM_DATA u8 gUnknown_0203847F = 0; +EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; +EWRAM_DATA u8 gUnknown_020384E4 = 0; +EWRAM_DATA u8 gUnknown_020384E5 = 0; +EWRAM_DATA u8 gUnknown_020384E6 = 0; +EWRAM_DATA u8 gUnknown_020384E7 = 0; +EWRAM_DATA u8 gUnknown_020384E8 = 0; +EWRAM_DATA u8 gUnknown_020384E9 = 0; +EWRAM_DATA u16 gUnknown_020384EA = 0; +EWRAM_DATA u32 gUnknown_020384EC = 0; + +// Static ROM declarations + +void sub_8096884(void); +void sub_8096AFC(void); +void sub_8096B38(void); +void SetPSSCallback(void (*func)(void)); +void sub_8096BF0(void); +void sub_8096C68(void); +void sub_8096C84(void); +void sub_8096FC8(void); +void sub_8097004(void); +void sub_8097078(void); +void sub_80972A8(void); +void sub_80972FC(void); +void c3_0808DC50(void); +void sub_8097390(void); +void sub_809746C(void); +void sub_8097594(void); +void sub_8097788(void); +void sub_80977E4(void); +void sub_8097858(void); +void sub_809789C(void); +void sub_8097974(void); +void sub_8097A64(void); +void sub_8097B44(void); +void sub_8097BA0(void); +void sub_8097CC0(void); +void sub_8097DE0(void); +void sub_8097E44(void); +void sub_8097E70(void); +void sub_8097F58(void); +void sub_8097FB8(void); +void BoxSetMosaic(void); +void sub_809801C(void); +void sub_80980D4(void); +void sub_8098400(void); +void add_to_c3_somehow(void); +bool8 sub_80985CC(void); +void sub_80986E8(void); +void sub_8098710(void); +void sub_8098734(void); +void sub_80987DC(void); +void sub_809880C(void); +bool8 sub_8098830(void); +void PrintStorageActionText(u8 index); +void sub_8098A38(u8); +void sub_8098A5C(void); +void sub_8098A80(void); +void sub_8098AA8(u8 a0); +void sub_8098B48(void); +void sub_8099310(void); +bool8 sub_8099374(void); +void sub_8099958(void); +bool8 sub_8099990(void); +void sub_809BB90(void); +void sub_8099BF8(u8 a0); +void sub_8099C70(u8 whichBox); +bool8 sub_8099D34(void); +void sub_8099DCC(u8 a0); +bool8 sub_8099E08(void); +void sub_809A860(u8 a0); +void sub_809AA24(void); +void sub_809AA98(void); +bool8 sub_809AC00(void); +void sub_809B0C0(u8 a0); +void sub_809B0D4(void); +void sub_809B0E0(void); +u8 sub_809B0F4(void); +void sub_809B100(u8 a0); +bool8 sub_809B130(void); +void sub_809B440(void); +bool8 sub_809B62C(u8); +void sub_809B6BC(void); +void sub_809B6DC(void); +bool8 sub_809B734(void); +void sub_809B760(void); +void sub_809B7AC(void); +void sub_809B7D4(void); +s8 sub_809B960(void); +void sub_809BBC0(void); +void sub_809BC18(void); +void sub_809BD14(void); +void sub_809BDD8(u8 markings); +bool8 sub_809BE80(void); +bool8 sub_809BEBC(void); +bool8 sub_809BF20(void); +bool8 sub_809BF48(void); +u8 sub_809CA40(void); +void sub_809CE84(void); +s16 sub_809CF30(void); +void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); +void sub_809CFF0(void); +void sub_809D034(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); + +// .rodata + +const u16 gPokemonStorageScrollingBGPalette[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.gbapal"); + +const u16 gPokemonStorageScrollingBGTile[] = INCBIN_U16("graphics/pokemon_storage/scrolling_bg.4bpp"); + +const u8 gPokemonStorageScrollingBGTilemap[] = INCBIN_U8("graphics/pokemon_storage/scrolling_bg_map.bin.lz"); + +const u16 sUnknownTilemap[] = { + 0x1281, + 0x1282, + 0x1283, + 0x1284, + 0x1285, + 0x1286, + 0x1287, + 0x1288, + 0x128C, + 0x128D, + 0x128E, + 0x128F, + 0x1290, + 0x1291, + 0x1292, + 0x1293, + 0x0281, + 0x0282, + 0x0283, + 0x0284, + 0x0285, + 0x0286, + 0x0287, + 0x0288, + 0x028C, + 0x028D, + 0x028E, + 0x028F, + 0x0290, + 0x0291, + 0x0292, + 0x0293, + 0x12AD, + 0x12AE, + 0x12A8, + 0x12A8 +}; + +const u16 WaveformPalette[] = INCBIN_U16("graphics/pokemon_storage/waveform.gbapal"); + +const u8 WaveformTiles[] = INCBIN_U8("graphics/pokemon_storage/waveform.4bpp"); + +const u16 gUnknown_083B6D74[] = INCBIN_U16("graphics/pokemon_storage/83B6D74.gbapal"); + +const u16 gUnknown_083B6D94[] = INCBIN_U16("graphics/pokemon_storage/83B6D94.gbapal"); + +struct PokemonStorageSystemData *const gPokemonStorageSystemPtr = &ePokemonStorageSystem; + +u8 *const gUnknown_083B6DB8 = gTileBuffer; + +const struct SpritePalette gWaveformSpritePalette = { + WaveformPalette, 0xdacd +}; + +const struct SpriteSheet gWaveformSpriteSheet = { + WaveformTiles, 0x1c0, 0x0005 +}; + +const struct SpriteSheet gUnknown_083B6DCC = { + ePokemonStorageSystem.unk_2784, 0x800, 0x0002 +}; + +const struct SpritePalette gUnknown_083B6DD4 = { + ePokemonStorageSystem.unk_2704, 0xdac7 +}; + +const struct OamData gOamData_83B6EAC; + +const struct SpriteTemplate gSpriteTemplate_83B6DDC = { + 0x0002, 0xdac7, &gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct StorageAction gPCStorageActionTexts[] = { + {PCText_ExitBox, 0}, + {PCText_WhatYouDo, 0}, + {PCText_PickATheme, 0}, + {PCText_PickAWallpaper, 0}, + {PCText_IsSelected, 1}, + {PCText_JumpToWhichBox, 0}, + {PCText_DepositInWhichBox, 0}, + {PCText_WasDeposited, 1}, + {PCText_BoxIsFull, 0}, + {PCText_ReleasePoke, 0}, + {PCText_WasReleased, 4}, + {PCText_ByeBye, 6}, + {PCText_MarkPoke, 0}, + {PCText_LastPoke, 0}, + {PCText_PartyFull, 0}, + {PCText_HoldingPoke, 0}, + {PCText_WhichOneWillTake, 0}, + {PCText_CantReleaseEgg, 0}, + {PCText_ContinueBox, 0}, + {PCText_CameBack, 1}, + {PCText_Worried, 0}, + {PCText_Surprise, 0}, + {PCText_PleaseRemoveMail, 0} +}; + +// .text + + +void task_intro_29(u8 whichMenu) +{ + gUnknown_0203847D = whichMenu; + gPokemonStorageSystemPtr->unk_0005 = whichMenu; + SetMainCallback2(sub_8096884); +} + +void sub_80967DC(void) +{ + REG_BG0HOFS = 0; + REG_BG0VOFS = 0; + REG_BG1HOFS = 0; + REG_BG1VOFS = 0; + REG_BG2VOFS = 0; + REG_BG2HOFS = 0; + REG_BG3HOFS = 0; + REG_BG3VOFS = 0; +} + +void sub_8096804(void) +{ + ResetPaletteFade(); + ResetSpriteData(); + FreeSpriteTileRanges(); + FreeAllSpritePalettes(); + ResetTasks(); + gReservedSpriteTileCount = 0x280; + sub_809CFDC(gPokemonStorageSystemPtr->unk_0020, gPokemonStorageSystemPtr->unk_0020 + 1, 8); + gKeyRepeatStartDelay = 20; +} + +void sub_8096848(void) +{ + sub_809B0D4(); + gUnknown_0203847C = (gPokemonStorageSystemPtr->unk_0005 == 1 ? 1 : 0); + gUnknown_0203847E = 0; +} + +void sub_8096874(void) +{ + REG_DISPCNT = DISPCNT_OBJ_1D_MAP | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON; +} + +void sub_8096884(void) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + REG_DISPCNT = 0; + sub_8096804(); + gMain.state++; + break; + case 1: + SetUpWindowConfig(&gWindowConfig_81E6D00); + gMain.state++; + break; + case 2: + InitMenuWindow(&gWindowConfig_81E6D00); + MenuZeroFillScreen(); + gMain.state++; + break; + case 3: + sub_80967DC(); + sub_8096848(); + gMain.state++; + break; + case 4: + sub_8098B48(); + sub_809AA24(); + gMain.state++; + break; + case 5: + sub_8097DE0(); + gMain.state++; + break; + case 6: + sub_8097E70(); + gMain.state++; + break; + case 7: + sub_8098400(); + gMain.state++; + break; + case 8: + sub_8099BF8(gPokemonStorage.currentBox); + gPokemonStorageSystemPtr->unk_12bc.baseTileTag = 0x000a; + gPokemonStorageSystemPtr->unk_12bc.basePaletteTag = 0xdacb; + sub_80F727C(&gPokemonStorageSystemPtr->unk_12bc); + sub_80F7404(); + gMain.state++; + break; + case 9: + sub_8096874(); + SetPSSCallback(sub_8096BF0); + SetMainCallback2(sub_8096B38); + SetVBlankCallback(sub_8096AFC); + gMain.state++; + break; + } +} + +void sub_80969A0(void) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + REG_DISPCNT = 0x0000; + gPokemonStorageSystemPtr->unk_0005 = gUnknown_0203847D; + sub_8096804(); + if (gUnknown_0203847F == 1) + sub_809BBC0(); + if (gUnknown_0203847F == 0) + sub_809BD14(); + gMain.state++; + break; + case 1: + SetUpWindowConfig(&gWindowConfig_81E6D00); + gMain.state++; + break; + case 2: + InitMenuWindow(&gWindowConfig_81E6D00); + MenuZeroFillScreen(); + gMain.state++; + break; + case 3: + sub_80967DC(); + gMain.state++; + break; + case 4: + sub_8098B48(); + sub_809AA98(); + gMain.state++; + break; + case 5: + sub_8097DE0(); + gMain.state++; + break; + case 6: + sub_8097E70(); + gMain.state++; + break; + case 7: + sub_8098400(); + gMain.state++; + break; + case 8: + sub_8099BF8(gPokemonStorage.currentBox); + gPokemonStorageSystemPtr->unk_12bc.baseTileTag = 0x000a; + gPokemonStorageSystemPtr->unk_12bc.basePaletteTag = 0xdacb; + sub_80F727C(&gPokemonStorageSystemPtr->unk_12bc); + sub_80F7404(); + gMain.state++; + break; + case 9: + BeginNormalPaletteFade(0xffffffff, 0, 16, 0, 0); + SetVBlankCallback(sub_8096AFC); + gMain.state++; + break; + case 10: + sub_8096874(); + SetPSSCallback(sub_8096C68); + SetMainCallback2(sub_8096B38); + gMain.state++; + break; + } +} + +void sub_8096AFC(void) +{ + REG_BG2HOFS = gPokemonStorageSystemPtr->unk_08b4; + REG_BG3HOFS = gPokemonStorageSystemPtr->unk_000a; + REG_BG3VOFS = gPokemonStorageSystemPtr->unk_0008; + LoadOam(); + ProcessSpriteCopyRequests(); + sub_809CFF0(); + TransferPlttBuffer(); +} + +void sub_8096B38(void) +{ + gPokemonStorageSystemPtr->unk_0000(); + sub_8097E44(); + sub_8098734(); + AnimateSprites(); + BuildOamBuffer(); +} + +void sub_8096B5C(void) +{ + switch (gPokemonStorageSystemPtr->unk_0006) + { + case 0: + ShowPokemonSummaryScreen(gPokemonStorageSystemPtr->unk_2690, gPokemonStorageSystemPtr->unk_268d, gPokemonStorageSystemPtr->unk_268c, sub_80969A0, gPokemonStorageSystemPtr->unk_268e); + break; + case 1: + DoNamingScreen(1, gPokemonStorage.boxNames[gPokemonStorage.currentBox], 0, 0, 0, sub_80969A0); + break; + } +} + +void SetPSSCallback(void (*func)(void)) +{ + gPokemonStorageSystemPtr->unk_0000 = func; + gPokemonStorageSystemPtr->unk_0004 = 0; +} + +void sub_8096BF0(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + BlendPalettes(0xffffffff, 16, 0); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + PlaySE(SE_PC_LOGON); + gPokemonStorageSystemPtr->unk_000c.tileTag = 14; + gPokemonStorageSystemPtr->unk_000c.paletteTag = 0xdad0; + gPokemonStorageSystemPtr->unk_000c.unk04 = 0; + gPokemonStorageSystemPtr->unk_000c.unk06 = 0; + sub_80C5CD4(&gPokemonStorageSystemPtr->unk_000c); + BlendPalettes(0xffffffff, 0, 0); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 2: + if (sub_80C5DCC()) + SetPSSCallback(sub_8096C84); + break; + } +} + +void sub_8096C68(void) +{ + if (!UpdatePaletteFade()) + SetPSSCallback(sub_8096C84); +} + +void sub_8096C84(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + switch (sub_809CA40()) + { + case 1: + PlaySE(SE_SELECT); + gPokemonStorageSystemPtr->unk_0004 = 1; + break; + case 5: + if (gPokemonStorageSystemPtr->unk_0005 != 2) + { + PrintStorageActionText(PC_TEXT_WHICH_ONE_WILL_TAKE); + gPokemonStorageSystemPtr->unk_0004 = 3; + } + else + { + sub_809B0D4(); + SetPSSCallback(sub_8096FC8); + } + break; + case 6: + if (gPokemonStorageSystemPtr->unk_0005 == 2) + { + if (sub_809BF20() && ItemIsMail(gPokemonStorageSystemPtr->unk_11f2)) + { + gPokemonStorageSystemPtr->unk_0004 = 5; + } + else + { + SetPSSCallback(sub_8097004); + } + } + break; + case 4: + SetPSSCallback(sub_8097BA0); + break; + case 16: + SetPSSCallback(sub_8097CC0); + break; + case 7: + PlaySE(SE_SELECT); + SetPSSCallback(sub_809789C); + break; + case 8: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097078); + break; + case 9: + PlaySE(SE_SELECT); + gPokemonStorageSystemPtr->unk_08b2 = gPokemonStorage.currentBox + 1; + if (gPokemonStorageSystemPtr->unk_08b2 > 13) + gPokemonStorageSystemPtr->unk_08b2 = 0; + sub_8099C70(gPokemonStorageSystemPtr->unk_08b2); + gPokemonStorageSystemPtr->unk_0004 = 2; + break; + case 10: + PlaySE(SE_SELECT); + gPokemonStorageSystemPtr->unk_08b2 = gPokemonStorage.currentBox - 1; + if (gPokemonStorageSystemPtr->unk_08b2 < 0) + gPokemonStorageSystemPtr->unk_08b2 = 13; + sub_8099C70(gPokemonStorageSystemPtr->unk_08b2); + gPokemonStorageSystemPtr->unk_0004 = 2; + break; + case 11: + if (!sub_809BE80()) + { + if (ItemIsMail(gPokemonStorageSystemPtr->unk_11f2)) + { + gPokemonStorageSystemPtr->unk_0004 = 5; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_809746C); + } + } + else + { + gPokemonStorageSystemPtr->unk_0004 = 4; + } + break; + case 13: + if (sub_809BE80()) + { + gPokemonStorageSystemPtr->unk_0004 = 4; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_80972A8); + } + break; + case 14: + if (!sub_809BEBC()) + { + gPokemonStorageSystemPtr->unk_0004 = 4; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(c3_0808DC50); + } + break; + case 12: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097390); + break; + case 15: + PlaySE(SE_SELECT); + SetPSSCallback(sub_80972FC); + break; + } + break; + case 1: + if (!sub_809AC00()) + { + if (sub_809BF48()) + sub_80986E8(); + else + sub_8098710(); + if (gPokemonStorageSystemPtr->unk_11f6) + BoxSetMosaic(); + gPokemonStorageSystemPtr->unk_0004 = 0; + } + break; + case 2: + if (!sub_8099D34()) + { + gPokemonStorage.currentBox = gPokemonStorageSystemPtr->unk_08b2; + if (!gUnknown_0203847C && !sub_809BF20()) + { + sub_809B440(); + BoxSetMosaic(); + } + gPokemonStorageSystemPtr->unk_0004 = 0; + } + break; + case 3: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + gPokemonStorageSystemPtr->unk_0004 = 0; + } + break; + case 4: + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_LAST_POKE); + gPokemonStorageSystemPtr->unk_0004 = 6; + break; + case 5: + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); + gPokemonStorageSystemPtr->unk_0004 = 6; + break; + case 6: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8096FC8(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809880C(); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_8098830()) + SetPSSCallback(sub_8096C84); + break; + } +} + +void sub_8097004(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PlaySE(SE_SELECT); + add_to_c3_somehow(); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_80985CC()) + { + sub_809B0C0(sub_809B0F4()); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 2: + if (!sub_809AC00()) + { + if (gPokemonStorageSystemPtr->unk_11f6) + BoxSetMosaic(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097078(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_IS_SELECTED); + sub_809CE84(); + gPokemonStorageSystemPtr->unk_0004 = 1; + break; + case 1: + switch (sub_809CF30()) + { + case -1: + case 0: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 3: + if (sub_809BE80()) + { + gPokemonStorageSystemPtr->unk_0004 = 2; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_80972A8); + } + break; + case 5: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_80972FC); + break; + case 4: + if (!sub_809BEBC()) + { + gPokemonStorageSystemPtr->unk_0004 = 2; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(c3_0808DC50); + } + break; + case 2: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097390); + break; + case 1: + if (sub_809BE80()) + { + gPokemonStorageSystemPtr->unk_0004 = 2; + } + else if (ItemIsMail(gPokemonStorageSystemPtr->unk_11f2)) + { + gPokemonStorageSystemPtr->unk_0004 = 3; + } + else + { + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_809746C); + } + break; + case 7: + if (sub_809BE80()) + { + gPokemonStorageSystemPtr->unk_0004 = 2; + } + else if (gPokemonStorageSystemPtr->unk_11f9) + { + gPokemonStorageSystemPtr->unk_0004 = 4; + } + else if (ItemIsMail(gPokemonStorageSystemPtr->unk_11f2)) + { + gPokemonStorageSystemPtr->unk_0004 = 3; + } + else + { + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097594); + } + break; + case 6: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097788); + break; + case 8: + PlaySE(SE_SELECT); + SetPSSCallback(sub_80977E4); + break; + } + break; + case 2: + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_LAST_POKE); + gPokemonStorageSystemPtr->unk_0004 = 5; + break; + case 4: + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_CANT_RELEASE_EGG); + gPokemonStorageSystemPtr->unk_0004 = 5; + break; + case 3: + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_PLEASE_REMOVE_MAIL); + gPokemonStorageSystemPtr->unk_0004 = 5; + break; + case 5: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_80972A8(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809B100(0); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + if (gUnknown_0203847C) + SetPSSCallback(sub_8097858); + else + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_80972FC(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809B100(1); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + if (gUnknown_0203847C) + SetPSSCallback(sub_8097858); + else + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void c3_0808DC50(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809B100(2); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_809B130()) + { + BoxSetMosaic(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097390(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + if (CalculatePlayerPartyCount() == 6) + { + PrintStorageActionText(PC_TEXT_PARTY_FULL); + gPokemonStorageSystemPtr->unk_0004 = 1; + } + else + { + sub_809B0E0(); + sub_809B100(0); + gPokemonStorageSystemPtr->unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + if (!sub_809B130()) + { + sub_809880C(); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 3: + if (!sub_8098830()) + { + sub_809B100(1); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 4: + if (!sub_809B130()) + { + sub_80987DC(); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 5: + SetPSSCallback(sub_8097004); + break; + } +} + +void sub_809746C(void) +{ + u8 r4; + + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + sub_8096264(&gPokemonStorageSystemPtr->unk_2370, 0x0007, 0xdaca, 3); + sub_809634C(gUnknown_0203847E); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + r4 = sub_8096368(); + if (r4 == 200); + else if (r4 == 201) + { + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + SetPSSCallback(sub_8096C84); + } + else + { + if (sub_809B62C(r4)) + { + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + gPokemonStorageSystemPtr->unk_0004 = 2; + } + else + { + PrintStorageActionText(PC_TEXT_BOX_IS_FULL); + gPokemonStorageSystemPtr->unk_0004 = 4; + } + gUnknown_0203847E = r4; + } + break; + case 2: + party_compaction(); + sub_8099310(); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 3: + if (!sub_8099374()) + { + sub_809B6BC(); + BoxSetMosaic(); + sub_80987DC(); + SetPSSCallback(sub_8096C84); + } + break; + case 4: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_DEPOSIT_IN_WHICH_BOX); + gPokemonStorageSystemPtr->unk_0004 = 1; + } + break; + } +} + +void sub_8097594(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_RELEASE_POKE); + sub_8098A38(1); + gPokemonStorageSystemPtr->unk_0004++; + // fallthrough + case 1: + switch (ProcessMenuInputNoWrap()) + { + case -1: + case 1: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 0: + sub_8098A5C(); + sub_809B7D4(); + sub_809B6DC(); + gPokemonStorageSystemPtr->unk_0004++; + break; + } + break; + case 2: + sub_809B960(); + if (!sub_809B734()) + { + while (1) + { + s8 r0 = sub_809B960(); + if (r0 == 1) + { + gPokemonStorageSystemPtr->unk_0004++; + break; + } + if (r0 == 0) + { + gPokemonStorageSystemPtr->unk_0004 = 8; + break; + } + } + } + break; + case 3: + sub_809B760(); + sub_809801C(); + PrintStorageActionText(PC_TEXT_WAS_RELEASED); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 4: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_BYE_BYE); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 5: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + if (gUnknown_0203847C) + { + party_compaction(); + sub_8099310(); + gPokemonStorageSystemPtr->unk_0004++; + } + else + { + gPokemonStorageSystemPtr->unk_0004 = 7; + } + } + break; + case 6: + if (!sub_8099374()) + { + sub_809B440(); + BoxSetMosaic(); + sub_80987DC(); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 7: + SetPSSCallback(sub_8096C84); + break; + case 8: + PrintStorageActionText(PC_TEXT_WAS_RELEASED); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 9: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_SURPRISE); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 10: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + sub_8099958(); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 11: + if (!sub_8099990()) + { + sub_809B7AC(); + PrintStorageActionText(PC_TEXT_CAME_BACK); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 12: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + PrintStorageActionText(PC_TEXT_WORRIED); + gPokemonStorageSystemPtr->unk_0004++; + } + break; + case 13: + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097788(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809BC18(); + BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!UpdatePaletteFade()) + { + gUnknown_0203847F = 0; + gPokemonStorageSystemPtr->unk_0006 = 0; + SetMainCallback2(sub_8096B5C); + } + break; + } +} + +void sub_80977E4(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_MARK_POKE); + gPokemonStorageSystemPtr->unk_12bc.markings = gPokemonStorageSystemPtr->unk_11f7; + sub_80F7418(gPokemonStorageSystemPtr->unk_11f7, 0xb0, 0x10); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_80F7500()) + { + sub_80F7470(); + sub_8098A5C(); + sub_809BDD8(gPokemonStorageSystemPtr->unk_12bc.markings); + sub_809801C(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097858(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + party_compaction(); + sub_8099310(); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!sub_8099374()) + { + sub_80987DC(); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_809789C(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_WHAT_YOU_DO); + sub_809CE84(); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + switch (sub_809CF30()) + { + case -1: + case 0: + sub_809A860(1); + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 11: + PlaySE(SE_SELECT); + SetPSSCallback(sub_8097B44); + break; + case 10: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097974); + break; + case 9: + PlaySE(SE_SELECT); + sub_8098A5C(); + SetPSSCallback(sub_8097A64); + break; + } + break; + } +} + +void sub_8097974(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_8098A80(); + PrintStorageActionText(PC_TEXT_PICK_A_THEME); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + gPokemonStorageSystemPtr->unk_0d5e = sub_809CF30(); + switch (gPokemonStorageSystemPtr->unk_0d5e) + { + case -1: + sub_809A860(1); + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 12 ... 15: + PlaySE(SE_SELECT); + gPokemonStorageSystemPtr->unk_0d5e -= 12; + sub_8098AA8(gPokemonStorageSystemPtr->unk_0d5e); + PrintStorageActionText(PC_TEXT_PICK_A_WALLPAPER); + gPokemonStorageSystemPtr->unk_0004++; + break; + } + break; + case 2: + gPokemonStorageSystemPtr->unk_0d60 = sub_809CF30(); + switch (gPokemonStorageSystemPtr->unk_0d60) + { + case -1: + sub_8098A5C(); + gPokemonStorageSystemPtr->unk_0004 = 0; + break; + case -2: + break; + default: + PlaySE(SE_SELECT); + sub_8098A5C(); + gPokemonStorageSystemPtr->unk_0d60 -= 16; + sub_8099DCC(gPokemonStorageSystemPtr->unk_0d60); + gPokemonStorageSystemPtr->unk_0004++; + break; + } + break; + case 3: + if (!sub_8099E08()) + { + sub_809A860(1); + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097A64(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + PrintStorageActionText(PC_TEXT_JUMP_TO_WHICH_BOX); + sub_8096264(&gPokemonStorageSystemPtr->unk_2370, 0x0007, 0xdaca, 3); + sub_809634C(gPokemonStorage.currentBox); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + gPokemonStorageSystemPtr->unk_08b2 = sub_8096368(); + switch (gPokemonStorageSystemPtr->unk_08b2) + { + case 200: + break; + default: + sub_8098A5C(); + sub_809635C(); + sub_8096310(); + if (gPokemonStorageSystemPtr->unk_08b2 == 201 || gPokemonStorageSystemPtr->unk_08b2 == gPokemonStorage.currentBox) + { + sub_809A860(1); + SetPSSCallback(sub_8096C84); + } + else + { + gPokemonStorageSystemPtr->unk_0004++; + } + break; + } + break; + case 2: + sub_8099C70(gPokemonStorageSystemPtr->unk_08b2); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 3: + if (!sub_8099D34()) + { + gPokemonStorage.currentBox = gPokemonStorageSystemPtr->unk_08b2; + SetPSSCallback(sub_8096C84); + } + break; + } +} + +void sub_8097B44(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + sub_809BB90(); + BeginNormalPaletteFade(0xffffffff, 0, 0, 16, 0); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 1: + if (!UpdatePaletteFade()) + { + gUnknown_0203847F = 1; + gPokemonStorageSystemPtr->unk_0006 = 1; + SetMainCallback2(sub_8096B5C); + } + break; + } +} + +void sub_8097BA0(void) +{ + switch (gPokemonStorageSystemPtr->unk_0004) + { + case 0: + if (sub_809BF20()) + { + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_HOLDING_POKE); + gPokemonStorageSystemPtr->unk_0004 = 1; + } + else + { + PlaySE(SE_SELECT); + PrintStorageActionText(PC_TEXT_EXIT_BOX); + sub_8098A38(0); + gPokemonStorageSystemPtr->unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) + { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + switch (ProcessMenuInputNoWrap()) + { + case 1: + case -1: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case 0: + PlaySE(SE_PC_OFF); + sub_8098A5C(); + gPokemonStorageSystemPtr->unk_0004++; + break; + } + break; + case 3: + gPokemonStorageSystemPtr->unk_000c.tileTag = 0x000e; + gPokemonStorageSystemPtr->unk_000c.paletteTag = 0xdad0; + gPokemonStorageSystemPtr->unk_000c.unk04 = 20; + gPokemonStorageSystemPtr->unk_000c.unk06 = 0; + sub_80C5E38(&gPokemonStorageSystemPtr->unk_000c); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 4: + if (sub_80C5F98()) + { + gPlayerPartyCount = CalculatePlayerPartyCount(); + SetMainCallback2(sub_80961A8); + } + break; + } +} + +void sub_8097CC0(void) { + switch (gPokemonStorageSystemPtr->unk_0004) { + case 0: + if (sub_809BF20()) { + PlaySE(SE_HAZURE); + PrintStorageActionText(PC_TEXT_HOLDING_POKE); + gPokemonStorageSystemPtr->unk_0004 = 1; + } + else { + PlaySE(SE_SELECT); + PrintStorageActionText(PC_TEXT_CONTINUE_BOX); + sub_8098A38(0); + gPokemonStorageSystemPtr->unk_0004 = 2; + } + break; + case 1: + if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY)) { + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + } + break; + case 2: + switch (ProcessMenuInputNoWrap()) { + case 0: + sub_8098A5C(); + SetPSSCallback(sub_8096C84); + break; + case -1: + case 1: + PlaySE(SE_PC_OFF); + sub_8098A5C(); + gPokemonStorageSystemPtr->unk_0004++; + break; + } + break; + case 3: + gPokemonStorageSystemPtr->unk_000c.tileTag = 0x000e; + gPokemonStorageSystemPtr->unk_000c.paletteTag = 0xdad0; + gPokemonStorageSystemPtr->unk_000c.unk04 = 20; + gPokemonStorageSystemPtr->unk_000c.unk06 = 0; + sub_80C5E38(&gPokemonStorageSystemPtr->unk_000c); + gPokemonStorageSystemPtr->unk_0004++; + break; + case 4: + if (sub_80C5F98()) { + gPlayerPartyCount = CalculatePlayerPartyCount(); + SetMainCallback2(sub_80961A8); + } + break; + } +} + +void sub_8097DE0(void) +{ + gPokemonStorageSystemPtr->unk_0007 = 0; + gPokemonStorageSystemPtr->unk_0008 = 0; + gPokemonStorageSystemPtr->unk_000a = 0; + REG_BG3CNT = BGCNT_PRIORITY(3) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(30); + DmaCopy16Defvars(3, gPokemonStorageScrollingBGTile, BG_SCREEN_ADDR(28), sizeof gPokemonStorageScrollingBGTile); + LZ77UnCompVram(gPokemonStorageScrollingBGTilemap, BG_SCREEN_ADDR(30)); + LoadPalette(gPokemonStorageScrollingBGPalette, 0xd0, 0x10); +} + +void sub_8097E44(void) +{ + if (++gPokemonStorageSystemPtr->unk_0007 >= 2) + { + gPokemonStorageSystemPtr->unk_0007 = 0; + gPokemonStorageSystemPtr->unk_0008--; + gPokemonStorageSystemPtr->unk_000a++; + } +} + +void sub_8097E70(void) +{ + LZ77UnCompVram(gPSSMenuHeader_Gfx, BG_SCREEN_ADDR(10)); + LZ77UnCompWram(gPSSMenuHeader_Tilemap, gUnknown_02039760); + sub_809D034(BG_SCREEN_ADDR(15), 0, 0, gUnknown_02039760, 0, 0, 10, 20); + LoadPalette(gPSSMenu1_Pal, 0x10, 0x20); + LoadPalette(gPSSMenu2_Pal, 0x00, 0x20); + LoadPalette(gUnknown_083B6D74, 0xB0, 0x20); + LoadPalette(gUnknown_083B6D94, 0xC0, 0x20); + LoadPalette(gUnknownPalette_81E6692 + 1, 0xF1, 0x02); + LoadPalette(gUnknownPalette_81E6692 + 1, 0xF2, 0x02); + LoadPalette(gUnknownPalette_81E6692 + 5, 0xF3, 0x02); + LoadPalette(gUnknownPalette_81E6692 + 12, 0xF4, 0x04); + LoadPalette(gUnknownPalette_81E6692 + 10, 0xF6, 0x04); + LoadPalette(gUnknownPalette_81E6692 + 2, 0xFF, 0x02); + LoadSpritePalette(&gWaveformSpritePalette); + sub_80980D4(); + sub_8097F58(); + sub_8097FB8(); + sub_809801C(); +} + +asm(".section .text.8098898"); + +void PrintStorageActionText(u8 index) { + u8 *ptr; + + MenuDrawTextWindow(10, 16, 29, 19); + + switch (gPCStorageActionTexts[index].format) + { + + case PC_TEXT_FMT_UNK_02: + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, gPokemonStorageSystemPtr->unk_11fa); + break; + + case PC_TEXT_FMT_UNK_05: + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, gPokemonStorageSystemPtr->unk_26e4); + break; + + case PC_TEXT_FMT_MON_NAME: + // {var} + " is selected." + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPokemonStorageSystemPtr->unk_11fa); + ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); + break; + + case PC_TEXT_FMT_MON_NAME_2: + // {var} + " was released." + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPokemonStorageSystemPtr->unk_26e4); +#if ENGLISH + ptr = StringCopy(ptr, gPCStorageActionTexts[index].text); +#elif GERMAN + ptr = de_sub_8073174(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); +#endif + break; + + case PC_TEXT_FMT_UNK_03: + { + const u8 *stringLength; + const u8 *text; + + text = gPCStorageActionTexts[index].text; + stringLength = &text[StringLength(text)] + 1; + + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr, gPokemonStorageSystemPtr->unk_11fa); + ptr = StringCopy(ptr, stringLength); + } + break; + + case PC_TEXT_FMT_MON_NAME_AFTER_EXCL_MARK: + // "Bye-bye, ".substr(0, -1) + {var} + "Bye-bye, !".substr(-1, 1) + { + const u8 *stringLength; + const u8 *text; + + text = gPCStorageActionTexts[index].text; + stringLength = &text[StringLength(text)] - 1; + + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); + ptr = StringCopy(ptr - 1, gPokemonStorageSystemPtr->unk_26e4); + ptr = StringCopy(ptr, stringLength); + } + break; + + case PC_TEXT_FMT_NORMAL: + default: + ptr = StringCopy(gPokemonStorageSystemPtr->unk_2694, gPCStorageActionTexts[index].text); + break; + } + + while (ptr < gPokemonStorageSystemPtr->unk_26a6) + { + ptr[0] = CHAR_SPACE; + ptr++; + } + + ptr[0] = EOS; + MenuPrint(gPokemonStorageSystemPtr->unk_2694, 11, 17); +} diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c new file mode 100644 index 000000000..9e0052b89 --- /dev/null +++ b/src/pokemon/pokemon_storage_system_3.c @@ -0,0 +1,16 @@ + +// Includes +#include "global.h" +#include "pokemon_storage_system.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA u16 gUnknown_02039760[0x600] = {}; + +// Static ROM declarations + +// .rodata + +// .text diff --git a/src/pokemon/pokemon_summary_screen.c b/src/pokemon/pokemon_summary_screen.c index 9563bc08f..fb8363569 100644 --- a/src/pokemon/pokemon_summary_screen.c +++ b/src/pokemon/pokemon_summary_screen.c @@ -146,7 +146,6 @@ extern const u8 gUnknown_08E74E88[]; extern const u8 gUnknown_08E73508[]; extern const u8 gStatusScreen_Gfx[]; extern const u8 gFontDefaultPalette[]; -extern const u8 gUnknownPalette_81E6692[]; extern const u8 gAbilityNames[][13]; extern const u8 * const gAbilityDescriptions[]; extern const u8 * const gContestEffectStrings[]; @@ -940,21 +939,21 @@ static bool8 LoadPokemonSummaryScreenGraphics(void) static void sub_809E044(void) { - LoadPalette(&gUnknownPalette_81E6692[28], 129, 2); - LoadPalette(&gUnknownPalette_81E6692[30], 136, 2); - LoadPalette(&gUnknownPalette_81E6692[28], 143, 2); - LoadPalette(&gUnknownPalette_81E6692[30], 137, 2); - LoadPalette(&gUnknownPalette_81E6692[12], 209, 4); - LoadPalette(&gUnknownPalette_81E6692[20], 211, 4); - LoadPalette(&gUnknownPalette_81E6692[28], 213, 4); - LoadPalette(&gUnknownPalette_81E6692[12], 215, 4); - LoadPalette(&gUnknownPalette_81E6692[8], 217, 4); - LoadPalette(&gUnknownPalette_81E6692[16], 219, 4); - LoadPalette(&gUnknownPalette_81E6692[4], 221, 2); - LoadPalette(&gUnknownPalette_81E6692[6], 222, 2); - LoadPalette(&gUnknownPalette_81E6692[2], 223, 2); + LoadPalette(gUnknownPalette_81E6692 + 14, 129, 2); + LoadPalette(gUnknownPalette_81E6692 + 15, 136, 2); + LoadPalette(gUnknownPalette_81E6692 + 14, 143, 2); + LoadPalette(gUnknownPalette_81E6692 + 15, 137, 2); + LoadPalette(gUnknownPalette_81E6692 + 6, 209, 4); + LoadPalette(gUnknownPalette_81E6692 + 10, 211, 4); + LoadPalette(gUnknownPalette_81E6692 + 14, 213, 4); + LoadPalette(gUnknownPalette_81E6692 + 6, 215, 4); + LoadPalette(gUnknownPalette_81E6692 + 4, 217, 4); + LoadPalette(gUnknownPalette_81E6692 + 8, 219, 4); + LoadPalette(gUnknownPalette_81E6692 + 2, 221, 2); + LoadPalette(gUnknownPalette_81E6692 + 3, 222, 2); + LoadPalette(gUnknownPalette_81E6692 + 1, 223, 2); LoadPalette(gFontDefaultPalette, 240, 32); - LoadPalette(&gUnknownPalette_81E6692[6], 249, 2); + LoadPalette(gUnknownPalette_81E6692 + 3, 249, 2); } static void SummaryScreenExit(u8 taskId) diff --git a/src/pokenav_before.c b/src/pokenav_before.c index 8a67390ad..ee5bdb1cb 100644 --- a/src/pokenav_before.c +++ b/src/pokenav_before.c @@ -102,7 +102,6 @@ extern const u16 gPokenavConditionSearch2_Pal[]; extern const u8 gUnknown_083E0334[]; extern const u16 gUnknown_083E02B4[]; extern const u8 gPokenavConditionSearch2_Gfx[]; -extern const u8 gUnknownPalette_81E6692[]; extern const u8 gUnknown_083E0254[]; extern const u8 gUnknown_08E9FEB4[]; extern const u8 gUnknown_083E01AC[]; diff --git a/sym_ewram.txt b/sym_ewram.txt index 62758ab78..ac9805f3e 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -378,6 +378,7 @@ gUnknown_0202FFA4: @ 202FFA4 .include "src/pokemon/pokedex.o" .include "src/engine/trainer_card.o" .include "src/pokemon/pokemon_storage_system.o" + .include "src/pokemon/pokemon_storage_system_2.o" @ pokemon_summary_screen @@ -560,7 +561,5 @@ gTileBuffer: @ 2039360 gUnknown_02039460: @ 2039460 .space 0x300 -gUnknown_02039760: @ 2039760 - .space 0xC00 - + .include "src/pokemon/pokemon_storage_system_3.o" .include "src/engine/menu_cursor.o" -- cgit v1.2.3 From 4facfe910285787778666eeee747b4c1c7201d98 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 14:43:24 -0500 Subject: through sub_80980D4 (nonmatching) --- asm/pokemon_storage_system.s | 331 +-------------------------------- include/mon_markings.h | 1 + include/pokemon_storage_system.h | 17 +- src/pokemon/pokemon_storage_system_2.c | 321 +++++++++++++++++++++++++++----- 4 files changed, 292 insertions(+), 378 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index bd1007f5d..eaed44102 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,335 +5,6 @@ .text - thumb_func_start sub_8097F58 -sub_8097F58: @ 8097F58 - push {r4,lr} - ldr r1, _08097FA4 @ =0x0000dace - movs r0, 0xD - movs r2, 0 - bl sub_80F7940 - ldr r4, _08097FA8 @ =gSharedMem - ldr r1, _08097FAC @ =0x000012ac - adds r3, r4, r1 - str r0, [r3] - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - strb r1, [r0, 0x5] - ldr r0, [r3] - adds r0, 0x43 - movs r1, 0x1 - strb r1, [r0] - ldr r1, [r3] - movs r0, 0x28 - strh r0, [r1, 0x20] - ldr r1, [r3] - movs r0, 0x95 - strh r0, [r1, 0x22] - movs r0, 0xD - bl GetSpriteTileStartByTag - ldr r1, _08097FB0 @ =0x000012b8 - adds r4, r1 - lsls r0, 16 - lsrs r0, 11 - ldr r1, _08097FB4 @ =0x06010000 - adds r0, r1 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08097FA4: .4byte 0x0000dace -_08097FA8: .4byte gSharedMem -_08097FAC: .4byte 0x000012ac -_08097FB0: .4byte 0x000012b8 -_08097FB4: .4byte 0x06010000 - thumb_func_end sub_8097F58 - - thumb_func_start sub_8097FB8 -sub_8097FB8: @ 8097FB8 - push {r4,r5,lr} - sub sp, 0x8 - ldr r0, _0809800C @ =gWaveformSpriteSheet - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp] - str r1, [sp, 0x4] - mov r0, sp - bl LoadSpriteSheet - movs r4, 0 - ldr r5, _08098010 @ =gSharedMem + 0x12B0 -_08097FD0: - lsls r1, r4, 6 - subs r1, r4 - adds r1, 0x8 - lsls r1, 16 - asrs r1, 16 - ldr r0, _08098014 @ =gSpriteTemplate_83B6EFC - movs r2, 0x9 - movs r3, 0x2 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r2, r4, 2 - adds r2, r5 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _08098018 @ =gSprites - adds r1, r0 - str r1, [r2] - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _08097FD0 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809800C: .4byte gWaveformSpriteSheet -_08098010: .4byte gSharedMem + 0x12B0 -_08098014: .4byte gSpriteTemplate_83B6EFC -_08098018: .4byte gSprites - thumb_func_end sub_8097FB8 - - thumb_func_start sub_809801C -sub_809801C: @ 809801C - push {lr} - ldr r1, _0809803C @ =gSharedMem - ldr r2, _08098040 @ =0x000011f0 - adds r0, r1, r2 - ldrh r0, [r0] - subs r2, 0x4 - adds r1, r2 - ldr r1, [r1] - bl sub_80981F0 - bl sub_80982B4 - bl sub_8098350 - pop {r0} - bx r0 - .align 2, 0 -_0809803C: .4byte gSharedMem -_08098040: .4byte 0x000011f0 - thumb_func_end sub_809801C - - thumb_func_start BoxSetMosaic -BoxSetMosaic: @ 8098044 - push {lr} - bl sub_809801C - ldr r0, _08098084 @ =gSharedMem - movs r1, 0x9C - lsls r1, 6 - adds r3, r0, r1 - ldr r2, [r3] - cmp r2, 0 - beq _08098080 - ldrb r0, [r2, 0x1] - movs r1, 0x10 - orrs r0, r1 - strb r0, [r2, 0x1] - ldr r1, [r3] - movs r0, 0xA - strh r0, [r1, 0x2E] - ldr r1, [r3] - movs r0, 0x1 - strh r0, [r1, 0x30] - ldr r1, [r3] - ldr r0, _08098088 @ =sub_8098090 - str r0, [r1, 0x1C] - ldr r2, _0809808C @ =REG_MOSAIC - ldr r0, [r3] - ldrh r0, [r0, 0x2E] - lsls r1, r0, 12 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] -_08098080: - pop {r0} - bx r0 - .align 2, 0 -_08098084: .4byte gSharedMem -_08098088: .4byte sub_8098090 -_0809808C: .4byte REG_MOSAIC - thumb_func_end BoxSetMosaic - - thumb_func_start sub_8098090 -sub_8098090: @ 8098090 - push {lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x2E] - ldrh r1, [r3, 0x30] - subs r0, r1 - strh r0, [r3, 0x2E] - lsls r0, 16 - cmp r0, 0 - bge _080980A6 - movs r0, 0 - strh r0, [r3, 0x2E] -_080980A6: - ldr r2, _080980CC @ =REG_MOSAIC - ldrh r0, [r3, 0x2E] - lsls r1, r0, 12 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - movs r1, 0x2E - ldrsh r0, [r3, r1] - cmp r0, 0 - bne _080980C8 - ldrb r0, [r3, 0x1] - movs r1, 0x11 - negs r1, r1 - ands r1, r0 - strb r1, [r3, 0x1] - ldr r0, _080980D0 @ =SpriteCallbackDummy - str r0, [r3, 0x1C] -_080980C8: - pop {r0} - bx r0 - .align 2, 0 -_080980CC: .4byte REG_MOSAIC -_080980D0: .4byte SpriteCallbackDummy - thumb_func_end sub_8098090 - - thumb_func_start sub_80980D4 -sub_80980D4: @ 80980D4 - push {r4,r5,lr} - sub sp, 0x28 - ldr r0, _08098150 @ =gUnknown_083B6DCC - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x18] - str r1, [sp, 0x1C] - ldr r0, _08098154 @ =gUnknown_083B6DD4 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x20] - str r1, [sp, 0x24] - mov r1, sp - ldr r0, _08098158 @ =gSpriteTemplate_83B6DDC - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r1, 0 - add r5, sp, 0x18 - ldr r4, _0809815C @ =gSharedMem + 0x2784 - movs r3, 0 - ldr r2, _08098160 @ =0x000007ff -_08098102: - adds r0, r1, r4 - strb r3, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r2 - bls _08098102 - movs r1, 0 - ldr r3, _08098164 @ =gSharedMem + 0x2704 - movs r2, 0 -_08098116: - lsls r0, r1, 1 - adds r0, r3 - strh r2, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0xF - bls _08098116 - ldr r0, _08098168 @ =gSharedMem - movs r1, 0x9C - lsls r1, 6 - adds r0, r1 - movs r1, 0 - str r1, [r0] - adds r0, r5, 0 - bl LoadSpriteSheet - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _080981C4 - add r0, sp, 0x20 - bl LoadSpritePalette - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xFF - beq _080981C4 - b _080981B0 - .align 2, 0 -_08098150: .4byte gUnknown_083B6DCC -_08098154: .4byte gUnknown_083B6DD4 -_08098158: .4byte gSpriteTemplate_83B6DDC -_0809815C: .4byte gSharedMem + 0x2784 -_08098160: .4byte 0x000007ff -_08098164: .4byte gSharedMem + 0x2704 -_08098168: .4byte gSharedMem -_0809816C: - ldr r2, _0809819C @ =gSharedMem - movs r0, 0x9C - lsls r0, 6 - adds r3, r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080981A0 @ =gSprites - adds r0, r1 - str r0, [r3] - lsls r0, r4, 4 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - ldr r3, _080981A4 @ =0x000026fa - adds r1, r2, r3 - strh r0, [r1] - ldr r4, _080981A8 @ =0x000026fc - adds r2, r4 - lsls r0, r5, 5 - ldr r1, _080981AC @ =0x06010000 - adds r0, r1 - str r0, [r2] - b _080981C4 - .align 2, 0 -_0809819C: .4byte gSharedMem -_080981A0: .4byte gSprites -_080981A4: .4byte 0x000026fa -_080981A8: .4byte 0x000026fc -_080981AC: .4byte 0x06010000 -_080981B0: - mov r0, sp - movs r1, 0x28 - movs r2, 0x30 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - bne _0809816C -_080981C4: - ldr r0, _080981E8 @ =gSharedMem - movs r2, 0x9C - lsls r2, 6 - adds r0, r2 - ldr r0, [r0] - cmp r0, 0 - bne _080981DE - movs r0, 0x2 - bl FreeSpriteTilesByTag - ldr r0, _080981EC @ =0x0000dac7 - bl FreeSpritePaletteByTag -_080981DE: - add sp, 0x28 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080981E8: .4byte gSharedMem -_080981EC: .4byte 0x0000dac7 - thumb_func_end sub_80980D4 - thumb_func_start sub_80981F0 sub_80981F0: @ 80981F0 push {r4-r7,lr} @@ -1291,6 +962,8 @@ _08098B32: bx r0 thumb_func_end sub_8098AA8 +// File boundary + thumb_func_start get_preferred_box get_preferred_box: @ 8098B3C ldr r0, _08098B44 @ =gPokemonStorage diff --git a/include/mon_markings.h b/include/mon_markings.h index 3b4aa333c..5b6abf356 100644 --- a/include/mon_markings.h +++ b/include/mon_markings.h @@ -25,5 +25,6 @@ void sub_80F7404(void); void sub_80F7418(u8 markings, s16 x, s16 y); void sub_80F7470(void); bool8 sub_80F7500(void); +struct Sprite *sub_80F7940(u16 tileTag, u16 paletteTag, const u16 *palette); #endif //POKERUBY_MON_MARKINGS_H diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 51ebda88f..cbdec8999 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -85,14 +85,19 @@ struct PokemonStorageSystemData { u8 filler_08b6[0x4a8]; s16 unk_0d5e; s16 unk_0d60; - u8 filler_0d62[0x490]; + u8 filler_0d62[0x48a]; + u32 unk_11ec; + u16 unk_11f0; u16 unk_11f2; u8 filler_11f4[2]; u8 unk_11f6; u8 unk_11f7; u8 unk_11f8; u8 unk_11f9; - u8 unk_11fa[0xc2]; + u8 unk_11fa[0xb2]; + struct Sprite *unk_12ac; + struct Sprite *unk_12b0[2]; + u16 *unk_12b8; struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; u8 filler_25b4[0xd8]; @@ -102,8 +107,12 @@ struct PokemonStorageSystemData { struct Pokemon *unk_2690; u8 unk_2694[18]; u8 unk_26a6[62]; - u8 unk_26e4[0x20]; - u16 unk_2704[0x40]; + u8 unk_26e4[0x16]; + u16 unk_26fa; + u16 *unk_26fc; + struct Sprite *unk_2700; + u16 unk_2704[0x10]; + u8 filler_2724[0x60]; u8 unk_2784[0x800]; }; diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 5c72d02e9..f8ae1c013 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -66,9 +66,13 @@ void sub_8097E44(void); void sub_8097E70(void); void sub_8097F58(void); void sub_8097FB8(void); -void BoxSetMosaic(void); void sub_809801C(void); +void BoxSetMosaic(void); +void sub_8098090(struct Sprite *sprite); void sub_80980D4(void); +void sub_80981F0(u16 species, u32 pid); +void sub_80982B4(void); +void sub_8098350(void); void sub_8098400(void); void add_to_c3_somehow(void); bool8 sub_80985CC(void); @@ -191,50 +195,6 @@ const struct SpritePalette gWaveformSpritePalette = { WaveformPalette, 0xdacd }; -const struct SpriteSheet gWaveformSpriteSheet = { - WaveformTiles, 0x1c0, 0x0005 -}; - -const struct SpriteSheet gUnknown_083B6DCC = { - ePokemonStorageSystem.unk_2784, 0x800, 0x0002 -}; - -const struct SpritePalette gUnknown_083B6DD4 = { - ePokemonStorageSystem.unk_2704, 0xdac7 -}; - -const struct OamData gOamData_83B6EAC; - -const struct SpriteTemplate gSpriteTemplate_83B6DDC = { - 0x0002, 0xdac7, &gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy -}; - -const struct StorageAction gPCStorageActionTexts[] = { - {PCText_ExitBox, 0}, - {PCText_WhatYouDo, 0}, - {PCText_PickATheme, 0}, - {PCText_PickAWallpaper, 0}, - {PCText_IsSelected, 1}, - {PCText_JumpToWhichBox, 0}, - {PCText_DepositInWhichBox, 0}, - {PCText_WasDeposited, 1}, - {PCText_BoxIsFull, 0}, - {PCText_ReleasePoke, 0}, - {PCText_WasReleased, 4}, - {PCText_ByeBye, 6}, - {PCText_MarkPoke, 0}, - {PCText_LastPoke, 0}, - {PCText_PartyFull, 0}, - {PCText_HoldingPoke, 0}, - {PCText_WhichOneWillTake, 0}, - {PCText_CantReleaseEgg, 0}, - {PCText_ContinueBox, 0}, - {PCText_CameBack, 1}, - {PCText_Worried, 0}, - {PCText_Surprise, 0}, - {PCText_PleaseRemoveMail, 0} -}; - // .text @@ -1484,6 +1444,249 @@ void sub_8097E70(void) sub_809801C(); } +void sub_8097F58(void) +{ + gPokemonStorageSystemPtr->unk_12ac = sub_80F7940(0x000d, 0xdace, 0); + gPokemonStorageSystemPtr->unk_12ac->oam.priority = 0; + gPokemonStorageSystemPtr->unk_12ac->subpriority = 1; + gPokemonStorageSystemPtr->unk_12ac->pos1.x = 0x28; + gPokemonStorageSystemPtr->unk_12ac->pos1.y = 0x95; + gPokemonStorageSystemPtr->unk_12b8 = BG_CHAR_ADDR(4) + 32 * GetSpriteTileStartByTag(0x000d); +} + +const struct SpriteTemplate gSpriteTemplate_83B6EFC; + +void sub_8097FB8(void) +{ + u16 i; + struct SpriteSheet sheet = {WaveformTiles, 0x1c0, 0x0005}; + + LoadSpriteSheet(&sheet); + for (i = 0; i < 2; i++) + { + u8 spriteId = CreateSprite(&gSpriteTemplate_83B6EFC, i * 63 + 8, 9, 2); + gPokemonStorageSystemPtr->unk_12b0[i] = gSprites + spriteId; + } +} + +void sub_809801C(void) +{ + sub_80981F0(gPokemonStorageSystemPtr->unk_11f0, gPokemonStorageSystemPtr->unk_11ec); + sub_80982B4(); + sub_8098350(); +} + +void BoxSetMosaic(void) +{ + sub_809801C(); + if (gPokemonStorageSystemPtr->unk_2700) + { + gPokemonStorageSystemPtr->unk_2700->oam.mosaic = TRUE; + gPokemonStorageSystemPtr->unk_2700->data[0] = 10; + gPokemonStorageSystemPtr->unk_2700->data[1] = 1; + gPokemonStorageSystemPtr->unk_2700->callback = sub_8098090; + REG_MOSAIC = (gPokemonStorageSystemPtr->unk_2700->data[0] << 12) | (gPokemonStorageSystemPtr->unk_2700->data[0] << 8); + } +} + +void sub_8098090(struct Sprite *sprite) +{ + sprite->data[0] -= sprite->data[1]; + if (sprite->data[0] < 0) + sprite->data[0] = 0; + REG_MOSAIC = (sprite->data[0] << 12) | (sprite->data[0] << 8); + if (sprite->data[0] == 0) + { + sprite->oam.mosaic = FALSE; + sprite->callback = SpriteCallbackDummy; + } +} + +// sub_80980D4 + +const struct OamData gOamData_83B6EAC; + +#ifdef NONMATCHING +void sub_80980D4(void) +{ + u16 i; + u16 tileStart; + u8 palSlot; + u8 spriteId; + struct SpriteSheet sheet = {gPokemonStorageSystemPtr->unk_2784, 0x800, 0x0002}; + struct SpritePalette palette = {gPokemonStorageSystemPtr->unk_2704, 0xdac7}; + struct SpriteTemplate template = { + 0x0002, 0xdac7, &gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + }; + + for (i = 0; i < 0x800; i++) + gPokemonStorageSystemPtr->unk_2784[i] = 0; + for (i = 0; i < 0x10; i++) + gPokemonStorageSystemPtr->unk_2704[i] = 0; + + gPokemonStorageSystemPtr->unk_2700 = NULL; + if ((tileStart = LoadSpriteSheet(&sheet)) != 0 + && (palSlot = LoadSpritePalette(&palette)) != 0xff + && (spriteId = CreateSprite(&template, 0x28, 0x30, 0)) != MAX_SPRITES) + { + // FIXME this gets compiled as a separate block between the palSlot check and the spriteId check + gPokemonStorageSystemPtr->unk_2700 = gSprites + spriteId; + gPokemonStorageSystemPtr->unk_26fa = palSlot * 16 + 0x100; + gPokemonStorageSystemPtr->unk_26fc = BG_CHAR_ADDR(4) + tileStart * 32; + } + + if (gPokemonStorageSystemPtr->unk_2700 == NULL) + { + FreeSpriteTilesByTag(0x0002); + FreeSpritePaletteByTag(0xdac7); + } +} +#else + +const struct SpriteSheet gUnknown_083B6DCC = {ePokemonStorageSystem.unk_2784, 0x800, 0x0002}; +const struct SpritePalette gUnknown_083B6DD4 = {ePokemonStorageSystem.unk_2704, 0xdac7}; +const struct SpriteTemplate gSpriteTemplate_83B6DDC = { + 0x0002, 0xdac7, &gOamData_83B6EAC, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +__attribute__((naked)) void sub_80980D4(void) +{ + asm_unified("\tpush {r4,r5,lr}\n" + "\tsub sp, 0x28\n" + "\tldr r0, _08098150 @ =gUnknown_083B6DCC\n" + "\tldr r1, [r0, 0x4]\n" + "\tldr r0, [r0]\n" + "\tstr r0, [sp, 0x18]\n" + "\tstr r1, [sp, 0x1C]\n" + "\tldr r0, _08098154 @ =gUnknown_083B6DD4\n" + "\tldr r1, [r0, 0x4]\n" + "\tldr r0, [r0]\n" + "\tstr r0, [sp, 0x20]\n" + "\tstr r1, [sp, 0x24]\n" + "\tmov r1, sp\n" + "\tldr r0, _08098158 @ =gSpriteTemplate_83B6DDC\n" + "\tldm r0!, {r2-r4}\n" + "\tstm r1!, {r2-r4}\n" + "\tldm r0!, {r2-r4}\n" + "\tstm r1!, {r2-r4}\n" + "\tmovs r1, 0\n" + "\tadd r5, sp, 0x18\n" + "\tldr r4, _0809815C @ =gSharedMem + 0x2784\n" + "\tmovs r3, 0\n" + "\tldr r2, _08098160 @ =0x000007ff\n" + "_08098102:\n" + "\tadds r0, r1, r4\n" + "\tstrb r3, [r0]\n" + "\tadds r0, r1, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r1, r0, 16\n" + "\tcmp r1, r2\n" + "\tbls _08098102\n" + "\tmovs r1, 0\n" + "\tldr r3, _08098164 @ =gSharedMem + 0x2704\n" + "\tmovs r2, 0\n" + "_08098116:\n" + "\tlsls r0, r1, 1\n" + "\tadds r0, r3\n" + "\tstrh r2, [r0]\n" + "\tadds r0, r1, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r1, r0, 16\n" + "\tcmp r1, 0xF\n" + "\tbls _08098116\n" + "\tldr r0, _08098168 @ =gSharedMem\n" + "\tmovs r1, 0x9C\n" + "\tlsls r1, 6\n" + "\tadds r0, r1\n" + "\tmovs r1, 0\n" + "\tstr r1, [r0]\n" + "\tadds r0, r5, 0\n" + "\tbl LoadSpriteSheet\n" + "\tlsls r0, 16\n" + "\tlsrs r5, r0, 16\n" + "\tcmp r5, 0\n" + "\tbeq _080981C4\n" + "\tadd r0, sp, 0x20\n" + "\tbl LoadSpritePalette\n" + "\tlsls r0, 24\n" + "\tlsrs r4, r0, 24\n" + "\tcmp r4, 0xFF\n" + "\tbeq _080981C4\n" + "\tb _080981B0\n" + "\t.align 2, 0\n" + "_08098150: .4byte gUnknown_083B6DCC\n" + "_08098154: .4byte gUnknown_083B6DD4\n" + "_08098158: .4byte gSpriteTemplate_83B6DDC\n" + "_0809815C: .4byte gSharedMem + 0x2784\n" + "_08098160: .4byte 0x000007ff\n" + "_08098164: .4byte gSharedMem + 0x2704\n" + "_08098168: .4byte gSharedMem\n" + "_0809816C:\n" + "\tldr r2, _0809819C @ =gSharedMem\n" + "\tmovs r0, 0x9C\n" + "\tlsls r0, 6\n" + "\tadds r3, r2, r0\n" + "\tlsls r0, r1, 4\n" + "\tadds r0, r1\n" + "\tlsls r0, 2\n" + "\tldr r1, _080981A0 @ =gSprites\n" + "\tadds r0, r1\n" + "\tstr r0, [r3]\n" + "\tlsls r0, r4, 4\n" + "\tmovs r1, 0x80\n" + "\tlsls r1, 1\n" + "\tadds r0, r1\n" + "\tldr r3, _080981A4 @ =0x000026fa\n" + "\tadds r1, r2, r3\n" + "\tstrh r0, [r1]\n" + "\tldr r4, _080981A8 @ =0x000026fc\n" + "\tadds r2, r4\n" + "\tlsls r0, r5, 5\n" + "\tldr r1, _080981AC @ =0x06010000\n" + "\tadds r0, r1\n" + "\tstr r0, [r2]\n" + "\tb _080981C4\n" + "\t.align 2, 0\n" + "_0809819C: .4byte gSharedMem\n" + "_080981A0: .4byte gSprites\n" + "_080981A4: .4byte 0x000026fa\n" + "_080981A8: .4byte 0x000026fc\n" + "_080981AC: .4byte 0x06010000\n" + "_080981B0:\n" + "\tmov r0, sp\n" + "\tmovs r1, 0x28\n" + "\tmovs r2, 0x30\n" + "\tmovs r3, 0\n" + "\tbl CreateSprite\n" + "\tlsls r0, 24\n" + "\tlsrs r1, r0, 24\n" + "\tcmp r1, 0x40\n" + "\tbne _0809816C\n" + "_080981C4:\n" + "\tldr r0, _080981E8 @ =gSharedMem\n" + "\tmovs r2, 0x9C\n" + "\tlsls r2, 6\n" + "\tadds r0, r2\n" + "\tldr r0, [r0]\n" + "\tcmp r0, 0\n" + "\tbne _080981DE\n" + "\tmovs r0, 0x2\n" + "\tbl FreeSpriteTilesByTag\n" + "\tldr r0, _080981EC @ =0x0000dac7\n" + "\tbl FreeSpritePaletteByTag\n" + "_080981DE:\n" + "\tadd sp, 0x28\n" + "\tpop {r4,r5}\n" + "\tpop {r0}\n" + "\tbx r0\n" + "\t.align 2, 0\n" + "_080981E8: .4byte gSharedMem\n" + "_080981EC: .4byte 0x0000dac7"); +} +#endif + +extern const struct StorageAction gPCStorageActionTexts[]; + asm(".section .text.8098898"); void PrintStorageActionText(u8 index) { @@ -1564,3 +1767,31 @@ void PrintStorageActionText(u8 index) { ptr[0] = EOS; MenuPrint(gPokemonStorageSystemPtr->unk_2694, 11, 17); } + +// FIXME: move this back + +const struct StorageAction gPCStorageActionTexts[] = { + {PCText_ExitBox, 0}, + {PCText_WhatYouDo, 0}, + {PCText_PickATheme, 0}, + {PCText_PickAWallpaper, 0}, + {PCText_IsSelected, 1}, + {PCText_JumpToWhichBox, 0}, + {PCText_DepositInWhichBox, 0}, + {PCText_WasDeposited, 1}, + {PCText_BoxIsFull, 0}, + {PCText_ReleasePoke, 0}, + {PCText_WasReleased, 4}, + {PCText_ByeBye, 6}, + {PCText_MarkPoke, 0}, + {PCText_LastPoke, 0}, + {PCText_PartyFull, 0}, + {PCText_HoldingPoke, 0}, + {PCText_WhichOneWillTake, 0}, + {PCText_CantReleaseEgg, 0}, + {PCText_ContinueBox, 0}, + {PCText_CameBack, 1}, + {PCText_Worried, 0}, + {PCText_Surprise, 0}, + {PCText_PleaseRemoveMail, 0} +}; -- cgit v1.2.3 From ebae5167939d1a10a2a37324063bb4f70c43a4ea Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 17:29:50 -0500 Subject: through sub_8098350 --- asm/pokemon_storage_system.s | 248 --------------------------------- include/mon_markings.h | 1 + include/pokemon_storage_system.h | 11 +- src/pokemon/pokemon_storage_system_2.c | 58 ++++++++ 4 files changed, 68 insertions(+), 250 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index eaed44102..a96857b35 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,254 +5,6 @@ .text - thumb_func_start sub_80981F0 -sub_80981F0: @ 80981F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r1, 0 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r6, _08098274 @ =gSharedMem - movs r0, 0x9C - lsls r0, 6 - adds r0, r6 - mov r8, r0 - ldr r0, [r0] - cmp r0, 0 - beq _080982A6 - cmp r4, 0 - beq _0809829C - lsls r0, r4, 3 - ldr r1, _08098278 @ =gMonFrontPicTable - adds r0, r1 - ldr r2, _0809827C @ =gMonFrontPicCoords - lsls r1, r4, 2 - adds r1, r2 - ldrb r1, [r1] - ldr r2, _08098280 @ =0x00004784 - adds r3, r6, r2 - ldr r2, _08098284 @ =0x00002784 - adds r5, r6, r2 - str r5, [sp] - str r4, [sp, 0x4] - str r7, [sp, 0x8] - movs r2, 0x1 - bl HandleLoadSpecialPokePic - ldr r1, _08098288 @ =0x000011e8 - adds r0, r6, r1 - ldr r0, [r0] - ldr r2, _0809828C @ =0x00002704 - adds r4, r6, r2 - adds r1, r4, 0 - bl LZ77UnCompWram - ldr r1, _08098290 @ =0x000026fc - adds r0, r6, r1 - ldr r1, [r0] - ldr r2, _08098294 @ =0x04000200 - adds r0, r5, 0 - bl CpuSet - ldr r2, _08098298 @ =0x000026fa - adds r0, r6, r2 - ldrh r1, [r0] - adds r0, r4, 0 - movs r2, 0x20 - bl LoadPalette - mov r0, r8 - ldr r1, [r0] - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - b _080982A6 - .align 2, 0 -_08098274: .4byte gSharedMem -_08098278: .4byte gMonFrontPicTable -_0809827C: .4byte gMonFrontPicCoords -_08098280: .4byte 0x00004784 -_08098284: .4byte 0x00002784 -_08098288: .4byte 0x000011e8 -_0809828C: .4byte 0x00002704 -_08098290: .4byte 0x000026fc -_08098294: .4byte 0x04000200 -_08098298: .4byte 0x000026fa -_0809829C: - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_080982A6: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80981F0 - - thumb_func_start sub_80982B4 -sub_80982B4: @ 80982B4 - push {r4,lr} - ldr r4, _080982E4 @ =gSharedMem - ldr r1, _080982E8 @ =0x000011f0 - adds r0, r4, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _080982F4 - ldr r2, _080982EC @ =0x000011f7 - adds r0, r4, r2 - ldrb r0, [r0] - adds r2, 0xC1 - adds r1, r4, r2 - ldr r1, [r1] - bl sub_80F7A10 - ldr r1, _080982F0 @ =0x000012ac - adds r0, r4, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - b _08098302 - .align 2, 0 -_080982E4: .4byte gSharedMem -_080982E8: .4byte 0x000011f0 -_080982EC: .4byte 0x000011f7 -_080982F0: .4byte 0x000012ac -_080982F4: - ldr r2, _08098348 @ =0x000012ac - adds r0, r4, r2 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 -_08098302: - strb r0, [r1] - movs r0, 0 - movs r1, 0xB - movs r2, 0x9 - movs r3, 0x11 - bl MenuZeroFillWindowRect - ldr r4, _0809834C @ =gSharedMem + 0x127A - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x10 - bl MenuPrint - adds r0, r4, 0 - subs r0, 0x6B - movs r1, 0x1 - movs r2, 0xB - bl MenuPrint - adds r0, r4, 0 - subs r0, 0x46 - movs r1, 0 - movs r2, 0xD - bl MenuPrint - subs r4, 0x21 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0xF - bl MenuPrint - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08098348: .4byte 0x000012ac -_0809834C: .4byte gSharedMem + 0x127A - thumb_func_end sub_80982B4 - - thumb_func_start sub_8098350 -sub_8098350: @ 8098350 - push {r4,r5,lr} - sub sp, 0x10 - ldr r5, _080983A0 @ =gSharedMem - ldr r1, _080983A4 @ =0x000011f0 - adds r0, r5, r1 - ldrh r2, [r0] - cmp r2, 0 - beq _080983B4 - ldr r0, _080983A8 @ =0x06007800 - ldr r3, _080983AC @ =gUnknown_02039760 - movs r1, 0x1 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - movs r1, 0x8 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0x1 - movs r2, 0 - bl sub_809D034 - movs r4, 0 - ldr r0, _080983B0 @ =0x000012b0 - adds r5, r0 -_08098382: - lsls r0, r4, 2 - adds r0, r5 - ldr r0, [r0] - lsls r1, r4, 1 - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - bl StartSpriteAnimIfDifferent - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _08098382 - b _080983EC - .align 2, 0 -_080983A0: .4byte gSharedMem -_080983A4: .4byte 0x000011f0 -_080983A8: .4byte 0x06007800 -_080983AC: .4byte gUnknown_02039760 -_080983B0: .4byte 0x000012b0 -_080983B4: - ldr r0, _080983F4 @ =0x06007800 - ldr r3, _080983F8 @ =gUnknown_02039760 - movs r1, 0xA - str r1, [sp] - str r2, [sp, 0x4] - movs r1, 0x8 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0x1 - movs r2, 0 - bl sub_809D034 - movs r4, 0 - ldr r1, _080983FC @ =0x000012b0 - adds r5, r1 -_080983D4: - lsls r0, r4, 2 - adds r0, r5 - ldr r0, [r0] - lsls r1, r4, 25 - lsrs r1, 24 - bl StartSpriteAnim - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _080983D4 -_080983EC: - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080983F4: .4byte 0x06007800 -_080983F8: .4byte gUnknown_02039760 -_080983FC: .4byte 0x000012b0 - thumb_func_end sub_8098350 - thumb_func_start sub_8098400 sub_8098400: @ 8098400 push {r4,r5,lr} diff --git a/include/mon_markings.h b/include/mon_markings.h index 5b6abf356..d06264865 100644 --- a/include/mon_markings.h +++ b/include/mon_markings.h @@ -26,5 +26,6 @@ void sub_80F7418(u8 markings, s16 x, s16 y); void sub_80F7470(void); bool8 sub_80F7500(void); struct Sprite *sub_80F7940(u16 tileTag, u16 paletteTag, const u16 *palette); +void sub_80F7A10(u8 markings, void *dest); #endif //POKERUBY_MON_MARKINGS_H diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index cbdec8999..f91a5f08e 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -85,7 +85,8 @@ struct PokemonStorageSystemData { u8 filler_08b6[0x4a8]; s16 unk_0d5e; s16 unk_0d60; - u8 filler_0d62[0x48a]; + u8 filler_0d62[0x486]; + u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; u16 unk_11f2; @@ -94,7 +95,11 @@ struct PokemonStorageSystemData { u8 unk_11f7; u8 unk_11f8; u8 unk_11f9; - u8 unk_11fa[0xb2]; + u8 unk_11fa[0x15]; + u8 unk_120f[0x25]; + u8 unk_1234[0x25]; + u8 unk_1259[0x21]; + u8 unk_127a[0x32]; struct Sprite *unk_12ac; struct Sprite *unk_12b0[2]; u16 *unk_12b8; @@ -114,6 +119,8 @@ struct PokemonStorageSystemData { u16 unk_2704[0x10]; u8 filler_2724[0x60]; u8 unk_2784[0x800]; + u8 filler_2f84[0x1800]; + u8 unk_4784[0x800]; }; extern EWRAM_DATA u16 gUnknown_02039760[0x600]; diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index f8ae1c013..7f97d7681 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -1,7 +1,10 @@ // Includes #include "global.h" +#include "decompress.h" #include "constants/songs.h" +#include "constants/species.h" +#include "data2.h" #include "sound.h" #include "ewram.h" #include "task.h" @@ -1685,6 +1688,61 @@ __attribute__((naked)) void sub_80980D4(void) } #endif +void sub_80981F0(u16 species, u32 pid) +{ + if (gPokemonStorageSystemPtr->unk_2700) + { + if (species != SPECIES_NONE) + { + HandleLoadSpecialPokePic(gMonFrontPicTable + species, gMonFrontPicCoords[species].coords, 1, (intptr_t)gPokemonStorageSystemPtr->unk_4784, gPokemonStorageSystemPtr->unk_2784, species, pid); + LZ77UnCompWram(gPokemonStorageSystemPtr->unk_11e8, gPokemonStorageSystemPtr->unk_2704); + CpuCopy32(gPokemonStorageSystemPtr->unk_2784, gPokemonStorageSystemPtr->unk_26fc, 0x800); + LoadPalette(gPokemonStorageSystemPtr->unk_2704, gPokemonStorageSystemPtr->unk_26fa, 0x20); + gPokemonStorageSystemPtr->unk_2700->invisible = FALSE; + } + else + { + gPokemonStorageSystemPtr->unk_2700->invisible = TRUE; + } + } +} + +void sub_80982B4(void) +{ + if (gPokemonStorageSystemPtr->unk_11f0) + { + sub_80F7A10(gPokemonStorageSystemPtr->unk_11f7, gPokemonStorageSystemPtr->unk_12b8); + gPokemonStorageSystemPtr->unk_12ac->invisible = FALSE; + } + else + { + gPokemonStorageSystemPtr->unk_12ac->invisible = TRUE; + } + MenuZeroFillWindowRect(0, 11, 9, 17); + MenuPrint(gPokemonStorageSystemPtr->unk_127a, 1, 16); + MenuPrint(gPokemonStorageSystemPtr->unk_120f, 1, 11); + MenuPrint(gPokemonStorageSystemPtr->unk_1234, 0, 13); + MenuPrint(gPokemonStorageSystemPtr->unk_1259, 1, 15); +} + +void sub_8098350(void) +{ + u16 i; + + if (gPokemonStorageSystemPtr->unk_11f0) + { + sub_809D034(BG_SCREEN_ADDR(15), 1, 0, gUnknown_02039760, 1, 0, 8, 2); + for (i = 0; i < 2; i++) + StartSpriteAnimIfDifferent(gPokemonStorageSystemPtr->unk_12b0[i], i * 2 + 1); + } + else + { + sub_809D034(BG_SCREEN_ADDR(15), 1, 0, gUnknown_02039760, 10, 0, 8, 2); + for (i = 0; i < 2; i++) + StartSpriteAnim(gPokemonStorageSystemPtr->unk_12b0[i], i * 2); + } +} + extern const struct StorageAction gPCStorageActionTexts[]; asm(".section .text.8098898"); -- cgit v1.2.3 From 2eb10c6f2d16729dde12b0fd26cac3f45b85a557 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 20:18:46 -0500 Subject: close swiss cheese in pokemon_storage_system_2.c --- asm/pokemon_storage_system.s | 589 --------------------------------- data/pokemon_storage_system.s | 57 ---- include/graphics.h | 4 + include/pokemon_storage_system.h | 12 +- ld_script.txt | 4 +- src/pokemon/pokemon_storage_system_2.c | 282 ++++++++++++++-- 6 files changed, 270 insertions(+), 678 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index a96857b35..bf3d49532 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,595 +5,6 @@ .text - thumb_func_start sub_8098400 -sub_8098400: @ 8098400 - push {r4,r5,lr} - sub sp, 0x14 - ldr r1, _0809847C @ =REG_BG1CNT - ldr r2, _08098480 @ =0x00000f01 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _08098484 @ =gPSSMenuMisc_Gfx - ldr r1, _08098488 @ =0x06006800 - bl LZ77UnCompVram - ldr r0, _0809848C @ =gPSSMenuMisc_Tilemap - ldr r5, _08098490 @ =gSharedMem + 0xA8 - adds r1, r5, 0 - bl LZ77UnCompWram - ldr r0, _08098494 @ =gPSSMenu3_Pal - movs r1, 0x20 - movs r2, 0x20 - bl LoadPalette - ldr r0, _08098498 @ =gPSSMenu4_Pal - movs r1, 0x30 - movs r2, 0x20 - bl LoadPalette - ldr r4, _0809849C @ =0x06007800 - add r1, sp, 0x10 - movs r0, 0 - strh r0, [r1] - ldr r0, _080984A0 @ =0x040000d4 - str r1, [r0] - str r4, [r0, 0x4] - ldr r1, _080984A4 @ =0x81000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - bl sub_8098780 - ldr r0, _080984A8 @ =gUnknown_0203847C - ldrb r0, [r0] - cmp r0, 0 - beq _080984AC - movs r0, 0x1 - bl sub_8098690 - movs r0, 0x1 - bl sub_8099200 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0xC - str r0, [sp, 0x8] - movs r0, 0x16 - str r0, [sp, 0xC] - adds r0, r4, 0 - movs r1, 0xA - movs r2, 0 - adds r3, r5, 0 - bl sub_809D034 - b _080984CC - .align 2, 0 -_0809847C: .4byte REG_BG1CNT -_08098480: .4byte 0x00000f01 -_08098484: .4byte gPSSMenuMisc_Gfx -_08098488: .4byte 0x06006800 -_0809848C: .4byte gPSSMenuMisc_Tilemap -_08098490: .4byte gSharedMem + 0xA8 -_08098494: .4byte gPSSMenu3_Pal -_08098498: .4byte gPSSMenu4_Pal -_0809849C: .4byte 0x06007800 -_080984A0: .4byte 0x040000d4 -_080984A4: .4byte 0x81000400 -_080984A8: .4byte gUnknown_0203847C -_080984AC: - str r0, [sp] - movs r0, 0x14 - str r0, [sp, 0x4] - movs r0, 0xC - str r0, [sp, 0x8] - movs r0, 0x2 - str r0, [sp, 0xC] - adds r0, r4, 0 - movs r1, 0xA - movs r2, 0 - adds r3, r5, 0 - bl sub_809D034 - movs r0, 0x1 - bl sub_8098690 -_080984CC: - ldr r0, _080984E0 @ =gSharedMem - ldr r1, _080984E4 @ =0x000008af - adds r0, r1 - movs r1, 0 - strb r1, [r0] - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080984E0: .4byte gSharedMem -_080984E4: .4byte 0x000008af - thumb_func_end sub_8098400 - - thumb_func_start sub_80984E8 -sub_80984E8: @ 80984E8 - push {lr} - ldr r1, _08098510 @ =gSharedMem - ldr r0, _08098514 @ =0x000008a8 - adds r2, r1, r0 - movs r3, 0 - movs r0, 0x14 - strh r0, [r2] - ldr r0, _08098518 @ =0x000008aa - adds r2, r1, r0 - movs r0, 0x2 - strh r0, [r2] - ldr r0, _0809851C @ =0x000008ad - adds r1, r0 - strb r3, [r1] - movs r0, 0 - bl sub_8099200 - pop {r0} - bx r0 - .align 2, 0 -_08098510: .4byte gSharedMem -_08098514: .4byte 0x000008a8 -_08098518: .4byte 0x000008aa -_0809851C: .4byte 0x000008ad - thumb_func_end sub_80984E8 - - thumb_func_start sub_8098520 -sub_8098520: @ 8098520 - push {r4,r5,lr} - sub sp, 0x10 - ldr r3, _08098578 @ =gSharedMem - ldr r0, _0809857C @ =0x000008ad - adds r5, r3, r0 - ldrb r0, [r5] - cmp r0, 0x14 - beq _08098592 - ldr r0, _08098580 @ =0x000008a8 - adds r1, r3, r0 - ldrh r0, [r1] - subs r0, 0x1 - movs r4, 0 - strh r0, [r1] - ldr r0, _08098584 @ =0x000008aa - adds r2, r3, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - ldr r0, _08098588 @ =0x06007800 - adds r3, 0xA8 - str r4, [sp] - ldrh r1, [r1] - str r1, [sp, 0x4] - movs r1, 0xC - str r1, [sp, 0x8] - ldrh r1, [r2] - str r1, [sp, 0xC] - movs r1, 0xA - movs r2, 0 - bl sub_809D034 - movs r0, 0x8 - bl sub_80994A8 - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x14 - beq _0809858C - movs r0, 0x1 - b _08098594 - .align 2, 0 -_08098578: .4byte gSharedMem -_0809857C: .4byte 0x000008ad -_08098580: .4byte 0x000008a8 -_08098584: .4byte 0x000008aa -_08098588: .4byte 0x06007800 -_0809858C: - ldr r1, _0809859C @ =gUnknown_0203847C - movs r0, 0x1 - strb r0, [r1] -_08098592: - movs r0, 0 -_08098594: - add sp, 0x10 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0809859C: .4byte gUnknown_0203847C - thumb_func_end sub_8098520 - - thumb_func_start add_to_c3_somehow -add_to_c3_somehow: @ 80985A0 - ldr r1, _080985BC @ =gSharedMem - ldr r0, _080985C0 @ =0x000008a8 - adds r2, r1, r0 - movs r3, 0 - movs r0, 0 - strh r0, [r2] - ldr r0, _080985C4 @ =0x000008aa - adds r2, r1, r0 - movs r0, 0x16 - strh r0, [r2] - ldr r0, _080985C8 @ =0x000008ad - adds r1, r0 - strb r3, [r1] - bx lr - .align 2, 0 -_080985BC: .4byte gSharedMem -_080985C0: .4byte 0x000008a8 -_080985C4: .4byte 0x000008aa -_080985C8: .4byte 0x000008ad - thumb_func_end add_to_c3_somehow - - thumb_func_start sub_80985CC -sub_80985CC: @ 80985CC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - ldr r3, _08098640 @ =gSharedMem - ldr r0, _08098644 @ =0x000008ad - adds r6, r3, r0 - ldrb r0, [r6] - cmp r0, 0x14 - beq _0809867A - ldr r2, _08098648 @ =0x000008a8 - adds r1, r3, r2 - ldrh r0, [r1] - adds r0, 0x1 - movs r2, 0 - mov r9, r2 - strh r0, [r1] - ldr r0, _0809864C @ =0x000008aa - adds r4, r3, r0 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - ldr r5, _08098650 @ =0x06007800 - adds r3, 0xA8 - mov r8, r3 - str r2, [sp] - ldrh r0, [r1] - str r0, [sp, 0x4] - movs r7, 0xC - str r7, [sp, 0x8] - ldrh r0, [r4] - str r0, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0xA - bl sub_809D034 - ldrh r2, [r4] - movs r4, 0x1 - str r4, [sp] - adds r0, r5, 0 - movs r1, 0xA - movs r3, 0xC - bl sub_809D16C - movs r0, 0x8 - negs r0, r0 - bl sub_80994A8 - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x14 - beq _08098654 - movs r0, 0x1 - b _0809867C - .align 2, 0 -_08098640: .4byte gSharedMem -_08098644: .4byte 0x000008ad -_08098648: .4byte 0x000008a8 -_0809864C: .4byte 0x000008aa -_08098650: .4byte 0x06007800 -_08098654: - ldr r0, _0809868C @ =gUnknown_0203847C - movs r1, 0 - strb r1, [r0] - bl sub_809954C - bl party_compaction - str r7, [sp] - mov r2, r9 - str r2, [sp, 0x4] - str r4, [sp, 0x8] - movs r0, 0x2 - str r0, [sp, 0xC] - adds r0, r5, 0 - movs r1, 0x15 - movs r2, 0 - mov r3, r8 - bl sub_809D034 -_0809867A: - movs r0, 0 -_0809867C: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0809868C: .4byte gUnknown_0203847C - thumb_func_end sub_80985CC - - thumb_func_start sub_8098690 -sub_8098690: @ 8098690 - push {lr} - sub sp, 0x10 - lsls r0, 24 - cmp r0, 0 - beq _080986C0 - ldr r0, _080986B8 @ =0x06007800 - ldr r3, _080986BC @ =gSharedMem + 0xA8 - movs r1, 0xC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - movs r1, 0x9 - str r1, [sp, 0x8] - movs r1, 0x2 - str r1, [sp, 0xC] - movs r1, 0x15 - movs r2, 0 - bl sub_809D034 - b _080986DA - .align 2, 0 -_080986B8: .4byte 0x06007800 -_080986BC: .4byte gSharedMem + 0xA8 -_080986C0: - ldr r0, _080986E0 @ =0x06007800 - ldr r3, _080986E4 @ =gSharedMem + 0xA8 - movs r1, 0xC - str r1, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r1, 0x9 - str r1, [sp, 0x8] - str r2, [sp, 0xC] - movs r1, 0x15 - movs r2, 0 - bl sub_809D034 -_080986DA: - add sp, 0x10 - pop {r0} - bx r0 - .align 2, 0 -_080986E0: .4byte 0x06007800 -_080986E4: .4byte gSharedMem + 0xA8 - thumb_func_end sub_8098690 - - thumb_func_start sub_80986E8 -sub_80986E8: @ 80986E8 - ldr r1, _08098704 @ =gSharedMem - ldr r2, _08098708 @ =0x000008af - adds r0, r1, r2 - movs r3, 0x1 - strb r3, [r0] - movs r0, 0x8B - lsls r0, 4 - adds r2, r1, r0 - movs r0, 0x1E - strb r0, [r2] - ldr r2, _0809870C @ =0x000008b1 - adds r1, r2 - strb r3, [r1] - bx lr - .align 2, 0 -_08098704: .4byte gSharedMem -_08098708: .4byte 0x000008af -_0809870C: .4byte 0x000008b1 - thumb_func_end sub_80986E8 - - thumb_func_start sub_8098710 -sub_8098710: @ 8098710 - push {lr} - ldr r0, _0809872C @ =gSharedMem - ldr r2, _08098730 @ =0x000008af - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _08098728 - movs r0, 0 - strb r0, [r1] - movs r0, 0x1 - bl sub_8098690 -_08098728: - pop {r0} - bx r0 - .align 2, 0 -_0809872C: .4byte gSharedMem -_08098730: .4byte 0x000008af - thumb_func_end sub_8098710 - - thumb_func_start sub_8098734 -sub_8098734: @ 8098734 - push {lr} - ldr r2, _08098774 @ =gSharedMem - ldr r1, _08098778 @ =0x000008af - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08098770 - movs r0, 0x8B - lsls r0, 4 - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1E - bls _08098770 - movs r0, 0 - strb r0, [r1] - movs r3, 0 - ldr r0, _0809877C @ =0x000008b1 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0 - bne _08098768 - movs r3, 0x1 -_08098768: - strb r3, [r1] - ldrb r0, [r1] - bl sub_8098690 -_08098770: - pop {r0} - bx r0 - .align 2, 0 -_08098774: .4byte gSharedMem -_08098778: .4byte 0x000008af -_0809877C: .4byte 0x000008b1 - thumb_func_end sub_8098734 - - thumb_func_start sub_8098780 -sub_8098780: @ 8098780 - push {r4-r6,lr} - sub sp, 0x10 - movs r4, 0x1 - ldr r6, _080987D4 @ =gSharedMem + 0xA8 - movs r5, 0x80 - lsls r5, 9 -_0809878C: - movs r0, 0x64 - muls r0, r4 - ldr r1, _080987D8 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _080987A0 - movs r0, 0x1 -_080987A0: - movs r1, 0x10 - cmp r0, 0 - beq _080987A8 - movs r1, 0xC -_080987A8: - lsrs r2, r5, 16 - str r1, [sp] - movs r0, 0x4 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0x7 - adds r3, r6, 0 - bl sub_809D104 - movs r0, 0xC0 - lsls r0, 10 - adds r5, r0 - adds r4, 0x1 - cmp r4, 0x5 - ble _0809878C - add sp, 0x10 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080987D4: .4byte gSharedMem + 0xA8 -_080987D8: .4byte gPlayerParty - thumb_func_end sub_8098780 - - thumb_func_start sub_80987DC -sub_80987DC: @ 80987DC - push {lr} - sub sp, 0x10 - bl sub_8098780 - ldr r0, _08098804 @ =0x06007800 - ldr r3, _08098808 @ =gSharedMem + 0xA8 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - movs r1, 0xC - str r1, [sp, 0x8] - movs r1, 0x16 - str r1, [sp, 0xC] - movs r1, 0xA - movs r2, 0 - bl sub_809D034 - add sp, 0x10 - pop {r0} - bx r0 - .align 2, 0 -_08098804: .4byte 0x06007800 -_08098808: .4byte gSharedMem + 0xA8 - thumb_func_end sub_80987DC - - thumb_func_start sub_809880C -sub_809880C: @ 809880C - push {lr} - ldr r0, _08098828 @ =gSharedMem - ldr r1, _0809882C @ =0x000008ae - adds r0, r1 - movs r1, 0 - strb r1, [r0] - movs r0, 0x6 - bl PlaySE - bl sub_80984E8 - pop {r0} - bx r0 - .align 2, 0 -_08098828: .4byte gSharedMem -_0809882C: .4byte 0x000008ae - thumb_func_end sub_809880C - - thumb_func_start sub_8098830 -sub_8098830: @ 8098830 - push {r4,r5,lr} - ldr r5, _08098848 @ =gSharedMem - ldr r0, _0809884C @ =0x000008ae - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0x1 - beq _08098866 - cmp r0, 0x1 - bgt _08098850 - cmp r0, 0 - beq _08098856 - b _08098890 - .align 2, 0 -_08098848: .4byte gSharedMem -_0809884C: .4byte 0x000008ae -_08098850: - cmp r0, 0x2 - beq _0809888C - b _08098890 -_08098856: - bl sub_8098520 - lsls r0, 24 - cmp r0, 0 - bne _08098890 - bl sub_809B068 - b _0809887E -_08098866: - bl sub_809AC00 - lsls r0, 24 - cmp r0, 0 - bne _08098890 - ldr r1, _08098888 @ =0x000011f6 - adds r0, r5, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0809887E - bl BoxSetMosaic -_0809887E: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _08098890 - .align 2, 0 -_08098888: .4byte 0x000011f6 -_0809888C: - movs r0, 0 - b _08098892 -_08098890: - movs r0, 0x1 -_08098892: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8098830 - -.section .text_8098A38 - thumb_func_start sub_8098A38 sub_8098A38: @ 8098A38 push {r4,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index d21bc324f..66cc84000 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,63 +3,6 @@ .section .rodata - .align 2 -gOamData_83B6EAC:: @ 83B6EAC - .2byte 0x0000 - .2byte 0xC000 - .2byte 0x0000 - - .align 2 -gOamData_83B6EB4:: @ 83B6EB4 - .2byte 0x4000 - .2byte 0x0000 - .2byte 0x0000 - - .align 2 -gSpriteAnim_83B6EBC:: @ 83B6EBC - obj_image_anim_frame 0, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83B6EC4:: @ 83B6EC4 - obj_image_anim_frame 2, 8 - obj_image_anim_frame 4, 8 - obj_image_anim_frame 6, 8 - obj_image_anim_jump 0 - - .align 2 -gSpriteAnim_83B6ED4:: @ 83B6ED4 - obj_image_anim_frame 8, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83B6EDC:: @ 83B6EDC - obj_image_anim_frame 10, 8 - obj_image_anim_frame 4, 8 - obj_image_anim_frame 12, 8 - obj_image_anim_jump 0 - - .align 2 -gSpriteAnimTable_83B6EEC:: @ 83B6EEC - .4byte gSpriteAnim_83B6EBC - .4byte gSpriteAnim_83B6EC4 - .4byte gSpriteAnim_83B6ED4 - .4byte gSpriteAnim_83B6EDC - - .align 2 -gSpriteTemplate_83B6EFC:: @ 83B6EFC - spr_template 5, 56013, gOamData_83B6EB4, gSpriteAnimTable_83B6EEC, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gSpriteTemplate_83B6F14:: @ 83B6F14 - spr_template 15, 56000, gOamData_83B6F2C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gOamData_83B6F2C:: @ 83B6F2C - .2byte 0x0000 - .2byte 0x8000 - .2byte 0x0000 - .align 2 gSpriteAffineAnim_83B6F34:: @ 83B6F34 obj_rot_scal_anim_frame 0xFFFE, 0xFFFE, 0, 120 diff --git a/include/graphics.h b/include/graphics.h index 91ba45acd..a8ac2783d 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2747,5 +2747,9 @@ extern const u8 gPSSMenuHeader_Gfx[]; extern const u8 gPSSMenuHeader_Tilemap[]; extern const u16 gPSSMenu1_Pal[]; extern const u16 gPSSMenu2_Pal[]; +extern const u8 gPSSMenuMisc_Gfx[]; +extern const u8 gPSSMenuMisc_Tilemap[]; +extern const u16 gPSSMenu3_Pal[]; +extern const u16 gPSSMenu4_Pal[]; #endif // GUARD_GRAPHICS_H diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index f91a5f08e..b82213bb2 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -78,8 +78,16 @@ struct PokemonStorageSystemData { u16 unk_0008; u16 unk_000a; struct PCScreenEffectStruct unk_000c; - struct UnkStruct_2000020 unk_0020[274]; // refine size later - u8 filler_08b0[2]; + struct UnkStruct_2000020 unk_0020[17]; // refine size later + u16 unk_00a8[0x400]; + u16 unk_08a8; + u16 unk_08aa; + u8 unk_08ac; + u8 unk_08ad; + u8 unk_08ae; + u8 unk_08af; + u8 unk_08b0; + bool8 unk_08b1; s16 unk_08b2; u16 unk_08b4; u8 filler_08b6[0x4a8]; diff --git a/ld_script.txt b/ld_script.txt index 2157e6da5..f81caa5bf 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -129,10 +129,8 @@ SECTIONS { asm/unk_text_8095904.o(.text); src/pokemon/pokemon_storage_system.o(.text); src/pokemon/pokemon_storage_system_2.o(.text); - asm/pokemon_storage_system.o(.text); - src/pokemon/pokemon_storage_system_2.o(.text.8098898); src/pokemon/pokemon_storage_system_3.o(.text); - asm/pokemon_storage_system.o(.text_8098A38); + asm/pokemon_storage_system.o(.text); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); src/field/script_movement.o(.text); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 7f97d7681..ff6f1f587 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -78,6 +78,9 @@ void sub_80982B4(void); void sub_8098350(void); void sub_8098400(void); void add_to_c3_somehow(void); +void sub_8098780(void); +void sub_8098690(bool8 flag); +void sub_8099200(u8 a0); bool8 sub_80985CC(void); void sub_80986E8(void); void sub_8098710(void); @@ -93,6 +96,8 @@ void sub_8098AA8(u8 a0); void sub_8098B48(void); void sub_8099310(void); bool8 sub_8099374(void); +void sub_80994A8(s16 a0); +void sub_809954C(void); void sub_8099958(void); bool8 sub_8099990(void); void sub_809BB90(void); @@ -109,6 +114,7 @@ void sub_809B0C0(u8 a0); void sub_809B0D4(void); void sub_809B0E0(void); u8 sub_809B0F4(void); +void sub_809B068(void); void sub_809B100(u8 a0); bool8 sub_809B130(void); void sub_809B440(void); @@ -134,6 +140,8 @@ s16 sub_809CF30(void); void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); void sub_809CFF0(void); void sub_809D034(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); +void sub_809D104(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); +void sub_809D16C(void *dest, u16 dLeft, u16 dTop, u16 width, u16 height); // .rodata @@ -1743,9 +1751,192 @@ void sub_8098350(void) } } -extern const struct StorageAction gPCStorageActionTexts[]; +void sub_8098400(void) +{ + REG_BG1CNT = BGCNT_PRIORITY(1) | BGCNT_SCREENBASE(15); + LZ77UnCompVram(gPSSMenuMisc_Gfx, BG_SCREEN_ADDR(13)); + LZ77UnCompWram(gPSSMenuMisc_Tilemap, gPokemonStorageSystemPtr->unk_00a8); + LoadPalette(gPSSMenu3_Pal, 0x20, 0x20); + LoadPalette(gPSSMenu4_Pal, 0x30, 0x20); + DmaClear16(3, BG_SCREEN_ADDR(15), 0x800); + sub_8098780(); + if (gUnknown_0203847C) + { + sub_8098690(TRUE); + sub_8099200(1); + sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, 0, 12, 22); + } + else + { + sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, 20, 12, 2); + sub_8098690(TRUE); + } + gPokemonStorageSystemPtr->unk_08af = 0; +} + +void sub_80984E8(void) +{ + gPokemonStorageSystemPtr->unk_08a8 = 20; + gPokemonStorageSystemPtr->unk_08aa = 2; + gPokemonStorageSystemPtr->unk_08ad = 0; + sub_8099200(0); +} + +bool8 sub_8098520(void) +{ + if (gPokemonStorageSystemPtr->unk_08ad == 20) + return FALSE; + gPokemonStorageSystemPtr->unk_08a8--; + gPokemonStorageSystemPtr->unk_08aa++; + sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, gPokemonStorageSystemPtr->unk_08a8, 12, gPokemonStorageSystemPtr->unk_08aa); + sub_80994A8(8); + if (++gPokemonStorageSystemPtr->unk_08ad == 20) + { + gUnknown_0203847C = 1; + return FALSE; + } + return TRUE; +} + +void add_to_c3_somehow(void) +{ + gPokemonStorageSystemPtr->unk_08a8 = 0; + gPokemonStorageSystemPtr->unk_08aa = 22; + gPokemonStorageSystemPtr->unk_08ad = 0; +} + +bool8 sub_80985CC(void) +{ + if (gPokemonStorageSystemPtr->unk_08ad == 20) + return FALSE; + gPokemonStorageSystemPtr->unk_08a8++; + gPokemonStorageSystemPtr->unk_08aa--; + sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, gPokemonStorageSystemPtr->unk_08a8, 12, gPokemonStorageSystemPtr->unk_08aa); + sub_809D16C(BG_SCREEN_ADDR(15), 10, gPokemonStorageSystemPtr->unk_08aa, 12, 1); + sub_80994A8(-8); + if (++gPokemonStorageSystemPtr->unk_08ad == 20) + { + gUnknown_0203847C = 0; + sub_809954C(); + party_compaction(); + sub_809D034(BG_SCREEN_ADDR(15), 21, 0, gPokemonStorageSystemPtr->unk_00a8, 12, 0, 1, 2); + return FALSE; + } + return TRUE; +} + +void sub_8098690(bool8 flag) +{ + if (flag) + sub_809D034(BG_SCREEN_ADDR(15), 21, 0, gPokemonStorageSystemPtr->unk_00a8, 12, 0, 9, 2); + else + sub_809D034(BG_SCREEN_ADDR(15), 21, 0, gPokemonStorageSystemPtr->unk_00a8, 12, 2, 9, 2); +} + +void sub_80986E8(void) +{ + gPokemonStorageSystemPtr->unk_08af = 1; + gPokemonStorageSystemPtr->unk_08b0 = 30; + gPokemonStorageSystemPtr->unk_08b1 = 1; +} + +void sub_8098710(void) +{ + if (gPokemonStorageSystemPtr->unk_08af) + { + gPokemonStorageSystemPtr->unk_08af = 0; + sub_8098690(TRUE); + } +} + +void sub_8098734(void) +{ + if (gPokemonStorageSystemPtr->unk_08af && ++gPokemonStorageSystemPtr->unk_08b0 > 30) + { + gPokemonStorageSystemPtr->unk_08b0 = 0; + gPokemonStorageSystemPtr->unk_08b1 = gPokemonStorageSystemPtr->unk_08b1 ? FALSE : TRUE; + sub_8098690(gPokemonStorageSystemPtr->unk_08b1); + } +} + +void sub_8098780(void) +{ + int i; + + for (i = 1; i < PARTY_SIZE; i++) + { + u16 r1; + bool32 r0 = GetMonData(gPlayerParty + i, MON_DATA_SPECIES); + if (r0) + r0 = TRUE; + r1 = r0 ? 12 : 16; + sub_809D104(gPokemonStorageSystemPtr->unk_00a8, 7, (i - 1) * 3 + 1, gPokemonStorageSystemPtr->unk_00a8, r1, 4, 4, 3); + } +} + +void sub_80987DC(void) +{ + sub_8098780(); + sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, 0, 12, 22); +} + +void sub_809880C(void) +{ + gPokemonStorageSystemPtr->unk_08ae = 0; + PlaySE(SE_WIN_OPEN); + sub_80984E8(); +} + +bool8 sub_8098830(void) +{ + switch (gPokemonStorageSystemPtr->unk_08ae) + { + case 0: + if (!sub_8098520()) + { + sub_809B068(); + gPokemonStorageSystemPtr->unk_08ae++; + } + break; + case 1: + if (!sub_809AC00()) + { + if (gPokemonStorageSystemPtr->unk_11f6) + BoxSetMosaic(); + gPokemonStorageSystemPtr->unk_08ae++; + } + break; + case 2: + return FALSE; + } + return TRUE; +} -asm(".section .text.8098898"); +const struct StorageAction gPCStorageActionTexts[] = { + {PCText_ExitBox, 0}, + {PCText_WhatYouDo, 0}, + {PCText_PickATheme, 0}, + {PCText_PickAWallpaper, 0}, + {PCText_IsSelected, 1}, + {PCText_JumpToWhichBox, 0}, + {PCText_DepositInWhichBox, 0}, + {PCText_WasDeposited, 1}, + {PCText_BoxIsFull, 0}, + {PCText_ReleasePoke, 0}, + {PCText_WasReleased, 4}, + {PCText_ByeBye, 6}, + {PCText_MarkPoke, 0}, + {PCText_LastPoke, 0}, + {PCText_PartyFull, 0}, + {PCText_HoldingPoke, 0}, + {PCText_WhichOneWillTake, 0}, + {PCText_CantReleaseEgg, 0}, + {PCText_ContinueBox, 0}, + {PCText_CameBack, 1}, + {PCText_Worried, 0}, + {PCText_Surprise, 0}, + {PCText_PleaseRemoveMail, 0} +}; void PrintStorageActionText(u8 index) { u8 *ptr; @@ -1826,30 +2017,67 @@ void PrintStorageActionText(u8 index) { MenuPrint(gPokemonStorageSystemPtr->unk_2694, 11, 17); } -// FIXME: move this back +const struct OamData gOamData_83B6EAC = { + .size = 3 +}; -const struct StorageAction gPCStorageActionTexts[] = { - {PCText_ExitBox, 0}, - {PCText_WhatYouDo, 0}, - {PCText_PickATheme, 0}, - {PCText_PickAWallpaper, 0}, - {PCText_IsSelected, 1}, - {PCText_JumpToWhichBox, 0}, - {PCText_DepositInWhichBox, 0}, - {PCText_WasDeposited, 1}, - {PCText_BoxIsFull, 0}, - {PCText_ReleasePoke, 0}, - {PCText_WasReleased, 4}, - {PCText_ByeBye, 6}, - {PCText_MarkPoke, 0}, - {PCText_LastPoke, 0}, - {PCText_PartyFull, 0}, - {PCText_HoldingPoke, 0}, - {PCText_WhichOneWillTake, 0}, - {PCText_CantReleaseEgg, 0}, - {PCText_ContinueBox, 0}, - {PCText_CameBack, 1}, - {PCText_Worried, 0}, - {PCText_Surprise, 0}, - {PCText_PleaseRemoveMail, 0} +const struct OamData gOamData_83B6EB4 = { + .shape = ST_OAM_H_RECTANGLE +}; + +const union AnimCmd gSpriteAnim_83B6EBC[] = { + ANIMCMD_FRAME(0, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83B6EC4[] = { + ANIMCMD_FRAME(2, 8), + ANIMCMD_FRAME(4, 8), + ANIMCMD_FRAME(6, 8), + ANIMCMD_JUMP(0) +}; + +const union AnimCmd gSpriteAnim_83B6ED4[] = { + ANIMCMD_FRAME(8, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83B6EDC[] = { + ANIMCMD_FRAME(10, 8), + ANIMCMD_FRAME( 4, 8), + ANIMCMD_FRAME(12, 8), + ANIMCMD_JUMP(0) +}; + +const union AnimCmd *const gSpriteAnimTable_83B6EEC[] = { + gSpriteAnim_83B6EBC, + gSpriteAnim_83B6EC4, + gSpriteAnim_83B6ED4, + gSpriteAnim_83B6EDC +}; + +const struct SpriteTemplate gSpriteTemplate_83B6EFC = { + 0x0005, + 0xdacd, + &gOamData_83B6EB4, + gSpriteAnimTable_83B6EEC, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +const struct OamData gOamData_83B6F2C; + +const struct SpriteTemplate gSpriteTemplate_83B6F14 = { + 0x000f, + 0xdac0, + &gOamData_83B6F2C, + gDummySpriteAnimTable, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +const struct OamData gOamData_83B6F2C = { + .size = 2 }; -- cgit v1.2.3 From f361bbd3e63a0b342ddfbd4c4c8d9e5a7536d2cc Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 20:30:32 -0500 Subject: finish pokemon_storage_system_2.c --- asm/pokemon_storage_system.s | 122 --------------------------------- include/pokemon.h | 2 +- include/pokemon_storage_system.h | 55 ++++++++++++++- src/pokemon/pokemon_storage_system_2.c | 107 +++++++++++++++-------------- 4 files changed, 110 insertions(+), 176 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index bf3d49532..a4cf34a2b 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,128 +5,6 @@ .text - thumb_func_start sub_8098A38 -sub_8098A38: @ 8098A38 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x17 - movs r1, 0xA - movs r2, 0 - bl DisplayYesNoMenu - lsls r4, 24 - asrs r4, 24 - adds r0, r4, 0 - bl MoveMenuCursor - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8098A38 - - thumb_func_start sub_8098A5C -sub_8098A5C: @ 8098A5C - push {lr} - bl HandleDestroyMenuCursors - movs r0, 0xA - movs r1, 0x10 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - movs r0, 0x17 - movs r1, 0xA - movs r2, 0x1D - movs r3, 0xF - bl MenuZeroFillWindowRect - pop {r0} - bx r0 - thumb_func_end sub_8098A5C - - thumb_func_start sub_8098A80 -sub_8098A80: @ 8098A80 - push {lr} - bl sub_809CDCC - movs r0, 0xC - bl sub_809CDEC - movs r0, 0xD - bl sub_809CDEC - movs r0, 0xE - bl sub_809CDEC - movs r0, 0xF - bl sub_809CDEC - bl sub_809CE84 - pop {r0} - bx r0 - thumb_func_end sub_8098A80 - - thumb_func_start sub_8098AA8 -sub_8098AA8: @ 8098AA8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl sub_809CDCC - cmp r4, 0x1 - beq _08098AE6 - cmp r4, 0x1 - bgt _08098AC2 - cmp r4, 0 - beq _08098ACC - b _08098B32 -_08098AC2: - cmp r5, 0x2 - beq _08098B00 - cmp r5, 0x3 - beq _08098B1A - b _08098B32 -_08098ACC: - movs r0, 0x10 - bl sub_809CDEC - movs r0, 0x11 - bl sub_809CDEC - movs r0, 0x12 - bl sub_809CDEC - movs r0, 0x13 - bl sub_809CDEC - b _08098B32 -_08098AE6: - movs r0, 0x14 - bl sub_809CDEC - movs r0, 0x15 - bl sub_809CDEC - movs r0, 0x16 - bl sub_809CDEC - movs r0, 0x17 - bl sub_809CDEC - b _08098B32 -_08098B00: - movs r0, 0x18 - bl sub_809CDEC - movs r0, 0x19 - bl sub_809CDEC - movs r0, 0x1A - bl sub_809CDEC - movs r0, 0x1B - bl sub_809CDEC - b _08098B32 -_08098B1A: - movs r0, 0x1C - bl sub_809CDEC - movs r0, 0x1D - bl sub_809CDEC - movs r0, 0x1E - bl sub_809CDEC - movs r0, 0x1F - bl sub_809CDEC -_08098B32: - bl sub_809CE84 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8098AA8 - -// File boundary - thumb_func_start get_preferred_box get_preferred_box: @ 8098B3C ldr r0, _08098B44 @ =gPokemonStorage diff --git a/include/pokemon.h b/include/pokemon.h index fd1709320..af65599f8 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -627,6 +627,6 @@ void RandomlyGivePartyPokerus(struct Pokemon *party); void PartySpreadPokerus(struct Pokemon *party); struct Sprite *sub_80F7920(u16, u16, const u16 *); - +void BoxMonRestorePP(struct BoxPokemon *); #endif // GUARD_POKEMON_H diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index b82213bb2..ab2a14362 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -142,11 +142,60 @@ u8 sub_8096368(void); void sub_809635C(void); void sub_8096310(void); void sub_80961A8(void); - void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); -void BoxMonRestorePP(struct BoxPokemon *); -void party_compaction(void); +void sub_8098B48(void); +void sub_8099310(void); +bool8 sub_8099374(void); +void sub_80994A8(s16 a0); +void sub_809954C(void); +void sub_8099958(void); +bool8 sub_8099990(void); struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); +void sub_809BB90(void); +void sub_8099BF8(u8 a0); +void sub_8099C70(u8 whichBox); +bool8 sub_8099D34(void); +void sub_8099DCC(u8 a0); +bool8 sub_8099E08(void); +void sub_809A860(u8 a0); +void sub_809AA24(void); +void sub_809AA98(void); +bool8 sub_809AC00(void); +void sub_809B0C0(u8 a0); +void sub_809B0D4(void); +void sub_809B0E0(void); +u8 sub_809B0F4(void); +void sub_809B068(void); +void sub_809B100(u8 a0); +bool8 sub_809B130(void); +void sub_809B440(void); +bool8 sub_809B62C(u8); +void sub_809B6BC(void); +void sub_809B6DC(void); +bool8 sub_809B734(void); +void sub_809B760(void); +void sub_809B7AC(void); +void sub_809B7D4(void); +s8 sub_809B960(void); +void sub_809BBC0(void); +void sub_809BC18(void); +void sub_809BD14(void); +void party_compaction(void); +void sub_809BDD8(u8 markings); +bool8 sub_809BE80(void); +bool8 sub_809BEBC(void); +bool8 sub_809BF20(void); +bool8 sub_809BF48(void); +u8 sub_809CA40(void); +void sub_809CDCC(void); +void sub_809CDEC(u8 a0); +void sub_809CE84(void); +s16 sub_809CF30(void); +void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); +void sub_809CFF0(void); +void sub_809D034(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); +void sub_809D104(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); +void sub_809D16C(void *dest, u16 dLeft, u16 dTop, u16 width, u16 height); #endif // GUARD_POKEMON_STORAGE_SYSTEM_H diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index ff6f1f587..474f16323 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -89,59 +89,10 @@ void sub_80987DC(void); void sub_809880C(void); bool8 sub_8098830(void); void PrintStorageActionText(u8 index); -void sub_8098A38(u8); +void sub_8098A38(s8); void sub_8098A5C(void); void sub_8098A80(void); void sub_8098AA8(u8 a0); -void sub_8098B48(void); -void sub_8099310(void); -bool8 sub_8099374(void); -void sub_80994A8(s16 a0); -void sub_809954C(void); -void sub_8099958(void); -bool8 sub_8099990(void); -void sub_809BB90(void); -void sub_8099BF8(u8 a0); -void sub_8099C70(u8 whichBox); -bool8 sub_8099D34(void); -void sub_8099DCC(u8 a0); -bool8 sub_8099E08(void); -void sub_809A860(u8 a0); -void sub_809AA24(void); -void sub_809AA98(void); -bool8 sub_809AC00(void); -void sub_809B0C0(u8 a0); -void sub_809B0D4(void); -void sub_809B0E0(void); -u8 sub_809B0F4(void); -void sub_809B068(void); -void sub_809B100(u8 a0); -bool8 sub_809B130(void); -void sub_809B440(void); -bool8 sub_809B62C(u8); -void sub_809B6BC(void); -void sub_809B6DC(void); -bool8 sub_809B734(void); -void sub_809B760(void); -void sub_809B7AC(void); -void sub_809B7D4(void); -s8 sub_809B960(void); -void sub_809BBC0(void); -void sub_809BC18(void); -void sub_809BD14(void); -void sub_809BDD8(u8 markings); -bool8 sub_809BE80(void); -bool8 sub_809BEBC(void); -bool8 sub_809BF20(void); -bool8 sub_809BF48(void); -u8 sub_809CA40(void); -void sub_809CE84(void); -s16 sub_809CF30(void); -void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); -void sub_809CFF0(void); -void sub_809D034(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); -void sub_809D104(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); -void sub_809D16C(void *dest, u16 dLeft, u16 dTop, u16 width, u16 height); // .rodata @@ -2081,3 +2032,59 @@ const struct SpriteTemplate gSpriteTemplate_83B6F14 = { const struct OamData gOamData_83B6F2C = { .size = 2 }; + +void sub_8098A38(s8 a0) +{ + DisplayYesNoMenu(23, 10, 0); + MoveMenuCursor(a0); +} + +void sub_8098A5C(void) +{ + HandleDestroyMenuCursors(); + MenuZeroFillWindowRect(10, 16, 29, 19); + MenuZeroFillWindowRect(23, 10, 29, 15); +} + +void sub_8098A80(void) +{ + sub_809CDCC(); + sub_809CDEC(12); + sub_809CDEC(13); + sub_809CDEC(14); + sub_809CDEC(15); + sub_809CE84(); +} + +void sub_8098AA8(u8 a0) +{ + sub_809CDCC(); + switch (a0) + { + case 0: + sub_809CDEC(16); + sub_809CDEC(17); + sub_809CDEC(18); + sub_809CDEC(19); + break; + case 1: + sub_809CDEC(20); + sub_809CDEC(21); + sub_809CDEC(22); + sub_809CDEC(23); + break; + case 2: + sub_809CDEC(24); + sub_809CDEC(25); + sub_809CDEC(26); + sub_809CDEC(27); + break; + case 3: + sub_809CDEC(28); + sub_809CDEC(29); + sub_809CDEC(30); + sub_809CDEC(31); + break; + } + sub_809CE84(); +} -- cgit v1.2.3 From c4244f5bec27741c18a12611f245df5572b11d8b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 21:18:42 -0500 Subject: through sub_8098BF0 --- asm/pokemon_storage_system.s | 142 ++------------------------------- include/pokemon_storage_system.h | 21 +++-- ld_script.txt | 2 + src/pokemon/pokemon_storage_system.c | 14 ++-- src/pokemon/pokemon_storage_system_2.c | 27 ------- src/pokemon/pokemon_storage_system_3.c | 52 +++++++++++- src/pokemon/pokemon_storage_system_4.c | 23 ++++++ src/pokemon/pokemon_storage_system_5.c | 16 ++++ sym_ewram.txt | 7 +- 9 files changed, 126 insertions(+), 178 deletions(-) create mode 100644 src/pokemon/pokemon_storage_system_4.c create mode 100644 src/pokemon/pokemon_storage_system_5.c diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index a4cf34a2b..7e6f34d53 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,142 +5,6 @@ .text - thumb_func_start get_preferred_box -get_preferred_box: @ 8098B3C - ldr r0, _08098B44 @ =gPokemonStorage - ldrb r0, [r0] - bx lr - .align 2, 0 -_08098B44: .4byte gPokemonStorage - thumb_func_end get_preferred_box - - thumb_func_start sub_8098B48 -sub_8098B48: @ 8098B48 - push {r4,r5,lr} - bl sub_809D51C - movs r2, 0 - ldr r1, _08098BD8 @ =gPokemonStorageSystemPtr - ldr r0, [r1] - ldr r4, _08098BDC @ =0x000010d0 - adds r3, r0, r4 - movs r4, 0 - adds r5, r1, 0 -_08098B5C: - lsls r0, r2, 1 - adds r0, r3, r0 - strh r4, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x27 - bls _08098B5C - movs r2, 0 - ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x89 - lsls r1, 5 - adds r3, r0, r1 - movs r1, 0 -_08098B7A: - lsls r0, r2, 1 - adds r0, r3, r0 - strh r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x27 - bls _08098B7A - movs r2, 0 - ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r4, _08098BE0 @ =0x00001038 - adds r3, r0, r4 - movs r1, 0 -_08098B96: - lsls r0, r2, 2 - adds r0, r3, r0 - str r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x5 - bls _08098B96 - movs r2, 0 - ldr r0, _08098BD8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08098BE4 @ =0x00001050 - adds r3, r0, r1 - movs r1, 0 -_08098BB2: - lsls r0, r2, 2 - adds r0, r3, r0 - str r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1D - bls _08098BB2 - ldr r0, [r5] - ldr r2, _08098BE8 @ =0x00001034 - adds r1, r0, r2 - movs r2, 0 - str r2, [r1] - ldr r4, _08098BEC @ =0x00000d5c - adds r0, r4 - strh r2, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08098BD8: .4byte gPokemonStorageSystemPtr -_08098BDC: .4byte 0x000010d0 -_08098BE0: .4byte 0x00001038 -_08098BE4: .4byte 0x00001050 -_08098BE8: .4byte 0x00001034 -_08098BEC: .4byte 0x00000d5c - thumb_func_end sub_8098B48 - - thumb_func_start sub_8098BF0 -sub_8098BF0: @ 8098BF0 - push {r4-r6,lr} - sub sp, 0x8 - ldr r0, _08098C38 @ =gPokemonStorageSystemPtr - ldr r5, [r0] - ldr r0, _08098C3C @ =0x000025b4 - adds r4, r5, r0 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - adds r6, r0, 0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - str r1, [sp] - movs r1, 0x7 - str r1, [sp, 0x4] - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_8099AFC - ldr r1, _08098C40 @ =0x00001034 - adds r5, r1 - str r0, [r5] - ldr r1, _08098C44 @ =sub_80999C4 - str r1, [r0, 0x1C] - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08098C38: .4byte gPokemonStorageSystemPtr -_08098C3C: .4byte 0x000025b4 -_08098C40: .4byte 0x00001034 -_08098C44: .4byte sub_80999C4 - thumb_func_end sub_8098BF0 - thumb_func_start sub_8098C48 sub_8098C48: @ 8098C48 push {r4-r7,lr} @@ -2216,6 +2080,8 @@ sub_8099BE0: @ 8099BE0 bx r0 thumb_func_end sub_8099BE0 +// file boundary? + thumb_func_start sub_8099BF8 sub_8099BF8: @ 8099BF8 push {r4,lr} @@ -6273,6 +6139,8 @@ _0809BB88: .4byte gPokemonStorageSystemPtr _0809BB8C: .4byte 0x0000267d thumb_func_end sub_809B960 +// file boundary at or before here + thumb_func_start sub_809BB90 sub_809BB90: @ 809BB90 push {lr} @@ -8589,6 +8457,8 @@ _0809CDC4: .4byte gPokemonStorageSystemPtr _0809CDC8: .4byte 0x000011e4 thumb_func_end sub_809CD88 +// file boundary here + thumb_func_start sub_809CDCC sub_809CDCC: @ 809CDCC ldr r0, _0809CDE0 @ =gPokemonStorageSystemPtr diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index ab2a14362..7f16b5d4f 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -90,10 +90,18 @@ struct PokemonStorageSystemData { bool8 unk_08b1; s16 unk_08b2; u16 unk_08b4; - u8 filler_08b6[0x4a8]; + u8 filler_08b6[0x4a6]; + u16 unk_0d5c; s16 unk_0d5e; s16 unk_0d60; - u8 filler_0d62[0x486]; + u8 filler_0d62[0x2d2]; + struct Sprite *unk_1034; + u32 unk_1038[6]; + u32 unk_1050[30]; + u8 filler_10c8[8]; + u16 unk_10d0[40]; + u16 unk_1120[40]; + u8 filler_1170[0x78]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; @@ -113,7 +121,8 @@ struct PokemonStorageSystemData { u16 *unk_12b8; struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; - u8 filler_25b4[0xd8]; + struct Pokemon unk_25b4; + u8 filler_2618[0x74]; u8 unk_268c; u8 unk_268d; u8 unk_268e; @@ -131,11 +140,12 @@ struct PokemonStorageSystemData { u8 unk_4784[0x800]; }; -extern EWRAM_DATA u16 gUnknown_02039760[0x600]; - +extern u16 gUnknown_02039760[0x600]; +extern struct UnkPSSStruct_2002370 *gUnknown_02038478; extern struct PokemonStorageSystemData *const gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; +u8 CountPokemonInBoxN(u8 boxId); void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3); void sub_809634C(u8 curBox); u8 sub_8096368(void); @@ -145,6 +155,7 @@ void sub_80961A8(void); void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); void sub_8098B48(void); +void sub_8099200(u8 a0); void sub_8099310(void); bool8 sub_8099374(void); void sub_80994A8(s16 a0); diff --git a/ld_script.txt b/ld_script.txt index f81caa5bf..76f3ce9f9 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -130,6 +130,8 @@ SECTIONS { src/pokemon/pokemon_storage_system.o(.text); src/pokemon/pokemon_storage_system_2.o(.text); src/pokemon/pokemon_storage_system_3.o(.text); + src/pokemon/pokemon_storage_system_4.o(.text); + src/pokemon/pokemon_storage_system_5.o(.text); asm/pokemon_storage_system.o(.text); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index c91e45d7a..aebd13498 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -22,6 +22,12 @@ void sub_809665C(void); void sub_80966F4(const u8 *sourceString, u16 x, u16 y); void sub_8096784(struct Sprite *sprite); +EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; +EWRAM_DATA u8 gUnknown_02038470[3] = {}; +EWRAM_DATA u8 gUnknown_02038473 = 0; +EWRAM_DATA u8 gUnknown_02038474 = 0; +EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478 = NULL; + const struct PSS_MenuStringPtrs gUnknown_083B600C[] = { {PCText_WithdrawPoke, PCText_MovePokeToParty}, {PCText_DepositPoke, PCText_StorePokeInBox}, @@ -71,13 +77,7 @@ const u8 gBoxSelectionPopupCenterTiles[] = INCBIN_U8("graphics/pokemon_storage/b const u8 gBoxSelectionPopupSidesTiles[] = INCBIN_U8("graphics/pokemon_storage/box_selection_popup_sides.4bpp"); -EWRAM_DATA struct PokemonStorage gPokemonStorage = {0}; -EWRAM_DATA u8 gUnknown_02038470[3] = {}; -EWRAM_DATA u8 gUnknown_02038473 = 0; -EWRAM_DATA u8 gUnknown_02038474 = 0; -EWRAM_DATA struct UnkPSSStruct_2002370 *gUnknown_02038478 = NULL; - -static u8 CountPokemonInBoxN(u8 boxId) +u8 CountPokemonInBoxN(u8 boxId) { u16 i; u16 count; diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 474f16323..2947562d0 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -27,15 +27,6 @@ EWRAM_DATA u8 gUnknown_0203847C = 0; EWRAM_DATA u8 gUnknown_0203847D = 0; EWRAM_DATA u8 gUnknown_0203847E = 0; EWRAM_DATA u8 gUnknown_0203847F = 0; -EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; -EWRAM_DATA u8 gUnknown_020384E4 = 0; -EWRAM_DATA u8 gUnknown_020384E5 = 0; -EWRAM_DATA u8 gUnknown_020384E6 = 0; -EWRAM_DATA u8 gUnknown_020384E7 = 0; -EWRAM_DATA u8 gUnknown_020384E8 = 0; -EWRAM_DATA u8 gUnknown_020384E9 = 0; -EWRAM_DATA u16 gUnknown_020384EA = 0; -EWRAM_DATA u32 gUnknown_020384EC = 0; // Static ROM declarations @@ -80,7 +71,6 @@ void sub_8098400(void); void add_to_c3_somehow(void); void sub_8098780(void); void sub_8098690(bool8 flag); -void sub_8099200(u8 a0); bool8 sub_80985CC(void); void sub_80986E8(void); void sub_8098710(void); @@ -159,7 +149,6 @@ const struct SpritePalette gWaveformSpritePalette = { // .text - void task_intro_29(u8 whichMenu) { gUnknown_0203847D = whichMenu; @@ -2017,22 +2006,6 @@ const struct SpriteTemplate gSpriteTemplate_83B6EFC = { SpriteCallbackDummy }; -const struct OamData gOamData_83B6F2C; - -const struct SpriteTemplate gSpriteTemplate_83B6F14 = { - 0x000f, - 0xdac0, - &gOamData_83B6F2C, - gDummySpriteAnimTable, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy -}; - -const struct OamData gOamData_83B6F2C = { - .size = 2 -}; - void sub_8098A38(s8 a0) { DisplayYesNoMenu(23, 10, 0); diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 9e0052b89..eff542756 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -1,16 +1,64 @@ // Includes #include "global.h" +#include "sprite.h" +#include "pokemon_icon.h" #include "pokemon_storage_system.h" // Static type declarations // Static RAM declarations -EWRAM_DATA u16 gUnknown_02039760[0x600] = {}; - // Static ROM declarations +void sub_80999C4(struct Sprite *sprite); +struct Sprite *sub_8099AFC(u16 species, u32 personality, u16 a2, u16 a3, u8 a4, u8 a5); + // .rodata +const struct OamData gOamData_83B6F2C; + +const struct SpriteTemplate gSpriteTemplate_83B6F14 = { + 0x000f, + 0xdac0, + &gOamData_83B6F2C, + gDummySpriteAnimTable, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +const struct OamData gOamData_83B6F2C = { + .size = 2 +}; + // .text + +u8 get_preferred_box(void) +{ + return gPokemonStorage.currentBox; +} + +void sub_8098B48(void) +{ + u16 i; + + sub_809D51C(); + for (i = 0; i < 40; i++) + gPokemonStorageSystemPtr->unk_10d0[i] = 0; + for (i = 0; i < 40; i++) + gPokemonStorageSystemPtr->unk_1120[i] = 0; + for (i = 0; i < 6; i++) + gPokemonStorageSystemPtr->unk_1038[i] = 0; + for (i = 0; i < 30; i++) + gPokemonStorageSystemPtr->unk_1050[i] = 0; + gPokemonStorageSystemPtr->unk_1034 = NULL; + gPokemonStorageSystemPtr->unk_0d5c = 0; +} + +void sub_8098BF0(void) +{ + u32 personality = GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_PERSONALITY); + gPokemonStorageSystemPtr->unk_1034 = sub_8099AFC(GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_SPECIES2), personality, 0, 0, 1, 7); + gPokemonStorageSystemPtr->unk_1034->callback = sub_80999C4; +} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c new file mode 100644 index 000000000..f7a008db2 --- /dev/null +++ b/src/pokemon/pokemon_storage_system_4.c @@ -0,0 +1,23 @@ + +// Includes +#include "global.h" +#include "pokemon_storage_system.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; +EWRAM_DATA u8 gUnknown_020384E4 = 0; +EWRAM_DATA u8 gUnknown_020384E5 = 0; +EWRAM_DATA u8 gUnknown_020384E6 = 0; +EWRAM_DATA u8 gUnknown_020384E7 = 0; +EWRAM_DATA u8 gUnknown_020384E8 = 0; +EWRAM_DATA u8 gUnknown_020384E9 = 0; +EWRAM_DATA u16 gUnknown_020384EA = 0; + +// Static ROM declarations + +// .rodata + +// .text diff --git a/src/pokemon/pokemon_storage_system_5.c b/src/pokemon/pokemon_storage_system_5.c new file mode 100644 index 000000000..f809439ff --- /dev/null +++ b/src/pokemon/pokemon_storage_system_5.c @@ -0,0 +1,16 @@ + +// Includes +#include "global.h" +#include "pokemon_storage_system.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA u32 gUnknown_020384EC = 0; + +// Static ROM declarations + +// .rodata + +// .text diff --git a/sym_ewram.txt b/sym_ewram.txt index ac9805f3e..4b5de3e85 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -379,6 +379,9 @@ gUnknown_0202FFA4: @ 202FFA4 .include "src/engine/trainer_card.o" .include "src/pokemon/pokemon_storage_system.o" .include "src/pokemon/pokemon_storage_system_2.o" + .include "src/pokemon/pokemon_storage_system_3.o" + .include "src/pokemon/pokemon_storage_system_4.o" + .include "src/pokemon/pokemon_storage_system_5.o" @ pokemon_summary_screen @@ -561,5 +564,7 @@ gTileBuffer: @ 2039360 gUnknown_02039460: @ 2039460 .space 0x300 - .include "src/pokemon/pokemon_storage_system_3.o" +gUnknown_02039760: @ 2039760 + .space 0xc00 + .include "src/engine/menu_cursor.o" -- cgit v1.2.3 From 7cdd2b2a42a96135949e399d1fa3a00c5f56ae67 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 22:08:11 -0500 Subject: through sub_8098E68 --- asm/pokemon_storage_system.s | 324 +-------------------------------- include/pokemon_storage_system.h | 10 +- src/pokemon/pokemon_storage_system_2.c | 4 +- src/pokemon/pokemon_storage_system_3.c | 89 ++++++++- 4 files changed, 99 insertions(+), 328 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 7e6f34d53..90b8caa5c 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,316 +5,6 @@ .text - thumb_func_start sub_8098C48 -sub_8098C48: @ 8098C48 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, _08098CCC @ =gPokemonStorage + 0x4 - adds r6, r0, r1 - movs r0, 0 - mov r8, r0 - movs r7, 0 -_08098C6A: - movs r5, 0 - adds r1, r7, 0x1 - mov r9, r1 -_08098C70: - adds r0, r6, 0 - movs r1, 0x41 - bl GetBoxMonData - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _08098CD8 - adds r0, r6, 0 - movs r1, 0 - bl GetBoxMonData - adds r1, r0, 0 - lsls r2, r5, 1 - adds r2, r5 - lsls r2, 19 - movs r3, 0xC8 - lsls r3, 15 - adds r2, r3 - asrs r2, 16 - lsls r3, r7, 1 - adds r3, r7 - lsls r3, 19 - movs r0, 0xB0 - lsls r0, 14 - adds r3, r0 - movs r0, 0x2 - str r0, [sp] - movs r0, 0x12 - subs r0, r5 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - adds r0, r4, 0 - asrs r3, 16 - bl sub_8099AFC - ldr r1, _08098CD0 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - mov r3, r8 - lsls r2, r3, 2 - ldr r3, _08098CD4 @ =0x00001050 - adds r1, r3 - adds r1, r2 - str r0, [r1] - b _08098CE8 - .align 2, 0 -_08098CCC: .4byte gPokemonStorage + 0x4 -_08098CD0: .4byte gPokemonStorageSystemPtr -_08098CD4: .4byte 0x00001050 -_08098CD8: - ldr r0, _08098D18 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - mov r2, r8 - lsls r1, r2, 2 - ldr r3, _08098D1C @ =0x00001050 - adds r0, r3 - adds r0, r1 - str r4, [r0] -_08098CE8: - adds r6, 0x50 - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _08098C70 - mov r1, r9 - lsls r0, r1, 16 - lsrs r7, r0, 16 - cmp r7, 0x4 - bls _08098C6A - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08098D18: .4byte gPokemonStorageSystemPtr -_08098D1C: .4byte 0x00001050 - thumb_func_end sub_8098C48 - - thumb_func_start sub_8098D20 -sub_8098D20: @ 8098D20 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r2, r1, 4 - subs r2, r1 - lsls r2, 5 - lsls r0, r4, 2 - mov r9, r0 - adds r0, r4 - lsls r0, 4 - ldr r1, _08098DD4 @ =gPokemonStorage + 0x4 - adds r0, r1 - adds r7, r2, r0 - adds r0, r7, 0 - movs r1, 0x41 - bl GetBoxMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - cmp r0, 0 - beq _08098DC4 - adds r0, r4, 0 - movs r1, 0x6 - bl __umodsi3 - adds r6, r0, 0 - lsls r0, r6, 24 - lsrs r0, 24 - lsls r5, r0, 1 - adds r5, r0 - lsls r5, 19 - movs r1, 0xC8 - lsls r1, 15 - adds r5, r1 - lsrs r5, 16 - adds r0, r4, 0 - movs r1, 0x6 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 1 - adds r4, r0 - lsls r4, 19 - movs r2, 0xB0 - lsls r2, 14 - adds r4, r2 - lsrs r4, 16 - adds r0, r7, 0 - movs r1, 0 - bl GetBoxMonData - adds r1, r0, 0 - movs r0, 0x2 - str r0, [sp] - movs r0, 0x12 - subs r0, r6 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - mov r0, r8 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_8099AFC - ldr r1, _08098DD8 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _08098DDC @ =0x00001050 - adds r1, r2 - add r1, r9 - str r0, [r1] -_08098DC4: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08098DD4: .4byte gPokemonStorage + 0x4 -_08098DD8: .4byte gPokemonStorageSystemPtr -_08098DDC: .4byte 0x00001050 - thumb_func_end sub_8098D20 - - thumb_func_start sub_8098DE0 -sub_8098DE0: @ 8098DE0 - push {r4-r6,lr} - lsls r0, 16 - lsrs r4, r0, 16 - movs r2, 0 - ldr r0, _08098E18 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08098E1C @ =0x00001050 - adds r3, r0, r1 - movs r6, 0x1 - ldr r5, _08098E20 @ =sub_8098E68 -_08098DF4: - lsls r0, r2, 2 - adds r1, r3, r0 - ldr r0, [r1] - cmp r0, 0 - beq _08098E08 - strh r4, [r0, 0x32] - ldr r0, [r1] - strh r6, [r0, 0x36] - ldr r0, [r1] - str r5, [r0, 0x1C] -_08098E08: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1D - bls _08098DF4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08098E18: .4byte gPokemonStorageSystemPtr -_08098E1C: .4byte 0x00001050 -_08098E20: .4byte sub_8098E68 - thumb_func_end sub_8098DE0 - - thumb_func_start sub_8098E24 -sub_8098E24: @ 8098E24 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x30] - movs r3, 0x30 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _08098E40 - subs r0, r1, 0x1 - strh r0, [r2, 0x30] - ldrh r0, [r2, 0x32] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - b _08098E56 -_08098E40: - ldr r0, _08098E5C @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r3, _08098E60 @ =0x00001178 - adds r1, r3 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - ldrh r0, [r2, 0x34] - strh r0, [r2, 0x20] - ldr r0, _08098E64 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] -_08098E56: - pop {r0} - bx r0 - .align 2, 0 -_08098E5C: .4byte gPokemonStorageSystemPtr -_08098E60: .4byte 0x00001178 -_08098E64: .4byte SpriteCallbackDummy - thumb_func_end sub_8098E24 - - thumb_func_start sub_8098E68 -sub_8098E68: @ 8098E68 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x36] - movs r3, 0x36 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _08098E7C - subs r0, r1, 0x1 - strh r0, [r2, 0x36] - b _08098E98 -_08098E7C: - ldrh r0, [r2, 0x32] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - ldrh r1, [r2, 0x24] - adds r0, r1 - strh r0, [r2, 0x38] - subs r0, 0x45 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB6 - bls _08098E98 - ldr r0, _08098E9C @ =SpriteCallbackDummy - str r0, [r2, 0x1C] -_08098E98: - pop {r0} - bx r0 - .align 2, 0 -_08098E9C: .4byte SpriteCallbackDummy - thumb_func_end sub_8098E68 - thumb_func_start sub_8098EA0 sub_8098EA0: @ 8098EA0 push {r4-r7,lr} @@ -443,7 +133,7 @@ _08098F42: adds r0, r5, 0 ldr r4, [sp, 0x1C] asrs r2, r4, 16 - bl sub_8099AFC + bl PSS_SpawnMonIconSprite ldr r2, [sp, 0x20] adds r1, r2, r7 str r0, [r1] @@ -772,7 +462,7 @@ sub_8099200: @ 8099200 adds r0, r5, 0 movs r2, 0x68 movs r3, 0x40 - bl sub_8099AFC + bl PSS_SpawnMonIconSprite ldr r1, _080992A4 @ =gPokemonStorageSystemPtr ldr r1, [r1] ldr r2, _080992A8 @ =0x00001038 @@ -811,7 +501,7 @@ _08099246: str r0, [sp, 0x4] adds r0, r5, 0 movs r2, 0x98 - bl sub_8099AFC + bl PSS_SpawnMonIconSprite ldr r1, _080992A4 @ =gPokemonStorageSystemPtr ldr r1, [r1] lsls r2, r6, 2 @@ -1957,8 +1647,8 @@ _08099AF6: bx r0 thumb_func_end sub_8099AAC - thumb_func_start sub_8099AFC -sub_8099AFC: @ 8099AFC + thumb_func_start PSS_SpawnMonIconSprite +PSS_SpawnMonIconSprite: @ 8099AFC push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -2065,7 +1755,7 @@ _08099BD0: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_8099AFC + thumb_func_end PSS_SpawnMonIconSprite thumb_func_start sub_8099BE0 sub_8099BE0: @ 8099BE0 @@ -2114,7 +1804,7 @@ sub_8099BF8: @ 8099BF8 bl sub_809A23C bl sub_809A6DC adds r0, r4, 0 - bl sub_8098C48 + bl SpawnBoxIconSprites ldr r1, _08099C68 @ =REG_BG2CNT ldr r2, _08099C6C @ =0x00005a0a adds r0, r2, 0 diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 7f16b5d4f..26c1b140d 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -96,12 +96,14 @@ struct PokemonStorageSystemData { s16 unk_0d60; u8 filler_0d62[0x2d2]; struct Sprite *unk_1034; - u32 unk_1038[6]; - u32 unk_1050[30]; + struct Sprite *unk_1038[6]; + struct Sprite *unk_1050[30]; u8 filler_10c8[8]; u16 unk_10d0[40]; u16 unk_1120[40]; - u8 filler_1170[0x78]; + u8 filler_1170[8]; + u16 unk_1178; + u8 filler_117a[0x6e]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; @@ -154,7 +156,7 @@ void sub_8096310(void); void sub_80961A8(void); void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); -void sub_8098B48(void); +void ResetPSSMonIconSprites(void); void sub_8099200(u8 a0); void sub_8099310(void); bool8 sub_8099374(void); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 2947562d0..dbb1cf992 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -217,7 +217,7 @@ void sub_8096884(void) gMain.state++; break; case 4: - sub_8098B48(); + ResetPSSMonIconSprites(); sub_809AA24(); gMain.state++; break; @@ -280,7 +280,7 @@ void sub_80969A0(void) gMain.state++; break; case 4: - sub_8098B48(); + ResetPSSMonIconSprites(); sub_809AA98(); gMain.state++; break; diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index eff542756..e1ccd107f 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -1,6 +1,7 @@ // Includes #include "global.h" +#include "constants/species.h" #include "sprite.h" #include "pokemon_icon.h" #include "pokemon_storage_system.h" @@ -11,8 +12,9 @@ // Static ROM declarations +void sub_8098E68(struct Sprite *sprite); void sub_80999C4(struct Sprite *sprite); -struct Sprite *sub_8099AFC(u16 species, u32 personality, u16 a2, u16 a3, u8 a4, u8 a5); +struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 a2, s16 a3, u8 a4, u8 a5); // .rodata @@ -39,7 +41,7 @@ u8 get_preferred_box(void) return gPokemonStorage.currentBox; } -void sub_8098B48(void) +void ResetPSSMonIconSprites(void) { u16 i; @@ -49,9 +51,9 @@ void sub_8098B48(void) for (i = 0; i < 40; i++) gPokemonStorageSystemPtr->unk_1120[i] = 0; for (i = 0; i < 6; i++) - gPokemonStorageSystemPtr->unk_1038[i] = 0; + gPokemonStorageSystemPtr->unk_1038[i] = NULL; for (i = 0; i < 30; i++) - gPokemonStorageSystemPtr->unk_1050[i] = 0; + gPokemonStorageSystemPtr->unk_1050[i] = NULL; gPokemonStorageSystemPtr->unk_1034 = NULL; gPokemonStorageSystemPtr->unk_0d5c = 0; } @@ -59,6 +61,83 @@ void sub_8098B48(void) void sub_8098BF0(void) { u32 personality = GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_PERSONALITY); - gPokemonStorageSystemPtr->unk_1034 = sub_8099AFC(GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_SPECIES2), personality, 0, 0, 1, 7); + gPokemonStorageSystemPtr->unk_1034 = PSS_SpawnMonIconSprite(GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_SPECIES2), personality, 0, 0, 1, 7); gPokemonStorageSystemPtr->unk_1034->callback = sub_80999C4; } + +void SpawnBoxIconSprites(u8 boxId) +{ + struct BoxPokemon *box = gPokemonStorage.boxes[boxId]; + u16 i; + u16 k = 0; + for (i = 0; i < 5; i++) + { + u16 j; + for (j = 0; j < 6; j++) + { + u16 species = GetBoxMonData(box, MON_DATA_SPECIES2); + if (species != SPECIES_NONE) + gPokemonStorageSystemPtr->unk_1050[k] = PSS_SpawnMonIconSprite(species, GetBoxMonData(box, MON_DATA_PERSONALITY), 24 * j + 0x64, 24 * i + 0x2c, 2, 18 - j); + else + gPokemonStorageSystemPtr->unk_1050[k] = NULL; + box++; + k++; + } + } +} + +void sub_8098D20(u8 monId) +{ + struct BoxPokemon *mon = gPokemonStorage.boxes[get_preferred_box()] + monId; + u16 species = GetBoxMonData(mon, MON_DATA_SPECIES2); + if (species != SPECIES_NONE) + { + s16 x = 24 * (monId % 6) + 0x64; + s16 y = 24 * (monId / 6) + 0x2c; + gPokemonStorageSystemPtr->unk_1050[monId] = PSS_SpawnMonIconSprite(species, GetBoxMonData(mon, MON_DATA_PERSONALITY), x, y, 2, 18 - (monId % 6)); + } +} + +void sub_8098DE0(s16 a0) +{ + u16 monId; + for (monId = 0; monId < 30; monId++) + { + if (gPokemonStorageSystemPtr->unk_1050[monId]) + { + gPokemonStorageSystemPtr->unk_1050[monId]->data[2] = a0; + gPokemonStorageSystemPtr->unk_1050[monId]->data[4] = 1; + gPokemonStorageSystemPtr->unk_1050[monId]->callback = sub_8098E68; + } + } +} + +void sub_8098E24(struct Sprite *sprite) +{ + if (sprite->data[1] != 0) + { + sprite->data[1]--; + sprite->pos1.x += sprite->data[2]; + } + else + { + gPokemonStorageSystemPtr->unk_1178--; + sprite->pos1.x = sprite->data[3]; + sprite->callback = SpriteCallbackDummy; + } +} + +void sub_8098E68(struct Sprite *sprite) +{ + if (sprite->data[4] != 0) + { + sprite->data[4]--; + } + else + { + sprite->pos1.x += sprite->data[2]; + sprite->data[5] = sprite->pos1.x + sprite->pos2.x; + if (sprite->data[5] < 0x45 || sprite->data[5] > 0xfb) + sprite->callback = SpriteCallbackDummy; + } +} -- cgit v1.2.3 From 4ae149b93441ffce560f3b7018842bc4c5d39326 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 22:52:37 -0500 Subject: through sub_8098EE0 --- asm/pokemon_storage_system.s | 185 --------------------------------- include/pokemon_storage_system.h | 4 +- src/pokemon/pokemon_storage_system_3.c | 52 +++++++++ 3 files changed, 55 insertions(+), 186 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 90b8caa5c..3f9795384 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,191 +5,6 @@ .text - thumb_func_start sub_8098EA0 -sub_8098EA0: @ 8098EA0 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r6, 0 - ldr r0, _08098ED8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08098EDC @ =0x00001050 - adds r7, r0, r1 -_08098EB0: - lsls r0, r5, 2 - adds r4, r7, r0 - ldr r0, [r4] - cmp r0, 0 - beq _08098EC2 - bl sub_8099BE0 - movs r0, 0 - str r0, [r4] -_08098EC2: - adds r0, r5, 0x6 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x4 - bls _08098EB0 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08098ED8: .4byte gPokemonStorageSystemPtr -_08098EDC: .4byte 0x00001050 - thumb_func_end sub_8098EA0 - - thumb_func_start sub_8098EE0 -sub_8098EE0: @ 8098EE0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r1, 16 - str r1, [sp, 0x8] - lsls r2, 16 - movs r0, 0x2C - str r0, [sp, 0x10] - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 19 - movs r1, 0xC8 - lsls r1, 15 - adds r0, r1 - lsrs r0, 16 - mov r10, r0 - ldr r0, [sp, 0x8] - adds r0, 0x1 - lsrs r3, r2, 16 - str r3, [sp, 0xC] - asrs r2, 16 - adds r1, r0, 0 - muls r1, r2 - mov r4, r10 - subs r1, r4, r1 - movs r0, 0x12 - subs r0, r6 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x18] - movs r0, 0 - str r0, [sp, 0x14] - mov r9, r0 - ldr r0, _08098FF8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r2, _08098FFC @ =0x0000117d - adds r2, r0 - mov r8, r2 - ldr r3, _08099000 @ =0x00001050 - adds r3, r0, r3 - str r3, [sp, 0x20] - lsls r1, 16 - str r1, [sp, 0x1C] -_08098F42: - mov r4, r8 - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - lsls r7, r6, 2 - adds r1, r7, r6 - lsls r1, 4 - ldr r2, _08099004 @ =gPokemonStorage + 0x4 - adds r4, r1, r2 - adds r0, r4 - movs r1, 0x41 - bl GetBoxMonData - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _08098FC8 - mov r1, r8 - ldrb r0, [r1] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - adds r0, r4 - movs r1, 0 - bl GetBoxMonData - adds r1, r0, 0 - ldr r2, [sp, 0x10] - lsls r3, r2, 16 - asrs r3, 16 - movs r0, 0x2 - str r0, [sp] - ldr r4, [sp, 0x18] - str r4, [sp, 0x4] - adds r0, r5, 0 - ldr r4, [sp, 0x1C] - asrs r2, r4, 16 - bl PSS_SpawnMonIconSprite - ldr r2, [sp, 0x20] - adds r1, r2, r7 - str r0, [r1] - cmp r0, 0 - beq _08098FC8 - mov r3, sp - ldrh r3, [r3, 0x8] - strh r3, [r0, 0x30] - ldr r0, [r1] - mov r4, sp - ldrh r4, [r4, 0xC] - strh r4, [r0, 0x32] - ldr r0, [r1] - mov r2, r10 - strh r2, [r0, 0x34] - ldr r1, [r1] - ldr r0, _08099008 @ =sub_8098E24 - str r0, [r1, 0x1C] - ldr r0, [sp, 0x14] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] -_08098FC8: - adds r0, r6, 0x6 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, [sp, 0x10] - adds r0, 0x18 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x10] - mov r0, r9 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - cmp r0, 0x4 - bls _08098F42 - ldr r0, [sp, 0x14] - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08098FF8: .4byte gPokemonStorageSystemPtr -_08098FFC: .4byte 0x0000117d -_08099000: .4byte 0x00001050 -_08099004: .4byte gPokemonStorage + 0x4 -_08099008: .4byte sub_8098E24 - thumb_func_end sub_8098EE0 - thumb_func_start sub_809900C sub_809900C: @ 809900C push {r4-r6,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 26c1b140d..295084eea 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -103,7 +103,9 @@ struct PokemonStorageSystemData { u16 unk_1120[40]; u8 filler_1170[8]; u16 unk_1178; - u8 filler_117a[0x6e]; + u8 filler_117a[3]; + u8 unk_117d; + u8 filler_117e[0x6a]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index e1ccd107f..77d85de65 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -15,6 +15,7 @@ void sub_8098E68(struct Sprite *sprite); void sub_80999C4(struct Sprite *sprite); struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 a2, s16 a3, u8 a4, u8 a5); +void sub_8099BE0(struct Sprite *sprite); // .rodata @@ -141,3 +142,54 @@ void sub_8098E68(struct Sprite *sprite) sprite->callback = SpriteCallbackDummy; } } + +void sub_8098EA0(u8 col) +{ + u16 i; + + for (i = 0; i < 5; i++) + { + if (gPokemonStorageSystemPtr->unk_1050[col]) + { + sub_8099BE0(gPokemonStorageSystemPtr->unk_1050[col]); + gPokemonStorageSystemPtr->unk_1050[col] = NULL; + } + col += 6; + } +} + +u8 sub_8098EE0(u8 a0, u16 a1, s16 a2) +{ + u16 i; + u16 x; + u16 y; + u8 count; + u8 x1; + u16 sp1c; + + y = 0x2c; + x = 24 * a0 + 0x64; + sp1c = x - (a1 + 1) * a2; + x1 = 18 - a0; + count = 0; + + for (i = 0; i < 5; i++) + { + u16 species = GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + a0, MON_DATA_SPECIES2); + if (species != SPECIES_NONE) + { + gPokemonStorageSystemPtr->unk_1050[a0] = PSS_SpawnMonIconSprite(species, GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + a0, MON_DATA_PERSONALITY), sp1c, y, 2, x1); + if (gPokemonStorageSystemPtr->unk_1050[a0]) + { + gPokemonStorageSystemPtr->unk_1050[a0]->data[1] = a1; + gPokemonStorageSystemPtr->unk_1050[a0]->data[2] = a2; + gPokemonStorageSystemPtr->unk_1050[a0]->data[3] = x; + gPokemonStorageSystemPtr->unk_1050[a0]->callback = sub_8098E24; + count++; + } + } + a0 += 6; + y += 24; + } + return count; +} -- cgit v1.2.3 From cb28e3a679841c01191f19cb7e7f0da28f0bf160 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Jan 2018 23:05:21 -0500 Subject: sub_809900C --- asm/pokemon_storage_system.s | 77 ---------------------------------- include/pokemon_storage_system.h | 9 +++- src/pokemon/pokemon_storage_system_3.c | 16 +++++++ 3 files changed, 23 insertions(+), 79 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 3f9795384..3c4a03ad5 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,83 +5,6 @@ .text - thumb_func_start sub_809900C -sub_809900C: @ 809900C - push {r4-r6,lr} - lsls r1, 24 - lsrs r1, 24 - ldr r4, _08099058 @ =gPokemonStorageSystemPtr - ldr r5, [r4] - ldr r3, _0809905C @ =0x0000117c - adds r2, r5, r3 - movs r3, 0 - strb r3, [r2] - ldr r6, _08099060 @ =0x0000117d - adds r2, r5, r6 - strb r0, [r2] - ldr r2, _08099064 @ =0x0000117b - adds r0, r5, r2 - strb r1, [r0] - subs r6, 0xB - adds r2, r5, r6 - movs r0, 0x20 - strh r0, [r2] - lsls r1, 24 - asrs r1, 24 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 1 - negs r0, r0 - adds r6, 0x4 - adds r2, r5, r6 - strh r0, [r2] - ldr r2, _08099068 @ =0x00001178 - adds r0, r5, r2 - strh r3, [r0] - cmp r1, 0 - ble _08099070 - ldr r3, _0809906C @ =0x0000117a - adds r1, r5, r3 - movs r0, 0 - b _08099076 - .align 2, 0 -_08099058: .4byte gPokemonStorageSystemPtr -_0809905C: .4byte 0x0000117c -_08099060: .4byte 0x0000117d -_08099064: .4byte 0x0000117b -_08099068: .4byte 0x00001178 -_0809906C: .4byte 0x0000117a -_08099070: - ldr r6, _080990A0 @ =0x0000117a - adds r1, r5, r6 - movs r0, 0x5 -_08099076: - strb r0, [r1] - ldr r2, [r4] - ldr r1, _080990A0 @ =0x0000117a - adds r0, r2, r1 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x64 - ldr r3, _080990A4 @ =0x00001174 - adds r1, r2, r3 - strh r0, [r1] - ldr r6, _080990A8 @ =0x00001176 - adds r2, r6 - movs r1, 0 - ldrsh r0, [r2, r1] - bl sub_8098DE0 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080990A0: .4byte 0x0000117a -_080990A4: .4byte 0x00001174 -_080990A8: .4byte 0x00001176 - thumb_func_end sub_809900C - thumb_func_start sub_80990AC sub_80990AC: @ 80990AC push {r4-r6,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 295084eea..0f20bfa16 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -101,9 +101,14 @@ struct PokemonStorageSystemData { u8 filler_10c8[8]; u16 unk_10d0[40]; u16 unk_1120[40]; - u8 filler_1170[8]; + u8 filler_1170[2]; + u16 unk_1172; + u16 unk_1174; + s16 unk_1176; u16 unk_1178; - u8 filler_117a[3]; + u8 unk_117a; + u8 unk_117b; + u8 unk_117c; u8 unk_117d; u8 filler_117e[0x6a]; u8 *unk_11e8; diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 77d85de65..af050d324 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -193,3 +193,19 @@ u8 sub_8098EE0(u8 a0, u16 a1, s16 a2) } return count; } + +void sub_809900C(u8 a0, s8 a1) +{ + gPokemonStorageSystemPtr->unk_117c = 0; + gPokemonStorageSystemPtr->unk_117d = a0; + gPokemonStorageSystemPtr->unk_117b = a1; + gPokemonStorageSystemPtr->unk_1172 = 32; + gPokemonStorageSystemPtr->unk_1176 = -6 * a1; + gPokemonStorageSystemPtr->unk_1178 = 0; + if (a1 > 0) + gPokemonStorageSystemPtr->unk_117a = 0; + else + gPokemonStorageSystemPtr->unk_117a = 5; + gPokemonStorageSystemPtr->unk_1174 = 24 * gPokemonStorageSystemPtr->unk_117a + 0x64; + sub_8098DE0(gPokemonStorageSystemPtr->unk_1176); +} -- cgit v1.2.3 From e0726bf8d6af39f287c65ad22ce192988e8468bb Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Jan 2018 20:20:16 -0500 Subject: through sub_8099374 --- asm/pokemon_storage_system.s | 371 --------------------------------- include/pokemon_storage_system.h | 13 +- src/pokemon/pokemon_storage_system_2.c | 4 +- src/pokemon/pokemon_storage_system_3.c | 101 +++++++++ 4 files changed, 110 insertions(+), 379 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 3c4a03ad5..a794269eb 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,377 +5,6 @@ .text - thumb_func_start sub_80990AC -sub_80990AC: @ 80990AC - push {r4-r6,lr} - ldr r0, _080990D4 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r0, _080990D8 @ =0x00001172 - adds r3, r4, r0 - ldrh r0, [r3] - cmp r0, 0 - beq _080990C0 - subs r0, 0x1 - strh r0, [r3] -_080990C0: - ldr r1, _080990DC @ =0x0000117c - adds r6, r4, r1 - ldrb r0, [r6] - cmp r0, 0x1 - beq _08099138 - cmp r0, 0x1 - bgt _080990E0 - cmp r0, 0 - beq _080990E8 - b _080991F0 - .align 2, 0 -_080990D4: .4byte gPokemonStorageSystemPtr -_080990D8: .4byte 0x00001172 -_080990DC: .4byte 0x0000117c -_080990E0: - cmp r0, 0x2 - bne _080990E6 - b _080991E0 -_080990E6: - b _080991F0 -_080990E8: - ldr r2, _0809912C @ =0x00001174 - adds r5, r4, r2 - ldr r3, _08099130 @ =0x00001176 - adds r0, r4, r3 - ldrh r0, [r0] - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - subs r0, 0x41 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xBA - bhi _08099104 - b _080991F8 -_08099104: - adds r2, 0x6 - adds r0, r4, r2 - ldrb r0, [r0] - bl sub_8098EA0 - ldr r3, _08099134 @ =0x0000117b - adds r0, r4, r3 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] - b _080991F8 - .align 2, 0 -_0809912C: .4byte 0x00001174 -_08099130: .4byte 0x00001176 -_08099134: .4byte 0x0000117b -_08099138: - ldr r2, _08099194 @ =0x00001174 - adds r1, r4, r2 - ldr r5, _08099198 @ =0x00001176 - adds r2, r4, r5 - ldrh r0, [r2] - ldrh r5, [r1] - adds r0, r5 - strh r0, [r1] - ldr r0, _0809919C @ =0x0000117a - adds r5, r4, r0 - ldrb r0, [r5] - ldrh r1, [r3] - movs r3, 0 - ldrsh r2, [r2, r3] - bl sub_8098EE0 - ldr r2, _080991A0 @ =0x00001178 - adds r1, r4, r2 - lsls r0, 24 - lsrs r0, 24 - ldrh r3, [r1] - adds r0, r3 - strh r0, [r1] - ldr r1, _080991A4 @ =0x0000117b - adds r0, r4, r1 - movs r1, 0 - ldrsb r1, [r0, r1] - cmp r1, 0 - ble _08099178 - ldrb r0, [r5] - cmp r0, 0x5 - beq _08099182 -_08099178: - cmp r1, 0 - bge _080991B0 - ldrb r0, [r5] - cmp r0, 0 - bne _080991B0 -_08099182: - ldr r0, _080991A8 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r2, _080991AC @ =0x0000117c - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080991F8 - .align 2, 0 -_08099194: .4byte 0x00001174 -_08099198: .4byte 0x00001176 -_0809919C: .4byte 0x0000117a -_080991A0: .4byte 0x00001178 -_080991A4: .4byte 0x0000117b -_080991A8: .4byte gPokemonStorageSystemPtr -_080991AC: .4byte 0x0000117c -_080991B0: - ldr r0, _080991D0 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r5, _080991D4 @ =0x0000117a - adds r3, r1, r5 - ldr r2, _080991D8 @ =0x0000117b - adds r0, r1, r2 - ldrb r0, [r0] - ldrb r5, [r3] - adds r0, r5 - movs r2, 0 - strb r0, [r3] - ldr r0, _080991DC @ =0x0000117c - adds r1, r0 - strb r2, [r1] - b _080991F8 - .align 2, 0 -_080991D0: .4byte gPokemonStorageSystemPtr -_080991D4: .4byte 0x0000117a -_080991D8: .4byte 0x0000117b -_080991DC: .4byte 0x0000117c -_080991E0: - ldr r1, _080991F4 @ =0x00001178 - adds r0, r4, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _080991F8 - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] -_080991F0: - movs r0, 0 - b _080991FA - .align 2, 0 -_080991F4: .4byte 0x00001178 -_080991F8: - movs r0, 0x1 -_080991FA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80990AC - - thumb_func_start sub_8099200 -sub_8099200: @ 8099200 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r4, _080992A0 @ =gPlayerParty - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - adds r1, r0, 0 - movs r0, 0x1 - str r0, [sp] - movs r0, 0xB - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r2, 0x68 - movs r3, 0x40 - bl PSS_SpawnMonIconSprite - ldr r1, _080992A4 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _080992A8 @ =0x00001038 - adds r1, r2 - str r0, [r1] - movs r7, 0x1 - movs r6, 0x1 -_08099246: - movs r0, 0x64 - adds r1, r6, 0 - muls r1, r0 - ldr r0, _080992A0 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _080992AC - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - adds r1, r0, 0 - subs r0, r6, 0x1 - lsls r3, r0, 1 - adds r3, r0 - lsls r3, 19 - movs r0, 0x80 - lsls r0, 13 - adds r3, r0 - asrs r3, 16 - movs r0, 0x1 - str r0, [sp] - movs r0, 0xB - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r2, 0x98 - bl PSS_SpawnMonIconSprite - ldr r1, _080992A4 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - lsls r2, r6, 2 - ldr r3, _080992A8 @ =0x00001038 - adds r1, r3 - adds r1, r2 - str r0, [r1] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - b _080992BA - .align 2, 0 -_080992A0: .4byte gPlayerParty -_080992A4: .4byte gPokemonStorageSystemPtr -_080992A8: .4byte 0x00001038 -_080992AC: - ldr r0, _08099308 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - lsls r1, r6, 2 - ldr r2, _0809930C @ =0x00001038 - adds r0, r2 - adds r0, r1 - str r5, [r0] -_080992BA: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x5 - bls _08099246 - mov r3, r8 - cmp r3, 0 - bne _080992FA - movs r6, 0 - cmp r6, r7 - bcs _080992FA - ldr r0, _08099308 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809930C @ =0x00001038 - adds r3, r0, r1 - movs r4, 0x4 -_080992DA: - lsls r1, r6, 2 - adds r1, r3, r1 - ldr r2, [r1] - ldrh r0, [r2, 0x22] - subs r0, 0xA0 - strh r0, [r2, 0x22] - ldr r1, [r1] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r4 - strb r0, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r7 - bcc _080992DA -_080992FA: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08099308: .4byte gPokemonStorageSystemPtr -_0809930C: .4byte 0x00001038 - thumb_func_end sub_8099200 - - thumb_func_start sub_8099310 -sub_8099310: @ 8099310 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _08099368 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r0, _0809936C @ =0x00001171 - adds r1, r2, r0 - movs r0, 0 - strb r0, [r1] - movs r5, 0 - movs r6, 0 - mov r8, r2 - ldr r7, _0809936C @ =0x00001171 - add r7, r8 -_0809932C: - lsls r1, r5, 2 - ldr r0, _08099370 @ =0x00001038 - add r0, r8 - adds r4, r0, r1 - ldr r0, [r4] - cmp r0, 0 - beq _08099354 - cmp r5, r6 - beq _0809934E - adds r1, r6, 0 - bl sub_8099388 - movs r0, 0 - str r0, [r4] - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] -_0809934E: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08099354: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _0809932C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08099368: .4byte gPokemonStorageSystemPtr -_0809936C: .4byte 0x00001171 -_08099370: .4byte 0x00001038 - thumb_func_end sub_8099310 - - thumb_func_start sub_8099374 -sub_8099374: @ 8099374 - ldr r0, _08099380 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099384 @ =0x00001171 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_08099380: .4byte gPokemonStorageSystemPtr -_08099384: .4byte 0x00001171 - thumb_func_end sub_8099374 - thumb_func_start sub_8099388 sub_8099388: @ 8099388 push {r4,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 0f20bfa16..6040e31be 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -96,18 +96,19 @@ struct PokemonStorageSystemData { s16 unk_0d60; u8 filler_0d62[0x2d2]; struct Sprite *unk_1034; - struct Sprite *unk_1038[6]; - struct Sprite *unk_1050[30]; + struct Sprite *unk_1038[6]; // party + struct Sprite *unk_1050[30]; // box u8 filler_10c8[8]; u16 unk_10d0[40]; u16 unk_1120[40]; - u8 filler_1170[2]; + u8 unk_1170; + u8 unk_1171; u16 unk_1172; - u16 unk_1174; + s16 unk_1174; s16 unk_1176; u16 unk_1178; u8 unk_117a; - u8 unk_117b; + s8 unk_117b; u8 unk_117c; u8 unk_117d; u8 filler_117e[0x6a]; @@ -164,7 +165,7 @@ void sub_80961A8(void); void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); void ResetPSSMonIconSprites(void); -void sub_8099200(u8 a0); +void sub_8099200(bool8 a0); void sub_8099310(void); bool8 sub_8099374(void); void sub_80994A8(s16 a0); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index dbb1cf992..a158b29a9 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -1703,7 +1703,7 @@ void sub_8098400(void) if (gUnknown_0203847C) { sub_8098690(TRUE); - sub_8099200(1); + sub_8099200(TRUE); sub_809D034(BG_SCREEN_ADDR(15), 10, 0, gPokemonStorageSystemPtr->unk_00a8, 0, 0, 12, 22); } else @@ -1719,7 +1719,7 @@ void sub_80984E8(void) gPokemonStorageSystemPtr->unk_08a8 = 20; gPokemonStorageSystemPtr->unk_08aa = 2; gPokemonStorageSystemPtr->unk_08ad = 0; - sub_8099200(0); + sub_8099200(FALSE); } bool8 sub_8098520(void) diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index af050d324..230e9445b 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -13,6 +13,7 @@ // Static ROM declarations void sub_8098E68(struct Sprite *sprite); +void sub_8099388(struct Sprite *sprite, u16 a0); void sub_80999C4(struct Sprite *sprite); struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 a2, s16 a3, u8 a4, u8 a5); void sub_8099BE0(struct Sprite *sprite); @@ -209,3 +210,103 @@ void sub_809900C(u8 a0, s8 a1) gPokemonStorageSystemPtr->unk_1174 = 24 * gPokemonStorageSystemPtr->unk_117a + 0x64; sub_8098DE0(gPokemonStorageSystemPtr->unk_1176); } + +bool8 sub_80990AC(void) +{ + if (gPokemonStorageSystemPtr->unk_1172) + gPokemonStorageSystemPtr->unk_1172--; + switch (gPokemonStorageSystemPtr->unk_117c) + { + case 0: + gPokemonStorageSystemPtr->unk_1174 += gPokemonStorageSystemPtr->unk_1176; + if (gPokemonStorageSystemPtr->unk_1174 < 0x41 || gPokemonStorageSystemPtr->unk_1174 > 0xfb) + { + sub_8098EA0(gPokemonStorageSystemPtr->unk_117a); + gPokemonStorageSystemPtr->unk_1174 += 24 * gPokemonStorageSystemPtr->unk_117b; + gPokemonStorageSystemPtr->unk_117c++; + } + break; + case 1: + gPokemonStorageSystemPtr->unk_1174 += gPokemonStorageSystemPtr->unk_1176; + gPokemonStorageSystemPtr->unk_1178 += sub_8098EE0(gPokemonStorageSystemPtr->unk_117a, gPokemonStorageSystemPtr->unk_1172, gPokemonStorageSystemPtr->unk_1176); + if ((gPokemonStorageSystemPtr->unk_117b > 0 && gPokemonStorageSystemPtr->unk_117a == 5) || (gPokemonStorageSystemPtr->unk_117b < 0 && gPokemonStorageSystemPtr->unk_117a == 0)) + { + gPokemonStorageSystemPtr->unk_117c++; + } + else + { + gPokemonStorageSystemPtr->unk_117a += gPokemonStorageSystemPtr->unk_117b; + gPokemonStorageSystemPtr->unk_117c = 0; + } + break; + case 2: + if (gPokemonStorageSystemPtr->unk_1178 == 0) + { + gPokemonStorageSystemPtr->unk_1172++; + return FALSE; + } + break; + default: + return FALSE; + } + return TRUE; +} + +void sub_8099200(bool8 a0) +{ + u16 count; + u16 i; + u16 species = GetMonData(gPlayerParty + 0, MON_DATA_SPECIES2); + u32 personality = GetMonData(gPlayerParty + 0, MON_DATA_PERSONALITY); + gPokemonStorageSystemPtr->unk_1038[0] = PSS_SpawnMonIconSprite(species, personality, 0x68, 0x40, 1, 11); + count = 1; + for (i = 1; i < PARTY_SIZE; i++) + { + species = GetMonData(gPlayerParty + i, MON_DATA_SPECIES2); + if (species != SPECIES_NONE) + { + personality = GetMonData(gPlayerParty + i, MON_DATA_PERSONALITY); + gPokemonStorageSystemPtr->unk_1038[i] = PSS_SpawnMonIconSprite(species, personality, 0x98, (i - 1) * 24 + 0x10, 1, 11); + count++; + } + else + { + gPokemonStorageSystemPtr->unk_1038[i] = NULL; + } + } + if (!a0) + { + for (i = 0; i < count; i++) + { + // this routine assumes party_compaction has been called + gPokemonStorageSystemPtr->unk_1038[i]->pos1.y -= 0xa0; + gPokemonStorageSystemPtr->unk_1038[i]->invisible = TRUE; + } + } +} + +void sub_8099310(void) +{ + u16 i; + u16 count; + + gPokemonStorageSystemPtr->unk_1171 = 0; + for (i = 0, count = 0; i < PARTY_SIZE; i++) + { + if (gPokemonStorageSystemPtr->unk_1038[i]) + { + if (i != count) + { + sub_8099388(gPokemonStorageSystemPtr->unk_1038[i], count); + gPokemonStorageSystemPtr->unk_1038[i] = NULL; + gPokemonStorageSystemPtr->unk_1171++; + } + count++; + } + } +} + +u8 sub_8099374(void) +{ + return gPokemonStorageSystemPtr->unk_1171; +} -- cgit v1.2.3 From e44c0f897d2d02f153d5adf139be3bac25e1ee93 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Jan 2018 21:33:54 -0500 Subject: through sub_809960C --- asm/pokemon_storage_system.s | 429 --------------------------------- src/pokemon/pokemon_storage_system_3.c | 145 ++++++++++- 2 files changed, 144 insertions(+), 430 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index a794269eb..2f7caa703 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,435 +5,6 @@ .text - thumb_func_start sub_8099388 -sub_8099388: @ 8099388 - push {r4,lr} - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - strh r1, [r2, 0x30] - cmp r1, 0 - bne _0809939C - movs r3, 0x68 - movs r4, 0x40 - b _080993AE -_0809939C: - movs r3, 0x98 - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 19 - movs r1, 0x80 - lsls r1, 13 - adds r0, r1 - lsrs r4, r0, 16 -_080993AE: - ldrh r0, [r2, 0x20] - lsls r0, 3 - strh r0, [r2, 0x32] - ldrh r0, [r2, 0x22] - lsls r0, 3 - strh r0, [r2, 0x34] - lsls r1, r3, 3 - movs r3, 0x32 - ldrsh r0, [r2, r3] - subs r0, r1, r0 - cmp r0, 0 - bge _080993C8 - adds r0, 0x7 -_080993C8: - asrs r0, 3 - strh r0, [r2, 0x36] - lsls r0, r4, 16 - asrs r0, 13 - movs r3, 0x34 - ldrsh r1, [r2, r3] - subs r0, r1 - cmp r0, 0 - bge _080993DC - adds r0, 0x7 -_080993DC: - asrs r0, 3 - strh r0, [r2, 0x38] - movs r0, 0x8 - strh r0, [r2, 0x3A] - ldr r0, _080993F0 @ =sub_80993F4 - str r0, [r2, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080993F0: .4byte sub_80993F4 - thumb_func_end sub_8099388 - - thumb_func_start sub_80993F4 -sub_80993F4: @ 80993F4 - push {r4,lr} - adds r3, r0, 0 - ldrh r2, [r3, 0x3A] - movs r1, 0x3A - ldrsh r0, [r3, r1] - cmp r0, 0 - beq _08099424 - ldrh r0, [r3, 0x36] - ldrh r4, [r3, 0x32] - adds r0, r4 - strh r0, [r3, 0x32] - ldrh r1, [r3, 0x38] - ldrh r4, [r3, 0x34] - adds r1, r4 - strh r1, [r3, 0x34] - lsls r0, 16 - asrs r0, 19 - strh r0, [r3, 0x20] - lsls r1, 16 - asrs r1, 19 - strh r1, [r3, 0x22] - subs r0, r2, 0x1 - strh r0, [r3, 0x3A] - b _08099468 -_08099424: - movs r1, 0x30 - ldrsh r0, [r3, r1] - cmp r0, 0 - bne _08099434 - movs r0, 0x68 - strh r0, [r3, 0x20] - movs r0, 0x40 - b _08099446 -_08099434: - movs r0, 0x98 - strh r0, [r3, 0x20] - movs r4, 0x30 - ldrsh r1, [r3, r4] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x10 -_08099446: - strh r0, [r3, 0x22] - ldr r0, _08099470 @ =SpriteCallbackDummy - str r0, [r3, 0x1C] - ldr r0, _08099474 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - movs r0, 0x30 - ldrsh r1, [r3, r0] - lsls r1, 2 - ldr r4, _08099478 @ =0x00001038 - adds r0, r2, r4 - adds r0, r1 - str r3, [r0] - ldr r0, _0809947C @ =0x00001171 - adds r2, r0 - ldrb r0, [r2] - subs r0, 0x1 - strb r0, [r2] -_08099468: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099470: .4byte SpriteCallbackDummy -_08099474: .4byte gPokemonStorageSystemPtr -_08099478: .4byte 0x00001038 -_0809947C: .4byte 0x00001171 - thumb_func_end sub_80993F4 - - thumb_func_start sub_8099480 -sub_8099480: @ 8099480 - push {r4,lr} - ldr r0, _080994A0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _080994A4 @ =0x00001034 - adds r4, r0, r1 - ldr r0, [r4] - cmp r0, 0 - beq _08099498 - bl sub_8099BE0 - movs r0, 0 - str r0, [r4] -_08099498: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080994A0: .4byte gPokemonStorageSystemPtr -_080994A4: .4byte 0x00001034 - thumb_func_end sub_8099480 - - thumb_func_start sub_80994A8 -sub_80994A8: @ 80994A8 - push {r4-r6,lr} - movs r3, 0 - ldr r1, _080994FC @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _08099500 @ =0x00001038 - adds r5, r1, r2 - lsls r0, 16 - asrs r4, r0, 16 - movs r6, 0x5 - negs r6, r6 -_080994BC: - lsls r0, r3, 2 - adds r2, r5, r0 - ldr r1, [r2] - cmp r1, 0 - beq _0809950E - ldrh r0, [r1, 0x22] - adds r0, r4, r0 - strh r0, [r1, 0x22] - ldr r2, [r2] - ldrh r1, [r2, 0x26] - ldrh r0, [r2, 0x22] - adds r1, r0 - adds r0, r2, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 - lsls r0, 16 - movs r1, 0x80 - lsls r1, 13 - adds r0, r1 - lsrs r0, 16 - cmp r0, 0xC0 - bls _08099504 - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0809950E - .align 2, 0 -_080994FC: .4byte gPokemonStorageSystemPtr -_08099500: .4byte 0x00001038 -_08099504: - adds r2, 0x3E - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - strb r0, [r2] -_0809950E: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x5 - bls _080994BC - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80994A8 - - thumb_func_start sub_8099520 -sub_8099520: @ 8099520 - push {r4,lr} - lsls r0, 24 - ldr r1, _08099544 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - lsrs r0, 22 - ldr r2, _08099548 @ =0x00001038 - adds r1, r2 - adds r4, r1, r0 - ldr r0, [r4] - cmp r0, 0 - beq _0809953E - bl sub_8099BE0 - movs r0, 0 - str r0, [r4] -_0809953E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099544: .4byte gPokemonStorageSystemPtr -_08099548: .4byte 0x00001038 - thumb_func_end sub_8099520 - - thumb_func_start sub_809954C -sub_809954C: @ 809954C - push {r4-r6,lr} - movs r5, 0 - ldr r0, _0809957C @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099580 @ =0x00001038 - adds r6, r0, r1 -_08099558: - lsls r0, r5, 2 - adds r4, r6, r0 - ldr r0, [r4] - cmp r0, 0 - beq _0809956A - bl sub_8099BE0 - movs r0, 0 - str r0, [r4] -_0809956A: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _08099558 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809957C: .4byte gPokemonStorageSystemPtr -_08099580: .4byte 0x00001038 - thumb_func_end sub_809954C - - thumb_func_start sub_8099584 -sub_8099584: @ 8099584 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r5, r1, 0 - cmp r4, 0 - bne _080995B4 - ldr r3, _080995AC @ =gPokemonStorageSystemPtr - ldr r0, [r3] - ldr r5, _080995B0 @ =0x00001034 - adds r2, r0, r5 - lsls r1, 2 - adds r5, 0x4 - adds r0, r5 - adds r0, r1 - ldr r1, [r0] - str r1, [r2] - str r4, [r0] - b _080995D0 - .align 2, 0 -_080995AC: .4byte gPokemonStorageSystemPtr -_080995B0: .4byte 0x00001034 -_080995B4: - cmp r4, 0x1 - bne _080995F4 - ldr r3, _080995FC @ =gPokemonStorageSystemPtr - ldr r0, [r3] - ldr r1, _08099600 @ =0x00001034 - adds r2, r0, r1 - lsls r1, r5, 2 - ldr r4, _08099604 @ =0x00001050 - adds r0, r4 - adds r0, r1 - ldr r1, [r0] - str r1, [r2] - movs r1, 0 - str r1, [r0] -_080995D0: - ldr r2, [r3] - ldr r5, _08099600 @ =0x00001034 - adds r2, r5 - ldr r1, [r2] - ldr r0, _08099608 @ =sub_80999C4 - str r0, [r1, 0x1C] - ldr r3, [r2] - ldrb r1, [r3, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3, 0x5] - ldr r0, [r2] - adds r0, 0x43 - movs r1, 0x7 - strb r1, [r0] -_080995F4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080995FC: .4byte gPokemonStorageSystemPtr -_08099600: .4byte 0x00001034 -_08099604: .4byte 0x00001050 -_08099608: .4byte sub_80999C4 - thumb_func_end sub_8099584 - - thumb_func_start sub_809960C -sub_809960C: @ 809960C - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r0, 0xE - bne _08099654 - ldr r4, _08099648 @ =gPokemonStorageSystemPtr - ldr r0, [r4] - lsls r1, r6, 2 - ldr r2, _0809964C @ =0x00001038 - adds r3, r0, r2 - adds r3, r1 - ldr r1, _08099650 @ =0x00001034 - adds r0, r1 - ldr r2, [r0] - str r2, [r3] - ldrb r1, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r0, [r3] - adds r0, 0x43 - movs r1, 0xB - strb r1, [r0] - b _0809968A - .align 2, 0 -_08099648: .4byte gPokemonStorageSystemPtr -_0809964C: .4byte 0x00001038 -_08099650: .4byte 0x00001034 -_08099654: - ldr r5, _080996A0 @ =gPokemonStorageSystemPtr - ldr r0, [r5] - lsls r1, r6, 2 - ldr r2, _080996A4 @ =0x00001050 - adds r3, r0, r2 - adds r3, r1 - ldr r1, _080996A8 @ =0x00001034 - adds r0, r1 - ldr r2, [r0] - str r2, [r3] - ldrb r1, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2, 0x5] - ldr r4, [r3] - adds r0, r6, 0 - movs r1, 0x6 - bl __umodsi3 - movs r1, 0x12 - subs r1, r0 - adds r4, 0x43 - strb r1, [r4] - adds r4, r5, 0 -_0809968A: - ldr r1, [r4] - ldr r2, _080996A8 @ =0x00001034 - adds r1, r2 - ldr r2, [r1] - ldr r0, _080996AC @ =SpriteCallbackDummy - str r0, [r2, 0x1C] - movs r0, 0 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080996A0: .4byte gPokemonStorageSystemPtr -_080996A4: .4byte 0x00001050 -_080996A8: .4byte 0x00001034 -_080996AC: .4byte SpriteCallbackDummy - thumb_func_end sub_809960C - thumb_func_start sub_80996B0 sub_80996B0: @ 80996B0 push {r4,lr} diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 230e9445b..28b9e2655 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -13,7 +13,8 @@ // Static ROM declarations void sub_8098E68(struct Sprite *sprite); -void sub_8099388(struct Sprite *sprite, u16 a0); +void sub_8099388(struct Sprite *sprite, u16 a1); +void sub_80993F4(struct Sprite *sprite); void sub_80999C4(struct Sprite *sprite); struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 a2, s16 a3, u8 a4, u8 a5); void sub_8099BE0(struct Sprite *sprite); @@ -310,3 +311,145 @@ u8 sub_8099374(void) { return gPokemonStorageSystemPtr->unk_1171; } + +void sub_8099388(struct Sprite *sprite, u16 a1) +{ + s16 r3; + s16 r4; + + sprite->data[1] = a1; + if (a1 == 0) + { + r3 = 0x68; + r4 = 0x40; + } + else + { + r3 = 0x98; + r4 = 24 * (a1 - 1) + 0x10; + } + sprite->data[2] = sprite->pos1.x << 3; + sprite->data[3] = sprite->pos1.y << 3; + sprite->data[4] = (r3 * 8 - sprite->data[2]) / 8; + sprite->data[5] = (r4 * 8 - sprite->data[3]) / 8; + sprite->data[6] = 8; + sprite->callback = sub_80993F4; +} + +void sub_80993F4(struct Sprite *sprite) +{ + if (sprite->data[6]) + { + sprite->data[2] += sprite->data[4]; + sprite->data[3] += sprite->data[5]; + sprite->pos1.x = sprite->data[2] >> 3; + sprite->pos1.y = sprite->data[3] >> 3; + sprite->data[6]--; + } + else + { + if (sprite->data[1] == 0) + { + sprite->pos1.x = 0x68; + sprite->pos1.y = 0x40; + } + else + { + sprite->pos1.x = 0x98; + sprite->pos1.y = (sprite->data[1] - 1) * 24 + 0x10; + } + sprite->callback = SpriteCallbackDummy; + gPokemonStorageSystemPtr->unk_1038[sprite->data[1]] = sprite; + gPokemonStorageSystemPtr->unk_1171--; + } +} + +void sub_8099480(void) +{ + if (gPokemonStorageSystemPtr->unk_1034) + { + sub_8099BE0(gPokemonStorageSystemPtr->unk_1034); + gPokemonStorageSystemPtr->unk_1034 = NULL; + } +} + +void sub_80994A8(s16 y) +{ + u16 i; + + for (i = 0; i < PARTY_SIZE; i++) + { + if (gPokemonStorageSystemPtr->unk_1038[i]) + { + s16 yy; + gPokemonStorageSystemPtr->unk_1038[i]->pos1.y += y; + yy = gPokemonStorageSystemPtr->unk_1038[i]->pos1.y + gPokemonStorageSystemPtr->unk_1038[i]->pos2.y + gPokemonStorageSystemPtr->unk_1038[i]->centerToCornerVecY; + if (yy < -0x10 || yy > 0xb0) + gPokemonStorageSystemPtr->unk_1038[i]->invisible = TRUE; + else + gPokemonStorageSystemPtr->unk_1038[i]->invisible = FALSE; + } + } +} + +void sub_8099520(u8 a0) +{ + if (gPokemonStorageSystemPtr->unk_1038[a0]) + { + sub_8099BE0(gPokemonStorageSystemPtr->unk_1038[a0]); + gPokemonStorageSystemPtr->unk_1038[a0] = NULL; + } +} + +void sub_809954C(void) +{ + u16 i; + + for (i = 0; i < PARTY_SIZE; i++) + { + if (gPokemonStorageSystemPtr->unk_1038[i]) + { + sub_8099BE0(gPokemonStorageSystemPtr->unk_1038[i]); + gPokemonStorageSystemPtr->unk_1038[i] = NULL; + } + } +} + +void sub_8099584(u8 a0, u8 a1) +{ + if (a0 == 0) + { + gPokemonStorageSystemPtr->unk_1034 = gPokemonStorageSystemPtr->unk_1038[a1]; + gPokemonStorageSystemPtr->unk_1038[a1] = NULL; + } + else if (a0 == 1) + { + gPokemonStorageSystemPtr->unk_1034 = gPokemonStorageSystemPtr->unk_1050[a1]; + gPokemonStorageSystemPtr->unk_1050[a1] = NULL; + } + else + { + return; + } + gPokemonStorageSystemPtr->unk_1034->callback = sub_80999C4; + gPokemonStorageSystemPtr->unk_1034->oam.priority = 1; + gPokemonStorageSystemPtr->unk_1034->subpriority = 7; +} + +void sub_809960C(u8 a0, u8 a1) +{ + if (a0 == 14) + { + gPokemonStorageSystemPtr->unk_1038[a1] = gPokemonStorageSystemPtr->unk_1034; + gPokemonStorageSystemPtr->unk_1038[a1]->oam.priority = 1; + gPokemonStorageSystemPtr->unk_1038[a1]->subpriority = 11; + } + else + { + gPokemonStorageSystemPtr->unk_1050[a1] = gPokemonStorageSystemPtr->unk_1034; + gPokemonStorageSystemPtr->unk_1050[a1]->oam.priority = 2; + gPokemonStorageSystemPtr->unk_1050[a1]->subpriority = 18 - (a1 % 6); + } + gPokemonStorageSystemPtr->unk_1034->callback = SpriteCallbackDummy; + gPokemonStorageSystemPtr->unk_1034 = NULL; +} -- cgit v1.2.3 From d6464c7c40f5ac1b9da557d5990e2b7e83997720 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Jan 2018 21:53:25 -0500 Subject: through sub_809971C --- asm/pokemon_storage_system.s | 186 --------------------------------- include/pokemon_storage_system.h | 3 +- src/pokemon/pokemon_storage_system_3.c | 41 ++++++++ 3 files changed, 43 insertions(+), 187 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 2f7caa703..8767808fc 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,192 +5,6 @@ .text - thumb_func_start sub_80996B0 -sub_80996B0: @ 80996B0 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - cmp r0, 0xE - bne _080996D8 - ldr r3, _080996CC @ =gPokemonStorageSystemPtr - ldr r1, [r3] - ldr r0, _080996D0 @ =0x000010c8 - adds r2, r1, r0 - lsls r0, r4, 2 - ldr r4, _080996D4 @ =0x00001038 - b _080996E4 - .align 2, 0 -_080996CC: .4byte gPokemonStorageSystemPtr -_080996D0: .4byte 0x000010c8 -_080996D4: .4byte 0x00001038 -_080996D8: - ldr r3, _08099704 @ =gPokemonStorageSystemPtr - ldr r1, [r3] - ldr r0, _08099708 @ =0x000010c8 - adds r2, r1, r0 - lsls r0, r4, 2 - ldr r4, _0809970C @ =0x00001050 -_080996E4: - adds r0, r4 - adds r1, r0 - str r1, [r2] - ldr r1, [r3] - ldr r2, _08099710 @ =0x00001034 - adds r0, r1, r2 - ldr r2, [r0] - ldr r0, _08099714 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] - ldr r4, _08099718 @ =0x00001170 - adds r1, r4 - movs r0, 0 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099704: .4byte gPokemonStorageSystemPtr -_08099708: .4byte 0x000010c8 -_0809970C: .4byte 0x00001050 -_08099710: .4byte 0x00001034 -_08099714: .4byte SpriteCallbackDummy -_08099718: .4byte 0x00001170 - thumb_func_end sub_80996B0 - - thumb_func_start sub_809971C -sub_809971C: @ 809971C - push {r4-r7,lr} - ldr r0, _08099730 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r0, _08099734 @ =0x00001170 - adds r7, r2, r0 - ldrb r0, [r7] - cmp r0, 0x10 - bne _08099738 - movs r0, 0 - b _08099800 - .align 2, 0 -_08099730: .4byte gPokemonStorageSystemPtr -_08099734: .4byte 0x00001170 -_08099738: - adds r0, 0x1 - strb r0, [r7] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809975E - ldr r1, _08099808 @ =0x000010c8 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, [r0] - ldrh r0, [r1, 0x22] - subs r0, 0x1 - strh r0, [r1, 0x22] - ldr r4, _0809980C @ =0x00001034 - adds r0, r2, r4 - ldr r1, [r0] - ldrh r0, [r1, 0x22] - adds r0, 0x1 - strh r0, [r1, 0x22] -_0809975E: - ldr r0, _08099808 @ =0x000010c8 - adds r5, r2, r0 - ldr r0, [r5] - ldr r1, [r0] - ldr r3, _08099810 @ =gSineTable - ldrb r0, [r7] - lsls r0, 4 - adds r0, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r0, 0 - bge _08099778 - adds r0, 0xF -_08099778: - asrs r0, 4 - strh r0, [r1, 0x24] - ldr r0, _0809980C @ =0x00001034 - adds r6, r2, r0 - ldr r1, [r6] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r3 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bge _08099792 - adds r0, 0xF -_08099792: - asrs r0, 4 - negs r0, r0 - strh r0, [r1, 0x24] - ldrb r0, [r7] - cmp r0, 0x8 - bne _080997DE - ldr r4, [r6] - ldr r0, [r5] - ldr r0, [r0] - ldrb r0, [r0, 0x5] - movs r2, 0xC - ands r2, r0 - ldrb r3, [r4, 0x5] - movs r1, 0xD - negs r1, r1 - adds r0, r1, 0 - ands r0, r3 - orrs r0, r2 - strb r0, [r4, 0x5] - ldr r2, [r6] - ldr r0, [r5] - ldr r0, [r0] - adds r0, 0x43 - ldrb r0, [r0] - adds r2, 0x43 - strb r0, [r2] - ldr r0, [r5] - ldr r2, [r0] - ldrb r0, [r2, 0x5] - ands r1, r0 - movs r0, 0x4 - orrs r1, r0 - strb r1, [r2, 0x5] - ldr r0, [r5] - ldr r0, [r0] - adds r0, 0x43 - movs r1, 0x7 - strb r1, [r0] -_080997DE: - ldrb r0, [r7] - cmp r0, 0x10 - bne _080997FE - ldr r1, [r6] - ldr r0, [r5] - ldr r0, [r0] - str r0, [r6] - ldr r0, [r5] - str r1, [r0] - ldr r1, [r6] - ldr r0, _08099814 @ =sub_80999C4 - str r0, [r1, 0x1C] - ldr r0, [r5] - ldr r1, [r0] - ldr r0, _08099818 @ =SpriteCallbackDummy - str r0, [r1, 0x1C] -_080997FE: - movs r0, 0x1 -_08099800: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08099808: .4byte 0x000010c8 -_0809980C: .4byte 0x00001034 -_08099810: .4byte gSineTable -_08099814: .4byte sub_80999C4 -_08099818: .4byte SpriteCallbackDummy - thumb_func_end sub_809971C - thumb_func_start sub_809981C sub_809981C: @ 809981C push {r4,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 6040e31be..38a81c2a9 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -98,7 +98,8 @@ struct PokemonStorageSystemData { struct Sprite *unk_1034; struct Sprite *unk_1038[6]; // party struct Sprite *unk_1050[30]; // box - u8 filler_10c8[8]; + struct Sprite **unk_10c8; + u8 filler_10cc[4]; u16 unk_10d0[40]; u16 unk_1120[40]; u8 unk_1170; diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 28b9e2655..7f5c84b49 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -3,6 +3,7 @@ #include "global.h" #include "constants/species.h" #include "sprite.h" +#include "trig.h" #include "pokemon_icon.h" #include "pokemon_storage_system.h" @@ -453,3 +454,43 @@ void sub_809960C(u8 a0, u8 a1) gPokemonStorageSystemPtr->unk_1034->callback = SpriteCallbackDummy; gPokemonStorageSystemPtr->unk_1034 = NULL; } + +void sub_80996B0(u8 a0, u8 a1) +{ + if (a0 == 14) + gPokemonStorageSystemPtr->unk_10c8 = gPokemonStorageSystemPtr->unk_1038 + a1; + else + gPokemonStorageSystemPtr->unk_10c8 = gPokemonStorageSystemPtr->unk_1050 + a1; + gPokemonStorageSystemPtr->unk_1034->callback = SpriteCallbackDummy; + gPokemonStorageSystemPtr->unk_1170 = 0; +} + +bool8 sub_809971C(void) +{ + if (gPokemonStorageSystemPtr->unk_1170 == 16) + return FALSE; + gPokemonStorageSystemPtr->unk_1170++; + if (gPokemonStorageSystemPtr->unk_1170 & 1) + { + (*gPokemonStorageSystemPtr->unk_10c8)->pos1.y--; + gPokemonStorageSystemPtr->unk_1034->pos1.y++; + } + (*gPokemonStorageSystemPtr->unk_10c8)->pos2.x = gSineTable[gPokemonStorageSystemPtr->unk_1170 * 8] / 16; + gPokemonStorageSystemPtr->unk_1034->pos2.x = -(gSineTable[gPokemonStorageSystemPtr->unk_1170 * 8] / 16); + if (gPokemonStorageSystemPtr->unk_1170 == 8) + { + gPokemonStorageSystemPtr->unk_1034->oam.priority = (*gPokemonStorageSystemPtr->unk_10c8)->oam.priority; + gPokemonStorageSystemPtr->unk_1034->subpriority = (*gPokemonStorageSystemPtr->unk_10c8)->subpriority; + (*gPokemonStorageSystemPtr->unk_10c8)->oam.priority = 1; + (*gPokemonStorageSystemPtr->unk_10c8)->subpriority = 7; + } + if (gPokemonStorageSystemPtr->unk_1170 == 16) + { + struct Sprite *sprite = gPokemonStorageSystemPtr->unk_1034; + gPokemonStorageSystemPtr->unk_1034 = *(gPokemonStorageSystemPtr->unk_10c8); + (*gPokemonStorageSystemPtr->unk_10c8) = sprite; + gPokemonStorageSystemPtr->unk_1034->callback = sub_80999C4; + (*gPokemonStorageSystemPtr->unk_10c8)->callback = SpriteCallbackDummy; + } + return TRUE; +} -- cgit v1.2.3 From a1ccd03edd90601759a04f223c9558181a657728 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Jan 2018 22:08:58 -0500 Subject: Refine struct at 02000028 --- include/pokemon_storage_system.h | 17 +++++++++++++---- src/pokemon/pokemon_storage_system_2.c | 2 +- src/pokemon/pokemon_storage_system_5.c | 2 +- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 38a81c2a9..438af769b 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -50,8 +50,16 @@ struct PSS_MenuStringPtrs { const u8 *desc; }; +struct UnkStruct_2000028 { + void *unk_00; + void *unk_04; + u16 unk_08; + u16 unk_0a; + void (*unk_0c)(struct UnkStruct_2000028 *data); +}; + struct UnkStruct_2000020 { - struct UnkStruct_2000020 *unk_00; + struct UnkStruct_2000028 *unk_00; u8 unk_04; u8 unk_05; }; @@ -78,7 +86,8 @@ struct PokemonStorageSystemData { u16 unk_0008; u16 unk_000a; struct PCScreenEffectStruct unk_000c; - struct UnkStruct_2000020 unk_0020[17]; // refine size later + struct UnkStruct_2000020 unk_0020; + struct UnkStruct_2000028 unk_0028[8]; u16 unk_00a8[0x400]; u16 unk_08a8; u16 unk_08aa; @@ -99,7 +108,7 @@ struct PokemonStorageSystemData { struct Sprite *unk_1038[6]; // party struct Sprite *unk_1050[30]; // box struct Sprite **unk_10c8; - u8 filler_10cc[4]; + struct Sprite **unk_10cc; u16 unk_10d0[40]; u16 unk_1120[40]; u8 unk_1170; @@ -214,7 +223,7 @@ void sub_809CDCC(void); void sub_809CDEC(u8 a0); void sub_809CE84(void); s16 sub_809CF30(void); -void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000020 *a1, u8 a2); +void sub_809CFDC(struct UnkStruct_2000020 *a0, struct UnkStruct_2000028 *a1, u8 a2); void sub_809CFF0(void); void sub_809D034(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); void sub_809D104(void *dest, u16 dLeft, u16 dTop, const void *src, u16 sLeft, u16 sTop, u16 width, u16 height); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index a158b29a9..e5466ea70 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -176,7 +176,7 @@ void sub_8096804(void) FreeAllSpritePalettes(); ResetTasks(); gReservedSpriteTileCount = 0x280; - sub_809CFDC(gPokemonStorageSystemPtr->unk_0020, gPokemonStorageSystemPtr->unk_0020 + 1, 8); + sub_809CFDC(&gPokemonStorageSystemPtr->unk_0020, gPokemonStorageSystemPtr->unk_0028, 8); gKeyRepeatStartDelay = 20; } diff --git a/src/pokemon/pokemon_storage_system_5.c b/src/pokemon/pokemon_storage_system_5.c index f809439ff..b7c3d42f5 100644 --- a/src/pokemon/pokemon_storage_system_5.c +++ b/src/pokemon/pokemon_storage_system_5.c @@ -7,7 +7,7 @@ // Static RAM declarations -EWRAM_DATA u32 gUnknown_020384EC = 0; +EWRAM_DATA struct UnkStruct_2000020 *gUnknown_020384EC = NULL; // Static ROM declarations -- cgit v1.2.3 From 7a65953ccc2313db6de0ec061220b1a5f8751b36 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 08:53:01 -0500 Subject: through sub_80999C4 --- asm/pokemon_storage_system.s | 248 --------------------------------- data/pokemon_storage_system.s | 16 --- include/pokemon_storage_system.h | 4 +- src/pokemon/pokemon_storage_system_3.c | 86 ++++++++++++ 4 files changed, 89 insertions(+), 265 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 8767808fc..0a3f44372 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,254 +5,6 @@ .text - thumb_func_start sub_809981C -sub_809981C: @ 809981C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - cmp r0, 0x1 - beq _08099858 - cmp r0, 0x1 - bgt _08099836 - cmp r0, 0 - beq _0809983C - b _080998C0 -_08099836: - cmp r2, 0x2 - beq _0809987C - b _080998C0 -_0809983C: - ldr r3, _0809984C @ =gPokemonStorageSystemPtr - ldr r1, [r3] - ldr r0, _08099850 @ =0x000010cc - adds r2, r1, r0 - lsls r0, r4, 2 - ldr r4, _08099854 @ =0x00001038 - b _08099864 - .align 2, 0 -_0809984C: .4byte gPokemonStorageSystemPtr -_08099850: .4byte 0x000010cc -_08099854: .4byte 0x00001038 -_08099858: - ldr r3, _08099870 @ =gPokemonStorageSystemPtr - ldr r1, [r3] - ldr r0, _08099874 @ =0x000010cc - adds r2, r1, r0 - lsls r0, r4, 2 - ldr r4, _08099878 @ =0x00001050 -_08099864: - adds r0, r4 - adds r1, r0 - str r1, [r2] - adds r0, r3, 0 - b _0809988A - .align 2, 0 -_08099870: .4byte gPokemonStorageSystemPtr -_08099874: .4byte 0x000010cc -_08099878: .4byte 0x00001050 -_0809987C: - ldr r0, _080998C8 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r3, _080998CC @ =0x000010cc - adds r2, r1, r3 - ldr r4, _080998D0 @ =0x00001034 - adds r1, r4 - str r1, [r2] -_0809988A: - ldr r0, [r0] - ldr r1, _080998CC @ =0x000010cc - adds r4, r0, r1 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _080998C0 - bl InitSpriteAffineAnim - ldr r0, [r4] - ldr r2, [r0] - ldrb r1, [r2, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x1] - ldr r0, [r4] - ldr r1, [r0] - ldr r0, _080998D4 @ =gSpriteAffineAnimTable_83B6F5C - str r0, [r1, 0x10] - ldr r0, [r4] - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAffineAnim -_080998C0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080998C8: .4byte gPokemonStorageSystemPtr -_080998CC: .4byte 0x000010cc -_080998D0: .4byte 0x00001034 -_080998D4: .4byte gSpriteAffineAnimTable_83B6F5C - thumb_func_end sub_809981C - - thumb_func_start sub_80998D8 -sub_80998D8: @ 80998D8 - push {lr} - ldr r0, _080998FC @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099900 @ =0x000010cc - adds r0, r1 - ldr r0, [r0] - ldr r1, [r0] - cmp r1, 0 - beq _080998F8 - adds r3, r1, 0 - adds r3, 0x3E - ldrb r2, [r3] - movs r0, 0x4 - ands r0, r2 - cmp r0, 0 - beq _08099904 -_080998F8: - movs r0, 0 - b _0809991A - .align 2, 0 -_080998FC: .4byte gPokemonStorageSystemPtr -_08099900: .4byte 0x000010cc -_08099904: - adds r0, r1, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08099918 - movs r0, 0x4 - orrs r0, r2 - strb r0, [r3] -_08099918: - movs r0, 0x1 -_0809991A: - pop {r1} - bx r1 - thumb_func_end sub_80998D8 - - thumb_func_start sub_8099920 -sub_8099920: @ 8099920 - push {r4,lr} - ldr r0, _08099950 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099954 @ =0x000010cc - adds r4, r0, r1 - ldr r0, [r4] - ldr r0, [r0] - cmp r0, 0 - beq _0809994A - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldr r0, [r4] - ldr r0, [r0] - bl sub_8099BE0 - ldr r1, [r4] - movs r0, 0 - str r0, [r1] -_0809994A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099950: .4byte gPokemonStorageSystemPtr -_08099954: .4byte 0x000010cc - thumb_func_end sub_8099920 - - thumb_func_start sub_8099958 -sub_8099958: @ 8099958 - push {lr} - ldr r0, _08099988 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809998C @ =0x000010cc - adds r3, r0, r1 - ldr r0, [r3] - ldr r0, [r0] - cmp r0, 0 - beq _08099982 - adds r2, r0, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, [r3] - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAffineAnim -_08099982: - pop {r0} - bx r0 - .align 2, 0 -_08099988: .4byte gPokemonStorageSystemPtr -_0809998C: .4byte 0x000010cc - thumb_func_end sub_8099958 - - thumb_func_start sub_8099990 -sub_8099990: @ 8099990 - push {lr} - ldr r0, _080999A4 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _080999A8 @ =0x000010cc - adds r2, r0, r1 - ldr r0, [r2] - cmp r0, 0 - bne _080999AC - movs r0, 0 - b _080999C0 - .align 2, 0 -_080999A4: .4byte gPokemonStorageSystemPtr -_080999A8: .4byte 0x000010cc -_080999AC: - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080999BE - movs r0, 0 - str r0, [r2] -_080999BE: - movs r0, 0x1 -_080999C0: - pop {r1} - bx r1 - thumb_func_end sub_8099990 - - thumb_func_start sub_80999C4 -sub_80999C4: @ 80999C4 - ldr r1, _080999E4 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - movs r2, 0x8E - lsls r2, 5 - adds r1, r2 - ldr r2, [r1] - ldrh r2, [r2, 0x20] - strh r2, [r0, 0x20] - ldr r2, [r1] - ldrh r1, [r2, 0x26] - ldrh r2, [r2, 0x22] - adds r1, r2 - adds r1, 0x4 - strh r1, [r0, 0x22] - bx lr - .align 2, 0 -_080999E4: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_80999C4 - thumb_func_start sub_80999E8 sub_80999E8: @ 80999E8 push {r4-r6,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 66cc84000..b4da5c331 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,22 +3,6 @@ .section .rodata - .align 2 -gSpriteAffineAnim_83B6F34:: @ 83B6F34 - obj_rot_scal_anim_frame 0xFFFE, 0xFFFE, 0, 120 - obj_rot_scal_anim_end - - .align 2 -gSpriteAffineAnim_83B6F44:: @ 83B6F44 - obj_rot_scal_anim_frame 0x10, 0x10, 0, 0 - obj_rot_scal_anim_frame 0x10, 0x10, 0, 15 - obj_rot_scal_anim_end - - .align 2 -gSpriteAffineAnimTable_83B6F5C:: @ 83B6F5C - .4byte gSpriteAffineAnim_83B6F34 - .4byte gSpriteAffineAnim_83B6F44 - .align 2 gWallpaperPalettes_Forest: @ 83B6F64 .incbin "graphics/pokemon_storage/box_bg1.gbapal" diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 438af769b..129202934 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -121,7 +121,9 @@ struct PokemonStorageSystemData { s8 unk_117b; u8 unk_117c; u8 unk_117d; - u8 filler_117e[0x6a]; + u8 filler_117e[0x42]; + struct Sprite *unk_11c0; + u8 filler_11c4[0x24]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 7f5c84b49..2af88e8cd 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -494,3 +494,89 @@ bool8 sub_809971C(void) } return TRUE; } + +const union AffineAnimCmd gSpriteAffineAnim_83B6F34[] = { + AFFINEANIMCMD_FRAME(-2, -2, 0, 120), + AFFINEANIMCMD_END +}; + +const union AffineAnimCmd gSpriteAffineAnim_83B6F44[] = { + AFFINEANIMCMD_FRAME(16, 16, 0, 0), + AFFINEANIMCMD_FRAME(16, 16, 0, 15), + AFFINEANIMCMD_END +}; + +const union AffineAnimCmd *const gSpriteAffineAnimTable_83B6F5C[] = { + gSpriteAffineAnim_83B6F34, + gSpriteAffineAnim_83B6F44 +}; + +void sub_809981C(u8 mode, u8 idx) +{ + switch (mode) + { + case 0: + gPokemonStorageSystemPtr->unk_10cc = gPokemonStorageSystemPtr->unk_1038 + idx; + break; + case 1: + gPokemonStorageSystemPtr->unk_10cc = gPokemonStorageSystemPtr->unk_1050 + idx; + break; + case 2: + gPokemonStorageSystemPtr->unk_10cc = &gPokemonStorageSystemPtr->unk_1034; + break; + default: + return; + } + if (*gPokemonStorageSystemPtr->unk_10cc) + { + InitSpriteAffineAnim(*gPokemonStorageSystemPtr->unk_10cc); + (*gPokemonStorageSystemPtr->unk_10cc)->oam.affineMode = ST_OAM_AFFINE_NORMAL; + (*gPokemonStorageSystemPtr->unk_10cc)->affineAnims = gSpriteAffineAnimTable_83B6F5C; + StartSpriteAffineAnim(*gPokemonStorageSystemPtr->unk_10cc, 0); + } +} + +bool8 sub_80998D8(void) +{ + if (*gPokemonStorageSystemPtr->unk_10cc == NULL || (*gPokemonStorageSystemPtr->unk_10cc)->invisible) + return FALSE; + if ((*gPokemonStorageSystemPtr->unk_10cc)->affineAnimEnded) + { + (*gPokemonStorageSystemPtr->unk_10cc)->invisible = TRUE; + } + return TRUE; +} + +void sub_8099920(void) +{ + if (*gPokemonStorageSystemPtr->unk_10cc) + { + FreeOamMatrix((*gPokemonStorageSystemPtr->unk_10cc)->oam.matrixNum); + sub_8099BE0(*gPokemonStorageSystemPtr->unk_10cc); + *gPokemonStorageSystemPtr->unk_10cc = NULL; + } +} + +void sub_8099958(void) +{ + if (*gPokemonStorageSystemPtr->unk_10cc) + { + (*gPokemonStorageSystemPtr->unk_10cc)->invisible = FALSE; + StartSpriteAffineAnim(*gPokemonStorageSystemPtr->unk_10cc, 1); + } +} + +bool8 sub_8099990(void) +{ + if (gPokemonStorageSystemPtr->unk_10cc == NULL) + return FALSE; + if ((*gPokemonStorageSystemPtr->unk_10cc)->affineAnimEnded) + gPokemonStorageSystemPtr->unk_10cc = NULL; + return TRUE; +} + +void sub_80999C4(struct Sprite *sprite) +{ + sprite->pos1.x = gPokemonStorageSystemPtr->unk_11c0->pos1.x; + sprite->pos1.y = gPokemonStorageSystemPtr->unk_11c0->pos1.y + gPokemonStorageSystemPtr->unk_11c0->pos2.y + 4; +} -- cgit v1.2.3 From 12ec094b4b3641cf33fc1cf45634090e067c70b6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 09:46:31 -0500 Subject: Remaining functions and data in pss3 --- asm/pokemon_storage_system.s | 269 --------------------------------- include/pokemon_icon.h | 4 + src/pokemon/pokemon_storage_system_3.c | 131 ++++++++++++---- 3 files changed, 106 insertions(+), 298 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 0a3f44372..ce1de0d2e 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,275 +5,6 @@ .text - thumb_func_start sub_80999E8 -sub_80999E8: @ 80999E8 - push {r4-r6,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r4, 0 - ldr r1, _08099A58 @ =gPokemonStorageSystemPtr - ldr r0, [r1] - movs r2, 0x89 - lsls r2, 5 - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, r3 - beq _08099A20 - adds r6, r2, 0 - movs r5, 0x89 - lsls r5, 5 -_08099A08: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x27 - bhi _08099A20 - ldr r0, [r6] - lsls r1, r4, 1 - adds r0, r5 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r3 - bne _08099A08 -_08099A20: - cmp r4, 0x28 - bne _08099A60 - movs r4, 0 - ldr r0, [r2] - movs r5, 0x89 - lsls r5, 5 - adds r0, r5 - ldrh r0, [r0] - cmp r0, 0 - beq _08099A4E - adds r6, r2, 0 -_08099A36: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x27 - bhi _08099A4E - ldr r0, [r6] - lsls r1, r4, 1 - adds r0, r5 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _08099A36 -_08099A4E: - cmp r4, 0x28 - bne _08099A60 - ldr r0, _08099A5C @ =0x0000ffff - b _08099A94 - .align 2, 0 -_08099A58: .4byte gPokemonStorageSystemPtr -_08099A5C: .4byte 0x0000ffff -_08099A60: - ldr r1, [r2] - lsls r2, r4, 1 - movs r5, 0x89 - lsls r5, 5 - adds r0, r1, r5 - adds r0, r2 - strh r3, [r0] - ldr r0, _08099A9C @ =0x000010d0 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r4, 20 - lsrs r4, 16 - ldr r1, _08099AA0 @ =gMonIconTable - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - lsls r1, r4, 5 - ldr r2, _08099AA4 @ =0x06010000 - adds r1, r2 - ldr r2, _08099AA8 @ =0x04000080 - bl CpuSet - adds r0, r4, 0 -_08099A94: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08099A9C: .4byte 0x000010d0 -_08099AA0: .4byte gMonIconTable -_08099AA4: .4byte 0x06010000 -_08099AA8: .4byte 0x04000080 - thumb_func_end sub_80999E8 - - thumb_func_start sub_8099AAC -sub_8099AAC: @ 8099AAC - push {r4-r7,lr} - lsls r0, 16 - lsrs r6, r0, 16 - movs r3, 0 - ldr r0, _08099AE4 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x89 - lsls r1, 5 - adds r5, r0, r1 - subs r1, 0x50 - adds r4, r0, r1 - ldr r0, _08099AE8 @ =0x0000ffff - adds r7, r0, 0 -_08099AC6: - lsls r1, r3, 1 - adds r2, r5, r1 - ldrh r0, [r2] - cmp r0, r6 - bne _08099AEC - adds r1, r4, r1 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - ands r0, r7 - cmp r0, 0 - bne _08099AF6 - strh r0, [r2] - b _08099AF6 - .align 2, 0 -_08099AE4: .4byte gPokemonStorageSystemPtr -_08099AE8: .4byte 0x0000ffff -_08099AEC: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x27 - bls _08099AC6 -_08099AF6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8099AAC - - thumb_func_start PSS_SpawnMonIconSprite -PSS_SpawnMonIconSprite: @ 8099AFC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r4, [sp, 0x3C] - ldr r5, [sp, 0x40] - lsls r0, 16 - lsrs r6, r0, 16 - lsls r2, 16 - lsrs r2, 16 - str r2, [sp, 0x18] - lsls r3, 16 - lsrs r3, 16 - mov r8, r3 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r9, r5 - mov r2, sp - ldr r0, _08099BAC @ =gSpriteTemplate_83B6F14 - ldm r0!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldm r0!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - adds r0, r6, 0 - bl mon_icon_convert_unown_species_id - mov r10, r0 - mov r6, r10 - mov r2, sp - ldr r1, _08099BB0 @ =gMonIconPaletteIndices - adds r1, r6, r1 - ldr r3, _08099BB4 @ =0x0000dac0 - adds r0, r3, 0 - ldrb r1, [r1] - adds r0, r1 - strh r0, [r2, 0x2] - adds r0, r6, 0 - bl sub_80999E8 - lsls r0, 16 - lsrs r0, 16 - adds r5, r0, 0 - ldr r0, _08099BB8 @ =0x0000ffff - cmp r5, r0 - beq _08099BCE - ldr r7, [sp, 0x18] - lsls r1, r7, 16 - asrs r1, 16 - mov r0, r8 - lsls r2, r0, 16 - asrs r2, 16 - mov r0, sp - mov r3, r9 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _08099BC8 - ldr r1, _08099BBC @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldr r2, _08099BC0 @ =0x000003ff - ands r2, r5 - ldrh r3, [r0, 0x4] - ldr r1, _08099BC4 @ =0xfffffc00 - ands r1, r3 - orrs r1, r2 - strh r1, [r0, 0x4] - movs r1, 0x3 - ands r4, r1 - lsls r3, r4, 2 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - orrs r1, r3 - strb r1, [r0, 0x5] - mov r1, r10 - strh r1, [r0, 0x2E] - b _08099BD0 - .align 2, 0 -_08099BAC: .4byte gSpriteTemplate_83B6F14 -_08099BB0: .4byte gMonIconPaletteIndices -_08099BB4: .4byte 0x0000dac0 -_08099BB8: .4byte 0x0000ffff -_08099BBC: .4byte gSprites -_08099BC0: .4byte 0x000003ff -_08099BC4: .4byte 0xfffffc00 -_08099BC8: - adds r0, r6, 0 - bl sub_8099AAC -_08099BCE: - movs r0, 0 -_08099BD0: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end PSS_SpawnMonIconSprite - - thumb_func_start sub_8099BE0 -sub_8099BE0: @ 8099BE0 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - bl sub_8099AAC - adds r0, r4, 0 - bl DestroySprite - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8099BE0 - // file boundary? thumb_func_start sub_8099BF8 diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index 7e26c1c9b..a1a965d81 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -1,6 +1,9 @@ #ifndef GUARD_POKEMON_ICON_H #define GUARD_POKEMON_ICON_H +extern const u8 * const gMonIconTable[]; +extern const u8 gMonIconPaletteIndices[]; + u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality); u8 UpdateMonIconFrame(struct Sprite *sprite); u8 sub_809D3A4(u16 arg0, void (*)(struct Sprite *), int, u8 arg3, u32 arg4); @@ -12,5 +15,6 @@ void sub_809D580(u16); void sub_809D608(u16); void sub_809D62C(struct Sprite *sprite); void sub_809D824(struct Sprite *sprite, u8 animNum); +u16 mon_icon_convert_unown_species_id(u16 species, u32 personality); #endif // GUARD_POKEMON_ICON_H diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 2af88e8cd..9d4b88b5d 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -24,20 +24,6 @@ void sub_8099BE0(struct Sprite *sprite); const struct OamData gOamData_83B6F2C; -const struct SpriteTemplate gSpriteTemplate_83B6F14 = { - 0x000f, - 0xdac0, - &gOamData_83B6F2C, - gDummySpriteAnimTable, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy -}; - -const struct OamData gOamData_83B6F2C = { - .size = 2 -}; - // .text u8 get_preferred_box(void) @@ -495,21 +481,7 @@ bool8 sub_809971C(void) return TRUE; } -const union AffineAnimCmd gSpriteAffineAnim_83B6F34[] = { - AFFINEANIMCMD_FRAME(-2, -2, 0, 120), - AFFINEANIMCMD_END -}; - -const union AffineAnimCmd gSpriteAffineAnim_83B6F44[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 0), - AFFINEANIMCMD_FRAME(16, 16, 0, 15), - AFFINEANIMCMD_END -}; - -const union AffineAnimCmd *const gSpriteAffineAnimTable_83B6F5C[] = { - gSpriteAffineAnim_83B6F34, - gSpriteAffineAnim_83B6F44 -}; +const union AffineAnimCmd *const gSpriteAffineAnimTable_83B6F5C[]; void sub_809981C(u8 mode, u8 idx) { @@ -580,3 +552,104 @@ void sub_80999C4(struct Sprite *sprite) sprite->pos1.x = gPokemonStorageSystemPtr->unk_11c0->pos1.x; sprite->pos1.y = gPokemonStorageSystemPtr->unk_11c0->pos1.y + gPokemonStorageSystemPtr->unk_11c0->pos2.y + 4; } + +u16 sub_80999E8(u16 a0) +{ + u16 i; + u16 retval; + + for (i = 0; i < 40; i++) + { + if (gPokemonStorageSystemPtr->unk_1120[i] == a0) + break; + } + if (i == 40) + { + for (i = 0; i < 40; i++) + { + if (gPokemonStorageSystemPtr->unk_1120[i] == 0) + break; + } + } + if (i != 40) + { + gPokemonStorageSystemPtr->unk_1120[i] = a0; + gPokemonStorageSystemPtr->unk_10d0[i]++; + retval = i * 16; + CpuCopy32(gMonIconTable[a0], BG_CHAR_ADDR(4) + 32 * retval, 0x200); + return retval; + } + return -1; +} + +void sub_8099AAC(u16 a0) +{ + u16 i; + + for (i = 0; i < 40; i++) + { + if (gPokemonStorageSystemPtr->unk_1120[i] == a0) + { + if (--gPokemonStorageSystemPtr->unk_10d0[i] == 0) + gPokemonStorageSystemPtr->unk_1120[i] = 0; + break; + } + } +} + +struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 priority, u8 subpriority) +{ + struct SpriteTemplate template = { + 0x000f, + 0xdac0, + &gOamData_83B6F2C, + gDummySpriteAnimTable, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy + }; + u16 tileNum; + u8 spriteId; + + species = mon_icon_convert_unown_species_id(species, personality); + template.paletteTag = 0xdac0 + gMonIconPaletteIndices[species]; + tileNum = sub_80999E8(species); + if (tileNum == 0xFFFF) + return NULL; + spriteId = CreateSprite(&template, x, y, subpriority); + if (spriteId == MAX_SPRITES) + { + sub_8099AAC(species); + return NULL; + } + gSprites[spriteId].oam.tileNum = tileNum; + gSprites[spriteId].oam.priority = priority; + gSprites[spriteId].data[0] = species; + return gSprites + spriteId; +} + +void sub_8099BE0(struct Sprite *sprite) +{ + sub_8099AAC(sprite->data[0]); + DestroySprite(sprite); +} + +const struct OamData gOamData_83B6F2C = { + .size = 2 +}; + +const union AffineAnimCmd gSpriteAffineAnim_83B6F34[] = { + AFFINEANIMCMD_FRAME(-2, -2, 0, 120), + AFFINEANIMCMD_END +}; + +const union AffineAnimCmd gSpriteAffineAnim_83B6F44[] = { + AFFINEANIMCMD_FRAME(16, 16, 0, 0), + AFFINEANIMCMD_FRAME(16, 16, 0, 15), + AFFINEANIMCMD_END +}; + +const union AffineAnimCmd *const gSpriteAffineAnimTable_83B6F5C[] = { + gSpriteAffineAnim_83B6F34, + gSpriteAffineAnim_83B6F44 +}; -- cgit v1.2.3 From 3b8f6133865af6ede3628f3df8dd71648b43b3bc Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 09:57:20 -0500 Subject: some renaming in pss3 --- src/pokemon/pokemon_storage_system_2.c | 6 +-- src/pokemon/pokemon_storage_system_3.c | 78 +++++++++++++++++----------------- 2 files changed, 42 insertions(+), 42 deletions(-) diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index e5466ea70..f5eaa2166 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -872,7 +872,7 @@ void sub_809746C(void) gPokemonStorageSystemPtr->unk_0004++; break; case 3: - if (!sub_8099374()) + if (sub_8099374() == 0) { sub_809B6BC(); BoxSetMosaic(); @@ -965,7 +965,7 @@ void sub_8097594(void) } break; case 6: - if (!sub_8099374()) + if (sub_8099374() == 0) { sub_809B440(); BoxSetMosaic(); @@ -1073,7 +1073,7 @@ void sub_8097858(void) gPokemonStorageSystemPtr->unk_0004++; break; case 1: - if (!sub_8099374()) + if (sub_8099374() == 0) { sub_80987DC(); SetPSSCallback(sub_8096C84); diff --git a/src/pokemon/pokemon_storage_system_3.c b/src/pokemon/pokemon_storage_system_3.c index 9d4b88b5d..da26c6fc5 100644 --- a/src/pokemon/pokemon_storage_system_3.c +++ b/src/pokemon/pokemon_storage_system_3.c @@ -13,12 +13,12 @@ // Static ROM declarations -void sub_8098E68(struct Sprite *sprite); -void sub_8099388(struct Sprite *sprite, u16 a1); -void sub_80993F4(struct Sprite *sprite); -void sub_80999C4(struct Sprite *sprite); -struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 a2, s16 a3, u8 a4, u8 a5); -void sub_8099BE0(struct Sprite *sprite); +static void sub_8098E68(struct Sprite *sprite); +static void sub_8099388(struct Sprite *sprite, u16 a1); +static void sub_80993F4(struct Sprite *sprite); +static void sub_80999C4(struct Sprite *sprite); +static struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 priority, u8 subpriority); +static void PSS_DestroyMonIconSprite(struct Sprite *sprite); // .rodata @@ -88,7 +88,7 @@ void sub_8098D20(u8 monId) } } -void sub_8098DE0(s16 a0) +static void sub_8098DE0(s16 a0) { u16 monId; for (monId = 0; monId < 30; monId++) @@ -102,7 +102,7 @@ void sub_8098DE0(s16 a0) } } -void sub_8098E24(struct Sprite *sprite) +static void sub_8098E24(struct Sprite *sprite) { if (sprite->data[1] != 0) { @@ -117,7 +117,7 @@ void sub_8098E24(struct Sprite *sprite) } } -void sub_8098E68(struct Sprite *sprite) +static void sub_8098E68(struct Sprite *sprite) { if (sprite->data[4] != 0) { @@ -132,7 +132,7 @@ void sub_8098E68(struct Sprite *sprite) } } -void sub_8098EA0(u8 col) +static void sub_8098EA0(u8 col) { u16 i; @@ -140,44 +140,44 @@ void sub_8098EA0(u8 col) { if (gPokemonStorageSystemPtr->unk_1050[col]) { - sub_8099BE0(gPokemonStorageSystemPtr->unk_1050[col]); + PSS_DestroyMonIconSprite(gPokemonStorageSystemPtr->unk_1050[col]); gPokemonStorageSystemPtr->unk_1050[col] = NULL; } col += 6; } } -u8 sub_8098EE0(u8 a0, u16 a1, s16 a2) +static u8 sub_8098EE0(u8 col, u16 a1, s16 a2) { u16 i; u16 x; u16 y; u8 count; u8 x1; - u16 sp1c; + u16 curX; y = 0x2c; - x = 24 * a0 + 0x64; - sp1c = x - (a1 + 1) * a2; - x1 = 18 - a0; + x = 24 * col + 0x64; + curX = x - (a1 + 1) * a2; + x1 = 18 - col; count = 0; for (i = 0; i < 5; i++) { - u16 species = GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + a0, MON_DATA_SPECIES2); + u16 species = GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + col, MON_DATA_SPECIES2); if (species != SPECIES_NONE) { - gPokemonStorageSystemPtr->unk_1050[a0] = PSS_SpawnMonIconSprite(species, GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + a0, MON_DATA_PERSONALITY), sp1c, y, 2, x1); - if (gPokemonStorageSystemPtr->unk_1050[a0]) + gPokemonStorageSystemPtr->unk_1050[col] = PSS_SpawnMonIconSprite(species, GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_117d] + col, MON_DATA_PERSONALITY), curX, y, 2, x1); + if (gPokemonStorageSystemPtr->unk_1050[col]) { - gPokemonStorageSystemPtr->unk_1050[a0]->data[1] = a1; - gPokemonStorageSystemPtr->unk_1050[a0]->data[2] = a2; - gPokemonStorageSystemPtr->unk_1050[a0]->data[3] = x; - gPokemonStorageSystemPtr->unk_1050[a0]->callback = sub_8098E24; + gPokemonStorageSystemPtr->unk_1050[col]->data[1] = a1; + gPokemonStorageSystemPtr->unk_1050[col]->data[2] = a2; + gPokemonStorageSystemPtr->unk_1050[col]->data[3] = x; + gPokemonStorageSystemPtr->unk_1050[col]->callback = sub_8098E24; count++; } } - a0 += 6; + col += 6; y += 24; } return count; @@ -299,7 +299,7 @@ u8 sub_8099374(void) return gPokemonStorageSystemPtr->unk_1171; } -void sub_8099388(struct Sprite *sprite, u16 a1) +static void sub_8099388(struct Sprite *sprite, u16 a1) { s16 r3; s16 r4; @@ -323,7 +323,7 @@ void sub_8099388(struct Sprite *sprite, u16 a1) sprite->callback = sub_80993F4; } -void sub_80993F4(struct Sprite *sprite) +static void sub_80993F4(struct Sprite *sprite) { if (sprite->data[6]) { @@ -355,7 +355,7 @@ void sub_8099480(void) { if (gPokemonStorageSystemPtr->unk_1034) { - sub_8099BE0(gPokemonStorageSystemPtr->unk_1034); + PSS_DestroyMonIconSprite(gPokemonStorageSystemPtr->unk_1034); gPokemonStorageSystemPtr->unk_1034 = NULL; } } @@ -383,7 +383,7 @@ void sub_8099520(u8 a0) { if (gPokemonStorageSystemPtr->unk_1038[a0]) { - sub_8099BE0(gPokemonStorageSystemPtr->unk_1038[a0]); + PSS_DestroyMonIconSprite(gPokemonStorageSystemPtr->unk_1038[a0]); gPokemonStorageSystemPtr->unk_1038[a0] = NULL; } } @@ -396,7 +396,7 @@ void sub_809954C(void) { if (gPokemonStorageSystemPtr->unk_1038[i]) { - sub_8099BE0(gPokemonStorageSystemPtr->unk_1038[i]); + PSS_DestroyMonIconSprite(gPokemonStorageSystemPtr->unk_1038[i]); gPokemonStorageSystemPtr->unk_1038[i] = NULL; } } @@ -524,7 +524,7 @@ void sub_8099920(void) if (*gPokemonStorageSystemPtr->unk_10cc) { FreeOamMatrix((*gPokemonStorageSystemPtr->unk_10cc)->oam.matrixNum); - sub_8099BE0(*gPokemonStorageSystemPtr->unk_10cc); + PSS_DestroyMonIconSprite(*gPokemonStorageSystemPtr->unk_10cc); *gPokemonStorageSystemPtr->unk_10cc = NULL; } } @@ -547,13 +547,13 @@ bool8 sub_8099990(void) return TRUE; } -void sub_80999C4(struct Sprite *sprite) +static void sub_80999C4(struct Sprite *sprite) { sprite->pos1.x = gPokemonStorageSystemPtr->unk_11c0->pos1.x; sprite->pos1.y = gPokemonStorageSystemPtr->unk_11c0->pos1.y + gPokemonStorageSystemPtr->unk_11c0->pos2.y + 4; } -u16 sub_80999E8(u16 a0) +static u16 PSS_LoadSpeciesIconGfx(u16 a0) { u16 i; u16 retval; @@ -579,10 +579,10 @@ u16 sub_80999E8(u16 a0) CpuCopy32(gMonIconTable[a0], BG_CHAR_ADDR(4) + 32 * retval, 0x200); return retval; } - return -1; + return 0xFFFF; } -void sub_8099AAC(u16 a0) +static void PSS_ForgetSpeciesIcon(u16 a0) { u16 i; @@ -597,7 +597,7 @@ void sub_8099AAC(u16 a0) } } -struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 priority, u8 subpriority) +static struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 priority, u8 subpriority) { struct SpriteTemplate template = { 0x000f, @@ -613,13 +613,13 @@ struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y species = mon_icon_convert_unown_species_id(species, personality); template.paletteTag = 0xdac0 + gMonIconPaletteIndices[species]; - tileNum = sub_80999E8(species); + tileNum = PSS_LoadSpeciesIconGfx(species); if (tileNum == 0xFFFF) return NULL; spriteId = CreateSprite(&template, x, y, subpriority); if (spriteId == MAX_SPRITES) { - sub_8099AAC(species); + PSS_ForgetSpeciesIcon(species); return NULL; } gSprites[spriteId].oam.tileNum = tileNum; @@ -628,9 +628,9 @@ struct Sprite *PSS_SpawnMonIconSprite(u16 species, u32 personality, s16 x, s16 y return gSprites + spriteId; } -void sub_8099BE0(struct Sprite *sprite) +static void PSS_DestroyMonIconSprite(struct Sprite *sprite) { - sub_8099AAC(sprite->data[0]); + PSS_ForgetSpeciesIcon(sprite->data[0]); DestroySprite(sprite); } -- cgit v1.2.3 From f37add5cfb4bb369ec096d91f62915ee4f88a1d7 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 12:13:35 -0500 Subject: through sub_8099D90 --- asm/pokemon_storage_system.s | 226 --------------------------------- include/pokemon_storage_system.h | 22 +++- ld_script.txt | 1 + src/pokemon/pokemon_storage_system_4.c | 71 +++++++++++ src/pokemon/pokemon_storage_system_6.c | 14 ++ 5 files changed, 106 insertions(+), 228 deletions(-) create mode 100644 src/pokemon/pokemon_storage_system_6.c diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 41987f841..e66901961 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,232 +5,6 @@ .text - thumb_func_start sub_8099BF8 -sub_8099BF8: @ 8099BF8 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08099C50 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099C54 @ =0x000008ba - adds r2, r0, r1 - movs r1, 0 - strb r1, [r2] - ldr r2, _08099C58 @ =0x000008b4 - adds r0, r2 - strh r1, [r0] - str r1, [sp] - ldr r1, _08099C5C @ =0x040000d4 - mov r0, sp - str r0, [r1] - ldr r0, _08099C60 @ =0x0600d000 - str r0, [r1, 0x4] - ldr r0, _08099C64 @ =0x85000400 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r0, r4, 0 - movs r1, 0 - bl sub_8099EB0 - adds r0, r4, 0 - bl sub_809A23C - bl sub_809A6DC - adds r0, r4, 0 - bl SpawnBoxIconSprites - ldr r1, _08099C68 @ =REG_BG2CNT - ldr r2, _08099C6C @ =0x00005a0a - adds r0, r2, 0 - strh r0, [r1] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099C50: .4byte gPokemonStorageSystemPtr -_08099C54: .4byte 0x000008ba -_08099C58: .4byte 0x000008b4 -_08099C5C: .4byte 0x040000d4 -_08099C60: .4byte 0x0600d000 -_08099C64: .4byte 0x85000400 -_08099C68: .4byte REG_BG2CNT -_08099C6C: .4byte 0x00005a0a - thumb_func_end sub_8099BF8 - - thumb_func_start sub_8099C70 -sub_8099C70: @ 8099C70 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - bl sub_8099D90 - lsls r0, 24 - asrs r4, r0, 24 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8099EB0 - ldr r0, _08099D10 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 1 - ldr r3, _08099D14 @ =0x000008b6 - adds r1, r2, r3 - strh r0, [r1] - ldr r0, _08099D18 @ =0x000008b8 - adds r1, r2, r0 - movs r0, 0x20 - strh r0, [r1] - ldr r1, _08099D1C @ =0x000008bb - adds r0, r2, r1 - strb r5, [r0] - movs r1, 0 - cmp r4, 0 - bgt _08099CAE - movs r1, 0x5 -_08099CAE: - ldr r3, _08099D20 @ =0x000008bc - adds r0, r2, r3 - strh r1, [r0] - ldr r1, _08099D24 @ =0x000008be - adds r0, r2, r1 - strh r4, [r0] - movs r1, 0x38 - cmp r4, 0 - ble _08099CC6 - movs r3, 0x84 - lsls r3, 1 - adds r1, r3, 0 -_08099CC6: - movs r3, 0x8C - lsls r3, 4 - adds r0, r2, r3 - strh r1, [r0] - movs r1, 0 - cmp r4, 0 - bgt _08099CD6 - movs r1, 0x5 -_08099CD6: - ldr r3, _08099D28 @ =0x000008c2 - adds r0, r2, r3 - strh r1, [r0] - ldr r1, _08099D2C @ =0x000008c4 - adds r0, r2, r1 - strh r4, [r0] - adds r3, 0x4 - adds r1, r2, r3 - movs r0, 0 - strh r0, [r1] - ldr r0, _08099D30 @ =0x000008c8 - adds r1, r2, r0 - movs r0, 0x2 - strh r0, [r1] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_809900C - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_809A3D0 - adds r0, r4, 0 - bl sub_809A774 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08099D10: .4byte gPokemonStorageSystemPtr -_08099D14: .4byte 0x000008b6 -_08099D18: .4byte 0x000008b8 -_08099D1C: .4byte 0x000008bb -_08099D20: .4byte 0x000008bc -_08099D24: .4byte 0x000008be -_08099D28: .4byte 0x000008c2 -_08099D2C: .4byte 0x000008c4 -_08099D30: .4byte 0x000008c8 - thumb_func_end sub_8099C70 - - thumb_func_start sub_8099D34 -sub_8099D34: @ 8099D34 - push {r4,lr} - bl sub_80990AC - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08099D78 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r0, _08099D7C @ =0x000008b8 - adds r3, r1, r0 - ldrh r0, [r3] - cmp r0, 0 - beq _08099D88 - ldr r4, _08099D80 @ =0x000008b4 - adds r2, r1, r4 - adds r4, 0x2 - adds r0, r1, r4 - ldrh r0, [r0] - ldrh r1, [r2] - adds r0, r1 - ldr r1, _08099D84 @ =0x000001ff - ands r0, r1 - strh r0, [r2] - ldrh r0, [r3] - subs r0, 0x1 - strh r0, [r3] - lsls r0, 16 - cmp r0, 0 - bne _08099D74 - bl sub_809A598 - bl sub_809A810 -_08099D74: - movs r0, 0x1 - b _08099D8A - .align 2, 0 -_08099D78: .4byte gPokemonStorageSystemPtr -_08099D7C: .4byte 0x000008b8 -_08099D80: .4byte 0x000008b4 -_08099D84: .4byte 0x000001ff -_08099D88: - adds r0, r2, 0 -_08099D8A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8099D34 - - thumb_func_start sub_8099D90 -sub_8099D90: @ 8099D90 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl get_preferred_box - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0 - cmp r1, r4 - beq _08099DBA -_08099DA4: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xD - bls _08099DB0 - movs r1, 0 -_08099DB0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r1, r4 - bne _08099DA4 -_08099DBA: - movs r0, 0x1 - negs r0, r0 - cmp r2, 0x6 - bhi _08099DC4 - movs r0, 0x1 -_08099DC4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8099D90 - thumb_func_start sub_8099DCC sub_8099DCC: @ 8099DCC push {r4,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 129202934..09b3be60f 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -99,11 +99,26 @@ struct PokemonStorageSystemData { bool8 unk_08b1; s16 unk_08b2; u16 unk_08b4; - u8 filler_08b6[0x4a6]; + u16 unk_08b6; + u16 unk_08b8; + u8 unk_08ba; + u8 unk_08bb; + u16 unk_08bc; + u16 unk_08be; + u16 unk_08c0; + u16 unk_08c2; + u16 unk_08c4; + u16 unk_08c6; + u16 unk_08c8; + u8 unk_08ca[0x400]; + u8 unk_0cca; + u16 unk_0ccc[0x20]; + u8 filler_0d0c[0x50]; u16 unk_0d5c; s16 unk_0d5e; s16 unk_0d60; - u8 filler_0d62[0x2d2]; + u8 unk_0d62[0x2d0]; + u8 unk_1032; struct Sprite *unk_1034; struct Sprite *unk_1038[6]; // party struct Sprite *unk_1050[30]; // box @@ -177,6 +192,9 @@ void sub_80961A8(void); void task_intro_29(u8 whichMenu); void ResetPokemonStorageSystem(void); void ResetPSSMonIconSprites(void); +void SpawnBoxIconSprites(u8 boxId); +u8 get_preferred_box(void); +bool8 sub_80990AC(void); void sub_8099200(bool8 a0); void sub_8099310(void); bool8 sub_8099374(void); diff --git a/ld_script.txt b/ld_script.txt index f14352a4e..e1d28736e 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -133,6 +133,7 @@ SECTIONS { src/pokemon/pokemon_storage_system_3.o(.text); src/pokemon/pokemon_storage_system_4.o(.text); src/pokemon/pokemon_storage_system_5.o(.text); + src/pokemon/pokemon_storage_system_6.o(.text); asm/pokemon_storage_system.o(.text); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index f7a008db2..697292d5c 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -18,6 +18,77 @@ EWRAM_DATA u16 gUnknown_020384EA = 0; // Static ROM declarations +void sub_809900C(u8 boxId, s8 a1); +s8 sub_8099D90(u8 boxId); +void sub_8099EB0(u8 boxId, s8 a1); +void sub_809A23C(u8 boxId); +void sub_809A3D0(u8 boxId, s8 a1); +void sub_809A598(void); +void sub_809A6DC(void); +void sub_809A774(s8 a0); +void sub_809A810(void); + // .rodata // .text + +void sub_8099BF8(u8 boxId) +{ + gPokemonStorageSystemPtr->unk_08ba = 0; + gPokemonStorageSystemPtr->unk_08b4 = 0; + DmaFill32(3, 0, BG_SCREEN_ADDR(26), 0x1000); + sub_8099EB0(boxId, 0); + sub_809A23C(boxId); + sub_809A6DC(); + SpawnBoxIconSprites(boxId); + REG_BG2CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_TXT512x256; +} + +void sub_8099C70(u8 whichBox) +{ + s8 r4 = sub_8099D90(whichBox); + sub_8099EB0(whichBox, r4); + gPokemonStorageSystemPtr->unk_08b6 = r4 * 6; + gPokemonStorageSystemPtr->unk_08b8 = 0x20; + gPokemonStorageSystemPtr->unk_08bb = whichBox; + gPokemonStorageSystemPtr->unk_08bc = r4 > 0 ? 0 : 5; + gPokemonStorageSystemPtr->unk_08be = r4; + gPokemonStorageSystemPtr->unk_08c0 = r4 > 0 ? 0x108 : 0x38; + gPokemonStorageSystemPtr->unk_08c2 = r4 > 0 ? 0 : 5; + gPokemonStorageSystemPtr->unk_08c4 = r4; + gPokemonStorageSystemPtr->unk_08c6 = 0; + gPokemonStorageSystemPtr->unk_08c8 = 2; + sub_809900C(whichBox, r4); + sub_809A3D0(whichBox, r4); + sub_809A774(r4); +} + +bool8 sub_8099D34(void) +{ + bool8 retVal = sub_80990AC(); + if (gPokemonStorageSystemPtr->unk_08b8 != 0) + { + gPokemonStorageSystemPtr->unk_08b4 += gPokemonStorageSystemPtr->unk_08b6; + gPokemonStorageSystemPtr->unk_08b4 &= 0x1ff; + if (--gPokemonStorageSystemPtr->unk_08b8 == 0) + { + sub_809A598(); + sub_809A810(); + } + return TRUE; + } + return retVal; +} + +s8 sub_8099D90(u8 boxId) +{ + u8 curBox = get_preferred_box(); + u8 i; + + for (i = 0; curBox != boxId; i++) + { + if (++curBox >= 14) + curBox = 0; + } + return i <= 6 ? 1 : -1; +} diff --git a/src/pokemon/pokemon_storage_system_6.c b/src/pokemon/pokemon_storage_system_6.c new file mode 100644 index 000000000..a781c1ed2 --- /dev/null +++ b/src/pokemon/pokemon_storage_system_6.c @@ -0,0 +1,14 @@ + +// Includes +#include "global.h" +#include "pokemon_storage_system.h" + +// Static type declarations + +// Static RAM declarations + +// Static ROM declarations + +// .rodata + +// .text -- cgit v1.2.3 From 8c2c8ed3a9e377382a0ac645053e4b7b4ab41c4e Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 12:50:59 -0500 Subject: match unref_sub_8095D08 --- src/pokemon/pokemon_storage_system.c | 149 ++++++----------------------------- 1 file changed, 22 insertions(+), 127 deletions(-) diff --git a/src/pokemon/pokemon_storage_system.c b/src/pokemon/pokemon_storage_system.c index 80081c963..c02fdfb3a 100644 --- a/src/pokemon/pokemon_storage_system.c +++ b/src/pokemon/pokemon_storage_system.c @@ -177,7 +177,27 @@ void sub_8095C8C(u16 *dest, u16 dest_left, u16 dest_top, const u16 *src, u16 src } } -#ifdef NONMATCHING +#define MAX_DMA_BLOCK_SIZE 0x1000 +#define Dma3FillLarge_(value, dest, size, bit) \ +{ \ + void *_dest = dest; \ + u32 _size = size; \ + while (1) \ + { \ + if (_size <= MAX_DMA_BLOCK_SIZE) \ + { \ + DmaFill##bit(3, value, _dest, _size); \ + break; \ + } \ + DmaFill##bit(3, value, _dest, MAX_DMA_BLOCK_SIZE); \ + _dest += MAX_DMA_BLOCK_SIZE; \ + _size -= MAX_DMA_BLOCK_SIZE; \ + } \ +} + +#define Dma3FillLarge16_(value, dest, size) Dma3FillLarge_(value, dest, size, 16) +#define Dma3FillLarge32_(value, dest, size) Dma3FillLarge_(value, dest, size, 32) + void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) { u16 i; @@ -185,133 +205,8 @@ void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 he dest += dest_top * 0x20 + dest_left; width *= 2; for (i = 0; i < height; dest += 0x20, i++) - { - void *_dest = dest; - size_t _size = width; - if (_size <= 0x1000) - { - DmaFill16(3, 0, _dest, _size); - } - else - { - while (1) - { - DmaFill16(3, 0, _dest, 0x1000); - _dest += 0x1000; - _size -= 0x1000; - if (_size <= 0x1000) - { - DmaFill16(3, 0, _dest, _size); - break; - } - } - } - } -} -#else -__attribute__((naked)) void unref_sub_8095D08(u16 *dest, u16 dest_left, u16 dest_top, u16 width, u16 height) -{ - asm_unified("\tpush {r4-r7,lr}\n" - "\tmov r7, r10\n" - "\tmov r6, r9\n" - "\tmov r5, r8\n" - "\tpush {r5-r7}\n" - "\tsub sp, 0x8\n" - "\tadds r4, r0, 0\n" - "\tldr r0, [sp, 0x28]\n" - "\tlsls r1, 16\n" - "\tlsrs r1, 16\n" - "\tlsls r2, 16\n" - "\tlsls r0, 16\n" - "\tlsrs r0, 16\n" - "\tmov r10, r0\n" - "\tlsrs r2, 11\n" - "\tadds r2, r1\n" - "\tlsls r2, 1\n" - "\tadds r4, r2\n" - "\tlsls r3, 17\n" - "\tlsrs r0, r3, 16\n" - "\tstr r0, [sp, 0x4]\n" - "\tmovs r0, 0\n" - "\tcmp r0, r10\n" - "\tbcs _08095DB2\n" - "\tmovs r6, 0x80\n" - "\tlsls r6, 5\n" - "\tmov r5, sp\n" - "\tldr r7, _08095D74 @ =0x040000d4\n" - "\tlsrs r3, 17\n" - "\tmov r9, r3\n" - "\tmov r1, r9\n" - "\tmovs r2, 0x81\n" - "\tlsls r2, 24\n" - "\torrs r1, r2\n" - "\tmov r9, r1\n" - "_08095D4E:\n" - "\tadds r3, r4, 0\n" - "\tldr r2, [sp, 0x4]\n" - "\tmovs r1, 0x40\n" - "\tadds r1, r4\n" - "\tmov r8, r1\n" - "\tadds r0, 0x1\n" - "\tmov r12, r0\n" - "\tcmp r2, r6\n" - "\tbhi _08095D78\n" - "\tmovs r0, 0\n" - "\tstrh r0, [r5]\n" - "\tmov r2, sp\n" - "\tstr r2, [r7]\n" - "\tstr r4, [r7, 0x4]\n" - "\tmov r0, r9\n" - "\tstr r0, [r7, 0x8]\n" - "\tldr r0, [r7, 0x8]\n" - "\tb _08095DA6\n" - "\t.align 2, 0\n" - "_08095D74: .4byte 0x040000d4\n" - "_08095D78:\n" - "\tmovs r4, 0\n" - "\tstrh r4, [r5]\n" - "\tldr r1, _08095DC4 @ =0x040000d4\n" - "\tmov r0, sp\n" - "\tstr r0, [r1]\n" - "\tstr r3, [r1, 0x4]\n" - "\tldr r0, _08095DC8 @ =0x81000800\n" - "\tstr r0, [r1, 0x8]\n" - "\tldr r0, [r1, 0x8]\n" - "\tadds r3, r6\n" - "\tsubs r2, r6\n" - "\tcmp r2, r6\n" - "\tbhi _08095D78\n" - "\tstrh r4, [r5]\n" - "\tmov r0, sp\n" - "\tstr r0, [r1]\n" - "\tstr r3, [r1, 0x4]\n" - "\tlsrs r0, r2, 1\n" - "\tmovs r2, 0x81\n" - "\tlsls r2, 24\n" - "\torrs r0, r2\n" - "\tstr r0, [r1, 0x8]\n" - "\tldr r0, [r1, 0x8]\n" - "_08095DA6:\n" - "\tmov r4, r8\n" - "\tmov r1, r12\n" - "\tlsls r0, r1, 16\n" - "\tlsrs r0, 16\n" - "\tcmp r0, r10\n" - "\tbcc _08095D4E\n" - "_08095DB2:\n" - "\tadd sp, 0x8\n" - "\tpop {r3-r5}\n" - "\tmov r8, r3\n" - "\tmov r9, r4\n" - "\tmov r10, r5\n" - "\tpop {r4-r7}\n" - "\tpop {r0}\n" - "\tbx r0\n" - "\t.align 2, 0\n" - "_08095DC4: .4byte 0x040000d4\n" - "_08095DC8: .4byte 0x81000800"); + Dma3FillLarge16_(0, dest, width); } -#endif s16 StorageSystemGetNextMonIndex(struct BoxPokemon *box, s8 startIdx, u8 stopIdx, u8 mode) { -- cgit v1.2.3 From aadd5c8ac07ef5967d8e2cf58fbdd04f79d5b82a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Jan 2018 13:41:32 -0500 Subject: through sub_8099EB0 and relevant data --- asm/pokemon_storage_system.s | 192 ------------------ data/pokemon_storage_system.s | 346 --------------------------------- include/pokemon_storage_system.h | 7 +- ld_script.txt | 1 + src/pokemon/pokemon_storage_system_4.c | 233 +++++++++++++++++++++- 5 files changed, 237 insertions(+), 542 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index e66901961..55c7d448b 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,198 +5,6 @@ .text - thumb_func_start sub_8099DCC -sub_8099DCC: @ 8099DCC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08099DF8 @ =gPokemonStorage - ldr r2, _08099DFC @ =0x000083c2 - adds r1, r2 - adds r0, r1 - movs r1, 0 - strb r4, [r0] - ldr r0, _08099E00 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r2, _08099E04 @ =0x00001032 - adds r0, r2 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08099DF8: .4byte gPokemonStorage -_08099DFC: .4byte 0x000083c2 -_08099E00: .4byte gPokemonStorageSystemPtr -_08099E04: .4byte 0x00001032 - thumb_func_end sub_8099DCC - - thumb_func_start sub_8099E08 -sub_8099E08: @ 8099E08 - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, _08099E24 @ =gPokemonStorageSystemPtr - ldr r5, [r0] - ldr r0, _08099E28 @ =0x00001032 - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0x1 - beq _08099E54 - cmp r0, 0x1 - bgt _08099E2C - cmp r0, 0 - beq _08099E36 - b _08099EA6 - .align 2, 0 -_08099E24: .4byte gPokemonStorageSystemPtr -_08099E28: .4byte 0x00001032 -_08099E2C: - cmp r0, 0x2 - beq _08099E90 - cmp r0, 0x3 - beq _08099EA2 - b _08099EA6 -_08099E36: - ldr r1, _08099E4C @ =0x00000d08 - adds r0, r5, r1 - ldr r0, [r0] - ldr r1, _08099E50 @ =0x0000ffff - str r1, [sp] - movs r1, 0x1 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _08099E9A - .align 2, 0 -_08099E4C: .4byte 0x00000d08 -_08099E50: .4byte 0x0000ffff -_08099E54: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08099EA6 - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_8099EB0 - bl sub_809A654 - ldr r1, _08099E88 @ =0x00000d08 - adds r0, r5, r1 - ldr r0, [r0] - ldr r1, _08099E8C @ =0x0000ffff - str r1, [sp] - movs r1, 0x1 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - b _08099E9A - .align 2, 0 -_08099E88: .4byte 0x00000d08 -_08099E8C: .4byte 0x0000ffff -_08099E90: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08099EA6 -_08099E9A: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _08099EA6 -_08099EA2: - movs r0, 0 - b _08099EA8 -_08099EA6: - movs r0, 0x1 -_08099EA8: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8099E08 - - thumb_func_start sub_8099EB0 -sub_8099EB0: @ 8099EB0 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - cmp r1, 0 - beq _08099ED8 - ldr r0, _08099F38 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r2, 0 - ldr r3, _08099F3C @ =0x000008ba - adds r1, r0, r3 - ldrb r0, [r1] - cmp r0, 0 - bne _08099ED0 - movs r2, 0x1 -_08099ED0: - strb r2, [r1] - ldr r0, _08099F40 @ =0x0600d000 - bl sub_809A14C -_08099ED8: - ldr r0, _08099F44 @ =gPokemonStorage - ldr r1, _08099F48 @ =0x000083c2 - adds r0, r1 - adds r0, r4, r0 - ldrb r4, [r0] - lsls r4, 4 - ldr r0, _08099F4C @ =gWallpaperTable - adds r4, r0 - ldr r0, [r4, 0xC] - ldr r1, _08099F38 @ =gPokemonStorageSystemPtr - ldr r5, [r1] - ldr r2, _08099F3C @ =0x000008ba - adds r6, r5, r2 - ldrb r2, [r6] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 20 - movs r3, 0x80 - lsls r3, 15 - adds r1, r3 - lsrs r1, 16 - movs r2, 0x60 - bl LoadPalette - ldr r0, [r4, 0x8] - ldr r1, _08099F50 @ =0x00000d62 - adds r5, r1 - adds r1, r5, 0 - bl LZ77UnCompWram - ldr r0, _08099F40 @ =0x0600d000 - lsls r2, r7, 24 - asrs r2, 24 - ldrb r3, [r6] - adds r1, r5, 0 - bl sub_8099F58 - ldr r0, [r4] - ldrb r1, [r6] - lsls r1, 13 - ldr r2, _08099F54 @ =0x06008000 - adds r1, r2 - bl LZ77UnCompVram - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08099F38: .4byte gPokemonStorageSystemPtr -_08099F3C: .4byte 0x000008ba -_08099F40: .4byte 0x0600d000 -_08099F44: .4byte gPokemonStorage -_08099F48: .4byte 0x000083c2 -_08099F4C: .4byte gWallpaperTable -_08099F50: .4byte 0x00000d62 -_08099F54: .4byte 0x06008000 - thumb_func_end sub_8099EB0 - thumb_func_start sub_8099F58 sub_8099F58: @ 8099F58 push {r4-r7,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 883630413..8d62633d3 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,352 +3,6 @@ .section .rodata - .align 2 -gWallpaperPalettes_Forest: @ 83B6F64 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/forest_frame.gbapal" - .incbin "graphics/pokemon_storage/forest_bg.gbapal" - - .align 2 -gWallpaperTiles_Forest: @ 83B6FC4 - .incbin "graphics/pokemon_storage/forest.4bpp.lz" - - .align 2 -gWallpaperTilemap_Forest: @ 83B7394 - .incbin "graphics/pokemon_storage/forest.bin.lz" - - .align 2 -gWallpaperPalettes_City: @ 83B7470 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/city_frame.gbapal" - .incbin "graphics/pokemon_storage/city_bg.gbapal" - - .align 2 -gWallpaperTiles_City: @ 83B74D0 - .incbin "graphics/pokemon_storage/city.4bpp.lz" - - .align 2 -gWallpaperTilemap_City: @ 83B76D8 - .incbin "graphics/pokemon_storage/city.bin.lz" - - .align 2 -gWallpaperPalettes_Desert: @ 83B7788 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/desert_frame.gbapal" - .incbin "graphics/pokemon_storage/desert_bg.gbapal" - - .align 2 -gWallpaperTiles_Desert: @ 83B77E8 - .incbin "graphics/pokemon_storage/desert.4bpp.lz" - - .align 2 -gWallpaperTilemap_Desert: @ 83B7AD4 - .incbin "graphics/pokemon_storage/desert.bin.lz" - - .align 2 -gWallpaperPalettes_Savanna: @ 83B7BB8 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/savanna_frame.gbapal" - .incbin "graphics/pokemon_storage/savanna_bg.gbapal" - - .align 2 -gWallpaperTiles_Savanna: @ 83B7C18 - .incbin "graphics/pokemon_storage/savanna.4bpp.lz" - - .align 2 -gWallpaperTilemap_Savanna: @ 83B7E38 - .incbin "graphics/pokemon_storage/savanna.bin.lz" - - .align 2 -gWallpaperPalettes_Crag: @ 83B7F04 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/crag_frame.gbapal" - .incbin "graphics/pokemon_storage/crag_bg.gbapal" - - .align 2 -gWallpaperTiles_Crag: @ 83B7F64 - .incbin "graphics/pokemon_storage/crag.4bpp.lz" - - .align 2 -gWallpaperTilemap_Crag: @ 83B82B4 - .incbin "graphics/pokemon_storage/crag.bin.lz" - - .align 2 -gWallpaperPalettes_Volcano: @ 83B838C - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/volcano_frame.gbapal" - .incbin "graphics/pokemon_storage/volcano_bg.gbapal" - - .align 2 -gWallpaperTiles_Volcano: @ 83B83EC - .incbin "graphics/pokemon_storage/volcano.4bpp.lz" - - .space 4 - - .align 2 -gWallpaperTilemap_Volcano: @ 83B8720 - .incbin "graphics/pokemon_storage/volcano.bin.lz" - - .align 2 -gWallpaperPalettes_Snow: @ 83B87F8 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/snow_frame.gbapal" - .incbin "graphics/pokemon_storage/snow_bg.gbapal" - - .align 2 -gWallpaperTiles_Snow: @ 83B8858 - .incbin "graphics/pokemon_storage/snow.4bpp.lz" - - .align 2 -gWallpaperTilemap_Snow: @ 83B8B10 - .incbin "graphics/pokemon_storage/snow.bin.lz" - - .align 2 -gWallpaperPalettes_Cave: @ 83B8BDC - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/cave_frame.gbapal" - .incbin "graphics/pokemon_storage/cave_bg.gbapal" - - .align 2 -gWallpaperTiles_Cave: @ 83B8C3C - .incbin "graphics/pokemon_storage/cave.4bpp.lz" - - .align 2 -gWallpaperTilemap_Cave: @ 83B8F80 - .incbin "graphics/pokemon_storage/cave.bin.lz" - - .align 2 -gWallpaperPalettes_Beach: @ 83B905C - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/beach_frame.gbapal" - .incbin "graphics/pokemon_storage/beach_bg.gbapal" - - .align 2 -gWallpaperTiles_Beach: @ 83B90BC - .incbin "graphics/pokemon_storage/beach.4bpp.lz" - - .align 2 -gWallpaperTilemap_Beach: @ 83B9440 - .incbin "graphics/pokemon_storage/beach.bin.lz" - - .align 2 -gWallpaperPalettes_Seafloor: @ 83B9528 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/seafloor_frame.gbapal" - .incbin "graphics/pokemon_storage/seafloor_bg.gbapal" - - .align 2 -gWallpaperTiles_Seafloor: @ 83B9588 - .incbin "graphics/pokemon_storage/seafloor.4bpp.lz" - - .align 2 -gWallpaperTilemap_Seafloor: @ 83B983C - .incbin "graphics/pokemon_storage/seafloor.bin.lz" - - .align 2 -gWallpaperPalettes_River: @ 83B9918 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/river_frame.gbapal" - .incbin "graphics/pokemon_storage/river_bg.gbapal" - - .align 2 -gWallpaperTiles_River: @ 83B9978 - .incbin "graphics/pokemon_storage/river.4bpp.lz" - - .align 2 -gWallpaperTilemap_River: @ 83B9C0C - .incbin "graphics/pokemon_storage/river.bin.lz" - - .align 2 -gWallpaperPalettes_Sky: @ 83B9CF8 - .incbin "graphics/pokemon_storage/box_bg1.gbapal" - .incbin "graphics/pokemon_storage/sky_frame.gbapal" - .incbin "graphics/pokemon_storage/sky_bg.gbapal" - - .align 2 -gWallpaperTiles_Sky: @ 83B9D58 - .incbin "graphics/pokemon_storage/sky.4bpp.lz" - - .align 2 -gWallpaperTilemap_Sky: @ 83B9FF0 - .incbin "graphics/pokemon_storage/sky.bin.lz" - - .align 2 -gWallpaperPalettes_Polkadot: @ 83BA0D0 - .incbin "graphics/pokemon_storage/box_bg2.gbapal" - .incbin "graphics/pokemon_storage/polkadot_frame.gbapal" - .incbin "graphics/pokemon_storage/polkadot_bg.gbapal" - - .align 2 -gWallpaperTiles_Polkadot: @ 83BA130 - .incbin "graphics/pokemon_storage/polkadot.4bpp.lz" - - .align 2 -gWallpaperTilemap_Polkadot: @ 83BA32C - .incbin "graphics/pokemon_storage/polkadot.bin.lz" - - .align 2 -gWallpaperPalettes_Pokecenter: @ 83BA3E4 - .incbin "graphics/pokemon_storage/box_bg2.gbapal" - .incbin "graphics/pokemon_storage/pokecenter_frame.gbapal" - .incbin "graphics/pokemon_storage/pokecenter_bg.gbapal" - - .align 2 -gWallpaperTiles_Pokecenter: @ 83BA444 - .incbin "graphics/pokemon_storage/pokecenter.4bpp.lz" - - .align 2 -gWallpaperTilemap_Pokecenter: @ 83BA7E8 - .incbin "graphics/pokemon_storage/pokecenter.bin.lz" - - .align 2 -gWallpaperPalettes_Machine: @ 83BA8FC - .incbin "graphics/pokemon_storage/box_bg3.gbapal" - .incbin "graphics/pokemon_storage/machine_frame.gbapal" - .incbin "graphics/pokemon_storage/machine_bg.gbapal" - - .align 2 -gWallpaperTiles_Machine: @ 83BA95C - .incbin "graphics/pokemon_storage/machine.4bpp.lz" - - .align 2 -gWallpaperTilemap_Machine: @ 83BAC4C - .incbin "graphics/pokemon_storage/machine.bin.lz" - - .align 2 -gWallpaperPalettes_Plain: @ 83BAD18 - .incbin "graphics/pokemon_storage/box_bg4.gbapal" - .incbin "graphics/pokemon_storage/plain_frame.gbapal" - .incbin "graphics/pokemon_storage/plain_bg.gbapal" - - .align 2 -gWallpaperTiles_Plain: @ 83BAD78 - .incbin "graphics/pokemon_storage/plain.4bpp.lz" - - .align 2 -gWallpaperTilemap_Plain: @ 83BAE74 - .incbin "graphics/pokemon_storage/plain.bin.lz" - -@ 12×18 tilemap - .incbin "graphics/unused/tilemap_3BAEF8.bin" - - .align 1 -gUnknown_083BB0A8:: @ 83BB0A8 - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - .2byte 0x1CE7, 0x7FFF - - .align 2 -gWallpaperTable:: @ 83BB0E8 - @ Forest - .4byte gWallpaperTiles_Forest - .4byte 0x3D0 - .4byte gWallpaperTilemap_Forest - .4byte gWallpaperPalettes_Forest - - @ City - .4byte gWallpaperTiles_City - .4byte 0x208 - .4byte gWallpaperTilemap_City - .4byte gWallpaperPalettes_City - - @ Desert - .4byte gWallpaperTiles_Desert - .4byte 0x2EC - .4byte gWallpaperTilemap_Desert - .4byte gWallpaperPalettes_Desert - - @ Savanna - .4byte gWallpaperTiles_Savanna - .4byte 0x220 - .4byte gWallpaperTilemap_Savanna - .4byte gWallpaperPalettes_Savanna - - @ Crag - .4byte gWallpaperTiles_Crag - .4byte 0x350 - .4byte gWallpaperTilemap_Crag - .4byte gWallpaperPalettes_Crag - - @ Volcano - .4byte gWallpaperTiles_Volcano - .4byte 0x334 - .4byte gWallpaperTilemap_Volcano - .4byte gWallpaperPalettes_Volcano - - @ Snow - .4byte gWallpaperTiles_Snow - .4byte 0x2B8 - .4byte gWallpaperTilemap_Snow - .4byte gWallpaperPalettes_Snow - - @ Cave - .4byte gWallpaperTiles_Cave - .4byte 0x344 - .4byte gWallpaperTilemap_Cave - .4byte gWallpaperPalettes_Cave - - @ Beach - .4byte gWallpaperTiles_Beach - .4byte 0x384 - .4byte gWallpaperTilemap_Beach - .4byte gWallpaperPalettes_Beach - - @ Seafloor - .4byte gWallpaperTiles_Seafloor - .4byte 0x2B4 - .4byte gWallpaperTilemap_Seafloor - .4byte gWallpaperPalettes_Seafloor - - @ River - .4byte gWallpaperTiles_River - .4byte 0x294 - .4byte gWallpaperTilemap_River - .4byte gWallpaperPalettes_River - - @ Sky - .4byte gWallpaperTiles_Sky - .4byte 0x298 - .4byte gWallpaperTilemap_Sky - .4byte gWallpaperPalettes_Sky - - @ Polkadot - .4byte gWallpaperTiles_Polkadot - .4byte 0x1FC - .4byte gWallpaperTilemap_Polkadot - .4byte gWallpaperPalettes_Polkadot - - @ Pokecenter - .4byte gWallpaperTiles_Pokecenter - .4byte 0x3A4 - .4byte gWallpaperTilemap_Pokecenter - .4byte gWallpaperPalettes_Pokecenter - - @ Machine - .4byte gWallpaperTiles_Machine - .4byte 0x2F0 - .4byte gWallpaperTilemap_Machine - .4byte gWallpaperPalettes_Machine - - @ Plain - .4byte gWallpaperTiles_Plain - .4byte 0xFC - .4byte gWallpaperTilemap_Plain - .4byte gWallpaperPalettes_Plain - PCPal_Arrow: .incbin "graphics/pokemon_storage/arrow.gbapal" PCGfx_Arrow: diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 09b3be60f..cd4dceadf 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -101,7 +101,7 @@ struct PokemonStorageSystemData { u16 unk_08b4; u16 unk_08b6; u16 unk_08b8; - u8 unk_08ba; + bool8 unk_08ba; u8 unk_08bb; u16 unk_08bc; u16 unk_08be; @@ -112,12 +112,13 @@ struct PokemonStorageSystemData { u16 unk_08c8; u8 unk_08ca[0x400]; u8 unk_0cca; - u16 unk_0ccc[0x20]; + u16 unk_0ccc[0x1e]; + u32 unk_0d08; u8 filler_0d0c[0x50]; u16 unk_0d5c; s16 unk_0d5e; s16 unk_0d60; - u8 unk_0d62[0x2d0]; + u16 unk_0d62[360]; u8 unk_1032; struct Sprite *unk_1034; struct Sprite *unk_1038[6]; // party diff --git a/ld_script.txt b/ld_script.txt index e1d28736e..b0b5d4796 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -550,6 +550,7 @@ SECTIONS { src/pokemon/pokemon_storage_system.o(.rodata); src/pokemon/pokemon_storage_system_2.o(.rodata); src/pokemon/pokemon_storage_system_3.o(.rodata); + src/pokemon/pokemon_storage_system_4.o(.rodata); data/pokemon_storage_system.o(.rodata); src/pokemon/pokemon_icon.o(.rodata); src/pokemon/pokemon_summary_screen.o(.rodata); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 697292d5c..8982ce461 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -1,6 +1,7 @@ // Includes #include "global.h" +#include "palette.h" #include "pokemon_storage_system.h" // Static type declarations @@ -16,14 +17,24 @@ EWRAM_DATA u8 gUnknown_020384E8 = 0; EWRAM_DATA u8 gUnknown_020384E9 = 0; EWRAM_DATA u16 gUnknown_020384EA = 0; +struct WallpaperTable { + const u8 *tiles; + u32 size; + const u8 *tileMap; + const u16 *palettes; +}; + // Static ROM declarations void sub_809900C(u8 boxId, s8 a1); s8 sub_8099D90(u8 boxId); void sub_8099EB0(u8 boxId, s8 a1); +void sub_8099F58(u16 *vdest, const u16 *src, s8 a2, u8 a3); +void sub_809A14C(u16 *vdest); void sub_809A23C(u8 boxId); void sub_809A3D0(u8 boxId, s8 a1); void sub_809A598(void); +void sub_809A654(void); void sub_809A6DC(void); void sub_809A774(s8 a0); void sub_809A810(void); @@ -34,7 +45,7 @@ void sub_809A810(void); void sub_8099BF8(u8 boxId) { - gPokemonStorageSystemPtr->unk_08ba = 0; + gPokemonStorageSystemPtr->unk_08ba = FALSE; gPokemonStorageSystemPtr->unk_08b4 = 0; DmaFill32(3, 0, BG_SCREEN_ADDR(26), 0x1000); sub_8099EB0(boxId, 0); @@ -92,3 +103,223 @@ s8 sub_8099D90(u8 boxId) } return i <= 6 ? 1 : -1; } + +void sub_8099DCC(u8 wallpaperId) +{ + u8 curBox = get_preferred_box(); + gPokemonStorage.wallpaper[curBox] = wallpaperId; + gPokemonStorageSystemPtr->unk_1032 = 0; +} + +bool8 sub_8099E08(void) +{ + switch (gPokemonStorageSystemPtr->unk_1032) + { + case 0: + BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0, 0x10, 0xffff); + gPokemonStorageSystemPtr->unk_1032++; + break; + case 1: + if (!UpdatePaletteFade()) + { + u8 curBox = get_preferred_box(); + sub_8099EB0(curBox, 0); + sub_809A654(); + BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0x10, 0, 0xffff); + gPokemonStorageSystemPtr->unk_1032++; + } + break; + case 2: + if (!UpdatePaletteFade()) + gPokemonStorageSystemPtr->unk_1032++; + break; + case 3: + return FALSE; + } + return TRUE; +} + +const u16 gWallpaperPalettes_Forest[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Forest_2[] = INCBIN_U16("graphics/pokemon_storage/forest_frame.gbapal"); +const u16 gWallpaperPalettes_Forest_2_3[] = INCBIN_U16("graphics/pokemon_storage/forest_bg.gbapal"); + +const u8 gWallpaperTiles_Forest[] = INCBIN_U8("graphics/pokemon_storage/forest.4bpp.lz"); + +const u8 gWallpaperTilemap_Forest[] = INCBIN_U8("graphics/pokemon_storage/forest.bin.lz"); + +const u16 gWallpaperPalettes_City[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_City_2[] = INCBIN_U16("graphics/pokemon_storage/city_frame.gbapal"); +const u16 gWallpaperPalettes_City_2_3[] = INCBIN_U16("graphics/pokemon_storage/city_bg.gbapal"); + +const u8 gWallpaperTiles_City[] = INCBIN_U8("graphics/pokemon_storage/city.4bpp.lz"); + +const u8 gWallpaperTilemap_City[] = INCBIN_U8("graphics/pokemon_storage/city.bin.lz"); + +const u16 gWallpaperPalettes_Desert[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Desert_2[] = INCBIN_U16("graphics/pokemon_storage/desert_frame.gbapal"); +const u16 gWallpaperPalettes_Desert_2_3[] = INCBIN_U16("graphics/pokemon_storage/desert_bg.gbapal"); + +const u8 gWallpaperTiles_Desert[] = INCBIN_U8("graphics/pokemon_storage/desert.4bpp.lz"); + +const u8 gWallpaperTilemap_Desert[] = INCBIN_U8("graphics/pokemon_storage/desert.bin.lz"); + +const u16 gWallpaperPalettes_Savanna[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Savanna_2[] = INCBIN_U16("graphics/pokemon_storage/savanna_frame.gbapal"); +const u16 gWallpaperPalettes_Savanna_2_3[] = INCBIN_U16("graphics/pokemon_storage/savanna_bg.gbapal"); + +const u8 gWallpaperTiles_Savanna[] = INCBIN_U8("graphics/pokemon_storage/savanna.4bpp.lz"); + +const u8 gWallpaperTilemap_Savanna[] = INCBIN_U8("graphics/pokemon_storage/savanna.bin.lz"); + +const u16 gWallpaperPalettes_Crag[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Crag_2[] = INCBIN_U16("graphics/pokemon_storage/crag_frame.gbapal"); +const u16 gWallpaperPalettes_Crag_2_3[] = INCBIN_U16("graphics/pokemon_storage/crag_bg.gbapal"); + +const u8 gWallpaperTiles_Crag[] = INCBIN_U8("graphics/pokemon_storage/crag.4bpp.lz"); + +const u8 gWallpaperTilemap_Crag[] = INCBIN_U8("graphics/pokemon_storage/crag.bin.lz"); + +const u16 gWallpaperPalettes_Volcano[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Volcano_2[] = INCBIN_U16("graphics/pokemon_storage/volcano_frame.gbapal"); +const u16 gWallpaperPalettes_Volcano_2_3[] = INCBIN_U16("graphics/pokemon_storage/volcano_bg.gbapal"); + +const u8 gWallpaperTiles_Volcano[] = INCBIN_U8("graphics/pokemon_storage/volcano.4bpp.lz"); +const u32 filler_83b871c = 0; // needed to match but otherwise garbage + +const u8 gWallpaperTilemap_Volcano[] = INCBIN_U8("graphics/pokemon_storage/volcano.bin.lz"); + +const u16 gWallpaperPalettes_Snow[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Snow_2[] = INCBIN_U16("graphics/pokemon_storage/snow_frame.gbapal"); +const u16 gWallpaperPalettes_Snow_2_3[] = INCBIN_U16("graphics/pokemon_storage/snow_bg.gbapal"); + +const u8 gWallpaperTiles_Snow[] = INCBIN_U8("graphics/pokemon_storage/snow.4bpp.lz"); + +const u8 gWallpaperTilemap_Snow[] = INCBIN_U8("graphics/pokemon_storage/snow.bin.lz"); + +const u16 gWallpaperPalettes_Cave[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Cave_2[] = INCBIN_U16("graphics/pokemon_storage/cave_frame.gbapal"); +const u16 gWallpaperPalettes_Cave_2_3[] = INCBIN_U16("graphics/pokemon_storage/cave_bg.gbapal"); + +const u8 gWallpaperTiles_Cave[] = INCBIN_U8("graphics/pokemon_storage/cave.4bpp.lz"); + +const u8 gWallpaperTilemap_Cave[] = INCBIN_U8("graphics/pokemon_storage/cave.bin.lz"); + +const u16 gWallpaperPalettes_Beach[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Beach_2[] = INCBIN_U16("graphics/pokemon_storage/beach_frame.gbapal"); +const u16 gWallpaperPalettes_Beach_2_3[] = INCBIN_U16("graphics/pokemon_storage/beach_bg.gbapal"); + +const u8 gWallpaperTiles_Beach[] = INCBIN_U8("graphics/pokemon_storage/beach.4bpp.lz"); + +const u8 gWallpaperTilemap_Beach[] = INCBIN_U8("graphics/pokemon_storage/beach.bin.lz"); + +const u16 gWallpaperPalettes_Seafloor[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Seafloor_2[] = INCBIN_U16("graphics/pokemon_storage/seafloor_frame.gbapal"); +const u16 gWallpaperPalettes_Seafloor_2_3[] = INCBIN_U16("graphics/pokemon_storage/seafloor_bg.gbapal"); + +const u8 gWallpaperTiles_Seafloor[] = INCBIN_U8("graphics/pokemon_storage/seafloor.4bpp.lz"); + +const u8 gWallpaperTilemap_Seafloor[] = INCBIN_U8("graphics/pokemon_storage/seafloor.bin.lz"); + +const u16 gWallpaperPalettes_River[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_River_2[] = INCBIN_U16("graphics/pokemon_storage/river_frame.gbapal"); +const u16 gWallpaperPalettes_River_2_3[] = INCBIN_U16("graphics/pokemon_storage/river_bg.gbapal"); + +const u8 gWallpaperTiles_River[] = INCBIN_U8("graphics/pokemon_storage/river.4bpp.lz"); + +const u8 gWallpaperTilemap_River[] = INCBIN_U8("graphics/pokemon_storage/river.bin.lz"); + +const u16 gWallpaperPalettes_Sky[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); +const u16 gWallpaperPalettes_Sky_2[] = INCBIN_U16("graphics/pokemon_storage/sky_frame.gbapal"); +const u16 gWallpaperPalettes_Sky_2_3[] = INCBIN_U16("graphics/pokemon_storage/sky_bg.gbapal"); + +const u8 gWallpaperTiles_Sky[] = INCBIN_U8("graphics/pokemon_storage/sky.4bpp.lz"); + +const u8 gWallpaperTilemap_Sky[] = INCBIN_U8("graphics/pokemon_storage/sky.bin.lz"); + +const u16 gWallpaperPalettes_Polkadot[] = INCBIN_U16("graphics/pokemon_storage/box_bg2.gbapal"); +const u16 gWallpaperPalettes_Polkadot_2[] = INCBIN_U16("graphics/pokemon_storage/polkadot_frame.gbapal"); +const u16 gWallpaperPalettes_Polkadot_2_3[] = INCBIN_U16("graphics/pokemon_storage/polkadot_bg.gbapal"); + +const u8 gWallpaperTiles_Polkadot[] = INCBIN_U8("graphics/pokemon_storage/polkadot.4bpp.lz"); + +const u8 gWallpaperTilemap_Polkadot[] = INCBIN_U8("graphics/pokemon_storage/polkadot.bin.lz"); + +const u16 gWallpaperPalettes_Pokecenter[] = INCBIN_U16("graphics/pokemon_storage/box_bg2.gbapal"); +const u16 gWallpaperPalettes_Pokecenter_2[] = INCBIN_U16("graphics/pokemon_storage/pokecenter_frame.gbapal"); +const u16 gWallpaperPalettes_Pokecenter_2_3[] = INCBIN_U16("graphics/pokemon_storage/pokecenter_bg.gbapal"); + +const u8 gWallpaperTiles_Pokecenter[] = INCBIN_U8("graphics/pokemon_storage/pokecenter.4bpp.lz"); + +const u8 gWallpaperTilemap_Pokecenter[] = INCBIN_U8("graphics/pokemon_storage/pokecenter.bin.lz"); + +const u16 gWallpaperPalettes_Machine[] = INCBIN_U16("graphics/pokemon_storage/box_bg3.gbapal"); +const u16 gWallpaperPalettes_Machine_2[] = INCBIN_U16("graphics/pokemon_storage/machine_frame.gbapal"); +const u16 gWallpaperPalettes_Machine_2_3[] = INCBIN_U16("graphics/pokemon_storage/machine_bg.gbapal"); + +const u8 gWallpaperTiles_Machine[] = INCBIN_U8("graphics/pokemon_storage/machine.4bpp.lz"); + +const u8 gWallpaperTilemap_Machine[] = INCBIN_U8("graphics/pokemon_storage/machine.bin.lz"); + +const u16 gWallpaperPalettes_Plain[] = INCBIN_U16("graphics/pokemon_storage/box_bg4.gbapal"); +const u16 gWallpaperPalettes_Plain_2[] = INCBIN_U16("graphics/pokemon_storage/plain_frame.gbapal"); +const u16 gWallpaperPalettes_Plain_2_3[] = INCBIN_U16("graphics/pokemon_storage/plain_bg.gbapal"); + +const u8 gWallpaperTiles_Plain[] = INCBIN_U8("graphics/pokemon_storage/plain.4bpp.lz"); + +const u8 gWallpaperTilemap_Plain[] = INCBIN_U8("graphics/pokemon_storage/plain.bin.lz"); + +const u16 gUnknown_083BAEF8[] = INCBIN_U16("graphics/unused/tilemap_3BAEF8.bin"); + +const u16 gUnknown_083BB0A8[][2] = { + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF}, + {0x1CE7, 0x7FFF} +}; + +const struct WallpaperTable gWallpaperTable[] = { + {gWallpaperTiles_Forest, 0x3D0, gWallpaperTilemap_Forest, gWallpaperPalettes_Forest}, // Forest + {gWallpaperTiles_City, 0x208, gWallpaperTilemap_City, gWallpaperPalettes_City}, // City + {gWallpaperTiles_Desert, 0x2EC, gWallpaperTilemap_Desert, gWallpaperPalettes_Desert}, // Desert + {gWallpaperTiles_Savanna, 0x220, gWallpaperTilemap_Savanna, gWallpaperPalettes_Savanna}, // Savanna + {gWallpaperTiles_Crag, 0x350, gWallpaperTilemap_Crag, gWallpaperPalettes_Crag}, // Crag + {gWallpaperTiles_Volcano, 0x334, gWallpaperTilemap_Volcano, gWallpaperPalettes_Volcano}, // Volcano + {gWallpaperTiles_Snow, 0x2B8, gWallpaperTilemap_Snow, gWallpaperPalettes_Snow}, // Snow + {gWallpaperTiles_Cave, 0x344, gWallpaperTilemap_Cave, gWallpaperPalettes_Cave}, // Cave + {gWallpaperTiles_Beach, 0x384, gWallpaperTilemap_Beach, gWallpaperPalettes_Beach}, // Beach + {gWallpaperTiles_Seafloor, 0x2B4, gWallpaperTilemap_Seafloor, gWallpaperPalettes_Seafloor}, // Seafloor + {gWallpaperTiles_River, 0x294, gWallpaperTilemap_River, gWallpaperPalettes_River}, // River + {gWallpaperTiles_Sky, 0x298, gWallpaperTilemap_Sky, gWallpaperPalettes_Sky}, // Sky + {gWallpaperTiles_Polkadot, 0x1FC, gWallpaperTilemap_Polkadot, gWallpaperPalettes_Polkadot}, // Polkadot + {gWallpaperTiles_Pokecenter, 0x3A4, gWallpaperTilemap_Pokecenter, gWallpaperPalettes_Pokecenter}, // Pokecenter + {gWallpaperTiles_Machine, 0x2F0, gWallpaperTilemap_Machine, gWallpaperPalettes_Machine}, // Machine + {gWallpaperTiles_Plain, 0xFC, gWallpaperTilemap_Plain, gWallpaperPalettes_Plain} // Plain +}; + +void sub_8099EB0(u8 boxId, s8 a1) +{ + const struct WallpaperTable *wallpaperTable; + + if (a1) + { + gPokemonStorageSystemPtr->unk_08ba = gPokemonStorageSystemPtr->unk_08ba ? FALSE : TRUE; + sub_809A14C(BG_SCREEN_ADDR(26)); + } + wallpaperTable = gWallpaperTable +gPokemonStorage.wallpaper[boxId]; + LoadPalette(wallpaperTable->palettes, gPokemonStorageSystemPtr->unk_08ba * 0x30 + 0x40, 0x60); + LZ77UnCompWram(wallpaperTable->tileMap, gPokemonStorageSystemPtr->unk_0d62); + sub_8099F58(BG_SCREEN_ADDR(26), gPokemonStorageSystemPtr->unk_0d62, a1, gPokemonStorageSystemPtr->unk_08ba); + LZ77UnCompVram(wallpaperTable->tiles, BG_CHAR_ADDR(2) + (gPokemonStorageSystemPtr->unk_08ba << 13)); +} -- cgit v1.2.3 From e9c74d2472bc322b9d60f1b7033268efbd0bd159 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 13 Jan 2018 13:02:57 -0500 Subject: nonmatching sub_8099F58 --- asm/pokemon_storage_system.s | 269 ------------------------- src/pokemon/pokemon_storage_system_4.c | 350 +++++++++++++++++++++++++++++++++ 2 files changed, 350 insertions(+), 269 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 55c7d448b..bf7e7a809 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,275 +5,6 @@ .text - thumb_func_start sub_8099F58 -sub_8099F58: @ 8099F58 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - mov r9, r0 - adds r5, r1, 0 - lsls r2, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r0, r3, 8 - str r0, [sp] - lsls r0, r3, 1 - adds r0, r3 - adds r0, 0x4 - lsls r0, 28 - lsrs r0, 16 - str r0, [sp, 0x4] - ldr r0, _08099FB8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _08099FBC @ =0x000008b4 - adds r0, r1 - ldrh r1, [r0] - lsrs r1, 3 - adds r1, 0xA - lsrs r0, r2, 24 - mov r8, r0 - asrs r2, 24 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - movs r0, 0x3F - ands r1, r0 - str r1, [sp, 0x8] - adds r2, r1, 0 - cmp r2, 0xC - bgt _08099FC0 - movs r6, 0x14 - movs r3, 0 - lsls r0, r2, 1 - adds r0, 0x80 - mov r1, r9 - adds r4, r1, r0 - movs r7, 0 - b _0809A020 - .align 2, 0 -_08099FB8: .4byte gPokemonStorageSystemPtr -_08099FBC: .4byte 0x000008b4 -_08099FC0: - cmp r2, 0x1F - bgt _08099FE6 - movs r0, 0x20 - subs r0, r2 - lsls r0, 16 - movs r1, 0x14 - lsrs r6, r0, 16 - asrs r0, 16 - subs r1, r0 - lsls r1, 16 - lsrs r3, r1, 16 - lsls r0, r2, 1 - adds r0, 0x80 - mov r2, r9 - adds r4, r2, r0 - movs r7, 0x88 - lsls r7, 4 - add r7, r9 - b _0809A020 -_08099FE6: - cmp r2, 0x2C - bgt _08099FFE - movs r6, 0x14 - movs r3, 0 - lsls r0, r2, 1 - movs r1, 0x84 - lsls r1, 4 - adds r0, r1 - mov r2, r9 - adds r4, r2, r0 - movs r7, 0 - b _0809A020 -_08099FFE: - movs r0, 0x40 - subs r0, r2 - lsls r0, 16 - movs r1, 0x14 - lsrs r6, r0, 16 - asrs r0, 16 - subs r1, r0 - lsls r1, 16 - lsrs r3, r1, 16 - lsls r0, r2, 1 - movs r1, 0x84 - lsls r1, 4 - adds r0, r1 - mov r2, r9 - adds r4, r2, r0 - mov r7, r9 - adds r7, 0x80 -_0809A020: - movs r1, 0 - mov r0, r8 - lsls r0, 24 - str r0, [sp, 0x14] - lsls r0, r6, 16 - asrs r0, 16 - mov r8, r0 - lsls r3, 16 - str r3, [sp, 0xC] - asrs r2, r3, 16 - str r2, [sp, 0x10] -_0809A036: - movs r3, 0 - adds r0, r4, 0 - adds r0, 0x40 - str r0, [sp, 0x18] - adds r2, r7, 0 - adds r2, 0x40 - str r2, [sp, 0x1C] - adds r1, 0x1 - mov r10, r1 - cmp r3, r8 - bge _0809A07A - ldr r0, _0809A0D4 @ =0x00000fff - mov r12, r0 - movs r6, 0xF0 - lsls r6, 8 -_0809A054: - ldrh r2, [r5] - mov r0, r12 - ands r0, r2 - ldr r1, [sp] - adds r0, r1, r0 - adds r1, r6, 0 - ands r1, r2 - ldr r2, [sp, 0x4] - adds r1, r2, r1 - orrs r1, r0 - lsls r0, r3, 1 - adds r0, r4 - strh r1, [r0] - adds r5, 0x2 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r8 - blt _0809A054 -_0809A07A: - movs r3, 0 - ldr r0, [sp, 0x10] - cmp r3, r0 - bge _0809A0B4 - ldr r1, _0809A0D4 @ =0x00000fff - mov r12, r1 - movs r6, 0xF0 - lsls r6, 8 - ldr r2, [sp, 0xC] - asrs r4, r2, 16 -_0809A08E: - ldrh r2, [r5] - mov r0, r12 - ands r0, r2 - ldr r1, [sp] - adds r0, r1, r0 - adds r1, r6, 0 - ands r1, r2 - ldr r2, [sp, 0x4] - adds r1, r2, r1 - orrs r1, r0 - lsls r0, r3, 1 - adds r0, r7 - strh r1, [r0] - adds r5, 0x2 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r4 - blt _0809A08E -_0809A0B4: - ldr r4, [sp, 0x18] - ldr r7, [sp, 0x1C] - mov r1, r10 - lsls r0, r1, 16 - lsrs r1, r0, 16 - cmp r1, 0x11 - bls _0809A036 - ldr r0, [sp, 0x14] - asrs r2, r0, 24 - cmp r2, 0 - beq _0809A13A - cmp r2, 0 - ble _0809A0D8 - ldr r1, [sp, 0x8] - adds r1, 0x14 - b _0809A0DC - .align 2, 0 -_0809A0D4: .4byte 0x00000fff -_0809A0D8: - ldr r1, [sp, 0x8] - subs r1, 0x4 -_0809A0DC: - movs r0, 0x3F - ands r1, r0 - adds r4, r1, 0 - adds r0, r4, 0 - cmp r0, 0x1F - bgt _0809A0EE - lsls r0, 1 - adds r0, 0x80 - b _0809A0F6 -_0809A0EE: - lsls r0, 1 - movs r2, 0x84 - lsls r2, 4 - adds r0, r2 -_0809A0F6: - mov r1, r9 - adds r2, r1, r0 - movs r3, 0 - movs r6, 0 -_0809A0FE: - movs r1, 0 - adds r5, r3, 0x1 - lsls r3, r4, 16 -_0809A104: - strh r6, [r2] - adds r2, 0x40 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x11 - bls _0809A104 - asrs r0, r3, 16 - adds r4, r0, 0x1 - movs r0, 0x3F - ands r4, r0 - adds r0, r4, 0 - cmp r0, 0x1F - bgt _0809A126 - lsls r0, 1 - adds r0, 0x80 - b _0809A12E -_0809A126: - lsls r0, 1 - movs r2, 0x84 - lsls r2, 4 - adds r0, r2 -_0809A12E: - mov r1, r9 - adds r2, r1, r0 - lsls r0, r5, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _0809A0FE -_0809A13A: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8099F58 - thumb_func_start sub_809A14C sub_809A14C: @ 809A14C push {r4-r6,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 8982ce461..9f19814a5 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -323,3 +323,353 @@ void sub_8099EB0(u8 boxId, s8 a1) sub_8099F58(BG_SCREEN_ADDR(26), gPokemonStorageSystemPtr->unk_0d62, a1, gPokemonStorageSystemPtr->unk_08ba); LZ77UnCompVram(wallpaperTable->tiles, BG_CHAR_ADDR(2) + (gPokemonStorageSystemPtr->unk_08ba << 13)); } + +#ifdef NONMATCHING +void sub_8099F58(u16 *vdest, const u16 *src, s8 a2, u8 a3) +{ + s16 r6; + s16 r3; + u16 sp0 = a3 << 8; + u16 sp4 = (a3 * 3 + 4) << 12; + u16 *r4; + u16 *r7; + u16 i; + u16 j; + s16 sp8 = ((gPokemonStorageSystemPtr->unk_08b4 >> 3) + 10 + a2 * 24) & 0x3f; + if (sp8 < 13) + { + r6 = 20; + r3 = 0; + r4 = vdest + sp8 + 0x40; + r7 = NULL; + } + else if (sp8 < 32) + { + r6 = 32 - sp8; + r3 = 20 - r6; + r4 = vdest + sp8 + 0x40; + r7 = vdest + 0x440; + } + else if (sp8 < 45) + { + r6 = 20; + r3 = 0; + r4 = vdest + sp8 + 0x420; + r7 = NULL; + } + else + { + r6 = 64 - sp8; + r3 = 20 - r6; + r4 = vdest + sp8 + 0x420; + r7 = vdest + 0x40; + } + for (i = 0; i < 18; i++) + { + for (j = 0; j < r6; j++) + { + u16 tile = ((*src & 0xfff) + sp0) | ((*src & 0xf000) + sp4); + r4[j] = tile; + src++; + } + for (j = 0; j < r3; j++) + { + u16 tile = ((*src & 0xfff) + sp0) | ((*src & 0xf000) + sp4); + r7[j] = tile; + src++; + } + r4 += 0x20; + r7 += 0x20; + } + if (a2) + { + s16 r4_2; + u16 *r2; + if (a2 > 0) + r4_2 = (sp8 + 20) & 0x3f; + else + r4_2 = (sp8 - 4) & 0x3f; + r2 = r4_2 < 0x20 ? vdest + r4_2 + 0x40 : vdest + r4_2 + 0x420; + for (i = 0; i < 4; i++) + { + for (j = 0; j < 18; j++) + { + *r2 = 0; + r2 += 0x20; + } + r4_2++; + r4_2 &= 0x3f; + r2 = r4_2 < 0x20 ? vdest + r4_2 + 0x40 : vdest + r4_2 + 0x420; + } + } +} +#else +__attribute__((naked)) void sub_8099F58(u16 *vdest, const u16 *src, s8 a2, u8 a3) +{ + asm_unified("\tpush {r4-r7,lr}\n" + "\tmov r7, r10\n" + "\tmov r6, r9\n" + "\tmov r5, r8\n" + "\tpush {r5-r7}\n" + "\tsub sp, 0x20\n" + "\tmov r9, r0\n" + "\tadds r5, r1, 0\n" + "\tlsls r2, 24\n" + "\tlsls r3, 24\n" + "\tlsrs r3, 24\n" + "\tlsls r0, r3, 8\n" + "\tstr r0, [sp]\n" + "\tlsls r0, r3, 1\n" + "\tadds r0, r3\n" + "\tadds r0, 0x4\n" + "\tlsls r0, 28\n" + "\tlsrs r0, 16\n" + "\tstr r0, [sp, 0x4]\n" + "\tldr r0, _08099FB8 @ =gPokemonStorageSystemPtr\n" + "\tldr r0, [r0]\n" + "\tldr r1, _08099FBC @ =0x000008b4\n" + "\tadds r0, r1\n" + "\tldrh r1, [r0]\n" + "\tlsrs r1, 3\n" + "\tadds r1, 0xA\n" + "\tlsrs r0, r2, 24\n" + "\tmov r8, r0\n" + "\tasrs r2, 24\n" + "\tlsls r0, r2, 1\n" + "\tadds r0, r2\n" + "\tlsls r0, 3\n" + "\tadds r1, r0\n" + "\tmovs r0, 0x3F\n" + "\tands r1, r0\n" + "\tstr r1, [sp, 0x8]\n" + "\tadds r2, r1, 0\n" + "\tcmp r2, 0xC\n" + "\tbgt _08099FC0\n" + "\tmovs r6, 0x14\n" + "\tmovs r3, 0\n" + "\tlsls r0, r2, 1\n" + "\tadds r0, 0x80\n" + "\tmov r1, r9\n" + "\tadds r4, r1, r0\n" + "\tmovs r7, 0\n" + "\tb _0809A020\n" + "\t.align 2, 0\n" + "_08099FB8: .4byte gPokemonStorageSystemPtr\n" + "_08099FBC: .4byte 0x000008b4\n" + "_08099FC0:\n" + "\tcmp r2, 0x1F\n" + "\tbgt _08099FE6\n" + "\tmovs r0, 0x20\n" + "\tsubs r0, r2\n" + "\tlsls r0, 16\n" + "\tmovs r1, 0x14\n" + "\tlsrs r6, r0, 16\n" + "\tasrs r0, 16\n" + "\tsubs r1, r0\n" + "\tlsls r1, 16\n" + "\tlsrs r3, r1, 16\n" + "\tlsls r0, r2, 1\n" + "\tadds r0, 0x80\n" + "\tmov r2, r9\n" + "\tadds r4, r2, r0\n" + "\tmovs r7, 0x88\n" + "\tlsls r7, 4\n" + "\tadd r7, r9\n" + "\tb _0809A020\n" + "_08099FE6:\n" + "\tcmp r2, 0x2C\n" + "\tbgt _08099FFE\n" + "\tmovs r6, 0x14\n" + "\tmovs r3, 0\n" + "\tlsls r0, r2, 1\n" + "\tmovs r1, 0x84\n" + "\tlsls r1, 4\n" + "\tadds r0, r1\n" + "\tmov r2, r9\n" + "\tadds r4, r2, r0\n" + "\tmovs r7, 0\n" + "\tb _0809A020\n" + "_08099FFE:\n" + "\tmovs r0, 0x40\n" + "\tsubs r0, r2\n" + "\tlsls r0, 16\n" + "\tmovs r1, 0x14\n" + "\tlsrs r6, r0, 16\n" + "\tasrs r0, 16\n" + "\tsubs r1, r0\n" + "\tlsls r1, 16\n" + "\tlsrs r3, r1, 16\n" + "\tlsls r0, r2, 1\n" + "\tmovs r1, 0x84\n" + "\tlsls r1, 4\n" + "\tadds r0, r1\n" + "\tmov r2, r9\n" + "\tadds r4, r2, r0\n" + "\tmov r7, r9\n" + "\tadds r7, 0x80\n" + "_0809A020:\n" + "\tmovs r1, 0\n" + "\tmov r0, r8\n" + "\tlsls r0, 24\n" + "\tstr r0, [sp, 0x14]\n" + "\tlsls r0, r6, 16\n" + "\tasrs r0, 16\n" + "\tmov r8, r0\n" + "\tlsls r3, 16\n" + "\tstr r3, [sp, 0xC]\n" + "\tasrs r2, r3, 16\n" + "\tstr r2, [sp, 0x10]\n" + "_0809A036:\n" + "\tmovs r3, 0\n" + "\tadds r0, r4, 0\n" + "\tadds r0, 0x40\n" + "\tstr r0, [sp, 0x18]\n" + "\tadds r2, r7, 0\n" + "\tadds r2, 0x40\n" + "\tstr r2, [sp, 0x1C]\n" + "\tadds r1, 0x1\n" + "\tmov r10, r1\n" + "\tcmp r3, r8\n" + "\tbge _0809A07A\n" + "\tldr r0, _0809A0D4 @ =0x00000fff\n" + "\tmov r12, r0\n" + "\tmovs r6, 0xF0\n" + "\tlsls r6, 8\n" + "_0809A054:\n" + "\tldrh r2, [r5]\n" + "\tmov r0, r12\n" + "\tands r0, r2\n" + "\tldr r1, [sp]\n" + "\tadds r0, r1, r0\n" + "\tadds r1, r6, 0\n" + "\tands r1, r2\n" + "\tldr r2, [sp, 0x4]\n" + "\tadds r1, r2, r1\n" + "\torrs r1, r0\n" + "\tlsls r0, r3, 1\n" + "\tadds r0, r4\n" + "\tstrh r1, [r0]\n" + "\tadds r5, 0x2\n" + "\tadds r0, r3, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r3, r0, 16\n" + "\tcmp r3, r8\n" + "\tblt _0809A054\n" + "_0809A07A:\n" + "\tmovs r3, 0\n" + "\tldr r0, [sp, 0x10]\n" + "\tcmp r3, r0\n" + "\tbge _0809A0B4\n" + "\tldr r1, _0809A0D4 @ =0x00000fff\n" + "\tmov r12, r1\n" + "\tmovs r6, 0xF0\n" + "\tlsls r6, 8\n" + "\tldr r2, [sp, 0xC]\n" + "\tasrs r4, r2, 16\n" + "_0809A08E:\n" + "\tldrh r2, [r5]\n" + "\tmov r0, r12\n" + "\tands r0, r2\n" + "\tldr r1, [sp]\n" + "\tadds r0, r1, r0\n" + "\tadds r1, r6, 0\n" + "\tands r1, r2\n" + "\tldr r2, [sp, 0x4]\n" + "\tadds r1, r2, r1\n" + "\torrs r1, r0\n" + "\tlsls r0, r3, 1\n" + "\tadds r0, r7\n" + "\tstrh r1, [r0]\n" + "\tadds r5, 0x2\n" + "\tadds r0, r3, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r3, r0, 16\n" + "\tcmp r3, r4\n" + "\tblt _0809A08E\n" + "_0809A0B4:\n" + "\tldr r4, [sp, 0x18]\n" + "\tldr r7, [sp, 0x1C]\n" + "\tmov r1, r10\n" + "\tlsls r0, r1, 16\n" + "\tlsrs r1, r0, 16\n" + "\tcmp r1, 0x11\n" + "\tbls _0809A036\n" + "\tldr r0, [sp, 0x14]\n" + "\tasrs r2, r0, 24\n" + "\tcmp r2, 0\n" + "\tbeq _0809A13A\n" + "\tcmp r2, 0\n" + "\tble _0809A0D8\n" + "\tldr r1, [sp, 0x8]\n" + "\tadds r1, 0x14\n" + "\tb _0809A0DC\n" + "\t.align 2, 0\n" + "_0809A0D4: .4byte 0x00000fff\n" + "_0809A0D8:\n" + "\tldr r1, [sp, 0x8]\n" + "\tsubs r1, 0x4\n" + "_0809A0DC:\n" + "\tmovs r0, 0x3F\n" + "\tands r1, r0\n" + "\tadds r4, r1, 0\n" + "\tadds r0, r4, 0\n" + "\tcmp r0, 0x1F\n" + "\tbgt _0809A0EE\n" + "\tlsls r0, 1\n" + "\tadds r0, 0x80\n" + "\tb _0809A0F6\n" + "_0809A0EE:\n" + "\tlsls r0, 1\n" + "\tmovs r2, 0x84\n" + "\tlsls r2, 4\n" + "\tadds r0, r2\n" + "_0809A0F6:\n" + "\tmov r1, r9\n" + "\tadds r2, r1, r0\n" + "\tmovs r3, 0\n" + "\tmovs r6, 0\n" + "_0809A0FE:\n" + "\tmovs r1, 0\n" + "\tadds r5, r3, 0x1\n" + "\tlsls r3, r4, 16\n" + "_0809A104:\n" + "\tstrh r6, [r2]\n" + "\tadds r2, 0x40\n" + "\tadds r0, r1, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r1, r0, 16\n" + "\tcmp r1, 0x11\n" + "\tbls _0809A104\n" + "\tasrs r0, r3, 16\n" + "\tadds r4, r0, 0x1\n" + "\tmovs r0, 0x3F\n" + "\tands r4, r0\n" + "\tadds r0, r4, 0\n" + "\tcmp r0, 0x1F\n" + "\tbgt _0809A126\n" + "\tlsls r0, 1\n" + "\tadds r0, 0x80\n" + "\tb _0809A12E\n" + "_0809A126:\n" + "\tlsls r0, 1\n" + "\tmovs r2, 0x84\n" + "\tlsls r2, 4\n" + "\tadds r0, r2\n" + "_0809A12E:\n" + "\tmov r1, r9\n" + "\tadds r2, r1, r0\n" + "\tlsls r0, r5, 16\n" + "\tlsrs r3, r0, 16\n" + "\tcmp r3, 0x3\n" + "\tbls _0809A0FE\n" + "_0809A13A:\n" + "\tadd sp, 0x20\n" + "\tpop {r3-r5}\n" + "\tmov r8, r3\n" + "\tmov r9, r4\n" + "\tmov r10, r5\n" + "\tpop {r4-r7}\n" + "\tpop {r0}\n" + "\tbx r0"); +} +#endif -- cgit v1.2.3 From a5721ffd736f30d424da8aede5c52071365f3850 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 13 Jan 2018 16:40:15 -0500 Subject: nonmatching sub_809A14C --- asm/pokemon_storage_system.s | 64 -------------------------- src/pokemon/pokemon_storage_system_4.c | 84 ++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+), 64 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index bf7e7a809..79783e4ed 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,70 +5,6 @@ .text - thumb_func_start sub_809A14C -sub_809A14C: @ 809A14C - push {r4-r6,lr} - adds r2, r0, 0 - ldr r0, _0809A174 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809A178 @ =0x000008b4 - adds r0, r1 - ldrh r0, [r0] - lsrs r0, 3 - adds r3, r0, 0 - adds r3, 0x1E - movs r0, 0x3F - ands r3, r0 - adds r0, r3, 0 - cmp r0, 0x1F - bgt _0809A17C - lsls r0, 1 - movs r6, 0x98 - lsls r6, 3 - adds r0, r6 - b _0809A184 - .align 2, 0 -_0809A174: .4byte gPokemonStorageSystemPtr -_0809A178: .4byte 0x000008b4 -_0809A17C: - lsls r0, 1 - movs r1, 0xC8 - lsls r1, 4 - adds r0, r1 -_0809A184: - adds r2, r0 - movs r0, 0 - movs r5, 0 - movs r4, 0x3F -_0809A18C: - strh r5, [r2] - adds r2, 0x2 - adds r3, 0x1 - ands r3, r4 - adds r1, r3, 0 - cmp r1, 0 - bne _0809A19E - ldr r6, _0809A1B8 @ =0xfffff7c0 - adds r2, r6 -_0809A19E: - cmp r1, 0x20 - bne _0809A1A8 - movs r1, 0xF8 - lsls r1, 3 - adds r2, r1 -_0809A1A8: - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2B - bls _0809A18C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809A1B8: .4byte 0xfffff7c0 - thumb_func_end sub_809A14C - thumb_func_start sub_809A1BC sub_809A1BC: @ 809A1BC push {r4-r6,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 9f19814a5..1ccaa01f1 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -673,3 +673,87 @@ __attribute__((naked)) void sub_8099F58(u16 *vdest, const u16 *src, s8 a2, u8 a3 "\tbx r0"); } #endif + +#ifdef NONMATCHING +void sub_809A14C(u16 *vdest) +{ + u16 *r2; + u16 i; + int r3 = ((gPokemonStorageSystemPtr->unk_08b4 >> 3) + 30) & 0x3f; + r2 = vdest + (r3 < 0x20 ? r3 + 0x260 : r3 + 0x640); + for (i = 0; i < 0x2b; i++) + { + *r2++ = 0; + r3++; + r3 &= 0x3f; + if (r3 == 0) + r2 -= 0x420; + if (r3 == 0x20) + r2 += 0x3e0; + } +} +#else +__attribute__((naked)) void sub_809A14C(u16 *vdest) +{ + asm_unified("\tpush {r4-r6,lr}\n" + "\tadds r2, r0, 0\n" + "\tldr r0, _0809A174 @ =gPokemonStorageSystemPtr\n" + "\tldr r0, [r0]\n" + "\tldr r1, _0809A178 @ =0x000008b4\n" + "\tadds r0, r1\n" + "\tldrh r0, [r0]\n" + "\tlsrs r0, 3\n" + "\tadds r3, r0, 0\n" + "\tadds r3, 0x1E\n" + "\tmovs r0, 0x3F\n" + "\tands r3, r0\n" + "\tadds r0, r3, 0\n" + "\tcmp r0, 0x1F\n" + "\tbgt _0809A17C\n" + "\tlsls r0, 1\n" + "\tmovs r6, 0x98\n" + "\tlsls r6, 3\n" + "\tadds r0, r6\n" + "\tb _0809A184\n" + "\t.align 2, 0\n" + "_0809A174: .4byte gPokemonStorageSystemPtr\n" + "_0809A178: .4byte 0x000008b4\n" + "_0809A17C:\n" + "\tlsls r0, 1\n" + "\tmovs r1, 0xC8\n" + "\tlsls r1, 4\n" + "\tadds r0, r1\n" + "_0809A184:\n" + "\tadds r2, r0\n" + "\tmovs r0, 0\n" + "\tmovs r5, 0\n" + "\tmovs r4, 0x3F\n" + "_0809A18C:\n" + "\tstrh r5, [r2]\n" + "\tadds r2, 0x2\n" + "\tadds r3, 0x1\n" + "\tands r3, r4\n" + "\tadds r1, r3, 0\n" + "\tcmp r1, 0\n" + "\tbne _0809A19E\n" + "\tldr r6, _0809A1B8 @ =0xfffff7c0\n" + "\tadds r2, r6\n" + "_0809A19E:\n" + "\tcmp r1, 0x20\n" + "\tbne _0809A1A8\n" + "\tmovs r1, 0xF8\n" + "\tlsls r1, 3\n" + "\tadds r2, r1\n" + "_0809A1A8:\n" + "\tadds r0, 0x1\n" + "\tlsls r0, 16\n" + "\tlsrs r0, 16\n" + "\tcmp r0, 0x2B\n" + "\tbls _0809A18C\n" + "\tpop {r4-r6}\n" + "\tpop {r0}\n" + "\tbx r0\n" + "\t.align 2, 0\n" + "_0809A1B8: .4byte 0xfffff7c0"); +} +#endif -- cgit v1.2.3 From daa0a98ee0129be1797274de318a35df30d39020 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 13 Jan 2018 20:07:32 -0500 Subject: through sub_809A23C --- asm/pokemon_storage_system.s | 242 --------------------------------- data/pokemon_storage_system.s | 38 ------ include/pokemon_storage_system.h | 6 +- src/pokemon/pokemon_storage_system_4.c | 90 ++++++++++++ 4 files changed, 95 insertions(+), 281 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 79783e4ed..81e0729a1 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,248 +5,6 @@ .text - thumb_func_start sub_809A1BC -sub_809A1BC: @ 809A1BC - push {r4-r6,lr} - sub sp, 0x8 - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, _0809A228 @ =gUnknown_083B6DB8 - ldr r5, [r0] - mov r1, sp - movs r0, 0 - strh r0, [r1] - ldr r4, _0809A22C @ =0x040000d4 - str r1, [r4] - str r5, [r4, 0x4] - movs r6, 0x80 - lsls r6, 1 - ldr r0, _0809A230 @ =0x81000100 - str r0, [r4, 0x8] - ldr r0, [r4, 0x8] - ldr r0, _0809A234 @ =gWindowTemplate_81E6D38 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl Text_InitWindow8004E3C - str r5, [r4] - ldr r3, [sp, 0x4] - str r3, [r4, 0x4] - ldr r1, _0809A238 @ =0x80000040 - str r1, [r4, 0x8] - ldr r0, [r4, 0x8] - adds r0, r5, r6 - str r0, [r4] - adds r0, r3, 0 - adds r0, 0x80 - str r0, [r4, 0x4] - str r1, [r4, 0x8] - ldr r0, [r4, 0x8] - adds r0, r5, 0 - adds r0, 0x80 - str r0, [r4] - adds r6, r3, r6 - str r6, [r4, 0x4] - str r1, [r4, 0x8] - ldr r0, [r4, 0x8] - movs r0, 0xC0 - lsls r0, 1 - adds r5, r0 - str r5, [r4] - adds r3, r0 - str r3, [r4, 0x4] - str r1, [r4, 0x8] - ldr r0, [r4, 0x8] - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809A228: .4byte gUnknown_083B6DB8 -_0809A22C: .4byte 0x040000d4 -_0809A230: .4byte 0x81000100 -_0809A234: .4byte gWindowTemplate_81E6D38 -_0809A238: .4byte 0x80000040 - thumb_func_end sub_809A1BC - - thumb_func_start sub_809A23C -sub_809A23C: @ 809A23C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _0809A384 @ =gPokemonStorageSystemPtr - ldr r5, [r0] - ldr r1, _0809A388 @ =0x000008ca - adds r7, r5, r1 - str r7, [sp, 0x18] - mov r2, sp - adds r2, 0x18 - str r2, [sp, 0x20] - ldr r0, _0809A38C @ =0x00030200 - str r0, [r2, 0x4] - mov r1, sp - ldr r3, _0809A390 @ =0x00000ccc - adds r0, r5, r3 - str r0, [sp] - ldr r4, _0809A394 @ =0x0000dac8 - strh r4, [r1, 0x4] - str r0, [sp, 0x8] - ldr r6, _0809A398 @ =0xffffdac9 - strh r6, [r1, 0xC] - add r0, sp, 0x10 - movs r1, 0 - movs r2, 0x8 - bl memset - ldr r0, _0809A39C @ =gPokemonStorage - mov r9, r0 - ldr r0, _0809A3A0 @ =0x000083c2 - add r0, r9 - add r0, r8 - ldrb r1, [r0] - ldr r2, _0809A3A4 @ =gUnknown_083BB0A8 - lsls r1, 2 - adds r0, r1, r2 - ldrh r3, [r0] - ldr r6, _0809A3A8 @ =0x00000ce8 - adds r0, r5, r6 - strh r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrh r1, [r1] - ldr r2, _0809A3AC @ =0x00000cea - adds r0, r5, r2 - strh r1, [r0] - mov r0, sp - bl LoadSpritePalettes - ldr r3, _0809A3B0 @ =0x00000d08 - adds r6, r5, r3 - movs r0, 0xFC - lsls r0, 2 - str r0, [r6] - adds r0, r4, 0 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - movs r2, 0x87 - lsls r2, 1 - mov r10, r2 - add r1, r10 - ldr r3, _0809A3B4 @ =0x00000cec - adds r2, r5, r3 - strh r1, [r2] - movs r4, 0x80 - lsls r4, 9 - adds r1, r4, 0 - lsls r1, r0 - ldr r0, [r6] - orrs r0, r1 - str r0, [r6] - ldr r0, _0809A3B8 @ =0x0000dac9 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - add r1, r10 - ldr r2, _0809A3BC @ =0x00000cee - adds r5, r2 - strh r1, [r5] - lsls r4, r0 - ldr r0, [r6] - orrs r0, r4 - str r0, [r6] - mov r3, r8 - lsls r4, r3, 3 - add r4, r8 - ldr r6, _0809A3C0 @ =0x00008344 - add r9, r6 - add r4, r9 - adds r0, r7, 0 - adds r1, r4, 0 - bl sub_809A1BC - ldr r0, [sp, 0x20] - bl LoadSpriteSheet - adds r0, r4, 0 - bl sub_8072CA4 - lsls r0, 24 - lsrs r0, 24 - bl sub_809A6D0 - movs r4, 0 - lsls r0, 16 - asrs r6, r0, 16 -_0809A328: - lsls r1, r4, 5 - adds r1, r6, r1 - lsls r1, 16 - asrs r1, 16 - ldr r0, _0809A3C4 @ =gSpriteTemplate_83BB2B8 - movs r2, 0x1C - movs r3, 0x17 - bl CreateSprite - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _0809A384 @ =gPokemonStorageSystemPtr - ldr r5, [r0] - lsls r0, r4, 2 - movs r3, 0xCF - lsls r3, 4 - adds r2, r5, r3 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809A3C8 @ =gSprites - adds r0, r1 - str r0, [r2] - lsls r1, r4, 24 - lsrs r1, 24 - bl StartSpriteAnim - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1 - bls _0809A328 - ldr r6, _0809A3CC @ =0x00000cca - adds r1, r5, r6 - movs r0, 0 - strb r0, [r1] - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809A384: .4byte gPokemonStorageSystemPtr -_0809A388: .4byte 0x000008ca -_0809A38C: .4byte 0x00030200 -_0809A390: .4byte 0x00000ccc -_0809A394: .4byte 0x0000dac8 -_0809A398: .4byte 0xffffdac9 -_0809A39C: .4byte gPokemonStorage -_0809A3A0: .4byte 0x000083c2 -_0809A3A4: .4byte gUnknown_083BB0A8 -_0809A3A8: .4byte 0x00000ce8 -_0809A3AC: .4byte 0x00000cea -_0809A3B0: .4byte 0x00000d08 -_0809A3B4: .4byte 0x00000cec -_0809A3B8: .4byte 0x0000dac9 -_0809A3BC: .4byte 0x00000cee -_0809A3C0: .4byte 0x00008344 -_0809A3C4: .4byte gSpriteTemplate_83BB2B8 -_0809A3C8: .4byte gSprites -_0809A3CC: .4byte 0x00000cca - thumb_func_end sub_809A23C - thumb_func_start sub_809A3D0 sub_809A3D0: @ 809A3D0 push {r4-r7,lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 8d62633d3..aa9767dfa 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,44 +3,6 @@ .section .rodata -PCPal_Arrow: - .incbin "graphics/pokemon_storage/arrow.gbapal" -PCGfx_Arrow: - .incbin "graphics/pokemon_storage/arrow.4bpp" - - .align 2 -gUnknown_083BB288:: @ 83BB288 - obj_tiles PCGfx_Arrow, 128, 0x0006 - - .align 2 -gUnknown_083BB290:: @ 83BB290 - obj_pal PCPal_Arrow, 0xDACF - - .align 2 -gOamData_83BB298:: @ 83BB298 - .2byte 0x4000 - .2byte 0x8000 - .2byte 0x0800 - - .align 2 -gSpriteAnim_83BB2A0:: @ 83BB2A0 - obj_image_anim_frame 0, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83BB2A8:: @ 83BB2A8 - obj_image_anim_frame 8, 5 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_83BB2B0:: @ 83BB2B0 - .4byte gSpriteAnim_83BB2A0 - .4byte gSpriteAnim_83BB2A8 - - .align 2 -gSpriteTemplate_83BB2B8:: @ 83BB2B8 - spr_template 3, 56008, gOamData_83BB298, gSpriteAnimTable_83BB2B0, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - .align 2 gOamData_83BB2D0:: @ 83BB2D0 .2byte 0x8000 diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index cd4dceadf..62014e62c 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -112,7 +112,11 @@ struct PokemonStorageSystemData { u16 unk_08c8; u8 unk_08ca[0x400]; u8 unk_0cca; - u16 unk_0ccc[0x1e]; + u16 unk_0ccc[0x10]; + u16 unk_0cec; + u16 unk_0cee; + struct Sprite *unk_0cf0[2]; + u8 filler_0cf8[16]; u32 unk_0d08; u8 filler_0d0c[0x50]; u16 unk_0d5c; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 1ccaa01f1..836a3433f 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -2,6 +2,8 @@ // Includes #include "global.h" #include "palette.h" +#include "text.h" +#include "menu.h" #include "pokemon_storage_system.h" // Static type declarations @@ -35,6 +37,7 @@ void sub_809A23C(u8 boxId); void sub_809A3D0(u8 boxId, s8 a1); void sub_809A598(void); void sub_809A654(void); +s16 sub_809A6D0(u8 width); void sub_809A6DC(void); void sub_809A774(s8 a0); void sub_809A810(void); @@ -757,3 +760,90 @@ __attribute__((naked)) void sub_809A14C(u16 *vdest) "_0809A1B8: .4byte 0xfffff7c0"); } #endif + +void sub_809A1BC(const u8 *a0, const u8 *text) +{ + u8 *r5 = gUnknown_083B6DB8; + DmaClear16(3, r5, 0x200); + Text_InitWindow8004E3C(&gWindowTemplate_81E6D38, r5, text); + DmaCopy16(3, r5 + 0x000, a0 + 0x000, 0x80); + DmaCopy16(3, r5 + 0x100, a0 + 0x080, 0x80); + DmaCopy16(3, r5 + 0x080, a0 + 0x100, 0x80); + DmaCopy16(3, r5 + 0x180, a0 + 0x180, 0x80); +} + +const struct SpriteTemplate gSpriteTemplate_83BB2B8; + +void sub_809A23C(u8 boxId) +{ + u8 tagIdx; + s16 r6; + u16 i; + + struct SpriteSheet spriteSheet = {gPokemonStorageSystemPtr->unk_08ca, 0x200, 3}; + struct SpritePalette palettes[] = { + {gPokemonStorageSystemPtr->unk_0ccc, 0xdac8}, + {gPokemonStorageSystemPtr->unk_0ccc, 0xdac9}, + {} + }; + + u16 wallpaper = gPokemonStorage.wallpaper[boxId]; + gPokemonStorageSystemPtr->unk_0ccc[14] = gUnknown_083BB0A8[wallpaper][0]; + gPokemonStorageSystemPtr->unk_0ccc[15] = gUnknown_083BB0A8[wallpaper][1]; + LoadSpritePalettes(palettes); + gPokemonStorageSystemPtr->unk_0d08 = 0x3f0; + tagIdx = IndexOfSpritePaletteTag(0xdac8); + gPokemonStorageSystemPtr->unk_0cec = 0x10e + 16 * tagIdx; + gPokemonStorageSystemPtr->unk_0d08 |= 0x10000 << tagIdx; + tagIdx = IndexOfSpritePaletteTag(0xdac9); + gPokemonStorageSystemPtr->unk_0cee = 0x10e + 16 * tagIdx; + gPokemonStorageSystemPtr->unk_0d08 |= 0x10000 << tagIdx; + sub_809A1BC(gPokemonStorageSystemPtr->unk_08ca, gPokemonStorage.boxNames[boxId]); + LoadSpriteSheet(&spriteSheet); + r6 = sub_809A6D0(sub_8072CA4(gPokemonStorage.boxNames[boxId])); + for (i = 0; i < 2; i++) + { + u8 spriteId = CreateSprite(&gSpriteTemplate_83BB2B8, r6 + i * 32, 0x1c, 23); + gPokemonStorageSystemPtr->unk_0cf0[i] = gSprites + spriteId; + StartSpriteAnim(gPokemonStorageSystemPtr->unk_0cf0[i], i); + } + gPokemonStorageSystemPtr->unk_0cca = 0; +} + + +const u16 PCPal_Arrow[] = INCBIN_U16("graphics/pokemon_storage/arrow.gbapal"); +const u8 PCGfx_Arrow[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); + +const struct SpriteSheet gUnknown_083BB288 = {PCGfx_Arrow, 0x80, 6}; +const struct SpritePalette gUnknown_083BB290 = {PCPal_Arrow, 0xdacf}; + +const struct OamData gOamData_83BB298 = { + .shape = ST_OAM_H_RECTANGLE, + .size = 2, + .priority = 2 +}; + +const union AnimCmd gSpriteAnim_83BB2A0[] = { + ANIMCMD_FRAME(0, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83BB2A8[] = { + ANIMCMD_FRAME(8, 5), + ANIMCMD_END +}; + +const union AnimCmd *const gSpriteAnimTable_83BB2B0[] = { + gSpriteAnim_83BB2A0, + gSpriteAnim_83BB2A8 +}; + +const struct SpriteTemplate gSpriteTemplate_83BB2B8 = { + 3, + 0xdac8, + &gOamData_83BB298, + gSpriteAnimTable_83BB2B0, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; -- cgit v1.2.3 From e8daaa0f3ef2d97f7afe378494f33037f5bc8ee9 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 14 Jan 2018 18:21:22 -0500 Subject: sub_809A3D0 --- asm/pokemon_storage_system.s | 213 --------------------------------- include/pokemon_storage_system.h | 3 +- src/pokemon/pokemon_storage_system_4.c | 44 +++++++ 3 files changed, 46 insertions(+), 214 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 81e0729a1..57cacbff3 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,219 +5,6 @@ .text - thumb_func_start sub_809A3D0 -sub_809A3D0: @ 809A3D0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x28] - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r3, _0809A43C @ =gPokemonStorageSystemPtr - ldr r5, [r3] - ldr r1, _0809A440 @ =0x000008ca - adds r0, r5, r1 - str r0, [sp, 0x18] - add r2, sp, 0x18 - ldr r4, _0809A444 @ =0x0000ffff - mov r9, r4 - movs r6, 0xC0 - lsls r6, 10 - mov r8, r6 - ldr r0, _0809A448 @ =0x00030200 - str r0, [r2, 0x4] - mov r1, sp - ldr r0, _0809A44C @ =gSpriteTemplate_83BB2B8 - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - ldm r0!, {r4,r6,r7} - stm r1!, {r4,r6,r7} - movs r1, 0 - ldr r7, _0809A450 @ =0x00000cca - adds r4, r5, r7 - ldrb r0, [r4] - adds r6, r2, 0 - cmp r0, 0 - bne _0809A41E - movs r1, 0x1 -_0809A41E: - strb r1, [r4] - cmp r1, 0 - bne _0809A458 - ldr r0, [r6, 0x4] - mov r1, r9 - ands r0, r1 - mov r4, r8 - orrs r0, r4 - str r0, [r6, 0x4] - ldr r7, _0809A454 @ =0x00000cec - adds r0, r5, r7 - ldrh r0, [r0] - mov r8, r0 - b _0809A478 - .align 2, 0 -_0809A43C: .4byte gPokemonStorageSystemPtr -_0809A440: .4byte 0x000008ca -_0809A444: .4byte 0x0000ffff -_0809A448: .4byte 0x00030200 -_0809A44C: .4byte gSpriteTemplate_83BB2B8 -_0809A450: .4byte 0x00000cca -_0809A454: .4byte 0x00000cec -_0809A458: - ldr r0, [r6, 0x4] - mov r1, r9 - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - orrs r0, r1 - str r0, [r6, 0x4] - ldr r4, _0809A570 @ =0x00000cec - adds r0, r5, r4 - ldrh r0, [r0] - mov r8, r0 - mov r1, sp - movs r0, 0x4 - strh r0, [r1] - ldr r0, _0809A574 @ =0x0000dac9 - strh r0, [r1, 0x2] -_0809A478: - ldr r0, [r3] - ldr r7, _0809A578 @ =0x000008ca - adds r0, r7 - ldr r1, [sp, 0x28] - lsls r5, r1, 3 - adds r5, r1 - ldr r4, _0809A57C @ =gPokemonStorage + 0x8344 - adds r5, r4 - adds r1, r5, 0 - bl sub_809A1BC - adds r0, r6, 0 - bl LoadSpriteSheet - adds r4, 0x7E - ldr r3, [sp, 0x28] - adds r4, r3, r4 - ldrb r0, [r4] - lsls r0, 2 - ldr r1, _0809A580 @ =gUnknown_083BB0A8 - adds r0, r1 - mov r1, r8 - movs r2, 0x4 - bl LoadPalette - adds r0, r5, 0 - bl sub_8072CA4 - lsls r0, 24 - lsrs r0, 24 - bl sub_809A6D0 - lsls r0, 16 - mov r4, r10 - lsls r2, r4, 24 - asrs r2, 24 - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 6 - lsrs r6, r0, 16 - str r6, [sp, 0x20] - asrs r0, 16 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0x24] - movs r7, 0 - negs r2, r2 - mov r9, r2 - movs r0, 0x1 - mov r10, r0 -_0809A4DE: - lsls r1, r7, 5 - mov r8, r1 - ldr r3, [sp, 0x24] - lsls r1, r3, 16 - asrs r1, 16 - add r1, r8 - lsls r1, 16 - asrs r1, 16 - mov r0, sp - movs r2, 0x1C - movs r3, 0x17 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809A584 @ =gPokemonStorageSystemPtr - ldr r4, [r1] - lsls r6, r7, 2 - ldr r1, _0809A588 @ =0x00000cf8 - adds r2, r4, r1 - adds r2, r6 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _0809A58C @ =gSprites - adds r1, r0 - str r1, [r2] - mov r3, r9 - lsls r5, r3, 1 - add r5, r9 - lsls r5, 1 - strh r5, [r1, 0x2E] - ldr r1, [r2] - ldr r3, [sp, 0x20] - lsls r0, r3, 16 - asrs r0, 16 - add r0, r8 - strh r0, [r1, 0x30] - ldr r0, [r2] - mov r1, r10 - strh r1, [r0, 0x32] - ldr r0, [r2] - ldr r1, _0809A590 @ =sub_809A5E8 - str r1, [r0, 0x1C] - lsls r1, r7, 24 - lsrs r1, 24 - bl StartSpriteAnim - movs r3, 0xCF - lsls r3, 4 - adds r4, r3 - adds r4, r6 - ldr r0, [r4] - strh r5, [r0, 0x2E] - ldr r0, [r4] - mov r6, r10 - strh r6, [r0, 0x30] - ldr r1, [r4] - ldr r0, _0809A594 @ =sub_809A61C - str r0, [r1, 0x1C] - adds r0, r7, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 - cmp r7, 0x1 - bls _0809A4DE - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809A570: .4byte 0x00000cec -_0809A574: .4byte 0x0000dac9 -_0809A578: .4byte 0x000008ca -_0809A57C: .4byte gPokemonStorage + 0x8344 -_0809A580: .4byte gUnknown_083BB0A8 -_0809A584: .4byte gPokemonStorageSystemPtr -_0809A588: .4byte 0x00000cf8 -_0809A58C: .4byte gSprites -_0809A590: .4byte sub_809A5E8 -_0809A594: .4byte sub_809A61C - thumb_func_end sub_809A3D0 - thumb_func_start sub_809A598 sub_809A598: @ 809A598 push {lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 62014e62c..85ffeaefe 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -116,7 +116,8 @@ struct PokemonStorageSystemData { u16 unk_0cec; u16 unk_0cee; struct Sprite *unk_0cf0[2]; - u8 filler_0cf8[16]; + struct Sprite *unk_0cf8[2]; + u8 filler_0cd0[8]; u32 unk_0d08; u8 filler_0d0c[0x50]; u16 unk_0d5c; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 836a3433f..b0378a254 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -36,11 +36,14 @@ void sub_809A14C(u16 *vdest); void sub_809A23C(u8 boxId); void sub_809A3D0(u8 boxId, s8 a1); void sub_809A598(void); +void sub_809A5E8(struct Sprite *sprite); +void sub_809A61C(struct Sprite *sprite); void sub_809A654(void); s16 sub_809A6D0(u8 width); void sub_809A6DC(void); void sub_809A774(s8 a0); void sub_809A810(void); +void sub_809A8C8(struct Sprite *sprite); // .rodata @@ -810,6 +813,47 @@ void sub_809A23C(u8 boxId) gPokemonStorageSystemPtr->unk_0cca = 0; } +void sub_809A3D0(u8 boxId, s8 a1) +{ + u16 r8; + s16 x; + s16 x2; + u16 i; + struct SpriteSheet spriteSheet = {gPokemonStorageSystemPtr->unk_08ca, 0x200, 3}; + struct SpriteTemplate template = gSpriteTemplate_83BB2B8; + + gPokemonStorageSystemPtr->unk_0cca = gPokemonStorageSystemPtr->unk_0cca ? FALSE : TRUE; + if (gPokemonStorageSystemPtr->unk_0cca == 0) + { + spriteSheet.tag = 3; + r8 = gPokemonStorageSystemPtr->unk_0cec; + } + else + { + spriteSheet.tag = 4; + r8 = gPokemonStorageSystemPtr->unk_0cec; + template.tileTag = 4; + template.paletteTag = 0xdac9; + } + sub_809A1BC(gPokemonStorageSystemPtr->unk_08ca, gPokemonStorage.boxNames[boxId]); + LoadSpriteSheet(&spriteSheet); + LoadPalette(gUnknown_083BB0A8[gPokemonStorage.wallpaper[boxId]], r8, 0x04); + x = sub_809A6D0(sub_8072CA4(gPokemonStorage.boxNames[boxId])); + x2 = x + a1 * 192; + for (i = 0; i < 2; i++) + { + u8 spriteId = CreateSprite(&template, i * 32 + x2, 0x1c, 23); + gPokemonStorageSystemPtr->unk_0cf8[i] = gSprites + spriteId; + gPokemonStorageSystemPtr->unk_0cf8[i]->data[0] = (-a1) * 6; + gPokemonStorageSystemPtr->unk_0cf8[i]->data[1] = i * 32 + x; + gPokemonStorageSystemPtr->unk_0cf8[i]->data[2] = 1; + gPokemonStorageSystemPtr->unk_0cf8[i]->callback = sub_809A5E8; + StartSpriteAnim(gPokemonStorageSystemPtr->unk_0cf8[i], i); + gPokemonStorageSystemPtr->unk_0cf0[i]->data[0] = (-a1) * 6; + gPokemonStorageSystemPtr->unk_0cf0[i]->data[1] = 1; + gPokemonStorageSystemPtr->unk_0cf0[i]->callback = sub_809A61C; + } +} const u16 PCPal_Arrow[] = INCBIN_U16("graphics/pokemon_storage/arrow.gbapal"); const u8 PCGfx_Arrow[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); -- cgit v1.2.3 From f33a73ed931885507b1a5f199044d85255078bc2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 14 Jan 2018 18:37:27 -0500 Subject: through sub_809A6D0 --- asm/pokemon_storage_system.s | 174 --------------------------------- src/pokemon/pokemon_storage_system_4.c | 46 +++++++++ 2 files changed, 46 insertions(+), 174 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 57cacbff3..dafd8ce71 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,180 +5,6 @@ .text - thumb_func_start sub_809A598 -sub_809A598: @ 809A598 - push {lr} - ldr r0, _0809A5B0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809A5B4 @ =0x00000cca - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0809A5B8 - movs r0, 0x4 - bl FreeSpriteTilesByTag - b _0809A5BE - .align 2, 0 -_0809A5B0: .4byte gPokemonStorageSystemPtr -_0809A5B4: .4byte 0x00000cca -_0809A5B8: - movs r0, 0x3 - bl FreeSpriteTilesByTag -_0809A5BE: - ldr r0, _0809A5E0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r3, 0xCF - lsls r3, 4 - adds r2, r0, r3 - adds r3, 0x8 - adds r1, r0, r3 - ldr r1, [r1] - str r1, [r2] - ldr r2, _0809A5E4 @ =0x00000cf4 - adds r1, r0, r2 - adds r3, 0x4 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_0809A5E0: .4byte gPokemonStorageSystemPtr -_0809A5E4: .4byte 0x00000cf4 - thumb_func_end sub_809A598 - - thumb_func_start sub_809A5E8 -sub_809A5E8: @ 809A5E8 - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x32] - movs r3, 0x32 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _0809A5FC - subs r0, r1, 0x1 - strh r0, [r2, 0x32] - b _0809A614 -_0809A5FC: - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x30 - ldrsh r1, [r2, r3] - cmp r0, r1 - bne _0809A614 - ldr r0, _0809A618 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] -_0809A614: - pop {r0} - bx r0 - .align 2, 0 -_0809A618: .4byte SpriteCallbackDummy - thumb_func_end sub_809A5E8 - - thumb_func_start sub_809A61C -sub_809A61C: @ 809A61C - push {lr} - adds r2, r0, 0 - ldrh r1, [r2, 0x30] - movs r3, 0x30 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _0809A630 - subs r0, r1, 0x1 - strh r0, [r2, 0x30] - b _0809A64E -_0809A630: - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r2, 0x20] - ldrh r1, [r2, 0x24] - adds r0, r1 - strh r0, [r2, 0x32] - subs r0, 0x40 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xC0 - bls _0809A64E - adds r0, r2, 0 - bl DestroySprite -_0809A64E: - pop {r0} - bx r0 - thumb_func_end sub_809A61C - - thumb_func_start sub_809A654 -sub_809A654: @ 809A654 - push {lr} - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809A690 @ =gPokemonStorage - ldr r2, _0809A694 @ =0x000083c2 - adds r1, r2 - adds r0, r1 - ldrb r1, [r0] - ldr r0, _0809A698 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r3, _0809A69C @ =0x00000cca - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _0809A6A8 - lsls r0, r1, 2 - ldr r1, _0809A6A0 @ =gUnknown_083BB0A8 - adds r0, r1 - adds r3, 0x22 - adds r1, r2, r3 - ldrh r1, [r1] - lsls r1, 1 - ldr r2, _0809A6A4 @ =gPlttBufferUnfaded - adds r1, r2 - movs r2, 0x2 - bl CpuSet - b _0809A6C0 - .align 2, 0 -_0809A690: .4byte gPokemonStorage -_0809A694: .4byte 0x000083c2 -_0809A698: .4byte gPokemonStorageSystemPtr -_0809A69C: .4byte 0x00000cca -_0809A6A0: .4byte gUnknown_083BB0A8 -_0809A6A4: .4byte gPlttBufferUnfaded -_0809A6A8: - lsls r0, r1, 2 - ldr r1, _0809A6C4 @ =gUnknown_083BB0A8 - adds r0, r1 - ldr r3, _0809A6C8 @ =0x00000cee - adds r1, r2, r3 - ldrh r1, [r1] - lsls r1, 1 - ldr r2, _0809A6CC @ =gPlttBufferUnfaded - adds r1, r2 - movs r2, 0x2 - bl CpuSet -_0809A6C0: - pop {r0} - bx r0 - .align 2, 0 -_0809A6C4: .4byte gUnknown_083BB0A8 -_0809A6C8: .4byte 0x00000cee -_0809A6CC: .4byte gPlttBufferUnfaded - thumb_func_end sub_809A654 - - thumb_func_start sub_809A6D0 -sub_809A6D0: @ 809A6D0 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 25 - movs r0, 0xB0 - subs r0, r1 - bx lr - thumb_func_end sub_809A6D0 - thumb_func_start sub_809A6DC sub_809A6DC: @ 809A6DC push {r4,r5,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index b0378a254..b48b20d5c 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -891,3 +891,49 @@ const struct SpriteTemplate gSpriteTemplate_83BB2B8 = { gDummySpriteAffineAnimTable, SpriteCallbackDummy }; + +void sub_809A598(void) +{ + if (gPokemonStorageSystemPtr->unk_0cca == 0) + FreeSpriteTilesByTag(4); + else + FreeSpriteTilesByTag(3); + gPokemonStorageSystemPtr->unk_0cf0[0] = gPokemonStorageSystemPtr->unk_0cf8[0]; + gPokemonStorageSystemPtr->unk_0cf0[1] = gPokemonStorageSystemPtr->unk_0cf8[1]; +} + +void sub_809A5E8(struct Sprite *sprite) +{ + if (sprite->data[2]) + sprite->data[2]--; + else if ((sprite->pos1.x += sprite->data[0]) == sprite->data[1]) + sprite->callback = SpriteCallbackDummy; +} + +void sub_809A61C(struct Sprite *sprite) +{ + if (sprite->data[1]) + sprite->data[1]--; + else + { + sprite->pos1.x += sprite->data[0]; + sprite->data[2] = sprite->pos1.x + sprite->pos2.x; + if (sprite->data[2] < 0x40 || sprite->data[2] > 0x100) + DestroySprite(sprite); + } +} + +void sub_809A654(void) +{ + u8 boxId = get_preferred_box(); + u8 wallpaperId = gPokemonStorage.wallpaper[boxId]; + if (gPokemonStorageSystemPtr->unk_0cca == 0) + CpuCopy16(gUnknown_083BB0A8[wallpaperId], gPlttBufferUnfaded + gPokemonStorageSystemPtr->unk_0cec, 4); + else + CpuCopy16(gUnknown_083BB0A8[wallpaperId], gPlttBufferUnfaded + gPokemonStorageSystemPtr->unk_0cee, 4); +} + +s16 sub_809A6D0(u8 width) +{ + return 0xb0 - width / 2; +} -- cgit v1.2.3 From 5fcd1184d8a189887e44559edb12417717afca5b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 14 Jan 2018 19:10:31 -0500 Subject: through sub_809A860 --- asm/pokemon_storage_system.s | 259 ---------------------- data/pokemon_storage_system.s | 25 --- include/pokemon_storage_system.h | 4 +- src/pokemon/pokemon_storage_system_2.c | 8 +- src/pokemon/pokemon_storage_system_4.c | 384 +++++++++++++++++++++------------ 5 files changed, 255 insertions(+), 425 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index dafd8ce71..136d528f8 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,265 +5,6 @@ .text - thumb_func_start sub_809A6DC -sub_809A6DC: @ 809A6DC - push {r4,r5,lr} - ldr r0, _0809A760 @ =gUnknown_083BB288 - bl LoadSpriteSheet - ldr r0, _0809A764 @ =gUnknown_083BB290 - bl LoadSpritePalette - movs r5, 0 -_0809A6EC: - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 19 - movs r0, 0xB8 - lsls r0, 15 - adds r1, r0 - asrs r1, 16 - ldr r0, _0809A768 @ =gSpriteTemplate_83BB2F0 - movs r2, 0x1C - movs r3, 0x15 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0809A73E - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0809A76C @ =gSprites - adds r4, r0, r1 - lsls r1, r5, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - movs r0, 0x1 - cmp r5, 0 - bne _0809A72C - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 -_0809A72C: - strh r0, [r4, 0x34] - ldr r0, _0809A770 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - lsls r1, r5, 2 - movs r2, 0xD0 - lsls r2, 4 - adds r0, r2 - adds r0, r1 - str r4, [r0] -_0809A73E: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x1 - bls _0809A6EC - bl sub_809BF2C - lsls r0, 24 - cmp r0, 0 - beq _0809A758 - movs r0, 0x1 - bl sub_809A860 -_0809A758: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809A760: .4byte gUnknown_083BB288 -_0809A764: .4byte gUnknown_083BB290 -_0809A768: .4byte gSpriteTemplate_83BB2F0 -_0809A76C: .4byte gSprites -_0809A770: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809A6DC - - thumb_func_start sub_809A774 -sub_809A774: @ 809A774 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r2, 0 - ldr r7, _0809A7C4 @ =gPokemonStorageSystemPtr - ldr r0, [r7] - movs r1, 0xD0 - lsls r1, 4 - adds r3, r0, r1 - movs r5, 0 - movs r4, 0x2 -_0809A78A: - lsls r1, r2, 2 - adds r1, r3, r1 - ldr r0, [r1] - strh r5, [r0, 0x24] - ldr r0, [r1] - strh r4, [r0, 0x2E] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _0809A78A - lsls r0, r6, 24 - cmp r0, 0 - bge _0809A7CC - ldr r1, [r7] - movs r2, 0xD0 - lsls r2, 4 - adds r3, r1, r2 - ldr r2, [r3] - movs r0, 0x1D - strh r0, [r2, 0x30] - ldr r0, _0809A7C8 @ =0x00000d04 - adds r1, r0 - ldr r2, [r1] - movs r0, 0x5 - strh r0, [r2, 0x30] - ldr r0, [r3] - movs r2, 0x48 - b _0809A7E8 - .align 2, 0 -_0809A7C4: .4byte gPokemonStorageSystemPtr -_0809A7C8: .4byte 0x00000d04 -_0809A7CC: - ldr r1, [r7] - movs r2, 0xD0 - lsls r2, 4 - adds r3, r1, r2 - ldr r2, [r3] - movs r0, 0x5 - strh r0, [r2, 0x30] - ldr r0, _0809A80C @ =0x00000d04 - adds r1, r0 - ldr r2, [r1] - movs r0, 0x1D - strh r0, [r2, 0x30] - ldr r0, [r3] - movs r2, 0xF8 -_0809A7E8: - strh r2, [r0, 0x32] - ldr r0, [r1] - strh r2, [r0, 0x32] - ldr r1, [r7] - movs r2, 0xD0 - lsls r2, 4 - adds r0, r1, r2 - ldr r2, [r0] - movs r0, 0 - strh r0, [r2, 0x3C] - ldr r0, _0809A80C @ =0x00000d04 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x1 - strh r0, [r1, 0x3C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809A80C: .4byte 0x00000d04 - thumb_func_end sub_809A774 - - thumb_func_start sub_809A810 -sub_809A810: @ 809A810 - push {r4-r6,lr} - movs r3, 0 - ldr r0, _0809A85C @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0xD0 - lsls r1, 4 - adds r4, r0, r1 - movs r5, 0 - movs r6, 0x5 - negs r6, r6 -_0809A824: - lsls r1, r3, 2 - adds r1, r4, r1 - ldr r2, [r1] - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 3 - adds r0, 0x5C - strh r0, [r2, 0x20] - ldr r0, [r1] - strh r5, [r0, 0x24] - ldr r1, [r1] - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x1 - bls _0809A824 - movs r0, 0x1 - bl sub_809A860 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809A85C: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809A810 - - thumb_func_start sub_809A860 -sub_809A860: @ 809A860 - push {r4,r5,lr} - lsls r0, 24 - cmp r0, 0 - beq _0809A89C - movs r2, 0 - ldr r0, _0809A898 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0xD0 - lsls r1, 4 - adds r4, r0, r1 - movs r3, 0 - movs r5, 0x1 -_0809A878: - lsls r1, r2, 2 - adds r1, r4, r1 - ldr r0, [r1] - strh r5, [r0, 0x2E] - ldr r0, [r1] - strh r3, [r0, 0x30] - ldr r0, [r1] - strh r3, [r0, 0x32] - ldr r0, [r1] - strh r3, [r0, 0x36] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _0809A878 - b _0809A8BC - .align 2, 0 -_0809A898: .4byte gPokemonStorageSystemPtr -_0809A89C: - movs r2, 0 - ldr r0, _0809A8C4 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r3, 0xD0 - lsls r3, 4 - adds r1, r0, r3 - movs r3, 0 -_0809A8AA: - lsls r0, r2, 2 - adds r0, r1, r0 - ldr r0, [r0] - strh r3, [r0, 0x2E] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x1 - bls _0809A8AA -_0809A8BC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809A8C4: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809A860 - thumb_func_start sub_809A8C8 sub_809A8C8: @ 809A8C8 push {lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index aa9767dfa..2af123090 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,31 +3,6 @@ .section .rodata - .align 2 -gOamData_83BB2D0:: @ 83BB2D0 - .2byte 0x8000 - .2byte 0x0000 - .2byte 0x0800 - - .align 2 -gSpriteAnim_83BB2D8:: @ 83BB2D8 - obj_image_anim_frame 0, 5 - obj_image_anim_end - - .align 2 -gSpriteAnim_83BB2E0:: @ 83BB2E0 - obj_image_anim_frame 2, 5 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_83BB2E8:: @ 83BB2E8 - .4byte gSpriteAnim_83BB2D8 - .4byte gSpriteAnim_83BB2E0 - - .align 2 -gSpriteTemplate_83BB2F0:: @ 83BB2F0 - spr_template 6, 56015, gOamData_83BB2D0, gSpriteAnimTable_83BB2E8, NULL, gDummySpriteAffineAnimTable, sub_809A8C8 - .align 2 HandCursorPalette: @ 83BB308 .incbin "graphics/pokemon_storage/hand_cursor_pal.bin" diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 85ffeaefe..0131ce18b 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -117,7 +117,7 @@ struct PokemonStorageSystemData { u16 unk_0cee; struct Sprite *unk_0cf0[2]; struct Sprite *unk_0cf8[2]; - u8 filler_0cd0[8]; + struct Sprite *unk_0d00[2]; u32 unk_0d08; u8 filler_0d0c[0x50]; u16 unk_0d5c; @@ -215,7 +215,7 @@ void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); void sub_8099DCC(u8 a0); bool8 sub_8099E08(void); -void sub_809A860(u8 a0); +void sub_809A860(bool8 a0); void sub_809AA24(void); void sub_809AA98(void); bool8 sub_809AC00(void); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 290fa120a..4657ed158 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -1096,7 +1096,7 @@ void sub_809789C(void) { case -1: case 0: - sub_809A860(1); + sub_809A860(TRUE); sub_8098A5C(); SetPSSCallback(sub_8096C84); break; @@ -1133,7 +1133,7 @@ void sub_8097974(void) switch (gPokemonStorageSystemPtr->unk_0d5e) { case -1: - sub_809A860(1); + sub_809A860(TRUE); sub_8098A5C(); SetPSSCallback(sub_8096C84); break; @@ -1168,7 +1168,7 @@ void sub_8097974(void) case 3: if (!sub_8099E08()) { - sub_809A860(1); + sub_809A860(TRUE); SetPSSCallback(sub_8096C84); } break; @@ -1197,7 +1197,7 @@ void sub_8097A64(void) sub_8096310(); if (gPokemonStorageSystemPtr->unk_08b2 == 201 || gPokemonStorageSystemPtr->unk_08b2 == gPokemonStorage.currentBox) { - sub_809A860(1); + sub_809A860(TRUE); SetPSSCallback(sub_8096C84); } else diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index b48b20d5c..b40cc916c 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -44,107 +44,10 @@ void sub_809A6DC(void); void sub_809A774(s8 a0); void sub_809A810(void); void sub_809A8C8(struct Sprite *sprite); +bool8 sub_809BF2C(void); // .rodata -// .text - -void sub_8099BF8(u8 boxId) -{ - gPokemonStorageSystemPtr->unk_08ba = FALSE; - gPokemonStorageSystemPtr->unk_08b4 = 0; - DmaFill32(3, 0, BG_SCREEN_ADDR(26), 0x1000); - sub_8099EB0(boxId, 0); - sub_809A23C(boxId); - sub_809A6DC(); - SpawnBoxIconSprites(boxId); - REG_BG2CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_TXT512x256; -} - -void sub_8099C70(u8 whichBox) -{ - s8 r4 = sub_8099D90(whichBox); - sub_8099EB0(whichBox, r4); - gPokemonStorageSystemPtr->unk_08b6 = r4 * 6; - gPokemonStorageSystemPtr->unk_08b8 = 0x20; - gPokemonStorageSystemPtr->unk_08bb = whichBox; - gPokemonStorageSystemPtr->unk_08bc = r4 > 0 ? 0 : 5; - gPokemonStorageSystemPtr->unk_08be = r4; - gPokemonStorageSystemPtr->unk_08c0 = r4 > 0 ? 0x108 : 0x38; - gPokemonStorageSystemPtr->unk_08c2 = r4 > 0 ? 0 : 5; - gPokemonStorageSystemPtr->unk_08c4 = r4; - gPokemonStorageSystemPtr->unk_08c6 = 0; - gPokemonStorageSystemPtr->unk_08c8 = 2; - sub_809900C(whichBox, r4); - sub_809A3D0(whichBox, r4); - sub_809A774(r4); -} - -bool8 sub_8099D34(void) -{ - bool8 retVal = sub_80990AC(); - if (gPokemonStorageSystemPtr->unk_08b8 != 0) - { - gPokemonStorageSystemPtr->unk_08b4 += gPokemonStorageSystemPtr->unk_08b6; - gPokemonStorageSystemPtr->unk_08b4 &= 0x1ff; - if (--gPokemonStorageSystemPtr->unk_08b8 == 0) - { - sub_809A598(); - sub_809A810(); - } - return TRUE; - } - return retVal; -} - -s8 sub_8099D90(u8 boxId) -{ - u8 curBox = get_preferred_box(); - u8 i; - - for (i = 0; curBox != boxId; i++) - { - if (++curBox >= 14) - curBox = 0; - } - return i <= 6 ? 1 : -1; -} - -void sub_8099DCC(u8 wallpaperId) -{ - u8 curBox = get_preferred_box(); - gPokemonStorage.wallpaper[curBox] = wallpaperId; - gPokemonStorageSystemPtr->unk_1032 = 0; -} - -bool8 sub_8099E08(void) -{ - switch (gPokemonStorageSystemPtr->unk_1032) - { - case 0: - BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0, 0x10, 0xffff); - gPokemonStorageSystemPtr->unk_1032++; - break; - case 1: - if (!UpdatePaletteFade()) - { - u8 curBox = get_preferred_box(); - sub_8099EB0(curBox, 0); - sub_809A654(); - BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0x10, 0, 0xffff); - gPokemonStorageSystemPtr->unk_1032++; - } - break; - case 2: - if (!UpdatePaletteFade()) - gPokemonStorageSystemPtr->unk_1032++; - break; - case 3: - return FALSE; - } - return TRUE; -} - const u16 gWallpaperPalettes_Forest[] = INCBIN_U16("graphics/pokemon_storage/box_bg1.gbapal"); const u16 gWallpaperPalettes_Forest_2[] = INCBIN_U16("graphics/pokemon_storage/forest_frame.gbapal"); const u16 gWallpaperPalettes_Forest_2_3[] = INCBIN_U16("graphics/pokemon_storage/forest_bg.gbapal"); @@ -314,6 +217,171 @@ const struct WallpaperTable gWallpaperTable[] = { {gWallpaperTiles_Plain, 0xFC, gWallpaperTilemap_Plain, gWallpaperPalettes_Plain} // Plain }; +const u16 PCPal_Arrow[] = INCBIN_U16("graphics/pokemon_storage/arrow.gbapal"); +const u8 PCGfx_Arrow[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); + +const struct SpriteSheet gUnknown_083BB288 = {PCGfx_Arrow, 0x80, 6}; +const struct SpritePalette gUnknown_083BB290 = {PCPal_Arrow, 0xdacf}; + +const struct OamData gOamData_83BB298 = { + .shape = ST_OAM_H_RECTANGLE, + .size = 2, + .priority = 2 +}; + +const union AnimCmd gSpriteAnim_83BB2A0[] = { + ANIMCMD_FRAME(0, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83BB2A8[] = { + ANIMCMD_FRAME(8, 5), + ANIMCMD_END +}; + +const union AnimCmd *const gSpriteAnimTable_83BB2B0[] = { + gSpriteAnim_83BB2A0, + gSpriteAnim_83BB2A8 +}; + +const struct SpriteTemplate gSpriteTemplate_83BB2B8 = { + 3, + 0xdac8, + &gOamData_83BB298, + gSpriteAnimTable_83BB2B0, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +const struct OamData gOamData_83BB2D0 = { + .shape = ST_OAM_V_RECTANGLE, + .priority = 2 +}; + +const union AnimCmd gSpriteAnim_83BB2D8[] = { + ANIMCMD_FRAME(0, 5), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83BB2E0[] = { + ANIMCMD_FRAME(2, 5), + ANIMCMD_END +}; + +const union AnimCmd *const gSpriteAnimTable_83BB2E8[] = { + gSpriteAnim_83BB2D8, + gSpriteAnim_83BB2E0 +}; + +const struct SpriteTemplate gSpriteTemplate_83BB2F0 = { + 6, + 0xdacf, + &gOamData_83BB2D0, + gSpriteAnimTable_83BB2E8, + NULL, + gDummySpriteAffineAnimTable, + sub_809A8C8 +}; + +// .text + +void sub_8099BF8(u8 boxId) +{ + gPokemonStorageSystemPtr->unk_08ba = FALSE; + gPokemonStorageSystemPtr->unk_08b4 = 0; + DmaFill32(3, 0, BG_SCREEN_ADDR(26), 0x1000); + sub_8099EB0(boxId, 0); + sub_809A23C(boxId); + sub_809A6DC(); + SpawnBoxIconSprites(boxId); + REG_BG2CNT = BGCNT_PRIORITY(2) | BGCNT_CHARBASE(2) | BGCNT_SCREENBASE(26) | BGCNT_TXT512x256; +} + +void sub_8099C70(u8 whichBox) +{ + s8 r4 = sub_8099D90(whichBox); + sub_8099EB0(whichBox, r4); + gPokemonStorageSystemPtr->unk_08b6 = r4 * 6; + gPokemonStorageSystemPtr->unk_08b8 = 0x20; + gPokemonStorageSystemPtr->unk_08bb = whichBox; + gPokemonStorageSystemPtr->unk_08bc = r4 > 0 ? 0 : 5; + gPokemonStorageSystemPtr->unk_08be = r4; + gPokemonStorageSystemPtr->unk_08c0 = r4 > 0 ? 0x108 : 0x38; + gPokemonStorageSystemPtr->unk_08c2 = r4 > 0 ? 0 : 5; + gPokemonStorageSystemPtr->unk_08c4 = r4; + gPokemonStorageSystemPtr->unk_08c6 = 0; + gPokemonStorageSystemPtr->unk_08c8 = 2; + sub_809900C(whichBox, r4); + sub_809A3D0(whichBox, r4); + sub_809A774(r4); +} + +bool8 sub_8099D34(void) +{ + bool8 retVal = sub_80990AC(); + if (gPokemonStorageSystemPtr->unk_08b8 != 0) + { + gPokemonStorageSystemPtr->unk_08b4 += gPokemonStorageSystemPtr->unk_08b6; + gPokemonStorageSystemPtr->unk_08b4 &= 0x1ff; + if (--gPokemonStorageSystemPtr->unk_08b8 == 0) + { + sub_809A598(); + sub_809A810(); + } + return TRUE; + } + return retVal; +} + +s8 sub_8099D90(u8 boxId) +{ + u8 curBox = get_preferred_box(); + u8 i; + + for (i = 0; curBox != boxId; i++) + { + if (++curBox >= 14) + curBox = 0; + } + return i <= 6 ? 1 : -1; +} + +void sub_8099DCC(u8 wallpaperId) +{ + u8 curBox = get_preferred_box(); + gPokemonStorage.wallpaper[curBox] = wallpaperId; + gPokemonStorageSystemPtr->unk_1032 = 0; +} + +bool8 sub_8099E08(void) +{ + switch (gPokemonStorageSystemPtr->unk_1032) + { + case 0: + BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0, 0x10, 0xffff); + gPokemonStorageSystemPtr->unk_1032++; + break; + case 1: + if (!UpdatePaletteFade()) + { + u8 curBox = get_preferred_box(); + sub_8099EB0(curBox, 0); + sub_809A654(); + BeginNormalPaletteFade(gPokemonStorageSystemPtr->unk_0d08, 1, 0x10, 0, 0xffff); + gPokemonStorageSystemPtr->unk_1032++; + } + break; + case 2: + if (!UpdatePaletteFade()) + gPokemonStorageSystemPtr->unk_1032++; + break; + case 3: + return FALSE; + } + return TRUE; +} + void sub_8099EB0(u8 boxId, s8 a1) { const struct WallpaperTable *wallpaperTable; @@ -855,43 +923,6 @@ void sub_809A3D0(u8 boxId, s8 a1) } } -const u16 PCPal_Arrow[] = INCBIN_U16("graphics/pokemon_storage/arrow.gbapal"); -const u8 PCGfx_Arrow[] = INCBIN_U8("graphics/pokemon_storage/arrow.4bpp"); - -const struct SpriteSheet gUnknown_083BB288 = {PCGfx_Arrow, 0x80, 6}; -const struct SpritePalette gUnknown_083BB290 = {PCPal_Arrow, 0xdacf}; - -const struct OamData gOamData_83BB298 = { - .shape = ST_OAM_H_RECTANGLE, - .size = 2, - .priority = 2 -}; - -const union AnimCmd gSpriteAnim_83BB2A0[] = { - ANIMCMD_FRAME(0, 5), - ANIMCMD_END -}; - -const union AnimCmd gSpriteAnim_83BB2A8[] = { - ANIMCMD_FRAME(8, 5), - ANIMCMD_END -}; - -const union AnimCmd *const gSpriteAnimTable_83BB2B0[] = { - gSpriteAnim_83BB2A0, - gSpriteAnim_83BB2A8 -}; - -const struct SpriteTemplate gSpriteTemplate_83BB2B8 = { - 3, - 0xdac8, - &gOamData_83BB298, - gSpriteAnimTable_83BB2B0, - NULL, - gDummySpriteAffineAnimTable, - SpriteCallbackDummy -}; - void sub_809A598(void) { if (gPokemonStorageSystemPtr->unk_0cca == 0) @@ -937,3 +968,86 @@ s16 sub_809A6D0(u8 width) { return 0xb0 - width / 2; } + +void sub_809A6DC(void) +{ + u16 i; + + LoadSpriteSheet(&gUnknown_083BB288); + LoadSpritePalette(&gUnknown_083BB290); + for (i = 0; i < 2; i++) + { + u8 spriteId = CreateSprite(&gSpriteTemplate_83BB2F0, 0x5c + i * 0x88, 0x1c, 21); + if (spriteId != MAX_SPRITES) + { + struct Sprite *sprite = gSprites + spriteId; + StartSpriteAnim(sprite, i); + sprite->data[3] = (i == 0) ? -1 : 1; + gPokemonStorageSystemPtr->unk_0d00[i] = sprite; + } + } + if (sub_809BF2C()) + sub_809A860(TRUE); +} + +void sub_809A774(s8 a0) +{ + u16 i; + + for (i = 0; i < 2; i++) + { + gPokemonStorageSystemPtr->unk_0d00[i]->pos2.x = 0; + gPokemonStorageSystemPtr->unk_0d00[i]->data[0] = 2; + } + if (a0 < 0) + { + gPokemonStorageSystemPtr->unk_0d00[0]->data[1] = 29; + gPokemonStorageSystemPtr->unk_0d00[1]->data[1] = 5; + gPokemonStorageSystemPtr->unk_0d00[0]->data[2] = 0x48; + gPokemonStorageSystemPtr->unk_0d00[1]->data[2] = 0x48; + } + else + { + gPokemonStorageSystemPtr->unk_0d00[0]->data[1] = 5; + gPokemonStorageSystemPtr->unk_0d00[1]->data[1] = 29; + gPokemonStorageSystemPtr->unk_0d00[0]->data[2] = 0xF8; + gPokemonStorageSystemPtr->unk_0d00[1]->data[2] = 0xF8; + } + gPokemonStorageSystemPtr->unk_0d00[0]->data[7] = 0; + gPokemonStorageSystemPtr->unk_0d00[1]->data[7] = 1; +} + +void sub_809A810(void) +{ + u16 i; + + for (i = 0; i < 2; i++) + { + gPokemonStorageSystemPtr->unk_0d00[i]->pos1.x = 0x88 * i + 0x5c; + gPokemonStorageSystemPtr->unk_0d00[i]->pos2.x = 0; + gPokemonStorageSystemPtr->unk_0d00[i]->invisible = FALSE; + } + sub_809A860(TRUE); +} + +void sub_809A860(bool8 a0) +{ + u16 i; + if (a0) + { + for (i = 0; i < 2; i++) + { + gPokemonStorageSystemPtr->unk_0d00[i]->data[0] = 1; + gPokemonStorageSystemPtr->unk_0d00[i]->data[1] = 0; + gPokemonStorageSystemPtr->unk_0d00[i]->data[2] = 0; + gPokemonStorageSystemPtr->unk_0d00[i]->data[4] = 0; + } + } + else + { + for (i = 0; i < 2; i++) + { + gPokemonStorageSystemPtr->unk_0d00[i]->data[0] = 0; + } + } +} -- cgit v1.2.3 From d8091a8fadb1089cbc090772bbb2fbcbab633357 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 14 Jan 2018 21:01:43 -0500 Subject: through sub_809AA98 --- asm/pokemon_storage_system.s | 257 --------------------------------- include/pokemon_storage_system.h | 7 +- src/pokemon/pokemon_storage_system_4.c | 94 +++++++++++- 3 files changed, 92 insertions(+), 266 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 136d528f8..220266cd8 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,263 +5,6 @@ .text - thumb_func_start sub_809A8C8 -sub_809A8C8: @ 809A8C8 - push {lr} - adds r2, r0, 0 - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0x4 - bhi _0809A994 - lsls r0, 2 - ldr r1, _0809A8E0 @ =_0809A8E4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809A8E0: .4byte _0809A8E4 - .align 2, 0 -_0809A8E4: - .4byte _0809A8F8 - .4byte _0809A8FE - .4byte _0809A92C - .4byte _0809A932 - .4byte _0809A984 -_0809A8F8: - movs r0, 0 - strh r0, [r2, 0x24] - b _0809A994 -_0809A8FE: - ldrh r0, [r2, 0x30] - adds r0, 0x1 - movs r1, 0 - strh r0, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - ble _0809A994 - strh r1, [r2, 0x30] - ldrh r0, [r2, 0x34] - ldrh r3, [r2, 0x24] - adds r0, r3 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x32] - adds r0, 0x1 - strh r0, [r2, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _0809A994 - strh r1, [r2, 0x32] - strh r1, [r2, 0x24] - b _0809A994 -_0809A92C: - movs r0, 0x3 - strh r0, [r2, 0x2E] - b _0809A994 -_0809A932: - ldr r0, _0809A97C @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r0, _0809A980 @ =0x000008b6 - adds r1, r0 - ldrh r0, [r2, 0x20] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r2, 0x20] - subs r0, 0x49 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAE - bls _0809A958 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3] -_0809A958: - ldrh r0, [r2, 0x30] - subs r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - cmp r0, 0 - bne _0809A994 - ldrh r0, [r2, 0x32] - strh r0, [r2, 0x20] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - movs r0, 0x4 - strh r0, [r2, 0x2E] - b _0809A994 - .align 2, 0 -_0809A97C: .4byte gPokemonStorageSystemPtr -_0809A980: .4byte 0x000008b6 -_0809A984: - ldr r0, _0809A998 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809A99C @ =0x000008b6 - adds r0, r1 - ldrh r1, [r2, 0x20] - ldrh r0, [r0] - subs r1, r0 - strh r1, [r2, 0x20] -_0809A994: - pop {r0} - bx r0 - .align 2, 0 -_0809A998: .4byte gPokemonStorageSystemPtr -_0809A99C: .4byte 0x000008b6 - thumb_func_end sub_809A8C8 - - thumb_func_start sub_809A9A0 -sub_809A9A0: @ 809A9A0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - adds r6, r1, 0 - ldr r4, [sp, 0x18] - lsls r2, 24 - lsrs r7, r2, 24 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0809AA0C @ =gSpriteTemplate_83BB2F0 - lsls r5, 16 - asrs r5, 16 - lsls r6, 16 - asrs r6, 16 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r4, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _0809AA18 - movs r1, 0x1 - ands r1, r7 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r5, _0809AA10 @ =gSprites - adds r6, r4, r5 - adds r0, r6, 0 - bl StartSpriteAnim - movs r0, 0x3 - mov r1, r8 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r6, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r6, 0x5] - adds r5, 0x1C - adds r4, r5 - ldr r0, _0809AA14 @ =SpriteCallbackDummy - str r0, [r4] - adds r0, r6, 0 - b _0809AA1A - .align 2, 0 -_0809AA0C: .4byte gSpriteTemplate_83BB2F0 -_0809AA10: .4byte gSprites -_0809AA14: .4byte SpriteCallbackDummy -_0809AA18: - movs r0, 0 -_0809AA1A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809A9A0 - - thumb_func_start sub_809AA24 -sub_809AA24: @ 809AA24 - push {lr} - ldr r0, _0809AA38 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - cmp r1, 0x1 - beq _0809AA40 - ldr r1, _0809AA3C @ =gUnknown_020384E4 - movs r0, 0 - strb r0, [r1] - b _0809AA44 - .align 2, 0 -_0809AA38: .4byte gPokemonStorageSystemPtr -_0809AA3C: .4byte gUnknown_020384E4 -_0809AA40: - ldr r0, _0809AA78 @ =gUnknown_020384E4 - strb r1, [r0] -_0809AA44: - ldr r0, _0809AA7C @ =gUnknown_020384E5 - movs r1, 0 - strb r1, [r0] - ldr r0, _0809AA80 @ =gUnknown_020384E6 - strb r1, [r0] - ldr r0, _0809AA84 @ =gUnknown_020384E7 - strb r1, [r0] - ldr r0, _0809AA88 @ =gUnknown_020384E8 - strb r1, [r0] - ldr r0, _0809AA8C @ =gUnknown_020384E9 - strb r1, [r0] - bl sub_809B0D4 - bl sub_809CC04 - ldr r0, _0809AA90 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809AA94 @ =0x000011e2 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - bl sub_809BF74 - pop {r0} - bx r0 - .align 2, 0 -_0809AA78: .4byte gUnknown_020384E4 -_0809AA7C: .4byte gUnknown_020384E5 -_0809AA80: .4byte gUnknown_020384E6 -_0809AA84: .4byte gUnknown_020384E7 -_0809AA88: .4byte gUnknown_020384E8 -_0809AA8C: .4byte gUnknown_020384E9 -_0809AA90: .4byte gPokemonStorageSystemPtr -_0809AA94: .4byte 0x000011e2 - thumb_func_end sub_809AA24 - - thumb_func_start sub_809AA98 -sub_809AA98: @ 809AA98 - push {lr} - bl sub_809CC04 - bl sub_809C028 - ldr r0, _0809AAC0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809AAC4 @ =0x000011e2 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, _0809AAC8 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809AABA - bl sub_8098BF0 -_0809AABA: - pop {r0} - bx r0 - .align 2, 0 -_0809AAC0: .4byte gPokemonStorageSystemPtr -_0809AAC4: .4byte 0x000011e2 -_0809AAC8: .4byte gUnknown_020384E6 - thumb_func_end sub_809AA98 - thumb_func_start sub_809AACC sub_809AACC: @ 809AACC push {r4-r6,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 0131ce18b..1afed5d1b 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -144,7 +144,9 @@ struct PokemonStorageSystemData { u8 unk_117d; u8 filler_117e[0x42]; struct Sprite *unk_11c0; - u8 filler_11c4[0x24]; + u8 filler_11c4[0x1e]; + u8 unk_11e2; + u8 filler_11e3[5]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; @@ -200,6 +202,7 @@ void ResetPokemonStorageSystem(void); void ResetPSSMonIconSprites(void); void SpawnBoxIconSprites(u8 boxId); u8 get_preferred_box(void); +void sub_8098BF0(void); bool8 sub_80990AC(void); void sub_8099200(bool8 a0); void sub_8099310(void); @@ -208,7 +211,7 @@ void sub_80994A8(s16 a0); void sub_809954C(void); void sub_8099958(void); bool8 sub_8099990(void); -struct Sprite *sub_809A9A0(u16 a0, u16 a1, u8 a2, u8 a3, u8 a4); +struct Sprite *sub_809A9A0(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority); void sub_809BB90(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index b40cc916c..63d94b5a1 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -8,6 +8,13 @@ // Static type declarations +struct WallpaperTable { + const u8 *tiles; + u32 size; + const u8 *tileMap; + const u16 *palettes; +}; + // Static RAM declarations EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; @@ -19,13 +26,6 @@ EWRAM_DATA u8 gUnknown_020384E8 = 0; EWRAM_DATA u8 gUnknown_020384E9 = 0; EWRAM_DATA u16 gUnknown_020384EA = 0; -struct WallpaperTable { - const u8 *tiles; - u32 size; - const u8 *tileMap; - const u16 *palettes; -}; - // Static ROM declarations void sub_809900C(u8 boxId, s8 a1); @@ -45,6 +45,9 @@ void sub_809A774(s8 a0); void sub_809A810(void); void sub_809A8C8(struct Sprite *sprite); bool8 sub_809BF2C(void); +void sub_809BF74(void); +void sub_809C028(void); +void sub_809CC04(void); // .rodata @@ -1051,3 +1054,80 @@ void sub_809A860(bool8 a0) } } } + +void sub_809A8C8(struct Sprite *sprite) +{ + switch (sprite->data[0]) + { + case 0: + sprite->pos2.x = 0; + break; + case 1: + if (++sprite->data[1] > 3) + { + sprite->data[1] = 0; + sprite->pos2.x += sprite->data[3]; + if (++sprite->data[2] > 5) + { + sprite->data[2] = 0; + sprite->pos2.x = 0; + } + } + break; + case 2: + sprite->data[0] = 3; + break; + case 3: + sprite->pos1.x -= gPokemonStorageSystemPtr->unk_08b6; + if (sprite->pos1.x < 0x49 || sprite->pos1.x > 0xf7) + sprite->invisible = TRUE; + if (--sprite->data[1] == 0) + { + sprite->pos1.x = sprite->data[2]; + sprite->invisible = FALSE; + sprite->data[0] = 4; + } + break; + case 4: + sprite->pos1.x -= gPokemonStorageSystemPtr->unk_08b6; + break; + } +} + +struct Sprite *sub_809A9A0(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority) +{ + u8 spriteId = CreateSprite(&gSpriteTemplate_83BB2F0, x, y, subpriority); + if (spriteId == MAX_SPRITES) + return NULL; + animId %= 2; + StartSpriteAnim(gSprites + spriteId, animId); + gSprites[spriteId].oam.priority = priority; + gSprites[spriteId].callback = SpriteCallbackDummy; + return gSprites + spriteId; +} + +void sub_809AA24(void) +{ + if (gPokemonStorageSystemPtr->unk_0005 != 1) + gUnknown_020384E4 = 0; + else + gUnknown_020384E4 = 1; + gUnknown_020384E5 = 0; + gUnknown_020384E6 = 0; + gUnknown_020384E7 = 0; + gUnknown_020384E8 = 0; + gUnknown_020384E9 = 0; + sub_809B0D4(); + sub_809CC04(); + gPokemonStorageSystemPtr->unk_11e2 = 1; + sub_809BF74(); +} + +void sub_809AA98(void) +{ + sub_809CC04(); + sub_809C028(); + gPokemonStorageSystemPtr->unk_11e2 = 1; + if (gUnknown_020384E6) + sub_8098BF0(); +} -- cgit v1.2.3 From 1288b752480e5d301c9ea9cff6d1efc737d6c5cc Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 14 Jan 2018 21:25:25 -0500 Subject: through sub_809AB8C --- asm/pokemon_storage_system.s | 162 --------------------------------- src/pokemon/pokemon_storage_system_4.c | 58 +++++++++++- 2 files changed, 56 insertions(+), 164 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 220266cd8..b98fe24ec 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,168 +5,6 @@ .text - thumb_func_start sub_809AACC -sub_809AACC: @ 809AACC - push {r4-r6,lr} - adds r4, r2, 0 - adds r6, r3, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r0, 0x4 - bhi _0809AB84 - lsls r0, 2 - ldr r1, _0809AAE8 @ =_0809AAEC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809AAE8: .4byte _0809AAEC - .align 2, 0 -_0809AAEC: - .4byte _0809AB00 - .4byte _0809AB2E - .4byte _0809AB56 - .4byte _0809AB5E - .4byte _0809AB7C -_0809AB00: - adds r0, r5, 0 - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x64 - strh r1, [r4] - adds r0, r5, 0 - movs r1, 0x6 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, 0x20 - strh r1, [r6] - b _0809AB84 -_0809AB2E: - cmp r5, 0 - bne _0809AB3A - movs r0, 0x68 - strh r0, [r4] - movs r0, 0x34 - b _0809AB82 -_0809AB3A: - cmp r5, 0x6 - bne _0809AB46 - movs r0, 0x98 - strh r0, [r4] - movs r0, 0x84 - b _0809AB82 -_0809AB46: - movs r0, 0x98 - strh r0, [r4] - subs r1, r5, 0x1 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, 0x4 - b _0809AB82 -_0809AB56: - movs r0, 0xA2 - strh r0, [r4] - movs r0, 0xC - b _0809AB82 -_0809AB5E: - ldr r0, _0809AB78 @ =gUnknown_020384E6 - ldrb r0, [r0] - movs r1, 0xE - cmp r0, 0 - beq _0809AB6A - movs r1, 0x8 -_0809AB6A: - strh r1, [r6] - movs r0, 0x58 - muls r0, r5 - adds r0, 0x78 - strh r0, [r4] - b _0809AB84 - .align 2, 0 -_0809AB78: .4byte gUnknown_020384E6 -_0809AB7C: - movs r0, 0xA0 - strh r0, [r4] - movs r0, 0x60 -_0809AB82: - strh r0, [r6] -_0809AB84: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_809AACC - - thumb_func_start sub_809AB8C -sub_809AB8C: @ 809AB8C - push {lr} - ldr r0, _0809ABB4 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0809ABC0 - cmp r0, 0x1 - bne _0809ABF8 - ldr r0, _0809ABB8 @ =gUnknown_020384E5 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0809ABBC @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - b _0809ABEA - .align 2, 0 -_0809ABB4: .4byte gUnknown_020384E4 -_0809ABB8: .4byte gUnknown_020384E5 -_0809ABBC: .4byte gPlayerParty -_0809ABC0: - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, _0809ABF0 @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - ldr r2, _0809ABF4 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - movs r1, 0xB - bl GetBoxMonData -_0809ABEA: - lsls r0, 16 - lsrs r0, 16 - b _0809ABFA - .align 2, 0 -_0809ABF0: .4byte gUnknown_020384E5 -_0809ABF4: .4byte gPokemonStorage + 0x4 -_0809ABF8: - movs r0, 0 -_0809ABFA: - pop {r1} - bx r1 - thumb_func_end sub_809AB8C - thumb_func_start sub_809AC00 sub_809AC00: @ 809AC00 push {r4-r6,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 63d94b5a1..6d44b8ae8 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -1,6 +1,7 @@ // Includes #include "global.h" +#include "constants/species.h" #include "palette.h" #include "text.h" #include "menu.h" @@ -18,8 +19,8 @@ struct WallpaperTable { // Static RAM declarations EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; -EWRAM_DATA u8 gUnknown_020384E4 = 0; -EWRAM_DATA u8 gUnknown_020384E5 = 0; +EWRAM_DATA s8 gUnknown_020384E4 = 0; +EWRAM_DATA s8 gUnknown_020384E5 = 0; EWRAM_DATA u8 gUnknown_020384E6 = 0; EWRAM_DATA u8 gUnknown_020384E7 = 0; EWRAM_DATA u8 gUnknown_020384E8 = 0; @@ -1131,3 +1132,56 @@ void sub_809AA98(void) if (gUnknown_020384E6) sub_8098BF0(); } + +void sub_809AACC(u8 a0, u8 a1, u16 *a2, u16 *a3) +{ + switch (a0) + { + case 0: + *a2 = (a1 % 6) * 24 + 100; + *a3 = (a1 / 6) * 24 + 32; + break; + case 1: + if (a1 == 0) + { + *a2 = 0x68; + *a3 = 0x34; + } + else if (a1 == 6) + { + *a2 = 0x98; + *a3 = 0x84; + } + else + { + *a2 = 0x98; + *a3 = (a1 - 1) * 24 + 4; + } + break; + case 2: + *a2 = 0xa2; + *a3 = 0x0c; + break; + case 3: + *a3 = gUnknown_020384E6 ? 8 : 14; + *a2 = a1 * 0x58 + 0x78; + break; + case 4: + *a2 = 0xa0; + *a3 = 0x60; + break; + } +} + +u16 sub_809AB8C(void) +{ + switch (gUnknown_020384E4) + { + case 1: + return GetMonData(gPlayerParty + gUnknown_020384E5, MON_DATA_SPECIES); + case 0: + return GetBoxMonData(gPokemonStorage.boxes[get_preferred_box()] + gUnknown_020384E5, MON_DATA_SPECIES); + default: + return SPECIES_NONE; + } +} -- cgit v1.2.3 From 68528382d5d8a17c5d6d65f1566a9ba7c807e14a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 15:10:56 -0500 Subject: through sub_809AF18 --- asm/pokemon_storage_system.s | 478 --------------------------------- include/pokemon_storage_system.h | 16 +- src/pokemon/pokemon_storage_system_4.c | 121 +++++++++ 3 files changed, 135 insertions(+), 480 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index b98fe24ec..835a87f5f 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,484 +5,6 @@ .text - thumb_func_start sub_809AC00 -sub_809AC00: @ 809AC00 - push {r4-r6,lr} - ldr r0, _0809AC14 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r0, _0809AC18 @ =0x000011dc - adds r1, r4, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _0809AC1C - movs r0, 0 - b _0809AD2C - .align 2, 0 -_0809AC14: .4byte gPokemonStorageSystemPtr -_0809AC18: .4byte 0x000011dc -_0809AC1C: - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - beq _0809AD0C - ldr r1, _0809ACF4 @ =0x000011c8 - adds r3, r4, r1 - ldr r2, _0809ACF8 @ =0x000011d0 - adds r1, r4, r2 - ldr r0, [r3] - ldr r1, [r1] - adds r0, r1 - str r0, [r3] - ldr r6, _0809ACFC @ =0x000011cc - adds r2, r4, r6 - ldr r0, _0809AD00 @ =0x000011d4 - adds r1, r4, r0 - ldr r0, [r2] - ldr r1, [r1] - adds r0, r1 - str r0, [r2] - movs r1, 0x8E - lsls r1, 5 - adds r5, r4, r1 - ldr r1, [r5] - ldr r0, [r3] - asrs r0, 8 - strh r0, [r1, 0x20] - ldr r1, [r5] - ldr r0, [r2] - asrs r0, 8 - strh r0, [r1, 0x22] - ldr r1, [r5] - ldrh r2, [r1, 0x20] - movs r3, 0x20 - ldrsh r0, [r1, r3] - movs r3, 0x80 - lsls r3, 1 - cmp r0, r3 - ble _0809AC78 - ldr r6, _0809AD04 @ =0xffffff00 - adds r0, r2, r6 - lsls r0, 16 - asrs r0, 16 - adds r0, 0x40 - strh r0, [r1, 0x20] -_0809AC78: - ldr r1, [r5] - ldrh r2, [r1, 0x20] - movs r6, 0x20 - ldrsh r0, [r1, r6] - cmp r0, 0x3F - bgt _0809AC90 - movs r0, 0x40 - subs r0, r2 - lsls r0, 16 - asrs r0, 16 - subs r0, r3, r0 - strh r0, [r1, 0x20] -_0809AC90: - ldr r1, [r5] - ldrh r2, [r1, 0x22] - movs r3, 0x22 - ldrsh r0, [r1, r3] - cmp r0, 0xB0 - ble _0809ACA8 - adds r0, r2, 0 - subs r0, 0xB0 - lsls r0, 16 - asrs r0, 16 - subs r0, 0x10 - strh r0, [r1, 0x22] -_0809ACA8: - ldr r2, [r5] - ldrh r3, [r2, 0x22] - movs r6, 0x22 - ldrsh r0, [r2, r6] - movs r1, 0x10 - negs r1, r1 - cmp r0, r1 - bge _0809ACC4 - subs r0, r1, r3 - movs r1, 0xB0 - lsls r0, 16 - asrs r0, 16 - subs r1, r0 - strh r1, [r2, 0x22] -_0809ACC4: - ldr r0, _0809AD08 @ =0x000011e3 - adds r1, r4, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0809AD2A - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - bne _0809AD2A - ldr r2, [r5] - adds r2, 0x3F - ldrb r3, [r2] - lsrs r1, r3, 1 - movs r0, 0x1 - eors r1, r0 - ands r1, r0 - lsls r1, 1 - movs r0, 0x3 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - b _0809AD2A - .align 2, 0 -_0809ACF4: .4byte 0x000011c8 -_0809ACF8: .4byte 0x000011d0 -_0809ACFC: .4byte 0x000011cc -_0809AD00: .4byte 0x000011d4 -_0809AD04: .4byte 0xffffff00 -_0809AD08: .4byte 0x000011e3 -_0809AD0C: - movs r1, 0x8E - lsls r1, 5 - adds r2, r4, r1 - ldr r1, [r2] - ldr r3, _0809AD34 @ =0x000011d8 - adds r0, r4, r3 - ldrh r0, [r0] - strh r0, [r1, 0x20] - ldr r1, [r2] - ldr r6, _0809AD38 @ =0x000011da - adds r0, r4, r6 - ldrh r0, [r0] - strh r0, [r1, 0x22] - bl sub_809AFB8 -_0809AD2A: - movs r0, 0x1 -_0809AD2C: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809AD34: .4byte 0x000011d8 -_0809AD38: .4byte 0x000011da - thumb_func_end sub_809AC00 - - thumb_func_start sub_809AD3C -sub_809AD3C: @ 809AD3C - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r6, sp - adds r6, 0x2 - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - adds r3, r6, 0 - bl sub_809AACC - ldr r0, _0809AD88 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - movs r2, 0x8F - lsls r2, 5 - adds r0, r1, r2 - strb r4, [r0] - ldr r3, _0809AD8C @ =0x000011e1 - adds r0, r1, r3 - strb r5, [r0] - mov r0, sp - ldrh r2, [r0] - subs r3, 0x9 - adds r0, r1, r3 - strh r2, [r0] - ldrh r0, [r6] - ldr r2, _0809AD90 @ =0x000011da - adds r1, r2 - strh r0, [r1] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809AD88: .4byte gPokemonStorageSystemPtr -_0809AD8C: .4byte 0x000011e1 -_0809AD90: .4byte 0x000011da - thumb_func_end sub_809AD3C - - thumb_func_start sub_809AD94 -sub_809AD94: @ 809AD94 - push {r4-r7,lr} - ldr r0, _0809ADB0 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r3, _0809ADB4 @ =0x000011de - adds r1, r2, r3 - ldrh r1, [r1] - adds r4, r0, 0 - cmp r1, 0 - beq _0809ADBC - ldr r0, _0809ADB8 @ =0x000011dc - adds r1, r2, r0 - movs r0, 0xC - b _0809ADC2 - .align 2, 0 -_0809ADB0: .4byte gPokemonStorageSystemPtr -_0809ADB4: .4byte 0x000011de -_0809ADB8: .4byte 0x000011dc -_0809ADBC: - ldr r3, _0809AE04 @ =0x000011dc - adds r1, r2, r3 - movs r0, 0x6 -_0809ADC2: - strh r0, [r1] - ldr r2, [r4] - ldr r0, _0809AE08 @ =0x000011e3 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0809ADDA - ldr r3, _0809AE04 @ =0x000011dc - adds r0, r2, r3 - ldrh r0, [r0] - lsrs r0, 1 - strb r0, [r1] -_0809ADDA: - ldr r1, _0809AE0C @ =0x000011de - adds r0, r2, r1 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809AE14 - cmp r1, 0x1 - beq _0809AE30 - ldr r3, _0809AE10 @ =0x000011da - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x22 - ldrsh r0, [r0, r2] - b _0809AE46 - .align 2, 0 -_0809AE04: .4byte 0x000011dc -_0809AE08: .4byte 0x000011e3 -_0809AE0C: .4byte 0x000011de -_0809AE10: .4byte 0x000011da -_0809AE14: - ldr r3, _0809AE2C @ =0x000011da - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x22 - ldrsh r0, [r0, r2] - adds r0, 0xC0 - b _0809AE46 - .align 2, 0 -_0809AE2C: .4byte 0x000011da -_0809AE30: - ldr r3, _0809AE74 @ =0x000011da - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x22 - ldrsh r0, [r0, r2] - subs r0, 0xC0 -_0809AE46: - subs r7, r1, r0 - ldr r2, [r4] - ldr r3, _0809AE78 @ =0x000011df - adds r0, r2, r3 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0809AE80 - cmp r1, 0x1 - beq _0809AE9C - ldr r1, _0809AE7C @ =0x000011d8 - adds r0, r2, r1 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x20 - ldrsh r0, [r0, r2] - b _0809AEB2 - .align 2, 0 -_0809AE74: .4byte 0x000011da -_0809AE78: .4byte 0x000011df -_0809AE7C: .4byte 0x000011d8 -_0809AE80: - ldr r3, _0809AE98 @ =0x000011d8 - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x20 - ldrsh r0, [r0, r2] - adds r0, 0xC0 - b _0809AEB2 - .align 2, 0 -_0809AE98: .4byte 0x000011d8 -_0809AE9C: - ldr r3, _0809AF00 @ =0x000011d8 - adds r0, r2, r3 - movs r3, 0 - ldrsh r1, [r0, r3] - movs r3, 0x8E - lsls r3, 5 - adds r0, r2, r3 - ldr r0, [r0] - movs r2, 0x20 - ldrsh r0, [r0, r2] - subs r0, 0xC0 -_0809AEB2: - subs r0, r1, r0 - lsls r7, 8 - lsls r0, 8 - ldr r4, [r4] - ldr r3, _0809AF04 @ =0x000011d0 - adds r6, r4, r3 - ldr r1, _0809AF08 @ =0x000011dc - adds r5, r4, r1 - ldrh r1, [r5] - bl __divsi3 - str r0, [r6] - ldr r2, _0809AF0C @ =0x000011d4 - adds r6, r4, r2 - ldrh r1, [r5] - adds r0, r7, 0 - bl __divsi3 - str r0, [r6] - ldr r3, _0809AF10 @ =0x000011c8 - adds r2, r4, r3 - movs r0, 0x8E - lsls r0, 5 - adds r1, r4, r0 - ldr r0, [r1] - movs r3, 0x20 - ldrsh r0, [r0, r3] - lsls r0, 8 - str r0, [r2] - ldr r0, _0809AF14 @ =0x000011cc - adds r4, r0 - ldr r0, [r1] - movs r1, 0x22 - ldrsh r0, [r0, r1] - lsls r0, 8 - str r0, [r4] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809AF00: .4byte 0x000011d8 -_0809AF04: .4byte 0x000011d0 -_0809AF08: .4byte 0x000011dc -_0809AF0C: .4byte 0x000011d4 -_0809AF10: .4byte 0x000011c8 -_0809AF14: .4byte 0x000011cc - thumb_func_end sub_809AD94 - - thumb_func_start sub_809AF18 -sub_809AF18: @ 809AF18 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_809AD3C - bl sub_809AD94 - ldr r0, _0809AFA4 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - bne _0809AF46 - ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim -_0809AF46: - cmp r4, 0x1 - bne _0809AF70 - ldr r0, _0809AFAC @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - beq _0809AF70 - ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r2, _0809AFB0 @ =0x000011e2 - adds r1, r0, r2 - strb r4, [r1] - ldr r1, _0809AFB4 @ =0x000011c4 - adds r0, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] -_0809AF70: - cmp r4, 0 - beq _0809AF9E - cmp r4, 0 - blt _0809AF9E - cmp r4, 0x3 - bgt _0809AF9E - ldr r0, _0809AFA8 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r0, _0809AFB4 @ =0x000011c4 - adds r2, r0 - ldr r1, [r2] - adds r1, 0x3E - ldrb r0, [r1] - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1] - ldr r2, [r2] - ldrb r1, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - orrs r0, r3 - strb r0, [r2, 0x5] -_0809AF9E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809AFA4: .4byte gUnknown_020384E6 -_0809AFA8: .4byte gPokemonStorageSystemPtr -_0809AFAC: .4byte gUnknown_020384E4 -_0809AFB0: .4byte 0x000011e2 -_0809AFB4: .4byte 0x000011c4 - thumb_func_end sub_809AF18 - thumb_func_start sub_809AFB8 sub_809AFB8: @ 809AFB8 push {r4,r5,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 1afed5d1b..e911664de 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -144,9 +144,21 @@ struct PokemonStorageSystemData { u8 unk_117d; u8 filler_117e[0x42]; struct Sprite *unk_11c0; - u8 filler_11c4[0x1e]; + struct Sprite *unk_11c4; + s32 unk_11c8; + s32 unk_11cc; + s32 unk_11d0; + s32 unk_11d4; + s16 unk_11d8; + s16 unk_11da; + u16 unk_11dc; + s8 unk_11de; + s8 unk_11df; + u8 unk_11e0; + u8 unk_11e1; u8 unk_11e2; - u8 filler_11e3[5]; + u8 unk_11e3; + u8 filler_11e4[4]; u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 6d44b8ae8..06c2eeff5 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -44,6 +44,7 @@ s16 sub_809A6D0(u8 width); void sub_809A6DC(void); void sub_809A774(s8 a0); void sub_809A810(void); +void sub_809AFB8(void); void sub_809A8C8(struct Sprite *sprite); bool8 sub_809BF2C(void); void sub_809BF74(void); @@ -1185,3 +1186,123 @@ u16 sub_809AB8C(void) return SPECIES_NONE; } } + +bool8 sub_809AC00(void) +{ + s16 tmp; + if (gPokemonStorageSystemPtr->unk_11dc == 0) + return FALSE; + if (--gPokemonStorageSystemPtr->unk_11dc) + { + gPokemonStorageSystemPtr->unk_11c8 += gPokemonStorageSystemPtr->unk_11d0; + gPokemonStorageSystemPtr->unk_11cc += gPokemonStorageSystemPtr->unk_11d4; + gPokemonStorageSystemPtr->unk_11c0->pos1.x = gPokemonStorageSystemPtr->unk_11c8 >> 8; + gPokemonStorageSystemPtr->unk_11c0->pos1.y = gPokemonStorageSystemPtr->unk_11cc >> 8; + if (gPokemonStorageSystemPtr->unk_11c0->pos1.x > 0x100) + { + tmp = gPokemonStorageSystemPtr->unk_11c0->pos1.x - 0x100; + gPokemonStorageSystemPtr->unk_11c0->pos1.x = tmp + 0x40; + } + if (gPokemonStorageSystemPtr->unk_11c0->pos1.x < 0x40) + { + tmp = 0x40 - gPokemonStorageSystemPtr->unk_11c0->pos1.x; + gPokemonStorageSystemPtr->unk_11c0->pos1.x = 0x100 - tmp; + } + if (gPokemonStorageSystemPtr->unk_11c0->pos1.y > 0xb0) + { + tmp = gPokemonStorageSystemPtr->unk_11c0->pos1.y - 0xb0; + gPokemonStorageSystemPtr->unk_11c0->pos1.y = tmp - 0x10; + } + if (gPokemonStorageSystemPtr->unk_11c0->pos1.y < -0x10) + { + tmp = -0x10 - gPokemonStorageSystemPtr->unk_11c0->pos1.y; + gPokemonStorageSystemPtr->unk_11c0->pos1.y = 0xb0 - tmp; + } + if (gPokemonStorageSystemPtr->unk_11e3 && --gPokemonStorageSystemPtr->unk_11e3 == 0) + gPokemonStorageSystemPtr->unk_11c0->vFlip = gPokemonStorageSystemPtr->unk_11c0->vFlip ? FALSE : TRUE; + } + else + { + gPokemonStorageSystemPtr->unk_11c0->pos1.x = gPokemonStorageSystemPtr->unk_11d8; + gPokemonStorageSystemPtr->unk_11c0->pos1.y = gPokemonStorageSystemPtr->unk_11da; + sub_809AFB8(); + } + return TRUE; +} + +void sub_809AD3C(u8 a0, u8 a1) +{ + u16 x; + u16 y; + + sub_809AACC(a0, a1, &x, &y); + gPokemonStorageSystemPtr->unk_11e0 = a0; + gPokemonStorageSystemPtr->unk_11e1 = a1; + gPokemonStorageSystemPtr->unk_11d8 = x; + gPokemonStorageSystemPtr->unk_11da = y; +} + +void sub_809AD94(void) +{ + int r7; + int r0; + + if (gPokemonStorageSystemPtr->unk_11de || gPokemonStorageSystemPtr->unk_11df) + gPokemonStorageSystemPtr->unk_11dc = 12; + else + gPokemonStorageSystemPtr->unk_11dc = 6; + if (gPokemonStorageSystemPtr->unk_11e3) + gPokemonStorageSystemPtr->unk_11e3 = gPokemonStorageSystemPtr->unk_11dc >> 1; + switch (gPokemonStorageSystemPtr->unk_11de) + { + default: + r7 = gPokemonStorageSystemPtr->unk_11da - gPokemonStorageSystemPtr->unk_11c0->pos1.y; + break; + case -1: + r7 = gPokemonStorageSystemPtr->unk_11da - 0xc0 - gPokemonStorageSystemPtr->unk_11c0->pos1.y; + break; + case 1: + r7 = gPokemonStorageSystemPtr->unk_11da + 0xc0 - gPokemonStorageSystemPtr->unk_11c0->pos1.y; + break; + } + switch (gPokemonStorageSystemPtr->unk_11df) + { + default: + r0 = gPokemonStorageSystemPtr->unk_11d8 - gPokemonStorageSystemPtr->unk_11c0->pos1.x; + break; + case -1: + r0 = gPokemonStorageSystemPtr->unk_11d8 - 0xc0 - gPokemonStorageSystemPtr->unk_11c0->pos1.x; + break; + case 1: + r0 = gPokemonStorageSystemPtr->unk_11d8 + 0xc0 - gPokemonStorageSystemPtr->unk_11c0->pos1.x; + break; + } + r7 <<= 8; + r0 <<= 8; + gPokemonStorageSystemPtr->unk_11d0 = r0 / gPokemonStorageSystemPtr->unk_11dc; + gPokemonStorageSystemPtr->unk_11d4 = r7 / gPokemonStorageSystemPtr->unk_11dc; + gPokemonStorageSystemPtr->unk_11c8 = gPokemonStorageSystemPtr->unk_11c0->pos1.x << 8; + gPokemonStorageSystemPtr->unk_11cc = gPokemonStorageSystemPtr->unk_11c0->pos1.y << 8; +} + +void sub_809AF18(u8 a0, u8 a1) +{ + sub_809AD3C(a0, a1); + sub_809AD94(); + if (gUnknown_020384E6 == 0) + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 1); + if (a0 == 1 && gUnknown_020384E4 != 1) + { + gPokemonStorageSystemPtr->unk_11e2 = a0; + gPokemonStorageSystemPtr->unk_11c4->invisible = TRUE; + } + switch (a0) + { + case 0: + break; + case 1 ... 3: + gPokemonStorageSystemPtr->unk_11c4->invisible = TRUE; + gPokemonStorageSystemPtr->unk_11c4->oam.priority = 1; + break; + } +} -- cgit v1.2.3 From 650f85e7db8ea123256d661a7db59c9325115130 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 15:46:17 -0500 Subject: through sub_809B130 --- asm/pokemon_storage_system.s | 222 --------------------------------- data/pokemon_storage_system.s | 22 ---- include/pokemon_storage_system.h | 4 +- ld_script.txt | 2 +- src/pokemon/pokemon_storage_system_4.c | 85 ++++++++++++- src/pokemon/pokemon_storage_system_6.c | 14 --- 6 files changed, 88 insertions(+), 261 deletions(-) delete mode 100644 src/pokemon/pokemon_storage_system_6.c diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 835a87f5f..5a1853361 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,226 +5,6 @@ .text - thumb_func_start sub_809AFB8 -sub_809AFB8: @ 809AFB8 - push {r4,r5,lr} - ldr r5, _0809B000 @ =gUnknown_020384E4 - ldr r0, _0809B004 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - movs r1, 0x8F - lsls r1, 5 - adds r0, r4, r1 - ldrb r0, [r0] - strb r0, [r5] - ldr r1, _0809B008 @ =gUnknown_020384E5 - ldr r2, _0809B00C @ =0x000011e1 - adds r0, r4, r2 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, _0809B010 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - bne _0809AFEA - movs r1, 0x8E - lsls r1, 5 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim -_0809AFEA: - bl sub_809BF74 - movs r0, 0 - ldrsb r0, [r5, r0] - cmp r0, 0x1 - beq _0809B020 - cmp r0, 0x1 - bgt _0809B014 - cmp r0, 0 - beq _0809B034 - b _0809B05E - .align 2, 0 -_0809B000: .4byte gUnknown_020384E4 -_0809B004: .4byte gPokemonStorageSystemPtr -_0809B008: .4byte gUnknown_020384E5 -_0809B00C: .4byte 0x000011e1 -_0809B010: .4byte gUnknown_020384E6 -_0809B014: - cmp r0, 0x2 - bne _0809B05E - movs r0, 0x1 - bl sub_809A860 - b _0809B05E -_0809B020: - ldr r2, _0809B030 @ =0x000011c4 - adds r0, r4, r2 - ldr r0, [r0] - adds r0, 0x43 - movs r1, 0xC - strb r1, [r0] - b _0809B05E - .align 2, 0 -_0809B030: .4byte 0x000011c4 -_0809B034: - ldr r0, _0809B064 @ =0x000011c4 - adds r2, r4, r0 - ldr r3, [r2] - ldrb r1, [r3, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r3, 0x5] - ldr r0, [r2] - adds r0, 0x43 - movs r1, 0x14 - strb r1, [r0] - ldr r1, [r2] - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1] -_0809B05E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809B064: .4byte 0x000011c4 - thumb_func_end sub_809AFB8 - - thumb_func_start sub_809B068 -sub_809B068: @ 809B068 - push {lr} - ldr r0, _0809B078 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - bne _0809B07C - movs r3, 0 - b _0809B08A - .align 2, 0 -_0809B078: .4byte gUnknown_020384E6 -_0809B07C: - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x5 - bls _0809B08A - movs r3, 0x5 -_0809B08A: - ldr r0, _0809B0B8 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r2, r1 - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809B0AA - ldr r0, _0809B0BC @ =0x000011e3 - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] -_0809B0AA: - movs r0, 0x1 - adds r1, r3, 0 - bl sub_809AF18 - pop {r0} - bx r0 - .align 2, 0 -_0809B0B8: .4byte gPokemonStorageSystemPtr -_0809B0BC: .4byte 0x000011e3 - thumb_func_end sub_809B068 - - thumb_func_start sub_809B0C0 -sub_809B0C0: @ 809B0C0 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - bl sub_809AF18 - pop {r0} - bx r0 - thumb_func_end sub_809B0C0 - - thumb_func_start sub_809B0D4 -sub_809B0D4: @ 809B0D4 - ldr r1, _0809B0DC @ =gUnknown_020384EA - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_0809B0DC: .4byte gUnknown_020384EA - thumb_func_end sub_809B0D4 - - thumb_func_start sub_809B0E0 -sub_809B0E0: @ 809B0E0 - ldr r0, _0809B0EC @ =gUnknown_020384EA - ldr r1, _0809B0F0 @ =gUnknown_020384E5 - ldrb r1, [r1] - strb r1, [r0] - bx lr - .align 2, 0 -_0809B0EC: .4byte gUnknown_020384EA -_0809B0F0: .4byte gUnknown_020384E5 - thumb_func_end sub_809B0E0 - - thumb_func_start sub_809B0F4 -sub_809B0F4: @ 809B0F4 - ldr r0, _0809B0FC @ =gUnknown_020384EA - ldrb r0, [r0] - bx lr - .align 2, 0 -_0809B0FC: .4byte gUnknown_020384EA - thumb_func_end sub_809B0F4 - - thumb_func_start sub_809B100 -sub_809B100: @ 809B100 - lsls r0, 24 - ldr r1, _0809B120 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _0809B124 @ =0x000012a4 - adds r3, r1, r2 - ldr r2, _0809B128 @ =gUnknown_083BBBC8 - lsrs r0, 22 - adds r0, r2 - ldr r0, [r0] - str r0, [r3] - ldr r0, _0809B12C @ =0x000012a8 - adds r1, r0 - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_0809B120: .4byte gPokemonStorageSystemPtr -_0809B124: .4byte 0x000012a4 -_0809B128: .4byte gUnknown_083BBBC8 -_0809B12C: .4byte 0x000012a8 - thumb_func_end sub_809B100 - - thumb_func_start sub_809B130 -sub_809B130: @ 809B130 - push {lr} - ldr r0, _0809B148 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809B14C @ =0x000012a4 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_0809B148: .4byte gPokemonStorageSystemPtr -_0809B14C: .4byte 0x000012a4 - thumb_func_end sub_809B130 - thumb_func_start sub_809B150 sub_809B150: @ 809B150 push {r4,r5,lr} @@ -1526,8 +1306,6 @@ _0809BB88: .4byte gPokemonStorageSystemPtr _0809BB8C: .4byte 0x0000267d thumb_func_end sub_809B960 -// file boundary at or before here - thumb_func_start sub_809BB90 sub_809BB90: @ 809BB90 push {lr} diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s index 2af123090..4c988286d 100644 --- a/data/pokemon_storage_system.s +++ b/data/pokemon_storage_system.s @@ -3,28 +3,6 @@ .section .rodata - .align 2 -HandCursorPalette: @ 83BB308 - .incbin "graphics/pokemon_storage/hand_cursor_pal.bin" - - .align 2 -HandCursorAltPalette: @ 83BB328 - .incbin "graphics/pokemon_storage/hand_cursor_alt_pal.bin" - - .align 2 -HandCursorTiles: @ 83BB348 - .incbin "graphics/pokemon_storage/hand_cursor.4bpp" - - .align 2 -HandCursorShadowTiles: @ 83BBB48 - .incbin "graphics/pokemon_storage/hand_cursor_shadow.4bpp" - - .align 2 -gUnknown_083BBBC8:: @ 83BBBC8 - .4byte sub_809B150 - .4byte sub_809B1D8 - .4byte sub_809B24C - .align 2 gUnknown_083BBBD4:: @ 83BBBD4 .4byte sub_809C464, 0 diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index e911664de..3191b841c 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -172,7 +172,9 @@ struct PokemonStorageSystemData { u8 unk_120f[0x25]; u8 unk_1234[0x25]; u8 unk_1259[0x21]; - u8 unk_127a[0x32]; + u8 unk_127a[0x2a]; + bool8 (*unk_12a4)(void); + u8 unk_12a8; struct Sprite *unk_12ac; struct Sprite *unk_12b0[2]; u16 *unk_12b8; diff --git a/ld_script.txt b/ld_script.txt index 9bdc64fdb..d925d5c14 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -133,7 +133,6 @@ SECTIONS { src/pokemon/pokemon_storage_system_3.o(.text); src/pokemon/pokemon_storage_system_4.o(.text); src/pokemon/pokemon_storage_system_5.o(.text); - src/pokemon/pokemon_storage_system_6.o(.text); asm/pokemon_storage_system.o(.text); src/pokemon/pokemon_icon.o(.text); src/pokemon/pokemon_summary_screen.o(.text); @@ -555,6 +554,7 @@ SECTIONS { src/pokemon/pokemon_storage_system_2.o(.rodata); src/pokemon/pokemon_storage_system_3.o(.rodata); src/pokemon/pokemon_storage_system_4.o(.rodata); + src/pokemon/pokemon_storage_system_5.o(.rodata); data/pokemon_storage_system.o(.rodata); src/pokemon/pokemon_icon.o(.rodata); src/pokemon/pokemon_summary_screen.o(.rodata); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 06c2eeff5..2f2091259 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -25,7 +25,7 @@ EWRAM_DATA u8 gUnknown_020384E6 = 0; EWRAM_DATA u8 gUnknown_020384E7 = 0; EWRAM_DATA u8 gUnknown_020384E8 = 0; EWRAM_DATA u8 gUnknown_020384E9 = 0; -EWRAM_DATA u16 gUnknown_020384EA = 0; +EWRAM_DATA u8 gUnknown_020384EA = 0; // Static ROM declarations @@ -46,6 +46,9 @@ void sub_809A774(s8 a0); void sub_809A810(void); void sub_809AFB8(void); void sub_809A8C8(struct Sprite *sprite); +bool8 sub_809B150(void); +bool8 sub_809B1D8(void); +bool8 sub_809B24C(void); bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); @@ -289,6 +292,16 @@ const struct SpriteTemplate gSpriteTemplate_83BB2F0 = { sub_809A8C8 }; +const u16 HandCursorPalette[] = INCBIN_U16("graphics/pokemon_storage/hand_cursor_pal.bin"); +const u16 HandCursorAltPalette[] = INCBIN_U16("graphics/pokemon_storage/hand_cursor_alt_pal.bin"); +const u8 HandCursorTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor.4bpp"); +const u8 HandCursorShadowTiles[] = INCBIN_U8("graphics/pokemon_storage/hand_cursor_shadow.4bpp"); + +bool8 (*const gUnknown_083BBBC8[])(void) = { + sub_809B150, + sub_809B1D8, + sub_809B24C +}; // .text void sub_8099BF8(u8 boxId) @@ -1306,3 +1319,73 @@ void sub_809AF18(u8 a0, u8 a1) break; } } + +void sub_809AFB8(void) +{ + gUnknown_020384E4 = gPokemonStorageSystemPtr->unk_11e0; + gUnknown_020384E5 = gPokemonStorageSystemPtr->unk_11e1; + if (gUnknown_020384E6 == 0) + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 0); + sub_809BF74(); + switch (gUnknown_020384E4) + { + case 2: + sub_809A860(TRUE); + break; + case 1: + gPokemonStorageSystemPtr->unk_11c4->subpriority = 12; + break; + case 0: + gPokemonStorageSystemPtr->unk_11c4->oam.priority = 2; + gPokemonStorageSystemPtr->unk_11c4->subpriority = 20; + gPokemonStorageSystemPtr->unk_11c4->invisible = FALSE; + break; + } +} + +void sub_809B068(void) +{ + u8 partyCount; + if (gUnknown_020384E6 == 0) + partyCount = 0; + else + { + partyCount = CalculatePlayerPartyCount(); + if (partyCount > PARTY_SIZE - 1) + partyCount = PARTY_SIZE - 1; + } + if (gPokemonStorageSystemPtr->unk_11c0->vFlip) + gPokemonStorageSystemPtr->unk_11e3 = 1; + sub_809AF18(1, partyCount); +} + +void sub_809B0C0(u8 a0) +{ + sub_809AF18(0, a0); +} + +void sub_809B0D4(void) +{ + gUnknown_020384EA = 0; +} + +void sub_809B0E0(void) +{ + gUnknown_020384EA = gUnknown_020384E5; +} + +u8 sub_809B0F4(void) +{ + return gUnknown_020384EA; +} + +void sub_809B100(u8 a0) +{ + gPokemonStorageSystemPtr->unk_12a4 = gUnknown_083BBBC8[a0]; + gPokemonStorageSystemPtr->unk_12a8 = 0; +} + +bool8 sub_809B130(void) +{ + return gPokemonStorageSystemPtr->unk_12a4(); +} diff --git a/src/pokemon/pokemon_storage_system_6.c b/src/pokemon/pokemon_storage_system_6.c deleted file mode 100644 index a781c1ed2..000000000 --- a/src/pokemon/pokemon_storage_system_6.c +++ /dev/null @@ -1,14 +0,0 @@ - -// Includes -#include "global.h" -#include "pokemon_storage_system.h" - -// Static type declarations - -// Static RAM declarations - -// Static ROM declarations - -// .rodata - -// .text -- cgit v1.2.3 From 66fe535e7f5f0466c15f5f82dd1c2823fc6110cf Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 16:16:25 -0500 Subject: through sub_809B24C --- asm/pokemon_storage_system.s | 238 --------------------------------- include/pokemon_storage_system.h | 5 +- src/pokemon/pokemon_storage_system_4.c | 92 +++++++++++++ 3 files changed, 96 insertions(+), 239 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 5a1853361..d408dc7ea 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,244 +5,6 @@ .text - thumb_func_start sub_809B150 -sub_809B150: @ 809B150 - push {r4,r5,lr} - ldr r0, _0809B16C @ =gPokemonStorageSystemPtr - ldr r5, [r0] - ldr r0, _0809B170 @ =0x000012a8 - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0x1 - beq _0809B1A0 - cmp r0, 0x1 - bgt _0809B174 - cmp r0, 0 - beq _0809B17E - b _0809B1CE - .align 2, 0 -_0809B16C: .4byte gPokemonStorageSystemPtr -_0809B170: .4byte 0x000012a8 -_0809B174: - cmp r0, 0x2 - beq _0809B1BE - cmp r0, 0x3 - beq _0809B186 - b _0809B1CE -_0809B17E: - ldr r0, _0809B18C @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809B190 -_0809B186: - movs r0, 0 - b _0809B1D0 - .align 2, 0 -_0809B18C: .4byte gUnknown_020384E6 -_0809B190: - movs r1, 0x8E - lsls r1, 5 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x2 - bl StartSpriteAnim - b _0809B1C8 -_0809B1A0: - bl sub_809B324 - lsls r0, 24 - cmp r0, 0 - bne _0809B1CE - movs r1, 0x8E - lsls r1, 5 - adds r0, r5, r1 - ldr r0, [r0] - movs r1, 0x3 - bl StartSpriteAnim - bl sub_809B384 - b _0809B1C8 -_0809B1BE: - bl sub_809B358 - lsls r0, 24 - cmp r0, 0 - bne _0809B1CE -_0809B1C8: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_0809B1CE: - movs r0, 0x1 -_0809B1D0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B150 - - thumb_func_start sub_809B1D8 -sub_809B1D8: @ 809B1D8 - push {r4,r5,lr} - ldr r0, _0809B1F4 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r0, _0809B1F8 @ =0x000012a8 - adds r5, r4, r0 - ldrb r0, [r5] - cmp r0, 0x1 - beq _0809B220 - cmp r0, 0x1 - bgt _0809B1FC - cmp r0, 0 - beq _0809B202 - b _0809B244 - .align 2, 0 -_0809B1F4: .4byte gPokemonStorageSystemPtr -_0809B1F8: .4byte 0x000012a8 -_0809B1FC: - cmp r0, 0x2 - beq _0809B240 - b _0809B244 -_0809B202: - bl sub_809B324 - lsls r0, 24 - cmp r0, 0 - bne _0809B244 - movs r1, 0x8E - lsls r1, 5 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x2 - bl StartSpriteAnim - bl sub_809B3E0 - b _0809B238 -_0809B220: - bl sub_809B358 - lsls r0, 24 - cmp r0, 0 - bne _0809B244 - movs r1, 0x8E - lsls r1, 5 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim -_0809B238: - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _0809B244 -_0809B240: - movs r0, 0 - b _0809B246 -_0809B244: - movs r0, 0x1 -_0809B246: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B1D8 - - thumb_func_start sub_809B24C -sub_809B24C: @ 809B24C - push {r4,r5,lr} - ldr r0, _0809B268 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r0, _0809B26C @ =0x000012a8 - adds r5, r4, r0 - ldrb r0, [r5] - cmp r0, 0x1 - beq _0809B2E0 - cmp r0, 0x1 - bgt _0809B270 - cmp r0, 0 - beq _0809B276 - b _0809B31C - .align 2, 0 -_0809B268: .4byte gPokemonStorageSystemPtr -_0809B26C: .4byte 0x000012a8 -_0809B270: - cmp r0, 0x2 - beq _0809B318 - b _0809B31C -_0809B276: - ldr r0, _0809B290 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0809B298 - cmp r0, 0x1 - bne _0809B318 - ldr r2, _0809B294 @ =0x000012a9 - adds r1, r4, r2 - movs r0, 0xE - b _0809B2A0 - .align 2, 0 -_0809B290: .4byte gUnknown_020384E4 -_0809B294: .4byte 0x000012a9 -_0809B298: - bl get_preferred_box - ldr r2, _0809B2D0 @ =0x000012a9 - adds r1, r4, r2 -_0809B2A0: - strb r0, [r1] - ldr r0, _0809B2D4 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x2 - bl StartSpriteAnim - ldr r2, _0809B2D0 @ =0x000012a9 - adds r0, r4, r2 - ldrb r0, [r0] - ldr r1, _0809B2D8 @ =gUnknown_020384E5 - ldrb r1, [r1] - bl sub_80996B0 - ldr r0, _0809B2DC @ =0x000012a8 - adds r4, r0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _0809B31C - .align 2, 0 -_0809B2D0: .4byte 0x000012a9 -_0809B2D4: .4byte gPokemonStorageSystemPtr -_0809B2D8: .4byte gUnknown_020384E5 -_0809B2DC: .4byte 0x000012a8 -_0809B2E0: - bl sub_809971C - lsls r0, 24 - cmp r0, 0 - bne _0809B31C - movs r1, 0x8E - lsls r1, 5 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x3 - bl StartSpriteAnim - ldr r2, _0809B310 @ =0x000012a9 - adds r0, r4, r2 - ldrb r0, [r0] - ldr r1, _0809B314 @ =gUnknown_020384E5 - ldrb r1, [r1] - bl diegohint1 - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _0809B31C - .align 2, 0 -_0809B310: .4byte 0x000012a9 -_0809B314: .4byte gUnknown_020384E5 -_0809B318: - movs r0, 0 - b _0809B31E -_0809B31C: - movs r0, 0x1 -_0809B31E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B24C - thumb_func_start sub_809B324 sub_809B324: @ 809B324 push {lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 3191b841c..a2b5964d4 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -175,6 +175,7 @@ struct PokemonStorageSystemData { u8 unk_127a[0x2a]; bool8 (*unk_12a4)(void); u8 unk_12a8; + u8 unk_12a9; struct Sprite *unk_12ac; struct Sprite *unk_12b0[2]; u16 *unk_12b8; @@ -223,10 +224,11 @@ void sub_8099310(void); bool8 sub_8099374(void); void sub_80994A8(s16 a0); void sub_809954C(void); +void sub_80996B0(u8 a0, u8 a1); +bool8 sub_809971C(void); void sub_8099958(void); bool8 sub_8099990(void); struct Sprite *sub_809A9A0(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority); -void sub_809BB90(void); void sub_8099BF8(u8 a0); void sub_8099C70(u8 whichBox); bool8 sub_8099D34(void); @@ -252,6 +254,7 @@ void sub_809B760(void); void sub_809B7AC(void); void sub_809B7D4(void); s8 sub_809B960(void); +void sub_809BB90(void); void sub_809BBC0(void); void sub_809BC18(void); void sub_809BD14(void); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 2f2091259..9e4865910 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -49,6 +49,11 @@ void sub_809A8C8(struct Sprite *sprite); bool8 sub_809B150(void); bool8 sub_809B1D8(void); bool8 sub_809B24C(void); +bool8 sub_809B324(void); +bool8 sub_809B358(void); +void sub_809B384(void); +void sub_809B3E0(void); +void diegohint1(u8 a0, u8 a1); bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); @@ -1389,3 +1394,90 @@ bool8 sub_809B130(void) { return gPokemonStorageSystemPtr->unk_12a4(); } + +bool8 sub_809B150(void) +{ + switch (gPokemonStorageSystemPtr->unk_12a8) + { + case 0: + if (gUnknown_020384E6) + return FALSE; + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 2); + gPokemonStorageSystemPtr->unk_12a8++; + break; + case 1: + if (!sub_809B324()) + { + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 3); + sub_809B384(); + gPokemonStorageSystemPtr->unk_12a8++; + } + break; + case 2: + if (!sub_809B358()) + gPokemonStorageSystemPtr->unk_12a8++; + break; + case 3: + return FALSE; + } + return TRUE; +} + +bool8 sub_809B1D8(void) +{ + switch (gPokemonStorageSystemPtr->unk_12a8) + { + case 0: + if (!sub_809B324()) + { + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 2); + sub_809B3E0(); + gPokemonStorageSystemPtr->unk_12a8++; + } + break; + case 1: + if (!sub_809B358()) + { + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 0); + gPokemonStorageSystemPtr->unk_12a8++; + } + break; + case 2: + return FALSE; + } + return TRUE; +} + +bool8 sub_809B24C(void) +{ + switch (gPokemonStorageSystemPtr->unk_12a8) + { + case 0: + switch (gUnknown_020384E4) + { + case 1: + gPokemonStorageSystemPtr->unk_12a9 = 14; + break; + case 0: + gPokemonStorageSystemPtr->unk_12a9 = get_preferred_box(); + break; + default: + return FALSE; + } + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 2); + sub_80996B0(gPokemonStorageSystemPtr->unk_12a9, gUnknown_020384E5); + gPokemonStorageSystemPtr->unk_12a8++; + break; + case 1: + if (!sub_809971C()) + { + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 3); + diegohint1(gPokemonStorageSystemPtr->unk_12a9, gUnknown_020384E5); + gPokemonStorageSystemPtr->unk_12a8++; + } + break; + case 2: + return FALSE; + } + return TRUE; +} -- cgit v1.2.3 From e3238abc63ac7e939ccdc58e555a9dcdc66f3525 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 16:54:02 -0500 Subject: through sub_809B44C --- asm/pokemon_storage_system.s | 223 --------------------------------- include/pokemon_storage_system.h | 2 + src/pokemon/pokemon_storage_system_4.c | 86 +++++++++++++ 3 files changed, 88 insertions(+), 223 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index d408dc7ea..9b37cbe69 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,229 +5,6 @@ .text - thumb_func_start sub_809B324 -sub_809B324: @ 809B324 - push {lr} - ldr r0, _0809B348 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r1, [r0] - movs r2, 0x26 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0809B33E - cmp r0, 0x8 - beq _0809B34C -_0809B33E: - ldrh r0, [r1, 0x26] - adds r0, 0x1 - strh r0, [r1, 0x26] - b _0809B350 - .align 2, 0 -_0809B348: .4byte gPokemonStorageSystemPtr -_0809B34C: - movs r0, 0 - b _0809B352 -_0809B350: - movs r0, 0x1 -_0809B352: - pop {r1} - bx r1 - thumb_func_end sub_809B324 - - thumb_func_start sub_809B358 -sub_809B358: @ 809B358 - push {lr} - ldr r0, _0809B378 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r1, [r0] - movs r2, 0x26 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0809B37C - ldrh r0, [r1, 0x26] - subs r0, 0x1 - strh r0, [r1, 0x26] - movs r0, 0x1 - b _0809B37E - .align 2, 0 -_0809B378: .4byte gPokemonStorageSystemPtr -_0809B37C: - movs r0, 0 -_0809B37E: - pop {r1} - bx r1 - thumb_func_end sub_809B358 - - thumb_func_start sub_809B384 -sub_809B384: @ 809B384 - push {r4,lr} - ldr r0, _0809B3AC @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0809B3B4 - cmp r0, 0x1 - bne _0809B3D2 - ldr r4, _0809B3B0 @ =gUnknown_020384E5 - ldrb r1, [r4] - movs r0, 0xE - bl sub_809B44C - ldrb r1, [r4] - movs r0, 0 - bl sub_8099584 - b _0809B3CC - .align 2, 0 -_0809B3AC: .4byte gUnknown_020384E4 -_0809B3B0: .4byte gUnknown_020384E5 -_0809B3B4: - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - ldr r4, _0809B3D8 @ =gUnknown_020384E5 - ldrb r1, [r4] - bl sub_809B44C - ldrb r1, [r4] - movs r0, 0x1 - bl sub_8099584 -_0809B3CC: - ldr r1, _0809B3DC @ =gUnknown_020384E6 - movs r0, 0x1 - strb r0, [r1] -_0809B3D2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809B3D8: .4byte gUnknown_020384E5 -_0809B3DC: .4byte gUnknown_020384E6 - thumb_func_end sub_809B384 - - thumb_func_start sub_809B3E0 -sub_809B3E0: @ 809B3E0 - push {r4,r5,lr} - ldr r0, _0809B408 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0809B410 - cmp r0, 0x1 - bne _0809B432 - ldr r4, _0809B40C @ =gUnknown_020384E5 - ldrb r1, [r4] - movs r0, 0xE - bl diegohint2 - ldrb r1, [r4] - movs r0, 0xE - bl sub_809960C - b _0809B42C - .align 2, 0 -_0809B408: .4byte gUnknown_020384E4 -_0809B40C: .4byte gUnknown_020384E5 -_0809B410: - bl get_preferred_box - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0809B438 @ =gUnknown_020384E5 - ldrb r1, [r5] - adds r0, r4, 0 - bl diegohint2 - ldrb r1, [r5] - adds r0, r4, 0 - bl sub_809960C -_0809B42C: - ldr r1, _0809B43C @ =gUnknown_020384E6 - movs r0, 0 - strb r0, [r1] -_0809B432: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809B438: .4byte gUnknown_020384E5 -_0809B43C: .4byte gUnknown_020384E6 - thumb_func_end sub_809B3E0 - - thumb_func_start sub_809B440 -sub_809B440: @ 809B440 - push {lr} - bl sub_809BF74 - pop {r0} - bx r0 - thumb_func_end sub_809B440 - - thumb_func_start sub_809B44C -sub_809B44C: @ 809B44C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r4, 0xE - bne _0809B488 - ldr r0, _0809B478 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809B47C @ =0x000025b4 - adds r0, r1 - ldr r3, _0809B480 @ =gPlayerParty - ldr r1, _0809B484 @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - movs r1, 0x64 - muls r1, r2 - adds r1, r3 - movs r2, 0x64 - bl memcpy - b _0809B4AA - .align 2, 0 -_0809B478: .4byte gPokemonStorageSystemPtr -_0809B47C: .4byte 0x000025b4 -_0809B480: .4byte gPlayerParty -_0809B484: .4byte gUnknown_020384E5 -_0809B488: - lsls r1, r4, 2 - adds r1, r4 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 4 - ldr r2, _0809B4C0 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - ldr r1, _0809B4C4 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _0809B4C8 @ =0x000025b4 - adds r1, r2 - bl sub_803B4B4 -_0809B4AA: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_809B548 - ldr r0, _0809B4CC @ =gUnknown_020384E7 - strb r4, [r0] - ldr r0, _0809B4D0 @ =gUnknown_020384E8 - strb r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809B4C0: .4byte gPokemonStorage + 0x4 -_0809B4C4: .4byte gPokemonStorageSystemPtr -_0809B4C8: .4byte 0x000025b4 -_0809B4CC: .4byte gUnknown_020384E7 -_0809B4D0: .4byte gUnknown_020384E8 - thumb_func_end sub_809B44C - thumb_func_start diegohint2 diegohint2: @ 809B4D4 push {r4-r6,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index a2b5964d4..eefea4ec8 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -224,6 +224,8 @@ void sub_8099310(void); bool8 sub_8099374(void); void sub_80994A8(s16 a0); void sub_809954C(void); +void sub_8099584(u8 a0, u8 a1); +void sub_809960C(u8 a0, u8 a1); void sub_80996B0(u8 a0, u8 a1); bool8 sub_809971C(void); void sub_8099958(void); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 9e4865910..1127927bf 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -53,6 +53,9 @@ bool8 sub_809B324(void); bool8 sub_809B358(void); void sub_809B384(void); void sub_809B3E0(void); +void sub_809B44C(u8 a0, u8 a1); +void diegohint2(u8 a0, u8 a1); +void sub_809B548(u8 a0, u8 a1); void diegohint1(u8 a0, u8 a1); bool8 sub_809BF2C(void); void sub_809BF74(void); @@ -1481,3 +1484,86 @@ bool8 sub_809B24C(void) } return TRUE; } + +bool8 sub_809B324(void) +{ + switch (gPokemonStorageSystemPtr->unk_11c0->pos2.y) + { + default: + gPokemonStorageSystemPtr->unk_11c0->pos2.y++; + break; + case 0: + gPokemonStorageSystemPtr->unk_11c0->pos2.y++; + break; + case 8: + return FALSE; + } + return TRUE; +} + +bool8 sub_809B358(void) +{ + switch (gPokemonStorageSystemPtr->unk_11c0->pos2.y) + { + case 0: + return FALSE; + default: + gPokemonStorageSystemPtr->unk_11c0->pos2.y--; + break; + } + return TRUE; +} + +void sub_809B384(void) +{ + switch (gUnknown_020384E4) + { + case 1: + sub_809B44C(14, gUnknown_020384E5); + sub_8099584(0, gUnknown_020384E5); + break; + case 0: + sub_809B44C(get_preferred_box(), gUnknown_020384E5); + sub_8099584(1, gUnknown_020384E5); + break; + default: + return; + } + gUnknown_020384E6 = 1; +} + +void sub_809B3E0(void) +{ + u8 boxId; + switch (gUnknown_020384E4) + { + case 1: + diegohint2(14, gUnknown_020384E5); + sub_809960C(14, gUnknown_020384E5); + break; + case 0: + boxId = get_preferred_box(); + diegohint2(boxId, gUnknown_020384E5); + sub_809960C(boxId, gUnknown_020384E5); + break; + default: + return; + } + gUnknown_020384E6 = 0; +} + +void sub_809B440(void) +{ + sub_809BF74(); +} + +void sub_809B44C(u8 a0, u8 a1) +{ + if (a0 == 14) + gPokemonStorageSystemPtr->unk_25b4 = gPlayerParty[gUnknown_020384E5]; + else + sub_803B4B4(gPokemonStorage.boxes[a0], &gPokemonStorageSystemPtr->unk_25b4); + sub_809B548(a0, a1); + gUnknown_020384E7 = a0; + gUnknown_020384E8 = a1; +} -- cgit v1.2.3 From 08a108f432325d6501f3c6473a6d43265af0d5b7 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 17:14:39 -0500 Subject: through diegohint1 --- asm/pokemon_storage_system.s | 168 +-------------------------------- include/pokemon.h | 2 +- include/pokemon_storage_system.h | 3 +- src/field/daycare.c | 2 +- src/pokemon/pokemon_1.c | 2 +- src/pokemon/pokemon_storage_system_4.c | 37 +++++++- src/pokemon/pokemon_summary_screen.c | 2 +- 7 files changed, 43 insertions(+), 173 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 9b37cbe69..e47abfda0 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,172 +5,6 @@ .text - thumb_func_start diegohint2 -diegohint2: @ 809B4D4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r6, 0xE - bne _0809B508 - ldr r1, _0809B4FC @ =gPlayerParty - movs r0, 0x64 - muls r0, r5 - adds r0, r1 - ldr r1, _0809B500 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _0809B504 @ =0x000025b4 - adds r1, r2 - movs r2, 0x64 - bl memcpy - b _0809B536 - .align 2, 0 -_0809B4FC: .4byte gPlayerParty -_0809B500: .4byte gPokemonStorageSystemPtr -_0809B504: .4byte 0x000025b4 -_0809B508: - ldr r0, _0809B53C @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r0, _0809B540 @ =0x000025b4 - adds r4, r0 - adds r0, r4, 0 - bl BoxMonRestorePP - ldr r3, _0809B544 @ =gPokemonStorage - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 4 - lsls r2, r6, 2 - adds r2, r6 - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 5 - adds r0, r1 - adds r0, r3 - adds r0, 0x4 - adds r1, r4, 0 - movs r2, 0x50 - bl memcpy -_0809B536: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809B53C: .4byte gPokemonStorageSystemPtr -_0809B540: .4byte 0x000025b4 -_0809B544: .4byte gPokemonStorage - thumb_func_end diegohint2 - - thumb_func_start sub_809B548 -sub_809B548: @ 809B548 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r2, r1, 24 - cmp r0, 0xE - bne _0809B568 - movs r0, 0x64 - muls r0, r2 - ldr r1, _0809B564 @ =gPlayerParty - adds r0, r1 - bl ZeroMonData - b _0809B582 - .align 2, 0 -_0809B564: .4byte gPlayerParty -_0809B568: - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - ldr r2, _0809B588 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - bl ZeroBoxMonData -_0809B582: - pop {r0} - bx r0 - .align 2, 0 -_0809B588: .4byte gPokemonStorage + 0x4 - thumb_func_end sub_809B548 - - thumb_func_start diegohint1 -diegohint1: @ 809B58C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r5, 0xE - bne _0809B5C0 - ldr r0, _0809B5B4 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809B5B8 @ =0x00002618 - adds r0, r1 - ldr r2, _0809B5BC @ =gPlayerParty - movs r1, 0x64 - muls r1, r6 - adds r1, r2 - movs r2, 0x64 - bl memcpy - b _0809B5E2 - .align 2, 0 -_0809B5B4: .4byte gPokemonStorageSystemPtr -_0809B5B8: .4byte 0x00002618 -_0809B5BC: .4byte gPlayerParty -_0809B5C0: - lsls r1, r5, 2 - adds r1, r5 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 4 - ldr r2, _0809B614 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - ldr r1, _0809B618 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _0809B61C @ =0x00002618 - adds r1, r2 - bl sub_803B4B4 -_0809B5E2: - adds r0, r5, 0 - adds r1, r6, 0 - bl diegohint2 - ldr r0, _0809B618 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r0, _0809B620 @ =0x000025b4 - adds r4, r1, r0 - ldr r2, _0809B61C @ =0x00002618 - adds r1, r2 - adds r0, r4, 0 - movs r2, 0x64 - bl memcpy - adds r0, r4, 0 - movs r1, 0 - bl sub_809C04C - ldr r0, _0809B624 @ =gUnknown_020384E7 - strb r5, [r0] - ldr r0, _0809B628 @ =gUnknown_020384E8 - strb r6, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809B614: .4byte gPokemonStorage + 0x4 -_0809B618: .4byte gPokemonStorageSystemPtr -_0809B61C: .4byte 0x00002618 -_0809B620: .4byte 0x000025b4 -_0809B624: .4byte gUnknown_020384E7 -_0809B628: .4byte gUnknown_020384E8 - thumb_func_end diegohint1 - thumb_func_start sub_809B62C sub_809B62C: @ 809B62C push {r4-r6,lr} @@ -474,7 +308,7 @@ _0809B864: ldr r4, [r1] ldr r2, _0809B908 @ =0x00002618 adds r1, r4, r2 - bl sub_803B4B4 + bl ExpandBoxMon ldrb r0, [r5] ldr r1, _0809B90C @ =0x00002682 adds r4, r1 diff --git a/include/pokemon.h b/include/pokemon.h index 8624270f1..47d6bcfc7 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -522,7 +522,7 @@ void sub_803ADE8(struct Pokemon *mon, struct UnknownPokemonStruct *src); void sub_803AF78(struct Pokemon *mon, struct UnknownPokemonStruct *dest); u16 CalculateBoxMonChecksum(struct BoxPokemon *boxMon); void CalculateMonStats(struct Pokemon *mon); -void sub_803B4B4(const struct BoxPokemon *src, struct Pokemon *dest); +void ExpandBoxMon(const struct BoxPokemon *src, struct Pokemon *dest); u8 GetLevelFromMonExp(struct Pokemon *mon); u8 GetLevelFromBoxMonExp(struct BoxPokemon *boxMon); u16 GiveMoveToMon(struct Pokemon *mon, u16 move); diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index eefea4ec8..7960213ae 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -182,7 +182,8 @@ struct PokemonStorageSystemData { struct PokemonMarkMenu unk_12bc; struct UnkPSSStruct_2002370 unk_2370; struct Pokemon unk_25b4; - u8 filler_2618[0x74]; + struct Pokemon unk_2618; + u8 filler_267c[0x10]; u8 unk_268c; u8 unk_268d; u8 unk_268e; diff --git a/src/field/daycare.c b/src/field/daycare.c index 36dd7ec03..2f0c7281e 100644 --- a/src/field/daycare.c +++ b/src/field/daycare.c @@ -205,7 +205,7 @@ static u16 TakeSelectedPokemonFromDaycare(struct DayCare * daycare, u8 slot) GetBoxMonNick(&daycare->mons[slot], gStringVar1); species = GetBoxMonData(&daycare->mons[slot], MON_DATA_SPECIES); - sub_803B4B4(&daycare->mons[slot], &pokemon); + ExpandBoxMon(&daycare->mons[slot], &pokemon); if (GetMonData(&pokemon, MON_DATA_LEVEL) != MAX_LEVEL) { diff --git a/src/pokemon/pokemon_1.c b/src/pokemon/pokemon_1.c index 0242e7444..06a088046 100644 --- a/src/pokemon/pokemon_1.c +++ b/src/pokemon/pokemon_1.c @@ -524,7 +524,7 @@ void CalculateMonStats(struct Pokemon *mon) SetMonData(mon, MON_DATA_HP, ¤tHP); } -void sub_803B4B4(const struct BoxPokemon *src, struct Pokemon *dest) +void ExpandBoxMon(const struct BoxPokemon *src, struct Pokemon *dest) { u32 value = 0; dest->box = *src; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 1127927bf..73d71fa0e 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -60,6 +60,7 @@ void diegohint1(u8 a0, u8 a1); bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); +void sub_809C04C(struct Pokemon *pokemon, u8 a1); void sub_809CC04(void); // .rodata @@ -1562,8 +1563,42 @@ void sub_809B44C(u8 a0, u8 a1) if (a0 == 14) gPokemonStorageSystemPtr->unk_25b4 = gPlayerParty[gUnknown_020384E5]; else - sub_803B4B4(gPokemonStorage.boxes[a0], &gPokemonStorageSystemPtr->unk_25b4); + ExpandBoxMon(gPokemonStorage.boxes[a0] + a1, &gPokemonStorageSystemPtr->unk_25b4); sub_809B548(a0, a1); gUnknown_020384E7 = a0; gUnknown_020384E8 = a1; } + +void diegohint2(u8 a0, u8 a1) +{ + if (a0 == 14) + { + gPlayerParty[a1] = gPokemonStorageSystemPtr->unk_25b4; + } + else + { + BoxMonRestorePP(&gPokemonStorageSystemPtr->unk_25b4.box); + gPokemonStorage.boxes[a0][a1] = gPokemonStorageSystemPtr->unk_25b4.box; + } +} + +void sub_809B548(u8 a0, u8 a1) +{ + if (a0 == 14) + ZeroMonData(gPlayerParty + a1); + else + ZeroBoxMonData(gPokemonStorage.boxes[a0] + a1); +} + +void diegohint1(u8 a0, u8 a1) +{ + if (a0 == 14) + gPokemonStorageSystemPtr->unk_2618 = gPlayerParty[a1]; + else + ExpandBoxMon(gPokemonStorage.boxes[a0] + a1, &gPokemonStorageSystemPtr->unk_2618); + diegohint2(a0, a1); + gPokemonStorageSystemPtr->unk_25b4 = gPokemonStorageSystemPtr->unk_2618; + sub_809C04C(&gPokemonStorageSystemPtr->unk_25b4, 0); + gUnknown_020384E7 = a0; + gUnknown_020384E8 = a1; +} diff --git a/src/pokemon/pokemon_summary_screen.c b/src/pokemon/pokemon_summary_screen.c index ce83ad070..dce65898c 100644 --- a/src/pokemon/pokemon_summary_screen.c +++ b/src/pokemon/pokemon_summary_screen.c @@ -2253,7 +2253,7 @@ static void sub_809F678(struct Pokemon *mon) else { struct BoxPokemon *mons = pssData.monList.boxMons; - sub_803B4B4(&mons[pssData.monIndex], mon); + ExpandBoxMon(&mons[pssData.monIndex], mon); } } -- cgit v1.2.3 From 7b45766d0765d42d7326a7f6cdb21a54d386117e Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 19:32:02 -0500 Subject: through sub_809B7D4 --- asm/pokemon_storage_system.s | 397 --------------------------------- include/pokemon_storage_system.h | 18 +- src/pokemon/pokemon_2.c | 3 +- src/pokemon/pokemon_storage_system_4.c | 119 ++++++++++ 4 files changed, 138 insertions(+), 399 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index e47abfda0..7fa65b32a 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,403 +5,6 @@ .text - thumb_func_start sub_809B62C -sub_809B62C: @ 809B62C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r6, 0 - bl GetIndexOfFirstEmptySpaceInBoxN - lsls r0, 16 - lsrs r4, r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0809B64A - movs r0, 0 - b _0809B6AC -_0809B64A: - ldr r5, _0809B668 @ =gUnknown_020384E6 - ldrb r0, [r5] - cmp r0, 0 - beq _0809B66C - lsls r4, 24 - lsrs r1, r4, 24 - adds r0, r6, 0 - bl diegohint2 - bl sub_8099480 - movs r0, 0 - strb r0, [r5] - b _0809B686 - .align 2, 0 -_0809B668: .4byte gUnknown_020384E6 -_0809B66C: - ldr r5, _0809B6B4 @ =gUnknown_020384E5 - ldrb r1, [r5] - movs r0, 0xE - bl sub_809B44C - lsls r4, 24 - lsrs r1, r4, 24 - adds r0, r6, 0 - bl diegohint2 - ldrb r0, [r5] - bl sub_8099520 -_0809B686: - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - bne _0809B698 - lsrs r0, r4, 24 - bl sub_8098D20 -_0809B698: - ldr r0, _0809B6B8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - movs r0, 0x1 -_0809B6AC: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0809B6B4: .4byte gUnknown_020384E5 -_0809B6B8: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809B62C - - thumb_func_start sub_809B6BC -sub_809B6BC: @ 809B6BC - push {lr} - ldr r0, _0809B6D8 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim - bl sub_809BF74 - pop {r0} - bx r0 - .align 2, 0 -_0809B6D8: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809B6BC - - thumb_func_start sub_809B6DC -sub_809B6DC: @ 809B6DC - push {lr} - ldr r0, _0809B6EC @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809B6F0 - movs r2, 0x2 - b _0809B700 - .align 2, 0 -_0809B6EC: .4byte gUnknown_020384E6 -_0809B6F0: - ldr r0, _0809B720 @ =gUnknown_020384E4 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r2, 0x1 - eors r1, r2 - negs r0, r1 - orrs r0, r1 - lsrs r2, r0, 31 -_0809B700: - ldr r0, _0809B724 @ =gUnknown_020384E5 - ldrb r1, [r0] - adds r0, r2, 0 - bl sub_809981C - ldr r0, _0809B728 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r2, _0809B72C @ =0x000026e4 - adds r0, r1, r2 - ldr r2, _0809B730 @ =0x000011fa - adds r1, r2 - bl StringCopy - pop {r0} - bx r0 - .align 2, 0 -_0809B720: .4byte gUnknown_020384E4 -_0809B724: .4byte gUnknown_020384E5 -_0809B728: .4byte gPokemonStorageSystemPtr -_0809B72C: .4byte 0x000026e4 -_0809B730: .4byte 0x000011fa - thumb_func_end sub_809B6DC - - thumb_func_start sub_809B734 -sub_809B734: @ 809B734 - push {lr} - bl sub_80998D8 - lsls r0, 24 - cmp r0, 0 - beq _0809B744 - movs r0, 0x1 - b _0809B758 -_0809B744: - ldr r0, _0809B75C @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim - movs r0, 0 -_0809B758: - pop {r1} - bx r1 - .align 2, 0 -_0809B75C: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809B734 - - thumb_func_start sub_809B760 -sub_809B760: @ 809B760 - push {lr} - bl sub_8099920 - ldr r1, _0809B774 @ =gUnknown_020384E6 - ldrb r0, [r1] - cmp r0, 0 - beq _0809B778 - movs r0, 0 - strb r0, [r1] - b _0809B79E - .align 2, 0 -_0809B774: .4byte gUnknown_020384E6 -_0809B778: - ldr r0, _0809B788 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809B78C - movs r2, 0xE - b _0809B794 - .align 2, 0 -_0809B788: .4byte gUnknown_020384E4 -_0809B78C: - bl get_preferred_box - lsls r0, 24 - lsrs r2, r0, 24 -_0809B794: - ldr r0, _0809B7A8 @ =gUnknown_020384E5 - ldrb r1, [r0] - adds r0, r2, 0 - bl sub_809B548 -_0809B79E: - bl sub_809BF74 - pop {r0} - bx r0 - .align 2, 0 -_0809B7A8: .4byte gUnknown_020384E5 - thumb_func_end sub_809B760 - - thumb_func_start sub_809B7AC -sub_809B7AC: @ 809B7AC - push {lr} - ldr r0, _0809B7CC @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809B7C8 - ldr r0, _0809B7D0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - movs r1, 0x8E - lsls r1, 5 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x3 - bl StartSpriteAnim -_0809B7C8: - pop {r0} - bx r0 - .align 2, 0 -_0809B7CC: .4byte gUnknown_020384E6 -_0809B7D0: .4byte gPokemonStorageSystemPtr - thumb_func_end sub_809B7AC - - thumb_func_start sub_809B7D4 -sub_809B7D4: @ 809B7D4 - push {r4-r6,lr} - ldr r0, _0809B804 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809B81C - ldr r0, _0809B808 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r1, _0809B80C @ =0x00002618 - adds r0, r4, r1 - ldr r2, _0809B810 @ =0x000025b4 - adds r1, r4, r2 - movs r2, 0x64 - bl memcpy - ldr r0, _0809B814 @ =0x00002682 - adds r1, r4, r0 - movs r0, 0xFF - strb r0, [r1] - ldr r1, _0809B818 @ =0x00002683 - adds r4, r1 - movs r0, 0x1 - negs r0, r0 - strb r0, [r4] - b _0809B8A6 - .align 2, 0 -_0809B804: .4byte gUnknown_020384E6 -_0809B808: .4byte gPokemonStorageSystemPtr -_0809B80C: .4byte 0x00002618 -_0809B810: .4byte 0x000025b4 -_0809B814: .4byte 0x00002682 -_0809B818: .4byte 0x00002683 -_0809B81C: - ldr r0, _0809B84C @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809B864 - ldr r0, _0809B850 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r2, _0809B854 @ =0x00002618 - adds r0, r4, r2 - ldr r3, _0809B858 @ =gPlayerParty - ldr r1, _0809B85C @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - movs r1, 0x64 - muls r1, r2 - adds r1, r3 - movs r2, 0x64 - bl memcpy - ldr r0, _0809B860 @ =0x00002682 - adds r4, r0 - movs r0, 0xE - b _0809B896 - .align 2, 0 -_0809B84C: .4byte gUnknown_020384E4 -_0809B850: .4byte gPokemonStorageSystemPtr -_0809B854: .4byte 0x00002618 -_0809B858: .4byte gPlayerParty -_0809B85C: .4byte gUnknown_020384E5 -_0809B860: .4byte 0x00002682 -_0809B864: - ldr r5, _0809B8FC @ =gPokemonStorage - ldrb r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, _0809B900 @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - adds r2, r5, 0x4 - adds r1, r2 - adds r0, r1 - ldr r1, _0809B904 @ =gPokemonStorageSystemPtr - ldr r4, [r1] - ldr r2, _0809B908 @ =0x00002618 - adds r1, r4, r2 - bl ExpandBoxMon - ldrb r0, [r5] - ldr r1, _0809B90C @ =0x00002682 - adds r4, r1 -_0809B896: - strb r0, [r4] - ldr r0, _0809B904 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809B900 @ =gUnknown_020384E5 - ldrb r1, [r1] - ldr r2, _0809B910 @ =0x00002683 - adds r0, r2 - strb r1, [r0] -_0809B8A6: - ldr r0, _0809B904 @ =gPokemonStorageSystemPtr - ldr r6, [r0] - ldr r0, _0809B914 @ =0x0000267e - adds r4, r6, r0 - movs r0, 0 - strb r0, [r4] - ldr r1, _0809B918 @ =0x0000267f - adds r5, r6, r1 - strb r0, [r5] - ldr r0, _0809B91C @ =0x00002686 - adds r2, r6, r0 - movs r0, 0x39 - strh r0, [r2] - ldr r0, _0809B920 @ =0x00002688 - adds r1, r6, r0 - ldr r0, _0809B924 @ =0x00000123 - strh r0, [r1] - ldr r0, _0809B928 @ =0x0000268a - adds r1, r6, r0 - ldr r0, _0809B92C @ =0x00000163 - strh r0, [r1] - ldr r1, _0809B908 @ =0x00002618 - adds r0, r6, r1 - movs r1, 0x50 - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - movs r2, 0x1 - ands r1, r2 - strb r1, [r4] - lsrs r0, 17 - movs r1, 0x1 - ands r0, r1 - strb r0, [r5] - ldrh r0, [r4] - cmp r0, 0 - beq _0809B934 - ldr r2, _0809B930 @ =0x0000267d - adds r1, r6, r2 - movs r0, 0 - strb r0, [r1] - b _0809B940 - .align 2, 0 -_0809B8FC: .4byte gPokemonStorage -_0809B900: .4byte gUnknown_020384E5 -_0809B904: .4byte gPokemonStorageSystemPtr -_0809B908: .4byte 0x00002618 -_0809B90C: .4byte 0x00002682 -_0809B910: .4byte 0x00002683 -_0809B914: .4byte 0x0000267e -_0809B918: .4byte 0x0000267f -_0809B91C: .4byte 0x00002686 -_0809B920: .4byte 0x00002688 -_0809B924: .4byte 0x00000123 -_0809B928: .4byte 0x0000268a -_0809B92C: .4byte 0x00000163 -_0809B930: .4byte 0x0000267d -_0809B934: - ldr r2, _0809B954 @ =0x0000267d - adds r0, r6, r2 - strb r1, [r0] - subs r2, 0x1 - adds r0, r6, r2 - strb r1, [r0] -_0809B940: - ldr r0, _0809B958 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809B95C @ =0x00002684 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0809B954: .4byte 0x0000267d -_0809B958: .4byte gPokemonStorageSystemPtr -_0809B95C: .4byte 0x00002684 - thumb_func_end sub_809B7D4 - thumb_func_start sub_809B960 sub_809B960: @ 809B960 push {r4-r7,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 7960213ae..b0aa8cb47 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -183,7 +183,16 @@ struct PokemonStorageSystemData { struct UnkPSSStruct_2002370 unk_2370; struct Pokemon unk_25b4; struct Pokemon unk_2618; - u8 filler_267c[0x10]; + s8 unk_267c; + u8 unk_267d; + u8 unk_267e; + u8 unk_267f; + u8 unk_2680; + u8 unk_2681; + s8 unk_2682; + s8 unk_2683; + u16 unk_2684; + u16 unk_2686[3]; u8 unk_268c; u8 unk_268d; u8 unk_268e; @@ -206,6 +215,7 @@ extern struct UnkPSSStruct_2002370 *gUnknown_02038478; extern struct PokemonStorageSystemData *const gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; +s16 GetIndexOfFirstEmptySpaceInBoxN(u8 boxId); u8 CountPokemonInBoxN(u8 boxId); void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3); void sub_809634C(u8 curBox); @@ -219,16 +229,22 @@ void ResetPSSMonIconSprites(void); void SpawnBoxIconSprites(u8 boxId); u8 get_preferred_box(void); void sub_8098BF0(void); +void sub_8098D20(u8 monId); bool8 sub_80990AC(void); void sub_8099200(bool8 a0); void sub_8099310(void); bool8 sub_8099374(void); +void sub_8099480(void); void sub_80994A8(s16 a0); +void sub_8099520(u8 a0); void sub_809954C(void); void sub_8099584(u8 a0, u8 a1); void sub_809960C(u8 a0, u8 a1); void sub_80996B0(u8 a0, u8 a1); bool8 sub_809971C(void); +void sub_809981C(u8 mode, u8 idx); +bool8 sub_80998D8(void); +void sub_8099920(void); void sub_8099958(void); bool8 sub_8099990(void); struct Sprite *sub_809A9A0(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority); diff --git a/src/pokemon/pokemon_2.c b/src/pokemon/pokemon_2.c index b941ed2ab..7fd1aa7b2 100644 --- a/src/pokemon/pokemon_2.c +++ b/src/pokemon/pokemon_2.c @@ -1,5 +1,6 @@ #include "global.h" #include "constants/hold_effects.h" +#include "constants/moves.h" #include "battle.h" #include "battle_util.h" #include "data2.h" @@ -569,7 +570,7 @@ u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data) u16 *moves = (u16 *)data; s32 i = 0; - while (moves[i] != 355) + while (moves[i] != NUM_MOVES) { u16 move = moves[i]; if (substruct1->moves[0] == move diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 73d71fa0e..a0a6fa145 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -1,8 +1,10 @@ // Includes #include "global.h" +#include "constants/moves.h" #include "constants/species.h" #include "palette.h" +#include "string_util.h" #include "text.h" #include "menu.h" #include "pokemon_storage_system.h" @@ -1602,3 +1604,120 @@ void diegohint1(u8 a0, u8 a1) gUnknown_020384E7 = a0; gUnknown_020384E8 = a1; } + +bool8 sub_809B62C(u8 boxId) +{ + s16 monIdx = GetIndexOfFirstEmptySpaceInBoxN(boxId); + if (monIdx == -1) + return FALSE; + if (gUnknown_020384E6) + { + diegohint2(boxId, monIdx); + sub_8099480(); + gUnknown_020384E6 = 0; + } + else + { + sub_809B44C(14, gUnknown_020384E5); + diegohint2(boxId, monIdx); + sub_8099520(gUnknown_020384E5); + } + if (boxId == get_preferred_box()) + sub_8098D20(monIdx); + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 1); + return TRUE; +} + +void sub_809B6BC(void) +{ + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 0); + sub_809BF74(); +} + +void sub_809B6DC(void) +{ + u8 mode; + + if (gUnknown_020384E6) + mode = 2; + else if (gUnknown_020384E4 == 1) + mode = 0; + else + mode = 1; + sub_809981C(mode, gUnknown_020384E5); + StringCopy(gPokemonStorageSystemPtr->unk_26e4, gPokemonStorageSystemPtr->unk_11fa); +} + +bool8 sub_809B734(void) +{ + if (!sub_80998D8()) + { + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 0); + return FALSE; + } + return TRUE; +} + +void sub_809B760(void) +{ + sub_8099920(); + if (gUnknown_020384E6) + gUnknown_020384E6 = 0; + else + { + u8 boxId; + if (gUnknown_020384E4 == 1) + boxId = 14; + else + boxId = get_preferred_box(); + sub_809B548(boxId, gUnknown_020384E5); + } + sub_809BF74(); +} + +void sub_809B7AC(void) +{ + if (gUnknown_020384E6) + StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 3); +} + +void sub_809B7D4(void) +{ + u16 knownMoves; + if (gUnknown_020384E6) + { + gPokemonStorageSystemPtr->unk_2618 = gPokemonStorageSystemPtr->unk_25b4; + gPokemonStorageSystemPtr->unk_2682 = -1; + gPokemonStorageSystemPtr->unk_2683 = -1; + } + else + { + if (gUnknown_020384E4 == 1) + { + gPokemonStorageSystemPtr->unk_2618 = gPlayerParty[gUnknown_020384E5]; + gPokemonStorageSystemPtr->unk_2682 = 14; + } + else + { + ExpandBoxMon(gPokemonStorage.boxes[gPokemonStorage.currentBox] + gUnknown_020384E5, &gPokemonStorageSystemPtr->unk_2618); + gPokemonStorageSystemPtr->unk_2682 = gPokemonStorage.currentBox; + } + gPokemonStorageSystemPtr->unk_2683 = gUnknown_020384E5; + } + gPokemonStorageSystemPtr->unk_267e = 0; + gPokemonStorageSystemPtr->unk_267f = 0; + gPokemonStorageSystemPtr->unk_2686[0] = MOVE_SURF; + gPokemonStorageSystemPtr->unk_2686[1] = MOVE_DIVE; + gPokemonStorageSystemPtr->unk_2686[2] = NUM_MOVES; + knownMoves = GetMonData(&gPokemonStorageSystemPtr->unk_2618, MON_DATA_KNOWN_MOVES, gPokemonStorageSystemPtr->unk_2686); + gPokemonStorageSystemPtr->unk_267e = knownMoves & 1; + gPokemonStorageSystemPtr->unk_267f = (knownMoves >> 1) & 1; + if (gPokemonStorageSystemPtr->unk_267e || gPokemonStorageSystemPtr->unk_267f) + gPokemonStorageSystemPtr->unk_267d = 0; + else + { + gPokemonStorageSystemPtr->unk_267d = 1; + gPokemonStorageSystemPtr->unk_267c = 1; + } + gPokemonStorageSystemPtr->unk_2684 = 0; +} -- cgit v1.2.3 From 7a2eef97c35e4672bd17bfca86a6ea19d22a3eba Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 20:34:56 -0500 Subject: sub_809B960 --- asm/pokemon_storage_system.s | 277 --------------------------------- include/pokemon_storage_system.h | 6 +- src/pokemon/pokemon_storage_system_4.c | 65 ++++++++ 3 files changed, 68 insertions(+), 280 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 7fa65b32a..d8305b190 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,283 +5,6 @@ .text - thumb_func_start sub_809B960 -sub_809B960: @ 809B960 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _0809B988 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r3, _0809B98C @ =0x0000267d - adds r1, r2, r3 - ldrb r1, [r1] - mov r12, r0 - cmp r1, 0 - beq _0809B994 - ldr r7, _0809B990 @ =0x0000267c - adds r0, r2, r7 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - b _0809BB5C - .align 2, 0 -_0809B988: .4byte gPokemonStorageSystemPtr -_0809B98C: .4byte 0x0000267d -_0809B990: .4byte 0x0000267c -_0809B994: - ldr r1, _0809B9A4 @ =0x00002684 - adds r0, r2, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _0809B9A8 - cmp r0, 0x1 - beq _0809BA84 - b _0809BB58 - .align 2, 0 -_0809B9A4: .4byte 0x00002684 -_0809B9A8: - movs r5, 0 - movs r6, 0 -_0809B9AC: - mov r2, r12 - ldr r4, [r2] - ldr r3, _0809BA28 @ =0x00002682 - adds r0, r4, r3 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0xE - bne _0809B9CC - ldr r7, _0809BA2C @ =0x00002683 - adds r0, r4, r7 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, r5 - beq _0809BA02 -_0809B9CC: - movs r0, 0x64 - muls r0, r5 - ldr r1, _0809BA30 @ =gPlayerParty - adds r0, r1 - ldr r1, _0809BA34 @ =0x00002686 - adds r2, r4, r1 - movs r1, 0x50 - bl GetMonData - lsls r0, 16 - lsrs r3, r0, 16 - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0809B9F0 - ldr r2, _0809BA38 @ =0x0000267e - adds r0, r4, r2 - strb r6, [r0] -_0809B9F0: - movs r0, 0x2 - ands r3, r0 - ldr r7, _0809BA3C @ =gPokemonStorageSystemPtr - mov r12, r7 - cmp r3, 0 - beq _0809BA02 - ldr r1, _0809BA40 @ =0x0000267f - adds r0, r4, r1 - strb r6, [r0] -_0809BA02: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _0809B9AC - mov r3, r12 - ldr r2, [r3] - ldr r7, _0809BA38 @ =0x0000267e - adds r0, r2, r7 - ldrh r0, [r0] - cmp r0, 0 - bne _0809BA4C - ldr r1, _0809BA44 @ =0x0000267d - adds r0, r2, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r3, _0809BA48 @ =0x0000267c - b _0809BB54 - .align 2, 0 -_0809BA28: .4byte 0x00002682 -_0809BA2C: .4byte 0x00002683 -_0809BA30: .4byte gPlayerParty -_0809BA34: .4byte 0x00002686 -_0809BA38: .4byte 0x0000267e -_0809BA3C: .4byte gPokemonStorageSystemPtr -_0809BA40: .4byte 0x0000267f -_0809BA44: .4byte 0x0000267d -_0809BA48: .4byte 0x0000267c -_0809BA4C: - movs r7, 0x9A - lsls r7, 6 - adds r0, r2, r7 - movs r1, 0 - strb r1, [r0] - ldr r3, _0809BA68 @ =0x00002681 - adds r0, r2, r3 - strb r1, [r0] - adds r7, 0x4 - adds r1, r2, r7 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0809BB58 - .align 2, 0 -_0809BA68: .4byte 0x00002681 -_0809BA6C: - ldr r1, _0809BA7C @ =0x0000267d - adds r0, r2, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r7, _0809BA80 @ =0x0000267c - adds r0, r2, r7 - strb r3, [r0] - b _0809BB3C - .align 2, 0 -_0809BA7C: .4byte 0x0000267d -_0809BA80: .4byte 0x0000267c -_0809BA84: - movs r5, 0 - mov r9, r12 - adds r4, r2, 0 - movs r0, 0x9A - lsls r0, 6 - adds r6, r4, r0 - ldr r1, _0809BB6C @ =0x0000267f - adds r1, r4 - mov r8, r1 - ldr r2, _0809BB70 @ =0x0000ffff - mov r10, r2 -_0809BA9A: - movs r0, 0 - ldrsb r0, [r6, r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r3, _0809BB74 @ =0x00002681 - adds r1, r4, r3 - movs r2, 0 - ldrsb r2, [r1, r2] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - ldr r2, _0809BB78 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - movs r1, 0x50 - ldr r7, _0809BB7C @ =0x00002686 - adds r2, r4, r7 - bl GetBoxMonData - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - beq _0809BB00 - ldr r1, _0809BB80 @ =0x00002682 - adds r0, r4, r1 - ldrh r0, [r0] - ldrh r2, [r6] - mov r1, r10 - ands r1, r0 - mov r0, r10 - ands r0, r2 - cmp r1, r0 - beq _0809BB00 - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0809BAF2 - ldr r2, _0809BB84 @ =0x0000267e - adds r1, r4, r2 - movs r0, 0 - strb r0, [r1] -_0809BAF2: - movs r0, 0x2 - ands r3, r0 - cmp r3, 0 - beq _0809BB00 - movs r0, 0 - mov r3, r8 - strb r0, [r3] -_0809BB00: - mov r7, r9 - ldr r2, [r7] - ldr r0, _0809BB74 @ =0x00002681 - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - movs r3, 0 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - ldr r7, _0809BB88 @ =gPokemonStorageSystemPtr - mov r12, r7 - cmp r0, 0x1D - ble _0809BB32 - strb r3, [r1] - movs r0, 0x9A - lsls r0, 6 - adds r1, r2, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0xD - bgt _0809BA6C -_0809BB32: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x4 - bls _0809BA9A -_0809BB3C: - mov r1, r12 - ldr r2, [r1] - ldr r3, _0809BB84 @ =0x0000267e - adds r0, r2, r3 - ldrh r0, [r0] - cmp r0, 0 - bne _0809BB58 - ldr r7, _0809BB8C @ =0x0000267d - adds r0, r2, r7 - movs r1, 0x1 - strb r1, [r0] - subs r3, 0x2 -_0809BB54: - adds r0, r2, r3 - strb r1, [r0] -_0809BB58: - movs r0, 0x1 - negs r0, r0 -_0809BB5C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0809BB6C: .4byte 0x0000267f -_0809BB70: .4byte 0x0000ffff -_0809BB74: .4byte 0x00002681 -_0809BB78: .4byte gPokemonStorage + 0x4 -_0809BB7C: .4byte 0x00002686 -_0809BB80: .4byte 0x00002682 -_0809BB84: .4byte 0x0000267e -_0809BB88: .4byte gPokemonStorageSystemPtr -_0809BB8C: .4byte 0x0000267d - thumb_func_end sub_809B960 - thumb_func_start sub_809BB90 sub_809BB90: @ 809BB90 push {lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index b0aa8cb47..8e50cc8d0 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -183,12 +183,12 @@ struct PokemonStorageSystemData { struct UnkPSSStruct_2002370 unk_2370; struct Pokemon unk_25b4; struct Pokemon unk_2618; - s8 unk_267c; + u8 unk_267c; u8 unk_267d; u8 unk_267e; u8 unk_267f; - u8 unk_2680; - u8 unk_2681; + s8 unk_2680; + s8 unk_2681; s8 unk_2682; s8 unk_2683; u16 unk_2684; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index a0a6fa145..2469d42b1 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -1721,3 +1721,68 @@ void sub_809B7D4(void) } gPokemonStorageSystemPtr->unk_2684 = 0; } + +s8 sub_809B960(void) +{ + u16 i; + u16 knownMoves; + + if (gPokemonStorageSystemPtr->unk_267d) + return gPokemonStorageSystemPtr->unk_267c; + switch (gPokemonStorageSystemPtr->unk_2684) + { + case 0: + for (i = 0; i < PARTY_SIZE; i++) + { + if (gPokemonStorageSystemPtr->unk_2682 != 14 || gPokemonStorageSystemPtr->unk_2683 != i) + { + knownMoves = GetMonData(gPlayerParty + i, MON_DATA_KNOWN_MOVES, gPokemonStorageSystemPtr->unk_2686); + if (knownMoves & 1) + gPokemonStorageSystemPtr->unk_267e = 0; + if (knownMoves & 2) + gPokemonStorageSystemPtr->unk_267f = 0; + } + } + if (gPokemonStorageSystemPtr->unk_267e == 0 && gPokemonStorageSystemPtr->unk_267f == 0) + { + gPokemonStorageSystemPtr->unk_267d = 1; + gPokemonStorageSystemPtr->unk_267c = 1; + } + else + { + gPokemonStorageSystemPtr->unk_2680 = 0; + gPokemonStorageSystemPtr->unk_2681 = 0; + gPokemonStorageSystemPtr->unk_2684++; + } + break; + case 1: + for (i = 0; i < 5; i++) + { + knownMoves = GetBoxMonData(gPokemonStorage.boxes[gPokemonStorageSystemPtr->unk_2680] + gPokemonStorageSystemPtr->unk_2681, MON_DATA_KNOWN_MOVES, gPokemonStorageSystemPtr->unk_2686); + if (knownMoves && (gPokemonStorageSystemPtr->unk_2682 != gPokemonStorageSystemPtr->unk_2680 || gPokemonStorageSystemPtr->unk_2683 != gPokemonStorageSystemPtr->unk_2681)) + { + if (knownMoves & 1) + gPokemonStorageSystemPtr->unk_267e = 0; + if (knownMoves & 2) + gPokemonStorageSystemPtr->unk_267f = 0; + } + if (++gPokemonStorageSystemPtr->unk_2681 >= 30) + { + gPokemonStorageSystemPtr->unk_2681 = 0; + if (++gPokemonStorageSystemPtr->unk_2680 >= 14) + { + gPokemonStorageSystemPtr->unk_267d = 1; + gPokemonStorageSystemPtr->unk_267c = 0; + break; + } + } + } + if (gPokemonStorageSystemPtr->unk_267e == 0 && gPokemonStorageSystemPtr->unk_267f == 0) + { + gPokemonStorageSystemPtr->unk_267d = 1; + gPokemonStorageSystemPtr->unk_267c = 1; + } + break; + } + return -1; +} -- cgit v1.2.3 From 102515325993caef0d57082cd7d8db69335b665b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 21:11:01 -0500 Subject: through party_compaction --- asm/pokemon_storage_system.s | 284 --------------------------------- include/pokemon_storage_system.h | 8 +- src/pokemon/pokemon_storage_system_2.c | 2 +- src/pokemon/pokemon_storage_system_4.c | 75 +++++++++ 4 files changed, 82 insertions(+), 287 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index d8305b190..dc3c9a339 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,290 +5,6 @@ .text - thumb_func_start sub_809BB90 -sub_809BB90: @ 809BB90 - push {lr} - ldr r0, _0809BBB0 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809BBAA - ldr r0, _0809BBB4 @ =gUnknown_02038480 - ldr r1, _0809BBB8 @ =gPokemonStorageSystemPtr - ldr r1, [r1] - ldr r2, _0809BBBC @ =0x000025b4 - adds r1, r2 - movs r2, 0x64 - bl memcpy -_0809BBAA: - pop {r0} - bx r0 - .align 2, 0 -_0809BBB0: .4byte gUnknown_020384E6 -_0809BBB4: .4byte gUnknown_02038480 -_0809BBB8: .4byte gPokemonStorageSystemPtr -_0809BBBC: .4byte 0x000025b4 - thumb_func_end sub_809BB90 - - thumb_func_start sub_809BBC0 -sub_809BBC0: @ 809BBC0 - push {lr} - ldr r0, _0809BBE4 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809BC08 - ldr r0, _0809BBE8 @ =gUnknown_020384E7 - ldrb r0, [r0] - cmp r0, 0xE - bne _0809BBF8 - ldr r0, _0809BBEC @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809BBF0 @ =0x000025b4 - adds r0, r1 - ldr r1, _0809BBF4 @ =gUnknown_02038480 - movs r2, 0x64 - bl memcpy - b _0809BC08 - .align 2, 0 -_0809BBE4: .4byte gUnknown_020384E6 -_0809BBE8: .4byte gUnknown_020384E7 -_0809BBEC: .4byte gPokemonStorageSystemPtr -_0809BBF0: .4byte 0x000025b4 -_0809BBF4: .4byte gUnknown_02038480 -_0809BBF8: - ldr r0, _0809BC0C @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldr r1, _0809BC10 @ =0x000025b4 - adds r0, r1 - ldr r1, _0809BC14 @ =gUnknown_02038480 - movs r2, 0x50 - bl memcpy -_0809BC08: - pop {r0} - bx r0 - .align 2, 0 -_0809BC0C: .4byte gPokemonStorageSystemPtr -_0809BC10: .4byte 0x000025b4 -_0809BC14: .4byte gUnknown_02038480 - thumb_func_end sub_809BBC0 - - thumb_func_start sub_809BC18 -sub_809BC18: @ 809BC18 - push {r4,r5,lr} - ldr r0, _0809BC48 @ =gUnknown_020384E6 - ldrb r5, [r0] - cmp r5, 0 - beq _0809BC64 - bl sub_809BB90 - ldr r0, _0809BC4C @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r0, _0809BC50 @ =0x00002690 - adds r1, r2, r0 - ldr r0, _0809BC54 @ =gUnknown_02038480 - str r0, [r1] - ldr r1, _0809BC58 @ =0x0000268d - adds r0, r2, r1 - movs r1, 0 - strb r1, [r0] - ldr r3, _0809BC5C @ =0x0000268c - adds r0, r2, r3 - strb r1, [r0] - ldr r0, _0809BC60 @ =0x0000268e - adds r2, r0 - strb r1, [r2] - b _0809BCF2 - .align 2, 0 -_0809BC48: .4byte gUnknown_020384E6 -_0809BC4C: .4byte gPokemonStorageSystemPtr -_0809BC50: .4byte 0x00002690 -_0809BC54: .4byte gUnknown_02038480 -_0809BC58: .4byte 0x0000268d -_0809BC5C: .4byte 0x0000268c -_0809BC60: .4byte 0x0000268e -_0809BC64: - ldr r0, _0809BC9C @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809BCBC - ldr r0, _0809BCA0 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r2, _0809BCA4 @ =0x00002690 - adds r1, r4, r2 - ldr r0, _0809BCA8 @ =gPlayerParty - str r0, [r1] - ldr r0, _0809BCAC @ =gUnknown_020384E5 - ldrb r1, [r0] - ldr r3, _0809BCB0 @ =0x0000268d - adds r0, r4, r3 - strb r1, [r0] - bl StorageSystemGetPartySize - subs r0, 0x1 - ldr r2, _0809BCB4 @ =0x0000268c - adds r1, r4, r2 - strb r0, [r1] - ldr r3, _0809BCB8 @ =0x0000268e - adds r4, r3 - strb r5, [r4] - b _0809BCF2 - .align 2, 0 -_0809BC9C: .4byte gUnknown_020384E4 -_0809BCA0: .4byte gPokemonStorageSystemPtr -_0809BCA4: .4byte 0x00002690 -_0809BCA8: .4byte gPlayerParty -_0809BCAC: .4byte gUnknown_020384E5 -_0809BCB0: .4byte 0x0000268d -_0809BCB4: .4byte 0x0000268c -_0809BCB8: .4byte 0x0000268e -_0809BCBC: - ldr r0, _0809BCF8 @ =gPokemonStorageSystemPtr - ldr r3, [r0] - ldr r0, _0809BCFC @ =0x00002690 - adds r4, r3, r0 - ldr r2, _0809BD00 @ =gPokemonStorage - ldrb r0, [r2] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - adds r2, 0x4 - adds r0, r2 - str r0, [r4] - ldr r0, _0809BD04 @ =gUnknown_020384E5 - ldrb r1, [r0] - ldr r2, _0809BD08 @ =0x0000268d - adds r0, r3, r2 - strb r1, [r0] - ldr r0, _0809BD0C @ =0x0000268c - adds r1, r3, r0 - movs r0, 0x1D - strb r0, [r1] - ldr r1, _0809BD10 @ =0x0000268e - adds r3, r1 - movs r0, 0x5 - strb r0, [r3] -_0809BCF2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809BCF8: .4byte gPokemonStorageSystemPtr -_0809BCFC: .4byte 0x00002690 -_0809BD00: .4byte gPokemonStorage -_0809BD04: .4byte gUnknown_020384E5 -_0809BD08: .4byte 0x0000268d -_0809BD0C: .4byte 0x0000268c -_0809BD10: .4byte 0x0000268e - thumb_func_end sub_809BC18 - - thumb_func_start sub_809BD14 -sub_809BD14: @ 809BD14 - push {lr} - ldr r0, _0809BD24 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809BD28 - bl sub_809BBC0 - b _0809BD30 - .align 2, 0 -_0809BD24: .4byte gUnknown_020384E6 -_0809BD28: - ldr r0, _0809BD34 @ =gUnknown_020384E5 - ldr r1, _0809BD38 @ =gSharedMem + 0x18000 - ldrb r1, [r1, 0x9] - strb r1, [r0] -_0809BD30: - pop {r0} - bx r0 - .align 2, 0 -_0809BD34: .4byte gUnknown_020384E5 -_0809BD38: .4byte gSharedMem + 0x18000 - thumb_func_end sub_809BD14 - - thumb_func_start party_compaction -party_compaction: @ 809BD3C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r7, _0809BD88 @ =0x0000ffff - movs r6, 0 - movs r5, 0 - movs r0, 0x64 - mov r9, r0 - ldr r1, _0809BD8C @ =gPlayerParty - mov r8, r1 - subs r0, 0x65 - mov r10, r0 -_0809BD58: - mov r0, r9 - muls r0, r6 - mov r1, r8 - adds r4, r0, r1 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - cmp r0, 0 - beq _0809BD90 - cmp r6, r5 - beq _0809BD80 - mov r0, r9 - muls r0, r5 - add r0, r8 - adds r1, r4, 0 - movs r2, 0x64 - bl memcpy -_0809BD80: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - b _0809BD9A - .align 2, 0 -_0809BD88: .4byte 0x0000ffff -_0809BD8C: .4byte gPlayerParty -_0809BD90: - lsls r0, r7, 16 - asrs r0, 16 - cmp r0, r10 - bne _0809BD9A - adds r7, r6, 0 -_0809BD9A: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x5 - bls _0809BD58 - lsls r7, 16 - cmp r5, 0x5 - bhi _0809BDC2 - movs r6, 0x64 - ldr r4, _0809BDD4 @ =gPlayerParty -_0809BDAE: - adds r0, r5, 0 - muls r0, r6 - adds r0, r4 - bl ZeroMonData - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x5 - bls _0809BDAE -_0809BDC2: - asrs r0, r7, 16 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0809BDD4: .4byte gPlayerParty - thumb_func_end party_compaction - thumb_func_start sub_809BDD8 sub_809BDD8: @ 809BDD8 push {r4,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 8e50cc8d0..f8d288ff0 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -196,7 +196,10 @@ struct PokemonStorageSystemData { u8 unk_268c; u8 unk_268d; u8 unk_268e; - struct Pokemon *unk_2690; + union { + struct Pokemon *pokemon; + struct BoxPokemon *box; + } unk_2690; u8 unk_2694[18]; u8 unk_26a6[62]; u8 unk_26e4[0x16]; @@ -215,6 +218,7 @@ extern struct UnkPSSStruct_2002370 *gUnknown_02038478; extern struct PokemonStorageSystemData *const gPokemonStorageSystemPtr; extern u8 *const gUnknown_083B6DB8; +u8 StorageSystemGetPartySize(void); s16 GetIndexOfFirstEmptySpaceInBoxN(u8 boxId); u8 CountPokemonInBoxN(u8 boxId); void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3); @@ -277,7 +281,7 @@ void sub_809BB90(void); void sub_809BBC0(void); void sub_809BC18(void); void sub_809BD14(void); -void party_compaction(void); +s16 party_compaction(void); void sub_809BDD8(u8 markings); bool8 sub_809BE80(void); bool8 sub_809BEBC(void); diff --git a/src/pokemon/pokemon_storage_system_2.c b/src/pokemon/pokemon_storage_system_2.c index 4657ed158..512bde5db 100644 --- a/src/pokemon/pokemon_storage_system_2.c +++ b/src/pokemon/pokemon_storage_system_2.c @@ -343,7 +343,7 @@ void sub_8096B5C(void) switch (gPokemonStorageSystemPtr->unk_0006) { case 0: - ShowPokemonSummaryScreen(gPokemonStorageSystemPtr->unk_2690, gPokemonStorageSystemPtr->unk_268d, gPokemonStorageSystemPtr->unk_268c, sub_80969A0, gPokemonStorageSystemPtr->unk_268e); + ShowPokemonSummaryScreen(gPokemonStorageSystemPtr->unk_2690.pokemon, gPokemonStorageSystemPtr->unk_268d, gPokemonStorageSystemPtr->unk_268c, sub_80969A0, gPokemonStorageSystemPtr->unk_268e); break; case 1: DoNamingScreen(1, gPokemonStorage.boxNames[gPokemonStorage.currentBox], 0, 0, 0, sub_80969A0); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 2469d42b1..40de7d634 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -1,12 +1,14 @@ // Includes #include "global.h" +#include "ewram.h" #include "constants/moves.h" #include "constants/species.h" #include "palette.h" #include "string_util.h" #include "text.h" #include "menu.h" +#include "pokemon_summary_screen.h" #include "pokemon_storage_system.h" // Static type declarations @@ -1786,3 +1788,76 @@ s8 sub_809B960(void) } return -1; } + +void sub_809BB90(void) +{ + if (gUnknown_020384E6) + gUnknown_02038480 = gPokemonStorageSystemPtr->unk_25b4; +} + +void sub_809BBC0(void) +{ + if (gUnknown_020384E6) + { + if (gUnknown_020384E7 == 14) + gPokemonStorageSystemPtr->unk_25b4 = gUnknown_02038480; + else + gPokemonStorageSystemPtr->unk_25b4.box = gUnknown_02038480.box; + } +} + +void sub_809BC18(void) +{ + if (gUnknown_020384E6) + { + sub_809BB90(); + gPokemonStorageSystemPtr->unk_2690.pokemon = &gUnknown_02038480; + gPokemonStorageSystemPtr->unk_268d = 0; + gPokemonStorageSystemPtr->unk_268c = 0; + gPokemonStorageSystemPtr->unk_268e = 0; + } + else if (gUnknown_020384E4 == 1) + { + gPokemonStorageSystemPtr->unk_2690.pokemon = gPlayerParty; + gPokemonStorageSystemPtr->unk_268d = gUnknown_020384E5; + gPokemonStorageSystemPtr->unk_268c = StorageSystemGetPartySize() - 1; + gPokemonStorageSystemPtr->unk_268e = 0; + } + else + { + gPokemonStorageSystemPtr->unk_2690.box = gPokemonStorage.boxes[gPokemonStorage.currentBox]; + gPokemonStorageSystemPtr->unk_268d = gUnknown_020384E5; + gPokemonStorageSystemPtr->unk_268c = 30 - 1; + gPokemonStorageSystemPtr->unk_268e = 5; + } +} + +void sub_809BD14(void) +{ + if (gUnknown_020384E6) + sub_809BBC0(); + else + gUnknown_020384E5 = pssData.monIndex; +} + +s16 party_compaction(void) +{ + s16 retVal = -1; + u16 i; + u16 last; + + for (i = 0, last = 0; i < PARTY_SIZE; i++) + { + if ((u16)GetMonData(gPlayerParty + i, MON_DATA_SPECIES) != SPECIES_NONE) + { + if (i != last) + gPlayerParty[last] = gPlayerParty[i]; + last++; + } + else if (retVal == -1) + retVal = i; + } + for (; last < PARTY_SIZE; last++) + ZeroMonData(gPlayerParty + last); + return retVal; +} -- cgit v1.2.3 From 40d8fee1d0badb81120cad7a5aabfd8f5b0031d8 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 21:59:56 -0500 Subject: through sub_809BF48 --- asm/pokemon_storage_system.s | 216 --------------------------------- include/pokemon_storage_system.h | 1 + src/pokemon/pokemon_storage_system_4.c | 68 +++++++++-- 3 files changed, 60 insertions(+), 225 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index dc3c9a339..e2090bee9 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,222 +5,6 @@ .text - thumb_func_start sub_809BDD8 -sub_809BDD8: @ 809BDD8 - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r1, sp - strb r0, [r1] - ldr r1, _0809BE04 @ =gPokemonStorageSystemPtr - ldr r2, [r1] - ldr r3, _0809BE08 @ =0x000011f7 - adds r1, r2, r3 - strb r0, [r1] - ldr r0, _0809BE0C @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809BE14 - ldr r1, _0809BE10 @ =0x000025b4 - adds r0, r2, r1 - movs r1, 0x8 - mov r2, sp - bl SetMonData - b _0809BE68 - .align 2, 0 -_0809BE04: .4byte gPokemonStorageSystemPtr -_0809BE08: .4byte 0x000011f7 -_0809BE0C: .4byte gUnknown_020384E6 -_0809BE10: .4byte 0x000025b4 -_0809BE14: - ldr r4, _0809BE70 @ =gUnknown_020384E4 - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x1 - bne _0809BE34 - ldr r0, _0809BE74 @ =gUnknown_020384E5 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0809BE78 @ =gPlayerParty - adds r0, r1 - movs r1, 0x8 - mov r2, sp - bl SetMonData -_0809BE34: - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - bne _0809BE68 - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, _0809BE74 @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - ldr r2, _0809BE7C @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - movs r1, 0x8 - mov r2, sp - bl SetBoxMonData -_0809BE68: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809BE70: .4byte gUnknown_020384E4 -_0809BE74: .4byte gUnknown_020384E5 -_0809BE78: .4byte gPlayerParty -_0809BE7C: .4byte gPokemonStorage + 0x4 - thumb_func_end sub_809BDD8 - - thumb_func_start sub_809BE80 -sub_809BE80: @ 809BE80 - push {lr} - ldr r0, _0809BEA8 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809BEB4 - ldr r0, _0809BEAC @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - bne _0809BEB4 - ldr r0, _0809BEB0 @ =gUnknown_020384E5 - ldrb r0, [r0] - bl CountAlivePartyMonsExceptOne - lsls r0, 24 - cmp r0, 0 - bne _0809BEB4 - movs r0, 0x1 - b _0809BEB6 - .align 2, 0 -_0809BEA8: .4byte gUnknown_020384E4 -_0809BEAC: .4byte gUnknown_020384E6 -_0809BEB0: .4byte gUnknown_020384E5 -_0809BEB4: - movs r0, 0 -_0809BEB6: - pop {r1} - bx r1 - thumb_func_end sub_809BE80 - - thumb_func_start sub_809BEBC -sub_809BEBC: @ 809BEBC - push {lr} - ldr r0, _0809BF00 @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809BF18 - ldr r0, _0809BF04 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809BEFC - ldr r0, _0809BF08 @ =gUnknown_020384E5 - ldrb r0, [r0] - bl CountAlivePartyMonsExceptOne - lsls r0, 24 - cmp r0, 0 - bne _0809BEFC - ldr r0, _0809BF0C @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r2, _0809BF10 @ =0x000011f9 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0809BF18 - ldr r2, _0809BF14 @ =0x000025b4 - adds r0, r1, r2 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0809BF18 -_0809BEFC: - movs r0, 0x1 - b _0809BF1A - .align 2, 0 -_0809BF00: .4byte gUnknown_020384E6 -_0809BF04: .4byte gUnknown_020384E4 -_0809BF08: .4byte gUnknown_020384E5 -_0809BF0C: .4byte gPokemonStorageSystemPtr -_0809BF10: .4byte 0x000011f9 -_0809BF14: .4byte 0x000025b4 -_0809BF18: - movs r0, 0 -_0809BF1A: - pop {r1} - bx r1 - thumb_func_end sub_809BEBC - - thumb_func_start sub_809BF20 -sub_809BF20: @ 809BF20 - ldr r0, _0809BF28 @ =gUnknown_020384E6 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0809BF28: .4byte gUnknown_020384E6 - thumb_func_end sub_809BF20 - - thumb_func_start sub_809BF2C -sub_809BF2C: @ 809BF2C - push {lr} - movs r1, 0 - ldr r0, _0809BF44 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x2 - bne _0809BF3E - movs r1, 0x1 -_0809BF3E: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809BF44: .4byte gUnknown_020384E4 - thumb_func_end sub_809BF2C - - thumb_func_start sub_809BF48 -sub_809BF48: @ 809BF48 - push {lr} - movs r1, 0 - ldr r0, _0809BF6C @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x3 - bne _0809BF66 - ldr r0, _0809BF70 @ =gUnknown_020384E5 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _0809BF66 - movs r1, 0x1 -_0809BF66: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_0809BF6C: .4byte gUnknown_020384E4 -_0809BF70: .4byte gUnknown_020384E5 - thumb_func_end sub_809BF48 - thumb_func_start sub_809BF74 sub_809BF74: @ 809BF74 push {r4,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index f8d288ff0..8dd51259c 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -220,6 +220,7 @@ extern u8 *const gUnknown_083B6DB8; u8 StorageSystemGetPartySize(void); s16 GetIndexOfFirstEmptySpaceInBoxN(u8 boxId); +u8 CountAlivePartyMonsExceptOne(u8 toSkip); u8 CountPokemonInBoxN(u8 boxId); void sub_8096264(struct UnkPSSStruct_2002370 *a0, u16 tileTag, u16 palTag, u8 a3); void sub_809634C(u8 curBox); diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 40de7d634..96e237d4f 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -25,7 +25,7 @@ struct WallpaperTable { EWRAM_DATA struct Pokemon gUnknown_02038480 = {}; EWRAM_DATA s8 gUnknown_020384E4 = 0; EWRAM_DATA s8 gUnknown_020384E5 = 0; -EWRAM_DATA u8 gUnknown_020384E6 = 0; +EWRAM_DATA bool8 gUnknown_020384E6 = FALSE; EWRAM_DATA u8 gUnknown_020384E7 = 0; EWRAM_DATA u8 gUnknown_020384E8 = 0; EWRAM_DATA u8 gUnknown_020384E9 = 0; @@ -1141,7 +1141,7 @@ void sub_809AA24(void) else gUnknown_020384E4 = 1; gUnknown_020384E5 = 0; - gUnknown_020384E6 = 0; + gUnknown_020384E6 = FALSE; gUnknown_020384E7 = 0; gUnknown_020384E8 = 0; gUnknown_020384E9 = 0; @@ -1315,7 +1315,7 @@ void sub_809AF18(u8 a0, u8 a1) { sub_809AD3C(a0, a1); sub_809AD94(); - if (gUnknown_020384E6 == 0) + if (!gUnknown_020384E6) StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 1); if (a0 == 1 && gUnknown_020384E4 != 1) { @@ -1337,7 +1337,7 @@ void sub_809AFB8(void) { gUnknown_020384E4 = gPokemonStorageSystemPtr->unk_11e0; gUnknown_020384E5 = gPokemonStorageSystemPtr->unk_11e1; - if (gUnknown_020384E6 == 0) + if (!gUnknown_020384E6) StartSpriteAnim(gPokemonStorageSystemPtr->unk_11c0, 0); sub_809BF74(); switch (gUnknown_020384E4) @@ -1359,7 +1359,7 @@ void sub_809AFB8(void) void sub_809B068(void) { u8 partyCount; - if (gUnknown_020384E6 == 0) + if (!gUnknown_020384E6) partyCount = 0; else { @@ -1534,7 +1534,7 @@ void sub_809B384(void) default: return; } - gUnknown_020384E6 = 1; + gUnknown_020384E6 = TRUE; } void sub_809B3E0(void) @@ -1554,7 +1554,7 @@ void sub_809B3E0(void) default: return; } - gUnknown_020384E6 = 0; + gUnknown_020384E6 = FALSE; } void sub_809B440(void) @@ -1616,7 +1616,7 @@ bool8 sub_809B62C(u8 boxId) { diegohint2(boxId, monIdx); sub_8099480(); - gUnknown_020384E6 = 0; + gUnknown_020384E6 = FALSE; } else { @@ -1664,7 +1664,7 @@ void sub_809B760(void) { sub_8099920(); if (gUnknown_020384E6) - gUnknown_020384E6 = 0; + gUnknown_020384E6 = FALSE; else { u8 boxId; @@ -1861,3 +1861,53 @@ s16 party_compaction(void) ZeroMonData(gPlayerParty + last); return retVal; } + +void sub_809BDD8(u8 markings) +{ + gPokemonStorageSystemPtr->unk_11f7 = markings; + if (gUnknown_020384E6) + SetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_MARKINGS, &markings); + else + { + if (gUnknown_020384E4 == 1) + SetMonData(gPlayerParty + gUnknown_020384E5, MON_DATA_MARKINGS, &markings); + if (gUnknown_020384E4 == 0) + SetBoxMonData(gPokemonStorage.boxes[get_preferred_box()] + gUnknown_020384E5, MON_DATA_MARKINGS, &markings); + } +} + +bool8 sub_809BE80(void) +{ + if (gUnknown_020384E4 == 1 && !gUnknown_020384E6 && CountAlivePartyMonsExceptOne(gUnknown_020384E5) == 0) + return TRUE; + return FALSE; +} + +bool8 sub_809BEBC(void) +{ + if (gUnknown_020384E6) + { + if (gUnknown_020384E4 == 1 && CountAlivePartyMonsExceptOne(gUnknown_020384E5) == 0) + { + if (gPokemonStorageSystemPtr->unk_11f9 || GetMonData(&gPokemonStorageSystemPtr->unk_25b4, MON_DATA_HP) == 0) + return FALSE; + } + return TRUE; + } + return FALSE; +} + +bool8 sub_809BF20(void) +{ + return gUnknown_020384E6; +} + +bool8 sub_809BF2C(void) +{ + return gUnknown_020384E4 == 2 ? TRUE : FALSE; +} + +bool8 sub_809BF48(void) +{ + return (gUnknown_020384E4 == 3 && gUnknown_020384E5 == 1) ? TRUE : FALSE; +} -- cgit v1.2.3 From 470c09225f4c058831c2226195af413204f5f03c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 22:08:46 -0500 Subject: through sub_809C028 --- asm/pokemon_storage_system.s | 110 --------------------------------- src/pokemon/pokemon_storage_system_4.c | 37 ++++++++++- 2 files changed, 35 insertions(+), 112 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index e2090bee9..854190e40 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,116 +5,6 @@ .text - thumb_func_start sub_809BF74 -sub_809BF74: @ 809BF74 - push {r4,lr} - ldr r0, _0809BFA8 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - movs r2, 0 - ldr r3, _0809BFAC @ =gUnknown_020384E6 - ldrb r0, [r3] - cmp r0, 0 - bne _0809BF86 - movs r2, 0x1 -_0809BF86: - ldr r4, _0809BFB0 @ =0x000011f6 - adds r0, r1, r4 - strb r2, [r0] - ldrb r0, [r3] - cmp r0, 0 - bne _0809C018 - ldr r0, _0809BFB4 @ =gUnknown_020384E4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - beq _0809BFBE - cmp r0, 0x1 - bgt _0809BFB8 - cmp r0, 0 - beq _0809BFEE - b _0809C018 - .align 2, 0 -_0809BFA8: .4byte gPokemonStorageSystemPtr -_0809BFAC: .4byte gUnknown_020384E6 -_0809BFB0: .4byte 0x000011f6 -_0809BFB4: .4byte gUnknown_020384E4 -_0809BFB8: - cmp r0, 0x3 - bgt _0809C018 - b _0809BFE4 -_0809BFBE: - ldr r1, _0809BFDC @ =gUnknown_020384E5 - movs r0, 0 - ldrsb r0, [r1, r0] - cmp r0, 0x5 - bgt _0809BFE4 - adds r1, r0, 0 - movs r0, 0x64 - muls r0, r1 - ldr r1, _0809BFE0 @ =gPlayerParty - adds r0, r1 - movs r1, 0 - bl sub_809C04C - b _0809C018 - .align 2, 0 -_0809BFDC: .4byte gUnknown_020384E5 -_0809BFE0: .4byte gPlayerParty -_0809BFE4: - movs r0, 0 - movs r1, 0x2 - bl sub_809C04C - b _0809C018 -_0809BFEE: - bl get_preferred_box - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 5 - ldr r1, _0809C020 @ =gUnknown_020384E5 - movs r2, 0 - ldrsb r2, [r1, r2] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - ldr r2, _0809C024 @ =gPokemonStorage + 0x4 - adds r1, r2 - adds r0, r1 - movs r1, 0x1 - bl sub_809C04C -_0809C018: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809C020: .4byte gUnknown_020384E5 -_0809C024: .4byte gPokemonStorage + 0x4 - thumb_func_end sub_809BF74 - - thumb_func_start sub_809C028 -sub_809C028: @ 809C028 - push {lr} - ldr r0, _0809C03C @ =gUnknown_020384E6 - ldrb r0, [r0] - cmp r0, 0 - beq _0809C044 - ldr r0, _0809C040 @ =gUnknown_02038480 - movs r1, 0 - bl sub_809C04C - b _0809C048 - .align 2, 0 -_0809C03C: .4byte gUnknown_020384E6 -_0809C040: .4byte gUnknown_02038480 -_0809C044: - bl sub_809BF74 -_0809C048: - pop {r0} - bx r0 - thumb_func_end sub_809C028 - thumb_func_start sub_809C04C sub_809C04C: @ 809C04C push {r4-r7,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index 96e237d4f..ada4b43bd 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -64,7 +64,7 @@ void diegohint1(u8 a0, u8 a1); bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); -void sub_809C04C(struct Pokemon *pokemon, u8 a1); +void sub_809C04C(struct BoxPokemon *pokemon, u8 a1); void sub_809CC04(void); // .rodata @@ -1602,7 +1602,7 @@ void diegohint1(u8 a0, u8 a1) ExpandBoxMon(gPokemonStorage.boxes[a0] + a1, &gPokemonStorageSystemPtr->unk_2618); diegohint2(a0, a1); gPokemonStorageSystemPtr->unk_25b4 = gPokemonStorageSystemPtr->unk_2618; - sub_809C04C(&gPokemonStorageSystemPtr->unk_25b4, 0); + sub_809C04C(&gPokemonStorageSystemPtr->unk_25b4.box, 0); gUnknown_020384E7 = a0; gUnknown_020384E8 = a1; } @@ -1911,3 +1911,36 @@ bool8 sub_809BF48(void) { return (gUnknown_020384E4 == 3 && gUnknown_020384E5 == 1) ? TRUE : FALSE; } + +void sub_809BF74(void) +{ + gPokemonStorageSystemPtr->unk_11f6 = gUnknown_020384E6 ? 0 : 1; + if (!gUnknown_020384E6) + { + switch (gUnknown_020384E4) + { + case 1: + if (gUnknown_020384E5 < PARTY_SIZE) + { + sub_809C04C(&gPlayerParty[gUnknown_020384E5].box, 0); + break; + } + // fallthrough + case 2: + case 3: + sub_809C04C(NULL, 2); + break; + case 0: + sub_809C04C(gPokemonStorage.boxes[get_preferred_box()] + gUnknown_020384E5, 1); + break; + } + } +} + +void sub_809C028(void) +{ + if (gUnknown_020384E6) + sub_809C04C(&gUnknown_02038480.box, 0); + else + sub_809BF74(); +} -- cgit v1.2.3 From c4bae7a571f5aea6785e108089e904f9dad67701 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Jan 2018 22:45:08 -0500 Subject: sub_809C04C --- asm/pokemon_storage_system.s | 472 --------------------------------- include/pokemon_storage_system.h | 2 +- src/pokemon/pokemon_storage_system_4.c | 163 +++++++++++- 3 files changed, 161 insertions(+), 476 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 854190e40..eb4a9650e 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,478 +5,6 @@ .text - thumb_func_start sub_809C04C -sub_809C04C: @ 809C04C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r7, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - str r0, [sp] - ldr r0, _0809C0FC @ =gPokemonStorageSystemPtr - ldr r6, [r0] - ldr r2, _0809C100 @ =0x000011f2 - adds r2, r6 - mov r8, r2 - mov r0, sp - ldrh r0, [r0] - strh r0, [r2] - cmp r1, 0 - bne _0809C120 - adds r0, r7, 0 - movs r1, 0x41 - bl GetMonData - ldr r2, _0809C104 @ =0x000011f0 - adds r1, r6, r2 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bne _0809C08C - b _0809C1EC -_0809C08C: - adds r0, r7, 0 - movs r1, 0x2D - bl GetMonData - ldr r2, _0809C108 @ =0x000011f9 - adds r1, r6, r2 - strb r0, [r1] - ldr r0, _0809C10C @ =0x000011fa - adds r4, r6, r0 - adds r0, r7, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - adds r0, r7, 0 - movs r1, 0x38 - bl GetMonData - ldr r2, _0809C110 @ =0x000011f8 - adds r1, r6, r2 - strb r0, [r1] - adds r0, r7, 0 - movs r1, 0x8 - bl GetMonData - ldr r2, _0809C114 @ =0x000011f7 - adds r1, r6, r2 - strb r0, [r1] - adds r0, r7, 0 - movs r1, 0 - bl GetMonData - ldr r2, _0809C118 @ =0x000011ec - adds r1, r6, r2 - str r0, [r1] - adds r0, r7, 0 - bl GetMonSpritePal - ldr r2, _0809C11C @ =0x000011e8 - adds r1, r6, r2 - str r0, [r1] - adds r0, r7, 0 - bl GetMonGender - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r7, 0 - movs r1, 0xC - bl GetMonData - b _0809C1B2 - .align 2, 0 -_0809C0FC: .4byte gPokemonStorageSystemPtr -_0809C100: .4byte 0x000011f2 -_0809C104: .4byte 0x000011f0 -_0809C108: .4byte 0x000011f9 -_0809C10C: .4byte 0x000011fa -_0809C110: .4byte 0x000011f8 -_0809C114: .4byte 0x000011f7 -_0809C118: .4byte 0x000011ec -_0809C11C: .4byte 0x000011e8 -_0809C120: - cmp r1, 0x1 - bne _0809C1D4 - adds r0, r7, 0 - movs r1, 0x41 - bl GetBoxMonData - ldr r2, _0809C1B8 @ =0x000011f0 - adds r5, r6, r2 - strh r0, [r5] - lsls r0, 16 - cmp r0, 0 - beq _0809C1EC - adds r0, r7, 0 - movs r1, 0x1 - bl GetBoxMonData - mov r9, r0 - adds r0, r7, 0 - movs r1, 0x2D - bl GetBoxMonData - ldr r2, _0809C1BC @ =0x000011f9 - adds r1, r6, r2 - strb r0, [r1] - ldr r0, _0809C1C0 @ =0x000011fa - adds r4, r6, r0 - adds r0, r7, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl GetBoxMonData - adds r0, r4, 0 - bl StringGetEnd10 - adds r0, r7, 0 - bl GetLevelFromBoxMonExp - ldr r2, _0809C1C4 @ =0x000011f8 - adds r1, r6, r2 - strb r0, [r1] - adds r0, r7, 0 - movs r1, 0x8 - bl GetBoxMonData - ldr r2, _0809C1C8 @ =0x000011f7 - adds r1, r6, r2 - strb r0, [r1] - adds r0, r7, 0 - movs r1, 0 - bl GetBoxMonData - adds r2, r0, 0 - ldr r0, _0809C1CC @ =0x000011ec - adds r4, r6, r0 - str r2, [r4] - ldrh r0, [r5] - mov r1, r9 - bl GetMonSpritePalFromOtIdPersonality - ldr r2, _0809C1D0 @ =0x000011e8 - adds r1, r6, r2 - str r0, [r1] - ldrh r0, [r5] - ldr r1, [r4] - bl GetGenderFromSpeciesAndPersonality - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r7, 0 - movs r1, 0xC - bl GetBoxMonData -_0809C1B2: - mov r1, r8 - strh r0, [r1] - b _0809C1DE - .align 2, 0 -_0809C1B8: .4byte 0x000011f0 -_0809C1BC: .4byte 0x000011f9 -_0809C1C0: .4byte 0x000011fa -_0809C1C4: .4byte 0x000011f8 -_0809C1C8: .4byte 0x000011f7 -_0809C1CC: .4byte 0x000011ec -_0809C1D0: .4byte 0x000011e8 -_0809C1D4: - ldr r2, _0809C220 @ =0x000011f0 - adds r0, r6, r2 - mov r1, sp - ldrh r1, [r1] - strh r1, [r0] -_0809C1DE: - ldr r0, _0809C224 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r2, _0809C220 @ =0x000011f0 - adds r0, r4, r2 - ldrh r1, [r0] - cmp r1, 0 - bne _0809C23C -_0809C1EC: - ldr r0, _0809C224 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r0, _0809C228 @ =0x000011fa - adds r2, r1, r0 - movs r0, 0xFF - strb r0, [r2] - ldr r0, _0809C22C @ =0x0000120f - adds r2, r1, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r2] - ldr r0, _0809C230 @ =0x00001234 - adds r2, r1, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r2] - ldr r0, _0809C234 @ =0x00001259 - adds r2, r1, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r2] - ldr r2, _0809C238 @ =0x0000127a - adds r1, r2 - strb r0, [r1] - b _0809C43E - .align 2, 0 -_0809C220: .4byte 0x000011f0 -_0809C224: .4byte gPokemonStorageSystemPtr -_0809C228: .4byte 0x000011fa -_0809C22C: .4byte 0x0000120f -_0809C230: .4byte 0x00001234 -_0809C234: .4byte 0x00001259 -_0809C238: .4byte 0x0000127a -_0809C23C: - ldr r2, _0809C28C @ =0x000011f9 - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0809C2A4 - ldr r0, _0809C290 @ =0x0000120f - adds r7, r4, r0 - movs r0, 0xFC - strb r0, [r7] - movs r0, 0x4 - strb r0, [r7, 0x1] - movs r0, 0xF - strb r0, [r7, 0x2] - movs r0, 0 - strb r0, [r7, 0x3] - movs r0, 0x1 - strb r0, [r7, 0x4] - ldr r1, _0809C294 @ =0x00001214 - adds r7, r4, r1 - adds r2, 0x1 - adds r1, r4, r2 - adds r0, r7, 0 - bl StringCopy - ldr r0, _0809C298 @ =0x00001234 - adds r1, r4, r0 - movs r0, 0xFF - strb r0, [r1] - ldr r2, _0809C29C @ =0x00001259 - adds r1, r4, r2 - movs r0, 0x1 - negs r0, r0 - strb r0, [r1] - ldr r0, _0809C2A0 @ =0x0000127a - adds r1, r4, r0 - movs r0, 0x1 - negs r0, r0 - strb r0, [r1] - b _0809C43E - .align 2, 0 -_0809C28C: .4byte 0x000011f9 -_0809C290: .4byte 0x0000120f -_0809C294: .4byte 0x00001214 -_0809C298: .4byte 0x00001234 -_0809C29C: .4byte 0x00001259 -_0809C2A0: .4byte 0x0000127a -_0809C2A4: - cmp r1, 0x20 - beq _0809C2AC - cmp r1, 0x1D - bne _0809C2B0 -_0809C2AC: - movs r1, 0xFF - str r1, [sp] -_0809C2B0: - ldr r0, _0809C388 @ =gPokemonStorageSystemPtr - ldr r4, [r0] - ldr r2, _0809C38C @ =0x0000120f - adds r7, r4, r2 - movs r0, 0xFC - mov r9, r0 - strb r0, [r7] - movs r1, 0x4 - mov r8, r1 - strb r1, [r7, 0x1] - movs r2, 0xF - strb r2, [r7, 0x2] - movs r0, 0 - strb r0, [r7, 0x3] - movs r6, 0x1 - strb r6, [r7, 0x4] - ldr r1, _0809C390 @ =0x00001214 - adds r7, r4, r1 - ldr r2, _0809C394 @ =0x000011fa - adds r1, r4, r2 - adds r0, r7, 0 - bl StringCopy - ldr r0, _0809C398 @ =0x00001234 - adds r7, r4, r0 - mov r1, r9 - strb r1, [r7] - mov r2, r8 - strb r2, [r7, 0x1] - movs r0, 0xF - strb r0, [r7, 0x2] - movs r1, 0 - strb r1, [r7, 0x3] - strb r6, [r7, 0x4] - mov r2, r9 - strb r2, [r7, 0x5] - movs r0, 0x13 - mov r10, r0 - strb r0, [r7, 0x6] - movs r1, 0x7 - strb r1, [r7, 0x7] - movs r0, 0xBA - strb r0, [r7, 0x8] - ldr r2, _0809C39C @ =0x0000123d - adds r7, r4, r2 - ldr r1, _0809C3A0 @ =0x000011f0 - adds r0, r4, r1 - ldrh r1, [r0] - movs r0, 0xB - muls r1, r0 - ldr r0, _0809C3A4 @ =gSpeciesNames - adds r1, r0 - adds r0, r7, 0 - bl StringCopy - adds r7, r0, 0 - mov r2, r9 - strb r2, [r7] - mov r0, r10 - strb r0, [r7, 0x1] - movs r0, 0x50 - strb r0, [r7, 0x2] - movs r0, 0xFF - strb r0, [r7, 0x3] - ldr r1, _0809C3A8 @ =0x00001259 - adds r7, r4, r1 - strb r2, [r7] - mov r2, r8 - strb r2, [r7, 0x1] - movs r0, 0xF - strb r0, [r7, 0x2] - movs r1, 0 - strb r1, [r7, 0x3] - strb r6, [r7, 0x4] - mov r2, r9 - strb r2, [r7, 0x5] - mov r0, r10 - strb r0, [r7, 0x6] - movs r6, 0x8 - strb r6, [r7, 0x7] - ldr r1, _0809C3AC @ =0x00001261 - adds r7, r4, r1 - movs r0, 0x34 - strb r0, [r7] - ldr r2, _0809C3B0 @ =0x00001262 - adds r7, r4, r2 - ldr r0, _0809C3B4 @ =0x000011f8 - adds r4, r0 - ldrb r1, [r4] - adds r0, r7, 0 - movs r2, 0x22 - movs r3, 0x1 - bl sub_8072C14 - adds r7, r0, 0 - mov r1, r9 - strb r1, [r7] - movs r0, 0x11 - strb r0, [r7, 0x1] - strb r6, [r7, 0x2] - adds r7, 0x3 - ldr r2, [sp] - cmp r2, 0 - beq _0809C3B8 - cmp r2, 0xFE - beq _0809C3D0 - b _0809C3EA - .align 2, 0 -_0809C388: .4byte gPokemonStorageSystemPtr -_0809C38C: .4byte 0x0000120f -_0809C390: .4byte 0x00001214 -_0809C394: .4byte 0x000011fa -_0809C398: .4byte 0x00001234 -_0809C39C: .4byte 0x0000123d -_0809C3A0: .4byte 0x000011f0 -_0809C3A4: .4byte gSpeciesNames -_0809C3A8: .4byte 0x00001259 -_0809C3AC: .4byte 0x00001261 -_0809C3B0: .4byte 0x00001262 -_0809C3B4: .4byte 0x000011f8 -_0809C3B8: - mov r0, r9 - strb r0, [r7] - mov r1, r8 - strb r1, [r7, 0x1] - strb r1, [r7, 0x2] - mov r2, sp - ldrb r2, [r2] - strb r2, [r7, 0x3] - movs r0, 0x5 - strb r0, [r7, 0x4] - movs r0, 0xB5 - b _0809C3E6 -_0809C3D0: - mov r0, r9 - strb r0, [r7] - mov r1, r8 - strb r1, [r7, 0x1] - movs r0, 0x6 - strb r0, [r7, 0x2] - movs r2, 0 - strb r2, [r7, 0x3] - movs r0, 0x7 - strb r0, [r7, 0x4] - movs r0, 0xB6 -_0809C3E6: - strb r0, [r7, 0x5] - adds r7, 0x6 -_0809C3EA: - movs r5, 0xFF - strb r5, [r7] - ldr r0, _0809C450 @ =gPokemonStorageSystemPtr - ldr r2, [r0] - ldr r1, _0809C454 @ =0x0000127a - adds r7, r2, r1 - ldr r0, _0809C458 @ =0x000011f2 - adds r3, r2, r0 - ldrh r0, [r3] - cmp r0, 0 - beq _0809C43C - movs r4, 0xFC - strb r4, [r7] - movs r1, 0x4 - strb r1, [r7, 0x1] - movs r0, 0xF - strb r0, [r7, 0x2] - movs r0, 0 - strb r0, [r7, 0x3] - movs r0, 0x1 - strb r0, [r7, 0x4] - ldr r0, _0809C45C @ =0x0000127f - adds r7, r2, r0 - strb r4, [r7] - movs r0, 0x6 - strb r0, [r7, 0x1] - strb r1, [r7, 0x2] - ldr r1, _0809C460 @ =0x00001282 - adds r7, r2, r1 - ldrh r0, [r3] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r7, 0 - bl StringCopy - adds r7, r0, 0 - strb r4, [r7] - movs r0, 0x7 - strb r0, [r7, 0x1] - adds r7, 0x2 -_0809C43C: - strb r5, [r7] -_0809C43E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809C450: .4byte gPokemonStorageSystemPtr -_0809C454: .4byte 0x0000127a -_0809C458: .4byte 0x000011f2 -_0809C45C: .4byte 0x0000127f -_0809C460: .4byte 0x00001282 - thumb_func_end sub_809C04C - thumb_func_start sub_809C464 sub_809C464: @ 809C464 push {r4-r7,lr} diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 8dd51259c..5319b7a2d 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -159,7 +159,7 @@ struct PokemonStorageSystemData { u8 unk_11e2; u8 unk_11e3; u8 filler_11e4[4]; - u8 *unk_11e8; + const u8 *unk_11e8; u32 unk_11ec; u16 unk_11f0; u16 unk_11f2; diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index ada4b43bd..eb5a6cb0b 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -2,12 +2,14 @@ // Includes #include "global.h" #include "ewram.h" +#include "data2.h" #include "constants/moves.h" #include "constants/species.h" #include "palette.h" #include "string_util.h" #include "text.h" #include "menu.h" +#include "item.h" #include "pokemon_summary_screen.h" #include "pokemon_storage_system.h" @@ -64,7 +66,7 @@ void diegohint1(u8 a0, u8 a1); bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); -void sub_809C04C(struct BoxPokemon *pokemon, u8 a1); +void sub_809C04C(void *pokemon, u8 a1); void sub_809CC04(void); // .rodata @@ -1602,7 +1604,7 @@ void diegohint1(u8 a0, u8 a1) ExpandBoxMon(gPokemonStorage.boxes[a0] + a1, &gPokemonStorageSystemPtr->unk_2618); diegohint2(a0, a1); gPokemonStorageSystemPtr->unk_25b4 = gPokemonStorageSystemPtr->unk_2618; - sub_809C04C(&gPokemonStorageSystemPtr->unk_25b4.box, 0); + sub_809C04C(&gPokemonStorageSystemPtr->unk_25b4, 0); gUnknown_020384E7 = a0; gUnknown_020384E8 = a1; } @@ -1922,7 +1924,7 @@ void sub_809BF74(void) case 1: if (gUnknown_020384E5 < PARTY_SIZE) { - sub_809C04C(&gPlayerParty[gUnknown_020384E5].box, 0); + sub_809C04C(gPlayerParty + gUnknown_020384E5, 0); break; } // fallthrough @@ -1944,3 +1946,158 @@ void sub_809C028(void) else sub_809BF74(); } + +void sub_809C04C(void *pokemon, u8 a1) +{ + u8 *buf; + u16 gender = MON_MALE; + gPokemonStorageSystemPtr->unk_11f2 = 0; + if (a1 == 0) + { + struct Pokemon *pkmn = (struct Pokemon *)pokemon; + gPokemonStorageSystemPtr->unk_11f0 = GetMonData(pokemon, MON_DATA_SPECIES2); + if (gPokemonStorageSystemPtr->unk_11f0 != SPECIES_NONE) + { + gPokemonStorageSystemPtr->unk_11f9 = GetMonData(pkmn, MON_DATA_IS_EGG); + GetMonData(pkmn, MON_DATA_NICKNAME, gPokemonStorageSystemPtr->unk_11fa); + StringGetEnd10(gPokemonStorageSystemPtr->unk_11fa); + gPokemonStorageSystemPtr->unk_11f8 = GetMonData(pkmn, MON_DATA_LEVEL); + gPokemonStorageSystemPtr->unk_11f7 = GetMonData(pkmn, MON_DATA_MARKINGS); + gPokemonStorageSystemPtr->unk_11ec = GetMonData(pkmn, MON_DATA_PERSONALITY); + gPokemonStorageSystemPtr->unk_11e8 = GetMonSpritePal(pkmn); + gender = GetMonGender(pkmn); + gPokemonStorageSystemPtr->unk_11f2 = GetMonData(pkmn, MON_DATA_HELD_ITEM); + } + } + else if (a1 == 1) + { + struct BoxPokemon *boxmon = (struct BoxPokemon *)pokemon; + gPokemonStorageSystemPtr->unk_11f0 = GetBoxMonData(pokemon, MON_DATA_SPECIES2); + if (gPokemonStorageSystemPtr->unk_11f0 != SPECIES_NONE) + { + u32 otId = GetBoxMonData(boxmon, MON_DATA_OT_ID); + gPokemonStorageSystemPtr->unk_11f9 = GetBoxMonData(boxmon, MON_DATA_IS_EGG); + GetBoxMonData(boxmon, MON_DATA_NICKNAME, gPokemonStorageSystemPtr->unk_11fa); + StringGetEnd10(gPokemonStorageSystemPtr->unk_11fa); + gPokemonStorageSystemPtr->unk_11f8 = GetLevelFromBoxMonExp(boxmon); + gPokemonStorageSystemPtr->unk_11f7 = GetBoxMonData(boxmon, MON_DATA_MARKINGS); + gPokemonStorageSystemPtr->unk_11ec = GetBoxMonData(boxmon, MON_DATA_PERSONALITY); + gPokemonStorageSystemPtr->unk_11e8 = GetMonSpritePalFromOtIdPersonality(gPokemonStorageSystemPtr->unk_11f0, otId, gPokemonStorageSystemPtr->unk_11ec); + gender = GetGenderFromSpeciesAndPersonality(gPokemonStorageSystemPtr->unk_11f0, gPokemonStorageSystemPtr->unk_11ec); + gPokemonStorageSystemPtr->unk_11f2 = GetBoxMonData(boxmon, MON_DATA_HELD_ITEM); + } + } + else + { + gPokemonStorageSystemPtr->unk_11f0 = SPECIES_NONE; + } + if (gPokemonStorageSystemPtr->unk_11f0 == SPECIES_NONE) + { + gPokemonStorageSystemPtr->unk_11fa[0] = EOS; + gPokemonStorageSystemPtr->unk_120f[0] = EOS; + gPokemonStorageSystemPtr->unk_1234[0] = EOS; + gPokemonStorageSystemPtr->unk_1259[0] = EOS; + gPokemonStorageSystemPtr->unk_127a[0] = EOS; + } + else if (gPokemonStorageSystemPtr->unk_11f9) + { + buf = gPokemonStorageSystemPtr->unk_120f; + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x0F; // WHITE2 + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x01; // DARK_GREY + buf = gPokemonStorageSystemPtr->unk_120f + 5; + buf = StringCopy(buf, gPokemonStorageSystemPtr->unk_11fa); + gPokemonStorageSystemPtr->unk_1234[0] = EOS; + gPokemonStorageSystemPtr->unk_1259[0] = EOS; + gPokemonStorageSystemPtr->unk_127a[0] = EOS; + } + else + { + if (gPokemonStorageSystemPtr->unk_11f0 == SPECIES_NIDORAN_M || gPokemonStorageSystemPtr->unk_11f0 == SPECIES_NIDORAN_F) + gender = MON_GENDERLESS; + buf = gPokemonStorageSystemPtr->unk_120f; + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x0F; // WHITE2 + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x01; // DARK_GREY + buf = gPokemonStorageSystemPtr->unk_120f + 5; + buf = StringCopy(buf, gPokemonStorageSystemPtr->unk_11fa); + buf = gPokemonStorageSystemPtr->unk_1234; + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x0F; // WHITE2 + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x01; // DARK_GREY + buf[5] = EXT_CTRL_CODE_BEGIN; + buf[6] = 0x13; // CLEAR_TO + buf[7] = 7; + buf[8] = CHAR_SLASH; + buf = gPokemonStorageSystemPtr->unk_1234 + 9; + buf = StringCopy(buf, gSpeciesNames[gPokemonStorageSystemPtr->unk_11f0]); + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x13; // CLEAR_TO + buf[2] = 0x50; + buf[3] = EOS; + buf = gPokemonStorageSystemPtr->unk_1259; + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x0F; // WHITE2 + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x01; // DARK_GREY + buf[5] = EXT_CTRL_CODE_BEGIN; + buf[6] = 0x13; // CLEAR_TO + buf[7] = 8; + buf = gPokemonStorageSystemPtr->unk_1259 + 8; + buf[0] = 0x34; // LV + buf = gPokemonStorageSystemPtr->unk_1259 + 9; + buf = sub_8072C14(buf, gPokemonStorageSystemPtr->unk_11f8, 0x22, STR_CONV_MODE_RIGHT_ALIGN); + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x11; // CLEAR + buf[2] = 8; + buf += 3; + switch (gender) + { + case MON_MALE: + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x04; // BLUE + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x05; // YELLOW + buf[5] = CHAR_MALE; + buf += 6; + break; + case MON_FEMALE: + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x06; // CYAN + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x07; // MAGENTA + buf[5] = CHAR_FEMALE; + buf += 6; + break; + } + buf[0] = EOS; + buf = gPokemonStorageSystemPtr->unk_127a; + if (gPokemonStorageSystemPtr->unk_11f2) + { + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x04; // COLOR_HIGHLIGHT_SHADOW + buf[2] = 0x0F; // WHITE2 + buf[3] = 0x00; // TRANSPARENT + buf[4] = 0x01; // DARK_GREY + buf = gPokemonStorageSystemPtr->unk_127a + 5; + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x06; // size + buf[2] = 0x04; + buf = gPokemonStorageSystemPtr->unk_127a + 8; + buf = StringCopy(buf, ItemId_GetItem(gPokemonStorageSystemPtr->unk_11f2)->name); + buf[0] = EXT_CTRL_CODE_BEGIN; + buf[1] = 0x07; // UNKNOWN_7; + buf += 2; + } + buf[0] = EOS; + } +} -- cgit v1.2.3 From 5ffd006acfe8ad12e88fa53a93a55b6f59e77779 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 21 Jan 2018 19:33:08 -0500 Subject: nonmatching sub_809C464 --- asm/pokemon_storage_system.s | 270 ----------------------- src/pokemon/pokemon_storage_system_4.c | 378 +++++++++++++++++++++++++++++++++ 2 files changed, 378 insertions(+), 270 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index eb4a9650e..8724f5608 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,276 +5,6 @@ .text - thumb_func_start sub_809C464 -sub_809C464: @ 809C464 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, _0809C4D8 @ =gUnknown_020384E4 - ldrb r0, [r0] - mov r8, r0 - ldr r2, _0809C4DC @ =gUnknown_020384E5 - ldrb r4, [r2] - ldr r0, _0809C4E0 @ =gPokemonStorageSystemPtr - ldr r1, [r0] - ldr r0, _0809C4E4 @ =0x000011de - adds r7, r1, r0 - movs r0, 0 - strb r0, [r7] - ldr r3, _0809C4E8 @ =0x000011df - adds r5, r1, r3 - strb r0, [r5] - adds r3, 0x4 - adds r6, r1, r3 - strb r0, [r6] - ldr r0, _0809C4EC @ =gMain - mov r12, r0 - ldrh r1, [r0, 0x30] - movs r0, 0x40 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _0809C4A0 - b _0809C62A -_0809C4A0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0809C4F0 - movs r1, 0x1 - mov r9, r1 - lsls r0, r4, 24 - movs r3, 0xC0 - lsls r3, 19 - adds r0, r3 - lsrs r4, r0, 24 - asrs r0, 24 - cmp r0, 0x1D - bgt _0809C4BE - b _0809C648 -_0809C4BE: - movs r1, 0x3 - mov r8, r1 - subs r0, 0x1E - lsls r0, 24 - asrs r0, 24 - bl __divsi3 - lsls r0, 24 - lsrs r4, r0, 24 - mov r3, r9 - strb r3, [r7] - strb r3, [r6] - b _0809C648 - .align 2, 0 -_0809C4D8: .4byte gUnknown_020384E4 -_0809C4DC: .4byte gUnknown_020384E5 -_0809C4E0: .4byte gPokemonStorageSystemPtr -_0809C4E4: .4byte 0x000011de -_0809C4E8: .4byte 0x000011df -_0809C4EC: .4byte gMain -_0809C4F0: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0809C524 - movs r0, 0x1 - mov r9, r0 - movs r0, 0 - ldrsb r0, [r3, r0] - movs r1, 0x6 - bl __modsi3 - lsls r0, 24 - cmp r0, 0 - beq _0809C514 - lsls r0, r4, 24 - movs r1, 0xFF - lsls r1, 24 - b _0809C63C -_0809C514: - movs r0, 0xFF - strb r0, [r5] - lsls r0, r4, 24 - movs r3, 0xA0 - lsls r3, 19 - adds r0, r3 - lsrs r4, r0, 24 - b _0809C648 -_0809C524: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809C554 - movs r0, 0x1 - mov r9, r0 - movs r0, 0 - ldrsb r0, [r3, r0] - adds r0, 0x1 - movs r1, 0x6 - bl __modsi3 - cmp r0, 0 - beq _0809C548 - lsls r0, r4, 24 - movs r1, 0x80 - lsls r1, 17 - b _0809C63C -_0809C548: - mov r3, r9 - strb r3, [r5] - lsls r0, r4, 24 - movs r1, 0xFB - lsls r1, 24 - b _0809C63C -_0809C554: - mov r3, r12 - ldrh r1, [r3, 0x2E] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0809C56A - movs r0, 0x1 - mov r9, r0 - movs r1, 0x2 - mov r8, r1 - b _0809C646 -_0809C56A: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809C5D4 - bl sub_809CAB0 - lsls r0, 24 - cmp r0, 0 - beq _0809C5D4 - ldr r0, _0809C588 @ =gUnknown_020384E9 - ldrb r0, [r0] - cmp r0, 0 - bne _0809C58C - movs r0, 0x8 - b _0809C658 - .align 2, 0 -_0809C588: .4byte gUnknown_020384E9 -_0809C58C: - movs r0, 0 - bl sub_809CE4C - subs r0, 0x1 - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x4 - bhi _0809C5D4 - lsls r0, 2 - ldr r1, _0809C5A8 @ =_0809C5AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C5A8: .4byte _0809C5AC - .align 2, 0 -_0809C5AC: - .4byte _0809C5C0 - .4byte _0809C5C4 - .4byte _0809C5C8 - .4byte _0809C5CC - .4byte _0809C5D0 -_0809C5C0: - movs r0, 0xB - b _0809C658 -_0809C5C4: - movs r0, 0xC - b _0809C658 -_0809C5C8: - movs r0, 0xD - b _0809C658 -_0809C5CC: - movs r0, 0xE - b _0809C658 -_0809C5D0: - movs r0, 0xF - b _0809C658 -_0809C5D4: - ldr r2, _0809C5E4 @ =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809C5E8 - movs r0, 0x10 - b _0809C658 - .align 2, 0 -_0809C5E4: .4byte gMain -_0809C5E8: - ldr r0, _0809C600 @ =gSaveBlock2 - ldrb r0, [r0, 0x13] - cmp r0, 0x1 - bne _0809C612 - ldrh r1, [r2, 0x2C] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - beq _0809C604 - movs r0, 0xA - b _0809C658 - .align 2, 0 -_0809C600: .4byte gSaveBlock2 -_0809C604: - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _0809C612 - movs r0, 0x9 - b _0809C658 -_0809C612: - ldrh r1, [r2, 0x2E] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0809C624 - bl sub_809CD88 - movs r0, 0 - b _0809C658 -_0809C624: - movs r3, 0 - mov r9, r3 - b _0809C656 -_0809C62A: - movs r0, 0x1 - mov r9, r0 - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0x5 - ble _0809C642 - lsls r0, r4, 24 - movs r1, 0xFA - lsls r1, 24 -_0809C63C: - adds r0, r1 - lsrs r4, r0, 24 - b _0809C648 -_0809C642: - movs r3, 0x2 - mov r8, r3 -_0809C646: - movs r4, 0 -_0809C648: - mov r0, r9 - cmp r0, 0 - beq _0809C656 - mov r0, r8 - adds r1, r4, 0 - bl sub_809AF18 -_0809C656: - mov r0, r9 -_0809C658: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809C464 - thumb_func_start sub_809C664 sub_809C664: @ 809C664 push {r4-r7,lr} diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index eb5a6cb0b..c02ca878d 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -67,7 +67,10 @@ bool8 sub_809BF2C(void); void sub_809BF74(void); void sub_809C028(void); void sub_809C04C(void *pokemon, u8 a1); +bool8 sub_809CAB0(void); void sub_809CC04(void); +void sub_809CD88(void); +s8 sub_809CE4C(u8 a0); // .rodata @@ -2101,3 +2104,378 @@ void sub_809C04C(void *pokemon, u8 a1) buf[0] = EOS; } } + +#ifdef NONMATCHING +u8 sub_809C464(void) +{ + u8 r9; + s8 r8 = gUnknown_020384E4; + s8 r4 = gUnknown_020384E5; + gPokemonStorageSystemPtr->unk_11de = 0; + gPokemonStorageSystemPtr->unk_11df = 0; + gPokemonStorageSystemPtr->unk_11e3 = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) + { + r9 = 1; + if (gUnknown_020384E5 >= 6) + { + r4 -= 6; + } + else + { + r8 = 2; + r4 = 0; + } + } + else if (gMain.newAndRepeatedKeys & DPAD_DOWN) + { + r9 = 1; + r4 += 6; + if (r4 >= 30) + { + r8 = 3; + r4 -= 30; + r4 /= 3; + gPokemonStorageSystemPtr->unk_11de = 1; + gPokemonStorageSystemPtr->unk_11e3 = 1; + } + } + else if (gMain.newAndRepeatedKeys & DPAD_LEFT) + { + r9 = 1; + if (gUnknown_020384E5 % 6) + r4--; + else + { + gPokemonStorageSystemPtr->unk_11df = -1; + r4 += 5; + } + } + else if (gMain.newAndRepeatedKeys & DPAD_RIGHT) + { + r9 = 1; + if ((gUnknown_020384E5 + 1) % 6) + r4++; + else + { + gPokemonStorageSystemPtr->unk_11df = 1; + r4 -= 5; + } + } + else if (gMain.newKeys & START_BUTTON) + { + r9 = 1; + r8 = 2; + r4 = 0; + } + else + { + if ((gMain.newKeys & A_BUTTON) && sub_809CAB0()) + { + if (gUnknown_020384E9 == 0) + return 8; + switch (sub_809CE4C(0)) + { + case 1: + return 11; + case 2: + return 12; + case 3: + return 13; + case 4: + return 14; + case 5: + return 15; + } + } + if (gMain.newKeys & B_BUTTON) + return 16; + if (gSaveBlock2.optionsButtonMode == OPTIONS_BUTTON_MODE_LR) + { + if (gMain.heldKeys & L_BUTTON) + return 10; + if (gMain.heldKeys & R_BUTTON) + return 9; + } + if (gMain.newKeys & SELECT_BUTTON) + { + sub_809CD88(); + return 0; + } + r9 = 0; + } + if (r9) + sub_809AF18(r8, r4); + return r9; +} +#else +__attribute__((naked)) u8 sub_809C464(void) +{ + asm_unified("\tpush {r4-r7,lr}\n" + "\tmov r7, r9\n" + "\tmov r6, r8\n" + "\tpush {r6,r7}\n" + "\tldr r0, _0809C4D8 @ =gUnknown_020384E4\n" + "\tldrb r0, [r0]\n" + "\tmov r8, r0\n" + "\tldr r2, _0809C4DC @ =gUnknown_020384E5\n" + "\tldrb r4, [r2]\n" + "\tldr r0, _0809C4E0 @ =gPokemonStorageSystemPtr\n" + "\tldr r1, [r0]\n" + "\tldr r0, _0809C4E4 @ =0x000011de\n" + "\tadds r7, r1, r0\n" + "\tmovs r0, 0\n" + "\tstrb r0, [r7]\n" + "\tldr r3, _0809C4E8 @ =0x000011df\n" + "\tadds r5, r1, r3\n" + "\tstrb r0, [r5]\n" + "\tadds r3, 0x4\n" + "\tadds r6, r1, r3\n" + "\tstrb r0, [r6]\n" + "\tldr r0, _0809C4EC @ =gMain\n" + "\tmov r12, r0\n" + "\tldrh r1, [r0, 0x30]\n" + "\tmovs r0, 0x40\n" + "\tands r0, r1\n" + "\tadds r3, r2, 0\n" + "\tcmp r0, 0\n" + "\tbeq _0809C4A0\n" + "\tb _0809C62A\n" + "_0809C4A0:\n" + "\tmovs r0, 0x80\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C4F0\n" + "\tmovs r1, 0x1\n" + "\tmov r9, r1\n" + "\tlsls r0, r4, 24\n" + "\tmovs r3, 0xC0\n" + "\tlsls r3, 19\n" + "\tadds r0, r3\n" + "\tlsrs r4, r0, 24\n" + "\tasrs r0, 24\n" + "\tcmp r0, 0x1D\n" + "\tbgt _0809C4BE\n" + "\tb _0809C648\n" + "_0809C4BE:\n" + "\tmovs r1, 0x3\n" + "\tmov r8, r1\n" + "\tsubs r0, 0x1E\n" + "\tlsls r0, 24\n" + "\tasrs r0, 24\n" + "\tbl __divsi3\n" + "\tlsls r0, 24\n" + "\tlsrs r4, r0, 24\n" + "\tmov r3, r9\n" + "\tstrb r3, [r7]\n" + "\tstrb r3, [r6]\n" + "\tb _0809C648\n" + "\t.align 2, 0\n" + "_0809C4D8: .4byte gUnknown_020384E4\n" + "_0809C4DC: .4byte gUnknown_020384E5\n" + "_0809C4E0: .4byte gPokemonStorageSystemPtr\n" + "_0809C4E4: .4byte 0x000011de\n" + "_0809C4E8: .4byte 0x000011df\n" + "_0809C4EC: .4byte gMain\n" + "_0809C4F0:\n" + "\tmovs r0, 0x20\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C524\n" + "\tmovs r0, 0x1\n" + "\tmov r9, r0\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r3, r0]\n" + "\tmovs r1, 0x6\n" + "\tbl __modsi3\n" + "\tlsls r0, 24\n" + "\tcmp r0, 0\n" + "\tbeq _0809C514\n" + "\tlsls r0, r4, 24\n" + "\tmovs r1, 0xFF\n" + "\tlsls r1, 24\n" + "\tb _0809C63C\n" + "_0809C514:\n" + "\tmovs r0, 0xFF\n" + "\tstrb r0, [r5]\n" + "\tlsls r0, r4, 24\n" + "\tmovs r3, 0xA0\n" + "\tlsls r3, 19\n" + "\tadds r0, r3\n" + "\tlsrs r4, r0, 24\n" + "\tb _0809C648\n" + "_0809C524:\n" + "\tmovs r0, 0x10\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C554\n" + "\tmovs r0, 0x1\n" + "\tmov r9, r0\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r3, r0]\n" + "\tadds r0, 0x1\n" + "\tmovs r1, 0x6\n" + "\tbl __modsi3\n" + "\tcmp r0, 0\n" + "\tbeq _0809C548\n" + "\tlsls r0, r4, 24\n" + "\tmovs r1, 0x80\n" + "\tlsls r1, 17\n" + "\tb _0809C63C\n" + "_0809C548:\n" + "\tmov r3, r9\n" + "\tstrb r3, [r5]\n" + "\tlsls r0, r4, 24\n" + "\tmovs r1, 0xFB\n" + "\tlsls r1, 24\n" + "\tb _0809C63C\n" + "_0809C554:\n" + "\tmov r3, r12\n" + "\tldrh r1, [r3, 0x2E]\n" + "\tmovs r0, 0x8\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C56A\n" + "\tmovs r0, 0x1\n" + "\tmov r9, r0\n" + "\tmovs r1, 0x2\n" + "\tmov r8, r1\n" + "\tb _0809C646\n" + "_0809C56A:\n" + "\tmovs r0, 0x1\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C5D4\n" + "\tbl sub_809CAB0\n" + "\tlsls r0, 24\n" + "\tcmp r0, 0\n" + "\tbeq _0809C5D4\n" + "\tldr r0, _0809C588 @ =gUnknown_020384E9\n" + "\tldrb r0, [r0]\n" + "\tcmp r0, 0\n" + "\tbne _0809C58C\n" + "\tmovs r0, 0x8\n" + "\tb _0809C658\n" + "\t.align 2, 0\n" + "_0809C588: .4byte gUnknown_020384E9\n" + "_0809C58C:\n" + "\tmovs r0, 0\n" + "\tbl sub_809CE4C\n" + "\tsubs r0, 0x1\n" + "\tlsls r0, 24\n" + "\tasrs r0, 24\n" + "\tcmp r0, 0x4\n" + "\tbhi _0809C5D4\n" + "\tlsls r0, 2\n" + "\tldr r1, _0809C5A8 @ =_0809C5AC\n" + "\tadds r0, r1\n" + "\tldr r0, [r0]\n" + "\tmov pc, r0\n" + "\t.align 2, 0\n" + "_0809C5A8: .4byte _0809C5AC\n" + "\t.align 2, 0\n" + "_0809C5AC:\n" + "\t.4byte _0809C5C0\n" + "\t.4byte _0809C5C4\n" + "\t.4byte _0809C5C8\n" + "\t.4byte _0809C5CC\n" + "\t.4byte _0809C5D0\n" + "_0809C5C0:\n" + "\tmovs r0, 0xB\n" + "\tb _0809C658\n" + "_0809C5C4:\n" + "\tmovs r0, 0xC\n" + "\tb _0809C658\n" + "_0809C5C8:\n" + "\tmovs r0, 0xD\n" + "\tb _0809C658\n" + "_0809C5CC:\n" + "\tmovs r0, 0xE\n" + "\tb _0809C658\n" + "_0809C5D0:\n" + "\tmovs r0, 0xF\n" + "\tb _0809C658\n" + "_0809C5D4:\n" + "\tldr r2, _0809C5E4 @ =gMain\n" + "\tldrh r1, [r2, 0x2E]\n" + "\tmovs r0, 0x2\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C5E8\n" + "\tmovs r0, 0x10\n" + "\tb _0809C658\n" + "\t.align 2, 0\n" + "_0809C5E4: .4byte gMain\n" + "_0809C5E8:\n" + "\tldr r0, _0809C600 @ =gSaveBlock2\n" + "\tldrb r0, [r0, 0x13]\n" + "\tcmp r0, 0x1\n" + "\tbne _0809C612\n" + "\tldrh r1, [r2, 0x2C]\n" + "\tmovs r0, 0x80\n" + "\tlsls r0, 2\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C604\n" + "\tmovs r0, 0xA\n" + "\tb _0809C658\n" + "\t.align 2, 0\n" + "_0809C600: .4byte gSaveBlock2\n" + "_0809C604:\n" + "\tmovs r0, 0x80\n" + "\tlsls r0, 1\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C612\n" + "\tmovs r0, 0x9\n" + "\tb _0809C658\n" + "_0809C612:\n" + "\tldrh r1, [r2, 0x2E]\n" + "\tmovs r0, 0x4\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C624\n" + "\tbl sub_809CD88\n" + "\tmovs r0, 0\n" + "\tb _0809C658\n" + "_0809C624:\n" + "\tmovs r3, 0\n" + "\tmov r9, r3\n" + "\tb _0809C656\n" + "_0809C62A:\n" + "\tmovs r0, 0x1\n" + "\tmov r9, r0\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r2, r0]\n" + "\tcmp r0, 0x5\n" + "\tble _0809C642\n" + "\tlsls r0, r4, 24\n" + "\tmovs r1, 0xFA\n" + "\tlsls r1, 24\n" + "_0809C63C:\n" + "\tadds r0, r1\n" + "\tlsrs r4, r0, 24\n" + "\tb _0809C648\n" + "_0809C642:\n" + "\tmovs r3, 0x2\n" + "\tmov r8, r3\n" + "_0809C646:\n" + "\tmovs r4, 0\n" + "_0809C648:\n" + "\tmov r0, r9\n" + "\tcmp r0, 0\n" + "\tbeq _0809C656\n" + "\tmov r0, r8\n" + "\tadds r1, r4, 0\n" + "\tbl sub_809AF18\n" + "_0809C656:\n" + "\tmov r0, r9\n" + "_0809C658:\n" + "\tpop {r3,r4}\n" + "\tmov r8, r3\n" + "\tmov r9, r4\n" + "\tpop {r4-r7}\n" + "\tpop {r1}\n" + "\tbx r1"); +} +#endif -- cgit v1.2.3 From 9cfd6fed81b77b4f3aca8ad7b4c2641672cc234b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 21 Jan 2018 21:04:43 -0500 Subject: Create stub files to hold ewram symbols --- src/field/pokedex_area_screen.c | 20 ++++++++++++++++++++ src/field/pokenav.c | 16 ++++++++++++++++ sym_common.txt | 17 ++++++++++++----- sym_ewram.txt | 34 ++-------------------------------- 4 files changed, 50 insertions(+), 37 deletions(-) create mode 100644 src/field/pokedex_area_screen.c create mode 100644 src/field/pokenav.c diff --git a/src/field/pokedex_area_screen.c b/src/field/pokedex_area_screen.c new file mode 100644 index 000000000..67ca276c4 --- /dev/null +++ b/src/field/pokedex_area_screen.c @@ -0,0 +1,20 @@ + +// Includes +#include "global.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA u16 gUnknown_02039260 = 0; +EWRAM_DATA u16 gUnknown_02039262 = 0; +EWRAM_DATA u16 gUnknown_02039264 = 0; +EWRAM_DATA u16 gUnknown_02039266 = 0; +EWRAM_DATA u16 gUnknown_02039268 = 0; +EWRAM_DATA u16 gUnknown_0203926A = 0; + +// Static ROM declarations + +// .rodata + +// .text diff --git a/src/field/pokenav.c b/src/field/pokenav.c new file mode 100644 index 000000000..f57a98df6 --- /dev/null +++ b/src/field/pokenav.c @@ -0,0 +1,16 @@ + +// Includes +#include "global.h" + +// Static type declarations + +// Static RAM declarations + +EWRAM_DATA u8 gUnknown_020388B0[4] = {}; +EWRAM_DATA u16 gUnknown_020388B4 = 0; + +// Static ROM declarations + +// .rodata + +// .text diff --git a/sym_common.txt b/sym_common.txt index 64e87c046..7e5551025 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -139,7 +139,7 @@ SYMBOL(gEggHatchData, 4) // load_save.c SYMBOL(gFlashMemoryPresent, 4) -// ??? +// trade.c SYMBOL(gUnknown_03004824, 4) SYMBOL(gUnknown_03004828, 4) . += 0x4; @@ -204,15 +204,20 @@ SYMBOL(gUnknown_03005CE4, 4) SYMBOL(gUnknown_03005CE8, 4) SYMBOL(gUnknown_03005CEC, 4) -// ??? +// pokemon_summary_screen.o SYMBOL(gUnknown_03005CF0, 4) + // huh? . = ALIGN(16); + +// item_menu.c gFieldItemUseCallback = .; . += 0x10; gBagPocketScrollStates = .; . += 0x14; SYMBOL(gCurrentBagPocketItemSlots, 4) + +// contest.c SYMBOL(gUnknown_03005D28, 4) // record_mixing.c @@ -226,8 +231,10 @@ SYMBOL(gSoundTestCryNum, 4) SYMBOL(gUnknown_03005D38, 4) . += 0x64; // huge gap? -// ??? +// mauville_man.c SYMBOL(gUnknown_03005DA0, 0x48) + +// cute_sketch.c SYMBOL(gUnknown_03005DE8, 4) SYMBOL(gUnknown_03005DEC, 4) SYMBOL(gUnknown_03005DF0, 4) @@ -249,7 +256,7 @@ SYMBOL(gUnknown_03005E90, 4) // evolution_scene.c SYMBOL(gCB2_AfterEvolution, 4) -// ??? +// pokedex_cry_screen.c SYMBOL(gUnknown_03005E98, 4) // save.c @@ -268,7 +275,7 @@ SYMBOL(gGameContinueCallback, 4) SYMBOL(gIntroFrameCounter, 4) SYMBOL(gMultibootProgramStruct, 44) -// ??? +// battle_anim_813F0F4.c SYMBOL(gUnknown_03005F0C, 4) SYMBOL(gUnknown_03005F10, 4) gUnknown_03005F14 = .; diff --git a/sym_ewram.txt b/sym_ewram.txt index 2a2a2cc11..24b01b594 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -346,16 +346,7 @@ gBattleMonForms = .; /* 2024E84 */ . = ALIGN(4); src/field/rotating_gate.o(ewram_data); . = ALIGN(4); src/field/safari_zone.o(ewram_data); . = ALIGN(4); src/easy_chat_2.o(ewram_data); - -/* pokenav */ - - . = ALIGN(4); -gUnknown_020388B0 = .; /* 20388B0 */ - . += 0x4; - -gUnknown_020388B4 = .; /* 20388B4 */ - . += 0x4; - +. = ALIGN(4); src/field/pokenav.o(ewram_data); . = ALIGN(4); src/pokemon/mon_markings.o(ewram_data); . = ALIGN(4); src/field/mauville_man.o(ewram_data); . = ALIGN(4); src/field/menu_helpers.o(ewram_data); @@ -365,28 +356,7 @@ gUnknown_020388B4 = .; /* 20388B4 */ . = ALIGN(4); src/rom6.o(ewram_data); . = ALIGN(4); src/field/pokeblock.o(ewram_data); . = ALIGN(4); src/field/field_specials.o(ewram_data); - -/* pokedex_area_screen */ - - . = ALIGN(4); -gUnknown_02039260 = .; /* 2039260 */ - . += 0x2; - -gUnknown_02039262 = .; /* 2039262 */ - . += 0x2; - -gUnknown_02039264 = .; /* 2039264 */ - . += 0x2; - -gUnknown_02039266 = .; /* 2039266 */ - . += 0x2; - -gUnknown_02039268 = .; /* 2039268 */ - . += 0x2; - -gUnknown_0203926A = .; /* 203926A */ - . += 0x2; - +. = ALIGN(4); src/field/pokedex_area_screen.o(ewram_data); . = ALIGN(4); src/battle/battle_message.o(ewram_data); . = ALIGN(4); src/field/choose_party.o(ewram_data); . = ALIGN(4); src/scene/cable_car.o(ewram_data); -- cgit v1.2.3 From cc1767cbc116d26d954d50c6e7642138f012540c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 21 Jan 2018 21:49:43 -0500 Subject: nonmatching sub_809C664 --- asm/pokemon_storage_system.s | 265 +----------------------- src/pokemon/pokemon_storage_system_4.c | 363 +++++++++++++++++++++++++++++++++ 2 files changed, 365 insertions(+), 263 deletions(-) diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 8724f5608..ad3f371f5 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -5,270 +5,8 @@ .text - thumb_func_start sub_809C664 -sub_809C664: @ 809C664 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _0809C6D8 @ =gUnknown_020384E4 - ldrb r0, [r0] - mov r10, r0 - ldr r7, _0809C6DC @ =gUnknown_020384E5 - ldrb r4, [r7] - ldr r2, _0809C6E0 @ =gPokemonStorageSystemPtr - ldr r5, [r2] - ldr r1, _0809C6E4 @ =0x000011df - adds r0, r5, r1 - movs r1, 0 - strb r1, [r0] - ldr r3, _0809C6E8 @ =0x000011de - adds r0, r5, r3 - strb r1, [r0] - adds r3, 0x5 - adds r0, r5, r3 - strb r1, [r0] - mov r9, r1 - mov r8, r1 - ldr r1, _0809C6EC @ =gMain - ldrh r3, [r1, 0x30] - movs r0, 0x40 - ands r0, r3 - adds r6, r7, 0 - mov r12, r2 - adds r2, r1, 0 - cmp r0, 0 - beq _0809C6A8 - b _0809C81C -_0809C6A8: - movs r0, 0x80 - ands r0, r3 - cmp r0, 0 - beq _0809C6F0 - lsls r0, r4, 24 - movs r1, 0x80 - lsls r1, 17 - adds r0, r1 - lsrs r4, r0, 24 - asrs r0, 24 - cmp r0, 0x6 - ble _0809C6C2 - movs r4, 0 -_0809C6C2: - lsls r0, r4, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r6, r1] - cmp r0, r1 - bne _0809C6D0 - b _0809C83C -_0809C6D0: - movs r2, 0x1 - mov r8, r2 - b _0809C842 - .align 2, 0 -_0809C6D8: .4byte gUnknown_020384E4 -_0809C6DC: .4byte gUnknown_020384E5 -_0809C6E0: .4byte gPokemonStorageSystemPtr -_0809C6E4: .4byte 0x000011df -_0809C6E8: .4byte 0x000011de -_0809C6EC: .4byte gMain -_0809C6F0: - movs r0, 0x20 - ands r0, r3 - cmp r0, 0 - beq _0809C714 - ldrb r1, [r6] - movs r0, 0 - ldrsb r0, [r6, r0] - cmp r0, 0 - beq _0809C714 - movs r3, 0x1 - mov r8, r3 - ldr r2, _0809C710 @ =0x000011e2 - adds r0, r5, r2 - strb r1, [r0] - movs r4, 0 - b _0809C83C - .align 2, 0 -_0809C710: .4byte 0x000011e2 -_0809C714: - ldrh r1, [r2, 0x30] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0809C748 - movs r0, 0 - ldrsb r0, [r6, r0] - cmp r0, 0 - bne _0809C73C - movs r3, 0x1 - mov r8, r3 - mov r1, r12 - ldr r0, [r1] - ldr r2, _0809C738 @ =0x000011e2 - adds r0, r2 - ldrb r4, [r0] - b _0809C83C - .align 2, 0 -_0809C738: .4byte 0x000011e2 -_0809C73C: - movs r3, 0x6 - mov r8, r3 - movs r0, 0 - mov r10, r0 - movs r4, 0 - b _0809C83C -_0809C748: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0809C7D0 - movs r0, 0 - ldrsb r0, [r6, r0] - cmp r0, 0x6 - bne _0809C76E - mov r1, r12 - ldr r0, [r1] - ldrb r0, [r0, 0x5] - cmp r0, 0x1 - bne _0809C768 - movs r0, 0x4 - b _0809C84C -_0809C768: - movs r2, 0x1 - mov r9, r2 - b _0809C7D0 -_0809C76E: - bl sub_809CAB0 - lsls r0, 24 - cmp r0, 0 - beq _0809C7D0 - ldr r0, _0809C784 @ =gUnknown_020384E9 - ldrb r0, [r0] - cmp r0, 0 - bne _0809C788 - movs r0, 0x8 - b _0809C84C - .align 2, 0 -_0809C784: .4byte gUnknown_020384E9 -_0809C788: - movs r0, 0 - bl sub_809CE4C - subs r0, 0x1 - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x4 - bhi _0809C7D0 - lsls r0, 2 - ldr r1, _0809C7A4 @ =_0809C7A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0809C7A4: .4byte _0809C7A8 - .align 2, 0 -_0809C7A8: - .4byte _0809C7BC - .4byte _0809C7C0 - .4byte _0809C7C4 - .4byte _0809C7C8 - .4byte _0809C7CC -_0809C7BC: - movs r0, 0xB - b _0809C84C -_0809C7C0: - movs r0, 0xC - b _0809C84C -_0809C7C4: - movs r0, 0xD - b _0809C84C -_0809C7C8: - movs r0, 0xE - b _0809C84C -_0809C7CC: - movs r0, 0xF - b _0809C84C -_0809C7D0: - ldr r2, _0809C7EC @ =gMain - ldrh r1, [r2, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0809C7F8 - ldr r0, _0809C7F0 @ =gPokemonStorageSystemPtr - ldr r0, [r0] - ldrb r0, [r0, 0x5] - cmp r0, 0x1 - bne _0809C7F4 - movs r0, 0x10 - b _0809C84C - .align 2, 0 -_0809C7EC: .4byte gMain -_0809C7F0: .4byte gPokemonStorageSystemPtr -_0809C7F4: - movs r3, 0x1 - mov r9, r3 -_0809C7F8: - mov r0, r9 - cmp r0, 0 - beq _0809C80A - movs r1, 0x6 - mov r8, r1 - movs r2, 0 - mov r10, r2 - movs r4, 0 - b _0809C83C -_0809C80A: - ldrh r1, [r2, 0x2E] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0809C83C - bl sub_809CD88 - movs r0, 0 - b _0809C84C -_0809C81C: - lsls r0, r4, 24 - movs r3, 0xFF - lsls r3, 24 - adds r0, r3 - lsrs r4, r0, 24 - cmp r0, 0 - bge _0809C82C - movs r4, 0x6 -_0809C82C: - lsls r0, r4, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r7, r1] - cmp r0, r1 - beq _0809C83C - movs r0, 0x1 - mov r8, r0 -_0809C83C: - mov r1, r8 - cmp r1, 0 - beq _0809C84A -_0809C842: - mov r0, r10 - adds r1, r4, 0 - bl sub_809AF18 -_0809C84A: - mov r0, r8 -_0809C84C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_809C664 - thumb_func_start sub_809C85C +@ u8 sub_809C85C(void) sub_809C85C: @ 809C85C push {r4-r6,lr} ldr r0, _0809C894 @ =gPokemonStorageSystemPtr @@ -392,6 +130,7 @@ _0809C93E: thumb_func_end sub_809C85C thumb_func_start sub_809C944 +@ u8 sub_809C944(void) sub_809C944: @ 809C944 push {r4-r7,lr} ldr r0, _0809C988 @ =gUnknown_020384E4 diff --git a/src/pokemon/pokemon_storage_system_4.c b/src/pokemon/pokemon_storage_system_4.c index c02ca878d..1cc9f7e3b 100644 --- a/src/pokemon/pokemon_storage_system_4.c +++ b/src/pokemon/pokemon_storage_system_4.c @@ -2479,3 +2479,366 @@ __attribute__((naked)) u8 sub_809C464(void) "\tbx r1"); } #endif + +#ifdef NONMATCHING +u8 sub_809C664(void) +{ + s8 r10 = gUnknown_020384E4; + s8 r4 = gUnknown_020384E5; + u8 r8; + u8 r9; + + gPokemonStorageSystemPtr->unk_11df = 0; + gPokemonStorageSystemPtr->unk_11de = 0; + gPokemonStorageSystemPtr->unk_11e3 = 0; + r9 = FALSE; + r8 = 0; + if (gMain.newAndRepeatedKeys & DPAD_UP) + { + if (--r4 < 0) + r4 = 6; + if (r4 != gUnknown_020384E5) + r8 = 1; + } + else if (gMain.newAndRepeatedKeys & DPAD_DOWN) + { + if (++r4 > 6) + r4 = 0; + if (r4 != gUnknown_020384E5) + r8 = 1; + } + else if ((gMain.newAndRepeatedKeys & DPAD_LEFT) && gUnknown_020384E5) + { + r8 = 1; + gPokemonStorageSystemPtr->unk_11e2 = gUnknown_020384E5; + r4 = 0; + } + else if (gMain.newAndRepeatedKeys & DPAD_RIGHT) + { + if (gUnknown_020384E5 == 0) + { + r8 = 1; + r4 = gPokemonStorageSystemPtr->unk_11e2; + } + else + { + r8 = 6; + r10 = 0; + r4 = 0; + } + } + else + { + if (gMain.newKeys & A_BUTTON) + { + if (gUnknown_020384E5 == 6) + { + if (gPokemonStorageSystemPtr->unk_0005 == 1) + return 4; + r9 = TRUE; + } + else if (sub_809CAB0()) + { + if (gUnknown_020384E9 == 0) + return 8; + switch (sub_809CE4C(0)) + { + case 1: + return 11; + case 2: + return 12; + case 3: + return 13; + case 4: + return 14; + case 5: + return 15; + } + } + } + if (gMain.newKeys & B_BUTTON) + { + if (gPokemonStorageSystemPtr->unk_0005 == 1) + return 16; + r9 = TRUE; + } + if (!r9) + { + r8 = 6; + r10 = 0; + r4 = 0; + } + else if (gMain.newKeys & SELECT_BUTTON) + { + sub_809CD88(); + return 0; + } + } + if (r8) + sub_809AF18(r10, r4); + return r8; +} +#else +__attribute__((naked)) u8 sub_809C664(void) +{ + asm_unified("\tpush {r4-r7,lr}\n" + "\tmov r7, r10\n" + "\tmov r6, r9\n" + "\tmov r5, r8\n" + "\tpush {r5-r7}\n" + "\tldr r0, _0809C6D8 @ =gUnknown_020384E4\n" + "\tldrb r0, [r0]\n" + "\tmov r10, r0\n" + "\tldr r7, _0809C6DC @ =gUnknown_020384E5\n" + "\tldrb r4, [r7]\n" + "\tldr r2, _0809C6E0 @ =gPokemonStorageSystemPtr\n" + "\tldr r5, [r2]\n" + "\tldr r1, _0809C6E4 @ =0x000011df\n" + "\tadds r0, r5, r1\n" + "\tmovs r1, 0\n" + "\tstrb r1, [r0]\n" + "\tldr r3, _0809C6E8 @ =0x000011de\n" + "\tadds r0, r5, r3\n" + "\tstrb r1, [r0]\n" + "\tadds r3, 0x5\n" + "\tadds r0, r5, r3\n" + "\tstrb r1, [r0]\n" + "\tmov r9, r1\n" + "\tmov r8, r1\n" + "\tldr r1, _0809C6EC @ =gMain\n" + "\tldrh r3, [r1, 0x30]\n" + "\tmovs r0, 0x40\n" + "\tands r0, r3\n" + "\tadds r6, r7, 0\n" + "\tmov r12, r2\n" + "\tadds r2, r1, 0\n" + "\tcmp r0, 0\n" + "\tbeq _0809C6A8\n" + "\tb _0809C81C\n" + "_0809C6A8:\n" + "\tmovs r0, 0x80\n" + "\tands r0, r3\n" + "\tcmp r0, 0\n" + "\tbeq _0809C6F0\n" + "\tlsls r0, r4, 24\n" + "\tmovs r1, 0x80\n" + "\tlsls r1, 17\n" + "\tadds r0, r1\n" + "\tlsrs r4, r0, 24\n" + "\tasrs r0, 24\n" + "\tcmp r0, 0x6\n" + "\tble _0809C6C2\n" + "\tmovs r4, 0\n" + "_0809C6C2:\n" + "\tlsls r0, r4, 24\n" + "\tasrs r0, 24\n" + "\tmovs r1, 0\n" + "\tldrsb r1, [r6, r1]\n" + "\tcmp r0, r1\n" + "\tbne _0809C6D0\n" + "\tb _0809C83C\n" + "_0809C6D0:\n" + "\tmovs r2, 0x1\n" + "\tmov r8, r2\n" + "\tb _0809C842\n" + "\t.align 2, 0\n" + "_0809C6D8: .4byte gUnknown_020384E4\n" + "_0809C6DC: .4byte gUnknown_020384E5\n" + "_0809C6E0: .4byte gPokemonStorageSystemPtr\n" + "_0809C6E4: .4byte 0x000011df\n" + "_0809C6E8: .4byte 0x000011de\n" + "_0809C6EC: .4byte gMain\n" + "_0809C6F0:\n" + "\tmovs r0, 0x20\n" + "\tands r0, r3\n" + "\tcmp r0, 0\n" + "\tbeq _0809C714\n" + "\tldrb r1, [r6]\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r6, r0]\n" + "\tcmp r0, 0\n" + "\tbeq _0809C714\n" + "\tmovs r3, 0x1\n" + "\tmov r8, r3\n" + "\tldr r2, _0809C710 @ =0x000011e2\n" + "\tadds r0, r5, r2\n" + "\tstrb r1, [r0]\n" + "\tmovs r4, 0\n" + "\tb _0809C83C\n" + "\t.align 2, 0\n" + "_0809C710: .4byte 0x000011e2\n" + "_0809C714:\n" + "\tldrh r1, [r2, 0x30]\n" + "\tmovs r0, 0x10\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C748\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r6, r0]\n" + "\tcmp r0, 0\n" + "\tbne _0809C73C\n" + "\tmovs r3, 0x1\n" + "\tmov r8, r3\n" + "\tmov r1, r12\n" + "\tldr r0, [r1]\n" + "\tldr r2, _0809C738 @ =0x000011e2\n" + "\tadds r0, r2\n" + "\tldrb r4, [r0]\n" + "\tb _0809C83C\n" + "\t.align 2, 0\n" + "_0809C738: .4byte 0x000011e2\n" + "_0809C73C:\n" + "\tmovs r3, 0x6\n" + "\tmov r8, r3\n" + "\tmovs r0, 0\n" + "\tmov r10, r0\n" + "\tmovs r4, 0\n" + "\tb _0809C83C\n" + "_0809C748:\n" + "\tldrh r1, [r2, 0x2E]\n" + "\tmovs r0, 0x1\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C7D0\n" + "\tmovs r0, 0\n" + "\tldrsb r0, [r6, r0]\n" + "\tcmp r0, 0x6\n" + "\tbne _0809C76E\n" + "\tmov r1, r12\n" + "\tldr r0, [r1]\n" + "\tldrb r0, [r0, 0x5]\n" + "\tcmp r0, 0x1\n" + "\tbne _0809C768\n" + "\tmovs r0, 0x4\n" + "\tb _0809C84C\n" + "_0809C768:\n" + "\tmovs r2, 0x1\n" + "\tmov r9, r2\n" + "\tb _0809C7D0\n" + "_0809C76E:\n" + "\tbl sub_809CAB0\n" + "\tlsls r0, 24\n" + "\tcmp r0, 0\n" + "\tbeq _0809C7D0\n" + "\tldr r0, _0809C784 @ =gUnknown_020384E9\n" + "\tldrb r0, [r0]\n" + "\tcmp r0, 0\n" + "\tbne _0809C788\n" + "\tmovs r0, 0x8\n" + "\tb _0809C84C\n" + "\t.align 2, 0\n" + "_0809C784: .4byte gUnknown_020384E9\n" + "_0809C788:\n" + "\tmovs r0, 0\n" + "\tbl sub_809CE4C\n" + "\tsubs r0, 0x1\n" + "\tlsls r0, 24\n" + "\tasrs r0, 24\n" + "\tcmp r0, 0x4\n" + "\tbhi _0809C7D0\n" + "\tlsls r0, 2\n" + "\tldr r1, _0809C7A4 @ =_0809C7A8\n" + "\tadds r0, r1\n" + "\tldr r0, [r0]\n" + "\tmov pc, r0\n" + "\t.align 2, 0\n" + "_0809C7A4: .4byte _0809C7A8\n" + "\t.align 2, 0\n" + "_0809C7A8:\n" + "\t.4byte _0809C7BC\n" + "\t.4byte _0809C7C0\n" + "\t.4byte _0809C7C4\n" + "\t.4byte _0809C7C8\n" + "\t.4byte _0809C7CC\n" + "_0809C7BC:\n" + "\tmovs r0, 0xB\n" + "\tb _0809C84C\n" + "_0809C7C0:\n" + "\tmovs r0, 0xC\n" + "\tb _0809C84C\n" + "_0809C7C4:\n" + "\tmovs r0, 0xD\n" + "\tb _0809C84C\n" + "_0809C7C8:\n" + "\tmovs r0, 0xE\n" + "\tb _0809C84C\n" + "_0809C7CC:\n" + "\tmovs r0, 0xF\n" + "\tb _0809C84C\n" + "_0809C7D0:\n" + "\tldr r2, _0809C7EC @ =gMain\n" + "\tldrh r1, [r2, 0x2E]\n" + "\tmovs r0, 0x2\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C7F8\n" + "\tldr r0, _0809C7F0 @ =gPokemonStorageSystemPtr\n" + "\tldr r0, [r0]\n" + "\tldrb r0, [r0, 0x5]\n" + "\tcmp r0, 0x1\n" + "\tbne _0809C7F4\n" + "\tmovs r0, 0x10\n" + "\tb _0809C84C\n" + "\t.align 2, 0\n" + "_0809C7EC: .4byte gMain\n" + "_0809C7F0: .4byte gPokemonStorageSystemPtr\n" + "_0809C7F4:\n" + "\tmovs r3, 0x1\n" + "\tmov r9, r3\n" + "_0809C7F8:\n" + "\tmov r0, r9\n" + "\tcmp r0, 0\n" + "\tbeq _0809C80A\n" + "\tmovs r1, 0x6\n" + "\tmov r8, r1\n" + "\tmovs r2, 0\n" + "\tmov r10, r2\n" + "\tmovs r4, 0\n" + "\tb _0809C83C\n" + "_0809C80A:\n" + "\tldrh r1, [r2, 0x2E]\n" + "\tmovs r0, 0x4\n" + "\tands r0, r1\n" + "\tcmp r0, 0\n" + "\tbeq _0809C83C\n" + "\tbl sub_809CD88\n" + "\tmovs r0, 0\n" + "\tb _0809C84C\n" + "_0809C81C:\n" + "\tlsls r0, r4, 24\n" + "\tmovs r3, 0xFF\n" + "\tlsls r3, 24\n" + "\tadds r0, r3\n" + "\tlsrs r4, r0, 24\n" + "\tcmp r0, 0\n" + "\tbge _0809C82C\n" + "\tmovs r4, 0x6\n" + "_0809C82C:\n" + "\tlsls r0, r4, 24\n" + "\tasrs r0, 24\n" + "\tmovs r1, 0\n" + "\tldrsb r1, [r7, r1]\n" + "\tcmp r0, r1\n" + "\tbeq _0809C83C\n" + "\tmovs r0, 0x1\n" + "\tmov r8, r0\n" + "_0809C83C:\n" + "\tmov r1, r8\n" + "\tcmp r1, 0\n" + "\tbeq _0809C84A\n" + "_0809C842:\n" + "\tmov r0, r10\n" + "\tadds r1, r4, 0\n" + "\tbl sub_809AF18\n" + "_0809C84A:\n" + "\tmov r0, r8\n" + "_0809C84C:\n" + "\tpop {r3-r5}\n" + "\tmov r8, r3\n" + "\tmov r9, r4\n" + "\tmov r10, r5\n" + "\tpop {r4-r7}\n" + "\tpop {r1}\n" + "\tbx r1"); +} +#endif -- cgit v1.2.3 From 5ffae54ea24eeaa1b2b1e31543b123a6304ee226 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Thu, 25 Jan 2018 16:02:49 -0800 Subject: Move phonemes to their own directory --- sound/direct_sound_data.inc | 114 ++++++++++++------------ sound/direct_sound_samples/84A7328.aif | Bin 3186 -> 0 bytes sound/direct_sound_samples/84A7F38.aif | Bin 3057 -> 0 bytes sound/direct_sound_samples/84A8AC8.aif | Bin 2814 -> 0 bytes sound/direct_sound_samples/84A9564.aif | Bin 2474 -> 0 bytes sound/direct_sound_samples/84A9EAC.aif | Bin 2729 -> 0 bytes sound/direct_sound_samples/84AA8F4.aif | Bin 3305 -> 0 bytes sound/direct_sound_samples/8639898.aif | Bin 1697 -> 0 bytes sound/direct_sound_samples/8639EF8.aif | Bin 1350 -> 0 bytes sound/direct_sound_samples/863A3DC.aif | Bin 2447 -> 0 bytes sound/direct_sound_samples/863AD2C.aif | Bin 2738 -> 0 bytes sound/direct_sound_samples/863B79C.aif | Bin 897 -> 0 bytes sound/direct_sound_samples/863BABC.aif | Bin 3273 -> 0 bytes sound/direct_sound_samples/863C744.aif | Bin 1634 -> 0 bytes sound/direct_sound_samples/863CD64.aif | Bin 999 -> 0 bytes sound/direct_sound_samples/863D0EC.aif | Bin 3619 -> 0 bytes sound/direct_sound_samples/863DED0.aif | Bin 2481 -> 0 bytes sound/direct_sound_samples/863E840.aif | Bin 1021 -> 0 bytes sound/direct_sound_samples/863EBDC.aif | Bin 2035 -> 0 bytes sound/direct_sound_samples/863F390.aif | Bin 3483 -> 0 bytes sound/direct_sound_samples/86400EC.aif | Bin 678 -> 0 bytes sound/direct_sound_samples/8640330.aif | Bin 3711 -> 0 bytes sound/direct_sound_samples/8641170.aif | Bin 2451 -> 0 bytes sound/direct_sound_samples/8641AC4.aif | Bin 948 -> 0 bytes sound/direct_sound_samples/8641E18.aif | Bin 1651 -> 0 bytes sound/direct_sound_samples/864244C.aif | Bin 3243 -> 0 bytes sound/direct_sound_samples/86430B8.aif | Bin 1529 -> 0 bytes sound/direct_sound_samples/8643650.aif | Bin 2883 -> 0 bytes sound/direct_sound_samples/8644154.aif | Bin 1605 -> 0 bytes sound/direct_sound_samples/8644758.aif | Bin 599 -> 0 bytes sound/direct_sound_samples/8644950.aif | Bin 2467 -> 0 bytes sound/direct_sound_samples/86452B4.aif | Bin 4043 -> 0 bytes sound/direct_sound_samples/8646240.aif | Bin 1687 -> 0 bytes sound/direct_sound_samples/8646878.aif | Bin 2835 -> 0 bytes sound/direct_sound_samples/864734C.aif | Bin 3974 -> 0 bytes sound/direct_sound_samples/8648290.aif | Bin 1498 -> 0 bytes sound/direct_sound_samples/8648808.aif | Bin 3723 -> 0 bytes sound/direct_sound_samples/8649654.aif | Bin 3911 -> 0 bytes sound/direct_sound_samples/864A55C.aif | Bin 2870 -> 0 bytes sound/direct_sound_samples/864B030.aif | Bin 3027 -> 0 bytes sound/direct_sound_samples/864BBC4.aif | Bin 2583 -> 0 bytes sound/direct_sound_samples/864C59C.aif | Bin 1696 -> 0 bytes sound/direct_sound_samples/864CBDC.aif | Bin 2847 -> 0 bytes sound/direct_sound_samples/864D6BC.aif | Bin 1660 -> 0 bytes sound/direct_sound_samples/864DCF8.aif | Bin 1912 -> 0 bytes sound/direct_sound_samples/864E410.aif | Bin 2427 -> 0 bytes sound/direct_sound_samples/864ED4C.aif | Bin 2043 -> 0 bytes sound/direct_sound_samples/864F508.aif | Bin 1478 -> 0 bytes sound/direct_sound_samples/864FA6C.aif | Bin 3507 -> 0 bytes sound/direct_sound_samples/86507E0.aif | Bin 1213 -> 0 bytes sound/direct_sound_samples/8650C5C.aif | Bin 1358 -> 0 bytes sound/direct_sound_samples/8651148.aif | Bin 2055 -> 0 bytes sound/direct_sound_samples/8651910.aif | Bin 3133 -> 0 bytes sound/direct_sound_samples/865250C.aif | Bin 984 -> 0 bytes sound/direct_sound_samples/8652884.aif | Bin 2043 -> 0 bytes sound/direct_sound_samples/8653040.aif | Bin 3235 -> 0 bytes sound/direct_sound_samples/8653CA4.aif | Bin 1326 -> 0 bytes sound/direct_sound_samples/8654170.aif | Bin 2799 -> 0 bytes sound/direct_sound_samples/phonemes/84A7328.aif | Bin 0 -> 3186 bytes sound/direct_sound_samples/phonemes/84A7F38.aif | Bin 0 -> 3057 bytes sound/direct_sound_samples/phonemes/84A8AC8.aif | Bin 0 -> 2814 bytes sound/direct_sound_samples/phonemes/84A9564.aif | Bin 0 -> 2474 bytes sound/direct_sound_samples/phonemes/84A9EAC.aif | Bin 0 -> 2729 bytes sound/direct_sound_samples/phonemes/84AA8F4.aif | Bin 0 -> 3305 bytes sound/direct_sound_samples/phonemes/8639898.aif | Bin 0 -> 1697 bytes sound/direct_sound_samples/phonemes/8639EF8.aif | Bin 0 -> 1350 bytes sound/direct_sound_samples/phonemes/863A3DC.aif | Bin 0 -> 2447 bytes sound/direct_sound_samples/phonemes/863AD2C.aif | Bin 0 -> 2738 bytes sound/direct_sound_samples/phonemes/863B79C.aif | Bin 0 -> 897 bytes sound/direct_sound_samples/phonemes/863BABC.aif | Bin 0 -> 3273 bytes sound/direct_sound_samples/phonemes/863C744.aif | Bin 0 -> 1634 bytes sound/direct_sound_samples/phonemes/863CD64.aif | Bin 0 -> 999 bytes sound/direct_sound_samples/phonemes/863D0EC.aif | Bin 0 -> 3619 bytes sound/direct_sound_samples/phonemes/863DED0.aif | Bin 0 -> 2481 bytes sound/direct_sound_samples/phonemes/863E840.aif | Bin 0 -> 1021 bytes sound/direct_sound_samples/phonemes/863EBDC.aif | Bin 0 -> 2035 bytes sound/direct_sound_samples/phonemes/863F390.aif | Bin 0 -> 3483 bytes sound/direct_sound_samples/phonemes/86400EC.aif | Bin 0 -> 678 bytes sound/direct_sound_samples/phonemes/8640330.aif | Bin 0 -> 3711 bytes sound/direct_sound_samples/phonemes/8641170.aif | Bin 0 -> 2451 bytes sound/direct_sound_samples/phonemes/8641AC4.aif | Bin 0 -> 948 bytes sound/direct_sound_samples/phonemes/8641E18.aif | Bin 0 -> 1651 bytes sound/direct_sound_samples/phonemes/864244C.aif | Bin 0 -> 3243 bytes sound/direct_sound_samples/phonemes/86430B8.aif | Bin 0 -> 1529 bytes sound/direct_sound_samples/phonemes/8643650.aif | Bin 0 -> 2883 bytes sound/direct_sound_samples/phonemes/8644154.aif | Bin 0 -> 1605 bytes sound/direct_sound_samples/phonemes/8644758.aif | Bin 0 -> 599 bytes sound/direct_sound_samples/phonemes/8644950.aif | Bin 0 -> 2467 bytes sound/direct_sound_samples/phonemes/86452B4.aif | Bin 0 -> 4043 bytes sound/direct_sound_samples/phonemes/8646240.aif | Bin 0 -> 1687 bytes sound/direct_sound_samples/phonemes/8646878.aif | Bin 0 -> 2835 bytes sound/direct_sound_samples/phonemes/864734C.aif | Bin 0 -> 3974 bytes sound/direct_sound_samples/phonemes/8648290.aif | Bin 0 -> 1498 bytes sound/direct_sound_samples/phonemes/8648808.aif | Bin 0 -> 3723 bytes sound/direct_sound_samples/phonemes/8649654.aif | Bin 0 -> 3911 bytes sound/direct_sound_samples/phonemes/864A55C.aif | Bin 0 -> 2870 bytes sound/direct_sound_samples/phonemes/864B030.aif | Bin 0 -> 3027 bytes sound/direct_sound_samples/phonemes/864BBC4.aif | Bin 0 -> 2583 bytes sound/direct_sound_samples/phonemes/864C59C.aif | Bin 0 -> 1696 bytes sound/direct_sound_samples/phonemes/864CBDC.aif | Bin 0 -> 2847 bytes sound/direct_sound_samples/phonemes/864D6BC.aif | Bin 0 -> 1660 bytes sound/direct_sound_samples/phonemes/864DCF8.aif | Bin 0 -> 1912 bytes sound/direct_sound_samples/phonemes/864E410.aif | Bin 0 -> 2427 bytes sound/direct_sound_samples/phonemes/864ED4C.aif | Bin 0 -> 2043 bytes sound/direct_sound_samples/phonemes/864F508.aif | Bin 0 -> 1478 bytes sound/direct_sound_samples/phonemes/864FA6C.aif | Bin 0 -> 3507 bytes sound/direct_sound_samples/phonemes/86507E0.aif | Bin 0 -> 1213 bytes sound/direct_sound_samples/phonemes/8650C5C.aif | Bin 0 -> 1358 bytes sound/direct_sound_samples/phonemes/8651148.aif | Bin 0 -> 2055 bytes sound/direct_sound_samples/phonemes/8651910.aif | Bin 0 -> 3133 bytes sound/direct_sound_samples/phonemes/865250C.aif | Bin 0 -> 984 bytes sound/direct_sound_samples/phonemes/8652884.aif | Bin 0 -> 2043 bytes sound/direct_sound_samples/phonemes/8653040.aif | Bin 0 -> 3235 bytes sound/direct_sound_samples/phonemes/8653CA4.aif | Bin 0 -> 1326 bytes sound/direct_sound_samples/phonemes/8654170.aif | Bin 0 -> 2799 bytes 115 files changed, 57 insertions(+), 57 deletions(-) delete mode 100644 sound/direct_sound_samples/84A7328.aif delete mode 100644 sound/direct_sound_samples/84A7F38.aif delete mode 100644 sound/direct_sound_samples/84A8AC8.aif delete mode 100644 sound/direct_sound_samples/84A9564.aif delete mode 100644 sound/direct_sound_samples/84A9EAC.aif delete mode 100644 sound/direct_sound_samples/84AA8F4.aif delete mode 100644 sound/direct_sound_samples/8639898.aif delete mode 100644 sound/direct_sound_samples/8639EF8.aif delete mode 100644 sound/direct_sound_samples/863A3DC.aif delete mode 100644 sound/direct_sound_samples/863AD2C.aif delete mode 100644 sound/direct_sound_samples/863B79C.aif delete mode 100644 sound/direct_sound_samples/863BABC.aif delete mode 100644 sound/direct_sound_samples/863C744.aif delete mode 100644 sound/direct_sound_samples/863CD64.aif delete mode 100644 sound/direct_sound_samples/863D0EC.aif delete mode 100644 sound/direct_sound_samples/863DED0.aif delete mode 100644 sound/direct_sound_samples/863E840.aif delete mode 100644 sound/direct_sound_samples/863EBDC.aif delete mode 100644 sound/direct_sound_samples/863F390.aif delete mode 100644 sound/direct_sound_samples/86400EC.aif delete mode 100644 sound/direct_sound_samples/8640330.aif delete mode 100644 sound/direct_sound_samples/8641170.aif delete mode 100644 sound/direct_sound_samples/8641AC4.aif delete mode 100644 sound/direct_sound_samples/8641E18.aif delete mode 100644 sound/direct_sound_samples/864244C.aif delete mode 100644 sound/direct_sound_samples/86430B8.aif delete mode 100644 sound/direct_sound_samples/8643650.aif delete mode 100644 sound/direct_sound_samples/8644154.aif delete mode 100644 sound/direct_sound_samples/8644758.aif delete mode 100644 sound/direct_sound_samples/8644950.aif delete mode 100644 sound/direct_sound_samples/86452B4.aif delete mode 100644 sound/direct_sound_samples/8646240.aif delete mode 100644 sound/direct_sound_samples/8646878.aif delete mode 100644 sound/direct_sound_samples/864734C.aif delete mode 100644 sound/direct_sound_samples/8648290.aif delete mode 100644 sound/direct_sound_samples/8648808.aif delete mode 100644 sound/direct_sound_samples/8649654.aif delete mode 100644 sound/direct_sound_samples/864A55C.aif delete mode 100644 sound/direct_sound_samples/864B030.aif delete mode 100644 sound/direct_sound_samples/864BBC4.aif delete mode 100644 sound/direct_sound_samples/864C59C.aif delete mode 100644 sound/direct_sound_samples/864CBDC.aif delete mode 100644 sound/direct_sound_samples/864D6BC.aif delete mode 100644 sound/direct_sound_samples/864DCF8.aif delete mode 100644 sound/direct_sound_samples/864E410.aif delete mode 100644 sound/direct_sound_samples/864ED4C.aif delete mode 100644 sound/direct_sound_samples/864F508.aif delete mode 100644 sound/direct_sound_samples/864FA6C.aif delete mode 100644 sound/direct_sound_samples/86507E0.aif delete mode 100644 sound/direct_sound_samples/8650C5C.aif delete mode 100644 sound/direct_sound_samples/8651148.aif delete mode 100644 sound/direct_sound_samples/8651910.aif delete mode 100644 sound/direct_sound_samples/865250C.aif delete mode 100644 sound/direct_sound_samples/8652884.aif delete mode 100644 sound/direct_sound_samples/8653040.aif delete mode 100644 sound/direct_sound_samples/8653CA4.aif delete mode 100644 sound/direct_sound_samples/8654170.aif create mode 100644 sound/direct_sound_samples/phonemes/84A7328.aif create mode 100644 sound/direct_sound_samples/phonemes/84A7F38.aif create mode 100644 sound/direct_sound_samples/phonemes/84A8AC8.aif create mode 100644 sound/direct_sound_samples/phonemes/84A9564.aif create mode 100644 sound/direct_sound_samples/phonemes/84A9EAC.aif create mode 100644 sound/direct_sound_samples/phonemes/84AA8F4.aif create mode 100644 sound/direct_sound_samples/phonemes/8639898.aif create mode 100644 sound/direct_sound_samples/phonemes/8639EF8.aif create mode 100644 sound/direct_sound_samples/phonemes/863A3DC.aif create mode 100644 sound/direct_sound_samples/phonemes/863AD2C.aif create mode 100644 sound/direct_sound_samples/phonemes/863B79C.aif create mode 100644 sound/direct_sound_samples/phonemes/863BABC.aif create mode 100644 sound/direct_sound_samples/phonemes/863C744.aif create mode 100644 sound/direct_sound_samples/phonemes/863CD64.aif create mode 100644 sound/direct_sound_samples/phonemes/863D0EC.aif create mode 100644 sound/direct_sound_samples/phonemes/863DED0.aif create mode 100644 sound/direct_sound_samples/phonemes/863E840.aif create mode 100644 sound/direct_sound_samples/phonemes/863EBDC.aif create mode 100644 sound/direct_sound_samples/phonemes/863F390.aif create mode 100644 sound/direct_sound_samples/phonemes/86400EC.aif create mode 100644 sound/direct_sound_samples/phonemes/8640330.aif create mode 100644 sound/direct_sound_samples/phonemes/8641170.aif create mode 100644 sound/direct_sound_samples/phonemes/8641AC4.aif create mode 100644 sound/direct_sound_samples/phonemes/8641E18.aif create mode 100644 sound/direct_sound_samples/phonemes/864244C.aif create mode 100644 sound/direct_sound_samples/phonemes/86430B8.aif create mode 100644 sound/direct_sound_samples/phonemes/8643650.aif create mode 100644 sound/direct_sound_samples/phonemes/8644154.aif create mode 100644 sound/direct_sound_samples/phonemes/8644758.aif create mode 100644 sound/direct_sound_samples/phonemes/8644950.aif create mode 100644 sound/direct_sound_samples/phonemes/86452B4.aif create mode 100644 sound/direct_sound_samples/phonemes/8646240.aif create mode 100644 sound/direct_sound_samples/phonemes/8646878.aif create mode 100644 sound/direct_sound_samples/phonemes/864734C.aif create mode 100644 sound/direct_sound_samples/phonemes/8648290.aif create mode 100644 sound/direct_sound_samples/phonemes/8648808.aif create mode 100644 sound/direct_sound_samples/phonemes/8649654.aif create mode 100644 sound/direct_sound_samples/phonemes/864A55C.aif create mode 100644 sound/direct_sound_samples/phonemes/864B030.aif create mode 100644 sound/direct_sound_samples/phonemes/864BBC4.aif create mode 100644 sound/direct_sound_samples/phonemes/864C59C.aif create mode 100644 sound/direct_sound_samples/phonemes/864CBDC.aif create mode 100644 sound/direct_sound_samples/phonemes/864D6BC.aif create mode 100644 sound/direct_sound_samples/phonemes/864DCF8.aif create mode 100644 sound/direct_sound_samples/phonemes/864E410.aif create mode 100644 sound/direct_sound_samples/phonemes/864ED4C.aif create mode 100644 sound/direct_sound_samples/phonemes/864F508.aif create mode 100644 sound/direct_sound_samples/phonemes/864FA6C.aif create mode 100644 sound/direct_sound_samples/phonemes/86507E0.aif create mode 100644 sound/direct_sound_samples/phonemes/8650C5C.aif create mode 100644 sound/direct_sound_samples/phonemes/8651148.aif create mode 100644 sound/direct_sound_samples/phonemes/8651910.aif create mode 100644 sound/direct_sound_samples/phonemes/865250C.aif create mode 100644 sound/direct_sound_samples/phonemes/8652884.aif create mode 100644 sound/direct_sound_samples/phonemes/8653040.aif create mode 100644 sound/direct_sound_samples/phonemes/8653CA4.aif create mode 100644 sound/direct_sound_samples/phonemes/8654170.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index d4c39b2f8..9d8f713e0 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -240,27 +240,27 @@ DirectSoundWaveData_84A5F58:: @ 84A5F58 .align 2 DirectSoundWaveData_84A7328:: @ 84A7328 - .incbin "sound/direct_sound_samples/84A7328.bin" + .incbin "sound/direct_sound_samples/phonemes/84A7328.bin" .align 2 DirectSoundWaveData_84A7F38:: @ 84A7F38 - .incbin "sound/direct_sound_samples/84A7F38.bin" + .incbin "sound/direct_sound_samples/phonemes/84A7F38.bin" .align 2 DirectSoundWaveData_84A8AC8:: @ 84A8AC8 - .incbin "sound/direct_sound_samples/84A8AC8.bin" + .incbin "sound/direct_sound_samples/phonemes/84A8AC8.bin" .align 2 DirectSoundWaveData_84A9564:: @ 84A9564 - .incbin "sound/direct_sound_samples/84A9564.bin" + .incbin "sound/direct_sound_samples/phonemes/84A9564.bin" .align 2 DirectSoundWaveData_84A9EAC:: @ 84A9EAC - .incbin "sound/direct_sound_samples/84A9EAC.bin" + .incbin "sound/direct_sound_samples/phonemes/84A9EAC.bin" .align 2 DirectSoundWaveData_84AA8F4:: @ 84AA8F4 - .incbin "sound/direct_sound_samples/84AA8F4.bin" + .incbin "sound/direct_sound_samples/phonemes/84AA8F4.bin" .align 2 Cry_Bulbasaur:: @ 84AB57C @@ -1816,207 +1816,207 @@ Cry_Chimecho:: @ 8638E88 .align 2 DirectSoundWaveData_8639898:: @ 8639898 - .incbin "sound/direct_sound_samples/8639898.bin" + .incbin "sound/direct_sound_samples/phonemes/8639898.bin" .align 2 DirectSoundWaveData_8639EF8:: @ 8639EF8 - .incbin "sound/direct_sound_samples/8639EF8.bin" + .incbin "sound/direct_sound_samples/phonemes/8639EF8.bin" .align 2 DirectSoundWaveData_863A3DC:: @ 863A3DC - .incbin "sound/direct_sound_samples/863A3DC.bin" + .incbin "sound/direct_sound_samples/phonemes/863A3DC.bin" .align 2 DirectSoundWaveData_863AD2C:: @ 863AD2C - .incbin "sound/direct_sound_samples/863AD2C.bin" + .incbin "sound/direct_sound_samples/phonemes/863AD2C.bin" .align 2 DirectSoundWaveData_863B79C:: @ 863B79C - .incbin "sound/direct_sound_samples/863B79C.bin" + .incbin "sound/direct_sound_samples/phonemes/863B79C.bin" .align 2 DirectSoundWaveData_863BABC:: @ 863BABC - .incbin "sound/direct_sound_samples/863BABC.bin" + .incbin "sound/direct_sound_samples/phonemes/863BABC.bin" .align 2 DirectSoundWaveData_863C744:: @ 863C744 - .incbin "sound/direct_sound_samples/863C744.bin" + .incbin "sound/direct_sound_samples/phonemes/863C744.bin" .align 2 DirectSoundWaveData_863CD64:: @ 863CD64 - .incbin "sound/direct_sound_samples/863CD64.bin" + .incbin "sound/direct_sound_samples/phonemes/863CD64.bin" .align 2 DirectSoundWaveData_863D0EC:: @ 863D0EC - .incbin "sound/direct_sound_samples/863D0EC.bin" + .incbin "sound/direct_sound_samples/phonemes/863D0EC.bin" .align 2 DirectSoundWaveData_863DED0:: @ 863DED0 - .incbin "sound/direct_sound_samples/863DED0.bin" + .incbin "sound/direct_sound_samples/phonemes/863DED0.bin" .align 2 DirectSoundWaveData_863E840:: @ 863E840 - .incbin "sound/direct_sound_samples/863E840.bin" + .incbin "sound/direct_sound_samples/phonemes/863E840.bin" .align 2 DirectSoundWaveData_863EBDC:: @ 863EBDC - .incbin "sound/direct_sound_samples/863EBDC.bin" + .incbin "sound/direct_sound_samples/phonemes/863EBDC.bin" .align 2 DirectSoundWaveData_863F390:: @ 863F390 - .incbin "sound/direct_sound_samples/863F390.bin" + .incbin "sound/direct_sound_samples/phonemes/863F390.bin" .align 2 DirectSoundWaveData_86400EC:: @ 86400EC - .incbin "sound/direct_sound_samples/86400EC.bin" + .incbin "sound/direct_sound_samples/phonemes/86400EC.bin" .align 2 DirectSoundWaveData_8640330:: @ 8640330 - .incbin "sound/direct_sound_samples/8640330.bin" + .incbin "sound/direct_sound_samples/phonemes/8640330.bin" .align 2 DirectSoundWaveData_8641170:: @ 8641170 - .incbin "sound/direct_sound_samples/8641170.bin" + .incbin "sound/direct_sound_samples/phonemes/8641170.bin" .align 2 DirectSoundWaveData_8641AC4:: @ 8641AC4 - .incbin "sound/direct_sound_samples/8641AC4.bin" + .incbin "sound/direct_sound_samples/phonemes/8641AC4.bin" .align 2 DirectSoundWaveData_8641E18:: @ 8641E18 - .incbin "sound/direct_sound_samples/8641E18.bin" + .incbin "sound/direct_sound_samples/phonemes/8641E18.bin" .align 2 DirectSoundWaveData_864244C:: @ 864244C - .incbin "sound/direct_sound_samples/864244C.bin" + .incbin "sound/direct_sound_samples/phonemes/864244C.bin" .align 2 DirectSoundWaveData_86430B8:: @ 86430B8 - .incbin "sound/direct_sound_samples/86430B8.bin" + .incbin "sound/direct_sound_samples/phonemes/86430B8.bin" .align 2 DirectSoundWaveData_8643650:: @ 8643650 - .incbin "sound/direct_sound_samples/8643650.bin" + .incbin "sound/direct_sound_samples/phonemes/8643650.bin" .align 2 DirectSoundWaveData_8644154:: @ 8644154 - .incbin "sound/direct_sound_samples/8644154.bin" + .incbin "sound/direct_sound_samples/phonemes/8644154.bin" .align 2 DirectSoundWaveData_8644758:: @ 8644758 - .incbin "sound/direct_sound_samples/8644758.bin" + .incbin "sound/direct_sound_samples/phonemes/8644758.bin" .align 2 DirectSoundWaveData_8644950:: @ 8644950 - .incbin "sound/direct_sound_samples/8644950.bin" + .incbin "sound/direct_sound_samples/phonemes/8644950.bin" .align 2 DirectSoundWaveData_86452B4:: @ 86452B4 - .incbin "sound/direct_sound_samples/86452B4.bin" + .incbin "sound/direct_sound_samples/phonemes/86452B4.bin" .align 2 DirectSoundWaveData_8646240:: @ 8646240 - .incbin "sound/direct_sound_samples/8646240.bin" + .incbin "sound/direct_sound_samples/phonemes/8646240.bin" .align 2 DirectSoundWaveData_8646878:: @ 8646878 - .incbin "sound/direct_sound_samples/8646878.bin" + .incbin "sound/direct_sound_samples/phonemes/8646878.bin" .align 2 DirectSoundWaveData_864734C:: @ 864734C - .incbin "sound/direct_sound_samples/864734C.bin" + .incbin "sound/direct_sound_samples/phonemes/864734C.bin" .align 2 DirectSoundWaveData_8648290:: @ 8648290 - .incbin "sound/direct_sound_samples/8648290.bin" + .incbin "sound/direct_sound_samples/phonemes/8648290.bin" .align 2 DirectSoundWaveData_8648808:: @ 8648808 - .incbin "sound/direct_sound_samples/8648808.bin" + .incbin "sound/direct_sound_samples/phonemes/8648808.bin" .align 2 DirectSoundWaveData_8649654:: @ 8649654 - .incbin "sound/direct_sound_samples/8649654.bin" + .incbin "sound/direct_sound_samples/phonemes/8649654.bin" .align 2 DirectSoundWaveData_864A55C:: @ 864A55C - .incbin "sound/direct_sound_samples/864A55C.bin" + .incbin "sound/direct_sound_samples/phonemes/864A55C.bin" .align 2 DirectSoundWaveData_864B030:: @ 864B030 - .incbin "sound/direct_sound_samples/864B030.bin" + .incbin "sound/direct_sound_samples/phonemes/864B030.bin" .align 2 DirectSoundWaveData_864BBC4:: @ 864BBC4 - .incbin "sound/direct_sound_samples/864BBC4.bin" + .incbin "sound/direct_sound_samples/phonemes/864BBC4.bin" .align 2 DirectSoundWaveData_864C59C:: @ 864C59C - .incbin "sound/direct_sound_samples/864C59C.bin" + .incbin "sound/direct_sound_samples/phonemes/864C59C.bin" .align 2 DirectSoundWaveData_864CBDC:: @ 864CBDC - .incbin "sound/direct_sound_samples/864CBDC.bin" + .incbin "sound/direct_sound_samples/phonemes/864CBDC.bin" .align 2 DirectSoundWaveData_864D6BC:: @ 864D6BC - .incbin "sound/direct_sound_samples/864D6BC.bin" + .incbin "sound/direct_sound_samples/phonemes/864D6BC.bin" .align 2 DirectSoundWaveData_864DCF8:: @ 864DCF8 - .incbin "sound/direct_sound_samples/864DCF8.bin" + .incbin "sound/direct_sound_samples/phonemes/864DCF8.bin" .align 2 DirectSoundWaveData_864E410:: @ 864E410 - .incbin "sound/direct_sound_samples/864E410.bin" + .incbin "sound/direct_sound_samples/phonemes/864E410.bin" .align 2 DirectSoundWaveData_864ED4C:: @ 864ED4C - .incbin "sound/direct_sound_samples/864ED4C.bin" + .incbin "sound/direct_sound_samples/phonemes/864ED4C.bin" .align 2 DirectSoundWaveData_864F508:: @ 864F508 - .incbin "sound/direct_sound_samples/864F508.bin" + .incbin "sound/direct_sound_samples/phonemes/864F508.bin" .align 2 DirectSoundWaveData_864FA6C:: @ 864FA6C - .incbin "sound/direct_sound_samples/864FA6C.bin" + .incbin "sound/direct_sound_samples/phonemes/864FA6C.bin" .align 2 DirectSoundWaveData_86507E0:: @ 86507E0 - .incbin "sound/direct_sound_samples/86507E0.bin" + .incbin "sound/direct_sound_samples/phonemes/86507E0.bin" .align 2 DirectSoundWaveData_8650C5C:: @ 8650C5C - .incbin "sound/direct_sound_samples/8650C5C.bin" + .incbin "sound/direct_sound_samples/phonemes/8650C5C.bin" .align 2 DirectSoundWaveData_8651148:: @ 8651148 - .incbin "sound/direct_sound_samples/8651148.bin" + .incbin "sound/direct_sound_samples/phonemes/8651148.bin" .align 2 DirectSoundWaveData_8651910:: @ 8651910 - .incbin "sound/direct_sound_samples/8651910.bin" + .incbin "sound/direct_sound_samples/phonemes/8651910.bin" .align 2 DirectSoundWaveData_865250C:: @ 865250C - .incbin "sound/direct_sound_samples/865250C.bin" + .incbin "sound/direct_sound_samples/phonemes/865250C.bin" .align 2 DirectSoundWaveData_8652884:: @ 8652884 - .incbin "sound/direct_sound_samples/8652884.bin" + .incbin "sound/direct_sound_samples/phonemes/8652884.bin" .align 2 DirectSoundWaveData_8653040:: @ 8653040 - .incbin "sound/direct_sound_samples/8653040.bin" + .incbin "sound/direct_sound_samples/phonemes/8653040.bin" .align 2 DirectSoundWaveData_8653CA4:: @ 8653CA4 - .incbin "sound/direct_sound_samples/8653CA4.bin" + .incbin "sound/direct_sound_samples/phonemes/8653CA4.bin" .align 2 DirectSoundWaveData_8654170:: @ 8654170 - .incbin "sound/direct_sound_samples/8654170.bin" + .incbin "sound/direct_sound_samples/phonemes/8654170.bin" .align 2 DirectSoundWaveData_8654C20:: @ 8654C20 diff --git a/sound/direct_sound_samples/84A7328.aif b/sound/direct_sound_samples/84A7328.aif deleted file mode 100644 index 9521d0b6e..000000000 Binary files a/sound/direct_sound_samples/84A7328.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A7F38.aif b/sound/direct_sound_samples/84A7F38.aif deleted file mode 100644 index 2519572e2..000000000 Binary files a/sound/direct_sound_samples/84A7F38.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A8AC8.aif b/sound/direct_sound_samples/84A8AC8.aif deleted file mode 100644 index d411e6612..000000000 Binary files a/sound/direct_sound_samples/84A8AC8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A9564.aif b/sound/direct_sound_samples/84A9564.aif deleted file mode 100644 index 3bc1aa839..000000000 Binary files a/sound/direct_sound_samples/84A9564.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A9EAC.aif b/sound/direct_sound_samples/84A9EAC.aif deleted file mode 100644 index 3bacf3676..000000000 Binary files a/sound/direct_sound_samples/84A9EAC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84AA8F4.aif b/sound/direct_sound_samples/84AA8F4.aif deleted file mode 100644 index 5ddaa153d..000000000 Binary files a/sound/direct_sound_samples/84AA8F4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8639898.aif b/sound/direct_sound_samples/8639898.aif deleted file mode 100644 index 4b15a94b7..000000000 Binary files a/sound/direct_sound_samples/8639898.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8639EF8.aif b/sound/direct_sound_samples/8639EF8.aif deleted file mode 100644 index 74c129073..000000000 Binary files a/sound/direct_sound_samples/8639EF8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863A3DC.aif b/sound/direct_sound_samples/863A3DC.aif deleted file mode 100644 index 359972c16..000000000 Binary files a/sound/direct_sound_samples/863A3DC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863AD2C.aif b/sound/direct_sound_samples/863AD2C.aif deleted file mode 100644 index 3b136fa43..000000000 Binary files a/sound/direct_sound_samples/863AD2C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863B79C.aif b/sound/direct_sound_samples/863B79C.aif deleted file mode 100644 index fd72512cf..000000000 Binary files a/sound/direct_sound_samples/863B79C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863BABC.aif b/sound/direct_sound_samples/863BABC.aif deleted file mode 100644 index 6f7794bec..000000000 Binary files a/sound/direct_sound_samples/863BABC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863C744.aif b/sound/direct_sound_samples/863C744.aif deleted file mode 100644 index 89b845f21..000000000 Binary files a/sound/direct_sound_samples/863C744.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863CD64.aif b/sound/direct_sound_samples/863CD64.aif deleted file mode 100644 index 1d99a3a93..000000000 Binary files a/sound/direct_sound_samples/863CD64.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863D0EC.aif b/sound/direct_sound_samples/863D0EC.aif deleted file mode 100644 index 883398129..000000000 Binary files a/sound/direct_sound_samples/863D0EC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863DED0.aif b/sound/direct_sound_samples/863DED0.aif deleted file mode 100644 index 776815e63..000000000 Binary files a/sound/direct_sound_samples/863DED0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863E840.aif b/sound/direct_sound_samples/863E840.aif deleted file mode 100644 index 545bd1292..000000000 Binary files a/sound/direct_sound_samples/863E840.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863EBDC.aif b/sound/direct_sound_samples/863EBDC.aif deleted file mode 100644 index c0a3be10d..000000000 Binary files a/sound/direct_sound_samples/863EBDC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/863F390.aif b/sound/direct_sound_samples/863F390.aif deleted file mode 100644 index d26ecdd6d..000000000 Binary files a/sound/direct_sound_samples/863F390.aif and /dev/null differ diff --git a/sound/direct_sound_samples/86400EC.aif b/sound/direct_sound_samples/86400EC.aif deleted file mode 100644 index 2b51201a4..000000000 Binary files a/sound/direct_sound_samples/86400EC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8640330.aif b/sound/direct_sound_samples/8640330.aif deleted file mode 100644 index cf5ac4e03..000000000 Binary files a/sound/direct_sound_samples/8640330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8641170.aif b/sound/direct_sound_samples/8641170.aif deleted file mode 100644 index 606742e60..000000000 Binary files a/sound/direct_sound_samples/8641170.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8641AC4.aif b/sound/direct_sound_samples/8641AC4.aif deleted file mode 100644 index 71d4987d6..000000000 Binary files a/sound/direct_sound_samples/8641AC4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8641E18.aif b/sound/direct_sound_samples/8641E18.aif deleted file mode 100644 index 070c44a37..000000000 Binary files a/sound/direct_sound_samples/8641E18.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864244C.aif b/sound/direct_sound_samples/864244C.aif deleted file mode 100644 index b0ca84a38..000000000 Binary files a/sound/direct_sound_samples/864244C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/86430B8.aif b/sound/direct_sound_samples/86430B8.aif deleted file mode 100644 index f44101b23..000000000 Binary files a/sound/direct_sound_samples/86430B8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8643650.aif b/sound/direct_sound_samples/8643650.aif deleted file mode 100644 index a33809d42..000000000 Binary files a/sound/direct_sound_samples/8643650.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8644154.aif b/sound/direct_sound_samples/8644154.aif deleted file mode 100644 index 6a005efcc..000000000 Binary files a/sound/direct_sound_samples/8644154.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8644758.aif b/sound/direct_sound_samples/8644758.aif deleted file mode 100644 index 62f9493fd..000000000 Binary files a/sound/direct_sound_samples/8644758.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8644950.aif b/sound/direct_sound_samples/8644950.aif deleted file mode 100644 index 5767bd6d9..000000000 Binary files a/sound/direct_sound_samples/8644950.aif and /dev/null differ diff --git a/sound/direct_sound_samples/86452B4.aif b/sound/direct_sound_samples/86452B4.aif deleted file mode 100644 index 33e328a82..000000000 Binary files a/sound/direct_sound_samples/86452B4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8646240.aif b/sound/direct_sound_samples/8646240.aif deleted file mode 100644 index 548e740c8..000000000 Binary files a/sound/direct_sound_samples/8646240.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8646878.aif b/sound/direct_sound_samples/8646878.aif deleted file mode 100644 index cbbe09266..000000000 Binary files a/sound/direct_sound_samples/8646878.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864734C.aif b/sound/direct_sound_samples/864734C.aif deleted file mode 100644 index 8bdf7faaa..000000000 Binary files a/sound/direct_sound_samples/864734C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8648290.aif b/sound/direct_sound_samples/8648290.aif deleted file mode 100644 index f96f8853b..000000000 Binary files a/sound/direct_sound_samples/8648290.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8648808.aif b/sound/direct_sound_samples/8648808.aif deleted file mode 100644 index ab9abbf79..000000000 Binary files a/sound/direct_sound_samples/8648808.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8649654.aif b/sound/direct_sound_samples/8649654.aif deleted file mode 100644 index 9d21d0ab4..000000000 Binary files a/sound/direct_sound_samples/8649654.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864A55C.aif b/sound/direct_sound_samples/864A55C.aif deleted file mode 100644 index c037ed4af..000000000 Binary files a/sound/direct_sound_samples/864A55C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864B030.aif b/sound/direct_sound_samples/864B030.aif deleted file mode 100644 index ac1f8b66f..000000000 Binary files a/sound/direct_sound_samples/864B030.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864BBC4.aif b/sound/direct_sound_samples/864BBC4.aif deleted file mode 100644 index 1fd9111c8..000000000 Binary files a/sound/direct_sound_samples/864BBC4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864C59C.aif b/sound/direct_sound_samples/864C59C.aif deleted file mode 100644 index 5d6ae2282..000000000 Binary files a/sound/direct_sound_samples/864C59C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864CBDC.aif b/sound/direct_sound_samples/864CBDC.aif deleted file mode 100644 index f26700690..000000000 Binary files a/sound/direct_sound_samples/864CBDC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864D6BC.aif b/sound/direct_sound_samples/864D6BC.aif deleted file mode 100644 index 3ba97a9fc..000000000 Binary files a/sound/direct_sound_samples/864D6BC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864DCF8.aif b/sound/direct_sound_samples/864DCF8.aif deleted file mode 100644 index 37f1be4b1..000000000 Binary files a/sound/direct_sound_samples/864DCF8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864E410.aif b/sound/direct_sound_samples/864E410.aif deleted file mode 100644 index 4b3facb99..000000000 Binary files a/sound/direct_sound_samples/864E410.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864ED4C.aif b/sound/direct_sound_samples/864ED4C.aif deleted file mode 100644 index 8a4d7653b..000000000 Binary files a/sound/direct_sound_samples/864ED4C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864F508.aif b/sound/direct_sound_samples/864F508.aif deleted file mode 100644 index db5bae244..000000000 Binary files a/sound/direct_sound_samples/864F508.aif and /dev/null differ diff --git a/sound/direct_sound_samples/864FA6C.aif b/sound/direct_sound_samples/864FA6C.aif deleted file mode 100644 index 6612dd54d..000000000 Binary files a/sound/direct_sound_samples/864FA6C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/86507E0.aif b/sound/direct_sound_samples/86507E0.aif deleted file mode 100644 index 441eecfcd..000000000 Binary files a/sound/direct_sound_samples/86507E0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8650C5C.aif b/sound/direct_sound_samples/8650C5C.aif deleted file mode 100644 index 95670cf0a..000000000 Binary files a/sound/direct_sound_samples/8650C5C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8651148.aif b/sound/direct_sound_samples/8651148.aif deleted file mode 100644 index 0fadcba8e..000000000 Binary files a/sound/direct_sound_samples/8651148.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8651910.aif b/sound/direct_sound_samples/8651910.aif deleted file mode 100644 index 6017c55b4..000000000 Binary files a/sound/direct_sound_samples/8651910.aif and /dev/null differ diff --git a/sound/direct_sound_samples/865250C.aif b/sound/direct_sound_samples/865250C.aif deleted file mode 100644 index 2327b6d65..000000000 Binary files a/sound/direct_sound_samples/865250C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8652884.aif b/sound/direct_sound_samples/8652884.aif deleted file mode 100644 index 19ceca0d0..000000000 Binary files a/sound/direct_sound_samples/8652884.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8653040.aif b/sound/direct_sound_samples/8653040.aif deleted file mode 100644 index 8438d301a..000000000 Binary files a/sound/direct_sound_samples/8653040.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8653CA4.aif b/sound/direct_sound_samples/8653CA4.aif deleted file mode 100644 index 74d4bcf4a..000000000 Binary files a/sound/direct_sound_samples/8653CA4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8654170.aif b/sound/direct_sound_samples/8654170.aif deleted file mode 100644 index dfef8a82b..000000000 Binary files a/sound/direct_sound_samples/8654170.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84A7328.aif b/sound/direct_sound_samples/phonemes/84A7328.aif new file mode 100644 index 000000000..9521d0b6e Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84A7328.aif differ diff --git a/sound/direct_sound_samples/phonemes/84A7F38.aif b/sound/direct_sound_samples/phonemes/84A7F38.aif new file mode 100644 index 000000000..2519572e2 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84A7F38.aif differ diff --git a/sound/direct_sound_samples/phonemes/84A8AC8.aif b/sound/direct_sound_samples/phonemes/84A8AC8.aif new file mode 100644 index 000000000..d411e6612 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84A8AC8.aif differ diff --git a/sound/direct_sound_samples/phonemes/84A9564.aif b/sound/direct_sound_samples/phonemes/84A9564.aif new file mode 100644 index 000000000..3bc1aa839 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84A9564.aif differ diff --git a/sound/direct_sound_samples/phonemes/84A9EAC.aif b/sound/direct_sound_samples/phonemes/84A9EAC.aif new file mode 100644 index 000000000..3bacf3676 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84A9EAC.aif differ diff --git a/sound/direct_sound_samples/phonemes/84AA8F4.aif b/sound/direct_sound_samples/phonemes/84AA8F4.aif new file mode 100644 index 000000000..5ddaa153d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/84AA8F4.aif differ diff --git a/sound/direct_sound_samples/phonemes/8639898.aif b/sound/direct_sound_samples/phonemes/8639898.aif new file mode 100644 index 000000000..4b15a94b7 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8639898.aif differ diff --git a/sound/direct_sound_samples/phonemes/8639EF8.aif b/sound/direct_sound_samples/phonemes/8639EF8.aif new file mode 100644 index 000000000..74c129073 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8639EF8.aif differ diff --git a/sound/direct_sound_samples/phonemes/863A3DC.aif b/sound/direct_sound_samples/phonemes/863A3DC.aif new file mode 100644 index 000000000..359972c16 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863A3DC.aif differ diff --git a/sound/direct_sound_samples/phonemes/863AD2C.aif b/sound/direct_sound_samples/phonemes/863AD2C.aif new file mode 100644 index 000000000..3b136fa43 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863AD2C.aif differ diff --git a/sound/direct_sound_samples/phonemes/863B79C.aif b/sound/direct_sound_samples/phonemes/863B79C.aif new file mode 100644 index 000000000..fd72512cf Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863B79C.aif differ diff --git a/sound/direct_sound_samples/phonemes/863BABC.aif b/sound/direct_sound_samples/phonemes/863BABC.aif new file mode 100644 index 000000000..6f7794bec Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863BABC.aif differ diff --git a/sound/direct_sound_samples/phonemes/863C744.aif b/sound/direct_sound_samples/phonemes/863C744.aif new file mode 100644 index 000000000..89b845f21 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863C744.aif differ diff --git a/sound/direct_sound_samples/phonemes/863CD64.aif b/sound/direct_sound_samples/phonemes/863CD64.aif new file mode 100644 index 000000000..1d99a3a93 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863CD64.aif differ diff --git a/sound/direct_sound_samples/phonemes/863D0EC.aif b/sound/direct_sound_samples/phonemes/863D0EC.aif new file mode 100644 index 000000000..883398129 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863D0EC.aif differ diff --git a/sound/direct_sound_samples/phonemes/863DED0.aif b/sound/direct_sound_samples/phonemes/863DED0.aif new file mode 100644 index 000000000..776815e63 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863DED0.aif differ diff --git a/sound/direct_sound_samples/phonemes/863E840.aif b/sound/direct_sound_samples/phonemes/863E840.aif new file mode 100644 index 000000000..545bd1292 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863E840.aif differ diff --git a/sound/direct_sound_samples/phonemes/863EBDC.aif b/sound/direct_sound_samples/phonemes/863EBDC.aif new file mode 100644 index 000000000..c0a3be10d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863EBDC.aif differ diff --git a/sound/direct_sound_samples/phonemes/863F390.aif b/sound/direct_sound_samples/phonemes/863F390.aif new file mode 100644 index 000000000..d26ecdd6d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/863F390.aif differ diff --git a/sound/direct_sound_samples/phonemes/86400EC.aif b/sound/direct_sound_samples/phonemes/86400EC.aif new file mode 100644 index 000000000..2b51201a4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/86400EC.aif differ diff --git a/sound/direct_sound_samples/phonemes/8640330.aif b/sound/direct_sound_samples/phonemes/8640330.aif new file mode 100644 index 000000000..cf5ac4e03 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8640330.aif differ diff --git a/sound/direct_sound_samples/phonemes/8641170.aif b/sound/direct_sound_samples/phonemes/8641170.aif new file mode 100644 index 000000000..606742e60 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8641170.aif differ diff --git a/sound/direct_sound_samples/phonemes/8641AC4.aif b/sound/direct_sound_samples/phonemes/8641AC4.aif new file mode 100644 index 000000000..71d4987d6 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8641AC4.aif differ diff --git a/sound/direct_sound_samples/phonemes/8641E18.aif b/sound/direct_sound_samples/phonemes/8641E18.aif new file mode 100644 index 000000000..070c44a37 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8641E18.aif differ diff --git a/sound/direct_sound_samples/phonemes/864244C.aif b/sound/direct_sound_samples/phonemes/864244C.aif new file mode 100644 index 000000000..b0ca84a38 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864244C.aif differ diff --git a/sound/direct_sound_samples/phonemes/86430B8.aif b/sound/direct_sound_samples/phonemes/86430B8.aif new file mode 100644 index 000000000..f44101b23 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/86430B8.aif differ diff --git a/sound/direct_sound_samples/phonemes/8643650.aif b/sound/direct_sound_samples/phonemes/8643650.aif new file mode 100644 index 000000000..a33809d42 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8643650.aif differ diff --git a/sound/direct_sound_samples/phonemes/8644154.aif b/sound/direct_sound_samples/phonemes/8644154.aif new file mode 100644 index 000000000..6a005efcc Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8644154.aif differ diff --git a/sound/direct_sound_samples/phonemes/8644758.aif b/sound/direct_sound_samples/phonemes/8644758.aif new file mode 100644 index 000000000..62f9493fd Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8644758.aif differ diff --git a/sound/direct_sound_samples/phonemes/8644950.aif b/sound/direct_sound_samples/phonemes/8644950.aif new file mode 100644 index 000000000..5767bd6d9 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8644950.aif differ diff --git a/sound/direct_sound_samples/phonemes/86452B4.aif b/sound/direct_sound_samples/phonemes/86452B4.aif new file mode 100644 index 000000000..33e328a82 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/86452B4.aif differ diff --git a/sound/direct_sound_samples/phonemes/8646240.aif b/sound/direct_sound_samples/phonemes/8646240.aif new file mode 100644 index 000000000..548e740c8 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8646240.aif differ diff --git a/sound/direct_sound_samples/phonemes/8646878.aif b/sound/direct_sound_samples/phonemes/8646878.aif new file mode 100644 index 000000000..cbbe09266 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8646878.aif differ diff --git a/sound/direct_sound_samples/phonemes/864734C.aif b/sound/direct_sound_samples/phonemes/864734C.aif new file mode 100644 index 000000000..8bdf7faaa Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864734C.aif differ diff --git a/sound/direct_sound_samples/phonemes/8648290.aif b/sound/direct_sound_samples/phonemes/8648290.aif new file mode 100644 index 000000000..f96f8853b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8648290.aif differ diff --git a/sound/direct_sound_samples/phonemes/8648808.aif b/sound/direct_sound_samples/phonemes/8648808.aif new file mode 100644 index 000000000..ab9abbf79 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8648808.aif differ diff --git a/sound/direct_sound_samples/phonemes/8649654.aif b/sound/direct_sound_samples/phonemes/8649654.aif new file mode 100644 index 000000000..9d21d0ab4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8649654.aif differ diff --git a/sound/direct_sound_samples/phonemes/864A55C.aif b/sound/direct_sound_samples/phonemes/864A55C.aif new file mode 100644 index 000000000..c037ed4af Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864A55C.aif differ diff --git a/sound/direct_sound_samples/phonemes/864B030.aif b/sound/direct_sound_samples/phonemes/864B030.aif new file mode 100644 index 000000000..ac1f8b66f Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864B030.aif differ diff --git a/sound/direct_sound_samples/phonemes/864BBC4.aif b/sound/direct_sound_samples/phonemes/864BBC4.aif new file mode 100644 index 000000000..1fd9111c8 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864BBC4.aif differ diff --git a/sound/direct_sound_samples/phonemes/864C59C.aif b/sound/direct_sound_samples/phonemes/864C59C.aif new file mode 100644 index 000000000..5d6ae2282 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864C59C.aif differ diff --git a/sound/direct_sound_samples/phonemes/864CBDC.aif b/sound/direct_sound_samples/phonemes/864CBDC.aif new file mode 100644 index 000000000..f26700690 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864CBDC.aif differ diff --git a/sound/direct_sound_samples/phonemes/864D6BC.aif b/sound/direct_sound_samples/phonemes/864D6BC.aif new file mode 100644 index 000000000..3ba97a9fc Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864D6BC.aif differ diff --git a/sound/direct_sound_samples/phonemes/864DCF8.aif b/sound/direct_sound_samples/phonemes/864DCF8.aif new file mode 100644 index 000000000..37f1be4b1 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864DCF8.aif differ diff --git a/sound/direct_sound_samples/phonemes/864E410.aif b/sound/direct_sound_samples/phonemes/864E410.aif new file mode 100644 index 000000000..4b3facb99 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864E410.aif differ diff --git a/sound/direct_sound_samples/phonemes/864ED4C.aif b/sound/direct_sound_samples/phonemes/864ED4C.aif new file mode 100644 index 000000000..8a4d7653b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864ED4C.aif differ diff --git a/sound/direct_sound_samples/phonemes/864F508.aif b/sound/direct_sound_samples/phonemes/864F508.aif new file mode 100644 index 000000000..db5bae244 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864F508.aif differ diff --git a/sound/direct_sound_samples/phonemes/864FA6C.aif b/sound/direct_sound_samples/phonemes/864FA6C.aif new file mode 100644 index 000000000..6612dd54d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/864FA6C.aif differ diff --git a/sound/direct_sound_samples/phonemes/86507E0.aif b/sound/direct_sound_samples/phonemes/86507E0.aif new file mode 100644 index 000000000..441eecfcd Binary files /dev/null and b/sound/direct_sound_samples/phonemes/86507E0.aif differ diff --git a/sound/direct_sound_samples/phonemes/8650C5C.aif b/sound/direct_sound_samples/phonemes/8650C5C.aif new file mode 100644 index 000000000..95670cf0a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8650C5C.aif differ diff --git a/sound/direct_sound_samples/phonemes/8651148.aif b/sound/direct_sound_samples/phonemes/8651148.aif new file mode 100644 index 000000000..0fadcba8e Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8651148.aif differ diff --git a/sound/direct_sound_samples/phonemes/8651910.aif b/sound/direct_sound_samples/phonemes/8651910.aif new file mode 100644 index 000000000..6017c55b4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8651910.aif differ diff --git a/sound/direct_sound_samples/phonemes/865250C.aif b/sound/direct_sound_samples/phonemes/865250C.aif new file mode 100644 index 000000000..2327b6d65 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/865250C.aif differ diff --git a/sound/direct_sound_samples/phonemes/8652884.aif b/sound/direct_sound_samples/phonemes/8652884.aif new file mode 100644 index 000000000..19ceca0d0 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8652884.aif differ diff --git a/sound/direct_sound_samples/phonemes/8653040.aif b/sound/direct_sound_samples/phonemes/8653040.aif new file mode 100644 index 000000000..8438d301a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8653040.aif differ diff --git a/sound/direct_sound_samples/phonemes/8653CA4.aif b/sound/direct_sound_samples/phonemes/8653CA4.aif new file mode 100644 index 000000000..74d4bcf4a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8653CA4.aif differ diff --git a/sound/direct_sound_samples/phonemes/8654170.aif b/sound/direct_sound_samples/phonemes/8654170.aif new file mode 100644 index 000000000..dfef8a82b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/8654170.aif differ -- cgit v1.2.3 From 2c918577867ec2bfe1085d177320878011453338 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Thu, 25 Jan 2018 19:05:17 -0800 Subject: Name a bunch of sc88 instruments --- sound/direct_sound_data.inc | 120 ++-- sound/direct_sound_samples/8456330.aif | Bin 1797 -> 0 bytes sound/direct_sound_samples/84569D4.aif | Bin 2138 -> 0 bytes sound/direct_sound_samples/84571CC.aif | Bin 3115 -> 0 bytes sound/direct_sound_samples/8457D98.aif | Bin 3993 -> 0 bytes sound/direct_sound_samples/8458CD0.aif | Bin 3284 -> 0 bytes sound/direct_sound_samples/846286C.aif | Bin 4031 -> 0 bytes sound/direct_sound_samples/84637CC.aif | Bin 5824 -> 0 bytes sound/direct_sound_samples/8464E2C.aif | Bin 5564 -> 0 bytes sound/direct_sound_samples/8466388.aif | Bin 3052 -> 0 bytes sound/direct_sound_samples/8466F14.aif | Bin 13830 -> 0 bytes sound/direct_sound_samples/846A4B8.aif | Bin 9085 -> 0 bytes sound/direct_sound_samples/846C7D4.aif | Bin 14123 -> 0 bytes sound/direct_sound_samples/846FEA0.aif | Bin 5040 -> 0 bytes sound/direct_sound_samples/84711F0.aif | Bin 5489 -> 0 bytes sound/direct_sound_samples/8472700.aif | Bin 5247 -> 0 bytes sound/direct_sound_samples/8473B20.aif | Bin 4347 -> 0 bytes sound/direct_sound_samples/8474BBC.aif | Bin 4283 -> 0 bytes sound/direct_sound_samples/8475C18.aif | Bin 28662 -> 0 bytes sound/direct_sound_samples/847CBAC.aif | Bin 17892 -> 0 bytes sound/direct_sound_samples/8481130.aif | Bin 8144 -> 0 bytes sound/direct_sound_samples/84830A0.aif | Bin 1989 -> 0 bytes sound/direct_sound_samples/8483804.aif | Bin 7344 -> 0 bytes sound/direct_sound_samples/8487330.aif | Bin 7286 -> 0 bytes sound/direct_sound_samples/848BD68.aif | Bin 1947 -> 0 bytes sound/direct_sound_samples/8492D10.aif | Bin 4178 -> 0 bytes sound/direct_sound_samples/8497134.aif | Bin 8253 -> 0 bytes sound/direct_sound_samples/849BAEC.aif | Bin 6610 -> 0 bytes sound/direct_sound_samples/849F40C.aif | Bin 13121 -> 0 bytes sound/direct_sound_samples/84A26EC.aif | Bin 2706 -> 0 bytes sound/direct_sound_samples/84A311C.aif | Bin 2709 -> 0 bytes sound/direct_sound_samples/84A5F58.aif | Bin 5169 -> 0 bytes sound/direct_sound_samples/8654C20.aif | Bin 5169 -> 0 bytes sound/direct_sound_samples/sc88/123_bubble.aif | Bin 0 -> 4178 bytes sound/direct_sound_samples/sc88/13_marimba.aif | Bin 0 -> 2709 bytes .../direct_sound_samples/sc88/15_tubular_bell.aif | Bin 0 -> 6610 bytes sound/direct_sound_samples/sc88/18_organ_2.aif | Bin 0 -> 2138 bytes sound/direct_sound_samples/sc88/1_piano_1.aif | Bin 0 -> 2706 bytes .../direct_sound_samples/sc88/22_accordion_fr.aif | Bin 0 -> 5169 bytes .../sc88/25_nylon_string_guitar.aif | Bin 0 -> 8144 bytes .../sc88/26_steel_string_guitar.aif | Bin 0 -> 4031 bytes sound/direct_sound_samples/sc88/2_piano_2.aif | Bin 0 -> 5564 bytes sound/direct_sound_samples/sc88/34_finger_slap.aif | Bin 0 -> 3993 bytes .../direct_sound_samples/sc88/34_fingered_bass.aif | Bin 0 -> 7344 bytes .../direct_sound_samples/sc88/36_fretless_bass.aif | Bin 0 -> 3115 bytes .../direct_sound_samples/sc88/39_synth_bass_1.aif | Bin 0 -> 3284 bytes sound/direct_sound_samples/sc88/3_piano_3.aif | Bin 0 -> 5824 bytes .../sc88/46_pizzicato_strings.aif | Bin 0 -> 1947 bytes sound/direct_sound_samples/sc88/49_strings.aif | Bin 0 -> 13830 bytes .../sc88/49_strings_plus_flute.aif | Bin 0 -> 9085 bytes .../sc88/49_strings_plus_horn.aif | Bin 0 -> 14123 bytes sound/direct_sound_samples/sc88/57_trumpet.aif | Bin 0 -> 5040 bytes sound/direct_sound_samples/sc88/58_trombone.aif | Bin 0 -> 5489 bytes sound/direct_sound_samples/sc88/59_tuba.aif | Bin 0 -> 5247 bytes .../sc88/60_cup_muted_trumpet.aif | Bin 0 -> 4347 bytes .../sc88/60_muted_trumpet_3.aif | Bin 0 -> 4283 bytes .../direct_sound_samples/sc88/61_french_horns.aif | Bin 0 -> 28662 bytes .../sc88/61_wide_french_horns.aif | Bin 0 -> 17892 bytes sound/direct_sound_samples/sc88/74_flute.aif | Bin 0 -> 1989 bytes sound/direct_sound_samples/sc88/81_square_wave.aif | Bin 0 -> 7286 bytes sound/direct_sound_samples/sc88/8456330.aif | Bin 0 -> 1797 bytes sound/direct_sound_samples/sc88/8466388.aif | Bin 0 -> 3052 bytes sound/direct_sound_samples/sc88/8497134.aif | Bin 0 -> 8253 bytes sound/direct_sound_samples/sc88/849F40C.aif | Bin 0 -> 13121 bytes sound/voice_groups.inc | 670 ++++++++++----------- 65 files changed, 395 insertions(+), 395 deletions(-) delete mode 100644 sound/direct_sound_samples/8456330.aif delete mode 100644 sound/direct_sound_samples/84569D4.aif delete mode 100644 sound/direct_sound_samples/84571CC.aif delete mode 100644 sound/direct_sound_samples/8457D98.aif delete mode 100644 sound/direct_sound_samples/8458CD0.aif delete mode 100644 sound/direct_sound_samples/846286C.aif delete mode 100644 sound/direct_sound_samples/84637CC.aif delete mode 100644 sound/direct_sound_samples/8464E2C.aif delete mode 100644 sound/direct_sound_samples/8466388.aif delete mode 100644 sound/direct_sound_samples/8466F14.aif delete mode 100644 sound/direct_sound_samples/846A4B8.aif delete mode 100644 sound/direct_sound_samples/846C7D4.aif delete mode 100644 sound/direct_sound_samples/846FEA0.aif delete mode 100644 sound/direct_sound_samples/84711F0.aif delete mode 100644 sound/direct_sound_samples/8472700.aif delete mode 100644 sound/direct_sound_samples/8473B20.aif delete mode 100644 sound/direct_sound_samples/8474BBC.aif delete mode 100644 sound/direct_sound_samples/8475C18.aif delete mode 100644 sound/direct_sound_samples/847CBAC.aif delete mode 100644 sound/direct_sound_samples/8481130.aif delete mode 100644 sound/direct_sound_samples/84830A0.aif delete mode 100644 sound/direct_sound_samples/8483804.aif delete mode 100644 sound/direct_sound_samples/8487330.aif delete mode 100644 sound/direct_sound_samples/848BD68.aif delete mode 100644 sound/direct_sound_samples/8492D10.aif delete mode 100644 sound/direct_sound_samples/8497134.aif delete mode 100644 sound/direct_sound_samples/849BAEC.aif delete mode 100644 sound/direct_sound_samples/849F40C.aif delete mode 100644 sound/direct_sound_samples/84A26EC.aif delete mode 100644 sound/direct_sound_samples/84A311C.aif delete mode 100644 sound/direct_sound_samples/84A5F58.aif delete mode 100644 sound/direct_sound_samples/8654C20.aif create mode 100644 sound/direct_sound_samples/sc88/123_bubble.aif create mode 100644 sound/direct_sound_samples/sc88/13_marimba.aif create mode 100644 sound/direct_sound_samples/sc88/15_tubular_bell.aif create mode 100644 sound/direct_sound_samples/sc88/18_organ_2.aif create mode 100644 sound/direct_sound_samples/sc88/1_piano_1.aif create mode 100644 sound/direct_sound_samples/sc88/22_accordion_fr.aif create mode 100644 sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif create mode 100644 sound/direct_sound_samples/sc88/26_steel_string_guitar.aif create mode 100644 sound/direct_sound_samples/sc88/2_piano_2.aif create mode 100644 sound/direct_sound_samples/sc88/34_finger_slap.aif create mode 100644 sound/direct_sound_samples/sc88/34_fingered_bass.aif create mode 100644 sound/direct_sound_samples/sc88/36_fretless_bass.aif create mode 100644 sound/direct_sound_samples/sc88/39_synth_bass_1.aif create mode 100644 sound/direct_sound_samples/sc88/3_piano_3.aif create mode 100644 sound/direct_sound_samples/sc88/46_pizzicato_strings.aif create mode 100644 sound/direct_sound_samples/sc88/49_strings.aif create mode 100644 sound/direct_sound_samples/sc88/49_strings_plus_flute.aif create mode 100644 sound/direct_sound_samples/sc88/49_strings_plus_horn.aif create mode 100644 sound/direct_sound_samples/sc88/57_trumpet.aif create mode 100644 sound/direct_sound_samples/sc88/58_trombone.aif create mode 100644 sound/direct_sound_samples/sc88/59_tuba.aif create mode 100644 sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif create mode 100644 sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif create mode 100644 sound/direct_sound_samples/sc88/61_french_horns.aif create mode 100644 sound/direct_sound_samples/sc88/61_wide_french_horns.aif create mode 100644 sound/direct_sound_samples/sc88/74_flute.aif create mode 100644 sound/direct_sound_samples/sc88/81_square_wave.aif create mode 100644 sound/direct_sound_samples/sc88/8456330.aif create mode 100644 sound/direct_sound_samples/sc88/8466388.aif create mode 100644 sound/direct_sound_samples/sc88/8497134.aif create mode 100644 sound/direct_sound_samples/sc88/849F40C.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 9d8f713e0..180a2e0a7 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -1,22 +1,22 @@ .align 2 DirectSoundWaveData_8456330:: @ 8456330 - .incbin "sound/direct_sound_samples/8456330.bin" + .incbin "sound/direct_sound_samples/sc88/8456330.bin" .align 2 -DirectSoundWaveData_84569D4:: @ 84569D4 - .incbin "sound/direct_sound_samples/84569D4.bin" +DirectSoundWaveData_SC88_Organ2:: @ 84569D4 + .incbin "sound/direct_sound_samples/sc88/18_organ_2.bin" .align 2 -DirectSoundWaveData_84571CC:: @ 84571CC - .incbin "sound/direct_sound_samples/84571CC.bin" +DirectSoundWaveData_SC88_FretlessBass:: @ 84571CC + .incbin "sound/direct_sound_samples/sc88/36_fretless_bass.bin" .align 2 -DirectSoundWaveData_8457D98:: @ 8457D98 - .incbin "sound/direct_sound_samples/8457D98.bin" +DirectSoundWaveData_SC88_FingerSlap:: @ 8457D98 + .incbin "sound/direct_sound_samples/sc88/34_finger_slap.bin" .align 2 -DirectSoundWaveData_8458CD0:: @ 8458CD0 - .incbin "sound/direct_sound_samples/8458CD0.bin" +DirectSoundWaveData_SC88_SynthBass1:: @ 8458CD0 + .incbin "sound/direct_sound_samples/sc88/39_synth_bass_1.bin" .align 2 DirectSoundWaveData_8459944:: @ 8459944 @@ -75,72 +75,72 @@ DirectSoundWaveData_84622A4:: @ 84622A4 .incbin "sound/direct_sound_samples/84622A4.bin" .align 2 -DirectSoundWaveData_846286C:: @ 846286C - .incbin "sound/direct_sound_samples/846286C.bin" +DirectSoundWaveData_SC88_SteelStringGuitar:: @ 846286C + .incbin "sound/direct_sound_samples/sc88/26_steel_string_guitar.bin" .align 2 -DirectSoundWaveData_84637CC:: @ 84637CC - .incbin "sound/direct_sound_samples/84637CC.bin" +DirectSoundWaveData_SC88_Piano3:: @ 84637CC + .incbin "sound/direct_sound_samples/sc88/3_piano_3.bin" .align 2 -DirectSoundWaveData_8464E2C:: @ 8464E2C - .incbin "sound/direct_sound_samples/8464E2C.bin" +DirectSoundWaveData_SC88_Piano2:: @ 8464E2C + .incbin "sound/direct_sound_samples/sc88/2_piano_2.bin" .align 2 DirectSoundWaveData_8466388:: @ 8466388 - .incbin "sound/direct_sound_samples/8466388.bin" + .incbin "sound/direct_sound_samples/sc88/8466388.bin" .align 2 -DirectSoundWaveData_8466F14:: @ 8466F14 - .incbin "sound/direct_sound_samples/8466F14.bin" +DirectSoundWaveData_SC88_Strings:: @ 8466F14 + .incbin "sound/direct_sound_samples/sc88/49_strings.bin" .align 2 -DirectSoundWaveData_846A4B8:: @ 846A4B8 - .incbin "sound/direct_sound_samples/846A4B8.bin" +DirectSoundWaveData_SC88_StringsPlusFlute:: @ 846A4B8 + .incbin "sound/direct_sound_samples/sc88/49_strings_plus_flute.bin" .align 2 -DirectSoundWaveData_846C7D4:: @ 846C7D4 - .incbin "sound/direct_sound_samples/846C7D4.bin" +DirectSoundWaveData_SC88_StringsPlusHorn:: @ 846C7D4 + .incbin "sound/direct_sound_samples/sc88/49_strings_plus_horn.bin" .align 2 -DirectSoundWaveData_846FEA0:: @ 846FEA0 - .incbin "sound/direct_sound_samples/846FEA0.bin" +DirectSoundWaveData_SC88_Trumpet:: @ 846FEA0 + .incbin "sound/direct_sound_samples/sc88/57_trumpet.bin" .align 2 -DirectSoundWaveData_84711F0:: @ 84711F0 - .incbin "sound/direct_sound_samples/84711F0.bin" +DirectSoundWaveData_SC88_Trombone:: @ 84711F0 + .incbin "sound/direct_sound_samples/sc88/58_trombone.bin" .align 2 -DirectSoundWaveData_8472700:: @ 8472700 - .incbin "sound/direct_sound_samples/8472700.bin" +DirectSoundWaveData_SC88_Tuba:: @ 8472700 + .incbin "sound/direct_sound_samples/sc88/59_tuba.bin" .align 2 -DirectSoundWaveData_8473B20:: @ 8473B20 - .incbin "sound/direct_sound_samples/8473B20.bin" +DirectSoundWaveData_SC88_CupMutedTrumpet:: @ 8473B20 + .incbin "sound/direct_sound_samples/sc88/60_cup_muted_trumpet.bin" .align 2 -DirectSoundWaveData_8474BBC:: @ 8474BBC - .incbin "sound/direct_sound_samples/8474BBC.bin" +DirectSoundWaveData_SC88_MutedTrumpet3:: @ 8474BBC + .incbin "sound/direct_sound_samples/sc88/60_muted_trumpet_3.bin" .align 2 -DirectSoundWaveData_8475C18:: @ 8475C18 - .incbin "sound/direct_sound_samples/8475C18.bin" +DirectSoundWaveData_SC88_FrenchHorns:: @ 8475C18 + .incbin "sound/direct_sound_samples/sc88/61_french_horns.bin" .align 2 -DirectSoundWaveData_847CBAC:: @ 847CBAC - .incbin "sound/direct_sound_samples/847CBAC.bin" +DirectSoundWaveData_SC88_WideFrenchHorns:: @ 847CBAC + .incbin "sound/direct_sound_samples/sc88/61_wide_french_horns.bin" .align 2 -DirectSoundWaveData_8481130:: @ 8481130 - .incbin "sound/direct_sound_samples/8481130.bin" +DirectSoundWaveData_SC88_NylonStringGuitar:: @ 8481130 + .incbin "sound/direct_sound_samples/sc88/25_nylon_string_guitar.bin" .align 2 -DirectSoundWaveData_84830A0:: @ 84830A0 - .incbin "sound/direct_sound_samples/84830A0.bin" +DirectSoundWaveData_SC88_Flute:: @ 84830A0 + .incbin "sound/direct_sound_samples/sc88/74_flute.bin" .align 2 -DirectSoundWaveData_8483804:: @ 8483804 - .incbin "sound/direct_sound_samples/8483804.bin" +DirectSoundWaveData_SC88_FingeredBass:: @ 8483804 + .incbin "sound/direct_sound_samples/sc88/34_fingered_bass.bin" .align 2 DirectSoundWaveData_8485454:: @ 8485454 @@ -151,8 +151,8 @@ DirectSoundWaveData_8486924:: @ 8486924 .incbin "sound/direct_sound_samples/8486924.bin" .align 2 -DirectSoundWaveData_8487330:: @ 8487330 - .incbin "sound/direct_sound_samples/8487330.bin" +DirectSoundWaveData_SC88_SquareWave:: @ 8487330 + .incbin "sound/direct_sound_samples/sc88/81_square_wave.bin" .align 2 DirectSoundWaveData_8488F44:: @ 8488F44 @@ -163,8 +163,8 @@ DirectSoundWaveData_848A8A4:: @ 848A8A4 .incbin "sound/direct_sound_samples/848A8A4.bin" .align 2 -DirectSoundWaveData_848BD68:: @ 848BD68 - .incbin "sound/direct_sound_samples/848BD68.bin" +DirectSoundWaveData_SC88_PizzicatoStrings:: @ 848BD68 + .incbin "sound/direct_sound_samples/sc88/46_pizzicato_strings.bin" .align 2 DirectSoundWaveData_848C4A4:: @ 848C4A4 @@ -183,8 +183,8 @@ DirectSoundWaveData_8491ACC:: @ 8491ACC .incbin "sound/direct_sound_samples/8491ACC.bin" .align 2 -DirectSoundWaveData_8492D10:: @ 8492D10 - .incbin "sound/direct_sound_samples/8492D10.bin" +DirectSoundWaveData_SC88_Bubble:: @ 8492D10 + .incbin "sound/direct_sound_samples/sc88/123_bubble.bin" .align 2 DirectSoundWaveData_8493D20:: @ 8493D20 @@ -196,7 +196,7 @@ DirectSoundWaveData_8495028:: @ 8495028 .align 2 DirectSoundWaveData_8497134:: @ 8497134 - .incbin "sound/direct_sound_samples/8497134.bin" + .incbin "sound/direct_sound_samples/sc88/8497134.bin" .align 2 DirectSoundWaveData_8499110:: @ 8499110 @@ -207,8 +207,8 @@ DirectSoundWaveData_849B320:: @ 849B320 .incbin "sound/direct_sound_samples/849B320.bin" .align 2 -DirectSoundWaveData_849BAEC:: @ 849BAEC - .incbin "sound/direct_sound_samples/849BAEC.bin" +DirectSoundWaveData_SC88_TubularBell:: @ 849BAEC + .incbin "sound/direct_sound_samples/sc88/15_tubular_bell.bin" .align 2 DirectSoundWaveData_849D45C:: @ 849D45C @@ -216,15 +216,15 @@ DirectSoundWaveData_849D45C:: @ 849D45C .align 2 DirectSoundWaveData_849F40C:: @ 849F40C - .incbin "sound/direct_sound_samples/849F40C.bin" + .incbin "sound/direct_sound_samples/sc88/849F40C.bin" .align 2 -DirectSoundWaveData_84A26EC:: @ 84A26EC - .incbin "sound/direct_sound_samples/84A26EC.bin" +DirectSoundWaveData_SC88_Piano1:: @ 84A26EC + .incbin "sound/direct_sound_samples/sc88/1_piano_1.bin" .align 2 -DirectSoundWaveData_84A311C:: @ 84A311C - .incbin "sound/direct_sound_samples/84A311C.bin" +DirectSoundWaveData_SC88_Marimba:: @ 84A311C + .incbin "sound/direct_sound_samples/sc88/13_marimba.bin" .align 2 DirectSoundWaveData_84A3B50:: @ 84A3B50 @@ -235,8 +235,8 @@ DirectSoundWaveData_84A5690:: @ 84A5690 .incbin "sound/direct_sound_samples/84A5690.bin" .align 2 -DirectSoundWaveData_84A5F58:: @ 84A5F58 - .incbin "sound/direct_sound_samples/84A5F58.bin" +DirectSoundWaveData_SC88_AccordianFr:: @ 84A5F58 + .incbin "sound/direct_sound_samples/sc88/22_accordion_fr.bin" .align 2 DirectSoundWaveData_84A7328:: @ 84A7328 @@ -2019,5 +2019,5 @@ DirectSoundWaveData_8654170:: @ 8654170 .incbin "sound/direct_sound_samples/phonemes/8654170.bin" .align 2 -DirectSoundWaveData_8654C20:: @ 8654C20 - .incbin "sound/direct_sound_samples/8654C20.bin" +DirectSoundWaveData_SC88_AccordionFr_Copy:: @ 8654C20 + .incbin "sound/direct_sound_samples/sc88/22_accordion_fr.bin" diff --git a/sound/direct_sound_samples/8456330.aif b/sound/direct_sound_samples/8456330.aif deleted file mode 100644 index 199ead811..000000000 Binary files a/sound/direct_sound_samples/8456330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84569D4.aif b/sound/direct_sound_samples/84569D4.aif deleted file mode 100644 index 6372bbc32..000000000 Binary files a/sound/direct_sound_samples/84569D4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84571CC.aif b/sound/direct_sound_samples/84571CC.aif deleted file mode 100644 index f3aa47d91..000000000 Binary files a/sound/direct_sound_samples/84571CC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8457D98.aif b/sound/direct_sound_samples/8457D98.aif deleted file mode 100644 index 9175b63c5..000000000 Binary files a/sound/direct_sound_samples/8457D98.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8458CD0.aif b/sound/direct_sound_samples/8458CD0.aif deleted file mode 100644 index f39931a7e..000000000 Binary files a/sound/direct_sound_samples/8458CD0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/846286C.aif b/sound/direct_sound_samples/846286C.aif deleted file mode 100644 index c2b3757b0..000000000 Binary files a/sound/direct_sound_samples/846286C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84637CC.aif b/sound/direct_sound_samples/84637CC.aif deleted file mode 100644 index 7de586c9b..000000000 Binary files a/sound/direct_sound_samples/84637CC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8464E2C.aif b/sound/direct_sound_samples/8464E2C.aif deleted file mode 100644 index 5236141ba..000000000 Binary files a/sound/direct_sound_samples/8464E2C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8466388.aif b/sound/direct_sound_samples/8466388.aif deleted file mode 100644 index a7c4e94f8..000000000 Binary files a/sound/direct_sound_samples/8466388.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8466F14.aif b/sound/direct_sound_samples/8466F14.aif deleted file mode 100644 index bfaa5c196..000000000 Binary files a/sound/direct_sound_samples/8466F14.aif and /dev/null differ diff --git a/sound/direct_sound_samples/846A4B8.aif b/sound/direct_sound_samples/846A4B8.aif deleted file mode 100644 index 3e76cacdd..000000000 Binary files a/sound/direct_sound_samples/846A4B8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/846C7D4.aif b/sound/direct_sound_samples/846C7D4.aif deleted file mode 100644 index 2647c78ec..000000000 Binary files a/sound/direct_sound_samples/846C7D4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/846FEA0.aif b/sound/direct_sound_samples/846FEA0.aif deleted file mode 100644 index e56df7f60..000000000 Binary files a/sound/direct_sound_samples/846FEA0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84711F0.aif b/sound/direct_sound_samples/84711F0.aif deleted file mode 100644 index 8c68a83b3..000000000 Binary files a/sound/direct_sound_samples/84711F0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8472700.aif b/sound/direct_sound_samples/8472700.aif deleted file mode 100644 index a03bafc97..000000000 Binary files a/sound/direct_sound_samples/8472700.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8473B20.aif b/sound/direct_sound_samples/8473B20.aif deleted file mode 100644 index d4077b481..000000000 Binary files a/sound/direct_sound_samples/8473B20.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8474BBC.aif b/sound/direct_sound_samples/8474BBC.aif deleted file mode 100644 index 2ad86876b..000000000 Binary files a/sound/direct_sound_samples/8474BBC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8475C18.aif b/sound/direct_sound_samples/8475C18.aif deleted file mode 100644 index 742c4385e..000000000 Binary files a/sound/direct_sound_samples/8475C18.aif and /dev/null differ diff --git a/sound/direct_sound_samples/847CBAC.aif b/sound/direct_sound_samples/847CBAC.aif deleted file mode 100644 index 004fda6a1..000000000 Binary files a/sound/direct_sound_samples/847CBAC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8481130.aif b/sound/direct_sound_samples/8481130.aif deleted file mode 100644 index dea429a25..000000000 Binary files a/sound/direct_sound_samples/8481130.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84830A0.aif b/sound/direct_sound_samples/84830A0.aif deleted file mode 100644 index 703f3adbd..000000000 Binary files a/sound/direct_sound_samples/84830A0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8483804.aif b/sound/direct_sound_samples/8483804.aif deleted file mode 100644 index f244a9982..000000000 Binary files a/sound/direct_sound_samples/8483804.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8487330.aif b/sound/direct_sound_samples/8487330.aif deleted file mode 100644 index 09e17f0ca..000000000 Binary files a/sound/direct_sound_samples/8487330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/848BD68.aif b/sound/direct_sound_samples/848BD68.aif deleted file mode 100644 index 1c0a027f7..000000000 Binary files a/sound/direct_sound_samples/848BD68.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8492D10.aif b/sound/direct_sound_samples/8492D10.aif deleted file mode 100644 index 89872bf55..000000000 Binary files a/sound/direct_sound_samples/8492D10.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8497134.aif b/sound/direct_sound_samples/8497134.aif deleted file mode 100644 index 09fe6f12e..000000000 Binary files a/sound/direct_sound_samples/8497134.aif and /dev/null differ diff --git a/sound/direct_sound_samples/849BAEC.aif b/sound/direct_sound_samples/849BAEC.aif deleted file mode 100644 index 9d00ecae6..000000000 Binary files a/sound/direct_sound_samples/849BAEC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/849F40C.aif b/sound/direct_sound_samples/849F40C.aif deleted file mode 100644 index 455ced13e..000000000 Binary files a/sound/direct_sound_samples/849F40C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A26EC.aif b/sound/direct_sound_samples/84A26EC.aif deleted file mode 100644 index 083c45e3d..000000000 Binary files a/sound/direct_sound_samples/84A26EC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A311C.aif b/sound/direct_sound_samples/84A311C.aif deleted file mode 100644 index 1bd43ca92..000000000 Binary files a/sound/direct_sound_samples/84A311C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A5F58.aif b/sound/direct_sound_samples/84A5F58.aif deleted file mode 100644 index 6d6c2e998..000000000 Binary files a/sound/direct_sound_samples/84A5F58.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8654C20.aif b/sound/direct_sound_samples/8654C20.aif deleted file mode 100644 index 6d6c2e998..000000000 Binary files a/sound/direct_sound_samples/8654C20.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/123_bubble.aif b/sound/direct_sound_samples/sc88/123_bubble.aif new file mode 100644 index 000000000..89872bf55 Binary files /dev/null and b/sound/direct_sound_samples/sc88/123_bubble.aif differ diff --git a/sound/direct_sound_samples/sc88/13_marimba.aif b/sound/direct_sound_samples/sc88/13_marimba.aif new file mode 100644 index 000000000..1bd43ca92 Binary files /dev/null and b/sound/direct_sound_samples/sc88/13_marimba.aif differ diff --git a/sound/direct_sound_samples/sc88/15_tubular_bell.aif b/sound/direct_sound_samples/sc88/15_tubular_bell.aif new file mode 100644 index 000000000..9d00ecae6 Binary files /dev/null and b/sound/direct_sound_samples/sc88/15_tubular_bell.aif differ diff --git a/sound/direct_sound_samples/sc88/18_organ_2.aif b/sound/direct_sound_samples/sc88/18_organ_2.aif new file mode 100644 index 000000000..6372bbc32 Binary files /dev/null and b/sound/direct_sound_samples/sc88/18_organ_2.aif differ diff --git a/sound/direct_sound_samples/sc88/1_piano_1.aif b/sound/direct_sound_samples/sc88/1_piano_1.aif new file mode 100644 index 000000000..083c45e3d Binary files /dev/null and b/sound/direct_sound_samples/sc88/1_piano_1.aif differ diff --git a/sound/direct_sound_samples/sc88/22_accordion_fr.aif b/sound/direct_sound_samples/sc88/22_accordion_fr.aif new file mode 100644 index 000000000..6d6c2e998 Binary files /dev/null and b/sound/direct_sound_samples/sc88/22_accordion_fr.aif differ diff --git a/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif b/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif new file mode 100644 index 000000000..dea429a25 Binary files /dev/null and b/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif differ diff --git a/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif b/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif new file mode 100644 index 000000000..c2b3757b0 Binary files /dev/null and b/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif differ diff --git a/sound/direct_sound_samples/sc88/2_piano_2.aif b/sound/direct_sound_samples/sc88/2_piano_2.aif new file mode 100644 index 000000000..5236141ba Binary files /dev/null and b/sound/direct_sound_samples/sc88/2_piano_2.aif differ diff --git a/sound/direct_sound_samples/sc88/34_finger_slap.aif b/sound/direct_sound_samples/sc88/34_finger_slap.aif new file mode 100644 index 000000000..9175b63c5 Binary files /dev/null and b/sound/direct_sound_samples/sc88/34_finger_slap.aif differ diff --git a/sound/direct_sound_samples/sc88/34_fingered_bass.aif b/sound/direct_sound_samples/sc88/34_fingered_bass.aif new file mode 100644 index 000000000..f244a9982 Binary files /dev/null and b/sound/direct_sound_samples/sc88/34_fingered_bass.aif differ diff --git a/sound/direct_sound_samples/sc88/36_fretless_bass.aif b/sound/direct_sound_samples/sc88/36_fretless_bass.aif new file mode 100644 index 000000000..f3aa47d91 Binary files /dev/null and b/sound/direct_sound_samples/sc88/36_fretless_bass.aif differ diff --git a/sound/direct_sound_samples/sc88/39_synth_bass_1.aif b/sound/direct_sound_samples/sc88/39_synth_bass_1.aif new file mode 100644 index 000000000..f39931a7e Binary files /dev/null and b/sound/direct_sound_samples/sc88/39_synth_bass_1.aif differ diff --git a/sound/direct_sound_samples/sc88/3_piano_3.aif b/sound/direct_sound_samples/sc88/3_piano_3.aif new file mode 100644 index 000000000..7de586c9b Binary files /dev/null and b/sound/direct_sound_samples/sc88/3_piano_3.aif differ diff --git a/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif b/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif new file mode 100644 index 000000000..1c0a027f7 Binary files /dev/null and b/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif differ diff --git a/sound/direct_sound_samples/sc88/49_strings.aif b/sound/direct_sound_samples/sc88/49_strings.aif new file mode 100644 index 000000000..bfaa5c196 Binary files /dev/null and b/sound/direct_sound_samples/sc88/49_strings.aif differ diff --git a/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif b/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif new file mode 100644 index 000000000..3e76cacdd Binary files /dev/null and b/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif differ diff --git a/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif b/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif new file mode 100644 index 000000000..2647c78ec Binary files /dev/null and b/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif differ diff --git a/sound/direct_sound_samples/sc88/57_trumpet.aif b/sound/direct_sound_samples/sc88/57_trumpet.aif new file mode 100644 index 000000000..e56df7f60 Binary files /dev/null and b/sound/direct_sound_samples/sc88/57_trumpet.aif differ diff --git a/sound/direct_sound_samples/sc88/58_trombone.aif b/sound/direct_sound_samples/sc88/58_trombone.aif new file mode 100644 index 000000000..8c68a83b3 Binary files /dev/null and b/sound/direct_sound_samples/sc88/58_trombone.aif differ diff --git a/sound/direct_sound_samples/sc88/59_tuba.aif b/sound/direct_sound_samples/sc88/59_tuba.aif new file mode 100644 index 000000000..a03bafc97 Binary files /dev/null and b/sound/direct_sound_samples/sc88/59_tuba.aif differ diff --git a/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif b/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif new file mode 100644 index 000000000..d4077b481 Binary files /dev/null and b/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif differ diff --git a/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif b/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif new file mode 100644 index 000000000..2ad86876b Binary files /dev/null and b/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif differ diff --git a/sound/direct_sound_samples/sc88/61_french_horns.aif b/sound/direct_sound_samples/sc88/61_french_horns.aif new file mode 100644 index 000000000..742c4385e Binary files /dev/null and b/sound/direct_sound_samples/sc88/61_french_horns.aif differ diff --git a/sound/direct_sound_samples/sc88/61_wide_french_horns.aif b/sound/direct_sound_samples/sc88/61_wide_french_horns.aif new file mode 100644 index 000000000..004fda6a1 Binary files /dev/null and b/sound/direct_sound_samples/sc88/61_wide_french_horns.aif differ diff --git a/sound/direct_sound_samples/sc88/74_flute.aif b/sound/direct_sound_samples/sc88/74_flute.aif new file mode 100644 index 000000000..703f3adbd Binary files /dev/null and b/sound/direct_sound_samples/sc88/74_flute.aif differ diff --git a/sound/direct_sound_samples/sc88/81_square_wave.aif b/sound/direct_sound_samples/sc88/81_square_wave.aif new file mode 100644 index 000000000..09e17f0ca Binary files /dev/null and b/sound/direct_sound_samples/sc88/81_square_wave.aif differ diff --git a/sound/direct_sound_samples/sc88/8456330.aif b/sound/direct_sound_samples/sc88/8456330.aif new file mode 100644 index 000000000..199ead811 Binary files /dev/null and b/sound/direct_sound_samples/sc88/8456330.aif differ diff --git a/sound/direct_sound_samples/sc88/8466388.aif b/sound/direct_sound_samples/sc88/8466388.aif new file mode 100644 index 000000000..a7c4e94f8 Binary files /dev/null and b/sound/direct_sound_samples/sc88/8466388.aif differ diff --git a/sound/direct_sound_samples/sc88/8497134.aif b/sound/direct_sound_samples/sc88/8497134.aif new file mode 100644 index 000000000..09fe6f12e Binary files /dev/null and b/sound/direct_sound_samples/sc88/8497134.aif differ diff --git a/sound/direct_sound_samples/sc88/849F40C.aif b/sound/direct_sound_samples/sc88/849F40C.aif new file mode 100644 index 000000000..455ced13e Binary files /dev/null and b/sound/direct_sound_samples/sc88/849F40C.aif differ diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index d9e925956..329ab3580 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -17,7 +17,7 @@ voicegroup_pokemon_cry:: @ 842FC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD30 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD3C voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD48 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 127 @ 842FD54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 127 @ 842FD54 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD60 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD6C voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD78 @@ -32,13 +32,13 @@ voicegroup_pokemon_cry:: @ 842FC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FDE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FDF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FDFC - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 842FE08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 842FE08 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE14 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE20 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE2C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 115 @ 842FE38 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 115 @ 842FE38 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE44 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 842FE50 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 842FE50 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE5C voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE68 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE74 @@ -123,22 +123,22 @@ voicegroup_842FEF8:: @ 842FEF8 .align 2 voicegroup_8430204:: @ 8430204 - voice_directsound 60, 0, DirectSoundWaveData_846286C, 255, 252, 0, 239 @ 8430204 - voice_directsound 60, 0, DirectSoundWaveData_84637CC, 255, 250, 0, 221 @ 8430210 - voice_directsound 60, 0, DirectSoundWaveData_8464E2C, 255, 250, 0, 221 @ 843021C + voice_directsound 60, 0, DirectSoundWaveData_SC88_SteelStringGuitar, 255, 252, 0, 239 @ 8430204 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano3, 255, 250, 0, 221 @ 8430210 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano2, 255, 250, 0, 221 @ 843021C voice_directsound 60, 0, DirectSoundWaveData_8466388, 255, 247, 0, 221 @ 8430228 .align 2 voicegroup_8430234:: @ 8430234 - voice_directsound 60, 0, DirectSoundWaveData_8466F14, 255, 0, 255, 196 @ 8430234 - voice_directsound 60, 0, DirectSoundWaveData_846A4B8, 255, 0, 255, 196 @ 8430240 - voice_directsound 60, 0, DirectSoundWaveData_846C7D4, 255, 0, 255, 196 @ 843024C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Strings, 255, 0, 255, 196 @ 8430234 + voice_directsound 60, 0, DirectSoundWaveData_SC88_StringsPlusFlute, 255, 0, 255, 196 @ 8430240 + voice_directsound 60, 0, DirectSoundWaveData_SC88_StringsPlusHorn, 255, 0, 255, 196 @ 843024C .align 2 voicegroup_8430258:: @ 8430258 - voice_directsound 60, 0, DirectSoundWaveData_846FEA0, 255, 0, 193, 127 @ 8430258 - voice_directsound 60, 0, DirectSoundWaveData_84711F0, 255, 0, 193, 127 @ 8430264 - voice_directsound 60, 0, DirectSoundWaveData_8472700, 255, 0, 193, 127 @ 8430270 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Trumpet, 255, 0, 193, 127 @ 8430258 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Trombone, 255, 0, 193, 127 @ 8430264 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Tuba, 255, 0, 193, 127 @ 8430270 voice_square_1_alt 38, 2, 1, 0, 0, 0 @ 843027C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430288 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430294 @@ -270,13 +270,13 @@ voicegroup_8430258:: @ 8430258 .align 2 voicegroup_843087C:: @ 843087 - voice_directsound 60, 0, DirectSoundWaveData_8473B20, 255, 0, 255, 165 @ 843087C - voice_directsound 60, 0, DirectSoundWaveData_8474BBC, 255, 0, 255, 165 @ 8430888 + voice_directsound 60, 0, DirectSoundWaveData_SC88_CupMutedTrumpet, 255, 0, 255, 165 @ 843087C + voice_directsound 60, 0, DirectSoundWaveData_SC88_MutedTrumpet3, 255, 0, 255, 165 @ 8430888 .align 2 voicegroup_8430894:: @ 8430894 - voice_directsound 60, 0, DirectSoundWaveData_8475C18, 255, 0, 224, 165 @ 8430894 - voice_directsound 60, 0, DirectSoundWaveData_847CBAC, 255, 0, 218, 165 @ 84308A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FrenchHorns, 255, 0, 224, 165 @ 8430894 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WideFrenchHorns, 255, 0, 218, 165 @ 84308A0 .align 2 voicegroup_84308AC:: @ 84308AC @@ -294,7 +294,7 @@ voicegroup_84308AC:: @ 84308AC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430930 voice_square_1 0, 2, 0, 0, 15, 0 @ 843093C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430948 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 216, 90, 242 @ 8430954 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 216, 90, 242 @ 8430954 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430960 voice_square_1 0, 2, 0, 0, 15, 0 @ 843096C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430978 @@ -326,7 +326,7 @@ voicegroup_84308AC:: @ 84308AC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430AB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430ABC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430AC8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 204 @ 8430AD4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 8430AD4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8430AE0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8430AEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430AF8 @@ -391,7 +391,7 @@ voicegroup_8430C9C:: @ 8430C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430D98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430DA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430DB0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 149 @ 8430DBC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 149 @ 8430DBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430DC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430DD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430DE0 @@ -402,7 +402,7 @@ voicegroup_8430C9C:: @ 8430C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E34 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 8430E40 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 8430E40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430E64 @@ -440,7 +440,7 @@ voicegroup_8430C9C:: @ 8430C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430FE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430FF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430FFC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8431008 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8431008 voice_programmable_wave_alt ProgrammableWaveData_84553BC, 0, 7, 15, 1 @ 8431014 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431020 voice_square_1 0, 2, 0, 0, 15, 0 @ 843102C @@ -511,7 +511,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431314 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431320 voice_square_1 0, 2, 0, 0, 15, 0 @ 843132C - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8431338 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8431338 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431344 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431350 voice_square_1 0, 2, 0, 0, 15, 0 @ 843135C @@ -536,7 +536,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431440 voice_square_1 0, 2, 0, 0, 15, 0 @ 843144C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431458 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 8431464 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 8431464 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431470 voice_square_1 0, 2, 0, 0, 15, 0 @ 843147C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431488 @@ -544,7 +544,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 84314A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84314AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84314B8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 204 @ 84314C4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 84314C4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84314D0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84314DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84314E8 @@ -571,7 +571,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 84315E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84315F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84315FC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8431608 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8431608 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431614 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431620 voice_square_1 0, 2, 0, 0, 15, 0 @ 843162C @@ -720,7 +720,7 @@ voicegroup_8431B9C:: @ 8431B9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431C98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431CA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431CB0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 149 @ 8431CBC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 149 @ 8431CBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8431CC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431CD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431CE0 @@ -742,7 +742,7 @@ voicegroup_8431B9C:: @ 8431B9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DB8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 8431DC4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8431DC4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8431DD0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8431DDC voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DE8 @@ -769,7 +769,7 @@ voicegroup_8431B9C:: @ 8431B9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431EE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431EF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431EFC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8431F08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8431F08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431F20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431F2C @@ -819,7 +819,7 @@ voicegroup_8431F98:: @ 8431F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432118 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432124 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432130 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 843213C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 843213C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432148 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432154 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432160 @@ -840,7 +840,7 @@ voicegroup_8431F98:: @ 8431F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432214 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432220 voice_square_1 0, 2, 0, 0, 15, 0 @ 843222C - voice_directsound 60, 0, DirectSoundWaveData_84A5F58, 255, 0, 255, 165 @ 8432238 + voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 8432238 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432244 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432250 voice_square_1 0, 2, 0, 0, 15, 0 @ 843225C @@ -857,7 +857,7 @@ voicegroup_8431F98:: @ 8431F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 84322E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84322EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84322F8 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8432304 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8432304 voice_programmable_wave ProgrammableWaveData_84553BC, 0, 7, 15, 1 @ 8432310 voice_square_1 0, 2, 0, 0, 15, 0 @ 843231C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432328 @@ -992,8 +992,8 @@ voicegroup_84326F4:: @ 84326F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84328EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84328F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432904 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8432910 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 204 @ 843291C + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8432910 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 843291C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432928 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8432934 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432940 @@ -1020,7 +1020,7 @@ voicegroup_84326F4:: @ 84326F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432A3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432A48 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432A54 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8432A60 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8432A60 voice_programmable_wave ProgrammableWaveData_84553BC, 0, 7, 15, 0 @ 8432A6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432A78 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432A84 @@ -1086,7 +1086,7 @@ voicegroup_8432B38:: @ 8432B38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432D30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432D3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432D48 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8432D54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8432D54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432D60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432D6C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8432D78 @@ -1114,7 +1114,7 @@ voicegroup_8432B38:: @ 8432B38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432E80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432E8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432E98 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8432EA4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8432EA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432EB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432EBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8432EC8 @@ -1217,7 +1217,7 @@ voicegroup_8433138:: @ 8433138 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433330 voice_square_1 0, 2, 0, 0, 15, 0 @ 843333C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433348 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8433354 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8433354 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433360 voice_square_1 0, 2, 0, 0, 15, 0 @ 843336C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8433378 @@ -1245,7 +1245,7 @@ voicegroup_8433138:: @ 8433138 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433480 voice_square_1 0, 2, 0, 0, 15, 0 @ 843348C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433498 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 84334A4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 84334A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84334B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84334BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84334C8 @@ -1305,7 +1305,7 @@ voicegroup_8433534:: @ 8433534 voice_square_1 0, 2, 0, 0, 15, 0 @ 843372C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433738 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433744 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8433750 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8433750 voice_square_1 0, 2, 0, 0, 15, 0 @ 843375C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433768 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8433774 @@ -1426,7 +1426,7 @@ voicegroup_8433BAC:: @ 8433BAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8433C90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433CA8 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8433CB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8433CB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433CC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433CCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8433CD8 @@ -1507,7 +1507,7 @@ voicegroup_8433EB8:: @ 8433EB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434038 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434044 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434050 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 843405C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 843405C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434068 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434074 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434080 @@ -1518,7 +1518,7 @@ voicegroup_8433EB8:: @ 8433EB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84340BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84340C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84340D4 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 84340E0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 84340E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84340EC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84340F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434104 @@ -1609,7 +1609,7 @@ voicegroup_84342E4:: @ 84342E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84344DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84344E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84344F4 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8434500 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8434500 voice_square_1 0, 2, 0, 0, 15, 0 @ 843450C voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8434518 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8434524 @@ -1637,7 +1637,7 @@ voicegroup_84342E4:: @ 84342E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843462C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434638 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434644 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8434650 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8434650 voice_square_1 0, 2, 0, 0, 15, 0 @ 843465C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434668 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434674 @@ -1731,7 +1731,7 @@ voicegroup_8434728:: @ 8434728 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434A70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434A7C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434A88 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8434A94 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8434A94 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434AA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434AAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8434AB8 @@ -1846,7 +1846,7 @@ voicegroup_8434F14:: @ 8434F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434F8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434FA4 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8434FB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8434FB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434FBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8434FC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434FD4 @@ -1871,7 +1871,7 @@ voicegroup_8434F14:: @ 8434F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 84350B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84350C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84350D0 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84350DC + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84350DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84350E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84350F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435100 @@ -1981,7 +1981,7 @@ voicegroup_8435514:: @ 8435514 voice_square_1 0, 2, 0, 0, 15, 0 @ 84355BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84355C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84355D4 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 127 @ 84355E0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 127 @ 84355E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84355EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84355F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435604 @@ -2000,7 +2000,7 @@ voicegroup_8435514:: @ 8435514 voice_square_1 0, 2, 0, 0, 15, 0 @ 84356A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84356AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84356B8 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 84356C4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 84356C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84356D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84356DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84356E8 @@ -2064,7 +2064,7 @@ voicegroup_84358F8:: @ 84358F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843597C voice_square_2_alt 2, 0, 2, 0, 0 @ 8435988 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435994 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 216, 90, 242 @ 84359A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 216, 90, 242 @ 84359A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84359AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84359B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84359C4 @@ -2095,7 +2095,7 @@ voicegroup_84358F8:: @ 84358F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435AF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435AFC voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B08 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 8435B14 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8435B14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B20 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8435B2C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8435B38 @@ -2123,7 +2123,7 @@ voicegroup_84358F8:: @ 84358F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C58 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8435C64 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8435C64 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C7C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435C88 @@ -2155,10 +2155,10 @@ voicegroup_8435D18:: @ 8435D18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435D9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DA8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DB4 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 216, 90, 242 @ 8435DC0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 216, 90, 242 @ 8435DC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DD8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 37, 165, 180, 127 @ 8435DE4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 37, 165, 180, 127 @ 8435DE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435DFC voice_square_1 0, 2, 0, 0, 15, 0 @ 8435E08 @@ -2187,7 +2187,7 @@ voicegroup_8435D18:: @ 8435D18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F34 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 8435F40 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8435F40 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8435F4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F64 @@ -2302,7 +2302,7 @@ voicegroup_84362B8:: @ 84362B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436438 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436444 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436450 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 250, 0, 149 @ 843645C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 250, 0, 149 @ 843645C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436468 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436474 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436480 @@ -2340,7 +2340,7 @@ voicegroup_84362B8:: @ 84362B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436600 voice_square_1 0, 2, 0, 0, 15, 0 @ 843660C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436618 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8436624 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8436624 voice_programmable_wave ProgrammableWaveData_84553BC, 0, 7, 15, 1 @ 8436630 voice_square_1 0, 2, 0, 0, 15, 0 @ 843663C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436648 @@ -2433,7 +2433,7 @@ voicegroup_84368B8:: @ 84368B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A44 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A50 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 8436A5C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 8436A5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436A80 @@ -2444,7 +2444,7 @@ voicegroup_84368B8:: @ 84368B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436ABC voice_square_1 0, 2, 0, 0, 15, 0 @ 8436AC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436AD4 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 8436AE0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8436AE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436AEC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8436AF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436B04 @@ -2471,7 +2471,7 @@ voicegroup_84368B8:: @ 84368B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C0C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C18 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 127, 231, 127 @ 8436C24 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 127, 231, 127 @ 8436C24 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436C48 @@ -2519,7 +2519,7 @@ voicegroup_8436C9C:: @ 8436C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E34 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8436E40 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8436E40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E64 @@ -2529,7 +2529,7 @@ voicegroup_8436C9C:: @ 8436C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436E94 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436EA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436EAC - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8436EB8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8436EB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436EC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436ED0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8436EDC @@ -2557,7 +2557,7 @@ voicegroup_8436C9C:: @ 8436C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436FE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436FF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436FFC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 8437008 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 8437008 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437014 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437020 voice_square_1 0, 2, 0, 0, 15, 0 @ 843702C @@ -2692,7 +2692,7 @@ voicegroup_8437488:: @ 8437488 voice_square_1 0, 2, 0, 0, 15, 0 @ 84375F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84375FC voice_square_1 0, 2, 0, 0, 15, 0 @ 8437608 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 8437614 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 8437614 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437620 voice_square_1 0, 2, 0, 0, 15, 0 @ 843762C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437638 @@ -2704,8 +2704,8 @@ voicegroup_8437488:: @ 8437488 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437680 voice_square_1 0, 2, 0, 0, 15, 0 @ 843768C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437698 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 84376A4 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 84376B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 84376A4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 84376B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84376BC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84376C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84376D4 @@ -2804,7 +2804,7 @@ voicegroup_8437A88:: @ 8437A88 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B0C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B24 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 216, 90, 242 @ 8437B30 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 216, 90, 242 @ 8437B30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B48 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437B54 @@ -2836,7 +2836,7 @@ voicegroup_8437A88:: @ 8437A88 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437C8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437C98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437CA4 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 8437CB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8437CB0 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8437CBC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8437CC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437CD4 @@ -2899,7 +2899,7 @@ voicegroup_8437EB4:: @ 8437EB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437F5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437F68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437F74 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 127 @ 8437F80 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 127 @ 8437F80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437F8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8437F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437FA4 @@ -2920,7 +2920,7 @@ voicegroup_8437EB4:: @ 8437EB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438058 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438064 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438070 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 843807C + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 843807C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438088 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438094 voice_square_1 0, 2, 0, 0, 15, 0 @ 84380A0 @@ -2984,14 +2984,14 @@ voicegroup_843828C:: @ 843828C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438334 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438340 voice_square_1 0, 2, 0, 0, 15, 0 @ 843834C - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 8438358 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 8438358 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438364 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438370 voice_square_1 0, 2, 0, 0, 15, 0 @ 843837C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438388 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438394 voice_square_1 0, 2, 0, 0, 15, 0 @ 84383A0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 84383AC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 84383AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84383B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84383C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84383D0 @@ -3003,7 +3003,7 @@ voicegroup_843828C:: @ 843828C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438418 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438424 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438430 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 843843C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 843843C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438448 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438454 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438460 @@ -3040,7 +3040,7 @@ voicegroup_843828C:: @ 843828C voice_square_1 0, 2, 0, 0, 15, 0 @ 84385D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84385E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84385EC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 84385F8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 84385F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438604 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438610 voice_square_1 0, 2, 0, 0, 15, 0 @ 843861C @@ -3115,14 +3115,14 @@ voicegroup_843888C:: @ 843888C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438934 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438940 voice_square_1 0, 2, 0, 0, 15, 0 @ 843894C - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 8438958 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 8438958 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438964 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438970 voice_square_1 0, 2, 0, 0, 15, 0 @ 843897C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438988 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438994 voice_square_1 0, 2, 0, 0, 15, 0 @ 84389A0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 84389AC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 84389AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84389B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84389C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84389D0 @@ -3134,7 +3134,7 @@ voicegroup_843888C:: @ 843888C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A24 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A30 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8438A3C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8438A3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A48 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438A60 @@ -3171,7 +3171,7 @@ voicegroup_843888C:: @ 843888C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438BD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438BE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438BEC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8438BF8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8438BF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438C04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438C10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438C1C @@ -3246,14 +3246,14 @@ voicegroup_8438E8C:: @ 8438E8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F34 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F4C - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 8438F58 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 8438F58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F64 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F7C voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F88 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438F94 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438FA0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8438FAC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8438FAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8438FB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438FC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8438FD0 @@ -3265,7 +3265,7 @@ voicegroup_8438E8C:: @ 8438E8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439018 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439024 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439030 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 843903C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 843903C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439048 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439054 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439060 @@ -3302,7 +3302,7 @@ voicegroup_8438E8C:: @ 8438E8C voice_square_1 0, 2, 0, 0, 15, 0 @ 84391D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84391E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84391EC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 84391F8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 84391F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439204 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439210 voice_square_1 0, 2, 0, 0, 15, 0 @ 843921C @@ -3377,14 +3377,14 @@ voicegroup_843948C:: @ 843948C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439534 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439540 voice_square_1 0, 2, 0, 0, 15, 0 @ 843954C - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 8439558 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 8439558 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439564 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439570 voice_square_1 0, 2, 0, 0, 15, 0 @ 843957C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439588 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439594 voice_square_1 0, 2, 0, 0, 15, 0 @ 84395A0 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 84395AC + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 84395AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84395B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84395C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84395D0 @@ -3396,7 +3396,7 @@ voicegroup_843948C:: @ 843948C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439618 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439624 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439630 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 843963C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 843963C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439648 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439654 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439660 @@ -3433,7 +3433,7 @@ voicegroup_843948C:: @ 843948C voice_square_1 0, 2, 0, 0, 15, 0 @ 84397D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84397E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84397EC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 84397F8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 84397F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439804 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439810 voice_square_1 0, 2, 0, 0, 15, 0 @ 843981C @@ -3523,7 +3523,7 @@ voicegroup_8439A8C:: @ 8439A8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439BF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439C00 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 149 @ 8439C0C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 149 @ 8439C0C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439C18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439C24 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439C30 @@ -3564,7 +3564,7 @@ voicegroup_8439A8C:: @ 8439A8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8439DD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439DE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439DEC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 8439DF8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 8439DF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439E04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439E10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439E1C @@ -3610,7 +3610,7 @@ voicegroup_8439E58:: @ 8439E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439FD8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439FE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8439FF0 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 224 @ 8439FFC + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 224 @ 8439FFC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A008 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A014 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A020 @@ -3620,7 +3620,7 @@ voicegroup_8439E58:: @ 8439E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A050 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A05C voice_square_1 0, 2, 0, 0, 15, 0 @ 843A068 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 843A074 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843A074 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A080 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A08C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843A098 @@ -3648,7 +3648,7 @@ voicegroup_8439E58:: @ 8439E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1AC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1B8 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843A1C4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843A1C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1DC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A1E8 @@ -3676,7 +3676,7 @@ voicegroup_843A224:: @ 843A224 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A2CC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A2D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A2E4 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 843A2F0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 843A2F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A2FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A308 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A314 @@ -3697,7 +3697,7 @@ voicegroup_843A224:: @ 843A224 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A3C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A3D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A3E0 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 216 @ 843A3EC + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 216 @ 843A3EC voice_square_1 0, 2, 0, 0, 15, 0 @ 843A3F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A404 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A410 @@ -3732,7 +3732,7 @@ voicegroup_843A224:: @ 843A224 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A56C voice_square_1 0, 2, 0, 0, 15, 0 @ 843A578 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A584 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843A590 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843A590 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A59C voice_square_1 0, 2, 0, 0, 15, 0 @ 843A5A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A5B4 @@ -3795,7 +3795,7 @@ voicegroup_843A824:: @ 843A824 voice_square_1_alt 0, 0, 1, 1, 9, 0 @ 843A83C voice_square_2_alt 2, 0, 2, 6, 3 @ 843A848 voice_programmable_wave_alt ProgrammableWaveData_84553DC, 0, 7, 15, 1 @ 843A854 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 216 @ 843A860 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 216 @ 843A860 voice_square_2_alt 1, 0, 2, 6, 3 @ 843A86C voice_square_1 0, 2, 0, 0, 15, 0 @ 843A878 voice_square_1 0, 2, 0, 0, 15, 0 @ 843A884 @@ -3835,7 +3835,7 @@ voicegroup_843A824:: @ 843A824 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AA1C voice_square_1 0, 2, 0, 0, 15, 0 @ 843AA28 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AA34 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 165 @ 843AA40 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 165 @ 843AA40 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AA4C voice_square_1 0, 2, 0, 0, 15, 0 @ 843AA58 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843AA64 @@ -3863,7 +3863,7 @@ voicegroup_843A824:: @ 843A824 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AB6C voice_square_1 0, 2, 0, 0, 15, 0 @ 843AB78 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AB84 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843AB90 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843AB90 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AB9C voice_square_1 0, 2, 0, 0, 15, 0 @ 843ABA8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ABB4 @@ -3959,7 +3959,7 @@ voicegroup_843AE24:: @ 843AE24 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AFC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AFD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843AFE0 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 843AFEC + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 843AFEC voice_square_1 0, 2, 0, 0, 15, 0 @ 843AFF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B004 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B010 @@ -3967,7 +3967,7 @@ voicegroup_843AE24:: @ 843AE24 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B028 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B034 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B040 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 204 @ 843B04C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 843B04C voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 204, 193, 239 @ 843B058 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843B064 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B070 @@ -4098,7 +4098,7 @@ voicegroup_843B424:: @ 843B424 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B628 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B634 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B640 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 843B64C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843B64C voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 239 @ 843B658 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843B664 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B670 @@ -4178,7 +4178,7 @@ voicegroup_843B844:: @ 843B844 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B9C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B9D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B9DC - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843B9E8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843B9E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B9F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA00 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA0C @@ -4188,8 +4188,8 @@ voicegroup_843B844:: @ 843B844 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA3C voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA48 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA54 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 843BA60 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 843BA6C + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843BA60 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843BA6C voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 226 @ 843BA78 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843BA84 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA90 @@ -4216,7 +4216,7 @@ voicegroup_843B844:: @ 843B844 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BB8C voice_square_1 0, 2, 0, 0, 15, 0 @ 843BB98 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BBA4 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843BBB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843BBB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BBBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843BBC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BBD4 @@ -4291,7 +4291,7 @@ voicegroup_843BE44:: @ 843BE44 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BEEC voice_square_1 0, 2, 0, 0, 15, 0 @ 843BEF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BF04 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 843BF10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 843BF10 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BF1C voice_square_1 0, 2, 0, 0, 15, 0 @ 843BF28 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BF34 @@ -4309,7 +4309,7 @@ voicegroup_843BE44:: @ 843BE44 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BFC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BFD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BFDC - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843BFE8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843BFE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BFF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C000 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C00C @@ -4320,7 +4320,7 @@ voicegroup_843BE44:: @ 843BE44 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C048 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C054 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C060 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 843C06C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843C06C voice_square_1 0, 2, 0, 0, 15, 0 @ 843C078 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C084 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C090 @@ -4440,7 +4440,7 @@ voicegroup_843C444:: @ 843C444 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C5C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C5D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C5DC - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843C5E8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843C5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C5F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C600 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C60C @@ -4450,7 +4450,7 @@ voicegroup_843C444:: @ 843C444 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C63C voice_square_1 0, 2, 0, 0, 15, 0 @ 843C648 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C654 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 99 @ 843C660 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 99 @ 843C660 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C66C voice_square_1 0, 2, 0, 0, 15, 0 @ 843C678 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843C684 @@ -4478,7 +4478,7 @@ voicegroup_843C444:: @ 843C444 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C78C voice_square_1 0, 2, 0, 0, 15, 0 @ 843C798 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C7A4 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843C7B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843C7B0 .align 2 voicegroup_843C7BC:: @ 843C7BC @@ -4648,7 +4648,7 @@ voicegroup_843CDBC:: @ 843CDBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF3C voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF48 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF54 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843CF60 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843CF60 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF6C voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF78 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CF84 @@ -4658,7 +4658,7 @@ voicegroup_843CDBC:: @ 843CDBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843CFB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CFC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CFCC - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 843CFD8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843CFD8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CFE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CFF0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843CFFC @@ -4686,7 +4686,7 @@ voicegroup_843CDBC:: @ 843CDBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843D104 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D110 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D11C - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843D128 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843D128 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D134 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D140 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D14C @@ -4789,8 +4789,8 @@ voicegroup_843D3BC:: @ 843D3BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843D5B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D5C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D5CC - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 843D5D8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 843D5E4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843D5D8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843D5E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D5F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843D5FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843D608 @@ -4817,7 +4817,7 @@ voicegroup_843D3BC:: @ 843D3BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843D704 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D710 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D71C - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843D728 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843D728 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D734 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D740 voice_square_1 0, 2, 0, 0, 15, 0 @ 843D74C @@ -4913,7 +4913,7 @@ voicegroup_843D9BC:: @ 843D9BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DB60 voice_square_1 0, 2, 0, 0, 15, 0 @ 843DB6C voice_square_1 0, 2, 0, 0, 15, 0 @ 843DB78 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 843DB84 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 843DB84 voice_square_1 0, 2, 0, 0, 15, 0 @ 843DB90 voice_square_1 0, 2, 0, 0, 15, 0 @ 843DB9C voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBA8 @@ -4921,7 +4921,7 @@ voicegroup_843D9BC:: @ 843D9BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBCC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBD8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 204 @ 843DBE4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 843DBE4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 204, 193, 239 @ 843DBF0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843DBFC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DC08 @@ -5044,7 +5044,7 @@ voicegroup_843DFBC:: @ 843DFBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E160 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E16C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E178 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 843E184 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 843E184 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E190 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E19C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E1A8 @@ -5079,7 +5079,7 @@ voicegroup_843DFBC:: @ 843DFBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E304 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E310 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E31C - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843E328 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843E328 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E334 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E340 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E34C @@ -5151,7 +5151,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E640 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E64C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E658 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 128, 165, 90, 216 @ 843E664 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 128, 165, 90, 216 @ 843E664 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E670 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E67C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E688 @@ -5160,7 +5160,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6AC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6C4 - voice_directsound 60, 0, DirectSoundWaveData_8492D10, 255, 0, 255, 127 @ 843E6D0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Bubble, 255, 0, 255, 127 @ 843E6D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6DC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E6F4 @@ -5172,7 +5172,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E73C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E748 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E754 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843E760 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843E760 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E76C voice_square_1 0, 2, 0, 0, 15, 0 @ 843E778 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E784 @@ -5182,8 +5182,8 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E7B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E7C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E7CC - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 843E7D8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 843E7E4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843E7D8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843E7E4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 226 @ 843E7F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843E7FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E808 @@ -5210,7 +5210,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E904 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E910 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E91C - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843E928 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843E928 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E934 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E940 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E94C @@ -5285,7 +5285,7 @@ voicegroup_843EBBC:: @ 843EBBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843EC64 voice_square_1 0, 2, 0, 0, 15, 0 @ 843EC70 voice_square_1 0, 2, 0, 0, 15, 0 @ 843EC7C - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 843EC88 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 843EC88 voice_square_1 0, 2, 0, 0, 15, 0 @ 843EC94 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ECA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ECAC @@ -5303,7 +5303,7 @@ voicegroup_843EBBC:: @ 843EBBC voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED3C voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED48 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED54 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 843ED60 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 843ED60 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED6C voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED78 voice_square_1 0, 2, 0, 0, 15, 0 @ 843ED84 @@ -5413,7 +5413,7 @@ voicegroup_843F1BC:: @ 843F1BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F240 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F24C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F258 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 843F264 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 843F264 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F270 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F27C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F288 @@ -5445,7 +5445,7 @@ voicegroup_843F1BC:: @ 843F1BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F3C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F3CC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F3D8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 843F3E4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 843F3E4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 843F3F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843F3FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F408 @@ -5472,7 +5472,7 @@ voicegroup_843F1BC:: @ 843F1BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F504 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F510 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F51C - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 843F528 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 843F528 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F534 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F540 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F54C @@ -5504,7 +5504,7 @@ voicegroup_843F5E8:: @ 843F5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F660 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F66C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F678 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 843F684 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 843F684 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F690 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F69C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F6A8 @@ -5536,8 +5536,8 @@ voicegroup_843F5E8:: @ 843F5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F7E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F7EC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F7F8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 128, 226, 0, 38 @ 843F804 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 843F810 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 128, 226, 0, 38 @ 843F804 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 843F810 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 843F81C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843F828 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F834 @@ -5564,7 +5564,7 @@ voicegroup_843F5E8:: @ 843F5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F930 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F93C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F948 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 843F954 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 843F954 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F960 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F96C voice_square_1 0, 2, 0, 0, 15, 0 @ 843F978 @@ -5639,7 +5639,7 @@ voicegroup_843FBE8:: @ 843FBE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FC90 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FC9C voice_square_1 0, 2, 0, 0, 15, 0 @ 843FCA8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 843FCB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 843FCB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FCC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FCCC voice_square_1 0, 2, 0, 0, 15, 0 @ 843FCD8 @@ -5658,7 +5658,7 @@ voicegroup_843FBE8:: @ 843FBE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FD74 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FD80 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FD8C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 115 @ 843FD98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 115 @ 843FD98 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FDA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FDB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FDBC @@ -5695,7 +5695,7 @@ voicegroup_843FBE8:: @ 843FBE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF30 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF3C voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF48 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 843FF54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 843FF54 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF60 voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF6C voice_square_1 0, 2, 0, 0, 15, 0 @ 843FF78 @@ -5791,7 +5791,7 @@ voicegroup_84401E8:: @ 84401E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844038C voice_square_1 0, 2, 0, 0, 15, 0 @ 8440398 voice_square_1 0, 2, 0, 0, 15, 0 @ 84403A4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84403B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84403B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84403BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84403C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84403D4 @@ -5901,7 +5901,7 @@ voicegroup_84407E8:: @ 84407E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440890 voice_square_1 0, 2, 0, 0, 15, 0 @ 844089C voice_square_1 0, 2, 0, 0, 15, 0 @ 84408A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 84408B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 84408B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84408C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84408CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84408D8 @@ -5920,7 +5920,7 @@ voicegroup_84407E8:: @ 84407E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440974 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440980 voice_square_1 0, 2, 0, 0, 15, 0 @ 844098C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8440998 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8440998 voice_square_1 0, 2, 0, 0, 15, 0 @ 84409A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84409B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84409BC @@ -6039,7 +6039,7 @@ voicegroup_8440DE8:: @ 8440DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440EE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440EF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440EFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8440F08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8440F08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440F20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440F2C @@ -6061,7 +6061,7 @@ voicegroup_8440DE8:: @ 8440DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440FEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8440FF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441004 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8441010 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8441010 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844101C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8441028 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441034 @@ -6088,7 +6088,7 @@ voicegroup_8440DE8:: @ 8440DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441130 voice_square_1 0, 2, 0, 0, 15, 0 @ 844113C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441148 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8441154 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8441154 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441160 voice_square_1 0, 2, 0, 0, 15, 0 @ 844116C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441178 @@ -6163,7 +6163,7 @@ voicegroup_84413E8:: @ 84413E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441490 voice_square_1 0, 2, 0, 0, 15, 0 @ 844149C voice_square_1 0, 2, 0, 0, 15, 0 @ 84414A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 84414B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 84414B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84414C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84414CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84414D8 @@ -6182,7 +6182,7 @@ voicegroup_84413E8:: @ 84413E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441574 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441580 voice_square_1 0, 2, 0, 0, 15, 0 @ 844158C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8441598 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8441598 voice_square_1 0, 2, 0, 0, 15, 0 @ 84415A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84415B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84415BC @@ -6301,7 +6301,7 @@ voicegroup_84419E8:: @ 84419E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441AE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441AF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441AFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8441B08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8441B08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B2C @@ -6312,17 +6312,17 @@ voicegroup_84419E8:: @ 84419E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B80 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8441B8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8441B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441B98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BA4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 8441BB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 8441BB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8441BF8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8441C04 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8441C04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441C10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441C1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441C28 @@ -6350,7 +6350,7 @@ voicegroup_84419E8:: @ 84419E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D48 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8441D54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8441D54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8441D78 @@ -6425,14 +6425,14 @@ voicegroup_8441FE8:: @ 8441FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442090 voice_square_1 0, 2, 0, 0, 15, 0 @ 844209C voice_square_1 0, 2, 0, 0, 15, 0 @ 84420A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 84420B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 84420B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84420C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84420CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84420D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84420E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84420F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84420FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8442108 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8442108 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442114 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442120 voice_square_1 0, 2, 0, 0, 15, 0 @ 844212C @@ -6446,7 +6446,7 @@ voicegroup_8441FE8:: @ 8441FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844218C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442198 voice_square_1 0, 2, 0, 0, 15, 0 @ 84421A4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84421B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84421B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84421BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84421C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84421D4 @@ -6481,7 +6481,7 @@ voicegroup_8441FE8:: @ 8441FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442330 voice_square_1 0, 2, 0, 0, 15, 0 @ 844233C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442348 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8442354 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8442354 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442360 voice_square_1 0, 2, 0, 0, 15, 0 @ 844236C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442378 @@ -6553,17 +6553,17 @@ voicegroup_84425E8:: @ 84425E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844266C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442678 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442684 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8442690 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8442690 voice_square_1 0, 2, 0, 0, 15, 0 @ 844269C voice_square_1 0, 2, 0, 0, 15, 0 @ 84426A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 84426B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 84426B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84426C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84426CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84426D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84426E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84426F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84426FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8442708 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8442708 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442714 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442720 voice_square_1 0, 2, 0, 0, 15, 0 @ 844272C @@ -6574,10 +6574,10 @@ voicegroup_84425E8:: @ 84425E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442768 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442774 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442780 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844278C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844278C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442798 voice_square_1 0, 2, 0, 0, 15, 0 @ 84427A4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84427B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84427B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84427BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84427C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84427D4 @@ -6612,7 +6612,7 @@ voicegroup_84425E8:: @ 84425E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442930 voice_square_1 0, 2, 0, 0, 15, 0 @ 844293C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442948 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8442954 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8442954 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442960 voice_square_1 0, 2, 0, 0, 15, 0 @ 844296C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442978 @@ -6687,14 +6687,14 @@ voicegroup_8442BE8:: @ 8442BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442C90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CA8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 8442CB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 8442CB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CD8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442CFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8442D08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8442D08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D2C @@ -6705,17 +6705,17 @@ voicegroup_8442BE8:: @ 8442BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D80 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8442D8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8442D8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442D98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DA4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 8442DB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 8442DB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8442DF8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8442E04 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8442E04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442E10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442E1C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8442E28 @@ -6743,7 +6743,7 @@ voicegroup_8442BE8:: @ 8442BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F48 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8442F54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8442F54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8442F78 @@ -6825,7 +6825,7 @@ voicegroup_84431E8:: @ 84431E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84432E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84432F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84432FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8443308 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8443308 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443314 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443320 voice_square_1 0, 2, 0, 0, 15, 0 @ 844332C @@ -6836,7 +6836,7 @@ voicegroup_84431E8:: @ 84431E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443368 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443374 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443380 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844338C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844338C voice_square_1 0, 2, 0, 0, 15, 0 @ 8443398 voice_square_1 0, 2, 0, 0, 15, 0 @ 84433A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84433B0 @@ -6847,7 +6847,7 @@ voicegroup_84431E8:: @ 84431E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84433EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84433F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443404 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8443410 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8443410 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844341C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8443428 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443434 @@ -7076,18 +7076,18 @@ voicegroup_8443DE8:: @ 8443DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443E60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443E6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8443E78 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8443E84 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8443E84 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443E90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443E9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8443EA8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 8443EB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 8443EB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443EC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443ECC voice_square_1 0, 2, 0, 0, 15, 0 @ 8443ED8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443EE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443EF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443EFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8443F08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8443F08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F2C @@ -7098,7 +7098,7 @@ voicegroup_8443DE8:: @ 8443DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F80 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8443F8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8443F8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8443F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443FA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443FB0 @@ -7109,7 +7109,7 @@ voicegroup_8443DE8:: @ 8443DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443FEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8443FF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444004 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8444010 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8444010 voice_square_1 0, 2, 0, 0, 15, 0 @ 844401C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8444028 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444034 @@ -7207,18 +7207,18 @@ voicegroup_84443E8:: @ 84443E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444460 voice_square_1 0, 2, 0, 0, 15, 0 @ 844446C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444478 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8444484 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8444484 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444490 voice_square_1 0, 2, 0, 0, 15, 0 @ 844449C voice_square_1 0, 2, 0, 0, 15, 0 @ 84444A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 84444B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 84444B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84444C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84444CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84444D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84444E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84444F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84444FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8444508 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8444508 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444514 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444520 voice_square_1 0, 2, 0, 0, 15, 0 @ 844452C @@ -7229,10 +7229,10 @@ voicegroup_84443E8:: @ 84443E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444568 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444574 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444580 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844458C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844458C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444598 voice_square_1 0, 2, 0, 0, 15, 0 @ 84445A4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84445B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84445B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84445BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84445C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84445D4 @@ -7240,7 +7240,7 @@ voicegroup_84443E8:: @ 84443E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84445EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84445F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444604 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8444610 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8444610 voice_square_1 0, 2, 0, 0, 15, 0 @ 844461C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8444628 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444634 @@ -7267,7 +7267,7 @@ voicegroup_84443E8:: @ 84443E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444730 voice_square_1 0, 2, 0, 0, 15, 0 @ 844473C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444748 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8444754 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8444754 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444760 voice_square_1 0, 2, 0, 0, 15, 0 @ 844476C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444778 @@ -7338,7 +7338,7 @@ voicegroup_84449E8:: @ 84449E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444A60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444A6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444A78 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8444A84 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8444A84 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444A90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444A9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444AA8 @@ -7360,7 +7360,7 @@ voicegroup_84449E8:: @ 84449E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444B68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444B74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444B80 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8444B8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8444B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444B98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444BA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444BB0 @@ -7470,7 +7470,7 @@ voicegroup_8444FE8:: @ 8444FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844506C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445078 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445084 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8445090 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8445090 voice_square_1 0, 2, 0, 0, 15, 0 @ 844509C voice_square_1 0, 2, 0, 0, 15, 0 @ 84450A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84450B4 @@ -7491,8 +7491,8 @@ voicegroup_8444FE8:: @ 8444FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445168 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445174 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445180 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844518C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8445198 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844518C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8445198 voice_square_1 0, 2, 0, 0, 15, 0 @ 84451A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84451B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84451BC @@ -7529,7 +7529,7 @@ voicegroup_8444FE8:: @ 8444FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445330 voice_square_1 0, 2, 0, 0, 15, 0 @ 844533C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445348 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8445354 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8445354 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445360 voice_square_1 0, 2, 0, 0, 15, 0 @ 844536C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445378 @@ -7604,7 +7604,7 @@ voicegroup_84455E8:: @ 84455E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445690 voice_square_1 0, 2, 0, 0, 15, 0 @ 844569C voice_square_1 0, 2, 0, 0, 15, 0 @ 84456A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 84456B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 84456B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84456C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84456CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84456D8 @@ -7622,8 +7622,8 @@ voicegroup_84455E8:: @ 84455E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445768 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445774 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445780 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844578C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8445798 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844578C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8445798 voice_square_1 0, 2, 0, 0, 15, 0 @ 84457A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84457B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84457BC @@ -7731,18 +7731,18 @@ voicegroup_8445BE8:: @ 8445BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445C60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445C6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445C78 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 8445C84 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 8445C84 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445C90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445C9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CA8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 8445CB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 8445CB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CD8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445CFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8445D08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8445D08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D2C @@ -7753,7 +7753,7 @@ voicegroup_8445BE8:: @ 8445BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D80 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 196 @ 8445D8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 196 @ 8445D8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445D98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445DA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445DB0 @@ -7764,7 +7764,7 @@ voicegroup_8445BE8:: @ 8445BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445DEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8445DF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445E04 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8445E10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8445E10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445E1C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8445E28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445E34 @@ -7791,7 +7791,7 @@ voicegroup_8445BE8:: @ 8445BE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F48 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8445F54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8445F54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8445F78 @@ -7863,7 +7863,7 @@ voicegroup_84461E8:: @ 84461E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844626C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446278 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446284 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8446290 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8446290 voice_square_1 0, 2, 0, 0, 15, 0 @ 844629C voice_square_1 0, 2, 0, 0, 15, 0 @ 84462A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84462B4 @@ -7873,7 +7873,7 @@ voicegroup_84461E8:: @ 84461E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84462E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84462F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84462FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8446308 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8446308 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446314 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446320 voice_square_1 0, 2, 0, 0, 15, 0 @ 844632C @@ -7884,7 +7884,7 @@ voicegroup_84461E8:: @ 84461E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446368 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446374 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446380 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 196 @ 844638C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 196 @ 844638C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446398 voice_square_1 0, 2, 0, 0, 15, 0 @ 84463A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84463B0 @@ -7894,7 +7894,7 @@ voicegroup_84461E8:: @ 84461E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84463E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84463EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84463F8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8446404 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8446404 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446410 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844641C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8446428 @@ -7994,17 +7994,17 @@ voicegroup_84467E8:: @ 84467E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844686C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446878 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446884 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8446890 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8446890 voice_square_1 0, 2, 0, 0, 15, 0 @ 844689C voice_square_1 0, 2, 0, 0, 15, 0 @ 84468A8 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 84468B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 84468B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84468C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84468CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84468D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84468E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84468F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84468FC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8446908 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8446908 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446914 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446920 voice_square_1 0, 2, 0, 0, 15, 0 @ 844692C @@ -8025,8 +8025,8 @@ voicegroup_84467E8:: @ 84467E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84469E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84469EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84469F8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8446A04 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8446A10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8446A04 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8446A10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446A1C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8446A28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446A34 @@ -8053,7 +8053,7 @@ voicegroup_84467E8:: @ 84467E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B48 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8446B54 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8446B54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446B78 @@ -8135,7 +8135,7 @@ voicegroup_8446DE8:: @ 8446DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446EE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446EF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446EFC - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8446F08 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8446F08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446F14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446F20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446F2C @@ -8149,15 +8149,15 @@ voicegroup_8446DE8:: @ 8446DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446F8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8446F98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FA4 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 8446FB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 8446FB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FF8 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8447004 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8447010 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8447004 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8447010 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844701C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8447028 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447034 @@ -8184,7 +8184,7 @@ voicegroup_8446DE8:: @ 8446DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447130 voice_square_1 0, 2, 0, 0, 15, 0 @ 844713C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447148 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8447154 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8447154 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447160 voice_square_1 0, 2, 0, 0, 15, 0 @ 844716C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447178 @@ -8261,7 +8261,7 @@ voicegroup_8447400:: @ 8447400 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447484 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447490 voice_square_1 0, 2, 0, 0, 15, 0 @ 844749C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 84474A8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 84474A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84474B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84474C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84474CC @@ -8271,7 +8271,7 @@ voicegroup_8447400:: @ 8447400 voice_square_1 0, 2, 0, 0, 15, 0 @ 84474FC voice_square_1 0, 2, 0, 0, 15, 0 @ 8447508 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447514 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8447520 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8447520 voice_square_1 0, 2, 0, 0, 15, 0 @ 844752C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447538 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447544 @@ -8402,7 +8402,7 @@ voicegroup_8447A00:: @ 8447A00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447AFC voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B08 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B14 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 128, 249, 25, 76 @ 8447B20 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 128, 249, 25, 76 @ 8447B20 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B2C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B44 @@ -8413,7 +8413,7 @@ voicegroup_8447A00:: @ 8447A00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447B98 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8447BA4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8447BA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447BB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447BBC voice_square_1 0, 2, 0, 0, 15, 0 @ 8447BC8 @@ -8423,8 +8423,8 @@ voicegroup_8447A00:: @ 8447A00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447BF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447C04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447C10 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 8447C1C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 8447C28 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8447C1C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 8447C28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447C34 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8447C40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447C4C @@ -8451,7 +8451,7 @@ voicegroup_8447A00:: @ 8447A00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D48 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D60 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 8447D6C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 8447D6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D78 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D84 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447D90 @@ -8479,7 +8479,7 @@ voicegroup_8447DF0:: @ 8447DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447E74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447E80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447E8C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8447E98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8447E98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447EA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447EB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447EBC @@ -8489,7 +8489,7 @@ voicegroup_8447DF0:: @ 8447DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447EEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8447EF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447F04 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8447F10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8447F10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447F1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447F28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447F34 @@ -8511,7 +8511,7 @@ voicegroup_8447DF0:: @ 8447DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447FF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448000 voice_square_1 0, 2, 0, 0, 15, 0 @ 844800C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8448018 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8448018 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8448024 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8448030 voice_square_1 0, 2, 0, 0, 15, 0 @ 844803C @@ -8538,7 +8538,7 @@ voicegroup_8447DF0:: @ 8447DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448138 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448144 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448150 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 844815C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 844815C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448168 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448174 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448180 @@ -8620,7 +8620,7 @@ voicegroup_84483F0:: @ 84483F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84484EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84484F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448504 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8448510 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8448510 voice_square_1 0, 2, 0, 0, 15, 0 @ 844851C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448528 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448534 @@ -8642,7 +8642,7 @@ voicegroup_84483F0:: @ 84483F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84485F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448600 voice_square_1 0, 2, 0, 0, 15, 0 @ 844860C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8448618 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8448618 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8448624 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448630 voice_square_1 0, 2, 0, 0, 15, 0 @ 844863C @@ -8669,7 +8669,7 @@ voicegroup_84483F0:: @ 84483F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448738 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448744 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448750 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 844875C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 844875C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448768 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448774 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448780 @@ -8741,17 +8741,17 @@ voicegroup_84489F0:: @ 84489F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448A74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448A80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448A8C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8448A98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8448A98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AB0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 8448ABC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 8448ABC voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8448AF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B04 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 8448B10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 8448B10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B34 @@ -8762,8 +8762,8 @@ voicegroup_84489F0:: @ 84489F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B7C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448B88 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 8448B94 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 8448BA0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 8448B94 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 8448BA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448BAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8448BB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448BC4 @@ -8773,7 +8773,7 @@ voicegroup_84489F0:: @ 84489F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448BF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448C00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448C0C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8448C18 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8448C18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448C24 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8448C30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448C3C @@ -8800,7 +8800,7 @@ voicegroup_84489F0:: @ 84489F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D44 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D50 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8448D5C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8448D5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448D80 @@ -8894,9 +8894,9 @@ voicegroup_8448FF0:: @ 8448FF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844917C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449188 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449194 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 84491A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 84491A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84491AC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 84491B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 84491B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84491C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84491D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84491DC @@ -9003,7 +9003,7 @@ voicegroup_84495F0:: @ 84495F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449674 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449680 voice_square_1 0, 2, 0, 0, 15, 0 @ 844968C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8449698 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8449698 voice_square_1 0, 2, 0, 0, 15, 0 @ 84496A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84496B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84496BC @@ -9035,7 +9035,7 @@ voicegroup_84495F0:: @ 84495F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84497F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449800 voice_square_1 0, 2, 0, 0, 15, 0 @ 844980C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 8449818 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8449818 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 8449824 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8449830 voice_square_1 0, 2, 0, 0, 15, 0 @ 844983C @@ -9062,7 +9062,7 @@ voicegroup_84495F0:: @ 84495F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449938 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449944 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449950 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 844995C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 844995C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449968 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449974 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449980 @@ -9134,7 +9134,7 @@ voicegroup_8449BF0:: @ 8449BF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449C74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449C80 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449C8C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8449C98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8449C98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449CA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449CB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449CBC @@ -9193,7 +9193,7 @@ voicegroup_8449BF0:: @ 8449BF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F44 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F50 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 8449F5C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 8449F5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449F80 @@ -9395,18 +9395,18 @@ voicegroup_844A7F0:: @ 844A7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A868 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A874 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A880 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844A88C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844A88C voice_square_1 0, 2, 0, 0, 15, 0 @ 844A898 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8B0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 165 @ 844A8BC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 165 @ 844A8BC voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8EC voice_square_1 0, 2, 0, 0, 15, 0 @ 844A8F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A904 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 128, 249, 25, 76 @ 844A910 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 128, 249, 25, 76 @ 844A910 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A91C voice_square_1 0, 2, 0, 0, 15, 0 @ 844A928 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A934 @@ -9417,7 +9417,7 @@ voicegroup_844A7F0:: @ 844A7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A970 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A97C voice_square_1 0, 2, 0, 0, 15, 0 @ 844A988 - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 253, 0, 188 @ 844A994 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 253, 0, 188 @ 844A994 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A9A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A9AC voice_square_1 0, 2, 0, 0, 15, 0 @ 844A9B8 @@ -9427,8 +9427,8 @@ voicegroup_844A7F0:: @ 844A7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A9E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A9F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AA00 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 226, 0, 38 @ 844AA0C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 844AA18 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 844AA0C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 844AA18 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AA24 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844AA30 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AA3C @@ -9455,7 +9455,7 @@ voicegroup_844A7F0:: @ 844A7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB38 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB44 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB50 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 844AB5C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 844AB5C voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AB80 @@ -9526,7 +9526,7 @@ voicegroup_844ADF0:: @ 844ADF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AE68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AE74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AE80 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844AE8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844AE8C voice_square_1 0, 2, 0, 0, 15, 0 @ 844AE98 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AEA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AEB0 @@ -9537,7 +9537,7 @@ voicegroup_844ADF0:: @ 844ADF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AEEC voice_square_1 0, 2, 0, 0, 15, 0 @ 844AEF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AF04 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 128, 249, 25, 76 @ 844AF10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 128, 249, 25, 76 @ 844AF10 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AF1C voice_square_1 0, 2, 0, 0, 15, 0 @ 844AF28 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AF34 @@ -9551,7 +9551,7 @@ voicegroup_844ADF0:: @ 844ADF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AF94 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFAC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844AFB8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844AFB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFDC @@ -9559,7 +9559,7 @@ voicegroup_844ADF0:: @ 844ADF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844AFF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B000 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B00C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 844B018 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 844B018 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B024 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B030 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B03C @@ -9657,7 +9657,7 @@ voicegroup_844B3F0:: @ 844B3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B468 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B474 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B480 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844B48C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844B48C voice_square_1 0, 2, 0, 0, 15, 0 @ 844B498 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B4A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B4B0 @@ -9668,7 +9668,7 @@ voicegroup_844B3F0:: @ 844B3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B4EC voice_square_1 0, 2, 0, 0, 15, 0 @ 844B4F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B504 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 128, 249, 25, 76 @ 844B510 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 128, 249, 25, 76 @ 844B510 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B51C voice_square_1 0, 2, 0, 0, 15, 0 @ 844B528 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B534 @@ -9680,9 +9680,9 @@ voicegroup_844B3F0:: @ 844B3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B57C voice_square_1 0, 2, 0, 0, 15, 0 @ 844B588 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B594 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 844B5A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 844B5A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B5AC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844B5B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844B5B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B5C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B5D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B5DC @@ -9690,7 +9690,7 @@ voicegroup_844B3F0:: @ 844B3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B5F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B600 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B60C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 0, 242 @ 844B618 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 844B618 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B624 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844B630 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B63C @@ -9717,7 +9717,7 @@ voicegroup_844B3F0:: @ 844B3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B738 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B744 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B750 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 844B75C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 844B75C voice_square_1 0, 2, 0, 0, 15, 0 @ 844B768 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B774 voice_square_1 0, 2, 0, 0, 15, 0 @ 844B780 @@ -9788,18 +9788,18 @@ voicegroup_844B9F0:: @ 844B9F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA80 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844BA8C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 844BA98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844BA8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 844BA98 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAB0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 844BABC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 844BABC voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAE0 - voice_directsound 60, 0, DirectSoundWaveData_84A5F58, 255, 0, 255, 165 @ 844BAEC + voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 844BAEC voice_square_1 0, 2, 0, 0, 15, 0 @ 844BAF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BB04 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 128, 249, 25, 76 @ 844BB10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 128, 249, 25, 76 @ 844BB10 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BB1C voice_square_1 0, 2, 0, 0, 15, 0 @ 844BB28 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BB34 @@ -9848,7 +9848,7 @@ voicegroup_844B9F0:: @ 844B9F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD38 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD44 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD50 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 844BD5C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 844BD5C voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BD80 @@ -9923,14 +9923,14 @@ voicegroup_844BFF0:: @ 844BFF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C098 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0B0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 844C0BC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 844C0BC voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0EC voice_square_1 0, 2, 0, 0, 15, 0 @ 844C0F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C104 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 844C110 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 844C110 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C11C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C128 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C134 @@ -9944,7 +9944,7 @@ voicegroup_844BFF0:: @ 844BFF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C194 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C1A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C1AC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844C1B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844C1B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C1C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C1D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C1DC @@ -9979,7 +9979,7 @@ voicegroup_844BFF0:: @ 844BFF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C338 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C344 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C350 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 844C35C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 844C35C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C368 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C374 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C380 @@ -10050,18 +10050,18 @@ voicegroup_844C5F0:: @ 844C5F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C668 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C674 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C680 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844C68C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844C68C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C698 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6B0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 844C6BC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 844C6BC voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6EC voice_square_1 0, 2, 0, 0, 15, 0 @ 844C6F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C704 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 844C710 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 844C710 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C71C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C728 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C734 @@ -10073,9 +10073,9 @@ voicegroup_844C5F0:: @ 844C5F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C77C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C788 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C794 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 844C7A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 844C7A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C7AC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844C7B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844C7B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C7C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C7D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C7DC @@ -10182,7 +10182,7 @@ voicegroup_844CBF0:: @ 844CBF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CC74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CC80 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CC8C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 844CC98 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 844CC98 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CCA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CCB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CCBC @@ -10372,7 +10372,7 @@ voicegroup_844D1F0:: @ 844D1F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D538 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D544 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D550 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 844D55C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 844D55C voice_square_1 0, 2, 0, 0, 15, 0 @ 844D568 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D574 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D580 @@ -10443,7 +10443,7 @@ voicegroup_844D7F0:: @ 844D7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D868 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D874 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D880 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844D88C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844D88C voice_square_1 0, 2, 0, 0, 15, 0 @ 844D898 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D8A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D8B0 @@ -10466,9 +10466,9 @@ voicegroup_844D7F0:: @ 844D7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D97C voice_square_1 0, 2, 0, 0, 15, 0 @ 844D988 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D994 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 844D9A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 844D9A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D9AC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844D9B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844D9B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D9C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D9D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D9DC @@ -10574,18 +10574,18 @@ voicegroup_844DDF0:: @ 844DDF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DE68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DE74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DE80 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 844DE8C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 844DE8C voice_square_1 0, 2, 0, 0, 15, 0 @ 844DE98 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEB0 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 210 @ 844DEBC + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 210 @ 844DEBC voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DED4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEEC voice_square_1 0, 2, 0, 0, 15, 0 @ 844DEF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF04 - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 76 @ 844DF10 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 76 @ 844DF10 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF1C voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF28 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF34 @@ -10597,9 +10597,9 @@ voicegroup_844DDF0:: @ 844DDF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF7C voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF88 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DF94 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 844DFA0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 844DFA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DFAC - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844DFB8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844DFB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DFC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DFD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844DFDC @@ -10634,7 +10634,7 @@ voicegroup_844DDF0:: @ 844DDF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E138 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E144 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E150 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 127 @ 844E15C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 127 @ 844E15C voice_square_1 0, 2, 0, 0, 15, 0 @ 844E168 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E174 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E180 @@ -10706,7 +10706,7 @@ voicegroup_844E3F0:: @ 844E3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E474 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E480 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E48C - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 844E498 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 844E498 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E4A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E4B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E4BC @@ -10738,7 +10738,7 @@ voicegroup_844E3F0:: @ 844E3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E5F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E600 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E60C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 242 @ 844E618 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 844E618 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 844E624 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844E630 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E63C @@ -10765,7 +10765,7 @@ voicegroup_844E3F0:: @ 844E3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E738 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E744 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E750 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 844E75C + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 844E75C voice_programmable_wave_alt ProgrammableWaveData_845540C, 0, 7, 15, 0 @ 844E768 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E774 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E780 @@ -10829,7 +10829,7 @@ voicegroup_844E918:: @ 844E918 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA14 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA20 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA2C - voice_directsound 60, 0, DirectSoundWaveData_8481130, 255, 249, 25, 248 @ 844EA38 + voice_directsound 60, 0, DirectSoundWaveData_SC88_NylonStringGuitar, 255, 249, 25, 248 @ 844EA38 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA44 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA50 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EA5C @@ -10851,7 +10851,7 @@ voicegroup_844E918:: @ 844E918 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB1C voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB28 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB34 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 242, 51, 165 @ 844EB40 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 165 @ 844EB40 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB4C voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB58 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EB64 @@ -10923,7 +10923,7 @@ voicegroup_844ECF0:: @ 844ECF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EE58 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EE64 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EE70 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 844EE7C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 844EE7C voice_square_1 0, 2, 0, 0, 15, 0 @ 844EE88 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EE94 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EEA0 @@ -10936,7 +10936,7 @@ voicegroup_844ECF0:: @ 844ECF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EEF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF00 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF0C - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 844EF18 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 844EF18 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844EF24 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844EF30 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF3C @@ -10989,14 +10989,14 @@ voicegroup_844F0C8:: @ 844F0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F14C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F158 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F164 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 250, 0, 242 @ 844F170 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 250, 0, 242 @ 844F170 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F17C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F188 - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 127 @ 844F194 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 127 @ 844F194 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1AC voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1B8 - voice_directsound 60, 0, DirectSoundWaveData_84A5F58, 255, 0, 255, 165 @ 844F1C4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 844F1C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1DC voice_square_1 0, 2, 0, 0, 15, 0 @ 844F1E8 @@ -11008,12 +11008,12 @@ voicegroup_844F0C8:: @ 844F0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F230 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F23C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F248 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 844F254 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 844F254 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F260 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F26C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F278 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F284 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 844F290 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 844F290 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F29C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2B4 @@ -11021,7 +11021,7 @@ voicegroup_844F0C8:: @ 844F0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2CC voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2E4 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 844F2F0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 844F2F0 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844F2FC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844F308 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F314 @@ -11086,7 +11086,7 @@ voicegroup_844F50C:: @ 844F50C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5CC - voice_directsound 60, 0, DirectSoundWaveData_84569D4, 255, 0, 255, 127 @ 844F5D8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Organ2, 255, 0, 255, 127 @ 844F5D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F5FC @@ -11102,7 +11102,7 @@ voicegroup_844F50C:: @ 844F50C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F674 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F680 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F68C - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 844F698 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 844F698 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F6A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F6B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F6BC @@ -11196,7 +11196,7 @@ voicegroup_844F950:: @ 844F950 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FAB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FAC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FAD0 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 844FADC + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 844FADC voice_square_1 0, 2, 0, 0, 15, 0 @ 844FAE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FAF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB00 @@ -11208,7 +11208,7 @@ voicegroup_844F950:: @ 844F950 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB48 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB54 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB60 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 844FB6C + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 844FB6C voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB78 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844FB84 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844FB90 @@ -11290,7 +11290,7 @@ voicegroup_844FD94:: @ 844FD94 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FEFC voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF08 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF14 - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 844FF20 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 844FF20 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF2C voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF38 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF44 @@ -11302,7 +11302,7 @@ voicegroup_844FD94:: @ 844FD94 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF8C voice_square_1 0, 2, 0, 0, 15, 0 @ 844FF98 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFA4 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 844FFB0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 844FFB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFBC voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844FFC8 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844FFD4 @@ -11330,7 +11330,7 @@ voicegroup_844FD94:: @ 844FD94 voice_square_1 0, 2, 0, 0, 15, 0 @ 84500DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84500E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84500F4 - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 8450100 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 8450100 voice_square_1 0, 2, 0, 0, 15, 0 @ 845010C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450118 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450124 @@ -11382,7 +11382,7 @@ voicegroup_845019C:: @ 845019C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450328 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450334 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450340 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 845034C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 845034C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450358 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450364 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450370 @@ -11391,7 +11391,7 @@ voicegroup_845019C:: @ 845019C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450394 voice_square_1 0, 2, 0, 0, 15, 0 @ 84503A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84503AC - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 216, 0, 165 @ 84503B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 84503B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84503C4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84503D0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84503DC @@ -11447,7 +11447,7 @@ voicegroup_845058C:: @ 845058C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450610 voice_square_1 0, 2, 0, 0, 15, 0 @ 845061C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450628 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 216, 90, 242 @ 8450634 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 216, 90, 242 @ 8450634 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450640 voice_square_1 0, 2, 0, 0, 15, 0 @ 845064C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450658 @@ -11466,7 +11466,7 @@ voicegroup_845058C:: @ 845058C voice_square_1 0, 2, 0, 0, 15, 0 @ 84506F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450700 voice_square_1 0, 2, 0, 0, 15, 0 @ 845070C - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 8450718 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 8450718 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450724 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450730 voice_square_1 0, 2, 0, 0, 15, 0 @ 845073C @@ -11506,7 +11506,7 @@ voicegroup_845058C:: @ 845058C voice_square_1 0, 2, 0, 0, 15, 0 @ 84508D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84508E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84508EC - voice_directsound 60, 0, DirectSoundWaveData_84830A0, 255, 0, 255, 165 @ 84508F8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Flute, 255, 0, 255, 165 @ 84508F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450904 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450910 voice_square_1 0, 2, 0, 0, 15, 0 @ 845091C @@ -11597,7 +11597,7 @@ voicegroup_8450B8C:: @ 8450B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450CF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D0C - voice_directsound 60, 0, DirectSoundWaveData_8483804, 255, 253, 0, 149 @ 8450D18 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingeredBass, 255, 253, 0, 149 @ 8450D18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D24 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D30 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D3C @@ -11610,7 +11610,7 @@ voicegroup_8450B8C:: @ 8450B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450DA8 - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 246, 0, 235 @ 8450DB4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8450DB4 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8450DC0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8450DCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8450DD8 @@ -11692,7 +11692,7 @@ voicegroup_8450FA0:: @ 8450FA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451144 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451150 voice_square_1 0, 2, 0, 0, 15, 0 @ 845115C - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 252, 0, 115 @ 8451168 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 252, 0, 115 @ 8451168 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451174 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451180 voice_square_1 0, 2, 0, 0, 15, 0 @ 845118C @@ -11774,7 +11774,7 @@ voicegroup_8451390:: @ 8451390 voice_square_1 0, 2, 0, 0, 15, 0 @ 84514F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451504 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451510 - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 235, 128, 99 @ 845151C + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 235, 128, 99 @ 845151C voice_square_1 0, 2, 0, 0, 15, 0 @ 8451528 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451534 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451540 @@ -11885,8 +11885,8 @@ voicegroup_8451990:: @ 8451990 voice_square_1_alt 0, 2, 2, 0, 15, 0 @ 8451A08 voice_square_1_alt 0, 1, 2, 0, 15, 0 @ 8451A14 voice_square_1_alt 23, 1, 0, 1, 9, 0 @ 8451A20 - voice_directsound 60, 0, DirectSoundWaveData_8487330, 255, 0, 255, 165 @ 8451A2C - voice_directsound 60, 0, DirectSoundWaveData_8487330, 255, 226, 0, 165 @ 8451A38 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 0, 255, 165 @ 8451A2C + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 226, 0, 165 @ 8451A38 voice_square_1_alt 0, 2, 0, 6, 0, 1 @ 8451A44 voice_square_1_alt 36, 0, 0, 2, 0, 0 @ 8451A50 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451A5C @@ -12012,21 +12012,21 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 255, 165 @ 8451FD8 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 8451FE4 voice_directsound 60, 0, DirectSoundWaveData_848A8A4, 255, 0, 255, 165 @ 8451FF0 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 0, 255, 127 @ 8451FFC + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 0, 255, 127 @ 8451FFC voice_directsound 60, 0, DirectSoundWaveData_848C4A4, 255, 0, 255, 127 @ 8452008 voice_noise_alt 1, 0, 2, 0, 0 @ 8452014 voice_square_1 0x67, 3, 2, 7, 0, 0 @ 8452020 voice_square_2 3, 2, 7, 0, 0 @ 845202C - voice_directsound 60, 0, DirectSoundWaveData_8487330, 255, 226, 0, 127 @ 8452038 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 226, 0, 127 @ 8452038 voice_directsound 60, 0, DirectSoundWaveData_848E094, 255, 0, 255, 0 @ 8452044 - voice_directsound 60, 0, DirectSoundWaveData_8487330, 255, 204, 0, 127 @ 8452050 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 204, 0, 127 @ 8452050 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 845205C voice_directsound 60, 0, DirectSoundWaveData_848F448, 255, 0, 255, 127 @ 8452068 - voice_directsound 60, 0, DirectSoundWaveData_8487330, 255, 0, 255, 127 @ 8452074 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 0, 255, 127 @ 8452074 voice_square_1 103, 0, 0, 7, 0, 0 @ 8452080 voice_directsound 60, 0, DirectSoundWaveData_845C238, 255, 0, 255, 127 @ 845208C voice_directsound 60, 0, DirectSoundWaveData_8491ACC, 255, 0, 255, 127 @ 8452098 - voice_directsound 60, 0, DirectSoundWaveData_8492D10, 255, 0, 255, 127 @ 84520A4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Bubble, 255, 0, 255, 127 @ 84520A4 voice_directsound 60, 0, DirectSoundWaveData_845B2B4, 255, 0, 255, 127 @ 84520B0 voice_noise_alt 0, 0, 7, 15, 1 @ 84520BC voice_directsound 60, 0, DirectSoundWaveData_8493D20, 255, 0, 255, 127 @ 84520C8 @@ -12037,41 +12037,41 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 0, 255, 127 @ 8452104 voice_square_1 103, 0, 0, 0, 15, 0 @ 8452110 voice_directsound_alt 60, 0, DirectSoundWaveData_8495028, 255, 0, 255, 127 @ 845211C - voice_directsound 60, 0, DirectSoundWaveData_84571CC, 255, 255, 255, 127 @ 8452128 - voice_directsound 60, 0, DirectSoundWaveData_8458CD0, 255, 0, 255, 127 @ 8452134 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 255, 255, 127 @ 8452128 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 0, 255, 127 @ 8452134 voice_directsound 60, 0, DirectSoundWaveData_8499110, 255, 0, 255, 127 @ 8452140 voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 242, 0, 0 @ 845214C voice_directsound 60, 0, DirectSoundWaveData_849B320, 255, 0, 255, 0 @ 8452158 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 165, 90, 216 @ 8452164 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8452164 voice_directsound 60, 0, DirectSoundWaveData_845DAF0, 255, 127, 0, 188 @ 8452170 voice_directsound 60, 0, DirectSoundWaveData_849D45C, 255, 249, 0, 165 @ 845217C voice_square_1 0, 0, 4, 6, 0, 0 @ 8452188 voice_directsound 60, 0, DirectSoundWaveData_8456330, 13, 0, 255, 127 @ 8452194 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 13, 0, 255, 127 @ 84521A0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 13, 0, 255, 127 @ 84521A0 voice_directsound 60, 0, DirectSoundWaveData_849F40C, 255, 0, 255, 127 @ 84521AC - voice_directsound 60, 0, DirectSoundWaveData_84A26EC, 255, 252, 0, 204 @ 84521B8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 252, 0, 204 @ 84521B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84521C4 - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 235, 0, 204 @ 84521D0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 84521D0 voice_square_1 0, 0, 4, 0, 15, 0 @ 84521DC - voice_directsound 60, 0, DirectSoundWaveData_84A311C, 255, 188, 0, 0 @ 84521E8 - voice_directsound 60, 0, DirectSoundWaveData_849BAEC, 255, 226, 0, 127 @ 84521F4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 188, 0, 0 @ 84521E8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 226, 0, 127 @ 84521F4 voice_directsound 60, 0, DirectSoundWaveData_8460E60, 26, 0, 255, 127 @ 8452200 voice_square_1_alt 0, 2, 0, 1, 0, 0 @ 845220C voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 252, 0, 127 @ 8452218 voice_square_1_alt 0, 1, 0, 2, 0, 0 @ 8452224 - voice_directsound 60, 0, DirectSoundWaveData_848BD68, 255, 127, 0, 127 @ 8452230 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 127, 0, 127 @ 8452230 voice_noise_alt 0, 1, 6, 0, 0 @ 845223C - voice_directsound 60, 0, DirectSoundWaveData_8457D98, 255, 255, 255, 127 @ 8452248 + voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 255, 255, 127 @ 8452248 voice_directsound 60, 0, DirectSoundWaveData_845B9A8, 255, 255, 255, 127 @ 8452254 voice_directsound 60, 0, DirectSoundWaveData_84A3B50, 255, 255, 255, 127 @ 8452260 - voice_directsound 60, 0, DirectSoundWaveData_847CBAC, 11, 242, 0, 127 @ 845226C + voice_directsound 60, 0, DirectSoundWaveData_SC88_WideFrenchHorns, 11, 242, 0, 127 @ 845226C voice_square_1_alt 0, 2, 4, 6, 0, 0 @ 8452278 voice_directsound 60, 0, DirectSoundWaveData_84A5690, 255, 255, 255, 127 @ 8452284 - voice_directsound 60, 0, DirectSoundWaveData_84A5F58, 255, 0, 255, 165 @ 8452290 + voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 8452290 voice_directsound 60, 0, DirectSoundWaveData_845CAB0, 255, 0, 255, 165 @ 845229C voice_noise_alt 0, 5, 7, 15, 1 @ 84522A8 - voice_directsound 60, 0, DirectSoundWaveData_8487330, 128, 242, 0, 165 @ 84522B4 - voice_directsound 60, 0, DirectSoundWaveData_846A4B8, 255, 0, 255, 165 @ 84522C0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 128, 242, 0, 165 @ 84522B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_StringsPlusFlute, 255, 0, 255, 165 @ 84522C0 voice_square_1 0, 0, 1, 5, 0, 0 @ 84522CC voice_noise_alt 0, 6, 6, 0, 1 @ 84522D8 voice_noise_alt 0, 3, 6, 0, 1 @ 84522E4 @@ -13009,7 +13009,7 @@ voicegroup_8454C54:: @ 8454C54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D2C voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D44 - voice_directsound 60, 0, DirectSoundWaveData_8654C20, 255, 249, 25, 248 @ 8454D50 + voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordionFr_Copy, 255, 249, 25, 248 @ 8454D50 voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8454D74 -- cgit v1.2.3 From 184c058581d2fda7a560dcb399d511890b69b25d Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Fri, 26 Jan 2018 22:00:14 -0800 Subject: 3 sc88 noises --- sound/direct_sound_data.inc | 12 ++++++------ sound/direct_sound_samples/849D45C.aif | Bin 8207 -> 0 bytes sound/direct_sound_samples/84A3B50.aif | Bin 7071 -> 0 bytes sound/direct_sound_samples/sc88/123_pink_noise.aif | Bin 0 -> 8207 bytes sound/direct_sound_samples/sc88/123_white_noise.aif | Bin 0 -> 7071 bytes sound/direct_sound_samples/sc88/37_unison_slap.aif | Bin 0 -> 3052 bytes sound/direct_sound_samples/sc88/8466388.aif | Bin 3052 -> 0 bytes 7 files changed, 6 insertions(+), 6 deletions(-) delete mode 100644 sound/direct_sound_samples/849D45C.aif delete mode 100644 sound/direct_sound_samples/84A3B50.aif create mode 100644 sound/direct_sound_samples/sc88/123_pink_noise.aif create mode 100644 sound/direct_sound_samples/sc88/123_white_noise.aif create mode 100644 sound/direct_sound_samples/sc88/37_unison_slap.aif delete mode 100644 sound/direct_sound_samples/sc88/8466388.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 180a2e0a7..f6177dd21 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -87,8 +87,8 @@ DirectSoundWaveData_SC88_Piano2:: @ 8464E2C .incbin "sound/direct_sound_samples/sc88/2_piano_2.bin" .align 2 -DirectSoundWaveData_8466388:: @ 8466388 - .incbin "sound/direct_sound_samples/sc88/8466388.bin" +DirectSoundWaveData_SC88_UnisonSlap:: @ 8466388 + .incbin "sound/direct_sound_samples/sc88/37_unison_slap.bin" .align 2 DirectSoundWaveData_SC88_Strings:: @ 8466F14 @@ -211,8 +211,8 @@ DirectSoundWaveData_SC88_TubularBell:: @ 849BAEC .incbin "sound/direct_sound_samples/sc88/15_tubular_bell.bin" .align 2 -DirectSoundWaveData_849D45C:: @ 849D45C - .incbin "sound/direct_sound_samples/849D45C.bin" +DirectSoundWaveData_SC88_PinkNoise:: @ 849D45C + .incbin "sound/direct_sound_samples/sc88/123_pink_noise.bin" .align 2 DirectSoundWaveData_849F40C:: @ 849F40C @@ -227,8 +227,8 @@ DirectSoundWaveData_SC88_Marimba:: @ 84A311C .incbin "sound/direct_sound_samples/sc88/13_marimba.bin" .align 2 -DirectSoundWaveData_84A3B50:: @ 84A3B50 - .incbin "sound/direct_sound_samples/84A3B50.bin" +DirectSoundWaveData_SC88_WhiteNoise:: @ 84A3B50 + .incbin "sound/direct_sound_samples/sc88/123_white_noise.bin" .align 2 DirectSoundWaveData_84A5690:: @ 84A5690 diff --git a/sound/direct_sound_samples/849D45C.aif b/sound/direct_sound_samples/849D45C.aif deleted file mode 100644 index ebd46eeaa..000000000 Binary files a/sound/direct_sound_samples/849D45C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A3B50.aif b/sound/direct_sound_samples/84A3B50.aif deleted file mode 100644 index 6a11945c5..000000000 Binary files a/sound/direct_sound_samples/84A3B50.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/123_pink_noise.aif b/sound/direct_sound_samples/sc88/123_pink_noise.aif new file mode 100644 index 000000000..ebd46eeaa Binary files /dev/null and b/sound/direct_sound_samples/sc88/123_pink_noise.aif differ diff --git a/sound/direct_sound_samples/sc88/123_white_noise.aif b/sound/direct_sound_samples/sc88/123_white_noise.aif new file mode 100644 index 000000000..6a11945c5 Binary files /dev/null and b/sound/direct_sound_samples/sc88/123_white_noise.aif differ diff --git a/sound/direct_sound_samples/sc88/37_unison_slap.aif b/sound/direct_sound_samples/sc88/37_unison_slap.aif new file mode 100644 index 000000000..a7c4e94f8 Binary files /dev/null and b/sound/direct_sound_samples/sc88/37_unison_slap.aif differ diff --git a/sound/direct_sound_samples/sc88/8466388.aif b/sound/direct_sound_samples/sc88/8466388.aif deleted file mode 100644 index a7c4e94f8..000000000 Binary files a/sound/direct_sound_samples/sc88/8466388.aif and /dev/null differ -- cgit v1.2.3 From 4cc64443dfbb4b07277c31f309c54b39a8332855 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sat, 27 Jan 2018 13:10:41 -0800 Subject: Label sc88 drumkit samples --- sound/direct_sound_data.inc | 68 +++---- sound/direct_sound_samples/8459944.aif | Bin 5424 -> 0 bytes sound/direct_sound_samples/845AE14.aif | Bin 1249 -> 0 bytes sound/direct_sound_samples/845B2B4.aif | Bin 1844 -> 0 bytes sound/direct_sound_samples/845B9A8.aif | Bin 2258 -> 0 bytes sound/direct_sound_samples/845C238.aif | Bin 2231 -> 0 bytes sound/direct_sound_samples/845CAB0.aif | Bin 4256 -> 0 bytes sound/direct_sound_samples/845DAF0.aif | Bin 1107 -> 0 bytes sound/direct_sound_samples/845DF04.aif | Bin 3728 -> 0 bytes sound/direct_sound_samples/845FCC8.aif | Bin 2294 -> 0 bytes sound/direct_sound_samples/846057C.aif | Bin 2372 -> 0 bytes sound/direct_sound_samples/8460E60.aif | Bin 3979 -> 0 bytes sound/direct_sound_samples/8461D8C.aif | Bin 1370 -> 0 bytes sound/direct_sound_samples/84622A4.aif | Bin 1546 -> 0 bytes sound/direct_sound_samples/8485454.aif | Bin 5424 -> 0 bytes sound/direct_sound_samples/8486924.aif | Bin 2669 -> 0 bytes sound/direct_sound_samples/848A8A4.aif | Bin 5382 -> 0 bytes sound/direct_sound_samples/849B320.aif | Bin 2093 -> 0 bytes .../sc88/drumkit_bass_drum.aif | Bin 0 -> 1249 bytes sound/direct_sound_samples/sc88/drumkit_cabasa.aif | Bin 0 -> 2294 bytes .../sc88/drumkit_closed_hi_hat.aif | Bin 0 -> 1107 bytes .../sc88/drumkit_crash_cymbal_1.aif | Bin 0 -> 3979 bytes .../sc88/drumkit_crash_cymbal_2.aif | Bin 0 -> 2372 bytes sound/direct_sound_samples/sc88/drumkit_guiro.aif | Bin 0 -> 2093 bytes .../sc88/drumkit_hand_clap.aif | Bin 0 -> 2258 bytes .../sc88/drumkit_hi_mid_tom.aif | Bin 0 -> 4256 bytes .../sc88/drumkit_low_conga.aif | Bin 0 -> 1546 bytes .../sc88/drumkit_mute_hi_conga.aif | Bin 0 -> 1370 bytes .../sc88/drumkit_open_hi_hat.aif | Bin 0 -> 3728 bytes .../direct_sound_samples/sc88/drumkit_snare_1.aif | Bin 0 -> 1844 bytes .../direct_sound_samples/sc88/drumkit_snare_2.aif | Bin 0 -> 2231 bytes .../direct_sound_samples/sc88/drumkit_snare_3.aif | Bin 0 -> 5382 bytes .../direct_sound_samples/sc88/drumkit_snare_4.aif | Bin 0 -> 2669 bytes .../sc88/drumkit_timbale_1.aif | Bin 0 -> 5424 bytes .../sc88/drumkit_timbale_2.aif | Bin 0 -> 5424 bytes sound/voice_groups.inc | 210 ++++++++++----------- 36 files changed, 139 insertions(+), 139 deletions(-) delete mode 100644 sound/direct_sound_samples/8459944.aif delete mode 100644 sound/direct_sound_samples/845AE14.aif delete mode 100644 sound/direct_sound_samples/845B2B4.aif delete mode 100644 sound/direct_sound_samples/845B9A8.aif delete mode 100644 sound/direct_sound_samples/845C238.aif delete mode 100644 sound/direct_sound_samples/845CAB0.aif delete mode 100644 sound/direct_sound_samples/845DAF0.aif delete mode 100644 sound/direct_sound_samples/845DF04.aif delete mode 100644 sound/direct_sound_samples/845FCC8.aif delete mode 100644 sound/direct_sound_samples/846057C.aif delete mode 100644 sound/direct_sound_samples/8460E60.aif delete mode 100644 sound/direct_sound_samples/8461D8C.aif delete mode 100644 sound/direct_sound_samples/84622A4.aif delete mode 100644 sound/direct_sound_samples/8485454.aif delete mode 100644 sound/direct_sound_samples/8486924.aif delete mode 100644 sound/direct_sound_samples/848A8A4.aif delete mode 100644 sound/direct_sound_samples/849B320.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_bass_drum.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_cabasa.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_guiro.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_hand_clap.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_low_conga.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_1.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_2.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_3.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_4.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_timbale_1.aif create mode 100644 sound/direct_sound_samples/sc88/drumkit_timbale_2.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index f6177dd21..1d56162e5 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -19,60 +19,60 @@ DirectSoundWaveData_SC88_SynthBass1:: @ 8458CD0 .incbin "sound/direct_sound_samples/sc88/39_synth_bass_1.bin" .align 2 -DirectSoundWaveData_8459944:: @ 8459944 - .incbin "sound/direct_sound_samples/8459944.bin" +DirectSoundWaveData_SC88_DrumKitTimbale2:: @ 8459944 + .incbin "sound/direct_sound_samples/sc88/drumkit_timbale_2.bin" .align 2 -DirectSoundWaveData_845AE14:: @ 845AE14 - .incbin "sound/direct_sound_samples/845AE14.bin" +DirectSoundWaveData_SC88_DrumKitBassDrum:: @ 845AE14 + .incbin "sound/direct_sound_samples/sc88/drumkit_bass_drum.bin" .align 2 -DirectSoundWaveData_845B2B4:: @ 845B2B4 - .incbin "sound/direct_sound_samples/845B2B4.bin" +DirectSoundWaveData_SC88_DrumKitSnare1:: @ 845B2B4 + .incbin "sound/direct_sound_samples/sc88/drumkit_snare_1.bin" .align 2 -DirectSoundWaveData_845B9A8:: @ 845B9A8 - .incbin "sound/direct_sound_samples/845B9A8.bin" +DirectSoundWaveData_SC88_DrumKitHandClap:: @ 845B9A8 + .incbin "sound/direct_sound_samples/sc88/drumkit_hand_clap.bin" .align 2 -DirectSoundWaveData_845C238:: @ 845C238 - .incbin "sound/direct_sound_samples/845C238.bin" +DirectSoundWaveData_SC88_DrumKitSnare2:: @ 845C238 + .incbin "sound/direct_sound_samples/sc88/drumkit_snare_2.bin" .align 2 -DirectSoundWaveData_845CAB0:: @ 845CAB0 - .incbin "sound/direct_sound_samples/845CAB0.bin" +DirectSoundWaveData_SC88_DrumKitHiMidTom:: @ 845CAB0 + .incbin "sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.bin" .align 2 -DirectSoundWaveData_845DAF0:: @ 845DAF0 - .incbin "sound/direct_sound_samples/845DAF0.bin" +DirectSoundWaveData_SC88_DrumKitClosedHiHat:: @ 845DAF0 + .incbin "sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.bin" .align 2 -DirectSoundWaveData_845DF04:: @ 845DF04 - .incbin "sound/direct_sound_samples/845DF04.bin" +DirectSoundWaveData_SC88_DrumKitOpenHiHat:: @ 845DF04 + .incbin "sound/direct_sound_samples/sc88/drumkit_open_hi_hat.bin" .align 2 DirectSoundWaveData_845ED34:: @ 845ED34 .incbin "sound/direct_sound_samples/845ED34.bin" .align 2 -DirectSoundWaveData_845FCC8:: @ 845FCC8 - .incbin "sound/direct_sound_samples/845FCC8.bin" +DirectSoundWaveData_SC88_DrumKitCabasa:: @ 845FCC8 + .incbin "sound/direct_sound_samples/sc88/drumkit_cabasa.bin" .align 2 -DirectSoundWaveData_846057C:: @ 846057C - .incbin "sound/direct_sound_samples/846057C.bin" +DirectSoundWaveData_SC88_DrumKitCrashCymbal2:: @ 846057C + .incbin "sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.bin" .align 2 -DirectSoundWaveData_8460E60:: @ 8460E60 - .incbin "sound/direct_sound_samples/8460E60.bin" +DirectSoundWaveData_SC88_DrumKitCrashCymbal1:: @ 8460E60 + .incbin "sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.bin" .align 2 -DirectSoundWaveData_8461D8C:: @ 8461D8C - .incbin "sound/direct_sound_samples/8461D8C.bin" +DirectSoundWaveData_SC88_DrumKitMuteHiConga:: @ 8461D8C + .incbin "sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.bin" .align 2 -DirectSoundWaveData_84622A4:: @ 84622A4 - .incbin "sound/direct_sound_samples/84622A4.bin" +DirectSoundWaveData_SC88_DrumKitLowConga:: @ 84622A4 + .incbin "sound/direct_sound_samples/sc88/drumkit_low_conga.bin" .align 2 DirectSoundWaveData_SC88_SteelStringGuitar:: @ 846286C @@ -143,12 +143,12 @@ DirectSoundWaveData_SC88_FingeredBass:: @ 8483804 .incbin "sound/direct_sound_samples/sc88/34_fingered_bass.bin" .align 2 -DirectSoundWaveData_8485454:: @ 8485454 - .incbin "sound/direct_sound_samples/8485454.bin" +DirectSoundWaveData_SC88_DrumKitTimbale1:: @ 8485454 + .incbin "sound/direct_sound_samples/sc88/drumkit_timbale_1.bin" .align 2 -DirectSoundWaveData_8486924:: @ 8486924 - .incbin "sound/direct_sound_samples/8486924.bin" +DirectSoundWaveData_SC88_DrumKitSnare4:: @ 8486924 + .incbin "sound/direct_sound_samples/sc88/drumkit_snare_4.bin" .align 2 DirectSoundWaveData_SC88_SquareWave:: @ 8487330 @@ -159,8 +159,8 @@ DirectSoundWaveData_8488F44:: @ 8488F44 .incbin "sound/direct_sound_samples/8488F44.bin" .align 2 -DirectSoundWaveData_848A8A4:: @ 848A8A4 - .incbin "sound/direct_sound_samples/848A8A4.bin" +DirectSoundWaveData_SC88_DrumKitSnare3:: @ 848A8A4 + .incbin "sound/direct_sound_samples/sc88/drumkit_snare_3.bin" .align 2 DirectSoundWaveData_SC88_PizzicatoStrings:: @ 848BD68 @@ -203,8 +203,8 @@ DirectSoundWaveData_8499110:: @ 8499110 .incbin "sound/direct_sound_samples/8499110.bin" .align 2 -DirectSoundWaveData_849B320:: @ 849B320 - .incbin "sound/direct_sound_samples/849B320.bin" +DirectSoundWaveData_SC88_DrumkitGuiro:: @ 849B320 + .incbin "sound/direct_sound_samples/sc88/drumkit_guiro.bin" .align 2 DirectSoundWaveData_SC88_TubularBell:: @ 849BAEC diff --git a/sound/direct_sound_samples/8459944.aif b/sound/direct_sound_samples/8459944.aif deleted file mode 100644 index dfdfd702e..000000000 Binary files a/sound/direct_sound_samples/8459944.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845AE14.aif b/sound/direct_sound_samples/845AE14.aif deleted file mode 100644 index 9c504e3d0..000000000 Binary files a/sound/direct_sound_samples/845AE14.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845B2B4.aif b/sound/direct_sound_samples/845B2B4.aif deleted file mode 100644 index 544b187d5..000000000 Binary files a/sound/direct_sound_samples/845B2B4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845B9A8.aif b/sound/direct_sound_samples/845B9A8.aif deleted file mode 100644 index b11787ffc..000000000 Binary files a/sound/direct_sound_samples/845B9A8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845C238.aif b/sound/direct_sound_samples/845C238.aif deleted file mode 100644 index 36b640758..000000000 Binary files a/sound/direct_sound_samples/845C238.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845CAB0.aif b/sound/direct_sound_samples/845CAB0.aif deleted file mode 100644 index 04f990b13..000000000 Binary files a/sound/direct_sound_samples/845CAB0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845DAF0.aif b/sound/direct_sound_samples/845DAF0.aif deleted file mode 100644 index 8747aef28..000000000 Binary files a/sound/direct_sound_samples/845DAF0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845DF04.aif b/sound/direct_sound_samples/845DF04.aif deleted file mode 100644 index 5ad9410d0..000000000 Binary files a/sound/direct_sound_samples/845DF04.aif and /dev/null differ diff --git a/sound/direct_sound_samples/845FCC8.aif b/sound/direct_sound_samples/845FCC8.aif deleted file mode 100644 index 39ec57d29..000000000 Binary files a/sound/direct_sound_samples/845FCC8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/846057C.aif b/sound/direct_sound_samples/846057C.aif deleted file mode 100644 index 4aec6882f..000000000 Binary files a/sound/direct_sound_samples/846057C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8460E60.aif b/sound/direct_sound_samples/8460E60.aif deleted file mode 100644 index 576e3e19e..000000000 Binary files a/sound/direct_sound_samples/8460E60.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8461D8C.aif b/sound/direct_sound_samples/8461D8C.aif deleted file mode 100644 index 2e1bf9c64..000000000 Binary files a/sound/direct_sound_samples/8461D8C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84622A4.aif b/sound/direct_sound_samples/84622A4.aif deleted file mode 100644 index 8e1cb620a..000000000 Binary files a/sound/direct_sound_samples/84622A4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8485454.aif b/sound/direct_sound_samples/8485454.aif deleted file mode 100644 index 7270872d6..000000000 Binary files a/sound/direct_sound_samples/8485454.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8486924.aif b/sound/direct_sound_samples/8486924.aif deleted file mode 100644 index b3122457d..000000000 Binary files a/sound/direct_sound_samples/8486924.aif and /dev/null differ diff --git a/sound/direct_sound_samples/848A8A4.aif b/sound/direct_sound_samples/848A8A4.aif deleted file mode 100644 index ee6ff45b7..000000000 Binary files a/sound/direct_sound_samples/848A8A4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/849B320.aif b/sound/direct_sound_samples/849B320.aif deleted file mode 100644 index dd80b1185..000000000 Binary files a/sound/direct_sound_samples/849B320.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif b/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif new file mode 100644 index 000000000..9c504e3d0 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_cabasa.aif b/sound/direct_sound_samples/sc88/drumkit_cabasa.aif new file mode 100644 index 000000000..39ec57d29 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_cabasa.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif b/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif new file mode 100644 index 000000000..8747aef28 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif new file mode 100644 index 000000000..576e3e19e Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif new file mode 100644 index 000000000..4aec6882f Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_guiro.aif b/sound/direct_sound_samples/sc88/drumkit_guiro.aif new file mode 100644 index 000000000..dd80b1185 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_guiro.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif b/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif new file mode 100644 index 000000000..b11787ffc Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif b/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif new file mode 100644 index 000000000..04f990b13 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_low_conga.aif b/sound/direct_sound_samples/sc88/drumkit_low_conga.aif new file mode 100644 index 000000000..8e1cb620a Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_low_conga.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif b/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif new file mode 100644 index 000000000..2e1bf9c64 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif b/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif new file mode 100644 index 000000000..5ad9410d0 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_1.aif b/sound/direct_sound_samples/sc88/drumkit_snare_1.aif new file mode 100644 index 000000000..544b187d5 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_snare_1.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_2.aif b/sound/direct_sound_samples/sc88/drumkit_snare_2.aif new file mode 100644 index 000000000..36b640758 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_snare_2.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_3.aif b/sound/direct_sound_samples/sc88/drumkit_snare_3.aif new file mode 100644 index 000000000..ee6ff45b7 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_snare_3.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_4.aif b/sound/direct_sound_samples/sc88/drumkit_snare_4.aif new file mode 100644 index 000000000..b3122457d Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_snare_4.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif b/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif new file mode 100644 index 000000000..7270872d6 Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif differ diff --git a/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif b/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif new file mode 100644 index 000000000..dfdfd702e Binary files /dev/null and b/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif differ diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index 329ab3580..926e5ef7a 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -47,7 +47,7 @@ voicegroup_pokemon_cry:: @ 842FC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FE98 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FEA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FEB0 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 204, 193, 239 @ 842FEBC + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 204, 193, 239 @ 842FEBC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 842FEC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FED4 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FEE0 @@ -91,42 +91,42 @@ voicegroup_842FEF8:: @ 842FEF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430084 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430090 voice_square_1 0, 0, 0, 1, 6, 0 @ 843009C - voice_directsound_no_resample 60, 0x40, DirectSoundWaveData_845AE14, 255, 0, 255, 242 @ 84300A8 + voice_directsound_no_resample 60, 0x40, DirectSoundWaveData_SC88_DrumKitBassDrum, 255, 0, 255, 242 @ 84300A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84300B4 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845B2B4, 255, 0, 255, 242 @ 84300C0 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845B9A8, 255, 255, 255, 127 @ 84300CC - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845C238, 255, 0, 255, 242 @ 84300D8 - voice_directsound 48, 172, DirectSoundWaveData_845CAB0, 255, 210, 77, 204 @ 84300E4 - voice_directsound_no_resample 60, 207, DirectSoundWaveData_845DAF0, 255, 127, 0, 188 @ 84300F0 - voice_directsound 51, 0x31, DirectSoundWaveData_845CAB0, 255, 216, 77, 204 @ 84300FC + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare1, 255, 0, 255, 242 @ 84300C0 + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitHandClap, 255, 255, 255, 127 @ 84300CC + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 242 @ 84300D8 + voice_directsound 48, 172, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 210, 77, 204 @ 84300E4 + voice_directsound_no_resample 60, 207, DirectSoundWaveData_SC88_DrumKitClosedHiHat, 255, 127, 0, 188 @ 84300F0 + voice_directsound 51, 0x31, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 216, 77, 204 @ 84300FC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430108 - voice_directsound 54, 187, DirectSoundWaveData_845CAB0, 255, 216, 77, 204 @ 8430114 - voice_directsound_no_resample 60, 207, DirectSoundWaveData_845DF04, 255, 242, 141, 0 @ 8430120 - voice_directsound 57, 197, DirectSoundWaveData_845CAB0, 255, 210, 77, 204 @ 843012C - voice_directsound 60, 207, DirectSoundWaveData_845CAB0, 255, 204, 77, 204 @ 8430138 + voice_directsound 54, 187, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 216, 77, 204 @ 8430114 + voice_directsound_no_resample 60, 207, DirectSoundWaveData_SC88_DrumKitOpenHiHat, 255, 242, 141, 0 @ 8430120 + voice_directsound 57, 197, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 210, 77, 204 @ 843012C + voice_directsound 60, 207, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 204, 77, 204 @ 8430138 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430144 - voice_directsound 62, 212, DirectSoundWaveData_845CAB0, 255, 204, 77, 204 @ 8430150 + voice_directsound 62, 212, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 204, 77, 204 @ 8430150 voice_square_1 0, 2, 0, 0, 15, 0 @ 843015C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430168 voice_directsound_no_resample 70, 177, DirectSoundWaveData_845ED34, 255, 165, 103, 231 @ 8430174 - voice_directsound_no_resample 32, 162, DirectSoundWaveData_845FCC8, 255, 127, 77, 204 @ 8430180 - voice_directsound_no_resample 60, 142, DirectSoundWaveData_846057C, 255, 235, 0, 165 @ 843018C + voice_directsound_no_resample 32, 162, DirectSoundWaveData_SC88_DrumKitCabasa, 255, 127, 77, 204 @ 8430180 + voice_directsound_no_resample 60, 142, DirectSoundWaveData_SC88_DrumKitCrashCymbal2, 255, 235, 0, 165 @ 843018C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430198 - voice_directsound_no_resample 30, 182, DirectSoundWaveData_8460E60, 255, 246, 0, 216 @ 84301A4 + voice_directsound_no_resample 30, 182, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 246, 0, 216 @ 84301A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84301B0 - voice_directsound_no_resample 30, 182, DirectSoundWaveData_8460E60, 255, 246, 0, 216 @ 84301BC - voice_directsound_no_resample 30, 182, DirectSoundWaveData_8460E60, 8, 0, 255, 216 @ 84301C8 + voice_directsound_no_resample 30, 182, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 246, 0, 216 @ 84301BC + voice_directsound_no_resample 30, 182, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 8, 0, 255, 216 @ 84301C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84301D4 - voice_directsound_no_resample 72, 232, DirectSoundWaveData_8461D8C, 255, 0, 255, 0 @ 84301E0 + voice_directsound_no_resample 72, 232, DirectSoundWaveData_SC88_DrumKitMuteHiConga, 255, 0, 255, 0 @ 84301E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84301EC - voice_directsound_no_resample 72, 222, DirectSoundWaveData_84622A4, 255, 0, 255, 0 @ 84301F8 + voice_directsound_no_resample 72, 222, DirectSoundWaveData_SC88_DrumKitLowConga, 255, 0, 255, 0 @ 84301F8 .align 2 voicegroup_8430204:: @ 8430204 voice_directsound 60, 0, DirectSoundWaveData_SC88_SteelStringGuitar, 255, 252, 0, 239 @ 8430204 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano3, 255, 250, 0, 221 @ 8430210 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano2, 255, 250, 0, 221 @ 843021C - voice_directsound 60, 0, DirectSoundWaveData_8466388, 255, 247, 0, 221 @ 8430228 + voice_directsound 60, 0, DirectSoundWaveData_SC88_UnisonSlap, 255, 247, 0, 221 @ 8430228 .align 2 voicegroup_8430234:: @ 8430234 @@ -327,7 +327,7 @@ voicegroup_84308AC:: @ 84308AC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430ABC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430AC8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 8430AD4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8430AE0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8430AE0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8430AEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8430AF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8430B04 @@ -545,7 +545,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 84314AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84314B8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 84314C4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84314D0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84314D0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84314DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84314E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84314F4 @@ -650,7 +650,7 @@ voicegroup_8431764:: @ 8431764 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431974 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431980 voice_square_1 0, 2, 0, 0, 15, 0 @ 843198C - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8431998 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8431998 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84319A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84319B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84319BC @@ -743,7 +743,7 @@ voicegroup_8431B9C:: @ 8431B9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DB8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8431DC4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8431DD0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8431DD0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8431DDC voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431DF4 @@ -915,11 +915,11 @@ voicegroup_84323E8:: @ 84323E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432574 voice_noise_alt 0, 0, 2, 0, 2 @ 8432580 voice_noise_alt 0, 0, 1, 0, 1 @ 843258C - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845AE14, 255, 0, 255, 242 @ 8432598 + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitBassDrum, 255, 0, 255, 242 @ 8432598 voice_square_1 0, 2, 0, 0, 15, 0 @ 84325A4 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845B2B4, 255, 0, 255, 242 @ 84325B0 + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare1, 255, 0, 255, 242 @ 84325B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84325BC - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845C238, 255, 0, 255, 242 @ 84325C8 + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 242 @ 84325C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84325D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84325E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84325EC @@ -933,7 +933,7 @@ voicegroup_84323E8:: @ 84323E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843264C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432658 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432664 - voice_directsound_no_resample 32, 202, DirectSoundWaveData_845FCC8, 255, 127, 77, 204 @ 8432670 + voice_directsound_no_resample 32, 202, DirectSoundWaveData_SC88_DrumKitCabasa, 255, 127, 77, 204 @ 8432670 voice_square_1 0, 2, 0, 0, 15, 0 @ 843267C voice_square_1 0, 2, 0, 0, 15, 0 @ 8432688 voice_square_1 0, 2, 0, 0, 15, 0 @ 8432694 @@ -941,9 +941,9 @@ voicegroup_84323E8:: @ 84323E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84326AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84326B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84326C4 - voice_directsound_no_resample 72, 194, DirectSoundWaveData_8461D8C, 255, 0, 255, 0 @ 84326D0 + voice_directsound_no_resample 72, 194, DirectSoundWaveData_SC88_DrumKitMuteHiConga, 255, 0, 255, 0 @ 84326D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84326DC - voice_directsound_no_resample 72, 190, DirectSoundWaveData_84622A4, 255, 0, 255, 0 @ 84326E8 + voice_directsound_no_resample 72, 190, DirectSoundWaveData_SC88_DrumKitLowConga, 255, 0, 255, 0 @ 84326E8 .align 2 voicegroup_84326F4:: @ 84326F4 @@ -1397,7 +1397,7 @@ voicegroup_8433948:: @ 8433948 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433B58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433B64 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433B70 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8433B7C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8433B7C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8433B88 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433B94 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433BA0 @@ -1440,11 +1440,11 @@ voicegroup_8433BAC:: @ 8433BAC voice_programmable_wave_alt ProgrammableWaveData_84553FC, 0, 7, 15, 0 @ 8433D38 voice_programmable_wave_alt ProgrammableWaveData_84553FC, 0, 7, 15, 1 @ 8433D44 voice_square_1_alt 0, 0, 0, 0, 7, 0 @ 8433D50 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845AE14, 255, 0, 255, 242 @ 8433D5C + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitBassDrum, 255, 0, 255, 242 @ 8433D5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433D68 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845B2B4, 255, 0, 255, 242 @ 8433D74 + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare1, 255, 0, 255, 242 @ 8433D74 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433D80 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845C238, 255, 0, 255, 242 @ 8433D8C + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 242 @ 8433D8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433D98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433DA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433DB0 @@ -1458,7 +1458,7 @@ voicegroup_8433BAC:: @ 8433BAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E10 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E28 - voice_directsound_no_resample 32, 162, DirectSoundWaveData_845FCC8, 255, 127, 77, 204 @ 8433E34 + voice_directsound_no_resample 32, 162, DirectSoundWaveData_SC88_DrumKitCabasa, 255, 127, 77, 204 @ 8433E34 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E40 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E58 @@ -1466,9 +1466,9 @@ voicegroup_8433BAC:: @ 8433BAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E7C voice_square_1 0, 2, 0, 0, 15, 0 @ 8433E88 - voice_directsound_no_resample 72, 195, DirectSoundWaveData_8461D8C, 255, 0, 255, 0 @ 8433E94 + voice_directsound_no_resample 72, 195, DirectSoundWaveData_SC88_DrumKitMuteHiConga, 255, 0, 255, 0 @ 8433E94 voice_square_1 0, 2, 0, 0, 15, 0 @ 8433EA0 - voice_directsound_no_resample 72, 189, DirectSoundWaveData_84622A4, 255, 0, 255, 0 @ 8433EAC + voice_directsound_no_resample 72, 189, DirectSoundWaveData_SC88_DrumKitLowConga, 255, 0, 255, 0 @ 8433EAC .align 2 voicegroup_8433EB8:: @ 8433EB8 @@ -1611,7 +1611,7 @@ voicegroup_84342E4:: @ 84342E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84344F4 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8434500 voice_square_1 0, 2, 0, 0, 15, 0 @ 843450C - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8434518 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8434518 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8434524 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434530 voice_square_1 0, 2, 0, 0, 15, 0 @ 843453C @@ -1705,7 +1705,7 @@ voicegroup_8434728:: @ 8434728 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434938 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434944 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434950 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 843495C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 843495C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434968 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434974 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434980 @@ -1792,7 +1792,7 @@ voicegroup_8434B18:: @ 8434B18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D34 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D40 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8434D4C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8434D4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D64 voice_square_1 0, 2, 0, 0, 15, 0 @ 8434D70 @@ -2097,7 +2097,7 @@ voicegroup_84358F8:: @ 84358F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B08 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 8435B14 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B20 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8435B2C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8435B2C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8435B38 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B44 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435B50 @@ -2188,7 +2188,7 @@ voicegroup_8435D18:: @ 8435D18 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F34 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8435F40 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8435F4C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8435F4C voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F58 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F64 voice_square_1 0, 2, 0, 0, 15, 0 @ 8435F70 @@ -2239,7 +2239,7 @@ voicegroup_8435FAC:: @ 8435FAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8436168 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436174 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436180 - voice_directsound_no_resample 60, 192, DirectSoundWaveData_845C238, 255, 0, 255, 242 @ 843618C + voice_directsound_no_resample 60, 192, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 242 @ 843618C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436198 voice_square_1 0, 2, 0, 0, 15, 0 @ 84361A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84361B0 @@ -2253,17 +2253,17 @@ voicegroup_8435FAC:: @ 8435FAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8436210 voice_square_1 0, 2, 0, 0, 15, 0 @ 843621C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436228 - voice_directsound_no_resample 32, 177, DirectSoundWaveData_845FCC8, 255, 127, 77, 204 @ 8436234 + voice_directsound_no_resample 32, 177, DirectSoundWaveData_SC88_DrumKitCabasa, 255, 127, 77, 204 @ 8436234 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436240 voice_square_1 0, 2, 0, 0, 15, 0 @ 843624C - voice_directsound_no_resample 30, 182, DirectSoundWaveData_8460E60, 8, 0, 255, 216 @ 8436258 + voice_directsound_no_resample 30, 182, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 8, 0, 255, 216 @ 8436258 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436264 - voice_directsound_no_resample 30, 182, DirectSoundWaveData_8460E60, 255, 246, 0, 216 @ 8436270 + voice_directsound_no_resample 30, 182, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 246, 0, 216 @ 8436270 voice_square_1 0, 2, 0, 0, 15, 0 @ 843627C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436288 - voice_directsound_no_resample 72, 207, DirectSoundWaveData_8461D8C, 255, 0, 255, 0 @ 8436294 + voice_directsound_no_resample 72, 207, DirectSoundWaveData_SC88_DrumKitMuteHiConga, 255, 0, 255, 0 @ 8436294 voice_square_1 0, 2, 0, 0, 15, 0 @ 84362A0 - voice_directsound_no_resample 72, 202, DirectSoundWaveData_84622A4, 255, 0, 255, 0 @ 84362AC + voice_directsound_no_resample 72, 202, DirectSoundWaveData_SC88_DrumKitLowConga, 255, 0, 255, 0 @ 84362AC .align 2 voicegroup_84362B8:: @ 84362B8 @@ -2618,7 +2618,7 @@ voicegroup_843708C:: @ 843708C voice_square_1 0, 2, 0, 0, 15, 0 @ 843729C voice_square_1 0, 2, 0, 0, 15, 0 @ 84372A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84372B4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84372C0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84372C0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84372CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84372D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84372E4 @@ -2837,7 +2837,7 @@ voicegroup_8437A88:: @ 8437A88 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437C98 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437CA4 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8437CB0 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8437CBC + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8437CBC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8437CC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437CD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8437CE0 @@ -3968,7 +3968,7 @@ voicegroup_843AE24:: @ 843AE24 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B034 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B040 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 843B04C - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 204, 193, 239 @ 843B058 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 204, 193, 239 @ 843B058 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843B064 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B070 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B07C @@ -4099,7 +4099,7 @@ voicegroup_843B424:: @ 843B424 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B634 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B640 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843B64C - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 239 @ 843B658 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 193, 239 @ 843B658 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843B664 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B670 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B67C @@ -4190,7 +4190,7 @@ voicegroup_843B844:: @ 843B844 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA54 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843BA60 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843BA6C - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 226 @ 843BA78 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 193, 226 @ 843BA78 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843BA84 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA90 voice_square_1 0, 2, 0, 0, 15, 0 @ 843BA9C @@ -4529,7 +4529,7 @@ voicegroup_843C7BC:: @ 843C7BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843C9CC voice_square_1 0, 2, 0, 0, 15, 0 @ 843C9D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843C9E4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 226 @ 843C9F0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 193, 226 @ 843C9F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843C9FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843CA08 voice_square_1 0, 2, 0, 0, 15, 0 @ 843CA14 @@ -4922,7 +4922,7 @@ voicegroup_843D9BC:: @ 843D9BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBCC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DBD8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 204 @ 843DBE4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 204, 193, 239 @ 843DBF0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 204, 193, 239 @ 843DBF0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843DBFC voice_square_1 0, 2, 0, 0, 15, 0 @ 843DC08 voice_square_1 0, 2, 0, 0, 15, 0 @ 843DC14 @@ -5184,7 +5184,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E7CC voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 843E7D8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 0, 242 @ 843E7E4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 193, 226 @ 843E7F0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 193, 226 @ 843E7F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843E7FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E808 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E814 @@ -5446,7 +5446,7 @@ voicegroup_843F1BC:: @ 843F1BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F3CC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F3D8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 843F3E4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 843F3F0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 239 @ 843F3F0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843F3FC voice_square_1 0, 2, 0, 0, 15, 0 @ 843F408 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F414 @@ -5538,7 +5538,7 @@ voicegroup_843F5E8:: @ 843F5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F7F8 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 128, 226, 0, 38 @ 843F804 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 843F810 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 843F81C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 843F81C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 843F828 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F834 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F840 @@ -6062,7 +6062,7 @@ voicegroup_8440DE8:: @ 8440DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8440FF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441004 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8441010 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844101C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844101C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8441028 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441034 voice_square_1 0, 2, 0, 0, 15, 0 @ 8441040 @@ -6848,7 +6848,7 @@ voicegroup_84431E8:: @ 84431E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84433F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443404 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8443410 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844341C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844341C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8443428 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443434 voice_square_1 0, 2, 0, 0, 15, 0 @ 8443440 @@ -7372,7 +7372,7 @@ voicegroup_84449E8:: @ 84449E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444BF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444C04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444C10 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 216 @ 8444C1C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 216 @ 8444C1C voice_square_1 0, 2, 0, 0, 15, 0 @ 8444C28 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444C34 voice_square_1 0, 2, 0, 0, 15, 0 @ 8444C40 @@ -7503,7 +7503,7 @@ voicegroup_8444FE8:: @ 8444FE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84451F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445204 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445210 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844521C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844521C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8445228 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445234 voice_square_1 0, 2, 0, 0, 15, 0 @ 8445240 @@ -7896,7 +7896,7 @@ voicegroup_84461E8:: @ 84461E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84463F8 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8446404 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446410 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844641C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844641C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8446428 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446434 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446440 @@ -8158,7 +8158,7 @@ voicegroup_8446DE8:: @ 8446DE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8446FF8 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 226, 0, 38 @ 8447004 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8447010 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844701C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844701C voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8447028 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447034 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447040 @@ -8294,7 +8294,7 @@ voicegroup_8447400:: @ 8447400 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447610 voice_square_1 0, 2, 0, 0, 15, 0 @ 844761C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447628 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8447634 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 8447634 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8447640 voice_square_1 0, 2, 0, 0, 15, 0 @ 844764C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447658 @@ -8512,7 +8512,7 @@ voicegroup_8447DF0:: @ 8447DF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448000 voice_square_1 0, 2, 0, 0, 15, 0 @ 844800C voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8448018 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8448024 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 8448024 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8448030 voice_square_1 0, 2, 0, 0, 15, 0 @ 844803C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448048 @@ -8643,7 +8643,7 @@ voicegroup_84483F0:: @ 84483F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448600 voice_square_1 0, 2, 0, 0, 15, 0 @ 844860C voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8448618 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8448624 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 8448624 voice_square_1 0, 2, 0, 0, 15, 0 @ 8448630 voice_square_1 0, 2, 0, 0, 15, 0 @ 844863C voice_square_1 0, 2, 0, 0, 15, 0 @ 8448648 @@ -8905,7 +8905,7 @@ voicegroup_8448FF0:: @ 8448FF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449200 voice_square_1 0, 2, 0, 0, 15, 0 @ 844920C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449218 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 8449224 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 8449224 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449230 voice_square_1 0, 2, 0, 0, 15, 0 @ 844923C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449248 @@ -9036,7 +9036,7 @@ voicegroup_84495F0:: @ 84495F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8449800 voice_square_1 0, 2, 0, 0, 15, 0 @ 844980C voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 8449818 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 8449824 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 239 @ 8449824 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8449830 voice_square_1 0, 2, 0, 0, 15, 0 @ 844983C voice_square_1 0, 2, 0, 0, 15, 0 @ 8449848 @@ -9822,7 +9822,7 @@ voicegroup_844B9F0:: @ 844B9F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BC00 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BC0C voice_square_1 0, 2, 0, 0, 15, 0 @ 844BC18 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844BC24 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844BC24 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844BC30 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BC3C voice_square_1 0, 2, 0, 0, 15, 0 @ 844BC48 @@ -10084,7 +10084,7 @@ voicegroup_844C5F0:: @ 844C5F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C800 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C80C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C818 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844C824 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844C824 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C830 voice_square_1 0, 2, 0, 0, 15, 0 @ 844C83C voice_square_1 0, 2, 0, 0, 15, 0 @ 844C848 @@ -10215,7 +10215,7 @@ voicegroup_844CBF0:: @ 844CBF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE00 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE0C voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE18 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 249 @ 844CE24 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 249 @ 844CE24 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE30 voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE3C voice_square_1 0, 2, 0, 0, 15, 0 @ 844CE48 @@ -10424,8 +10424,8 @@ voicegroup_844D1F0:: @ 844D1F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7C0 - voice_directsound 60, 0, DirectSoundWaveData_84A3B50, 255, 255, 255, 127 @ 844D7CC - voice_directsound 60, 0, DirectSoundWaveData_845B9A8, 255, 255, 255, 127 @ 844D7D8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WhiteNoise, 255, 255, 255, 127 @ 844D7CC + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHandClap, 255, 255, 255, 127 @ 844D7D8 voice_noise_alt 0, 0, 1, 0, 0 @ 844D7E4 .align 2 @@ -10608,7 +10608,7 @@ voicegroup_844DDF0:: @ 844DDF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E000 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E00C voice_square_1 0, 2, 0, 0, 15, 0 @ 844E018 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 246 @ 844E024 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 246 @ 844E024 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E030 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E03C voice_square_1 0, 2, 0, 0, 15, 0 @ 844E048 @@ -10739,7 +10739,7 @@ voicegroup_844E3F0:: @ 844E3F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E600 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E60C voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 242, 51, 242 @ 844E618 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 180, 239 @ 844E624 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 180, 239 @ 844E624 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844E630 voice_square_1 0, 2, 0, 0, 15, 0 @ 844E63C voice_square_1 0, 2, 0, 0, 15, 0 @ 844E648 @@ -10937,7 +10937,7 @@ voicegroup_844ECF0:: @ 844ECF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF00 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF0C voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 844EF18 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844EF24 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 844EF24 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844EF30 voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF3C voice_square_1 0, 2, 0, 0, 15, 0 @ 844EF48 @@ -11022,7 +11022,7 @@ voicegroup_844F0C8:: @ 844F0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F2E4 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 844F2F0 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844F2FC + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 844F2FC voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844F308 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F314 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F320 @@ -11115,8 +11115,8 @@ voicegroup_844F50C:: @ 844F50C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F710 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F71C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F728 - voice_directsound_no_resample 60, 0, DirectSoundWaveData_8485454, 255, 246, 0, 226 @ 844F734 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844F740 + voice_directsound_no_resample 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale1, 255, 246, 0, 226 @ 844F734 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 844F740 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844F74C voice_square_1 0, 2, 0, 0, 15, 0 @ 844F758 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F764 @@ -11210,7 +11210,7 @@ voicegroup_844F950:: @ 844F950 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB60 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 844FB6C voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB78 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844FB84 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 844FB84 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844FB90 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FB9C voice_square_1 0, 2, 0, 0, 15, 0 @ 844FBA8 @@ -11304,7 +11304,7 @@ voicegroup_844FD94:: @ 844FD94 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFA4 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 844FFB0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFBC - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 844FFC8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 844FFC8 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 844FFD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844FFEC @@ -11393,7 +11393,7 @@ voicegroup_845019C:: @ 845019C voice_square_1 0, 2, 0, 0, 15, 0 @ 84503AC voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 216, 0, 165 @ 84503B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84503C4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84503D0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84503D0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84503DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84503E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84503F4 @@ -11480,7 +11480,7 @@ voicegroup_845058C:: @ 845058C voice_square_1 0, 2, 0, 0, 15, 0 @ 845079C voice_square_1 0, 2, 0, 0, 15, 0 @ 84507A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84507B4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84507C0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84507C0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84507CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84507D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84507E4 @@ -11560,7 +11560,7 @@ voicegroup_845058C:: @ 845058C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450B5C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450B68 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450B74 - voice_directsound 60, 0, DirectSoundWaveData_8460E60, 255, 246, 0, 216 @ 8450B80 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 246, 0, 216 @ 8450B80 .align 2 voicegroup_8450B8C:: @ 8450B8C @@ -11611,7 +11611,7 @@ voicegroup_8450B8C:: @ 8450B8C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450D9C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450DA8 voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 246, 0, 235 @ 8450DB4 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8450DC0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8450DC0 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8450DCC voice_square_1 0, 2, 0, 0, 15, 0 @ 8450DD8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450DE4 @@ -11701,7 +11701,7 @@ voicegroup_8450FA0:: @ 8450FA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84511B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84511BC voice_square_1 0, 2, 0, 0, 15, 0 @ 84511C8 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84511D4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84511D4 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84511E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84511EC voice_square_1 0, 2, 0, 0, 15, 0 @ 84511F8 @@ -11788,7 +11788,7 @@ voicegroup_8451390:: @ 8451390 voice_square_1 0, 2, 0, 0, 15, 0 @ 84515A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84515AC voice_square_1 0, 2, 0, 0, 15, 0 @ 84515B8 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 84515C4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 84515C4 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 84515D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84515DC voice_square_1 0, 2, 0, 0, 15, 0 @ 84515E8 @@ -11867,12 +11867,12 @@ voicegroup_8451390:: @ 8451390 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451954 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451960 voice_square_1 0, 2, 0, 0, 15, 0 @ 845196C - voice_directsound 60, 0, DirectSoundWaveData_8460E60, 255, 235, 0, 216 @ 8451978 - voice_directsound 60, 0, DirectSoundWaveData_8460E60, 255, 246, 0, 216 @ 8451984 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 235, 0, 216 @ 8451978 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 255, 246, 0, 216 @ 8451984 .align 2 voicegroup_8451990:: @ 8451990 - voice_directsound 60, 0, DirectSoundWaveData_8486924, 255, 249, 103, 165 @ 8451990 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare4, 255, 249, 103, 165 @ 8451990 voice_square_1 0, 2, 0, 0, 15, 0 @ 845199C voice_square_1 0, 2, 0, 0, 15, 0 @ 84519A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84519B4 @@ -11919,7 +11919,7 @@ voicegroup_8451990:: @ 8451990 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451BA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451BAC voice_square_1 0, 2, 0, 0, 15, 0 @ 8451BB8 - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 246, 0, 226 @ 8451BC4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 246, 0, 226 @ 8451BC4 voice_keysplit voicegroup_8430234, KeySplitTable_845526C @ 8451BD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8451BDC voice_square_1 0, 2, 0, 0, 15, 0 @ 8451BE8 @@ -12005,13 +12005,13 @@ voicegroup_8451990:: @ 8451990 voicegroup_8451F90:: @ 8451F90 voice_directsound_no_resample 60, 0, DirectSoundWaveData_8488F44, 255, 249, 0, 165 @ 8451F90 voice_directsound_alt 60, 0, DirectSoundWaveData_8488F44, 255, 0, 255, 165 @ 8451F9C - voice_directsound 60, 0, DirectSoundWaveData_8486924, 255, 0, 255, 165 @ 8451FA8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare4, 255, 0, 255, 165 @ 8451FA8 voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 242, 0, 127 @ 8451FB4 voice_noise_alt 0, 0, 1, 0, 1 @ 8451FC0 voice_noise_alt 1, 0, 1, 0, 1 @ 8451FCC - voice_directsound 60, 0, DirectSoundWaveData_8459944, 255, 0, 255, 165 @ 8451FD8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 255, 165 @ 8451FD8 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 8451FE4 - voice_directsound 60, 0, DirectSoundWaveData_848A8A4, 255, 0, 255, 165 @ 8451FF0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare3, 255, 0, 255, 165 @ 8451FF0 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 0, 255, 127 @ 8451FFC voice_directsound 60, 0, DirectSoundWaveData_848C4A4, 255, 0, 255, 127 @ 8452008 voice_noise_alt 1, 0, 2, 0, 0 @ 8452014 @@ -12024,10 +12024,10 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_848F448, 255, 0, 255, 127 @ 8452068 voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 0, 255, 127 @ 8452074 voice_square_1 103, 0, 0, 7, 0, 0 @ 8452080 - voice_directsound 60, 0, DirectSoundWaveData_845C238, 255, 0, 255, 127 @ 845208C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 127 @ 845208C voice_directsound 60, 0, DirectSoundWaveData_8491ACC, 255, 0, 255, 127 @ 8452098 voice_directsound 60, 0, DirectSoundWaveData_SC88_Bubble, 255, 0, 255, 127 @ 84520A4 - voice_directsound 60, 0, DirectSoundWaveData_845B2B4, 255, 0, 255, 127 @ 84520B0 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare1, 255, 0, 255, 127 @ 84520B0 voice_noise_alt 0, 0, 7, 15, 1 @ 84520BC voice_directsound 60, 0, DirectSoundWaveData_8493D20, 255, 0, 255, 127 @ 84520C8 voice_noise_alt 1, 0, 7, 15, 1 @ 84520D4 @@ -12041,10 +12041,10 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 0, 255, 127 @ 8452134 voice_directsound 60, 0, DirectSoundWaveData_8499110, 255, 0, 255, 127 @ 8452140 voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 242, 0, 0 @ 845214C - voice_directsound 60, 0, DirectSoundWaveData_849B320, 255, 0, 255, 0 @ 8452158 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumkitGuiro, 255, 0, 255, 0 @ 8452158 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8452164 - voice_directsound 60, 0, DirectSoundWaveData_845DAF0, 255, 127, 0, 188 @ 8452170 - voice_directsound 60, 0, DirectSoundWaveData_849D45C, 255, 249, 0, 165 @ 845217C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitClosedHiHat, 255, 127, 0, 188 @ 8452170 + voice_directsound 60, 0, DirectSoundWaveData_SC88_PinkNoise, 255, 249, 0, 165 @ 845217C voice_square_1 0, 0, 4, 6, 0, 0 @ 8452188 voice_directsound 60, 0, DirectSoundWaveData_8456330, 13, 0, 255, 127 @ 8452194 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 13, 0, 255, 127 @ 84521A0 @@ -12055,20 +12055,20 @@ voicegroup_8451F90:: @ 8451F90 voice_square_1 0, 0, 4, 0, 15, 0 @ 84521DC voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 188, 0, 0 @ 84521E8 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 226, 0, 127 @ 84521F4 - voice_directsound 60, 0, DirectSoundWaveData_8460E60, 26, 0, 255, 127 @ 8452200 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 26, 0, 255, 127 @ 8452200 voice_square_1_alt 0, 2, 0, 1, 0, 0 @ 845220C voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 252, 0, 127 @ 8452218 voice_square_1_alt 0, 1, 0, 2, 0, 0 @ 8452224 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 127, 0, 127 @ 8452230 voice_noise_alt 0, 1, 6, 0, 0 @ 845223C voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 255, 255, 127 @ 8452248 - voice_directsound 60, 0, DirectSoundWaveData_845B9A8, 255, 255, 255, 127 @ 8452254 - voice_directsound 60, 0, DirectSoundWaveData_84A3B50, 255, 255, 255, 127 @ 8452260 + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHandClap, 255, 255, 255, 127 @ 8452254 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WhiteNoise, 255, 255, 255, 127 @ 8452260 voice_directsound 60, 0, DirectSoundWaveData_SC88_WideFrenchHorns, 11, 242, 0, 127 @ 845226C voice_square_1_alt 0, 2, 4, 6, 0, 0 @ 8452278 voice_directsound 60, 0, DirectSoundWaveData_84A5690, 255, 255, 255, 127 @ 8452284 voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 8452290 - voice_directsound 60, 0, DirectSoundWaveData_845CAB0, 255, 0, 255, 165 @ 845229C + voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 0, 255, 165 @ 845229C voice_noise_alt 0, 5, 7, 15, 1 @ 84522A8 voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 128, 242, 0, 165 @ 84522B4 voice_directsound 60, 0, DirectSoundWaveData_SC88_StringsPlusFlute, 255, 0, 255, 165 @ 84522C0 -- cgit v1.2.3 From ea23c3faf53f0a8e4095f9ce28775ef5d4ea08a7 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sat, 27 Jan 2018 13:25:50 -0800 Subject: Move cries to own directory --- Makefile | 4 +- sound/direct_sound_data.inc | 776 ++++++++++----------- sound/direct_sound_samples/cries/cry_abra.aif | Bin 0 -> 11660 bytes sound/direct_sound_samples/cries/cry_absol.aif | Bin 0 -> 5256 bytes .../direct_sound_samples/cries/cry_aerodactyl.aif | Bin 0 -> 12142 bytes sound/direct_sound_samples/cries/cry_aggron.aif | Bin 0 -> 12776 bytes sound/direct_sound_samples/cries/cry_aipom.aif | Bin 0 -> 7058 bytes sound/direct_sound_samples/cries/cry_alakazam.aif | Bin 0 -> 15740 bytes sound/direct_sound_samples/cries/cry_altaria.aif | Bin 0 -> 5564 bytes sound/direct_sound_samples/cries/cry_ampharos.aif | Bin 0 -> 8242 bytes sound/direct_sound_samples/cries/cry_anorith.aif | Bin 0 -> 5862 bytes sound/direct_sound_samples/cries/cry_arbok.aif | Bin 0 -> 9648 bytes sound/direct_sound_samples/cries/cry_arcanine.aif | Bin 0 -> 8602 bytes sound/direct_sound_samples/cries/cry_ariados.aif | Bin 0 -> 6170 bytes sound/direct_sound_samples/cries/cry_armaldo.aif | Bin 0 -> 11380 bytes sound/direct_sound_samples/cries/cry_aron.aif | Bin 0 -> 4600 bytes sound/direct_sound_samples/cries/cry_articuno.aif | Bin 0 -> 11792 bytes sound/direct_sound_samples/cries/cry_azumarill.aif | Bin 0 -> 8452 bytes sound/direct_sound_samples/cries/cry_azurill.aif | Bin 0 -> 5212 bytes sound/direct_sound_samples/cries/cry_bagon.aif | Bin 0 -> 3934 bytes sound/direct_sound_samples/cries/cry_baltoy.aif | Bin 0 -> 6264 bytes sound/direct_sound_samples/cries/cry_banette.aif | Bin 0 -> 6334 bytes sound/direct_sound_samples/cries/cry_barboach.aif | Bin 0 -> 4632 bytes sound/direct_sound_samples/cries/cry_bayleef.aif | Bin 0 -> 4414 bytes sound/direct_sound_samples/cries/cry_beautifly.aif | Bin 0 -> 4128 bytes sound/direct_sound_samples/cries/cry_beedrill.aif | Bin 0 -> 9656 bytes sound/direct_sound_samples/cries/cry_beldum.aif | Bin 0 -> 4828 bytes sound/direct_sound_samples/cries/cry_bellossom.aif | Bin 0 -> 7042 bytes .../direct_sound_samples/cries/cry_bellsprout.aif | Bin 0 -> 3792 bytes sound/direct_sound_samples/cries/cry_blastoise.aif | Bin 0 -> 9622 bytes sound/direct_sound_samples/cries/cry_blaziken.aif | Bin 0 -> 15690 bytes sound/direct_sound_samples/cries/cry_blissey.aif | Bin 0 -> 8278 bytes sound/direct_sound_samples/cries/cry_breloom.aif | Bin 0 -> 6376 bytes sound/direct_sound_samples/cries/cry_bulbasaur.aif | Bin 0 -> 8266 bytes .../direct_sound_samples/cries/cry_butterfree.aif | Bin 0 -> 5026 bytes sound/direct_sound_samples/cries/cry_cacnea.aif | Bin 0 -> 4488 bytes sound/direct_sound_samples/cries/cry_cacturne.aif | Bin 0 -> 11310 bytes sound/direct_sound_samples/cries/cry_camerupt.aif | Bin 0 -> 11526 bytes sound/direct_sound_samples/cries/cry_carvanha.aif | Bin 0 -> 5048 bytes sound/direct_sound_samples/cries/cry_cascoon.aif | Bin 0 -> 8126 bytes sound/direct_sound_samples/cries/cry_castform.aif | Bin 0 -> 6302 bytes sound/direct_sound_samples/cries/cry_caterpie.aif | Bin 0 -> 4192 bytes sound/direct_sound_samples/cries/cry_celebi.aif | Bin 0 -> 7230 bytes sound/direct_sound_samples/cries/cry_chansey.aif | Bin 0 -> 7390 bytes sound/direct_sound_samples/cries/cry_charizard.aif | Bin 0 -> 9622 bytes .../direct_sound_samples/cries/cry_charmander.aif | Bin 0 -> 7216 bytes .../direct_sound_samples/cries/cry_charmeleon.aif | Bin 0 -> 7248 bytes sound/direct_sound_samples/cries/cry_chikorita.aif | Bin 0 -> 2654 bytes sound/direct_sound_samples/cries/cry_chimecho.aif | Bin 0 -> 5040 bytes sound/direct_sound_samples/cries/cry_chinchou.aif | Bin 0 -> 6346 bytes sound/direct_sound_samples/cries/cry_clamperl.aif | Bin 0 -> 9142 bytes sound/direct_sound_samples/cries/cry_claydol.aif | Bin 0 -> 9668 bytes sound/direct_sound_samples/cries/cry_clefable.aif | Bin 0 -> 5294 bytes sound/direct_sound_samples/cries/cry_clefairy.aif | Bin 0 -> 4234 bytes sound/direct_sound_samples/cries/cry_cleffa.aif | Bin 0 -> 2992 bytes sound/direct_sound_samples/cries/cry_cloyster.aif | Bin 0 -> 10354 bytes sound/direct_sound_samples/cries/cry_combusken.aif | Bin 0 -> 14360 bytes sound/direct_sound_samples/cries/cry_corphish.aif | Bin 0 -> 6010 bytes sound/direct_sound_samples/cries/cry_corsola.aif | Bin 0 -> 6440 bytes sound/direct_sound_samples/cries/cry_cradily.aif | Bin 0 -> 14542 bytes sound/direct_sound_samples/cries/cry_crawdaunt.aif | Bin 0 -> 12316 bytes sound/direct_sound_samples/cries/cry_crobat.aif | Bin 0 -> 11562 bytes sound/direct_sound_samples/cries/cry_croconaw.aif | Bin 0 -> 10096 bytes sound/direct_sound_samples/cries/cry_cubone.aif | Bin 0 -> 7558 bytes sound/direct_sound_samples/cries/cry_cyndaquil.aif | Bin 0 -> 3528 bytes sound/direct_sound_samples/cries/cry_delcatty.aif | Bin 0 -> 10518 bytes sound/direct_sound_samples/cries/cry_delibird.aif | Bin 0 -> 8094 bytes sound/direct_sound_samples/cries/cry_deoxys.aif | Bin 0 -> 10388 bytes sound/direct_sound_samples/cries/cry_dewgong.aif | Bin 0 -> 10546 bytes sound/direct_sound_samples/cries/cry_diglett.aif | Bin 0 -> 9698 bytes sound/direct_sound_samples/cries/cry_ditto.aif | Bin 0 -> 5566 bytes sound/direct_sound_samples/cries/cry_dodrio.aif | Bin 0 -> 9712 bytes sound/direct_sound_samples/cries/cry_doduo.aif | Bin 0 -> 9616 bytes sound/direct_sound_samples/cries/cry_donphan.aif | Bin 0 -> 8554 bytes sound/direct_sound_samples/cries/cry_dragonair.aif | Bin 0 -> 8318 bytes sound/direct_sound_samples/cries/cry_dragonite.aif | Bin 0 -> 9502 bytes sound/direct_sound_samples/cries/cry_dratini.aif | Bin 0 -> 5812 bytes sound/direct_sound_samples/cries/cry_drowzee.aif | Bin 0 -> 14494 bytes sound/direct_sound_samples/cries/cry_dugtrio.aif | Bin 0 -> 9686 bytes sound/direct_sound_samples/cries/cry_dunsparce.aif | Bin 0 -> 7926 bytes sound/direct_sound_samples/cries/cry_dusclops.aif | Bin 0 -> 6858 bytes sound/direct_sound_samples/cries/cry_duskull.aif | Bin 0 -> 5310 bytes sound/direct_sound_samples/cries/cry_dustox.aif | Bin 0 -> 6338 bytes sound/direct_sound_samples/cries/cry_eevee.aif | Bin 0 -> 7104 bytes sound/direct_sound_samples/cries/cry_ekans.aif | Bin 0 -> 9626 bytes .../direct_sound_samples/cries/cry_electabuzz.aif | Bin 0 -> 15380 bytes sound/direct_sound_samples/cries/cry_electrike.aif | Bin 0 -> 6186 bytes sound/direct_sound_samples/cries/cry_electrode.aif | Bin 0 -> 12564 bytes sound/direct_sound_samples/cries/cry_elekid.aif | Bin 0 -> 5284 bytes sound/direct_sound_samples/cries/cry_entei.aif | Bin 0 -> 10198 bytes sound/direct_sound_samples/cries/cry_espeon.aif | Bin 0 -> 9828 bytes sound/direct_sound_samples/cries/cry_exeggcute.aif | Bin 0 -> 9416 bytes sound/direct_sound_samples/cries/cry_exeggutor.aif | Bin 0 -> 15880 bytes sound/direct_sound_samples/cries/cry_exploud.aif | Bin 0 -> 14086 bytes sound/direct_sound_samples/cries/cry_farfetchd.aif | Bin 0 -> 3766 bytes sound/direct_sound_samples/cries/cry_fearow.aif | Bin 0 -> 8602 bytes sound/direct_sound_samples/cries/cry_feebas.aif | Bin 0 -> 3932 bytes .../direct_sound_samples/cries/cry_feraligatr.aif | Bin 0 -> 12712 bytes sound/direct_sound_samples/cries/cry_flaaffy.aif | Bin 0 -> 6854 bytes sound/direct_sound_samples/cries/cry_flareon.aif | Bin 0 -> 7748 bytes sound/direct_sound_samples/cries/cry_flygon.aif | Bin 0 -> 12974 bytes .../direct_sound_samples/cries/cry_forretress.aif | Bin 0 -> 9990 bytes sound/direct_sound_samples/cries/cry_furret.aif | Bin 0 -> 3168 bytes sound/direct_sound_samples/cries/cry_gardevoir.aif | Bin 0 -> 12154 bytes sound/direct_sound_samples/cries/cry_gastly.aif | Bin 0 -> 11620 bytes sound/direct_sound_samples/cries/cry_gengar.aif | Bin 0 -> 7372 bytes sound/direct_sound_samples/cries/cry_geodude.aif | Bin 0 -> 11816 bytes sound/direct_sound_samples/cries/cry_girafarig.aif | Bin 0 -> 7346 bytes sound/direct_sound_samples/cries/cry_glalie.aif | Bin 0 -> 10420 bytes sound/direct_sound_samples/cries/cry_gligar.aif | Bin 0 -> 6068 bytes sound/direct_sound_samples/cries/cry_gloom.aif | Bin 0 -> 6246 bytes sound/direct_sound_samples/cries/cry_golbat.aif | Bin 0 -> 9674 bytes sound/direct_sound_samples/cries/cry_goldeen.aif | Bin 0 -> 4936 bytes sound/direct_sound_samples/cries/cry_golduck.aif | Bin 0 -> 5646 bytes sound/direct_sound_samples/cries/cry_golem.aif | Bin 0 -> 7080 bytes sound/direct_sound_samples/cries/cry_gorebyss.aif | Bin 0 -> 11176 bytes sound/direct_sound_samples/cries/cry_granbull.aif | Bin 0 -> 11782 bytes sound/direct_sound_samples/cries/cry_graveler.aif | Bin 0 -> 13900 bytes sound/direct_sound_samples/cries/cry_grimer.aif | Bin 0 -> 5274 bytes sound/direct_sound_samples/cries/cry_groudon.aif | Bin 0 -> 18438 bytes sound/direct_sound_samples/cries/cry_grovyle.aif | Bin 0 -> 10198 bytes sound/direct_sound_samples/cries/cry_growlithe.aif | Bin 0 -> 6696 bytes sound/direct_sound_samples/cries/cry_grumpig.aif | Bin 0 -> 6318 bytes sound/direct_sound_samples/cries/cry_gulpin.aif | Bin 0 -> 4028 bytes sound/direct_sound_samples/cries/cry_gyarados.aif | Bin 0 -> 10078 bytes sound/direct_sound_samples/cries/cry_hariyama.aif | Bin 0 -> 8348 bytes sound/direct_sound_samples/cries/cry_haunter.aif | Bin 0 -> 11714 bytes sound/direct_sound_samples/cries/cry_heracross.aif | Bin 0 -> 9144 bytes .../direct_sound_samples/cries/cry_hitmonchan.aif | Bin 0 -> 8906 bytes sound/direct_sound_samples/cries/cry_hitmonlee.aif | Bin 0 -> 9318 bytes sound/direct_sound_samples/cries/cry_hitmontop.aif | Bin 0 -> 6936 bytes sound/direct_sound_samples/cries/cry_ho_oh.aif | Bin 0 -> 11260 bytes sound/direct_sound_samples/cries/cry_hoothoot.aif | Bin 0 -> 5458 bytes sound/direct_sound_samples/cries/cry_hoppip.aif | Bin 0 -> 4226 bytes sound/direct_sound_samples/cries/cry_horsea.aif | Bin 0 -> 4754 bytes sound/direct_sound_samples/cries/cry_houndoom.aif | Bin 0 -> 9820 bytes sound/direct_sound_samples/cries/cry_houndour.aif | Bin 0 -> 6332 bytes sound/direct_sound_samples/cries/cry_huntail.aif | Bin 0 -> 7944 bytes sound/direct_sound_samples/cries/cry_hypno.aif | Bin 0 -> 14450 bytes sound/direct_sound_samples/cries/cry_igglybuff.aif | Bin 0 -> 3518 bytes sound/direct_sound_samples/cries/cry_illumise.aif | Bin 0 -> 8536 bytes sound/direct_sound_samples/cries/cry_ivysaur.aif | Bin 0 -> 8270 bytes .../direct_sound_samples/cries/cry_jigglypuff.aif | Bin 0 -> 2720 bytes sound/direct_sound_samples/cries/cry_jirachi.aif | Bin 0 -> 6758 bytes sound/direct_sound_samples/cries/cry_jolteon.aif | Bin 0 -> 7904 bytes sound/direct_sound_samples/cries/cry_jumpluff.aif | Bin 0 -> 8106 bytes sound/direct_sound_samples/cries/cry_jynx.aif | Bin 0 -> 23606 bytes sound/direct_sound_samples/cries/cry_kabuto.aif | Bin 0 -> 6170 bytes sound/direct_sound_samples/cries/cry_kabutops.aif | Bin 0 -> 6867 bytes sound/direct_sound_samples/cries/cry_kadabra.aif | Bin 0 -> 13408 bytes sound/direct_sound_samples/cries/cry_kakuna.aif | Bin 0 -> 9104 bytes .../direct_sound_samples/cries/cry_kangaskhan.aif | Bin 0 -> 9334 bytes sound/direct_sound_samples/cries/cry_kecleon.aif | Bin 0 -> 4202 bytes sound/direct_sound_samples/cries/cry_kingdra.aif | Bin 0 -> 6922 bytes sound/direct_sound_samples/cries/cry_kingler.aif | Bin 0 -> 12132 bytes sound/direct_sound_samples/cries/cry_kirlia.aif | Bin 0 -> 6100 bytes sound/direct_sound_samples/cries/cry_koffing.aif | Bin 0 -> 10154 bytes sound/direct_sound_samples/cries/cry_krabby.aif | Bin 0 -> 12112 bytes sound/direct_sound_samples/cries/cry_kyogre.aif | Bin 0 -> 17782 bytes sound/direct_sound_samples/cries/cry_lairon.aif | Bin 0 -> 10392 bytes sound/direct_sound_samples/cries/cry_lanturn.aif | Bin 0 -> 5282 bytes sound/direct_sound_samples/cries/cry_lapras.aif | Bin 0 -> 7408 bytes sound/direct_sound_samples/cries/cry_larvitar.aif | Bin 0 -> 6350 bytes sound/direct_sound_samples/cries/cry_latias.aif | Bin 0 -> 6098 bytes sound/direct_sound_samples/cries/cry_latios.aif | Bin 0 -> 10958 bytes sound/direct_sound_samples/cries/cry_ledian.aif | Bin 0 -> 4214 bytes sound/direct_sound_samples/cries/cry_ledyba.aif | Bin 0 -> 3506 bytes sound/direct_sound_samples/cries/cry_lickitung.aif | Bin 0 -> 7571 bytes sound/direct_sound_samples/cries/cry_lileep.aif | Bin 0 -> 4838 bytes sound/direct_sound_samples/cries/cry_linoone.aif | Bin 0 -> 15248 bytes sound/direct_sound_samples/cries/cry_lombre.aif | Bin 0 -> 7282 bytes sound/direct_sound_samples/cries/cry_lotad.aif | Bin 0 -> 2232 bytes sound/direct_sound_samples/cries/cry_loudred.aif | Bin 0 -> 6582 bytes sound/direct_sound_samples/cries/cry_ludicolo.aif | Bin 0 -> 8398 bytes sound/direct_sound_samples/cries/cry_lugia.aif | Bin 0 -> 18900 bytes sound/direct_sound_samples/cries/cry_lunatone.aif | Bin 0 -> 11956 bytes sound/direct_sound_samples/cries/cry_luvdisc.aif | Bin 0 -> 2456 bytes sound/direct_sound_samples/cries/cry_machamp.aif | Bin 0 -> 8256 bytes sound/direct_sound_samples/cries/cry_machoke.aif | Bin 0 -> 6782 bytes sound/direct_sound_samples/cries/cry_machop.aif | Bin 0 -> 6696 bytes sound/direct_sound_samples/cries/cry_magby.aif | Bin 0 -> 7218 bytes sound/direct_sound_samples/cries/cry_magcargo.aif | Bin 0 -> 10486 bytes sound/direct_sound_samples/cries/cry_magikarp.aif | Bin 0 -> 9492 bytes sound/direct_sound_samples/cries/cry_magmar.aif | Bin 0 -> 7738 bytes sound/direct_sound_samples/cries/cry_magnemite.aif | Bin 0 -> 9610 bytes sound/direct_sound_samples/cries/cry_magneton.aif | Bin 0 -> 11914 bytes sound/direct_sound_samples/cries/cry_makuhita.aif | Bin 0 -> 3704 bytes sound/direct_sound_samples/cries/cry_manectric.aif | Bin 0 -> 10492 bytes sound/direct_sound_samples/cries/cry_mankey.aif | Bin 0 -> 8178 bytes sound/direct_sound_samples/cries/cry_mantine.aif | Bin 0 -> 7884 bytes sound/direct_sound_samples/cries/cry_mareep.aif | Bin 0 -> 3694 bytes sound/direct_sound_samples/cries/cry_marill.aif | Bin 0 -> 6538 bytes sound/direct_sound_samples/cries/cry_marowak.aif | Bin 0 -> 7216 bytes sound/direct_sound_samples/cries/cry_marshtomp.aif | Bin 0 -> 8498 bytes .../direct_sound_samples/cries/cry_masquerain.aif | Bin 0 -> 9830 bytes sound/direct_sound_samples/cries/cry_mawile.aif | Bin 0 -> 5756 bytes sound/direct_sound_samples/cries/cry_medicham.aif | Bin 0 -> 8246 bytes sound/direct_sound_samples/cries/cry_meditite.aif | Bin 0 -> 4078 bytes sound/direct_sound_samples/cries/cry_meganium.aif | Bin 0 -> 8100 bytes sound/direct_sound_samples/cries/cry_meowth.aif | Bin 0 -> 4796 bytes sound/direct_sound_samples/cries/cry_metagross.aif | Bin 0 -> 19644 bytes sound/direct_sound_samples/cries/cry_metang.aif | Bin 0 -> 9398 bytes sound/direct_sound_samples/cries/cry_metapod.aif | Bin 0 -> 11622 bytes sound/direct_sound_samples/cries/cry_mew.aif | Bin 0 -> 15146 bytes sound/direct_sound_samples/cries/cry_mewtwo.aif | Bin 0 -> 15144 bytes sound/direct_sound_samples/cries/cry_mightyena.aif | Bin 0 -> 9748 bytes sound/direct_sound_samples/cries/cry_milotic.aif | Bin 0 -> 19542 bytes sound/direct_sound_samples/cries/cry_miltank.aif | Bin 0 -> 7424 bytes sound/direct_sound_samples/cries/cry_minun.aif | Bin 0 -> 8004 bytes .../direct_sound_samples/cries/cry_misdreavus.aif | Bin 0 -> 5816 bytes sound/direct_sound_samples/cries/cry_moltres.aif | Bin 0 -> 11796 bytes sound/direct_sound_samples/cries/cry_mr_mime.aif | Bin 0 -> 9446 bytes sound/direct_sound_samples/cries/cry_mudkip.aif | Bin 0 -> 3776 bytes sound/direct_sound_samples/cries/cry_muk.aif | Bin 0 -> 7374 bytes sound/direct_sound_samples/cries/cry_murkrow.aif | Bin 0 -> 8370 bytes sound/direct_sound_samples/cries/cry_natu.aif | Bin 0 -> 5294 bytes sound/direct_sound_samples/cries/cry_nidoking.aif | Bin 0 -> 12176 bytes sound/direct_sound_samples/cries/cry_nidoqueen.aif | Bin 0 -> 8424 bytes sound/direct_sound_samples/cries/cry_nidoran_f.aif | Bin 0 -> 4858 bytes sound/direct_sound_samples/cries/cry_nidoran_m.aif | Bin 0 -> 5216 bytes sound/direct_sound_samples/cries/cry_nidorina.aif | Bin 0 -> 6394 bytes sound/direct_sound_samples/cries/cry_nidorino.aif | Bin 0 -> 6042 bytes sound/direct_sound_samples/cries/cry_nincada.aif | Bin 0 -> 3244 bytes sound/direct_sound_samples/cries/cry_ninetales.aif | Bin 0 -> 12174 bytes sound/direct_sound_samples/cries/cry_ninjask.aif | Bin 0 -> 6084 bytes sound/direct_sound_samples/cries/cry_noctowl.aif | Bin 0 -> 10564 bytes sound/direct_sound_samples/cries/cry_none.aif | Bin 0 -> 8286 bytes sound/direct_sound_samples/cries/cry_nosepass.aif | Bin 0 -> 6696 bytes sound/direct_sound_samples/cries/cry_numel.aif | Bin 0 -> 4664 bytes sound/direct_sound_samples/cries/cry_nuzleaf.aif | Bin 0 -> 5712 bytes sound/direct_sound_samples/cries/cry_octillery.aif | Bin 0 -> 13084 bytes sound/direct_sound_samples/cries/cry_oddish.aif | Bin 0 -> 7298 bytes sound/direct_sound_samples/cries/cry_omanyte.aif | Bin 0 -> 6672 bytes sound/direct_sound_samples/cries/cry_omastar.aif | Bin 0 -> 6666 bytes sound/direct_sound_samples/cries/cry_onix.aif | Bin 0 -> 12340 bytes sound/direct_sound_samples/cries/cry_paras.aif | Bin 0 -> 13924 bytes sound/direct_sound_samples/cries/cry_parasect.aif | Bin 0 -> 15140 bytes sound/direct_sound_samples/cries/cry_pelipper.aif | Bin 0 -> 5894 bytes sound/direct_sound_samples/cries/cry_persian.aif | Bin 0 -> 9412 bytes sound/direct_sound_samples/cries/cry_phanpy.aif | Bin 0 -> 5664 bytes sound/direct_sound_samples/cries/cry_pichu.aif | Bin 0 -> 3684 bytes sound/direct_sound_samples/cries/cry_pidgeot.aif | Bin 0 -> 8590 bytes sound/direct_sound_samples/cries/cry_pidgeotto.aif | Bin 0 -> 7512 bytes sound/direct_sound_samples/cries/cry_pidgey.aif | Bin 0 -> 1984 bytes sound/direct_sound_samples/cries/cry_pikachu.aif | Bin 0 -> 8316 bytes sound/direct_sound_samples/cries/cry_piloswine.aif | Bin 0 -> 6480 bytes sound/direct_sound_samples/cries/cry_pineco.aif | Bin 0 -> 6690 bytes sound/direct_sound_samples/cries/cry_pinsir.aif | Bin 0 -> 6186 bytes sound/direct_sound_samples/cries/cry_plusle.aif | Bin 0 -> 4504 bytes sound/direct_sound_samples/cries/cry_politoed.aif | Bin 0 -> 9114 bytes sound/direct_sound_samples/cries/cry_poliwag.aif | Bin 0 -> 5562 bytes sound/direct_sound_samples/cries/cry_poliwhirl.aif | Bin 0 -> 3354 bytes sound/direct_sound_samples/cries/cry_poliwrath.aif | Bin 0 -> 5582 bytes sound/direct_sound_samples/cries/cry_ponyta.aif | Bin 0 -> 7524 bytes sound/direct_sound_samples/cries/cry_poochyena.aif | Bin 0 -> 4656 bytes sound/direct_sound_samples/cries/cry_porygon.aif | Bin 0 -> 10002 bytes sound/direct_sound_samples/cries/cry_porygon2.aif | Bin 0 -> 7854 bytes sound/direct_sound_samples/cries/cry_primeape.aif | Bin 0 -> 8086 bytes sound/direct_sound_samples/cries/cry_psyduck.aif | Bin 0 -> 6578 bytes sound/direct_sound_samples/cries/cry_pupitar.aif | Bin 0 -> 4234 bytes sound/direct_sound_samples/cries/cry_quagsire.aif | Bin 0 -> 6684 bytes sound/direct_sound_samples/cries/cry_quilava.aif | Bin 0 -> 5962 bytes sound/direct_sound_samples/cries/cry_qwilfish.aif | Bin 0 -> 5808 bytes sound/direct_sound_samples/cries/cry_raichu.aif | Bin 0 -> 11842 bytes sound/direct_sound_samples/cries/cry_raikou.aif | Bin 0 -> 8704 bytes sound/direct_sound_samples/cries/cry_ralts.aif | Bin 0 -> 5066 bytes sound/direct_sound_samples/cries/cry_rapidash.aif | Bin 0 -> 9292 bytes sound/direct_sound_samples/cries/cry_raticate.aif | Bin 0 -> 4770 bytes sound/direct_sound_samples/cries/cry_rattata.aif | Bin 0 -> 3956 bytes sound/direct_sound_samples/cries/cry_rayquaza.aif | Bin 0 -> 14532 bytes sound/direct_sound_samples/cries/cry_regice.aif | Bin 0 -> 15936 bytes sound/direct_sound_samples/cries/cry_regirock.aif | Bin 0 -> 15862 bytes sound/direct_sound_samples/cries/cry_registeel.aif | Bin 0 -> 11476 bytes sound/direct_sound_samples/cries/cry_relicanth.aif | Bin 0 -> 10072 bytes sound/direct_sound_samples/cries/cry_remoraid.aif | Bin 0 -> 5290 bytes sound/direct_sound_samples/cries/cry_rhydon.aif | Bin 0 -> 10186 bytes sound/direct_sound_samples/cries/cry_rhyhorn.aif | Bin 0 -> 9686 bytes sound/direct_sound_samples/cries/cry_roselia.aif | Bin 0 -> 5382 bytes sound/direct_sound_samples/cries/cry_sableye.aif | Bin 0 -> 5826 bytes sound/direct_sound_samples/cries/cry_salamence.aif | Bin 0 -> 12514 bytes sound/direct_sound_samples/cries/cry_sandshrew.aif | Bin 0 -> 4678 bytes sound/direct_sound_samples/cries/cry_sandslash.aif | Bin 0 -> 6784 bytes sound/direct_sound_samples/cries/cry_sceptile.aif | Bin 0 -> 13012 bytes sound/direct_sound_samples/cries/cry_scizor.aif | Bin 0 -> 11462 bytes sound/direct_sound_samples/cries/cry_scyther.aif | Bin 0 -> 6676 bytes sound/direct_sound_samples/cries/cry_seadra.aif | Bin 0 -> 4228 bytes sound/direct_sound_samples/cries/cry_seaking.aif | Bin 0 -> 9654 bytes sound/direct_sound_samples/cries/cry_sealeo.aif | Bin 0 -> 5928 bytes sound/direct_sound_samples/cries/cry_seedot.aif | Bin 0 -> 4106 bytes sound/direct_sound_samples/cries/cry_seel.aif | Bin 0 -> 8954 bytes sound/direct_sound_samples/cries/cry_sentret.aif | Bin 0 -> 2108 bytes sound/direct_sound_samples/cries/cry_seviper.aif | Bin 0 -> 5820 bytes sound/direct_sound_samples/cries/cry_sharpedo.aif | Bin 0 -> 11488 bytes sound/direct_sound_samples/cries/cry_shedinja.aif | Bin 0 -> 3876 bytes sound/direct_sound_samples/cries/cry_shelgon.aif | Bin 0 -> 9992 bytes sound/direct_sound_samples/cries/cry_shellder.aif | Bin 0 -> 7718 bytes sound/direct_sound_samples/cries/cry_shiftry.aif | Bin 0 -> 9860 bytes sound/direct_sound_samples/cries/cry_shroomish.aif | Bin 0 -> 4436 bytes sound/direct_sound_samples/cries/cry_shuckle.aif | Bin 0 -> 5110 bytes sound/direct_sound_samples/cries/cry_shuppet.aif | Bin 0 -> 4144 bytes sound/direct_sound_samples/cries/cry_silcoon.aif | Bin 0 -> 8074 bytes sound/direct_sound_samples/cries/cry_skarmory.aif | Bin 0 -> 11982 bytes sound/direct_sound_samples/cries/cry_skiploom.aif | Bin 0 -> 6516 bytes sound/direct_sound_samples/cries/cry_skitty.aif | Bin 0 -> 3560 bytes sound/direct_sound_samples/cries/cry_slaking.aif | Bin 0 -> 4970 bytes sound/direct_sound_samples/cries/cry_slakoth.aif | Bin 0 -> 4272 bytes sound/direct_sound_samples/cries/cry_slowbro.aif | Bin 0 -> 6720 bytes sound/direct_sound_samples/cries/cry_slowking.aif | Bin 0 -> 11908 bytes sound/direct_sound_samples/cries/cry_slowpoke.aif | Bin 0 -> 3724 bytes sound/direct_sound_samples/cries/cry_slugma.aif | Bin 0 -> 8536 bytes sound/direct_sound_samples/cries/cry_smeargle.aif | Bin 0 -> 5114 bytes sound/direct_sound_samples/cries/cry_smoochum.aif | Bin 0 -> 5860 bytes sound/direct_sound_samples/cries/cry_sneasel.aif | Bin 0 -> 4586 bytes sound/direct_sound_samples/cries/cry_snorlax.aif | Bin 0 -> 2648 bytes sound/direct_sound_samples/cries/cry_snorunt.aif | Bin 0 -> 8500 bytes sound/direct_sound_samples/cries/cry_snubbull.aif | Bin 0 -> 7220 bytes sound/direct_sound_samples/cries/cry_solrock.aif | Bin 0 -> 8080 bytes sound/direct_sound_samples/cries/cry_spearow.aif | Bin 0 -> 8806 bytes sound/direct_sound_samples/cries/cry_spheal.aif | Bin 0 -> 2880 bytes sound/direct_sound_samples/cries/cry_spinarak.aif | Bin 0 -> 6696 bytes sound/direct_sound_samples/cries/cry_spinda.aif | Bin 0 -> 6216 bytes sound/direct_sound_samples/cries/cry_spoink.aif | Bin 0 -> 3648 bytes sound/direct_sound_samples/cries/cry_squirtle.aif | Bin 0 -> 7222 bytes sound/direct_sound_samples/cries/cry_stantler.aif | Bin 0 -> 11208 bytes sound/direct_sound_samples/cries/cry_starmie.aif | Bin 0 -> 10402 bytes sound/direct_sound_samples/cries/cry_staryu.aif | Bin 0 -> 9934 bytes sound/direct_sound_samples/cries/cry_steelix.aif | Bin 0 -> 18988 bytes sound/direct_sound_samples/cries/cry_sudowoodo.aif | Bin 0 -> 8084 bytes sound/direct_sound_samples/cries/cry_suicune.aif | Bin 0 -> 9126 bytes sound/direct_sound_samples/cries/cry_sunflora.aif | Bin 0 -> 7928 bytes sound/direct_sound_samples/cries/cry_sunkern.aif | Bin 0 -> 4056 bytes sound/direct_sound_samples/cries/cry_surskit.aif | Bin 0 -> 5258 bytes sound/direct_sound_samples/cries/cry_swablu.aif | Bin 0 -> 2824 bytes sound/direct_sound_samples/cries/cry_swalot.aif | Bin 0 -> 8676 bytes sound/direct_sound_samples/cries/cry_swampert.aif | Bin 0 -> 11220 bytes sound/direct_sound_samples/cries/cry_swellow.aif | Bin 0 -> 4524 bytes sound/direct_sound_samples/cries/cry_swinub.aif | Bin 0 -> 6328 bytes sound/direct_sound_samples/cries/cry_taillow.aif | Bin 0 -> 3024 bytes sound/direct_sound_samples/cries/cry_tangela.aif | Bin 0 -> 7550 bytes sound/direct_sound_samples/cries/cry_tauros.aif | Bin 0 -> 9150 bytes sound/direct_sound_samples/cries/cry_teddiursa.aif | Bin 0 -> 8266 bytes sound/direct_sound_samples/cries/cry_tentacool.aif | Bin 0 -> 7960 bytes .../direct_sound_samples/cries/cry_tentacruel.aif | Bin 0 -> 11458 bytes sound/direct_sound_samples/cries/cry_togepi.aif | Bin 0 -> 5460 bytes sound/direct_sound_samples/cries/cry_togetic.aif | Bin 0 -> 3526 bytes sound/direct_sound_samples/cries/cry_torchic.aif | Bin 0 -> 4840 bytes sound/direct_sound_samples/cries/cry_torkoal.aif | Bin 0 -> 4662 bytes sound/direct_sound_samples/cries/cry_totodile.aif | Bin 0 -> 9152 bytes sound/direct_sound_samples/cries/cry_trapinch.aif | Bin 0 -> 5080 bytes sound/direct_sound_samples/cries/cry_treecko.aif | Bin 0 -> 5836 bytes sound/direct_sound_samples/cries/cry_tropius.aif | Bin 0 -> 16318 bytes .../direct_sound_samples/cries/cry_typhlosion.aif | Bin 0 -> 18944 bytes sound/direct_sound_samples/cries/cry_tyranitar.aif | Bin 0 -> 11656 bytes sound/direct_sound_samples/cries/cry_tyrogue.aif | Bin 0 -> 8072 bytes sound/direct_sound_samples/cries/cry_umbreon.aif | Bin 0 -> 7746 bytes sound/direct_sound_samples/cries/cry_unown.aif | Bin 0 -> 6576 bytes .../direct_sound_samples/cries/cry_unused_265.aif | Bin 0 -> 4676 bytes .../direct_sound_samples/cries/cry_unused_268.aif | Bin 0 -> 8828 bytes sound/direct_sound_samples/cries/cry_ursaring.aif | Bin 0 -> 14862 bytes sound/direct_sound_samples/cries/cry_vaporeon.aif | Bin 0 -> 11018 bytes sound/direct_sound_samples/cries/cry_venomoth.aif | Bin 0 -> 8002 bytes sound/direct_sound_samples/cries/cry_venonat.aif | Bin 0 -> 7746 bytes sound/direct_sound_samples/cries/cry_venusaur.aif | Bin 0 -> 9648 bytes sound/direct_sound_samples/cries/cry_vibrava.aif | Bin 0 -> 7002 bytes .../direct_sound_samples/cries/cry_victreebel.aif | Bin 0 -> 9630 bytes sound/direct_sound_samples/cries/cry_vigoroth.aif | Bin 0 -> 7168 bytes sound/direct_sound_samples/cries/cry_vileplume.aif | Bin 0 -> 12760 bytes sound/direct_sound_samples/cries/cry_volbeat.aif | Bin 0 -> 5772 bytes sound/direct_sound_samples/cries/cry_voltorb.aif | Bin 0 -> 12346 bytes sound/direct_sound_samples/cries/cry_vulpix.aif | Bin 0 -> 11870 bytes sound/direct_sound_samples/cries/cry_wailmer.aif | Bin 0 -> 14134 bytes sound/direct_sound_samples/cries/cry_wailord.aif | Bin 0 -> 20928 bytes sound/direct_sound_samples/cries/cry_walrein.aif | Bin 0 -> 18067 bytes sound/direct_sound_samples/cries/cry_wartortle.aif | Bin 0 -> 8614 bytes sound/direct_sound_samples/cries/cry_weedle.aif | Bin 0 -> 8124 bytes .../direct_sound_samples/cries/cry_weepinbell.aif | Bin 0 -> 7310 bytes sound/direct_sound_samples/cries/cry_weezing.aif | Bin 0 -> 10806 bytes sound/direct_sound_samples/cries/cry_whiscash.aif | Bin 0 -> 8478 bytes sound/direct_sound_samples/cries/cry_whismur.aif | Bin 0 -> 4092 bytes .../direct_sound_samples/cries/cry_wigglytuff.aif | Bin 0 -> 3412 bytes sound/direct_sound_samples/cries/cry_wingull.aif | Bin 0 -> 6132 bytes sound/direct_sound_samples/cries/cry_wobbuffet.aif | Bin 0 -> 10276 bytes sound/direct_sound_samples/cries/cry_wooper.aif | Bin 0 -> 3710 bytes sound/direct_sound_samples/cries/cry_wurmple.aif | Bin 0 -> 4412 bytes sound/direct_sound_samples/cries/cry_wynaut.aif | Bin 0 -> 6932 bytes sound/direct_sound_samples/cries/cry_xatu.aif | Bin 0 -> 7392 bytes sound/direct_sound_samples/cries/cry_yanma.aif | Bin 0 -> 8506 bytes sound/direct_sound_samples/cries/cry_zangoose.aif | Bin 0 -> 4794 bytes sound/direct_sound_samples/cries/cry_zapdos.aif | Bin 0 -> 7724 bytes sound/direct_sound_samples/cries/cry_zigzagoon.aif | Bin 0 -> 5786 bytes sound/direct_sound_samples/cries/cry_zubat.aif | Bin 0 -> 9688 bytes sound/direct_sound_samples/cry_abra.aif | Bin 11660 -> 0 bytes sound/direct_sound_samples/cry_absol.aif | Bin 5256 -> 0 bytes sound/direct_sound_samples/cry_aerodactyl.aif | Bin 12142 -> 0 bytes sound/direct_sound_samples/cry_aggron.aif | Bin 12776 -> 0 bytes sound/direct_sound_samples/cry_aipom.aif | Bin 7058 -> 0 bytes sound/direct_sound_samples/cry_alakazam.aif | Bin 15740 -> 0 bytes sound/direct_sound_samples/cry_altaria.aif | Bin 5564 -> 0 bytes sound/direct_sound_samples/cry_ampharos.aif | Bin 8242 -> 0 bytes sound/direct_sound_samples/cry_anorith.aif | Bin 5862 -> 0 bytes sound/direct_sound_samples/cry_arbok.aif | Bin 9648 -> 0 bytes sound/direct_sound_samples/cry_arcanine.aif | Bin 8602 -> 0 bytes sound/direct_sound_samples/cry_ariados.aif | Bin 6170 -> 0 bytes sound/direct_sound_samples/cry_armaldo.aif | Bin 11380 -> 0 bytes sound/direct_sound_samples/cry_aron.aif | Bin 4600 -> 0 bytes sound/direct_sound_samples/cry_articuno.aif | Bin 11792 -> 0 bytes sound/direct_sound_samples/cry_azumarill.aif | Bin 8452 -> 0 bytes sound/direct_sound_samples/cry_azurill.aif | Bin 5212 -> 0 bytes sound/direct_sound_samples/cry_bagon.aif | Bin 3934 -> 0 bytes sound/direct_sound_samples/cry_baltoy.aif | Bin 6264 -> 0 bytes sound/direct_sound_samples/cry_banette.aif | Bin 6334 -> 0 bytes sound/direct_sound_samples/cry_barboach.aif | Bin 4632 -> 0 bytes sound/direct_sound_samples/cry_bayleef.aif | Bin 4414 -> 0 bytes sound/direct_sound_samples/cry_beautifly.aif | Bin 4128 -> 0 bytes sound/direct_sound_samples/cry_beedrill.aif | Bin 9656 -> 0 bytes sound/direct_sound_samples/cry_beldum.aif | Bin 4828 -> 0 bytes sound/direct_sound_samples/cry_bellossom.aif | Bin 7042 -> 0 bytes sound/direct_sound_samples/cry_bellsprout.aif | Bin 3792 -> 0 bytes sound/direct_sound_samples/cry_blastoise.aif | Bin 9622 -> 0 bytes sound/direct_sound_samples/cry_blaziken.aif | Bin 15690 -> 0 bytes sound/direct_sound_samples/cry_blissey.aif | Bin 8278 -> 0 bytes sound/direct_sound_samples/cry_breloom.aif | Bin 6376 -> 0 bytes sound/direct_sound_samples/cry_bulbasaur.aif | Bin 8266 -> 0 bytes sound/direct_sound_samples/cry_butterfree.aif | Bin 5026 -> 0 bytes sound/direct_sound_samples/cry_cacnea.aif | Bin 4488 -> 0 bytes sound/direct_sound_samples/cry_cacturne.aif | Bin 11310 -> 0 bytes sound/direct_sound_samples/cry_camerupt.aif | Bin 11526 -> 0 bytes sound/direct_sound_samples/cry_carvanha.aif | Bin 5048 -> 0 bytes sound/direct_sound_samples/cry_cascoon.aif | Bin 8126 -> 0 bytes sound/direct_sound_samples/cry_castform.aif | Bin 6302 -> 0 bytes sound/direct_sound_samples/cry_caterpie.aif | Bin 4192 -> 0 bytes sound/direct_sound_samples/cry_celebi.aif | Bin 7230 -> 0 bytes sound/direct_sound_samples/cry_chansey.aif | Bin 7390 -> 0 bytes sound/direct_sound_samples/cry_charizard.aif | Bin 9622 -> 0 bytes sound/direct_sound_samples/cry_charmander.aif | Bin 7216 -> 0 bytes sound/direct_sound_samples/cry_charmeleon.aif | Bin 7248 -> 0 bytes sound/direct_sound_samples/cry_chikorita.aif | Bin 2654 -> 0 bytes sound/direct_sound_samples/cry_chimecho.aif | Bin 5040 -> 0 bytes sound/direct_sound_samples/cry_chinchou.aif | Bin 6346 -> 0 bytes sound/direct_sound_samples/cry_clamperl.aif | Bin 9142 -> 0 bytes sound/direct_sound_samples/cry_claydol.aif | Bin 9668 -> 0 bytes sound/direct_sound_samples/cry_clefable.aif | Bin 5294 -> 0 bytes sound/direct_sound_samples/cry_clefairy.aif | Bin 4234 -> 0 bytes sound/direct_sound_samples/cry_cleffa.aif | Bin 2992 -> 0 bytes sound/direct_sound_samples/cry_cloyster.aif | Bin 10354 -> 0 bytes sound/direct_sound_samples/cry_combusken.aif | Bin 14360 -> 0 bytes sound/direct_sound_samples/cry_corphish.aif | Bin 6010 -> 0 bytes sound/direct_sound_samples/cry_corsola.aif | Bin 6440 -> 0 bytes sound/direct_sound_samples/cry_cradily.aif | Bin 14542 -> 0 bytes sound/direct_sound_samples/cry_crawdaunt.aif | Bin 12316 -> 0 bytes sound/direct_sound_samples/cry_crobat.aif | Bin 11562 -> 0 bytes sound/direct_sound_samples/cry_croconaw.aif | Bin 10096 -> 0 bytes sound/direct_sound_samples/cry_cubone.aif | Bin 7558 -> 0 bytes sound/direct_sound_samples/cry_cyndaquil.aif | Bin 3528 -> 0 bytes sound/direct_sound_samples/cry_delcatty.aif | Bin 10518 -> 0 bytes sound/direct_sound_samples/cry_delibird.aif | Bin 8094 -> 0 bytes sound/direct_sound_samples/cry_deoxys.aif | Bin 10388 -> 0 bytes sound/direct_sound_samples/cry_dewgong.aif | Bin 10546 -> 0 bytes sound/direct_sound_samples/cry_diglett.aif | Bin 9698 -> 0 bytes sound/direct_sound_samples/cry_ditto.aif | Bin 5566 -> 0 bytes sound/direct_sound_samples/cry_dodrio.aif | Bin 9712 -> 0 bytes sound/direct_sound_samples/cry_doduo.aif | Bin 9616 -> 0 bytes sound/direct_sound_samples/cry_donphan.aif | Bin 8554 -> 0 bytes sound/direct_sound_samples/cry_dragonair.aif | Bin 8318 -> 0 bytes sound/direct_sound_samples/cry_dragonite.aif | Bin 9502 -> 0 bytes sound/direct_sound_samples/cry_dratini.aif | Bin 5812 -> 0 bytes sound/direct_sound_samples/cry_drowzee.aif | Bin 14494 -> 0 bytes sound/direct_sound_samples/cry_dugtrio.aif | Bin 9686 -> 0 bytes sound/direct_sound_samples/cry_dunsparce.aif | Bin 7926 -> 0 bytes sound/direct_sound_samples/cry_dusclops.aif | Bin 6858 -> 0 bytes sound/direct_sound_samples/cry_duskull.aif | Bin 5310 -> 0 bytes sound/direct_sound_samples/cry_dustox.aif | Bin 6338 -> 0 bytes sound/direct_sound_samples/cry_eevee.aif | Bin 7104 -> 0 bytes sound/direct_sound_samples/cry_ekans.aif | Bin 9626 -> 0 bytes sound/direct_sound_samples/cry_electabuzz.aif | Bin 15380 -> 0 bytes sound/direct_sound_samples/cry_electrike.aif | Bin 6186 -> 0 bytes sound/direct_sound_samples/cry_electrode.aif | Bin 12564 -> 0 bytes sound/direct_sound_samples/cry_elekid.aif | Bin 5284 -> 0 bytes sound/direct_sound_samples/cry_entei.aif | Bin 10198 -> 0 bytes sound/direct_sound_samples/cry_espeon.aif | Bin 9828 -> 0 bytes sound/direct_sound_samples/cry_exeggcute.aif | Bin 9416 -> 0 bytes sound/direct_sound_samples/cry_exeggutor.aif | Bin 15880 -> 0 bytes sound/direct_sound_samples/cry_exploud.aif | Bin 14086 -> 0 bytes sound/direct_sound_samples/cry_farfetchd.aif | Bin 3766 -> 0 bytes sound/direct_sound_samples/cry_fearow.aif | Bin 8602 -> 0 bytes sound/direct_sound_samples/cry_feebas.aif | Bin 3932 -> 0 bytes sound/direct_sound_samples/cry_feraligatr.aif | Bin 12712 -> 0 bytes sound/direct_sound_samples/cry_flaaffy.aif | Bin 6854 -> 0 bytes sound/direct_sound_samples/cry_flareon.aif | Bin 7748 -> 0 bytes sound/direct_sound_samples/cry_flygon.aif | Bin 12974 -> 0 bytes sound/direct_sound_samples/cry_forretress.aif | Bin 9990 -> 0 bytes sound/direct_sound_samples/cry_furret.aif | Bin 3168 -> 0 bytes sound/direct_sound_samples/cry_gardevoir.aif | Bin 12154 -> 0 bytes sound/direct_sound_samples/cry_gastly.aif | Bin 11620 -> 0 bytes sound/direct_sound_samples/cry_gengar.aif | Bin 7372 -> 0 bytes sound/direct_sound_samples/cry_geodude.aif | Bin 11816 -> 0 bytes sound/direct_sound_samples/cry_girafarig.aif | Bin 7346 -> 0 bytes sound/direct_sound_samples/cry_glalie.aif | Bin 10420 -> 0 bytes sound/direct_sound_samples/cry_gligar.aif | Bin 6068 -> 0 bytes sound/direct_sound_samples/cry_gloom.aif | Bin 6246 -> 0 bytes sound/direct_sound_samples/cry_golbat.aif | Bin 9674 -> 0 bytes sound/direct_sound_samples/cry_goldeen.aif | Bin 4936 -> 0 bytes sound/direct_sound_samples/cry_golduck.aif | Bin 5646 -> 0 bytes sound/direct_sound_samples/cry_golem.aif | Bin 7080 -> 0 bytes sound/direct_sound_samples/cry_gorebyss.aif | Bin 11176 -> 0 bytes sound/direct_sound_samples/cry_granbull.aif | Bin 11782 -> 0 bytes sound/direct_sound_samples/cry_graveler.aif | Bin 13900 -> 0 bytes sound/direct_sound_samples/cry_grimer.aif | Bin 5274 -> 0 bytes sound/direct_sound_samples/cry_groudon.aif | Bin 18438 -> 0 bytes sound/direct_sound_samples/cry_grovyle.aif | Bin 10198 -> 0 bytes sound/direct_sound_samples/cry_growlithe.aif | Bin 6696 -> 0 bytes sound/direct_sound_samples/cry_grumpig.aif | Bin 6318 -> 0 bytes sound/direct_sound_samples/cry_gulpin.aif | Bin 4028 -> 0 bytes sound/direct_sound_samples/cry_gyarados.aif | Bin 10078 -> 0 bytes sound/direct_sound_samples/cry_hariyama.aif | Bin 8348 -> 0 bytes sound/direct_sound_samples/cry_haunter.aif | Bin 11714 -> 0 bytes sound/direct_sound_samples/cry_heracross.aif | Bin 9144 -> 0 bytes sound/direct_sound_samples/cry_hitmonchan.aif | Bin 8906 -> 0 bytes sound/direct_sound_samples/cry_hitmonlee.aif | Bin 9318 -> 0 bytes sound/direct_sound_samples/cry_hitmontop.aif | Bin 6936 -> 0 bytes sound/direct_sound_samples/cry_ho_oh.aif | Bin 11260 -> 0 bytes sound/direct_sound_samples/cry_hoothoot.aif | Bin 5458 -> 0 bytes sound/direct_sound_samples/cry_hoppip.aif | Bin 4226 -> 0 bytes sound/direct_sound_samples/cry_horsea.aif | Bin 4754 -> 0 bytes sound/direct_sound_samples/cry_houndoom.aif | Bin 9820 -> 0 bytes sound/direct_sound_samples/cry_houndour.aif | Bin 6332 -> 0 bytes sound/direct_sound_samples/cry_huntail.aif | Bin 7944 -> 0 bytes sound/direct_sound_samples/cry_hypno.aif | Bin 14450 -> 0 bytes sound/direct_sound_samples/cry_igglybuff.aif | Bin 3518 -> 0 bytes sound/direct_sound_samples/cry_illumise.aif | Bin 8536 -> 0 bytes sound/direct_sound_samples/cry_ivysaur.aif | Bin 8270 -> 0 bytes sound/direct_sound_samples/cry_jigglypuff.aif | Bin 2720 -> 0 bytes sound/direct_sound_samples/cry_jirachi.aif | Bin 6758 -> 0 bytes sound/direct_sound_samples/cry_jolteon.aif | Bin 7904 -> 0 bytes sound/direct_sound_samples/cry_jumpluff.aif | Bin 8106 -> 0 bytes sound/direct_sound_samples/cry_jynx.aif | Bin 23606 -> 0 bytes sound/direct_sound_samples/cry_kabuto.aif | Bin 6170 -> 0 bytes sound/direct_sound_samples/cry_kabutops.aif | Bin 6867 -> 0 bytes sound/direct_sound_samples/cry_kadabra.aif | Bin 13408 -> 0 bytes sound/direct_sound_samples/cry_kakuna.aif | Bin 9104 -> 0 bytes sound/direct_sound_samples/cry_kangaskhan.aif | Bin 9334 -> 0 bytes sound/direct_sound_samples/cry_kecleon.aif | Bin 4202 -> 0 bytes sound/direct_sound_samples/cry_kingdra.aif | Bin 6922 -> 0 bytes sound/direct_sound_samples/cry_kingler.aif | Bin 12132 -> 0 bytes sound/direct_sound_samples/cry_kirlia.aif | Bin 6100 -> 0 bytes sound/direct_sound_samples/cry_koffing.aif | Bin 10154 -> 0 bytes sound/direct_sound_samples/cry_krabby.aif | Bin 12112 -> 0 bytes sound/direct_sound_samples/cry_kyogre.aif | Bin 17782 -> 0 bytes sound/direct_sound_samples/cry_lairon.aif | Bin 10392 -> 0 bytes sound/direct_sound_samples/cry_lanturn.aif | Bin 5282 -> 0 bytes sound/direct_sound_samples/cry_lapras.aif | Bin 7408 -> 0 bytes sound/direct_sound_samples/cry_larvitar.aif | Bin 6350 -> 0 bytes sound/direct_sound_samples/cry_latias.aif | Bin 6098 -> 0 bytes sound/direct_sound_samples/cry_latios.aif | Bin 10958 -> 0 bytes sound/direct_sound_samples/cry_ledian.aif | Bin 4214 -> 0 bytes sound/direct_sound_samples/cry_ledyba.aif | Bin 3506 -> 0 bytes sound/direct_sound_samples/cry_lickitung.aif | Bin 7571 -> 0 bytes sound/direct_sound_samples/cry_lileep.aif | Bin 4838 -> 0 bytes sound/direct_sound_samples/cry_linoone.aif | Bin 15248 -> 0 bytes sound/direct_sound_samples/cry_lombre.aif | Bin 7282 -> 0 bytes sound/direct_sound_samples/cry_lotad.aif | Bin 2232 -> 0 bytes sound/direct_sound_samples/cry_loudred.aif | Bin 6582 -> 0 bytes sound/direct_sound_samples/cry_ludicolo.aif | Bin 8398 -> 0 bytes sound/direct_sound_samples/cry_lugia.aif | Bin 18900 -> 0 bytes sound/direct_sound_samples/cry_lunatone.aif | Bin 11956 -> 0 bytes sound/direct_sound_samples/cry_luvdisc.aif | Bin 2456 -> 0 bytes sound/direct_sound_samples/cry_machamp.aif | Bin 8256 -> 0 bytes sound/direct_sound_samples/cry_machoke.aif | Bin 6782 -> 0 bytes sound/direct_sound_samples/cry_machop.aif | Bin 6696 -> 0 bytes sound/direct_sound_samples/cry_magby.aif | Bin 7218 -> 0 bytes sound/direct_sound_samples/cry_magcargo.aif | Bin 10486 -> 0 bytes sound/direct_sound_samples/cry_magikarp.aif | Bin 9492 -> 0 bytes sound/direct_sound_samples/cry_magmar.aif | Bin 7738 -> 0 bytes sound/direct_sound_samples/cry_magnemite.aif | Bin 9610 -> 0 bytes sound/direct_sound_samples/cry_magneton.aif | Bin 11914 -> 0 bytes sound/direct_sound_samples/cry_makuhita.aif | Bin 3704 -> 0 bytes sound/direct_sound_samples/cry_manectric.aif | Bin 10492 -> 0 bytes sound/direct_sound_samples/cry_mankey.aif | Bin 8178 -> 0 bytes sound/direct_sound_samples/cry_mantine.aif | Bin 7884 -> 0 bytes sound/direct_sound_samples/cry_mareep.aif | Bin 3694 -> 0 bytes sound/direct_sound_samples/cry_marill.aif | Bin 6538 -> 0 bytes sound/direct_sound_samples/cry_marowak.aif | Bin 7216 -> 0 bytes sound/direct_sound_samples/cry_marshtomp.aif | Bin 8498 -> 0 bytes sound/direct_sound_samples/cry_masquerain.aif | Bin 9830 -> 0 bytes sound/direct_sound_samples/cry_mawile.aif | Bin 5756 -> 0 bytes sound/direct_sound_samples/cry_medicham.aif | Bin 8246 -> 0 bytes sound/direct_sound_samples/cry_meditite.aif | Bin 4078 -> 0 bytes sound/direct_sound_samples/cry_meganium.aif | Bin 8100 -> 0 bytes sound/direct_sound_samples/cry_meowth.aif | Bin 4796 -> 0 bytes sound/direct_sound_samples/cry_metagross.aif | Bin 19644 -> 0 bytes sound/direct_sound_samples/cry_metang.aif | Bin 9398 -> 0 bytes sound/direct_sound_samples/cry_metapod.aif | Bin 11622 -> 0 bytes sound/direct_sound_samples/cry_mew.aif | Bin 15146 -> 0 bytes sound/direct_sound_samples/cry_mewtwo.aif | Bin 15144 -> 0 bytes sound/direct_sound_samples/cry_mightyena.aif | Bin 9748 -> 0 bytes sound/direct_sound_samples/cry_milotic.aif | Bin 19542 -> 0 bytes sound/direct_sound_samples/cry_miltank.aif | Bin 7424 -> 0 bytes sound/direct_sound_samples/cry_minun.aif | Bin 8004 -> 0 bytes sound/direct_sound_samples/cry_misdreavus.aif | Bin 5816 -> 0 bytes sound/direct_sound_samples/cry_moltres.aif | Bin 11796 -> 0 bytes sound/direct_sound_samples/cry_mr_mime.aif | Bin 9446 -> 0 bytes sound/direct_sound_samples/cry_mudkip.aif | Bin 3776 -> 0 bytes sound/direct_sound_samples/cry_muk.aif | Bin 7374 -> 0 bytes sound/direct_sound_samples/cry_murkrow.aif | Bin 8370 -> 0 bytes sound/direct_sound_samples/cry_natu.aif | Bin 5294 -> 0 bytes sound/direct_sound_samples/cry_nidoking.aif | Bin 12176 -> 0 bytes sound/direct_sound_samples/cry_nidoqueen.aif | Bin 8424 -> 0 bytes sound/direct_sound_samples/cry_nidoran_f.aif | Bin 4858 -> 0 bytes sound/direct_sound_samples/cry_nidoran_m.aif | Bin 5216 -> 0 bytes sound/direct_sound_samples/cry_nidorina.aif | Bin 6394 -> 0 bytes sound/direct_sound_samples/cry_nidorino.aif | Bin 6042 -> 0 bytes sound/direct_sound_samples/cry_nincada.aif | Bin 3244 -> 0 bytes sound/direct_sound_samples/cry_ninetales.aif | Bin 12174 -> 0 bytes sound/direct_sound_samples/cry_ninjask.aif | Bin 6084 -> 0 bytes sound/direct_sound_samples/cry_noctowl.aif | Bin 10564 -> 0 bytes sound/direct_sound_samples/cry_none.aif | Bin 8286 -> 0 bytes sound/direct_sound_samples/cry_nosepass.aif | Bin 6696 -> 0 bytes sound/direct_sound_samples/cry_numel.aif | Bin 4664 -> 0 bytes sound/direct_sound_samples/cry_nuzleaf.aif | Bin 5712 -> 0 bytes sound/direct_sound_samples/cry_octillery.aif | Bin 13084 -> 0 bytes sound/direct_sound_samples/cry_oddish.aif | Bin 7298 -> 0 bytes sound/direct_sound_samples/cry_omanyte.aif | Bin 6672 -> 0 bytes sound/direct_sound_samples/cry_omastar.aif | Bin 6666 -> 0 bytes sound/direct_sound_samples/cry_onix.aif | Bin 12340 -> 0 bytes sound/direct_sound_samples/cry_paras.aif | Bin 13924 -> 0 bytes sound/direct_sound_samples/cry_parasect.aif | Bin 15140 -> 0 bytes sound/direct_sound_samples/cry_pelipper.aif | Bin 5894 -> 0 bytes sound/direct_sound_samples/cry_persian.aif | Bin 9412 -> 0 bytes sound/direct_sound_samples/cry_phanpy.aif | Bin 5664 -> 0 bytes sound/direct_sound_samples/cry_pichu.aif | Bin 3684 -> 0 bytes sound/direct_sound_samples/cry_pidgeot.aif | Bin 8590 -> 0 bytes sound/direct_sound_samples/cry_pidgeotto.aif | Bin 7512 -> 0 bytes sound/direct_sound_samples/cry_pidgey.aif | Bin 1984 -> 0 bytes sound/direct_sound_samples/cry_pikachu.aif | Bin 8316 -> 0 bytes sound/direct_sound_samples/cry_piloswine.aif | Bin 6480 -> 0 bytes sound/direct_sound_samples/cry_pineco.aif | Bin 6690 -> 0 bytes sound/direct_sound_samples/cry_pinsir.aif | Bin 6186 -> 0 bytes sound/direct_sound_samples/cry_plusle.aif | Bin 4504 -> 0 bytes sound/direct_sound_samples/cry_politoed.aif | Bin 9114 -> 0 bytes sound/direct_sound_samples/cry_poliwag.aif | Bin 5562 -> 0 bytes sound/direct_sound_samples/cry_poliwhirl.aif | Bin 3354 -> 0 bytes sound/direct_sound_samples/cry_poliwrath.aif | Bin 5582 -> 0 bytes sound/direct_sound_samples/cry_ponyta.aif | Bin 7524 -> 0 bytes sound/direct_sound_samples/cry_poochyena.aif | Bin 4656 -> 0 bytes sound/direct_sound_samples/cry_porygon.aif | Bin 10002 -> 0 bytes sound/direct_sound_samples/cry_porygon2.aif | Bin 7854 -> 0 bytes sound/direct_sound_samples/cry_primeape.aif | Bin 8086 -> 0 bytes sound/direct_sound_samples/cry_psyduck.aif | Bin 6578 -> 0 bytes sound/direct_sound_samples/cry_pupitar.aif | Bin 4234 -> 0 bytes sound/direct_sound_samples/cry_quagsire.aif | Bin 6684 -> 0 bytes sound/direct_sound_samples/cry_quilava.aif | Bin 5962 -> 0 bytes sound/direct_sound_samples/cry_qwilfish.aif | Bin 5808 -> 0 bytes sound/direct_sound_samples/cry_raichu.aif | Bin 11842 -> 0 bytes sound/direct_sound_samples/cry_raikou.aif | Bin 8704 -> 0 bytes sound/direct_sound_samples/cry_ralts.aif | Bin 5066 -> 0 bytes sound/direct_sound_samples/cry_rapidash.aif | Bin 9292 -> 0 bytes sound/direct_sound_samples/cry_raticate.aif | Bin 4770 -> 0 bytes sound/direct_sound_samples/cry_rattata.aif | Bin 3956 -> 0 bytes sound/direct_sound_samples/cry_rayquaza.aif | Bin 14532 -> 0 bytes sound/direct_sound_samples/cry_regice.aif | Bin 15936 -> 0 bytes sound/direct_sound_samples/cry_regirock.aif | Bin 15862 -> 0 bytes sound/direct_sound_samples/cry_registeel.aif | Bin 11476 -> 0 bytes sound/direct_sound_samples/cry_relicanth.aif | Bin 10072 -> 0 bytes sound/direct_sound_samples/cry_remoraid.aif | Bin 5290 -> 0 bytes sound/direct_sound_samples/cry_rhydon.aif | Bin 10186 -> 0 bytes sound/direct_sound_samples/cry_rhyhorn.aif | Bin 9686 -> 0 bytes sound/direct_sound_samples/cry_roselia.aif | Bin 5382 -> 0 bytes sound/direct_sound_samples/cry_sableye.aif | Bin 5826 -> 0 bytes sound/direct_sound_samples/cry_salamence.aif | Bin 12514 -> 0 bytes sound/direct_sound_samples/cry_sandshrew.aif | Bin 4678 -> 0 bytes sound/direct_sound_samples/cry_sandslash.aif | Bin 6784 -> 0 bytes sound/direct_sound_samples/cry_sceptile.aif | Bin 13012 -> 0 bytes sound/direct_sound_samples/cry_scizor.aif | Bin 11462 -> 0 bytes sound/direct_sound_samples/cry_scyther.aif | Bin 6676 -> 0 bytes sound/direct_sound_samples/cry_seadra.aif | Bin 4228 -> 0 bytes sound/direct_sound_samples/cry_seaking.aif | Bin 9654 -> 0 bytes sound/direct_sound_samples/cry_sealeo.aif | Bin 5928 -> 0 bytes sound/direct_sound_samples/cry_seedot.aif | Bin 4106 -> 0 bytes sound/direct_sound_samples/cry_seel.aif | Bin 8954 -> 0 bytes sound/direct_sound_samples/cry_sentret.aif | Bin 2108 -> 0 bytes sound/direct_sound_samples/cry_seviper.aif | Bin 5820 -> 0 bytes sound/direct_sound_samples/cry_sharpedo.aif | Bin 11488 -> 0 bytes sound/direct_sound_samples/cry_shedinja.aif | Bin 3876 -> 0 bytes sound/direct_sound_samples/cry_shelgon.aif | Bin 9992 -> 0 bytes sound/direct_sound_samples/cry_shellder.aif | Bin 7718 -> 0 bytes sound/direct_sound_samples/cry_shiftry.aif | Bin 9860 -> 0 bytes sound/direct_sound_samples/cry_shroomish.aif | Bin 4436 -> 0 bytes sound/direct_sound_samples/cry_shuckle.aif | Bin 5110 -> 0 bytes sound/direct_sound_samples/cry_shuppet.aif | Bin 4144 -> 0 bytes sound/direct_sound_samples/cry_silcoon.aif | Bin 8074 -> 0 bytes sound/direct_sound_samples/cry_skarmory.aif | Bin 11982 -> 0 bytes sound/direct_sound_samples/cry_skiploom.aif | Bin 6516 -> 0 bytes sound/direct_sound_samples/cry_skitty.aif | Bin 3560 -> 0 bytes sound/direct_sound_samples/cry_slaking.aif | Bin 4970 -> 0 bytes sound/direct_sound_samples/cry_slakoth.aif | Bin 4272 -> 0 bytes sound/direct_sound_samples/cry_slowbro.aif | Bin 6720 -> 0 bytes sound/direct_sound_samples/cry_slowking.aif | Bin 11908 -> 0 bytes sound/direct_sound_samples/cry_slowpoke.aif | Bin 3724 -> 0 bytes sound/direct_sound_samples/cry_slugma.aif | Bin 8536 -> 0 bytes sound/direct_sound_samples/cry_smeargle.aif | Bin 5114 -> 0 bytes sound/direct_sound_samples/cry_smoochum.aif | Bin 5860 -> 0 bytes sound/direct_sound_samples/cry_sneasel.aif | Bin 4586 -> 0 bytes sound/direct_sound_samples/cry_snorlax.aif | Bin 2648 -> 0 bytes sound/direct_sound_samples/cry_snorunt.aif | Bin 8500 -> 0 bytes sound/direct_sound_samples/cry_snubbull.aif | Bin 7220 -> 0 bytes sound/direct_sound_samples/cry_solrock.aif | Bin 8080 -> 0 bytes sound/direct_sound_samples/cry_spearow.aif | Bin 8806 -> 0 bytes sound/direct_sound_samples/cry_spheal.aif | Bin 2880 -> 0 bytes sound/direct_sound_samples/cry_spinarak.aif | Bin 6696 -> 0 bytes sound/direct_sound_samples/cry_spinda.aif | Bin 6216 -> 0 bytes sound/direct_sound_samples/cry_spoink.aif | Bin 3648 -> 0 bytes sound/direct_sound_samples/cry_squirtle.aif | Bin 7222 -> 0 bytes sound/direct_sound_samples/cry_stantler.aif | Bin 11208 -> 0 bytes sound/direct_sound_samples/cry_starmie.aif | Bin 10402 -> 0 bytes sound/direct_sound_samples/cry_staryu.aif | Bin 9934 -> 0 bytes sound/direct_sound_samples/cry_steelix.aif | Bin 18988 -> 0 bytes sound/direct_sound_samples/cry_sudowoodo.aif | Bin 8084 -> 0 bytes sound/direct_sound_samples/cry_suicune.aif | Bin 9126 -> 0 bytes sound/direct_sound_samples/cry_sunflora.aif | Bin 7928 -> 0 bytes sound/direct_sound_samples/cry_sunkern.aif | Bin 4056 -> 0 bytes sound/direct_sound_samples/cry_surskit.aif | Bin 5258 -> 0 bytes sound/direct_sound_samples/cry_swablu.aif | Bin 2824 -> 0 bytes sound/direct_sound_samples/cry_swalot.aif | Bin 8676 -> 0 bytes sound/direct_sound_samples/cry_swampert.aif | Bin 11220 -> 0 bytes sound/direct_sound_samples/cry_swellow.aif | Bin 4524 -> 0 bytes sound/direct_sound_samples/cry_swinub.aif | Bin 6328 -> 0 bytes sound/direct_sound_samples/cry_taillow.aif | Bin 3024 -> 0 bytes sound/direct_sound_samples/cry_tangela.aif | Bin 7550 -> 0 bytes sound/direct_sound_samples/cry_tauros.aif | Bin 9150 -> 0 bytes sound/direct_sound_samples/cry_teddiursa.aif | Bin 8266 -> 0 bytes sound/direct_sound_samples/cry_tentacool.aif | Bin 7960 -> 0 bytes sound/direct_sound_samples/cry_tentacruel.aif | Bin 11458 -> 0 bytes sound/direct_sound_samples/cry_togepi.aif | Bin 5460 -> 0 bytes sound/direct_sound_samples/cry_togetic.aif | Bin 3526 -> 0 bytes sound/direct_sound_samples/cry_torchic.aif | Bin 4840 -> 0 bytes sound/direct_sound_samples/cry_torkoal.aif | Bin 4662 -> 0 bytes sound/direct_sound_samples/cry_totodile.aif | Bin 9152 -> 0 bytes sound/direct_sound_samples/cry_trapinch.aif | Bin 5080 -> 0 bytes sound/direct_sound_samples/cry_treecko.aif | Bin 5836 -> 0 bytes sound/direct_sound_samples/cry_tropius.aif | Bin 16318 -> 0 bytes sound/direct_sound_samples/cry_typhlosion.aif | Bin 18944 -> 0 bytes sound/direct_sound_samples/cry_tyranitar.aif | Bin 11656 -> 0 bytes sound/direct_sound_samples/cry_tyrogue.aif | Bin 8072 -> 0 bytes sound/direct_sound_samples/cry_umbreon.aif | Bin 7746 -> 0 bytes sound/direct_sound_samples/cry_unown.aif | Bin 6576 -> 0 bytes sound/direct_sound_samples/cry_unused_265.aif | Bin 4676 -> 0 bytes sound/direct_sound_samples/cry_unused_268.aif | Bin 8828 -> 0 bytes sound/direct_sound_samples/cry_ursaring.aif | Bin 14862 -> 0 bytes sound/direct_sound_samples/cry_vaporeon.aif | Bin 11018 -> 0 bytes sound/direct_sound_samples/cry_venomoth.aif | Bin 8002 -> 0 bytes sound/direct_sound_samples/cry_venonat.aif | Bin 7746 -> 0 bytes sound/direct_sound_samples/cry_venusaur.aif | Bin 9648 -> 0 bytes sound/direct_sound_samples/cry_vibrava.aif | Bin 7002 -> 0 bytes sound/direct_sound_samples/cry_victreebel.aif | Bin 9630 -> 0 bytes sound/direct_sound_samples/cry_vigoroth.aif | Bin 7168 -> 0 bytes sound/direct_sound_samples/cry_vileplume.aif | Bin 12760 -> 0 bytes sound/direct_sound_samples/cry_volbeat.aif | Bin 5772 -> 0 bytes sound/direct_sound_samples/cry_voltorb.aif | Bin 12346 -> 0 bytes sound/direct_sound_samples/cry_vulpix.aif | Bin 11870 -> 0 bytes sound/direct_sound_samples/cry_wailmer.aif | Bin 14134 -> 0 bytes sound/direct_sound_samples/cry_wailord.aif | Bin 20928 -> 0 bytes sound/direct_sound_samples/cry_walrein.aif | Bin 18067 -> 0 bytes sound/direct_sound_samples/cry_wartortle.aif | Bin 8614 -> 0 bytes sound/direct_sound_samples/cry_weedle.aif | Bin 8124 -> 0 bytes sound/direct_sound_samples/cry_weepinbell.aif | Bin 7310 -> 0 bytes sound/direct_sound_samples/cry_weezing.aif | Bin 10806 -> 0 bytes sound/direct_sound_samples/cry_whiscash.aif | Bin 8478 -> 0 bytes sound/direct_sound_samples/cry_whismur.aif | Bin 4092 -> 0 bytes sound/direct_sound_samples/cry_wigglytuff.aif | Bin 3412 -> 0 bytes sound/direct_sound_samples/cry_wingull.aif | Bin 6132 -> 0 bytes sound/direct_sound_samples/cry_wobbuffet.aif | Bin 10276 -> 0 bytes sound/direct_sound_samples/cry_wooper.aif | Bin 3710 -> 0 bytes sound/direct_sound_samples/cry_wurmple.aif | Bin 4412 -> 0 bytes sound/direct_sound_samples/cry_wynaut.aif | Bin 6932 -> 0 bytes sound/direct_sound_samples/cry_xatu.aif | Bin 7392 -> 0 bytes sound/direct_sound_samples/cry_yanma.aif | Bin 8506 -> 0 bytes sound/direct_sound_samples/cry_zangoose.aif | Bin 4794 -> 0 bytes sound/direct_sound_samples/cry_zapdos.aif | Bin 7724 -> 0 bytes sound/direct_sound_samples/cry_zigzagoon.aif | Bin 5786 -> 0 bytes sound/direct_sound_samples/cry_zubat.aif | Bin 9688 -> 0 bytes 780 files changed, 390 insertions(+), 390 deletions(-) create mode 100644 sound/direct_sound_samples/cries/cry_abra.aif create mode 100644 sound/direct_sound_samples/cries/cry_absol.aif create mode 100644 sound/direct_sound_samples/cries/cry_aerodactyl.aif create mode 100644 sound/direct_sound_samples/cries/cry_aggron.aif create mode 100644 sound/direct_sound_samples/cries/cry_aipom.aif create mode 100644 sound/direct_sound_samples/cries/cry_alakazam.aif create mode 100644 sound/direct_sound_samples/cries/cry_altaria.aif create mode 100644 sound/direct_sound_samples/cries/cry_ampharos.aif create mode 100644 sound/direct_sound_samples/cries/cry_anorith.aif create mode 100644 sound/direct_sound_samples/cries/cry_arbok.aif create mode 100644 sound/direct_sound_samples/cries/cry_arcanine.aif create mode 100644 sound/direct_sound_samples/cries/cry_ariados.aif create mode 100644 sound/direct_sound_samples/cries/cry_armaldo.aif create mode 100644 sound/direct_sound_samples/cries/cry_aron.aif create mode 100644 sound/direct_sound_samples/cries/cry_articuno.aif create mode 100644 sound/direct_sound_samples/cries/cry_azumarill.aif create mode 100644 sound/direct_sound_samples/cries/cry_azurill.aif create mode 100644 sound/direct_sound_samples/cries/cry_bagon.aif create mode 100644 sound/direct_sound_samples/cries/cry_baltoy.aif create mode 100644 sound/direct_sound_samples/cries/cry_banette.aif create mode 100644 sound/direct_sound_samples/cries/cry_barboach.aif create mode 100644 sound/direct_sound_samples/cries/cry_bayleef.aif create mode 100644 sound/direct_sound_samples/cries/cry_beautifly.aif create mode 100644 sound/direct_sound_samples/cries/cry_beedrill.aif create mode 100644 sound/direct_sound_samples/cries/cry_beldum.aif create mode 100644 sound/direct_sound_samples/cries/cry_bellossom.aif create mode 100644 sound/direct_sound_samples/cries/cry_bellsprout.aif create mode 100644 sound/direct_sound_samples/cries/cry_blastoise.aif create mode 100644 sound/direct_sound_samples/cries/cry_blaziken.aif create mode 100644 sound/direct_sound_samples/cries/cry_blissey.aif create mode 100644 sound/direct_sound_samples/cries/cry_breloom.aif create mode 100644 sound/direct_sound_samples/cries/cry_bulbasaur.aif create mode 100644 sound/direct_sound_samples/cries/cry_butterfree.aif create mode 100644 sound/direct_sound_samples/cries/cry_cacnea.aif create mode 100644 sound/direct_sound_samples/cries/cry_cacturne.aif create mode 100644 sound/direct_sound_samples/cries/cry_camerupt.aif create mode 100644 sound/direct_sound_samples/cries/cry_carvanha.aif create mode 100644 sound/direct_sound_samples/cries/cry_cascoon.aif create mode 100644 sound/direct_sound_samples/cries/cry_castform.aif create mode 100644 sound/direct_sound_samples/cries/cry_caterpie.aif create mode 100644 sound/direct_sound_samples/cries/cry_celebi.aif create mode 100644 sound/direct_sound_samples/cries/cry_chansey.aif create mode 100644 sound/direct_sound_samples/cries/cry_charizard.aif create mode 100644 sound/direct_sound_samples/cries/cry_charmander.aif create mode 100644 sound/direct_sound_samples/cries/cry_charmeleon.aif create mode 100644 sound/direct_sound_samples/cries/cry_chikorita.aif create mode 100644 sound/direct_sound_samples/cries/cry_chimecho.aif create mode 100644 sound/direct_sound_samples/cries/cry_chinchou.aif create mode 100644 sound/direct_sound_samples/cries/cry_clamperl.aif create mode 100644 sound/direct_sound_samples/cries/cry_claydol.aif create mode 100644 sound/direct_sound_samples/cries/cry_clefable.aif create mode 100644 sound/direct_sound_samples/cries/cry_clefairy.aif create mode 100644 sound/direct_sound_samples/cries/cry_cleffa.aif create mode 100644 sound/direct_sound_samples/cries/cry_cloyster.aif create mode 100644 sound/direct_sound_samples/cries/cry_combusken.aif create mode 100644 sound/direct_sound_samples/cries/cry_corphish.aif create mode 100644 sound/direct_sound_samples/cries/cry_corsola.aif create mode 100644 sound/direct_sound_samples/cries/cry_cradily.aif create mode 100644 sound/direct_sound_samples/cries/cry_crawdaunt.aif create mode 100644 sound/direct_sound_samples/cries/cry_crobat.aif create mode 100644 sound/direct_sound_samples/cries/cry_croconaw.aif create mode 100644 sound/direct_sound_samples/cries/cry_cubone.aif create mode 100644 sound/direct_sound_samples/cries/cry_cyndaquil.aif create mode 100644 sound/direct_sound_samples/cries/cry_delcatty.aif create mode 100644 sound/direct_sound_samples/cries/cry_delibird.aif create mode 100644 sound/direct_sound_samples/cries/cry_deoxys.aif create mode 100644 sound/direct_sound_samples/cries/cry_dewgong.aif create mode 100644 sound/direct_sound_samples/cries/cry_diglett.aif create mode 100644 sound/direct_sound_samples/cries/cry_ditto.aif create mode 100644 sound/direct_sound_samples/cries/cry_dodrio.aif create mode 100644 sound/direct_sound_samples/cries/cry_doduo.aif create mode 100644 sound/direct_sound_samples/cries/cry_donphan.aif create mode 100644 sound/direct_sound_samples/cries/cry_dragonair.aif create mode 100644 sound/direct_sound_samples/cries/cry_dragonite.aif create mode 100644 sound/direct_sound_samples/cries/cry_dratini.aif create mode 100644 sound/direct_sound_samples/cries/cry_drowzee.aif create mode 100644 sound/direct_sound_samples/cries/cry_dugtrio.aif create mode 100644 sound/direct_sound_samples/cries/cry_dunsparce.aif create mode 100644 sound/direct_sound_samples/cries/cry_dusclops.aif create mode 100644 sound/direct_sound_samples/cries/cry_duskull.aif create mode 100644 sound/direct_sound_samples/cries/cry_dustox.aif create mode 100644 sound/direct_sound_samples/cries/cry_eevee.aif create mode 100644 sound/direct_sound_samples/cries/cry_ekans.aif create mode 100644 sound/direct_sound_samples/cries/cry_electabuzz.aif create mode 100644 sound/direct_sound_samples/cries/cry_electrike.aif create mode 100644 sound/direct_sound_samples/cries/cry_electrode.aif create mode 100644 sound/direct_sound_samples/cries/cry_elekid.aif create mode 100644 sound/direct_sound_samples/cries/cry_entei.aif create mode 100644 sound/direct_sound_samples/cries/cry_espeon.aif create mode 100644 sound/direct_sound_samples/cries/cry_exeggcute.aif create mode 100644 sound/direct_sound_samples/cries/cry_exeggutor.aif create mode 100644 sound/direct_sound_samples/cries/cry_exploud.aif create mode 100644 sound/direct_sound_samples/cries/cry_farfetchd.aif create mode 100644 sound/direct_sound_samples/cries/cry_fearow.aif create mode 100644 sound/direct_sound_samples/cries/cry_feebas.aif create mode 100644 sound/direct_sound_samples/cries/cry_feraligatr.aif create mode 100644 sound/direct_sound_samples/cries/cry_flaaffy.aif create mode 100644 sound/direct_sound_samples/cries/cry_flareon.aif create mode 100644 sound/direct_sound_samples/cries/cry_flygon.aif create mode 100644 sound/direct_sound_samples/cries/cry_forretress.aif create mode 100644 sound/direct_sound_samples/cries/cry_furret.aif create mode 100644 sound/direct_sound_samples/cries/cry_gardevoir.aif create mode 100644 sound/direct_sound_samples/cries/cry_gastly.aif create mode 100644 sound/direct_sound_samples/cries/cry_gengar.aif create mode 100644 sound/direct_sound_samples/cries/cry_geodude.aif create mode 100644 sound/direct_sound_samples/cries/cry_girafarig.aif create mode 100644 sound/direct_sound_samples/cries/cry_glalie.aif create mode 100644 sound/direct_sound_samples/cries/cry_gligar.aif create mode 100644 sound/direct_sound_samples/cries/cry_gloom.aif create mode 100644 sound/direct_sound_samples/cries/cry_golbat.aif create mode 100644 sound/direct_sound_samples/cries/cry_goldeen.aif create mode 100644 sound/direct_sound_samples/cries/cry_golduck.aif create mode 100644 sound/direct_sound_samples/cries/cry_golem.aif create mode 100644 sound/direct_sound_samples/cries/cry_gorebyss.aif create mode 100644 sound/direct_sound_samples/cries/cry_granbull.aif create mode 100644 sound/direct_sound_samples/cries/cry_graveler.aif create mode 100644 sound/direct_sound_samples/cries/cry_grimer.aif create mode 100644 sound/direct_sound_samples/cries/cry_groudon.aif create mode 100644 sound/direct_sound_samples/cries/cry_grovyle.aif create mode 100644 sound/direct_sound_samples/cries/cry_growlithe.aif create mode 100644 sound/direct_sound_samples/cries/cry_grumpig.aif create mode 100644 sound/direct_sound_samples/cries/cry_gulpin.aif create mode 100644 sound/direct_sound_samples/cries/cry_gyarados.aif create mode 100644 sound/direct_sound_samples/cries/cry_hariyama.aif create mode 100644 sound/direct_sound_samples/cries/cry_haunter.aif create mode 100644 sound/direct_sound_samples/cries/cry_heracross.aif create mode 100644 sound/direct_sound_samples/cries/cry_hitmonchan.aif create mode 100644 sound/direct_sound_samples/cries/cry_hitmonlee.aif create mode 100644 sound/direct_sound_samples/cries/cry_hitmontop.aif create mode 100644 sound/direct_sound_samples/cries/cry_ho_oh.aif create mode 100644 sound/direct_sound_samples/cries/cry_hoothoot.aif create mode 100644 sound/direct_sound_samples/cries/cry_hoppip.aif create mode 100644 sound/direct_sound_samples/cries/cry_horsea.aif create mode 100644 sound/direct_sound_samples/cries/cry_houndoom.aif create mode 100644 sound/direct_sound_samples/cries/cry_houndour.aif create mode 100644 sound/direct_sound_samples/cries/cry_huntail.aif create mode 100644 sound/direct_sound_samples/cries/cry_hypno.aif create mode 100644 sound/direct_sound_samples/cries/cry_igglybuff.aif create mode 100644 sound/direct_sound_samples/cries/cry_illumise.aif create mode 100644 sound/direct_sound_samples/cries/cry_ivysaur.aif create mode 100644 sound/direct_sound_samples/cries/cry_jigglypuff.aif create mode 100644 sound/direct_sound_samples/cries/cry_jirachi.aif create mode 100644 sound/direct_sound_samples/cries/cry_jolteon.aif create mode 100644 sound/direct_sound_samples/cries/cry_jumpluff.aif create mode 100644 sound/direct_sound_samples/cries/cry_jynx.aif create mode 100644 sound/direct_sound_samples/cries/cry_kabuto.aif create mode 100644 sound/direct_sound_samples/cries/cry_kabutops.aif create mode 100644 sound/direct_sound_samples/cries/cry_kadabra.aif create mode 100644 sound/direct_sound_samples/cries/cry_kakuna.aif create mode 100644 sound/direct_sound_samples/cries/cry_kangaskhan.aif create mode 100644 sound/direct_sound_samples/cries/cry_kecleon.aif create mode 100644 sound/direct_sound_samples/cries/cry_kingdra.aif create mode 100644 sound/direct_sound_samples/cries/cry_kingler.aif create mode 100644 sound/direct_sound_samples/cries/cry_kirlia.aif create mode 100644 sound/direct_sound_samples/cries/cry_koffing.aif create mode 100644 sound/direct_sound_samples/cries/cry_krabby.aif create mode 100644 sound/direct_sound_samples/cries/cry_kyogre.aif create mode 100644 sound/direct_sound_samples/cries/cry_lairon.aif create mode 100644 sound/direct_sound_samples/cries/cry_lanturn.aif create mode 100644 sound/direct_sound_samples/cries/cry_lapras.aif create mode 100644 sound/direct_sound_samples/cries/cry_larvitar.aif create mode 100644 sound/direct_sound_samples/cries/cry_latias.aif create mode 100644 sound/direct_sound_samples/cries/cry_latios.aif create mode 100644 sound/direct_sound_samples/cries/cry_ledian.aif create mode 100644 sound/direct_sound_samples/cries/cry_ledyba.aif create mode 100644 sound/direct_sound_samples/cries/cry_lickitung.aif create mode 100644 sound/direct_sound_samples/cries/cry_lileep.aif create mode 100644 sound/direct_sound_samples/cries/cry_linoone.aif create mode 100644 sound/direct_sound_samples/cries/cry_lombre.aif create mode 100644 sound/direct_sound_samples/cries/cry_lotad.aif create mode 100644 sound/direct_sound_samples/cries/cry_loudred.aif create mode 100644 sound/direct_sound_samples/cries/cry_ludicolo.aif create mode 100644 sound/direct_sound_samples/cries/cry_lugia.aif create mode 100644 sound/direct_sound_samples/cries/cry_lunatone.aif create mode 100644 sound/direct_sound_samples/cries/cry_luvdisc.aif create mode 100644 sound/direct_sound_samples/cries/cry_machamp.aif create mode 100644 sound/direct_sound_samples/cries/cry_machoke.aif create mode 100644 sound/direct_sound_samples/cries/cry_machop.aif create mode 100644 sound/direct_sound_samples/cries/cry_magby.aif create mode 100644 sound/direct_sound_samples/cries/cry_magcargo.aif create mode 100644 sound/direct_sound_samples/cries/cry_magikarp.aif create mode 100644 sound/direct_sound_samples/cries/cry_magmar.aif create mode 100644 sound/direct_sound_samples/cries/cry_magnemite.aif create mode 100644 sound/direct_sound_samples/cries/cry_magneton.aif create mode 100644 sound/direct_sound_samples/cries/cry_makuhita.aif create mode 100644 sound/direct_sound_samples/cries/cry_manectric.aif create mode 100644 sound/direct_sound_samples/cries/cry_mankey.aif create mode 100644 sound/direct_sound_samples/cries/cry_mantine.aif create mode 100644 sound/direct_sound_samples/cries/cry_mareep.aif create mode 100644 sound/direct_sound_samples/cries/cry_marill.aif create mode 100644 sound/direct_sound_samples/cries/cry_marowak.aif create mode 100644 sound/direct_sound_samples/cries/cry_marshtomp.aif create mode 100644 sound/direct_sound_samples/cries/cry_masquerain.aif create mode 100644 sound/direct_sound_samples/cries/cry_mawile.aif create mode 100644 sound/direct_sound_samples/cries/cry_medicham.aif create mode 100644 sound/direct_sound_samples/cries/cry_meditite.aif create mode 100644 sound/direct_sound_samples/cries/cry_meganium.aif create mode 100644 sound/direct_sound_samples/cries/cry_meowth.aif create mode 100644 sound/direct_sound_samples/cries/cry_metagross.aif create mode 100644 sound/direct_sound_samples/cries/cry_metang.aif create mode 100644 sound/direct_sound_samples/cries/cry_metapod.aif create mode 100644 sound/direct_sound_samples/cries/cry_mew.aif create mode 100644 sound/direct_sound_samples/cries/cry_mewtwo.aif create mode 100644 sound/direct_sound_samples/cries/cry_mightyena.aif create mode 100644 sound/direct_sound_samples/cries/cry_milotic.aif create mode 100644 sound/direct_sound_samples/cries/cry_miltank.aif create mode 100644 sound/direct_sound_samples/cries/cry_minun.aif create mode 100644 sound/direct_sound_samples/cries/cry_misdreavus.aif create mode 100644 sound/direct_sound_samples/cries/cry_moltres.aif create mode 100644 sound/direct_sound_samples/cries/cry_mr_mime.aif create mode 100644 sound/direct_sound_samples/cries/cry_mudkip.aif create mode 100644 sound/direct_sound_samples/cries/cry_muk.aif create mode 100644 sound/direct_sound_samples/cries/cry_murkrow.aif create mode 100644 sound/direct_sound_samples/cries/cry_natu.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidoking.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidoqueen.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidoran_f.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidoran_m.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidorina.aif create mode 100644 sound/direct_sound_samples/cries/cry_nidorino.aif create mode 100644 sound/direct_sound_samples/cries/cry_nincada.aif create mode 100644 sound/direct_sound_samples/cries/cry_ninetales.aif create mode 100644 sound/direct_sound_samples/cries/cry_ninjask.aif create mode 100644 sound/direct_sound_samples/cries/cry_noctowl.aif create mode 100644 sound/direct_sound_samples/cries/cry_none.aif create mode 100644 sound/direct_sound_samples/cries/cry_nosepass.aif create mode 100644 sound/direct_sound_samples/cries/cry_numel.aif create mode 100644 sound/direct_sound_samples/cries/cry_nuzleaf.aif create mode 100644 sound/direct_sound_samples/cries/cry_octillery.aif create mode 100644 sound/direct_sound_samples/cries/cry_oddish.aif create mode 100644 sound/direct_sound_samples/cries/cry_omanyte.aif create mode 100644 sound/direct_sound_samples/cries/cry_omastar.aif create mode 100644 sound/direct_sound_samples/cries/cry_onix.aif create mode 100644 sound/direct_sound_samples/cries/cry_paras.aif create mode 100644 sound/direct_sound_samples/cries/cry_parasect.aif create mode 100644 sound/direct_sound_samples/cries/cry_pelipper.aif create mode 100644 sound/direct_sound_samples/cries/cry_persian.aif create mode 100644 sound/direct_sound_samples/cries/cry_phanpy.aif create mode 100644 sound/direct_sound_samples/cries/cry_pichu.aif create mode 100644 sound/direct_sound_samples/cries/cry_pidgeot.aif create mode 100644 sound/direct_sound_samples/cries/cry_pidgeotto.aif create mode 100644 sound/direct_sound_samples/cries/cry_pidgey.aif create mode 100644 sound/direct_sound_samples/cries/cry_pikachu.aif create mode 100644 sound/direct_sound_samples/cries/cry_piloswine.aif create mode 100644 sound/direct_sound_samples/cries/cry_pineco.aif create mode 100644 sound/direct_sound_samples/cries/cry_pinsir.aif create mode 100644 sound/direct_sound_samples/cries/cry_plusle.aif create mode 100644 sound/direct_sound_samples/cries/cry_politoed.aif create mode 100644 sound/direct_sound_samples/cries/cry_poliwag.aif create mode 100644 sound/direct_sound_samples/cries/cry_poliwhirl.aif create mode 100644 sound/direct_sound_samples/cries/cry_poliwrath.aif create mode 100644 sound/direct_sound_samples/cries/cry_ponyta.aif create mode 100644 sound/direct_sound_samples/cries/cry_poochyena.aif create mode 100644 sound/direct_sound_samples/cries/cry_porygon.aif create mode 100644 sound/direct_sound_samples/cries/cry_porygon2.aif create mode 100644 sound/direct_sound_samples/cries/cry_primeape.aif create mode 100644 sound/direct_sound_samples/cries/cry_psyduck.aif create mode 100644 sound/direct_sound_samples/cries/cry_pupitar.aif create mode 100644 sound/direct_sound_samples/cries/cry_quagsire.aif create mode 100644 sound/direct_sound_samples/cries/cry_quilava.aif create mode 100644 sound/direct_sound_samples/cries/cry_qwilfish.aif create mode 100644 sound/direct_sound_samples/cries/cry_raichu.aif create mode 100644 sound/direct_sound_samples/cries/cry_raikou.aif create mode 100644 sound/direct_sound_samples/cries/cry_ralts.aif create mode 100644 sound/direct_sound_samples/cries/cry_rapidash.aif create mode 100644 sound/direct_sound_samples/cries/cry_raticate.aif create mode 100644 sound/direct_sound_samples/cries/cry_rattata.aif create mode 100644 sound/direct_sound_samples/cries/cry_rayquaza.aif create mode 100644 sound/direct_sound_samples/cries/cry_regice.aif create mode 100644 sound/direct_sound_samples/cries/cry_regirock.aif create mode 100644 sound/direct_sound_samples/cries/cry_registeel.aif create mode 100644 sound/direct_sound_samples/cries/cry_relicanth.aif create mode 100644 sound/direct_sound_samples/cries/cry_remoraid.aif create mode 100644 sound/direct_sound_samples/cries/cry_rhydon.aif create mode 100644 sound/direct_sound_samples/cries/cry_rhyhorn.aif create mode 100644 sound/direct_sound_samples/cries/cry_roselia.aif create mode 100644 sound/direct_sound_samples/cries/cry_sableye.aif create mode 100644 sound/direct_sound_samples/cries/cry_salamence.aif create mode 100644 sound/direct_sound_samples/cries/cry_sandshrew.aif create mode 100644 sound/direct_sound_samples/cries/cry_sandslash.aif create mode 100644 sound/direct_sound_samples/cries/cry_sceptile.aif create mode 100644 sound/direct_sound_samples/cries/cry_scizor.aif create mode 100644 sound/direct_sound_samples/cries/cry_scyther.aif create mode 100644 sound/direct_sound_samples/cries/cry_seadra.aif create mode 100644 sound/direct_sound_samples/cries/cry_seaking.aif create mode 100644 sound/direct_sound_samples/cries/cry_sealeo.aif create mode 100644 sound/direct_sound_samples/cries/cry_seedot.aif create mode 100644 sound/direct_sound_samples/cries/cry_seel.aif create mode 100644 sound/direct_sound_samples/cries/cry_sentret.aif create mode 100644 sound/direct_sound_samples/cries/cry_seviper.aif create mode 100644 sound/direct_sound_samples/cries/cry_sharpedo.aif create mode 100644 sound/direct_sound_samples/cries/cry_shedinja.aif create mode 100644 sound/direct_sound_samples/cries/cry_shelgon.aif create mode 100644 sound/direct_sound_samples/cries/cry_shellder.aif create mode 100644 sound/direct_sound_samples/cries/cry_shiftry.aif create mode 100644 sound/direct_sound_samples/cries/cry_shroomish.aif create mode 100644 sound/direct_sound_samples/cries/cry_shuckle.aif create mode 100644 sound/direct_sound_samples/cries/cry_shuppet.aif create mode 100644 sound/direct_sound_samples/cries/cry_silcoon.aif create mode 100644 sound/direct_sound_samples/cries/cry_skarmory.aif create mode 100644 sound/direct_sound_samples/cries/cry_skiploom.aif create mode 100644 sound/direct_sound_samples/cries/cry_skitty.aif create mode 100644 sound/direct_sound_samples/cries/cry_slaking.aif create mode 100644 sound/direct_sound_samples/cries/cry_slakoth.aif create mode 100644 sound/direct_sound_samples/cries/cry_slowbro.aif create mode 100644 sound/direct_sound_samples/cries/cry_slowking.aif create mode 100644 sound/direct_sound_samples/cries/cry_slowpoke.aif create mode 100644 sound/direct_sound_samples/cries/cry_slugma.aif create mode 100644 sound/direct_sound_samples/cries/cry_smeargle.aif create mode 100644 sound/direct_sound_samples/cries/cry_smoochum.aif create mode 100644 sound/direct_sound_samples/cries/cry_sneasel.aif create mode 100644 sound/direct_sound_samples/cries/cry_snorlax.aif create mode 100644 sound/direct_sound_samples/cries/cry_snorunt.aif create mode 100644 sound/direct_sound_samples/cries/cry_snubbull.aif create mode 100644 sound/direct_sound_samples/cries/cry_solrock.aif create mode 100644 sound/direct_sound_samples/cries/cry_spearow.aif create mode 100644 sound/direct_sound_samples/cries/cry_spheal.aif create mode 100644 sound/direct_sound_samples/cries/cry_spinarak.aif create mode 100644 sound/direct_sound_samples/cries/cry_spinda.aif create mode 100644 sound/direct_sound_samples/cries/cry_spoink.aif create mode 100644 sound/direct_sound_samples/cries/cry_squirtle.aif create mode 100644 sound/direct_sound_samples/cries/cry_stantler.aif create mode 100644 sound/direct_sound_samples/cries/cry_starmie.aif create mode 100644 sound/direct_sound_samples/cries/cry_staryu.aif create mode 100644 sound/direct_sound_samples/cries/cry_steelix.aif create mode 100644 sound/direct_sound_samples/cries/cry_sudowoodo.aif create mode 100644 sound/direct_sound_samples/cries/cry_suicune.aif create mode 100644 sound/direct_sound_samples/cries/cry_sunflora.aif create mode 100644 sound/direct_sound_samples/cries/cry_sunkern.aif create mode 100644 sound/direct_sound_samples/cries/cry_surskit.aif create mode 100644 sound/direct_sound_samples/cries/cry_swablu.aif create mode 100644 sound/direct_sound_samples/cries/cry_swalot.aif create mode 100644 sound/direct_sound_samples/cries/cry_swampert.aif create mode 100644 sound/direct_sound_samples/cries/cry_swellow.aif create mode 100644 sound/direct_sound_samples/cries/cry_swinub.aif create mode 100644 sound/direct_sound_samples/cries/cry_taillow.aif create mode 100644 sound/direct_sound_samples/cries/cry_tangela.aif create mode 100644 sound/direct_sound_samples/cries/cry_tauros.aif create mode 100644 sound/direct_sound_samples/cries/cry_teddiursa.aif create mode 100644 sound/direct_sound_samples/cries/cry_tentacool.aif create mode 100644 sound/direct_sound_samples/cries/cry_tentacruel.aif create mode 100644 sound/direct_sound_samples/cries/cry_togepi.aif create mode 100644 sound/direct_sound_samples/cries/cry_togetic.aif create mode 100644 sound/direct_sound_samples/cries/cry_torchic.aif create mode 100644 sound/direct_sound_samples/cries/cry_torkoal.aif create mode 100644 sound/direct_sound_samples/cries/cry_totodile.aif create mode 100644 sound/direct_sound_samples/cries/cry_trapinch.aif create mode 100644 sound/direct_sound_samples/cries/cry_treecko.aif create mode 100644 sound/direct_sound_samples/cries/cry_tropius.aif create mode 100644 sound/direct_sound_samples/cries/cry_typhlosion.aif create mode 100644 sound/direct_sound_samples/cries/cry_tyranitar.aif create mode 100644 sound/direct_sound_samples/cries/cry_tyrogue.aif create mode 100644 sound/direct_sound_samples/cries/cry_umbreon.aif create mode 100644 sound/direct_sound_samples/cries/cry_unown.aif create mode 100644 sound/direct_sound_samples/cries/cry_unused_265.aif create mode 100644 sound/direct_sound_samples/cries/cry_unused_268.aif create mode 100644 sound/direct_sound_samples/cries/cry_ursaring.aif create mode 100644 sound/direct_sound_samples/cries/cry_vaporeon.aif create mode 100644 sound/direct_sound_samples/cries/cry_venomoth.aif create mode 100644 sound/direct_sound_samples/cries/cry_venonat.aif create mode 100644 sound/direct_sound_samples/cries/cry_venusaur.aif create mode 100644 sound/direct_sound_samples/cries/cry_vibrava.aif create mode 100644 sound/direct_sound_samples/cries/cry_victreebel.aif create mode 100644 sound/direct_sound_samples/cries/cry_vigoroth.aif create mode 100644 sound/direct_sound_samples/cries/cry_vileplume.aif create mode 100644 sound/direct_sound_samples/cries/cry_volbeat.aif create mode 100644 sound/direct_sound_samples/cries/cry_voltorb.aif create mode 100644 sound/direct_sound_samples/cries/cry_vulpix.aif create mode 100644 sound/direct_sound_samples/cries/cry_wailmer.aif create mode 100644 sound/direct_sound_samples/cries/cry_wailord.aif create mode 100644 sound/direct_sound_samples/cries/cry_walrein.aif create mode 100644 sound/direct_sound_samples/cries/cry_wartortle.aif create mode 100644 sound/direct_sound_samples/cries/cry_weedle.aif create mode 100644 sound/direct_sound_samples/cries/cry_weepinbell.aif create mode 100644 sound/direct_sound_samples/cries/cry_weezing.aif create mode 100644 sound/direct_sound_samples/cries/cry_whiscash.aif create mode 100644 sound/direct_sound_samples/cries/cry_whismur.aif create mode 100644 sound/direct_sound_samples/cries/cry_wigglytuff.aif create mode 100644 sound/direct_sound_samples/cries/cry_wingull.aif create mode 100644 sound/direct_sound_samples/cries/cry_wobbuffet.aif create mode 100644 sound/direct_sound_samples/cries/cry_wooper.aif create mode 100644 sound/direct_sound_samples/cries/cry_wurmple.aif create mode 100644 sound/direct_sound_samples/cries/cry_wynaut.aif create mode 100644 sound/direct_sound_samples/cries/cry_xatu.aif create mode 100644 sound/direct_sound_samples/cries/cry_yanma.aif create mode 100644 sound/direct_sound_samples/cries/cry_zangoose.aif create mode 100644 sound/direct_sound_samples/cries/cry_zapdos.aif create mode 100644 sound/direct_sound_samples/cries/cry_zigzagoon.aif create mode 100644 sound/direct_sound_samples/cries/cry_zubat.aif delete mode 100644 sound/direct_sound_samples/cry_abra.aif delete mode 100644 sound/direct_sound_samples/cry_absol.aif delete mode 100644 sound/direct_sound_samples/cry_aerodactyl.aif delete mode 100644 sound/direct_sound_samples/cry_aggron.aif delete mode 100644 sound/direct_sound_samples/cry_aipom.aif delete mode 100644 sound/direct_sound_samples/cry_alakazam.aif delete mode 100644 sound/direct_sound_samples/cry_altaria.aif delete mode 100644 sound/direct_sound_samples/cry_ampharos.aif delete mode 100644 sound/direct_sound_samples/cry_anorith.aif delete mode 100644 sound/direct_sound_samples/cry_arbok.aif delete mode 100644 sound/direct_sound_samples/cry_arcanine.aif delete mode 100644 sound/direct_sound_samples/cry_ariados.aif delete mode 100644 sound/direct_sound_samples/cry_armaldo.aif delete mode 100644 sound/direct_sound_samples/cry_aron.aif delete mode 100644 sound/direct_sound_samples/cry_articuno.aif delete mode 100644 sound/direct_sound_samples/cry_azumarill.aif delete mode 100644 sound/direct_sound_samples/cry_azurill.aif delete mode 100644 sound/direct_sound_samples/cry_bagon.aif delete mode 100644 sound/direct_sound_samples/cry_baltoy.aif delete mode 100644 sound/direct_sound_samples/cry_banette.aif delete mode 100644 sound/direct_sound_samples/cry_barboach.aif delete mode 100644 sound/direct_sound_samples/cry_bayleef.aif delete mode 100644 sound/direct_sound_samples/cry_beautifly.aif delete mode 100644 sound/direct_sound_samples/cry_beedrill.aif delete mode 100644 sound/direct_sound_samples/cry_beldum.aif delete mode 100644 sound/direct_sound_samples/cry_bellossom.aif delete mode 100644 sound/direct_sound_samples/cry_bellsprout.aif delete mode 100644 sound/direct_sound_samples/cry_blastoise.aif delete mode 100644 sound/direct_sound_samples/cry_blaziken.aif delete mode 100644 sound/direct_sound_samples/cry_blissey.aif delete mode 100644 sound/direct_sound_samples/cry_breloom.aif delete mode 100644 sound/direct_sound_samples/cry_bulbasaur.aif delete mode 100644 sound/direct_sound_samples/cry_butterfree.aif delete mode 100644 sound/direct_sound_samples/cry_cacnea.aif delete mode 100644 sound/direct_sound_samples/cry_cacturne.aif delete mode 100644 sound/direct_sound_samples/cry_camerupt.aif delete mode 100644 sound/direct_sound_samples/cry_carvanha.aif delete mode 100644 sound/direct_sound_samples/cry_cascoon.aif delete mode 100644 sound/direct_sound_samples/cry_castform.aif delete mode 100644 sound/direct_sound_samples/cry_caterpie.aif delete mode 100644 sound/direct_sound_samples/cry_celebi.aif delete mode 100644 sound/direct_sound_samples/cry_chansey.aif delete mode 100644 sound/direct_sound_samples/cry_charizard.aif delete mode 100644 sound/direct_sound_samples/cry_charmander.aif delete mode 100644 sound/direct_sound_samples/cry_charmeleon.aif delete mode 100644 sound/direct_sound_samples/cry_chikorita.aif delete mode 100644 sound/direct_sound_samples/cry_chimecho.aif delete mode 100644 sound/direct_sound_samples/cry_chinchou.aif delete mode 100644 sound/direct_sound_samples/cry_clamperl.aif delete mode 100644 sound/direct_sound_samples/cry_claydol.aif delete mode 100644 sound/direct_sound_samples/cry_clefable.aif delete mode 100644 sound/direct_sound_samples/cry_clefairy.aif delete mode 100644 sound/direct_sound_samples/cry_cleffa.aif delete mode 100644 sound/direct_sound_samples/cry_cloyster.aif delete mode 100644 sound/direct_sound_samples/cry_combusken.aif delete mode 100644 sound/direct_sound_samples/cry_corphish.aif delete mode 100644 sound/direct_sound_samples/cry_corsola.aif delete mode 100644 sound/direct_sound_samples/cry_cradily.aif delete mode 100644 sound/direct_sound_samples/cry_crawdaunt.aif delete mode 100644 sound/direct_sound_samples/cry_crobat.aif delete mode 100644 sound/direct_sound_samples/cry_croconaw.aif delete mode 100644 sound/direct_sound_samples/cry_cubone.aif delete mode 100644 sound/direct_sound_samples/cry_cyndaquil.aif delete mode 100644 sound/direct_sound_samples/cry_delcatty.aif delete mode 100644 sound/direct_sound_samples/cry_delibird.aif delete mode 100644 sound/direct_sound_samples/cry_deoxys.aif delete mode 100644 sound/direct_sound_samples/cry_dewgong.aif delete mode 100644 sound/direct_sound_samples/cry_diglett.aif delete mode 100644 sound/direct_sound_samples/cry_ditto.aif delete mode 100644 sound/direct_sound_samples/cry_dodrio.aif delete mode 100644 sound/direct_sound_samples/cry_doduo.aif delete mode 100644 sound/direct_sound_samples/cry_donphan.aif delete mode 100644 sound/direct_sound_samples/cry_dragonair.aif delete mode 100644 sound/direct_sound_samples/cry_dragonite.aif delete mode 100644 sound/direct_sound_samples/cry_dratini.aif delete mode 100644 sound/direct_sound_samples/cry_drowzee.aif delete mode 100644 sound/direct_sound_samples/cry_dugtrio.aif delete mode 100644 sound/direct_sound_samples/cry_dunsparce.aif delete mode 100644 sound/direct_sound_samples/cry_dusclops.aif delete mode 100644 sound/direct_sound_samples/cry_duskull.aif delete mode 100644 sound/direct_sound_samples/cry_dustox.aif delete mode 100644 sound/direct_sound_samples/cry_eevee.aif delete mode 100644 sound/direct_sound_samples/cry_ekans.aif delete mode 100644 sound/direct_sound_samples/cry_electabuzz.aif delete mode 100644 sound/direct_sound_samples/cry_electrike.aif delete mode 100644 sound/direct_sound_samples/cry_electrode.aif delete mode 100644 sound/direct_sound_samples/cry_elekid.aif delete mode 100644 sound/direct_sound_samples/cry_entei.aif delete mode 100644 sound/direct_sound_samples/cry_espeon.aif delete mode 100644 sound/direct_sound_samples/cry_exeggcute.aif delete mode 100644 sound/direct_sound_samples/cry_exeggutor.aif delete mode 100644 sound/direct_sound_samples/cry_exploud.aif delete mode 100644 sound/direct_sound_samples/cry_farfetchd.aif delete mode 100644 sound/direct_sound_samples/cry_fearow.aif delete mode 100644 sound/direct_sound_samples/cry_feebas.aif delete mode 100644 sound/direct_sound_samples/cry_feraligatr.aif delete mode 100644 sound/direct_sound_samples/cry_flaaffy.aif delete mode 100644 sound/direct_sound_samples/cry_flareon.aif delete mode 100644 sound/direct_sound_samples/cry_flygon.aif delete mode 100644 sound/direct_sound_samples/cry_forretress.aif delete mode 100644 sound/direct_sound_samples/cry_furret.aif delete mode 100644 sound/direct_sound_samples/cry_gardevoir.aif delete mode 100644 sound/direct_sound_samples/cry_gastly.aif delete mode 100644 sound/direct_sound_samples/cry_gengar.aif delete mode 100644 sound/direct_sound_samples/cry_geodude.aif delete mode 100644 sound/direct_sound_samples/cry_girafarig.aif delete mode 100644 sound/direct_sound_samples/cry_glalie.aif delete mode 100644 sound/direct_sound_samples/cry_gligar.aif delete mode 100644 sound/direct_sound_samples/cry_gloom.aif delete mode 100644 sound/direct_sound_samples/cry_golbat.aif delete mode 100644 sound/direct_sound_samples/cry_goldeen.aif delete mode 100644 sound/direct_sound_samples/cry_golduck.aif delete mode 100644 sound/direct_sound_samples/cry_golem.aif delete mode 100644 sound/direct_sound_samples/cry_gorebyss.aif delete mode 100644 sound/direct_sound_samples/cry_granbull.aif delete mode 100644 sound/direct_sound_samples/cry_graveler.aif delete mode 100644 sound/direct_sound_samples/cry_grimer.aif delete mode 100644 sound/direct_sound_samples/cry_groudon.aif delete mode 100644 sound/direct_sound_samples/cry_grovyle.aif delete mode 100644 sound/direct_sound_samples/cry_growlithe.aif delete mode 100644 sound/direct_sound_samples/cry_grumpig.aif delete mode 100644 sound/direct_sound_samples/cry_gulpin.aif delete mode 100644 sound/direct_sound_samples/cry_gyarados.aif delete mode 100644 sound/direct_sound_samples/cry_hariyama.aif delete mode 100644 sound/direct_sound_samples/cry_haunter.aif delete mode 100644 sound/direct_sound_samples/cry_heracross.aif delete mode 100644 sound/direct_sound_samples/cry_hitmonchan.aif delete mode 100644 sound/direct_sound_samples/cry_hitmonlee.aif delete mode 100644 sound/direct_sound_samples/cry_hitmontop.aif delete mode 100644 sound/direct_sound_samples/cry_ho_oh.aif delete mode 100644 sound/direct_sound_samples/cry_hoothoot.aif delete mode 100644 sound/direct_sound_samples/cry_hoppip.aif delete mode 100644 sound/direct_sound_samples/cry_horsea.aif delete mode 100644 sound/direct_sound_samples/cry_houndoom.aif delete mode 100644 sound/direct_sound_samples/cry_houndour.aif delete mode 100644 sound/direct_sound_samples/cry_huntail.aif delete mode 100644 sound/direct_sound_samples/cry_hypno.aif delete mode 100644 sound/direct_sound_samples/cry_igglybuff.aif delete mode 100644 sound/direct_sound_samples/cry_illumise.aif delete mode 100644 sound/direct_sound_samples/cry_ivysaur.aif delete mode 100644 sound/direct_sound_samples/cry_jigglypuff.aif delete mode 100644 sound/direct_sound_samples/cry_jirachi.aif delete mode 100644 sound/direct_sound_samples/cry_jolteon.aif delete mode 100644 sound/direct_sound_samples/cry_jumpluff.aif delete mode 100644 sound/direct_sound_samples/cry_jynx.aif delete mode 100644 sound/direct_sound_samples/cry_kabuto.aif delete mode 100644 sound/direct_sound_samples/cry_kabutops.aif delete mode 100644 sound/direct_sound_samples/cry_kadabra.aif delete mode 100644 sound/direct_sound_samples/cry_kakuna.aif delete mode 100644 sound/direct_sound_samples/cry_kangaskhan.aif delete mode 100644 sound/direct_sound_samples/cry_kecleon.aif delete mode 100644 sound/direct_sound_samples/cry_kingdra.aif delete mode 100644 sound/direct_sound_samples/cry_kingler.aif delete mode 100644 sound/direct_sound_samples/cry_kirlia.aif delete mode 100644 sound/direct_sound_samples/cry_koffing.aif delete mode 100644 sound/direct_sound_samples/cry_krabby.aif delete mode 100644 sound/direct_sound_samples/cry_kyogre.aif delete mode 100644 sound/direct_sound_samples/cry_lairon.aif delete mode 100644 sound/direct_sound_samples/cry_lanturn.aif delete mode 100644 sound/direct_sound_samples/cry_lapras.aif delete mode 100644 sound/direct_sound_samples/cry_larvitar.aif delete mode 100644 sound/direct_sound_samples/cry_latias.aif delete mode 100644 sound/direct_sound_samples/cry_latios.aif delete mode 100644 sound/direct_sound_samples/cry_ledian.aif delete mode 100644 sound/direct_sound_samples/cry_ledyba.aif delete mode 100644 sound/direct_sound_samples/cry_lickitung.aif delete mode 100644 sound/direct_sound_samples/cry_lileep.aif delete mode 100644 sound/direct_sound_samples/cry_linoone.aif delete mode 100644 sound/direct_sound_samples/cry_lombre.aif delete mode 100644 sound/direct_sound_samples/cry_lotad.aif delete mode 100644 sound/direct_sound_samples/cry_loudred.aif delete mode 100644 sound/direct_sound_samples/cry_ludicolo.aif delete mode 100644 sound/direct_sound_samples/cry_lugia.aif delete mode 100644 sound/direct_sound_samples/cry_lunatone.aif delete mode 100644 sound/direct_sound_samples/cry_luvdisc.aif delete mode 100644 sound/direct_sound_samples/cry_machamp.aif delete mode 100644 sound/direct_sound_samples/cry_machoke.aif delete mode 100644 sound/direct_sound_samples/cry_machop.aif delete mode 100644 sound/direct_sound_samples/cry_magby.aif delete mode 100644 sound/direct_sound_samples/cry_magcargo.aif delete mode 100644 sound/direct_sound_samples/cry_magikarp.aif delete mode 100644 sound/direct_sound_samples/cry_magmar.aif delete mode 100644 sound/direct_sound_samples/cry_magnemite.aif delete mode 100644 sound/direct_sound_samples/cry_magneton.aif delete mode 100644 sound/direct_sound_samples/cry_makuhita.aif delete mode 100644 sound/direct_sound_samples/cry_manectric.aif delete mode 100644 sound/direct_sound_samples/cry_mankey.aif delete mode 100644 sound/direct_sound_samples/cry_mantine.aif delete mode 100644 sound/direct_sound_samples/cry_mareep.aif delete mode 100644 sound/direct_sound_samples/cry_marill.aif delete mode 100644 sound/direct_sound_samples/cry_marowak.aif delete mode 100644 sound/direct_sound_samples/cry_marshtomp.aif delete mode 100644 sound/direct_sound_samples/cry_masquerain.aif delete mode 100644 sound/direct_sound_samples/cry_mawile.aif delete mode 100644 sound/direct_sound_samples/cry_medicham.aif delete mode 100644 sound/direct_sound_samples/cry_meditite.aif delete mode 100644 sound/direct_sound_samples/cry_meganium.aif delete mode 100644 sound/direct_sound_samples/cry_meowth.aif delete mode 100644 sound/direct_sound_samples/cry_metagross.aif delete mode 100644 sound/direct_sound_samples/cry_metang.aif delete mode 100644 sound/direct_sound_samples/cry_metapod.aif delete mode 100644 sound/direct_sound_samples/cry_mew.aif delete mode 100644 sound/direct_sound_samples/cry_mewtwo.aif delete mode 100644 sound/direct_sound_samples/cry_mightyena.aif delete mode 100644 sound/direct_sound_samples/cry_milotic.aif delete mode 100644 sound/direct_sound_samples/cry_miltank.aif delete mode 100644 sound/direct_sound_samples/cry_minun.aif delete mode 100644 sound/direct_sound_samples/cry_misdreavus.aif delete mode 100644 sound/direct_sound_samples/cry_moltres.aif delete mode 100644 sound/direct_sound_samples/cry_mr_mime.aif delete mode 100644 sound/direct_sound_samples/cry_mudkip.aif delete mode 100644 sound/direct_sound_samples/cry_muk.aif delete mode 100644 sound/direct_sound_samples/cry_murkrow.aif delete mode 100644 sound/direct_sound_samples/cry_natu.aif delete mode 100644 sound/direct_sound_samples/cry_nidoking.aif delete mode 100644 sound/direct_sound_samples/cry_nidoqueen.aif delete mode 100644 sound/direct_sound_samples/cry_nidoran_f.aif delete mode 100644 sound/direct_sound_samples/cry_nidoran_m.aif delete mode 100644 sound/direct_sound_samples/cry_nidorina.aif delete mode 100644 sound/direct_sound_samples/cry_nidorino.aif delete mode 100644 sound/direct_sound_samples/cry_nincada.aif delete mode 100644 sound/direct_sound_samples/cry_ninetales.aif delete mode 100644 sound/direct_sound_samples/cry_ninjask.aif delete mode 100644 sound/direct_sound_samples/cry_noctowl.aif delete mode 100644 sound/direct_sound_samples/cry_none.aif delete mode 100644 sound/direct_sound_samples/cry_nosepass.aif delete mode 100644 sound/direct_sound_samples/cry_numel.aif delete mode 100644 sound/direct_sound_samples/cry_nuzleaf.aif delete mode 100644 sound/direct_sound_samples/cry_octillery.aif delete mode 100644 sound/direct_sound_samples/cry_oddish.aif delete mode 100644 sound/direct_sound_samples/cry_omanyte.aif delete mode 100644 sound/direct_sound_samples/cry_omastar.aif delete mode 100644 sound/direct_sound_samples/cry_onix.aif delete mode 100644 sound/direct_sound_samples/cry_paras.aif delete mode 100644 sound/direct_sound_samples/cry_parasect.aif delete mode 100644 sound/direct_sound_samples/cry_pelipper.aif delete mode 100644 sound/direct_sound_samples/cry_persian.aif delete mode 100644 sound/direct_sound_samples/cry_phanpy.aif delete mode 100644 sound/direct_sound_samples/cry_pichu.aif delete mode 100644 sound/direct_sound_samples/cry_pidgeot.aif delete mode 100644 sound/direct_sound_samples/cry_pidgeotto.aif delete mode 100644 sound/direct_sound_samples/cry_pidgey.aif delete mode 100644 sound/direct_sound_samples/cry_pikachu.aif delete mode 100644 sound/direct_sound_samples/cry_piloswine.aif delete mode 100644 sound/direct_sound_samples/cry_pineco.aif delete mode 100644 sound/direct_sound_samples/cry_pinsir.aif delete mode 100644 sound/direct_sound_samples/cry_plusle.aif delete mode 100644 sound/direct_sound_samples/cry_politoed.aif delete mode 100644 sound/direct_sound_samples/cry_poliwag.aif delete mode 100644 sound/direct_sound_samples/cry_poliwhirl.aif delete mode 100644 sound/direct_sound_samples/cry_poliwrath.aif delete mode 100644 sound/direct_sound_samples/cry_ponyta.aif delete mode 100644 sound/direct_sound_samples/cry_poochyena.aif delete mode 100644 sound/direct_sound_samples/cry_porygon.aif delete mode 100644 sound/direct_sound_samples/cry_porygon2.aif delete mode 100644 sound/direct_sound_samples/cry_primeape.aif delete mode 100644 sound/direct_sound_samples/cry_psyduck.aif delete mode 100644 sound/direct_sound_samples/cry_pupitar.aif delete mode 100644 sound/direct_sound_samples/cry_quagsire.aif delete mode 100644 sound/direct_sound_samples/cry_quilava.aif delete mode 100644 sound/direct_sound_samples/cry_qwilfish.aif delete mode 100644 sound/direct_sound_samples/cry_raichu.aif delete mode 100644 sound/direct_sound_samples/cry_raikou.aif delete mode 100644 sound/direct_sound_samples/cry_ralts.aif delete mode 100644 sound/direct_sound_samples/cry_rapidash.aif delete mode 100644 sound/direct_sound_samples/cry_raticate.aif delete mode 100644 sound/direct_sound_samples/cry_rattata.aif delete mode 100644 sound/direct_sound_samples/cry_rayquaza.aif delete mode 100644 sound/direct_sound_samples/cry_regice.aif delete mode 100644 sound/direct_sound_samples/cry_regirock.aif delete mode 100644 sound/direct_sound_samples/cry_registeel.aif delete mode 100644 sound/direct_sound_samples/cry_relicanth.aif delete mode 100644 sound/direct_sound_samples/cry_remoraid.aif delete mode 100644 sound/direct_sound_samples/cry_rhydon.aif delete mode 100644 sound/direct_sound_samples/cry_rhyhorn.aif delete mode 100644 sound/direct_sound_samples/cry_roselia.aif delete mode 100644 sound/direct_sound_samples/cry_sableye.aif delete mode 100644 sound/direct_sound_samples/cry_salamence.aif delete mode 100644 sound/direct_sound_samples/cry_sandshrew.aif delete mode 100644 sound/direct_sound_samples/cry_sandslash.aif delete mode 100644 sound/direct_sound_samples/cry_sceptile.aif delete mode 100644 sound/direct_sound_samples/cry_scizor.aif delete mode 100644 sound/direct_sound_samples/cry_scyther.aif delete mode 100644 sound/direct_sound_samples/cry_seadra.aif delete mode 100644 sound/direct_sound_samples/cry_seaking.aif delete mode 100644 sound/direct_sound_samples/cry_sealeo.aif delete mode 100644 sound/direct_sound_samples/cry_seedot.aif delete mode 100644 sound/direct_sound_samples/cry_seel.aif delete mode 100644 sound/direct_sound_samples/cry_sentret.aif delete mode 100644 sound/direct_sound_samples/cry_seviper.aif delete mode 100644 sound/direct_sound_samples/cry_sharpedo.aif delete mode 100644 sound/direct_sound_samples/cry_shedinja.aif delete mode 100644 sound/direct_sound_samples/cry_shelgon.aif delete mode 100644 sound/direct_sound_samples/cry_shellder.aif delete mode 100644 sound/direct_sound_samples/cry_shiftry.aif delete mode 100644 sound/direct_sound_samples/cry_shroomish.aif delete mode 100644 sound/direct_sound_samples/cry_shuckle.aif delete mode 100644 sound/direct_sound_samples/cry_shuppet.aif delete mode 100644 sound/direct_sound_samples/cry_silcoon.aif delete mode 100644 sound/direct_sound_samples/cry_skarmory.aif delete mode 100644 sound/direct_sound_samples/cry_skiploom.aif delete mode 100644 sound/direct_sound_samples/cry_skitty.aif delete mode 100644 sound/direct_sound_samples/cry_slaking.aif delete mode 100644 sound/direct_sound_samples/cry_slakoth.aif delete mode 100644 sound/direct_sound_samples/cry_slowbro.aif delete mode 100644 sound/direct_sound_samples/cry_slowking.aif delete mode 100644 sound/direct_sound_samples/cry_slowpoke.aif delete mode 100644 sound/direct_sound_samples/cry_slugma.aif delete mode 100644 sound/direct_sound_samples/cry_smeargle.aif delete mode 100644 sound/direct_sound_samples/cry_smoochum.aif delete mode 100644 sound/direct_sound_samples/cry_sneasel.aif delete mode 100644 sound/direct_sound_samples/cry_snorlax.aif delete mode 100644 sound/direct_sound_samples/cry_snorunt.aif delete mode 100644 sound/direct_sound_samples/cry_snubbull.aif delete mode 100644 sound/direct_sound_samples/cry_solrock.aif delete mode 100644 sound/direct_sound_samples/cry_spearow.aif delete mode 100644 sound/direct_sound_samples/cry_spheal.aif delete mode 100644 sound/direct_sound_samples/cry_spinarak.aif delete mode 100644 sound/direct_sound_samples/cry_spinda.aif delete mode 100644 sound/direct_sound_samples/cry_spoink.aif delete mode 100644 sound/direct_sound_samples/cry_squirtle.aif delete mode 100644 sound/direct_sound_samples/cry_stantler.aif delete mode 100644 sound/direct_sound_samples/cry_starmie.aif delete mode 100644 sound/direct_sound_samples/cry_staryu.aif delete mode 100644 sound/direct_sound_samples/cry_steelix.aif delete mode 100644 sound/direct_sound_samples/cry_sudowoodo.aif delete mode 100644 sound/direct_sound_samples/cry_suicune.aif delete mode 100644 sound/direct_sound_samples/cry_sunflora.aif delete mode 100644 sound/direct_sound_samples/cry_sunkern.aif delete mode 100644 sound/direct_sound_samples/cry_surskit.aif delete mode 100644 sound/direct_sound_samples/cry_swablu.aif delete mode 100644 sound/direct_sound_samples/cry_swalot.aif delete mode 100644 sound/direct_sound_samples/cry_swampert.aif delete mode 100644 sound/direct_sound_samples/cry_swellow.aif delete mode 100644 sound/direct_sound_samples/cry_swinub.aif delete mode 100644 sound/direct_sound_samples/cry_taillow.aif delete mode 100644 sound/direct_sound_samples/cry_tangela.aif delete mode 100644 sound/direct_sound_samples/cry_tauros.aif delete mode 100644 sound/direct_sound_samples/cry_teddiursa.aif delete mode 100644 sound/direct_sound_samples/cry_tentacool.aif delete mode 100644 sound/direct_sound_samples/cry_tentacruel.aif delete mode 100644 sound/direct_sound_samples/cry_togepi.aif delete mode 100644 sound/direct_sound_samples/cry_togetic.aif delete mode 100644 sound/direct_sound_samples/cry_torchic.aif delete mode 100644 sound/direct_sound_samples/cry_torkoal.aif delete mode 100644 sound/direct_sound_samples/cry_totodile.aif delete mode 100644 sound/direct_sound_samples/cry_trapinch.aif delete mode 100644 sound/direct_sound_samples/cry_treecko.aif delete mode 100644 sound/direct_sound_samples/cry_tropius.aif delete mode 100644 sound/direct_sound_samples/cry_typhlosion.aif delete mode 100644 sound/direct_sound_samples/cry_tyranitar.aif delete mode 100644 sound/direct_sound_samples/cry_tyrogue.aif delete mode 100644 sound/direct_sound_samples/cry_umbreon.aif delete mode 100644 sound/direct_sound_samples/cry_unown.aif delete mode 100644 sound/direct_sound_samples/cry_unused_265.aif delete mode 100644 sound/direct_sound_samples/cry_unused_268.aif delete mode 100644 sound/direct_sound_samples/cry_ursaring.aif delete mode 100644 sound/direct_sound_samples/cry_vaporeon.aif delete mode 100644 sound/direct_sound_samples/cry_venomoth.aif delete mode 100644 sound/direct_sound_samples/cry_venonat.aif delete mode 100644 sound/direct_sound_samples/cry_venusaur.aif delete mode 100644 sound/direct_sound_samples/cry_vibrava.aif delete mode 100644 sound/direct_sound_samples/cry_victreebel.aif delete mode 100644 sound/direct_sound_samples/cry_vigoroth.aif delete mode 100644 sound/direct_sound_samples/cry_vileplume.aif delete mode 100644 sound/direct_sound_samples/cry_volbeat.aif delete mode 100644 sound/direct_sound_samples/cry_voltorb.aif delete mode 100644 sound/direct_sound_samples/cry_vulpix.aif delete mode 100644 sound/direct_sound_samples/cry_wailmer.aif delete mode 100644 sound/direct_sound_samples/cry_wailord.aif delete mode 100644 sound/direct_sound_samples/cry_walrein.aif delete mode 100644 sound/direct_sound_samples/cry_wartortle.aif delete mode 100644 sound/direct_sound_samples/cry_weedle.aif delete mode 100644 sound/direct_sound_samples/cry_weepinbell.aif delete mode 100644 sound/direct_sound_samples/cry_weezing.aif delete mode 100644 sound/direct_sound_samples/cry_whiscash.aif delete mode 100644 sound/direct_sound_samples/cry_whismur.aif delete mode 100644 sound/direct_sound_samples/cry_wigglytuff.aif delete mode 100644 sound/direct_sound_samples/cry_wingull.aif delete mode 100644 sound/direct_sound_samples/cry_wobbuffet.aif delete mode 100644 sound/direct_sound_samples/cry_wooper.aif delete mode 100644 sound/direct_sound_samples/cry_wurmple.aif delete mode 100644 sound/direct_sound_samples/cry_wynaut.aif delete mode 100644 sound/direct_sound_samples/cry_xatu.aif delete mode 100644 sound/direct_sound_samples/cry_yanma.aif delete mode 100644 sound/direct_sound_samples/cry_zangoose.aif delete mode 100644 sound/direct_sound_samples/cry_zapdos.aif delete mode 100644 sound/direct_sound_samples/cry_zigzagoon.aif delete mode 100644 sound/direct_sound_samples/cry_zubat.aif diff --git a/Makefile b/Makefile index eda7fb2c2..91abef07a 100644 --- a/Makefile +++ b/Makefile @@ -96,7 +96,7 @@ ifeq ($(COMPARE),1) endif clean: tidy - $(RM) sound/direct_sound_samples/*.bin + find sound/direct_sound_samples \( -iname '*.bin' \) -exec rm {} + $(RM) $(ALL_OBJECTS) find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' \) -exec rm {} + @@ -160,7 +160,7 @@ include override.mk #### Sound Rules #### -sound/direct_sound_samples/cry_%.bin: sound/direct_sound_samples/cry_%.aif +sound/direct_sound_samples/cries/cry_%.bin: sound/direct_sound_samples/cries/cry_%.aif $(AIF2PCM) $< $@ --compress sound/%.bin: sound/%.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 1d56162e5..92527974c 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -264,1555 +264,1555 @@ DirectSoundWaveData_84AA8F4:: @ 84AA8F4 .align 2 Cry_Bulbasaur:: @ 84AB57C - .incbin "sound/direct_sound_samples/cry_bulbasaur.bin" + .incbin "sound/direct_sound_samples/cries/cry_bulbasaur.bin" .align 2 Cry_Ivysaur:: @ 84AC608 - .incbin "sound/direct_sound_samples/cry_ivysaur.bin" + .incbin "sound/direct_sound_samples/cries/cry_ivysaur.bin" .align 2 Cry_Venusaur:: @ 84AD698 - .incbin "sound/direct_sound_samples/cry_venusaur.bin" + .incbin "sound/direct_sound_samples/cries/cry_venusaur.bin" .align 2 Cry_Charmander:: @ 84AE9F0 - .incbin "sound/direct_sound_samples/cry_charmander.bin" + .incbin "sound/direct_sound_samples/cries/cry_charmander.bin" .align 2 Cry_Charmeleon:: @ 84AF860 - .incbin "sound/direct_sound_samples/cry_charmeleon.bin" + .incbin "sound/direct_sound_samples/cries/cry_charmeleon.bin" .align 2 Cry_Charizard:: @ 84B06E0 - .incbin "sound/direct_sound_samples/cry_charizard.bin" + .incbin "sound/direct_sound_samples/cries/cry_charizard.bin" .align 2 Cry_Squirtle:: @ 84B1A28 - .incbin "sound/direct_sound_samples/cry_squirtle.bin" + .incbin "sound/direct_sound_samples/cries/cry_squirtle.bin" .align 2 Cry_Wartortle:: @ 84B289C - .incbin "sound/direct_sound_samples/cry_wartortle.bin" + .incbin "sound/direct_sound_samples/cries/cry_wartortle.bin" .align 2 Cry_Blastoise:: @ 84B39DC - .incbin "sound/direct_sound_samples/cry_blastoise.bin" + .incbin "sound/direct_sound_samples/cries/cry_blastoise.bin" .align 2 Cry_Caterpie:: @ 84B4D24 - .incbin "sound/direct_sound_samples/cry_caterpie.bin" + .incbin "sound/direct_sound_samples/cries/cry_caterpie.bin" .align 2 Cry_Metapod:: @ 84B557C - .incbin "sound/direct_sound_samples/cry_metapod.bin" + .incbin "sound/direct_sound_samples/cries/cry_metapod.bin" .align 2 Cry_Butterfree:: @ 84B6CCC - .incbin "sound/direct_sound_samples/cry_butterfree.bin" + .incbin "sound/direct_sound_samples/cries/cry_butterfree.bin" .align 2 Cry_Weedle:: @ 84B76D4 - .incbin "sound/direct_sound_samples/cry_weedle.bin" + .incbin "sound/direct_sound_samples/cries/cry_weedle.bin" .align 2 Cry_Kakuna:: @ 84B8718 - .incbin "sound/direct_sound_samples/cry_kakuna.bin" + .incbin "sound/direct_sound_samples/cries/cry_kakuna.bin" .align 2 Cry_Beedrill:: @ 84B9954 - .incbin "sound/direct_sound_samples/cry_beedrill.bin" + .incbin "sound/direct_sound_samples/cries/cry_beedrill.bin" .align 2 Cry_Pidgey:: @ 84BACB0 - .incbin "sound/direct_sound_samples/cry_pidgey.bin" + .incbin "sound/direct_sound_samples/cries/cry_pidgey.bin" .align 2 Cry_Pidgeotto:: @ 84BB098 - .incbin "sound/direct_sound_samples/cry_pidgeotto.bin" + .incbin "sound/direct_sound_samples/cries/cry_pidgeotto.bin" .align 2 Cry_Pidgeot:: @ 84BBFA0 - .incbin "sound/direct_sound_samples/cry_pidgeot.bin" + .incbin "sound/direct_sound_samples/cries/cry_pidgeot.bin" .align 2 Cry_Rattata:: @ 84BD0D4 - .incbin "sound/direct_sound_samples/cry_rattata.bin" + .incbin "sound/direct_sound_samples/cries/cry_rattata.bin" .align 2 Cry_Raticate:: @ 84BD8B4 - .incbin "sound/direct_sound_samples/cry_raticate.bin" + .incbin "sound/direct_sound_samples/cries/cry_raticate.bin" .align 2 Cry_Spearow:: @ 84BE238 - .incbin "sound/direct_sound_samples/cry_spearow.bin" + .incbin "sound/direct_sound_samples/cries/cry_spearow.bin" .align 2 Cry_Fearow:: @ 84BF3DC - .incbin "sound/direct_sound_samples/cry_fearow.bin" + .incbin "sound/direct_sound_samples/cries/cry_fearow.bin" .align 2 Cry_Ekans:: @ 84C0518 - .incbin "sound/direct_sound_samples/cry_ekans.bin" + .incbin "sound/direct_sound_samples/cries/cry_ekans.bin" .align 2 Cry_Arbok:: @ 84C1864 - .incbin "sound/direct_sound_samples/cry_arbok.bin" + .incbin "sound/direct_sound_samples/cries/cry_arbok.bin" .align 2 Cry_Pikachu:: @ 84C2BBC - .incbin "sound/direct_sound_samples/cry_pikachu.bin" + .incbin "sound/direct_sound_samples/cries/cry_pikachu.bin" .align 2 Cry_Raichu:: @ 84C3C64 - .incbin "sound/direct_sound_samples/cry_raichu.bin" + .incbin "sound/direct_sound_samples/cries/cry_raichu.bin" .align 2 Cry_Sandshrew:: @ 84C5424 - .incbin "sound/direct_sound_samples/cry_sandshrew.bin" + .incbin "sound/direct_sound_samples/cries/cry_sandshrew.bin" .align 2 Cry_Sandslash:: @ 84C5D78 - .incbin "sound/direct_sound_samples/cry_sandslash.bin" + .incbin "sound/direct_sound_samples/cries/cry_sandslash.bin" .align 2 Cry_NidoranF:: @ 84C6B08 - .incbin "sound/direct_sound_samples/cry_nidoran_f.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidoran_f.bin" .align 2 Cry_Nidorina:: @ 84C74B8 - .incbin "sound/direct_sound_samples/cry_nidorina.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidorina.bin" .align 2 Cry_Nidoqueen:: @ 84C8180 - .incbin "sound/direct_sound_samples/cry_nidoqueen.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidoqueen.bin" .align 2 Cry_NidoranM:: @ 84C9260 - .incbin "sound/direct_sound_samples/cry_nidoran_m.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidoran_m.bin" .align 2 Cry_Nidorino:: @ 84C9CC8 - .incbin "sound/direct_sound_samples/cry_nidorino.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidorino.bin" .align 2 Cry_Nidoking:: @ 84CA8DC - .incbin "sound/direct_sound_samples/cry_nidoking.bin" + .incbin "sound/direct_sound_samples/cries/cry_nidoking.bin" .align 2 Cry_Clefairy:: @ 84CC148 - .incbin "sound/direct_sound_samples/cry_clefairy.bin" + .incbin "sound/direct_sound_samples/cries/cry_clefairy.bin" .align 2 Cry_Clefable:: @ 84CC9B8 - .incbin "sound/direct_sound_samples/cry_clefable.bin" + .incbin "sound/direct_sound_samples/cries/cry_clefable.bin" .align 2 Cry_Vulpix:: @ 84CD448 - .incbin "sound/direct_sound_samples/cry_vulpix.bin" + .incbin "sound/direct_sound_samples/cries/cry_vulpix.bin" .align 2 Cry_Ninetales:: @ 84CEC18 - .incbin "sound/direct_sound_samples/cry_ninetales.bin" + .incbin "sound/direct_sound_samples/cries/cry_ninetales.bin" .align 2 Cry_Jigglypuff:: @ 84D0484 - .incbin "sound/direct_sound_samples/cry_jigglypuff.bin" + .incbin "sound/direct_sound_samples/cries/cry_jigglypuff.bin" .align 2 Cry_Wigglytuff:: @ 84D09E8 - .incbin "sound/direct_sound_samples/cry_wigglytuff.bin" + .incbin "sound/direct_sound_samples/cries/cry_wigglytuff.bin" .align 2 Cry_Zubat:: @ 84D10B0 - .incbin "sound/direct_sound_samples/cry_zubat.bin" + .incbin "sound/direct_sound_samples/cries/cry_zubat.bin" .align 2 Cry_Golbat:: @ 84D241C - .incbin "sound/direct_sound_samples/cry_golbat.bin" + .incbin "sound/direct_sound_samples/cries/cry_golbat.bin" .align 2 Cry_Oddish:: @ 84D3780 - .incbin "sound/direct_sound_samples/cry_oddish.bin" + .incbin "sound/direct_sound_samples/cries/cry_oddish.bin" .align 2 Cry_Gloom:: @ 84D461C - .incbin "sound/direct_sound_samples/cry_gloom.bin" + .incbin "sound/direct_sound_samples/cries/cry_gloom.bin" .align 2 Cry_Vileplume:: @ 84D5298 - .incbin "sound/direct_sound_samples/cry_vileplume.bin" + .incbin "sound/direct_sound_samples/cries/cry_vileplume.bin" .align 2 Cry_Paras:: @ 84D6C34 - .incbin "sound/direct_sound_samples/cry_paras.bin" + .incbin "sound/direct_sound_samples/cries/cry_paras.bin" .align 2 Cry_Parasect:: @ 84D8828 - .incbin "sound/direct_sound_samples/cry_parasect.bin" + .incbin "sound/direct_sound_samples/cries/cry_parasect.bin" .align 2 Cry_Venonat:: @ 84DA690 - .incbin "sound/direct_sound_samples/cry_venonat.bin" + .incbin "sound/direct_sound_samples/cries/cry_venonat.bin" .align 2 Cry_Venomoth:: @ 84DB610 - .incbin "sound/direct_sound_samples/cry_venomoth.bin" + .incbin "sound/direct_sound_samples/cries/cry_venomoth.bin" .align 2 Cry_Diglett:: @ 84DC614 - .incbin "sound/direct_sound_samples/cry_diglett.bin" + .incbin "sound/direct_sound_samples/cries/cry_diglett.bin" .align 2 Cry_Dugtrio:: @ 84DD984 - .incbin "sound/direct_sound_samples/cry_dugtrio.bin" + .incbin "sound/direct_sound_samples/cries/cry_dugtrio.bin" .align 2 Cry_Meowth:: @ 84DECF0 - .incbin "sound/direct_sound_samples/cry_meowth.bin" + .incbin "sound/direct_sound_samples/cries/cry_meowth.bin" .align 2 Cry_Persian:: @ 84DF680 - .incbin "sound/direct_sound_samples/cry_persian.bin" + .incbin "sound/direct_sound_samples/cries/cry_persian.bin" .align 2 Cry_Psyduck:: @ 84E095C - .incbin "sound/direct_sound_samples/cry_psyduck.bin" + .incbin "sound/direct_sound_samples/cries/cry_psyduck.bin" .align 2 Cry_Golduck:: @ 84E1684 - .incbin "sound/direct_sound_samples/cry_golduck.bin" + .incbin "sound/direct_sound_samples/cries/cry_golduck.bin" .align 2 Cry_Mankey:: @ 84E21CC - .incbin "sound/direct_sound_samples/cry_mankey.bin" + .incbin "sound/direct_sound_samples/cries/cry_mankey.bin" .align 2 Cry_Primeape:: @ 84E322C - .incbin "sound/direct_sound_samples/cry_primeape.bin" + .incbin "sound/direct_sound_samples/cries/cry_primeape.bin" .align 2 Cry_Growlithe:: @ 84E425C - .incbin "sound/direct_sound_samples/cry_growlithe.bin" + .incbin "sound/direct_sound_samples/cries/cry_growlithe.bin" .align 2 Cry_Arcanine:: @ 84E4FC0 - .incbin "sound/direct_sound_samples/cry_arcanine.bin" + .incbin "sound/direct_sound_samples/cries/cry_arcanine.bin" .align 2 Cry_Poliwag:: @ 84E60FC - .incbin "sound/direct_sound_samples/cry_poliwag.bin" + .incbin "sound/direct_sound_samples/cries/cry_poliwag.bin" .align 2 Cry_Poliwhirl:: @ 84E6C18 - .incbin "sound/direct_sound_samples/cry_poliwhirl.bin" + .incbin "sound/direct_sound_samples/cries/cry_poliwhirl.bin" .align 2 Cry_Poliwrath:: @ 84E72C0 - .incbin "sound/direct_sound_samples/cry_poliwrath.bin" + .incbin "sound/direct_sound_samples/cries/cry_poliwrath.bin" .align 2 Cry_Abra:: @ 84E7DE4 - .incbin "sound/direct_sound_samples/cry_abra.bin" + .incbin "sound/direct_sound_samples/cries/cry_abra.bin" .align 2 Cry_Kadabra:: @ 84E9548 - .incbin "sound/direct_sound_samples/cry_kadabra.bin" + .incbin "sound/direct_sound_samples/cries/cry_kadabra.bin" .align 2 Cry_Alakazam:: @ 84EB030 - .incbin "sound/direct_sound_samples/cry_alakazam.bin" + .incbin "sound/direct_sound_samples/cries/cry_alakazam.bin" .align 2 Cry_Machop:: @ 84ECFCC - .incbin "sound/direct_sound_samples/cry_machop.bin" + .incbin "sound/direct_sound_samples/cries/cry_machop.bin" .align 2 Cry_Machoke:: @ 84EDD30 - .incbin "sound/direct_sound_samples/cry_machoke.bin" + .incbin "sound/direct_sound_samples/cries/cry_machoke.bin" .align 2 Cry_Machamp:: @ 84EEAC0 - .incbin "sound/direct_sound_samples/cry_machamp.bin" + .incbin "sound/direct_sound_samples/cries/cry_machamp.bin" .align 2 Cry_Bellsprout:: @ 84EFB48 - .incbin "sound/direct_sound_samples/cry_bellsprout.bin" + .incbin "sound/direct_sound_samples/cries/cry_bellsprout.bin" .align 2 Cry_Weepinbell:: @ 84F02D4 - .incbin "sound/direct_sound_samples/cry_weepinbell.bin" + .incbin "sound/direct_sound_samples/cries/cry_weepinbell.bin" .align 2 Cry_Victreebel:: @ 84F1174 - .incbin "sound/direct_sound_samples/cry_victreebel.bin" + .incbin "sound/direct_sound_samples/cries/cry_victreebel.bin" .align 2 Cry_Tentacool:: @ 84F24C0 - .incbin "sound/direct_sound_samples/cry_tentacool.bin" + .incbin "sound/direct_sound_samples/cries/cry_tentacool.bin" .align 2 Cry_Tentacruel:: @ 84F34B0 - .incbin "sound/direct_sound_samples/cry_tentacruel.bin" + .incbin "sound/direct_sound_samples/cries/cry_tentacruel.bin" .align 2 Cry_Geodude:: @ 84F4BAC - .incbin "sound/direct_sound_samples/cry_geodude.bin" + .incbin "sound/direct_sound_samples/cries/cry_geodude.bin" .align 2 Cry_Graveler:: @ 84F6360 - .incbin "sound/direct_sound_samples/cry_graveler.bin" + .incbin "sound/direct_sound_samples/cries/cry_graveler.bin" .align 2 Cry_Golem:: @ 84F7F48 - .incbin "sound/direct_sound_samples/cry_golem.bin" + .incbin "sound/direct_sound_samples/cries/cry_golem.bin" .align 2 Cry_Ponyta:: @ 84F8D74 - .incbin "sound/direct_sound_samples/cry_ponyta.bin" + .incbin "sound/direct_sound_samples/cries/cry_ponyta.bin" .align 2 Cry_Rapidash:: @ 84F9C84 - .incbin "sound/direct_sound_samples/cry_rapidash.bin" + .incbin "sound/direct_sound_samples/cries/cry_rapidash.bin" .align 2 Cry_Slowpoke:: @ 84FAF24 - .incbin "sound/direct_sound_samples/cry_slowpoke.bin" + .incbin "sound/direct_sound_samples/cries/cry_slowpoke.bin" .align 2 Cry_Slowbro:: @ 84FB68C - .incbin "sound/direct_sound_samples/cry_slowbro.bin" + .incbin "sound/direct_sound_samples/cries/cry_slowbro.bin" .align 2 Cry_Magnemite:: @ 84FC3FC - .incbin "sound/direct_sound_samples/cry_magnemite.bin" + .incbin "sound/direct_sound_samples/cries/cry_magnemite.bin" .align 2 Cry_Magneton:: @ 84FD740 - .incbin "sound/direct_sound_samples/cry_magneton.bin" + .incbin "sound/direct_sound_samples/cries/cry_magneton.bin" .align 2 Cry_Farfetchd:: @ 84FEF28 - .incbin "sound/direct_sound_samples/cry_farfetchd.bin" + .incbin "sound/direct_sound_samples/cries/cry_farfetchd.bin" .align 2 Cry_Doduo:: @ 84FF6A4 - .incbin "sound/direct_sound_samples/cry_doduo.bin" + .incbin "sound/direct_sound_samples/cries/cry_doduo.bin" .align 2 Cry_Dodrio:: @ 85009E8 - .incbin "sound/direct_sound_samples/cry_dodrio.bin" + .incbin "sound/direct_sound_samples/cries/cry_dodrio.bin" .align 2 Cry_Seel:: @ 8501D60 - .incbin "sound/direct_sound_samples/cry_seel.bin" + .incbin "sound/direct_sound_samples/cries/cry_seel.bin" .align 2 Cry_Dewgong:: @ 8502F50 - .incbin "sound/direct_sound_samples/cry_dewgong.bin" + .incbin "sound/direct_sound_samples/cries/cry_dewgong.bin" .align 2 Cry_Grimer:: @ 8504474 - .incbin "sound/direct_sound_samples/cry_grimer.bin" + .incbin "sound/direct_sound_samples/cries/cry_grimer.bin" .align 2 Cry_Muk:: @ 8504EFC - .incbin "sound/direct_sound_samples/cry_muk.bin" + .incbin "sound/direct_sound_samples/cries/cry_muk.bin" .align 2 Cry_Shellder:: @ 8505DBC - .incbin "sound/direct_sound_samples/cry_shellder.bin" + .incbin "sound/direct_sound_samples/cries/cry_shellder.bin" .align 2 Cry_Cloyster:: @ 8506D30 - .incbin "sound/direct_sound_samples/cry_cloyster.bin" + .incbin "sound/direct_sound_samples/cries/cry_cloyster.bin" .align 2 Cry_Gastly:: @ 85081F4 - .incbin "sound/direct_sound_samples/cry_gastly.bin" + .incbin "sound/direct_sound_samples/cries/cry_gastly.bin" .align 2 Cry_Haunter:: @ 8509944 - .incbin "sound/direct_sound_samples/cry_haunter.bin" + .incbin "sound/direct_sound_samples/cries/cry_haunter.bin" .align 2 Cry_Gengar:: @ 850B0C4 - .incbin "sound/direct_sound_samples/cry_gengar.bin" + .incbin "sound/direct_sound_samples/cries/cry_gengar.bin" .align 2 Cry_Onix:: @ 850BF84 - .incbin "sound/direct_sound_samples/cry_onix.bin" + .incbin "sound/direct_sound_samples/cries/cry_onix.bin" .align 2 Cry_Drowzee:: @ 850D848 - .incbin "sound/direct_sound_samples/cry_drowzee.bin" + .incbin "sound/direct_sound_samples/cries/cry_drowzee.bin" .align 2 Cry_Hypno:: @ 850F560 - .incbin "sound/direct_sound_samples/cry_hypno.bin" + .incbin "sound/direct_sound_samples/cries/cry_hypno.bin" .align 2 Cry_Krabby:: @ 8511264 - .incbin "sound/direct_sound_samples/cry_krabby.bin" + .incbin "sound/direct_sound_samples/cries/cry_krabby.bin" .align 2 Cry_Kingler:: @ 8512AB0 - .incbin "sound/direct_sound_samples/cry_kingler.bin" + .incbin "sound/direct_sound_samples/cries/cry_kingler.bin" .align 2 Cry_Voltorb:: @ 8514308 - .incbin "sound/direct_sound_samples/cry_voltorb.bin" + .incbin "sound/direct_sound_samples/cries/cry_voltorb.bin" .align 2 Cry_Electrode:: @ 8515BCC - .incbin "sound/direct_sound_samples/cry_electrode.bin" + .incbin "sound/direct_sound_samples/cries/cry_electrode.bin" .align 2 Cry_Exeggcute:: @ 8517504 - .incbin "sound/direct_sound_samples/cry_exeggcute.bin" + .incbin "sound/direct_sound_samples/cries/cry_exeggcute.bin" .align 2 Cry_Exeggutor:: @ 85187E4 - .incbin "sound/direct_sound_samples/cry_exeggutor.bin" + .incbin "sound/direct_sound_samples/cries/cry_exeggutor.bin" .align 2 Cry_Cubone:: @ 851A7C8 - .incbin "sound/direct_sound_samples/cry_cubone.bin" + .incbin "sound/direct_sound_samples/cries/cry_cubone.bin" .align 2 Cry_Marowak:: @ 851B6E8 - .incbin "sound/direct_sound_samples/cry_marowak.bin" + .incbin "sound/direct_sound_samples/cries/cry_marowak.bin" .align 2 Cry_Hitmonlee:: @ 851C558 - .incbin "sound/direct_sound_samples/cry_hitmonlee.bin" + .incbin "sound/direct_sound_samples/cries/cry_hitmonlee.bin" .align 2 Cry_Hitmonchan:: @ 851D804 - .incbin "sound/direct_sound_samples/cry_hitmonchan.bin" + .incbin "sound/direct_sound_samples/cries/cry_hitmonchan.bin" .align 2 Cry_Lickitung:: @ 851E9DC - .incbin "sound/direct_sound_samples/cry_lickitung.bin" + .incbin "sound/direct_sound_samples/cries/cry_lickitung.bin" .align 2 Cry_Koffing:: @ 851F904 - .incbin "sound/direct_sound_samples/cry_koffing.bin" + .incbin "sound/direct_sound_samples/cries/cry_koffing.bin" .align 2 Cry_Weezing:: @ 8520D60 - .incbin "sound/direct_sound_samples/cry_weezing.bin" + .incbin "sound/direct_sound_samples/cries/cry_weezing.bin" .align 2 Cry_Rhyhorn:: @ 852230C - .incbin "sound/direct_sound_samples/cry_rhyhorn.bin" + .incbin "sound/direct_sound_samples/cries/cry_rhyhorn.bin" .align 2 Cry_Rhydon:: @ 8523678 - .incbin "sound/direct_sound_samples/cry_rhydon.bin" + .incbin "sound/direct_sound_samples/cries/cry_rhydon.bin" .align 2 Cry_Chansey:: @ 8524AE4 - .incbin "sound/direct_sound_samples/cry_chansey.bin" + .incbin "sound/direct_sound_samples/cries/cry_chansey.bin" .align 2 Cry_Tangela:: @ 85259B0 - .incbin "sound/direct_sound_samples/cry_tangela.bin" + .incbin "sound/direct_sound_samples/cries/cry_tangela.bin" .align 2 Cry_Kangaskhan:: @ 85268CC - .incbin "sound/direct_sound_samples/cry_kangaskhan.bin" + .incbin "sound/direct_sound_samples/cries/cry_kangaskhan.bin" .align 2 Cry_Horsea:: @ 8527B80 - .incbin "sound/direct_sound_samples/cry_horsea.bin" + .incbin "sound/direct_sound_samples/cries/cry_horsea.bin" .align 2 Cry_Seadra:: @ 85284FC - .incbin "sound/direct_sound_samples/cry_seadra.bin" + .incbin "sound/direct_sound_samples/cries/cry_seadra.bin" .align 2 Cry_Goldeen:: @ 8528D68 - .incbin "sound/direct_sound_samples/cry_goldeen.bin" + .incbin "sound/direct_sound_samples/cries/cry_goldeen.bin" .align 2 Cry_Seaking:: @ 8529740 - .incbin "sound/direct_sound_samples/cry_seaking.bin" + .incbin "sound/direct_sound_samples/cries/cry_seaking.bin" .align 2 Cry_Staryu:: @ 852AA98 - .incbin "sound/direct_sound_samples/cry_staryu.bin" + .incbin "sound/direct_sound_samples/cries/cry_staryu.bin" .align 2 Cry_Starmie:: @ 852BE80 - .incbin "sound/direct_sound_samples/cry_starmie.bin" + .incbin "sound/direct_sound_samples/cries/cry_starmie.bin" .align 2 Cry_MrMime:: @ 852D35C - .incbin "sound/direct_sound_samples/cry_mr_mime.bin" + .incbin "sound/direct_sound_samples/cries/cry_mr_mime.bin" .align 2 Cry_Scyther:: @ 852E64C - .incbin "sound/direct_sound_samples/cry_scyther.bin" + .incbin "sound/direct_sound_samples/cries/cry_scyther.bin" .align 2 Cry_Jynx:: @ 852F3A8 - .incbin "sound/direct_sound_samples/cry_jynx.bin" + .incbin "sound/direct_sound_samples/cries/cry_jynx.bin" .align 2 Cry_Electabuzz:: @ 853231C - .incbin "sound/direct_sound_samples/cry_electabuzz.bin" + .incbin "sound/direct_sound_samples/cries/cry_electabuzz.bin" .align 2 Cry_Magmar:: @ 8534200 - .incbin "sound/direct_sound_samples/cry_magmar.bin" + .incbin "sound/direct_sound_samples/cries/cry_magmar.bin" .align 2 Cry_Pinsir:: @ 853517C - .incbin "sound/direct_sound_samples/cry_pinsir.bin" + .incbin "sound/direct_sound_samples/cries/cry_pinsir.bin" .align 2 Cry_Tauros:: @ 8535DD8 - .incbin "sound/direct_sound_samples/cry_tauros.bin" + .incbin "sound/direct_sound_samples/cries/cry_tauros.bin" .align 2 Cry_Magikarp:: @ 853702C - .incbin "sound/direct_sound_samples/cry_magikarp.bin" + .incbin "sound/direct_sound_samples/cries/cry_magikarp.bin" .align 2 Cry_Gyarados:: @ 8538334 - .incbin "sound/direct_sound_samples/cry_gyarados.bin" + .incbin "sound/direct_sound_samples/cries/cry_gyarados.bin" .align 2 Cry_Lapras:: @ 8539768 - .incbin "sound/direct_sound_samples/cry_lapras.bin" + .incbin "sound/direct_sound_samples/cries/cry_lapras.bin" .align 2 Cry_Ditto:: @ 853A63C - .incbin "sound/direct_sound_samples/cry_ditto.bin" + .incbin "sound/direct_sound_samples/cries/cry_ditto.bin" .align 2 Cry_Eevee:: @ 853B158 - .incbin "sound/direct_sound_samples/cry_eevee.bin" + .incbin "sound/direct_sound_samples/cries/cry_eevee.bin" .align 2 Cry_Vaporeon:: @ 853BF90 - .incbin "sound/direct_sound_samples/cry_vaporeon.bin" + .incbin "sound/direct_sound_samples/cries/cry_vaporeon.bin" .align 2 Cry_Jolteon:: @ 853D5A8 - .incbin "sound/direct_sound_samples/cry_jolteon.bin" + .incbin "sound/direct_sound_samples/cries/cry_jolteon.bin" .align 2 Cry_Flareon:: @ 853E57C - .incbin "sound/direct_sound_samples/cry_flareon.bin" + .incbin "sound/direct_sound_samples/cries/cry_flareon.bin" .align 2 Cry_Porygon:: @ 853F500 - .incbin "sound/direct_sound_samples/cry_porygon.bin" + .incbin "sound/direct_sound_samples/cries/cry_porygon.bin" .align 2 Cry_Omanyte:: @ 854090C - .incbin "sound/direct_sound_samples/cry_omanyte.bin" + .incbin "sound/direct_sound_samples/cries/cry_omanyte.bin" .align 2 Cry_Omastar:: @ 8541664 - .incbin "sound/direct_sound_samples/cry_omastar.bin" + .incbin "sound/direct_sound_samples/cries/cry_omastar.bin" .align 2 Cry_Kabuto:: @ 85423B8 - .incbin "sound/direct_sound_samples/cry_kabuto.bin" + .incbin "sound/direct_sound_samples/cries/cry_kabuto.bin" .align 2 Cry_Kabutops:: @ 854300C - .incbin "sound/direct_sound_samples/cry_kabutops.bin" + .incbin "sound/direct_sound_samples/cries/cry_kabutops.bin" .align 2 Cry_Aerodactyl:: @ 8543DC8 - .incbin "sound/direct_sound_samples/cry_aerodactyl.bin" + .incbin "sound/direct_sound_samples/cries/cry_aerodactyl.bin" .align 2 Cry_Snorlax:: @ 8545624 - .incbin "sound/direct_sound_samples/cry_snorlax.bin" + .incbin "sound/direct_sound_samples/cries/cry_snorlax.bin" .align 2 Cry_Articuno:: @ 8545B60 - .incbin "sound/direct_sound_samples/cry_articuno.bin" + .incbin "sound/direct_sound_samples/cries/cry_articuno.bin" .align 2 Cry_Zapdos:: @ 8547308 - .incbin "sound/direct_sound_samples/cry_zapdos.bin" + .incbin "sound/direct_sound_samples/cries/cry_zapdos.bin" .align 2 Cry_Moltres:: @ 8548280 - .incbin "sound/direct_sound_samples/cry_moltres.bin" + .incbin "sound/direct_sound_samples/cries/cry_moltres.bin" .align 2 Cry_Dratini:: @ 8549A2C - .incbin "sound/direct_sound_samples/cry_dratini.bin" + .incbin "sound/direct_sound_samples/cries/cry_dratini.bin" .align 2 Cry_Dragonair:: @ 854A5C8 - .incbin "sound/direct_sound_samples/cry_dragonair.bin" + .incbin "sound/direct_sound_samples/cries/cry_dragonair.bin" .align 2 Cry_Dragonite:: @ 854B670 - .incbin "sound/direct_sound_samples/cry_dragonite.bin" + .incbin "sound/direct_sound_samples/cries/cry_dragonite.bin" .align 2 Cry_Mewtwo:: @ 854C97C - .incbin "sound/direct_sound_samples/cry_mewtwo.bin" + .incbin "sound/direct_sound_samples/cries/cry_mewtwo.bin" .align 2 Cry_Mew:: @ 854E7E4 - .incbin "sound/direct_sound_samples/cry_mew.bin" + .incbin "sound/direct_sound_samples/cries/cry_mew.bin" .align 2 Cry_Chikorita:: @ 855064C - .incbin "sound/direct_sound_samples/cry_chikorita.bin" + .incbin "sound/direct_sound_samples/cries/cry_chikorita.bin" .align 2 Cry_Bayleef:: @ 8550B8C - .incbin "sound/direct_sound_samples/cry_bayleef.bin" + .incbin "sound/direct_sound_samples/cries/cry_bayleef.bin" .align 2 Cry_Meganium:: @ 8551458 - .incbin "sound/direct_sound_samples/cry_meganium.bin" + .incbin "sound/direct_sound_samples/cries/cry_meganium.bin" .align 2 Cry_Cyndaquil:: @ 8552490 - .incbin "sound/direct_sound_samples/cry_cyndaquil.bin" + .incbin "sound/direct_sound_samples/cries/cry_cyndaquil.bin" .align 2 Cry_Quilava:: @ 8552B94 - .incbin "sound/direct_sound_samples/cry_quilava.bin" + .incbin "sound/direct_sound_samples/cries/cry_quilava.bin" .align 2 Cry_Typhlosion:: @ 855377C - .incbin "sound/direct_sound_samples/cry_typhlosion.bin" + .incbin "sound/direct_sound_samples/cries/cry_typhlosion.bin" .align 2 Cry_Totodile:: @ 8555D8C - .incbin "sound/direct_sound_samples/cry_totodile.bin" + .incbin "sound/direct_sound_samples/cries/cry_totodile.bin" .align 2 Cry_Croconaw:: @ 8556FE4 - .incbin "sound/direct_sound_samples/cry_croconaw.bin" + .incbin "sound/direct_sound_samples/cries/cry_croconaw.bin" .align 2 Cry_Feraligatr:: @ 8558420 - .incbin "sound/direct_sound_samples/cry_feraligatr.bin" + .incbin "sound/direct_sound_samples/cries/cry_feraligatr.bin" .align 2 Cry_Sentret:: @ 8559DA4 - .incbin "sound/direct_sound_samples/cry_sentret.bin" + .incbin "sound/direct_sound_samples/cries/cry_sentret.bin" .align 2 Cry_Furret:: @ 855A1CC - .incbin "sound/direct_sound_samples/cry_furret.bin" + .incbin "sound/direct_sound_samples/cries/cry_furret.bin" .align 2 Cry_Hoothoot:: @ 855A814 - .incbin "sound/direct_sound_samples/cry_hoothoot.bin" + .incbin "sound/direct_sound_samples/cries/cry_hoothoot.bin" .align 2 Cry_Noctowl:: @ 855B2F8 - .incbin "sound/direct_sound_samples/cry_noctowl.bin" + .incbin "sound/direct_sound_samples/cries/cry_noctowl.bin" .align 2 Cry_Ledyba:: @ 855C828 - .incbin "sound/direct_sound_samples/cry_ledyba.bin" + .incbin "sound/direct_sound_samples/cries/cry_ledyba.bin" .align 2 Cry_Ledian:: @ 855CF20 - .incbin "sound/direct_sound_samples/cry_ledian.bin" + .incbin "sound/direct_sound_samples/cries/cry_ledian.bin" .align 2 Cry_Spinarak:: @ 855D784 - .incbin "sound/direct_sound_samples/cry_spinarak.bin" + .incbin "sound/direct_sound_samples/cries/cry_spinarak.bin" .align 2 Cry_Ariados:: @ 855E4E8 - .incbin "sound/direct_sound_samples/cry_ariados.bin" + .incbin "sound/direct_sound_samples/cries/cry_ariados.bin" .align 2 Cry_Crobat:: @ 855F13C - .incbin "sound/direct_sound_samples/cry_crobat.bin" + .incbin "sound/direct_sound_samples/cries/cry_crobat.bin" .align 2 Cry_Chinchou:: @ 856086C - .incbin "sound/direct_sound_samples/cry_chinchou.bin" + .incbin "sound/direct_sound_samples/cries/cry_chinchou.bin" .align 2 Cry_Lanturn:: @ 856151C - .incbin "sound/direct_sound_samples/cry_lanturn.bin" + .incbin "sound/direct_sound_samples/cries/cry_lanturn.bin" .align 2 Cry_Pichu:: @ 8561FA8 - .incbin "sound/direct_sound_samples/cry_pichu.bin" + .incbin "sound/direct_sound_samples/cries/cry_pichu.bin" .align 2 Cry_Cleffa:: @ 85626FC - .incbin "sound/direct_sound_samples/cry_cleffa.bin" + .incbin "sound/direct_sound_samples/cries/cry_cleffa.bin" .align 2 Cry_Igglybuff:: @ 8562CEC - .incbin "sound/direct_sound_samples/cry_igglybuff.bin" + .incbin "sound/direct_sound_samples/cries/cry_igglybuff.bin" .align 2 Cry_Togepi:: @ 85633E8 - .incbin "sound/direct_sound_samples/cry_togepi.bin" + .incbin "sound/direct_sound_samples/cries/cry_togepi.bin" .align 2 Cry_Togetic:: @ 8563ED0 - .incbin "sound/direct_sound_samples/cry_togetic.bin" + .incbin "sound/direct_sound_samples/cries/cry_togetic.bin" .align 2 Cry_Natu:: @ 85645D0 - .incbin "sound/direct_sound_samples/cry_natu.bin" + .incbin "sound/direct_sound_samples/cries/cry_natu.bin" .align 2 Cry_Xatu:: @ 8565060 - .incbin "sound/direct_sound_samples/cry_xatu.bin" + .incbin "sound/direct_sound_samples/cries/cry_xatu.bin" .align 2 Cry_Mareep:: @ 8565F2C - .incbin "sound/direct_sound_samples/cry_mareep.bin" + .incbin "sound/direct_sound_samples/cries/cry_mareep.bin" .align 2 Cry_Flaaffy:: @ 8566684 - .incbin "sound/direct_sound_samples/cry_flaaffy.bin" + .incbin "sound/direct_sound_samples/cries/cry_flaaffy.bin" .align 2 Cry_Ampharos:: @ 8567438 - .incbin "sound/direct_sound_samples/cry_ampharos.bin" + .incbin "sound/direct_sound_samples/cries/cry_ampharos.bin" .align 2 Cry_Bellossom:: @ 85684B8 - .incbin "sound/direct_sound_samples/cry_bellossom.bin" + .incbin "sound/direct_sound_samples/cries/cry_bellossom.bin" .align 2 Cry_Marill:: @ 85692D0 - .incbin "sound/direct_sound_samples/cry_marill.bin" + .incbin "sound/direct_sound_samples/cries/cry_marill.bin" .align 2 Cry_Azumarill:: @ 8569FE4 - .incbin "sound/direct_sound_samples/cry_azumarill.bin" + .incbin "sound/direct_sound_samples/cries/cry_azumarill.bin" .align 2 Cry_Sudowoodo:: @ 856B0D0 - .incbin "sound/direct_sound_samples/cry_sudowoodo.bin" + .incbin "sound/direct_sound_samples/cries/cry_sudowoodo.bin" .align 2 Cry_Politoed:: @ 856C100 - .incbin "sound/direct_sound_samples/cry_politoed.bin" + .incbin "sound/direct_sound_samples/cries/cry_politoed.bin" .align 2 Cry_Hoppip:: @ 856D344 - .incbin "sound/direct_sound_samples/cry_hoppip.bin" + .incbin "sound/direct_sound_samples/cries/cry_hoppip.bin" .align 2 Cry_Skiploom:: @ 856DBB0 - .incbin "sound/direct_sound_samples/cry_skiploom.bin" + .incbin "sound/direct_sound_samples/cries/cry_skiploom.bin" .align 2 Cry_Jumpluff:: @ 856E8B8 - .incbin "sound/direct_sound_samples/cry_jumpluff.bin" + .incbin "sound/direct_sound_samples/cries/cry_jumpluff.bin" .align 2 Cry_Aipom:: @ 856F8F4 - .incbin "sound/direct_sound_samples/cry_aipom.bin" + .incbin "sound/direct_sound_samples/cries/cry_aipom.bin" .align 2 Cry_Sunkern:: @ 8570714 - .incbin "sound/direct_sound_samples/cry_sunkern.bin" + .incbin "sound/direct_sound_samples/cries/cry_sunkern.bin" .align 2 Cry_Sunflora:: @ 8570F28 - .incbin "sound/direct_sound_samples/cry_sunflora.bin" + .incbin "sound/direct_sound_samples/cries/cry_sunflora.bin" .align 2 Cry_Yanma:: @ 8571F08 - .incbin "sound/direct_sound_samples/cry_yanma.bin" + .incbin "sound/direct_sound_samples/cries/cry_yanma.bin" .align 2 Cry_Wooper:: @ 8573010 - .incbin "sound/direct_sound_samples/cry_wooper.bin" + .incbin "sound/direct_sound_samples/cries/cry_wooper.bin" .align 2 Cry_Quagsire:: @ 8573770 - .incbin "sound/direct_sound_samples/cry_quagsire.bin" + .incbin "sound/direct_sound_samples/cries/cry_quagsire.bin" .align 2 Cry_Espeon:: @ 85744D0 - .incbin "sound/direct_sound_samples/cry_espeon.bin" + .incbin "sound/direct_sound_samples/cries/cry_espeon.bin" .align 2 Cry_Umbreon:: @ 8575884 - .incbin "sound/direct_sound_samples/cry_umbreon.bin" + .incbin "sound/direct_sound_samples/cries/cry_umbreon.bin" .align 2 Cry_Murkrow:: @ 8576804 - .incbin "sound/direct_sound_samples/cry_murkrow.bin" + .incbin "sound/direct_sound_samples/cries/cry_murkrow.bin" .align 2 Cry_Slowking:: @ 85778C8 - .incbin "sound/direct_sound_samples/cry_slowking.bin" + .incbin "sound/direct_sound_samples/cries/cry_slowking.bin" .align 2 Cry_Misdreavus:: @ 85790AC - .incbin "sound/direct_sound_samples/cry_misdreavus.bin" + .incbin "sound/direct_sound_samples/cries/cry_misdreavus.bin" .align 2 Cry_Unown:: @ 8579C4C - .incbin "sound/direct_sound_samples/cry_unown.bin" + .incbin "sound/direct_sound_samples/cries/cry_unown.bin" .align 2 Cry_Wobbuffet:: @ 857A974 - .incbin "sound/direct_sound_samples/cry_wobbuffet.bin" + .incbin "sound/direct_sound_samples/cries/cry_wobbuffet.bin" .align 2 Cry_Girafarig:: @ 857BE10 - .incbin "sound/direct_sound_samples/cry_girafarig.bin" + .incbin "sound/direct_sound_samples/cries/cry_girafarig.bin" .align 2 Cry_Pineco:: @ 857CCC4 - .incbin "sound/direct_sound_samples/cry_pineco.bin" + .incbin "sound/direct_sound_samples/cries/cry_pineco.bin" .align 2 Cry_Forretress:: @ 857DA24 - .incbin "sound/direct_sound_samples/cry_forretress.bin" + .incbin "sound/direct_sound_samples/cries/cry_forretress.bin" .align 2 Cry_Dunsparce:: @ 857EE2C - .incbin "sound/direct_sound_samples/cry_dunsparce.bin" + .incbin "sound/direct_sound_samples/cries/cry_dunsparce.bin" .align 2 Cry_Gligar:: @ 857FE0C - .incbin "sound/direct_sound_samples/cry_gligar.bin" + .incbin "sound/direct_sound_samples/cries/cry_gligar.bin" .align 2 Cry_Steelix:: @ 8580A2C - .incbin "sound/direct_sound_samples/cry_steelix.bin" + .incbin "sound/direct_sound_samples/cries/cry_steelix.bin" .align 2 Cry_Snubbull:: @ 8583054 - .incbin "sound/direct_sound_samples/cry_snubbull.bin" + .incbin "sound/direct_sound_samples/cries/cry_snubbull.bin" .align 2 Cry_Granbull:: @ 8583EC8 - .incbin "sound/direct_sound_samples/cry_granbull.bin" + .incbin "sound/direct_sound_samples/cries/cry_granbull.bin" .align 2 Cry_Qwilfish:: @ 858566C - .incbin "sound/direct_sound_samples/cry_qwilfish.bin" + .incbin "sound/direct_sound_samples/cries/cry_qwilfish.bin" .align 2 Cry_Scizor:: @ 8586208 - .incbin "sound/direct_sound_samples/cry_scizor.bin" + .incbin "sound/direct_sound_samples/cries/cry_scizor.bin" .align 2 Cry_Shuckle:: @ 8587904 - .incbin "sound/direct_sound_samples/cry_shuckle.bin" + .incbin "sound/direct_sound_samples/cries/cry_shuckle.bin" .align 2 Cry_Heracross:: @ 8588338 - .incbin "sound/direct_sound_samples/cry_heracross.bin" + .incbin "sound/direct_sound_samples/cries/cry_heracross.bin" .align 2 Cry_Sneasel:: @ 858958C - .incbin "sound/direct_sound_samples/cry_sneasel.bin" + .incbin "sound/direct_sound_samples/cries/cry_sneasel.bin" .align 2 Cry_Teddiursa:: @ 8589EB0 - .incbin "sound/direct_sound_samples/cry_teddiursa.bin" + .incbin "sound/direct_sound_samples/cries/cry_teddiursa.bin" .align 2 Cry_Ursaring:: @ 858AF3C - .incbin "sound/direct_sound_samples/cry_ursaring.bin" + .incbin "sound/direct_sound_samples/cries/cry_ursaring.bin" .align 2 Cry_Slugma:: @ 858CD14 - .incbin "sound/direct_sound_samples/cry_slugma.bin" + .incbin "sound/direct_sound_samples/cries/cry_slugma.bin" .align 2 Cry_Magcargo:: @ 858DE2C - .incbin "sound/direct_sound_samples/cry_magcargo.bin" + .incbin "sound/direct_sound_samples/cries/cry_magcargo.bin" .align 2 Cry_Swinub:: @ 858F334 - .incbin "sound/direct_sound_samples/cry_swinub.bin" + .incbin "sound/direct_sound_samples/cries/cry_swinub.bin" .align 2 Cry_Piloswine:: @ 858FFDC - .incbin "sound/direct_sound_samples/cry_piloswine.bin" + .incbin "sound/direct_sound_samples/cries/cry_piloswine.bin" .align 2 Cry_Corsola:: @ 8590CD0 - .incbin "sound/direct_sound_samples/cry_corsola.bin" + .incbin "sound/direct_sound_samples/cries/cry_corsola.bin" .align 2 Cry_Remoraid:: @ 85919B0 - .incbin "sound/direct_sound_samples/cry_remoraid.bin" + .incbin "sound/direct_sound_samples/cries/cry_remoraid.bin" .align 2 Cry_Octillery:: @ 8592440 - .incbin "sound/direct_sound_samples/cry_octillery.bin" + .incbin "sound/direct_sound_samples/cries/cry_octillery.bin" .align 2 Cry_Delibird:: @ 8593E84 - .incbin "sound/direct_sound_samples/cry_delibird.bin" + .incbin "sound/direct_sound_samples/cries/cry_delibird.bin" .align 2 Cry_Mantine:: @ 8594EB8 - .incbin "sound/direct_sound_samples/cry_mantine.bin" + .incbin "sound/direct_sound_samples/cries/cry_mantine.bin" .align 2 Cry_Skarmory:: @ 8595E80 - .incbin "sound/direct_sound_samples/cry_skarmory.bin" + .incbin "sound/direct_sound_samples/cries/cry_skarmory.bin" .align 2 Cry_Houndour:: @ 8597688 - .incbin "sound/direct_sound_samples/cry_houndour.bin" + .incbin "sound/direct_sound_samples/cries/cry_houndour.bin" .align 2 Cry_Houndoom:: @ 8598330 - .incbin "sound/direct_sound_samples/cry_houndoom.bin" + .incbin "sound/direct_sound_samples/cries/cry_houndoom.bin" .align 2 Cry_Kingdra:: @ 85996E0 - .incbin "sound/direct_sound_samples/cry_kingdra.bin" + .incbin "sound/direct_sound_samples/cries/cry_kingdra.bin" .align 2 Cry_Phanpy:: @ 859A4B8 - .incbin "sound/direct_sound_samples/cry_phanpy.bin" + .incbin "sound/direct_sound_samples/cries/cry_phanpy.bin" .align 2 Cry_Donphan:: @ 859B008 - .incbin "sound/direct_sound_samples/cry_donphan.bin" + .incbin "sound/direct_sound_samples/cries/cry_donphan.bin" .align 2 Cry_Porygon2:: @ 859C12C - .incbin "sound/direct_sound_samples/cry_porygon2.bin" + .incbin "sound/direct_sound_samples/cries/cry_porygon2.bin" .align 2 Cry_Stantler:: @ 859D0E4 - .incbin "sound/direct_sound_samples/cry_stantler.bin" + .incbin "sound/direct_sound_samples/cries/cry_stantler.bin" .align 2 Cry_Smeargle:: @ 859E760 - .incbin "sound/direct_sound_samples/cry_smeargle.bin" + .incbin "sound/direct_sound_samples/cries/cry_smeargle.bin" .align 2 Cry_Tyrogue:: @ 859F194 - .incbin "sound/direct_sound_samples/cry_tyrogue.bin" + .incbin "sound/direct_sound_samples/cries/cry_tyrogue.bin" .align 2 Cry_Hitmontop:: @ 85A01BC - .incbin "sound/direct_sound_samples/cry_hitmontop.bin" + .incbin "sound/direct_sound_samples/cries/cry_hitmontop.bin" .align 2 Cry_Smoochum:: @ 85A0F9C - .incbin "sound/direct_sound_samples/cry_smoochum.bin" + .incbin "sound/direct_sound_samples/cries/cry_smoochum.bin" .align 2 Cry_Elekid:: @ 85A1B50 - .incbin "sound/direct_sound_samples/cry_elekid.bin" + .incbin "sound/direct_sound_samples/cries/cry_elekid.bin" .align 2 Cry_Magby:: @ 85A25DC - .incbin "sound/direct_sound_samples/cry_magby.bin" + .incbin "sound/direct_sound_samples/cries/cry_magby.bin" .align 2 Cry_Miltank:: @ 85A344C - .incbin "sound/direct_sound_samples/cry_miltank.bin" + .incbin "sound/direct_sound_samples/cries/cry_miltank.bin" .align 2 Cry_Blissey:: @ 85A4328 - .incbin "sound/direct_sound_samples/cry_blissey.bin" + .incbin "sound/direct_sound_samples/cries/cry_blissey.bin" .align 2 Cry_Raikou:: @ 85A53BC - .incbin "sound/direct_sound_samples/cry_raikou.bin" + .incbin "sound/direct_sound_samples/cries/cry_raikou.bin" .align 2 Cry_Entei:: @ 85A652C - .incbin "sound/direct_sound_samples/cry_entei.bin" + .incbin "sound/direct_sound_samples/cries/cry_entei.bin" .align 2 Cry_Suicune:: @ 85A79A0 - .incbin "sound/direct_sound_samples/cry_suicune.bin" + .incbin "sound/direct_sound_samples/cries/cry_suicune.bin" .align 2 Cry_Larvitar:: @ 85A8BE8 - .incbin "sound/direct_sound_samples/cry_larvitar.bin" + .incbin "sound/direct_sound_samples/cries/cry_larvitar.bin" .align 2 Cry_Pupitar:: @ 85A9898 - .incbin "sound/direct_sound_samples/cry_pupitar.bin" + .incbin "sound/direct_sound_samples/cries/cry_pupitar.bin" .align 2 Cry_Tyranitar:: @ 85AA108 - .incbin "sound/direct_sound_samples/cry_tyranitar.bin" + .incbin "sound/direct_sound_samples/cries/cry_tyranitar.bin" .align 2 Cry_Lugia:: @ 85AB868 - .incbin "sound/direct_sound_samples/cry_lugia.bin" + .incbin "sound/direct_sound_samples/cries/cry_lugia.bin" .align 2 Cry_HoOh:: @ 85ADE60 - .incbin "sound/direct_sound_samples/cry_ho_oh.bin" + .incbin "sound/direct_sound_samples/cries/cry_ho_oh.bin" .align 2 Cry_Celebi:: @ 85AF4F4 - .incbin "sound/direct_sound_samples/cry_celebi.bin" + .incbin "sound/direct_sound_samples/cries/cry_celebi.bin" .align 2 Cry_Kecleon:: @ 85B036C - .incbin "sound/direct_sound_samples/cry_kecleon.bin" + .incbin "sound/direct_sound_samples/cries/cry_kecleon.bin" .align 2 Cry_Roselia:: @ 85B0BCC - .incbin "sound/direct_sound_samples/cry_roselia.bin" + .incbin "sound/direct_sound_samples/cries/cry_roselia.bin" .align 2 Cry_Torkoal:: @ 85B168C - .incbin "sound/direct_sound_samples/cry_torkoal.bin" + .incbin "sound/direct_sound_samples/cries/cry_torkoal.bin" .align 2 Cry_Electrike:: @ 85B1FD8 - .incbin "sound/direct_sound_samples/cry_electrike.bin" + .incbin "sound/direct_sound_samples/cries/cry_electrike.bin" .align 2 Cry_Manectric:: @ 85B2C34 - .incbin "sound/direct_sound_samples/cry_manectric.bin" + .incbin "sound/direct_sound_samples/cries/cry_manectric.bin" .align 2 Cry_Duskull:: @ 85B413C - .incbin "sound/direct_sound_samples/cry_duskull.bin" + .incbin "sound/direct_sound_samples/cries/cry_duskull.bin" .align 2 Cry_Latias:: @ 85B4BD4 - .incbin "sound/direct_sound_samples/cry_latias.bin" + .incbin "sound/direct_sound_samples/cries/cry_latias.bin" .align 2 Cry_Wynaut:: @ 85B5804 - .incbin "sound/direct_sound_samples/cry_wynaut.bin" + .incbin "sound/direct_sound_samples/cries/cry_wynaut.bin" .align 2 Cry_Seviper:: @ 85B65E4 - .incbin "sound/direct_sound_samples/cry_seviper.bin" + .incbin "sound/direct_sound_samples/cries/cry_seviper.bin" .align 2 Cry_Sharpedo:: @ 85B7184 - .incbin "sound/direct_sound_samples/cry_sharpedo.bin" + .incbin "sound/direct_sound_samples/cries/cry_sharpedo.bin" .align 2 Cry_Zangoose:: @ 85B8890 - .incbin "sound/direct_sound_samples/cry_zangoose.bin" + .incbin "sound/direct_sound_samples/cries/cry_zangoose.bin" .align 2 Cry_Azurill:: @ 85B9220 - .incbin "sound/direct_sound_samples/cry_azurill.bin" + .incbin "sound/direct_sound_samples/cries/cry_azurill.bin" .align 2 Cry_Swablu:: @ 85B9C88 - .incbin "sound/direct_sound_samples/cry_swablu.bin" + .incbin "sound/direct_sound_samples/cries/cry_swablu.bin" .align 2 Cry_Altaria:: @ 85BA220 - .incbin "sound/direct_sound_samples/cry_altaria.bin" + .incbin "sound/direct_sound_samples/cries/cry_altaria.bin" .align 2 Cry_Unused265:: @ 85BAD3C - .incbin "sound/direct_sound_samples/cry_unused_265.bin" + .incbin "sound/direct_sound_samples/cries/cry_unused_265.bin" .align 2 Cry_Taillow:: @ 85BB690 - .incbin "sound/direct_sound_samples/cry_taillow.bin" + .incbin "sound/direct_sound_samples/cries/cry_taillow.bin" .align 2 Cry_Swellow:: @ 85BBC90 - .incbin "sound/direct_sound_samples/cry_swellow.bin" + .incbin "sound/direct_sound_samples/cries/cry_swellow.bin" .align 2 Cry_Unused268:: @ 85BC594 - .incbin "sound/direct_sound_samples/cry_unused_268.bin" + .incbin "sound/direct_sound_samples/cries/cry_unused_268.bin" .align 2 Cry_Spinda:: @ 85BD744 - .incbin "sound/direct_sound_samples/cry_spinda.bin" + .incbin "sound/direct_sound_samples/cries/cry_spinda.bin" .align 2 Cry_Torchic:: @ 85BE3B0 - .incbin "sound/direct_sound_samples/cry_torchic.bin" + .incbin "sound/direct_sound_samples/cries/cry_torchic.bin" .align 2 Cry_Combusken:: @ 85BED58 - .incbin "sound/direct_sound_samples/cry_combusken.bin" + .incbin "sound/direct_sound_samples/cries/cry_combusken.bin" .align 2 Cry_Blaziken:: @ 85C0A2C - .incbin "sound/direct_sound_samples/cry_blaziken.bin" + .incbin "sound/direct_sound_samples/cries/cry_blaziken.bin" .align 2 Cry_Treecko:: @ 85C29AC - .incbin "sound/direct_sound_samples/cry_treecko.bin" + .incbin "sound/direct_sound_samples/cries/cry_treecko.bin" .align 2 Cry_Grovyle:: @ 85C3554 - .incbin "sound/direct_sound_samples/cry_grovyle.bin" + .incbin "sound/direct_sound_samples/cries/cry_grovyle.bin" .align 2 Cry_Sceptile:: @ 85C49C8 - .incbin "sound/direct_sound_samples/cry_sceptile.bin" + .incbin "sound/direct_sound_samples/cries/cry_sceptile.bin" .align 2 Cry_Mudkip:: @ 85C63E4 - .incbin "sound/direct_sound_samples/cry_mudkip.bin" + .incbin "sound/direct_sound_samples/cries/cry_mudkip.bin" .align 2 Cry_Marshtomp:: @ 85C6B68 - .incbin "sound/direct_sound_samples/cry_marshtomp.bin" + .incbin "sound/direct_sound_samples/cries/cry_marshtomp.bin" .align 2 Cry_Swampert:: @ 85C7C6C - .incbin "sound/direct_sound_samples/cry_swampert.bin" + .incbin "sound/direct_sound_samples/cries/cry_swampert.bin" .align 2 Cry_Pelipper:: @ 85C92EC - .incbin "sound/direct_sound_samples/cry_pelipper.bin" + .incbin "sound/direct_sound_samples/cries/cry_pelipper.bin" .align 2 Cry_Wingull:: @ 85C9EB4 - .incbin "sound/direct_sound_samples/cry_wingull.bin" + .incbin "sound/direct_sound_samples/cries/cry_wingull.bin" .align 2 Cry_Banette:: @ 85CAAF4 - .incbin "sound/direct_sound_samples/cry_banette.bin" + .incbin "sound/direct_sound_samples/cries/cry_banette.bin" .align 2 Cry_Shuppet:: @ 85CB79C - .incbin "sound/direct_sound_samples/cry_shuppet.bin" + .incbin "sound/direct_sound_samples/cries/cry_shuppet.bin" .align 2 Cry_Lotad:: @ 85CBFDC - .incbin "sound/direct_sound_samples/cry_lotad.bin" + .incbin "sound/direct_sound_samples/cries/cry_lotad.bin" .align 2 Cry_Lombre:: @ 85CC444 - .incbin "sound/direct_sound_samples/cry_lombre.bin" + .incbin "sound/direct_sound_samples/cries/cry_lombre.bin" .align 2 Cry_Ludicolo:: @ 85CD2D8 - .incbin "sound/direct_sound_samples/cry_ludicolo.bin" + .incbin "sound/direct_sound_samples/cries/cry_ludicolo.bin" .align 2 Cry_Seedot:: @ 85CE3A8 - .incbin "sound/direct_sound_samples/cry_seedot.bin" + .incbin "sound/direct_sound_samples/cries/cry_seedot.bin" .align 2 Cry_Nuzleaf:: @ 85CEBD4 - .incbin "sound/direct_sound_samples/cry_nuzleaf.bin" + .incbin "sound/direct_sound_samples/cries/cry_nuzleaf.bin" .align 2 Cry_Shiftry:: @ 85CF73C - .incbin "sound/direct_sound_samples/cry_shiftry.bin" + .incbin "sound/direct_sound_samples/cries/cry_shiftry.bin" .align 2 Cry_Carvanha:: @ 85D0B00 - .incbin "sound/direct_sound_samples/cry_carvanha.bin" + .incbin "sound/direct_sound_samples/cries/cry_carvanha.bin" .align 2 Cry_Wurmple:: @ 85D1514 - .incbin "sound/direct_sound_samples/cry_wurmple.bin" + .incbin "sound/direct_sound_samples/cries/cry_wurmple.bin" .align 2 Cry_Silcoon:: @ 85D1DE0 - .incbin "sound/direct_sound_samples/cry_silcoon.bin" + .incbin "sound/direct_sound_samples/cries/cry_silcoon.bin" .align 2 Cry_Beautifly:: @ 85D2E0C - .incbin "sound/direct_sound_samples/cry_beautifly.bin" + .incbin "sound/direct_sound_samples/cries/cry_beautifly.bin" .align 2 Cry_Cascoon:: @ 85D3644 - .incbin "sound/direct_sound_samples/cry_cascoon.bin" + .incbin "sound/direct_sound_samples/cries/cry_cascoon.bin" .align 2 Cry_Dustox:: @ 85D4688 - .incbin "sound/direct_sound_samples/cry_dustox.bin" + .incbin "sound/direct_sound_samples/cries/cry_dustox.bin" .align 2 Cry_Ralts:: @ 85D5334 - .incbin "sound/direct_sound_samples/cry_ralts.bin" + .incbin "sound/direct_sound_samples/cries/cry_ralts.bin" .align 2 Cry_Kirlia:: @ 85D5D50 - .incbin "sound/direct_sound_samples/cry_kirlia.bin" + .incbin "sound/direct_sound_samples/cries/cry_kirlia.bin" .align 2 Cry_Gardevoir:: @ 85D6980 - .incbin "sound/direct_sound_samples/cry_gardevoir.bin" + .incbin "sound/direct_sound_samples/cries/cry_gardevoir.bin" .align 2 Cry_Slakoth:: @ 85D81E4 - .incbin "sound/direct_sound_samples/cry_slakoth.bin" + .incbin "sound/direct_sound_samples/cries/cry_slakoth.bin" .align 2 Cry_Vigoroth:: @ 85D8A68 - .incbin "sound/direct_sound_samples/cry_vigoroth.bin" + .incbin "sound/direct_sound_samples/cries/cry_vigoroth.bin" .align 2 Cry_Slaking:: @ 85D98C0 - .incbin "sound/direct_sound_samples/cry_slaking.bin" + .incbin "sound/direct_sound_samples/cries/cry_slaking.bin" .align 2 Cry_Nincada:: @ 85DA2AC - .incbin "sound/direct_sound_samples/cry_nincada.bin" + .incbin "sound/direct_sound_samples/cries/cry_nincada.bin" .align 2 Cry_Ninjask:: @ 85DA91C - .incbin "sound/direct_sound_samples/cry_ninjask.bin" + .incbin "sound/direct_sound_samples/cries/cry_ninjask.bin" .align 2 Cry_Shedinja:: @ 85DB544 - .incbin "sound/direct_sound_samples/cry_shedinja.bin" + .incbin "sound/direct_sound_samples/cries/cry_shedinja.bin" .align 2 Cry_Makuhita:: @ 85DBCFC - .incbin "sound/direct_sound_samples/cry_makuhita.bin" + .incbin "sound/direct_sound_samples/cries/cry_makuhita.bin" .align 2 Cry_Hariyama:: @ 85DC458 - .incbin "sound/direct_sound_samples/cry_hariyama.bin" + .incbin "sound/direct_sound_samples/cries/cry_hariyama.bin" .align 2 Cry_Nosepass:: @ 85DD510 - .incbin "sound/direct_sound_samples/cry_nosepass.bin" + .incbin "sound/direct_sound_samples/cries/cry_nosepass.bin" .align 2 Cry_Glalie:: @ 85DE274 - .incbin "sound/direct_sound_samples/cry_glalie.bin" + .incbin "sound/direct_sound_samples/cries/cry_glalie.bin" .align 2 Cry_Plusle:: @ 85DF758 - .incbin "sound/direct_sound_samples/cry_plusle.bin" + .incbin "sound/direct_sound_samples/cries/cry_plusle.bin" .align 2 Cry_Minun:: @ 85E0054 - .incbin "sound/direct_sound_samples/cry_minun.bin" + .incbin "sound/direct_sound_samples/cries/cry_minun.bin" .align 2 Cry_Surskit:: @ 85E105C - .incbin "sound/direct_sound_samples/cry_surskit.bin" + .incbin "sound/direct_sound_samples/cries/cry_surskit.bin" .align 2 Cry_Masquerain:: @ 85E1ADC - .incbin "sound/direct_sound_samples/cry_masquerain.bin" + .incbin "sound/direct_sound_samples/cries/cry_masquerain.bin" .align 2 Cry_Skitty:: @ 85E2E90 - .incbin "sound/direct_sound_samples/cry_skitty.bin" + .incbin "sound/direct_sound_samples/cries/cry_skitty.bin" .align 2 Cry_Delcatty:: @ 85E35A4 - .incbin "sound/direct_sound_samples/cry_delcatty.bin" + .incbin "sound/direct_sound_samples/cries/cry_delcatty.bin" .align 2 Cry_Gulpin:: @ 85E4ABC - .incbin "sound/direct_sound_samples/cry_gulpin.bin" + .incbin "sound/direct_sound_samples/cries/cry_gulpin.bin" .align 2 Cry_Swalot:: @ 85E52C0 - .incbin "sound/direct_sound_samples/cry_swalot.bin" + .incbin "sound/direct_sound_samples/cries/cry_swalot.bin" .align 2 Cry_Numel:: @ 85E6420 - .incbin "sound/direct_sound_samples/cry_numel.bin" + .incbin "sound/direct_sound_samples/cries/cry_numel.bin" .align 2 Cry_Camerupt:: @ 85E6D6C - .incbin "sound/direct_sound_samples/cry_camerupt.bin" + .incbin "sound/direct_sound_samples/cries/cry_camerupt.bin" .align 2 Cry_Barboach:: @ 85E848C - .incbin "sound/direct_sound_samples/cry_barboach.bin" + .incbin "sound/direct_sound_samples/cries/cry_barboach.bin" .align 2 Cry_Whiscash:: @ 85E8DC8 - .incbin "sound/direct_sound_samples/cry_whiscash.bin" + .incbin "sound/direct_sound_samples/cries/cry_whiscash.bin" .align 2 Cry_Corphish:: @ 85E9EC4 - .incbin "sound/direct_sound_samples/cry_corphish.bin" + .incbin "sound/direct_sound_samples/cries/cry_corphish.bin" .align 2 Cry_Crawdaunt:: @ 85EAAC8 - .incbin "sound/direct_sound_samples/cry_crawdaunt.bin" + .incbin "sound/direct_sound_samples/cries/cry_crawdaunt.bin" .align 2 Cry_Spoink:: @ 85EC380 - .incbin "sound/direct_sound_samples/cry_spoink.bin" + .incbin "sound/direct_sound_samples/cries/cry_spoink.bin" .align 2 Cry_Grumpig:: @ 85ECAC0 - .incbin "sound/direct_sound_samples/cry_grumpig.bin" + .incbin "sound/direct_sound_samples/cries/cry_grumpig.bin" .align 2 Cry_Trapinch:: @ 85ED760 - .incbin "sound/direct_sound_samples/cry_trapinch.bin" + .incbin "sound/direct_sound_samples/cries/cry_trapinch.bin" .align 2 Cry_Vibrava:: @ 85EE184 - .incbin "sound/direct_sound_samples/cry_vibrava.bin" + .incbin "sound/direct_sound_samples/cries/cry_vibrava.bin" .align 2 Cry_Flygon:: @ 85EEF88 - .incbin "sound/direct_sound_samples/cry_flygon.bin" + .incbin "sound/direct_sound_samples/cries/cry_flygon.bin" .align 2 Cry_Cacnea:: @ 85F0990 - .incbin "sound/direct_sound_samples/cry_cacnea.bin" + .incbin "sound/direct_sound_samples/cries/cry_cacnea.bin" .align 2 Cry_Cacturne:: @ 85F1280 - .incbin "sound/direct_sound_samples/cry_cacturne.bin" + .incbin "sound/direct_sound_samples/cries/cry_cacturne.bin" .align 2 Cry_Baltoy:: @ 85F2930 - .incbin "sound/direct_sound_samples/cry_baltoy.bin" + .incbin "sound/direct_sound_samples/cries/cry_baltoy.bin" .align 2 Cry_Claydol:: @ 85F35B4 - .incbin "sound/direct_sound_samples/cry_claydol.bin" + .incbin "sound/direct_sound_samples/cries/cry_claydol.bin" .align 2 Cry_Lunatone:: @ 85F4914 - .incbin "sound/direct_sound_samples/cry_lunatone.bin" + .incbin "sound/direct_sound_samples/cries/cry_lunatone.bin" .align 2 Cry_Solrock:: @ 85F6110 - .incbin "sound/direct_sound_samples/cry_solrock.bin" + .incbin "sound/direct_sound_samples/cries/cry_solrock.bin" .align 2 Cry_Feebas:: @ 85F713C - .incbin "sound/direct_sound_samples/cry_feebas.bin" + .incbin "sound/direct_sound_samples/cries/cry_feebas.bin" .align 2 Cry_Milotic:: @ 85F7910 - .incbin "sound/direct_sound_samples/cry_milotic.bin" + .incbin "sound/direct_sound_samples/cries/cry_milotic.bin" .align 2 Cry_Absol:: @ 85FA054 - .incbin "sound/direct_sound_samples/cry_absol.bin" + .incbin "sound/direct_sound_samples/cries/cry_absol.bin" .align 2 Cry_Meditite:: @ 85FAAD0 - .incbin "sound/direct_sound_samples/cry_meditite.bin" + .incbin "sound/direct_sound_samples/cries/cry_meditite.bin" .align 2 Cry_Medicham:: @ 85FB2F0 - .incbin "sound/direct_sound_samples/cry_medicham.bin" + .incbin "sound/direct_sound_samples/cries/cry_medicham.bin" .align 2 Cry_Spheal:: @ 85FC374 - .incbin "sound/direct_sound_samples/cry_spheal.bin" + .incbin "sound/direct_sound_samples/cries/cry_spheal.bin" .align 2 Cry_Sealeo:: @ 85FC928 - .incbin "sound/direct_sound_samples/cry_sealeo.bin" + .incbin "sound/direct_sound_samples/cries/cry_sealeo.bin" .align 2 Cry_Walrein:: @ 85FD500 - .incbin "sound/direct_sound_samples/cry_walrein.bin" + .incbin "sound/direct_sound_samples/cries/cry_walrein.bin" .align 2 Cry_Clamperl:: @ 85FF94C - .incbin "sound/direct_sound_samples/cry_clamperl.bin" + .incbin "sound/direct_sound_samples/cries/cry_clamperl.bin" .align 2 Cry_Huntail:: @ 8600B9C - .incbin "sound/direct_sound_samples/cry_huntail.bin" + .incbin "sound/direct_sound_samples/cries/cry_huntail.bin" .align 2 Cry_Gorebyss:: @ 8601B84 - .incbin "sound/direct_sound_samples/cry_gorebyss.bin" + .incbin "sound/direct_sound_samples/cries/cry_gorebyss.bin" .align 2 Cry_Lileep:: @ 86031F0 - .incbin "sound/direct_sound_samples/cry_lileep.bin" + .incbin "sound/direct_sound_samples/cries/cry_lileep.bin" .align 2 Cry_Cradily:: @ 8603B98 - .incbin "sound/direct_sound_samples/cry_cradily.bin" + .incbin "sound/direct_sound_samples/cries/cry_cradily.bin" .align 2 Cry_Anorith:: @ 86058C8 - .incbin "sound/direct_sound_samples/cry_anorith.bin" + .incbin "sound/direct_sound_samples/cries/cry_anorith.bin" .align 2 Cry_Armaldo:: @ 8606480 - .incbin "sound/direct_sound_samples/cry_armaldo.bin" + .incbin "sound/direct_sound_samples/cries/cry_armaldo.bin" .align 2 Cry_Beldum:: @ 8607B54 - .incbin "sound/direct_sound_samples/cry_beldum.bin" + .incbin "sound/direct_sound_samples/cries/cry_beldum.bin" .align 2 Cry_Metang:: @ 86084F4 - .incbin "sound/direct_sound_samples/cry_metang.bin" + .incbin "sound/direct_sound_samples/cries/cry_metang.bin" .align 2 Cry_Metagross:: @ 86097C8 - .incbin "sound/direct_sound_samples/cry_metagross.bin" + .incbin "sound/direct_sound_samples/cries/cry_metagross.bin" .align 2 Cry_Bagon:: @ 860BF40 - .incbin "sound/direct_sound_samples/cry_bagon.bin" + .incbin "sound/direct_sound_samples/cries/cry_bagon.bin" .align 2 Cry_Shelgon:: @ 860C714 - .incbin "sound/direct_sound_samples/cry_shelgon.bin" + .incbin "sound/direct_sound_samples/cries/cry_shelgon.bin" .align 2 Cry_Regirock:: @ 860DB1C - .incbin "sound/direct_sound_samples/cry_regirock.bin" + .incbin "sound/direct_sound_samples/cries/cry_regirock.bin" .align 2 Cry_Regice:: @ 860FAF8 - .incbin "sound/direct_sound_samples/cry_regice.bin" + .incbin "sound/direct_sound_samples/cries/cry_regice.bin" .align 2 Cry_Registeel:: @ 8611AF8 - .incbin "sound/direct_sound_samples/cry_registeel.bin" + .incbin "sound/direct_sound_samples/cries/cry_registeel.bin" .align 2 Cry_Castform:: @ 86131FC - .incbin "sound/direct_sound_samples/cry_castform.bin" + .incbin "sound/direct_sound_samples/cries/cry_castform.bin" .align 2 Cry_Volbeat:: @ 8613E94 - .incbin "sound/direct_sound_samples/cry_volbeat.bin" + .incbin "sound/direct_sound_samples/cries/cry_volbeat.bin" .align 2 Cry_Illumise:: @ 8614A1C - .incbin "sound/direct_sound_samples/cry_illumise.bin" + .incbin "sound/direct_sound_samples/cries/cry_illumise.bin" .align 2 Cry_Poochyena:: @ 8615B34 - .incbin "sound/direct_sound_samples/cry_poochyena.bin" + .incbin "sound/direct_sound_samples/cries/cry_poochyena.bin" .align 2 Cry_Mightyena:: @ 861647C - .incbin "sound/direct_sound_samples/cry_mightyena.bin" + .incbin "sound/direct_sound_samples/cries/cry_mightyena.bin" .align 2 Cry_Dusclops:: @ 8617808 - .incbin "sound/direct_sound_samples/cry_dusclops.bin" + .incbin "sound/direct_sound_samples/cries/cry_dusclops.bin" .align 2 Cry_Sableye:: @ 86185C0 - .incbin "sound/direct_sound_samples/cry_sableye.bin" + .incbin "sound/direct_sound_samples/cries/cry_sableye.bin" .align 2 Cry_Mawile:: @ 8619164 - .incbin "sound/direct_sound_samples/cry_mawile.bin" + .incbin "sound/direct_sound_samples/cries/cry_mawile.bin" .align 2 Cry_Aron:: @ 8619CE4 - .incbin "sound/direct_sound_samples/cry_aron.bin" + .incbin "sound/direct_sound_samples/cries/cry_aron.bin" .align 2 Cry_Lairon:: @ 861A610 - .incbin "sound/direct_sound_samples/cry_lairon.bin" + .incbin "sound/direct_sound_samples/cries/cry_lairon.bin" .align 2 Cry_Aggron:: @ 861BAE8 - .incbin "sound/direct_sound_samples/cry_aggron.bin" + .incbin "sound/direct_sound_samples/cries/cry_aggron.bin" .align 2 Cry_Relicanth:: @ 861D48C - .incbin "sound/direct_sound_samples/cry_relicanth.bin" + .incbin "sound/direct_sound_samples/cries/cry_relicanth.bin" .align 2 Cry_Luvdisc:: @ 861E8BC - .incbin "sound/direct_sound_samples/cry_luvdisc.bin" + .incbin "sound/direct_sound_samples/cries/cry_luvdisc.bin" .align 2 Cry_Groudon:: @ 861ED98 - .incbin "sound/direct_sound_samples/cry_groudon.bin" + .incbin "sound/direct_sound_samples/cries/cry_groudon.bin" .align 2 Cry_Kyogre:: @ 86212A4 - .incbin "sound/direct_sound_samples/cry_kyogre.bin" + .incbin "sound/direct_sound_samples/cries/cry_kyogre.bin" .align 2 Cry_Rayquaza:: @ 862365C - .incbin "sound/direct_sound_samples/cry_rayquaza.bin" + .incbin "sound/direct_sound_samples/cries/cry_rayquaza.bin" .align 2 Cry_Salamence:: @ 8625388 - .incbin "sound/direct_sound_samples/cry_salamence.bin" + .incbin "sound/direct_sound_samples/cries/cry_salamence.bin" .align 2 Cry_Breloom:: @ 8626CA4 - .incbin "sound/direct_sound_samples/cry_breloom.bin" + .incbin "sound/direct_sound_samples/cries/cry_breloom.bin" .align 2 Cry_Shroomish:: @ 8627964 - .incbin "sound/direct_sound_samples/cry_shroomish.bin" + .incbin "sound/direct_sound_samples/cries/cry_shroomish.bin" .align 2 Cry_Linoone:: @ 862823C - .incbin "sound/direct_sound_samples/cry_linoone.bin" + .incbin "sound/direct_sound_samples/cries/cry_linoone.bin" .align 2 Cry_Tropius:: @ 862A0D8 - .incbin "sound/direct_sound_samples/cry_tropius.bin" + .incbin "sound/direct_sound_samples/cries/cry_tropius.bin" .align 2 Cry_Wailmer:: @ 862C19C - .incbin "sound/direct_sound_samples/cry_wailmer.bin" + .incbin "sound/direct_sound_samples/cries/cry_wailmer.bin" .align 2 Cry_Zigzagoon:: @ 862DDFC - .incbin "sound/direct_sound_samples/cry_zigzagoon.bin" + .incbin "sound/direct_sound_samples/cries/cry_zigzagoon.bin" .align 2 Cry_Exploud:: @ 862E98C - .incbin "sound/direct_sound_samples/cry_exploud.bin" + .incbin "sound/direct_sound_samples/cries/cry_exploud.bin" .align 2 Cry_Loudred:: @ 86305D4 - .incbin "sound/direct_sound_samples/cry_loudred.bin" + .incbin "sound/direct_sound_samples/cries/cry_loudred.bin" .align 2 Cry_Wailord:: @ 86312FC - .incbin "sound/direct_sound_samples/cry_wailord.bin" + .incbin "sound/direct_sound_samples/cries/cry_wailord.bin" .align 2 Cry_Whismur:: @ 8633D0C - .incbin "sound/direct_sound_samples/cry_whismur.bin" + .incbin "sound/direct_sound_samples/cries/cry_whismur.bin" .align 2 Cry_Snorunt:: @ 8634530 - .incbin "sound/direct_sound_samples/cry_snorunt.bin" + .incbin "sound/direct_sound_samples/cries/cry_snorunt.bin" .align 2 Cry_Latios:: @ 8635638 - .incbin "sound/direct_sound_samples/cry_latios.bin" + .incbin "sound/direct_sound_samples/cries/cry_latios.bin" .align 2 Cry_Jirachi:: @ 8636C30 - .incbin "sound/direct_sound_samples/cry_jirachi.bin" + .incbin "sound/direct_sound_samples/cries/cry_jirachi.bin" .align 2 Cry_Deoxys:: @ 86379B4 - .incbin "sound/direct_sound_samples/cry_deoxys.bin" + .incbin "sound/direct_sound_samples/cries/cry_deoxys.bin" .align 2 Cry_Chimecho:: @ 8638E88 - .incbin "sound/direct_sound_samples/cry_chimecho.bin" + .incbin "sound/direct_sound_samples/cries/cry_chimecho.bin" .align 2 DirectSoundWaveData_8639898:: @ 8639898 diff --git a/sound/direct_sound_samples/cries/cry_abra.aif b/sound/direct_sound_samples/cries/cry_abra.aif new file mode 100644 index 000000000..7df4446db Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_abra.aif differ diff --git a/sound/direct_sound_samples/cries/cry_absol.aif b/sound/direct_sound_samples/cries/cry_absol.aif new file mode 100644 index 000000000..884ab22b3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_absol.aif differ diff --git a/sound/direct_sound_samples/cries/cry_aerodactyl.aif b/sound/direct_sound_samples/cries/cry_aerodactyl.aif new file mode 100644 index 000000000..c0e40f6d1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_aerodactyl.aif differ diff --git a/sound/direct_sound_samples/cries/cry_aggron.aif b/sound/direct_sound_samples/cries/cry_aggron.aif new file mode 100644 index 000000000..b89ea1222 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_aggron.aif differ diff --git a/sound/direct_sound_samples/cries/cry_aipom.aif b/sound/direct_sound_samples/cries/cry_aipom.aif new file mode 100644 index 000000000..5ca276de2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_aipom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_alakazam.aif b/sound/direct_sound_samples/cries/cry_alakazam.aif new file mode 100644 index 000000000..920e2ff94 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_alakazam.aif differ diff --git a/sound/direct_sound_samples/cries/cry_altaria.aif b/sound/direct_sound_samples/cries/cry_altaria.aif new file mode 100644 index 000000000..3e8e35e8e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_altaria.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ampharos.aif b/sound/direct_sound_samples/cries/cry_ampharos.aif new file mode 100644 index 000000000..4f6e255a0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ampharos.aif differ diff --git a/sound/direct_sound_samples/cries/cry_anorith.aif b/sound/direct_sound_samples/cries/cry_anorith.aif new file mode 100644 index 000000000..96e87e919 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_anorith.aif differ diff --git a/sound/direct_sound_samples/cries/cry_arbok.aif b/sound/direct_sound_samples/cries/cry_arbok.aif new file mode 100644 index 000000000..6ccace9f9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_arbok.aif differ diff --git a/sound/direct_sound_samples/cries/cry_arcanine.aif b/sound/direct_sound_samples/cries/cry_arcanine.aif new file mode 100644 index 000000000..61d802153 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_arcanine.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ariados.aif b/sound/direct_sound_samples/cries/cry_ariados.aif new file mode 100644 index 000000000..1748624fb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ariados.aif differ diff --git a/sound/direct_sound_samples/cries/cry_armaldo.aif b/sound/direct_sound_samples/cries/cry_armaldo.aif new file mode 100644 index 000000000..756bf0842 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_armaldo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_aron.aif b/sound/direct_sound_samples/cries/cry_aron.aif new file mode 100644 index 000000000..cce70b73b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_aron.aif differ diff --git a/sound/direct_sound_samples/cries/cry_articuno.aif b/sound/direct_sound_samples/cries/cry_articuno.aif new file mode 100644 index 000000000..4f237dd0f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_articuno.aif differ diff --git a/sound/direct_sound_samples/cries/cry_azumarill.aif b/sound/direct_sound_samples/cries/cry_azumarill.aif new file mode 100644 index 000000000..18411f93c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_azumarill.aif differ diff --git a/sound/direct_sound_samples/cries/cry_azurill.aif b/sound/direct_sound_samples/cries/cry_azurill.aif new file mode 100644 index 000000000..7f651c3d3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_azurill.aif differ diff --git a/sound/direct_sound_samples/cries/cry_bagon.aif b/sound/direct_sound_samples/cries/cry_bagon.aif new file mode 100644 index 000000000..3843fb9f4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_bagon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_baltoy.aif b/sound/direct_sound_samples/cries/cry_baltoy.aif new file mode 100644 index 000000000..25e1a708a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_baltoy.aif differ diff --git a/sound/direct_sound_samples/cries/cry_banette.aif b/sound/direct_sound_samples/cries/cry_banette.aif new file mode 100644 index 000000000..23713f1b5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_banette.aif differ diff --git a/sound/direct_sound_samples/cries/cry_barboach.aif b/sound/direct_sound_samples/cries/cry_barboach.aif new file mode 100644 index 000000000..4b9228259 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_barboach.aif differ diff --git a/sound/direct_sound_samples/cries/cry_bayleef.aif b/sound/direct_sound_samples/cries/cry_bayleef.aif new file mode 100644 index 000000000..8cef22df3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_bayleef.aif differ diff --git a/sound/direct_sound_samples/cries/cry_beautifly.aif b/sound/direct_sound_samples/cries/cry_beautifly.aif new file mode 100644 index 000000000..0924b6c55 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_beautifly.aif differ diff --git a/sound/direct_sound_samples/cries/cry_beedrill.aif b/sound/direct_sound_samples/cries/cry_beedrill.aif new file mode 100644 index 000000000..00d0bc96c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_beedrill.aif differ diff --git a/sound/direct_sound_samples/cries/cry_beldum.aif b/sound/direct_sound_samples/cries/cry_beldum.aif new file mode 100644 index 000000000..76435a6a8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_beldum.aif differ diff --git a/sound/direct_sound_samples/cries/cry_bellossom.aif b/sound/direct_sound_samples/cries/cry_bellossom.aif new file mode 100644 index 000000000..86580df65 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_bellossom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_bellsprout.aif b/sound/direct_sound_samples/cries/cry_bellsprout.aif new file mode 100644 index 000000000..cfdd7aed2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_bellsprout.aif differ diff --git a/sound/direct_sound_samples/cries/cry_blastoise.aif b/sound/direct_sound_samples/cries/cry_blastoise.aif new file mode 100644 index 000000000..76dac2bcc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_blastoise.aif differ diff --git a/sound/direct_sound_samples/cries/cry_blaziken.aif b/sound/direct_sound_samples/cries/cry_blaziken.aif new file mode 100644 index 000000000..83e5ccf23 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_blaziken.aif differ diff --git a/sound/direct_sound_samples/cries/cry_blissey.aif b/sound/direct_sound_samples/cries/cry_blissey.aif new file mode 100644 index 000000000..897eb3d69 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_blissey.aif differ diff --git a/sound/direct_sound_samples/cries/cry_breloom.aif b/sound/direct_sound_samples/cries/cry_breloom.aif new file mode 100644 index 000000000..ea3f1bb66 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_breloom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_bulbasaur.aif b/sound/direct_sound_samples/cries/cry_bulbasaur.aif new file mode 100644 index 000000000..040fb1df7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_bulbasaur.aif differ diff --git a/sound/direct_sound_samples/cries/cry_butterfree.aif b/sound/direct_sound_samples/cries/cry_butterfree.aif new file mode 100644 index 000000000..f27616395 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_butterfree.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cacnea.aif b/sound/direct_sound_samples/cries/cry_cacnea.aif new file mode 100644 index 000000000..4fd5acd36 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cacnea.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cacturne.aif b/sound/direct_sound_samples/cries/cry_cacturne.aif new file mode 100644 index 000000000..d9fb8fda8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cacturne.aif differ diff --git a/sound/direct_sound_samples/cries/cry_camerupt.aif b/sound/direct_sound_samples/cries/cry_camerupt.aif new file mode 100644 index 000000000..325df1220 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_camerupt.aif differ diff --git a/sound/direct_sound_samples/cries/cry_carvanha.aif b/sound/direct_sound_samples/cries/cry_carvanha.aif new file mode 100644 index 000000000..c7cdedf91 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_carvanha.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cascoon.aif b/sound/direct_sound_samples/cries/cry_cascoon.aif new file mode 100644 index 000000000..17eef0ee9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cascoon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_castform.aif b/sound/direct_sound_samples/cries/cry_castform.aif new file mode 100644 index 000000000..c10745640 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_castform.aif differ diff --git a/sound/direct_sound_samples/cries/cry_caterpie.aif b/sound/direct_sound_samples/cries/cry_caterpie.aif new file mode 100644 index 000000000..b0b246b4f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_caterpie.aif differ diff --git a/sound/direct_sound_samples/cries/cry_celebi.aif b/sound/direct_sound_samples/cries/cry_celebi.aif new file mode 100644 index 000000000..9f9f3ea39 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_celebi.aif differ diff --git a/sound/direct_sound_samples/cries/cry_chansey.aif b/sound/direct_sound_samples/cries/cry_chansey.aif new file mode 100644 index 000000000..d764c86ce Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_chansey.aif differ diff --git a/sound/direct_sound_samples/cries/cry_charizard.aif b/sound/direct_sound_samples/cries/cry_charizard.aif new file mode 100644 index 000000000..48321b792 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_charizard.aif differ diff --git a/sound/direct_sound_samples/cries/cry_charmander.aif b/sound/direct_sound_samples/cries/cry_charmander.aif new file mode 100644 index 000000000..d72c0f9e0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_charmander.aif differ diff --git a/sound/direct_sound_samples/cries/cry_charmeleon.aif b/sound/direct_sound_samples/cries/cry_charmeleon.aif new file mode 100644 index 000000000..8e84af0d8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_charmeleon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_chikorita.aif b/sound/direct_sound_samples/cries/cry_chikorita.aif new file mode 100644 index 000000000..67ceafdc3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_chikorita.aif differ diff --git a/sound/direct_sound_samples/cries/cry_chimecho.aif b/sound/direct_sound_samples/cries/cry_chimecho.aif new file mode 100644 index 000000000..87ee2faee Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_chimecho.aif differ diff --git a/sound/direct_sound_samples/cries/cry_chinchou.aif b/sound/direct_sound_samples/cries/cry_chinchou.aif new file mode 100644 index 000000000..356475678 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_chinchou.aif differ diff --git a/sound/direct_sound_samples/cries/cry_clamperl.aif b/sound/direct_sound_samples/cries/cry_clamperl.aif new file mode 100644 index 000000000..7250bd703 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_clamperl.aif differ diff --git a/sound/direct_sound_samples/cries/cry_claydol.aif b/sound/direct_sound_samples/cries/cry_claydol.aif new file mode 100644 index 000000000..b89772021 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_claydol.aif differ diff --git a/sound/direct_sound_samples/cries/cry_clefable.aif b/sound/direct_sound_samples/cries/cry_clefable.aif new file mode 100644 index 000000000..9c2d8c664 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_clefable.aif differ diff --git a/sound/direct_sound_samples/cries/cry_clefairy.aif b/sound/direct_sound_samples/cries/cry_clefairy.aif new file mode 100644 index 000000000..c370c4a9b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_clefairy.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cleffa.aif b/sound/direct_sound_samples/cries/cry_cleffa.aif new file mode 100644 index 000000000..b27cdeca9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cleffa.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cloyster.aif b/sound/direct_sound_samples/cries/cry_cloyster.aif new file mode 100644 index 000000000..b406deab0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cloyster.aif differ diff --git a/sound/direct_sound_samples/cries/cry_combusken.aif b/sound/direct_sound_samples/cries/cry_combusken.aif new file mode 100644 index 000000000..7d4b0d4cc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_combusken.aif differ diff --git a/sound/direct_sound_samples/cries/cry_corphish.aif b/sound/direct_sound_samples/cries/cry_corphish.aif new file mode 100644 index 000000000..f0f5ca01e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_corphish.aif differ diff --git a/sound/direct_sound_samples/cries/cry_corsola.aif b/sound/direct_sound_samples/cries/cry_corsola.aif new file mode 100644 index 000000000..68e743bfd Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_corsola.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cradily.aif b/sound/direct_sound_samples/cries/cry_cradily.aif new file mode 100644 index 000000000..197dc8d92 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cradily.aif differ diff --git a/sound/direct_sound_samples/cries/cry_crawdaunt.aif b/sound/direct_sound_samples/cries/cry_crawdaunt.aif new file mode 100644 index 000000000..a203ce2fb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_crawdaunt.aif differ diff --git a/sound/direct_sound_samples/cries/cry_crobat.aif b/sound/direct_sound_samples/cries/cry_crobat.aif new file mode 100644 index 000000000..75d039bd8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_crobat.aif differ diff --git a/sound/direct_sound_samples/cries/cry_croconaw.aif b/sound/direct_sound_samples/cries/cry_croconaw.aif new file mode 100644 index 000000000..afb7f3fdc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_croconaw.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cubone.aif b/sound/direct_sound_samples/cries/cry_cubone.aif new file mode 100644 index 000000000..170745da1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cubone.aif differ diff --git a/sound/direct_sound_samples/cries/cry_cyndaquil.aif b/sound/direct_sound_samples/cries/cry_cyndaquil.aif new file mode 100644 index 000000000..4aa580199 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_cyndaquil.aif differ diff --git a/sound/direct_sound_samples/cries/cry_delcatty.aif b/sound/direct_sound_samples/cries/cry_delcatty.aif new file mode 100644 index 000000000..dd665b110 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_delcatty.aif differ diff --git a/sound/direct_sound_samples/cries/cry_delibird.aif b/sound/direct_sound_samples/cries/cry_delibird.aif new file mode 100644 index 000000000..dbedc42d4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_delibird.aif differ diff --git a/sound/direct_sound_samples/cries/cry_deoxys.aif b/sound/direct_sound_samples/cries/cry_deoxys.aif new file mode 100644 index 000000000..b9623b337 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_deoxys.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dewgong.aif b/sound/direct_sound_samples/cries/cry_dewgong.aif new file mode 100644 index 000000000..72d69b773 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dewgong.aif differ diff --git a/sound/direct_sound_samples/cries/cry_diglett.aif b/sound/direct_sound_samples/cries/cry_diglett.aif new file mode 100644 index 000000000..b116af7f2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_diglett.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ditto.aif b/sound/direct_sound_samples/cries/cry_ditto.aif new file mode 100644 index 000000000..2c797f4c4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ditto.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dodrio.aif b/sound/direct_sound_samples/cries/cry_dodrio.aif new file mode 100644 index 000000000..111d8bf3e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dodrio.aif differ diff --git a/sound/direct_sound_samples/cries/cry_doduo.aif b/sound/direct_sound_samples/cries/cry_doduo.aif new file mode 100644 index 000000000..5700b91d9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_doduo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_donphan.aif b/sound/direct_sound_samples/cries/cry_donphan.aif new file mode 100644 index 000000000..a41c124b1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_donphan.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dragonair.aif b/sound/direct_sound_samples/cries/cry_dragonair.aif new file mode 100644 index 000000000..38c3955ef Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dragonair.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dragonite.aif b/sound/direct_sound_samples/cries/cry_dragonite.aif new file mode 100644 index 000000000..d1e7b11cf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dragonite.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dratini.aif b/sound/direct_sound_samples/cries/cry_dratini.aif new file mode 100644 index 000000000..298497480 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dratini.aif differ diff --git a/sound/direct_sound_samples/cries/cry_drowzee.aif b/sound/direct_sound_samples/cries/cry_drowzee.aif new file mode 100644 index 000000000..0d53eb2ff Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_drowzee.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dugtrio.aif b/sound/direct_sound_samples/cries/cry_dugtrio.aif new file mode 100644 index 000000000..dff573dfe Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dugtrio.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dunsparce.aif b/sound/direct_sound_samples/cries/cry_dunsparce.aif new file mode 100644 index 000000000..454617c05 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dunsparce.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dusclops.aif b/sound/direct_sound_samples/cries/cry_dusclops.aif new file mode 100644 index 000000000..de9657e4f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dusclops.aif differ diff --git a/sound/direct_sound_samples/cries/cry_duskull.aif b/sound/direct_sound_samples/cries/cry_duskull.aif new file mode 100644 index 000000000..d84ea274e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_duskull.aif differ diff --git a/sound/direct_sound_samples/cries/cry_dustox.aif b/sound/direct_sound_samples/cries/cry_dustox.aif new file mode 100644 index 000000000..56d8eb336 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_dustox.aif differ diff --git a/sound/direct_sound_samples/cries/cry_eevee.aif b/sound/direct_sound_samples/cries/cry_eevee.aif new file mode 100644 index 000000000..8711a1470 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_eevee.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ekans.aif b/sound/direct_sound_samples/cries/cry_ekans.aif new file mode 100644 index 000000000..9eb396735 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ekans.aif differ diff --git a/sound/direct_sound_samples/cries/cry_electabuzz.aif b/sound/direct_sound_samples/cries/cry_electabuzz.aif new file mode 100644 index 000000000..5abdb49b7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_electabuzz.aif differ diff --git a/sound/direct_sound_samples/cries/cry_electrike.aif b/sound/direct_sound_samples/cries/cry_electrike.aif new file mode 100644 index 000000000..56c9666df Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_electrike.aif differ diff --git a/sound/direct_sound_samples/cries/cry_electrode.aif b/sound/direct_sound_samples/cries/cry_electrode.aif new file mode 100644 index 000000000..cbd7f0971 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_electrode.aif differ diff --git a/sound/direct_sound_samples/cries/cry_elekid.aif b/sound/direct_sound_samples/cries/cry_elekid.aif new file mode 100644 index 000000000..839bdee17 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_elekid.aif differ diff --git a/sound/direct_sound_samples/cries/cry_entei.aif b/sound/direct_sound_samples/cries/cry_entei.aif new file mode 100644 index 000000000..56a740207 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_entei.aif differ diff --git a/sound/direct_sound_samples/cries/cry_espeon.aif b/sound/direct_sound_samples/cries/cry_espeon.aif new file mode 100644 index 000000000..53dc62f4d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_espeon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_exeggcute.aif b/sound/direct_sound_samples/cries/cry_exeggcute.aif new file mode 100644 index 000000000..147912c2f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_exeggcute.aif differ diff --git a/sound/direct_sound_samples/cries/cry_exeggutor.aif b/sound/direct_sound_samples/cries/cry_exeggutor.aif new file mode 100644 index 000000000..c0b9177bf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_exeggutor.aif differ diff --git a/sound/direct_sound_samples/cries/cry_exploud.aif b/sound/direct_sound_samples/cries/cry_exploud.aif new file mode 100644 index 000000000..5b80870cc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_exploud.aif differ diff --git a/sound/direct_sound_samples/cries/cry_farfetchd.aif b/sound/direct_sound_samples/cries/cry_farfetchd.aif new file mode 100644 index 000000000..f1db556dc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_farfetchd.aif differ diff --git a/sound/direct_sound_samples/cries/cry_fearow.aif b/sound/direct_sound_samples/cries/cry_fearow.aif new file mode 100644 index 000000000..74a76f6d4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_fearow.aif differ diff --git a/sound/direct_sound_samples/cries/cry_feebas.aif b/sound/direct_sound_samples/cries/cry_feebas.aif new file mode 100644 index 000000000..c386522f1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_feebas.aif differ diff --git a/sound/direct_sound_samples/cries/cry_feraligatr.aif b/sound/direct_sound_samples/cries/cry_feraligatr.aif new file mode 100644 index 000000000..9fcd93cff Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_feraligatr.aif differ diff --git a/sound/direct_sound_samples/cries/cry_flaaffy.aif b/sound/direct_sound_samples/cries/cry_flaaffy.aif new file mode 100644 index 000000000..93dfacfaf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_flaaffy.aif differ diff --git a/sound/direct_sound_samples/cries/cry_flareon.aif b/sound/direct_sound_samples/cries/cry_flareon.aif new file mode 100644 index 000000000..58d28e60a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_flareon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_flygon.aif b/sound/direct_sound_samples/cries/cry_flygon.aif new file mode 100644 index 000000000..c8c377016 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_flygon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_forretress.aif b/sound/direct_sound_samples/cries/cry_forretress.aif new file mode 100644 index 000000000..288dacbea Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_forretress.aif differ diff --git a/sound/direct_sound_samples/cries/cry_furret.aif b/sound/direct_sound_samples/cries/cry_furret.aif new file mode 100644 index 000000000..6b4e9ce11 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_furret.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gardevoir.aif b/sound/direct_sound_samples/cries/cry_gardevoir.aif new file mode 100644 index 000000000..a14780990 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gardevoir.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gastly.aif b/sound/direct_sound_samples/cries/cry_gastly.aif new file mode 100644 index 000000000..93cef851d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gastly.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gengar.aif b/sound/direct_sound_samples/cries/cry_gengar.aif new file mode 100644 index 000000000..379b5d37e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gengar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_geodude.aif b/sound/direct_sound_samples/cries/cry_geodude.aif new file mode 100644 index 000000000..143b9031c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_geodude.aif differ diff --git a/sound/direct_sound_samples/cries/cry_girafarig.aif b/sound/direct_sound_samples/cries/cry_girafarig.aif new file mode 100644 index 000000000..1dd5f93e2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_girafarig.aif differ diff --git a/sound/direct_sound_samples/cries/cry_glalie.aif b/sound/direct_sound_samples/cries/cry_glalie.aif new file mode 100644 index 000000000..e4e896547 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_glalie.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gligar.aif b/sound/direct_sound_samples/cries/cry_gligar.aif new file mode 100644 index 000000000..4050f08b0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gligar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gloom.aif b/sound/direct_sound_samples/cries/cry_gloom.aif new file mode 100644 index 000000000..e930328ac Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gloom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_golbat.aif b/sound/direct_sound_samples/cries/cry_golbat.aif new file mode 100644 index 000000000..11413df3a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_golbat.aif differ diff --git a/sound/direct_sound_samples/cries/cry_goldeen.aif b/sound/direct_sound_samples/cries/cry_goldeen.aif new file mode 100644 index 000000000..81fd1ecdf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_goldeen.aif differ diff --git a/sound/direct_sound_samples/cries/cry_golduck.aif b/sound/direct_sound_samples/cries/cry_golduck.aif new file mode 100644 index 000000000..b6b71a7a4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_golduck.aif differ diff --git a/sound/direct_sound_samples/cries/cry_golem.aif b/sound/direct_sound_samples/cries/cry_golem.aif new file mode 100644 index 000000000..0d2c4515e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_golem.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gorebyss.aif b/sound/direct_sound_samples/cries/cry_gorebyss.aif new file mode 100644 index 000000000..b7605062c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gorebyss.aif differ diff --git a/sound/direct_sound_samples/cries/cry_granbull.aif b/sound/direct_sound_samples/cries/cry_granbull.aif new file mode 100644 index 000000000..146b3bd0c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_granbull.aif differ diff --git a/sound/direct_sound_samples/cries/cry_graveler.aif b/sound/direct_sound_samples/cries/cry_graveler.aif new file mode 100644 index 000000000..773994228 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_graveler.aif differ diff --git a/sound/direct_sound_samples/cries/cry_grimer.aif b/sound/direct_sound_samples/cries/cry_grimer.aif new file mode 100644 index 000000000..95eed1061 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_grimer.aif differ diff --git a/sound/direct_sound_samples/cries/cry_groudon.aif b/sound/direct_sound_samples/cries/cry_groudon.aif new file mode 100644 index 000000000..62452b4d9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_groudon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_grovyle.aif b/sound/direct_sound_samples/cries/cry_grovyle.aif new file mode 100644 index 000000000..983bcfff3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_grovyle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_growlithe.aif b/sound/direct_sound_samples/cries/cry_growlithe.aif new file mode 100644 index 000000000..134e29834 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_growlithe.aif differ diff --git a/sound/direct_sound_samples/cries/cry_grumpig.aif b/sound/direct_sound_samples/cries/cry_grumpig.aif new file mode 100644 index 000000000..97c372076 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_grumpig.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gulpin.aif b/sound/direct_sound_samples/cries/cry_gulpin.aif new file mode 100644 index 000000000..f3043b422 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gulpin.aif differ diff --git a/sound/direct_sound_samples/cries/cry_gyarados.aif b/sound/direct_sound_samples/cries/cry_gyarados.aif new file mode 100644 index 000000000..238b6d721 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_gyarados.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hariyama.aif b/sound/direct_sound_samples/cries/cry_hariyama.aif new file mode 100644 index 000000000..1ac1f3f7e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hariyama.aif differ diff --git a/sound/direct_sound_samples/cries/cry_haunter.aif b/sound/direct_sound_samples/cries/cry_haunter.aif new file mode 100644 index 000000000..60ec72171 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_haunter.aif differ diff --git a/sound/direct_sound_samples/cries/cry_heracross.aif b/sound/direct_sound_samples/cries/cry_heracross.aif new file mode 100644 index 000000000..a0734748f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_heracross.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hitmonchan.aif b/sound/direct_sound_samples/cries/cry_hitmonchan.aif new file mode 100644 index 000000000..40479452c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hitmonchan.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hitmonlee.aif b/sound/direct_sound_samples/cries/cry_hitmonlee.aif new file mode 100644 index 000000000..3a4bcddca Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hitmonlee.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hitmontop.aif b/sound/direct_sound_samples/cries/cry_hitmontop.aif new file mode 100644 index 000000000..3fbee8041 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hitmontop.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ho_oh.aif b/sound/direct_sound_samples/cries/cry_ho_oh.aif new file mode 100644 index 000000000..52f8dd307 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ho_oh.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hoothoot.aif b/sound/direct_sound_samples/cries/cry_hoothoot.aif new file mode 100644 index 000000000..59e685dcc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hoothoot.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hoppip.aif b/sound/direct_sound_samples/cries/cry_hoppip.aif new file mode 100644 index 000000000..ea47877d0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hoppip.aif differ diff --git a/sound/direct_sound_samples/cries/cry_horsea.aif b/sound/direct_sound_samples/cries/cry_horsea.aif new file mode 100644 index 000000000..e41eff4b1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_horsea.aif differ diff --git a/sound/direct_sound_samples/cries/cry_houndoom.aif b/sound/direct_sound_samples/cries/cry_houndoom.aif new file mode 100644 index 000000000..6fec16d39 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_houndoom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_houndour.aif b/sound/direct_sound_samples/cries/cry_houndour.aif new file mode 100644 index 000000000..7431bbf29 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_houndour.aif differ diff --git a/sound/direct_sound_samples/cries/cry_huntail.aif b/sound/direct_sound_samples/cries/cry_huntail.aif new file mode 100644 index 000000000..f1d3b29d9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_huntail.aif differ diff --git a/sound/direct_sound_samples/cries/cry_hypno.aif b/sound/direct_sound_samples/cries/cry_hypno.aif new file mode 100644 index 000000000..32672a3c3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_hypno.aif differ diff --git a/sound/direct_sound_samples/cries/cry_igglybuff.aif b/sound/direct_sound_samples/cries/cry_igglybuff.aif new file mode 100644 index 000000000..8de8394d5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_igglybuff.aif differ diff --git a/sound/direct_sound_samples/cries/cry_illumise.aif b/sound/direct_sound_samples/cries/cry_illumise.aif new file mode 100644 index 000000000..75e03efc8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_illumise.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ivysaur.aif b/sound/direct_sound_samples/cries/cry_ivysaur.aif new file mode 100644 index 000000000..ea474ff88 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ivysaur.aif differ diff --git a/sound/direct_sound_samples/cries/cry_jigglypuff.aif b/sound/direct_sound_samples/cries/cry_jigglypuff.aif new file mode 100644 index 000000000..780424b4f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_jigglypuff.aif differ diff --git a/sound/direct_sound_samples/cries/cry_jirachi.aif b/sound/direct_sound_samples/cries/cry_jirachi.aif new file mode 100644 index 000000000..ea8a5c8ad Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_jirachi.aif differ diff --git a/sound/direct_sound_samples/cries/cry_jolteon.aif b/sound/direct_sound_samples/cries/cry_jolteon.aif new file mode 100644 index 000000000..013369158 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_jolteon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_jumpluff.aif b/sound/direct_sound_samples/cries/cry_jumpluff.aif new file mode 100644 index 000000000..13b0fd315 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_jumpluff.aif differ diff --git a/sound/direct_sound_samples/cries/cry_jynx.aif b/sound/direct_sound_samples/cries/cry_jynx.aif new file mode 100644 index 000000000..7394a48a2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_jynx.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kabuto.aif b/sound/direct_sound_samples/cries/cry_kabuto.aif new file mode 100644 index 000000000..6ae9801b5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kabuto.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kabutops.aif b/sound/direct_sound_samples/cries/cry_kabutops.aif new file mode 100644 index 000000000..f23778e57 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kabutops.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kadabra.aif b/sound/direct_sound_samples/cries/cry_kadabra.aif new file mode 100644 index 000000000..bfcc18031 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kadabra.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kakuna.aif b/sound/direct_sound_samples/cries/cry_kakuna.aif new file mode 100644 index 000000000..7c4e9d7a8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kakuna.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kangaskhan.aif b/sound/direct_sound_samples/cries/cry_kangaskhan.aif new file mode 100644 index 000000000..643e81eb7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kangaskhan.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kecleon.aif b/sound/direct_sound_samples/cries/cry_kecleon.aif new file mode 100644 index 000000000..f27ae1832 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kecleon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kingdra.aif b/sound/direct_sound_samples/cries/cry_kingdra.aif new file mode 100644 index 000000000..ade230c82 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kingdra.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kingler.aif b/sound/direct_sound_samples/cries/cry_kingler.aif new file mode 100644 index 000000000..a1d845f45 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kingler.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kirlia.aif b/sound/direct_sound_samples/cries/cry_kirlia.aif new file mode 100644 index 000000000..692e03e5f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kirlia.aif differ diff --git a/sound/direct_sound_samples/cries/cry_koffing.aif b/sound/direct_sound_samples/cries/cry_koffing.aif new file mode 100644 index 000000000..7ca9de088 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_koffing.aif differ diff --git a/sound/direct_sound_samples/cries/cry_krabby.aif b/sound/direct_sound_samples/cries/cry_krabby.aif new file mode 100644 index 000000000..6b7692f21 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_krabby.aif differ diff --git a/sound/direct_sound_samples/cries/cry_kyogre.aif b/sound/direct_sound_samples/cries/cry_kyogre.aif new file mode 100644 index 000000000..290948319 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_kyogre.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lairon.aif b/sound/direct_sound_samples/cries/cry_lairon.aif new file mode 100644 index 000000000..b487165bf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lairon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lanturn.aif b/sound/direct_sound_samples/cries/cry_lanturn.aif new file mode 100644 index 000000000..dfeac1fbd Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lanturn.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lapras.aif b/sound/direct_sound_samples/cries/cry_lapras.aif new file mode 100644 index 000000000..61de32408 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lapras.aif differ diff --git a/sound/direct_sound_samples/cries/cry_larvitar.aif b/sound/direct_sound_samples/cries/cry_larvitar.aif new file mode 100644 index 000000000..1ab0e1d5f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_larvitar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_latias.aif b/sound/direct_sound_samples/cries/cry_latias.aif new file mode 100644 index 000000000..46f7235f3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_latias.aif differ diff --git a/sound/direct_sound_samples/cries/cry_latios.aif b/sound/direct_sound_samples/cries/cry_latios.aif new file mode 100644 index 000000000..b8ace2a30 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_latios.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ledian.aif b/sound/direct_sound_samples/cries/cry_ledian.aif new file mode 100644 index 000000000..baefb5fa3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ledian.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ledyba.aif b/sound/direct_sound_samples/cries/cry_ledyba.aif new file mode 100644 index 000000000..4f26859a7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ledyba.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lickitung.aif b/sound/direct_sound_samples/cries/cry_lickitung.aif new file mode 100644 index 000000000..ef889a275 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lickitung.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lileep.aif b/sound/direct_sound_samples/cries/cry_lileep.aif new file mode 100644 index 000000000..ed8258eb7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lileep.aif differ diff --git a/sound/direct_sound_samples/cries/cry_linoone.aif b/sound/direct_sound_samples/cries/cry_linoone.aif new file mode 100644 index 000000000..4e5e7d3b5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_linoone.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lombre.aif b/sound/direct_sound_samples/cries/cry_lombre.aif new file mode 100644 index 000000000..abafe4321 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lombre.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lotad.aif b/sound/direct_sound_samples/cries/cry_lotad.aif new file mode 100644 index 000000000..2596f4390 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lotad.aif differ diff --git a/sound/direct_sound_samples/cries/cry_loudred.aif b/sound/direct_sound_samples/cries/cry_loudred.aif new file mode 100644 index 000000000..fed7ebec8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_loudred.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ludicolo.aif b/sound/direct_sound_samples/cries/cry_ludicolo.aif new file mode 100644 index 000000000..7cf670f38 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ludicolo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lugia.aif b/sound/direct_sound_samples/cries/cry_lugia.aif new file mode 100644 index 000000000..45890a2fc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lugia.aif differ diff --git a/sound/direct_sound_samples/cries/cry_lunatone.aif b/sound/direct_sound_samples/cries/cry_lunatone.aif new file mode 100644 index 000000000..42cbc5e3c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_lunatone.aif differ diff --git a/sound/direct_sound_samples/cries/cry_luvdisc.aif b/sound/direct_sound_samples/cries/cry_luvdisc.aif new file mode 100644 index 000000000..3cc0cc744 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_luvdisc.aif differ diff --git a/sound/direct_sound_samples/cries/cry_machamp.aif b/sound/direct_sound_samples/cries/cry_machamp.aif new file mode 100644 index 000000000..ddeaf22c8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_machamp.aif differ diff --git a/sound/direct_sound_samples/cries/cry_machoke.aif b/sound/direct_sound_samples/cries/cry_machoke.aif new file mode 100644 index 000000000..97065ee09 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_machoke.aif differ diff --git a/sound/direct_sound_samples/cries/cry_machop.aif b/sound/direct_sound_samples/cries/cry_machop.aif new file mode 100644 index 000000000..d92419e84 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_machop.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magby.aif b/sound/direct_sound_samples/cries/cry_magby.aif new file mode 100644 index 000000000..12f3dc889 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magby.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magcargo.aif b/sound/direct_sound_samples/cries/cry_magcargo.aif new file mode 100644 index 000000000..bef0351c0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magcargo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magikarp.aif b/sound/direct_sound_samples/cries/cry_magikarp.aif new file mode 100644 index 000000000..f4f9219c5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magikarp.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magmar.aif b/sound/direct_sound_samples/cries/cry_magmar.aif new file mode 100644 index 000000000..b79c8b9a1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magmar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magnemite.aif b/sound/direct_sound_samples/cries/cry_magnemite.aif new file mode 100644 index 000000000..ebb9103d9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magnemite.aif differ diff --git a/sound/direct_sound_samples/cries/cry_magneton.aif b/sound/direct_sound_samples/cries/cry_magneton.aif new file mode 100644 index 000000000..53083ac62 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_magneton.aif differ diff --git a/sound/direct_sound_samples/cries/cry_makuhita.aif b/sound/direct_sound_samples/cries/cry_makuhita.aif new file mode 100644 index 000000000..38d7f4b44 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_makuhita.aif differ diff --git a/sound/direct_sound_samples/cries/cry_manectric.aif b/sound/direct_sound_samples/cries/cry_manectric.aif new file mode 100644 index 000000000..18a8f4666 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_manectric.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mankey.aif b/sound/direct_sound_samples/cries/cry_mankey.aif new file mode 100644 index 000000000..dda929d4c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mankey.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mantine.aif b/sound/direct_sound_samples/cries/cry_mantine.aif new file mode 100644 index 000000000..d1840aafa Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mantine.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mareep.aif b/sound/direct_sound_samples/cries/cry_mareep.aif new file mode 100644 index 000000000..2615b9def Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mareep.aif differ diff --git a/sound/direct_sound_samples/cries/cry_marill.aif b/sound/direct_sound_samples/cries/cry_marill.aif new file mode 100644 index 000000000..48d936e7d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_marill.aif differ diff --git a/sound/direct_sound_samples/cries/cry_marowak.aif b/sound/direct_sound_samples/cries/cry_marowak.aif new file mode 100644 index 000000000..279381bb5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_marowak.aif differ diff --git a/sound/direct_sound_samples/cries/cry_marshtomp.aif b/sound/direct_sound_samples/cries/cry_marshtomp.aif new file mode 100644 index 000000000..c0106ff6c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_marshtomp.aif differ diff --git a/sound/direct_sound_samples/cries/cry_masquerain.aif b/sound/direct_sound_samples/cries/cry_masquerain.aif new file mode 100644 index 000000000..107bed2f7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_masquerain.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mawile.aif b/sound/direct_sound_samples/cries/cry_mawile.aif new file mode 100644 index 000000000..81b252b57 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mawile.aif differ diff --git a/sound/direct_sound_samples/cries/cry_medicham.aif b/sound/direct_sound_samples/cries/cry_medicham.aif new file mode 100644 index 000000000..dc85dd3b5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_medicham.aif differ diff --git a/sound/direct_sound_samples/cries/cry_meditite.aif b/sound/direct_sound_samples/cries/cry_meditite.aif new file mode 100644 index 000000000..8ac680f79 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_meditite.aif differ diff --git a/sound/direct_sound_samples/cries/cry_meganium.aif b/sound/direct_sound_samples/cries/cry_meganium.aif new file mode 100644 index 000000000..ea1e1aa51 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_meganium.aif differ diff --git a/sound/direct_sound_samples/cries/cry_meowth.aif b/sound/direct_sound_samples/cries/cry_meowth.aif new file mode 100644 index 000000000..aaf3825d5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_meowth.aif differ diff --git a/sound/direct_sound_samples/cries/cry_metagross.aif b/sound/direct_sound_samples/cries/cry_metagross.aif new file mode 100644 index 000000000..b96e6647c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_metagross.aif differ diff --git a/sound/direct_sound_samples/cries/cry_metang.aif b/sound/direct_sound_samples/cries/cry_metang.aif new file mode 100644 index 000000000..da544ce4d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_metang.aif differ diff --git a/sound/direct_sound_samples/cries/cry_metapod.aif b/sound/direct_sound_samples/cries/cry_metapod.aif new file mode 100644 index 000000000..ddba3ed44 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_metapod.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mew.aif b/sound/direct_sound_samples/cries/cry_mew.aif new file mode 100644 index 000000000..2651b96ca Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mew.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mewtwo.aif b/sound/direct_sound_samples/cries/cry_mewtwo.aif new file mode 100644 index 000000000..8e1e6c7f1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mewtwo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mightyena.aif b/sound/direct_sound_samples/cries/cry_mightyena.aif new file mode 100644 index 000000000..53a645edc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mightyena.aif differ diff --git a/sound/direct_sound_samples/cries/cry_milotic.aif b/sound/direct_sound_samples/cries/cry_milotic.aif new file mode 100644 index 000000000..93a14161b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_milotic.aif differ diff --git a/sound/direct_sound_samples/cries/cry_miltank.aif b/sound/direct_sound_samples/cries/cry_miltank.aif new file mode 100644 index 000000000..ad8a41a45 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_miltank.aif differ diff --git a/sound/direct_sound_samples/cries/cry_minun.aif b/sound/direct_sound_samples/cries/cry_minun.aif new file mode 100644 index 000000000..a55aa5631 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_minun.aif differ diff --git a/sound/direct_sound_samples/cries/cry_misdreavus.aif b/sound/direct_sound_samples/cries/cry_misdreavus.aif new file mode 100644 index 000000000..39a09f4d0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_misdreavus.aif differ diff --git a/sound/direct_sound_samples/cries/cry_moltres.aif b/sound/direct_sound_samples/cries/cry_moltres.aif new file mode 100644 index 000000000..2e038a3d7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_moltres.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mr_mime.aif b/sound/direct_sound_samples/cries/cry_mr_mime.aif new file mode 100644 index 000000000..ff870dbc4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mr_mime.aif differ diff --git a/sound/direct_sound_samples/cries/cry_mudkip.aif b/sound/direct_sound_samples/cries/cry_mudkip.aif new file mode 100644 index 000000000..e8fa5c212 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_mudkip.aif differ diff --git a/sound/direct_sound_samples/cries/cry_muk.aif b/sound/direct_sound_samples/cries/cry_muk.aif new file mode 100644 index 000000000..f61ff4075 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_muk.aif differ diff --git a/sound/direct_sound_samples/cries/cry_murkrow.aif b/sound/direct_sound_samples/cries/cry_murkrow.aif new file mode 100644 index 000000000..4beddff1e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_murkrow.aif differ diff --git a/sound/direct_sound_samples/cries/cry_natu.aif b/sound/direct_sound_samples/cries/cry_natu.aif new file mode 100644 index 000000000..e6e38d5cc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_natu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidoking.aif b/sound/direct_sound_samples/cries/cry_nidoking.aif new file mode 100644 index 000000000..a0c86f9ab Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidoking.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidoqueen.aif b/sound/direct_sound_samples/cries/cry_nidoqueen.aif new file mode 100644 index 000000000..6c8f5254b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidoqueen.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidoran_f.aif b/sound/direct_sound_samples/cries/cry_nidoran_f.aif new file mode 100644 index 000000000..b7c8a5317 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidoran_f.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidoran_m.aif b/sound/direct_sound_samples/cries/cry_nidoran_m.aif new file mode 100644 index 000000000..08fc81c8b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidoran_m.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidorina.aif b/sound/direct_sound_samples/cries/cry_nidorina.aif new file mode 100644 index 000000000..91e293a50 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidorina.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nidorino.aif b/sound/direct_sound_samples/cries/cry_nidorino.aif new file mode 100644 index 000000000..959351363 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nidorino.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nincada.aif b/sound/direct_sound_samples/cries/cry_nincada.aif new file mode 100644 index 000000000..5f96bda50 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nincada.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ninetales.aif b/sound/direct_sound_samples/cries/cry_ninetales.aif new file mode 100644 index 000000000..70c8cf528 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ninetales.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ninjask.aif b/sound/direct_sound_samples/cries/cry_ninjask.aif new file mode 100644 index 000000000..a6f07e8d3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ninjask.aif differ diff --git a/sound/direct_sound_samples/cries/cry_noctowl.aif b/sound/direct_sound_samples/cries/cry_noctowl.aif new file mode 100644 index 000000000..fe2e63d45 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_noctowl.aif differ diff --git a/sound/direct_sound_samples/cries/cry_none.aif b/sound/direct_sound_samples/cries/cry_none.aif new file mode 100644 index 000000000..44bb79c3c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_none.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nosepass.aif b/sound/direct_sound_samples/cries/cry_nosepass.aif new file mode 100644 index 000000000..be65ba082 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nosepass.aif differ diff --git a/sound/direct_sound_samples/cries/cry_numel.aif b/sound/direct_sound_samples/cries/cry_numel.aif new file mode 100644 index 000000000..55cce5f2c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_numel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_nuzleaf.aif b/sound/direct_sound_samples/cries/cry_nuzleaf.aif new file mode 100644 index 000000000..d668f3fd3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_nuzleaf.aif differ diff --git a/sound/direct_sound_samples/cries/cry_octillery.aif b/sound/direct_sound_samples/cries/cry_octillery.aif new file mode 100644 index 000000000..75ee28ceb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_octillery.aif differ diff --git a/sound/direct_sound_samples/cries/cry_oddish.aif b/sound/direct_sound_samples/cries/cry_oddish.aif new file mode 100644 index 000000000..6909a8dad Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_oddish.aif differ diff --git a/sound/direct_sound_samples/cries/cry_omanyte.aif b/sound/direct_sound_samples/cries/cry_omanyte.aif new file mode 100644 index 000000000..15ec2d1ef Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_omanyte.aif differ diff --git a/sound/direct_sound_samples/cries/cry_omastar.aif b/sound/direct_sound_samples/cries/cry_omastar.aif new file mode 100644 index 000000000..e67d5d7fc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_omastar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_onix.aif b/sound/direct_sound_samples/cries/cry_onix.aif new file mode 100644 index 000000000..aa8a16505 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_onix.aif differ diff --git a/sound/direct_sound_samples/cries/cry_paras.aif b/sound/direct_sound_samples/cries/cry_paras.aif new file mode 100644 index 000000000..f9d69c21c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_paras.aif differ diff --git a/sound/direct_sound_samples/cries/cry_parasect.aif b/sound/direct_sound_samples/cries/cry_parasect.aif new file mode 100644 index 000000000..d6d9433e9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_parasect.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pelipper.aif b/sound/direct_sound_samples/cries/cry_pelipper.aif new file mode 100644 index 000000000..26718f848 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pelipper.aif differ diff --git a/sound/direct_sound_samples/cries/cry_persian.aif b/sound/direct_sound_samples/cries/cry_persian.aif new file mode 100644 index 000000000..40b3a2c56 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_persian.aif differ diff --git a/sound/direct_sound_samples/cries/cry_phanpy.aif b/sound/direct_sound_samples/cries/cry_phanpy.aif new file mode 100644 index 000000000..2fcab3c82 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_phanpy.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pichu.aif b/sound/direct_sound_samples/cries/cry_pichu.aif new file mode 100644 index 000000000..de47bbab8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pichu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pidgeot.aif b/sound/direct_sound_samples/cries/cry_pidgeot.aif new file mode 100644 index 000000000..af400cdc6 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pidgeot.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pidgeotto.aif b/sound/direct_sound_samples/cries/cry_pidgeotto.aif new file mode 100644 index 000000000..7c71c8f3e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pidgeotto.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pidgey.aif b/sound/direct_sound_samples/cries/cry_pidgey.aif new file mode 100644 index 000000000..b9c3a5d2a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pidgey.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pikachu.aif b/sound/direct_sound_samples/cries/cry_pikachu.aif new file mode 100644 index 000000000..690bf5e1d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pikachu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_piloswine.aif b/sound/direct_sound_samples/cries/cry_piloswine.aif new file mode 100644 index 000000000..b1f34d3b5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_piloswine.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pineco.aif b/sound/direct_sound_samples/cries/cry_pineco.aif new file mode 100644 index 000000000..80292bda0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pineco.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pinsir.aif b/sound/direct_sound_samples/cries/cry_pinsir.aif new file mode 100644 index 000000000..cf27a11de Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pinsir.aif differ diff --git a/sound/direct_sound_samples/cries/cry_plusle.aif b/sound/direct_sound_samples/cries/cry_plusle.aif new file mode 100644 index 000000000..d68984263 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_plusle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_politoed.aif b/sound/direct_sound_samples/cries/cry_politoed.aif new file mode 100644 index 000000000..38b1883b4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_politoed.aif differ diff --git a/sound/direct_sound_samples/cries/cry_poliwag.aif b/sound/direct_sound_samples/cries/cry_poliwag.aif new file mode 100644 index 000000000..8467f0540 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_poliwag.aif differ diff --git a/sound/direct_sound_samples/cries/cry_poliwhirl.aif b/sound/direct_sound_samples/cries/cry_poliwhirl.aif new file mode 100644 index 000000000..f0851c693 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_poliwhirl.aif differ diff --git a/sound/direct_sound_samples/cries/cry_poliwrath.aif b/sound/direct_sound_samples/cries/cry_poliwrath.aif new file mode 100644 index 000000000..8d19f1d86 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_poliwrath.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ponyta.aif b/sound/direct_sound_samples/cries/cry_ponyta.aif new file mode 100644 index 000000000..46feb123d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ponyta.aif differ diff --git a/sound/direct_sound_samples/cries/cry_poochyena.aif b/sound/direct_sound_samples/cries/cry_poochyena.aif new file mode 100644 index 000000000..3b464ce13 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_poochyena.aif differ diff --git a/sound/direct_sound_samples/cries/cry_porygon.aif b/sound/direct_sound_samples/cries/cry_porygon.aif new file mode 100644 index 000000000..ced70b379 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_porygon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_porygon2.aif b/sound/direct_sound_samples/cries/cry_porygon2.aif new file mode 100644 index 000000000..c08a3caaf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_porygon2.aif differ diff --git a/sound/direct_sound_samples/cries/cry_primeape.aif b/sound/direct_sound_samples/cries/cry_primeape.aif new file mode 100644 index 000000000..a868b3120 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_primeape.aif differ diff --git a/sound/direct_sound_samples/cries/cry_psyduck.aif b/sound/direct_sound_samples/cries/cry_psyduck.aif new file mode 100644 index 000000000..d2d0612f2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_psyduck.aif differ diff --git a/sound/direct_sound_samples/cries/cry_pupitar.aif b/sound/direct_sound_samples/cries/cry_pupitar.aif new file mode 100644 index 000000000..7386636ce Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_pupitar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_quagsire.aif b/sound/direct_sound_samples/cries/cry_quagsire.aif new file mode 100644 index 000000000..1953d0e42 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_quagsire.aif differ diff --git a/sound/direct_sound_samples/cries/cry_quilava.aif b/sound/direct_sound_samples/cries/cry_quilava.aif new file mode 100644 index 000000000..efe873229 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_quilava.aif differ diff --git a/sound/direct_sound_samples/cries/cry_qwilfish.aif b/sound/direct_sound_samples/cries/cry_qwilfish.aif new file mode 100644 index 000000000..268c5c89d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_qwilfish.aif differ diff --git a/sound/direct_sound_samples/cries/cry_raichu.aif b/sound/direct_sound_samples/cries/cry_raichu.aif new file mode 100644 index 000000000..e59ffbad4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_raichu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_raikou.aif b/sound/direct_sound_samples/cries/cry_raikou.aif new file mode 100644 index 000000000..a57a2365c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_raikou.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ralts.aif b/sound/direct_sound_samples/cries/cry_ralts.aif new file mode 100644 index 000000000..0baef5760 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ralts.aif differ diff --git a/sound/direct_sound_samples/cries/cry_rapidash.aif b/sound/direct_sound_samples/cries/cry_rapidash.aif new file mode 100644 index 000000000..920f510e4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_rapidash.aif differ diff --git a/sound/direct_sound_samples/cries/cry_raticate.aif b/sound/direct_sound_samples/cries/cry_raticate.aif new file mode 100644 index 000000000..01601cab5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_raticate.aif differ diff --git a/sound/direct_sound_samples/cries/cry_rattata.aif b/sound/direct_sound_samples/cries/cry_rattata.aif new file mode 100644 index 000000000..cb0e1f422 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_rattata.aif differ diff --git a/sound/direct_sound_samples/cries/cry_rayquaza.aif b/sound/direct_sound_samples/cries/cry_rayquaza.aif new file mode 100644 index 000000000..6115e11d8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_rayquaza.aif differ diff --git a/sound/direct_sound_samples/cries/cry_regice.aif b/sound/direct_sound_samples/cries/cry_regice.aif new file mode 100644 index 000000000..6fa23dd73 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_regice.aif differ diff --git a/sound/direct_sound_samples/cries/cry_regirock.aif b/sound/direct_sound_samples/cries/cry_regirock.aif new file mode 100644 index 000000000..ab2a47eb8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_regirock.aif differ diff --git a/sound/direct_sound_samples/cries/cry_registeel.aif b/sound/direct_sound_samples/cries/cry_registeel.aif new file mode 100644 index 000000000..f5374e5f0 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_registeel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_relicanth.aif b/sound/direct_sound_samples/cries/cry_relicanth.aif new file mode 100644 index 000000000..60af9cf4e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_relicanth.aif differ diff --git a/sound/direct_sound_samples/cries/cry_remoraid.aif b/sound/direct_sound_samples/cries/cry_remoraid.aif new file mode 100644 index 000000000..16d3f1d65 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_remoraid.aif differ diff --git a/sound/direct_sound_samples/cries/cry_rhydon.aif b/sound/direct_sound_samples/cries/cry_rhydon.aif new file mode 100644 index 000000000..cfa709ee9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_rhydon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_rhyhorn.aif b/sound/direct_sound_samples/cries/cry_rhyhorn.aif new file mode 100644 index 000000000..47f344ba2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_rhyhorn.aif differ diff --git a/sound/direct_sound_samples/cries/cry_roselia.aif b/sound/direct_sound_samples/cries/cry_roselia.aif new file mode 100644 index 000000000..50b60b77b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_roselia.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sableye.aif b/sound/direct_sound_samples/cries/cry_sableye.aif new file mode 100644 index 000000000..1b3a9be30 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sableye.aif differ diff --git a/sound/direct_sound_samples/cries/cry_salamence.aif b/sound/direct_sound_samples/cries/cry_salamence.aif new file mode 100644 index 000000000..d2957809c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_salamence.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sandshrew.aif b/sound/direct_sound_samples/cries/cry_sandshrew.aif new file mode 100644 index 000000000..6879be11d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sandshrew.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sandslash.aif b/sound/direct_sound_samples/cries/cry_sandslash.aif new file mode 100644 index 000000000..ee4a458ed Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sandslash.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sceptile.aif b/sound/direct_sound_samples/cries/cry_sceptile.aif new file mode 100644 index 000000000..7252cb85f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sceptile.aif differ diff --git a/sound/direct_sound_samples/cries/cry_scizor.aif b/sound/direct_sound_samples/cries/cry_scizor.aif new file mode 100644 index 000000000..f1f7832ce Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_scizor.aif differ diff --git a/sound/direct_sound_samples/cries/cry_scyther.aif b/sound/direct_sound_samples/cries/cry_scyther.aif new file mode 100644 index 000000000..2b8cbc104 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_scyther.aif differ diff --git a/sound/direct_sound_samples/cries/cry_seadra.aif b/sound/direct_sound_samples/cries/cry_seadra.aif new file mode 100644 index 000000000..2f60cce4a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_seadra.aif differ diff --git a/sound/direct_sound_samples/cries/cry_seaking.aif b/sound/direct_sound_samples/cries/cry_seaking.aif new file mode 100644 index 000000000..e4fc7e70d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_seaking.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sealeo.aif b/sound/direct_sound_samples/cries/cry_sealeo.aif new file mode 100644 index 000000000..d9ea50026 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sealeo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_seedot.aif b/sound/direct_sound_samples/cries/cry_seedot.aif new file mode 100644 index 000000000..c37b769f8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_seedot.aif differ diff --git a/sound/direct_sound_samples/cries/cry_seel.aif b/sound/direct_sound_samples/cries/cry_seel.aif new file mode 100644 index 000000000..84c4a0a94 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_seel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sentret.aif b/sound/direct_sound_samples/cries/cry_sentret.aif new file mode 100644 index 000000000..4aed7cd70 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sentret.aif differ diff --git a/sound/direct_sound_samples/cries/cry_seviper.aif b/sound/direct_sound_samples/cries/cry_seviper.aif new file mode 100644 index 000000000..6a15dd6e2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_seviper.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sharpedo.aif b/sound/direct_sound_samples/cries/cry_sharpedo.aif new file mode 100644 index 000000000..1b02b56ce Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sharpedo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shedinja.aif b/sound/direct_sound_samples/cries/cry_shedinja.aif new file mode 100644 index 000000000..6d1d565f3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shedinja.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shelgon.aif b/sound/direct_sound_samples/cries/cry_shelgon.aif new file mode 100644 index 000000000..24f234ffe Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shelgon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shellder.aif b/sound/direct_sound_samples/cries/cry_shellder.aif new file mode 100644 index 000000000..b2ea85228 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shellder.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shiftry.aif b/sound/direct_sound_samples/cries/cry_shiftry.aif new file mode 100644 index 000000000..c91ece114 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shiftry.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shroomish.aif b/sound/direct_sound_samples/cries/cry_shroomish.aif new file mode 100644 index 000000000..9e944ca20 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shroomish.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shuckle.aif b/sound/direct_sound_samples/cries/cry_shuckle.aif new file mode 100644 index 000000000..d835d2de6 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shuckle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_shuppet.aif b/sound/direct_sound_samples/cries/cry_shuppet.aif new file mode 100644 index 000000000..1cd9a2f14 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_shuppet.aif differ diff --git a/sound/direct_sound_samples/cries/cry_silcoon.aif b/sound/direct_sound_samples/cries/cry_silcoon.aif new file mode 100644 index 000000000..ff48950ad Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_silcoon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_skarmory.aif b/sound/direct_sound_samples/cries/cry_skarmory.aif new file mode 100644 index 000000000..88d3985a3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_skarmory.aif differ diff --git a/sound/direct_sound_samples/cries/cry_skiploom.aif b/sound/direct_sound_samples/cries/cry_skiploom.aif new file mode 100644 index 000000000..201744d12 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_skiploom.aif differ diff --git a/sound/direct_sound_samples/cries/cry_skitty.aif b/sound/direct_sound_samples/cries/cry_skitty.aif new file mode 100644 index 000000000..7dc4578f4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_skitty.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slaking.aif b/sound/direct_sound_samples/cries/cry_slaking.aif new file mode 100644 index 000000000..b6a4160f3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slaking.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slakoth.aif b/sound/direct_sound_samples/cries/cry_slakoth.aif new file mode 100644 index 000000000..0e4bbc3c3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slakoth.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slowbro.aif b/sound/direct_sound_samples/cries/cry_slowbro.aif new file mode 100644 index 000000000..f74b753d2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slowbro.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slowking.aif b/sound/direct_sound_samples/cries/cry_slowking.aif new file mode 100644 index 000000000..245a42023 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slowking.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slowpoke.aif b/sound/direct_sound_samples/cries/cry_slowpoke.aif new file mode 100644 index 000000000..82b05a9a7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slowpoke.aif differ diff --git a/sound/direct_sound_samples/cries/cry_slugma.aif b/sound/direct_sound_samples/cries/cry_slugma.aif new file mode 100644 index 000000000..fed42817c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_slugma.aif differ diff --git a/sound/direct_sound_samples/cries/cry_smeargle.aif b/sound/direct_sound_samples/cries/cry_smeargle.aif new file mode 100644 index 000000000..00dbedead Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_smeargle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_smoochum.aif b/sound/direct_sound_samples/cries/cry_smoochum.aif new file mode 100644 index 000000000..4005b4ad4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_smoochum.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sneasel.aif b/sound/direct_sound_samples/cries/cry_sneasel.aif new file mode 100644 index 000000000..54242a23f Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sneasel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_snorlax.aif b/sound/direct_sound_samples/cries/cry_snorlax.aif new file mode 100644 index 000000000..f95128e3a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_snorlax.aif differ diff --git a/sound/direct_sound_samples/cries/cry_snorunt.aif b/sound/direct_sound_samples/cries/cry_snorunt.aif new file mode 100644 index 000000000..53b05b229 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_snorunt.aif differ diff --git a/sound/direct_sound_samples/cries/cry_snubbull.aif b/sound/direct_sound_samples/cries/cry_snubbull.aif new file mode 100644 index 000000000..bbba023fd Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_snubbull.aif differ diff --git a/sound/direct_sound_samples/cries/cry_solrock.aif b/sound/direct_sound_samples/cries/cry_solrock.aif new file mode 100644 index 000000000..64c71f289 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_solrock.aif differ diff --git a/sound/direct_sound_samples/cries/cry_spearow.aif b/sound/direct_sound_samples/cries/cry_spearow.aif new file mode 100644 index 000000000..7ce86ae29 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_spearow.aif differ diff --git a/sound/direct_sound_samples/cries/cry_spheal.aif b/sound/direct_sound_samples/cries/cry_spheal.aif new file mode 100644 index 000000000..fb6470210 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_spheal.aif differ diff --git a/sound/direct_sound_samples/cries/cry_spinarak.aif b/sound/direct_sound_samples/cries/cry_spinarak.aif new file mode 100644 index 000000000..3c4c1eff1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_spinarak.aif differ diff --git a/sound/direct_sound_samples/cries/cry_spinda.aif b/sound/direct_sound_samples/cries/cry_spinda.aif new file mode 100644 index 000000000..0217573c7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_spinda.aif differ diff --git a/sound/direct_sound_samples/cries/cry_spoink.aif b/sound/direct_sound_samples/cries/cry_spoink.aif new file mode 100644 index 000000000..6cc9bf546 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_spoink.aif differ diff --git a/sound/direct_sound_samples/cries/cry_squirtle.aif b/sound/direct_sound_samples/cries/cry_squirtle.aif new file mode 100644 index 000000000..43a98a53d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_squirtle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_stantler.aif b/sound/direct_sound_samples/cries/cry_stantler.aif new file mode 100644 index 000000000..36ba54658 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_stantler.aif differ diff --git a/sound/direct_sound_samples/cries/cry_starmie.aif b/sound/direct_sound_samples/cries/cry_starmie.aif new file mode 100644 index 000000000..7452a78f9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_starmie.aif differ diff --git a/sound/direct_sound_samples/cries/cry_staryu.aif b/sound/direct_sound_samples/cries/cry_staryu.aif new file mode 100644 index 000000000..6ab5584bf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_staryu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_steelix.aif b/sound/direct_sound_samples/cries/cry_steelix.aif new file mode 100644 index 000000000..aa05e2d4c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_steelix.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sudowoodo.aif b/sound/direct_sound_samples/cries/cry_sudowoodo.aif new file mode 100644 index 000000000..1af7e18eb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sudowoodo.aif differ diff --git a/sound/direct_sound_samples/cries/cry_suicune.aif b/sound/direct_sound_samples/cries/cry_suicune.aif new file mode 100644 index 000000000..697732d68 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_suicune.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sunflora.aif b/sound/direct_sound_samples/cries/cry_sunflora.aif new file mode 100644 index 000000000..126931adc Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sunflora.aif differ diff --git a/sound/direct_sound_samples/cries/cry_sunkern.aif b/sound/direct_sound_samples/cries/cry_sunkern.aif new file mode 100644 index 000000000..bede3bf95 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_sunkern.aif differ diff --git a/sound/direct_sound_samples/cries/cry_surskit.aif b/sound/direct_sound_samples/cries/cry_surskit.aif new file mode 100644 index 000000000..438b5b67a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_surskit.aif differ diff --git a/sound/direct_sound_samples/cries/cry_swablu.aif b/sound/direct_sound_samples/cries/cry_swablu.aif new file mode 100644 index 000000000..066095f55 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_swablu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_swalot.aif b/sound/direct_sound_samples/cries/cry_swalot.aif new file mode 100644 index 000000000..518a9bf5a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_swalot.aif differ diff --git a/sound/direct_sound_samples/cries/cry_swampert.aif b/sound/direct_sound_samples/cries/cry_swampert.aif new file mode 100644 index 000000000..56bd26405 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_swampert.aif differ diff --git a/sound/direct_sound_samples/cries/cry_swellow.aif b/sound/direct_sound_samples/cries/cry_swellow.aif new file mode 100644 index 000000000..2b94eb432 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_swellow.aif differ diff --git a/sound/direct_sound_samples/cries/cry_swinub.aif b/sound/direct_sound_samples/cries/cry_swinub.aif new file mode 100644 index 000000000..dc68d62d8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_swinub.aif differ diff --git a/sound/direct_sound_samples/cries/cry_taillow.aif b/sound/direct_sound_samples/cries/cry_taillow.aif new file mode 100644 index 000000000..8322a3224 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_taillow.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tangela.aif b/sound/direct_sound_samples/cries/cry_tangela.aif new file mode 100644 index 000000000..c900b426d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tangela.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tauros.aif b/sound/direct_sound_samples/cries/cry_tauros.aif new file mode 100644 index 000000000..84fa9b317 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tauros.aif differ diff --git a/sound/direct_sound_samples/cries/cry_teddiursa.aif b/sound/direct_sound_samples/cries/cry_teddiursa.aif new file mode 100644 index 000000000..ba5cb5bc3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_teddiursa.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tentacool.aif b/sound/direct_sound_samples/cries/cry_tentacool.aif new file mode 100644 index 000000000..332bec4b2 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tentacool.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tentacruel.aif b/sound/direct_sound_samples/cries/cry_tentacruel.aif new file mode 100644 index 000000000..e8ec1b14c Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tentacruel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_togepi.aif b/sound/direct_sound_samples/cries/cry_togepi.aif new file mode 100644 index 000000000..87ef6ef2d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_togepi.aif differ diff --git a/sound/direct_sound_samples/cries/cry_togetic.aif b/sound/direct_sound_samples/cries/cry_togetic.aif new file mode 100644 index 000000000..8aa18ac41 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_togetic.aif differ diff --git a/sound/direct_sound_samples/cries/cry_torchic.aif b/sound/direct_sound_samples/cries/cry_torchic.aif new file mode 100644 index 000000000..185a79499 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_torchic.aif differ diff --git a/sound/direct_sound_samples/cries/cry_torkoal.aif b/sound/direct_sound_samples/cries/cry_torkoal.aif new file mode 100644 index 000000000..9e56d3810 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_torkoal.aif differ diff --git a/sound/direct_sound_samples/cries/cry_totodile.aif b/sound/direct_sound_samples/cries/cry_totodile.aif new file mode 100644 index 000000000..dbf2179a7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_totodile.aif differ diff --git a/sound/direct_sound_samples/cries/cry_trapinch.aif b/sound/direct_sound_samples/cries/cry_trapinch.aif new file mode 100644 index 000000000..01664b72e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_trapinch.aif differ diff --git a/sound/direct_sound_samples/cries/cry_treecko.aif b/sound/direct_sound_samples/cries/cry_treecko.aif new file mode 100644 index 000000000..a7416e8da Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_treecko.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tropius.aif b/sound/direct_sound_samples/cries/cry_tropius.aif new file mode 100644 index 000000000..bbb52787b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tropius.aif differ diff --git a/sound/direct_sound_samples/cries/cry_typhlosion.aif b/sound/direct_sound_samples/cries/cry_typhlosion.aif new file mode 100644 index 000000000..f0238d066 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_typhlosion.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tyranitar.aif b/sound/direct_sound_samples/cries/cry_tyranitar.aif new file mode 100644 index 000000000..557f61769 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tyranitar.aif differ diff --git a/sound/direct_sound_samples/cries/cry_tyrogue.aif b/sound/direct_sound_samples/cries/cry_tyrogue.aif new file mode 100644 index 000000000..e5065f58b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_tyrogue.aif differ diff --git a/sound/direct_sound_samples/cries/cry_umbreon.aif b/sound/direct_sound_samples/cries/cry_umbreon.aif new file mode 100644 index 000000000..38129b1a7 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_umbreon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_unown.aif b/sound/direct_sound_samples/cries/cry_unown.aif new file mode 100644 index 000000000..8339ccb6b Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_unown.aif differ diff --git a/sound/direct_sound_samples/cries/cry_unused_265.aif b/sound/direct_sound_samples/cries/cry_unused_265.aif new file mode 100644 index 000000000..7f5965f06 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_unused_265.aif differ diff --git a/sound/direct_sound_samples/cries/cry_unused_268.aif b/sound/direct_sound_samples/cries/cry_unused_268.aif new file mode 100644 index 000000000..5cae364c3 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_unused_268.aif differ diff --git a/sound/direct_sound_samples/cries/cry_ursaring.aif b/sound/direct_sound_samples/cries/cry_ursaring.aif new file mode 100644 index 000000000..fcc748bd1 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_ursaring.aif differ diff --git a/sound/direct_sound_samples/cries/cry_vaporeon.aif b/sound/direct_sound_samples/cries/cry_vaporeon.aif new file mode 100644 index 000000000..4967cfdeb Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_vaporeon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_venomoth.aif b/sound/direct_sound_samples/cries/cry_venomoth.aif new file mode 100644 index 000000000..bc291ec33 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_venomoth.aif differ diff --git a/sound/direct_sound_samples/cries/cry_venonat.aif b/sound/direct_sound_samples/cries/cry_venonat.aif new file mode 100644 index 000000000..e89d87fa8 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_venonat.aif differ diff --git a/sound/direct_sound_samples/cries/cry_venusaur.aif b/sound/direct_sound_samples/cries/cry_venusaur.aif new file mode 100644 index 000000000..8a1f69e6e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_venusaur.aif differ diff --git a/sound/direct_sound_samples/cries/cry_vibrava.aif b/sound/direct_sound_samples/cries/cry_vibrava.aif new file mode 100644 index 000000000..3e3180219 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_vibrava.aif differ diff --git a/sound/direct_sound_samples/cries/cry_victreebel.aif b/sound/direct_sound_samples/cries/cry_victreebel.aif new file mode 100644 index 000000000..d6e6a4fe9 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_victreebel.aif differ diff --git a/sound/direct_sound_samples/cries/cry_vigoroth.aif b/sound/direct_sound_samples/cries/cry_vigoroth.aif new file mode 100644 index 000000000..fc414f33d Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_vigoroth.aif differ diff --git a/sound/direct_sound_samples/cries/cry_vileplume.aif b/sound/direct_sound_samples/cries/cry_vileplume.aif new file mode 100644 index 000000000..723eec697 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_vileplume.aif differ diff --git a/sound/direct_sound_samples/cries/cry_volbeat.aif b/sound/direct_sound_samples/cries/cry_volbeat.aif new file mode 100644 index 000000000..6f765081e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_volbeat.aif differ diff --git a/sound/direct_sound_samples/cries/cry_voltorb.aif b/sound/direct_sound_samples/cries/cry_voltorb.aif new file mode 100644 index 000000000..96e3bff31 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_voltorb.aif differ diff --git a/sound/direct_sound_samples/cries/cry_vulpix.aif b/sound/direct_sound_samples/cries/cry_vulpix.aif new file mode 100644 index 000000000..20da23fb4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_vulpix.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wailmer.aif b/sound/direct_sound_samples/cries/cry_wailmer.aif new file mode 100644 index 000000000..e8de91333 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wailmer.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wailord.aif b/sound/direct_sound_samples/cries/cry_wailord.aif new file mode 100644 index 000000000..2c0468010 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wailord.aif differ diff --git a/sound/direct_sound_samples/cries/cry_walrein.aif b/sound/direct_sound_samples/cries/cry_walrein.aif new file mode 100644 index 000000000..24c00a596 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_walrein.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wartortle.aif b/sound/direct_sound_samples/cries/cry_wartortle.aif new file mode 100644 index 000000000..5dab7fd93 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wartortle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_weedle.aif b/sound/direct_sound_samples/cries/cry_weedle.aif new file mode 100644 index 000000000..773c2c8ae Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_weedle.aif differ diff --git a/sound/direct_sound_samples/cries/cry_weepinbell.aif b/sound/direct_sound_samples/cries/cry_weepinbell.aif new file mode 100644 index 000000000..cdd61380a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_weepinbell.aif differ diff --git a/sound/direct_sound_samples/cries/cry_weezing.aif b/sound/direct_sound_samples/cries/cry_weezing.aif new file mode 100644 index 000000000..2e4a7fe13 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_weezing.aif differ diff --git a/sound/direct_sound_samples/cries/cry_whiscash.aif b/sound/direct_sound_samples/cries/cry_whiscash.aif new file mode 100644 index 000000000..219737f32 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_whiscash.aif differ diff --git a/sound/direct_sound_samples/cries/cry_whismur.aif b/sound/direct_sound_samples/cries/cry_whismur.aif new file mode 100644 index 000000000..4da92ca6a Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_whismur.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wigglytuff.aif b/sound/direct_sound_samples/cries/cry_wigglytuff.aif new file mode 100644 index 000000000..90aa90a23 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wigglytuff.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wingull.aif b/sound/direct_sound_samples/cries/cry_wingull.aif new file mode 100644 index 000000000..182ef18e6 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wingull.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wobbuffet.aif b/sound/direct_sound_samples/cries/cry_wobbuffet.aif new file mode 100644 index 000000000..70ee1f704 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wobbuffet.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wooper.aif b/sound/direct_sound_samples/cries/cry_wooper.aif new file mode 100644 index 000000000..51a6b627e Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wooper.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wurmple.aif b/sound/direct_sound_samples/cries/cry_wurmple.aif new file mode 100644 index 000000000..6442a4063 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wurmple.aif differ diff --git a/sound/direct_sound_samples/cries/cry_wynaut.aif b/sound/direct_sound_samples/cries/cry_wynaut.aif new file mode 100644 index 000000000..798732c74 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_wynaut.aif differ diff --git a/sound/direct_sound_samples/cries/cry_xatu.aif b/sound/direct_sound_samples/cries/cry_xatu.aif new file mode 100644 index 000000000..ac758fdbf Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_xatu.aif differ diff --git a/sound/direct_sound_samples/cries/cry_yanma.aif b/sound/direct_sound_samples/cries/cry_yanma.aif new file mode 100644 index 000000000..df76534c5 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_yanma.aif differ diff --git a/sound/direct_sound_samples/cries/cry_zangoose.aif b/sound/direct_sound_samples/cries/cry_zangoose.aif new file mode 100644 index 000000000..ce1622043 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_zangoose.aif differ diff --git a/sound/direct_sound_samples/cries/cry_zapdos.aif b/sound/direct_sound_samples/cries/cry_zapdos.aif new file mode 100644 index 000000000..a8d914d14 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_zapdos.aif differ diff --git a/sound/direct_sound_samples/cries/cry_zigzagoon.aif b/sound/direct_sound_samples/cries/cry_zigzagoon.aif new file mode 100644 index 000000000..52b9bb4f4 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_zigzagoon.aif differ diff --git a/sound/direct_sound_samples/cries/cry_zubat.aif b/sound/direct_sound_samples/cries/cry_zubat.aif new file mode 100644 index 000000000..45036d072 Binary files /dev/null and b/sound/direct_sound_samples/cries/cry_zubat.aif differ diff --git a/sound/direct_sound_samples/cry_abra.aif b/sound/direct_sound_samples/cry_abra.aif deleted file mode 100644 index 7df4446db..000000000 Binary files a/sound/direct_sound_samples/cry_abra.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_absol.aif b/sound/direct_sound_samples/cry_absol.aif deleted file mode 100644 index 884ab22b3..000000000 Binary files a/sound/direct_sound_samples/cry_absol.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_aerodactyl.aif b/sound/direct_sound_samples/cry_aerodactyl.aif deleted file mode 100644 index c0e40f6d1..000000000 Binary files a/sound/direct_sound_samples/cry_aerodactyl.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_aggron.aif b/sound/direct_sound_samples/cry_aggron.aif deleted file mode 100644 index b89ea1222..000000000 Binary files a/sound/direct_sound_samples/cry_aggron.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_aipom.aif b/sound/direct_sound_samples/cry_aipom.aif deleted file mode 100644 index 5ca276de2..000000000 Binary files a/sound/direct_sound_samples/cry_aipom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_alakazam.aif b/sound/direct_sound_samples/cry_alakazam.aif deleted file mode 100644 index 920e2ff94..000000000 Binary files a/sound/direct_sound_samples/cry_alakazam.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_altaria.aif b/sound/direct_sound_samples/cry_altaria.aif deleted file mode 100644 index 3e8e35e8e..000000000 Binary files a/sound/direct_sound_samples/cry_altaria.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ampharos.aif b/sound/direct_sound_samples/cry_ampharos.aif deleted file mode 100644 index 4f6e255a0..000000000 Binary files a/sound/direct_sound_samples/cry_ampharos.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_anorith.aif b/sound/direct_sound_samples/cry_anorith.aif deleted file mode 100644 index 96e87e919..000000000 Binary files a/sound/direct_sound_samples/cry_anorith.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_arbok.aif b/sound/direct_sound_samples/cry_arbok.aif deleted file mode 100644 index 6ccace9f9..000000000 Binary files a/sound/direct_sound_samples/cry_arbok.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_arcanine.aif b/sound/direct_sound_samples/cry_arcanine.aif deleted file mode 100644 index 61d802153..000000000 Binary files a/sound/direct_sound_samples/cry_arcanine.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ariados.aif b/sound/direct_sound_samples/cry_ariados.aif deleted file mode 100644 index 1748624fb..000000000 Binary files a/sound/direct_sound_samples/cry_ariados.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_armaldo.aif b/sound/direct_sound_samples/cry_armaldo.aif deleted file mode 100644 index 756bf0842..000000000 Binary files a/sound/direct_sound_samples/cry_armaldo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_aron.aif b/sound/direct_sound_samples/cry_aron.aif deleted file mode 100644 index cce70b73b..000000000 Binary files a/sound/direct_sound_samples/cry_aron.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_articuno.aif b/sound/direct_sound_samples/cry_articuno.aif deleted file mode 100644 index 4f237dd0f..000000000 Binary files a/sound/direct_sound_samples/cry_articuno.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_azumarill.aif b/sound/direct_sound_samples/cry_azumarill.aif deleted file mode 100644 index 18411f93c..000000000 Binary files a/sound/direct_sound_samples/cry_azumarill.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_azurill.aif b/sound/direct_sound_samples/cry_azurill.aif deleted file mode 100644 index 7f651c3d3..000000000 Binary files a/sound/direct_sound_samples/cry_azurill.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_bagon.aif b/sound/direct_sound_samples/cry_bagon.aif deleted file mode 100644 index 3843fb9f4..000000000 Binary files a/sound/direct_sound_samples/cry_bagon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_baltoy.aif b/sound/direct_sound_samples/cry_baltoy.aif deleted file mode 100644 index 25e1a708a..000000000 Binary files a/sound/direct_sound_samples/cry_baltoy.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_banette.aif b/sound/direct_sound_samples/cry_banette.aif deleted file mode 100644 index 23713f1b5..000000000 Binary files a/sound/direct_sound_samples/cry_banette.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_barboach.aif b/sound/direct_sound_samples/cry_barboach.aif deleted file mode 100644 index 4b9228259..000000000 Binary files a/sound/direct_sound_samples/cry_barboach.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_bayleef.aif b/sound/direct_sound_samples/cry_bayleef.aif deleted file mode 100644 index 8cef22df3..000000000 Binary files a/sound/direct_sound_samples/cry_bayleef.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_beautifly.aif b/sound/direct_sound_samples/cry_beautifly.aif deleted file mode 100644 index 0924b6c55..000000000 Binary files a/sound/direct_sound_samples/cry_beautifly.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_beedrill.aif b/sound/direct_sound_samples/cry_beedrill.aif deleted file mode 100644 index 00d0bc96c..000000000 Binary files a/sound/direct_sound_samples/cry_beedrill.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_beldum.aif b/sound/direct_sound_samples/cry_beldum.aif deleted file mode 100644 index 76435a6a8..000000000 Binary files a/sound/direct_sound_samples/cry_beldum.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_bellossom.aif b/sound/direct_sound_samples/cry_bellossom.aif deleted file mode 100644 index 86580df65..000000000 Binary files a/sound/direct_sound_samples/cry_bellossom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_bellsprout.aif b/sound/direct_sound_samples/cry_bellsprout.aif deleted file mode 100644 index cfdd7aed2..000000000 Binary files a/sound/direct_sound_samples/cry_bellsprout.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_blastoise.aif b/sound/direct_sound_samples/cry_blastoise.aif deleted file mode 100644 index 76dac2bcc..000000000 Binary files a/sound/direct_sound_samples/cry_blastoise.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_blaziken.aif b/sound/direct_sound_samples/cry_blaziken.aif deleted file mode 100644 index 83e5ccf23..000000000 Binary files a/sound/direct_sound_samples/cry_blaziken.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_blissey.aif b/sound/direct_sound_samples/cry_blissey.aif deleted file mode 100644 index 897eb3d69..000000000 Binary files a/sound/direct_sound_samples/cry_blissey.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_breloom.aif b/sound/direct_sound_samples/cry_breloom.aif deleted file mode 100644 index ea3f1bb66..000000000 Binary files a/sound/direct_sound_samples/cry_breloom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_bulbasaur.aif b/sound/direct_sound_samples/cry_bulbasaur.aif deleted file mode 100644 index 040fb1df7..000000000 Binary files a/sound/direct_sound_samples/cry_bulbasaur.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_butterfree.aif b/sound/direct_sound_samples/cry_butterfree.aif deleted file mode 100644 index f27616395..000000000 Binary files a/sound/direct_sound_samples/cry_butterfree.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cacnea.aif b/sound/direct_sound_samples/cry_cacnea.aif deleted file mode 100644 index 4fd5acd36..000000000 Binary files a/sound/direct_sound_samples/cry_cacnea.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cacturne.aif b/sound/direct_sound_samples/cry_cacturne.aif deleted file mode 100644 index d9fb8fda8..000000000 Binary files a/sound/direct_sound_samples/cry_cacturne.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_camerupt.aif b/sound/direct_sound_samples/cry_camerupt.aif deleted file mode 100644 index 325df1220..000000000 Binary files a/sound/direct_sound_samples/cry_camerupt.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_carvanha.aif b/sound/direct_sound_samples/cry_carvanha.aif deleted file mode 100644 index c7cdedf91..000000000 Binary files a/sound/direct_sound_samples/cry_carvanha.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cascoon.aif b/sound/direct_sound_samples/cry_cascoon.aif deleted file mode 100644 index 17eef0ee9..000000000 Binary files a/sound/direct_sound_samples/cry_cascoon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_castform.aif b/sound/direct_sound_samples/cry_castform.aif deleted file mode 100644 index c10745640..000000000 Binary files a/sound/direct_sound_samples/cry_castform.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_caterpie.aif b/sound/direct_sound_samples/cry_caterpie.aif deleted file mode 100644 index b0b246b4f..000000000 Binary files a/sound/direct_sound_samples/cry_caterpie.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_celebi.aif b/sound/direct_sound_samples/cry_celebi.aif deleted file mode 100644 index 9f9f3ea39..000000000 Binary files a/sound/direct_sound_samples/cry_celebi.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_chansey.aif b/sound/direct_sound_samples/cry_chansey.aif deleted file mode 100644 index d764c86ce..000000000 Binary files a/sound/direct_sound_samples/cry_chansey.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_charizard.aif b/sound/direct_sound_samples/cry_charizard.aif deleted file mode 100644 index 48321b792..000000000 Binary files a/sound/direct_sound_samples/cry_charizard.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_charmander.aif b/sound/direct_sound_samples/cry_charmander.aif deleted file mode 100644 index d72c0f9e0..000000000 Binary files a/sound/direct_sound_samples/cry_charmander.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_charmeleon.aif b/sound/direct_sound_samples/cry_charmeleon.aif deleted file mode 100644 index 8e84af0d8..000000000 Binary files a/sound/direct_sound_samples/cry_charmeleon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_chikorita.aif b/sound/direct_sound_samples/cry_chikorita.aif deleted file mode 100644 index 67ceafdc3..000000000 Binary files a/sound/direct_sound_samples/cry_chikorita.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_chimecho.aif b/sound/direct_sound_samples/cry_chimecho.aif deleted file mode 100644 index 87ee2faee..000000000 Binary files a/sound/direct_sound_samples/cry_chimecho.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_chinchou.aif b/sound/direct_sound_samples/cry_chinchou.aif deleted file mode 100644 index 356475678..000000000 Binary files a/sound/direct_sound_samples/cry_chinchou.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_clamperl.aif b/sound/direct_sound_samples/cry_clamperl.aif deleted file mode 100644 index 7250bd703..000000000 Binary files a/sound/direct_sound_samples/cry_clamperl.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_claydol.aif b/sound/direct_sound_samples/cry_claydol.aif deleted file mode 100644 index b89772021..000000000 Binary files a/sound/direct_sound_samples/cry_claydol.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_clefable.aif b/sound/direct_sound_samples/cry_clefable.aif deleted file mode 100644 index 9c2d8c664..000000000 Binary files a/sound/direct_sound_samples/cry_clefable.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_clefairy.aif b/sound/direct_sound_samples/cry_clefairy.aif deleted file mode 100644 index c370c4a9b..000000000 Binary files a/sound/direct_sound_samples/cry_clefairy.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cleffa.aif b/sound/direct_sound_samples/cry_cleffa.aif deleted file mode 100644 index b27cdeca9..000000000 Binary files a/sound/direct_sound_samples/cry_cleffa.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cloyster.aif b/sound/direct_sound_samples/cry_cloyster.aif deleted file mode 100644 index b406deab0..000000000 Binary files a/sound/direct_sound_samples/cry_cloyster.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_combusken.aif b/sound/direct_sound_samples/cry_combusken.aif deleted file mode 100644 index 7d4b0d4cc..000000000 Binary files a/sound/direct_sound_samples/cry_combusken.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_corphish.aif b/sound/direct_sound_samples/cry_corphish.aif deleted file mode 100644 index f0f5ca01e..000000000 Binary files a/sound/direct_sound_samples/cry_corphish.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_corsola.aif b/sound/direct_sound_samples/cry_corsola.aif deleted file mode 100644 index 68e743bfd..000000000 Binary files a/sound/direct_sound_samples/cry_corsola.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cradily.aif b/sound/direct_sound_samples/cry_cradily.aif deleted file mode 100644 index 197dc8d92..000000000 Binary files a/sound/direct_sound_samples/cry_cradily.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_crawdaunt.aif b/sound/direct_sound_samples/cry_crawdaunt.aif deleted file mode 100644 index a203ce2fb..000000000 Binary files a/sound/direct_sound_samples/cry_crawdaunt.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_crobat.aif b/sound/direct_sound_samples/cry_crobat.aif deleted file mode 100644 index 75d039bd8..000000000 Binary files a/sound/direct_sound_samples/cry_crobat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_croconaw.aif b/sound/direct_sound_samples/cry_croconaw.aif deleted file mode 100644 index afb7f3fdc..000000000 Binary files a/sound/direct_sound_samples/cry_croconaw.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cubone.aif b/sound/direct_sound_samples/cry_cubone.aif deleted file mode 100644 index 170745da1..000000000 Binary files a/sound/direct_sound_samples/cry_cubone.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_cyndaquil.aif b/sound/direct_sound_samples/cry_cyndaquil.aif deleted file mode 100644 index 4aa580199..000000000 Binary files a/sound/direct_sound_samples/cry_cyndaquil.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_delcatty.aif b/sound/direct_sound_samples/cry_delcatty.aif deleted file mode 100644 index dd665b110..000000000 Binary files a/sound/direct_sound_samples/cry_delcatty.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_delibird.aif b/sound/direct_sound_samples/cry_delibird.aif deleted file mode 100644 index dbedc42d4..000000000 Binary files a/sound/direct_sound_samples/cry_delibird.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_deoxys.aif b/sound/direct_sound_samples/cry_deoxys.aif deleted file mode 100644 index b9623b337..000000000 Binary files a/sound/direct_sound_samples/cry_deoxys.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dewgong.aif b/sound/direct_sound_samples/cry_dewgong.aif deleted file mode 100644 index 72d69b773..000000000 Binary files a/sound/direct_sound_samples/cry_dewgong.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_diglett.aif b/sound/direct_sound_samples/cry_diglett.aif deleted file mode 100644 index b116af7f2..000000000 Binary files a/sound/direct_sound_samples/cry_diglett.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ditto.aif b/sound/direct_sound_samples/cry_ditto.aif deleted file mode 100644 index 2c797f4c4..000000000 Binary files a/sound/direct_sound_samples/cry_ditto.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dodrio.aif b/sound/direct_sound_samples/cry_dodrio.aif deleted file mode 100644 index 111d8bf3e..000000000 Binary files a/sound/direct_sound_samples/cry_dodrio.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_doduo.aif b/sound/direct_sound_samples/cry_doduo.aif deleted file mode 100644 index 5700b91d9..000000000 Binary files a/sound/direct_sound_samples/cry_doduo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_donphan.aif b/sound/direct_sound_samples/cry_donphan.aif deleted file mode 100644 index a41c124b1..000000000 Binary files a/sound/direct_sound_samples/cry_donphan.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dragonair.aif b/sound/direct_sound_samples/cry_dragonair.aif deleted file mode 100644 index 38c3955ef..000000000 Binary files a/sound/direct_sound_samples/cry_dragonair.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dragonite.aif b/sound/direct_sound_samples/cry_dragonite.aif deleted file mode 100644 index d1e7b11cf..000000000 Binary files a/sound/direct_sound_samples/cry_dragonite.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dratini.aif b/sound/direct_sound_samples/cry_dratini.aif deleted file mode 100644 index 298497480..000000000 Binary files a/sound/direct_sound_samples/cry_dratini.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_drowzee.aif b/sound/direct_sound_samples/cry_drowzee.aif deleted file mode 100644 index 0d53eb2ff..000000000 Binary files a/sound/direct_sound_samples/cry_drowzee.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dugtrio.aif b/sound/direct_sound_samples/cry_dugtrio.aif deleted file mode 100644 index dff573dfe..000000000 Binary files a/sound/direct_sound_samples/cry_dugtrio.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dunsparce.aif b/sound/direct_sound_samples/cry_dunsparce.aif deleted file mode 100644 index 454617c05..000000000 Binary files a/sound/direct_sound_samples/cry_dunsparce.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dusclops.aif b/sound/direct_sound_samples/cry_dusclops.aif deleted file mode 100644 index de9657e4f..000000000 Binary files a/sound/direct_sound_samples/cry_dusclops.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_duskull.aif b/sound/direct_sound_samples/cry_duskull.aif deleted file mode 100644 index d84ea274e..000000000 Binary files a/sound/direct_sound_samples/cry_duskull.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_dustox.aif b/sound/direct_sound_samples/cry_dustox.aif deleted file mode 100644 index 56d8eb336..000000000 Binary files a/sound/direct_sound_samples/cry_dustox.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_eevee.aif b/sound/direct_sound_samples/cry_eevee.aif deleted file mode 100644 index 8711a1470..000000000 Binary files a/sound/direct_sound_samples/cry_eevee.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ekans.aif b/sound/direct_sound_samples/cry_ekans.aif deleted file mode 100644 index 9eb396735..000000000 Binary files a/sound/direct_sound_samples/cry_ekans.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_electabuzz.aif b/sound/direct_sound_samples/cry_electabuzz.aif deleted file mode 100644 index 5abdb49b7..000000000 Binary files a/sound/direct_sound_samples/cry_electabuzz.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_electrike.aif b/sound/direct_sound_samples/cry_electrike.aif deleted file mode 100644 index 56c9666df..000000000 Binary files a/sound/direct_sound_samples/cry_electrike.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_electrode.aif b/sound/direct_sound_samples/cry_electrode.aif deleted file mode 100644 index cbd7f0971..000000000 Binary files a/sound/direct_sound_samples/cry_electrode.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_elekid.aif b/sound/direct_sound_samples/cry_elekid.aif deleted file mode 100644 index 839bdee17..000000000 Binary files a/sound/direct_sound_samples/cry_elekid.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_entei.aif b/sound/direct_sound_samples/cry_entei.aif deleted file mode 100644 index 56a740207..000000000 Binary files a/sound/direct_sound_samples/cry_entei.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_espeon.aif b/sound/direct_sound_samples/cry_espeon.aif deleted file mode 100644 index 53dc62f4d..000000000 Binary files a/sound/direct_sound_samples/cry_espeon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_exeggcute.aif b/sound/direct_sound_samples/cry_exeggcute.aif deleted file mode 100644 index 147912c2f..000000000 Binary files a/sound/direct_sound_samples/cry_exeggcute.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_exeggutor.aif b/sound/direct_sound_samples/cry_exeggutor.aif deleted file mode 100644 index c0b9177bf..000000000 Binary files a/sound/direct_sound_samples/cry_exeggutor.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_exploud.aif b/sound/direct_sound_samples/cry_exploud.aif deleted file mode 100644 index 5b80870cc..000000000 Binary files a/sound/direct_sound_samples/cry_exploud.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_farfetchd.aif b/sound/direct_sound_samples/cry_farfetchd.aif deleted file mode 100644 index f1db556dc..000000000 Binary files a/sound/direct_sound_samples/cry_farfetchd.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_fearow.aif b/sound/direct_sound_samples/cry_fearow.aif deleted file mode 100644 index 74a76f6d4..000000000 Binary files a/sound/direct_sound_samples/cry_fearow.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_feebas.aif b/sound/direct_sound_samples/cry_feebas.aif deleted file mode 100644 index c386522f1..000000000 Binary files a/sound/direct_sound_samples/cry_feebas.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_feraligatr.aif b/sound/direct_sound_samples/cry_feraligatr.aif deleted file mode 100644 index 9fcd93cff..000000000 Binary files a/sound/direct_sound_samples/cry_feraligatr.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_flaaffy.aif b/sound/direct_sound_samples/cry_flaaffy.aif deleted file mode 100644 index 93dfacfaf..000000000 Binary files a/sound/direct_sound_samples/cry_flaaffy.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_flareon.aif b/sound/direct_sound_samples/cry_flareon.aif deleted file mode 100644 index 58d28e60a..000000000 Binary files a/sound/direct_sound_samples/cry_flareon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_flygon.aif b/sound/direct_sound_samples/cry_flygon.aif deleted file mode 100644 index c8c377016..000000000 Binary files a/sound/direct_sound_samples/cry_flygon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_forretress.aif b/sound/direct_sound_samples/cry_forretress.aif deleted file mode 100644 index 288dacbea..000000000 Binary files a/sound/direct_sound_samples/cry_forretress.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_furret.aif b/sound/direct_sound_samples/cry_furret.aif deleted file mode 100644 index 6b4e9ce11..000000000 Binary files a/sound/direct_sound_samples/cry_furret.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gardevoir.aif b/sound/direct_sound_samples/cry_gardevoir.aif deleted file mode 100644 index a14780990..000000000 Binary files a/sound/direct_sound_samples/cry_gardevoir.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gastly.aif b/sound/direct_sound_samples/cry_gastly.aif deleted file mode 100644 index 93cef851d..000000000 Binary files a/sound/direct_sound_samples/cry_gastly.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gengar.aif b/sound/direct_sound_samples/cry_gengar.aif deleted file mode 100644 index 379b5d37e..000000000 Binary files a/sound/direct_sound_samples/cry_gengar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_geodude.aif b/sound/direct_sound_samples/cry_geodude.aif deleted file mode 100644 index 143b9031c..000000000 Binary files a/sound/direct_sound_samples/cry_geodude.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_girafarig.aif b/sound/direct_sound_samples/cry_girafarig.aif deleted file mode 100644 index 1dd5f93e2..000000000 Binary files a/sound/direct_sound_samples/cry_girafarig.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_glalie.aif b/sound/direct_sound_samples/cry_glalie.aif deleted file mode 100644 index e4e896547..000000000 Binary files a/sound/direct_sound_samples/cry_glalie.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gligar.aif b/sound/direct_sound_samples/cry_gligar.aif deleted file mode 100644 index 4050f08b0..000000000 Binary files a/sound/direct_sound_samples/cry_gligar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gloom.aif b/sound/direct_sound_samples/cry_gloom.aif deleted file mode 100644 index e930328ac..000000000 Binary files a/sound/direct_sound_samples/cry_gloom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_golbat.aif b/sound/direct_sound_samples/cry_golbat.aif deleted file mode 100644 index 11413df3a..000000000 Binary files a/sound/direct_sound_samples/cry_golbat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_goldeen.aif b/sound/direct_sound_samples/cry_goldeen.aif deleted file mode 100644 index 81fd1ecdf..000000000 Binary files a/sound/direct_sound_samples/cry_goldeen.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_golduck.aif b/sound/direct_sound_samples/cry_golduck.aif deleted file mode 100644 index b6b71a7a4..000000000 Binary files a/sound/direct_sound_samples/cry_golduck.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_golem.aif b/sound/direct_sound_samples/cry_golem.aif deleted file mode 100644 index 0d2c4515e..000000000 Binary files a/sound/direct_sound_samples/cry_golem.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gorebyss.aif b/sound/direct_sound_samples/cry_gorebyss.aif deleted file mode 100644 index b7605062c..000000000 Binary files a/sound/direct_sound_samples/cry_gorebyss.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_granbull.aif b/sound/direct_sound_samples/cry_granbull.aif deleted file mode 100644 index 146b3bd0c..000000000 Binary files a/sound/direct_sound_samples/cry_granbull.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_graveler.aif b/sound/direct_sound_samples/cry_graveler.aif deleted file mode 100644 index 773994228..000000000 Binary files a/sound/direct_sound_samples/cry_graveler.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_grimer.aif b/sound/direct_sound_samples/cry_grimer.aif deleted file mode 100644 index 95eed1061..000000000 Binary files a/sound/direct_sound_samples/cry_grimer.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_groudon.aif b/sound/direct_sound_samples/cry_groudon.aif deleted file mode 100644 index 62452b4d9..000000000 Binary files a/sound/direct_sound_samples/cry_groudon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_grovyle.aif b/sound/direct_sound_samples/cry_grovyle.aif deleted file mode 100644 index 983bcfff3..000000000 Binary files a/sound/direct_sound_samples/cry_grovyle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_growlithe.aif b/sound/direct_sound_samples/cry_growlithe.aif deleted file mode 100644 index 134e29834..000000000 Binary files a/sound/direct_sound_samples/cry_growlithe.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_grumpig.aif b/sound/direct_sound_samples/cry_grumpig.aif deleted file mode 100644 index 97c372076..000000000 Binary files a/sound/direct_sound_samples/cry_grumpig.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gulpin.aif b/sound/direct_sound_samples/cry_gulpin.aif deleted file mode 100644 index f3043b422..000000000 Binary files a/sound/direct_sound_samples/cry_gulpin.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_gyarados.aif b/sound/direct_sound_samples/cry_gyarados.aif deleted file mode 100644 index 238b6d721..000000000 Binary files a/sound/direct_sound_samples/cry_gyarados.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hariyama.aif b/sound/direct_sound_samples/cry_hariyama.aif deleted file mode 100644 index 1ac1f3f7e..000000000 Binary files a/sound/direct_sound_samples/cry_hariyama.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_haunter.aif b/sound/direct_sound_samples/cry_haunter.aif deleted file mode 100644 index 60ec72171..000000000 Binary files a/sound/direct_sound_samples/cry_haunter.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_heracross.aif b/sound/direct_sound_samples/cry_heracross.aif deleted file mode 100644 index a0734748f..000000000 Binary files a/sound/direct_sound_samples/cry_heracross.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hitmonchan.aif b/sound/direct_sound_samples/cry_hitmonchan.aif deleted file mode 100644 index 40479452c..000000000 Binary files a/sound/direct_sound_samples/cry_hitmonchan.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hitmonlee.aif b/sound/direct_sound_samples/cry_hitmonlee.aif deleted file mode 100644 index 3a4bcddca..000000000 Binary files a/sound/direct_sound_samples/cry_hitmonlee.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hitmontop.aif b/sound/direct_sound_samples/cry_hitmontop.aif deleted file mode 100644 index 3fbee8041..000000000 Binary files a/sound/direct_sound_samples/cry_hitmontop.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ho_oh.aif b/sound/direct_sound_samples/cry_ho_oh.aif deleted file mode 100644 index 52f8dd307..000000000 Binary files a/sound/direct_sound_samples/cry_ho_oh.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hoothoot.aif b/sound/direct_sound_samples/cry_hoothoot.aif deleted file mode 100644 index 59e685dcc..000000000 Binary files a/sound/direct_sound_samples/cry_hoothoot.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hoppip.aif b/sound/direct_sound_samples/cry_hoppip.aif deleted file mode 100644 index ea47877d0..000000000 Binary files a/sound/direct_sound_samples/cry_hoppip.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_horsea.aif b/sound/direct_sound_samples/cry_horsea.aif deleted file mode 100644 index e41eff4b1..000000000 Binary files a/sound/direct_sound_samples/cry_horsea.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_houndoom.aif b/sound/direct_sound_samples/cry_houndoom.aif deleted file mode 100644 index 6fec16d39..000000000 Binary files a/sound/direct_sound_samples/cry_houndoom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_houndour.aif b/sound/direct_sound_samples/cry_houndour.aif deleted file mode 100644 index 7431bbf29..000000000 Binary files a/sound/direct_sound_samples/cry_houndour.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_huntail.aif b/sound/direct_sound_samples/cry_huntail.aif deleted file mode 100644 index f1d3b29d9..000000000 Binary files a/sound/direct_sound_samples/cry_huntail.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_hypno.aif b/sound/direct_sound_samples/cry_hypno.aif deleted file mode 100644 index 32672a3c3..000000000 Binary files a/sound/direct_sound_samples/cry_hypno.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_igglybuff.aif b/sound/direct_sound_samples/cry_igglybuff.aif deleted file mode 100644 index 8de8394d5..000000000 Binary files a/sound/direct_sound_samples/cry_igglybuff.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_illumise.aif b/sound/direct_sound_samples/cry_illumise.aif deleted file mode 100644 index 75e03efc8..000000000 Binary files a/sound/direct_sound_samples/cry_illumise.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ivysaur.aif b/sound/direct_sound_samples/cry_ivysaur.aif deleted file mode 100644 index ea474ff88..000000000 Binary files a/sound/direct_sound_samples/cry_ivysaur.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_jigglypuff.aif b/sound/direct_sound_samples/cry_jigglypuff.aif deleted file mode 100644 index 780424b4f..000000000 Binary files a/sound/direct_sound_samples/cry_jigglypuff.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_jirachi.aif b/sound/direct_sound_samples/cry_jirachi.aif deleted file mode 100644 index ea8a5c8ad..000000000 Binary files a/sound/direct_sound_samples/cry_jirachi.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_jolteon.aif b/sound/direct_sound_samples/cry_jolteon.aif deleted file mode 100644 index 013369158..000000000 Binary files a/sound/direct_sound_samples/cry_jolteon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_jumpluff.aif b/sound/direct_sound_samples/cry_jumpluff.aif deleted file mode 100644 index 13b0fd315..000000000 Binary files a/sound/direct_sound_samples/cry_jumpluff.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_jynx.aif b/sound/direct_sound_samples/cry_jynx.aif deleted file mode 100644 index 7394a48a2..000000000 Binary files a/sound/direct_sound_samples/cry_jynx.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kabuto.aif b/sound/direct_sound_samples/cry_kabuto.aif deleted file mode 100644 index 6ae9801b5..000000000 Binary files a/sound/direct_sound_samples/cry_kabuto.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kabutops.aif b/sound/direct_sound_samples/cry_kabutops.aif deleted file mode 100644 index f23778e57..000000000 Binary files a/sound/direct_sound_samples/cry_kabutops.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kadabra.aif b/sound/direct_sound_samples/cry_kadabra.aif deleted file mode 100644 index bfcc18031..000000000 Binary files a/sound/direct_sound_samples/cry_kadabra.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kakuna.aif b/sound/direct_sound_samples/cry_kakuna.aif deleted file mode 100644 index 7c4e9d7a8..000000000 Binary files a/sound/direct_sound_samples/cry_kakuna.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kangaskhan.aif b/sound/direct_sound_samples/cry_kangaskhan.aif deleted file mode 100644 index 643e81eb7..000000000 Binary files a/sound/direct_sound_samples/cry_kangaskhan.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kecleon.aif b/sound/direct_sound_samples/cry_kecleon.aif deleted file mode 100644 index f27ae1832..000000000 Binary files a/sound/direct_sound_samples/cry_kecleon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kingdra.aif b/sound/direct_sound_samples/cry_kingdra.aif deleted file mode 100644 index ade230c82..000000000 Binary files a/sound/direct_sound_samples/cry_kingdra.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kingler.aif b/sound/direct_sound_samples/cry_kingler.aif deleted file mode 100644 index a1d845f45..000000000 Binary files a/sound/direct_sound_samples/cry_kingler.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kirlia.aif b/sound/direct_sound_samples/cry_kirlia.aif deleted file mode 100644 index 692e03e5f..000000000 Binary files a/sound/direct_sound_samples/cry_kirlia.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_koffing.aif b/sound/direct_sound_samples/cry_koffing.aif deleted file mode 100644 index 7ca9de088..000000000 Binary files a/sound/direct_sound_samples/cry_koffing.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_krabby.aif b/sound/direct_sound_samples/cry_krabby.aif deleted file mode 100644 index 6b7692f21..000000000 Binary files a/sound/direct_sound_samples/cry_krabby.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_kyogre.aif b/sound/direct_sound_samples/cry_kyogre.aif deleted file mode 100644 index 290948319..000000000 Binary files a/sound/direct_sound_samples/cry_kyogre.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lairon.aif b/sound/direct_sound_samples/cry_lairon.aif deleted file mode 100644 index b487165bf..000000000 Binary files a/sound/direct_sound_samples/cry_lairon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lanturn.aif b/sound/direct_sound_samples/cry_lanturn.aif deleted file mode 100644 index dfeac1fbd..000000000 Binary files a/sound/direct_sound_samples/cry_lanturn.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lapras.aif b/sound/direct_sound_samples/cry_lapras.aif deleted file mode 100644 index 61de32408..000000000 Binary files a/sound/direct_sound_samples/cry_lapras.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_larvitar.aif b/sound/direct_sound_samples/cry_larvitar.aif deleted file mode 100644 index 1ab0e1d5f..000000000 Binary files a/sound/direct_sound_samples/cry_larvitar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_latias.aif b/sound/direct_sound_samples/cry_latias.aif deleted file mode 100644 index 46f7235f3..000000000 Binary files a/sound/direct_sound_samples/cry_latias.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_latios.aif b/sound/direct_sound_samples/cry_latios.aif deleted file mode 100644 index b8ace2a30..000000000 Binary files a/sound/direct_sound_samples/cry_latios.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ledian.aif b/sound/direct_sound_samples/cry_ledian.aif deleted file mode 100644 index baefb5fa3..000000000 Binary files a/sound/direct_sound_samples/cry_ledian.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ledyba.aif b/sound/direct_sound_samples/cry_ledyba.aif deleted file mode 100644 index 4f26859a7..000000000 Binary files a/sound/direct_sound_samples/cry_ledyba.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lickitung.aif b/sound/direct_sound_samples/cry_lickitung.aif deleted file mode 100644 index ef889a275..000000000 Binary files a/sound/direct_sound_samples/cry_lickitung.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lileep.aif b/sound/direct_sound_samples/cry_lileep.aif deleted file mode 100644 index ed8258eb7..000000000 Binary files a/sound/direct_sound_samples/cry_lileep.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_linoone.aif b/sound/direct_sound_samples/cry_linoone.aif deleted file mode 100644 index 4e5e7d3b5..000000000 Binary files a/sound/direct_sound_samples/cry_linoone.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lombre.aif b/sound/direct_sound_samples/cry_lombre.aif deleted file mode 100644 index abafe4321..000000000 Binary files a/sound/direct_sound_samples/cry_lombre.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lotad.aif b/sound/direct_sound_samples/cry_lotad.aif deleted file mode 100644 index 2596f4390..000000000 Binary files a/sound/direct_sound_samples/cry_lotad.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_loudred.aif b/sound/direct_sound_samples/cry_loudred.aif deleted file mode 100644 index fed7ebec8..000000000 Binary files a/sound/direct_sound_samples/cry_loudred.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ludicolo.aif b/sound/direct_sound_samples/cry_ludicolo.aif deleted file mode 100644 index 7cf670f38..000000000 Binary files a/sound/direct_sound_samples/cry_ludicolo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lugia.aif b/sound/direct_sound_samples/cry_lugia.aif deleted file mode 100644 index 45890a2fc..000000000 Binary files a/sound/direct_sound_samples/cry_lugia.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_lunatone.aif b/sound/direct_sound_samples/cry_lunatone.aif deleted file mode 100644 index 42cbc5e3c..000000000 Binary files a/sound/direct_sound_samples/cry_lunatone.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_luvdisc.aif b/sound/direct_sound_samples/cry_luvdisc.aif deleted file mode 100644 index 3cc0cc744..000000000 Binary files a/sound/direct_sound_samples/cry_luvdisc.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_machamp.aif b/sound/direct_sound_samples/cry_machamp.aif deleted file mode 100644 index ddeaf22c8..000000000 Binary files a/sound/direct_sound_samples/cry_machamp.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_machoke.aif b/sound/direct_sound_samples/cry_machoke.aif deleted file mode 100644 index 97065ee09..000000000 Binary files a/sound/direct_sound_samples/cry_machoke.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_machop.aif b/sound/direct_sound_samples/cry_machop.aif deleted file mode 100644 index d92419e84..000000000 Binary files a/sound/direct_sound_samples/cry_machop.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magby.aif b/sound/direct_sound_samples/cry_magby.aif deleted file mode 100644 index 12f3dc889..000000000 Binary files a/sound/direct_sound_samples/cry_magby.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magcargo.aif b/sound/direct_sound_samples/cry_magcargo.aif deleted file mode 100644 index bef0351c0..000000000 Binary files a/sound/direct_sound_samples/cry_magcargo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magikarp.aif b/sound/direct_sound_samples/cry_magikarp.aif deleted file mode 100644 index f4f9219c5..000000000 Binary files a/sound/direct_sound_samples/cry_magikarp.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magmar.aif b/sound/direct_sound_samples/cry_magmar.aif deleted file mode 100644 index b79c8b9a1..000000000 Binary files a/sound/direct_sound_samples/cry_magmar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magnemite.aif b/sound/direct_sound_samples/cry_magnemite.aif deleted file mode 100644 index ebb9103d9..000000000 Binary files a/sound/direct_sound_samples/cry_magnemite.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_magneton.aif b/sound/direct_sound_samples/cry_magneton.aif deleted file mode 100644 index 53083ac62..000000000 Binary files a/sound/direct_sound_samples/cry_magneton.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_makuhita.aif b/sound/direct_sound_samples/cry_makuhita.aif deleted file mode 100644 index 38d7f4b44..000000000 Binary files a/sound/direct_sound_samples/cry_makuhita.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_manectric.aif b/sound/direct_sound_samples/cry_manectric.aif deleted file mode 100644 index 18a8f4666..000000000 Binary files a/sound/direct_sound_samples/cry_manectric.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mankey.aif b/sound/direct_sound_samples/cry_mankey.aif deleted file mode 100644 index dda929d4c..000000000 Binary files a/sound/direct_sound_samples/cry_mankey.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mantine.aif b/sound/direct_sound_samples/cry_mantine.aif deleted file mode 100644 index d1840aafa..000000000 Binary files a/sound/direct_sound_samples/cry_mantine.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mareep.aif b/sound/direct_sound_samples/cry_mareep.aif deleted file mode 100644 index 2615b9def..000000000 Binary files a/sound/direct_sound_samples/cry_mareep.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_marill.aif b/sound/direct_sound_samples/cry_marill.aif deleted file mode 100644 index 48d936e7d..000000000 Binary files a/sound/direct_sound_samples/cry_marill.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_marowak.aif b/sound/direct_sound_samples/cry_marowak.aif deleted file mode 100644 index 279381bb5..000000000 Binary files a/sound/direct_sound_samples/cry_marowak.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_marshtomp.aif b/sound/direct_sound_samples/cry_marshtomp.aif deleted file mode 100644 index c0106ff6c..000000000 Binary files a/sound/direct_sound_samples/cry_marshtomp.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_masquerain.aif b/sound/direct_sound_samples/cry_masquerain.aif deleted file mode 100644 index 107bed2f7..000000000 Binary files a/sound/direct_sound_samples/cry_masquerain.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mawile.aif b/sound/direct_sound_samples/cry_mawile.aif deleted file mode 100644 index 81b252b57..000000000 Binary files a/sound/direct_sound_samples/cry_mawile.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_medicham.aif b/sound/direct_sound_samples/cry_medicham.aif deleted file mode 100644 index dc85dd3b5..000000000 Binary files a/sound/direct_sound_samples/cry_medicham.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_meditite.aif b/sound/direct_sound_samples/cry_meditite.aif deleted file mode 100644 index 8ac680f79..000000000 Binary files a/sound/direct_sound_samples/cry_meditite.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_meganium.aif b/sound/direct_sound_samples/cry_meganium.aif deleted file mode 100644 index ea1e1aa51..000000000 Binary files a/sound/direct_sound_samples/cry_meganium.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_meowth.aif b/sound/direct_sound_samples/cry_meowth.aif deleted file mode 100644 index aaf3825d5..000000000 Binary files a/sound/direct_sound_samples/cry_meowth.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_metagross.aif b/sound/direct_sound_samples/cry_metagross.aif deleted file mode 100644 index b96e6647c..000000000 Binary files a/sound/direct_sound_samples/cry_metagross.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_metang.aif b/sound/direct_sound_samples/cry_metang.aif deleted file mode 100644 index da544ce4d..000000000 Binary files a/sound/direct_sound_samples/cry_metang.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_metapod.aif b/sound/direct_sound_samples/cry_metapod.aif deleted file mode 100644 index ddba3ed44..000000000 Binary files a/sound/direct_sound_samples/cry_metapod.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mew.aif b/sound/direct_sound_samples/cry_mew.aif deleted file mode 100644 index 2651b96ca..000000000 Binary files a/sound/direct_sound_samples/cry_mew.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mewtwo.aif b/sound/direct_sound_samples/cry_mewtwo.aif deleted file mode 100644 index 8e1e6c7f1..000000000 Binary files a/sound/direct_sound_samples/cry_mewtwo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mightyena.aif b/sound/direct_sound_samples/cry_mightyena.aif deleted file mode 100644 index 53a645edc..000000000 Binary files a/sound/direct_sound_samples/cry_mightyena.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_milotic.aif b/sound/direct_sound_samples/cry_milotic.aif deleted file mode 100644 index 93a14161b..000000000 Binary files a/sound/direct_sound_samples/cry_milotic.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_miltank.aif b/sound/direct_sound_samples/cry_miltank.aif deleted file mode 100644 index ad8a41a45..000000000 Binary files a/sound/direct_sound_samples/cry_miltank.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_minun.aif b/sound/direct_sound_samples/cry_minun.aif deleted file mode 100644 index a55aa5631..000000000 Binary files a/sound/direct_sound_samples/cry_minun.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_misdreavus.aif b/sound/direct_sound_samples/cry_misdreavus.aif deleted file mode 100644 index 39a09f4d0..000000000 Binary files a/sound/direct_sound_samples/cry_misdreavus.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_moltres.aif b/sound/direct_sound_samples/cry_moltres.aif deleted file mode 100644 index 2e038a3d7..000000000 Binary files a/sound/direct_sound_samples/cry_moltres.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mr_mime.aif b/sound/direct_sound_samples/cry_mr_mime.aif deleted file mode 100644 index ff870dbc4..000000000 Binary files a/sound/direct_sound_samples/cry_mr_mime.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_mudkip.aif b/sound/direct_sound_samples/cry_mudkip.aif deleted file mode 100644 index e8fa5c212..000000000 Binary files a/sound/direct_sound_samples/cry_mudkip.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_muk.aif b/sound/direct_sound_samples/cry_muk.aif deleted file mode 100644 index f61ff4075..000000000 Binary files a/sound/direct_sound_samples/cry_muk.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_murkrow.aif b/sound/direct_sound_samples/cry_murkrow.aif deleted file mode 100644 index 4beddff1e..000000000 Binary files a/sound/direct_sound_samples/cry_murkrow.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_natu.aif b/sound/direct_sound_samples/cry_natu.aif deleted file mode 100644 index e6e38d5cc..000000000 Binary files a/sound/direct_sound_samples/cry_natu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidoking.aif b/sound/direct_sound_samples/cry_nidoking.aif deleted file mode 100644 index a0c86f9ab..000000000 Binary files a/sound/direct_sound_samples/cry_nidoking.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidoqueen.aif b/sound/direct_sound_samples/cry_nidoqueen.aif deleted file mode 100644 index 6c8f5254b..000000000 Binary files a/sound/direct_sound_samples/cry_nidoqueen.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidoran_f.aif b/sound/direct_sound_samples/cry_nidoran_f.aif deleted file mode 100644 index b7c8a5317..000000000 Binary files a/sound/direct_sound_samples/cry_nidoran_f.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidoran_m.aif b/sound/direct_sound_samples/cry_nidoran_m.aif deleted file mode 100644 index 08fc81c8b..000000000 Binary files a/sound/direct_sound_samples/cry_nidoran_m.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidorina.aif b/sound/direct_sound_samples/cry_nidorina.aif deleted file mode 100644 index 91e293a50..000000000 Binary files a/sound/direct_sound_samples/cry_nidorina.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nidorino.aif b/sound/direct_sound_samples/cry_nidorino.aif deleted file mode 100644 index 959351363..000000000 Binary files a/sound/direct_sound_samples/cry_nidorino.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nincada.aif b/sound/direct_sound_samples/cry_nincada.aif deleted file mode 100644 index 5f96bda50..000000000 Binary files a/sound/direct_sound_samples/cry_nincada.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ninetales.aif b/sound/direct_sound_samples/cry_ninetales.aif deleted file mode 100644 index 70c8cf528..000000000 Binary files a/sound/direct_sound_samples/cry_ninetales.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ninjask.aif b/sound/direct_sound_samples/cry_ninjask.aif deleted file mode 100644 index a6f07e8d3..000000000 Binary files a/sound/direct_sound_samples/cry_ninjask.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_noctowl.aif b/sound/direct_sound_samples/cry_noctowl.aif deleted file mode 100644 index fe2e63d45..000000000 Binary files a/sound/direct_sound_samples/cry_noctowl.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_none.aif b/sound/direct_sound_samples/cry_none.aif deleted file mode 100644 index 44bb79c3c..000000000 Binary files a/sound/direct_sound_samples/cry_none.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nosepass.aif b/sound/direct_sound_samples/cry_nosepass.aif deleted file mode 100644 index be65ba082..000000000 Binary files a/sound/direct_sound_samples/cry_nosepass.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_numel.aif b/sound/direct_sound_samples/cry_numel.aif deleted file mode 100644 index 55cce5f2c..000000000 Binary files a/sound/direct_sound_samples/cry_numel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_nuzleaf.aif b/sound/direct_sound_samples/cry_nuzleaf.aif deleted file mode 100644 index d668f3fd3..000000000 Binary files a/sound/direct_sound_samples/cry_nuzleaf.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_octillery.aif b/sound/direct_sound_samples/cry_octillery.aif deleted file mode 100644 index 75ee28ceb..000000000 Binary files a/sound/direct_sound_samples/cry_octillery.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_oddish.aif b/sound/direct_sound_samples/cry_oddish.aif deleted file mode 100644 index 6909a8dad..000000000 Binary files a/sound/direct_sound_samples/cry_oddish.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_omanyte.aif b/sound/direct_sound_samples/cry_omanyte.aif deleted file mode 100644 index 15ec2d1ef..000000000 Binary files a/sound/direct_sound_samples/cry_omanyte.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_omastar.aif b/sound/direct_sound_samples/cry_omastar.aif deleted file mode 100644 index e67d5d7fc..000000000 Binary files a/sound/direct_sound_samples/cry_omastar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_onix.aif b/sound/direct_sound_samples/cry_onix.aif deleted file mode 100644 index aa8a16505..000000000 Binary files a/sound/direct_sound_samples/cry_onix.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_paras.aif b/sound/direct_sound_samples/cry_paras.aif deleted file mode 100644 index f9d69c21c..000000000 Binary files a/sound/direct_sound_samples/cry_paras.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_parasect.aif b/sound/direct_sound_samples/cry_parasect.aif deleted file mode 100644 index d6d9433e9..000000000 Binary files a/sound/direct_sound_samples/cry_parasect.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pelipper.aif b/sound/direct_sound_samples/cry_pelipper.aif deleted file mode 100644 index 26718f848..000000000 Binary files a/sound/direct_sound_samples/cry_pelipper.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_persian.aif b/sound/direct_sound_samples/cry_persian.aif deleted file mode 100644 index 40b3a2c56..000000000 Binary files a/sound/direct_sound_samples/cry_persian.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_phanpy.aif b/sound/direct_sound_samples/cry_phanpy.aif deleted file mode 100644 index 2fcab3c82..000000000 Binary files a/sound/direct_sound_samples/cry_phanpy.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pichu.aif b/sound/direct_sound_samples/cry_pichu.aif deleted file mode 100644 index de47bbab8..000000000 Binary files a/sound/direct_sound_samples/cry_pichu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pidgeot.aif b/sound/direct_sound_samples/cry_pidgeot.aif deleted file mode 100644 index af400cdc6..000000000 Binary files a/sound/direct_sound_samples/cry_pidgeot.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pidgeotto.aif b/sound/direct_sound_samples/cry_pidgeotto.aif deleted file mode 100644 index 7c71c8f3e..000000000 Binary files a/sound/direct_sound_samples/cry_pidgeotto.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pidgey.aif b/sound/direct_sound_samples/cry_pidgey.aif deleted file mode 100644 index b9c3a5d2a..000000000 Binary files a/sound/direct_sound_samples/cry_pidgey.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pikachu.aif b/sound/direct_sound_samples/cry_pikachu.aif deleted file mode 100644 index 690bf5e1d..000000000 Binary files a/sound/direct_sound_samples/cry_pikachu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_piloswine.aif b/sound/direct_sound_samples/cry_piloswine.aif deleted file mode 100644 index b1f34d3b5..000000000 Binary files a/sound/direct_sound_samples/cry_piloswine.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pineco.aif b/sound/direct_sound_samples/cry_pineco.aif deleted file mode 100644 index 80292bda0..000000000 Binary files a/sound/direct_sound_samples/cry_pineco.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pinsir.aif b/sound/direct_sound_samples/cry_pinsir.aif deleted file mode 100644 index cf27a11de..000000000 Binary files a/sound/direct_sound_samples/cry_pinsir.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_plusle.aif b/sound/direct_sound_samples/cry_plusle.aif deleted file mode 100644 index d68984263..000000000 Binary files a/sound/direct_sound_samples/cry_plusle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_politoed.aif b/sound/direct_sound_samples/cry_politoed.aif deleted file mode 100644 index 38b1883b4..000000000 Binary files a/sound/direct_sound_samples/cry_politoed.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_poliwag.aif b/sound/direct_sound_samples/cry_poliwag.aif deleted file mode 100644 index 8467f0540..000000000 Binary files a/sound/direct_sound_samples/cry_poliwag.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_poliwhirl.aif b/sound/direct_sound_samples/cry_poliwhirl.aif deleted file mode 100644 index f0851c693..000000000 Binary files a/sound/direct_sound_samples/cry_poliwhirl.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_poliwrath.aif b/sound/direct_sound_samples/cry_poliwrath.aif deleted file mode 100644 index 8d19f1d86..000000000 Binary files a/sound/direct_sound_samples/cry_poliwrath.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ponyta.aif b/sound/direct_sound_samples/cry_ponyta.aif deleted file mode 100644 index 46feb123d..000000000 Binary files a/sound/direct_sound_samples/cry_ponyta.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_poochyena.aif b/sound/direct_sound_samples/cry_poochyena.aif deleted file mode 100644 index 3b464ce13..000000000 Binary files a/sound/direct_sound_samples/cry_poochyena.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_porygon.aif b/sound/direct_sound_samples/cry_porygon.aif deleted file mode 100644 index ced70b379..000000000 Binary files a/sound/direct_sound_samples/cry_porygon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_porygon2.aif b/sound/direct_sound_samples/cry_porygon2.aif deleted file mode 100644 index c08a3caaf..000000000 Binary files a/sound/direct_sound_samples/cry_porygon2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_primeape.aif b/sound/direct_sound_samples/cry_primeape.aif deleted file mode 100644 index a868b3120..000000000 Binary files a/sound/direct_sound_samples/cry_primeape.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_psyduck.aif b/sound/direct_sound_samples/cry_psyduck.aif deleted file mode 100644 index d2d0612f2..000000000 Binary files a/sound/direct_sound_samples/cry_psyduck.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_pupitar.aif b/sound/direct_sound_samples/cry_pupitar.aif deleted file mode 100644 index 7386636ce..000000000 Binary files a/sound/direct_sound_samples/cry_pupitar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_quagsire.aif b/sound/direct_sound_samples/cry_quagsire.aif deleted file mode 100644 index 1953d0e42..000000000 Binary files a/sound/direct_sound_samples/cry_quagsire.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_quilava.aif b/sound/direct_sound_samples/cry_quilava.aif deleted file mode 100644 index efe873229..000000000 Binary files a/sound/direct_sound_samples/cry_quilava.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_qwilfish.aif b/sound/direct_sound_samples/cry_qwilfish.aif deleted file mode 100644 index 268c5c89d..000000000 Binary files a/sound/direct_sound_samples/cry_qwilfish.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_raichu.aif b/sound/direct_sound_samples/cry_raichu.aif deleted file mode 100644 index e59ffbad4..000000000 Binary files a/sound/direct_sound_samples/cry_raichu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_raikou.aif b/sound/direct_sound_samples/cry_raikou.aif deleted file mode 100644 index a57a2365c..000000000 Binary files a/sound/direct_sound_samples/cry_raikou.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ralts.aif b/sound/direct_sound_samples/cry_ralts.aif deleted file mode 100644 index 0baef5760..000000000 Binary files a/sound/direct_sound_samples/cry_ralts.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_rapidash.aif b/sound/direct_sound_samples/cry_rapidash.aif deleted file mode 100644 index 920f510e4..000000000 Binary files a/sound/direct_sound_samples/cry_rapidash.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_raticate.aif b/sound/direct_sound_samples/cry_raticate.aif deleted file mode 100644 index 01601cab5..000000000 Binary files a/sound/direct_sound_samples/cry_raticate.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_rattata.aif b/sound/direct_sound_samples/cry_rattata.aif deleted file mode 100644 index cb0e1f422..000000000 Binary files a/sound/direct_sound_samples/cry_rattata.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_rayquaza.aif b/sound/direct_sound_samples/cry_rayquaza.aif deleted file mode 100644 index 6115e11d8..000000000 Binary files a/sound/direct_sound_samples/cry_rayquaza.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_regice.aif b/sound/direct_sound_samples/cry_regice.aif deleted file mode 100644 index 6fa23dd73..000000000 Binary files a/sound/direct_sound_samples/cry_regice.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_regirock.aif b/sound/direct_sound_samples/cry_regirock.aif deleted file mode 100644 index ab2a47eb8..000000000 Binary files a/sound/direct_sound_samples/cry_regirock.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_registeel.aif b/sound/direct_sound_samples/cry_registeel.aif deleted file mode 100644 index f5374e5f0..000000000 Binary files a/sound/direct_sound_samples/cry_registeel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_relicanth.aif b/sound/direct_sound_samples/cry_relicanth.aif deleted file mode 100644 index 60af9cf4e..000000000 Binary files a/sound/direct_sound_samples/cry_relicanth.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_remoraid.aif b/sound/direct_sound_samples/cry_remoraid.aif deleted file mode 100644 index 16d3f1d65..000000000 Binary files a/sound/direct_sound_samples/cry_remoraid.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_rhydon.aif b/sound/direct_sound_samples/cry_rhydon.aif deleted file mode 100644 index cfa709ee9..000000000 Binary files a/sound/direct_sound_samples/cry_rhydon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_rhyhorn.aif b/sound/direct_sound_samples/cry_rhyhorn.aif deleted file mode 100644 index 47f344ba2..000000000 Binary files a/sound/direct_sound_samples/cry_rhyhorn.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_roselia.aif b/sound/direct_sound_samples/cry_roselia.aif deleted file mode 100644 index 50b60b77b..000000000 Binary files a/sound/direct_sound_samples/cry_roselia.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sableye.aif b/sound/direct_sound_samples/cry_sableye.aif deleted file mode 100644 index 1b3a9be30..000000000 Binary files a/sound/direct_sound_samples/cry_sableye.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_salamence.aif b/sound/direct_sound_samples/cry_salamence.aif deleted file mode 100644 index d2957809c..000000000 Binary files a/sound/direct_sound_samples/cry_salamence.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sandshrew.aif b/sound/direct_sound_samples/cry_sandshrew.aif deleted file mode 100644 index 6879be11d..000000000 Binary files a/sound/direct_sound_samples/cry_sandshrew.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sandslash.aif b/sound/direct_sound_samples/cry_sandslash.aif deleted file mode 100644 index ee4a458ed..000000000 Binary files a/sound/direct_sound_samples/cry_sandslash.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sceptile.aif b/sound/direct_sound_samples/cry_sceptile.aif deleted file mode 100644 index 7252cb85f..000000000 Binary files a/sound/direct_sound_samples/cry_sceptile.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_scizor.aif b/sound/direct_sound_samples/cry_scizor.aif deleted file mode 100644 index f1f7832ce..000000000 Binary files a/sound/direct_sound_samples/cry_scizor.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_scyther.aif b/sound/direct_sound_samples/cry_scyther.aif deleted file mode 100644 index 2b8cbc104..000000000 Binary files a/sound/direct_sound_samples/cry_scyther.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_seadra.aif b/sound/direct_sound_samples/cry_seadra.aif deleted file mode 100644 index 2f60cce4a..000000000 Binary files a/sound/direct_sound_samples/cry_seadra.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_seaking.aif b/sound/direct_sound_samples/cry_seaking.aif deleted file mode 100644 index e4fc7e70d..000000000 Binary files a/sound/direct_sound_samples/cry_seaking.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sealeo.aif b/sound/direct_sound_samples/cry_sealeo.aif deleted file mode 100644 index d9ea50026..000000000 Binary files a/sound/direct_sound_samples/cry_sealeo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_seedot.aif b/sound/direct_sound_samples/cry_seedot.aif deleted file mode 100644 index c37b769f8..000000000 Binary files a/sound/direct_sound_samples/cry_seedot.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_seel.aif b/sound/direct_sound_samples/cry_seel.aif deleted file mode 100644 index 84c4a0a94..000000000 Binary files a/sound/direct_sound_samples/cry_seel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sentret.aif b/sound/direct_sound_samples/cry_sentret.aif deleted file mode 100644 index 4aed7cd70..000000000 Binary files a/sound/direct_sound_samples/cry_sentret.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_seviper.aif b/sound/direct_sound_samples/cry_seviper.aif deleted file mode 100644 index 6a15dd6e2..000000000 Binary files a/sound/direct_sound_samples/cry_seviper.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sharpedo.aif b/sound/direct_sound_samples/cry_sharpedo.aif deleted file mode 100644 index 1b02b56ce..000000000 Binary files a/sound/direct_sound_samples/cry_sharpedo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shedinja.aif b/sound/direct_sound_samples/cry_shedinja.aif deleted file mode 100644 index 6d1d565f3..000000000 Binary files a/sound/direct_sound_samples/cry_shedinja.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shelgon.aif b/sound/direct_sound_samples/cry_shelgon.aif deleted file mode 100644 index 24f234ffe..000000000 Binary files a/sound/direct_sound_samples/cry_shelgon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shellder.aif b/sound/direct_sound_samples/cry_shellder.aif deleted file mode 100644 index b2ea85228..000000000 Binary files a/sound/direct_sound_samples/cry_shellder.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shiftry.aif b/sound/direct_sound_samples/cry_shiftry.aif deleted file mode 100644 index c91ece114..000000000 Binary files a/sound/direct_sound_samples/cry_shiftry.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shroomish.aif b/sound/direct_sound_samples/cry_shroomish.aif deleted file mode 100644 index 9e944ca20..000000000 Binary files a/sound/direct_sound_samples/cry_shroomish.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shuckle.aif b/sound/direct_sound_samples/cry_shuckle.aif deleted file mode 100644 index d835d2de6..000000000 Binary files a/sound/direct_sound_samples/cry_shuckle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_shuppet.aif b/sound/direct_sound_samples/cry_shuppet.aif deleted file mode 100644 index 1cd9a2f14..000000000 Binary files a/sound/direct_sound_samples/cry_shuppet.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_silcoon.aif b/sound/direct_sound_samples/cry_silcoon.aif deleted file mode 100644 index ff48950ad..000000000 Binary files a/sound/direct_sound_samples/cry_silcoon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_skarmory.aif b/sound/direct_sound_samples/cry_skarmory.aif deleted file mode 100644 index 88d3985a3..000000000 Binary files a/sound/direct_sound_samples/cry_skarmory.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_skiploom.aif b/sound/direct_sound_samples/cry_skiploom.aif deleted file mode 100644 index 201744d12..000000000 Binary files a/sound/direct_sound_samples/cry_skiploom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_skitty.aif b/sound/direct_sound_samples/cry_skitty.aif deleted file mode 100644 index 7dc4578f4..000000000 Binary files a/sound/direct_sound_samples/cry_skitty.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slaking.aif b/sound/direct_sound_samples/cry_slaking.aif deleted file mode 100644 index b6a4160f3..000000000 Binary files a/sound/direct_sound_samples/cry_slaking.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slakoth.aif b/sound/direct_sound_samples/cry_slakoth.aif deleted file mode 100644 index 0e4bbc3c3..000000000 Binary files a/sound/direct_sound_samples/cry_slakoth.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slowbro.aif b/sound/direct_sound_samples/cry_slowbro.aif deleted file mode 100644 index f74b753d2..000000000 Binary files a/sound/direct_sound_samples/cry_slowbro.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slowking.aif b/sound/direct_sound_samples/cry_slowking.aif deleted file mode 100644 index 245a42023..000000000 Binary files a/sound/direct_sound_samples/cry_slowking.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slowpoke.aif b/sound/direct_sound_samples/cry_slowpoke.aif deleted file mode 100644 index 82b05a9a7..000000000 Binary files a/sound/direct_sound_samples/cry_slowpoke.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_slugma.aif b/sound/direct_sound_samples/cry_slugma.aif deleted file mode 100644 index fed42817c..000000000 Binary files a/sound/direct_sound_samples/cry_slugma.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_smeargle.aif b/sound/direct_sound_samples/cry_smeargle.aif deleted file mode 100644 index 00dbedead..000000000 Binary files a/sound/direct_sound_samples/cry_smeargle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_smoochum.aif b/sound/direct_sound_samples/cry_smoochum.aif deleted file mode 100644 index 4005b4ad4..000000000 Binary files a/sound/direct_sound_samples/cry_smoochum.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sneasel.aif b/sound/direct_sound_samples/cry_sneasel.aif deleted file mode 100644 index 54242a23f..000000000 Binary files a/sound/direct_sound_samples/cry_sneasel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_snorlax.aif b/sound/direct_sound_samples/cry_snorlax.aif deleted file mode 100644 index f95128e3a..000000000 Binary files a/sound/direct_sound_samples/cry_snorlax.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_snorunt.aif b/sound/direct_sound_samples/cry_snorunt.aif deleted file mode 100644 index 53b05b229..000000000 Binary files a/sound/direct_sound_samples/cry_snorunt.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_snubbull.aif b/sound/direct_sound_samples/cry_snubbull.aif deleted file mode 100644 index bbba023fd..000000000 Binary files a/sound/direct_sound_samples/cry_snubbull.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_solrock.aif b/sound/direct_sound_samples/cry_solrock.aif deleted file mode 100644 index 64c71f289..000000000 Binary files a/sound/direct_sound_samples/cry_solrock.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_spearow.aif b/sound/direct_sound_samples/cry_spearow.aif deleted file mode 100644 index 7ce86ae29..000000000 Binary files a/sound/direct_sound_samples/cry_spearow.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_spheal.aif b/sound/direct_sound_samples/cry_spheal.aif deleted file mode 100644 index fb6470210..000000000 Binary files a/sound/direct_sound_samples/cry_spheal.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_spinarak.aif b/sound/direct_sound_samples/cry_spinarak.aif deleted file mode 100644 index 3c4c1eff1..000000000 Binary files a/sound/direct_sound_samples/cry_spinarak.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_spinda.aif b/sound/direct_sound_samples/cry_spinda.aif deleted file mode 100644 index 0217573c7..000000000 Binary files a/sound/direct_sound_samples/cry_spinda.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_spoink.aif b/sound/direct_sound_samples/cry_spoink.aif deleted file mode 100644 index 6cc9bf546..000000000 Binary files a/sound/direct_sound_samples/cry_spoink.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_squirtle.aif b/sound/direct_sound_samples/cry_squirtle.aif deleted file mode 100644 index 43a98a53d..000000000 Binary files a/sound/direct_sound_samples/cry_squirtle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_stantler.aif b/sound/direct_sound_samples/cry_stantler.aif deleted file mode 100644 index 36ba54658..000000000 Binary files a/sound/direct_sound_samples/cry_stantler.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_starmie.aif b/sound/direct_sound_samples/cry_starmie.aif deleted file mode 100644 index 7452a78f9..000000000 Binary files a/sound/direct_sound_samples/cry_starmie.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_staryu.aif b/sound/direct_sound_samples/cry_staryu.aif deleted file mode 100644 index 6ab5584bf..000000000 Binary files a/sound/direct_sound_samples/cry_staryu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_steelix.aif b/sound/direct_sound_samples/cry_steelix.aif deleted file mode 100644 index aa05e2d4c..000000000 Binary files a/sound/direct_sound_samples/cry_steelix.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sudowoodo.aif b/sound/direct_sound_samples/cry_sudowoodo.aif deleted file mode 100644 index 1af7e18eb..000000000 Binary files a/sound/direct_sound_samples/cry_sudowoodo.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_suicune.aif b/sound/direct_sound_samples/cry_suicune.aif deleted file mode 100644 index 697732d68..000000000 Binary files a/sound/direct_sound_samples/cry_suicune.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sunflora.aif b/sound/direct_sound_samples/cry_sunflora.aif deleted file mode 100644 index 126931adc..000000000 Binary files a/sound/direct_sound_samples/cry_sunflora.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_sunkern.aif b/sound/direct_sound_samples/cry_sunkern.aif deleted file mode 100644 index bede3bf95..000000000 Binary files a/sound/direct_sound_samples/cry_sunkern.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_surskit.aif b/sound/direct_sound_samples/cry_surskit.aif deleted file mode 100644 index 438b5b67a..000000000 Binary files a/sound/direct_sound_samples/cry_surskit.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_swablu.aif b/sound/direct_sound_samples/cry_swablu.aif deleted file mode 100644 index 066095f55..000000000 Binary files a/sound/direct_sound_samples/cry_swablu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_swalot.aif b/sound/direct_sound_samples/cry_swalot.aif deleted file mode 100644 index 518a9bf5a..000000000 Binary files a/sound/direct_sound_samples/cry_swalot.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_swampert.aif b/sound/direct_sound_samples/cry_swampert.aif deleted file mode 100644 index 56bd26405..000000000 Binary files a/sound/direct_sound_samples/cry_swampert.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_swellow.aif b/sound/direct_sound_samples/cry_swellow.aif deleted file mode 100644 index 2b94eb432..000000000 Binary files a/sound/direct_sound_samples/cry_swellow.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_swinub.aif b/sound/direct_sound_samples/cry_swinub.aif deleted file mode 100644 index dc68d62d8..000000000 Binary files a/sound/direct_sound_samples/cry_swinub.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_taillow.aif b/sound/direct_sound_samples/cry_taillow.aif deleted file mode 100644 index 8322a3224..000000000 Binary files a/sound/direct_sound_samples/cry_taillow.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tangela.aif b/sound/direct_sound_samples/cry_tangela.aif deleted file mode 100644 index c900b426d..000000000 Binary files a/sound/direct_sound_samples/cry_tangela.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tauros.aif b/sound/direct_sound_samples/cry_tauros.aif deleted file mode 100644 index 84fa9b317..000000000 Binary files a/sound/direct_sound_samples/cry_tauros.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_teddiursa.aif b/sound/direct_sound_samples/cry_teddiursa.aif deleted file mode 100644 index ba5cb5bc3..000000000 Binary files a/sound/direct_sound_samples/cry_teddiursa.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tentacool.aif b/sound/direct_sound_samples/cry_tentacool.aif deleted file mode 100644 index 332bec4b2..000000000 Binary files a/sound/direct_sound_samples/cry_tentacool.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tentacruel.aif b/sound/direct_sound_samples/cry_tentacruel.aif deleted file mode 100644 index e8ec1b14c..000000000 Binary files a/sound/direct_sound_samples/cry_tentacruel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_togepi.aif b/sound/direct_sound_samples/cry_togepi.aif deleted file mode 100644 index 87ef6ef2d..000000000 Binary files a/sound/direct_sound_samples/cry_togepi.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_togetic.aif b/sound/direct_sound_samples/cry_togetic.aif deleted file mode 100644 index 8aa18ac41..000000000 Binary files a/sound/direct_sound_samples/cry_togetic.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_torchic.aif b/sound/direct_sound_samples/cry_torchic.aif deleted file mode 100644 index 185a79499..000000000 Binary files a/sound/direct_sound_samples/cry_torchic.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_torkoal.aif b/sound/direct_sound_samples/cry_torkoal.aif deleted file mode 100644 index 9e56d3810..000000000 Binary files a/sound/direct_sound_samples/cry_torkoal.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_totodile.aif b/sound/direct_sound_samples/cry_totodile.aif deleted file mode 100644 index dbf2179a7..000000000 Binary files a/sound/direct_sound_samples/cry_totodile.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_trapinch.aif b/sound/direct_sound_samples/cry_trapinch.aif deleted file mode 100644 index 01664b72e..000000000 Binary files a/sound/direct_sound_samples/cry_trapinch.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_treecko.aif b/sound/direct_sound_samples/cry_treecko.aif deleted file mode 100644 index a7416e8da..000000000 Binary files a/sound/direct_sound_samples/cry_treecko.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tropius.aif b/sound/direct_sound_samples/cry_tropius.aif deleted file mode 100644 index bbb52787b..000000000 Binary files a/sound/direct_sound_samples/cry_tropius.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_typhlosion.aif b/sound/direct_sound_samples/cry_typhlosion.aif deleted file mode 100644 index f0238d066..000000000 Binary files a/sound/direct_sound_samples/cry_typhlosion.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tyranitar.aif b/sound/direct_sound_samples/cry_tyranitar.aif deleted file mode 100644 index 557f61769..000000000 Binary files a/sound/direct_sound_samples/cry_tyranitar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_tyrogue.aif b/sound/direct_sound_samples/cry_tyrogue.aif deleted file mode 100644 index e5065f58b..000000000 Binary files a/sound/direct_sound_samples/cry_tyrogue.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_umbreon.aif b/sound/direct_sound_samples/cry_umbreon.aif deleted file mode 100644 index 38129b1a7..000000000 Binary files a/sound/direct_sound_samples/cry_umbreon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_unown.aif b/sound/direct_sound_samples/cry_unown.aif deleted file mode 100644 index 8339ccb6b..000000000 Binary files a/sound/direct_sound_samples/cry_unown.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_unused_265.aif b/sound/direct_sound_samples/cry_unused_265.aif deleted file mode 100644 index 7f5965f06..000000000 Binary files a/sound/direct_sound_samples/cry_unused_265.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_unused_268.aif b/sound/direct_sound_samples/cry_unused_268.aif deleted file mode 100644 index 5cae364c3..000000000 Binary files a/sound/direct_sound_samples/cry_unused_268.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_ursaring.aif b/sound/direct_sound_samples/cry_ursaring.aif deleted file mode 100644 index fcc748bd1..000000000 Binary files a/sound/direct_sound_samples/cry_ursaring.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_vaporeon.aif b/sound/direct_sound_samples/cry_vaporeon.aif deleted file mode 100644 index 4967cfdeb..000000000 Binary files a/sound/direct_sound_samples/cry_vaporeon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_venomoth.aif b/sound/direct_sound_samples/cry_venomoth.aif deleted file mode 100644 index bc291ec33..000000000 Binary files a/sound/direct_sound_samples/cry_venomoth.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_venonat.aif b/sound/direct_sound_samples/cry_venonat.aif deleted file mode 100644 index e89d87fa8..000000000 Binary files a/sound/direct_sound_samples/cry_venonat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_venusaur.aif b/sound/direct_sound_samples/cry_venusaur.aif deleted file mode 100644 index 8a1f69e6e..000000000 Binary files a/sound/direct_sound_samples/cry_venusaur.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_vibrava.aif b/sound/direct_sound_samples/cry_vibrava.aif deleted file mode 100644 index 3e3180219..000000000 Binary files a/sound/direct_sound_samples/cry_vibrava.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_victreebel.aif b/sound/direct_sound_samples/cry_victreebel.aif deleted file mode 100644 index d6e6a4fe9..000000000 Binary files a/sound/direct_sound_samples/cry_victreebel.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_vigoroth.aif b/sound/direct_sound_samples/cry_vigoroth.aif deleted file mode 100644 index fc414f33d..000000000 Binary files a/sound/direct_sound_samples/cry_vigoroth.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_vileplume.aif b/sound/direct_sound_samples/cry_vileplume.aif deleted file mode 100644 index 723eec697..000000000 Binary files a/sound/direct_sound_samples/cry_vileplume.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_volbeat.aif b/sound/direct_sound_samples/cry_volbeat.aif deleted file mode 100644 index 6f765081e..000000000 Binary files a/sound/direct_sound_samples/cry_volbeat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_voltorb.aif b/sound/direct_sound_samples/cry_voltorb.aif deleted file mode 100644 index 96e3bff31..000000000 Binary files a/sound/direct_sound_samples/cry_voltorb.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_vulpix.aif b/sound/direct_sound_samples/cry_vulpix.aif deleted file mode 100644 index 20da23fb4..000000000 Binary files a/sound/direct_sound_samples/cry_vulpix.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wailmer.aif b/sound/direct_sound_samples/cry_wailmer.aif deleted file mode 100644 index e8de91333..000000000 Binary files a/sound/direct_sound_samples/cry_wailmer.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wailord.aif b/sound/direct_sound_samples/cry_wailord.aif deleted file mode 100644 index 2c0468010..000000000 Binary files a/sound/direct_sound_samples/cry_wailord.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_walrein.aif b/sound/direct_sound_samples/cry_walrein.aif deleted file mode 100644 index 24c00a596..000000000 Binary files a/sound/direct_sound_samples/cry_walrein.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wartortle.aif b/sound/direct_sound_samples/cry_wartortle.aif deleted file mode 100644 index 5dab7fd93..000000000 Binary files a/sound/direct_sound_samples/cry_wartortle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_weedle.aif b/sound/direct_sound_samples/cry_weedle.aif deleted file mode 100644 index 773c2c8ae..000000000 Binary files a/sound/direct_sound_samples/cry_weedle.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_weepinbell.aif b/sound/direct_sound_samples/cry_weepinbell.aif deleted file mode 100644 index cdd61380a..000000000 Binary files a/sound/direct_sound_samples/cry_weepinbell.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_weezing.aif b/sound/direct_sound_samples/cry_weezing.aif deleted file mode 100644 index 2e4a7fe13..000000000 Binary files a/sound/direct_sound_samples/cry_weezing.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_whiscash.aif b/sound/direct_sound_samples/cry_whiscash.aif deleted file mode 100644 index 219737f32..000000000 Binary files a/sound/direct_sound_samples/cry_whiscash.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_whismur.aif b/sound/direct_sound_samples/cry_whismur.aif deleted file mode 100644 index 4da92ca6a..000000000 Binary files a/sound/direct_sound_samples/cry_whismur.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wigglytuff.aif b/sound/direct_sound_samples/cry_wigglytuff.aif deleted file mode 100644 index 90aa90a23..000000000 Binary files a/sound/direct_sound_samples/cry_wigglytuff.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wingull.aif b/sound/direct_sound_samples/cry_wingull.aif deleted file mode 100644 index 182ef18e6..000000000 Binary files a/sound/direct_sound_samples/cry_wingull.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wobbuffet.aif b/sound/direct_sound_samples/cry_wobbuffet.aif deleted file mode 100644 index 70ee1f704..000000000 Binary files a/sound/direct_sound_samples/cry_wobbuffet.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wooper.aif b/sound/direct_sound_samples/cry_wooper.aif deleted file mode 100644 index 51a6b627e..000000000 Binary files a/sound/direct_sound_samples/cry_wooper.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wurmple.aif b/sound/direct_sound_samples/cry_wurmple.aif deleted file mode 100644 index 6442a4063..000000000 Binary files a/sound/direct_sound_samples/cry_wurmple.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_wynaut.aif b/sound/direct_sound_samples/cry_wynaut.aif deleted file mode 100644 index 798732c74..000000000 Binary files a/sound/direct_sound_samples/cry_wynaut.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_xatu.aif b/sound/direct_sound_samples/cry_xatu.aif deleted file mode 100644 index ac758fdbf..000000000 Binary files a/sound/direct_sound_samples/cry_xatu.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_yanma.aif b/sound/direct_sound_samples/cry_yanma.aif deleted file mode 100644 index df76534c5..000000000 Binary files a/sound/direct_sound_samples/cry_yanma.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_zangoose.aif b/sound/direct_sound_samples/cry_zangoose.aif deleted file mode 100644 index ce1622043..000000000 Binary files a/sound/direct_sound_samples/cry_zangoose.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_zapdos.aif b/sound/direct_sound_samples/cry_zapdos.aif deleted file mode 100644 index a8d914d14..000000000 Binary files a/sound/direct_sound_samples/cry_zapdos.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_zigzagoon.aif b/sound/direct_sound_samples/cry_zigzagoon.aif deleted file mode 100644 index 52b9bb4f4..000000000 Binary files a/sound/direct_sound_samples/cry_zigzagoon.aif and /dev/null differ diff --git a/sound/direct_sound_samples/cry_zubat.aif b/sound/direct_sound_samples/cry_zubat.aif deleted file mode 100644 index 45036d072..000000000 Binary files a/sound/direct_sound_samples/cry_zubat.aif and /dev/null differ -- cgit v1.2.3 From 961752e648fa63995c9021907ea1f6c9dc8e2a45 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 28 Jan 2018 11:36:25 -0800 Subject: Finish naming known sc88 noises and change naming scheme --- sound/direct_sound_data.inc | 150 ++++++++++----------- sound/direct_sound_samples/845ED34.aif | Bin 4086 -> 0 bytes sound/direct_sound_samples/8488F44.aif | Bin 6561 -> 0 bytes sound/direct_sound_samples/848C4A4.aif | Bin 7250 -> 0 bytes sound/direct_sound_samples/848E094.aif | Bin 5141 -> 0 bytes sound/direct_sound_samples/848F448.aif | Bin 9955 -> 0 bytes sound/direct_sound_samples/8491ACC.aif | Bin 4772 -> 0 bytes sound/direct_sound_samples/8493D20.aif | Bin 4967 -> 0 bytes sound/direct_sound_samples/8495028.aif | Bin 8555 -> 0 bytes sound/direct_sound_samples/8499110.aif | Bin 8818 -> 0 bytes sound/direct_sound_samples/84A5690.aif | Bin 2346 -> 0 bytes sound/direct_sound_samples/sc88/123_bubble.aif | Bin 4178 -> 0 bytes sound/direct_sound_samples/sc88/123_pink_noise.aif | Bin 8207 -> 0 bytes .../direct_sound_samples/sc88/123_white_noise.aif | Bin 7071 -> 0 bytes sound/direct_sound_samples/sc88/13_marimba.aif | Bin 2709 -> 0 bytes .../direct_sound_samples/sc88/15_tubular_bell.aif | Bin 6610 -> 0 bytes sound/direct_sound_samples/sc88/18_organ_2.aif | Bin 2138 -> 0 bytes sound/direct_sound_samples/sc88/1_piano_1.aif | Bin 2706 -> 0 bytes .../direct_sound_samples/sc88/22_accordion_fr.aif | Bin 5169 -> 0 bytes .../sc88/25_nylon_string_guitar.aif | Bin 8144 -> 0 bytes .../sc88/26_steel_string_guitar.aif | Bin 4031 -> 0 bytes sound/direct_sound_samples/sc88/2_piano_2.aif | Bin 5564 -> 0 bytes sound/direct_sound_samples/sc88/34_finger_slap.aif | Bin 3993 -> 0 bytes .../direct_sound_samples/sc88/34_fingered_bass.aif | Bin 7344 -> 0 bytes .../direct_sound_samples/sc88/36_fretless_bass.aif | Bin 3115 -> 0 bytes sound/direct_sound_samples/sc88/37_unison_slap.aif | Bin 3052 -> 0 bytes .../direct_sound_samples/sc88/39_synth_bass_1.aif | Bin 3284 -> 0 bytes sound/direct_sound_samples/sc88/3_piano_3.aif | Bin 5824 -> 0 bytes .../sc88/46_pizzicato_strings.aif | Bin 1947 -> 0 bytes sound/direct_sound_samples/sc88/49_strings.aif | Bin 13830 -> 0 bytes .../sc88/49_strings_plus_flute.aif | Bin 9085 -> 0 bytes .../sc88/49_strings_plus_horn.aif | Bin 14123 -> 0 bytes sound/direct_sound_samples/sc88/57_trumpet.aif | Bin 5040 -> 0 bytes sound/direct_sound_samples/sc88/58_trombone.aif | Bin 5489 -> 0 bytes sound/direct_sound_samples/sc88/59_tuba.aif | Bin 5247 -> 0 bytes .../sc88/60_cup_muted_trumpet.aif | Bin 4347 -> 0 bytes .../sc88/60_muted_trumpet_3.aif | Bin 4283 -> 0 bytes .../direct_sound_samples/sc88/61_french_horns.aif | Bin 28662 -> 0 bytes .../sc88/61_wide_french_horns.aif | Bin 17892 -> 0 bytes sound/direct_sound_samples/sc88/74_flute.aif | Bin 1989 -> 0 bytes sound/direct_sound_samples/sc88/81_square_wave.aif | Bin 7286 -> 0 bytes sound/direct_sound_samples/sc88/8456330.aif | Bin 1797 -> 0 bytes sound/direct_sound_samples/sc88/8497134.aif | Bin 8253 -> 0 bytes sound/direct_sound_samples/sc88/849F40C.aif | Bin 13121 -> 0 bytes .../sc88/drumkit_bass_drum.aif | Bin 1249 -> 0 bytes sound/direct_sound_samples/sc88/drumkit_cabasa.aif | Bin 2294 -> 0 bytes .../sc88/drumkit_closed_hi_hat.aif | Bin 1107 -> 0 bytes .../sc88/drumkit_crash_cymbal_1.aif | Bin 3979 -> 0 bytes .../sc88/drumkit_crash_cymbal_2.aif | Bin 2372 -> 0 bytes sound/direct_sound_samples/sc88/drumkit_guiro.aif | Bin 2093 -> 0 bytes .../sc88/drumkit_hand_clap.aif | Bin 2258 -> 0 bytes .../sc88/drumkit_hi_mid_tom.aif | Bin 4256 -> 0 bytes .../sc88/drumkit_low_conga.aif | Bin 1546 -> 0 bytes .../sc88/drumkit_mute_hi_conga.aif | Bin 1370 -> 0 bytes .../sc88/drumkit_open_hi_hat.aif | Bin 3728 -> 0 bytes .../direct_sound_samples/sc88/drumkit_snare_1.aif | Bin 1844 -> 0 bytes .../direct_sound_samples/sc88/drumkit_snare_2.aif | Bin 2231 -> 0 bytes .../direct_sound_samples/sc88/drumkit_snare_3.aif | Bin 5382 -> 0 bytes .../direct_sound_samples/sc88/drumkit_snare_4.aif | Bin 2669 -> 0 bytes .../sc88/drumkit_timbale_1.aif | Bin 5424 -> 0 bytes .../sc88/drumkit_timbale_2.aif | Bin 5424 -> 0 bytes sound/direct_sound_samples/synth/hi_hat_rattle.aif | Bin 0 -> 4086 bytes .../direct_sound_samples/synth/machine_sound1.aif | Bin 0 -> 5141 bytes .../direct_sound_samples/synth/machine_sound2.aif | Bin 0 -> 7250 bytes sound/direct_sound_samples/synth/noise1.aif | Bin 0 -> 8207 bytes sound/direct_sound_samples/synth/noise2.aif | Bin 0 -> 7071 bytes sound/direct_sound_samples/synth/noise3.aif | Bin 0 -> 4772 bytes sound/direct_sound_samples/synth/ring.aif | Bin 0 -> 6561 bytes .../direct_sound_samples/synth/sc88_123_bubble.aif | Bin 0 -> 4178 bytes .../synth/sc88_123_pink_noise.aif | Bin 0 -> 8555 bytes .../synth/sc88_123_white_noise.aif | Bin 0 -> 8818 bytes .../synth/sc88_124_horse_gallop.aif | Bin 0 -> 2346 bytes .../synth/sc88_126_car_crash.aif | Bin 0 -> 4967 bytes .../synth/sc88_127_applause_2.aif | Bin 0 -> 9955 bytes .../direct_sound_samples/synth/sc88_13_marimba.aif | Bin 0 -> 2709 bytes .../synth/sc88_15_tubular_bell.aif | Bin 0 -> 6610 bytes .../direct_sound_samples/synth/sc88_18_organ_2.aif | Bin 0 -> 2138 bytes .../direct_sound_samples/synth/sc88_1_piano_1.aif | Bin 0 -> 2706 bytes .../synth/sc88_22_accordion_fr.aif | Bin 0 -> 5169 bytes .../synth/sc88_25_nylon_string_guitar.aif | Bin 0 -> 8144 bytes .../synth/sc88_26_steel_string_guitar.aif | Bin 0 -> 4031 bytes .../direct_sound_samples/synth/sc88_2_piano_2.aif | Bin 0 -> 5564 bytes .../synth/sc88_34_finger_slap.aif | Bin 0 -> 3993 bytes .../synth/sc88_34_fingered_bass.aif | Bin 0 -> 7344 bytes .../synth/sc88_36_fretless_bass.aif | Bin 0 -> 3115 bytes .../synth/sc88_37_unison_slap.aif | Bin 0 -> 3052 bytes .../synth/sc88_39_synth_bass_1.aif | Bin 0 -> 3284 bytes .../direct_sound_samples/synth/sc88_3_piano_3.aif | Bin 0 -> 5824 bytes .../synth/sc88_46_pizzicato_strings.aif | Bin 0 -> 1947 bytes .../direct_sound_samples/synth/sc88_49_strings.aif | Bin 0 -> 13830 bytes .../synth/sc88_49_strings_plus_flute.aif | Bin 0 -> 9085 bytes .../synth/sc88_49_strings_plus_horn.aif | Bin 0 -> 14123 bytes .../direct_sound_samples/synth/sc88_57_trumpet.aif | Bin 0 -> 5040 bytes .../synth/sc88_58_trombone.aif | Bin 0 -> 5489 bytes sound/direct_sound_samples/synth/sc88_59_tuba.aif | Bin 0 -> 5247 bytes .../synth/sc88_60_cup_muted_trumpet.aif | Bin 0 -> 4347 bytes .../synth/sc88_60_muted_trumpet_3.aif | Bin 0 -> 4283 bytes .../synth/sc88_61_french_horns.aif | Bin 0 -> 28662 bytes .../synth/sc88_61_wide_french_horns.aif | Bin 0 -> 17892 bytes sound/direct_sound_samples/synth/sc88_74_flute.aif | Bin 0 -> 1989 bytes .../synth/sc88_81_square_wave.aif | Bin 0 -> 7286 bytes .../synth/sc88_82_jp_super_saw.aif | Bin 0 -> 13121 bytes .../synth/sc88_82_waspy_synth.aif | Bin 0 -> 8253 bytes sound/direct_sound_samples/synth/sc88_8456330.aif | Bin 0 -> 1797 bytes .../synth/sc88_drumkit_bass_drum.aif | Bin 0 -> 1249 bytes .../synth/sc88_drumkit_cabasa.aif | Bin 0 -> 2294 bytes .../synth/sc88_drumkit_closed_hi_hat.aif | Bin 0 -> 1107 bytes .../synth/sc88_drumkit_crash_cymbal_1.aif | Bin 0 -> 3979 bytes .../synth/sc88_drumkit_crash_cymbal_2.aif | Bin 0 -> 2372 bytes .../synth/sc88_drumkit_guiro.aif | Bin 0 -> 2093 bytes .../synth/sc88_drumkit_hand_clap.aif | Bin 0 -> 2258 bytes .../synth/sc88_drumkit_hi_mid_tom.aif | Bin 0 -> 4256 bytes .../synth/sc88_drumkit_low_conga.aif | Bin 0 -> 1546 bytes .../synth/sc88_drumkit_mute_hi_conga.aif | Bin 0 -> 1370 bytes .../synth/sc88_drumkit_open_hi_hat.aif | Bin 0 -> 3728 bytes .../synth/sc88_drumkit_snare_1.aif | Bin 0 -> 1844 bytes .../synth/sc88_drumkit_snare_2.aif | Bin 0 -> 2231 bytes .../synth/sc88_drumkit_snare_3.aif | Bin 0 -> 5382 bytes .../synth/sc88_drumkit_snare_4.aif | Bin 0 -> 2669 bytes .../synth/sc88_drumkit_timbale_1.aif | Bin 0 -> 5424 bytes .../synth/sc88_drumkit_timbale_2.aif | Bin 0 -> 5424 bytes sound/voice_groups.inc | 46 +++---- 122 files changed, 98 insertions(+), 98 deletions(-) delete mode 100644 sound/direct_sound_samples/845ED34.aif delete mode 100644 sound/direct_sound_samples/8488F44.aif delete mode 100644 sound/direct_sound_samples/848C4A4.aif delete mode 100644 sound/direct_sound_samples/848E094.aif delete mode 100644 sound/direct_sound_samples/848F448.aif delete mode 100644 sound/direct_sound_samples/8491ACC.aif delete mode 100644 sound/direct_sound_samples/8493D20.aif delete mode 100644 sound/direct_sound_samples/8495028.aif delete mode 100644 sound/direct_sound_samples/8499110.aif delete mode 100644 sound/direct_sound_samples/84A5690.aif delete mode 100644 sound/direct_sound_samples/sc88/123_bubble.aif delete mode 100644 sound/direct_sound_samples/sc88/123_pink_noise.aif delete mode 100644 sound/direct_sound_samples/sc88/123_white_noise.aif delete mode 100644 sound/direct_sound_samples/sc88/13_marimba.aif delete mode 100644 sound/direct_sound_samples/sc88/15_tubular_bell.aif delete mode 100644 sound/direct_sound_samples/sc88/18_organ_2.aif delete mode 100644 sound/direct_sound_samples/sc88/1_piano_1.aif delete mode 100644 sound/direct_sound_samples/sc88/22_accordion_fr.aif delete mode 100644 sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif delete mode 100644 sound/direct_sound_samples/sc88/26_steel_string_guitar.aif delete mode 100644 sound/direct_sound_samples/sc88/2_piano_2.aif delete mode 100644 sound/direct_sound_samples/sc88/34_finger_slap.aif delete mode 100644 sound/direct_sound_samples/sc88/34_fingered_bass.aif delete mode 100644 sound/direct_sound_samples/sc88/36_fretless_bass.aif delete mode 100644 sound/direct_sound_samples/sc88/37_unison_slap.aif delete mode 100644 sound/direct_sound_samples/sc88/39_synth_bass_1.aif delete mode 100644 sound/direct_sound_samples/sc88/3_piano_3.aif delete mode 100644 sound/direct_sound_samples/sc88/46_pizzicato_strings.aif delete mode 100644 sound/direct_sound_samples/sc88/49_strings.aif delete mode 100644 sound/direct_sound_samples/sc88/49_strings_plus_flute.aif delete mode 100644 sound/direct_sound_samples/sc88/49_strings_plus_horn.aif delete mode 100644 sound/direct_sound_samples/sc88/57_trumpet.aif delete mode 100644 sound/direct_sound_samples/sc88/58_trombone.aif delete mode 100644 sound/direct_sound_samples/sc88/59_tuba.aif delete mode 100644 sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif delete mode 100644 sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif delete mode 100644 sound/direct_sound_samples/sc88/61_french_horns.aif delete mode 100644 sound/direct_sound_samples/sc88/61_wide_french_horns.aif delete mode 100644 sound/direct_sound_samples/sc88/74_flute.aif delete mode 100644 sound/direct_sound_samples/sc88/81_square_wave.aif delete mode 100644 sound/direct_sound_samples/sc88/8456330.aif delete mode 100644 sound/direct_sound_samples/sc88/8497134.aif delete mode 100644 sound/direct_sound_samples/sc88/849F40C.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_bass_drum.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_cabasa.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_guiro.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_hand_clap.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_low_conga.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_1.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_2.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_3.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_snare_4.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_timbale_1.aif delete mode 100644 sound/direct_sound_samples/sc88/drumkit_timbale_2.aif create mode 100644 sound/direct_sound_samples/synth/hi_hat_rattle.aif create mode 100644 sound/direct_sound_samples/synth/machine_sound1.aif create mode 100644 sound/direct_sound_samples/synth/machine_sound2.aif create mode 100644 sound/direct_sound_samples/synth/noise1.aif create mode 100644 sound/direct_sound_samples/synth/noise2.aif create mode 100644 sound/direct_sound_samples/synth/noise3.aif create mode 100644 sound/direct_sound_samples/synth/ring.aif create mode 100644 sound/direct_sound_samples/synth/sc88_123_bubble.aif create mode 100644 sound/direct_sound_samples/synth/sc88_123_pink_noise.aif create mode 100644 sound/direct_sound_samples/synth/sc88_123_white_noise.aif create mode 100644 sound/direct_sound_samples/synth/sc88_124_horse_gallop.aif create mode 100644 sound/direct_sound_samples/synth/sc88_126_car_crash.aif create mode 100644 sound/direct_sound_samples/synth/sc88_127_applause_2.aif create mode 100644 sound/direct_sound_samples/synth/sc88_13_marimba.aif create mode 100644 sound/direct_sound_samples/synth/sc88_15_tubular_bell.aif create mode 100644 sound/direct_sound_samples/synth/sc88_18_organ_2.aif create mode 100644 sound/direct_sound_samples/synth/sc88_1_piano_1.aif create mode 100644 sound/direct_sound_samples/synth/sc88_22_accordion_fr.aif create mode 100644 sound/direct_sound_samples/synth/sc88_25_nylon_string_guitar.aif create mode 100644 sound/direct_sound_samples/synth/sc88_26_steel_string_guitar.aif create mode 100644 sound/direct_sound_samples/synth/sc88_2_piano_2.aif create mode 100644 sound/direct_sound_samples/synth/sc88_34_finger_slap.aif create mode 100644 sound/direct_sound_samples/synth/sc88_34_fingered_bass.aif create mode 100644 sound/direct_sound_samples/synth/sc88_36_fretless_bass.aif create mode 100644 sound/direct_sound_samples/synth/sc88_37_unison_slap.aif create mode 100644 sound/direct_sound_samples/synth/sc88_39_synth_bass_1.aif create mode 100644 sound/direct_sound_samples/synth/sc88_3_piano_3.aif create mode 100644 sound/direct_sound_samples/synth/sc88_46_pizzicato_strings.aif create mode 100644 sound/direct_sound_samples/synth/sc88_49_strings.aif create mode 100644 sound/direct_sound_samples/synth/sc88_49_strings_plus_flute.aif create mode 100644 sound/direct_sound_samples/synth/sc88_49_strings_plus_horn.aif create mode 100644 sound/direct_sound_samples/synth/sc88_57_trumpet.aif create mode 100644 sound/direct_sound_samples/synth/sc88_58_trombone.aif create mode 100644 sound/direct_sound_samples/synth/sc88_59_tuba.aif create mode 100644 sound/direct_sound_samples/synth/sc88_60_cup_muted_trumpet.aif create mode 100644 sound/direct_sound_samples/synth/sc88_60_muted_trumpet_3.aif create mode 100644 sound/direct_sound_samples/synth/sc88_61_french_horns.aif create mode 100644 sound/direct_sound_samples/synth/sc88_61_wide_french_horns.aif create mode 100644 sound/direct_sound_samples/synth/sc88_74_flute.aif create mode 100644 sound/direct_sound_samples/synth/sc88_81_square_wave.aif create mode 100644 sound/direct_sound_samples/synth/sc88_82_jp_super_saw.aif create mode 100644 sound/direct_sound_samples/synth/sc88_82_waspy_synth.aif create mode 100644 sound/direct_sound_samples/synth/sc88_8456330.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_bass_drum.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_cabasa.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_closed_hi_hat.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_1.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_2.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_guiro.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_hand_clap.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_hi_mid_tom.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_low_conga.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_mute_hi_conga.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_open_hi_hat.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_snare_1.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_snare_2.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_snare_3.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_snare_4.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_timbale_1.aif create mode 100644 sound/direct_sound_samples/synth/sc88_drumkit_timbale_2.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index 92527974c..ba50fa3f4 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -1,242 +1,242 @@ .align 2 DirectSoundWaveData_8456330:: @ 8456330 - .incbin "sound/direct_sound_samples/sc88/8456330.bin" + .incbin "sound/direct_sound_samples/synth/sc88_8456330.bin" .align 2 DirectSoundWaveData_SC88_Organ2:: @ 84569D4 - .incbin "sound/direct_sound_samples/sc88/18_organ_2.bin" + .incbin "sound/direct_sound_samples/synth/sc88_18_organ_2.bin" .align 2 DirectSoundWaveData_SC88_FretlessBass:: @ 84571CC - .incbin "sound/direct_sound_samples/sc88/36_fretless_bass.bin" + .incbin "sound/direct_sound_samples/synth/sc88_36_fretless_bass.bin" .align 2 DirectSoundWaveData_SC88_FingerSlap:: @ 8457D98 - .incbin "sound/direct_sound_samples/sc88/34_finger_slap.bin" + .incbin "sound/direct_sound_samples/synth/sc88_34_finger_slap.bin" .align 2 DirectSoundWaveData_SC88_SynthBass1:: @ 8458CD0 - .incbin "sound/direct_sound_samples/sc88/39_synth_bass_1.bin" + .incbin "sound/direct_sound_samples/synth/sc88_39_synth_bass_1.bin" .align 2 DirectSoundWaveData_SC88_DrumKitTimbale2:: @ 8459944 - .incbin "sound/direct_sound_samples/sc88/drumkit_timbale_2.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_timbale_2.bin" .align 2 DirectSoundWaveData_SC88_DrumKitBassDrum:: @ 845AE14 - .incbin "sound/direct_sound_samples/sc88/drumkit_bass_drum.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_bass_drum.bin" .align 2 DirectSoundWaveData_SC88_DrumKitSnare1:: @ 845B2B4 - .incbin "sound/direct_sound_samples/sc88/drumkit_snare_1.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_snare_1.bin" .align 2 DirectSoundWaveData_SC88_DrumKitHandClap:: @ 845B9A8 - .incbin "sound/direct_sound_samples/sc88/drumkit_hand_clap.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_hand_clap.bin" .align 2 DirectSoundWaveData_SC88_DrumKitSnare2:: @ 845C238 - .incbin "sound/direct_sound_samples/sc88/drumkit_snare_2.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_snare_2.bin" .align 2 DirectSoundWaveData_SC88_DrumKitHiMidTom:: @ 845CAB0 - .incbin "sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_hi_mid_tom.bin" .align 2 DirectSoundWaveData_SC88_DrumKitClosedHiHat:: @ 845DAF0 - .incbin "sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_closed_hi_hat.bin" .align 2 DirectSoundWaveData_SC88_DrumKitOpenHiHat:: @ 845DF04 - .incbin "sound/direct_sound_samples/sc88/drumkit_open_hi_hat.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_open_hi_hat.bin" .align 2 -DirectSoundWaveData_845ED34:: @ 845ED34 - .incbin "sound/direct_sound_samples/845ED34.bin" +DirectSoundWaveData_HiHatRattle:: @ 845ED34 + .incbin "sound/direct_sound_samples/synth/hi_hat_rattle.bin" .align 2 DirectSoundWaveData_SC88_DrumKitCabasa:: @ 845FCC8 - .incbin "sound/direct_sound_samples/sc88/drumkit_cabasa.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_cabasa.bin" .align 2 DirectSoundWaveData_SC88_DrumKitCrashCymbal2:: @ 846057C - .incbin "sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_2.bin" .align 2 DirectSoundWaveData_SC88_DrumKitCrashCymbal1:: @ 8460E60 - .incbin "sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_1.bin" .align 2 DirectSoundWaveData_SC88_DrumKitMuteHiConga:: @ 8461D8C - .incbin "sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_mute_hi_conga.bin" .align 2 DirectSoundWaveData_SC88_DrumKitLowConga:: @ 84622A4 - .incbin "sound/direct_sound_samples/sc88/drumkit_low_conga.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_low_conga.bin" .align 2 DirectSoundWaveData_SC88_SteelStringGuitar:: @ 846286C - .incbin "sound/direct_sound_samples/sc88/26_steel_string_guitar.bin" + .incbin "sound/direct_sound_samples/synth/sc88_26_steel_string_guitar.bin" .align 2 DirectSoundWaveData_SC88_Piano3:: @ 84637CC - .incbin "sound/direct_sound_samples/sc88/3_piano_3.bin" + .incbin "sound/direct_sound_samples/synth/sc88_3_piano_3.bin" .align 2 DirectSoundWaveData_SC88_Piano2:: @ 8464E2C - .incbin "sound/direct_sound_samples/sc88/2_piano_2.bin" + .incbin "sound/direct_sound_samples/synth/sc88_2_piano_2.bin" .align 2 DirectSoundWaveData_SC88_UnisonSlap:: @ 8466388 - .incbin "sound/direct_sound_samples/sc88/37_unison_slap.bin" + .incbin "sound/direct_sound_samples/synth/sc88_37_unison_slap.bin" .align 2 DirectSoundWaveData_SC88_Strings:: @ 8466F14 - .incbin "sound/direct_sound_samples/sc88/49_strings.bin" + .incbin "sound/direct_sound_samples/synth/sc88_49_strings.bin" .align 2 DirectSoundWaveData_SC88_StringsPlusFlute:: @ 846A4B8 - .incbin "sound/direct_sound_samples/sc88/49_strings_plus_flute.bin" + .incbin "sound/direct_sound_samples/synth/sc88_49_strings_plus_flute.bin" .align 2 DirectSoundWaveData_SC88_StringsPlusHorn:: @ 846C7D4 - .incbin "sound/direct_sound_samples/sc88/49_strings_plus_horn.bin" + .incbin "sound/direct_sound_samples/synth/sc88_49_strings_plus_horn.bin" .align 2 DirectSoundWaveData_SC88_Trumpet:: @ 846FEA0 - .incbin "sound/direct_sound_samples/sc88/57_trumpet.bin" + .incbin "sound/direct_sound_samples/synth/sc88_57_trumpet.bin" .align 2 DirectSoundWaveData_SC88_Trombone:: @ 84711F0 - .incbin "sound/direct_sound_samples/sc88/58_trombone.bin" + .incbin "sound/direct_sound_samples/synth/sc88_58_trombone.bin" .align 2 DirectSoundWaveData_SC88_Tuba:: @ 8472700 - .incbin "sound/direct_sound_samples/sc88/59_tuba.bin" + .incbin "sound/direct_sound_samples/synth/sc88_59_tuba.bin" .align 2 DirectSoundWaveData_SC88_CupMutedTrumpet:: @ 8473B20 - .incbin "sound/direct_sound_samples/sc88/60_cup_muted_trumpet.bin" + .incbin "sound/direct_sound_samples/synth/sc88_60_cup_muted_trumpet.bin" .align 2 DirectSoundWaveData_SC88_MutedTrumpet3:: @ 8474BBC - .incbin "sound/direct_sound_samples/sc88/60_muted_trumpet_3.bin" + .incbin "sound/direct_sound_samples/synth/sc88_60_muted_trumpet_3.bin" .align 2 DirectSoundWaveData_SC88_FrenchHorns:: @ 8475C18 - .incbin "sound/direct_sound_samples/sc88/61_french_horns.bin" + .incbin "sound/direct_sound_samples/synth/sc88_61_french_horns.bin" .align 2 DirectSoundWaveData_SC88_WideFrenchHorns:: @ 847CBAC - .incbin "sound/direct_sound_samples/sc88/61_wide_french_horns.bin" + .incbin "sound/direct_sound_samples/synth/sc88_61_wide_french_horns.bin" .align 2 DirectSoundWaveData_SC88_NylonStringGuitar:: @ 8481130 - .incbin "sound/direct_sound_samples/sc88/25_nylon_string_guitar.bin" + .incbin "sound/direct_sound_samples/synth/sc88_25_nylon_string_guitar.bin" .align 2 DirectSoundWaveData_SC88_Flute:: @ 84830A0 - .incbin "sound/direct_sound_samples/sc88/74_flute.bin" + .incbin "sound/direct_sound_samples/synth/sc88_74_flute.bin" .align 2 DirectSoundWaveData_SC88_FingeredBass:: @ 8483804 - .incbin "sound/direct_sound_samples/sc88/34_fingered_bass.bin" + .incbin "sound/direct_sound_samples/synth/sc88_34_fingered_bass.bin" .align 2 DirectSoundWaveData_SC88_DrumKitTimbale1:: @ 8485454 - .incbin "sound/direct_sound_samples/sc88/drumkit_timbale_1.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_timbale_1.bin" .align 2 DirectSoundWaveData_SC88_DrumKitSnare4:: @ 8486924 - .incbin "sound/direct_sound_samples/sc88/drumkit_snare_4.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_snare_4.bin" .align 2 DirectSoundWaveData_SC88_SquareWave:: @ 8487330 - .incbin "sound/direct_sound_samples/sc88/81_square_wave.bin" + .incbin "sound/direct_sound_samples/synth/sc88_81_square_wave.bin" .align 2 -DirectSoundWaveData_8488F44:: @ 8488F44 - .incbin "sound/direct_sound_samples/8488F44.bin" +DirectSoundWaveData_Ring:: @ 8488F44 + .incbin "sound/direct_sound_samples/synth/ring.bin" .align 2 DirectSoundWaveData_SC88_DrumKitSnare3:: @ 848A8A4 - .incbin "sound/direct_sound_samples/sc88/drumkit_snare_3.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_snare_3.bin" .align 2 DirectSoundWaveData_SC88_PizzicatoStrings:: @ 848BD68 - .incbin "sound/direct_sound_samples/sc88/46_pizzicato_strings.bin" + .incbin "sound/direct_sound_samples/synth/sc88_46_pizzicato_strings.bin" .align 2 -DirectSoundWaveData_848C4A4:: @ 848C4A4 - .incbin "sound/direct_sound_samples/848C4A4.bin" +DirectSoundWaveData_MachineSound2:: @ 848C4A4 + .incbin "sound/direct_sound_samples/synth/machine_sound2.bin" .align 2 -DirectSoundWaveData_848E094:: @ 848E094 - .incbin "sound/direct_sound_samples/848E094.bin" +DirectSoundWaveData_MachineSound1:: @ 848E094 + .incbin "sound/direct_sound_samples/synth/machine_sound1.bin" .align 2 -DirectSoundWaveData_848F448:: @ 848F448 - .incbin "sound/direct_sound_samples/848F448.bin" +DirectSoundWaveData_SC88_Applause2:: @ 848F448 + .incbin "sound/direct_sound_samples/synth/sc88_127_applause_2.bin" .align 2 -DirectSoundWaveData_8491ACC:: @ 8491ACC - .incbin "sound/direct_sound_samples/8491ACC.bin" +DirectSoundWaveData_Noise3:: @ 8491ACC + .incbin "sound/direct_sound_samples/synth/noise3.bin" .align 2 DirectSoundWaveData_SC88_Bubble:: @ 8492D10 - .incbin "sound/direct_sound_samples/sc88/123_bubble.bin" + .incbin "sound/direct_sound_samples/synth/sc88_123_bubble.bin" .align 2 -DirectSoundWaveData_8493D20:: @ 8493D20 - .incbin "sound/direct_sound_samples/8493D20.bin" +DirectSoundWaveData_SC88_CarCrash:: @ 8493D20 + .incbin "sound/direct_sound_samples/synth/sc88_126_car_crash.bin" .align 2 -DirectSoundWaveData_8495028:: @ 8495028 - .incbin "sound/direct_sound_samples/8495028.bin" +DirectSoundWaveData_SC88_PinkNoise:: @ 8495028 + .incbin "sound/direct_sound_samples/synth/sc88_123_pink_noise.bin" .align 2 -DirectSoundWaveData_8497134:: @ 8497134 - .incbin "sound/direct_sound_samples/sc88/8497134.bin" +DirectSoundWaveData_SC88_WaspySynth:: @ 8497134 + .incbin "sound/direct_sound_samples/synth/sc88_82_waspy_synth.bin" .align 2 -DirectSoundWaveData_8499110:: @ 8499110 - .incbin "sound/direct_sound_samples/8499110.bin" +DirectSoundWaveData_SC88_WhiteNoise:: @ 8499110 + .incbin "sound/direct_sound_samples/synth/sc88_123_white_noise.bin" .align 2 DirectSoundWaveData_SC88_DrumkitGuiro:: @ 849B320 - .incbin "sound/direct_sound_samples/sc88/drumkit_guiro.bin" + .incbin "sound/direct_sound_samples/synth/sc88_drumkit_guiro.bin" .align 2 DirectSoundWaveData_SC88_TubularBell:: @ 849BAEC - .incbin "sound/direct_sound_samples/sc88/15_tubular_bell.bin" + .incbin "sound/direct_sound_samples/synth/sc88_15_tubular_bell.bin" .align 2 -DirectSoundWaveData_SC88_PinkNoise:: @ 849D45C - .incbin "sound/direct_sound_samples/sc88/123_pink_noise.bin" +DirectSoundWaveData_Noise1:: @ 849D45C + .incbin "sound/direct_sound_samples/synth/noise1.bin" .align 2 -DirectSoundWaveData_849F40C:: @ 849F40C - .incbin "sound/direct_sound_samples/sc88/849F40C.bin" +DirectSoundWaveData_SC88_JPSuperSaw:: @ 849F40C + .incbin "sound/direct_sound_samples/synth/sc88_82_jp_super_saw.bin" .align 2 DirectSoundWaveData_SC88_Piano1:: @ 84A26EC - .incbin "sound/direct_sound_samples/sc88/1_piano_1.bin" + .incbin "sound/direct_sound_samples/synth/sc88_1_piano_1.bin" .align 2 DirectSoundWaveData_SC88_Marimba:: @ 84A311C - .incbin "sound/direct_sound_samples/sc88/13_marimba.bin" + .incbin "sound/direct_sound_samples/synth/sc88_13_marimba.bin" .align 2 -DirectSoundWaveData_SC88_WhiteNoise:: @ 84A3B50 - .incbin "sound/direct_sound_samples/sc88/123_white_noise.bin" +DirectSoundWaveData_Noise2:: @ 84A3B50 + .incbin "sound/direct_sound_samples/synth/noise2.bin" .align 2 -DirectSoundWaveData_84A5690:: @ 84A5690 - .incbin "sound/direct_sound_samples/84A5690.bin" +DirectSoundWaveData_SC88_HorseGallop:: @ 84A5690 + .incbin "sound/direct_sound_samples/synth/sc88_124_horse_gallop.bin" .align 2 DirectSoundWaveData_SC88_AccordianFr:: @ 84A5F58 - .incbin "sound/direct_sound_samples/sc88/22_accordion_fr.bin" + .incbin "sound/direct_sound_samples/synth/sc88_22_accordion_fr.bin" .align 2 DirectSoundWaveData_84A7328:: @ 84A7328 @@ -2020,4 +2020,4 @@ DirectSoundWaveData_8654170:: @ 8654170 .align 2 DirectSoundWaveData_SC88_AccordionFr_Copy:: @ 8654C20 - .incbin "sound/direct_sound_samples/sc88/22_accordion_fr.bin" + .incbin "sound/direct_sound_samples/synth/sc88_22_accordion_fr.bin" diff --git a/sound/direct_sound_samples/845ED34.aif b/sound/direct_sound_samples/845ED34.aif deleted file mode 100644 index 7de79e747..000000000 Binary files a/sound/direct_sound_samples/845ED34.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8488F44.aif b/sound/direct_sound_samples/8488F44.aif deleted file mode 100644 index 578a81c2f..000000000 Binary files a/sound/direct_sound_samples/8488F44.aif and /dev/null differ diff --git a/sound/direct_sound_samples/848C4A4.aif b/sound/direct_sound_samples/848C4A4.aif deleted file mode 100644 index 2e09d0822..000000000 Binary files a/sound/direct_sound_samples/848C4A4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/848E094.aif b/sound/direct_sound_samples/848E094.aif deleted file mode 100644 index 49f24936f..000000000 Binary files a/sound/direct_sound_samples/848E094.aif and /dev/null differ diff --git a/sound/direct_sound_samples/848F448.aif b/sound/direct_sound_samples/848F448.aif deleted file mode 100644 index 5c55d91ed..000000000 Binary files a/sound/direct_sound_samples/848F448.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8491ACC.aif b/sound/direct_sound_samples/8491ACC.aif deleted file mode 100644 index ece919ea5..000000000 Binary files a/sound/direct_sound_samples/8491ACC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8493D20.aif b/sound/direct_sound_samples/8493D20.aif deleted file mode 100644 index 515818a4d..000000000 Binary files a/sound/direct_sound_samples/8493D20.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8495028.aif b/sound/direct_sound_samples/8495028.aif deleted file mode 100644 index 102830efa..000000000 Binary files a/sound/direct_sound_samples/8495028.aif and /dev/null differ diff --git a/sound/direct_sound_samples/8499110.aif b/sound/direct_sound_samples/8499110.aif deleted file mode 100644 index 556be0238..000000000 Binary files a/sound/direct_sound_samples/8499110.aif and /dev/null differ diff --git a/sound/direct_sound_samples/84A5690.aif b/sound/direct_sound_samples/84A5690.aif deleted file mode 100644 index a0fb49f89..000000000 Binary files a/sound/direct_sound_samples/84A5690.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/123_bubble.aif b/sound/direct_sound_samples/sc88/123_bubble.aif deleted file mode 100644 index 89872bf55..000000000 Binary files a/sound/direct_sound_samples/sc88/123_bubble.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/123_pink_noise.aif b/sound/direct_sound_samples/sc88/123_pink_noise.aif deleted file mode 100644 index ebd46eeaa..000000000 Binary files a/sound/direct_sound_samples/sc88/123_pink_noise.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/123_white_noise.aif b/sound/direct_sound_samples/sc88/123_white_noise.aif deleted file mode 100644 index 6a11945c5..000000000 Binary files a/sound/direct_sound_samples/sc88/123_white_noise.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/13_marimba.aif b/sound/direct_sound_samples/sc88/13_marimba.aif deleted file mode 100644 index 1bd43ca92..000000000 Binary files a/sound/direct_sound_samples/sc88/13_marimba.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/15_tubular_bell.aif b/sound/direct_sound_samples/sc88/15_tubular_bell.aif deleted file mode 100644 index 9d00ecae6..000000000 Binary files a/sound/direct_sound_samples/sc88/15_tubular_bell.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/18_organ_2.aif b/sound/direct_sound_samples/sc88/18_organ_2.aif deleted file mode 100644 index 6372bbc32..000000000 Binary files a/sound/direct_sound_samples/sc88/18_organ_2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/1_piano_1.aif b/sound/direct_sound_samples/sc88/1_piano_1.aif deleted file mode 100644 index 083c45e3d..000000000 Binary files a/sound/direct_sound_samples/sc88/1_piano_1.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/22_accordion_fr.aif b/sound/direct_sound_samples/sc88/22_accordion_fr.aif deleted file mode 100644 index 6d6c2e998..000000000 Binary files a/sound/direct_sound_samples/sc88/22_accordion_fr.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif b/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif deleted file mode 100644 index dea429a25..000000000 Binary files a/sound/direct_sound_samples/sc88/25_nylon_string_guitar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif b/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif deleted file mode 100644 index c2b3757b0..000000000 Binary files a/sound/direct_sound_samples/sc88/26_steel_string_guitar.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/2_piano_2.aif b/sound/direct_sound_samples/sc88/2_piano_2.aif deleted file mode 100644 index 5236141ba..000000000 Binary files a/sound/direct_sound_samples/sc88/2_piano_2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/34_finger_slap.aif b/sound/direct_sound_samples/sc88/34_finger_slap.aif deleted file mode 100644 index 9175b63c5..000000000 Binary files a/sound/direct_sound_samples/sc88/34_finger_slap.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/34_fingered_bass.aif b/sound/direct_sound_samples/sc88/34_fingered_bass.aif deleted file mode 100644 index f244a9982..000000000 Binary files a/sound/direct_sound_samples/sc88/34_fingered_bass.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/36_fretless_bass.aif b/sound/direct_sound_samples/sc88/36_fretless_bass.aif deleted file mode 100644 index f3aa47d91..000000000 Binary files a/sound/direct_sound_samples/sc88/36_fretless_bass.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/37_unison_slap.aif b/sound/direct_sound_samples/sc88/37_unison_slap.aif deleted file mode 100644 index a7c4e94f8..000000000 Binary files a/sound/direct_sound_samples/sc88/37_unison_slap.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/39_synth_bass_1.aif b/sound/direct_sound_samples/sc88/39_synth_bass_1.aif deleted file mode 100644 index f39931a7e..000000000 Binary files a/sound/direct_sound_samples/sc88/39_synth_bass_1.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/3_piano_3.aif b/sound/direct_sound_samples/sc88/3_piano_3.aif deleted file mode 100644 index 7de586c9b..000000000 Binary files a/sound/direct_sound_samples/sc88/3_piano_3.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif b/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif deleted file mode 100644 index 1c0a027f7..000000000 Binary files a/sound/direct_sound_samples/sc88/46_pizzicato_strings.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/49_strings.aif b/sound/direct_sound_samples/sc88/49_strings.aif deleted file mode 100644 index bfaa5c196..000000000 Binary files a/sound/direct_sound_samples/sc88/49_strings.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif b/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif deleted file mode 100644 index 3e76cacdd..000000000 Binary files a/sound/direct_sound_samples/sc88/49_strings_plus_flute.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif b/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif deleted file mode 100644 index 2647c78ec..000000000 Binary files a/sound/direct_sound_samples/sc88/49_strings_plus_horn.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/57_trumpet.aif b/sound/direct_sound_samples/sc88/57_trumpet.aif deleted file mode 100644 index e56df7f60..000000000 Binary files a/sound/direct_sound_samples/sc88/57_trumpet.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/58_trombone.aif b/sound/direct_sound_samples/sc88/58_trombone.aif deleted file mode 100644 index 8c68a83b3..000000000 Binary files a/sound/direct_sound_samples/sc88/58_trombone.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/59_tuba.aif b/sound/direct_sound_samples/sc88/59_tuba.aif deleted file mode 100644 index a03bafc97..000000000 Binary files a/sound/direct_sound_samples/sc88/59_tuba.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif b/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif deleted file mode 100644 index d4077b481..000000000 Binary files a/sound/direct_sound_samples/sc88/60_cup_muted_trumpet.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif b/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif deleted file mode 100644 index 2ad86876b..000000000 Binary files a/sound/direct_sound_samples/sc88/60_muted_trumpet_3.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/61_french_horns.aif b/sound/direct_sound_samples/sc88/61_french_horns.aif deleted file mode 100644 index 742c4385e..000000000 Binary files a/sound/direct_sound_samples/sc88/61_french_horns.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/61_wide_french_horns.aif b/sound/direct_sound_samples/sc88/61_wide_french_horns.aif deleted file mode 100644 index 004fda6a1..000000000 Binary files a/sound/direct_sound_samples/sc88/61_wide_french_horns.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/74_flute.aif b/sound/direct_sound_samples/sc88/74_flute.aif deleted file mode 100644 index 703f3adbd..000000000 Binary files a/sound/direct_sound_samples/sc88/74_flute.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/81_square_wave.aif b/sound/direct_sound_samples/sc88/81_square_wave.aif deleted file mode 100644 index 09e17f0ca..000000000 Binary files a/sound/direct_sound_samples/sc88/81_square_wave.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/8456330.aif b/sound/direct_sound_samples/sc88/8456330.aif deleted file mode 100644 index 199ead811..000000000 Binary files a/sound/direct_sound_samples/sc88/8456330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/8497134.aif b/sound/direct_sound_samples/sc88/8497134.aif deleted file mode 100644 index 09fe6f12e..000000000 Binary files a/sound/direct_sound_samples/sc88/8497134.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/849F40C.aif b/sound/direct_sound_samples/sc88/849F40C.aif deleted file mode 100644 index 455ced13e..000000000 Binary files a/sound/direct_sound_samples/sc88/849F40C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif b/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif deleted file mode 100644 index 9c504e3d0..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_bass_drum.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_cabasa.aif b/sound/direct_sound_samples/sc88/drumkit_cabasa.aif deleted file mode 100644 index 39ec57d29..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_cabasa.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif b/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif deleted file mode 100644 index 8747aef28..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_closed_hi_hat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif deleted file mode 100644 index 576e3e19e..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_1.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif b/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif deleted file mode 100644 index 4aec6882f..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_crash_cymbal_2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_guiro.aif b/sound/direct_sound_samples/sc88/drumkit_guiro.aif deleted file mode 100644 index dd80b1185..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_guiro.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif b/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif deleted file mode 100644 index b11787ffc..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_hand_clap.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif b/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif deleted file mode 100644 index 04f990b13..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_hi_mid_tom.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_low_conga.aif b/sound/direct_sound_samples/sc88/drumkit_low_conga.aif deleted file mode 100644 index 8e1cb620a..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_low_conga.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif b/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif deleted file mode 100644 index 2e1bf9c64..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_mute_hi_conga.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif b/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif deleted file mode 100644 index 5ad9410d0..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_open_hi_hat.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_1.aif b/sound/direct_sound_samples/sc88/drumkit_snare_1.aif deleted file mode 100644 index 544b187d5..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_snare_1.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_2.aif b/sound/direct_sound_samples/sc88/drumkit_snare_2.aif deleted file mode 100644 index 36b640758..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_snare_2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_3.aif b/sound/direct_sound_samples/sc88/drumkit_snare_3.aif deleted file mode 100644 index ee6ff45b7..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_snare_3.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_snare_4.aif b/sound/direct_sound_samples/sc88/drumkit_snare_4.aif deleted file mode 100644 index b3122457d..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_snare_4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif b/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif deleted file mode 100644 index 7270872d6..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_timbale_1.aif and /dev/null differ diff --git a/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif b/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif deleted file mode 100644 index dfdfd702e..000000000 Binary files a/sound/direct_sound_samples/sc88/drumkit_timbale_2.aif and /dev/null differ diff --git a/sound/direct_sound_samples/synth/hi_hat_rattle.aif b/sound/direct_sound_samples/synth/hi_hat_rattle.aif new file mode 100644 index 000000000..7de79e747 Binary files /dev/null and b/sound/direct_sound_samples/synth/hi_hat_rattle.aif differ diff --git a/sound/direct_sound_samples/synth/machine_sound1.aif b/sound/direct_sound_samples/synth/machine_sound1.aif new file mode 100644 index 000000000..49f24936f Binary files /dev/null and b/sound/direct_sound_samples/synth/machine_sound1.aif differ diff --git a/sound/direct_sound_samples/synth/machine_sound2.aif b/sound/direct_sound_samples/synth/machine_sound2.aif new file mode 100644 index 000000000..2e09d0822 Binary files /dev/null and b/sound/direct_sound_samples/synth/machine_sound2.aif differ diff --git a/sound/direct_sound_samples/synth/noise1.aif b/sound/direct_sound_samples/synth/noise1.aif new file mode 100644 index 000000000..ebd46eeaa Binary files /dev/null and b/sound/direct_sound_samples/synth/noise1.aif differ diff --git a/sound/direct_sound_samples/synth/noise2.aif b/sound/direct_sound_samples/synth/noise2.aif new file mode 100644 index 000000000..6a11945c5 Binary files /dev/null and b/sound/direct_sound_samples/synth/noise2.aif differ diff --git a/sound/direct_sound_samples/synth/noise3.aif b/sound/direct_sound_samples/synth/noise3.aif new file mode 100644 index 000000000..ece919ea5 Binary files /dev/null and b/sound/direct_sound_samples/synth/noise3.aif differ diff --git a/sound/direct_sound_samples/synth/ring.aif b/sound/direct_sound_samples/synth/ring.aif new file mode 100644 index 000000000..578a81c2f Binary files /dev/null and b/sound/direct_sound_samples/synth/ring.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_123_bubble.aif b/sound/direct_sound_samples/synth/sc88_123_bubble.aif new file mode 100644 index 000000000..89872bf55 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_123_bubble.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_123_pink_noise.aif b/sound/direct_sound_samples/synth/sc88_123_pink_noise.aif new file mode 100644 index 000000000..102830efa Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_123_pink_noise.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_123_white_noise.aif b/sound/direct_sound_samples/synth/sc88_123_white_noise.aif new file mode 100644 index 000000000..556be0238 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_123_white_noise.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_124_horse_gallop.aif b/sound/direct_sound_samples/synth/sc88_124_horse_gallop.aif new file mode 100644 index 000000000..a0fb49f89 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_124_horse_gallop.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_126_car_crash.aif b/sound/direct_sound_samples/synth/sc88_126_car_crash.aif new file mode 100644 index 000000000..515818a4d Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_126_car_crash.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_127_applause_2.aif b/sound/direct_sound_samples/synth/sc88_127_applause_2.aif new file mode 100644 index 000000000..5c55d91ed Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_127_applause_2.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_13_marimba.aif b/sound/direct_sound_samples/synth/sc88_13_marimba.aif new file mode 100644 index 000000000..1bd43ca92 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_13_marimba.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_15_tubular_bell.aif b/sound/direct_sound_samples/synth/sc88_15_tubular_bell.aif new file mode 100644 index 000000000..9d00ecae6 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_15_tubular_bell.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_18_organ_2.aif b/sound/direct_sound_samples/synth/sc88_18_organ_2.aif new file mode 100644 index 000000000..6372bbc32 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_18_organ_2.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_1_piano_1.aif b/sound/direct_sound_samples/synth/sc88_1_piano_1.aif new file mode 100644 index 000000000..083c45e3d Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_1_piano_1.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_22_accordion_fr.aif b/sound/direct_sound_samples/synth/sc88_22_accordion_fr.aif new file mode 100644 index 000000000..6d6c2e998 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_22_accordion_fr.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_25_nylon_string_guitar.aif b/sound/direct_sound_samples/synth/sc88_25_nylon_string_guitar.aif new file mode 100644 index 000000000..dea429a25 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_25_nylon_string_guitar.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_26_steel_string_guitar.aif b/sound/direct_sound_samples/synth/sc88_26_steel_string_guitar.aif new file mode 100644 index 000000000..c2b3757b0 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_26_steel_string_guitar.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_2_piano_2.aif b/sound/direct_sound_samples/synth/sc88_2_piano_2.aif new file mode 100644 index 000000000..5236141ba Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_2_piano_2.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_34_finger_slap.aif b/sound/direct_sound_samples/synth/sc88_34_finger_slap.aif new file mode 100644 index 000000000..9175b63c5 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_34_finger_slap.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_34_fingered_bass.aif b/sound/direct_sound_samples/synth/sc88_34_fingered_bass.aif new file mode 100644 index 000000000..f244a9982 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_34_fingered_bass.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_36_fretless_bass.aif b/sound/direct_sound_samples/synth/sc88_36_fretless_bass.aif new file mode 100644 index 000000000..f3aa47d91 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_36_fretless_bass.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_37_unison_slap.aif b/sound/direct_sound_samples/synth/sc88_37_unison_slap.aif new file mode 100644 index 000000000..a7c4e94f8 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_37_unison_slap.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_39_synth_bass_1.aif b/sound/direct_sound_samples/synth/sc88_39_synth_bass_1.aif new file mode 100644 index 000000000..f39931a7e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_39_synth_bass_1.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_3_piano_3.aif b/sound/direct_sound_samples/synth/sc88_3_piano_3.aif new file mode 100644 index 000000000..7de586c9b Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_3_piano_3.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_46_pizzicato_strings.aif b/sound/direct_sound_samples/synth/sc88_46_pizzicato_strings.aif new file mode 100644 index 000000000..1c0a027f7 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_46_pizzicato_strings.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_49_strings.aif b/sound/direct_sound_samples/synth/sc88_49_strings.aif new file mode 100644 index 000000000..bfaa5c196 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_49_strings.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_49_strings_plus_flute.aif b/sound/direct_sound_samples/synth/sc88_49_strings_plus_flute.aif new file mode 100644 index 000000000..3e76cacdd Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_49_strings_plus_flute.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_49_strings_plus_horn.aif b/sound/direct_sound_samples/synth/sc88_49_strings_plus_horn.aif new file mode 100644 index 000000000..2647c78ec Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_49_strings_plus_horn.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_57_trumpet.aif b/sound/direct_sound_samples/synth/sc88_57_trumpet.aif new file mode 100644 index 000000000..e56df7f60 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_57_trumpet.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_58_trombone.aif b/sound/direct_sound_samples/synth/sc88_58_trombone.aif new file mode 100644 index 000000000..8c68a83b3 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_58_trombone.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_59_tuba.aif b/sound/direct_sound_samples/synth/sc88_59_tuba.aif new file mode 100644 index 000000000..a03bafc97 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_59_tuba.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_60_cup_muted_trumpet.aif b/sound/direct_sound_samples/synth/sc88_60_cup_muted_trumpet.aif new file mode 100644 index 000000000..d4077b481 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_60_cup_muted_trumpet.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_60_muted_trumpet_3.aif b/sound/direct_sound_samples/synth/sc88_60_muted_trumpet_3.aif new file mode 100644 index 000000000..2ad86876b Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_60_muted_trumpet_3.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_61_french_horns.aif b/sound/direct_sound_samples/synth/sc88_61_french_horns.aif new file mode 100644 index 000000000..742c4385e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_61_french_horns.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_61_wide_french_horns.aif b/sound/direct_sound_samples/synth/sc88_61_wide_french_horns.aif new file mode 100644 index 000000000..004fda6a1 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_61_wide_french_horns.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_74_flute.aif b/sound/direct_sound_samples/synth/sc88_74_flute.aif new file mode 100644 index 000000000..703f3adbd Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_74_flute.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_81_square_wave.aif b/sound/direct_sound_samples/synth/sc88_81_square_wave.aif new file mode 100644 index 000000000..09e17f0ca Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_81_square_wave.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_82_jp_super_saw.aif b/sound/direct_sound_samples/synth/sc88_82_jp_super_saw.aif new file mode 100644 index 000000000..455ced13e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_82_jp_super_saw.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_82_waspy_synth.aif b/sound/direct_sound_samples/synth/sc88_82_waspy_synth.aif new file mode 100644 index 000000000..09fe6f12e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_82_waspy_synth.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_8456330.aif b/sound/direct_sound_samples/synth/sc88_8456330.aif new file mode 100644 index 000000000..199ead811 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_8456330.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_bass_drum.aif b/sound/direct_sound_samples/synth/sc88_drumkit_bass_drum.aif new file mode 100644 index 000000000..9c504e3d0 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_bass_drum.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_cabasa.aif b/sound/direct_sound_samples/synth/sc88_drumkit_cabasa.aif new file mode 100644 index 000000000..39ec57d29 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_cabasa.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_closed_hi_hat.aif b/sound/direct_sound_samples/synth/sc88_drumkit_closed_hi_hat.aif new file mode 100644 index 000000000..8747aef28 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_closed_hi_hat.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_1.aif b/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_1.aif new file mode 100644 index 000000000..576e3e19e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_1.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_2.aif b/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_2.aif new file mode 100644 index 000000000..4aec6882f Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_crash_cymbal_2.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_guiro.aif b/sound/direct_sound_samples/synth/sc88_drumkit_guiro.aif new file mode 100644 index 000000000..dd80b1185 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_guiro.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_hand_clap.aif b/sound/direct_sound_samples/synth/sc88_drumkit_hand_clap.aif new file mode 100644 index 000000000..b11787ffc Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_hand_clap.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_hi_mid_tom.aif b/sound/direct_sound_samples/synth/sc88_drumkit_hi_mid_tom.aif new file mode 100644 index 000000000..04f990b13 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_hi_mid_tom.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_low_conga.aif b/sound/direct_sound_samples/synth/sc88_drumkit_low_conga.aif new file mode 100644 index 000000000..8e1cb620a Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_low_conga.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_mute_hi_conga.aif b/sound/direct_sound_samples/synth/sc88_drumkit_mute_hi_conga.aif new file mode 100644 index 000000000..2e1bf9c64 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_mute_hi_conga.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_open_hi_hat.aif b/sound/direct_sound_samples/synth/sc88_drumkit_open_hi_hat.aif new file mode 100644 index 000000000..5ad9410d0 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_open_hi_hat.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_snare_1.aif b/sound/direct_sound_samples/synth/sc88_drumkit_snare_1.aif new file mode 100644 index 000000000..544b187d5 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_snare_1.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_snare_2.aif b/sound/direct_sound_samples/synth/sc88_drumkit_snare_2.aif new file mode 100644 index 000000000..36b640758 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_snare_2.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_snare_3.aif b/sound/direct_sound_samples/synth/sc88_drumkit_snare_3.aif new file mode 100644 index 000000000..ee6ff45b7 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_snare_3.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_snare_4.aif b/sound/direct_sound_samples/synth/sc88_drumkit_snare_4.aif new file mode 100644 index 000000000..b3122457d Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_snare_4.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_timbale_1.aif b/sound/direct_sound_samples/synth/sc88_drumkit_timbale_1.aif new file mode 100644 index 000000000..7270872d6 Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_timbale_1.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_drumkit_timbale_2.aif b/sound/direct_sound_samples/synth/sc88_drumkit_timbale_2.aif new file mode 100644 index 000000000..dfdfd702e Binary files /dev/null and b/sound/direct_sound_samples/synth/sc88_drumkit_timbale_2.aif differ diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index 926e5ef7a..0d4c94121 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -108,7 +108,7 @@ voicegroup_842FEF8:: @ 842FEF8 voice_directsound 62, 212, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 204, 77, 204 @ 8430150 voice_square_1 0, 2, 0, 0, 15, 0 @ 843015C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430168 - voice_directsound_no_resample 70, 177, DirectSoundWaveData_845ED34, 255, 165, 103, 231 @ 8430174 + voice_directsound_no_resample 70, 177, DirectSoundWaveData_HiHatRattle, 255, 165, 103, 231 @ 8430174 voice_directsound_no_resample 32, 162, DirectSoundWaveData_SC88_DrumKitCabasa, 255, 127, 77, 204 @ 8430180 voice_directsound_no_resample 60, 142, DirectSoundWaveData_SC88_DrumKitCrashCymbal2, 255, 235, 0, 165 @ 843018C voice_square_1 0, 2, 0, 0, 15, 0 @ 8430198 @@ -500,7 +500,7 @@ voicegroup_8430C9C:: @ 8430C9C voicegroup_843129C:: @ 843129C voice_keysplit_all voicegroup_842FEF8 @ 843129C voice_keysplit voicegroup_8430204, KeySplitTable_8455224 @ 84312A8 - voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 178, 180, 165 @ 84312B4 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WaspySynth, 255, 178, 180, 165 @ 84312B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84312C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84312CC voice_square_1 0, 2, 0, 0, 15, 0 @ 84312D8 @@ -2234,7 +2234,7 @@ voicegroup_8435FAC:: @ 8435FAC voice_square_1 0, 2, 0, 0, 15, 0 @ 843612C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436138 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436144 - voice_directsound 60, 0, DirectSoundWaveData_849F40C, 255, 165, 154, 127 @ 8436150 + voice_directsound 60, 0, DirectSoundWaveData_SC88_JPSuperSaw, 255, 165, 154, 127 @ 8436150 voice_square_1 0, 2, 0, 0, 15, 0 @ 843615C voice_square_1 0, 2, 0, 0, 15, 0 @ 8436168 voice_square_1 0, 2, 0, 0, 15, 0 @ 8436174 @@ -10424,7 +10424,7 @@ voicegroup_844D1F0:: @ 844D1F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 844D7C0 - voice_directsound 60, 0, DirectSoundWaveData_SC88_WhiteNoise, 255, 255, 255, 127 @ 844D7CC + voice_directsound 60, 0, DirectSoundWaveData_Noise2, 255, 255, 255, 127 @ 844D7CC voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHandClap, 255, 255, 255, 127 @ 844D7D8 voice_noise_alt 0, 0, 1, 0, 0 @ 844D7E4 @@ -11065,7 +11065,7 @@ voicegroup_844F0C8:: @ 844F0C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F4DC voice_square_1 0, 2, 0, 0, 15, 0 @ 844F4E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 844F4F4 - voice_directsound 60, 0, DirectSoundWaveData_849F40C, 255, 0, 255, 127 @ 844F500 + voice_directsound 60, 0, DirectSoundWaveData_SC88_JPSuperSaw, 255, 0, 255, 127 @ 844F500 .align 2 voicegroup_844F50C:: @ 844F50C @@ -11402,7 +11402,7 @@ voicegroup_845019C:: @ 845019C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450418 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450424 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450430 - voice_directsound 60, 0, DirectSoundWaveData_849F40C, 255, 165, 154, 127 @ 845043C + voice_directsound 60, 0, DirectSoundWaveData_SC88_JPSuperSaw, 255, 165, 154, 127 @ 845043C voice_square_1 0, 2, 0, 0, 15, 0 @ 8450448 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450454 voice_square_1 0, 2, 0, 0, 15, 0 @ 8450460 @@ -12003,8 +12003,8 @@ voicegroup_8451990:: @ 8451990 .align 2 voicegroup_8451F90:: @ 8451F90 - voice_directsound_no_resample 60, 0, DirectSoundWaveData_8488F44, 255, 249, 0, 165 @ 8451F90 - voice_directsound_alt 60, 0, DirectSoundWaveData_8488F44, 255, 0, 255, 165 @ 8451F9C + voice_directsound_no_resample 60, 0, DirectSoundWaveData_Ring, 255, 249, 0, 165 @ 8451F90 + voice_directsound_alt 60, 0, DirectSoundWaveData_Ring, 255, 0, 255, 165 @ 8451F9C voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare4, 255, 0, 255, 165 @ 8451FA8 voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 242, 0, 127 @ 8451FB4 voice_noise_alt 0, 0, 1, 0, 1 @ 8451FC0 @@ -12013,42 +12013,42 @@ voicegroup_8451F90:: @ 8451F90 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 8451FE4 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare3, 255, 0, 255, 165 @ 8451FF0 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 0, 255, 127 @ 8451FFC - voice_directsound 60, 0, DirectSoundWaveData_848C4A4, 255, 0, 255, 127 @ 8452008 + voice_directsound 60, 0, DirectSoundWaveData_MachineSound2, 255, 0, 255, 127 @ 8452008 voice_noise_alt 1, 0, 2, 0, 0 @ 8452014 voice_square_1 0x67, 3, 2, 7, 0, 0 @ 8452020 voice_square_2 3, 2, 7, 0, 0 @ 845202C voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 226, 0, 127 @ 8452038 - voice_directsound 60, 0, DirectSoundWaveData_848E094, 255, 0, 255, 0 @ 8452044 + voice_directsound 60, 0, DirectSoundWaveData_MachineSound1, 255, 0, 255, 0 @ 8452044 voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 204, 0, 127 @ 8452050 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 845205C - voice_directsound 60, 0, DirectSoundWaveData_848F448, 255, 0, 255, 127 @ 8452068 + voice_directsound 60, 0, DirectSoundWaveData_SC88_Applause2, 255, 0, 255, 127 @ 8452068 voice_directsound 60, 0, DirectSoundWaveData_SC88_SquareWave, 255, 0, 255, 127 @ 8452074 voice_square_1 103, 0, 0, 7, 0, 0 @ 8452080 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare2, 255, 0, 255, 127 @ 845208C - voice_directsound 60, 0, DirectSoundWaveData_8491ACC, 255, 0, 255, 127 @ 8452098 + voice_directsound 60, 0, DirectSoundWaveData_Noise3, 255, 0, 255, 127 @ 8452098 voice_directsound 60, 0, DirectSoundWaveData_SC88_Bubble, 255, 0, 255, 127 @ 84520A4 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare1, 255, 0, 255, 127 @ 84520B0 voice_noise_alt 0, 0, 7, 15, 1 @ 84520BC - voice_directsound 60, 0, DirectSoundWaveData_8493D20, 255, 0, 255, 127 @ 84520C8 + voice_directsound 60, 0, DirectSoundWaveData_SC88_CarCrash, 255, 0, 255, 127 @ 84520C8 voice_noise_alt 1, 0, 7, 15, 1 @ 84520D4 voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 246, 0, 127 @ 84520E0 - voice_directsound 60, 0, DirectSoundWaveData_8495028, 255, 0, 255, 127 @ 84520EC + voice_directsound 60, 0, DirectSoundWaveData_SC88_PinkNoise, 255, 0, 255, 127 @ 84520EC voice_square_1_alt 19, 2, 0, 2, 0, 0 @ 84520F8 - voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 0, 255, 127 @ 8452104 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WaspySynth, 255, 0, 255, 127 @ 8452104 voice_square_1 103, 0, 0, 0, 15, 0 @ 8452110 - voice_directsound_alt 60, 0, DirectSoundWaveData_8495028, 255, 0, 255, 127 @ 845211C + voice_directsound_alt 60, 0, DirectSoundWaveData_SC88_PinkNoise, 255, 0, 255, 127 @ 845211C voice_directsound 60, 0, DirectSoundWaveData_SC88_FretlessBass, 255, 255, 255, 127 @ 8452128 voice_directsound 60, 0, DirectSoundWaveData_SC88_SynthBass1, 255, 0, 255, 127 @ 8452134 - voice_directsound 60, 0, DirectSoundWaveData_8499110, 255, 0, 255, 127 @ 8452140 - voice_directsound 60, 0, DirectSoundWaveData_8497134, 255, 242, 0, 0 @ 845214C + voice_directsound 60, 0, DirectSoundWaveData_SC88_WhiteNoise, 255, 0, 255, 127 @ 8452140 + voice_directsound 60, 0, DirectSoundWaveData_SC88_WaspySynth, 255, 242, 0, 0 @ 845214C voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumkitGuiro, 255, 0, 255, 0 @ 8452158 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 165, 90, 216 @ 8452164 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitClosedHiHat, 255, 127, 0, 188 @ 8452170 - voice_directsound 60, 0, DirectSoundWaveData_SC88_PinkNoise, 255, 249, 0, 165 @ 845217C + voice_directsound 60, 0, DirectSoundWaveData_Noise1, 255, 249, 0, 165 @ 845217C voice_square_1 0, 0, 4, 6, 0, 0 @ 8452188 voice_directsound 60, 0, DirectSoundWaveData_8456330, 13, 0, 255, 127 @ 8452194 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 13, 0, 255, 127 @ 84521A0 - voice_directsound 60, 0, DirectSoundWaveData_849F40C, 255, 0, 255, 127 @ 84521AC + voice_directsound 60, 0, DirectSoundWaveData_SC88_JPSuperSaw, 255, 0, 255, 127 @ 84521AC voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 252, 0, 204 @ 84521B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 84521C4 voice_directsound 60, 0, DirectSoundWaveData_SC88_Marimba, 255, 235, 0, 204 @ 84521D0 @@ -12063,10 +12063,10 @@ voicegroup_8451F90:: @ 8451F90 voice_noise_alt 0, 1, 6, 0, 0 @ 845223C voice_directsound 60, 0, DirectSoundWaveData_SC88_FingerSlap, 255, 255, 255, 127 @ 8452248 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHandClap, 255, 255, 255, 127 @ 8452254 - voice_directsound 60, 0, DirectSoundWaveData_SC88_WhiteNoise, 255, 255, 255, 127 @ 8452260 + voice_directsound 60, 0, DirectSoundWaveData_Noise2, 255, 255, 255, 127 @ 8452260 voice_directsound 60, 0, DirectSoundWaveData_SC88_WideFrenchHorns, 11, 242, 0, 127 @ 845226C voice_square_1_alt 0, 2, 4, 6, 0, 0 @ 8452278 - voice_directsound 60, 0, DirectSoundWaveData_84A5690, 255, 255, 255, 127 @ 8452284 + voice_directsound 60, 0, DirectSoundWaveData_SC88_HorseGallop, 255, 255, 255, 127 @ 8452284 voice_directsound 60, 0, DirectSoundWaveData_SC88_AccordianFr, 255, 0, 255, 165 @ 8452290 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitHiMidTom, 255, 0, 255, 165 @ 845229C voice_noise_alt 0, 5, 7, 15, 1 @ 84522A8 @@ -12076,7 +12076,7 @@ voicegroup_8451F90:: @ 8451F90 voice_noise_alt 0, 6, 6, 0, 1 @ 84522D8 voice_noise_alt 0, 3, 6, 0, 1 @ 84522E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84522F0 - voice_directsound 60, 0, DirectSoundWaveData_8497134, 15, 127, 231, 127 @ 84522FC + voice_directsound 60, 0, DirectSoundWaveData_SC88_WaspySynth, 15, 127, 231, 127 @ 84522FC voice_square_1 0, 2, 0, 0, 15, 0 @ 8452308 voice_square_1 0, 2, 0, 0, 15, 0 @ 8452314 voice_square_1 0, 2, 0, 0, 15, 0 @ 8452320 -- cgit v1.2.3 From dfd9623588b773768189d0f1d472ae164908b004 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 28 Jan 2018 14:48:31 -0800 Subject: Rename phoneme samples to 'vowel_' --- sound/direct_sound_data.inc | 232 +++++++++++----------- sound/direct_sound_samples/phonemes/84A7328.aif | Bin 3186 -> 0 bytes sound/direct_sound_samples/phonemes/84A7F38.aif | Bin 3057 -> 0 bytes sound/direct_sound_samples/phonemes/84A8AC8.aif | Bin 2814 -> 0 bytes sound/direct_sound_samples/phonemes/84A9564.aif | Bin 2474 -> 0 bytes sound/direct_sound_samples/phonemes/84A9EAC.aif | Bin 2729 -> 0 bytes sound/direct_sound_samples/phonemes/84AA8F4.aif | Bin 3305 -> 0 bytes sound/direct_sound_samples/phonemes/8639898.aif | Bin 1697 -> 0 bytes sound/direct_sound_samples/phonemes/8639EF8.aif | Bin 1350 -> 0 bytes sound/direct_sound_samples/phonemes/863A3DC.aif | Bin 2447 -> 0 bytes sound/direct_sound_samples/phonemes/863AD2C.aif | Bin 2738 -> 0 bytes sound/direct_sound_samples/phonemes/863B79C.aif | Bin 897 -> 0 bytes sound/direct_sound_samples/phonemes/863BABC.aif | Bin 3273 -> 0 bytes sound/direct_sound_samples/phonemes/863C744.aif | Bin 1634 -> 0 bytes sound/direct_sound_samples/phonemes/863CD64.aif | Bin 999 -> 0 bytes sound/direct_sound_samples/phonemes/863D0EC.aif | Bin 3619 -> 0 bytes sound/direct_sound_samples/phonemes/863DED0.aif | Bin 2481 -> 0 bytes sound/direct_sound_samples/phonemes/863E840.aif | Bin 1021 -> 0 bytes sound/direct_sound_samples/phonemes/863EBDC.aif | Bin 2035 -> 0 bytes sound/direct_sound_samples/phonemes/863F390.aif | Bin 3483 -> 0 bytes sound/direct_sound_samples/phonemes/86400EC.aif | Bin 678 -> 0 bytes sound/direct_sound_samples/phonemes/8640330.aif | Bin 3711 -> 0 bytes sound/direct_sound_samples/phonemes/8641170.aif | Bin 2451 -> 0 bytes sound/direct_sound_samples/phonemes/8641AC4.aif | Bin 948 -> 0 bytes sound/direct_sound_samples/phonemes/8641E18.aif | Bin 1651 -> 0 bytes sound/direct_sound_samples/phonemes/864244C.aif | Bin 3243 -> 0 bytes sound/direct_sound_samples/phonemes/86430B8.aif | Bin 1529 -> 0 bytes sound/direct_sound_samples/phonemes/8643650.aif | Bin 2883 -> 0 bytes sound/direct_sound_samples/phonemes/8644154.aif | Bin 1605 -> 0 bytes sound/direct_sound_samples/phonemes/8644758.aif | Bin 599 -> 0 bytes sound/direct_sound_samples/phonemes/8644950.aif | Bin 2467 -> 0 bytes sound/direct_sound_samples/phonemes/86452B4.aif | Bin 4043 -> 0 bytes sound/direct_sound_samples/phonemes/8646240.aif | Bin 1687 -> 0 bytes sound/direct_sound_samples/phonemes/8646878.aif | Bin 2835 -> 0 bytes sound/direct_sound_samples/phonemes/864734C.aif | Bin 3974 -> 0 bytes sound/direct_sound_samples/phonemes/8648290.aif | Bin 1498 -> 0 bytes sound/direct_sound_samples/phonemes/8648808.aif | Bin 3723 -> 0 bytes sound/direct_sound_samples/phonemes/8649654.aif | Bin 3911 -> 0 bytes sound/direct_sound_samples/phonemes/864A55C.aif | Bin 2870 -> 0 bytes sound/direct_sound_samples/phonemes/864B030.aif | Bin 3027 -> 0 bytes sound/direct_sound_samples/phonemes/864BBC4.aif | Bin 2583 -> 0 bytes sound/direct_sound_samples/phonemes/864C59C.aif | Bin 1696 -> 0 bytes sound/direct_sound_samples/phonemes/864CBDC.aif | Bin 2847 -> 0 bytes sound/direct_sound_samples/phonemes/864D6BC.aif | Bin 1660 -> 0 bytes sound/direct_sound_samples/phonemes/864DCF8.aif | Bin 1912 -> 0 bytes sound/direct_sound_samples/phonemes/864E410.aif | Bin 2427 -> 0 bytes sound/direct_sound_samples/phonemes/864ED4C.aif | Bin 2043 -> 0 bytes sound/direct_sound_samples/phonemes/864F508.aif | Bin 1478 -> 0 bytes sound/direct_sound_samples/phonemes/864FA6C.aif | Bin 3507 -> 0 bytes sound/direct_sound_samples/phonemes/86507E0.aif | Bin 1213 -> 0 bytes sound/direct_sound_samples/phonemes/8650C5C.aif | Bin 1358 -> 0 bytes sound/direct_sound_samples/phonemes/8651148.aif | Bin 2055 -> 0 bytes sound/direct_sound_samples/phonemes/8651910.aif | Bin 3133 -> 0 bytes sound/direct_sound_samples/phonemes/865250C.aif | Bin 984 -> 0 bytes sound/direct_sound_samples/phonemes/8652884.aif | Bin 2043 -> 0 bytes sound/direct_sound_samples/phonemes/8653040.aif | Bin 3235 -> 0 bytes sound/direct_sound_samples/phonemes/8653CA4.aif | Bin 1326 -> 0 bytes sound/direct_sound_samples/phonemes/8654170.aif | Bin 2799 -> 0 bytes sound/direct_sound_samples/phonemes/vowel_1.aif | Bin 0 -> 3186 bytes sound/direct_sound_samples/phonemes/vowel_10.aif | Bin 0 -> 2738 bytes sound/direct_sound_samples/phonemes/vowel_11.aif | Bin 0 -> 897 bytes sound/direct_sound_samples/phonemes/vowel_12.aif | Bin 0 -> 3273 bytes sound/direct_sound_samples/phonemes/vowel_13.aif | Bin 0 -> 1634 bytes sound/direct_sound_samples/phonemes/vowel_14.aif | Bin 0 -> 999 bytes sound/direct_sound_samples/phonemes/vowel_15.aif | Bin 0 -> 3619 bytes sound/direct_sound_samples/phonemes/vowel_16.aif | Bin 0 -> 2481 bytes sound/direct_sound_samples/phonemes/vowel_17.aif | Bin 0 -> 1021 bytes sound/direct_sound_samples/phonemes/vowel_18.aif | Bin 0 -> 2035 bytes sound/direct_sound_samples/phonemes/vowel_19.aif | Bin 0 -> 3483 bytes sound/direct_sound_samples/phonemes/vowel_2.aif | Bin 0 -> 3057 bytes sound/direct_sound_samples/phonemes/vowel_20.aif | Bin 0 -> 678 bytes sound/direct_sound_samples/phonemes/vowel_21.aif | Bin 0 -> 3711 bytes sound/direct_sound_samples/phonemes/vowel_22.aif | Bin 0 -> 2451 bytes sound/direct_sound_samples/phonemes/vowel_23.aif | Bin 0 -> 948 bytes sound/direct_sound_samples/phonemes/vowel_24.aif | Bin 0 -> 1651 bytes sound/direct_sound_samples/phonemes/vowel_25.aif | Bin 0 -> 3243 bytes sound/direct_sound_samples/phonemes/vowel_26.aif | Bin 0 -> 1529 bytes sound/direct_sound_samples/phonemes/vowel_27.aif | Bin 0 -> 2883 bytes sound/direct_sound_samples/phonemes/vowel_28.aif | Bin 0 -> 1605 bytes sound/direct_sound_samples/phonemes/vowel_29.aif | Bin 0 -> 599 bytes sound/direct_sound_samples/phonemes/vowel_3.aif | Bin 0 -> 2814 bytes sound/direct_sound_samples/phonemes/vowel_30.aif | Bin 0 -> 2467 bytes sound/direct_sound_samples/phonemes/vowel_31.aif | Bin 0 -> 4043 bytes sound/direct_sound_samples/phonemes/vowel_32.aif | Bin 0 -> 1687 bytes sound/direct_sound_samples/phonemes/vowel_33.aif | Bin 0 -> 2835 bytes sound/direct_sound_samples/phonemes/vowel_34.aif | Bin 0 -> 3974 bytes sound/direct_sound_samples/phonemes/vowel_35.aif | Bin 0 -> 1498 bytes sound/direct_sound_samples/phonemes/vowel_36.aif | Bin 0 -> 3723 bytes sound/direct_sound_samples/phonemes/vowel_37.aif | Bin 0 -> 3911 bytes sound/direct_sound_samples/phonemes/vowel_38.aif | Bin 0 -> 2870 bytes sound/direct_sound_samples/phonemes/vowel_39.aif | Bin 0 -> 3027 bytes sound/direct_sound_samples/phonemes/vowel_4.aif | Bin 0 -> 2474 bytes sound/direct_sound_samples/phonemes/vowel_40.aif | Bin 0 -> 2583 bytes sound/direct_sound_samples/phonemes/vowel_41.aif | Bin 0 -> 1696 bytes sound/direct_sound_samples/phonemes/vowel_42.aif | Bin 0 -> 2847 bytes sound/direct_sound_samples/phonemes/vowel_43.aif | Bin 0 -> 1660 bytes sound/direct_sound_samples/phonemes/vowel_44.aif | Bin 0 -> 1912 bytes sound/direct_sound_samples/phonemes/vowel_45.aif | Bin 0 -> 2427 bytes sound/direct_sound_samples/phonemes/vowel_46.aif | Bin 0 -> 2043 bytes sound/direct_sound_samples/phonemes/vowel_47.aif | Bin 0 -> 1478 bytes sound/direct_sound_samples/phonemes/vowel_48.aif | Bin 0 -> 3507 bytes sound/direct_sound_samples/phonemes/vowel_49.aif | Bin 0 -> 1213 bytes sound/direct_sound_samples/phonemes/vowel_5.aif | Bin 0 -> 2729 bytes sound/direct_sound_samples/phonemes/vowel_50.aif | Bin 0 -> 1358 bytes sound/direct_sound_samples/phonemes/vowel_51.aif | Bin 0 -> 2055 bytes sound/direct_sound_samples/phonemes/vowel_52.aif | Bin 0 -> 3133 bytes sound/direct_sound_samples/phonemes/vowel_53.aif | Bin 0 -> 984 bytes sound/direct_sound_samples/phonemes/vowel_54.aif | Bin 0 -> 2043 bytes sound/direct_sound_samples/phonemes/vowel_55.aif | Bin 0 -> 3235 bytes sound/direct_sound_samples/phonemes/vowel_56.aif | Bin 0 -> 1326 bytes sound/direct_sound_samples/phonemes/vowel_57.aif | Bin 0 -> 2799 bytes sound/direct_sound_samples/phonemes/vowel_6.aif | Bin 0 -> 3305 bytes sound/direct_sound_samples/phonemes/vowel_7.aif | Bin 0 -> 1697 bytes sound/direct_sound_samples/phonemes/vowel_8.aif | Bin 0 -> 1350 bytes sound/direct_sound_samples/phonemes/vowel_9.aif | Bin 0 -> 2447 bytes sound/direct_sound_samples/synth/sc88_8456330.aif | Bin 1797 -> 0 bytes sound/direct_sound_samples/synth/tone1.aif | Bin 0 -> 1797 bytes sound/voice_groups.inc | 140 ++++++------- 118 files changed, 186 insertions(+), 186 deletions(-) delete mode 100644 sound/direct_sound_samples/phonemes/84A7328.aif delete mode 100644 sound/direct_sound_samples/phonemes/84A7F38.aif delete mode 100644 sound/direct_sound_samples/phonemes/84A8AC8.aif delete mode 100644 sound/direct_sound_samples/phonemes/84A9564.aif delete mode 100644 sound/direct_sound_samples/phonemes/84A9EAC.aif delete mode 100644 sound/direct_sound_samples/phonemes/84AA8F4.aif delete mode 100644 sound/direct_sound_samples/phonemes/8639898.aif delete mode 100644 sound/direct_sound_samples/phonemes/8639EF8.aif delete mode 100644 sound/direct_sound_samples/phonemes/863A3DC.aif delete mode 100644 sound/direct_sound_samples/phonemes/863AD2C.aif delete mode 100644 sound/direct_sound_samples/phonemes/863B79C.aif delete mode 100644 sound/direct_sound_samples/phonemes/863BABC.aif delete mode 100644 sound/direct_sound_samples/phonemes/863C744.aif delete mode 100644 sound/direct_sound_samples/phonemes/863CD64.aif delete mode 100644 sound/direct_sound_samples/phonemes/863D0EC.aif delete mode 100644 sound/direct_sound_samples/phonemes/863DED0.aif delete mode 100644 sound/direct_sound_samples/phonemes/863E840.aif delete mode 100644 sound/direct_sound_samples/phonemes/863EBDC.aif delete mode 100644 sound/direct_sound_samples/phonemes/863F390.aif delete mode 100644 sound/direct_sound_samples/phonemes/86400EC.aif delete mode 100644 sound/direct_sound_samples/phonemes/8640330.aif delete mode 100644 sound/direct_sound_samples/phonemes/8641170.aif delete mode 100644 sound/direct_sound_samples/phonemes/8641AC4.aif delete mode 100644 sound/direct_sound_samples/phonemes/8641E18.aif delete mode 100644 sound/direct_sound_samples/phonemes/864244C.aif delete mode 100644 sound/direct_sound_samples/phonemes/86430B8.aif delete mode 100644 sound/direct_sound_samples/phonemes/8643650.aif delete mode 100644 sound/direct_sound_samples/phonemes/8644154.aif delete mode 100644 sound/direct_sound_samples/phonemes/8644758.aif delete mode 100644 sound/direct_sound_samples/phonemes/8644950.aif delete mode 100644 sound/direct_sound_samples/phonemes/86452B4.aif delete mode 100644 sound/direct_sound_samples/phonemes/8646240.aif delete mode 100644 sound/direct_sound_samples/phonemes/8646878.aif delete mode 100644 sound/direct_sound_samples/phonemes/864734C.aif delete mode 100644 sound/direct_sound_samples/phonemes/8648290.aif delete mode 100644 sound/direct_sound_samples/phonemes/8648808.aif delete mode 100644 sound/direct_sound_samples/phonemes/8649654.aif delete mode 100644 sound/direct_sound_samples/phonemes/864A55C.aif delete mode 100644 sound/direct_sound_samples/phonemes/864B030.aif delete mode 100644 sound/direct_sound_samples/phonemes/864BBC4.aif delete mode 100644 sound/direct_sound_samples/phonemes/864C59C.aif delete mode 100644 sound/direct_sound_samples/phonemes/864CBDC.aif delete mode 100644 sound/direct_sound_samples/phonemes/864D6BC.aif delete mode 100644 sound/direct_sound_samples/phonemes/864DCF8.aif delete mode 100644 sound/direct_sound_samples/phonemes/864E410.aif delete mode 100644 sound/direct_sound_samples/phonemes/864ED4C.aif delete mode 100644 sound/direct_sound_samples/phonemes/864F508.aif delete mode 100644 sound/direct_sound_samples/phonemes/864FA6C.aif delete mode 100644 sound/direct_sound_samples/phonemes/86507E0.aif delete mode 100644 sound/direct_sound_samples/phonemes/8650C5C.aif delete mode 100644 sound/direct_sound_samples/phonemes/8651148.aif delete mode 100644 sound/direct_sound_samples/phonemes/8651910.aif delete mode 100644 sound/direct_sound_samples/phonemes/865250C.aif delete mode 100644 sound/direct_sound_samples/phonemes/8652884.aif delete mode 100644 sound/direct_sound_samples/phonemes/8653040.aif delete mode 100644 sound/direct_sound_samples/phonemes/8653CA4.aif delete mode 100644 sound/direct_sound_samples/phonemes/8654170.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_1.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_10.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_11.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_12.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_13.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_14.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_15.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_16.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_17.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_18.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_19.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_2.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_20.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_21.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_22.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_23.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_24.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_25.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_26.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_27.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_28.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_29.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_3.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_30.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_31.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_32.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_33.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_34.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_35.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_36.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_37.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_38.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_39.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_4.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_40.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_41.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_42.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_43.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_44.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_45.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_46.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_47.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_48.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_49.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_5.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_50.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_51.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_52.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_53.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_54.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_55.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_56.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_57.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_6.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_7.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_8.aif create mode 100644 sound/direct_sound_samples/phonemes/vowel_9.aif delete mode 100644 sound/direct_sound_samples/synth/sc88_8456330.aif create mode 100644 sound/direct_sound_samples/synth/tone1.aif diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index ba50fa3f4..455763ccf 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -1,6 +1,6 @@ .align 2 -DirectSoundWaveData_8456330:: @ 8456330 - .incbin "sound/direct_sound_samples/synth/sc88_8456330.bin" +DirectSoundWaveData_Tone1:: @ 8456330 + .incbin "sound/direct_sound_samples/synth/tone1.bin" .align 2 DirectSoundWaveData_SC88_Organ2:: @ 84569D4 @@ -239,28 +239,28 @@ DirectSoundWaveData_SC88_AccordianFr:: @ 84A5F58 .incbin "sound/direct_sound_samples/synth/sc88_22_accordion_fr.bin" .align 2 -DirectSoundWaveData_84A7328:: @ 84A7328 - .incbin "sound/direct_sound_samples/phonemes/84A7328.bin" +DirectSoundWaveData_Phoneme_Vowel1:: @ 84A7328 + .incbin "sound/direct_sound_samples/phonemes/vowel_1.bin" .align 2 -DirectSoundWaveData_84A7F38:: @ 84A7F38 - .incbin "sound/direct_sound_samples/phonemes/84A7F38.bin" +DirectSoundWaveData_Phoneme_Vowel2:: @ 84A7F38 + .incbin "sound/direct_sound_samples/phonemes/vowel_2.bin" .align 2 -DirectSoundWaveData_84A8AC8:: @ 84A8AC8 - .incbin "sound/direct_sound_samples/phonemes/84A8AC8.bin" +DirectSoundWaveData_Phoneme_Vowel3:: @ 84A8AC8 + .incbin "sound/direct_sound_samples/phonemes/vowel_3.bin" .align 2 -DirectSoundWaveData_84A9564:: @ 84A9564 - .incbin "sound/direct_sound_samples/phonemes/84A9564.bin" +DirectSoundWaveData_Phoneme_Vowel4:: @ 84A9564 + .incbin "sound/direct_sound_samples/phonemes/vowel_4.bin" .align 2 -DirectSoundWaveData_84A9EAC:: @ 84A9EAC - .incbin "sound/direct_sound_samples/phonemes/84A9EAC.bin" +DirectSoundWaveData_Phoneme_Vowel5:: @ 84A9EAC + .incbin "sound/direct_sound_samples/phonemes/vowel_5.bin" .align 2 -DirectSoundWaveData_84AA8F4:: @ 84AA8F4 - .incbin "sound/direct_sound_samples/phonemes/84AA8F4.bin" +DirectSoundWaveData_Phoneme_Vowel6:: @ 84AA8F4 + .incbin "sound/direct_sound_samples/phonemes/vowel_6.bin" .align 2 Cry_Bulbasaur:: @ 84AB57C @@ -1815,208 +1815,208 @@ Cry_Chimecho:: @ 8638E88 .incbin "sound/direct_sound_samples/cries/cry_chimecho.bin" .align 2 -DirectSoundWaveData_8639898:: @ 8639898 - .incbin "sound/direct_sound_samples/phonemes/8639898.bin" +DirectSoundWaveData_Phoneme_Vowel7:: @ 8639898 + .incbin "sound/direct_sound_samples/phonemes/vowel_7.bin" .align 2 -DirectSoundWaveData_8639EF8:: @ 8639EF8 - .incbin "sound/direct_sound_samples/phonemes/8639EF8.bin" +DirectSoundWaveData_Phoneme_Vowel8:: @ 8639EF8 + .incbin "sound/direct_sound_samples/phonemes/vowel_8.bin" .align 2 -DirectSoundWaveData_863A3DC:: @ 863A3DC - .incbin "sound/direct_sound_samples/phonemes/863A3DC.bin" +DirectSoundWaveData_Phoneme_Vowel9:: @ 863A3DC + .incbin "sound/direct_sound_samples/phonemes/vowel_9.bin" .align 2 -DirectSoundWaveData_863AD2C:: @ 863AD2C - .incbin "sound/direct_sound_samples/phonemes/863AD2C.bin" +DirectSoundWaveData_Phoneme_Vowel10:: @ 863AD2C + .incbin "sound/direct_sound_samples/phonemes/vowel_10.bin" .align 2 -DirectSoundWaveData_863B79C:: @ 863B79C - .incbin "sound/direct_sound_samples/phonemes/863B79C.bin" +DirectSoundWaveData_Phoneme_Vowel11:: @ 863B79C + .incbin "sound/direct_sound_samples/phonemes/vowel_11.bin" .align 2 -DirectSoundWaveData_863BABC:: @ 863BABC - .incbin "sound/direct_sound_samples/phonemes/863BABC.bin" +DirectSoundWaveData_Phoneme_Vowel12:: @ 863BABC + .incbin "sound/direct_sound_samples/phonemes/vowel_12.bin" .align 2 -DirectSoundWaveData_863C744:: @ 863C744 - .incbin "sound/direct_sound_samples/phonemes/863C744.bin" +DirectSoundWaveData_Phoneme_Vowel13:: @ 863C744 + .incbin "sound/direct_sound_samples/phonemes/vowel_13.bin" .align 2 -DirectSoundWaveData_863CD64:: @ 863CD64 - .incbin "sound/direct_sound_samples/phonemes/863CD64.bin" +DirectSoundWaveData_Phoneme_Vowel14:: @ 863CD64 + .incbin "sound/direct_sound_samples/phonemes/vowel_14.bin" .align 2 -DirectSoundWaveData_863D0EC:: @ 863D0EC - .incbin "sound/direct_sound_samples/phonemes/863D0EC.bin" +DirectSoundWaveData_Phoneme_Vowel15:: @ 863D0EC + .incbin "sound/direct_sound_samples/phonemes/vowel_15.bin" .align 2 -DirectSoundWaveData_863DED0:: @ 863DED0 - .incbin "sound/direct_sound_samples/phonemes/863DED0.bin" +DirectSoundWaveData_Phoneme_Vowel16:: @ 863DED0 + .incbin "sound/direct_sound_samples/phonemes/vowel_16.bin" .align 2 -DirectSoundWaveData_863E840:: @ 863E840 - .incbin "sound/direct_sound_samples/phonemes/863E840.bin" +DirectSoundWaveData_Phoneme_Vowel17:: @ 863E840 + .incbin "sound/direct_sound_samples/phonemes/vowel_17.bin" .align 2 -DirectSoundWaveData_863EBDC:: @ 863EBDC - .incbin "sound/direct_sound_samples/phonemes/863EBDC.bin" +DirectSoundWaveData_Phoneme_Vowel18:: @ 863EBDC + .incbin "sound/direct_sound_samples/phonemes/vowel_18.bin" .align 2 -DirectSoundWaveData_863F390:: @ 863F390 - .incbin "sound/direct_sound_samples/phonemes/863F390.bin" +DirectSoundWaveData_Phoneme_Vowel19:: @ 863F390 + .incbin "sound/direct_sound_samples/phonemes/vowel_19.bin" .align 2 -DirectSoundWaveData_86400EC:: @ 86400EC - .incbin "sound/direct_sound_samples/phonemes/86400EC.bin" +DirectSoundWaveData_Phoneme_Vowel20:: @ 86400EC + .incbin "sound/direct_sound_samples/phonemes/vowel_20.bin" .align 2 -DirectSoundWaveData_8640330:: @ 8640330 - .incbin "sound/direct_sound_samples/phonemes/8640330.bin" +DirectSoundWaveData_Phoneme_Vowel21:: @ 8640330 + .incbin "sound/direct_sound_samples/phonemes/vowel_21.bin" .align 2 -DirectSoundWaveData_8641170:: @ 8641170 - .incbin "sound/direct_sound_samples/phonemes/8641170.bin" +DirectSoundWaveData_Phoneme_Vowel22:: @ 8641170 + .incbin "sound/direct_sound_samples/phonemes/vowel_22.bin" .align 2 -DirectSoundWaveData_8641AC4:: @ 8641AC4 - .incbin "sound/direct_sound_samples/phonemes/8641AC4.bin" +DirectSoundWaveData_Phoneme_Vowel23:: @ 8641AC4 + .incbin "sound/direct_sound_samples/phonemes/vowel_23.bin" .align 2 -DirectSoundWaveData_8641E18:: @ 8641E18 - .incbin "sound/direct_sound_samples/phonemes/8641E18.bin" +DirectSoundWaveData_Phoneme_Vowel24:: @ 8641E18 + .incbin "sound/direct_sound_samples/phonemes/vowel_24.bin" .align 2 -DirectSoundWaveData_864244C:: @ 864244C - .incbin "sound/direct_sound_samples/phonemes/864244C.bin" +DirectSoundWaveData_Phoneme_Vowel25:: @ 864244C + .incbin "sound/direct_sound_samples/phonemes/vowel_25.bin" .align 2 -DirectSoundWaveData_86430B8:: @ 86430B8 - .incbin "sound/direct_sound_samples/phonemes/86430B8.bin" +DirectSoundWaveData_Phoneme_Vowel26:: @ 86430B8 + .incbin "sound/direct_sound_samples/phonemes/vowel_26.bin" .align 2 -DirectSoundWaveData_8643650:: @ 8643650 - .incbin "sound/direct_sound_samples/phonemes/8643650.bin" +DirectSoundWaveData_Phoneme_Vowel27:: @ 8643650 + .incbin "sound/direct_sound_samples/phonemes/vowel_27.bin" .align 2 -DirectSoundWaveData_8644154:: @ 8644154 - .incbin "sound/direct_sound_samples/phonemes/8644154.bin" +DirectSoundWaveData_Phoneme_Vowel28:: @ 8644154 + .incbin "sound/direct_sound_samples/phonemes/vowel_28.bin" .align 2 -DirectSoundWaveData_8644758:: @ 8644758 - .incbin "sound/direct_sound_samples/phonemes/8644758.bin" +DirectSoundWaveData_Phoneme_Vowel29:: @ 8644758 + .incbin "sound/direct_sound_samples/phonemes/vowel_29.bin" .align 2 -DirectSoundWaveData_8644950:: @ 8644950 - .incbin "sound/direct_sound_samples/phonemes/8644950.bin" +DirectSoundWaveData_Phoneme_Vowel30:: @ 8644950 + .incbin "sound/direct_sound_samples/phonemes/vowel_30.bin" .align 2 -DirectSoundWaveData_86452B4:: @ 86452B4 - .incbin "sound/direct_sound_samples/phonemes/86452B4.bin" +DirectSoundWaveData_Phoneme_Vowel31:: @ 86452B4 + .incbin "sound/direct_sound_samples/phonemes/vowel_31.bin" .align 2 -DirectSoundWaveData_8646240:: @ 8646240 - .incbin "sound/direct_sound_samples/phonemes/8646240.bin" +DirectSoundWaveData_Phoneme_Vowel32:: @ 8646240 + .incbin "sound/direct_sound_samples/phonemes/vowel_32.bin" .align 2 -DirectSoundWaveData_8646878:: @ 8646878 - .incbin "sound/direct_sound_samples/phonemes/8646878.bin" +DirectSoundWaveData_Phoneme_Vowel33:: @ 8646878 + .incbin "sound/direct_sound_samples/phonemes/vowel_33.bin" .align 2 -DirectSoundWaveData_864734C:: @ 864734C - .incbin "sound/direct_sound_samples/phonemes/864734C.bin" +DirectSoundWaveData_Phoneme_Vowel34:: @ 864734C + .incbin "sound/direct_sound_samples/phonemes/vowel_34.bin" .align 2 -DirectSoundWaveData_8648290:: @ 8648290 - .incbin "sound/direct_sound_samples/phonemes/8648290.bin" +DirectSoundWaveData_Phoneme_Vowel35:: @ 8648290 + .incbin "sound/direct_sound_samples/phonemes/vowel_35.bin" .align 2 -DirectSoundWaveData_8648808:: @ 8648808 - .incbin "sound/direct_sound_samples/phonemes/8648808.bin" +DirectSoundWaveData_Phoneme_Vowel36:: @ 8648808 + .incbin "sound/direct_sound_samples/phonemes/vowel_36.bin" .align 2 -DirectSoundWaveData_8649654:: @ 8649654 - .incbin "sound/direct_sound_samples/phonemes/8649654.bin" +DirectSoundWaveData_Phoneme_Vowel37:: @ 8649654 + .incbin "sound/direct_sound_samples/phonemes/vowel_37.bin" .align 2 -DirectSoundWaveData_864A55C:: @ 864A55C - .incbin "sound/direct_sound_samples/phonemes/864A55C.bin" +DirectSoundWaveData_Phoneme_Vowel38:: @ 864A55C + .incbin "sound/direct_sound_samples/phonemes/vowel_38.bin" .align 2 -DirectSoundWaveData_864B030:: @ 864B030 - .incbin "sound/direct_sound_samples/phonemes/864B030.bin" +DirectSoundWaveData_Phoneme_Vowel39:: @ 864B030 + .incbin "sound/direct_sound_samples/phonemes/vowel_39.bin" .align 2 -DirectSoundWaveData_864BBC4:: @ 864BBC4 - .incbin "sound/direct_sound_samples/phonemes/864BBC4.bin" +DirectSoundWaveData_Phoneme_Vowel40:: @ 864BBC4 + .incbin "sound/direct_sound_samples/phonemes/vowel_40.bin" .align 2 -DirectSoundWaveData_864C59C:: @ 864C59C - .incbin "sound/direct_sound_samples/phonemes/864C59C.bin" +DirectSoundWaveData_Phoneme_Vowel41:: @ 864C59C + .incbin "sound/direct_sound_samples/phonemes/vowel_41.bin" .align 2 -DirectSoundWaveData_864CBDC:: @ 864CBDC - .incbin "sound/direct_sound_samples/phonemes/864CBDC.bin" +DirectSoundWaveData_Phoneme_Vowel42:: @ 864CBDC + .incbin "sound/direct_sound_samples/phonemes/vowel_42.bin" .align 2 -DirectSoundWaveData_864D6BC:: @ 864D6BC - .incbin "sound/direct_sound_samples/phonemes/864D6BC.bin" +DirectSoundWaveData_Phoneme_Vowel43:: @ 864D6BC + .incbin "sound/direct_sound_samples/phonemes/vowel_43.bin" .align 2 -DirectSoundWaveData_864DCF8:: @ 864DCF8 - .incbin "sound/direct_sound_samples/phonemes/864DCF8.bin" +DirectSoundWaveData_Phoneme_Vowel44:: @ 864DCF8 + .incbin "sound/direct_sound_samples/phonemes/vowel_44.bin" .align 2 -DirectSoundWaveData_864E410:: @ 864E410 - .incbin "sound/direct_sound_samples/phonemes/864E410.bin" +DirectSoundWaveData_Phoneme_Vowel45:: @ 864E410 + .incbin "sound/direct_sound_samples/phonemes/vowel_45.bin" .align 2 -DirectSoundWaveData_864ED4C:: @ 864ED4C - .incbin "sound/direct_sound_samples/phonemes/864ED4C.bin" +DirectSoundWaveData_Phoneme_Vowel46:: @ 864ED4C + .incbin "sound/direct_sound_samples/phonemes/vowel_46.bin" .align 2 -DirectSoundWaveData_864F508:: @ 864F508 - .incbin "sound/direct_sound_samples/phonemes/864F508.bin" +DirectSoundWaveData_Phoneme_Vowel47:: @ 864F508 + .incbin "sound/direct_sound_samples/phonemes/vowel_47.bin" .align 2 -DirectSoundWaveData_864FA6C:: @ 864FA6C - .incbin "sound/direct_sound_samples/phonemes/864FA6C.bin" +DirectSoundWaveData_Phoneme_Vowel48:: @ 864FA6C + .incbin "sound/direct_sound_samples/phonemes/vowel_48.bin" .align 2 -DirectSoundWaveData_86507E0:: @ 86507E0 - .incbin "sound/direct_sound_samples/phonemes/86507E0.bin" +DirectSoundWaveData_Phoneme_Vowel49:: @ 86507E0 + .incbin "sound/direct_sound_samples/phonemes/vowel_49.bin" .align 2 -DirectSoundWaveData_8650C5C:: @ 8650C5C - .incbin "sound/direct_sound_samples/phonemes/8650C5C.bin" +DirectSoundWaveData_Phoneme_Vowel50:: @ 8650C5C + .incbin "sound/direct_sound_samples/phonemes/vowel_50.bin" .align 2 -DirectSoundWaveData_8651148:: @ 8651148 - .incbin "sound/direct_sound_samples/phonemes/8651148.bin" +DirectSoundWaveData_Phoneme_Vowel51:: @ 8651148 + .incbin "sound/direct_sound_samples/phonemes/vowel_51.bin" .align 2 -DirectSoundWaveData_8651910:: @ 8651910 - .incbin "sound/direct_sound_samples/phonemes/8651910.bin" +DirectSoundWaveData_Phoneme_Vowel52:: @ 8651910 + .incbin "sound/direct_sound_samples/phonemes/vowel_52.bin" .align 2 -DirectSoundWaveData_865250C:: @ 865250C - .incbin "sound/direct_sound_samples/phonemes/865250C.bin" +DirectSoundWaveData_Phoneme_Vowel53:: @ 865250C + .incbin "sound/direct_sound_samples/phonemes/vowel_53.bin" .align 2 -DirectSoundWaveData_8652884:: @ 8652884 - .incbin "sound/direct_sound_samples/phonemes/8652884.bin" +DirectSoundWaveData_Phoneme_Vowel54:: @ 8652884 + .incbin "sound/direct_sound_samples/phonemes/vowel_54.bin" .align 2 -DirectSoundWaveData_8653040:: @ 8653040 - .incbin "sound/direct_sound_samples/phonemes/8653040.bin" +DirectSoundWaveData_Phoneme_Vowel55:: @ 8653040 + .incbin "sound/direct_sound_samples/phonemes/vowel_55.bin" .align 2 -DirectSoundWaveData_8653CA4:: @ 8653CA4 - .incbin "sound/direct_sound_samples/phonemes/8653CA4.bin" +DirectSoundWaveData_Phoneme_Vowel56:: @ 8653CA4 + .incbin "sound/direct_sound_samples/phonemes/vowel_56.bin" .align 2 -DirectSoundWaveData_8654170:: @ 8654170 - .incbin "sound/direct_sound_samples/phonemes/8654170.bin" +DirectSoundWaveData_Phoneme_Vowel57:: @ 8654170 + .incbin "sound/direct_sound_samples/phonemes/vowel_57.bin" .align 2 DirectSoundWaveData_SC88_AccordionFr_Copy:: @ 8654C20 diff --git a/sound/direct_sound_samples/phonemes/84A7328.aif b/sound/direct_sound_samples/phonemes/84A7328.aif deleted file mode 100644 index 9521d0b6e..000000000 Binary files a/sound/direct_sound_samples/phonemes/84A7328.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84A7F38.aif b/sound/direct_sound_samples/phonemes/84A7F38.aif deleted file mode 100644 index 2519572e2..000000000 Binary files a/sound/direct_sound_samples/phonemes/84A7F38.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84A8AC8.aif b/sound/direct_sound_samples/phonemes/84A8AC8.aif deleted file mode 100644 index d411e6612..000000000 Binary files a/sound/direct_sound_samples/phonemes/84A8AC8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84A9564.aif b/sound/direct_sound_samples/phonemes/84A9564.aif deleted file mode 100644 index 3bc1aa839..000000000 Binary files a/sound/direct_sound_samples/phonemes/84A9564.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84A9EAC.aif b/sound/direct_sound_samples/phonemes/84A9EAC.aif deleted file mode 100644 index 3bacf3676..000000000 Binary files a/sound/direct_sound_samples/phonemes/84A9EAC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/84AA8F4.aif b/sound/direct_sound_samples/phonemes/84AA8F4.aif deleted file mode 100644 index 5ddaa153d..000000000 Binary files a/sound/direct_sound_samples/phonemes/84AA8F4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8639898.aif b/sound/direct_sound_samples/phonemes/8639898.aif deleted file mode 100644 index 4b15a94b7..000000000 Binary files a/sound/direct_sound_samples/phonemes/8639898.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8639EF8.aif b/sound/direct_sound_samples/phonemes/8639EF8.aif deleted file mode 100644 index 74c129073..000000000 Binary files a/sound/direct_sound_samples/phonemes/8639EF8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863A3DC.aif b/sound/direct_sound_samples/phonemes/863A3DC.aif deleted file mode 100644 index 359972c16..000000000 Binary files a/sound/direct_sound_samples/phonemes/863A3DC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863AD2C.aif b/sound/direct_sound_samples/phonemes/863AD2C.aif deleted file mode 100644 index 3b136fa43..000000000 Binary files a/sound/direct_sound_samples/phonemes/863AD2C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863B79C.aif b/sound/direct_sound_samples/phonemes/863B79C.aif deleted file mode 100644 index fd72512cf..000000000 Binary files a/sound/direct_sound_samples/phonemes/863B79C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863BABC.aif b/sound/direct_sound_samples/phonemes/863BABC.aif deleted file mode 100644 index 6f7794bec..000000000 Binary files a/sound/direct_sound_samples/phonemes/863BABC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863C744.aif b/sound/direct_sound_samples/phonemes/863C744.aif deleted file mode 100644 index 89b845f21..000000000 Binary files a/sound/direct_sound_samples/phonemes/863C744.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863CD64.aif b/sound/direct_sound_samples/phonemes/863CD64.aif deleted file mode 100644 index 1d99a3a93..000000000 Binary files a/sound/direct_sound_samples/phonemes/863CD64.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863D0EC.aif b/sound/direct_sound_samples/phonemes/863D0EC.aif deleted file mode 100644 index 883398129..000000000 Binary files a/sound/direct_sound_samples/phonemes/863D0EC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863DED0.aif b/sound/direct_sound_samples/phonemes/863DED0.aif deleted file mode 100644 index 776815e63..000000000 Binary files a/sound/direct_sound_samples/phonemes/863DED0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863E840.aif b/sound/direct_sound_samples/phonemes/863E840.aif deleted file mode 100644 index 545bd1292..000000000 Binary files a/sound/direct_sound_samples/phonemes/863E840.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863EBDC.aif b/sound/direct_sound_samples/phonemes/863EBDC.aif deleted file mode 100644 index c0a3be10d..000000000 Binary files a/sound/direct_sound_samples/phonemes/863EBDC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/863F390.aif b/sound/direct_sound_samples/phonemes/863F390.aif deleted file mode 100644 index d26ecdd6d..000000000 Binary files a/sound/direct_sound_samples/phonemes/863F390.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/86400EC.aif b/sound/direct_sound_samples/phonemes/86400EC.aif deleted file mode 100644 index 2b51201a4..000000000 Binary files a/sound/direct_sound_samples/phonemes/86400EC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8640330.aif b/sound/direct_sound_samples/phonemes/8640330.aif deleted file mode 100644 index cf5ac4e03..000000000 Binary files a/sound/direct_sound_samples/phonemes/8640330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8641170.aif b/sound/direct_sound_samples/phonemes/8641170.aif deleted file mode 100644 index 606742e60..000000000 Binary files a/sound/direct_sound_samples/phonemes/8641170.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8641AC4.aif b/sound/direct_sound_samples/phonemes/8641AC4.aif deleted file mode 100644 index 71d4987d6..000000000 Binary files a/sound/direct_sound_samples/phonemes/8641AC4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8641E18.aif b/sound/direct_sound_samples/phonemes/8641E18.aif deleted file mode 100644 index 070c44a37..000000000 Binary files a/sound/direct_sound_samples/phonemes/8641E18.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864244C.aif b/sound/direct_sound_samples/phonemes/864244C.aif deleted file mode 100644 index b0ca84a38..000000000 Binary files a/sound/direct_sound_samples/phonemes/864244C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/86430B8.aif b/sound/direct_sound_samples/phonemes/86430B8.aif deleted file mode 100644 index f44101b23..000000000 Binary files a/sound/direct_sound_samples/phonemes/86430B8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8643650.aif b/sound/direct_sound_samples/phonemes/8643650.aif deleted file mode 100644 index a33809d42..000000000 Binary files a/sound/direct_sound_samples/phonemes/8643650.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8644154.aif b/sound/direct_sound_samples/phonemes/8644154.aif deleted file mode 100644 index 6a005efcc..000000000 Binary files a/sound/direct_sound_samples/phonemes/8644154.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8644758.aif b/sound/direct_sound_samples/phonemes/8644758.aif deleted file mode 100644 index 62f9493fd..000000000 Binary files a/sound/direct_sound_samples/phonemes/8644758.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8644950.aif b/sound/direct_sound_samples/phonemes/8644950.aif deleted file mode 100644 index 5767bd6d9..000000000 Binary files a/sound/direct_sound_samples/phonemes/8644950.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/86452B4.aif b/sound/direct_sound_samples/phonemes/86452B4.aif deleted file mode 100644 index 33e328a82..000000000 Binary files a/sound/direct_sound_samples/phonemes/86452B4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8646240.aif b/sound/direct_sound_samples/phonemes/8646240.aif deleted file mode 100644 index 548e740c8..000000000 Binary files a/sound/direct_sound_samples/phonemes/8646240.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8646878.aif b/sound/direct_sound_samples/phonemes/8646878.aif deleted file mode 100644 index cbbe09266..000000000 Binary files a/sound/direct_sound_samples/phonemes/8646878.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864734C.aif b/sound/direct_sound_samples/phonemes/864734C.aif deleted file mode 100644 index 8bdf7faaa..000000000 Binary files a/sound/direct_sound_samples/phonemes/864734C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8648290.aif b/sound/direct_sound_samples/phonemes/8648290.aif deleted file mode 100644 index f96f8853b..000000000 Binary files a/sound/direct_sound_samples/phonemes/8648290.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8648808.aif b/sound/direct_sound_samples/phonemes/8648808.aif deleted file mode 100644 index ab9abbf79..000000000 Binary files a/sound/direct_sound_samples/phonemes/8648808.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8649654.aif b/sound/direct_sound_samples/phonemes/8649654.aif deleted file mode 100644 index 9d21d0ab4..000000000 Binary files a/sound/direct_sound_samples/phonemes/8649654.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864A55C.aif b/sound/direct_sound_samples/phonemes/864A55C.aif deleted file mode 100644 index c037ed4af..000000000 Binary files a/sound/direct_sound_samples/phonemes/864A55C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864B030.aif b/sound/direct_sound_samples/phonemes/864B030.aif deleted file mode 100644 index ac1f8b66f..000000000 Binary files a/sound/direct_sound_samples/phonemes/864B030.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864BBC4.aif b/sound/direct_sound_samples/phonemes/864BBC4.aif deleted file mode 100644 index 1fd9111c8..000000000 Binary files a/sound/direct_sound_samples/phonemes/864BBC4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864C59C.aif b/sound/direct_sound_samples/phonemes/864C59C.aif deleted file mode 100644 index 5d6ae2282..000000000 Binary files a/sound/direct_sound_samples/phonemes/864C59C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864CBDC.aif b/sound/direct_sound_samples/phonemes/864CBDC.aif deleted file mode 100644 index f26700690..000000000 Binary files a/sound/direct_sound_samples/phonemes/864CBDC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864D6BC.aif b/sound/direct_sound_samples/phonemes/864D6BC.aif deleted file mode 100644 index 3ba97a9fc..000000000 Binary files a/sound/direct_sound_samples/phonemes/864D6BC.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864DCF8.aif b/sound/direct_sound_samples/phonemes/864DCF8.aif deleted file mode 100644 index 37f1be4b1..000000000 Binary files a/sound/direct_sound_samples/phonemes/864DCF8.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864E410.aif b/sound/direct_sound_samples/phonemes/864E410.aif deleted file mode 100644 index 4b3facb99..000000000 Binary files a/sound/direct_sound_samples/phonemes/864E410.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864ED4C.aif b/sound/direct_sound_samples/phonemes/864ED4C.aif deleted file mode 100644 index 8a4d7653b..000000000 Binary files a/sound/direct_sound_samples/phonemes/864ED4C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864F508.aif b/sound/direct_sound_samples/phonemes/864F508.aif deleted file mode 100644 index db5bae244..000000000 Binary files a/sound/direct_sound_samples/phonemes/864F508.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/864FA6C.aif b/sound/direct_sound_samples/phonemes/864FA6C.aif deleted file mode 100644 index 6612dd54d..000000000 Binary files a/sound/direct_sound_samples/phonemes/864FA6C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/86507E0.aif b/sound/direct_sound_samples/phonemes/86507E0.aif deleted file mode 100644 index 441eecfcd..000000000 Binary files a/sound/direct_sound_samples/phonemes/86507E0.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8650C5C.aif b/sound/direct_sound_samples/phonemes/8650C5C.aif deleted file mode 100644 index 95670cf0a..000000000 Binary files a/sound/direct_sound_samples/phonemes/8650C5C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8651148.aif b/sound/direct_sound_samples/phonemes/8651148.aif deleted file mode 100644 index 0fadcba8e..000000000 Binary files a/sound/direct_sound_samples/phonemes/8651148.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8651910.aif b/sound/direct_sound_samples/phonemes/8651910.aif deleted file mode 100644 index 6017c55b4..000000000 Binary files a/sound/direct_sound_samples/phonemes/8651910.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/865250C.aif b/sound/direct_sound_samples/phonemes/865250C.aif deleted file mode 100644 index 2327b6d65..000000000 Binary files a/sound/direct_sound_samples/phonemes/865250C.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8652884.aif b/sound/direct_sound_samples/phonemes/8652884.aif deleted file mode 100644 index 19ceca0d0..000000000 Binary files a/sound/direct_sound_samples/phonemes/8652884.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8653040.aif b/sound/direct_sound_samples/phonemes/8653040.aif deleted file mode 100644 index 8438d301a..000000000 Binary files a/sound/direct_sound_samples/phonemes/8653040.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8653CA4.aif b/sound/direct_sound_samples/phonemes/8653CA4.aif deleted file mode 100644 index 74d4bcf4a..000000000 Binary files a/sound/direct_sound_samples/phonemes/8653CA4.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/8654170.aif b/sound/direct_sound_samples/phonemes/8654170.aif deleted file mode 100644 index dfef8a82b..000000000 Binary files a/sound/direct_sound_samples/phonemes/8654170.aif and /dev/null differ diff --git a/sound/direct_sound_samples/phonemes/vowel_1.aif b/sound/direct_sound_samples/phonemes/vowel_1.aif new file mode 100644 index 000000000..9521d0b6e Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_1.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_10.aif b/sound/direct_sound_samples/phonemes/vowel_10.aif new file mode 100644 index 000000000..3b136fa43 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_10.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_11.aif b/sound/direct_sound_samples/phonemes/vowel_11.aif new file mode 100644 index 000000000..fd72512cf Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_11.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_12.aif b/sound/direct_sound_samples/phonemes/vowel_12.aif new file mode 100644 index 000000000..6f7794bec Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_12.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_13.aif b/sound/direct_sound_samples/phonemes/vowel_13.aif new file mode 100644 index 000000000..89b845f21 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_13.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_14.aif b/sound/direct_sound_samples/phonemes/vowel_14.aif new file mode 100644 index 000000000..1d99a3a93 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_14.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_15.aif b/sound/direct_sound_samples/phonemes/vowel_15.aif new file mode 100644 index 000000000..883398129 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_15.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_16.aif b/sound/direct_sound_samples/phonemes/vowel_16.aif new file mode 100644 index 000000000..776815e63 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_16.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_17.aif b/sound/direct_sound_samples/phonemes/vowel_17.aif new file mode 100644 index 000000000..545bd1292 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_17.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_18.aif b/sound/direct_sound_samples/phonemes/vowel_18.aif new file mode 100644 index 000000000..c0a3be10d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_18.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_19.aif b/sound/direct_sound_samples/phonemes/vowel_19.aif new file mode 100644 index 000000000..d26ecdd6d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_19.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_2.aif b/sound/direct_sound_samples/phonemes/vowel_2.aif new file mode 100644 index 000000000..2519572e2 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_2.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_20.aif b/sound/direct_sound_samples/phonemes/vowel_20.aif new file mode 100644 index 000000000..2b51201a4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_20.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_21.aif b/sound/direct_sound_samples/phonemes/vowel_21.aif new file mode 100644 index 000000000..cf5ac4e03 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_21.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_22.aif b/sound/direct_sound_samples/phonemes/vowel_22.aif new file mode 100644 index 000000000..606742e60 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_22.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_23.aif b/sound/direct_sound_samples/phonemes/vowel_23.aif new file mode 100644 index 000000000..71d4987d6 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_23.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_24.aif b/sound/direct_sound_samples/phonemes/vowel_24.aif new file mode 100644 index 000000000..070c44a37 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_24.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_25.aif b/sound/direct_sound_samples/phonemes/vowel_25.aif new file mode 100644 index 000000000..b0ca84a38 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_25.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_26.aif b/sound/direct_sound_samples/phonemes/vowel_26.aif new file mode 100644 index 000000000..f44101b23 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_26.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_27.aif b/sound/direct_sound_samples/phonemes/vowel_27.aif new file mode 100644 index 000000000..a33809d42 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_27.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_28.aif b/sound/direct_sound_samples/phonemes/vowel_28.aif new file mode 100644 index 000000000..6a005efcc Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_28.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_29.aif b/sound/direct_sound_samples/phonemes/vowel_29.aif new file mode 100644 index 000000000..62f9493fd Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_29.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_3.aif b/sound/direct_sound_samples/phonemes/vowel_3.aif new file mode 100644 index 000000000..d411e6612 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_3.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_30.aif b/sound/direct_sound_samples/phonemes/vowel_30.aif new file mode 100644 index 000000000..5767bd6d9 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_30.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_31.aif b/sound/direct_sound_samples/phonemes/vowel_31.aif new file mode 100644 index 000000000..33e328a82 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_31.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_32.aif b/sound/direct_sound_samples/phonemes/vowel_32.aif new file mode 100644 index 000000000..548e740c8 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_32.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_33.aif b/sound/direct_sound_samples/phonemes/vowel_33.aif new file mode 100644 index 000000000..cbbe09266 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_33.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_34.aif b/sound/direct_sound_samples/phonemes/vowel_34.aif new file mode 100644 index 000000000..8bdf7faaa Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_34.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_35.aif b/sound/direct_sound_samples/phonemes/vowel_35.aif new file mode 100644 index 000000000..f96f8853b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_35.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_36.aif b/sound/direct_sound_samples/phonemes/vowel_36.aif new file mode 100644 index 000000000..ab9abbf79 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_36.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_37.aif b/sound/direct_sound_samples/phonemes/vowel_37.aif new file mode 100644 index 000000000..9d21d0ab4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_37.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_38.aif b/sound/direct_sound_samples/phonemes/vowel_38.aif new file mode 100644 index 000000000..c037ed4af Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_38.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_39.aif b/sound/direct_sound_samples/phonemes/vowel_39.aif new file mode 100644 index 000000000..ac1f8b66f Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_39.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_4.aif b/sound/direct_sound_samples/phonemes/vowel_4.aif new file mode 100644 index 000000000..3bc1aa839 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_4.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_40.aif b/sound/direct_sound_samples/phonemes/vowel_40.aif new file mode 100644 index 000000000..1fd9111c8 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_40.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_41.aif b/sound/direct_sound_samples/phonemes/vowel_41.aif new file mode 100644 index 000000000..5d6ae2282 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_41.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_42.aif b/sound/direct_sound_samples/phonemes/vowel_42.aif new file mode 100644 index 000000000..f26700690 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_42.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_43.aif b/sound/direct_sound_samples/phonemes/vowel_43.aif new file mode 100644 index 000000000..3ba97a9fc Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_43.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_44.aif b/sound/direct_sound_samples/phonemes/vowel_44.aif new file mode 100644 index 000000000..37f1be4b1 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_44.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_45.aif b/sound/direct_sound_samples/phonemes/vowel_45.aif new file mode 100644 index 000000000..4b3facb99 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_45.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_46.aif b/sound/direct_sound_samples/phonemes/vowel_46.aif new file mode 100644 index 000000000..8a4d7653b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_46.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_47.aif b/sound/direct_sound_samples/phonemes/vowel_47.aif new file mode 100644 index 000000000..db5bae244 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_47.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_48.aif b/sound/direct_sound_samples/phonemes/vowel_48.aif new file mode 100644 index 000000000..6612dd54d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_48.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_49.aif b/sound/direct_sound_samples/phonemes/vowel_49.aif new file mode 100644 index 000000000..441eecfcd Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_49.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_5.aif b/sound/direct_sound_samples/phonemes/vowel_5.aif new file mode 100644 index 000000000..3bacf3676 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_5.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_50.aif b/sound/direct_sound_samples/phonemes/vowel_50.aif new file mode 100644 index 000000000..95670cf0a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_50.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_51.aif b/sound/direct_sound_samples/phonemes/vowel_51.aif new file mode 100644 index 000000000..0fadcba8e Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_51.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_52.aif b/sound/direct_sound_samples/phonemes/vowel_52.aif new file mode 100644 index 000000000..6017c55b4 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_52.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_53.aif b/sound/direct_sound_samples/phonemes/vowel_53.aif new file mode 100644 index 000000000..2327b6d65 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_53.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_54.aif b/sound/direct_sound_samples/phonemes/vowel_54.aif new file mode 100644 index 000000000..19ceca0d0 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_54.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_55.aif b/sound/direct_sound_samples/phonemes/vowel_55.aif new file mode 100644 index 000000000..8438d301a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_55.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_56.aif b/sound/direct_sound_samples/phonemes/vowel_56.aif new file mode 100644 index 000000000..74d4bcf4a Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_56.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_57.aif b/sound/direct_sound_samples/phonemes/vowel_57.aif new file mode 100644 index 000000000..dfef8a82b Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_57.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_6.aif b/sound/direct_sound_samples/phonemes/vowel_6.aif new file mode 100644 index 000000000..5ddaa153d Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_6.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_7.aif b/sound/direct_sound_samples/phonemes/vowel_7.aif new file mode 100644 index 000000000..4b15a94b7 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_7.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_8.aif b/sound/direct_sound_samples/phonemes/vowel_8.aif new file mode 100644 index 000000000..74c129073 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_8.aif differ diff --git a/sound/direct_sound_samples/phonemes/vowel_9.aif b/sound/direct_sound_samples/phonemes/vowel_9.aif new file mode 100644 index 000000000..359972c16 Binary files /dev/null and b/sound/direct_sound_samples/phonemes/vowel_9.aif differ diff --git a/sound/direct_sound_samples/synth/sc88_8456330.aif b/sound/direct_sound_samples/synth/sc88_8456330.aif deleted file mode 100644 index 199ead811..000000000 Binary files a/sound/direct_sound_samples/synth/sc88_8456330.aif and /dev/null differ diff --git a/sound/direct_sound_samples/synth/tone1.aif b/sound/direct_sound_samples/synth/tone1.aif new file mode 100644 index 000000000..199ead811 Binary files /dev/null and b/sound/direct_sound_samples/synth/tone1.aif differ diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index 0d4c94121..1d7c46c83 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -9,7 +9,7 @@ voicegroup_pokemon_cry:: @ 842FC8 voice_square_2 2, 0, 0, 9, 2 @ 842FCD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FCDC voice_square_1 0, 2, 0, 0, 15, 0 @ 842FCE8 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 51, 235 @ 842FCF4 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 51, 235 @ 842FCF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD00 voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD0C voice_square_1 0, 2, 0, 0, 15, 0 @ 842FD18 @@ -507,7 +507,7 @@ voicegroup_843129C:: @ 843129C voice_square_1 0, 2, 0, 0, 15, 0 @ 84312E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 84312F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 84312FC - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 51, 235 @ 8431308 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 51, 235 @ 8431308 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431314 voice_square_1 0, 2, 0, 0, 15, 0 @ 8431320 voice_square_1 0, 2, 0, 0, 15, 0 @ 843132C @@ -4061,7 +4061,7 @@ voicegroup_843B424:: @ 843B424 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B46C voice_square_1 0, 2, 0, 0, 15, 0 @ 843B478 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B484 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 204, 51, 242 @ 843B490 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 204, 51, 242 @ 843B490 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B49C voice_square_1 0, 2, 0, 0, 15, 0 @ 843B4A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B4B4 @@ -4152,7 +4152,7 @@ voicegroup_843B844:: @ 843B844 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B88C voice_square_1 0, 2, 0, 0, 15, 0 @ 843B898 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B8A4 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 51, 242 @ 843B8B0 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 51, 242 @ 843B8B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B8BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843B8C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 843B8D4 @@ -5146,7 +5146,7 @@ voicegroup_843E5BC:: @ 843E5BC voice_square_1 0, 2, 0, 0, 15, 0 @ 843E604 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E610 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E61C - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 188, 51, 242 @ 843E628 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 188, 51, 242 @ 843E628 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E634 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E640 voice_square_1 0, 2, 0, 0, 15, 0 @ 843E64C @@ -5408,7 +5408,7 @@ voicegroup_843F1BC:: @ 843F1BC voice_programmable_wave_alt ProgrammableWaveData_84553FC, 0, 7, 15, 0 @ 843F204 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F210 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F21C - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 51, 242 @ 843F228 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 51, 242 @ 843F228 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F234 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F240 voice_square_1 0, 2, 0, 0, 15, 0 @ 843F24C @@ -8387,7 +8387,7 @@ voicegroup_8447A00:: @ 8447A00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A48 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A60 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 72, 249 @ 8447A6C + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 72, 249 @ 8447A6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A78 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A84 voice_square_1 0, 2, 0, 0, 15, 0 @ 8447A90 @@ -9391,7 +9391,7 @@ voicegroup_844A7F0:: @ 844A7F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A838 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A844 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A850 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 72, 249 @ 844A85C + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 72, 249 @ 844A85C voice_square_1 0, 2, 0, 0, 15, 0 @ 844A868 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A874 voice_square_1 0, 2, 0, 0, 15, 0 @ 844A880 @@ -9784,7 +9784,7 @@ voicegroup_844B9F0:: @ 844B9F0 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA38 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA44 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA50 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 165, 72, 249 @ 844BA5C + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 165, 72, 249 @ 844BA5C voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA68 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA74 voice_square_1 0, 2, 0, 0, 15, 0 @ 844BA80 @@ -12006,7 +12006,7 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound_no_resample 60, 0, DirectSoundWaveData_Ring, 255, 249, 0, 165 @ 8451F90 voice_directsound_alt 60, 0, DirectSoundWaveData_Ring, 255, 0, 255, 165 @ 8451F9C voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitSnare4, 255, 0, 255, 165 @ 8451FA8 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 242, 0, 127 @ 8451FB4 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 242, 0, 127 @ 8451FB4 voice_noise_alt 0, 0, 1, 0, 1 @ 8451FC0 voice_noise_alt 1, 0, 1, 0, 1 @ 8451FCC voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitTimbale2, 255, 0, 255, 165 @ 8451FD8 @@ -12031,7 +12031,7 @@ voicegroup_8451F90:: @ 8451F90 voice_noise_alt 0, 0, 7, 15, 1 @ 84520BC voice_directsound 60, 0, DirectSoundWaveData_SC88_CarCrash, 255, 0, 255, 127 @ 84520C8 voice_noise_alt 1, 0, 7, 15, 1 @ 84520D4 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 246, 0, 127 @ 84520E0 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 246, 0, 127 @ 84520E0 voice_directsound 60, 0, DirectSoundWaveData_SC88_PinkNoise, 255, 0, 255, 127 @ 84520EC voice_square_1_alt 19, 2, 0, 2, 0, 0 @ 84520F8 voice_directsound 60, 0, DirectSoundWaveData_SC88_WaspySynth, 255, 0, 255, 127 @ 8452104 @@ -12046,7 +12046,7 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitClosedHiHat, 255, 127, 0, 188 @ 8452170 voice_directsound 60, 0, DirectSoundWaveData_Noise1, 255, 249, 0, 165 @ 845217C voice_square_1 0, 0, 4, 6, 0, 0 @ 8452188 - voice_directsound 60, 0, DirectSoundWaveData_8456330, 13, 0, 255, 127 @ 8452194 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 13, 0, 255, 127 @ 8452194 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 13, 0, 255, 127 @ 84521A0 voice_directsound 60, 0, DirectSoundWaveData_SC88_JPSuperSaw, 255, 0, 255, 127 @ 84521AC voice_directsound 60, 0, DirectSoundWaveData_SC88_Piano1, 255, 252, 0, 204 @ 84521B8 @@ -12057,7 +12057,7 @@ voicegroup_8451F90:: @ 8451F90 voice_directsound 60, 0, DirectSoundWaveData_SC88_TubularBell, 255, 226, 0, 127 @ 84521F4 voice_directsound 60, 0, DirectSoundWaveData_SC88_DrumKitCrashCymbal1, 26, 0, 255, 127 @ 8452200 voice_square_1_alt 0, 2, 0, 1, 0, 0 @ 845220C - voice_directsound 60, 0, DirectSoundWaveData_8456330, 255, 252, 0, 127 @ 8452218 + voice_directsound 60, 0, DirectSoundWaveData_Tone1, 255, 252, 0, 127 @ 8452218 voice_square_1_alt 0, 1, 0, 2, 0, 0 @ 8452224 voice_directsound 60, 0, DirectSoundWaveData_SC88_PizzicatoStrings, 255, 127, 0, 127 @ 8452230 voice_noise_alt 0, 1, 6, 0, 0 @ 845223C @@ -12125,12 +12125,12 @@ voicegroup_8451F90:: @ 8451F90 voice_square_1 0, 2, 0, 0, 15, 0 @ 8452524 voice_square_1 0, 2, 0, 0, 15, 0 @ 8452530 voice_square_1 0, 2, 0, 0, 15, 0 @ 845253C - voice_directsound 60, 0, DirectSoundWaveData_84A7328, 255, 0, 255, 165 @ 8452548 - voice_directsound 60, 0, DirectSoundWaveData_84A7F38, 255, 0, 255, 165 @ 8452554 - voice_directsound 60, 0, DirectSoundWaveData_84A8AC8, 255, 0, 255, 165 @ 8452560 - voice_directsound 60, 0, DirectSoundWaveData_84A9564, 255, 0, 255, 165 @ 845256C - voice_directsound 60, 0, DirectSoundWaveData_84A9EAC, 255, 0, 255, 165 @ 8452578 - voice_directsound 60, 0, DirectSoundWaveData_84AA8F4, 255, 0, 255, 165 @ 8452584 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel1, 255, 0, 255, 165 @ 8452548 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel2, 255, 0, 255, 165 @ 8452554 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel3, 255, 0, 255, 165 @ 8452560 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel4, 255, 0, 255, 165 @ 845256C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel5, 255, 0, 255, 165 @ 8452578 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel6, 255, 0, 255, 165 @ 8452584 .align 2 voicegroup_8452590:: @ 8452590 @@ -12934,57 +12934,57 @@ voicegroup_84549C0:: @ 84549C0 .align 2 voicegroup_84549F0:: @ 84549F0 - voice_directsound 60, 0, DirectSoundWaveData_8639898, 255, 0, 255, 0 @ 84549F0 - voice_directsound 60, 0, DirectSoundWaveData_8639EF8, 255, 0, 255, 0 @ 84549FC - voice_directsound 60, 0, DirectSoundWaveData_863A3DC, 255, 0, 255, 0 @ 8454A08 - voice_directsound 60, 0, DirectSoundWaveData_863AD2C, 255, 0, 255, 0 @ 8454A14 - voice_directsound 60, 0, DirectSoundWaveData_863B79C, 255, 0, 255, 0 @ 8454A20 - voice_directsound 60, 0, DirectSoundWaveData_863BABC, 255, 0, 255, 0 @ 8454A2C - voice_directsound 60, 0, DirectSoundWaveData_863C744, 255, 0, 255, 0 @ 8454A38 - voice_directsound 60, 0, DirectSoundWaveData_863CD64, 255, 0, 255, 0 @ 8454A44 - voice_directsound 60, 0, DirectSoundWaveData_863D0EC, 255, 0, 255, 0 @ 8454A50 - voice_directsound 60, 0, DirectSoundWaveData_863DED0, 255, 0, 255, 0 @ 8454A5C - voice_directsound 60, 0, DirectSoundWaveData_863E840, 255, 0, 255, 0 @ 8454A68 - voice_directsound 60, 0, DirectSoundWaveData_863EBDC, 255, 0, 255, 0 @ 8454A74 - voice_directsound 60, 0, DirectSoundWaveData_863F390, 255, 0, 255, 0 @ 8454A80 - voice_directsound 60, 0, DirectSoundWaveData_86400EC, 255, 0, 255, 0 @ 8454A8C - voice_directsound 60, 0, DirectSoundWaveData_8640330, 255, 0, 255, 0 @ 8454A98 - voice_directsound 60, 0, DirectSoundWaveData_8641170, 255, 0, 255, 0 @ 8454AA4 - voice_directsound 60, 0, DirectSoundWaveData_8641AC4, 255, 0, 255, 0 @ 8454AB0 - voice_directsound 60, 0, DirectSoundWaveData_8641E18, 255, 0, 255, 0 @ 8454ABC - voice_directsound 60, 0, DirectSoundWaveData_864244C, 255, 0, 255, 0 @ 8454AC8 - voice_directsound 60, 0, DirectSoundWaveData_86430B8, 255, 0, 255, 0 @ 8454AD4 - voice_directsound 60, 0, DirectSoundWaveData_8643650, 255, 0, 255, 0 @ 8454AE0 - voice_directsound 60, 0, DirectSoundWaveData_8644154, 255, 0, 255, 0 @ 8454AEC - voice_directsound 60, 0, DirectSoundWaveData_8644758, 255, 0, 255, 0 @ 8454AF8 - voice_directsound 60, 0, DirectSoundWaveData_8644950, 255, 0, 255, 0 @ 8454B04 - voice_directsound 60, 0, DirectSoundWaveData_86452B4, 255, 0, 255, 0 @ 8454B10 - voice_directsound 60, 0, DirectSoundWaveData_8646240, 255, 0, 255, 0 @ 8454B1C - voice_directsound 60, 0, DirectSoundWaveData_8646878, 255, 0, 255, 0 @ 8454B28 - voice_directsound 60, 0, DirectSoundWaveData_864734C, 255, 0, 255, 0 @ 8454B34 - voice_directsound 60, 0, DirectSoundWaveData_8648290, 255, 0, 255, 0 @ 8454B40 - voice_directsound 60, 0, DirectSoundWaveData_8648808, 255, 0, 255, 0 @ 8454B4C - voice_directsound 60, 0, DirectSoundWaveData_8649654, 255, 0, 255, 0 @ 8454B58 - voice_directsound 60, 0, DirectSoundWaveData_864A55C, 255, 0, 255, 0 @ 8454B64 - voice_directsound 60, 0, DirectSoundWaveData_864B030, 255, 0, 255, 0 @ 8454B70 - voice_directsound 60, 0, DirectSoundWaveData_864BBC4, 255, 0, 255, 0 @ 8454B7C - voice_directsound 60, 0, DirectSoundWaveData_864C59C, 255, 0, 255, 0 @ 8454B88 - voice_directsound 60, 0, DirectSoundWaveData_864CBDC, 255, 0, 255, 0 @ 8454B94 - voice_directsound 60, 0, DirectSoundWaveData_864D6BC, 255, 0, 255, 0 @ 8454BA0 - voice_directsound 60, 0, DirectSoundWaveData_864DCF8, 255, 0, 255, 0 @ 8454BAC - voice_directsound 60, 0, DirectSoundWaveData_864E410, 255, 0, 255, 0 @ 8454BB8 - voice_directsound 60, 0, DirectSoundWaveData_864ED4C, 255, 0, 255, 0 @ 8454BC4 - voice_directsound 60, 0, DirectSoundWaveData_864F508, 255, 0, 255, 0 @ 8454BD0 - voice_directsound 60, 0, DirectSoundWaveData_864FA6C, 255, 0, 255, 0 @ 8454BDC - voice_directsound 60, 0, DirectSoundWaveData_86507E0, 255, 0, 255, 0 @ 8454BE8 - voice_directsound 60, 0, DirectSoundWaveData_8650C5C, 255, 0, 255, 0 @ 8454BF4 - voice_directsound 60, 0, DirectSoundWaveData_8651148, 255, 0, 255, 0 @ 8454C00 - voice_directsound 60, 0, DirectSoundWaveData_8651910, 255, 0, 255, 0 @ 8454C0C - voice_directsound 60, 0, DirectSoundWaveData_865250C, 255, 0, 255, 0 @ 8454C18 - voice_directsound 60, 0, DirectSoundWaveData_8652884, 255, 0, 255, 0 @ 8454C24 - voice_directsound 60, 0, DirectSoundWaveData_8653040, 255, 0, 255, 0 @ 8454C30 - voice_directsound 60, 0, DirectSoundWaveData_8653CA4, 255, 0, 255, 0 @ 8454C3C - voice_directsound 60, 0, DirectSoundWaveData_8654170, 255, 0, 255, 0 @ 8454C48 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel7, 255, 0, 255, 0 @ 84549F0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel8, 255, 0, 255, 0 @ 84549FC + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel9, 255, 0, 255, 0 @ 8454A08 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel10, 255, 0, 255, 0 @ 8454A14 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel11, 255, 0, 255, 0 @ 8454A20 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel12, 255, 0, 255, 0 @ 8454A2C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel13, 255, 0, 255, 0 @ 8454A38 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel14, 255, 0, 255, 0 @ 8454A44 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel15, 255, 0, 255, 0 @ 8454A50 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel16, 255, 0, 255, 0 @ 8454A5C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel17, 255, 0, 255, 0 @ 8454A68 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel18, 255, 0, 255, 0 @ 8454A74 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel19, 255, 0, 255, 0 @ 8454A80 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel20, 255, 0, 255, 0 @ 8454A8C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel21, 255, 0, 255, 0 @ 8454A98 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel22, 255, 0, 255, 0 @ 8454AA4 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel23, 255, 0, 255, 0 @ 8454AB0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel24, 255, 0, 255, 0 @ 8454ABC + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel25, 255, 0, 255, 0 @ 8454AC8 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel26, 255, 0, 255, 0 @ 8454AD4 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel27, 255, 0, 255, 0 @ 8454AE0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel28, 255, 0, 255, 0 @ 8454AEC + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel29, 255, 0, 255, 0 @ 8454AF8 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel30, 255, 0, 255, 0 @ 8454B04 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel31, 255, 0, 255, 0 @ 8454B10 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel32, 255, 0, 255, 0 @ 8454B1C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel33, 255, 0, 255, 0 @ 8454B28 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel34, 255, 0, 255, 0 @ 8454B34 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel35, 255, 0, 255, 0 @ 8454B40 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel36, 255, 0, 255, 0 @ 8454B4C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel37, 255, 0, 255, 0 @ 8454B58 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel38, 255, 0, 255, 0 @ 8454B64 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel39, 255, 0, 255, 0 @ 8454B70 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel40, 255, 0, 255, 0 @ 8454B7C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel41, 255, 0, 255, 0 @ 8454B88 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel42, 255, 0, 255, 0 @ 8454B94 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel43, 255, 0, 255, 0 @ 8454BA0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel44, 255, 0, 255, 0 @ 8454BAC + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel45, 255, 0, 255, 0 @ 8454BB8 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel46, 255, 0, 255, 0 @ 8454BC4 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel47, 255, 0, 255, 0 @ 8454BD0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel48, 255, 0, 255, 0 @ 8454BDC + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel49, 255, 0, 255, 0 @ 8454BE8 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel50, 255, 0, 255, 0 @ 8454BF4 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel51, 255, 0, 255, 0 @ 8454C00 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel52, 255, 0, 255, 0 @ 8454C0C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel53, 255, 0, 255, 0 @ 8454C18 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel54, 255, 0, 255, 0 @ 8454C24 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel55, 255, 0, 255, 0 @ 8454C30 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel56, 255, 0, 255, 0 @ 8454C3C + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_Vowel57, 255, 0, 255, 0 @ 8454C48 .align 2 voicegroup_8454C54:: @ 8454C54 -- cgit v1.2.3 From e71789d6773c72e314d7b21684eaa9a48c704cd1 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Sun, 28 Jan 2018 22:19:49 -0600 Subject: remove unused file pokemon_data.c and clean up roulette_util.c --- src/pokemon/pokemon_data.c | 12 ---- src/roulette_util.c | 162 +++++++++++++++++---------------------------- 2 files changed, 62 insertions(+), 112 deletions(-) delete mode 100644 src/pokemon/pokemon_data.c diff --git a/src/pokemon/pokemon_data.c b/src/pokemon/pokemon_data.c deleted file mode 100644 index 3473b58c8..000000000 --- a/src/pokemon/pokemon_data.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "global.h" -#include "pokemon.h" -#include "constants/species.h" -#include "trainer.h" -#include "constants/abilities.h" -#include "constants/moves.h" -#include "constants/hold_effects.h" -#include "constants/items.h" -#include "sprite.h" -#include "data2.h" - - diff --git a/src/roulette_util.c b/src/roulette_util.c index 3d5b03a5c..f3eae5518 100644 --- a/src/roulette_util.c +++ b/src/roulette_util.c @@ -13,12 +13,12 @@ void sub_8124918(struct UnkStruct0 *r0) { r0->var00 = 0; r0->var02 = 0; - memset((&r0->var04), 0, 0xC0); + memset(&r0->var04, 0, sizeof(r0->var04)); } u8 sub_812492C(struct UnkStruct0 *r0, u8 r1, struct UnkStruct1 *r2) { - if (!(r1 < 0x10) || (r0->var04[r1].var00_7)) + if (!(r1 < 16) || (r0->var04[r1].var00_7)) return 0xFF; r0->var04[r1].var04.var00 = r2->var00; @@ -29,123 +29,82 @@ u8 sub_812492C(struct UnkStruct0 *r0, u8 r1, struct UnkStruct1 *r2) r0->var04[r1].var04.var07_0 = r2->var07_0; r0->var04[r1].var04.var07_5 = r2->var07_5; r0->var04[r1].var04.var07_7 = r2->var07_7; - - - r0->var04[r1].var00_0 = 0x0; - r0->var04[r1].var00_7 = 0x1; - - r0->var04[r1].var02 = 0x0; - r0->var04[r1].var01 = 0x0; + r0->var04[r1].var00_0 = 0; + r0->var04[r1].var00_7 = 1; + r0->var04[r1].var02 = 0; + r0->var04[r1].var01 = 0; if (r0->var04[r1].var04.var07_7 < 0) r0->var04[r1].var03 = 0xFF; else - r0->var04[r1].var03 = 0x1; + r0->var04[r1].var03 = 1; return r1; } -#ifdef NONMATCHING u8 unref_sub_81249B0(struct UnkStruct0 *r0, u8 r1) { - if (r1 < 0x10) - { - if (r0->var04[r1].var00_7) - { - r0->var04[r1] = (struct UnkStruct3){0}; - return r1; - } - } - return 0xFF; -} -#else -__attribute__((naked)) -u8 unref_sub_81249B0(struct UnkStruct0 *r0 , u8 r1) -{ - asm(".syntax unified\n\ - push {r4,lr}\n\ - adds r2, r0, 0\n\ - lsls r1, 24\n\ - lsrs r1, 24\n\ - adds r4, r1, 0\n\ - cmp r4, 0xF\n\ - bhi _081249DC\n\ - lsls r0, r4, 1\n\ - adds r0, r4\n\ - lsls r0, 2\n\ - adds r1, r2, r0\n\ - ldrb r0, [r1, 0x4]\n\ - lsrs r0, 7\n\ - cmp r0, 0\n\ - beq _081249DC\n\ - adds r0, r1, 0x4\n\ - movs r1, 0\n\ - movs r2, 0xC\n\ - bl memset\n\ - adds r0, r4, 0\n\ - b _081249DE\n\ - _081249DC:\n\ - movs r0, 0xFF\n\ - _081249DE:\n\ - pop {r4}\n\ - pop {r1}\n\ - bx r1\n\ - .syntax divided\n"); + if (r1 >= 16) + return 0xFF; + if (!r0->var04[r1].var00_7) + return 0xFF; + memset(&r0->var04[r1], 0, sizeof(r0->var04[r1])); + return r1; } -#endif u8 sub_81249E4(struct UnkStruct3 *r0) { u8 i; u8 returnval; + for (i = 0; i < r0->var04.var04; i++) { - u32 offset = r0->var04.var02 + i; - struct PlttData *faded = (struct PlttData *)&gPlttBufferFaded[offset]; - struct PlttData *unfaded = (struct PlttData *)&gPlttBufferUnfaded[offset]; - switch(r0->var00_0) + struct PlttData *faded = (struct PlttData *)&gPlttBufferFaded[r0->var04.var02 + i]; + struct PlttData *unfaded = (struct PlttData *)&gPlttBufferUnfaded[r0->var04.var02 + i]; + + switch (r0->var00_0) { - case 0x1: - if ((u32)(faded->r + r0->var03) < 0x20) + case 1: + if (faded->r + r0->var03 >= 0 && faded->r + r0->var03 < 32) faded->r += r0->var03; - if ((u32)(faded->g + r0->var03) < 0x20) + if (faded->g + r0->var03 >= 0 && faded->g + r0->var03 < 32) faded->g += r0->var03; - if ((u32)(faded->b + r0->var03) < 0x20) + if (faded->b + r0->var03 >= 0 && faded->b + r0->var03 < 32) faded->b += r0->var03; - break; - case 0x2: + break; + case 2: if (r0->var03 < 0) { - if (!(faded->r + r0->var03 < unfaded->r)) + if (faded->r + r0->var03 >= unfaded->r) faded->r += r0->var03; - if (!(faded->g + r0->var03 < unfaded->g)) + if (faded->g + r0->var03 >= unfaded->g) faded->g += r0->var03; - if (!(faded->b + r0->var03 < unfaded->b)) + if (faded->b + r0->var03 >= unfaded->b) faded->b += r0->var03; } else { - if (!(faded->r + r0->var03 > unfaded->r)) + if (faded->r + r0->var03 <= unfaded->r) faded->r += r0->var03; - if (!(faded->g + r0->var03 > unfaded->g)) + if (faded->g + r0->var03 <= unfaded->g) faded->g += r0->var03; - if (!(faded->b + r0->var03 > unfaded->b)) + if (faded->b + r0->var03 <= unfaded->b) faded->b += r0->var03; } - break; + break; } } - if (((u32)r0->var02++) != r0->var04.var07_0) + if ((u32)r0->var02++ != r0->var04.var07_0) { - returnval = 0x0; + returnval = 0; } else { - r0->var02 = 0x0; - r0->var03 = r0->var03 * -1; - if (r0->var00_0 == 0x1) + r0->var02 = 0; + r0->var03 *= -1; + if (r0->var00_0 == 1) r0->var00_0++; else r0->var00_0--; - returnval = 0x1; + returnval = 1; } return returnval; } @@ -153,34 +112,36 @@ u8 sub_81249E4(struct UnkStruct3 *r0) u8 sub_8124BEC(struct UnkStruct3 *r0) { u8 rg2 = 0; + switch (r0->var00_0) { - case 0x1: + case 1: for (rg2 = 0; rg2 < r0->var04.var04; rg2++) gPlttBufferFaded[r0->var04.var02 + rg2] = r0->var04.var00; r0->var00_0++; break; - case 0x2: + case 2: for (rg2 = 0; rg2 < r0->var04.var04; rg2++) gPlttBufferFaded[r0->var04.var02 + rg2] = gPlttBufferUnfaded[r0->var04.var02 + rg2]; r0->var00_0--; break; } - return 0x1; + return 1; } void task_tutorial_controls_fadein(struct UnkStruct0 *r0) { u8 i = 0; + if (r0->var00) { - for (i = 0; i < 0x10; i++) + for (i = 0; i < 16; i++) { - if ((r0->var02 >> i) & 0x1) + if ((r0->var02 >> i) & 1) { - if (((u8)--r0->var04[i].var01) == 0xFF) // if underflow ? + if (--r0->var04[i].var01 == 0xFF) // if underflow ? { - if (r0->var04[i].var04.var00 & (0x80 << 8)) // PlttData->unused_15 ? + if (r0->var04[i].var04.var00 & 0x8000) // PlttData->unused_15 ? sub_81249E4(&r0->var04[i]); else sub_8124BEC(&r0->var04[i]); @@ -194,15 +155,16 @@ void task_tutorial_controls_fadein(struct UnkStruct0 *r0) void sub_8124CE8(struct UnkStruct0 *r0, u16 r1) { u8 i = 0; + r0->var00++; - for (i = 0; i < 0x10; i++) + for (i = 0; i < 16; i++) { - if ((r1 >> i) & 0x1) + if ((r1 >> i) & 1) { if (r0->var04[i].var00_7) { - r0->var02 |= 0x1 << i; - r0->var04[i].var00_0 = 0x1; + r0->var02 |= 1 << i; + r0->var04[i].var00_0 = 1; } } } @@ -211,21 +173,22 @@ void sub_8124CE8(struct UnkStruct0 *r0, u16 r1) void sub_8124D3C(struct UnkStruct0 *r0, u16 r1) { u8 i; - for (i = 0; i < 0x10; i++) + + for (i = 0; i < 16; i++) { - if ((r0->var02 >> i) & 0x1) + if ((r0->var02 >> i) & 1) { if (r0->var04[i].var00_7) { - if ((r1 >> i) & 0x1) + if ((r1 >> i) & 1) { u32 offset = r0->var04[i].var04.var02; u16 *faded = &gPlttBufferFaded[offset]; u16 *unfaded = &gPlttBufferUnfaded[offset]; memcpy(faded, unfaded, r0->var04[i].var04.var04 * 2); - r0->var04[i].var00_0 = 0x0; - r0->var04[i].var02 = 0x0; - r0->var04[i].var01 = 0x0; + r0->var04[i].var00_0 = 0; + r0->var04[i].var02 = 0; + r0->var04[i].var01 = 0; if (r0->var04[i].var04.var07_7 < 0) r0->var04[i].var03 = 0xFF; else @@ -236,8 +199,8 @@ void sub_8124D3C(struct UnkStruct0 *r0, u16 r1) } if (r1 == 0xFFFF) { - r0->var00 = 0x0; - r0->var02 = 0x0; + r0->var00 = 0; + r0->var02 = 0; } else { @@ -246,11 +209,10 @@ void sub_8124D3C(struct UnkStruct0 *r0, u16 r1) } void sub_8124DDC(u16 *dest, u16 src, u8 left, u8 top, u8 width, u8 height) { - u16 *_dest; u8 i; u8 j; - i = 0x0; + i = 0; dest = &dest[top * 32 + left]; for (; i < height; i++) { @@ -267,7 +229,7 @@ void sub_8124E2C(u16 *dest, u16 *src, u8 left, u8 top, u8 width, u8 height) u16 *_src = src; u8 i; u8 j; - i = 0x0; + i = 0; dest = &dest[top * 32 + left]; for (; i < height; i++) { -- cgit v1.2.3 From 1416a4c4efe8b926c809664eb63dd2c3d0f86728 Mon Sep 17 00:00:00 2001 From: camthesaxman Date: Sun, 28 Jan 2018 23:10:53 -0600 Subject: clean up option_menu.c and field_poison.c a bit --- include/fldeff_poison.h | 4 +- src/battle/battle_setup.c | 2 +- src/engine/option_menu.c | 170 +++++++++++++++++++-------------------- src/field/field_control_avatar.c | 2 +- src/field/field_poison.c | 47 ++++++----- src/field/fldeff_poison.c | 4 +- 6 files changed, 114 insertions(+), 115 deletions(-) diff --git a/include/fldeff_poison.h b/include/fldeff_poison.h index fe3308ba9..abcacbd03 100644 --- a/include/fldeff_poison.h +++ b/include/fldeff_poison.h @@ -1,7 +1,7 @@ #ifndef GUARD_FLDEFF_POISON_H #define GUARD_FLDEFF_POISON_H -void DoFieldPoisonEffect(void); -bool32 FieldPoisonEffectIsRunning(void); +void FldeffPoison_Start(void); +bool32 FldeffPoison_IsActive(void); #endif // GUARD_FLDEFF_POISON_H diff --git a/src/battle/battle_setup.c b/src/battle/battle_setup.c index 892be1029..15555f833 100644 --- a/src/battle/battle_setup.c +++ b/src/battle/battle_setup.c @@ -475,7 +475,7 @@ static void Task_BattleStart(u8 taskId) switch (tState) { case 0: - if (!FieldPoisonEffectIsRunning()) // is poison not active? + if (!FldeffPoison_IsActive()) // is poison not active? { BattleTransition_StartOnField(tTransition); tState++; // go to case 1. diff --git a/src/engine/option_menu.c b/src/engine/option_menu.c index d4e921a0e..a2d32ffb6 100644 --- a/src/engine/option_menu.c +++ b/src/engine/option_menu.c @@ -10,19 +10,9 @@ extern void SetPokemonCryStereo(u32 val); -//Task data -enum { - TD_MENUSELECTION, - TD_TEXTSPEED, - TD_BATTLESCENE, - TD_BATTLESTYLE, - TD_SOUND, - TD_BUTTONMODE, - TD_FRAMETYPE, -}; - -//Menu items -enum { +// Menu items +enum +{ MENUITEM_TEXTSPEED, MENUITEM_BATTLESCENE, MENUITEM_BATTLESTYLE, @@ -32,6 +22,15 @@ enum { MENUITEM_CANCEL, }; +// Task data +#define tMenuSelection data[0] +#define tOptTextSpeed data[1] +#define tOptBattleScene data[2] +#define tOptBattleStyle data[3] +#define tOptSound data[4] +#define tOptButtonMode data[5] +#define tOptFrameType data[6] + const u16 gUnknown_0839F5FC[] = INCBIN_U16("graphics/misc/option_menu_text.gbapal"); // note: this is only used in the Japanese release const u8 gUnknown_0839F63C[] = INCBIN_U8("graphics/misc/option_menu_equals_sign.4bpp"); @@ -75,7 +74,6 @@ void CB2_InitOptionMenu(void) { default: case 0: - { SetVBlankCallback(NULL); REG_DISPCNT = 0; REG_BG2CNT = 0; @@ -92,7 +90,6 @@ void CB2_InitOptionMenu(void) DmaClear16(3, PLTT, PLTT_SIZE); gMain.state++; break; - } case 1: ResetPaletteFade(); ScanlineEffect_Stop(); @@ -150,37 +147,38 @@ void CB2_InitOptionMenu(void) { u8 taskId = CreateTask(Task_OptionMenuFadeIn, 0); - gTasks[taskId].data[TD_MENUSELECTION] = 0; - gTasks[taskId].data[TD_TEXTSPEED] = gSaveBlock2.optionsTextSpeed; - gTasks[taskId].data[TD_BATTLESCENE] = gSaveBlock2.optionsBattleSceneOff; - gTasks[taskId].data[TD_BATTLESTYLE] = gSaveBlock2.optionsBattleStyle; - gTasks[taskId].data[TD_SOUND] = gSaveBlock2.optionsSound; - gTasks[taskId].data[TD_BUTTONMODE] = gSaveBlock2.optionsButtonMode; - gTasks[taskId].data[TD_FRAMETYPE] = gSaveBlock2.optionsWindowFrameType; - - Menu_DrawStdWindowFrame(2, 0, 27, 3); - Menu_DrawStdWindowFrame(2, 4, 27, 19); - - Menu_PrintText(gSystemText_OptionMenu, 4, 1); - Menu_PrintText(gSystemText_TextSpeed, 4, 5); - Menu_PrintText(gSystemText_BattleScene, 4, 7); - Menu_PrintText(gSystemText_BattleStyle, 4, 9); - Menu_PrintText(gSystemText_Sound, 4, 11); - Menu_PrintText(gSystemText_ButtonMode, 4, 13); - Menu_PrintText(gSystemText_Frame, 4, 15); - Menu_PrintText(gSystemText_Cancel, 4, 17); - - TextSpeed_DrawChoices(gTasks[taskId].data[TD_TEXTSPEED]); - BattleScene_DrawChoices(gTasks[taskId].data[TD_BATTLESCENE]); - BattleStyle_DrawChoices(gTasks[taskId].data[TD_BATTLESTYLE]); - Sound_DrawChoices(gTasks[taskId].data[TD_SOUND]); - ButtonMode_DrawChoices(gTasks[taskId].data[TD_BUTTONMODE]); - FrameType_DrawChoices(gTasks[taskId].data[TD_FRAMETYPE]); + gTasks[taskId].tMenuSelection = 0; + gTasks[taskId].tOptTextSpeed = gSaveBlock2.optionsTextSpeed; + gTasks[taskId].tOptBattleScene = gSaveBlock2.optionsBattleSceneOff; + gTasks[taskId].tOptBattleStyle = gSaveBlock2.optionsBattleStyle; + gTasks[taskId].tOptSound = gSaveBlock2.optionsSound; + gTasks[taskId].tOptButtonMode = gSaveBlock2.optionsButtonMode; + gTasks[taskId].tOptFrameType = gSaveBlock2.optionsWindowFrameType; + + Menu_DrawStdWindowFrame(2, 0, 27, 3); // title box + Menu_DrawStdWindowFrame(2, 4, 27, 19); // options list box + + Menu_PrintText(gSystemText_OptionMenu, 4, 1); + + Menu_PrintText(gSystemText_TextSpeed, 4, 5); + Menu_PrintText(gSystemText_BattleScene, 4, 7); + Menu_PrintText(gSystemText_BattleStyle, 4, 9); + Menu_PrintText(gSystemText_Sound, 4, 11); + Menu_PrintText(gSystemText_ButtonMode, 4, 13); + Menu_PrintText(gSystemText_Frame, 4, 15); + Menu_PrintText(gSystemText_Cancel, 4, 17); + + TextSpeed_DrawChoices(gTasks[taskId].tOptTextSpeed); + BattleScene_DrawChoices(gTasks[taskId].tOptBattleScene); + BattleStyle_DrawChoices(gTasks[taskId].tOptBattleStyle); + Sound_DrawChoices(gTasks[taskId].tOptSound); + ButtonMode_DrawChoices(gTasks[taskId].tOptButtonMode); + FrameType_DrawChoices(gTasks[taskId].tOptFrameType); REG_WIN0H = WIN_RANGE(17, 223); REG_WIN0V = WIN_RANGE(1, 31); - HighlightOptionMenuItem(gTasks[taskId].data[TD_MENUSELECTION]); + HighlightOptionMenuItem(gTasks[taskId].tMenuSelection); gMain.state++; break; } @@ -193,16 +191,14 @@ void CB2_InitOptionMenu(void) static void Task_OptionMenuFadeIn(u8 taskId) { if (!gPaletteFade.active) - { gTasks[taskId].func = Task_OptionMenuProcessInput; - } } static void Task_OptionMenuProcessInput(u8 taskId) { if (gMain.newKeys & A_BUTTON) { - if (gTasks[taskId].data[TD_MENUSELECTION] == MENUITEM_CANCEL) + if (gTasks[taskId].tMenuSelection == MENUITEM_CANCEL) gTasks[taskId].func = Task_OptionMenuSave; } else if (gMain.newKeys & B_BUTTON) @@ -211,47 +207,47 @@ static void Task_OptionMenuProcessInput(u8 taskId) } else if (gMain.newKeys & DPAD_UP) { - if (gTasks[taskId].data[TD_MENUSELECTION] > 0) - gTasks[taskId].data[TD_MENUSELECTION]--; + if (gTasks[taskId].tMenuSelection > 0) + gTasks[taskId].tMenuSelection--; else - gTasks[taskId].data[TD_MENUSELECTION] = 6; - HighlightOptionMenuItem(gTasks[taskId].data[TD_MENUSELECTION]); + gTasks[taskId].tMenuSelection = 6; + HighlightOptionMenuItem(gTasks[taskId].tMenuSelection); } else if (gMain.newKeys & DPAD_DOWN) { - if (gTasks[taskId].data[TD_MENUSELECTION] <= 5) - gTasks[taskId].data[TD_MENUSELECTION]++; + if (gTasks[taskId].tMenuSelection < 6) + gTasks[taskId].tMenuSelection++; else - gTasks[taskId].data[TD_MENUSELECTION] = 0; - HighlightOptionMenuItem(gTasks[taskId].data[TD_MENUSELECTION]); + gTasks[taskId].tMenuSelection = 0; + HighlightOptionMenuItem(gTasks[taskId].tMenuSelection); } else { - switch (gTasks[taskId].data[TD_MENUSELECTION]) + switch (gTasks[taskId].tMenuSelection) { case MENUITEM_TEXTSPEED: - gTasks[taskId].data[TD_TEXTSPEED] = TextSpeed_ProcessInput(gTasks[taskId].data[TD_TEXTSPEED]); - TextSpeed_DrawChoices(gTasks[taskId].data[TD_TEXTSPEED]); + gTasks[taskId].tOptTextSpeed = TextSpeed_ProcessInput(gTasks[taskId].tOptTextSpeed); + TextSpeed_DrawChoices(gTasks[taskId].tOptTextSpeed); break; case MENUITEM_BATTLESCENE: - gTasks[taskId].data[TD_BATTLESCENE] = BattleScene_ProcessInput(gTasks[taskId].data[TD_BATTLESCENE]); - BattleScene_DrawChoices(gTasks[taskId].data[TD_BATTLESCENE]); + gTasks[taskId].tOptBattleScene = BattleScene_ProcessInput(gTasks[taskId].tOptBattleScene); + BattleScene_DrawChoices(gTasks[taskId].tOptBattleScene); break; case MENUITEM_BATTLESTYLE: - gTasks[taskId].data[TD_BATTLESTYLE] = BattleStyle_ProcessInput(gTasks[taskId].data[TD_BATTLESTYLE]); - BattleStyle_DrawChoices(gTasks[taskId].data[TD_BATTLESTYLE]); + gTasks[taskId].tOptBattleStyle = BattleStyle_ProcessInput(gTasks[taskId].tOptBattleStyle); + BattleStyle_DrawChoices(gTasks[taskId].tOptBattleStyle); break; case MENUITEM_SOUND: - gTasks[taskId].data[TD_SOUND] = Sound_ProcessInput(gTasks[taskId].data[TD_SOUND]); - Sound_DrawChoices(gTasks[taskId].data[TD_SOUND]); + gTasks[taskId].tOptSound = Sound_ProcessInput(gTasks[taskId].tOptSound); + Sound_DrawChoices(gTasks[taskId].tOptSound); break; case MENUITEM_BUTTONMODE: - gTasks[taskId].data[TD_BUTTONMODE] = ButtonMode_ProcessInput(gTasks[taskId].data[TD_BUTTONMODE]); - ButtonMode_DrawChoices(gTasks[taskId].data[TD_BUTTONMODE]); + gTasks[taskId].tOptButtonMode = ButtonMode_ProcessInput(gTasks[taskId].tOptButtonMode); + ButtonMode_DrawChoices(gTasks[taskId].tOptButtonMode); break; case MENUITEM_FRAMETYPE: - gTasks[taskId].data[TD_FRAMETYPE] = FrameType_ProcessInput(gTasks[taskId].data[TD_FRAMETYPE]); - FrameType_DrawChoices(gTasks[taskId].data[TD_FRAMETYPE]); + gTasks[taskId].tOptFrameType = FrameType_ProcessInput(gTasks[taskId].tOptFrameType); + FrameType_DrawChoices(gTasks[taskId].tOptFrameType); break; } } @@ -259,12 +255,12 @@ static void Task_OptionMenuProcessInput(u8 taskId) static void Task_OptionMenuSave(u8 taskId) { - gSaveBlock2.optionsTextSpeed = gTasks[taskId].data[TD_TEXTSPEED]; - gSaveBlock2.optionsBattleSceneOff = gTasks[taskId].data[TD_BATTLESCENE]; - gSaveBlock2.optionsBattleStyle = gTasks[taskId].data[TD_BATTLESTYLE]; - gSaveBlock2.optionsSound = gTasks[taskId].data[TD_SOUND]; - gSaveBlock2.optionsButtonMode = gTasks[taskId].data[TD_BUTTONMODE]; - gSaveBlock2.optionsWindowFrameType = gTasks[taskId].data[TD_FRAMETYPE]; + gSaveBlock2.optionsTextSpeed = gTasks[taskId].tOptTextSpeed; + gSaveBlock2.optionsBattleSceneOff = gTasks[taskId].tOptBattleScene; + gSaveBlock2.optionsBattleStyle = gTasks[taskId].tOptBattleStyle; + gSaveBlock2.optionsSound = gTasks[taskId].tOptSound; + gSaveBlock2.optionsButtonMode = gTasks[taskId].tOptButtonMode; + gSaveBlock2.optionsWindowFrameType = gTasks[taskId].tOptFrameType; BeginNormalPaletteFade(-1, 0, 0, 0x10, 0); gTasks[taskId].func = Task_OptionMenuFadeOut; @@ -290,10 +286,10 @@ static void HighlightOptionMenuItem(u8 index) static void DrawOptionMenuChoice(const u8 *text, u8 x, u8 y, u8 style) { - u8 dst[16]; + u8 dst[15]; u16 i; - for (i = 0; *text != EOS && i <= 14; i++) + for (i = 0; *text != EOS && i < 15; i++) dst[i] = *(text++); dst[2] = style; @@ -305,14 +301,14 @@ static u8 TextSpeed_ProcessInput(u8 selection) { if (gMain.newKeys & DPAD_RIGHT) { - if (selection <= 1) + if (selection < 2) selection++; else selection = 0; } if (gMain.newKeys & DPAD_LEFT) { - if (selection != 0) + if (selection > 0) selection--; else selection = 2; @@ -341,7 +337,7 @@ static void TextSpeed_DrawChoices(u8 selection) styles[selection] = 0x8; DrawOptionMenuChoice(gSystemText_Slow, TEXTSPEED_SLOW_LEFT, 40, styles[0]); - DrawOptionMenuChoice(gSystemText_Mid, TEXTSPEED_MIX_LEFT, 40, styles[1]); + DrawOptionMenuChoice(gSystemText_Mid, TEXTSPEED_MIX_LEFT, 40, styles[1]); DrawOptionMenuChoice(gSystemText_Fast, TEXTSPEED_FAST_LEFT, 40, styles[2]); } @@ -360,7 +356,7 @@ static void BattleScene_DrawChoices(u8 selection) styles[1] = 0xF; styles[selection] = 0x8; - DrawOptionMenuChoice(gSystemText_On, 120, 56, styles[0]); + DrawOptionMenuChoice(gSystemText_On, 120, 56, styles[0]); DrawOptionMenuChoice(gSystemText_Off, 190, 56, styles[1]); } @@ -388,7 +384,7 @@ static void BattleStyle_DrawChoices(u8 selection) styles[selection] = 0x8; DrawOptionMenuChoice(gSystemText_Shift, BATTLESTYLE_SHIFT, 72, styles[0]); - DrawOptionMenuChoice(gSystemText_Set, BATTLESTYLE_SET, 72, styles[1]); + DrawOptionMenuChoice(gSystemText_Set, BATTLESTYLE_SET, 72, styles[1]); } static u8 Sound_ProcessInput(u8 selection) @@ -409,7 +405,7 @@ static void Sound_DrawChoices(u8 selection) styles[1] = 0xF; styles[selection] = 0x8; - DrawOptionMenuChoice(gSystemText_Mono, 120, 88, styles[0]); + DrawOptionMenuChoice(gSystemText_Mono, 120, 88, styles[0]); DrawOptionMenuChoice(gSystemText_Stereo, 172, 88, styles[1]); } @@ -425,7 +421,7 @@ static u8 FrameType_ProcessInput(u8 selection) } if (gMain.newKeys & DPAD_LEFT) { - if (selection != 0) + if (selection > 0) selection--; else selection = 19; @@ -439,11 +435,11 @@ static u8 FrameType_ProcessInput(u8 selection) #if ENGLISH static void FrameType_DrawChoices(u8 selection) { - u8 text[8]; + u8 text[6]; u8 n = selection + 1; u16 i; - for (i = 0; gSystemText_Terminator[i] != EOS && i <= 5; i++) + for (i = 0; gSystemText_Terminator[i] != EOS && i < 6; i++) text[i] = gSystemText_Terminator[i]; //Convert number to decimal string @@ -534,14 +530,14 @@ static u8 ButtonMode_ProcessInput(u8 selection) { if (gMain.newKeys & DPAD_RIGHT) { - if (selection <= 1) + if (selection < 2) selection++; else selection = 0; } if (gMain.newKeys & DPAD_LEFT) { - if (selection != 0) + if (selection > 0) selection--; else selection = 2; @@ -559,6 +555,6 @@ static void ButtonMode_DrawChoices(u8 selection) styles[selection] = 0x8; DrawOptionMenuChoice(gSystemText_Normal, 120, 104, styles[0]); - DrawOptionMenuChoice(gSystemText_LR, 166, 104, styles[1]); - DrawOptionMenuChoice(gSystemText_LA, 188, 104, styles[2]); + DrawOptionMenuChoice(gSystemText_LR, 166, 104, styles[1]); + DrawOptionMenuChoice(gSystemText_LA, 188, 104, styles[2]); } diff --git a/src/field/field_control_avatar.c b/src/field/field_control_avatar.c index bf96c724f..83924b384 100644 --- a/src/field/field_control_avatar.c +++ b/src/field/field_control_avatar.c @@ -532,7 +532,7 @@ static void happiness_algorithm_step(void) { struct Pokemon *pkmn = gPlayerParty; - for (i = 5; i >= 0; i--) + for (i = 0; i < 6; i++) { AdjustFriendship(pkmn, 5); pkmn++; diff --git a/src/field/field_poison.c b/src/field/field_poison.c index 49678f269..8365351f9 100644 --- a/src/field/field_poison.c +++ b/src/field/field_poison.c @@ -43,7 +43,7 @@ void MonFaintFromPoisonOnField(u8 partyMember) u32 val = 0; AdjustFriendship(pkmn, 7); - SetMonData(pkmn, MON_DATA_STATUS, (u8*)&val); + SetMonData(pkmn, MON_DATA_STATUS, &val); GetMonData(pkmn, MON_DATA_NICKNAME, gStringVar1); StringGetEnd10(gStringVar1); } @@ -60,38 +60,36 @@ bool32 CheckMonFaintedFromPoison(u8 partyMember) return FALSE; } -//Task data -enum -{ - TD_STATE, - TD_PARTY_MEMBER, -}; +#define tState data[0] +#define tPartyMember data[1] void Task_WhiteOut(u8 taskId) { - s16 *taskData = gTasks[taskId].data; + s16 *data = gTasks[taskId].data; - switch (taskData[TD_STATE]) + switch (tState) { - case 0: //Check if Pokemon have fainted due to poison - while (taskData[TD_PARTY_MEMBER] < 6) + case 0: + // Check if any Pokemon have fainted due to poison + while (tPartyMember < 6) { - if (CheckMonFaintedFromPoison(taskData[TD_PARTY_MEMBER])) + if (CheckMonFaintedFromPoison(tPartyMember)) { - MonFaintFromPoisonOnField(taskData[TD_PARTY_MEMBER]); + // Show message about fainted mon + MonFaintFromPoisonOnField(tPartyMember); ShowFieldMessage(fieldPoisonText_PokemonFainted); - taskData[TD_STATE]++; + tState++; return; } - taskData[TD_PARTY_MEMBER]++; + tPartyMember++; } - taskData[TD_STATE] = 2; + tState = 2; break; - case 1: //Wait for message box to disappear + case 1: // Wait for message box to disappear if (IsFieldMessageBoxHidden()) - taskData[TD_STATE]--; //Check next party member + tState--; // Go to previous step and check next party member break; - case 2: //Done checking Pokemon + case 2: // done checking all mons if (AllMonsFainted()) gSpecialVar_Result = 1; else @@ -102,6 +100,9 @@ void Task_WhiteOut(u8 taskId) } } +#undef tState +#undef tPartyMember + void ExecuteWhiteOut(void) { CreateTask(Task_WhiteOut, 0x50); @@ -115,26 +116,28 @@ s32 DoPoisonFieldEffect(void) u32 numFainting = 0; int i; + // count the number of mons that are poisoned and fainting from poison, + // and decrement HP of all poisoned mons for (i = 0; i < 6; i++) { u32 hp; - // UB: Too few arguments for function 'GetMonData' if (GetMonData(pkmn, MON_DATA_SANITY_BIT2) != 0 && pokemon_ailments_get_primary(GetMonData(pkmn, MON_DATA_STATUS)) == 1) { + // decrement HP of poisoned mon hp = GetMonData(pkmn, MON_DATA_HP); if (hp != 0) hp--; if (hp == 0) - numFainting++; //Pokemon will now faint due to poison + numFainting++; SetMonData(pkmn, MON_DATA_HP, &hp); numPoisoned++; } pkmn++; } if (numFainting != 0 || numPoisoned != 0) - DoFieldPoisonEffect(); + FldeffPoison_Start(); if (numFainting != 0) return 2; if (numPoisoned != 0) diff --git a/src/field/fldeff_poison.c b/src/field/fldeff_poison.c index b0052d59d..52afc2516 100644 --- a/src/field/fldeff_poison.c +++ b/src/field/fldeff_poison.c @@ -32,13 +32,13 @@ static void Task_FieldPoisonEffect(u8 taskId) REG_MOSAIC = (data[1] << 4) | data[1]; } -void DoFieldPoisonEffect(void) +void FldeffPoison_Start(void) { PlaySE(SE_DOKU); CreateTask(Task_FieldPoisonEffect, 80); } -bool32 FieldPoisonEffectIsRunning(void) +bool32 FldeffPoison_IsActive(void) { return FuncIsActiveTask(Task_FieldPoisonEffect); } -- cgit v1.2.3 From 9af005dfd0a84692fb1e632589df99b1e53ba802 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 28 Jan 2018 20:40:11 -0800 Subject: Start decompiling rock.s --- asm/rock.s | 359 ------------------------------------------------- ld_script.txt | 1 + src/battle/anim/rock.c | 149 ++++++++++++++++++++ 3 files changed, 150 insertions(+), 359 deletions(-) create mode 100644 src/battle/anim/rock.c diff --git a/asm/rock.s b/asm/rock.s index 98afb53e6..853338ce0 100644 --- a/asm/rock.s +++ b/asm/rock.s @@ -7,365 +7,6 @@ @ rock - thumb_func_start sub_80DCE9C -sub_80DCE9C: @ 80DCE9C - push {r4-r6,lr} - adds r5, r0, 0 - ldr r6, _080DCF08 @ =gBattleAnimArgs - movs r1, 0x6 - ldrsh r0, [r6, r1] - cmp r0, 0 - beq _080DCEBC - ldr r0, _080DCF0C @ =gAnimBankTarget - ldrb r0, [r0] - adds r2, r5, 0 - adds r2, 0x20 - adds r3, r5, 0 - adds r3, 0x22 - movs r1, 0 - bl sub_807A3FC -_080DCEBC: - ldrh r0, [r6] - ldrh r1, [r5, 0x20] - adds r0, r1 - movs r4, 0 - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x22] - adds r0, 0xE - strh r0, [r5, 0x22] - ldrb r1, [r6, 0x2] - adds r0, r5, 0 - bl StartSpriteAnim - adds r0, r5, 0 - bl AnimateSprite - strh r4, [r5, 0x2E] - strh r4, [r5, 0x30] - movs r0, 0x4 - strh r0, [r5, 0x32] - movs r0, 0x10 - strh r0, [r5, 0x34] - ldr r0, _080DCF10 @ =0x0000ffba - strh r0, [r5, 0x36] - ldrh r0, [r6, 0x4] - strh r0, [r5, 0x38] - ldr r1, _080DCF14 @ =sub_80DCF1C - adds r0, r5, 0 - bl StoreSpriteCallbackInData - ldr r1, _080DCF18 @ =sub_8078278 - str r1, [r5, 0x1C] - adds r0, r5, 0 - bl _call_via_r1 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DCF08: .4byte gBattleAnimArgs -_080DCF0C: .4byte gAnimBankTarget -_080DCF10: .4byte 0x0000ffba -_080DCF14: .4byte sub_80DCF1C -_080DCF18: .4byte sub_8078278 - thumb_func_end sub_80DCE9C - - thumb_func_start sub_80DCF1C -sub_80DCF1C: @ 80DCF1C - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x38] - ldrh r2, [r4, 0x20] - adds r0, r1, r2 - strh r0, [r4, 0x20] - movs r0, 0xC0 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x30] - movs r0, 0x4 - strh r0, [r4, 0x32] - movs r0, 0x20 - strh r0, [r4, 0x34] - ldr r0, _080DCF54 @ =0x0000ffe8 - strh r0, [r4, 0x36] - ldr r1, _080DCF58 @ =move_anim_8074EE0 - adds r0, r4, 0 - bl StoreSpriteCallbackInData - ldr r1, _080DCF5C @ =sub_8078278 - str r1, [r4, 0x1C] - adds r0, r4, 0 - bl _call_via_r1 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DCF54: .4byte 0x0000ffe8 -_080DCF58: .4byte move_anim_8074EE0 -_080DCF5C: .4byte sub_8078278 - thumb_func_end sub_80DCF1C - - thumb_func_start sub_80DCF60 -sub_80DCF60: @ 80DCF60 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080DCF88 @ =gBattleAnimArgs - ldrb r1, [r4, 0xA] - bl StartSpriteAnim - adds r0, r5, 0 - bl AnimateSprite - ldr r0, _080DCF8C @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DCF90 - ldrh r0, [r5, 0x20] - ldrh r1, [r4] - subs r0, r1 - b _080DCF96 - .align 2, 0 -_080DCF88: .4byte gBattleAnimArgs -_080DCF8C: .4byte gAnimBankAttacker -_080DCF90: - ldrh r0, [r4] - ldrh r1, [r5, 0x20] - adds r0, r1 -_080DCF96: - strh r0, [r5, 0x20] - ldr r3, _080DCFD8 @ =gBattleAnimArgs - ldrh r2, [r3, 0x2] - ldrh r0, [r5, 0x22] - adds r2, r0 - movs r4, 0 - strh r2, [r5, 0x22] - ldrh r0, [r3, 0x8] - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x20] - strh r0, [r5, 0x30] - ldrh r1, [r3, 0x4] - adds r0, r1 - strh r0, [r5, 0x32] - strh r2, [r5, 0x34] - ldrh r0, [r3, 0x6] - adds r2, r0 - strh r2, [r5, 0x36] - adds r0, r5, 0 - bl sub_8078A5C - strh r4, [r5, 0x34] - strh r4, [r5, 0x36] - ldr r0, _080DCFDC @ =sub_8078394 - str r0, [r5, 0x1C] - ldr r1, _080DCFE0 @ =move_anim_8074EE0 - adds r0, r5, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DCFD8: .4byte gBattleAnimArgs -_080DCFDC: .4byte sub_8078394 -_080DCFE0: .4byte move_anim_8074EE0 - thumb_func_end sub_80DCF60 - - thumb_func_start sub_80DCFE4 -sub_80DCFE4: @ 80DCFE4 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080DCFFC @ =gBattleAnimArgs - movs r1, 0xC - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080DD000 - adds r0, r4, 0 - movs r1, 0 - bl sub_80787B0 - b _080DD008 - .align 2, 0 -_080DCFFC: .4byte gBattleAnimArgs -_080DD000: - adds r0, r4, 0 - movs r1, 0 - bl sub_8078764 -_080DD008: - ldr r1, _080DD024 @ =gBattleAnimArgs - ldrh r0, [r1, 0x6] - strh r0, [r4, 0x2E] - ldrh r0, [r1, 0x4] - strh r0, [r4, 0x30] - ldrh r0, [r1, 0x8] - strh r0, [r4, 0x32] - ldrh r0, [r1, 0xA] - strh r0, [r4, 0x34] - ldr r0, _080DD028 @ =sub_80DD02C - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DD024: .4byte gBattleAnimArgs -_080DD028: .4byte sub_80DD02C - thumb_func_end sub_80DCFE4 - - thumb_func_start sub_80DD02C -sub_80DD02C: @ 80DD02C - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x36] - adds r0, r1 - strh r0, [r4, 0x36] - lsls r0, 16 - asrs r0, 24 - negs r0, r0 - strh r0, [r4, 0x26] - movs r2, 0x38 - ldrsh r0, [r4, r2] - movs r2, 0x34 - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x32] - ldrh r1, [r4, 0x38] - adds r0, r1 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x38] - ldrh r0, [r4, 0x2E] - subs r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080DD072 - adds r0, r4, 0 - bl DestroyAnimSprite -_080DD072: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DD02C - - thumb_func_start do_boulder_dust -do_boulder_dust: @ 80DD078 - push {r4-r6,lr} - sub sp, 0x10 - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - ldr r1, _080DD154 @ =REG_BLDCNT - ldr r2, _080DD158 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - movs r2, 0x80 - lsls r2, 5 - adds r0, r2, 0 - strh r0, [r1] - ldr r4, _080DD15C @ =REG_BG1CNT - ldrb r1, [r4] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4] - ldrb r1, [r4, 0x1] - movs r0, 0x3F - ands r0, r1 - strb r0, [r4, 0x1] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DD0C4 - ldrb r0, [r4] - movs r1, 0xD - negs r1, r1 - ands r1, r0 - movs r0, 0x4 - orrs r1, r0 - strb r1, [r4] -_080DD0C4: - ldr r0, _080DD160 @ =gBattle_BG1_X - strh r5, [r0] - ldr r0, _080DD164 @ =gBattle_BG1_Y - strh r5, [r0] - ldr r0, _080DD168 @ =REG_BG1HOFS - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - mov r0, sp - bl sub_8078914 - ldr r1, [sp, 0x4] - str r5, [sp, 0xC] - ldr r2, _080DD16C @ =0x040000d4 - add r0, sp, 0xC - str r0, [r2] - str r1, [r2, 0x4] - ldr r0, _080DD170 @ =0x85000400 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - ldr r0, _080DD174 @ =gBattleAnimBackgroundTilemap_SandstormBrew - bl LZDecompressVram - ldr r0, _080DD178 @ =gBattleAnimBackgroundImage_SandstormBrew - ldr r1, [sp] - bl LZDecompressVram - ldr r0, _080DD17C @ =gBattleAnimSpritePalette_261 - mov r1, sp - ldrb r1, [r1, 0x8] - lsls r1, 4 - movs r2, 0x20 - bl LoadCompressedPalette - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080DD120 - mov r0, sp - ldrb r0, [r0, 0x8] - ldr r1, [sp, 0x4] - movs r2, 0 - movs r3, 0 - bl sub_80763FC -_080DD120: - ldr r0, _080DD180 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080DD13A - ldr r0, _080DD184 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DD13A - movs r5, 0x1 -_080DD13A: - ldr r0, _080DD188 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - strh r5, [r1, 0x8] - ldr r0, _080DD18C @ =sub_80DD190 - str r0, [r1] - add sp, 0x10 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DD154: .4byte REG_BLDCNT -_080DD158: .4byte 0x00003f42 -_080DD15C: .4byte REG_BG1CNT -_080DD160: .4byte gBattle_BG1_X -_080DD164: .4byte gBattle_BG1_Y -_080DD168: .4byte REG_BG1HOFS -_080DD16C: .4byte 0x040000d4 -_080DD170: .4byte 0x85000400 -_080DD174: .4byte gBattleAnimBackgroundTilemap_SandstormBrew -_080DD178: .4byte gBattleAnimBackgroundImage_SandstormBrew -_080DD17C: .4byte gBattleAnimSpritePalette_261 -_080DD180: .4byte gBattleAnimArgs -_080DD184: .4byte gAnimBankAttacker -_080DD188: .4byte gTasks -_080DD18C: .4byte sub_80DD190 - thumb_func_end do_boulder_dust - thumb_func_start sub_80DD190 sub_80DD190: @ 80DD190 push {r4-r7,lr} diff --git a/ld_script.txt b/ld_script.txt index fc13444f1..d37b73e6d 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -295,6 +295,7 @@ SECTIONS { asm/flying.o(.text); asm/psychic.o(.text); src/battle/anim/bug.o(.text); + src/battle/anim/rock.o(.text); asm/rock.o(.text); asm/ghost.o(.text); src/battle/anim/dragon.o(.text); diff --git a/src/battle/anim/rock.c b/src/battle/anim/rock.c new file mode 100644 index 000000000..d4307e7c1 --- /dev/null +++ b/src/battle/anim/rock.c @@ -0,0 +1,149 @@ +#include "global.h" +#include "battle.h" +#include "battle_anim.h" +#include "decompress.h" +#include "palette.h" +#include "rom_8077ABC.h" +#include "task.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[]; +extern u8 gAnimBankAttacker; +extern u8 gAnimBankTarget; +extern u16 gBattle_BG1_X; +extern u16 gBattle_BG1_Y; + +extern const u8 gBattleAnimBackgroundTilemap_SandstormBrew[]; +extern const u8 gBattleAnimBackgroundImage_SandstormBrew[]; +extern const u16 gBattleAnimSpritePalette_261[]; + +static void sub_80DCF1C(struct Sprite *sprite); +static void sub_80DD02C(struct Sprite *sprite); +void sub_80DD190(u8 taskId); + + +void sub_80DCE9C(struct Sprite *sprite) +{ + if (gBattleAnimArgs[3] != 0) + sub_807A3FC(gAnimBankTarget, 0, &sprite->pos1.x, &sprite->pos1.y); + + sprite->pos1.x += gBattleAnimArgs[0]; + sprite->pos1.y += 14; + + StartSpriteAnim(sprite, gBattleAnimArgs[1]); + AnimateSprite(sprite); + + sprite->data[0] = 0; + sprite->data[1] = 0; + sprite->data[2] = 4; + sprite->data[3] = 16; + sprite->data[4] = -70; + sprite->data[5] = gBattleAnimArgs[2]; + + StoreSpriteCallbackInData(sprite, sub_80DCF1C); + sprite->callback = sub_8078278; + sprite->callback(sprite); +} + +static void sub_80DCF1C(struct Sprite *sprite) +{ + sprite->pos1.x += sprite->data[5]; + + sprite->data[0] = 192; + sprite->data[1] = sprite->data[5]; + sprite->data[2] = 4; + sprite->data[3] = 32; + sprite->data[4] = -24; + + StoreSpriteCallbackInData(sprite, move_anim_8074EE0); + sprite->callback = sub_8078278; + sprite->callback(sprite); +} + +void sub_80DCF60(struct Sprite *sprite) +{ + StartSpriteAnim(sprite, gBattleAnimArgs[5]); + AnimateSprite(sprite); + + if (GetBankSide(gAnimBankAttacker) != SIDE_PLAYER) + sprite->pos1.x -= gBattleAnimArgs[0]; + else + sprite->pos1.x += gBattleAnimArgs[0]; + + sprite->pos1.y += gBattleAnimArgs[1]; + + sprite->data[0] = gBattleAnimArgs[4]; + sprite->data[1] = sprite->pos1.x; + sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; + sprite->data[3] = sprite->pos1.y; + sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3]; + + sub_8078A5C(sprite); + sprite->data[3] = 0; + sprite->data[4] = 0; + + sprite->callback = sub_8078394; + StoreSpriteCallbackInData(sprite, move_anim_8074EE0); +} + +void sub_80DCFE4(struct Sprite *sprite) +{ + if (gBattleAnimArgs[6] == 0) + sub_80787B0(sprite, 0); + else + sub_8078764(sprite, 0); + + sprite->data[0] = gBattleAnimArgs[3]; + sprite->data[1] = gBattleAnimArgs[2]; + sprite->data[2] = gBattleAnimArgs[4]; + sprite->data[3] = gBattleAnimArgs[5]; + + sprite->callback = sub_80DD02C; +} + +static void sub_80DD02C(struct Sprite *sprite) +{ + sprite->data[4] += sprite->data[1]; + sprite->pos2.y = -(sprite->data[4] >> 8); + sprite->pos2.x = Sin(sprite->data[5], sprite->data[3]); + sprite->data[5] = (sprite->data[5] + sprite->data[2]) & 0xFF; + + if (--sprite->data[0] == -1) + { + DestroyAnimSprite(sprite); + } +} + +void do_boulder_dust(u8 taskId) +{ + struct Struct_sub_8078914 subStruct; + int var0 = 0; + + REG_BLDCNT = 0x3F42; + REG_BLDALPHA = 0x1000; + REG_BG1CNT_BITFIELD.priority = 1; + REG_BG1CNT_BITFIELD.screenSize = 0; + + if (!IsContest()) + REG_BG1CNT_BITFIELD.charBaseBlock = 1; + + gBattle_BG1_X = 0; + gBattle_BG1_Y = 0; + REG_BG1HOFS = 0; + REG_BG1VOFS = 0; + + sub_8078914(&subStruct); + DmaFill32Defvars(3, 0, subStruct.field_4, 0x1000); + LZDecompressVram(&gBattleAnimBackgroundTilemap_SandstormBrew, subStruct.field_4); + LZDecompressVram(&gBattleAnimBackgroundImage_SandstormBrew, subStruct.field_0); + LoadCompressedPalette(&gBattleAnimSpritePalette_261, subStruct.field_8 << 4, 32); + + if (IsContest()) + sub_80763FC(subStruct.field_8, (u16 *)subStruct.field_4, 0, 0); + + if (gBattleAnimArgs[0] != 0 && GetBankSide(gAnimBankAttacker) != SIDE_PLAYER) + var0 = 1; + + gTasks[taskId].data[0] = var0; + gTasks[taskId].func = sub_80DD190; +} -- cgit v1.2.3 From 5911f59a7dc71c92ea52ff62fcb18e4a8ffa8e69 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Mon, 29 Jan 2018 20:15:27 -0800 Subject: More rock.s decompilation --- asm/rock.s | 415 ------------------------------------------------- src/battle/anim/rock.c | 126 +++++++++++++++ 2 files changed, 126 insertions(+), 415 deletions(-) diff --git a/asm/rock.s b/asm/rock.s index 853338ce0..41a04a3f6 100644 --- a/asm/rock.s +++ b/asm/rock.s @@ -7,421 +7,6 @@ @ rock - thumb_func_start sub_80DD190 -sub_80DD190: @ 80DD190 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _080DD1C0 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - movs r2, 0x8 - ldrsh r0, [r0, r2] - adds r3, r1, 0 - cmp r0, 0 - bne _080DD1CC - ldr r1, _080DD1C4 @ =gBattle_BG1_X - ldr r5, _080DD1C8 @ =0x0000fffa - adds r0, r5, 0 - ldrh r2, [r1] - adds r0, r2 - b _080DD1D2 - .align 2, 0 -_080DD1C0: .4byte gTasks -_080DD1C4: .4byte gBattle_BG1_X -_080DD1C8: .4byte 0x0000fffa -_080DD1CC: - ldr r1, _080DD204 @ =gBattle_BG1_X - ldrh r0, [r1] - adds r0, 0x6 -_080DD1D2: - strh r0, [r1] - adds r4, r1, 0 - ldr r1, _080DD208 @ =gBattle_BG1_Y - ldr r5, _080DD20C @ =0x0000ffff - adds r0, r5, 0 - ldrh r2, [r1] - adds r0, r2 - strh r0, [r1] - lsls r2, r7, 2 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r3 - movs r5, 0x20 - ldrsh r0, [r0, r5] - mov r8, r2 - adds r2, r1, 0 - cmp r0, 0x4 - bls _080DD1F8 - b _080DD37C -_080DD1F8: - lsls r0, 2 - ldr r1, _080DD210 @ =_080DD214 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080DD204: .4byte gBattle_BG1_X -_080DD208: .4byte gBattle_BG1_Y -_080DD20C: .4byte 0x0000ffff -_080DD210: .4byte _080DD214 - .align 2, 0 -_080DD214: - .4byte _080DD228 - .4byte _080DD270 - .4byte _080DD292 - .4byte _080DD2D4 - .4byte _080DD358 -_080DD228: - mov r1, r8 - adds r0, r1, r7 - lsls r0, 3 - adds r3, r0, r3 - ldrh r0, [r3, 0x1C] - adds r0, 0x1 - movs r4, 0 - strh r0, [r3, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x4 - beq _080DD242 - b _080DD37C -_080DD242: - strh r4, [r3, 0x1C] - ldrh r1, [r3, 0x1E] - adds r1, 0x1 - strh r1, [r3, 0x1E] - ldr r2, _080DD26C @ =REG_BLDALPHA - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - movs r2, 0x1E - ldrsh r0, [r3, r2] - cmp r0, 0x7 - beq _080DD260 - b _080DD37C -_080DD260: - ldrh r0, [r3, 0x20] - adds r0, 0x1 - strh r0, [r3, 0x20] - strh r4, [r3, 0x1E] - b _080DD37C - .align 2, 0 -_080DD26C: .4byte REG_BLDALPHA -_080DD270: - mov r5, r8 - adds r0, r5, r7 - lsls r0, 3 - adds r1, r0, r3 - ldrh r0, [r1, 0x1E] - adds r0, 0x1 - strh r0, [r1, 0x1E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x65 - bne _080DD37C - movs r0, 0x7 - strh r0, [r1, 0x1E] - ldrh r0, [r1, 0x20] - adds r0, 0x1 - strh r0, [r1, 0x20] - b _080DD37C -_080DD292: - mov r1, r8 - adds r0, r1, r7 - lsls r0, 3 - adds r3, r0, r3 - ldrh r0, [r3, 0x1C] - adds r0, 0x1 - strh r0, [r3, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x4 - bne _080DD37C - movs r0, 0 - strh r0, [r3, 0x1C] - ldrh r1, [r3, 0x1E] - subs r1, 0x1 - strh r1, [r3, 0x1E] - ldr r2, _080DD2D0 @ =REG_BLDALPHA - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - movs r2, 0x1E - ldrsh r1, [r3, r2] - cmp r1, 0 - bne _080DD37C - ldrh r0, [r3, 0x20] - adds r0, 0x1 - strh r0, [r3, 0x20] - strh r1, [r3, 0x1E] - b _080DD37C - .align 2, 0 -_080DD2D0: .4byte REG_BLDALPHA -_080DD2D4: - mov r0, sp - bl sub_8078914 - ldr r2, [sp] - movs r3, 0x80 - lsls r3, 6 - add r5, sp, 0xC - movs r6, 0 - ldr r1, _080DD38C @ =0x040000d4 - movs r4, 0x80 - lsls r4, 5 - mov r9, r5 - ldr r0, _080DD390 @ =0x85000400 - mov r12, r0 - movs r0, 0x85 - lsls r0, 24 - mov r10, r0 -_080DD2F6: - str r6, [sp, 0xC] - mov r0, r9 - str r0, [r1] - str r2, [r1, 0x4] - mov r0, r12 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r2, r4 - subs r3, r4 - cmp r3, r4 - bhi _080DD2F6 - str r6, [sp, 0xC] - str r5, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 2 - mov r2, r10 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0xC] - ldr r0, _080DD38C @ =0x040000d4 - str r5, [r0] - str r1, [r0, 0x4] - ldr r1, _080DD394 @ =0x85000200 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DD344 - ldr r2, _080DD398 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_080DD344: - ldr r0, _080DD39C @ =gTasks - mov r5, r8 - adds r1, r5, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x20] - adds r0, 0x1 - strh r0, [r1, 0x20] - ldr r4, _080DD3A0 @ =gBattle_BG1_X - ldr r2, _080DD3A4 @ =gBattle_BG1_Y -_080DD358: - movs r1, 0 - strh r1, [r4] - strh r1, [r2] - ldr r0, _080DD3A8 @ =REG_BLDCNT - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r2, _080DD398 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - adds r0, r7, 0 - bl DestroyAnimVisualTask -_080DD37C: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DD38C: .4byte 0x040000d4 -_080DD390: .4byte 0x85000400 -_080DD394: .4byte 0x85000200 -_080DD398: .4byte REG_BG1CNT -_080DD39C: .4byte gTasks -_080DD3A0: .4byte gBattle_BG1_X -_080DD3A4: .4byte gBattle_BG1_Y -_080DD3A8: .4byte REG_BLDCNT - thumb_func_end sub_80DD190 - - thumb_func_start sub_80DD3AC -sub_80DD3AC: @ 80DD3AC - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080DD428 - ldr r4, _080DD3F0 @ =gBattleAnimArgs - movs r2, 0x6 - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _080DD3F8 - ldr r0, _080DD3F4 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DD3F8 - movs r0, 0x98 - lsls r0, 1 - strh r0, [r5, 0x20] - ldrh r0, [r4, 0x2] - negs r0, r0 - strh r0, [r4, 0x2] - movs r0, 0x1 - strh r0, [r5, 0x38] - ldrb r1, [r5, 0x3] - subs r0, 0x40 - ands r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r5, 0x3] - b _080DD3FC - .align 2, 0 -_080DD3F0: .4byte gBattleAnimArgs -_080DD3F4: .4byte gAnimBankAttacker -_080DD3F8: - ldr r0, _080DD41C @ =0x0000ffc0 - strh r0, [r5, 0x20] -_080DD3FC: - ldr r4, _080DD420 @ =gBattleAnimArgs - ldrh r0, [r4] - strh r0, [r5, 0x22] - ldr r1, _080DD424 @ =gUnknown_083DAD10 - adds r0, r5, 0 - bl SetSubspriteTables - ldrh r0, [r4, 0x2] - strh r0, [r5, 0x30] - ldrh r0, [r4, 0x4] - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - b _080DD484 - .align 2, 0 -_080DD41C: .4byte 0x0000ffc0 -_080DD420: .4byte gBattleAnimArgs -_080DD424: .4byte gUnknown_083DAD10 -_080DD428: - ldrh r1, [r5, 0x30] - ldrh r3, [r5, 0x34] - adds r1, r3 - ldrh r2, [r5, 0x32] - ldrh r0, [r5, 0x36] - adds r2, r0 - lsls r0, r1, 16 - asrs r0, 24 - ldrh r3, [r5, 0x24] - adds r0, r3 - strh r0, [r5, 0x24] - lsls r0, r2, 16 - asrs r0, 24 - ldrh r3, [r5, 0x26] - adds r0, r3 - strh r0, [r5, 0x26] - movs r0, 0xFF - ands r1, r0 - strh r1, [r5, 0x34] - ands r2, r0 - strh r2, [r5, 0x36] - movs r1, 0x38 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080DD46E - movs r2, 0x20 - ldrsh r0, [r5, r2] - movs r3, 0x24 - ldrsh r1, [r5, r3] - adds r0, r1 - movs r1, 0x88 - lsls r1, 1 - cmp r0, r1 - ble _080DD484 - b _080DD480 -_080DD46E: - movs r1, 0x20 - ldrsh r0, [r5, r1] - movs r2, 0x24 - ldrsh r1, [r5, r2] - adds r0, r1 - movs r1, 0x20 - negs r1, r1 - cmp r0, r1 - bge _080DD484 -_080DD480: - ldr r0, _080DD48C @ =DestroyAnimSprite - str r0, [r5, 0x1C] -_080DD484: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DD48C: .4byte DestroyAnimSprite - thumb_func_end sub_80DD3AC - - thumb_func_start sub_80DD490 -sub_80DD490: @ 80DD490 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080DD4C8 @ =gBattleAnimArgs - ldrb r1, [r5, 0x8] - bl StartSpriteAnim - adds r0, r4, 0 - movs r1, 0 - bl sub_80787B0 - ldrh r0, [r5, 0x6] - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x20] - strh r0, [r4, 0x32] - ldrh r0, [r5, 0x4] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x36] - ldr r0, _080DD4CC @ =sub_8078B34 - str r0, [r4, 0x1C] - ldr r1, _080DD4D0 @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DD4C8: .4byte gBattleAnimArgs -_080DD4CC: .4byte sub_8078B34 -_080DD4D0: .4byte DestroyAnimSprite - thumb_func_end sub_80DD490 - thumb_func_start sub_80DD4D4 sub_80DD4D4: @ 80DD4D4 push {r4-r7,lr} diff --git a/src/battle/anim/rock.c b/src/battle/anim/rock.c index d4307e7c1..26ac78053 100644 --- a/src/battle/anim/rock.c +++ b/src/battle/anim/rock.c @@ -17,6 +17,8 @@ extern const u8 gBattleAnimBackgroundTilemap_SandstormBrew[]; extern const u8 gBattleAnimBackgroundImage_SandstormBrew[]; extern const u16 gBattleAnimSpritePalette_261[]; +extern const struct SubspriteTable gUnknown_083DAD10; + static void sub_80DCF1C(struct Sprite *sprite); static void sub_80DD02C(struct Sprite *sprite); void sub_80DD190(u8 taskId); @@ -147,3 +149,127 @@ void do_boulder_dust(u8 taskId) gTasks[taskId].data[0] = var0; gTasks[taskId].func = sub_80DD190; } + +void sub_80DD190(u8 taskId) +{ + struct Struct_sub_8078914 subStruct; + + if (gTasks[taskId].data[0] == 0) + gBattle_BG1_X += 0xFFFA; + else + gBattle_BG1_X += 6; + + gBattle_BG1_Y += -1; + + switch (gTasks[taskId].data[12]) + { + case 0: + if (++gTasks[taskId].data[10] == 4) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[11]++; + REG_BLDALPHA = gTasks[taskId].data[11] | ((16 - gTasks[taskId].data[11]) << 8); + if (gTasks[taskId].data[11] == 7) + { + gTasks[taskId].data[12]++; + gTasks[taskId].data[11] = 0; + } + } + break; + case 1: + if (++gTasks[taskId].data[11] == 101) + { + gTasks[taskId].data[11] = 7; + gTasks[taskId].data[12]++; + } + break; + case 2: + if (++gTasks[taskId].data[10] == 4) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[11]--; + REG_BLDALPHA = gTasks[taskId].data[11] | ((16 - gTasks[taskId].data[11]) << 8); + if (gTasks[taskId].data[11] == 0) + { + gTasks[taskId].data[12]++; + gTasks[taskId].data[11] = 0; + } + } + break; + case 3: + sub_8078914(&subStruct); + DmaFill32Large(3, 0, subStruct.field_0, 0x2000, 0x1000); + DmaClear32(3, subStruct.field_4, 0x800); + if (!IsContest()) + REG_BG1CNT_BITFIELD.charBaseBlock = 0; + + gTasks[taskId].data[12]++; + // fall through + case 4: + gBattle_BG1_X = 0; + gBattle_BG1_Y = 0; + REG_BLDCNT = 0; + REG_BLDALPHA = 0; + REG_BG1CNT_BITFIELD.priority = 1; + DestroyAnimVisualTask(taskId); + break; + } +} + +void sub_80DD3AC(struct Sprite *sprite) +{ + if (sprite->data[0] == 0) + { + if (gBattleAnimArgs[3] != 0 && GetBankSide(gAnimBankAttacker) != SIDE_PLAYER) + { + sprite->pos1.x = 304; + gBattleAnimArgs[1] = -gBattleAnimArgs[1]; + sprite->data[5] = 1; + sprite->oam.matrixNum = 8; + } + else + { + sprite->pos1.x = -64; + } + + sprite->pos1.y = gBattleAnimArgs[0]; + SetSubspriteTables(sprite, &gUnknown_083DAD10); + sprite->data[1] = gBattleAnimArgs[1]; + sprite->data[2] = gBattleAnimArgs[2]; + sprite->data[0]++; + } + else + { + sprite->data[3] += sprite->data[1]; + sprite->data[4] += sprite->data[2]; + sprite->pos2.x += (sprite->data[3] >> 8); + sprite->pos2.y += (sprite->data[4] >> 8); + sprite->data[3] &= 0xFF; + sprite->data[4] &= 0xFF; + + if (sprite->data[5] == 0) + { + if (sprite->pos1.x + sprite->pos2.x > 272) + { + sprite->callback = DestroyAnimSprite; + } + } + else if (sprite->pos1.x + sprite->pos2.x < -32) + { + sprite->callback = DestroyAnimSprite; + } + } +} + +void sub_80DD490(struct Sprite *sprite) +{ + StartSpriteAnim(sprite, gBattleAnimArgs[4]); + sub_80787B0(sprite, 0); + + sprite->data[0] = gBattleAnimArgs[3]; + sprite->data[2] = sprite->pos1.x; + sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2]; + + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, DestroyAnimSprite); +} -- cgit v1.2.3 From 2df648dc4b9dee51503d319c677456c008b438fb Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Tue, 30 Jan 2018 19:56:12 -0800 Subject: Finish decompiling rock.s --- asm/rock.s | 869 ------------------------------------------------- include/rom_8077ABC.h | 2 + ld_script.txt | 1 - src/battle/anim/rock.c | 331 ++++++++++++++++++- 4 files changed, 331 insertions(+), 872 deletions(-) delete mode 100644 asm/rock.s diff --git a/asm/rock.s b/asm/rock.s deleted file mode 100644 index 41a04a3f6..000000000 --- a/asm/rock.s +++ /dev/null @@ -1,869 +0,0 @@ - .include "constants/gba_constants.inc" - .include "include/macros.inc" - - .syntax unified - - .text - - @ rock - - thumb_func_start sub_80DD4D4 -sub_80DD4D4: @ 80DD4D4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080DD554 @ =gTasks - adds r6, r1, r0 - ldr r5, _080DD558 @ =gAnimBankAttacker - ldrb r0, [r5] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldrb r0, [r5] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 8 - movs r1, 0xC0 - lsls r1, 13 - adds r0, r1 - lsrs r7, r0, 16 - ldr r4, _080DD55C @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 8 - movs r2, 0xC0 - lsls r2, 13 - adds r0, r2 - lsrs r0, 16 - mov r8, r0 - ldrb r1, [r5] - movs r0, 0x2 - eors r0, r1 - ldrb r4, [r4] - cmp r0, r4 - bne _080DD544 - mov r8, r7 -_080DD544: - bl sub_80DD8BC - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bne _080DD560 - movs r0, 0x20 - b _080DD566 - .align 2, 0 -_080DD554: .4byte gTasks -_080DD558: .4byte gAnimBankAttacker -_080DD55C: .4byte gAnimBankTarget -_080DD560: - lsls r1, r5, 3 - movs r0, 0x30 - subs r0, r1 -_080DD566: - strh r0, [r6, 0x18] - movs r4, 0 - strh r4, [r6, 0x8] - strh r4, [r6, 0x1E] - strh r4, [r6, 0x1A] - movs r0, 0x1 - strh r0, [r6, 0x20] - movs r1, 0x18 - ldrsh r0, [r6, r1] - cmp r0, 0 - bge _080DD57E - adds r0, 0x7 -_080DD57E: - asrs r0, 3 - subs r0, 0x1 - strh r0, [r6, 0x1C] - mov r2, r9 - lsls r0, r2, 3 - strh r0, [r6, 0xC] - lsls r0, r7, 3 - strh r0, [r6, 0xE] - mov r1, r10 - subs r0, r1, r2 - lsls r0, 3 - movs r2, 0x18 - ldrsh r1, [r6, r2] - bl __divsi3 - strh r0, [r6, 0x10] - mov r1, r8 - subs r0, r1, r7 - lsls r0, 3 - movs r2, 0x18 - ldrsh r1, [r6, r2] - bl __divsi3 - strh r0, [r6, 0x12] - strh r4, [r6, 0x14] - strh r4, [r6, 0x16] - movs r0, 0x40 - negs r0, r0 - bl BattleAnimAdjustPanning - adds r4, r0, 0 - lsls r4, 24 - asrs r4, 8 - lsrs r4, 16 - movs r0, 0x3F - bl BattleAnimAdjustPanning - lsls r0, 24 - strh r4, [r6, 0x22] - asrs r0, 24 - lsls r4, 16 - asrs r4, 16 - subs r0, r4 - movs r2, 0x18 - ldrsh r1, [r6, r2] - bl __divsi3 - strh r0, [r6, 0x24] - strh r5, [r6, 0xA] - movs r0, 0 - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0x26] - ldr r0, _080DD600 @ =sub_80DD604 - str r0, [r6] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DD600: .4byte sub_80DD604 - thumb_func_end sub_80DD4D4 - - thumb_func_start sub_80DD604 -sub_80DD604: @ 80DD604 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080DD628 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _080DD61E - b _080DD76C -_080DD61E: - lsls r0, 2 - ldr r1, _080DD62C @ =_080DD630 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080DD628: .4byte gTasks -_080DD62C: .4byte _080DD630 - .align 2, 0 -_080DD630: - .4byte _080DD644 - .4byte _080DD6A8 - .4byte _080DD6B0 - .4byte _080DD70C - .4byte _080DD75E -_080DD644: - ldrh r2, [r4, 0x14] - ldrh r0, [r4, 0x10] - subs r2, r0 - strh r2, [r4, 0x14] - ldrh r0, [r4, 0x16] - ldrh r1, [r4, 0x12] - subs r0, r1 - strh r0, [r4, 0x16] - ldr r3, _080DD6A4 @ =gSprites - movs r0, 0x26 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - lsls r2, 16 - asrs r2, 19 - strh r2, [r0, 0x24] - movs r1, 0x26 - ldrsh r0, [r4, r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrh r0, [r4, 0x16] - lsls r0, 16 - asrs r0, 19 - strh r0, [r1, 0x26] - ldrh r0, [r4, 0x1A] - adds r0, 0x1 - strh r0, [r4, 0x1A] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _080DD694 - movs r0, 0x14 - strh r0, [r4, 0x1E] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] -_080DD694: - ldrh r1, [r4, 0x22] - lsls r1, 24 - asrs r1, 24 - movs r0, 0xA2 - bl PlaySE12WithPanning - b _080DD76C - .align 2, 0 -_080DD6A4: .4byte gSprites -_080DD6A8: - ldrh r0, [r4, 0x1E] - subs r0, 0x1 - strh r0, [r4, 0x1E] - b _080DD750 -_080DD6B0: - ldrh r0, [r4, 0x1A] - subs r0, 0x1 - strh r0, [r4, 0x1A] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - beq _080DD6D0 - ldrh r0, [r4, 0x10] - ldrh r2, [r4, 0x14] - adds r0, r2 - strh r0, [r4, 0x14] - ldrh r0, [r4, 0x12] - ldrh r1, [r4, 0x16] - adds r0, r1 - strh r0, [r4, 0x16] - b _080DD6DA -_080DD6D0: - strh r0, [r4, 0x14] - strh r0, [r4, 0x16] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] -_080DD6DA: - ldr r2, _080DD708 @ =gSprites - movs r1, 0x26 - ldrsh r0, [r4, r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r4, 0x14] - lsls r0, 16 - asrs r0, 19 - strh r0, [r1, 0x24] - movs r1, 0x26 - ldrsh r0, [r4, r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r4, 0x16] - lsls r0, 16 - asrs r0, 19 - strh r0, [r1, 0x26] - b _080DD76C - .align 2, 0 -_080DD708: .4byte gSprites -_080DD70C: - ldrh r0, [r4, 0x10] - ldrh r2, [r4, 0xC] - adds r0, r2 - strh r0, [r4, 0xC] - ldrh r0, [r4, 0x12] - ldrh r1, [r4, 0xE] - adds r0, r1 - strh r0, [r4, 0xE] - ldrh r0, [r4, 0x1A] - adds r0, 0x1 - strh r0, [r4, 0x1A] - lsls r0, 16 - asrs r0, 16 - movs r2, 0x1C - ldrsh r1, [r4, r2] - cmp r0, r1 - blt _080DD74A - movs r0, 0 - strh r0, [r4, 0x1A] - adds r0, r4, 0 - bl sub_80DD774 - ldrh r1, [r4, 0x24] - ldrh r0, [r4, 0x22] - adds r1, r0 - strh r1, [r4, 0x22] - lsls r1, 24 - asrs r1, 24 - movs r0, 0xAF - bl PlaySE12WithPanning -_080DD74A: - ldrh r0, [r4, 0x18] - subs r0, 0x1 - strh r0, [r4, 0x18] -_080DD750: - lsls r0, 16 - cmp r0, 0 - bne _080DD76C - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080DD76C -_080DD75E: - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080DD76C - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080DD76C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DD604 - - thumb_func_start sub_80DD774 -sub_80DD774: @ 80DD774 - push {r4-r7,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0xA] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x4 - bhi _080DD864 - lsls r0, 2 - ldr r1, _080DD790 @ =_080DD794 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080DD790: .4byte _080DD794 - .align 2, 0 -_080DD794: - .4byte _080DD7A8 - .4byte _080DD7B4 - .4byte _080DD7B4 - .4byte _080DD7C0 - .4byte _080DD7CC -_080DD7A8: - ldr r3, _080DD7B0 @ =gSpriteTemplate_83DAD78 - movs r5, 0 - b _080DD7D0 - .align 2, 0 -_080DD7B0: .4byte gSpriteTemplate_83DAD78 -_080DD7B4: - ldr r3, _080DD7BC @ =gSpriteTemplate_83DAD90 - movs r5, 0x50 - b _080DD7D0 - .align 2, 0 -_080DD7BC: .4byte gSpriteTemplate_83DAD90 -_080DD7C0: - ldr r3, _080DD7C8 @ =gSpriteTemplate_83DAD90 - movs r5, 0x40 - b _080DD7D0 - .align 2, 0 -_080DD7C8: .4byte gSpriteTemplate_83DAD90 -_080DD7CC: - ldr r3, _080DD86C @ =gSpriteTemplate_83DAD90 - movs r5, 0x30 -_080DD7D0: - ldrh r1, [r4, 0xC] - lsls r1, 16 - asrs r1, 19 - lsls r1, 16 - lsrs r1, 16 - ldrh r2, [r4, 0xE] - lsls r2, 16 - asrs r2, 19 - lsls r2, 16 - movs r6, 0x20 - ldrsh r0, [r4, r6] - lsls r0, 2 - adds r1, r0 - lsls r1, 16 - lsrs r6, r1, 16 - asrs r1, 16 - lsrs r7, r2, 16 - asrs r2, 16 - adds r0, r3, 0 - movs r3, 0x23 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _080DD85C - ldr r1, _080DD870 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0x12 - strh r1, [r0, 0x2E] - movs r2, 0x20 - ldrsh r1, [r4, r2] - lsls r2, r1, 2 - adds r2, r1 - lsls r2, 2 - adds r2, r6, r2 - movs r6, 0xA - ldrsh r3, [r4, r6] - lsls r1, r3, 1 - adds r1, r3 - adds r2, r1 - strh r2, [r0, 0x32] - strh r7, [r0, 0x36] - movs r1, 0xA - ldrsh r2, [r4, r1] - lsls r2, 1 - movs r3, 0x10 - negs r3, r3 - adds r1, r3, 0 - subs r1, r2 - strh r1, [r0, 0x38] - ldrh r3, [r0, 0x4] - lsls r2, r3, 22 - lsrs r2, 22 - adds r2, r5 - ldr r5, _080DD874 @ =0x000003ff - adds r1, r5, 0 - ands r2, r1 - ldr r1, _080DD878 @ =0xfffffc00 - ands r1, r3 - orrs r1, r2 - strh r1, [r0, 0x4] - bl sub_80786EC - ldrh r0, [r4, 0x1E] - adds r0, 0x1 - strh r0, [r4, 0x1E] -_080DD85C: - movs r6, 0x20 - ldrsh r0, [r4, r6] - negs r0, r0 - strh r0, [r4, 0x20] -_080DD864: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DD86C: .4byte gSpriteTemplate_83DAD90 -_080DD870: .4byte gSprites -_080DD874: .4byte 0x000003ff -_080DD878: .4byte 0xfffffc00 - thumb_func_end sub_80DD774 - - thumb_func_start sub_80DD87C -sub_80DD87C: @ 80DD87C - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080DD8AE - ldr r0, _080DD8B4 @ =sub_80DD604 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080DD8A8 - ldr r0, _080DD8B8 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1E] - subs r0, 0x1 - strh r0, [r1, 0x1E] -_080DD8A8: - adds r0, r4, 0 - bl DestroySprite -_080DD8AE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DD8B4: .4byte sub_80DD604 -_080DD8B8: .4byte gTasks - thumb_func_end sub_80DD87C - - thumb_func_start sub_80DD8BC -sub_80DD8BC: @ 80DD8BC - push {lr} - ldr r0, _080DD8E4 @ =gAnimDisableStructPtr - ldr r0, [r0] - ldrb r1, [r0, 0x11] - lsrs r0, r1, 4 - lsls r1, 28 - lsrs r1, 28 - subs r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0xFF - lsls r2, 24 - adds r0, r2 - lsrs r0, 24 - cmp r0, 0x4 - bls _080DD8DE - movs r1, 0x1 -_080DD8DE: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_080DD8E4: .4byte gAnimDisableStructPtr - thumb_func_end sub_80DD8BC - - thumb_func_start sub_80DD8E8 -sub_80DD8E8: @ 80DD8E8 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080DD920 @ =gBattleAnimArgs - ldrb r1, [r5, 0x8] - bl StartSpriteAnim - ldrh r0, [r5] - strh r0, [r4, 0x24] - ldrh r0, [r5, 0x2] - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x34] - ldrh r1, [r5, 0x4] - subs r0, r1 - strh r0, [r4, 0x34] - movs r0, 0x3 - strh r0, [r4, 0x2E] - ldrh r0, [r5, 0x6] - strh r0, [r4, 0x30] - ldr r0, _080DD924 @ =sub_80DD928 - str r0, [r4, 0x1C] - adds r4, 0x3E - ldrb r0, [r4] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DD920: .4byte gBattleAnimArgs -_080DD924: .4byte sub_80DD928 - thumb_func_end sub_80DD8E8 - - thumb_func_start sub_80DD928 -sub_80DD928: @ 80DD928 - push {lr} - adds r2, r0, 0 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x5 - negs r1, r1 - ands r1, r0 - strb r1, [r3] - ldrh r1, [r2, 0x34] - movs r3, 0x34 - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _080DD960 - ldrh r3, [r2, 0x32] - adds r0, r1, r3 - strh r0, [r2, 0x26] - ldrh r0, [r2, 0x2E] - adds r1, r0 - strh r1, [r2, 0x34] - adds r0, 0x1 - strh r0, [r2, 0x2E] - lsls r1, 16 - cmp r1, 0 - ble _080DD972 - movs r0, 0 - strh r0, [r2, 0x34] - b _080DD972 -_080DD960: - ldrh r0, [r2, 0x30] - subs r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - cmp r0, 0 - bne _080DD972 - adds r0, r2, 0 - bl DestroyAnimSprite -_080DD972: - pop {r0} - bx r0 - thumb_func_end sub_80DD928 - - thumb_func_start sub_80DD978 -sub_80DD978: @ 80DD978 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080DD9A0 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080DD994 - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim -_080DD994: - adds r0, r4, 0 - bl sub_807941C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DD9A0: .4byte gAnimBankAttacker - thumb_func_end sub_80DD978 - - thumb_func_start sub_80DD9A4 -sub_80DD9A4: @ 80DD9A4 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080DD9F0 @ =gAnimBankTarget - ldrb r0, [r5] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x20] - ldrb r0, [r5] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080DD9F4 @ =gBattleAnimArgs - ldrh r3, [r2] - ldrh r5, [r4, 0x20] - adds r1, r3, r5 - strh r1, [r4, 0x20] - ldrh r1, [r2, 0x2] - adds r0, r1 - strh r0, [r4, 0x22] - strh r3, [r4, 0x30] - strh r1, [r4, 0x32] - ldrh r0, [r2, 0x4] - strh r0, [r4, 0x38] - ldrb r1, [r2, 0x6] - adds r0, r4, 0 - bl StartSpriteAnim - ldr r0, _080DD9F8 @ =sub_80DD9FC - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DD9F0: .4byte gAnimBankTarget -_080DD9F4: .4byte gBattleAnimArgs -_080DD9F8: .4byte sub_80DD9FC - thumb_func_end sub_80DD9A4 - - thumb_func_start sub_80DD9FC -sub_80DD9FC: @ 80DD9FC - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0x8 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x34] - adds r0, r1 - strh r0, [r4, 0x34] - ldrh r0, [r4, 0x32] - ldrh r2, [r4, 0x36] - adds r0, r2 - strh r0, [r4, 0x36] - movs r1, 0x34 - ldrsh r0, [r4, r1] - movs r1, 0x28 - bl __divsi3 - ldrh r1, [r4, 0x24] - adds r1, r0 - strh r1, [r4, 0x24] - movs r2, 0x2E - ldrsh r0, [r4, r2] - movs r2, 0x38 - ldrsh r1, [r4, r2] - bl Sin - ldrh r1, [r4, 0x26] - subs r1, r0 - strh r1, [r4, 0x26] - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0x8C - ble _080DDA46 - adds r0, r4, 0 - bl DestroyAnimSprite -_080DDA46: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DD9FC - - thumb_func_start sub_80DDA4C -sub_80DDA4C: @ 80DDA4C - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, _080DDA84 @ =gAnimMoveDmg - ldr r0, [r2] - cmp r0, 0x20 - bgt _080DDA60 - ldr r1, _080DDA88 @ =gBattleAnimArgs - movs r0, 0 - strh r0, [r1, 0xE] -_080DDA60: - ldr r2, [r2] - adds r0, r2, 0 - subs r0, 0x21 - cmp r0, 0x20 - bhi _080DDA70 - ldr r1, _080DDA88 @ =gBattleAnimArgs - movs r0, 0x1 - strh r0, [r1, 0xE] -_080DDA70: - cmp r2, 0x41 - ble _080DDA7A - ldr r1, _080DDA88 @ =gBattleAnimArgs - movs r0, 0x2 - strh r0, [r1, 0xE] -_080DDA7A: - adds r0, r3, 0 - bl DestroyAnimVisualTask - pop {r0} - bx r0 - .align 2, 0 -_080DDA84: .4byte gAnimMoveDmg -_080DDA88: .4byte gBattleAnimArgs - thumb_func_end sub_80DDA4C - - thumb_func_start sub_80DDA8C -sub_80DDA8C: @ 80DDA8C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, _080DDAE8 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080DDAAE - movs r0, 0 - bl sub_80789D4 - movs r0, 0xC8 - strh r0, [r5, 0xA] -_080DDAAE: - ldr r4, _080DDAEC @ =gBattle_BG3_Y - movs r1, 0xA - ldrsh r0, [r5, r1] - movs r1, 0xA - bl __divsi3 - ldrh r1, [r4] - adds r1, r0 - strh r1, [r4] - ldrh r0, [r5, 0xA] - subs r0, 0x3 - strh r0, [r5, 0xA] - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x78 - bne _080DDADA - movs r0, 0x1 - bl sub_80789D4 - adds r0, r6, 0 - bl DestroyAnimVisualTask -_080DDADA: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DDAE8: .4byte gTasks -_080DDAEC: .4byte gBattle_BG3_Y - thumb_func_end sub_80DDA8C - - thumb_func_start sub_80DDAF0 -sub_80DDAF0: @ 80DDAF0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r1, _080DDB5C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080DDB1C - movs r0, 0 - bl sub_80789D4 - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - ldr r0, _080DDB60 @ =gBattle_BG3_Y - ldrh r0, [r0] - strh r0, [r4, 0xC] -_080DDB1C: - ldrh r0, [r4, 0xA] - adds r0, 0x50 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0xA] - ldr r6, _080DDB60 @ =gBattle_BG3_Y - movs r2, 0xA - ldrsh r1, [r4, r2] - movs r0, 0x4 - bl Cos - ldrh r4, [r4, 0xC] - adds r0, r4 - strh r0, [r6] - ldr r0, _080DDB64 @ =gBattleAnimArgs - movs r2, 0xE - ldrsh r1, [r0, r2] - ldr r0, _080DDB68 @ =0x00000fff - cmp r1, r0 - bne _080DDB54 - movs r0, 0 - strh r0, [r6] - movs r0, 0x1 - bl sub_80789D4 - adds r0, r5, 0 - bl DestroyAnimVisualTask -_080DDB54: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DDB5C: .4byte gTasks -_080DDB60: .4byte gBattle_BG3_Y -_080DDB64: .4byte gBattleAnimArgs -_080DDB68: .4byte 0x00000fff - thumb_func_end sub_80DDAF0 - - .align 2, 0 @ Don't pad with nop. diff --git a/include/rom_8077ABC.h b/include/rom_8077ABC.h index 21ec88a90..81a11ba04 100644 --- a/include/rom_8077ABC.h +++ b/include/rom_8077ABC.h @@ -103,5 +103,7 @@ bool8 sub_8078718(struct Sprite *sprite); bool8 sub_8078CE8(struct Sprite *sprite); void oamt_add_pos2_onto_pos1(struct Sprite *sprite); void sub_8078BD4(struct Sprite *sprite); +void sub_807941C(struct Sprite *sprite); +void sub_80789D4(bool8 a1); #endif // GUARD_ROM_8077ABC_H diff --git a/ld_script.txt b/ld_script.txt index d37b73e6d..e08690563 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -296,7 +296,6 @@ SECTIONS { asm/psychic.o(.text); src/battle/anim/bug.o(.text); src/battle/anim/rock.o(.text); - asm/rock.o(.text); asm/ghost.o(.text); src/battle/anim/dragon.o(.text); src/battle/anim/dark.o(.text); diff --git a/src/battle/anim/rock.c b/src/battle/anim/rock.c index 26ac78053..b113ce040 100644 --- a/src/battle/anim/rock.c +++ b/src/battle/anim/rock.c @@ -4,24 +4,35 @@ #include "decompress.h" #include "palette.h" #include "rom_8077ABC.h" +#include "sound.h" #include "task.h" #include "trig.h" +#include "constants/songs.h" extern s16 gBattleAnimArgs[]; extern u8 gAnimBankAttacker; extern u8 gAnimBankTarget; +extern u32 gAnimMoveDmg; extern u16 gBattle_BG1_X; extern u16 gBattle_BG1_Y; +extern u16 gBattle_BG3_Y; extern const u8 gBattleAnimBackgroundTilemap_SandstormBrew[]; extern const u8 gBattleAnimBackgroundImage_SandstormBrew[]; extern const u16 gBattleAnimSpritePalette_261[]; +extern const struct SpriteTemplate gSpriteTemplate_83DAD78; +extern const struct SpriteTemplate gSpriteTemplate_83DAD90; extern const struct SubspriteTable gUnknown_083DAD10; static void sub_80DCF1C(struct Sprite *sprite); static void sub_80DD02C(struct Sprite *sprite); -void sub_80DD190(u8 taskId); +static void sub_80DD190(u8 taskId); +static void sub_80DD604(u8 taskId); +static void sub_80DD774(struct Task *task); +static u8 sub_80DD8BC(void); +static void sub_80DD928(struct Sprite *sprite); +static void sub_80DD9FC(struct Sprite *sprite); void sub_80DCE9C(struct Sprite *sprite) @@ -150,7 +161,7 @@ void do_boulder_dust(u8 taskId) gTasks[taskId].func = sub_80DD190; } -void sub_80DD190(u8 taskId) +static void sub_80DD190(u8 taskId) { struct Struct_sub_8078914 subStruct; @@ -273,3 +284,319 @@ void sub_80DD490(struct Sprite *sprite) sprite->callback = sub_8078B34; StoreSpriteCallbackInData(sprite, DestroyAnimSprite); } + +void sub_80DD4D4(u8 taskId) +{ + u16 var0, var1, var2, var3; + u8 var4; + int var5; + s16 pan1, pan2; + struct Task *task; + + task = &gTasks[taskId]; + + var0 = GetBankPosition(gAnimBankAttacker, 2); + var1 = GetBankPosition(gAnimBankAttacker, 1) + 24; + var2 = GetBankPosition(gAnimBankTarget, 2); + var3 = GetBankPosition(gAnimBankTarget, 1) + 24; + + if ((gAnimBankAttacker ^ 2) == gAnimBankTarget) + var3 = var1; + + var4 = sub_80DD8BC(); + if (var4 == 1) + task->data[8] = 32; + else + task->data[8] = 48 - (var4 * 8); + + task->data[0] = 0; + task->data[11] = 0; + task->data[9] = 0; + task->data[12] = 1; + + var5 = task->data[8]; + if (var5 < 0) + var5 += 7; + + task->data[10] = (var5 >> 3) - 1; + + task->data[2] = var0 * 8; + task->data[3] = var1 * 8; + task->data[4] = ((var2 - var0) * 8) / task->data[8]; + task->data[5] = ((var3 - var1) * 8) / task->data[8]; + task->data[6] = 0; + task->data[7] = 0; + + pan1 = BattleAnimAdjustPanning(-64); + pan2 = BattleAnimAdjustPanning(63); + + task->data[13] = pan1; + task->data[14] = (pan2 - pan1) / task->data[8]; + task->data[1] = var4; + task->data[15] = GetAnimBankSpriteId(0); + + task->func = sub_80DD604; +} + +static void sub_80DD604(u8 taskId) +{ + struct Task *task; + + task = &gTasks[taskId]; + + switch (task->data[0]) + { + case 0: + task->data[6] -= task->data[4]; + task->data[7] -= task->data[5]; + gSprites[task->data[15]].pos2.x = task->data[6] >> 3; + gSprites[task->data[15]].pos2.y = task->data[7] >> 3; + + if (++task->data[9] == 10) + { + task->data[11] = 20; + task->data[0]++; + } + + PlaySE12WithPanning(SE_W029, task->data[13]); + break; + case 1: + if (--task->data[11] == 0) + task->data[0]++; + break; + case 2: + if (--task->data[9] != 0) + { + task->data[6] += task->data[4]; + task->data[7] += task->data[5]; + } + else + { + task->data[6] = 0; + task->data[7] = 0; + task->data[0]++; + } + + gSprites[task->data[15]].pos2.x = task->data[6] >> 3; + gSprites[task->data[15]].pos2.y = task->data[7] >> 3; + break; + case 3: + task->data[2] += task->data[4]; + task->data[3] += task->data[5]; + if (++task->data[9] >= task->data[10]) + { + task->data[9] = 0; + sub_80DD774(task); + task->data[13] += task->data[14]; + PlaySE12WithPanning(SE_W091, task->data[13]); + } + + if (--task->data[8] == 0) + { + task->data[0]++; + } + break; + case 4: + if (task->data[11] == 0) + DestroyAnimVisualTask(taskId); + break; + } +} + +static void sub_80DD774(struct Task *task) +{ + const struct SpriteTemplate *spriteTemplate; + int var0; + u16 x, y; + u8 spriteId; + + switch (task->data[1]) + { + case 1: + spriteTemplate = &gSpriteTemplate_83DAD78; + var0 = 0; + break; + case 2: + case 3: + spriteTemplate = &gSpriteTemplate_83DAD90; + var0 = 80; + break; + case 4: + spriteTemplate = &gSpriteTemplate_83DAD90; + var0 = 64; + break; + case 5: + spriteTemplate = &gSpriteTemplate_83DAD90; + var0 = 48; + break; + default: + return; + } + + x = task->data[2] >> 3; + y = task->data[3] >> 3; + x += (task->data[12] * 4); + + spriteId = CreateSprite(spriteTemplate, x, y, 35); + if (spriteId != 64) + { + gSprites[spriteId].data[0] = 18; + gSprites[spriteId].data[2] = ((task->data[12] * 20) + x) + (task->data[1] * 3); + gSprites[spriteId].data[4] = y; + gSprites[spriteId].data[5] = -16 - (task->data[1] * 2); + gSprites[spriteId].oam.tileNum += var0; + + sub_80786EC(&gSprites[spriteId]); + task->data[11]++; + } + + task->data[12] *= -1; +} + +void sub_80DD87C(struct Sprite *sprite) +{ + if (sub_8078718(sprite)) + { + u8 taskId = FindTaskIdByFunc(sub_80DD604); + if (taskId != 0xFF) + gTasks[taskId].data[11]--; + + DestroySprite(sprite); + } +} + +u8 sub_80DD8BC(void) +{ + u8 retVal = gAnimDisableStructPtr->rolloutTimer2 - gAnimDisableStructPtr->rolloutTimer1; + u8 var0 = retVal - 1; + if (var0 > 4) + { + retVal = 1; + } + + return retVal; +} + +void sub_80DD8E8(struct Sprite *sprite) +{ + StartSpriteAnim(sprite, gBattleAnimArgs[4]); + + sprite->pos2.x = gBattleAnimArgs[0]; + sprite->data[2] = gBattleAnimArgs[1]; + sprite->data[3] -= gBattleAnimArgs[2]; + sprite->data[0] = 3; + sprite->data[1] = gBattleAnimArgs[3]; + sprite->callback = sub_80DD928; + sprite->invisible = 1; +} + +static void sub_80DD928(struct Sprite *sprite) +{ + sprite->invisible = 0; + if (sprite->data[3] != 0) + { + sprite->pos2.y = sprite->data[2] + sprite->data[3]; + sprite->data[3] += sprite->data[0]; + sprite->data[0]++; + if (sprite->data[3] > 0) + { + sprite->data[3] = 0; + } + } + else + { + if (--sprite->data[1] == 0) + { + DestroyAnimSprite(sprite); + } + } +} + +void sub_80DD978(struct Sprite *sprite) +{ + if (GetBankSide(gAnimBankAttacker) == SIDE_OPPONENT) + StartSpriteAffineAnim(sprite, 1); + + sub_807941C(sprite); +} + +void sub_80DD9A4(struct Sprite *sprite) +{ + sprite->pos1.x = GetBankPosition(gAnimBankTarget, 0); + sprite->pos1.y = GetBankPosition(gAnimBankTarget, 1); + sprite->pos1.x += gBattleAnimArgs[0]; + sprite->pos1.y += gBattleAnimArgs[1]; + + sprite->data[1] = gBattleAnimArgs[0]; + sprite->data[2] = gBattleAnimArgs[1]; + sprite->data[5] = gBattleAnimArgs[2]; + + StartSpriteAnim(sprite, gBattleAnimArgs[3]); + sprite->callback = sub_80DD9FC; +} + +static void sub_80DD9FC(struct Sprite *sprite) +{ + sprite->data[0] += 8; + sprite->data[3] += sprite->data[1]; + sprite->data[4] += sprite->data[2]; + + sprite->pos2.x += sprite->data[3] / 40; + sprite->pos2.y -= Sin(sprite->data[0], sprite->data[5]); + + if (sprite->data[0] > 140) + DestroyAnimSprite(sprite); +} + +void sub_80DDA4C(u8 taskId) +{ + if ((s32)gAnimMoveDmg < 33) + gBattleAnimArgs[7] = 0; + if (gAnimMoveDmg - 33 < 33) + gBattleAnimArgs[7] = 1; + if ((s32)gAnimMoveDmg > 65) + gBattleAnimArgs[7] = 2; + + DestroyAnimVisualTask(taskId); +} + +void sub_80DDA8C(u8 taskId) +{ + if (gTasks[taskId].data[0] == 0) + { + sub_80789D4(0); + gTasks[taskId].data[1] = 200; + } + + gBattle_BG3_Y += gTasks[taskId].data[1] / 10; + gTasks[taskId].data[1] -= 3; + + if (gTasks[taskId].data[0] == 120) + { + sub_80789D4(1); + DestroyAnimVisualTask(taskId); + } + + gTasks[taskId].data[0]++; +} + +void sub_80DDAF0(u8 taskId) +{ + if (gTasks[taskId].data[0] == 0) + { + sub_80789D4(0); + gTasks[taskId].data[0]++; + gTasks[taskId].data[2] = gBattle_BG3_Y; + } + + gTasks[taskId].data[1] += 80; + gTasks[taskId].data[1] &= 0xFF; + gBattle_BG3_Y = gTasks[taskId].data[2] + Cos(4, gTasks[taskId].data[1]); + + if (gBattleAnimArgs[7] == 0xFFF) + { + gBattle_BG3_Y = 0; + sub_80789D4(1); + DestroyAnimVisualTask(taskId); + } +} -- cgit v1.2.3 From 58928acf41b3ed7fc9f7de12db2aad27de744203 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Tue, 30 Jan 2018 20:13:43 -0800 Subject: Use standard naming convention for pc_screen_effect.h guard --- include/pc_screen_effect.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/pc_screen_effect.h b/include/pc_screen_effect.h index 36661bc3b..d3f6d22de 100644 --- a/include/pc_screen_effect.h +++ b/include/pc_screen_effect.h @@ -1,5 +1,5 @@ -#ifndef POKERUBY_PC_SCREEN_EFFECT_H -#define POKERUBY_PC_SCREEN_EFFECT_H +#ifndef GUARD_PC_SCREEN_EFFECT_H +#define GUARD_PC_SCREEN_EFFECT_H struct PCScreenEffectStruct { @@ -18,4 +18,4 @@ bool8 sub_80C5DCC(void); void sub_80C5E38(struct PCScreenEffectStruct *unkStruct); bool8 sub_80C5F98(void); -#endif //POKERUBY_PC_SCREEN_EFFECT_H +#endif //GUARD_PC_SCREEN_EFFECT_H -- cgit v1.2.3