diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2020-08-17 10:43:20 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2020-08-17 10:43:20 -0400 |
commit | 669837eb5cfc69838686059779c8e4446fee4781 (patch) | |
tree | f5411261f19c7f51942c653a7ad7f02127ab5b81 | |
parent | 9669a6ac0a62013d181bda216109401ed83fb556 (diff) |
Decompile unk_0207FC5C.s
-rw-r--r-- | arm9/asm/unk_0207FC5C.s | 180 | ||||
-rw-r--r-- | arm9/src/unk_0207FC5C.c | 532 | ||||
-rw-r--r-- | include/unk_0207FC5C.h | 8 |
3 files changed, 540 insertions, 180 deletions
diff --git a/arm9/asm/unk_0207FC5C.s b/arm9/asm/unk_0207FC5C.s deleted file mode 100644 index b06b72e9..00000000 --- a/arm9/asm/unk_0207FC5C.s +++ /dev/null @@ -1,180 +0,0 @@ - .include "asm/macros.inc" - .include "global.inc" - - .section .rodata - - .global UNK_020FB788 -UNK_020FB788: ; 0x020FB788 - .byte 0x62, 0x00, 0x00, 0x00 - - .global UNK_020FB78C -UNK_020FB78C: ; 0x020FB78C - .byte 0x48, 0x00 - - .global UNK_020FB78E -UNK_020FB78E: ; 0x020FB78E - .byte 0x00, 0x00 - - .global UNK_020FB790 -UNK_020FB790: ; 0x020FB790 - .byte 0x00, 0x00 - - .global UNK_020FB792 -UNK_020FB792: ; 0x020FB792 - .byte 0x50, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x01, 0x00, 0x51, 0x00, 0x4F, 0x00 - .byte 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x52, 0x00, 0x50, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x00, 0x00, 0x03, 0x00, 0x53, 0x00, 0x51, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x04, 0x00 - .byte 0x54, 0x00, 0x52, 0x00, 0x00, 0x00, 0x49, 0x00, 0x01, 0x00, 0x05, 0x00, 0x55, 0x00, 0x53, 0x00 - .byte 0x00, 0x00, 0x4A, 0x00, 0x01, 0x00, 0x06, 0x00, 0x56, 0x00, 0x54, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x01, 0x00, 0x07, 0x00, 0x57, 0x00, 0x55, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x01, 0x00, 0x08, 0x00 - .byte 0x58, 0x00, 0x56, 0x00, 0x00, 0x00, 0x49, 0x00, 0x02, 0x00, 0x09, 0x00, 0x59, 0x00, 0x57, 0x00 - .byte 0x00, 0x00, 0x4A, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x02, 0x00, 0x0B, 0x00, 0x5B, 0x00, 0x59, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x02, 0x00, 0x0C, 0x00 - .byte 0x5C, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x49, 0x00, 0x03, 0x00, 0x0D, 0x00, 0x5D, 0x00, 0x5B, 0x00 - .byte 0x00, 0x00, 0x4A, 0x00, 0x03, 0x00, 0x0E, 0x00, 0x5E, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x03, 0x00, 0x0F, 0x00, 0x5F, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x03, 0x00, 0x10, 0x00 - .byte 0x60, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x49, 0x00, 0x04, 0x00, 0x11, 0x00, 0x61, 0x00, 0x5F, 0x00 - .byte 0x00, 0x00, 0x4A, 0x00, 0x04, 0x00, 0x12, 0x00, 0x62, 0x00, 0x60, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x04, 0x00, 0x13, 0x00, 0x63, 0x00, 0x61, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x04, 0x00, 0x14, 0x00 - .byte 0x64, 0x00, 0x63, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x15, 0x00, 0x65, 0x00, 0x64, 0x00 - .byte 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x66, 0x00, 0x65, 0x00, 0x00, 0x00, 0x4F, 0x00 - .byte 0x01, 0x00, 0x17, 0x00, 0x67, 0x00, 0x66, 0x00, 0x00, 0x00, 0x50, 0x00, 0x02, 0x00, 0x18, 0x00 - .byte 0x68, 0x00, 0x67, 0x00, 0x00, 0x00, 0x51, 0x00, 0x01, 0x00, 0x19, 0x00, 0x00, 0x80, 0x68, 0x00 - .byte 0x00, 0x00, 0x51, 0x00, 0x03, 0x00, 0x1A, 0x00, 0x01, 0x80, 0x69, 0x00, 0x00, 0x00, 0x51, 0x00 - .byte 0x04, 0x00, 0x1B, 0x00, 0x02, 0x80, 0x6A, 0x00, 0x00, 0x00, 0x52, 0x00, 0x03, 0x00, 0x1C, 0x00 - .byte 0xB2, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x52, 0x00, 0x04, 0x00, 0x1D, 0x00, 0xBE, 0x00, 0x6C, 0x00 - .byte 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x1E, 0x00, 0xBF, 0x00, 0x6D, 0x00, 0x00, 0x00, 0x53, 0x00 - .byte 0x01, 0x00, 0x1F, 0x00, 0xB2, 0x00, 0x19, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x20, 0x00 - .byte 0x69, 0x00, 0x7A, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0x21, 0x00, 0x6A, 0x00, 0x7B, 0x00 - .byte 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x22, 0x00, 0x6B, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x00, 0x00, 0x23, 0x00, 0x6C, 0x00, 0x7D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x24, 0x00 - .byte 0x6D, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x59, 0x00, 0x01, 0x00, 0x25, 0x00, 0x6E, 0x00, 0x7F, 0x00 - .byte 0x00, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x26, 0x00, 0x6F, 0x00, 0x80, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x01, 0x00, 0x27, 0x00, 0x70, 0x00, 0x81, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x28, 0x00 - .byte 0x71, 0x00, 0x82, 0x00, 0x00, 0x00, 0x59, 0x00, 0x02, 0x00, 0x29, 0x00, 0x72, 0x00, 0x83, 0x00 - .byte 0x00, 0x00, 0x5A, 0x00, 0x02, 0x00, 0x2A, 0x00, 0x73, 0x00, 0x84, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x02, 0x00, 0x2B, 0x00, 0x74, 0x00, 0x85, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x02, 0x00, 0x2C, 0x00 - .byte 0x75, 0x00, 0x86, 0x00, 0x00, 0x00, 0x59, 0x00, 0x03, 0x00, 0x2D, 0x00, 0x76, 0x00, 0x87, 0x00 - .byte 0x00, 0x00, 0x5A, 0x00, 0x03, 0x00, 0x2E, 0x00, 0x77, 0x00, 0x88, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x03, 0x00, 0x2F, 0x00, 0x78, 0x00, 0x89, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x03, 0x00, 0x30, 0x00 - .byte 0x79, 0x00, 0x8A, 0x00, 0x00, 0x00, 0x59, 0x00, 0x04, 0x00, 0x31, 0x00, 0x7A, 0x00, 0x8B, 0x00 - .byte 0x00, 0x00, 0x5A, 0x00, 0x04, 0x00, 0x32, 0x00, 0x7B, 0x00, 0x8C, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x04, 0x00, 0x33, 0x00, 0x7C, 0x00, 0x8D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x04, 0x00, 0x34, 0x00 - .byte 0x7D, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x35, 0x00, 0x7E, 0x00, 0x1B, 0x00 - .byte 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x36, 0x00, 0x7F, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x5F, 0x00 - .byte 0x00, 0x00, 0x37, 0x00, 0x80, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x38, 0x00 - .byte 0x81, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x39, 0x00, 0x82, 0x00, 0x1F, 0x00 - .byte 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0x3A, 0x00, 0x83, 0x00, 0x20, 0x00, 0x00, 0x00, 0x63, 0x00 - .byte 0x02, 0x00, 0x3B, 0x00, 0x84, 0x00, 0x21, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x3C, 0x00 - .byte 0x85, 0x00, 0x22, 0x00, 0x00, 0x00, 0x65, 0x00, 0x01, 0x00, 0x3D, 0x00, 0x86, 0x00, 0x23, 0x00 - .byte 0x00, 0x00, 0x66, 0x00, 0x02, 0x00, 0x3E, 0x00, 0x87, 0x00, 0x24, 0x00, 0x00, 0x00, 0x67, 0x00 - .byte 0x03, 0x00, 0x3F, 0x00, 0x88, 0x00, 0x25, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0x40, 0x00 - .byte 0x89, 0x00, 0x26, 0x00, 0x00, 0x00, 0x69, 0x00, 0x02, 0x00, 0x41, 0x00, 0x8A, 0x00, 0x27, 0x00 - .byte 0x00, 0x00, 0x6A, 0x00, 0x01, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x28, 0x00, 0x00, 0x00, 0x6B, 0x00 - .byte 0x03, 0x00, 0x43, 0x00, 0x8C, 0x00, 0x29, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x44, 0x00 - .byte 0x8D, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00, 0x45, 0x00, 0x8E, 0x00, 0x2B, 0x00 - .byte 0x00, 0x00, 0x6E, 0x00, 0x01, 0x00, 0x46, 0x00, 0x8F, 0x00, 0x2C, 0x00, 0x00, 0x00, 0x6F, 0x00 - .byte 0x03, 0x00, 0x47, 0x00, 0x90, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x48, 0x00 - .byte 0x91, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x49, 0x00, 0x07, 0x80, 0x2F, 0x00 - .byte 0x00, 0x00, 0x72, 0x00, 0x03, 0x00, 0x4A, 0x00, 0x08, 0x80, 0x30, 0x00, 0x00, 0x00, 0x73, 0x00 - .byte 0x01, 0x00, 0x4B, 0x00, 0x09, 0x80, 0x31, 0x00, 0x00, 0x00, 0x74, 0x00, 0x01, 0x00, 0x4C, 0x00 - .byte 0x0A, 0x80, 0x32, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x0B, 0x80, 0x33, 0x00 - .byte 0x00, 0x00, 0x76, 0x00, 0x01, 0x00, 0x4E, 0x00, 0x0C, 0x80, 0x34, 0x00, 0x00, 0x00, 0x77, 0x00 - .byte 0x00, 0x00, 0x4F, 0x00, 0x0D, 0x80 - - .text - - thumb_func_start FUN_0207FC5C -FUN_0207FC5C: ; 0x0207FC5C - cmp r1, #0x4 - bhi _0207FCA8 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #0x6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0207FC6C: ; jump table (using 16-bit offset) - .short _0207FC76 - _0207FC6C - 2; case 0 - .short _0207FC80 - _0207FC6C - 2; case 1 - .short _0207FC8A - _0207FC6C - 2; case 2 - .short _0207FC94 - _0207FC6C - 2; case 3 - .short _0207FC9E - _0207FC6C - 2; case 4 -_0207FC76: - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCAC ; =UNK_020FB788 - ldr r0, [r0, r1] - bx lr -_0207FC80: - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCB0 ; =UNK_020FB78C - ldrh r0, [r0, r1] - bx lr -_0207FC8A: - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCB4 ; =UNK_020FB78E - ldrh r0, [r0, r1] - bx lr -_0207FC94: - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCB8 ; =UNK_020FB790 - ldrh r0, [r0, r1] - bx lr -_0207FC9E: - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCBC ; =UNK_020FB792 - ldrh r0, [r0, r1] - bx lr -_0207FCA8: - mov r0, #0x0 - bx lr - .balign 4 -_0207FCAC: .word UNK_020FB788 -_0207FCB0: .word UNK_020FB78C -_0207FCB4: .word UNK_020FB78E -_0207FCB8: .word UNK_020FB790 -_0207FCBC: .word UNK_020FB792 - - thumb_func_start FUN_0207FCC0 -FUN_0207FCC0: ; 0x0207FCC0 - mov r2, #0xc - mul r2, r1 - ldr r1, _0207FCDC ; =UNK_020FB792 - ldrh r2, [r1, r2] - mov r1, #0x2 - lsl r1, r1, #0xe - tst r1, r2 - beq _0207FCD8 - lsl r1, r2, #0x18 - lsr r1, r1, #0x18 - ldrb r2, [r0, r1] - add r2, #0x92 -_0207FCD8: - add r0, r2, #0x0 - bx lr - .balign 4 -_0207FCDC: .word UNK_020FB792 - - thumb_func_start FUN_0207FCE0 -FUN_0207FCE0: ; 0x0207FCE0 - mov r1, #0xc - mul r1, r0 - ldr r0, _0207FCFC ; =UNK_020FB792 - ldrh r1, [r0, r1] - mov r0, #0x2 - lsl r0, r0, #0xe - tst r0, r1 - beq _0207FCF6 - lsl r0, r1, #0x18 - lsr r0, r0, #0x18 - bx lr -_0207FCF6: - mov r0, #0xff - bx lr - nop -_0207FCFC: .word UNK_020FB792 diff --git a/arm9/src/unk_0207FC5C.c b/arm9/src/unk_0207FC5C.c new file mode 100644 index 00000000..f72008b9 --- /dev/null +++ b/arm9/src/unk_0207FC5C.c @@ -0,0 +1,532 @@ +#include "global.h" +#include "unk_0207FC5C.h" + +#pragma thumb on + +struct UnkStruct_020FB788 +{ + u32 unk_0; + u16 unk_4; + u16 unk_6; + u16 unk_8; + u16 unk_A; +}; + +const struct UnkStruct_020FB788 UNK_020FB788[] = { + { + 0x00000062, + 0x0048, + 0x0000, + 0x0000, + 0x0050 + }, { + 0x0000004E, + 0x0049, + 0x0000, + 0x0001, + 0x0051 + }, { + 0x0000004F, + 0x004A, + 0x0000, + 0x0002, + 0x0052 + }, { + 0x00000050, + 0x004B, + 0x0000, + 0x0003, + 0x0053 + }, { + 0x00000051, + 0x004C, + 0x0000, + 0x0004, + 0x0054 + }, { + 0x00000052, + 0x0049, + 0x0001, + 0x0005, + 0x0055 + }, { + 0x00000053, + 0x004A, + 0x0001, + 0x0006, + 0x0056 + }, { + 0x00000054, + 0x004B, + 0x0001, + 0x0007, + 0x0057 + }, { + 0x00000055, + 0x004C, + 0x0001, + 0x0008, + 0x0058 + }, { + 0x00000056, + 0x0049, + 0x0002, + 0x0009, + 0x0059 + }, { + 0x00000057, + 0x004A, + 0x0002, + 0x000A, + 0x005A + }, { + 0x00000058, + 0x004B, + 0x0002, + 0x000B, + 0x005B + }, { + 0x00000059, + 0x004C, + 0x0002, + 0x000C, + 0x005C + }, { + 0x0000005A, + 0x0049, + 0x0003, + 0x000D, + 0x005D + }, { + 0x0000005B, + 0x004A, + 0x0003, + 0x000E, + 0x005E + }, { + 0x0000005C, + 0x004B, + 0x0003, + 0x000F, + 0x005F + }, { + 0x0000005D, + 0x004C, + 0x0003, + 0x0010, + 0x0060 + }, { + 0x0000005E, + 0x0049, + 0x0004, + 0x0011, + 0x0061 + }, { + 0x0000005F, + 0x004A, + 0x0004, + 0x0012, + 0x0062 + }, { + 0x00000060, + 0x004B, + 0x0004, + 0x0013, + 0x0063 + }, { + 0x00000061, + 0x004C, + 0x0004, + 0x0014, + 0x0064 + }, { + 0x00000063, + 0x004E, + 0x0000, + 0x0015, + 0x0065 + }, { + 0x00000064, + 0x004D, + 0x0000, + 0x0016, + 0x0066 + }, { + 0x00000065, + 0x004F, + 0x0001, + 0x0017, + 0x0067 + }, { + 0x00000066, + 0x0050, + 0x0002, + 0x0018, + 0x0068 + }, { + 0x00000067, + 0x0051, + 0x0001, + 0x0019, + 0x8000 + }, { + 0x00000068, + 0x0051, + 0x0003, + 0x001A, + 0x8001 + }, { + 0x00000069, + 0x0051, + 0x0004, + 0x001B, + 0x8002 + }, { + 0x0000006A, + 0x0052, + 0x0003, + 0x001C, + 0x00B2 + }, { + 0x0000006B, + 0x0052, + 0x0004, + 0x001D, + 0x00BE + }, { + 0x0000006C, + 0x0053, + 0x0000, + 0x001E, + 0x00BF + }, { + 0x0000006D, + 0x0053, + 0x0001, + 0x001F, + 0x00B2 + }, { + 0x00000019, + 0x0058, + 0x0000, + 0x0020, + 0x0069 + }, { + 0x0000007A, + 0x0059, + 0x0000, + 0x0021, + 0x006A + }, { + 0x0000007B, + 0x005A, + 0x0000, + 0x0022, + 0x006B + }, { + 0x0000007C, + 0x005B, + 0x0000, + 0x0023, + 0x006C + }, { + 0x0000007D, + 0x005C, + 0x0000, + 0x0024, + 0x006D + }, { + 0x0000007E, + 0x0059, + 0x0001, + 0x0025, + 0x006E + }, { + 0x0000007F, + 0x005A, + 0x0001, + 0x0026, + 0x006F + }, { + 0x00000080, + 0x005B, + 0x0001, + 0x0027, + 0x0070 + }, { + 0x00000081, + 0x005C, + 0x0001, + 0x0028, + 0x0071 + }, { + 0x00000082, + 0x0059, + 0x0002, + 0x0029, + 0x0072 + }, { + 0x00000083, + 0x005A, + 0x0002, + 0x002A, + 0x0073 + }, { + 0x00000084, + 0x005B, + 0x0002, + 0x002B, + 0x0074 + }, { + 0x00000085, + 0x005C, + 0x0002, + 0x002C, + 0x0075 + }, { + 0x00000086, + 0x0059, + 0x0003, + 0x002D, + 0x0076 + }, { + 0x00000087, + 0x005A, + 0x0003, + 0x002E, + 0x0077 + }, { + 0x00000088, + 0x005B, + 0x0003, + 0x002F, + 0x0078 + }, { + 0x00000089, + 0x005C, + 0x0003, + 0x0030, + 0x0079 + }, { + 0x0000008A, + 0x0059, + 0x0004, + 0x0031, + 0x007A + }, { + 0x0000008B, + 0x005A, + 0x0004, + 0x0032, + 0x007B + }, { + 0x0000008C, + 0x005B, + 0x0004, + 0x0033, + 0x007C + }, { + 0x0000008D, + 0x005C, + 0x0004, + 0x0034, + 0x007D + }, { + 0x0000001A, + 0x005D, + 0x0000, + 0x0035, + 0x007E + }, { + 0x0000001B, + 0x005E, + 0x0000, + 0x0036, + 0x007F + }, { + 0x0000001C, + 0x005F, + 0x0000, + 0x0037, + 0x0080 + }, { + 0x0000001D, + 0x0060, + 0x0000, + 0x0038, + 0x0081 + }, { + 0x0000001E, + 0x0061, + 0x0000, + 0x0039, + 0x0082 + }, { + 0x0000001F, + 0x0062, + 0x0000, + 0x003A, + 0x0083 + }, { + 0x00000020, + 0x0063, + 0x0002, + 0x003B, + 0x0084 + }, { + 0x00000021, + 0x0064, + 0x0000, + 0x003C, + 0x0085 + }, { + 0x00000022, + 0x0065, + 0x0001, + 0x003D, + 0x0086 + }, { + 0x00000023, + 0x0066, + 0x0002, + 0x003E, + 0x0087 + }, { + 0x00000024, + 0x0067, + 0x0003, + 0x003F, + 0x0088 + }, { + 0x00000025, + 0x0068, + 0x0000, + 0x0040, + 0x0089 + }, { + 0x00000026, + 0x0069, + 0x0002, + 0x0041, + 0x008A + }, { + 0x00000027, + 0x006A, + 0x0001, + 0x0042, + 0x008B + }, { + 0x00000028, + 0x006B, + 0x0003, + 0x0043, + 0x008C + }, { + 0x00000029, + 0x006C, + 0x0000, + 0x0044, + 0x008D + }, { + 0x0000002A, + 0x006D, + 0x0000, + 0x0045, + 0x008E + }, { + 0x0000002B, + 0x006E, + 0x0001, + 0x0046, + 0x008F + }, { + 0x0000002C, + 0x006F, + 0x0003, + 0x0047, + 0x0090 + }, { + 0x0000002D, + 0x0070, + 0x0000, + 0x0048, + 0x0091 + }, { + 0x0000002E, + 0x0071, + 0x0000, + 0x0049, + 0x8007 + }, { + 0x0000002F, + 0x0072, + 0x0003, + 0x004A, + 0x8008 + }, { + 0x00000030, + 0x0073, + 0x0001, + 0x004B, + 0x8009 + }, { + 0x00000031, + 0x0074, + 0x0001, + 0x004C, + 0x800A + }, { + 0x00000032, + 0x0075, + 0x0000, + 0x004D, + 0x800B + }, { + 0x00000033, + 0x0076, + 0x0001, + 0x004E, + 0x800C + }, { + 0x00000034, + 0x0077, + 0x0000, + 0x004F, + 0x800D + } +}; + +u32 FUN_0207FC5C(u8 a0, u32 a1) +{ + switch (a1) + { + case 0: + return UNK_020FB788[a0].unk_0; + case 1: + return UNK_020FB788[a0].unk_4; + case 2: + return UNK_020FB788[a0].unk_6; + case 3: + return UNK_020FB788[a0].unk_8; + case 4: + return UNK_020FB788[a0].unk_A; + default: + return 0; + } +} + +int FUN_0207FCC0(u8 * a0, u32 a1) +{ + int ret = (int)UNK_020FB788[a1].unk_A; + if (ret & 0x8000) + ret = a0[(u8)ret] + 0x92; + return ret; +} + +u8 FUN_0207FCE0(u32 a0) +{ + int ret = (int)UNK_020FB788[a0].unk_A; + if (ret & 0x8000) + return (u8)ret; + return 0xFF; +} diff --git a/include/unk_0207FC5C.h b/include/unk_0207FC5C.h new file mode 100644 index 00000000..c3c63553 --- /dev/null +++ b/include/unk_0207FC5C.h @@ -0,0 +1,8 @@ +#ifndef POKEDIAMOND_UNK_0207FC5C_H +#define POKEDIAMOND_UNK_0207FC5C_H + +u32 FUN_0207FC5C(u8 a0, u32 a1); +int FUN_0207FCC0(u8 * a0, u32 a1); +u8 FUN_0207FCE0(u32 a0); + +#endif //POKEDIAMOND_UNK_0207FC5C_H |