diff options
36 files changed, 2916 insertions, 3845 deletions
diff --git a/INSTALL.md b/INSTALL.md index 64c35d5ed..954bd1d97 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -8,6 +8,6 @@ TBD Install [**devkitARM**](http://devkitpro.org/wiki/Getting_Started/devkitARM). -Then get the compiled tools from https://github.com/YamaArashi/pokeruby-tools. Copy the "tools" folder over the "tools" folder in your pokeemerald directory. +Then download [**pokeruby-tools**](https://github.com/pret/pokeruby-tools). Copy the `tools/` folder with the compiled `exe`s to the `tools/` folder in your `pokeemerald/` directory. -You can then build pokeemerald using "make" in the MSYS environment provided with devkitARM. +You can then build pokeemerald using `make` in the MSYS environment provided with devkitARM. diff --git a/asm/battle_1.s b/asm/battle_1.s deleted file mode 100644 index 9665b0d11..000000000 --- a/asm/battle_1.s +++ /dev/null @@ -1,3065 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8034C54 -sub_8034C54: @ 8034C54 - push {r4-r7,lr} - adds r4, r0, 0 - ldr r5, =gUnknown_02022E10 - ldr r0, [r5] - cmp r0, 0 - beq _08034C64 - bl sub_8034CC8 -_08034C64: - movs r0, 0x8 - bl Alloc - str r0, [r5] - cmp r0, 0 - bne _08034C78 - movs r0, 0 - b _08034CC0 - .pool -_08034C78: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - bl Alloc - ldr r1, [r5] - str r0, [r1, 0x4] - cmp r0, 0 - bne _08034C94 - adds r0, r1, 0 - bl Free - movs r0, 0 - b _08034CC0 -_08034C94: - str r4, [r1] - movs r3, 0 - cmp r3, r4 - bcs _08034CBE - movs r7, 0 - movs r6, 0xFF - movs r2, 0 -_08034CA2: - ldr r0, [r5] - ldr r0, [r0, 0x4] - adds r0, r2, r0 - strb r7, [r0] - ldr r0, [r5] - ldr r1, [r0, 0x4] - adds r1, r2, r1 - ldrb r0, [r1, 0x1] - orrs r0, r6 - strb r0, [r1, 0x1] - adds r2, 0x1C - adds r3, 0x1 - cmp r3, r4 - bcc _08034CA2 -_08034CBE: - movs r0, 0x1 -_08034CC0: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8034C54 - - thumb_func_start sub_8034CC8 -sub_8034CC8: @ 8034CC8 - push {r4,r5,lr} - ldr r2, =gUnknown_02022E10 - ldr r1, [r2] - cmp r1, 0 - beq _08034D08 - ldr r0, [r1, 0x4] - cmp r0, 0 - beq _08034CFC - movs r4, 0 - ldr r0, [r1] - cmp r4, r0 - bcs _08034CF2 - adds r5, r2, 0 -_08034CE2: - adds r0, r4, 0 - bl sub_80353DC - adds r4, 0x1 - ldr r0, [r5] - ldr r0, [r0] - cmp r4, r0 - bcc _08034CE2 -_08034CF2: - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r0, [r0, 0x4] - bl Free -_08034CFC: - ldr r4, =gUnknown_02022E10 - ldr r0, [r4] - bl Free - movs r0, 0 - str r0, [r4] -_08034D08: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034CC8 - - thumb_func_start sub_8034D14 -sub_8034D14: @ 8034D14 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r8, r0 - mov r10, r1 - adds r5, r2, 0 - ldr r6, =gUnknown_02022E10 - ldr r0, [r6] - cmp r0, 0 - beq _08034DD4 - ldr r1, [r0, 0x4] - mov r0, r8 - lsls r2, r0, 3 - subs r0, r2, r0 - lsls r4, r0, 2 - adds r1, r4, r1 - ldrb r0, [r1] - mov r9, r2 - cmp r0, 0 - bne _08034DD4 - ldrb r0, [r5, 0x1] - bl sub_8035518 - ldr r1, [r6] - ldr r1, [r1, 0x4] - adds r1, r4, r1 - strb r0, [r1, 0x1] - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, r4, r0 - ldrb r0, [r0, 0x1] - cmp r0, 0xFF - beq _08034DD4 - ldr r0, [r5, 0x8] - ldrh r0, [r0, 0x6] - bl GetSpriteTileStartByTag - ldr r2, [r6] - ldr r1, [r2, 0x4] - adds r1, r4, r1 - strh r0, [r1, 0xA] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - ldrh r1, [r0, 0xA] - ldr r7, =0xffff0000 - lsrs r0, r7, 16 - cmp r1, r0 - bne _08034DE0 - ldr r2, [r5, 0x8] - ldrh r0, [r2, 0x4] - adds r1, r2, 0 - cmp r0, 0 - beq _08034D94 - adds r0, r1, 0 - bl LoadSpriteSheet - b _08034DB4 - .pool -_08034D94: - ldr r0, [r2] - ldr r1, [r2, 0x4] - str r0, [sp] - str r1, [sp, 0x4] - ldr r0, [r2] - bl sub_8034974 - lsls r0, 16 - lsrs r0, 16 - ldr r1, [sp, 0x4] - ands r1, r7 - orrs r1, r0 - str r1, [sp, 0x4] - mov r0, sp - bl LoadCompressedObjectPic -_08034DB4: - ldr r1, [r6] - ldr r1, [r1, 0x4] - adds r1, r4, r1 - strh r0, [r1, 0xA] - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r1, [r0, 0x4] - mov r2, r9 - mov r3, r8 - subs r0, r2, r3 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0xA] - ldr r0, =0x0000ffff - cmp r1, r0 - bne _08034DE0 -_08034DD4: - movs r0, 0 - b _08034EE8 - .pool -_08034DE0: - ldr r0, [r5, 0xC] - ldrh r0, [r0, 0x4] - bl IndexOfSpritePaletteTag - ldr r6, =gUnknown_02022E10 - ldr r1, [r6] - ldr r1, [r1, 0x4] - mov r4, r9 - mov r3, r8 - subs r2, r4, r3 - lsls r4, r2, 2 - adds r1, r4, r1 - strb r0, [r1, 0x4] - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, r4, r0 - ldrb r0, [r0, 0x4] - cmp r0, 0xFF - bne _08034E14 - ldr r0, [r5, 0xC] - bl LoadSpritePalette - ldr r1, [r6] - ldr r1, [r1, 0x4] - adds r1, r4, r1 - strb r0, [r1, 0x4] -_08034E14: - ldr r0, [r6] - ldr r1, [r0, 0x4] - adds r1, r4, r1 - ldrb r0, [r5] - lsls r0, 30 - lsrs r0, 30 - strb r0, [r1, 0x2] - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, r4, r0 - ldrb r1, [r5, 0x1] - strb r1, [r0, 0x3] - ldr r2, [r6] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - ldrh r1, [r5, 0x4] - strh r1, [r0, 0xC] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - ldrh r1, [r5, 0x6] - strh r1, [r0, 0xE] - ldr r1, [r2, 0x4] - adds r1, r4, r1 - ldrb r0, [r5] - lsls r0, 28 - lsrs r0, 30 - strb r0, [r1, 0x6] - ldr r0, [r6] - ldr r1, [r0, 0x4] - adds r1, r4, r1 - ldrb r0, [r5] - lsls r0, 26 - lsrs r0, 30 - strb r0, [r1, 0x5] - ldr r0, [r6] - ldr r1, [r0, 0x4] - adds r1, r4, r1 - ldrb r0, [r5] - lsrs r0, 6 - strb r0, [r1, 0x7] - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, r4, r0 - ldrb r1, [r5, 0x2] - strb r1, [r0, 0x8] - ldrb r1, [r5] - lsls r0, r1, 28 - lsrs r0, 30 - lsls r1, 26 - lsrs r1, 30 - bl sub_80355F8 - ldr r1, [r6] - ldr r1, [r1, 0x4] - adds r1, r4, r1 - strb r0, [r1, 0x9] - ldr r2, [r6] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - ldr r1, [r5, 0x8] - ldrh r1, [r1, 0x6] - strh r1, [r0, 0x10] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - ldr r1, [r5, 0xC] - ldrh r1, [r1, 0x4] - strh r1, [r0, 0x12] - ldr r0, [r2, 0x4] - adds r0, r4, r0 - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r6] - ldr r0, [r0, 0x4] - adds r0, r4, r0 - str r1, [r0, 0x14] - movs r3, 0x1 - ldrb r0, [r5, 0x1] - cmp r3, r0 - bcs _08034ECA -_08034EB2: - ldr r0, [r6] - ldr r2, [r0, 0x4] - adds r2, r4, r2 - ldr r1, [r2, 0x14] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - str r0, [r2, 0x14] - adds r3, 0x1 - ldrb r2, [r5, 0x1] - cmp r3, r2 - bcc _08034EB2 -_08034ECA: - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - mov r3, r9 - mov r4, r8 - subs r1, r3, r4 - lsls r1, 2 - ldr r0, [r0, 0x4] - adds r0, r1 - bl sub_8034EFC - mov r0, r8 - mov r1, r10 - bl sub_8035044 - movs r0, 0x1 -_08034EE8: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8034D14 - - thumb_func_start sub_8034EFC -sub_8034EFC: @ 8034EFC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r4, r0, 0 - ldrb r5, [r4, 0x1] - movs r0, 0xC - ldrsh r7, [r4, r0] - ldrb r0, [r4, 0x3] - adds r0, 0x1 - mov r8, r0 - mov r1, sp - movs r0, 0 - strh r0, [r1] - lsls r1, r5, 3 - ldr r2, =gUnknown_030022F8 - mov r9, r2 - add r1, r9 - mov r0, r8 - lsls r2, r0, 2 - movs r0, 0x80 - lsls r0, 17 - orrs r2, r0 - mov r0, sp - bl CpuSet - movs r6, 0 - ldrb r5, [r4, 0x1] - cmp r6, r8 - bcs _08034FCE - movs r1, 0x3F - mov r10, r1 - movs r2, 0xD - negs r2, r2 - mov r9, r2 -_08034F46: - lsls r0, r5, 3 - ldr r1, =gMain - adds r3, r0, r1 - ldrh r1, [r4, 0xE] - adds r0, r3, 0 - adds r0, 0x38 - strb r1, [r0] - ldr r2, =0x000001ff - adds r0, r2, 0 - adds r1, r7, 0 - ands r1, r0 - ldrh r2, [r3, 0x3A] - ldr r0, =0xfffffe00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x3A] - ldrb r1, [r4, 0x6] - movs r0, 0x39 - adds r0, r3 - mov r12, r0 - lsls r1, 6 - ldrb r2, [r0] - mov r0, r10 - ands r0, r2 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - ldrb r1, [r4, 0x5] - movs r2, 0x3B - adds r2, r3 - mov r12, r2 - lsls r1, 6 - ldrb r2, [r2] - mov r0, r10 - ands r0, r2 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - ldrh r0, [r4, 0xA] - ldr r1, =0x000003ff - ands r1, r0 - ldrh r2, [r3, 0x3C] - ldr r0, =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x3C] - adds r3, 0x3D - movs r0, 0x3 - ldrb r1, [r4, 0x7] - ands r1, r0 - lsls r1, 2 - ldrb r2, [r3] - mov r0, r9 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - ldrb r2, [r4, 0x4] - lsls r2, 4 - movs r1, 0xF - ands r0, r1 - orrs r0, r2 - strb r0, [r3] - ldrb r0, [r4, 0x8] - adds r7, r0 - adds r6, 0x1 - adds r5, 0x1 - cmp r6, r8 - bcc _08034F46 -_08034FCE: - subs r5, 0x1 - ldr r0, =gMain - lsls r3, r5, 3 - adds r3, r0 - movs r2, 0xC - ldrsh r1, [r4, r2] - ldrb r0, [r4, 0x8] - subs r1, r0 - ldr r2, =0x000001ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x3A] - ldr r0, =0xfffffe00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x3A] - adds r2, r3, 0 - adds r2, 0x39 - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r4, 0x9] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 1 - ldrh r4, [r4, 0xA] - adds r1, r4 - ldr r2, =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r2, [r3, 0x3C] - ldr r0, =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r3, 0x3C] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034EFC - - thumb_func_start sub_8035044 -sub_8035044: @ 8035044 - push {r4-r6,lr} - adds r3, r0, 0 - adds r4, r1, 0 - ldr r0, =gUnknown_02022E10 - ldr r1, [r0] - adds r6, r0, 0 - cmp r1, 0 - beq _080350A8 - ldr r2, [r1, 0x4] - lsls r1, r3, 3 - subs r0, r1, r3 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2] - adds r5, r1, 0 - cmp r0, 0 - beq _080350A8 - str r4, [r2, 0x18] - cmp r4, 0 - bge _08035078 - movs r2, 0x1 - negs r4, r4 - b _0803507A - .pool -_08035078: - movs r2, 0 -_0803507A: - ldr r0, [r6] - ldr r1, [r0, 0x4] - subs r0, r5, r3 - lsls r0, 2 - adds r0, r1 - ldrb r3, [r0, 0x2] - cmp r3, 0x1 - beq _0803509A - cmp r3, 0x1 - ble _08035092 - cmp r3, 0x2 - beq _080350A2 -_08035092: - adds r1, r4, 0 - bl sub_80350B0 - b _080350A8 -_0803509A: - adds r1, r4, 0 - bl sub_8035164 - b _080350A8 -_080350A2: - adds r1, r4, 0 - bl sub_80352C0 -_080350A8: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8035044 - - thumb_func_start sub_80350B0 -sub_80350B0: @ 80350B0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r8, r0 - mov r9, r1 - str r2, [sp] - ldr r5, [r0, 0x14] - ldrb r7, [r0, 0x1] - ldr r0, =gMain - mov r10, r0 - cmp r5, 0 - beq _0803511A - lsls r0, r7, 3 - adds r0, 0x3C - mov r1, r10 - adds r6, r0, r1 -_080350D6: - mov r0, r9 - adds r1, r5, 0 - bl __udivsi3 - adds r4, r0, 0 - adds r0, r4, 0 - muls r0, r5 - mov r2, r9 - subs r2, r0 - mov r9, r2 - adds r0, r5, 0 - movs r1, 0xA - bl __udivsi3 - adds r5, r0, 0 - mov r1, r8 - ldrb r0, [r1, 0x9] - adds r1, r4, 0 - muls r1, r0 - mov r2, r8 - ldrh r2, [r2, 0xA] - adds r1, r2 - ldr r2, =0x000003ff - adds r0, r2, 0 - ands r1, r0 - ldrh r0, [r6] - ldr r2, =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r6] - adds r6, 0x8 - adds r7, 0x1 - cmp r5, 0 - bne _080350D6 -_0803511A: - ldr r0, [sp] - cmp r0, 0 - beq _08035140 - lsls r0, r7, 3 - add r0, r10 - adds r0, 0x39 - ldrb r2, [r0] - movs r1, 0x4 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - b _08035154 - .pool -_08035140: - lsls r2, r7, 3 - add r2, r10 - adds r2, 0x39 - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] -_08035154: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80350B0 - - thumb_func_start sub_8035164 -sub_8035164: @ 8035164 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - mov r8, r1 - str r2, [sp] - ldr r5, [r6, 0x14] - ldr r3, =gUnknown_03000DD4 - ldrb r0, [r6, 0x1] - str r0, [r3] - ldr r2, =gUnknown_03000DD8 - movs r0, 0 - str r0, [r2] - ldr r1, =gUnknown_03000DDC - subs r0, 0x1 - str r0, [r1] - adds r7, r3, 0 - mov r10, r1 - ldr r0, =gMain - mov r9, r0 - cmp r5, 0 - beq _0803524C -_08035196: - mov r0, r8 - adds r1, r5, 0 - bl __udivsi3 - adds r4, r0, 0 - adds r0, r4, 0 - muls r0, r5 - mov r1, r8 - subs r1, r0 - mov r8, r1 - adds r0, r5, 0 - movs r1, 0xA - bl __udivsi3 - adds r5, r0, 0 - cmp r4, 0 - bne _080351C8 - mov r2, r10 - ldr r1, [r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080351C8 - cmp r5, 0 - bne _08035224 -_080351C8: - ldr r2, [r7] - lsls r2, 3 - add r2, r9 - ldrb r0, [r6, 0x9] - adds r3, r4, 0 - muls r3, r0 - ldrh r4, [r6, 0xA] - adds r3, r4 - ldr r1, =0x000003ff - adds r0, r1, 0 - ands r3, r0 - ldrh r0, [r2, 0x3C] - ldr r4, =0xfffffc00 - adds r1, r4, 0 - ands r0, r1 - orrs r0, r3 - strh r0, [r2, 0x3C] - adds r2, 0x39 - ldrb r0, [r2] - movs r1, 0x4 - negs r1, r1 - ands r0, r1 - strb r0, [r2] - mov r2, r10 - ldr r1, [r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0803523A - ldr r4, =gUnknown_03000DD8 - ldr r0, [r4] - str r0, [r2] - b _0803523A - .pool -_08035224: - ldr r0, [r7] - lsls r0, 3 - add r0, r9 - adds r0, 0x39 - ldrb r1, [r0] - movs r2, 0x4 - negs r2, r2 - ands r1, r2 - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_0803523A: - ldr r0, [r7] - adds r0, 0x1 - str r0, [r7] - ldr r4, =gUnknown_03000DD8 - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - cmp r5, 0 - bne _08035196 -_0803524C: - ldr r0, [sp] - cmp r0, 0 - beq _08035298 - ldr r1, [r7] - lsls r1, 3 - add r1, r9 - adds r1, 0x39 - ldrb r2, [r1] - movs r0, 0x4 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r3, [r7] - lsls r3, 3 - add r3, r9 - movs r1, 0xC - ldrsh r2, [r6, r1] - mov r4, r10 - ldr r0, [r4] - subs r0, 0x1 - ldrb r1, [r6, 0x8] - muls r0, r1 - adds r2, r0 - ldr r1, =0x000001ff - adds r0, r1, 0 - ands r2, r0 - ldrh r1, [r3, 0x3A] - ldr r0, =0xfffffe00 - ands r0, r1 - orrs r0, r2 - strh r0, [r3, 0x3A] - b _080352AE - .pool -_08035298: - ldr r0, [r7] - lsls r0, 3 - add r0, r9 - adds r0, 0x39 - ldrb r2, [r0] - movs r1, 0x4 - negs r1, r1 - ands r1, r2 - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_080352AE: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8035164 - - thumb_func_start sub_80352C0 -sub_80352C0: @ 80352C0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r8, r0 - mov r10, r1 - str r2, [sp] - ldr r5, [r0, 0x14] - ldrb r3, [r0, 0x1] - movs r0, 0 - str r0, [sp, 0x4] - mov r9, r0 - cmp r5, 0 - beq _0803535A -_080352E0: - lsls r0, r3, 3 - adds r1, r0, 0 - adds r1, 0x39 - ldr r2, =gMain - adds r7, r1, r2 - adds r0, 0x3C - adds r6, r0, r2 -_080352EE: - mov r0, r10 - adds r1, r5, 0 - str r3, [sp, 0x8] - bl __udivsi3 - adds r4, r0, 0 - adds r0, r4, 0 - muls r0, r5 - mov r1, r10 - subs r1, r0 - mov r10, r1 - adds r0, r5, 0 - movs r1, 0xA - bl __udivsi3 - adds r5, r0, 0 - ldr r3, [sp, 0x8] - cmp r4, 0 - bne _0803531E - ldr r2, [sp, 0x4] - cmp r2, 0 - bne _0803531E - cmp r5, 0 - bne _080352E0 -_0803531E: - movs r0, 0x1 - str r0, [sp, 0x4] - mov r1, r8 - ldrb r0, [r1, 0x9] - adds r2, r4, 0 - muls r2, r0 - ldrh r4, [r1, 0xA] - adds r2, r4 - ldr r1, =0x000003ff - adds r0, r1, 0 - ands r2, r0 - ldrh r0, [r6] - ldr r4, =0xfffffc00 - adds r1, r4, 0 - ands r0, r1 - orrs r0, r2 - strh r0, [r6] - ldrb r0, [r7] - movs r2, 0x4 - negs r2, r2 - adds r1, r2, 0 - ands r0, r1 - strb r0, [r7] - adds r7, 0x8 - adds r6, 0x8 - adds r3, 0x1 - movs r4, 0x1 - add r9, r4 - cmp r5, 0 - bne _080352EE -_0803535A: - mov r0, r8 - ldrb r0, [r0, 0x3] - cmp r9, r0 - bge _0803538A - ldr r1, =gMain - movs r5, 0x4 - negs r5, r5 - movs r4, 0x2 - lsls r0, r3, 3 - adds r0, 0x39 - adds r2, r0, r1 -_08035370: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - orrs r0, r4 - strb r0, [r2] - adds r2, 0x8 - adds r3, 0x1 - movs r1, 0x1 - add r9, r1 - mov r0, r8 - ldrb r0, [r0, 0x3] - cmp r9, r0 - blt _08035370 -_0803538A: - ldr r1, [sp] - cmp r1, 0 - beq _080353B0 - lsls r0, r3, 3 - ldr r2, =gMain - adds r0, r2 - adds r0, 0x39 - ldrb r2, [r0] - movs r1, 0x4 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - b _080353C6 - .pool -_080353B0: - lsls r2, r3, 3 - ldr r4, =gMain - adds r2, r4 - adds r2, 0x39 - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] -_080353C6: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80352C0 - - thumb_func_start sub_80353DC -sub_80353DC: @ 80353DC - push {r4-r7,lr} - adds r4, r0, 0 - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - cmp r0, 0 - beq _0803546E - ldr r2, [r0, 0x4] - lsls r1, r4, 3 - subs r0, r1, r4 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2] - adds r5, r1, 0 - cmp r0, 0 - beq _0803546E - ldrb r3, [r2, 0x3] - adds r0, r3, 0x1 - ldrb r2, [r2, 0x1] - cmp r0, 0 - beq _08035426 - ldr r1, =gMain - movs r7, 0x4 - negs r7, r7 - movs r6, 0x2 - adds r3, r0, 0 - lsls r0, r2, 3 - adds r0, 0x39 - adds r2, r0, r1 -_08035414: - ldrb r1, [r2] - adds r0, r7, 0 - ands r0, r1 - orrs r0, r6 - strb r0, [r2] - subs r3, 0x1 - adds r2, 0x8 - cmp r3, 0 - bne _08035414 -_08035426: - adds r0, r4, 0 - bl sub_8035570 - cmp r0, 0 - bne _08035442 - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r1, [r0, 0x4] - subs r0, r5, r4 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x10] - bl FreeSpriteTilesByTag -_08035442: - adds r0, r4, 0 - bl sub_80355B4 - cmp r0, 0 - bne _0803545E - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r1, [r0, 0x4] - subs r0, r5, r4 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x12] - bl FreeSpritePaletteByTag -_0803545E: - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r1, [r0, 0x4] - subs r0, r5, r4 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_0803546E: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80353DC - - thumb_func_start sub_803547C -sub_803547C: @ 803547C - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, =gUnknown_02022E10 - ldr r1, [r0] - adds r7, r0, 0 - cmp r1, 0 - beq _0803550C - ldr r2, [r1, 0x4] - lsls r1, r4, 3 - subs r0, r1, r4 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2] - adds r6, r1, 0 - cmp r0, 0 - beq _0803550C - ldrb r3, [r2, 0x3] - adds r1, r3, 0x1 - ldrb r0, [r2, 0x1] - cmp r5, 0 - beq _080354D8 - cmp r1, 0 - beq _0803550C - ldr r1, =gMain - movs r5, 0x4 - negs r5, r5 - movs r4, 0x2 - adds r3, 0x1 - lsls r0, 3 - adds r0, 0x39 - adds r2, r0, r1 -_080354BC: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - orrs r0, r4 - strb r0, [r2] - subs r3, 0x1 - adds r2, 0x8 - cmp r3, 0 - bne _080354BC - b _0803550C - .pool -_080354D8: - cmp r1, 0 - beq _080354FA - ldr r1, =gMain - movs r5, 0x4 - negs r5, r5 - adds r3, 0x1 - lsls r0, 3 - adds r0, 0x39 - adds r2, r0, r1 -_080354EA: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - strb r0, [r2] - subs r3, 0x1 - adds r2, 0x8 - cmp r3, 0 - bne _080354EA -_080354FA: - ldr r0, [r7] - ldr r1, [r0, 0x4] - subs r0, r6, r4 - lsls r0, 2 - adds r0, r1 - ldr r1, [r0, 0x18] - adds r0, r4, 0 - bl sub_8035044 -_0803550C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803547C - - thumb_func_start sub_8035518 -sub_8035518: @ 8035518 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r5, 0x40 - movs r3, 0 - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r2, [r0] - cmp r3, r2 - bcs _0803555A - ldr r1, [r0, 0x4] -_0803552E: - ldrb r0, [r1] - cmp r0, 0 - bne _08035548 - ldrb r0, [r1, 0x1] - cmp r0, 0xFF - beq _08035552 - ldrb r0, [r1, 0x3] - cmp r0, r4 - bhi _08035552 - ldrb r0, [r1, 0x1] - b _0803556A - .pool -_08035548: - adds r0, r5, 0x1 - ldrb r5, [r1, 0x3] - adds r0, r5 - lsls r0, 16 - lsrs r5, r0, 16 -_08035552: - adds r1, 0x1C - adds r3, 0x1 - cmp r3, r2 - bcc _0803552E -_0803555A: - adds r0, r5, r4 - adds r0, 0x1 - cmp r0, 0x80 - bgt _08035568 - lsls r0, r5, 24 - lsrs r0, 24 - b _0803556A -_08035568: - movs r0, 0xFF -_0803556A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8035518 - - thumb_func_start sub_8035570 -sub_8035570: @ 8035570 - push {r4-r6,lr} - adds r3, r0, 0 - movs r2, 0 - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r4, [r0] - cmp r2, r4 - bcs _080355AC - ldr r1, [r0, 0x4] - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r5, r0, r1 -_0803558A: - ldrb r0, [r1] - cmp r0, 0 - beq _080355A4 - cmp r2, r3 - beq _080355A4 - ldrh r0, [r1, 0x10] - ldrh r6, [r5, 0x10] - cmp r0, r6 - bne _080355A4 - movs r0, 0x1 - b _080355AE - .pool -_080355A4: - adds r1, 0x1C - adds r2, 0x1 - cmp r2, r4 - bcc _0803558A -_080355AC: - movs r0, 0 -_080355AE: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8035570 - - thumb_func_start sub_80355B4 -sub_80355B4: @ 80355B4 - push {r4-r6,lr} - adds r3, r0, 0 - movs r2, 0 - ldr r0, =gUnknown_02022E10 - ldr r0, [r0] - ldr r4, [r0] - cmp r2, r4 - bcs _080355F0 - ldr r1, [r0, 0x4] - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r5, r0, r1 -_080355CE: - ldrb r0, [r1] - cmp r0, 0 - beq _080355E8 - cmp r2, r3 - beq _080355E8 - ldrh r0, [r1, 0x12] - ldrh r6, [r5, 0x12] - cmp r0, r6 - bne _080355E8 - movs r0, 0x1 - b _080355F2 - .pool -_080355E8: - adds r1, 0x1C - adds r2, 0x1 - cmp r2, r4 - bcc _080355CE -_080355F0: - movs r0, 0 -_080355F2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80355B4 - - thumb_func_start sub_80355F8 -sub_80355F8: @ 80355F8 - ldr r2, =gUnknown_082FF1C8 - lsls r0, 2 - adds r1, r0 - adds r1, r2 - ldrb r0, [r1] - bx lr - .pool - thumb_func_end sub_80355F8 - - thumb_func_start sub_8035608 -sub_8035608: @ 8035608 - push {lr} - bl ResetSpriteData - ldr r0, =gUnknown_0831AC88 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - ldr r0, =sub_8035648 - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8035608 - - thumb_func_start sub_8035648 -sub_8035648: @ 8035648 - push {lr} - bl AnimateSprites - bl BuildOamBuffer - pop {r0} - bx r0 - thumb_func_end sub_8035648 - - thumb_func_start trs_config -trs_config: @ 8035658 - push {r4,lr} - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_0831AA08 - movs r0, 0 - movs r2, 0x4 - bl InitBgsFromTemplates - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 11 - ands r1, r0 - cmp r1, 0 - beq _080356A4 - ldr r0, =gBattleScripting - adds r0, 0x24 - movs r1, 0x1 - strb r1, [r0] - ldr r4, =gUnknown_02023060 - ldr r1, [r4] - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r1, [r4] - movs r0, 0x2 - bl SetBgTilemapBuffer - b _080356AA - .pool -_080356A4: - ldr r0, =gBattleScripting - adds r0, 0x24 - strb r1, [r0] -_080356AA: - ldr r1, =gUnknown_0831ABA0 - ldr r0, =gBattleScripting - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl InitWindows - bl DeactivateAllTextPrinters - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end trs_config - - thumb_func_start sub_80356D0 -sub_80356D0: @ 80356D0 - push {lr} - movs r0, 0x2 - bl DisableInterrupts - movs r0, 0xC5 - bl EnableInterrupts - bl trs_config - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - movs r0, 0x54 - movs r1, 0 - bl SetGpuReg - ldr r1, =0x0000b040 - movs r0, 0 - bl SetGpuReg - pop {r0} - bx r0 - .pool - thumb_func_end sub_80356D0 - - thumb_func_start ApplyPlayerChosenFrameToBattleMenu -ApplyPlayerChosenFrameToBattleMenu: @ 803570C - push {lr} - movs r0, 0x2 - movs r1, 0x12 - movs r2, 0x10 - bl sub_809882C - movs r0, 0x2 - movs r1, 0x22 - movs r2, 0x10 - bl sub_809882C - ldr r0, =gUnknown_08D85600 - movs r1, 0x50 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0803575A - movs r0, 0x70 - bl sub_81978B0 - movs r0, 0 - movs r1, 0x30 - movs r2, 0x70 - bl copy_textbox_border_tile_patterns_to_vram - ldr r0, =gPlttBufferUnfaded - adds r0, 0xEC - movs r1, 0 - strh r1, [r0] - ldr r1, =gPlttBufferFaded + 0xEC - movs r2, 0x1 - bl CpuSet -_0803575A: - pop {r0} - bx r0 - .pool - thumb_func_end ApplyPlayerChosenFrameToBattleMenu - - thumb_func_start DrawMainBattleBackground -DrawMainBattleBackground: @ 8035770 - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x023f0902 - ands r0, r1 - cmp r0, 0 - beq _080357B0 - ldr r0, =gUnknown_08D7C440 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7CA28 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7C9EC - b _08035A52 - .pool -_080357B0: - movs r0, 0x80 - lsls r0, 21 - ands r0, r1 - cmp r0, 0 - beq _080357E4 - ldr r0, =gUnknown_08D7BB14 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7C154 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7DF30 - b _08035A52 - .pool -_080357E4: - movs r0, 0x80 - lsls r0, 22 - ands r0, r1 - cmp r0, 0 - beq _08035818 - ldr r0, =gUnknown_08D7A108 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7A720 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7DEF4 - b _08035A52 - .pool -_08035818: - movs r0, 0x80 - lsls r0, 23 - ands r0, r1 - cmp r0, 0 - beq _0803584C - ldr r0, =gUnknown_08D7D590 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7DC04 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E234 - b _08035A52 - .pool -_0803584C: - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _080358C4 - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x20 - bne _08035898 - ldr r0, =gUnknown_08D7C440 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7CA28 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7DFC4 - b _08035A52 - .pool -_08035898: - cmp r0, 0x26 - bne _080358C4 - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E1F8 - b _08035A52 - .pool -_080358C4: - bl sav1_map_get_battletype - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8 - bhi _08035904 - lsls r0, 2 - ldr r1, =_080358E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080358E0: - .4byte _08035904 - .4byte _08035950 - .4byte _08035978 - .4byte _080359A0 - .4byte _080359C8 - .4byte _080359F0 - .4byte _08035A18 - .4byte _08035A40 - .4byte _08035A70 -_08035904: - ldr r4, =gBattleTerrainTable - ldr r5, =gBattleTerrain - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ldr r1, =0x06008000 - bl LZDecompressVram - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0x4 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x0600d000 - bl LZDecompressVram - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r4, 0x10 - adds r0, r4 - ldr r0, [r0] - b _08035A52 - .pool -_08035950: - ldr r0, =gUnknown_08D7C440 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7CA28 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7DF88 - b _08035A52 - .pool -_08035978: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E060 - b _08035A52 - .pool -_080359A0: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E000 - b _08035A52 - .pool -_080359C8: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E0CC - b _08035A52 - .pool -_080359F0: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E11C - b _08035A52 - .pool -_08035A18: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E164 - b _08035A52 - .pool -_08035A40: - ldr r0, =gUnknown_08D7CCD8 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7D2E0 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7E1A8 -_08035A52: - movs r1, 0x20 - movs r2, 0x60 - bl LoadCompressedPalette - b _08035A8A - .pool -_08035A70: - ldr r0, =gUnknown_08D7C440 - ldr r1, =0x06008000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7CA28 - ldr r1, =0x0600d000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7C9EC - movs r1, 0x20 - movs r2, 0x60 - bl LoadCompressedPalette -_08035A8A: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DrawMainBattleBackground - - thumb_func_start LoadBattleTextboxAndBackground -LoadBattleTextboxAndBackground: @ 8035AA4 - push {lr} - ldr r0, =gUnknown_08C00000 - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - ldr r1, =gUnknown_08C00524 - movs r0, 0 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0 - bl CopyBgTilemapBufferToVram - ldr r0, =gUnknown_08C004E0 - movs r1, 0 - movs r2, 0x40 - bl LoadCompressedPalette - bl ApplyPlayerChosenFrameToBattleMenu - bl DrawMainBattleBackground - pop {r0} - bx r0 - .pool - thumb_func_end LoadBattleTextboxAndBackground - - thumb_func_start sub_8035AE4 -sub_8035AE4: @ 8035AE4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x18 - ldr r4, [sp, 0x34] - lsls r0, 24 - lsrs r6, r0, 24 - adds r7, r6, 0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 24 - lsrs r3, 24 - mov r12, r3 - lsls r4, 24 - lsrs r4, 24 - mov r9, r4 - movs r4, 0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08035BCC - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - movs r2, 0x12 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _08035B56 - cmp r5, 0x1 - beq _08035B7E - cmp r5, 0x1 - bgt _08035B44 - cmp r5, 0 - beq _08035B4E - b _08035B88 - .pool -_08035B44: - cmp r5, 0x2 - beq _08035B52 - cmp r5, 0x3 - beq _08035B72 - b _08035B88 -_08035B4E: - ldrh r0, [r1, 0xE] - b _08035B74 -_08035B52: - ldrh r1, [r1, 0xE] - b _08035B80 -_08035B56: - cmp r5, 0x1 - beq _08035B72 - cmp r5, 0x1 - bgt _08035B64 - cmp r5, 0 - beq _08035B6E - b _08035B88 -_08035B64: - cmp r5, 0x2 - beq _08035B7A - cmp r5, 0x3 - beq _08035B7E - b _08035B88 -_08035B6E: - ldrh r0, [r1, 0xE] - b _08035B74 -_08035B72: - ldrh r0, [r1, 0x10] -_08035B74: - movs r4, 0x3F - ands r4, r0 - b _08035B88 -_08035B7A: - ldrh r1, [r1, 0xE] - b _08035B80 -_08035B7E: - ldrh r1, [r1, 0x10] -_08035B80: - movs r0, 0xFC - lsls r0, 4 - ands r0, r1 - lsrs r4, r0, 6 -_08035B88: - movs r2, 0 - movs r6, 0x3 - ldr r0, =0x00006001 - adds r5, r0, 0 - add r3, sp, 0xC -_08035B92: - lsls r1, r2, 1 - adds r0, r6, 0 - lsls r0, r1 - ands r0, r4 - asrs r0, r1 - adds r0, r5 - strh r0, [r3] - adds r3, 0x2 - adds r2, 0x1 - cmp r2, 0x2 - ble _08035B92 - movs r0, 0x3 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - mov r0, r8 - add r1, sp, 0xC - mov r2, r12 - mov r3, r9 - bl CopyToBgTilemapBufferRect_ChangePalette - mov r0, r8 - bl CopyBgTilemapBufferToVram - b _08035C36 - .pool -_08035BCC: - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r0, [r0] - cmp r5, r0 - bne _08035BEC - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldrh r4, [r0, 0xE] - b _08035BF8 - .pool -_08035BEC: - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r4, [r0, 0x10] -_08035BF8: - movs r2, 0 - movs r6, 0x3 - ldr r0, =0x00006001 - adds r5, r0, 0 - add r3, sp, 0xC -_08035C02: - lsls r1, r2, 1 - adds r0, r6, 0 - lsls r0, r1 - ands r0, r4 - asrs r0, r1 - adds r0, r5 - strh r0, [r3] - adds r3, 0x2 - adds r2, 0x1 - cmp r2, 0x5 - ble _08035C02 - movs r0, 0x6 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - mov r0, r8 - add r1, sp, 0xC - mov r2, r12 - mov r3, r9 - bl CopyToBgTilemapBufferRect_ChangePalette - mov r0, r8 - bl CopyBgTilemapBufferToVram -_08035C36: - add sp, 0x18 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8035AE4 - - thumb_func_start sub_8035C4C -sub_8035C4C: @ 8035C4C - push {lr} - ldr r0, =gBattleOutcome - ldrb r2, [r0] - cmp r2, 0x3 - bne _08035C68 - ldr r0, =gText_Draw - movs r1, 0x15 - bl BattleHandleAddTextPrinter - b _08035D68 - .pool -_08035C68: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08035CE2 - cmp r2, 0x1 - bne _08035CAE - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x1 - beq _08035CFC - cmp r0, 0x1 - bgt _08035CA4 - cmp r0, 0 - beq _08035D36 - b _08035D68 - .pool -_08035CA4: - cmp r0, 0x2 - beq _08035D36 - cmp r0, 0x3 - bne _08035D68 - b _08035CFC -_08035CAE: - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x1 - beq _08035D36 - cmp r0, 0x1 - bgt _08035CD8 - cmp r0, 0 - beq _08035CFC - b _08035D68 - .pool -_08035CD8: - cmp r0, 0x2 - beq _08035CFC - cmp r0, 0x3 - bne _08035D68 - b _08035D36 -_08035CE2: - cmp r2, 0x1 - bne _08035D20 - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0 - beq _08035D36 -_08035CFC: - ldr r0, =gText_Win - movs r1, 0x17 - bl BattleHandleAddTextPrinter - ldr r0, =gText_Loss - movs r1, 0x16 - bl BattleHandleAddTextPrinter - b _08035D68 - .pool -_08035D20: - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0 - beq _08035D58 -_08035D36: - ldr r0, =gText_Win - movs r1, 0x16 - bl BattleHandleAddTextPrinter - ldr r0, =gText_Loss - movs r1, 0x17 - bl BattleHandleAddTextPrinter - b _08035D68 - .pool -_08035D58: - ldr r0, =gText_Win - movs r1, 0x17 - bl BattleHandleAddTextPrinter - ldr r0, =gText_Loss - movs r1, 0x16 - bl BattleHandleAddTextPrinter -_08035D68: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8035C4C - - thumb_func_start task00_0800F6FC -task00_0800F6FC: @ 8035D74 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, =gTasks - lsls r0, r7, 2 - mov r8, r0 - adds r0, r7 - lsls r0, 3 - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _08035D96 - b _08035EC4 -_08035D96: - cmp r0, 0x1 - bgt _08035DA4 - cmp r0, 0 - beq _08035DAC - b _08036138 - .pool -_08035DA4: - cmp r0, 0x2 - bne _08035DAA - b _08035F64 -_08035DAA: - b _08036138 -_08035DAC: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08035E44 - movs r5, 0 - movs r6, 0x3 -_08035DBC: - ldr r0, =gLinkPlayers + 8 - adds r1, r5, r0 - subs r0, 0x8 - adds r4, r5, r0 - ldrh r0, [r4, 0x18] - cmp r0, 0x1 - beq _08035DF4 - cmp r0, 0x1 - bgt _08035DDC - cmp r0, 0 - beq _08035DE6 - b _08035E3A - .pool -_08035DDC: - cmp r0, 0x2 - beq _08035E08 - cmp r0, 0x3 - beq _08035E22 - b _08035E3A -_08035DE6: - adds r0, r1, 0 - movs r1, 0x11 - bl BattleHandleAddTextPrinter - ldrb r1, [r4, 0x18] - movs r0, 0x4 - b _08035E14 -_08035DF4: - adds r0, r1, 0 - movs r1, 0x12 - bl BattleHandleAddTextPrinter - ldrb r1, [r4, 0x18] - movs r0, 0x4 - str r0, [sp] - adds r0, r7, 0 - movs r2, 0x2 - b _08035E1A -_08035E08: - adds r0, r1, 0 - movs r1, 0x13 - bl BattleHandleAddTextPrinter - ldrb r1, [r4, 0x18] - movs r0, 0x8 -_08035E14: - str r0, [sp] - adds r0, r7, 0 - movs r2, 0x1 -_08035E1A: - movs r3, 0x2 - bl sub_8035AE4 - b _08035E3A -_08035E22: - adds r0, r1, 0 - movs r1, 0x14 - bl BattleHandleAddTextPrinter - ldrb r1, [r4, 0x18] - movs r0, 0x8 - str r0, [sp] - adds r0, r7, 0 - movs r2, 0x2 - movs r3, 0x2 - bl sub_8035AE4 -_08035E3A: - adds r5, 0x1C - subs r6, 0x1 - cmp r6, 0 - bge _08035DBC - b _08035EA6 -_08035E44: - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r5, [r0] - movs r0, 0x1 - adds r6, r5, 0 - eors r6, r0 - adds r1, r6, 0 - ldr r4, =gLinkPlayers - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x18] - cmp r0, 0 - beq _08035E66 - adds r6, r5, 0 - adds r5, r1, 0 -_08035E66: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r4, 0x8 - adds r1, r0, r4 - adds r0, r1, 0 - movs r1, 0xF - bl BattleHandleAddTextPrinter - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - adds r1, r0, r4 - adds r0, r1, 0 - movs r1, 0x10 - bl BattleHandleAddTextPrinter - movs r4, 0x7 - str r4, [sp] - adds r0, r7, 0 - adds r1, r5, 0 - movs r2, 0x1 - movs r3, 0x2 - bl sub_8035AE4 - str r4, [sp] - adds r0, r7, 0 - adds r1, r6, 0 - movs r2, 0x2 - movs r3, 0x2 - bl sub_8035AE4 -_08035EA6: - ldr r0, =gTasks - mov r2, r8 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _08036138 - .pool -_08035EC4: - ldr r0, =0x00002710 - bl AllocSpritePalette - lsls r0, 24 - ldr r2, =gPlttBufferUnfaded - lsrs r0, 19 - ldr r3, =0x0000021e - adds r0, r3 - adds r2, r0, r2 - ldr r1, =gPlttBufferFaded - adds r0, r1 - ldr r1, =0x00007fff - strh r1, [r0] - strh r1, [r2] - ldr r0, =gUnknown_0831A9D0 - movs r1, 0x6F - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - ldr r4, =gBattleStruct - ldr r1, [r4] - adds r1, 0x7D - strb r0, [r1] - ldr r0, =gUnknown_0831A9E8 - movs r1, 0x81 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - ldr r1, [r4] - adds r1, 0x7E - strb r0, [r1] - ldr r3, =gSprites - ldr r0, [r4] - adds r0, 0x7D - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x7E - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r2 - strb r1, [r0] - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - b _08036138 - .pool -_08035F64: - movs r1, 0x12 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08035FCC - ldr r4, =gBattle_BG1_X - ldrh r0, [r5, 0xA] - bl Sin2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08035F7E - adds r0, 0x1F -_08035F7E: - asrs r1, r0, 5 - movs r2, 0x14 - negs r2, r2 - adds r0, r2, 0 - subs r0, r1 - strh r0, [r4] - ldr r4, =gBattle_BG2_X - ldrh r0, [r5, 0xC] - bl Sin2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08035F9C - adds r0, 0x1F -_08035F9C: - asrs r1, r0, 5 - movs r3, 0x8C - negs r3, r3 - adds r0, r3, 0 - subs r0, r1 - strh r0, [r4] - ldr r0, =gBattle_BG1_Y - ldr r2, =0x0000ffdc - adds r1, r2, 0 - strh r1, [r0] - ldr r0, =gBattle_BG2_Y - strh r1, [r0] - b _08036038 - .pool -_08035FCC: - ldr r4, =gBattle_BG1_X - ldrh r0, [r5, 0xA] - bl Sin2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08035FDE - adds r0, 0x1F -_08035FDE: - asrs r1, r0, 5 - movs r3, 0x14 - negs r3, r3 - adds r0, r3, 0 - subs r0, r1 - strh r0, [r4] - ldr r4, =gBattle_BG1_Y - ldrh r0, [r5, 0xA] - bl Cos2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08035FFC - adds r0, 0x1F -_08035FFC: - asrs r0, 5 - subs r0, 0xA4 - strh r0, [r4] - ldr r4, =gBattle_BG2_X - ldrh r0, [r5, 0xC] - bl Sin2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08036014 - adds r0, 0x1F -_08036014: - asrs r1, r0, 5 - movs r2, 0x8C - negs r2, r2 - adds r0, r2, 0 - subs r0, r1 - strh r0, [r4] - ldr r4, =gBattle_BG2_Y - ldrh r0, [r5, 0xC] - bl Cos2 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _08036032 - adds r0, 0x1F -_08036032: - asrs r0, 5 - subs r0, 0xA4 - strh r0, [r4] -_08036038: - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r1, r0, r1 - ldrh r0, [r1, 0xC] - movs r2, 0xC - ldrsh r3, [r1, r2] - mov r8, r3 - cmp r3, 0 - beq _08036070 - subs r0, 0x2 - strh r0, [r1, 0xC] - ldrh r0, [r1, 0xA] - adds r0, 0x2 - strh r0, [r1, 0xA] - b _08036138 - .pool -_08036070: - movs r3, 0x12 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _0803607C - bl sub_8035C4C -_0803607C: - movs r0, 0x78 - bl PlaySE - adds r0, r7, 0 - bl DestroyTask - ldr r4, =gSprites - ldr r5, =gBattleStruct - ldr r0, [r5] - adds r0, 0x7D - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - adds r1, 0x3E - ldrb r3, [r1] - movs r2, 0x5 - negs r2, r2 - adds r0, r2, 0 - ands r0, r3 - strb r0, [r1] - ldr r0, [r5] - adds r0, 0x7E - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - ands r2, r1 - strb r2, [r0] - ldr r5, [r5] - adds r6, r5, 0 - adds r6, 0x7E - ldrb r0, [r6] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r4 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x40 - ldr r7, =0x000003ff - adds r0, r7, 0 - ands r1, r0 - ldr r0, =0xfffffc00 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - adds r5, 0x7D - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r1, r8 - strh r1, [r0, 0x2E] - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0, 0x2E] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x20] - strh r1, [r0, 0x30] - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x20] - strh r1, [r0, 0x30] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r2, r8 - strh r2, [r0, 0x32] - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r2, [r0, 0x32] -_08036138: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end task00_0800F6FC - - thumb_func_start LoadBattleEntryBackground -LoadBattleEntryBackground: @ 8036154 - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08036208 - ldr r0, =gUnknown_08D778F0 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D77B0C - ldr r1, =0x06010000 - bl LZDecompressVram - ldr r0, =gUnknown_08D77AE4 - movs r1, 0x60 - movs r2, 0x20 - bl LoadCompressedPalette - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0x1 - bl SetBgAttribute - ldr r1, =0x00005c04 - movs r0, 0xA - bl SetGpuReg - ldr r4, =gUnknown_08D779D8 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x48 - movs r1, 0x36 - bl SetGpuReg - movs r0, 0x4A - movs r1, 0x36 - bl SetGpuReg - ldr r0, =gBattle_BG1_Y - ldr r2, =0x0000ff5c - adds r1, r2, 0 - strh r1, [r0] - ldr r0, =gBattle_BG2_Y - strh r1, [r0] - ldr r0, =gUnknown_0831AA00 - bl LoadCompressedObjectPicUsingHeap - b _080363AC - .pool -_08036208: - ldr r0, =0x023f0902 - ands r0, r1 - cmp r0, 0 - beq _0803628C - movs r0, 0x80 - lsls r0, 15 - ands r1, r0 - cmp r1, 0 - beq _08036224 - ldr r0, =gPartnerTrainerId - ldrh r1, [r0] - ldr r0, =0x00000c03 - cmp r1, r0 - bne _08036248 -_08036224: - ldr r0, =gUnknown_08D820D4 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D824E4 - b _08036382 - .pool -_08036248: - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0x2 - bl SetBgAttribute - ldr r1, =gUnknown_08D857A8 - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - ldr r1, =gUnknown_08D85A1C - movs r0, 0x2 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - b _080363AC - .pool -_0803628C: - movs r0, 0x80 - lsls r0, 21 - ands r0, r1 - cmp r0, 0 - beq _080362B0 - ldr r0, =gUnknown_08D81610 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D81E2C - b _08036382 - .pool -_080362B0: - movs r0, 0x80 - lsls r0, 22 - ands r0, r1 - cmp r0, 0 - beq _080362D4 - ldr r0, =gUnknown_08D7F9F8 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D7FEC4 - b _08036382 - .pool -_080362D4: - movs r0, 0x80 - lsls r0, 23 - ands r0, r1 - cmp r0, 0 - beq _080362F8 - ldr r0, =gUnknown_08D82608 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D82C70 - b _08036382 - .pool -_080362F8: - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _08036350 - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x20 - bne _08036334 - ldr r0, =gUnknown_08D820D4 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D824E4 - b _08036382 - .pool -_08036334: - cmp r0, 0x26 - bne _08036350 - ldr r0, =gUnknown_08D820D4 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D824E4 - b _08036382 - .pool -_08036350: - bl sav1_map_get_battletype - lsls r0, 24 - cmp r0, 0 - bne _0803639C - ldr r4, =gBattleTerrainTable - ldr r5, =gBattleTerrain - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06004000 - bl LZDecompressVram - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r4, 0xC - adds r0, r4 - ldr r0, [r0] -_08036382: - ldr r1, =0x0600e000 - bl LZDecompressVram - b _080363AC - .pool -_0803639C: - ldr r0, =gUnknown_08D820D4 - ldr r1, =0x06004000 - bl LZDecompressVram - ldr r0, =gUnknown_08D824E4 - ldr r1, =0x0600e000 - bl LZDecompressVram -_080363AC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end LoadBattleEntryBackground - - thumb_func_start LoadChosenBattleElement -LoadChosenBattleElement: @ 80363C4 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - movs r4, 0 - cmp r0, 0x6 - bls _080363D2 - b _08036756 -_080363D2: - lsls r0, 2 - ldr r1, =_080363E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080363E0: - .4byte _080363FC - .4byte _0803640C - .4byte _08036424 - .4byte _08036434 - .4byte _0803652C - .4byte _08036638 - .4byte _08036750 -_080363FC: - ldr r0, =gUnknown_08C00000 - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - b _08036758 - .pool -_0803640C: - ldr r1, =gUnknown_08C00524 - movs r0, 0 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - movs r0, 0 - bl CopyBgTilemapBufferToVram - b _08036758 - .pool -_08036424: - ldr r0, =gUnknown_08C004E0 - movs r1, 0 - movs r2, 0x40 - bl LoadCompressedPalette - b _08036758 - .pool -_08036434: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x023f0902 - ands r0, r1 - cmp r0, 0 - bne _08036518 - movs r0, 0x80 - lsls r0, 21 - ands r0, r1 - cmp r0, 0 - beq _0803645C - ldr r0, =gUnknown_08D7BB14 - b _0803651A - .pool -_0803645C: - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _0803648C - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x20 - beq _08036518 - cmp r0, 0x26 - bne _0803648C - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_0803648C: - bl sav1_map_get_battletype - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8 - bhi _080364CC - lsls r0, 2 - ldr r1, =_080364A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080364A8: - .4byte _080364CC - .4byte _08036518 - .4byte _080364E8 - .4byte _080364F0 - .4byte _080364F8 - .4byte _08036500 - .4byte _08036508 - .4byte _08036510 - .4byte _08036518 -_080364CC: - ldr r2, =gBattleTerrainTable - ldr r0, =gBattleTerrain - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - b _0803651A - .pool -_080364E8: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_080364F0: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_080364F8: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_08036500: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_08036508: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_08036510: - ldr r0, =gUnknown_08D7CCD8 - b _0803651A - .pool -_08036518: - ldr r0, =gUnknown_08D7C440 -_0803651A: - ldr r1, =0x06008000 - bl LZDecompressVram - b _08036758 - .pool -_0803652C: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x023f0902 - ands r0, r1 - cmp r0, 0 - beq _0803653A - b _08036624 -_0803653A: - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - beq _08036568 - ldr r0, =gGameVersion - ldrb r0, [r0] - cmp r0, 0x2 - bne _08036560 - ldr r0, =gUnknown_08D7C154 - b _08036626 - .pool -_08036560: - ldr r0, =gUnknown_08D7A720 - b _08036626 - .pool -_08036568: - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _08036598 - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x20 - beq _08036624 - cmp r0, 0x26 - bne _08036598 - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_08036598: - bl sav1_map_get_battletype - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8 - bhi _080365D8 - lsls r0, 2 - ldr r1, =_080365B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080365B4: - .4byte _080365D8 - .4byte _08036624 - .4byte _080365F4 - .4byte _080365FC - .4byte _08036604 - .4byte _0803660C - .4byte _08036614 - .4byte _0803661C - .4byte _08036624 -_080365D8: - ldr r2, =gBattleTerrainTable - ldr r0, =gBattleTerrain - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r0, r2 - ldr r0, [r0] - b _08036626 - .pool -_080365F4: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_080365FC: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_08036604: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_0803660C: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_08036614: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_0803661C: - ldr r0, =gUnknown_08D7D2E0 - b _08036626 - .pool -_08036624: - ldr r0, =gUnknown_08D7CA28 -_08036626: - ldr r1, =0x0600d000 - bl LZDecompressVram - b _08036758 - .pool -_08036638: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x023f0902 - ands r0, r1 - cmp r0, 0 - beq _08036646 - b _08036740 -_08036646: - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - beq _08036674 - ldr r0, =gGameVersion - ldrb r0, [r0] - cmp r0, 0x2 - bne _0803666C - ldr r0, =gUnknown_08D7DF30 - b _08036742 - .pool -_0803666C: - ldr r0, =gUnknown_08D7DEF4 - b _08036742 - .pool -_08036674: - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - beq _080366AC - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x20 - bne _080366A0 - ldr r0, =gUnknown_08D7DFC4 - b _08036742 - .pool -_080366A0: - cmp r0, 0x26 - bne _080366AC - ldr r0, =gUnknown_08D7E1F8 - b _08036742 - .pool -_080366AC: - bl sav1_map_get_battletype - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8 - bhi _080366EC - lsls r0, 2 - ldr r1, =_080366C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080366C8: - .4byte _080366EC - .4byte _08036708 - .4byte _08036710 - .4byte _08036718 - .4byte _08036720 - .4byte _08036728 - .4byte _08036730 - .4byte _08036738 - .4byte _08036740 -_080366EC: - ldr r2, =gBattleTerrainTable - ldr r0, =gBattleTerrain - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x10 - adds r0, r2 - ldr r0, [r0] - b _08036742 - .pool -_08036708: - ldr r0, =gUnknown_08D7DF88 - b _08036742 - .pool -_08036710: - ldr r0, =gUnknown_08D7E060 - b _08036742 - .pool -_08036718: - ldr r0, =gUnknown_08D7E000 - b _08036742 - .pool -_08036720: - ldr r0, =gUnknown_08D7E0CC - b _08036742 - .pool -_08036728: - ldr r0, =gUnknown_08D7E11C - b _08036742 - .pool -_08036730: - ldr r0, =gUnknown_08D7E164 - b _08036742 - .pool -_08036738: - ldr r0, =gUnknown_08D7E1A8 - b _08036742 - .pool -_08036740: - ldr r0, =gUnknown_08D7C9EC -_08036742: - movs r1, 0x20 - movs r2, 0x60 - bl LoadCompressedPalette - b _08036758 - .pool -_08036750: - bl ApplyPlayerChosenFrameToBattleMenu - b _08036758 -_08036756: - movs r4, 0x1 -_08036758: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end LoadChosenBattleElement - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/overworld.s b/asm/overworld.s index 7e91b8054..fb3c023b1 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -2856,8 +2856,8 @@ sav1_map_get_name: @ 8085C58 .pool thumb_func_end sav1_map_get_name - thumb_func_start sav1_map_get_battletype -sav1_map_get_battletype: @ 8085C80 + thumb_func_start GetCurrentMapBattleScene +GetCurrentMapBattleScene: @ 8085C80 push {lr} ldr r0, =gSaveBlock1Ptr ldr r1, [r0] @@ -2875,7 +2875,7 @@ sav1_map_get_battletype: @ 8085C80 pop {r1} bx r1 .pool - thumb_func_end sav1_map_get_battletype + thumb_func_end GetCurrentMapBattleScene thumb_func_start overworld_bg_setup @ void overworld_bg_setup() diff --git a/asm/pokeblock_feed.s b/asm/pokeblock_feed.s index aef726c16..08559a8a2 100644 --- a/asm/pokeblock_feed.s +++ b/asm/pokeblock_feed.s @@ -391,7 +391,7 @@ _08179F00: .pool _08179F20: bl reset_temp_tile_data_buffers - ldr r1, =gUnknown_08D7C440 + ldr r1, =gBattleTerrainTiles_Building movs r0, 0 str r0, [sp] movs r0, 0x1 @@ -423,7 +423,7 @@ _08179F5E: b _08179FA0 .pool _08179F78: - ldr r0, =gUnknown_08D7C9EC + ldr r0, =gBattleTerrainPalette_Frontier movs r1, 0x20 movs r2, 0x60 bl LoadCompressedPalette diff --git a/asm/rom_8034C54.s b/asm/rom_8034C54.s new file mode 100644 index 000000000..432b8250e --- /dev/null +++ b/asm/rom_8034C54.s @@ -0,0 +1,1312 @@ + .include "asm/macros.inc" + .include "constants/constants.inc" + + .syntax unified + + .text + + thumb_func_start sub_8034C54 +sub_8034C54: @ 8034C54 + push {r4-r7,lr} + adds r4, r0, 0 + ldr r5, =gUnknown_02022E10 + ldr r0, [r5] + cmp r0, 0 + beq _08034C64 + bl sub_8034CC8 +_08034C64: + movs r0, 0x8 + bl Alloc + str r0, [r5] + cmp r0, 0 + bne _08034C78 + movs r0, 0 + b _08034CC0 + .pool +_08034C78: + lsls r0, r4, 3 + subs r0, r4 + lsls r0, 2 + bl Alloc + ldr r1, [r5] + str r0, [r1, 0x4] + cmp r0, 0 + bne _08034C94 + adds r0, r1, 0 + bl Free + movs r0, 0 + b _08034CC0 +_08034C94: + str r4, [r1] + movs r3, 0 + cmp r3, r4 + bcs _08034CBE + movs r7, 0 + movs r6, 0xFF + movs r2, 0 +_08034CA2: + ldr r0, [r5] + ldr r0, [r0, 0x4] + adds r0, r2, r0 + strb r7, [r0] + ldr r0, [r5] + ldr r1, [r0, 0x4] + adds r1, r2, r1 + ldrb r0, [r1, 0x1] + orrs r0, r6 + strb r0, [r1, 0x1] + adds r2, 0x1C + adds r3, 0x1 + cmp r3, r4 + bcc _08034CA2 +_08034CBE: + movs r0, 0x1 +_08034CC0: + pop {r4-r7} + pop {r1} + bx r1 + thumb_func_end sub_8034C54 + + thumb_func_start sub_8034CC8 +sub_8034CC8: @ 8034CC8 + push {r4,r5,lr} + ldr r2, =gUnknown_02022E10 + ldr r1, [r2] + cmp r1, 0 + beq _08034D08 + ldr r0, [r1, 0x4] + cmp r0, 0 + beq _08034CFC + movs r4, 0 + ldr r0, [r1] + cmp r4, r0 + bcs _08034CF2 + adds r5, r2, 0 +_08034CE2: + adds r0, r4, 0 + bl sub_80353DC + adds r4, 0x1 + ldr r0, [r5] + ldr r0, [r0] + cmp r4, r0 + bcc _08034CE2 +_08034CF2: + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r0, [r0, 0x4] + bl Free +_08034CFC: + ldr r4, =gUnknown_02022E10 + ldr r0, [r4] + bl Free + movs r0, 0 + str r0, [r4] +_08034D08: + pop {r4,r5} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8034CC8 + + thumb_func_start sub_8034D14 +sub_8034D14: @ 8034D14 + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0x8 + mov r8, r0 + mov r10, r1 + adds r5, r2, 0 + ldr r6, =gUnknown_02022E10 + ldr r0, [r6] + cmp r0, 0 + beq _08034DD4 + ldr r1, [r0, 0x4] + mov r0, r8 + lsls r2, r0, 3 + subs r0, r2, r0 + lsls r4, r0, 2 + adds r1, r4, r1 + ldrb r0, [r1] + mov r9, r2 + cmp r0, 0 + bne _08034DD4 + ldrb r0, [r5, 0x1] + bl sub_8035518 + ldr r1, [r6] + ldr r1, [r1, 0x4] + adds r1, r4, r1 + strb r0, [r1, 0x1] + ldr r0, [r6] + ldr r0, [r0, 0x4] + adds r0, r4, r0 + ldrb r0, [r0, 0x1] + cmp r0, 0xFF + beq _08034DD4 + ldr r0, [r5, 0x8] + ldrh r0, [r0, 0x6] + bl GetSpriteTileStartByTag + ldr r2, [r6] + ldr r1, [r2, 0x4] + adds r1, r4, r1 + strh r0, [r1, 0xA] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + ldrh r1, [r0, 0xA] + ldr r7, =0xffff0000 + lsrs r0, r7, 16 + cmp r1, r0 + bne _08034DE0 + ldr r2, [r5, 0x8] + ldrh r0, [r2, 0x4] + adds r1, r2, 0 + cmp r0, 0 + beq _08034D94 + adds r0, r1, 0 + bl LoadSpriteSheet + b _08034DB4 + .pool +_08034D94: + ldr r0, [r2] + ldr r1, [r2, 0x4] + str r0, [sp] + str r1, [sp, 0x4] + ldr r0, [r2] + bl sub_8034974 + lsls r0, 16 + lsrs r0, 16 + ldr r1, [sp, 0x4] + ands r1, r7 + orrs r1, r0 + str r1, [sp, 0x4] + mov r0, sp + bl LoadCompressedObjectPic +_08034DB4: + ldr r1, [r6] + ldr r1, [r1, 0x4] + adds r1, r4, r1 + strh r0, [r1, 0xA] + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r1, [r0, 0x4] + mov r2, r9 + mov r3, r8 + subs r0, r2, r3 + lsls r0, 2 + adds r0, r1 + ldrh r1, [r0, 0xA] + ldr r0, =0x0000ffff + cmp r1, r0 + bne _08034DE0 +_08034DD4: + movs r0, 0 + b _08034EE8 + .pool +_08034DE0: + ldr r0, [r5, 0xC] + ldrh r0, [r0, 0x4] + bl IndexOfSpritePaletteTag + ldr r6, =gUnknown_02022E10 + ldr r1, [r6] + ldr r1, [r1, 0x4] + mov r4, r9 + mov r3, r8 + subs r2, r4, r3 + lsls r4, r2, 2 + adds r1, r4, r1 + strb r0, [r1, 0x4] + ldr r0, [r6] + ldr r0, [r0, 0x4] + adds r0, r4, r0 + ldrb r0, [r0, 0x4] + cmp r0, 0xFF + bne _08034E14 + ldr r0, [r5, 0xC] + bl LoadSpritePalette + ldr r1, [r6] + ldr r1, [r1, 0x4] + adds r1, r4, r1 + strb r0, [r1, 0x4] +_08034E14: + ldr r0, [r6] + ldr r1, [r0, 0x4] + adds r1, r4, r1 + ldrb r0, [r5] + lsls r0, 30 + lsrs r0, 30 + strb r0, [r1, 0x2] + ldr r0, [r6] + ldr r0, [r0, 0x4] + adds r0, r4, r0 + ldrb r1, [r5, 0x1] + strb r1, [r0, 0x3] + ldr r2, [r6] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + ldrh r1, [r5, 0x4] + strh r1, [r0, 0xC] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + ldrh r1, [r5, 0x6] + strh r1, [r0, 0xE] + ldr r1, [r2, 0x4] + adds r1, r4, r1 + ldrb r0, [r5] + lsls r0, 28 + lsrs r0, 30 + strb r0, [r1, 0x6] + ldr r0, [r6] + ldr r1, [r0, 0x4] + adds r1, r4, r1 + ldrb r0, [r5] + lsls r0, 26 + lsrs r0, 30 + strb r0, [r1, 0x5] + ldr r0, [r6] + ldr r1, [r0, 0x4] + adds r1, r4, r1 + ldrb r0, [r5] + lsrs r0, 6 + strb r0, [r1, 0x7] + ldr r0, [r6] + ldr r0, [r0, 0x4] + adds r0, r4, r0 + ldrb r1, [r5, 0x2] + strb r1, [r0, 0x8] + ldrb r1, [r5] + lsls r0, r1, 28 + lsrs r0, 30 + lsls r1, 26 + lsrs r1, 30 + bl sub_80355F8 + ldr r1, [r6] + ldr r1, [r1, 0x4] + adds r1, r4, r1 + strb r0, [r1, 0x9] + ldr r2, [r6] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + ldr r1, [r5, 0x8] + ldrh r1, [r1, 0x6] + strh r1, [r0, 0x10] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + ldr r1, [r5, 0xC] + ldrh r1, [r1, 0x4] + strh r1, [r0, 0x12] + ldr r0, [r2, 0x4] + adds r0, r4, r0 + movs r1, 0x1 + strb r1, [r0] + ldr r0, [r6] + ldr r0, [r0, 0x4] + adds r0, r4, r0 + str r1, [r0, 0x14] + movs r3, 0x1 + ldrb r0, [r5, 0x1] + cmp r3, r0 + bcs _08034ECA +_08034EB2: + ldr r0, [r6] + ldr r2, [r0, 0x4] + adds r2, r4, r2 + ldr r1, [r2, 0x14] + lsls r0, r1, 2 + adds r0, r1 + lsls r0, 1 + str r0, [r2, 0x14] + adds r3, 0x1 + ldrb r2, [r5, 0x1] + cmp r3, r2 + bcc _08034EB2 +_08034ECA: + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + mov r3, r9 + mov r4, r8 + subs r1, r3, r4 + lsls r1, 2 + ldr r0, [r0, 0x4] + adds r0, r1 + bl sub_8034EFC + mov r0, r8 + mov r1, r10 + bl sub_8035044 + movs r0, 0x1 +_08034EE8: + add sp, 0x8 + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r1} + bx r1 + .pool + thumb_func_end sub_8034D14 + + thumb_func_start sub_8034EFC +sub_8034EFC: @ 8034EFC + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0x4 + adds r4, r0, 0 + ldrb r5, [r4, 0x1] + movs r0, 0xC + ldrsh r7, [r4, r0] + ldrb r0, [r4, 0x3] + adds r0, 0x1 + mov r8, r0 + mov r1, sp + movs r0, 0 + strh r0, [r1] + lsls r1, r5, 3 + ldr r2, =gUnknown_030022F8 + mov r9, r2 + add r1, r9 + mov r0, r8 + lsls r2, r0, 2 + movs r0, 0x80 + lsls r0, 17 + orrs r2, r0 + mov r0, sp + bl CpuSet + movs r6, 0 + ldrb r5, [r4, 0x1] + cmp r6, r8 + bcs _08034FCE + movs r1, 0x3F + mov r10, r1 + movs r2, 0xD + negs r2, r2 + mov r9, r2 +_08034F46: + lsls r0, r5, 3 + ldr r1, =gMain + adds r3, r0, r1 + ldrh r1, [r4, 0xE] + adds r0, r3, 0 + adds r0, 0x38 + strb r1, [r0] + ldr r2, =0x000001ff + adds r0, r2, 0 + adds r1, r7, 0 + ands r1, r0 + ldrh r2, [r3, 0x3A] + ldr r0, =0xfffffe00 + ands r0, r2 + orrs r0, r1 + strh r0, [r3, 0x3A] + ldrb r1, [r4, 0x6] + movs r0, 0x39 + adds r0, r3 + mov r12, r0 + lsls r1, 6 + ldrb r2, [r0] + mov r0, r10 + ands r0, r2 + orrs r0, r1 + mov r1, r12 + strb r0, [r1] + ldrb r1, [r4, 0x5] + movs r2, 0x3B + adds r2, r3 + mov r12, r2 + lsls r1, 6 + ldrb r2, [r2] + mov r0, r10 + ands r0, r2 + orrs r0, r1 + mov r1, r12 + strb r0, [r1] + ldrh r0, [r4, 0xA] + ldr r1, =0x000003ff + ands r1, r0 + ldrh r2, [r3, 0x3C] + ldr r0, =0xfffffc00 + ands r0, r2 + orrs r0, r1 + strh r0, [r3, 0x3C] + adds r3, 0x3D + movs r0, 0x3 + ldrb r1, [r4, 0x7] + ands r1, r0 + lsls r1, 2 + ldrb r2, [r3] + mov r0, r9 + ands r0, r2 + orrs r0, r1 + strb r0, [r3] + ldrb r2, [r4, 0x4] + lsls r2, 4 + movs r1, 0xF + ands r0, r1 + orrs r0, r2 + strb r0, [r3] + ldrb r0, [r4, 0x8] + adds r7, r0 + adds r6, 0x1 + adds r5, 0x1 + cmp r6, r8 + bcc _08034F46 +_08034FCE: + subs r5, 0x1 + ldr r0, =gMain + lsls r3, r5, 3 + adds r3, r0 + movs r2, 0xC + ldrsh r1, [r4, r2] + ldrb r0, [r4, 0x8] + subs r1, r0 + ldr r2, =0x000001ff + adds r0, r2, 0 + ands r1, r0 + ldrh r2, [r3, 0x3A] + ldr r0, =0xfffffe00 + ands r0, r2 + orrs r0, r1 + strh r0, [r3, 0x3A] + adds r2, r3, 0 + adds r2, 0x39 + ldrb r1, [r2] + movs r0, 0x4 + negs r0, r0 + ands r0, r1 + movs r1, 0x2 + orrs r0, r1 + strb r0, [r2] + ldrb r0, [r4, 0x9] + lsls r1, r0, 2 + adds r1, r0 + lsls r1, 1 + ldrh r4, [r4, 0xA] + adds r1, r4 + ldr r2, =0x000003ff + adds r0, r2, 0 + ands r1, r0 + ldrh r2, [r3, 0x3C] + ldr r0, =0xfffffc00 + ands r0, r2 + orrs r0, r1 + strh r0, [r3, 0x3C] + add sp, 0x4 + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8034EFC + + thumb_func_start sub_8035044 +sub_8035044: @ 8035044 + push {r4-r6,lr} + adds r3, r0, 0 + adds r4, r1, 0 + ldr r0, =gUnknown_02022E10 + ldr r1, [r0] + adds r6, r0, 0 + cmp r1, 0 + beq _080350A8 + ldr r2, [r1, 0x4] + lsls r1, r3, 3 + subs r0, r1, r3 + lsls r0, 2 + adds r2, r0, r2 + ldrb r0, [r2] + adds r5, r1, 0 + cmp r0, 0 + beq _080350A8 + str r4, [r2, 0x18] + cmp r4, 0 + bge _08035078 + movs r2, 0x1 + negs r4, r4 + b _0803507A + .pool +_08035078: + movs r2, 0 +_0803507A: + ldr r0, [r6] + ldr r1, [r0, 0x4] + subs r0, r5, r3 + lsls r0, 2 + adds r0, r1 + ldrb r3, [r0, 0x2] + cmp r3, 0x1 + beq _0803509A + cmp r3, 0x1 + ble _08035092 + cmp r3, 0x2 + beq _080350A2 +_08035092: + adds r1, r4, 0 + bl sub_80350B0 + b _080350A8 +_0803509A: + adds r1, r4, 0 + bl sub_8035164 + b _080350A8 +_080350A2: + adds r1, r4, 0 + bl sub_80352C0 +_080350A8: + pop {r4-r6} + pop {r0} + bx r0 + thumb_func_end sub_8035044 + + thumb_func_start sub_80350B0 +sub_80350B0: @ 80350B0 + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0x4 + mov r8, r0 + mov r9, r1 + str r2, [sp] + ldr r5, [r0, 0x14] + ldrb r7, [r0, 0x1] + ldr r0, =gMain + mov r10, r0 + cmp r5, 0 + beq _0803511A + lsls r0, r7, 3 + adds r0, 0x3C + mov r1, r10 + adds r6, r0, r1 +_080350D6: + mov r0, r9 + adds r1, r5, 0 + bl __udivsi3 + adds r4, r0, 0 + adds r0, r4, 0 + muls r0, r5 + mov r2, r9 + subs r2, r0 + mov r9, r2 + adds r0, r5, 0 + movs r1, 0xA + bl __udivsi3 + adds r5, r0, 0 + mov r1, r8 + ldrb r0, [r1, 0x9] + adds r1, r4, 0 + muls r1, r0 + mov r2, r8 + ldrh r2, [r2, 0xA] + adds r1, r2 + ldr r2, =0x000003ff + adds r0, r2, 0 + ands r1, r0 + ldrh r0, [r6] + ldr r2, =0xfffffc00 + ands r0, r2 + orrs r0, r1 + strh r0, [r6] + adds r6, 0x8 + adds r7, 0x1 + cmp r5, 0 + bne _080350D6 +_0803511A: + ldr r0, [sp] + cmp r0, 0 + beq _08035140 + lsls r0, r7, 3 + add r0, r10 + adds r0, 0x39 + ldrb r2, [r0] + movs r1, 0x4 + negs r1, r1 + ands r1, r2 + strb r1, [r0] + b _08035154 + .pool +_08035140: + lsls r2, r7, 3 + add r2, r10 + adds r2, 0x39 + ldrb r1, [r2] + movs r0, 0x4 + negs r0, r0 + ands r0, r1 + movs r1, 0x2 + orrs r0, r1 + strb r0, [r2] +_08035154: + add sp, 0x4 + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r0} + bx r0 + thumb_func_end sub_80350B0 + + thumb_func_start sub_8035164 +sub_8035164: @ 8035164 + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0x4 + adds r6, r0, 0 + mov r8, r1 + str r2, [sp] + ldr r5, [r6, 0x14] + ldr r3, =gUnknown_03000DD4 + ldrb r0, [r6, 0x1] + str r0, [r3] + ldr r2, =gUnknown_03000DD8 + movs r0, 0 + str r0, [r2] + ldr r1, =gUnknown_03000DDC + subs r0, 0x1 + str r0, [r1] + adds r7, r3, 0 + mov r10, r1 + ldr r0, =gMain + mov r9, r0 + cmp r5, 0 + beq _0803524C +_08035196: + mov r0, r8 + adds r1, r5, 0 + bl __udivsi3 + adds r4, r0, 0 + adds r0, r4, 0 + muls r0, r5 + mov r1, r8 + subs r1, r0 + mov r8, r1 + adds r0, r5, 0 + movs r1, 0xA + bl __udivsi3 + adds r5, r0, 0 + cmp r4, 0 + bne _080351C8 + mov r2, r10 + ldr r1, [r2] + movs r0, 0x1 + negs r0, r0 + cmp r1, r0 + bne _080351C8 + cmp r5, 0 + bne _08035224 +_080351C8: + ldr r2, [r7] + lsls r2, 3 + add r2, r9 + ldrb r0, [r6, 0x9] + adds r3, r4, 0 + muls r3, r0 + ldrh r4, [r6, 0xA] + adds r3, r4 + ldr r1, =0x000003ff + adds r0, r1, 0 + ands r3, r0 + ldrh r0, [r2, 0x3C] + ldr r4, =0xfffffc00 + adds r1, r4, 0 + ands r0, r1 + orrs r0, r3 + strh r0, [r2, 0x3C] + adds r2, 0x39 + ldrb r0, [r2] + movs r1, 0x4 + negs r1, r1 + ands r0, r1 + strb r0, [r2] + mov r2, r10 + ldr r1, [r2] + movs r0, 0x1 + negs r0, r0 + cmp r1, r0 + bne _0803523A + ldr r4, =gUnknown_03000DD8 + ldr r0, [r4] + str r0, [r2] + b _0803523A + .pool +_08035224: + ldr r0, [r7] + lsls r0, 3 + add r0, r9 + adds r0, 0x39 + ldrb r1, [r0] + movs r2, 0x4 + negs r2, r2 + ands r1, r2 + movs r2, 0x2 + orrs r1, r2 + strb r1, [r0] +_0803523A: + ldr r0, [r7] + adds r0, 0x1 + str r0, [r7] + ldr r4, =gUnknown_03000DD8 + ldr r0, [r4] + adds r0, 0x1 + str r0, [r4] + cmp r5, 0 + bne _08035196 +_0803524C: + ldr r0, [sp] + cmp r0, 0 + beq _08035298 + ldr r1, [r7] + lsls r1, 3 + add r1, r9 + adds r1, 0x39 + ldrb r2, [r1] + movs r0, 0x4 + negs r0, r0 + ands r0, r2 + strb r0, [r1] + ldr r3, [r7] + lsls r3, 3 + add r3, r9 + movs r1, 0xC + ldrsh r2, [r6, r1] + mov r4, r10 + ldr r0, [r4] + subs r0, 0x1 + ldrb r1, [r6, 0x8] + muls r0, r1 + adds r2, r0 + ldr r1, =0x000001ff + adds r0, r1, 0 + ands r2, r0 + ldrh r1, [r3, 0x3A] + ldr r0, =0xfffffe00 + ands r0, r1 + orrs r0, r2 + strh r0, [r3, 0x3A] + b _080352AE + .pool +_08035298: + ldr r0, [r7] + lsls r0, 3 + add r0, r9 + adds r0, 0x39 + ldrb r2, [r0] + movs r1, 0x4 + negs r1, r1 + ands r1, r2 + movs r2, 0x2 + orrs r1, r2 + strb r1, [r0] +_080352AE: + add sp, 0x4 + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r0} + bx r0 + thumb_func_end sub_8035164 + + thumb_func_start sub_80352C0 +sub_80352C0: @ 80352C0 + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0xC + mov r8, r0 + mov r10, r1 + str r2, [sp] + ldr r5, [r0, 0x14] + ldrb r3, [r0, 0x1] + movs r0, 0 + str r0, [sp, 0x4] + mov r9, r0 + cmp r5, 0 + beq _0803535A +_080352E0: + lsls r0, r3, 3 + adds r1, r0, 0 + adds r1, 0x39 + ldr r2, =gMain + adds r7, r1, r2 + adds r0, 0x3C + adds r6, r0, r2 +_080352EE: + mov r0, r10 + adds r1, r5, 0 + str r3, [sp, 0x8] + bl __udivsi3 + adds r4, r0, 0 + adds r0, r4, 0 + muls r0, r5 + mov r1, r10 + subs r1, r0 + mov r10, r1 + adds r0, r5, 0 + movs r1, 0xA + bl __udivsi3 + adds r5, r0, 0 + ldr r3, [sp, 0x8] + cmp r4, 0 + bne _0803531E + ldr r2, [sp, 0x4] + cmp r2, 0 + bne _0803531E + cmp r5, 0 + bne _080352E0 +_0803531E: + movs r0, 0x1 + str r0, [sp, 0x4] + mov r1, r8 + ldrb r0, [r1, 0x9] + adds r2, r4, 0 + muls r2, r0 + ldrh r4, [r1, 0xA] + adds r2, r4 + ldr r1, =0x000003ff + adds r0, r1, 0 + ands r2, r0 + ldrh r0, [r6] + ldr r4, =0xfffffc00 + adds r1, r4, 0 + ands r0, r1 + orrs r0, r2 + strh r0, [r6] + ldrb r0, [r7] + movs r2, 0x4 + negs r2, r2 + adds r1, r2, 0 + ands r0, r1 + strb r0, [r7] + adds r7, 0x8 + adds r6, 0x8 + adds r3, 0x1 + movs r4, 0x1 + add r9, r4 + cmp r5, 0 + bne _080352EE +_0803535A: + mov r0, r8 + ldrb r0, [r0, 0x3] + cmp r9, r0 + bge _0803538A + ldr r1, =gMain + movs r5, 0x4 + negs r5, r5 + movs r4, 0x2 + lsls r0, r3, 3 + adds r0, 0x39 + adds r2, r0, r1 +_08035370: + ldrb r1, [r2] + adds r0, r5, 0 + ands r0, r1 + orrs r0, r4 + strb r0, [r2] + adds r2, 0x8 + adds r3, 0x1 + movs r1, 0x1 + add r9, r1 + mov r0, r8 + ldrb r0, [r0, 0x3] + cmp r9, r0 + blt _08035370 +_0803538A: + ldr r1, [sp] + cmp r1, 0 + beq _080353B0 + lsls r0, r3, 3 + ldr r2, =gMain + adds r0, r2 + adds r0, 0x39 + ldrb r2, [r0] + movs r1, 0x4 + negs r1, r1 + ands r1, r2 + strb r1, [r0] + b _080353C6 + .pool +_080353B0: + lsls r2, r3, 3 + ldr r4, =gMain + adds r2, r4 + adds r2, 0x39 + ldrb r1, [r2] + movs r0, 0x4 + negs r0, r0 + ands r0, r1 + movs r1, 0x2 + orrs r0, r1 + strb r0, [r2] +_080353C6: + add sp, 0xC + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r0} + bx r0 + .pool + thumb_func_end sub_80352C0 + + thumb_func_start sub_80353DC +sub_80353DC: @ 80353DC + push {r4-r7,lr} + adds r4, r0, 0 + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + cmp r0, 0 + beq _0803546E + ldr r2, [r0, 0x4] + lsls r1, r4, 3 + subs r0, r1, r4 + lsls r0, 2 + adds r2, r0, r2 + ldrb r0, [r2] + adds r5, r1, 0 + cmp r0, 0 + beq _0803546E + ldrb r3, [r2, 0x3] + adds r0, r3, 0x1 + ldrb r2, [r2, 0x1] + cmp r0, 0 + beq _08035426 + ldr r1, =gMain + movs r7, 0x4 + negs r7, r7 + movs r6, 0x2 + adds r3, r0, 0 + lsls r0, r2, 3 + adds r0, 0x39 + adds r2, r0, r1 +_08035414: + ldrb r1, [r2] + adds r0, r7, 0 + ands r0, r1 + orrs r0, r6 + strb r0, [r2] + subs r3, 0x1 + adds r2, 0x8 + cmp r3, 0 + bne _08035414 +_08035426: + adds r0, r4, 0 + bl sub_8035570 + cmp r0, 0 + bne _08035442 + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r1, [r0, 0x4] + subs r0, r5, r4 + lsls r0, 2 + adds r0, r1 + ldrh r0, [r0, 0x10] + bl FreeSpriteTilesByTag +_08035442: + adds r0, r4, 0 + bl sub_80355B4 + cmp r0, 0 + bne _0803545E + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r1, [r0, 0x4] + subs r0, r5, r4 + lsls r0, 2 + adds r0, r1 + ldrh r0, [r0, 0x12] + bl FreeSpritePaletteByTag +_0803545E: + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r1, [r0, 0x4] + subs r0, r5, r4 + lsls r0, 2 + adds r0, r1 + movs r1, 0 + strb r1, [r0] +_0803546E: + pop {r4-r7} + pop {r0} + bx r0 + .pool + thumb_func_end sub_80353DC + + thumb_func_start sub_803547C +sub_803547C: @ 803547C + push {r4-r7,lr} + adds r4, r0, 0 + adds r5, r1, 0 + ldr r0, =gUnknown_02022E10 + ldr r1, [r0] + adds r7, r0, 0 + cmp r1, 0 + beq _0803550C + ldr r2, [r1, 0x4] + lsls r1, r4, 3 + subs r0, r1, r4 + lsls r0, 2 + adds r2, r0, r2 + ldrb r0, [r2] + adds r6, r1, 0 + cmp r0, 0 + beq _0803550C + ldrb r3, [r2, 0x3] + adds r1, r3, 0x1 + ldrb r0, [r2, 0x1] + cmp r5, 0 + beq _080354D8 + cmp r1, 0 + beq _0803550C + ldr r1, =gMain + movs r5, 0x4 + negs r5, r5 + movs r4, 0x2 + adds r3, 0x1 + lsls r0, 3 + adds r0, 0x39 + adds r2, r0, r1 +_080354BC: + ldrb r1, [r2] + adds r0, r5, 0 + ands r0, r1 + orrs r0, r4 + strb r0, [r2] + subs r3, 0x1 + adds r2, 0x8 + cmp r3, 0 + bne _080354BC + b _0803550C + .pool +_080354D8: + cmp r1, 0 + beq _080354FA + ldr r1, =gMain + movs r5, 0x4 + negs r5, r5 + adds r3, 0x1 + lsls r0, 3 + adds r0, 0x39 + adds r2, r0, r1 +_080354EA: + ldrb r1, [r2] + adds r0, r5, 0 + ands r0, r1 + strb r0, [r2] + subs r3, 0x1 + adds r2, 0x8 + cmp r3, 0 + bne _080354EA +_080354FA: + ldr r0, [r7] + ldr r1, [r0, 0x4] + subs r0, r6, r4 + lsls r0, 2 + adds r0, r1 + ldr r1, [r0, 0x18] + adds r0, r4, 0 + bl sub_8035044 +_0803550C: + pop {r4-r7} + pop {r0} + bx r0 + .pool + thumb_func_end sub_803547C + + thumb_func_start sub_8035518 +sub_8035518: @ 8035518 + push {r4,r5,lr} + lsls r0, 24 + lsrs r4, r0, 24 + movs r5, 0x40 + movs r3, 0 + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r2, [r0] + cmp r3, r2 + bcs _0803555A + ldr r1, [r0, 0x4] +_0803552E: + ldrb r0, [r1] + cmp r0, 0 + bne _08035548 + ldrb r0, [r1, 0x1] + cmp r0, 0xFF + beq _08035552 + ldrb r0, [r1, 0x3] + cmp r0, r4 + bhi _08035552 + ldrb r0, [r1, 0x1] + b _0803556A + .pool +_08035548: + adds r0, r5, 0x1 + ldrb r5, [r1, 0x3] + adds r0, r5 + lsls r0, 16 + lsrs r5, r0, 16 +_08035552: + adds r1, 0x1C + adds r3, 0x1 + cmp r3, r2 + bcc _0803552E +_0803555A: + adds r0, r5, r4 + adds r0, 0x1 + cmp r0, 0x80 + bgt _08035568 + lsls r0, r5, 24 + lsrs r0, 24 + b _0803556A +_08035568: + movs r0, 0xFF +_0803556A: + pop {r4,r5} + pop {r1} + bx r1 + thumb_func_end sub_8035518 + + thumb_func_start sub_8035570 +sub_8035570: @ 8035570 + push {r4-r6,lr} + adds r3, r0, 0 + movs r2, 0 + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r4, [r0] + cmp r2, r4 + bcs _080355AC + ldr r1, [r0, 0x4] + lsls r0, r3, 3 + subs r0, r3 + lsls r0, 2 + adds r5, r0, r1 +_0803558A: + ldrb r0, [r1] + cmp r0, 0 + beq _080355A4 + cmp r2, r3 + beq _080355A4 + ldrh r0, [r1, 0x10] + ldrh r6, [r5, 0x10] + cmp r0, r6 + bne _080355A4 + movs r0, 0x1 + b _080355AE + .pool +_080355A4: + adds r1, 0x1C + adds r2, 0x1 + cmp r2, r4 + bcc _0803558A +_080355AC: + movs r0, 0 +_080355AE: + pop {r4-r6} + pop {r1} + bx r1 + thumb_func_end sub_8035570 + + thumb_func_start sub_80355B4 +sub_80355B4: @ 80355B4 + push {r4-r6,lr} + adds r3, r0, 0 + movs r2, 0 + ldr r0, =gUnknown_02022E10 + ldr r0, [r0] + ldr r4, [r0] + cmp r2, r4 + bcs _080355F0 + ldr r1, [r0, 0x4] + lsls r0, r3, 3 + subs r0, r3 + lsls r0, 2 + adds r5, r0, r1 +_080355CE: + ldrb r0, [r1] + cmp r0, 0 + beq _080355E8 + cmp r2, r3 + beq _080355E8 + ldrh r0, [r1, 0x12] + ldrh r6, [r5, 0x12] + cmp r0, r6 + bne _080355E8 + movs r0, 0x1 + b _080355F2 + .pool +_080355E8: + adds r1, 0x1C + adds r2, 0x1 + cmp r2, r4 + bcc _080355CE +_080355F0: + movs r0, 0 +_080355F2: + pop {r4-r6} + pop {r1} + bx r1 + thumb_func_end sub_80355B4 + + thumb_func_start sub_80355F8 +sub_80355F8: @ 80355F8 + ldr r2, =gUnknown_082FF1C8 + lsls r0, 2 + adds r1, r0 + adds r1, r2 + ldrb r0, [r1] + bx lr + .pool + thumb_func_end sub_80355F8 + + thumb_func_start sub_8035608 +sub_8035608: @ 8035608 + push {lr} + bl ResetSpriteData + ldr r0, =gUnknown_0831AC88 + movs r1, 0 + movs r2, 0 + movs r3, 0 + bl CreateSprite + lsls r0, 24 + lsrs r0, 24 + ldr r2, =gSprites + lsls r1, r0, 4 + adds r1, r0 + lsls r1, 2 + adds r1, r2 + adds r1, 0x3E + ldrb r0, [r1] + movs r2, 0x4 + orrs r0, r2 + strb r0, [r1] + ldr r0, =sub_8035648 + bl SetMainCallback2 + pop {r0} + bx r0 + .pool + thumb_func_end sub_8035608 + + thumb_func_start sub_8035648 +sub_8035648: @ 8035648 + push {lr} + bl AnimateSprites + bl BuildOamBuffer + pop {r0} + bx r0 + thumb_func_end sub_8035648 + + .align 2, 0 @ Don't pad with nop. diff --git a/asm/trade.s b/asm/trade.s index 10daff6b9..f576be122 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -7602,7 +7602,7 @@ sub_807B170: @ 807B170 movs r0, 0x3 bl SetBgTilemapBuffer bl DeactivateAllTextPrinters - ldr r0, =gUnknown_08C00000 + ldr r0, =gBattleTextboxTiles mov r10, r0 movs r0, 0 mov r9, r0 @@ -7611,7 +7611,7 @@ sub_807B170: @ 807B170 movs r2, 0 movs r3, 0 bl copy_decompressed_tile_data_to_vram_autofree - ldr r0, =gUnknown_08C00524 + ldr r0, =gBattleTextboxTilemap mov r8, r0 ldr r4, =0x0201c000 adds r1, r4, 0 @@ -7621,7 +7621,7 @@ sub_807B170: @ 807B170 adds r2, r5, 0 movs r3, 0 bl CopyToBgTilemapBuffer - ldr r6, =gUnknown_08C004E0 + ldr r6, =gBattleTextboxPalette adds r0, r6, 0 movs r1, 0 movs r2, 0x20 diff --git a/data/data2b.s b/data/data2b.s index 6051b86cc..74e13cc7f 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -4750,74 +4750,74 @@ gUnknown_0831ABA0:: @ 831ABA0 .align 2 gBattleTerrainTable:: @ 831ABA8 @ tall_grass - .4byte gUnknown_08D77D68 - .4byte gUnknown_08D78350 - .4byte gUnknown_08D7E280 - .4byte gUnknown_08D7E808 - .4byte gUnknown_08D78318 + .4byte gBattleTerrainTiles_TallGrass + .4byte gBattleTerrainTilemap_TallGrass + .4byte gBattleTerrainAnimTiles_TallGrass + .4byte gBattleTerrainAnimTilemap_TallGrass + .4byte gBattleTerrainPalette_TallGrass @ long_grass - .4byte gUnknown_08D78600 - .4byte gUnknown_08D78CB8 - .4byte gUnknown_08D7E9C4 - .4byte gUnknown_08D7F0D4 - .4byte gUnknown_08D78C78 + .4byte gBattleTerrainTiles_LongGrass + .4byte gBattleTerrainTilemap_LongGrass + .4byte gBattleTerrainAnimTiles_LongGrass + .4byte gBattleTerrainAnimTilemap_LongGrass + .4byte gBattleTerrainPalette_LongGrass @ sand - .4byte gUnknown_08D78F68 - .4byte gUnknown_08D795A8 - .4byte gUnknown_08D7F30C - .4byte gUnknown_08D7F850 - .4byte gUnknown_08D79560 + .4byte gBattleTerrainTiles_Sand + .4byte gBattleTerrainTilemap_Sand + .4byte gBattleTerrainAnimTiles_Sand + .4byte gBattleTerrainAnimTilemap_Sand + .4byte gBattleTerrainPalette_Sand @ underwater - .4byte gUnknown_08D79858 - .4byte gUnknown_08D79E58 - .4byte gUnknown_08D7F9F8 - .4byte gUnknown_08D7FEC4 - .4byte gUnknown_08D79E10 + .4byte gBattleTerrainTiles_Underwater + .4byte gBattleTerrainTilemap_Underwater + .4byte gBattleTerrainAnimTiles_Underwater + .4byte gBattleTerrainAnimTilemap_Underwater + .4byte gBattleTerrainPalette_Underwater @ water - .4byte gUnknown_08D7A108 - .4byte gUnknown_08D7A720 - .4byte gUnknown_08D80054 - .4byte gUnknown_08D80660 - .4byte gUnknown_08D7A6DC + .4byte gBattleTerrainTiles_Water + .4byte gBattleTerrainTilemap_Water + .4byte gBattleTerrainAnimTiles_Water + .4byte gBattleTerrainAnimTilemap_Water + .4byte gBattleTerrainPalette_Water @ pond_water - .4byte gUnknown_08D7A9D0 - .4byte gUnknown_08D7AFB8 - .4byte gUnknown_08D80804 - .4byte gUnknown_08D80D50 - .4byte gUnknown_08D7AF78 + .4byte gBattleTerrainTiles_PondWater + .4byte gBattleTerrainTilemap_PondWater + .4byte gBattleTerrainAnimTiles_PondWater + .4byte gBattleTerrainAnimTilemap_PondWater + .4byte gBattleTerrainPalette_PondWater @ rock - .4byte gUnknown_08D7B268 - .4byte gUnknown_08D7B864 - .4byte gUnknown_08D80E9C - .4byte gUnknown_08D8147C - .4byte gUnknown_08D7B828 + .4byte gBattleTerrainTiles_Rock + .4byte gBattleTerrainTilemap_Rock + .4byte gBattleTerrainAnimTiles_Rock + .4byte gBattleTerrainAnimTilemap_Rock + .4byte gBattleTerrainPalette_Rock @ cave - .4byte gUnknown_08D7BB14 - .4byte gUnknown_08D7C154 - .4byte gUnknown_08D81610 - .4byte gUnknown_08D81E2C - .4byte gUnknown_08D7C10C + .4byte gBattleTerrainTiles_Cave + .4byte gBattleTerrainTilemap_Cave + .4byte gBattleTerrainAnimTiles_Cave + .4byte gBattleTerrainAnimTilemap_Cave + .4byte gBattleTerrainPalette_Cave @ building - .4byte gUnknown_08D7C440 - .4byte gUnknown_08D7CA28 - .4byte gUnknown_08D820D4 - .4byte gUnknown_08D824E4 - .4byte gUnknown_08D7DEB4 + .4byte gBattleTerrainTiles_Building + .4byte gBattleTerrainTilemap_Building + .4byte gBattleTerrainAnimTiles_Building + .4byte gBattleTerrainAnimTilemap_Building + .4byte gBattleTerrainPalette_Building @ plain - .4byte gUnknown_08D7C440 - .4byte gUnknown_08D7CA28 - .4byte gUnknown_08D820D4 - .4byte gUnknown_08D824E4 - .4byte gUnknown_08D7C404 + .4byte gBattleTerrainTiles_Building + .4byte gBattleTerrainTilemap_Building + .4byte gBattleTerrainAnimTiles_Building + .4byte gBattleTerrainAnimTilemap_Building + .4byte gBattleTerrainPalette_Plain .align 2 gUnknown_0831AC70:: @ 831AC70 diff --git a/data/graphics.s b/data/graphics.s index 06c4b9e18..f00846794 100644 --- a/data/graphics.s +++ b/data/graphics.s @@ -1,12 +1,12 @@ .section gfx_data, "aw", %progbits -gUnknown_08C00000:: @ 8C00000 +gBattleTextboxTiles:: @ 8C00000 .incbin "baserom.gba", 0xc00000, 0x4e0 -gUnknown_08C004E0:: @ 8C004E0 +gBattleTextboxPalette:: @ 8C004E0 .incbin "baserom.gba", 0xc004e0, 0x44 -gUnknown_08C00524:: @ 8C00524 +gBattleTextboxTilemap:: @ 8C00524 .incbin "baserom.gba", 0xc00524, 0x22c @ 8C00750 @@ -352,199 +352,199 @@ gUnknown_08D77AE4:: @ 8D77AE4 gUnknown_08D77B0C:: @ 8D77B0C .incbin "baserom.gba", 0xd77b0c, 0x25c -gUnknown_08D77D68:: @ 8D77D68 +gBattleTerrainTiles_TallGrass:: @ 8D77D68 .incbin "baserom.gba", 0xd77d68, 0x5b0 -gUnknown_08D78318:: @ 8D78318 +gBattleTerrainPalette_TallGrass:: @ 8D78318 .incbin "baserom.gba", 0xd78318, 0x38 -gUnknown_08D78350:: @ 8D78350 +gBattleTerrainTilemap_TallGrass:: @ 8D78350 .incbin "baserom.gba", 0xd78350, 0x2b0 -gUnknown_08D78600:: @ 8D78600 +gBattleTerrainTiles_LongGrass:: @ 8D78600 .incbin "baserom.gba", 0xd78600, 0x678 -gUnknown_08D78C78:: @ 8D78C78 +gBattleTerrainPalette_LongGrass:: @ 8D78C78 .incbin "baserom.gba", 0xd78C78, 0x40 -gUnknown_08D78CB8:: @ 8D78CB8 +gBattleTerrainTilemap_LongGrass:: @ 8D78CB8 .incbin "baserom.gba", 0xd78CB8, 0x2b0 -gUnknown_08D78F68:: @ 8D78F68 +gBattleTerrainTiles_Sand:: @ 8D78F68 .incbin "baserom.gba", 0xd78f68, 0x5f8 -gUnknown_08D79560:: @ 8D79560 +gBattleTerrainPalette_Sand:: @ 8D79560 .incbin "baserom.gba", 0xd79560, 0x48 -gUnknown_08D795A8:: @ 8D795A8 +gBattleTerrainTilemap_Sand:: @ 8D795A8 .incbin "baserom.gba", 0xd795A8, 0x2b0 -gUnknown_08D79858:: @ 8D79858 +gBattleTerrainTiles_Underwater:: @ 8D79858 .incbin "baserom.gba", 0xd79858, 0x5b8 -gUnknown_08D79E10:: @ 8D79E10 +gBattleTerrainPalette_Underwater:: @ 8D79E10 .incbin "baserom.gba", 0xd79E10, 0x48 -gUnknown_08D79E58:: @ 8D79E58 +gBattleTerrainTilemap_Underwater:: @ 8D79E58 .incbin "baserom.gba", 0xd79e58, 0x2b0 -gUnknown_08D7A108:: @ 8D7A108 +gBattleTerrainTiles_Water:: @ 8D7A108 .incbin "baserom.gba", 0xd7a108, 0x5d4 -gUnknown_08D7A6DC:: @ 8D7A6DC +gBattleTerrainPalette_Water:: @ 8D7A6DC .incbin "baserom.gba", 0xd7a6DC, 0x44 -gUnknown_08D7A720:: @ 8D7A720 +gBattleTerrainTilemap_Water:: @ 8D7A720 .incbin "baserom.gba", 0xd7a720, 0x2b0 -gUnknown_08D7A9D0:: @ 8D7A9D0 +gBattleTerrainTiles_PondWater:: @ 8D7A9D0 .incbin "baserom.gba", 0xd7a9D0, 0x5a8 -gUnknown_08D7AF78:: @ 8D7AF78 +gBattleTerrainPalette_PondWater:: @ 8D7AF78 .incbin "baserom.gba", 0xd7af78, 0x40 -gUnknown_08D7AFB8:: @ 8D7AFB8 +gBattleTerrainTilemap_PondWater:: @ 8D7AFB8 .incbin "baserom.gba", 0xd7aFB8, 0x2b0 -gUnknown_08D7B268:: @ 8D7B268 +gBattleTerrainTiles_Rock:: @ 8D7B268 .incbin "baserom.gba", 0xd7b268, 0x5c0 -gUnknown_08D7B828:: @ 8D7B828 +gBattleTerrainPalette_Rock:: @ 8D7B828 .incbin "baserom.gba", 0xd7b828, 0x3c -gUnknown_08D7B864:: @ 8D7B864 +gBattleTerrainTilemap_Rock:: @ 8D7B864 .incbin "baserom.gba", 0xd7b864, 0x2b0 -gUnknown_08D7BB14:: @ 8D7BB14 +gBattleTerrainTiles_Cave:: @ 8D7BB14 .incbin "baserom.gba", 0xd7bb14, 0x5f8 -gUnknown_08D7C10C:: @ 8D7C10C +gBattleTerrainPalette_Cave:: @ 8D7C10C .incbin "baserom.gba", 0xd7c10c, 0x48 -gUnknown_08D7C154:: @ 8D7C154 +gBattleTerrainTilemap_Cave:: @ 8D7C154 .incbin "baserom.gba", 0xd7c154, 0x2b0 -gUnknown_08D7C404:: @ 8D7C404 +gBattleTerrainPalette_Plain:: @ 8D7C404 .incbin "baserom.gba", 0xd7c404, 0x3c -gUnknown_08D7C440:: @ 8D7C440 +gBattleTerrainTiles_Building:: @ 8D7C440 .incbin "baserom.gba", 0xd7c440, 0x5ac -gUnknown_08D7C9EC:: @ 8D7C9EC +gBattleTerrainPalette_Frontier:: @ 8D7C9EC .incbin "baserom.gba", 0xd7c9ec, 0x3c -gUnknown_08D7CA28:: @ 8D7CA28 +gBattleTerrainTilemap_Building:: @ 8D7CA28 .incbin "baserom.gba", 0xd7ca28, 0x2b0 -gUnknown_08D7CCD8:: @ 8D7CCD8 +gBattleTerrainTiles_Stadium:: @ 8D7CCD8 .incbin "baserom.gba", 0xd7ccd8, 0x608 -gUnknown_08D7D2E0:: @ 8D7D2E0 +gBattleTerrainTilemap_Stadium:: @ 8D7D2E0 .incbin "baserom.gba", 0xd7d2e0, 0x2b0 -gUnknown_08D7D590:: @ 8D7D590 +gBattleTerrainTiles_Rayquaza:: @ 8D7D590 .incbin "baserom.gba", 0xd7d590, 0x674 -gUnknown_08D7DC04:: @ 8D7DC04 +gBattleTerrainTilemap_Rayquaza:: @ 8D7DC04 .incbin "baserom.gba", 0xd7dc04, 0x2b0 -gUnknown_08D7DEB4:: @ 8D7DEB4 +gBattleTerrainPalette_Building:: @ 8D7DEB4 .incbin "baserom.gba", 0xd7deb4, 0x40 -gUnknown_08D7DEF4:: @ 8D7DEF4 +gBattleTerrainPalette_Kyogre:: @ 8D7DEF4 .incbin "baserom.gba", 0xd7def4, 0x3c -gUnknown_08D7DF30:: @ 8D7DF30 +gBattleTerrainPalette_Groudon:: @ 8D7DF30 .incbin "baserom.gba", 0xd7df30, 0x58 -gUnknown_08D7DF88:: @ 8D7DF88 +gBattleTerrainPalette_BuildingGym:: @ 8D7DF88 .incbin "baserom.gba", 0xd7df88, 0x3c -gUnknown_08D7DFC4:: @ 8D7DFC4 +gBattleTerrainPalette_BuildingLeader:: @ 8D7DFC4 .incbin "baserom.gba", 0xd7dfc4, 0x3c -gUnknown_08D7E000:: @ 8D7E000 +gBattleTerrainPalette_StadiumAqua:: @ 8D7E000 .incbin "baserom.gba", 0xd7e000, 0x60 -gUnknown_08D7E060:: @ 8D7E060 +gBattleTerrainPalette_StadiumMagma:: @ 8D7E060 .incbin "baserom.gba", 0xd7e060, 0x6c -gUnknown_08D7E0CC:: @ 8D7E0CC +gBattleTerrainPalette_StadiumSidney:: @ 8D7E0CC .incbin "baserom.gba", 0xd7e0cc, 0x50 -gUnknown_08D7E11C:: @ 8D7E11C +gBattleTerrainPalette_StadiumPhoebe:: @ 8D7E11C .incbin "baserom.gba", 0xd7e11c, 0x48 -gUnknown_08D7E164:: @ 8D7E164 +gBattleTerrainPalette_StadiumGlacia:: @ 8D7E164 .incbin "baserom.gba", 0xd7e164, 0x44 -gUnknown_08D7E1A8:: @ 8D7E1A8 +gBattleTerrainPalette_StadiumDrake:: @ 8D7E1A8 .incbin "baserom.gba", 0xd7e1a8, 0x50 -gUnknown_08D7E1F8:: @ 8D7E1F8 +gBattleTerrainPalette_StadiumWallace:: @ 8D7E1F8 .incbin "baserom.gba", 0xd7e1f8, 0x3c -gUnknown_08D7E234:: @ 8D7E234 +gBattleTerrainPalette_Rayquaza:: @ 8D7E234 .incbin "baserom.gba", 0xd7e234, 0x4c -gUnknown_08D7E280:: @ 8D7E280 +gBattleTerrainAnimTiles_TallGrass:: @ 8D7E280 .incbin "baserom.gba", 0xd7e280, 0x588 -gUnknown_08D7E808:: @ 8D7E808 +gBattleTerrainAnimTilemap_TallGrass:: @ 8D7E808 .incbin "baserom.gba", 0xd7e808, 0x1bc -gUnknown_08D7E9C4:: @ 8D7E9C4 +gBattleTerrainAnimTiles_LongGrass:: @ 8D7E9C4 .incbin "baserom.gba", 0xd7e9C4, 0x710 -gUnknown_08D7F0D4:: @ 8D7F0D4 +gBattleTerrainAnimTilemap_LongGrass:: @ 8D7F0D4 .incbin "baserom.gba", 0xd7F0D4, 0x238 -gUnknown_08D7F30C:: @ 8D7F30C +gBattleTerrainAnimTiles_Sand:: @ 8D7F30C .incbin "baserom.gba", 0xd7F30c, 0x544 -gUnknown_08D7F850:: @ 8D7F850 +gBattleTerrainAnimTilemap_Sand:: @ 8D7F850 .incbin "baserom.gba", 0xd7F850, 0x1a8 -gUnknown_08D7F9F8:: @ 8D7F9F8 +gBattleTerrainAnimTiles_Underwater:: @ 8D7F9F8 .incbin "baserom.gba", 0xd7f9f8, 0x4cc -gUnknown_08D7FEC4:: @ 8D7FEC4 +gBattleTerrainAnimTilemap_Underwater:: @ 8D7FEC4 .incbin "baserom.gba", 0xd7fec4, 0x190 -gUnknown_08D80054:: @ 8D80054 +gBattleTerrainAnimTiles_Water:: @ 8D80054 .incbin "baserom.gba", 0xd80054, 0x60c -gUnknown_08D80660:: @ 8D80660 +gBattleTerrainAnimTilemap_Water:: @ 8D80660 .incbin "baserom.gba", 0xd80660, 0x1a4 -gUnknown_08D80804:: @ 8D80804 +gBattleTerrainAnimTiles_PondWater:: @ 8D80804 .incbin "baserom.gba", 0xd80804, 0x54c -gUnknown_08D80D50:: @ 8D80D50 +gBattleTerrainAnimTilemap_PondWater:: @ 8D80D50 .incbin "baserom.gba", 0xd80d50, 0x14C -gUnknown_08D80E9C:: @ 8D80E9C +gBattleTerrainAnimTiles_Rock:: @ 8D80E9C .incbin "baserom.gba", 0xd80e9c, 0x5e0 -gUnknown_08D8147C:: @ 8D8147C +gBattleTerrainAnimTilemap_Rock:: @ 8D8147C .incbin "baserom.gba", 0xd8147C, 0x194 -gUnknown_08D81610:: @ 8D81610 +gBattleTerrainAnimTiles_Cave:: @ 8D81610 .incbin "baserom.gba", 0xd81610, 0x81c -gUnknown_08D81E2C:: @ 8D81E2C +gBattleTerrainAnimTilemap_Cave:: @ 8D81E2C .incbin "baserom.gba", 0xd81e2c, 0x2a8 -gUnknown_08D820D4:: @ 8D820D4 +gBattleTerrainAnimTiles_Building:: @ 8D820D4 .incbin "baserom.gba", 0xd820d4, 0x410 -gUnknown_08D824E4:: @ 8D824E4 +gBattleTerrainAnimTilemap_Building:: @ 8D824E4 .incbin "baserom.gba", 0xd824e4, 0x124 -gUnknown_08D82608:: @ 8D82608 +gBattleTerrainAnimTiles_Rayquaza:: @ 8D82608 .incbin "baserom.gba", 0xd82608, 0x668 -gUnknown_08D82C70:: @ 8D82C70 +gBattleTerrainAnimTilemap_Rayquaza:: @ 8D82C70 .incbin "baserom.gba", 0xd82c70, 0x2a0 gUnknown_08D82F10:: @ 8D82F10 diff --git a/graphics_file_rules.mk b/graphics_file_rules.mk index 38806bbd3..565020836 100644 --- a/graphics_file_rules.mk +++ b/graphics_file_rules.mk @@ -2,113 +2,109 @@ monstillfrontdir := graphics/pokemon/front_pics monbackdir := graphics/pokemon/back_pics monfrontdir := graphics/pokemon/anim_front_pics monpaldir := graphics/pokemon/palettes -INTROGFXDIR := graphics/intro -interfacedir := graphics/interface -PKNAVGFXDIR := graphics/pokenav -MISCGFXDIR := graphics/misc +tilesetdir := data/tilesets +fontdir := data/graphics/fonts $(monstillfrontdir)/castform_still_front_pic.4bpp: $(monstillfrontdir)/castform_normal_form_still_front_pic.4bpp \ $(monstillfrontdir)/castform_sunny_form_still_front_pic.4bpp \ $(monstillfrontdir)/castform_rainy_form_still_front_pic.4bpp \ $(monstillfrontdir)/castform_snowy_form_still_front_pic.4bpp - @cat $(monstillfrontdir)/castform_normal_form_still_front_pic.4bpp $(monstillfrontdir)/castform_sunny_form_still_front_pic.4bpp $(monstillfrontdir)/castform_rainy_form_still_front_pic.4bpp $(monstillfrontdir)/castform_snowy_form_still_front_pic.4bpp >$@ + @cat $^ >$@ $(monbackdir)/castform_back_pic.4bpp: $(monbackdir)/castform_normal_form_back_pic.4bpp \ $(monbackdir)/castform_sunny_form_back_pic.4bpp \ $(monbackdir)/castform_rainy_form_back_pic.4bpp \ $(monbackdir)/castform_snowy_form_back_pic.4bpp - @cat $(monbackdir)/castform_normal_form_back_pic.4bpp $(monbackdir)/castform_sunny_form_back_pic.4bpp $(monbackdir)/castform_rainy_form_back_pic.4bpp $(monbackdir)/castform_snowy_form_back_pic.4bpp >$@ + @cat $^ >$@ $(monfrontdir)/castform_front_pic.4bpp: $(monfrontdir)/castform_normal_form_front_pic.4bpp \ $(monfrontdir)/castform_sunny_form_front_pic.4bpp \ $(monfrontdir)/castform_rainy_form_front_pic.4bpp \ $(monfrontdir)/castform_snowy_form_front_pic.4bpp - @cat $(monfrontdir)/castform_normal_form_front_pic.4bpp $(monfrontdir)/castform_sunny_form_front_pic.4bpp $(monfrontdir)/castform_rainy_form_front_pic.4bpp $(monfrontdir)/castform_snowy_form_front_pic.4bpp >$@ + @cat $^ >$@ $(monpaldir)/castform_palette.gbapal: $(monpaldir)/castform_normal_form_palette.gbapal \ $(monpaldir)/castform_sunny_form_palette.gbapal \ $(monpaldir)/castform_rainy_form_palette.gbapal \ $(monpaldir)/castform_snowy_form_palette.gbapal - @cat $(monpaldir)/castform_normal_form_palette.gbapal $(monpaldir)/castform_sunny_form_palette.gbapal $(monpaldir)/castform_rainy_form_palette.gbapal $(monpaldir)/castform_snowy_form_palette.gbapal >$@ + @cat $^ >$@ $(monpaldir)/castform_shiny_palette.gbapal: $(monpaldir)/castform_normal_form_shiny_palette.gbapal \ $(monpaldir)/castform_sunny_form_shiny_palette.gbapal \ $(monpaldir)/castform_rainy_form_shiny_palette.gbapal \ $(monpaldir)/castform_snowy_form_shiny_palette.gbapal - @cat $(monpaldir)/castform_normal_form_shiny_palette.gbapal $(monpaldir)/castform_sunny_form_shiny_palette.gbapal $(monpaldir)/castform_rainy_form_shiny_palette.gbapal $(monpaldir)/castform_snowy_form_shiny_palette.gbapal >$@ - -tilesetdir := data/tilesets + @cat $^ >$@ -$(tilesetdir)/secondary/petalburg/tiles.4bpp: $(tilesetdir)/secondary/petalburg/tiles.png +$(tilesetdir)/secondary/petalburg/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 159 -$(tilesetdir)/secondary/rustboro/tiles.4bpp: $(tilesetdir)/secondary/rustboro/tiles.png +$(tilesetdir)/secondary/rustboro/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 498 -$(tilesetdir)/secondary/dewford/tiles.4bpp: $(tilesetdir)/secondary/dewford/tiles.png +$(tilesetdir)/secondary/dewford/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 503 -$(tilesetdir)/secondary/slateport/tiles.4bpp: $(tilesetdir)/secondary/slateport/tiles.png +$(tilesetdir)/secondary/slateport/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 504 -$(tilesetdir)/secondary/mauville/tiles.4bpp: $(tilesetdir)/secondary/mauville/tiles.png +$(tilesetdir)/secondary/mauville/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 503 -$(tilesetdir)/secondary/lavaridge/tiles.4bpp: $(tilesetdir)/secondary/lavaridge/tiles.png +$(tilesetdir)/secondary/lavaridge/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 450 -$(tilesetdir)/secondary/fortree/tiles.4bpp: $(tilesetdir)/secondary/fortree/tiles.png +$(tilesetdir)/secondary/fortree/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 493 -$(tilesetdir)/secondary/pacifidlog/tiles.4bpp: $(tilesetdir)/secondary/pacifidlog/tiles.png +$(tilesetdir)/secondary/pacifidlog/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 504 -$(tilesetdir)/secondary/sootopolis/tiles.4bpp: $(tilesetdir)/secondary/sootopolis/tiles.png +$(tilesetdir)/secondary/sootopolis/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 328 -$(tilesetdir)/secondary/battle_frontier_outside_west/tiles.4bpp: $(tilesetdir)/secondary/battle_frontier_outside_west/tiles.png +$(tilesetdir)/secondary/battle_frontier_outside_west/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 508 -$(tilesetdir)/secondary/battle_frontier_outside_east/tiles.4bpp: $(tilesetdir)/secondary/battle_frontier_outside_east/tiles.png +$(tilesetdir)/secondary/battle_frontier_outside_east/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 508 -$(tilesetdir)/primary/building/tiles.4bpp: $(tilesetdir)/primary/building/tiles.png +$(tilesetdir)/primary/building/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 502 -$(tilesetdir)/secondary/shop/tiles.4bpp: $(tilesetdir)/secondary/shop/tiles.png +$(tilesetdir)/secondary/shop/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 502 -$(tilesetdir)/secondary/pokemon_center/tiles.4bpp: $(tilesetdir)/secondary/pokemon_center/tiles.png +$(tilesetdir)/secondary/pokemon_center/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 478 -$(tilesetdir)/secondary/cave/tiles.4bpp: $(tilesetdir)/secondary/cave/tiles.png +$(tilesetdir)/secondary/cave/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 425 -$(tilesetdir)/secondary/pokemon_school/tiles.4bpp: $(tilesetdir)/secondary/pokemon_school/tiles.png +$(tilesetdir)/secondary/pokemon_school/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 278 -$(tilesetdir)/secondary/pokemon_fan_club/tiles.4bpp: $(tilesetdir)/secondary/pokemon_fan_club/tiles.png +$(tilesetdir)/secondary/pokemon_fan_club/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 319 -$(tilesetdir)/secondary/unused_1/tiles.4bpp: $(tilesetdir)/secondary/unused_1/tiles.png +$(tilesetdir)/secondary/unused_1/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 17 -$(tilesetdir)/secondary/meteor_falls/tiles.4bpp: $(tilesetdir)/secondary/meteor_falls/tiles.png +$(tilesetdir)/secondary/meteor_falls/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 460 -$(tilesetdir)/secondary/oceanic_museum/tiles.4bpp: $(tilesetdir)/secondary/oceanic_museum/tiles.png +$(tilesetdir)/secondary/oceanic_museum/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 319 -$(tilesetdir)/secondary/cable_club/unknown_tiles.4bpp: $(tilesetdir)/secondary/cable_club/unknown_tiles.png +$(tilesetdir)/secondary/cable_club/unknown_tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 120 -$(tilesetdir)/secondary/seashore_house/tiles.4bpp: $(tilesetdir)/secondary/seashore_house/tiles.png +$(tilesetdir)/secondary/seashore_house/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 312 -$(tilesetdir)/secondary/pretty_petal_flower_shop/tiles.4bpp: $(tilesetdir)/secondary/pretty_petal_flower_shop/tiles.png +$(tilesetdir)/secondary/pretty_petal_flower_shop/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 345 -$(tilesetdir)/secondary/pokemon_day_care/tiles.4bpp: $(tilesetdir)/secondary/pokemon_day_care/tiles.png +$(tilesetdir)/secondary/pokemon_day_care/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 355 $(tilesetdir)/secondary/secret_base/brown_cave/unused_tiles.4bpp: $(tilesetdir)/secondary/secret_base/brown_cave/tiles.png @@ -129,110 +125,108 @@ $(tilesetdir)/secondary/secret_base/yellow_cave/unused_tiles.4bpp: $(tilesetdir) $(tilesetdir)/secondary/secret_base/red_cave/unused_tiles.4bpp: $(tilesetdir)/secondary/secret_base/red_cave/tiles.png $(GFX) $< $@ -num_tiles 82 -$(tilesetdir)/secondary/secret_base/brown_cave/tiles.4bpp: $(tilesetdir)/secondary/secret_base/brown_cave/tiles.png +$(tilesetdir)/secondary/secret_base/brown_cave/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/secret_base/tree/tiles.4bpp: $(tilesetdir)/secondary/secret_base/tree/tiles.png +$(tilesetdir)/secondary/secret_base/tree/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/secret_base/shrub/tiles.4bpp: $(tilesetdir)/secondary/secret_base/shrub/tiles.png +$(tilesetdir)/secondary/secret_base/shrub/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/secret_base/blue_cave/tiles.4bpp: $(tilesetdir)/secondary/secret_base/blue_cave/tiles.png +$(tilesetdir)/secondary/secret_base/blue_cave/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/secret_base/yellow_cave/tiles.4bpp: $(tilesetdir)/secondary/secret_base/yellow_cave/tiles.png +$(tilesetdir)/secondary/secret_base/yellow_cave/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/secret_base/red_cave/tiles.4bpp: $(tilesetdir)/secondary/secret_base/red_cave/tiles.png +$(tilesetdir)/secondary/secret_base/red_cave/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 83 -$(tilesetdir)/secondary/inside_of_truck/tiles.4bpp: $(tilesetdir)/secondary/inside_of_truck/tiles.png +$(tilesetdir)/secondary/inside_of_truck/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 62 -$(tilesetdir)/secondary/contest/tiles.4bpp: $(tilesetdir)/secondary/contest/tiles.png +$(tilesetdir)/secondary/contest/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 430 -$(tilesetdir)/secondary/lilycove_museum/tiles.4bpp: $(tilesetdir)/secondary/lilycove_museum/tiles.png +$(tilesetdir)/secondary/lilycove_museum/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 431 -$(tilesetdir)/secondary/lab/tiles.4bpp: $(tilesetdir)/secondary/lab/tiles.png +$(tilesetdir)/secondary/lab/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 500 -$(tilesetdir)/secondary/underwater/tiles.4bpp: $(tilesetdir)/secondary/underwater/tiles.png +$(tilesetdir)/secondary/underwater/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 500 -$(tilesetdir)/secondary/generic_building/tiles.4bpp: $(tilesetdir)/secondary/generic_building/tiles.png +$(tilesetdir)/secondary/generic_building/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 509 -$(tilesetdir)/secondary/mauville_game_corner/tiles.4bpp: $(tilesetdir)/secondary/mauville_game_corner/tiles.png +$(tilesetdir)/secondary/mauville_game_corner/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 469 -$(tilesetdir)/secondary/unused_2/tiles.4bpp: $(tilesetdir)/secondary/unused_2/tiles.png +$(tilesetdir)/secondary/unused_2/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 150 -$(tilesetdir)/secondary/rustboro_gym/tiles.4bpp: $(tilesetdir)/secondary/rustboro_gym/tiles.png +$(tilesetdir)/secondary/rustboro_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 60 -$(tilesetdir)/secondary/dewford_gym/tiles.4bpp: $(tilesetdir)/secondary/dewford_gym/tiles.png +$(tilesetdir)/secondary/dewford_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 61 -$(tilesetdir)/secondary/lavaridge_gym/tiles.4bpp: $(tilesetdir)/secondary/lavaridge_gym/tiles.png +$(tilesetdir)/secondary/lavaridge_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 54 -$(tilesetdir)/secondary/petalburg_gym/tiles.4bpp: $(tilesetdir)/secondary/petalburg_gym/tiles.png +$(tilesetdir)/secondary/petalburg_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 148 -$(tilesetdir)/secondary/fortree_gym/tiles.4bpp: $(tilesetdir)/secondary/fortree_gym/tiles.png +$(tilesetdir)/secondary/fortree_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 61 -$(tilesetdir)/secondary/mossdeep_gym/tiles.4bpp: $(tilesetdir)/secondary/mossdeep_gym/tiles.png +$(tilesetdir)/secondary/mossdeep_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 82 -$(tilesetdir)/secondary/sootopolis_gym/tiles.4bpp: $(tilesetdir)/secondary/sootopolis_gym/tiles.png +$(tilesetdir)/secondary/sootopolis_gym/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 484 -$(tilesetdir)/secondary/trick_house_puzzle/tiles.4bpp: $(tilesetdir)/secondary/trick_house_puzzle/tiles.png +$(tilesetdir)/secondary/trick_house_puzzle/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 294 -$(tilesetdir)/secondary/inside_ship/tiles.4bpp: $(tilesetdir)/secondary/inside_ship/tiles.png +$(tilesetdir)/secondary/inside_ship/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 342 -$(tilesetdir)/secondary/elite_four/tiles.4bpp: $(tilesetdir)/secondary/elite_four/tiles.png +$(tilesetdir)/secondary/elite_four/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 505 -$(tilesetdir)/secondary/battle_frontier/tiles.4bpp: $(tilesetdir)/secondary/battle_frontier/tiles.png +$(tilesetdir)/secondary/battle_frontier/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 310 -$(tilesetdir)/secondary/battle_factory/tiles.4bpp: $(tilesetdir)/secondary/battle_factory/tiles.png +$(tilesetdir)/secondary/battle_factory/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 424 -$(tilesetdir)/secondary/battle_pike/tiles.4bpp: $(tilesetdir)/secondary/battle_pike/tiles.png +$(tilesetdir)/secondary/battle_pike/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 382 -$(tilesetdir)/secondary/mirage_tower/tiles.4bpp: $(tilesetdir)/secondary/mirage_tower/tiles.png +$(tilesetdir)/secondary/mirage_tower/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 420 -$(tilesetdir)/secondary/mossdeep_game_corner/tiles.4bpp: $(tilesetdir)/secondary/mossdeep_game_corner/tiles.png +$(tilesetdir)/secondary/mossdeep_game_corner/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 95 -$(tilesetdir)/secondary/island_harbor/tiles.4bpp: $(tilesetdir)/secondary/island_harbor/tiles.png +$(tilesetdir)/secondary/island_harbor/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 503 -$(tilesetdir)/secondary/trainer_hill/tiles.4bpp: $(tilesetdir)/secondary/trainer_hill/tiles.png +$(tilesetdir)/secondary/trainer_hill/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 374 -$(tilesetdir)/secondary/navel_rock/tiles.4bpp: $(tilesetdir)/secondary/navel_rock/tiles.png +$(tilesetdir)/secondary/navel_rock/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 420 -$(tilesetdir)/secondary/battle_frontier_ranking_hall/tiles.4bpp: $(tilesetdir)/secondary/battle_frontier_ranking_hall/tiles.png +$(tilesetdir)/secondary/battle_frontier_ranking_hall/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 136 -$(tilesetdir)/secondary/mystery_events_house/tiles.4bpp: $(tilesetdir)/secondary/mystery_events_house/tiles.png +$(tilesetdir)/secondary/mystery_events_house/tiles.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 509 -fontdir := data/graphics/fonts - $(fontdir)/font0.latfont: $(fontdir)/font0_latin.png $(GFX) $< $@ @@ -269,31 +263,32 @@ $(fontdir)/unused_frlg_male.fwjpnfont: $(fontdir)/unused_japanese_frlg_male_font $(fontdir)/unused_frlg_female.fwjpnfont: $(fontdir)/unused_japanese_frlg_female_font.png $(GFX) $< $@ -$(fontdir)/down_arrow.4bpp: $(fontdir)/down_arrow.png +$(fontdir)/down_arrow.4bpp: %.4bpp: %.png $(GFX) $< $@ -$(fontdir)/down_arrow_rs.4bpp: $(fontdir)/down_arrow_rs.png +$(fontdir)/down_arrow_rs.4bpp: %.4bpp: %.png $(GFX) $< $@ -$(fontdir)/unused_frlg_blanked_down_arrow.4bpp: $(fontdir)/unused_frlg_blanked_down_arrow.png +$(fontdir)/unused_frlg_blanked_down_arrow.4bpp: %.4bpp: %.png $(GFX) $< $@ -$(fontdir)/unused_frlg_down_arrow.4bpp: $(fontdir)/unused_frlg_down_arrow.png +$(fontdir)/unused_frlg_down_arrow.4bpp: %.4bpp: %.png $(GFX) $< $@ -$(fontdir)/keypad_icons.4bpp: $(fontdir)/keypad_icons.png +$(fontdir)/keypad_icons.4bpp: %.4bpp: %.png $(GFX) $< $@ -graphics/title_screen/pokemon_logo.gbapal: graphics/title_screen/pokemon_logo.pal +graphics/title_screen/pokemon_logo.gbapal: %.gbapal: %.pal $(GFX) $< $@ -num_colors 224 -$(INTROGFXDIR)/copyright.4bpp: $(INTROGFXDIR)/copyright.png +graphics/intro/copyright.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 39 -$(interfacedir)/pkmnjump_bg.4bpp: $(interfacedir)/pkmnjump_bg.png +graphics/interface/pkmnjump_bg.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 63 -$(PKNAVGFXDIR)/region_map.8bpp: $(PKNAVGFXDIR)/region_map.png +graphics/pokenav/region_map.8bpp: %.8bpp: %.png $(GFX) $< $@ -num_tiles 233 -$(MISCGFXDIR)/japanese_hof.4bpp: $(MISCGFXDIR)/japanese_hof.png + +graphics/misc/japanese_hof.4bpp: %.4bpp: %.png $(GFX) $< $@ -num_tiles 29 diff --git a/include/battle.h b/include/battle.h index 71dbe9a57..602d3eb53 100644 --- a/include/battle.h +++ b/include/battle.h @@ -8,6 +8,7 @@ #include "battle_ai_switch_items.h" #include "battle_gfx_sfx_util.h" #include "battle_util2.h" +#include "battle_bg.h" /* Banks are a name given to what could be called a 'battlerId' or 'monControllerId'. @@ -863,16 +864,6 @@ struct BattleScripting extern struct BattleScripting gBattleScripting; -// functions - -// battle_1 -void LoadBattleTextboxAndBackground(void); -void LoadBattleEntryBackground(void); -void ApplyPlayerChosenFrameToBattleMenu(void); -bool8 LoadChosenBattleElement(u8 caseId); -void DrawMainBattleBackground(void); -void task00_0800F6FC(u8 taskId); - enum { BACK_PIC_BRENDAN, diff --git a/include/battle_bg.h b/include/battle_bg.h new file mode 100644 index 000000000..7fc09fbf7 --- /dev/null +++ b/include/battle_bg.h @@ -0,0 +1,13 @@ +#ifndef GUARD_BATTLE_BG_H +#define GUARD_BATTLE_BG_H + +void sub_8035658(void); +void sub_80356D0(void); +void ApplyPlayerChosenFrameToBattleMenu(void); +void DrawMainBattleBackground(void); +void LoadBattleTextboxAndBackground(void); +void sub_8035D74(u8 taskId); +void LoadBattleEntryBackground(void); +bool8 LoadChosenBattleElement(u8 caseId); + +#endif // GUARD_BATTLE_BG_H diff --git a/include/data/region_map/region_map_entries.h b/include/data/region_map/region_map_entries.h index 73599c704..9c7e3f2fc 100644 --- a/include/data/region_map/region_map_entries.h +++ b/include/data/region_map/region_map_entries.h @@ -1,421 +1,421 @@ #ifndef GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H #define GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H -static const u8 gMapName_LittlerootTown[] = _("LITTLEROOT TOWN"); -static const u8 gMapName_OldaleTown[] = _("OLDALE TOWN"); -static const u8 gMapName_DewfordTown[] = _("DEWFORD TOWN"); -static const u8 gMapName_LavaridgeTown[] = _("LAVARIDGE TOWN"); -static const u8 gMapName_FallarborTown[] = _("FALLARBOR TOWN"); -static const u8 gMapName_VerdanturfTown[] = _("VERDANTURF TOWN"); -static const u8 gMapName_PacifidlogTown[] = _("PACIFIDLOG TOWN"); -static const u8 gMapName_PetalburgCity[] = _("PETALBURG CITY"); -static const u8 gMapName_SlateportCity[] = _("SLATEPORT CITY"); -static const u8 gMapName_MauvilleCity[] = _("MAUVILLE CITY"); -static const u8 gMapName_RustboroCity[] = _("RUSTBORO CITY"); -static const u8 gMapName_FortreeCity[] = _("FORTREE CITY"); -static const u8 gMapName_LilycoveCity[] = _("LILYCOVE CITY"); -static const u8 gMapName_MossdeepCity[] = _("MOSSDEEP CITY"); -static const u8 gMapName_SootopolisCity[] = _("SOOTOPOLIS CITY"); -static const u8 gMapName_EverGrandeCity[] = _("EVER GRANDE CITY"); -static const u8 gMapName_Route101[] = _("ROUTE 101"); -static const u8 gMapName_Route102[] = _("ROUTE 102"); -static const u8 gMapName_Route103[] = _("ROUTE 103"); -static const u8 gMapName_Route104[] = _("ROUTE 104"); -static const u8 gMapName_Route105[] = _("ROUTE 105"); -static const u8 gMapName_Route106[] = _("ROUTE 106"); -static const u8 gMapName_Route107[] = _("ROUTE 107"); -static const u8 gMapName_Route108[] = _("ROUTE 108"); -static const u8 gMapName_Route109[] = _("ROUTE 109"); -static const u8 gMapName_Route110[] = _("ROUTE 110"); -static const u8 gMapName_Route111[] = _("ROUTE 111"); -static const u8 gMapName_Route112[] = _("ROUTE 112"); -static const u8 gMapName_Route113[] = _("ROUTE 113"); -static const u8 gMapName_Route114[] = _("ROUTE 114"); -static const u8 gMapName_Route115[] = _("ROUTE 115"); -static const u8 gMapName_Route116[] = _("ROUTE 116"); -static const u8 gMapName_Route117[] = _("ROUTE 117"); -static const u8 gMapName_Route118[] = _("ROUTE 118"); -static const u8 gMapName_Route119[] = _("ROUTE 119"); -static const u8 gMapName_Route120[] = _("ROUTE 120"); -static const u8 gMapName_Route121[] = _("ROUTE 121"); -static const u8 gMapName_Route122[] = _("ROUTE 122"); -static const u8 gMapName_Route123[] = _("ROUTE 123"); -static const u8 gMapName_Route124[] = _("ROUTE 124"); -static const u8 gMapName_Route125[] = _("ROUTE 125"); -static const u8 gMapName_Route126[] = _("ROUTE 126"); -static const u8 gMapName_Route127[] = _("ROUTE 127"); -static const u8 gMapName_Route128[] = _("ROUTE 128"); -static const u8 gMapName_Route129[] = _("ROUTE 129"); -static const u8 gMapName_Route130[] = _("ROUTE 130"); -static const u8 gMapName_Route131[] = _("ROUTE 131"); -static const u8 gMapName_Route132[] = _("ROUTE 132"); -static const u8 gMapName_Route133[] = _("ROUTE 133"); -static const u8 gMapName_Route134[] = _("ROUTE 134"); -static const u8 gMapName_Underwater[] = _("UNDERWATER"); -static const u8 gMapName_GraniteCave[] = _("GRANITE CAVE"); -static const u8 gMapName_MtChimney[] = _("MT. CHIMNEY"); -static const u8 gMapName_SafariZone[] = _("SAFARI ZONE"); -static const u8 gMapName_BattleFrontier[] = _("BATTLE FRONTIER"); -static const u8 gMapName_PetalburgWoods[] = _("PETALBURG WOODS"); -static const u8 gMapName_RusturfTunnel[] = _("RUSTURF TUNNEL"); -static const u8 gMapName_AbandonedShip[] = _("ABANDONED SHIP"); -static const u8 gMapName_NewMauville[] = _("NEW MAUVILLE"); -static const u8 gMapName_MeteorFalls[] = _("METEOR FALLS"); -static const u8 gMapName_MtPyre[] = _("MT. PYRE"); +static const u8 sMapName_LittlerootTown[] = _("LITTLEROOT TOWN"); +static const u8 sMapName_OldaleTown[] = _("OLDALE TOWN"); +static const u8 sMapName_DewfordTown[] = _("DEWFORD TOWN"); +static const u8 sMapName_LavaridgeTown[] = _("LAVARIDGE TOWN"); +static const u8 sMapName_FallarborTown[] = _("FALLARBOR TOWN"); +static const u8 sMapName_VerdanturfTown[] = _("VERDANTURF TOWN"); +static const u8 sMapName_PacifidlogTown[] = _("PACIFIDLOG TOWN"); +static const u8 sMapName_PetalburgCity[] = _("PETALBURG CITY"); +static const u8 sMapName_SlateportCity[] = _("SLATEPORT CITY"); +static const u8 sMapName_MauvilleCity[] = _("MAUVILLE CITY"); +static const u8 sMapName_RustboroCity[] = _("RUSTBORO CITY"); +static const u8 sMapName_FortreeCity[] = _("FORTREE CITY"); +static const u8 sMapName_LilycoveCity[] = _("LILYCOVE CITY"); +static const u8 sMapName_MossdeepCity[] = _("MOSSDEEP CITY"); +static const u8 sMapName_SootopolisCity[] = _("SOOTOPOLIS CITY"); +static const u8 sMapName_EverGrandeCity[] = _("EVER GRANDE CITY"); +static const u8 sMapName_Route101[] = _("ROUTE 101"); +static const u8 sMapName_Route102[] = _("ROUTE 102"); +static const u8 sMapName_Route103[] = _("ROUTE 103"); +static const u8 sMapName_Route104[] = _("ROUTE 104"); +static const u8 sMapName_Route105[] = _("ROUTE 105"); +static const u8 sMapName_Route106[] = _("ROUTE 106"); +static const u8 sMapName_Route107[] = _("ROUTE 107"); +static const u8 sMapName_Route108[] = _("ROUTE 108"); +static const u8 sMapName_Route109[] = _("ROUTE 109"); +static const u8 sMapName_Route110[] = _("ROUTE 110"); +static const u8 sMapName_Route111[] = _("ROUTE 111"); +static const u8 sMapName_Route112[] = _("ROUTE 112"); +static const u8 sMapName_Route113[] = _("ROUTE 113"); +static const u8 sMapName_Route114[] = _("ROUTE 114"); +static const u8 sMapName_Route115[] = _("ROUTE 115"); +static const u8 sMapName_Route116[] = _("ROUTE 116"); +static const u8 sMapName_Route117[] = _("ROUTE 117"); +static const u8 sMapName_Route118[] = _("ROUTE 118"); +static const u8 sMapName_Route119[] = _("ROUTE 119"); +static const u8 sMapName_Route120[] = _("ROUTE 120"); +static const u8 sMapName_Route121[] = _("ROUTE 121"); +static const u8 sMapName_Route122[] = _("ROUTE 122"); +static const u8 sMapName_Route123[] = _("ROUTE 123"); +static const u8 sMapName_Route124[] = _("ROUTE 124"); +static const u8 sMapName_Route125[] = _("ROUTE 125"); +static const u8 sMapName_Route126[] = _("ROUTE 126"); +static const u8 sMapName_Route127[] = _("ROUTE 127"); +static const u8 sMapName_Route128[] = _("ROUTE 128"); +static const u8 sMapName_Route129[] = _("ROUTE 129"); +static const u8 sMapName_Route130[] = _("ROUTE 130"); +static const u8 sMapName_Route131[] = _("ROUTE 131"); +static const u8 sMapName_Route132[] = _("ROUTE 132"); +static const u8 sMapName_Route133[] = _("ROUTE 133"); +static const u8 sMapName_Route134[] = _("ROUTE 134"); +static const u8 sMapName_Underwater[] = _("UNDERWATER"); +static const u8 sMapName_GraniteCave[] = _("GRANITE CAVE"); +static const u8 sMapName_MtChimney[] = _("MT. CHIMNEY"); +static const u8 sMapName_SafariZone[] = _("SAFARI ZONE"); +static const u8 sMapName_BattleFrontier[] = _("BATTLE FRONTIER"); +static const u8 sMapName_PetalburgWoods[] = _("PETALBURG WOODS"); +static const u8 sMapName_RusturfTunnel[] = _("RUSTURF TUNNEL"); +static const u8 sMapName_AbandonedShip[] = _("ABANDONED SHIP"); +static const u8 sMapName_NewMauville[] = _("NEW MAUVILLE"); +static const u8 sMapName_MeteorFalls[] = _("METEOR FALLS"); +static const u8 sMapName_MtPyre[] = _("MT. PYRE"); // This was the Aqua or Magma hideout in Ruby/Sapphire, but each team has a // hideout in Emerald with their own new region map entries, and this name // doesn't seem to be used anymore. -static const u8 gMapName_AquaHideoutOld[] = _("{AQUA} HIDEOUT"); -static const u8 gMapName_ShoalCave[] = _("SHOAL CAVE"); -static const u8 gMapName_SeafloorCavern[] = _("SEAFLOOR CAVERN"); -static const u8 gMapName_VictoryRoad[] = _("VICTORY ROAD"); -static const u8 gMapName_MirageIsland[] = _("MIRAGE ISLAND"); -static const u8 gMapName_CaveOfOrigin[] = _("CAVE OF ORIGIN"); -static const u8 gMapName_SouthernIsland[] = _("SOUTHERN ISLAND"); -static const u8 gMapName_FieryPath[] = _("FIERY PATH"); -static const u8 gMapName_JaggedPass[] = _("JAGGED PASS"); -static const u8 gMapName_SealedChamber[] = _("SEALED CHAMBER"); -static const u8 gMapName_ScorchedSlab[] = _("SCORCHED SLAB"); -static const u8 gMapName_IslandCave[] = _("ISLAND CAVE"); -static const u8 gMapName_DesertRuins[] = _("DESERT RUINS"); -static const u8 gMapName_AncientTomb[] = _("ANCIENT TOMB"); -static const u8 gMapName_InsideOfTruck[] = _("INSIDE OF TRUCK"); -static const u8 gMapName_SkyPillar[] = _("SKY PILLAR"); -static const u8 gMapName_SecretBase[] = _("SECRET BASE"); -static const u8 gMapName_None[] = _(""); -static const u8 gMapName_PalletTown[] = _("PALLET TOWN"); -static const u8 gMapName_ViridianCity[] = _("VIRIDIAN CITY"); -static const u8 gMapName_PewterCity[] = _("PEWTER CITY"); -static const u8 gMapName_CeruleanCity[] = _("CERULEAN CITY"); -static const u8 gMapName_LavenderTown[] = _("LAVENDER TOWN"); -static const u8 gMapName_VermilionCity[] = _("VERMILION CITY"); -static const u8 gMapName_CeladonCity[] = _("CELADON CITY"); -static const u8 gMapName_FuchsiaCity[] = _("FUCHSIA CITY"); -static const u8 gMapName_CinnabarIsland[] = _("CINNABAR ISLAND"); -static const u8 gMapName_IndigoPlateau[] = _("INDIGO PLATEAU"); -static const u8 gMapName_SaffronCity[] = _("SAFFRON CITY"); -static const u8 gMapName_Route4[] = _("ROUTE 4"); -static const u8 gMapName_Route10[] = _("ROUTE 10"); -static const u8 gMapName_Route1[] = _("ROUTE 1"); -static const u8 gMapName_Route2[] = _("ROUTE 2"); -static const u8 gMapName_Route3[] = _("ROUTE 3"); -static const u8 gMapName_Route4_2[] = _("ROUTE 4"); -static const u8 gMapName_Route5[] = _("ROUTE 5"); -static const u8 gMapName_Route6[] = _("ROUTE 6"); -static const u8 gMapName_Route7[] = _("ROUTE 7"); -static const u8 gMapName_Route8[] = _("ROUTE 8"); -static const u8 gMapName_Route9[] = _("ROUTE 9"); -static const u8 gMapName_Route10_2[] = _("ROUTE 10"); -static const u8 gMapName_Route11[] = _("ROUTE 11"); -static const u8 gMapName_Route12[] = _("ROUTE 12"); -static const u8 gMapName_Route13[] = _("ROUTE 13"); -static const u8 gMapName_Route14[] = _("ROUTE 14"); -static const u8 gMapName_Route15[] = _("ROUTE 15"); -static const u8 gMapName_Route16[] = _("ROUTE 16"); -static const u8 gMapName_Route17[] = _("ROUTE 17"); -static const u8 gMapName_Route18[] = _("ROUTE 18"); -static const u8 gMapName_Route19[] = _("ROUTE 19"); -static const u8 gMapName_Route20[] = _("ROUTE 20"); -static const u8 gMapName_Route21[] = _("ROUTE 21"); -static const u8 gMapName_Route22[] = _("ROUTE 22"); -static const u8 gMapName_Route23[] = _("ROUTE 23"); -static const u8 gMapName_Route24[] = _("ROUTE 24"); -static const u8 gMapName_Route25[] = _("ROUTE 25"); -static const u8 gMapName_ViridianForest[] = _("VIRIDIAN FOREST"); -static const u8 gMapName_MtMoon[] = _("MT. MOON"); -static const u8 gMapName_SSAnne[] = _("S.S. ANNE"); -static const u8 gMapName_UndergroundPath[] = _("UNDERGROUND PATH"); -static const u8 gMapName_UndergroundPath2[] = _("UNDERGROUND PATH"); -static const u8 gMapName_DiglettsCave[] = _("DIGLETT’S CAVE"); -static const u8 gMapName_KantoVictoryRoad[] = _("VICTORY ROAD"); -static const u8 gMapName_RocketHideout[] = _("ROCKET HIDEOUT"); -static const u8 gMapName_SilphCo[] = _("SILPH CO."); -static const u8 gMapName_PokemonMansion[] = _("POKéMON MANSION"); -static const u8 gMapName_KantoSafariZone[] = _("SAFARI ZONE"); -static const u8 gMapName_PokemonLeague[] = _("POKéMON LEAGUE"); -static const u8 gMapName_RockTunnel[] = _("ROCK TUNNEL"); -static const u8 gMapName_SeafoamIslands[] = _("SEAFOAM ISLANDS"); -static const u8 gMapName_PokemonTower[] = _("POKéMON TOWER"); -static const u8 gMapName_CeruleanCave[] = _("CERULEAN CAVE"); -static const u8 gMapName_PowerPlant[] = _("POWER PLANT"); -static const u8 gMapName_OneIsland[] = _("ONE ISLAND"); -static const u8 gMapName_TwoIsland[] = _("TWO ISLAND"); -static const u8 gMapName_ThreeIsland[] = _("THREE ISLAND"); -static const u8 gMapName_FourIsland[] = _("FOUR ISLAND"); -static const u8 gMapName_FiveIsland[] = _("FIVE ISLAND"); -static const u8 gMapName_SevenIsland[] = _("SEVEN ISLAND"); -static const u8 gMapName_SixIsland[] = _("SIX ISLAND"); -static const u8 gMapName_KindleRoad[] = _("KINDLE ROAD"); -static const u8 gMapName_TreasureBeach[] = _("TREASURE BEACH"); -static const u8 gMapName_CapeBrink[] = _("CAPE BRINK"); -static const u8 gMapName_BondBridge[] = _("BOND BRIDGE"); -static const u8 gMapName_ThreeIslePort[] = _("THREE ISLE PORT"); -static const u8 gMapName_SeviiIsle6[] = _("SEVII ISLE 6"); -static const u8 gMapName_SeviiIsle7[] = _("SEVII ISLE 7"); -static const u8 gMapName_SeviiIsle8[] = _("SEVII ISLE 8"); -static const u8 gMapName_SeviiIsle9[] = _("SEVII ISLE 9"); -static const u8 gMapName_ResortGorgeous[] = _("RESORT GORGEOUS"); -static const u8 gMapName_WaterLabyrinth[] = _("WATER LABYRINTH"); -static const u8 gMapName_FiveIsleMeadow[] = _("FIVE ISLE MEADOW"); -static const u8 gMapName_MemorialPillar[] = _("MEMORIAL PILLAR"); -static const u8 gMapName_OutcastIsland[] = _("OUTCAST ISLAND"); -static const u8 gMapName_GreenPath[] = _("GREEN PATH"); -static const u8 gMapName_WaterPath[] = _("WATER PATH"); -static const u8 gMapName_RuinValley[] = _("RUIN VALLEY"); -static const u8 gMapName_TrainerTower[] = _("TRAINER TOWER"); -static const u8 gMapName_CanyonEntrance[] = _("CANYON ENTRANCE"); -static const u8 gMapName_SevaultCanyon[] = _("SEVAULT CANYON"); -static const u8 gMapName_TanobyRuins[] = _("TANOBY RUINS"); -static const u8 gMapName_SeviiIsle22[] = _("SEVII ISLE 22"); -static const u8 gMapName_SeviiIsle23[] = _("SEVII ISLE 23"); -static const u8 gMapName_SeviiIsle24[] = _("SEVII ISLE 24"); -static const u8 gMapName_NavelRock[] = _("NAVEL ROCK"); -static const u8 gMapName_MtEmber[] = _("MT. EMBER"); -static const u8 gMapName_BerryForest[] = _("BERRY FOREST"); -static const u8 gMapName_IcefallCave[] = _("ICEFALL CAVE"); -static const u8 gMapName_RocketWarehouse[] = _("ROCKET WAREHOUSE"); -static const u8 gMapName_TrainerTower2[] = _("TRAINER TOWER"); -static const u8 gMapName_DottedHole[] = _("DOTTED HOLE"); -static const u8 gMapName_LostCave[] = _("LOST CAVE"); -static const u8 gMapName_PatternBush[] = _("PATTERN BUSH"); -static const u8 gMapName_AlteringCave[] = _("ALTERING CAVE"); -static const u8 gMapName_TanobyChambers[] = _("TANOBY CHAMBERS"); -static const u8 gMapName_ThreeIslePath[] = _("THREE ISLE PATH"); -static const u8 gMapName_TanobyKey[] = _("TANOBY KEY"); -static const u8 gMapName_BirthIsland[] = _("BIRTH ISLAND"); -static const u8 gMapName_MoneanChamber[] = _("MONEAN CHAMBER"); -static const u8 gMapName_LiptooChamber[] = _("LIPTOO CHAMBER"); -static const u8 gMapName_WeepthChamber[] = _("WEEPTH CHAMBER"); -static const u8 gMapName_DilfordChamber[] = _("DILFORD CHAMBER"); -static const u8 gMapName_ScufibChamber[] = _("SCUFIB CHAMBER"); -static const u8 gMapName_RixyChamber[] = _("RIXY CHAMBER"); -static const u8 gMapName_ViapoisChamber[] = _("VIAPOIS CHAMBER"); -static const u8 gMapName_EmberSpa[] = _("EMBER SPA"); -static const u8 gMapName_SpecialArea[] = _("SPECIAL AREA"); -static const u8 gMapName_AquaHideout[] = _("AQUA HIDEOUT"); -static const u8 gMapName_MagmaHideout[] = _("MAGMA HIDEOUT"); -static const u8 gMapName_MirageTower[] = _("MIRAGE TOWER"); -static const u8 gMapName_FarawayIsland[] = _("FARAWAY ISLAND"); -static const u8 gMapName_ArtisanCave[] = _("ARTISAN CAVE"); -static const u8 gMapName_MarineCave[] = _("MARINE CAVE"); -static const u8 gMapName_TerraCave[] = _("TERRA CAVE"); -static const u8 gMapName_DesertUnderpass[] = _("DESERT UNDERPASS"); -static const u8 gMapName_TrainerHill[] = _("TRAINER HILL"); +static const u8 sMapName_AquaHideoutOld[] = _("{AQUA} HIDEOUT"); +static const u8 sMapName_ShoalCave[] = _("SHOAL CAVE"); +static const u8 sMapName_SeafloorCavern[] = _("SEAFLOOR CAVERN"); +static const u8 sMapName_VictoryRoad[] = _("VICTORY ROAD"); +static const u8 sMapName_MirageIsland[] = _("MIRAGE ISLAND"); +static const u8 sMapName_CaveOfOrigin[] = _("CAVE OF ORIGIN"); +static const u8 sMapName_SouthernIsland[] = _("SOUTHERN ISLAND"); +static const u8 sMapName_FieryPath[] = _("FIERY PATH"); +static const u8 sMapName_JaggedPass[] = _("JAGGED PASS"); +static const u8 sMapName_SealedChamber[] = _("SEALED CHAMBER"); +static const u8 sMapName_ScorchedSlab[] = _("SCORCHED SLAB"); +static const u8 sMapName_IslandCave[] = _("ISLAND CAVE"); +static const u8 sMapName_DesertRuins[] = _("DESERT RUINS"); +static const u8 sMapName_AncientTomb[] = _("ANCIENT TOMB"); +static const u8 sMapName_InsideOfTruck[] = _("INSIDE OF TRUCK"); +static const u8 sMapName_SkyPillar[] = _("SKY PILLAR"); +static const u8 sMapName_SecretBase[] = _("SECRET BASE"); +static const u8 sMapName_None[] = _(""); +static const u8 sMapName_PalletTown[] = _("PALLET TOWN"); +static const u8 sMapName_ViridianCity[] = _("VIRIDIAN CITY"); +static const u8 sMapName_PewterCity[] = _("PEWTER CITY"); +static const u8 sMapName_CeruleanCity[] = _("CERULEAN CITY"); +static const u8 sMapName_LavenderTown[] = _("LAVENDER TOWN"); +static const u8 sMapName_VermilionCity[] = _("VERMILION CITY"); +static const u8 sMapName_CeladonCity[] = _("CELADON CITY"); +static const u8 sMapName_FuchsiaCity[] = _("FUCHSIA CITY"); +static const u8 sMapName_CinnabarIsland[] = _("CINNABAR ISLAND"); +static const u8 sMapName_IndigoPlateau[] = _("INDIGO PLATEAU"); +static const u8 sMapName_SaffronCity[] = _("SAFFRON CITY"); +static const u8 sMapName_Route4[] = _("ROUTE 4"); +static const u8 sMapName_Route10[] = _("ROUTE 10"); +static const u8 sMapName_Route1[] = _("ROUTE 1"); +static const u8 sMapName_Route2[] = _("ROUTE 2"); +static const u8 sMapName_Route3[] = _("ROUTE 3"); +static const u8 sMapName_Route4_2[] = _("ROUTE 4"); +static const u8 sMapName_Route5[] = _("ROUTE 5"); +static const u8 sMapName_Route6[] = _("ROUTE 6"); +static const u8 sMapName_Route7[] = _("ROUTE 7"); +static const u8 sMapName_Route8[] = _("ROUTE 8"); +static const u8 sMapName_Route9[] = _("ROUTE 9"); +static const u8 sMapName_Route10_2[] = _("ROUTE 10"); +static const u8 sMapName_Route11[] = _("ROUTE 11"); +static const u8 sMapName_Route12[] = _("ROUTE 12"); +static const u8 sMapName_Route13[] = _("ROUTE 13"); +static const u8 sMapName_Route14[] = _("ROUTE 14"); +static const u8 sMapName_Route15[] = _("ROUTE 15"); +static const u8 sMapName_Route16[] = _("ROUTE 16"); +static const u8 sMapName_Route17[] = _("ROUTE 17"); +static const u8 sMapName_Route18[] = _("ROUTE 18"); +static const u8 sMapName_Route19[] = _("ROUTE 19"); +static const u8 sMapName_Route20[] = _("ROUTE 20"); +static const u8 sMapName_Route21[] = _("ROUTE 21"); +static const u8 sMapName_Route22[] = _("ROUTE 22"); +static const u8 sMapName_Route23[] = _("ROUTE 23"); +static const u8 sMapName_Route24[] = _("ROUTE 24"); +static const u8 sMapName_Route25[] = _("ROUTE 25"); +static const u8 sMapName_ViridianForest[] = _("VIRIDIAN FOREST"); +static const u8 sMapName_MtMoon[] = _("MT. MOON"); +static const u8 sMapName_SSAnne[] = _("S.S. ANNE"); +static const u8 sMapName_UndergroundPath[] = _("UNDERGROUND PATH"); +static const u8 sMapName_UndergroundPath2[] = _("UNDERGROUND PATH"); +static const u8 sMapName_DiglettsCave[] = _("DIGLETT’S CAVE"); +static const u8 sMapName_KantoVictoryRoad[] = _("VICTORY ROAD"); +static const u8 sMapName_RocketHideout[] = _("ROCKET HIDEOUT"); +static const u8 sMapName_SilphCo[] = _("SILPH CO."); +static const u8 sMapName_PokemonMansion[] = _("POKéMON MANSION"); +static const u8 sMapName_KantoSafariZone[] = _("SAFARI ZONE"); +static const u8 sMapName_PokemonLeague[] = _("POKéMON LEAGUE"); +static const u8 sMapName_RockTunnel[] = _("ROCK TUNNEL"); +static const u8 sMapName_SeafoamIslands[] = _("SEAFOAM ISLANDS"); +static const u8 sMapName_PokemonTower[] = _("POKéMON TOWER"); +static const u8 sMapName_CeruleanCave[] = _("CERULEAN CAVE"); +static const u8 sMapName_PowerPlant[] = _("POWER PLANT"); +static const u8 sMapName_OneIsland[] = _("ONE ISLAND"); +static const u8 sMapName_TwoIsland[] = _("TWO ISLAND"); +static const u8 sMapName_ThreeIsland[] = _("THREE ISLAND"); +static const u8 sMapName_FourIsland[] = _("FOUR ISLAND"); +static const u8 sMapName_FiveIsland[] = _("FIVE ISLAND"); +static const u8 sMapName_SevenIsland[] = _("SEVEN ISLAND"); +static const u8 sMapName_SixIsland[] = _("SIX ISLAND"); +static const u8 sMapName_KindleRoad[] = _("KINDLE ROAD"); +static const u8 sMapName_TreasureBeach[] = _("TREASURE BEACH"); +static const u8 sMapName_CapeBrink[] = _("CAPE BRINK"); +static const u8 sMapName_BondBridge[] = _("BOND BRIDGE"); +static const u8 sMapName_ThreeIslePort[] = _("THREE ISLE PORT"); +static const u8 sMapName_SeviiIsle6[] = _("SEVII ISLE 6"); +static const u8 sMapName_SeviiIsle7[] = _("SEVII ISLE 7"); +static const u8 sMapName_SeviiIsle8[] = _("SEVII ISLE 8"); +static const u8 sMapName_SeviiIsle9[] = _("SEVII ISLE 9"); +static const u8 sMapName_ResortGorgeous[] = _("RESORT GORGEOUS"); +static const u8 sMapName_WaterLabyrinth[] = _("WATER LABYRINTH"); +static const u8 sMapName_FiveIsleMeadow[] = _("FIVE ISLE MEADOW"); +static const u8 sMapName_MemorialPillar[] = _("MEMORIAL PILLAR"); +static const u8 sMapName_OutcastIsland[] = _("OUTCAST ISLAND"); +static const u8 sMapName_GreenPath[] = _("GREEN PATH"); +static const u8 sMapName_WaterPath[] = _("WATER PATH"); +static const u8 sMapName_RuinValley[] = _("RUIN VALLEY"); +static const u8 sMapName_TrainerTower[] = _("TRAINER TOWER"); +static const u8 sMapName_CanyonEntrance[] = _("CANYON ENTRANCE"); +static const u8 sMapName_SevaultCanyon[] = _("SEVAULT CANYON"); +static const u8 sMapName_TanobyRuins[] = _("TANOBY RUINS"); +static const u8 sMapName_SeviiIsle22[] = _("SEVII ISLE 22"); +static const u8 sMapName_SeviiIsle23[] = _("SEVII ISLE 23"); +static const u8 sMapName_SeviiIsle24[] = _("SEVII ISLE 24"); +static const u8 sMapName_NavelRock[] = _("NAVEL ROCK"); +static const u8 sMapName_MtEmber[] = _("MT. EMBER"); +static const u8 sMapName_BerryForest[] = _("BERRY FOREST"); +static const u8 sMapName_IcefallCave[] = _("ICEFALL CAVE"); +static const u8 sMapName_RocketWarehouse[] = _("ROCKET WAREHOUSE"); +static const u8 sMapName_TrainerTower2[] = _("TRAINER TOWER"); +static const u8 sMapName_DottedHole[] = _("DOTTED HOLE"); +static const u8 sMapName_LostCave[] = _("LOST CAVE"); +static const u8 sMapName_PatternBush[] = _("PATTERN BUSH"); +static const u8 sMapName_AlteringCave[] = _("ALTERING CAVE"); +static const u8 sMapName_TanobyChambers[] = _("TANOBY CHAMBERS"); +static const u8 sMapName_ThreeIslePath[] = _("THREE ISLE PATH"); +static const u8 sMapName_TanobyKey[] = _("TANOBY KEY"); +static const u8 sMapName_BirthIsland[] = _("BIRTH ISLAND"); +static const u8 sMapName_MoneanChamber[] = _("MONEAN CHAMBER"); +static const u8 sMapName_LiptooChamber[] = _("LIPTOO CHAMBER"); +static const u8 sMapName_WeepthChamber[] = _("WEEPTH CHAMBER"); +static const u8 sMapName_DilfordChamber[] = _("DILFORD CHAMBER"); +static const u8 sMapName_ScufibChamber[] = _("SCUFIB CHAMBER"); +static const u8 sMapName_RixyChamber[] = _("RIXY CHAMBER"); +static const u8 sMapName_ViapoisChamber[] = _("VIAPOIS CHAMBER"); +static const u8 sMapName_EmberSpa[] = _("EMBER SPA"); +static const u8 sMapName_SpecialArea[] = _("SPECIAL AREA"); +static const u8 sMapName_AquaHideout[] = _("AQUA HIDEOUT"); +static const u8 sMapName_MagmaHideout[] = _("MAGMA HIDEOUT"); +static const u8 sMapName_MirageTower[] = _("MIRAGE TOWER"); +static const u8 sMapName_FarawayIsland[] = _("FARAWAY ISLAND"); +static const u8 sMapName_ArtisanCave[] = _("ARTISAN CAVE"); +static const u8 sMapName_MarineCave[] = _("MARINE CAVE"); +static const u8 sMapName_TerraCave[] = _("TERRA CAVE"); +static const u8 sMapName_DesertUnderpass[] = _("DESERT UNDERPASS"); +static const u8 sMapName_TrainerHill[] = _("TRAINER HILL"); const struct RegionMapLocation gRegionMapEntries[] = { - { 4, 11, 1, 1, gMapName_LittlerootTown}, - { 4, 9, 1, 1, gMapName_OldaleTown}, - { 2, 14, 1, 1, gMapName_DewfordTown}, - { 5, 3, 1, 1, gMapName_LavaridgeTown}, - { 3, 0, 1, 1, gMapName_FallarborTown}, - { 4, 6, 1, 1, gMapName_VerdanturfTown}, - {17, 10, 1, 1, gMapName_PacifidlogTown}, - { 1, 9, 1, 1, gMapName_PetalburgCity}, - { 8, 10, 1, 2, gMapName_SlateportCity}, - { 8, 6, 2, 1, gMapName_MauvilleCity}, - { 0, 5, 1, 2, gMapName_RustboroCity}, - {12, 0, 1, 1, gMapName_FortreeCity}, - {18, 3, 2, 1, gMapName_LilycoveCity}, - {24, 5, 2, 1, gMapName_MossdeepCity}, - {21, 7, 1, 1, gMapName_SootopolisCity}, - {27, 8, 1, 2, gMapName_EverGrandeCity}, - { 4, 10, 1, 1, gMapName_Route101}, - { 2, 9, 2, 1, gMapName_Route102}, - { 4, 8, 4, 1, gMapName_Route103}, - { 0, 7, 1, 3, gMapName_Route104}, - { 0, 10, 1, 3, gMapName_Route105}, - { 0, 13, 2, 1, gMapName_Route106}, - { 3, 14, 3, 1, gMapName_Route107}, - { 6, 14, 2, 1, gMapName_Route108}, - { 8, 12, 1, 3, gMapName_Route109}, - { 8, 7, 1, 3, gMapName_Route110}, - { 8, 0, 1, 6, gMapName_Route111}, - { 6, 3, 2, 1, gMapName_Route112}, - { 4, 0, 4, 1, gMapName_Route113}, - { 1, 0, 2, 3, gMapName_Route114}, - { 0, 2, 1, 3, gMapName_Route115}, - { 1, 5, 4, 1, gMapName_Route116}, - { 5, 6, 3, 1, gMapName_Route117}, - {10, 6, 2, 1, gMapName_Route118}, - {11, 0, 1, 6, gMapName_Route119}, - {13, 0, 1, 4, gMapName_Route120}, - {14, 3, 4, 1, gMapName_Route121}, - {16, 4, 1, 2, gMapName_Route122}, - {12, 6, 5, 1, gMapName_Route123}, - {20, 3, 4, 3, gMapName_Route124}, - {24, 3, 2, 2, gMapName_Route125}, - {20, 6, 3, 3, gMapName_Route126}, - {23, 6, 3, 3, gMapName_Route127}, - {23, 9, 4, 1, gMapName_Route128}, - {24, 10, 2, 1, gMapName_Route129}, - {21, 10, 3, 1, gMapName_Route130}, - {18, 10, 3, 1, gMapName_Route131}, - {15, 10, 2, 1, gMapName_Route132}, - {12, 10, 3, 1, gMapName_Route133}, - { 9, 10, 3, 1, gMapName_Route134}, - {20, 3, 4, 3, gMapName_Underwater}, - {20, 6, 3, 3, gMapName_Underwater}, - {23, 6, 3, 3, gMapName_Underwater}, - {23, 9, 4, 1, gMapName_Underwater}, - {21, 7, 1, 1, gMapName_Underwater}, - { 1, 13, 1, 1, gMapName_GraniteCave}, - { 6, 2, 1, 1, gMapName_MtChimney}, - {16, 2, 1, 1, gMapName_SafariZone}, - {22, 12, 1, 1, gMapName_BattleFrontier}, - { 0, 8, 1, 1, gMapName_PetalburgWoods}, - { 2, 5, 1, 1, gMapName_RusturfTunnel}, - { 6, 14, 1, 1, gMapName_AbandonedShip}, - { 8, 7, 1, 1, gMapName_NewMauville}, - { 0, 3, 1, 1, gMapName_MeteorFalls}, - { 1, 2, 1, 1, gMapName_MeteorFalls}, - {16, 4, 1, 1, gMapName_MtPyre}, - {19, 3, 1, 1, gMapName_AquaHideoutOld}, - {24, 4, 1, 1, gMapName_ShoalCave}, - {24, 9, 1, 1, gMapName_SeafloorCavern}, - {24, 9, 1, 1, gMapName_Underwater}, - {27, 9, 1, 1, gMapName_VictoryRoad}, - {17, 10, 1, 1, gMapName_MirageIsland}, - {21, 7, 1, 1, gMapName_CaveOfOrigin}, - {12, 14, 1, 1, gMapName_SouthernIsland}, - { 6, 3, 1, 1, gMapName_FieryPath}, - { 7, 3, 1, 1, gMapName_FieryPath}, - { 6, 3, 1, 1, gMapName_JaggedPass}, - { 7, 2, 1, 1, gMapName_JaggedPass}, - {11, 10, 1, 1, gMapName_SealedChamber}, - {11, 10, 1, 1, gMapName_Underwater}, - {13, 0, 1, 1, gMapName_ScorchedSlab}, - { 0, 10, 1, 1, gMapName_IslandCave}, - { 8, 3, 1, 1, gMapName_DesertRuins}, - {13, 2, 1, 1, gMapName_AncientTomb}, - { 0, 0, 1, 1, gMapName_InsideOfTruck}, - {19, 10, 1, 1, gMapName_SkyPillar}, - { 0, 0, 1, 1, gMapName_SecretBase}, - { 0, 0, 1, 1, gMapName_None}, - { 0, 0, 1, 1, gMapName_PalletTown}, - { 0, 0, 1, 1, gMapName_ViridianCity}, - { 0, 0, 1, 1, gMapName_PewterCity}, - { 0, 0, 1, 1, gMapName_CeruleanCity}, - { 0, 0, 1, 1, gMapName_LavenderTown}, - { 0, 0, 1, 1, gMapName_VermilionCity}, - { 0, 0, 1, 1, gMapName_CeladonCity}, - { 0, 0, 1, 1, gMapName_FuchsiaCity}, - { 0, 0, 1, 1, gMapName_CinnabarIsland}, - { 0, 0, 1, 1, gMapName_IndigoPlateau}, - { 0, 0, 1, 1, gMapName_SaffronCity}, - { 0, 0, 1, 1, gMapName_Route4}, - { 0, 0, 1, 1, gMapName_Route10}, - { 0, 0, 1, 1, gMapName_Route1}, - { 0, 0, 1, 1, gMapName_Route2}, - { 0, 0, 1, 1, gMapName_Route3}, - { 0, 0, 1, 1, gMapName_Route4_2}, - { 0, 0, 1, 1, gMapName_Route5}, - { 0, 0, 1, 1, gMapName_Route6}, - { 0, 0, 1, 1, gMapName_Route7}, - { 0, 0, 1, 1, gMapName_Route8}, - { 0, 0, 1, 1, gMapName_Route9}, - { 0, 0, 1, 1, gMapName_Route10_2}, - { 0, 0, 1, 1, gMapName_Route11}, - { 0, 0, 1, 1, gMapName_Route12}, - { 0, 0, 1, 1, gMapName_Route13}, - { 0, 0, 1, 1, gMapName_Route14}, - { 0, 0, 1, 1, gMapName_Route15}, - { 0, 0, 1, 1, gMapName_Route16}, - { 0, 0, 1, 1, gMapName_Route17}, - { 0, 0, 1, 1, gMapName_Route18}, - { 0, 0, 1, 1, gMapName_Route19}, - { 0, 0, 1, 1, gMapName_Route20}, - { 0, 0, 1, 1, gMapName_Route21}, - { 0, 0, 1, 1, gMapName_Route22}, - { 0, 0, 1, 1, gMapName_Route23}, - { 0, 0, 1, 1, gMapName_Route24}, - { 0, 0, 1, 1, gMapName_Route25}, - { 0, 0, 1, 1, gMapName_ViridianForest}, - { 0, 0, 1, 1, gMapName_MtMoon}, - { 0, 0, 1, 1, gMapName_SSAnne}, - { 0, 0, 1, 1, gMapName_UndergroundPath}, - { 0, 0, 1, 1, gMapName_UndergroundPath2}, - { 0, 0, 1, 1, gMapName_DiglettsCave}, - { 0, 0, 1, 1, gMapName_KantoVictoryRoad}, - { 0, 0, 1, 1, gMapName_RocketHideout}, - { 0, 0, 1, 1, gMapName_SilphCo}, - { 0, 0, 1, 1, gMapName_PokemonMansion}, - { 0, 0, 1, 1, gMapName_KantoSafariZone}, - { 0, 0, 1, 1, gMapName_PokemonLeague}, - { 0, 0, 1, 1, gMapName_RockTunnel}, - { 0, 0, 1, 1, gMapName_SeafoamIslands}, - { 0, 0, 1, 1, gMapName_PokemonTower}, - { 0, 0, 1, 1, gMapName_CeruleanCave}, - { 0, 0, 1, 1, gMapName_PowerPlant}, - { 0, 0, 1, 1, gMapName_OneIsland}, - { 0, 0, 1, 1, gMapName_TwoIsland}, - { 0, 0, 1, 1, gMapName_ThreeIsland}, - { 0, 0, 1, 1, gMapName_FourIsland}, - { 0, 0, 1, 1, gMapName_FiveIsland}, - { 0, 0, 1, 1, gMapName_SevenIsland}, - { 0, 0, 1, 1, gMapName_SixIsland}, - { 0, 0, 1, 1, gMapName_KindleRoad}, - { 0, 0, 1, 1, gMapName_TreasureBeach}, - { 0, 0, 1, 1, gMapName_CapeBrink}, - { 0, 0, 1, 1, gMapName_BondBridge}, - { 0, 0, 1, 1, gMapName_ThreeIslePort}, - { 0, 0, 1, 1, gMapName_SeviiIsle6}, - { 0, 0, 1, 1, gMapName_SeviiIsle7}, - { 0, 0, 1, 1, gMapName_SeviiIsle8}, - { 0, 0, 1, 1, gMapName_SeviiIsle9}, - { 0, 0, 1, 1, gMapName_ResortGorgeous}, - { 0, 0, 1, 1, gMapName_WaterLabyrinth}, - { 0, 0, 1, 1, gMapName_FiveIsleMeadow}, - { 0, 0, 1, 1, gMapName_MemorialPillar}, - { 0, 0, 1, 1, gMapName_OutcastIsland}, - { 0, 0, 1, 1, gMapName_GreenPath}, - { 0, 0, 1, 1, gMapName_WaterPath}, - { 0, 0, 1, 1, gMapName_RuinValley}, - { 0, 0, 1, 1, gMapName_TrainerTower}, - { 0, 0, 1, 1, gMapName_CanyonEntrance}, - { 0, 0, 1, 1, gMapName_SevaultCanyon}, - { 0, 0, 1, 1, gMapName_TanobyRuins}, - { 0, 0, 1, 1, gMapName_SeviiIsle22}, - { 0, 0, 1, 1, gMapName_SeviiIsle23}, - { 0, 0, 1, 1, gMapName_SeviiIsle24}, - { 0, 0, 1, 1, gMapName_NavelRock}, - { 0, 0, 1, 1, gMapName_MtEmber}, - { 0, 0, 1, 1, gMapName_BerryForest}, - { 0, 0, 1, 1, gMapName_IcefallCave}, - { 0, 0, 1, 1, gMapName_RocketWarehouse}, - { 0, 0, 1, 1, gMapName_TrainerTower2}, - { 0, 0, 1, 1, gMapName_DottedHole}, - { 0, 0, 1, 1, gMapName_LostCave}, - { 0, 0, 1, 1, gMapName_PatternBush}, - { 0, 0, 1, 1, gMapName_AlteringCave}, - { 0, 0, 1, 1, gMapName_TanobyChambers}, - { 0, 0, 1, 1, gMapName_ThreeIslePath}, - { 0, 0, 1, 1, gMapName_TanobyKey}, - { 0, 0, 1, 1, gMapName_BirthIsland}, - { 0, 0, 1, 1, gMapName_MoneanChamber}, - { 0, 0, 1, 1, gMapName_LiptooChamber}, - { 0, 0, 1, 1, gMapName_WeepthChamber}, - { 0, 0, 1, 1, gMapName_DilfordChamber}, - { 0, 0, 1, 1, gMapName_ScufibChamber}, - { 0, 0, 1, 1, gMapName_RixyChamber}, - { 0, 0, 1, 1, gMapName_ViapoisChamber}, - { 0, 0, 1, 1, gMapName_EmberSpa}, - { 0, 0, 1, 1, gMapName_SpecialArea}, - {19, 3, 1, 1, gMapName_AquaHideout}, - { 6, 3, 1, 1, gMapName_MagmaHideout}, - { 8, 2, 1, 1, gMapName_MirageTower}, - { 0, 0, 1, 1, gMapName_BirthIsland}, - { 0, 0, 1, 1, gMapName_FarawayIsland}, - {22, 12, 1, 1, gMapName_ArtisanCave}, - { 0, 0, 1, 1, gMapName_MarineCave}, - { 0, 0, 1, 1, gMapName_Underwater}, - { 0, 0, 1, 1, gMapName_TerraCave}, - { 0, 10, 1, 3, gMapName_Underwater}, - {24, 3, 2, 2, gMapName_Underwater}, - {24, 10, 2, 1, gMapName_Underwater}, - { 2, 0, 1, 1, gMapName_DesertUnderpass}, - { 6, 8, 1, 1, gMapName_AlteringCave}, - { 0, 0, 1, 1, gMapName_NavelRock}, - { 8, 4, 1, 1, gMapName_TrainerHill} + { 4, 11, 1, 1, sMapName_LittlerootTown}, + { 4, 9, 1, 1, sMapName_OldaleTown}, + { 2, 14, 1, 1, sMapName_DewfordTown}, + { 5, 3, 1, 1, sMapName_LavaridgeTown}, + { 3, 0, 1, 1, sMapName_FallarborTown}, + { 4, 6, 1, 1, sMapName_VerdanturfTown}, + {17, 10, 1, 1, sMapName_PacifidlogTown}, + { 1, 9, 1, 1, sMapName_PetalburgCity}, + { 8, 10, 1, 2, sMapName_SlateportCity}, + { 8, 6, 2, 1, sMapName_MauvilleCity}, + { 0, 5, 1, 2, sMapName_RustboroCity}, + {12, 0, 1, 1, sMapName_FortreeCity}, + {18, 3, 2, 1, sMapName_LilycoveCity}, + {24, 5, 2, 1, sMapName_MossdeepCity}, + {21, 7, 1, 1, sMapName_SootopolisCity}, + {27, 8, 1, 2, sMapName_EverGrandeCity}, + { 4, 10, 1, 1, sMapName_Route101}, + { 2, 9, 2, 1, sMapName_Route102}, + { 4, 8, 4, 1, sMapName_Route103}, + { 0, 7, 1, 3, sMapName_Route104}, + { 0, 10, 1, 3, sMapName_Route105}, + { 0, 13, 2, 1, sMapName_Route106}, + { 3, 14, 3, 1, sMapName_Route107}, + { 6, 14, 2, 1, sMapName_Route108}, + { 8, 12, 1, 3, sMapName_Route109}, + { 8, 7, 1, 3, sMapName_Route110}, + { 8, 0, 1, 6, sMapName_Route111}, + { 6, 3, 2, 1, sMapName_Route112}, + { 4, 0, 4, 1, sMapName_Route113}, + { 1, 0, 2, 3, sMapName_Route114}, + { 0, 2, 1, 3, sMapName_Route115}, + { 1, 5, 4, 1, sMapName_Route116}, + { 5, 6, 3, 1, sMapName_Route117}, + {10, 6, 2, 1, sMapName_Route118}, + {11, 0, 1, 6, sMapName_Route119}, + {13, 0, 1, 4, sMapName_Route120}, + {14, 3, 4, 1, sMapName_Route121}, + {16, 4, 1, 2, sMapName_Route122}, + {12, 6, 5, 1, sMapName_Route123}, + {20, 3, 4, 3, sMapName_Route124}, + {24, 3, 2, 2, sMapName_Route125}, + {20, 6, 3, 3, sMapName_Route126}, + {23, 6, 3, 3, sMapName_Route127}, + {23, 9, 4, 1, sMapName_Route128}, + {24, 10, 2, 1, sMapName_Route129}, + {21, 10, 3, 1, sMapName_Route130}, + {18, 10, 3, 1, sMapName_Route131}, + {15, 10, 2, 1, sMapName_Route132}, + {12, 10, 3, 1, sMapName_Route133}, + { 9, 10, 3, 1, sMapName_Route134}, + {20, 3, 4, 3, sMapName_Underwater}, + {20, 6, 3, 3, sMapName_Underwater}, + {23, 6, 3, 3, sMapName_Underwater}, + {23, 9, 4, 1, sMapName_Underwater}, + {21, 7, 1, 1, sMapName_Underwater}, + { 1, 13, 1, 1, sMapName_GraniteCave}, + { 6, 2, 1, 1, sMapName_MtChimney}, + {16, 2, 1, 1, sMapName_SafariZone}, + {22, 12, 1, 1, sMapName_BattleFrontier}, + { 0, 8, 1, 1, sMapName_PetalburgWoods}, + { 2, 5, 1, 1, sMapName_RusturfTunnel}, + { 6, 14, 1, 1, sMapName_AbandonedShip}, + { 8, 7, 1, 1, sMapName_NewMauville}, + { 0, 3, 1, 1, sMapName_MeteorFalls}, + { 1, 2, 1, 1, sMapName_MeteorFalls}, + {16, 4, 1, 1, sMapName_MtPyre}, + {19, 3, 1, 1, sMapName_AquaHideoutOld}, + {24, 4, 1, 1, sMapName_ShoalCave}, + {24, 9, 1, 1, sMapName_SeafloorCavern}, + {24, 9, 1, 1, sMapName_Underwater}, + {27, 9, 1, 1, sMapName_VictoryRoad}, + {17, 10, 1, 1, sMapName_MirageIsland}, + {21, 7, 1, 1, sMapName_CaveOfOrigin}, + {12, 14, 1, 1, sMapName_SouthernIsland}, + { 6, 3, 1, 1, sMapName_FieryPath}, + { 7, 3, 1, 1, sMapName_FieryPath}, + { 6, 3, 1, 1, sMapName_JaggedPass}, + { 7, 2, 1, 1, sMapName_JaggedPass}, + {11, 10, 1, 1, sMapName_SealedChamber}, + {11, 10, 1, 1, sMapName_Underwater}, + {13, 0, 1, 1, sMapName_ScorchedSlab}, + { 0, 10, 1, 1, sMapName_IslandCave}, + { 8, 3, 1, 1, sMapName_DesertRuins}, + {13, 2, 1, 1, sMapName_AncientTomb}, + { 0, 0, 1, 1, sMapName_InsideOfTruck}, + {19, 10, 1, 1, sMapName_SkyPillar}, + { 0, 0, 1, 1, sMapName_SecretBase}, + { 0, 0, 1, 1, sMapName_None}, + { 0, 0, 1, 1, sMapName_PalletTown}, + { 0, 0, 1, 1, sMapName_ViridianCity}, + { 0, 0, 1, 1, sMapName_PewterCity}, + { 0, 0, 1, 1, sMapName_CeruleanCity}, + { 0, 0, 1, 1, sMapName_LavenderTown}, + { 0, 0, 1, 1, sMapName_VermilionCity}, + { 0, 0, 1, 1, sMapName_CeladonCity}, + { 0, 0, 1, 1, sMapName_FuchsiaCity}, + { 0, 0, 1, 1, sMapName_CinnabarIsland}, + { 0, 0, 1, 1, sMapName_IndigoPlateau}, + { 0, 0, 1, 1, sMapName_SaffronCity}, + { 0, 0, 1, 1, sMapName_Route4}, + { 0, 0, 1, 1, sMapName_Route10}, + { 0, 0, 1, 1, sMapName_Route1}, + { 0, 0, 1, 1, sMapName_Route2}, + { 0, 0, 1, 1, sMapName_Route3}, + { 0, 0, 1, 1, sMapName_Route4_2}, + { 0, 0, 1, 1, sMapName_Route5}, + { 0, 0, 1, 1, sMapName_Route6}, + { 0, 0, 1, 1, sMapName_Route7}, + { 0, 0, 1, 1, sMapName_Route8}, + { 0, 0, 1, 1, sMapName_Route9}, + { 0, 0, 1, 1, sMapName_Route10_2}, + { 0, 0, 1, 1, sMapName_Route11}, + { 0, 0, 1, 1, sMapName_Route12}, + { 0, 0, 1, 1, sMapName_Route13}, + { 0, 0, 1, 1, sMapName_Route14}, + { 0, 0, 1, 1, sMapName_Route15}, + { 0, 0, 1, 1, sMapName_Route16}, + { 0, 0, 1, 1, sMapName_Route17}, + { 0, 0, 1, 1, sMapName_Route18}, + { 0, 0, 1, 1, sMapName_Route19}, + { 0, 0, 1, 1, sMapName_Route20}, + { 0, 0, 1, 1, sMapName_Route21}, + { 0, 0, 1, 1, sMapName_Route22}, + { 0, 0, 1, 1, sMapName_Route23}, + { 0, 0, 1, 1, sMapName_Route24}, + { 0, 0, 1, 1, sMapName_Route25}, + { 0, 0, 1, 1, sMapName_ViridianForest}, + { 0, 0, 1, 1, sMapName_MtMoon}, + { 0, 0, 1, 1, sMapName_SSAnne}, + { 0, 0, 1, 1, sMapName_UndergroundPath}, + { 0, 0, 1, 1, sMapName_UndergroundPath2}, + { 0, 0, 1, 1, sMapName_DiglettsCave}, + { 0, 0, 1, 1, sMapName_KantoVictoryRoad}, + { 0, 0, 1, 1, sMapName_RocketHideout}, + { 0, 0, 1, 1, sMapName_SilphCo}, + { 0, 0, 1, 1, sMapName_PokemonMansion}, + { 0, 0, 1, 1, sMapName_KantoSafariZone}, + { 0, 0, 1, 1, sMapName_PokemonLeague}, + { 0, 0, 1, 1, sMapName_RockTunnel}, + { 0, 0, 1, 1, sMapName_SeafoamIslands}, + { 0, 0, 1, 1, sMapName_PokemonTower}, + { 0, 0, 1, 1, sMapName_CeruleanCave}, + { 0, 0, 1, 1, sMapName_PowerPlant}, + { 0, 0, 1, 1, sMapName_OneIsland}, + { 0, 0, 1, 1, sMapName_TwoIsland}, + { 0, 0, 1, 1, sMapName_ThreeIsland}, + { 0, 0, 1, 1, sMapName_FourIsland}, + { 0, 0, 1, 1, sMapName_FiveIsland}, + { 0, 0, 1, 1, sMapName_SevenIsland}, + { 0, 0, 1, 1, sMapName_SixIsland}, + { 0, 0, 1, 1, sMapName_KindleRoad}, + { 0, 0, 1, 1, sMapName_TreasureBeach}, + { 0, 0, 1, 1, sMapName_CapeBrink}, + { 0, 0, 1, 1, sMapName_BondBridge}, + { 0, 0, 1, 1, sMapName_ThreeIslePort}, + { 0, 0, 1, 1, sMapName_SeviiIsle6}, + { 0, 0, 1, 1, sMapName_SeviiIsle7}, + { 0, 0, 1, 1, sMapName_SeviiIsle8}, + { 0, 0, 1, 1, sMapName_SeviiIsle9}, + { 0, 0, 1, 1, sMapName_ResortGorgeous}, + { 0, 0, 1, 1, sMapName_WaterLabyrinth}, + { 0, 0, 1, 1, sMapName_FiveIsleMeadow}, + { 0, 0, 1, 1, sMapName_MemorialPillar}, + { 0, 0, 1, 1, sMapName_OutcastIsland}, + { 0, 0, 1, 1, sMapName_GreenPath}, + { 0, 0, 1, 1, sMapName_WaterPath}, + { 0, 0, 1, 1, sMapName_RuinValley}, + { 0, 0, 1, 1, sMapName_TrainerTower}, + { 0, 0, 1, 1, sMapName_CanyonEntrance}, + { 0, 0, 1, 1, sMapName_SevaultCanyon}, + { 0, 0, 1, 1, sMapName_TanobyRuins}, + { 0, 0, 1, 1, sMapName_SeviiIsle22}, + { 0, 0, 1, 1, sMapName_SeviiIsle23}, + { 0, 0, 1, 1, sMapName_SeviiIsle24}, + { 0, 0, 1, 1, sMapName_NavelRock}, + { 0, 0, 1, 1, sMapName_MtEmber}, + { 0, 0, 1, 1, sMapName_BerryForest}, + { 0, 0, 1, 1, sMapName_IcefallCave}, + { 0, 0, 1, 1, sMapName_RocketWarehouse}, + { 0, 0, 1, 1, sMapName_TrainerTower2}, + { 0, 0, 1, 1, sMapName_DottedHole}, + { 0, 0, 1, 1, sMapName_LostCave}, + { 0, 0, 1, 1, sMapName_PatternBush}, + { 0, 0, 1, 1, sMapName_AlteringCave}, + { 0, 0, 1, 1, sMapName_TanobyChambers}, + { 0, 0, 1, 1, sMapName_ThreeIslePath}, + { 0, 0, 1, 1, sMapName_TanobyKey}, + { 0, 0, 1, 1, sMapName_BirthIsland}, + { 0, 0, 1, 1, sMapName_MoneanChamber}, + { 0, 0, 1, 1, sMapName_LiptooChamber}, + { 0, 0, 1, 1, sMapName_WeepthChamber}, + { 0, 0, 1, 1, sMapName_DilfordChamber}, + { 0, 0, 1, 1, sMapName_ScufibChamber}, + { 0, 0, 1, 1, sMapName_RixyChamber}, + { 0, 0, 1, 1, sMapName_ViapoisChamber}, + { 0, 0, 1, 1, sMapName_EmberSpa}, + { 0, 0, 1, 1, sMapName_SpecialArea}, + {19, 3, 1, 1, sMapName_AquaHideout}, + { 6, 3, 1, 1, sMapName_MagmaHideout}, + { 8, 2, 1, 1, sMapName_MirageTower}, + { 0, 0, 1, 1, sMapName_BirthIsland}, + { 0, 0, 1, 1, sMapName_FarawayIsland}, + {22, 12, 1, 1, sMapName_ArtisanCave}, + { 0, 0, 1, 1, sMapName_MarineCave}, + { 0, 0, 1, 1, sMapName_Underwater}, + { 0, 0, 1, 1, sMapName_TerraCave}, + { 0, 10, 1, 3, sMapName_Underwater}, + {24, 3, 2, 2, sMapName_Underwater}, + {24, 10, 2, 1, sMapName_Underwater}, + { 2, 0, 1, 1, sMapName_DesertUnderpass}, + { 6, 8, 1, 1, sMapName_AlteringCave}, + { 0, 0, 1, 1, sMapName_NavelRock}, + { 8, 4, 1, 1, sMapName_TrainerHill} }; #endif //GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H diff --git a/include/gba/types.h b/include/gba/types.h index e9a380023..9f63489aa 100644 --- a/include/gba/types.h +++ b/include/gba/types.h @@ -49,7 +49,7 @@ struct OamData u32 matrixNum:5; // bits 3/4 are h-flip/v-flip if not in affine mode u32 size:2; - /*0x04*/ u16 tileNum:10; // 0x33F + /*0x04*/ u16 tileNum:10; // 0x3FF u16 priority:2; // 0x400, 0x800 -> 0xC00 u16 paletteNum:4; /*0x06*/ u16 affineParam; diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index bb0837e1d..3e9f13523 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -39,7 +39,7 @@ enum MAP_BATTLE_SCENE_PHOEBE, // 5 MAP_BATTLE_SCENE_GLACIA, // 6 MAP_BATTLE_SCENE_DRAKE, // 7 - MAP_BATTLE_SCENE_BATTLE_TOWER, // 8 + MAP_BATTLE_SCENE_FRONTIER, // 8 }; typedef void (*TilesetCB)(void); diff --git a/include/graphics.h b/include/graphics.h index aad5c0190..15af31c6e 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -141,4 +141,82 @@ extern const u8 gUnknown_08DDB020[]; extern const u8 gUnknown_08DDB2C4[]; extern const u16 gUnknown_08DDAFE0[]; +extern const u8 gBattleTextboxTiles[]; +extern const u8 gBattleTextboxTilemap[]; +extern const u8 gBattleTextboxPalette[]; +extern const u8 gUnknown_08D778F0[]; +extern const u8 gUnknown_08D77B0C[]; +extern const u8 gUnknown_08D77AE4[]; +extern const u8 gUnknown_08D779D8[]; +extern const u8 gUnknown_08D857A8[]; +extern const u8 gUnknown_08D85A1C[]; +extern const u8 gUnknown_08D85600[]; + +// battle terrains +extern const u8 gBattleTerrainTiles_TallGrass[]; +extern const u8 gBattleTerrainTilemap_TallGrass[]; +extern const u8 gBattleTerrainAnimTiles_TallGrass[]; +extern const u8 gBattleTerrainAnimTilemap_TallGrass[]; +extern const u8 gBattleTerrainPalette_TallGrass[]; +extern const u8 gBattleTerrainTiles_LongGrass[]; +extern const u8 gBattleTerrainTilemap_LongGrass[]; +extern const u8 gBattleTerrainAnimTiles_LongGrass[]; +extern const u8 gBattleTerrainAnimTilemap_LongGrass[]; +extern const u8 gBattleTerrainPalette_LongGrass[]; +extern const u8 gBattleTerrainTiles_Sand[]; +extern const u8 gBattleTerrainTilemap_Sand[]; +extern const u8 gBattleTerrainAnimTiles_Sand[]; +extern const u8 gBattleTerrainAnimTilemap_Sand[]; +extern const u8 gBattleTerrainPalette_Sand[]; +extern const u8 gBattleTerrainTiles_Underwater[]; +extern const u8 gBattleTerrainTilemap_Underwater[]; +extern const u8 gBattleTerrainAnimTiles_Underwater[]; +extern const u8 gBattleTerrainAnimTilemap_Underwater[]; +extern const u8 gBattleTerrainPalette_Underwater[]; +extern const u8 gBattleTerrainTiles_Water[]; +extern const u8 gBattleTerrainTilemap_Water[]; +extern const u8 gBattleTerrainAnimTiles_Water[]; +extern const u8 gBattleTerrainAnimTilemap_Water[]; +extern const u8 gBattleTerrainPalette_Water[]; +extern const u8 gBattleTerrainTiles_PondWater[]; +extern const u8 gBattleTerrainTilemap_PondWater[]; +extern const u8 gBattleTerrainAnimTiles_PondWater[]; +extern const u8 gBattleTerrainAnimTilemap_PondWater[]; +extern const u8 gBattleTerrainPalette_PondWater[]; +extern const u8 gBattleTerrainTiles_Rock[]; +extern const u8 gBattleTerrainTilemap_Rock[]; +extern const u8 gBattleTerrainAnimTiles_Rock[]; +extern const u8 gBattleTerrainAnimTilemap_Rock[]; +extern const u8 gBattleTerrainPalette_Rock[]; +extern const u8 gBattleTerrainTiles_Cave[]; +extern const u8 gBattleTerrainTilemap_Cave[]; +extern const u8 gBattleTerrainAnimTiles_Cave[]; +extern const u8 gBattleTerrainAnimTilemap_Cave[]; +extern const u8 gBattleTerrainPalette_Cave[]; +extern const u8 gBattleTerrainTiles_Building[]; +extern const u8 gBattleTerrainTilemap_Building[]; +extern const u8 gBattleTerrainAnimTiles_Building[]; +extern const u8 gBattleTerrainAnimTilemap_Building[]; +extern const u8 gBattleTerrainPalette_Building[]; +extern const u8 gBattleTerrainPalette_Plain[]; +extern const u8 gBattleTerrainPalette_Frontier[]; +extern const u8 gBattleTerrainTiles_Stadium[]; +extern const u8 gBattleTerrainTilemap_Stadium[]; +extern const u8 gBattleTerrainTiles_Rayquaza[]; +extern const u8 gBattleTerrainTilemap_Rayquaza[]; +extern const u8 gBattleTerrainAnimTiles_Rayquaza[]; +extern const u8 gBattleTerrainAnimTilemap_Rayquaza[]; +extern const u8 gBattleTerrainPalette_Rayquaza[]; +extern const u8 gBattleTerrainPalette_Kyogre[]; +extern const u8 gBattleTerrainPalette_Groudon[]; +extern const u8 gBattleTerrainPalette_BuildingGym[]; +extern const u8 gBattleTerrainPalette_BuildingLeader[]; +extern const u8 gBattleTerrainPalette_StadiumAqua[]; +extern const u8 gBattleTerrainPalette_StadiumMagma[]; +extern const u8 gBattleTerrainPalette_StadiumSidney[]; +extern const u8 gBattleTerrainPalette_StadiumPhoebe[]; +extern const u8 gBattleTerrainPalette_StadiumGlacia[]; +extern const u8 gBattleTerrainPalette_StadiumDrake[]; +extern const u8 gBattleTerrainPalette_StadiumWallace[]; + #endif //GUARD_GRAPHICS_H diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index c52184972..dad819c51 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -14,5 +14,6 @@ void sub_8197434(u8 a0, u8 a1); void SetStandardWindowBorderStyle(u8 a0, u8 a1); void sub_8197930(void); u8 GetPlayerTextSpeed(void); +void sub_81978B0(u16 arg0); #endif // GUARD_NEW_MENU_HELPERS_H diff --git a/include/strings.h b/include/strings.h index 84d7084b4..e3650bc63 100644 --- a/include/strings.h +++ b/include/strings.h @@ -88,5 +88,8 @@ extern const u8 gText_Cancel4[]; extern const u8 gText_IsThisTheCorrectTime[]; extern const u8 gText_PkmnFainted3[]; extern const u8 gText_Coins[]; +extern const u8 gText_Draw[]; +extern const u8 gText_Loss[]; +extern const u8 gText_Win[]; #endif //GUARD_STRINGS_H diff --git a/ld_script.txt b/ld_script.txt index 17a959bd0..508265cbf 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -56,7 +56,8 @@ SECTIONS { asm/main_menu.o(.text); src/battle_controllers.o(.text); src/decompress.o(.text); - asm/battle_1.o(.text); + asm/rom_8034C54.o(.text); + src/battle_bg.o(.text); src/battle_2.o(.text); src/battle_util.o(.text); src/battle_script_commands.o(.text); diff --git a/src/battle_2.c b/src/battle_2.c index 7bde3d174..f8b4113f0 100644 --- a/src/battle_2.c +++ b/src/battle_2.c @@ -152,7 +152,7 @@ extern u8 gUnknown_020241E9; extern u16 gChosenMove; extern const struct BattleMove gBattleMoves[]; -extern const u16 gUnknown_08C004E0[]; // battle textbox palette +extern const u16 gBattleTextboxPalette[]; // battle textbox palette extern const struct BgTemplate gUnknown_0831AA08[]; extern const struct WindowTemplate * const gUnknown_0831ABA0[]; extern const u8 gUnknown_0831ACE0[]; @@ -754,7 +754,7 @@ static void CB2_HandleStartBattle(void) ResetBlockReceivedFlags(); sub_8036EB8(2, playerMultiplayerId); SetAllPlayersBerryData(); - taskId = CreateTask(task00_0800F6FC, 0); + taskId = CreateTask(sub_8035D74, 0); gTasks[taskId].data[1] = 0x10E; gTasks[taskId].data[2] = 0x5A; gTasks[taskId].data[5] = 0; @@ -956,7 +956,7 @@ static void CB2_HandleStartMultiPartnerBattle(void) ResetBlockReceivedFlags(); sub_8036EB8(2, playerMultiplayerId); SetAllPlayersBerryData(); - taskId = CreateTask(task00_0800F6FC, 0); + taskId = CreateTask(sub_8035D74, 0); gTasks[taskId].data[1] = 0x10E; gTasks[taskId].data[2] = 0x5A; gTasks[taskId].data[5] = 0; @@ -1342,7 +1342,7 @@ static void CB2_HandleStartMultiBattle(void) sub_8036EB8(4, playerMultiplayerId); SetAllPlayersBerryData(); sub_8068AA4(); - var = CreateTask(task00_0800F6FC, 0); + var = CreateTask(sub_8035D74, 0); gTasks[var].data[1] = 0x10E; gTasks[var].data[2] = 0x5A; gTasks[var].data[5] = 0; @@ -1978,7 +1978,7 @@ void sub_8038D64(void) gBattle_BG3_Y = 0; sub_80356D0(); - LoadCompressedPalette(gUnknown_08C004E0, 0, 64); + LoadCompressedPalette(gBattleTextboxPalette, 0, 64); ApplyPlayerChosenFrameToBattleMenu(); ResetSpriteData(); ResetTasks(); @@ -1988,7 +1988,7 @@ void sub_8038D64(void) gReservedSpritePaletteCount = 4; SetVBlankCallback(VBlankCB_Battle); - taskId = CreateTask(task00_0800F6FC, 0); + taskId = CreateTask(sub_8035D74, 0); gTasks[taskId].data[1] = 0x10E; gTasks[taskId].data[2] = 0x5A; gTasks[taskId].data[5] = 1; diff --git a/src/battle_bg.c b/src/battle_bg.c new file mode 100644 index 000000000..24a88c4f5 --- /dev/null +++ b/src/battle_bg.c @@ -0,0 +1,754 @@ +#include "global.h" +#include "battle.h" +#include "sprite.h" +#include "constants\trainers.h" +#include "graphics.h" +#include "decompress.h" +#include "bg.h" +#include "palette.h" +#include "main.h" +#include "gpu_regs.h" +#include "link.h" +#include "battle_message.h" +#include "task.h" +#include "trig.h" +#include "sound.h" +#include "songs.h" +#include "strings.h" +#include "window.h" +#include "text_window.h" +#include "new_menu_helpers.h" + +struct BattleBackground +{ + const void *tileset; + const void *tilemap; + const void *entryTileset; + const void *entryTilemap; + const void *palette; +}; + +extern const struct SpriteTemplate gUnknown_0831A9D0; +extern const struct SpriteTemplate gUnknown_0831A9E8; +extern const struct CompressedSpriteSheet gUnknown_0831AA00; +extern const struct BgTemplate gUnknown_0831AA08[4]; +extern const struct WindowTemplate *gUnknown_0831ABA0[]; +extern const struct BattleBackground gBattleTerrainTable[]; + +extern u8 gBattleTerrain; +extern u16 gTrainerBattleOpponent_A; +extern u16 gBattle_BG1_X; +extern u16 gBattle_BG1_Y; +extern u16 gBattle_BG2_X; +extern u16 gBattle_BG2_Y; +extern u16 gPartnerTrainerId; + +extern u8 GetCurrentMapBattleScene(void); + +void sub_8035658(void) +{ + ResetBgsAndClearDma3BusyFlags(0); + InitBgsFromTemplates(0, gUnknown_0831AA08, ARRAY_COUNT(gUnknown_0831AA08)); + + if (gBattleTypeFlags & BATTLE_TYPE_ARENA) + { + gBattleScripting.field_24 = 1; + SetBgTilemapBuffer(1, gUnknown_02023060); + SetBgTilemapBuffer(2, gUnknown_02023060); + } + else + { + gBattleScripting.field_24 = 0; + } + + InitWindows(gUnknown_0831ABA0[gBattleScripting.field_24]); + DeactivateAllTextPrinters(); +} + +void sub_80356D0(void) +{ + DisableInterrupts(INTR_FLAG_HBLANK); + EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL); + sub_8035658(); + SetGpuReg(REG_OFFSET_BLDCNT, 0); + SetGpuReg(REG_OFFSET_BLDALPHA, 0); + SetGpuReg(REG_OFFSET_BLDY, 0); + SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJWIN_ON | DISPCNT_WIN0_ON | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); +} + +void ApplyPlayerChosenFrameToBattleMenu(void) +{ + sub_809882C(2, 0x12, 0x10); + sub_809882C(2, 0x22, 0x10); + LoadCompressedPalette(gUnknown_08D85600, 0x50, 0x20); + + if (gBattleTypeFlags & BATTLE_TYPE_ARENA) + { + sub_81978B0(0x70); + copy_textbox_border_tile_patterns_to_vram(0, 0x30, 0x70); + gPlttBufferUnfaded[0x76] = 0; + CpuCopy16(&gPlttBufferUnfaded[0x76], &gPlttBufferFaded[0x76], 2); + } +} + +void DrawMainBattleBackground(void) +{ + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_FRONTIER | BATTLE_TYPE_EREADER_TRAINER | BATTLE_TYPE_x2000000)) + { + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); + } + else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) + { + LZDecompressVram(gBattleTerrainTiles_Cave, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Cave, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_Groudon, 0x20, 0x60); + } + else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE) + { + LZDecompressVram(gBattleTerrainTiles_Water, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Water, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_Kyogre, 0x20, 0x60); + } + else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA) + { + LZDecompressVram(gBattleTerrainTiles_Rayquaza, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Rayquaza, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_Rayquaza, 0x20, 0x60); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; + if (trainerClass == TRAINER_CLASS_LEADER) + { + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, 0x20, 0x60); + return; + } + else if (trainerClass == TRAINER_CLASS_CHAMPION) + { + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, 0x20, 0x60); + return; + } + } + + switch (GetCurrentMapBattleScene()) + { + default: + case MAP_BATTLE_SCENE_NORMAL: + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tileset, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tilemap, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_GYM: + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_MAGMA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_AQUA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_SIDNEY: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_PHOEBE: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_GLACIA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_DRAKE: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_FRONTIER: + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); + break; + } + } +} + +void LoadBattleTextboxAndBackground(void) +{ + LZDecompressVram(gBattleTextboxTiles, (void*)(VRAM)); + CopyToBgTilemapBuffer(0, gBattleTextboxTilemap, 0, 0); + CopyBgTilemapBufferToVram(0); + LoadCompressedPalette(gBattleTextboxPalette, 0, 0x40); + ApplyPlayerChosenFrameToBattleMenu(); + + DrawMainBattleBackground(); +} + +static void sub_8035AE4(u8 taskId, u8 bank, u8 bgId, u8 destX, u8 destY) +{ + s32 i; + u16 var = 0; + u16 src[6]; + + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + { + if (gTasks[taskId].data[5] != 0) + { + switch (bank) + { + case 0: + var = 0x3F & gTasks[taskId].data[3]; + break; + case 1: + var = (0xFC0 & gTasks[taskId].data[4]) >> 6; + break; + case 2: + var = (0xFC0 & gTasks[taskId].data[3]) >> 6; + break; + case 3: + var = 0x3F & gTasks[taskId].data[4]; + break; + } + } + else + { + switch (bank) + { + case 0: + var = 0x3F & gTasks[taskId].data[3]; + break; + case 1: + var = 0x3F & gTasks[taskId].data[4]; + break; + case 2: + var = (0xFC0 & gTasks[taskId].data[3]) >> 6; + break; + case 3: + var = (0xFC0 & gTasks[taskId].data[4]) >> 6; + break; + } + } + + for (i = 0; i < 3; i++) + { + src[i] = ((var & (3 << (i * 2))) >> (i * 2)) + 0x6001; + } + + CopyToBgTilemapBufferRect_ChangePalette(bgId, src, destX, destY, 3, 1, 0x11); + CopyBgTilemapBufferToVram(bgId); + } + else + { + if (bank == gBattleScripting.multiplayerId) + var = gTasks[taskId].data[3]; + else + var = gTasks[taskId].data[4]; + + for (i = 0; i < 6; i++) + { + src[i] = ((var & (3 << (i * 2))) >> (i * 2)) + 0x6001; + } + + CopyToBgTilemapBufferRect_ChangePalette(bgId, src, destX, destY, 6, 1, 0x11); + CopyBgTilemapBufferToVram(bgId); + } +} + +static void sub_8035C4C(void) +{ + if (gBattleOutcome == BATTLE_DREW) + { + BattleHandleAddTextPrinter(gText_Draw, 0x15); + } + else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + { + if (gBattleOutcome == BATTLE_WON) + { + switch (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18) + { + case 0: + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + break; + case 1: + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + break; + case 2: + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + break; + case 3: + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + break; + } + } + else + { + switch (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18) + { + case 0: + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + break; + case 1: + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + break; + case 2: + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + break; + case 3: + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + break; + } + } + } + else if (gBattleOutcome == BATTLE_WON) + { + if (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18 != 0) + { + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + } + else + { + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + } + } + else + { + if (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18 != 0) + { + BattleHandleAddTextPrinter(gText_Win, 0x16); + BattleHandleAddTextPrinter(gText_Loss, 0x17); + } + else + { + BattleHandleAddTextPrinter(gText_Win, 0x17); + BattleHandleAddTextPrinter(gText_Loss, 0x16); + } + } +} + +void sub_8035D74(u8 taskId) +{ + struct LinkPlayer *linkPlayer; + u8 *name; + s32 i, palId; + + switch (gTasks[taskId].data[0]) + { + case 0: + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + { + for (i = 0; i < BATTLE_BANKS_COUNT; i++) + { + name = gLinkPlayers[i].name; + linkPlayer = &gLinkPlayers[i]; + + switch (linkPlayer->lp_field_18) + { + case 0: + BattleHandleAddTextPrinter(name, 0x11); + sub_8035AE4(taskId, linkPlayer->lp_field_18, 1, 2, 4); + break; + case 1: + BattleHandleAddTextPrinter(name, 0x12); + sub_8035AE4(taskId, linkPlayer->lp_field_18, 2, 2, 4); + break; + case 2: + BattleHandleAddTextPrinter(name, 0x13); + sub_8035AE4(taskId, linkPlayer->lp_field_18, 1, 2, 8); + break; + case 3: + BattleHandleAddTextPrinter(name, 0x14); + sub_8035AE4(taskId, linkPlayer->lp_field_18, 2, 2, 8); + break; + } + } + } + else + { + u8 playerId = gBattleScripting.multiplayerId; + u8 opponentId = playerId ^ BIT_SIDE; + u8 opponentId_copy = opponentId; + + if (gLinkPlayers[playerId].lp_field_18 != 0) + opponentId = playerId, playerId = opponentId_copy; + + name = gLinkPlayers[playerId].name; + BattleHandleAddTextPrinter(name, 0xF); + + name = gLinkPlayers[opponentId].name; + BattleHandleAddTextPrinter(name, 0x10); + + sub_8035AE4(taskId, playerId, 1, 2, 7); + sub_8035AE4(taskId, opponentId, 2, 2, 7); + } + gTasks[taskId].data[0]++; + break; + case 1: + palId = AllocSpritePalette(0x2710); + gPlttBufferUnfaded[palId * 16 + 0x10F] = gPlttBufferFaded[palId * 16 + 0x10F] = 0x7FFF; + gBattleStruct->field_7D = CreateSprite(&gUnknown_0831A9D0, 111, 80, 0); + gBattleStruct->field_7E = CreateSprite(&gUnknown_0831A9E8, 129, 80, 0); + gSprites[gBattleStruct->field_7D].invisible = 1; + gSprites[gBattleStruct->field_7E].invisible = 1; + gTasks[taskId].data[0]++; + break; + case 2: + if (gTasks[taskId].data[5] != 0) + { + gBattle_BG1_X = -(20) - (Sin2(gTasks[taskId].data[1]) / 32); + gBattle_BG2_X = -(140) - (Sin2(gTasks[taskId].data[2]) / 32); + gBattle_BG1_Y = -36; + gBattle_BG2_Y = -36; + } + else + { + gBattle_BG1_X = -(20) - (Sin2(gTasks[taskId].data[1]) / 32); + gBattle_BG1_Y = (Cos2(gTasks[taskId].data[1]) / 32) - 164; + gBattle_BG2_X = -(140) - (Sin2(gTasks[taskId].data[2]) / 32); + gBattle_BG2_Y = (Cos2(gTasks[taskId].data[2]) / 32) - 164; + } + + if (gTasks[taskId].data[2] != 0) + { + gTasks[taskId].data[2] -= 2; + gTasks[taskId].data[1] += 2; + } + else + { + if (gTasks[taskId].data[5] != 0) + sub_8035C4C(); + + PlaySE(SE_W231); + DestroyTask(taskId); + gSprites[gBattleStruct->field_7D].invisible = 0; + gSprites[gBattleStruct->field_7E].invisible = 0; + gSprites[gBattleStruct->field_7E].oam.tileNum += 0x40; + gSprites[gBattleStruct->field_7D].data[0] = 0; + gSprites[gBattleStruct->field_7E].data[0] = 1; + gSprites[gBattleStruct->field_7D].data[1] = gSprites[gBattleStruct->field_7D].pos1.x; + gSprites[gBattleStruct->field_7E].data[1] = gSprites[gBattleStruct->field_7E].pos1.x; + gSprites[gBattleStruct->field_7D].data[2] = 0; + gSprites[gBattleStruct->field_7E].data[2] = 0; + } + break; + } +} + +void LoadBattleEntryBackground(void) +{ + if (gBattleTypeFlags & BATTLE_TYPE_LINK) + { + LZDecompressVram(gUnknown_08D778F0, (void*)(VRAM + 0x4000)); + LZDecompressVram(gUnknown_08D77B0C, (void*)(VRAM + 0x10000)); + LoadCompressedPalette(gUnknown_08D77AE4, 0x60, 0x20); + SetBgAttribute(1, BG_CTRL_ATTR_MAPBASEINDEX, 1); + SetGpuReg(REG_OFFSET_BG1CNT, 0x5C04); + CopyToBgTilemapBuffer(1, gUnknown_08D779D8, 0, 0); + CopyToBgTilemapBuffer(2, gUnknown_08D779D8, 0, 0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + SetGpuReg(REG_OFFSET_WININ, 0x36); + SetGpuReg(REG_OFFSET_WINOUT, 0x36); + gBattle_BG1_Y = 0xFF5C; + gBattle_BG2_Y = 0xFF5C; + LoadCompressedObjectPicUsingHeap(&gUnknown_0831AA00); + } + else if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000 | BATTLE_TYPE_EREADER_TRAINER)) + { + if (!(gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) || gPartnerTrainerId == STEVEN_PARTNER_ID) + { + LZDecompressVram(gBattleTerrainAnimTiles_Building, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void*)(VRAM + 0xE000)); + } + else + { + SetBgAttribute(1, BG_CTRL_ATTR_VISIBLE, 2); + SetBgAttribute(2, BG_CTRL_ATTR_VISIBLE, 2); + CopyToBgTilemapBuffer(1, gUnknown_08D857A8, 0, 0); + CopyToBgTilemapBuffer(2, gUnknown_08D85A1C, 0, 0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + } + } + else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) + { + LZDecompressVram(gBattleTerrainAnimTiles_Cave, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Cave, (void*)(VRAM + 0xE000)); + } + else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE) + { + LZDecompressVram(gBattleTerrainAnimTiles_Underwater, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Underwater, (void*)(VRAM + 0xE000)); + } + else if (gBattleTypeFlags & BATTLE_TYPE_RAYQUAZA) + { + LZDecompressVram(gBattleTerrainAnimTiles_Rayquaza, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Rayquaza, (void*)(VRAM + 0xE000)); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; + if (trainerClass == TRAINER_CLASS_LEADER) + { + LZDecompressVram(gBattleTerrainAnimTiles_Building, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void*)(VRAM + 0xE000)); + return; + } + else if (trainerClass == TRAINER_CLASS_CHAMPION) + { + LZDecompressVram(gBattleTerrainAnimTiles_Building, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void*)(VRAM + 0xE000)); + return; + } + } + + if (GetCurrentMapBattleScene() == MAP_BATTLE_SCENE_NORMAL) + { + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].entryTileset, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].entryTilemap, (void*)(VRAM + 0xE000)); + } + else + { + LZDecompressVram(gBattleTerrainAnimTiles_Building, (void*)(VRAM + 0x4000)); + LZDecompressVram(gBattleTerrainAnimTilemap_Building, (void*)(VRAM + 0xE000)); + } + } +} + +bool8 LoadChosenBattleElement(u8 caseId) +{ + bool8 ret = FALSE; + + switch (caseId) + { + case 0: + LZDecompressVram(gBattleTextboxTiles, (void*)(VRAM)); + break; + case 1: + CopyToBgTilemapBuffer(0, gBattleTextboxTilemap, 0, 0); + CopyBgTilemapBufferToVram(0); + break; + case 2: + LoadCompressedPalette(gBattleTextboxPalette, 0, 0x40); + break; + case 3: + if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000 | BATTLE_TYPE_EREADER_TRAINER)) + { + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + } + else if (gBattleTypeFlags & BATTLE_TYPE_GROUDON) + { + LZDecompressVram(gBattleTerrainTiles_Cave, (void*)(VRAM + 0x8000)); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; + if (trainerClass == TRAINER_CLASS_LEADER) + { + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + break; + } + else if (trainerClass == TRAINER_CLASS_CHAMPION) + { + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + } + } + + switch (GetCurrentMapBattleScene()) + { + default: + case MAP_BATTLE_SCENE_NORMAL: + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tileset, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_GYM: + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_MAGMA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_AQUA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_SIDNEY: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_PHOEBE: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_GLACIA: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_DRAKE: + LZDecompressVram(gBattleTerrainTiles_Stadium, (void*)(VRAM + 0x8000)); + break; + case MAP_BATTLE_SCENE_FRONTIER: + LZDecompressVram(gBattleTerrainTiles_Building, (void*)(VRAM + 0x8000)); + break; + } + } + break; + case 4: + if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000 | BATTLE_TYPE_EREADER_TRAINER)) + { + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + } + else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) + { + if (gGameVersion == VERSION_RUBY) + LZDecompressVram(gBattleTerrainTilemap_Cave, (void*)(VRAM + 0xD000)); + else + LZDecompressVram(gBattleTerrainTilemap_Water, (void*)(VRAM + 0xD000)); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; + if (trainerClass == TRAINER_CLASS_LEADER) + { + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + break; + } + else if (trainerClass == TRAINER_CLASS_CHAMPION) + { + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + } + } + + switch (GetCurrentMapBattleScene()) + { + default: + case MAP_BATTLE_SCENE_NORMAL: + LZDecompressVram(gBattleTerrainTable[gBattleTerrain].tilemap, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_GYM: + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_MAGMA: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_AQUA: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_SIDNEY: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_PHOEBE: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_GLACIA: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_DRAKE: + LZDecompressVram(gBattleTerrainTilemap_Stadium, (void*)(VRAM + 0xD000)); + break; + case MAP_BATTLE_SCENE_FRONTIER: + LZDecompressVram(gBattleTerrainTilemap_Building, (void*)(VRAM + 0xD000)); + break; + } + } + break; + case 5: + if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000 | BATTLE_TYPE_EREADER_TRAINER)) + { + LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); + } + else if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON) + { + if (gGameVersion == VERSION_RUBY) + LoadCompressedPalette(gBattleTerrainPalette_Groudon, 0x20, 0x60); + else + LoadCompressedPalette(gBattleTerrainPalette_Kyogre, 0x20, 0x60); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + u8 trainerClass = gTrainers[gTrainerBattleOpponent_A].trainerClass; + if (trainerClass == TRAINER_CLASS_LEADER) + { + LoadCompressedPalette(gBattleTerrainPalette_BuildingLeader, 0x20, 0x60); + break; + } + else if (trainerClass == TRAINER_CLASS_CHAMPION) + { + LoadCompressedPalette(gBattleTerrainPalette_StadiumWallace, 0x20, 0x60); + break; + } + } + + switch (GetCurrentMapBattleScene()) + { + default: + case MAP_BATTLE_SCENE_NORMAL: + LoadCompressedPalette(gBattleTerrainTable[gBattleTerrain].palette, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_GYM: + LoadCompressedPalette(gBattleTerrainPalette_BuildingGym, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_MAGMA: + LoadCompressedPalette(gBattleTerrainPalette_StadiumMagma, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_AQUA: + LoadCompressedPalette(gBattleTerrainPalette_StadiumAqua, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_SIDNEY: + LoadCompressedPalette(gBattleTerrainPalette_StadiumSidney, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_PHOEBE: + LoadCompressedPalette(gBattleTerrainPalette_StadiumPhoebe, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_GLACIA: + LoadCompressedPalette(gBattleTerrainPalette_StadiumGlacia, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_DRAKE: + LoadCompressedPalette(gBattleTerrainPalette_StadiumDrake, 0x20, 0x60); + break; + case MAP_BATTLE_SCENE_FRONTIER: + LoadCompressedPalette(gBattleTerrainPalette_Frontier, 0x20, 0x60); + break; + } + } + break; + case 6: + ApplyPlayerChosenFrameToBattleMenu(); + break; + default: + ret = TRUE; + break; + } + + return ret; +} diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index e497dbfe2..08c666d11 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -234,7 +234,7 @@ static void (*const sPlayerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = static const u8 sTargetIdentities[] = {IDENTITY_PLAYER_MON1, IDENTITY_PLAYER_MON2, IDENTITY_OPPONENT_MON2, IDENTITY_OPPONENT_MON1}; // unknown unused data -static const u8 gUnknown_0831C5FC[] = {0x48, 0x48, 0x20, 0x5a, 0x50, 0x50, 0x50, 0x58}; +static const u8 sUnknown_0831C5FC[] = {0x48, 0x48, 0x20, 0x5a, 0x50, 0x50, 0x50, 0x58}; void nullsub_21(void) { diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index eb57297da..dc4a213cc 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -198,7 +198,7 @@ static void (*const sPlayerPartnerBufferCommands[CONTROLLER_CMDS_COUNT])(void) = }; // unknown unused data -static const u8 gUnknown_08617254[] = +static const u8 sUnknown_08617254[] = { 0x83, 0x4d, 0xf3, 0x5f, 0x6f, 0x4f, 0xeb, 0x3e, 0x67, 0x2e, 0x10, 0x46, 0x8c, 0x3d, 0x28, 0x35, diff --git a/src/battle_message.c b/src/battle_message.c index cab4bdf42..8a985102d 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1366,7 +1366,7 @@ static const u16 sUnknownMoveTable[] = static const u8 sDummyWeirdStatusString[] = {EOS, EOS, EOS, EOS, EOS, EOS, EOS, EOS, 0, 0}; -static const u8 gUnknown_085CD42C[] = +static const u8 sUnknown_085CD42C[] = { 0xFF, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0xF, 0x6, 0x0, 0x0, 0xFF, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0xF, 0x6, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, @@ -1391,7 +1391,7 @@ static const u8 gUnknown_085CD42C[] = 0x6, 0x0, 0x0, 0x0, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x6, 0x0, 0x0 }; -static const u8 gUnknown_085CD54C[] = +static const u8 sUnknown_085CD54C[] = { 0xFF, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0xF, 0x6, 0x0, 0x0, 0xFF, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0xF, 0x6, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, @@ -1418,7 +1418,7 @@ static const u8 gUnknown_085CD54C[] = static const u8 * const gUnknown_085CD660[] = { - gUnknown_085CD42C, gUnknown_085CD54C + sUnknown_085CD42C, sUnknown_085CD54C }; static const u8 sRecordedBattleTextSpeeds[] = {8, 4, 1, 0}; diff --git a/src/berry_fix_program.c b/src/berry_fix_program.c index bba39c3eb..195490543 100644 --- a/src/berry_fix_program.c +++ b/src/berry_fix_program.c @@ -35,9 +35,9 @@ static void berry_fix_bg_hide(void); // .rodata -static const u8 gUnknown_08617E78[] = _("Berry Program Update"); -static const u8 gUnknown_08617E8D[] = _("Ruby/Sapphire"); -static const u8 gUnknown_08617E9B[] = _("Emerald"); +static const u8 sUnknown_08617E78[] = _("Berry Program Update"); +static const u8 sUnknown_08617E8D[] = _("Ruby/Sapphire"); +static const u8 sUnknown_08617E9B[] = _("Emerald"); static const u8 Unknown_08617EA3[] = _("The Berry Program on your POKéMON\nRuby/Sapphire Game Pak will be updated.\n{COLOR RED}{SHADOW LIGHT_RED}Press the A Button."); static const u8 Unknown_08617F07[] = _("Please ensure the connection of your\nGame Boy Advance system matches this.\n{COLOR RED}{SHADOW LIGHT_RED}YES: Press the A Button.\nNO: Turn off the power and try again."); @@ -62,15 +62,15 @@ static const struct WindowTemplate gUnknown_08618110[] = { {-1} }; -static const u16 gUnknown_08618138[] = { +static const u16 sUnknown_08618138[] = { 0x7fff, 0x7fff, 0x318c, 0x675a, 0x043c, 0x3aff, 0x0664, 0x4bd2, 0x6546, 0x7b14, 0x7fff, 0x318c, 0x675a, 0x0000, 0x0000, 0x0000 }; -static const u8 gUnknown_08618158[] = {10, 11, 12}; -static const u8 gUnknown_0861815B[] = { 0, 10, 13}; +static const u8 sUnknown_08618158[] = {10, 11, 12}; +static const u8 sUnknown_0861815B[] = { 0, 10, 13}; static const u8 *const gUnknown_08618160[] = { Unknown_08617F07, @@ -243,21 +243,21 @@ static void berry_fix_gpu_set(void) InitWindows(gUnknown_08618110); DeactivateAllTextPrinters(); - DmaCopy32(3, gUnknown_08618138, BG_PLTT + 0x1E0, 0x20); + DmaCopy32(3, sUnknown_08618138, BG_PLTT + 0x1E0, 0x20); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP); FillWindowPixelBuffer(2, 0); FillWindowPixelBuffer(3, 0); FillWindowPixelBuffer(0, 0xAA); // This block is a meme among memes - width = (0x78 - GetStringWidth(0, gUnknown_08617E9B, 0)) / 2; - box_print(2, 0, width, 3, gUnknown_0861815B, -1, gUnknown_08617E9B); - width = (s32)(0x78 - GetStringWidth(0, gUnknown_08617E9B, 0)) / 2 + 0x78; - box_print(2, 0, width, 3, gUnknown_0861815B, -1, gUnknown_08617E8D); - width = (0x70 - GetStringWidth(0, gUnknown_08617E8D, 0)) / 2; - box_print(3, 0, width, 0, gUnknown_0861815B, -1, gUnknown_08617E8D); - width = (0xd0 - GetStringWidth(1, gUnknown_08617E78, 0)) / 2; - box_print(0, 1, width, 2, gUnknown_08618158, -1, gUnknown_08617E78); + width = (0x78 - GetStringWidth(0, sUnknown_08617E9B, 0)) / 2; + box_print(2, 0, width, 3, sUnknown_0861815B, -1, sUnknown_08617E9B); + width = (s32)(0x78 - GetStringWidth(0, sUnknown_08617E9B, 0)) / 2 + 0x78; + box_print(2, 0, width, 3, sUnknown_0861815B, -1, sUnknown_08617E8D); + width = (0x70 - GetStringWidth(0, sUnknown_08617E8D, 0)) / 2; + box_print(3, 0, width, 0, sUnknown_0861815B, -1, sUnknown_08617E8D); + width = (0xd0 - GetStringWidth(1, sUnknown_08617E78, 0)) / 2; + box_print(0, 1, width, 2, sUnknown_08618158, -1, sUnknown_08617E78); CopyWindowToVram(2, 2); CopyWindowToVram(3, 2); @@ -346,7 +346,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tldr r0, =gUnknown_08618110\n" "\tbl InitWindows\n" "\tbl DeactivateAllTextPrinters\n" - "\tldr r0, =gUnknown_08618138\n" + "\tldr r0, =sUnknown_08618138\n" "\tstr r0, [r4]\n" "\tldr r0, =0x050001e0\n" "\tstr r0, [r4, 0x4]\n" @@ -365,7 +365,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tmovs r0, 0\n" "\tmovs r1, 0xAA\n" "\tbl FillWindowPixelBuffer\n" - "\tldr r5, =gUnknown_08617E9B\n" + "\tldr r5, =sUnknown_08617E9B\n" "\tmovs r0, 0\n" "\tadds r1, r5, 0\n" "\tmovs r2, 0\n" @@ -378,7 +378,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tasrs r0, 1\n" "\tlsls r2, r0, 24\n" "\tlsrs r2, 24\n" - "\tldr r6, =gUnknown_0861815B\n" + "\tldr r6, =sUnknown_0861815B\n" "\tstr r6, [sp]\n" "\tmovs r0, 0x1\n" "\tnegs r0, r0\n" @@ -389,7 +389,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tmovs r1, 0\n" "\tmovs r3, 0x3\n" "\tbl box_print\n" - "\tldr r5, =gUnknown_08617E8D\n" + "\tldr r5, =sUnknown_08617E8D\n" "\tmovs r0, 0\n" "\tadds r1, r5, 0\n" "\tmovs r2, 0\n" @@ -431,7 +431,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tmovs r1, 0\n" "\tmovs r3, 0\n" "\tbl box_print\n" - "\tldr r4, =gUnknown_08617E78\n" + "\tldr r4, =sUnknown_08617E78\n" "\tmovs r0, 0x1\n" "\tadds r1, r4, 0\n" "\tmovs r2, 0\n" @@ -444,7 +444,7 @@ __attribute__((naked)) static void berry_fix_gpu_set(void) "\tasrs r0, 1\n" "\tlsls r2, r0, 24\n" "\tlsrs r2, 24\n" - "\tldr r0, =gUnknown_08618158\n" + "\tldr r0, =sUnknown_08618158\n" "\tstr r0, [sp]\n" "\tmov r0, r8\n" "\tstr r0, [sp, 0x4]\n" @@ -496,7 +496,7 @@ static void berry_fix_text_print(int scene) { FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32); FillWindowPixelBuffer(1, 0xAA); - box_print(1, 1, 0, 0, gUnknown_08618158, -1, gUnknown_08618160[scene]); + box_print(1, 1, 0, 0, sUnknown_08618158, -1, gUnknown_08618160[scene]); PutWindowTilemap(1); CopyWindowToVram(1, 2); switch (scene) diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 9e9a192de..721ba4a4f 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -48,9 +48,9 @@ extern struct SpriteTemplate gUnknown_0202499C; extern void (*gFieldCallback)(void); extern const struct CompressedSpriteSheet gMonFrontPicTable[]; -extern const u8 gUnknown_08C00000[]; -extern const u8 gUnknown_08C00524[]; -extern const u8 gUnknown_08C004E0[]; +extern const u8 gBattleTextboxTiles[]; +extern const u8 gBattleTextboxTilemap[]; +extern const u8 gBattleTextboxPalette[]; extern const u16 gUnknown_08DD7300[]; // palette, gameboy advance extern const u32 gUnknown_08DD7360[]; // tileset gameboy advance extern const u32 gUnknown_08331F60[]; // tilemap gameboy circle @@ -522,9 +522,9 @@ static void CB2_EggHatch_0(void) gMain.state++; break; case 2: - copy_decompressed_tile_data_to_vram_autofree(0, gUnknown_08C00000, 0, 0, 0); - CopyToBgTilemapBuffer(0, gUnknown_08C00524, 0, 0); - LoadCompressedPalette(gUnknown_08C004E0, 0, 0x20); + copy_decompressed_tile_data_to_vram_autofree(0, gBattleTextboxTiles, 0, 0, 0); + CopyToBgTilemapBuffer(0, gBattleTextboxTilemap, 0, 0); + LoadCompressedPalette(gBattleTextboxPalette, 0, 0x20); gMain.state++; break; case 3: diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index 52babe346..239c5d690 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -187,9 +187,9 @@ static const struct BgTemplate sHof_BgTemplates[] = static const struct WindowTemplate sHof_WindowTemplate = {0, 2, 2, 0xE, 6, 0xE, 1}; -static const u8 gUnknown_085E5388[] = {0, 1, 2, 0}; +static const u8 sUnknown_085E5388[] = {0, 1, 2, 0}; -static const u8 gUnknown_085E538C[] = {0, 2, 3, 0, 4, 5, 0, 0}; +static const u8 sUnknown_085E538C[] = {0, 2, 3, 0, 4, 5, 0, 0}; static const struct CompressedSpriteSheet sHallOfFame_ConfettiSpriteSheet = { @@ -1137,7 +1137,7 @@ static void HallOfFame_PrintWelcomeText(u8 unusedPossiblyWindowId, u8 unused2) { FillWindowPixelBuffer(0, 0); PutWindowTilemap(0); - box_print(0, 1, GetStringCenterAlignXOffset(1, gText_WelcomeToHOF, 0xD0), 1, gUnknown_085E5388, 0, gText_WelcomeToHOF); + box_print(0, 1, GetStringCenterAlignXOffset(1, gText_WelcomeToHOF, 0xD0), 1, sUnknown_085E5388, 0, gText_WelcomeToHOF); CopyWindowToVram(0, 3); } @@ -1173,7 +1173,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u *(stringPtr)++ = CHAR_QUESTION_MARK; } stringPtr[0] = EOS; - box_print(0, 1, 0x10, 1, gUnknown_085E5388, -1, text); + box_print(0, 1, 0x10, 1, sUnknown_085E5388, -1, text); } // nick, species names, gender and level @@ -1182,13 +1182,13 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u if (currMon->species == SPECIES_EGG) { width = GetStringCenterAlignXOffset(1, text, 0xD0); - box_print(0, 1, width, 1, gUnknown_085E5388, -1, text); + box_print(0, 1, width, 1, sUnknown_085E5388, -1, text); CopyWindowToVram(0, 3); } else { width = GetStringRightAlignXOffset(1, text, 0x80); - box_print(0, 1, width, 1, gUnknown_085E5388, -1, text); + box_print(0, 1, width, 1, sUnknown_085E5388, -1, text); text[0] = CHAR_SLASH; stringPtr = StringCopy(text + 1, gSpeciesNames[currMon->species]); @@ -1209,15 +1209,15 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u } stringPtr[0] = EOS; - box_print(0, 1, 0x80, 1, gUnknown_085E5388, -1, text); + box_print(0, 1, 0x80, 1, sUnknown_085E5388, -1, text); stringPtr = StringCopy(text, gText_Level); ConvertIntToDecimalStringN(stringPtr, currMon->lvl, STR_CONV_MODE_LEFT_ALIGN, 3); - box_print(0, 1, 0x24, 0x11, gUnknown_085E5388, -1, text); + box_print(0, 1, 0x24, 0x11, sUnknown_085E5388, -1, text); stringPtr = StringCopy(text, gText_IDNumber); ConvertIntToDecimalStringN(stringPtr, (u16)(currMon->tid), STR_CONV_MODE_LEADING_ZEROS, 5); - box_print(0, 1, 0x68, 0x11, gUnknown_085E5388, -1, text); + box_print(0, 1, 0x68, 0x11, sUnknown_085E5388, -1, text); CopyWindowToVram(0, 3); } @@ -1232,13 +1232,13 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) FillWindowPixelBuffer(1, 0x11); PutWindowTilemap(1); SetWindowBorderStyle(1, FALSE, 0x21D, 0xD); - box_print(1, 1, 0, 1, gUnknown_085E538C, -1, gText_Name); + box_print(1, 1, 0, 1, sUnknown_085E538C, -1, gText_Name); width = GetStringRightAlignXOffset(1, gSaveBlock2Ptr->playerName, 0x70); - box_print(1, 1, width, 1, gUnknown_085E538C, -1, gSaveBlock2Ptr->playerName); + box_print(1, 1, width, 1, sUnknown_085E538C, -1, gSaveBlock2Ptr->playerName); trainerId = (gSaveBlock2Ptr->playerTrainerId[0]) | (gSaveBlock2Ptr->playerTrainerId[1] << 8); - box_print(1, 1, 0, 0x11, gUnknown_085E538C, 0, gText_IDNumber); + box_print(1, 1, 0, 0x11, sUnknown_085E538C, 0, gText_IDNumber); text[0] = (trainerId % 100000) / 10000 + CHAR_0; text[1] = (trainerId % 10000) / 1000 + CHAR_0; text[2] = (trainerId % 1000) / 100 + CHAR_0; @@ -1246,9 +1246,9 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) text[4] = (trainerId % 10) / 1 + CHAR_0; text[5] = EOS; width = GetStringRightAlignXOffset(1, text, 0x70); - box_print(1, 1, width, 0x11, gUnknown_085E538C, -1, text); + box_print(1, 1, width, 0x11, sUnknown_085E538C, -1, text); - box_print(1, 1, 0, 0x21, gUnknown_085E538C, -1, gText_MainMenuTime); + box_print(1, 1, 0, 0x21, sUnknown_085E538C, -1, gText_MainMenuTime); text[0] = (gSaveBlock2Ptr->playTimeHours / 100) + CHAR_0; text[1] = (gSaveBlock2Ptr->playTimeHours % 100) / 10 + CHAR_0; text[2] = (gSaveBlock2Ptr->playTimeHours % 10) + CHAR_0; @@ -1264,7 +1264,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) text[6] = EOS; width = GetStringRightAlignXOffset(1, text, 0x70); - box_print(1, 1, width, 0x21, gUnknown_085E538C, -1, text); + box_print(1, 1, width, 0x21, sUnknown_085E538C, -1, text); CopyWindowToVram(1, 3); } diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 95270974a..18fbdd64c 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -29,10 +29,10 @@ static u8 sub_818E258(const u8 *); extern const u8 gText_Lady2[]; -static const u16 gUnknown_0860B074[] = { +static const u16 sUnknown_0860B074[] = { 0x62, 0xcb, 0xdc, 0xcc, 0xd1 }; -static const u16 gUnknown_0860B07E[] = { +static const u16 sUnknown_0860B07E[] = { 0x1a, 0x14, 0x0a }; @@ -119,11 +119,11 @@ static const u16 *const gUnknown_0860B1A4[] = { Unknown_0860B192 }; -static const u16 gUnknown_0860B1E4[] = { +static const u16 sUnknown_0860B1E4[] = { 0x0210, 0x0400, 0x0212, 0x1a26, 0x0208, 0x045d, 0x040a, 0x0411, 0x0464, 0x020e, 0x1a25, 0x181b, 0x1a24, 0x0420, 0x0410, 0x0400 }; -static const u16 gUnknown_0860B204[] = { +static const u16 sUnknown_0860B204[] = { 0x007b, 0x007f, 0x0081, 0x0023, 0x0023, 0x0023, 0x00a5, 0x00a7, 0x00a6, 0x000b, 0x012f, 0x006b, 0x006d, 0x0044, 0x0044, 0x000c }; @@ -176,7 +176,7 @@ static const u16 *const gUnknown_0860B2EC[] = { Unknown_0860B2D6 }; -static const u16 gUnknown_0860B304[] = { +static const u16 sUnknown_0860B304[] = { 0x0b, 0x6e, 0x40, 0x6f, 0x44, 0x47 }; @@ -218,7 +218,7 @@ static const u8 *const gUnknown_0860B338[] = { gUnknown_085EADE7 }; -static const u16 gUnknown_0860B34C[] = { +static const u16 sUnknown_0860B34C[] = { 0x0120, 0x013b, 0x011e, 0x013d, 0x0019 }; @@ -237,11 +237,11 @@ void sub_818D9C0(void) { LilycoveLady *lilycoveLady; - VarSet(VAR_0x4010, gUnknown_0860B07E[GetLilycoveLadyId()]); + VarSet(VAR_0x4010, sUnknown_0860B07E[GetLilycoveLadyId()]); if (GetLilycoveLadyId() == LILYCOVE_LADY_CONTEST) { lilycoveLady = &gSaveBlock1Ptr->lilycoveLady; - VarSet(VAR_0x4011, gUnknown_0860B074[lilycoveLady->contest.category]); + VarSet(VAR_0x4011, sUnknown_0860B074[lilycoveLady->contest.category]); gSpecialVar_Result = TRUE; } else @@ -481,7 +481,7 @@ u16 sub_818DEA0(void) u16 itemId; gUnknown_0203CD64 = &gSaveBlock1Ptr->lilycoveLady.favour; - itemId = gUnknown_0860B304[gUnknown_0203CD64->unk_00c]; + itemId = sUnknown_0860B304[gUnknown_0203CD64->unk_00c]; sub_818DE88(itemId); gUnknown_0203CD64->phase = 2; return itemId; @@ -508,8 +508,8 @@ static void sub_818DF00(void) { gUnknown_0203CD68->unk_002[i] = gUnknown_0860B1A4[v0][i]; } - gUnknown_0203CD68->unk_014 = gUnknown_0860B1E4[v0]; - gUnknown_0203CD68->itemId = gUnknown_0860B204[v0]; + gUnknown_0203CD68->unk_014 = sUnknown_0860B1E4[v0]; + gUnknown_0203CD68->itemId = sUnknown_0860B204[v0]; gUnknown_0203CD68->unk_02b = v0; gUnknown_0203CD68->playerName[0] = EOS; } @@ -581,13 +581,13 @@ u8 sub_818E06C(void) { i = 0; } - } while (sub_811F8D8(gUnknown_0860B1E4[i]) == 0); + } while (sub_811F8D8(sUnknown_0860B1E4[i]) == 0); for (j = 0; j < 9; j ++) { quiz->unk_002[j] = gUnknown_0860B1A4[i][j]; } - quiz->unk_014 = gUnknown_0860B1E4[i]; - quiz->itemId = gUnknown_0860B204[i]; + quiz->unk_014 = sUnknown_0860B1E4[i]; + quiz->itemId = sUnknown_0860B204[i]; quiz->unk_02b = i; quiz->playerName[0] = EOS; } @@ -1091,7 +1091,7 @@ void sub_818E940(void) void sub_818E960(void) { gUnknown_0203CD6C = &gSaveBlock1Ptr->lilycoveLady.contest; - gSpecialVar_0x8005 = gUnknown_0860B34C[gUnknown_0203CD6C->category]; + gSpecialVar_0x8005 = sUnknown_0860B34C[gUnknown_0203CD6C->category]; } u8 sub_818E990(void) diff --git a/src/palette.c b/src/palette.c index d4bb593da..6d8abbde6 100644 --- a/src/palette.c +++ b/src/palette.c @@ -65,7 +65,7 @@ static const struct PaletteStructTemplate gDummyPaletteStructTemplate = { .uid = 0xFFFF, .pst_field_B_5 = 1 }; -static const u8 gUnknown_0852489C[] = { +static const u8 sUnknown_0852489C[] = { 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 11, 11, 11, 11, 11, @@ -849,13 +849,13 @@ void TintPalette_GrayScale(u16 *palette, u16 count) r = *palette & 0x1F; g = (*palette >> 5) & 0x1F; b = (*palette >> 10) & 0x1F; - + r *= 0x4C; r += g * 0x97; r += b * 0x1D; - + gray = r >> 8; - + *palette++ = gray << 10 | gray << 5 | gray; } return; @@ -874,18 +874,18 @@ void TintPalette_GrayScale2(u16 *palette, u16 count) r = *palette & 0x1F; g = (*palette >> 5) & 0x1F; b = (*palette >> 10) & 0x1F; - + r *= 0x4C; r += g * 0x97; r += b * 0x1D; - + gray = r >> 8; - + if ((u32)gray > 0x1F) gray = 0x1F; - - gray = gUnknown_0852489C[gray]; - + + gray = sUnknown_0852489C[gray]; + *palette++ = gray << 10 | gray << 5 | gray; } return; @@ -902,31 +902,31 @@ void TintPalette_SepiaTone(u16 *palette, u16 count) s8 r2; s8 g2; s8 b2; - + int i; for (i = 0; i < count; i++) { r = *palette & 0x1F; g = (*palette >> 5) & 0x1F; b = (*palette >> 10) & 0x1F; - + r *= 0x4C; r += g * 0x97; r += b * 0x1D; - + gray = (s32)(r >> 8); - + sepia = (gray * 0x133); - + r2 = (u16)sepia >> 8; - + g2 = gray; - + b2 = (gray * 15); - + if (r2 > 0x1F) r2 = 0x1F; - + *palette++ = b2 << 10 | g2 << 5 | r2; } return; @@ -1011,28 +1011,28 @@ void sub_80A2BAC(u16 *palette, u16 count, u16 a3, u16 a4, u16 a5) r = *palette & 0x1F; g = (*palette >> 5) & 0x1F; b = (*palette >> 10) & 0x1F; - + r *= 0x4C; r += g * 0x97; r += b * 0x1D; - + gray = r >> 8; - + r2 = (u16)(gray * a3) >> 8; - + g2 = (u16)(gray * a4) >> 8; - + b2 = (u16)(gray * a5) >> 8; - + if (r2 > 0x1F) r2 = 0x1F; - + if (g2 > 0x1F) g2 = 0x1F; - + if (b2 > 0x1F) b2 = 0x1F; - + *palette++ = b2 << 10 | g2 << 5 | r2; } return; diff --git a/src/region_map.c b/src/region_map.c index b7fc625ca..f28f07d52 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -239,9 +239,9 @@ static const u8 sRegionMapFrameTilemapLZ[] = INCBIN_U8("graphics/pokenav/map_fra static const u16 Unknown_085A1D48[] = INCBIN_U16("graphics/pokenav/fly_target_icons.gbapal"); -static const u8 gUnknown_085A1D68[] = INCBIN_U8("graphics/pokenav/fly_target_icons.4bpp.lz"); +static const u8 sUnknown_085A1D68[] = INCBIN_U8("graphics/pokenav/fly_target_icons.4bpp.lz"); -static const u8 gUnknown_085A1E3C[][3] = { +static const u8 sUnknown_085A1E3C[][3] = { {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), 1}, {MAP_GROUP(OLDALE_TOWN), MAP_NUM(OLDALE_TOWN), 14}, {MAP_GROUP(DEWFORD_TOWN), MAP_NUM(DEWFORD_TOWN), 15}, @@ -326,7 +326,7 @@ static const struct SpritePalette gUnknown_085A1F10 = { Unknown_085A1D48, 2 }; -static const u16 gUnknown_085A1F18[][2] = { +static const u16 sUnknown_085A1F18[][2] = { {FLAG_UNLOCK_BATTLE_FRONTIER, MAPSEC_BATTLE_FRONTIER}, {-1, MAPSEC_NONE} }; @@ -1738,7 +1738,7 @@ static void sub_8124A70(void) { struct SpriteSheet sheet; - LZ77UnCompWram(gUnknown_085A1D68, gUnknown_0203A148->unk_88c); + LZ77UnCompWram(sUnknown_085A1D68, gUnknown_0203A148->unk_88c); sheet.data = gUnknown_0203A148->unk_88c; sheet.size = 0x1c0; sheet.tag = 2; @@ -1806,11 +1806,11 @@ static void sub_8124BE4(void) u16 mapSecId; u8 spriteId; - for (i = 0; gUnknown_085A1F18[i][1] != MAPSEC_NONE; i++) + for (i = 0; sUnknown_085A1F18[i][1] != MAPSEC_NONE; i++) { - if (FlagGet(gUnknown_085A1F18[i][0])) + if (FlagGet(sUnknown_085A1F18[i][0])) { - mapSecId = gUnknown_085A1F18[i][1]; + mapSecId = sUnknown_085A1F18[i][1]; sub_8124630(mapSecId, &x, &y, &width, &height); x = (x + MAPCURSOR_X_MIN) * 8; y = (y + MAPCURSOR_Y_MIN) * 8; @@ -1919,13 +1919,13 @@ static void sub_8124E0C(void) sub_8084CCC(FlagGet(FLAG_SYS_POKEMON_LEAGUE_FLY) && gUnknown_0203A148->regionMap.posWithinMapSec == 0 ? 0x14 : 0x0B); break; default: - if (gUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][2] != 0) + if (sUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][2] != 0) { - sub_8084CCC(gUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][2]); + sub_8084CCC(sUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][2]); } else { - warp1_set_2(gUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][0], gUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][1], -1); + warp1_set_2(sUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][0], sUnknown_085A1E3C[gUnknown_0203A148->regionMap.mapSecId][1], -1); } break; } diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index a034ca089..3df2ff151 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -35,7 +35,7 @@ extern struct SpriteTemplate gUnknown_0202499C; extern const union AnimCmd * const * const gMonAnimationsSpriteAnimsPtrTable[]; extern void dp12_8087EA4(void); -extern void trs_config(void); +extern void sub_8035658(void); extern bool8 IsDoubleBattle(void); extern u8 GetSubstituteSpriteDefault_Y(u8 bank); extern u8 GetBankSpriteDefault_Y(u8 bank); @@ -73,7 +73,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void) { case 0: dp12_8087EA4(); - trs_config(); + sub_8035658(); SetBgAttribute(1, BG_CTRL_ATTR_VISIBLE, 0); SetBgAttribute(2, BG_CTRL_ATTR_VISIBLE, 0); ShowBg(0); diff --git a/src/battle_1.c b/src/rom_8034C54.c index 5e4ef5583..4d4492524 100644 --- a/src/battle_1.c +++ b/src/rom_8034C54.c @@ -1,17 +1,5 @@ - -// Includes #include "global.h" -// Static type declarations - -// Static RAM declarations - IWRAM_DATA u32 gUnknown_03000DD4; IWRAM_DATA u32 gUnknown_03000DD8; IWRAM_DATA u32 gUnknown_03000DDC; - -// Static ROM declarations - -// .rodata - -// .text diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c index ef01f0293..218ef68d7 100755 --- a/src/save_failed_screen.c +++ b/src/save_failed_screen.c @@ -154,8 +154,8 @@ static const u8 sClockFrames[8][3] = { 5, 1, 0 }, }; -static const u8 gSaveFailedClockPal[] = INCBIN_U8("graphics/misc/clock_small.gbapal"); -static const u8 gSaveFailedClockGfx[] = INCBIN_U8("graphics/misc/clock_small.4bpp.lz"); +static const u8 sSaveFailedClockPal[] = INCBIN_U8("graphics/misc/clock_small.gbapal"); +static const u8 sSaveFailedClockGfx[] = INCBIN_U8("graphics/misc/clock_small.4bpp.lz"); static void CB2_SaveFailedScreen(void); static void CB2_WipeSave(void); @@ -221,7 +221,7 @@ static void CB2_SaveFailedScreen(void) LZ77UnCompVram(gBirchHelpGfx, (void *)VRAM); LZ77UnCompVram(gBirchBagTilemap, (void *)(VRAM + 0x7000)); LZ77UnCompVram(gBirchGrassTilemap, (void *)(VRAM + 0x7800)); - LZ77UnCompVram(gSaveFailedClockGfx, (void *)(VRAM + 0x10020)); + LZ77UnCompVram(sSaveFailedClockGfx, (void *)(VRAM + 0x10020)); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, gUnknown_085EFD88, 3); SetBgTilemapBuffer(0, (void *)&gDecompressionBuffer[0x2000]); @@ -238,7 +238,7 @@ static void CB2_SaveFailedScreen(void) ResetTasks(); ResetPaletteFade(); LoadPalette(gBirchBagGrassPal, 0, 0x40); - LoadPalette(gSaveFailedClockPal, 0x100, 0x20); + LoadPalette(sSaveFailedClockPal, 0x100, 0x20); LoadPalette(gUnknown_0850FEFC, 0xE0, 0x20); LoadPalette(gUnknown_0860F074, 0xF0, 0x20); SetWindowBorderStyle(gSaveFailedWindowIds[TEXT_WIN_ID], FALSE, 0x214, 0xE); diff --git a/src/sprite.c b/src/sprite.c index 9db61d2e9..6d76b9854 100644 --- a/src/sprite.c +++ b/src/sprite.c @@ -240,7 +240,7 @@ static const AffineAnimCmdFunc sAffineAnimCmdFuncs[] = AffineAnimCmd_frame, }; -static const s32 gUnknown_082EC6F4[24] = +static const s32 sUnknown_082EC6F4[24] = { 8, 8, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x10, 8, 0x20, 8, @@ -1214,14 +1214,14 @@ void obj_update_pos2(struct Sprite* sprite, s32 a1, s32 a2) u8 matrixNum = sprite->oam.matrixNum; if (a1 != 0x800) { - var0 = gUnknown_082EC6F4[sprite->oam.size * 8 + sprite->oam.shape * 32]; + var0 = sUnknown_082EC6F4[sprite->oam.size * 8 + sprite->oam.shape * 32]; var1 = var0 << 8; var2 = (var0 << 16) / gOamMatrices[matrixNum].a; sprite->pos2.x = sub_8007E28(var1, var2, a1); } if (a2 != 0x800) { - var0 = gUnknown_082EC6F4[4 + (sprite->oam.size * 8 + sprite->oam.shape * 32)]; + var0 = sUnknown_082EC6F4[4 + (sprite->oam.size * 8 + sprite->oam.shape * 32)]; var1 = var0 << 8; var2 = (var0 << 16) / gOamMatrices[matrixNum].d; sprite->pos2.y = sub_8007E28(var1, var2, a2); @@ -1247,7 +1247,7 @@ void obj_update_pos2(struct Sprite* sprite, s32 a1, s32 a2) mov r9, r0\n\ cmp r6, r9\n\ beq _08007EA2\n\ - ldr r2, =gUnknown_082EC6F4\n\ + ldr r2, =sUnknown_082EC6F4\n\ lsrs r1, 6\n\ lsls r1, 3\n\ ldrb r0, [r5, 0x1]\n\ @@ -1272,7 +1272,7 @@ void obj_update_pos2(struct Sprite* sprite, s32 a1, s32 a2) _08007EA2:\n\ cmp r8, r9\n\ beq _08007EDA\n\ - ldr r2, =gUnknown_082EC6F4\n\ + ldr r2, =sUnknown_082EC6F4\n\ ldrb r1, [r5, 0x3]\n\ lsrs r1, 6\n\ lsls r1, 3\n\ diff --git a/src/unk_text_util_2.c b/src/unk_text_util_2.c index d88af611f..8eaab32b6 100644 --- a/src/unk_text_util_2.c +++ b/src/unk_text_util_2.c @@ -4,8 +4,8 @@ #include "text.h" #include "sound.h" -static const u8 gUnknown_08616124[] = {1, 2, 4}; -static const u16 gFont6BrailleGlyphs[] = INCBIN_U16("data/graphics/fonts/font6.fwjpnfont"); +static const u8 sUnknown_08616124[] = {1, 2, 4}; +static const u16 sFont6BrailleGlyphs[] = INCBIN_U16("data/graphics/fonts/font6.fwjpnfont"); static void DecompressGlyphFont6(u16); @@ -13,7 +13,7 @@ u16 Font6Func(struct TextPrinter *textPrinter) { u16 char_; struct TextPrinterSubStruct *sub; - + sub = &textPrinter->sub_union.sub; switch (textPrinter->state) { @@ -163,15 +163,15 @@ u16 Font6Func(struct TextPrinter *textPrinter) case 4: if (textPrinter->scrollDistance) { - if (textPrinter->scrollDistance < gUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]) + if (textPrinter->scrollDistance < sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]) { ScrollWindow(textPrinter->subPrinter.windowId, 0, textPrinter->scrollDistance, textPrinter->subPrinter.bgColor | (textPrinter->subPrinter.bgColor << 4)); textPrinter->scrollDistance = 0; } else { - ScrollWindow(textPrinter->subPrinter.windowId, 0, gUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed], textPrinter->subPrinter.bgColor | (textPrinter->subPrinter.bgColor << 4)); - textPrinter->scrollDistance -= gUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]; + ScrollWindow(textPrinter->subPrinter.windowId, 0, sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed], textPrinter->subPrinter.bgColor | (textPrinter->subPrinter.bgColor << 4)); + textPrinter->scrollDistance -= sUnknown_08616124[gSaveBlock2Ptr->optionsTextSpeed]; } CopyWindowToVram(textPrinter->subPrinter.windowId, 2); } @@ -204,7 +204,7 @@ static void DecompressGlyphFont6(u16 glyph) { const u16 *glyphs; - glyphs = gFont6BrailleGlyphs + 0x100 * (glyph / 8) + 0x10 * (glyph % 8); + glyphs = sFont6BrailleGlyphs + 0x100 * (glyph / 8) + 0x10 * (glyph % 8); DecompressGlyphTile(glyphs, (u16 *)gUnknown_03002F90); DecompressGlyphTile(glyphs + 0x8, (u16 *)(gUnknown_03002F90 + 0x20)); DecompressGlyphTile(glyphs + 0x80, (u16 *)(gUnknown_03002F90 + 0x40)); diff --git a/src/wallclock.c b/src/wallclock.c index 892ef3f05..cd85de230 100644 --- a/src/wallclock.c +++ b/src/wallclock.c @@ -57,8 +57,8 @@ static void SpriteCB_PMIndicator(struct Sprite *sprite); // rodata -static const u8 gUnknown_085B1F58[] = INCBIN_U8("graphics/wallclock/graphics_85b1f58.4bpp.lz"); -static const u16 gUnknown_085B21D4[] = INCBIN_U16("graphics/wallclock/palette_85b21d4.gbapal"); +static const u8 sUnknown_085B1F58[] = INCBIN_U8("graphics/wallclock/graphics_85b1f58.4bpp.lz"); +static const u16 sUnknown_085B21D4[] = INCBIN_U16("graphics/wallclock/palette_85b21d4.gbapal"); static const struct WindowTemplate gUnknown_085B21DC[] = { { 0x00, 0x03, 0x11, 0x18, 0x02, 0x0e, 0x200 }, { 0x02, 0x18, 0x10, 0x06, 0x02, 0x0c, 0x230 }, @@ -88,7 +88,7 @@ static const struct BgTemplate gUnknown_085B21FC[] = { } }; static const struct CompressedSpriteSheet gUnknown_085B2208 = { - gUnknown_085B1F58, 0x2000, TAG_GFX_WALL_CLOCK_HAND + sUnknown_085B1F58, 0x2000, TAG_GFX_WALL_CLOCK_HAND }; static const u32 filler_85B2210[2] = {}; static const struct SpritePalette gUnknown_085B2218[] = { @@ -571,7 +571,7 @@ static void LoadWallClockGraphics(void) LoadPalette(gUnknown_08DCC03C, 0x00, 0x20); } LoadPalette(GetOverworldTextboxPalettePtr(), 0xe0, 0x20); - LoadPalette(gUnknown_085B21D4, 0xc0, 0x08); + LoadPalette(sUnknown_085B21D4, 0xc0, 0x08); ResetBgsAndClearDma3BusyFlags(0); InitBgsFromTemplates(0, gUnknown_085B21FC, 3); InitWindows(gUnknown_085B21DC); @@ -666,27 +666,27 @@ void Cb2_ViewWallClock(void) angle1 = 90; angle2 = 135; } - + spriteId = CreateSprite(&gUnknown_085B2250, 0x78, 0x50, 1); gSprites[spriteId].data[0] = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 0; - + spriteId = CreateSprite(&gUnknown_085B2268, 0x78, 0x50, 0); gSprites[spriteId].data[0] = taskId; gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[spriteId].oam.matrixNum = 1; - + spriteId = CreateSprite(&gUnknown_085B22A0, 0x78, 0x50, 2); gSprites[spriteId].data[0] = taskId; gSprites[spriteId].data[1] = angle1; - + spriteId = CreateSprite(&gUnknown_085B22B8, 0x78, 0x50, 2); gSprites[spriteId].data[0] = taskId; gSprites[spriteId].data[1] = angle2; - + WallClockInit(); - + PrintTextOnWindow(1, 1, gText_Cancel4, 0, 1, 0, NULL); PutWindowTilemap(1); schedule_bg_copy_tilemap_to_vram(2); diff --git a/sym_bss.txt b/sym_bss.txt index a4d3c2d82..de452b2e7 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -8,7 +8,7 @@ .include "src/link.o" .include "src/rtc.o" .include "src/main_menu.o" - .include "src/battle_1.o" + .include "src/rom_8034C54.o" .include "src/egg_hatch.o" .include "src/berry_blender.o" .include "src/play_time.o" |