summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-04-21 14:09:13 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-04-21 14:09:13 -0400
commit936981f6698cd489c91c1dd419a6dbaa6179eaef (patch)
tree7354c0a668ae1eb98c05641a79ef7eedfe201223
parent8528e529dac0ee23a1ffe9c8f7177c6c32825fa8 (diff)
Remaining functions in watanabe
-rw-r--r--asm/watanabe_debug_menu.s759
-rw-r--r--ld_script.txt1
-rw-r--r--src/debug/watanabe_debug_menu.c445
3 files changed, 445 insertions, 760 deletions
diff --git a/asm/watanabe_debug_menu.s b/asm/watanabe_debug_menu.s
deleted file mode 100644
index cb801d86b..000000000
--- a/asm/watanabe_debug_menu.s
+++ /dev/null
@@ -1,759 +0,0 @@
-.if DEBUG
-
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .text
-
- thumb_func_start debug_80C7B14
-debug_80C7B14:
- push {r4, r5, r6, lr}
- add sp, sp, #0xfffffffc
- lsl r0, r0, #0x18
- lsr r6, r0, #0x18
- ldr r1, ._792 @ gMain
- ldrh r3, [r1, #0x2e]
- mov r0, #0x2
- and r0, r0, r3
- add r4, r1, #0
- cmp r0, #0
- beq ._790 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- neg r0, r0
- mov r1, #0x0
- str r1, [sp]
- mov r2, #0x0
- mov r3, #0x10
- bl BeginNormalPaletteFade
- ldr r0, ._792 + 4 @ debug_80C370C
- bl SetMainCallback2
- ldr r1, ._792 + 8 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._792 + 12 @ debug_80C373C
- str r1, [r0]
- b ._821
-._793:
- .align 2, 0
-._792:
- .word gMain
- .word debug_80C370C+1
- .word gTasks
- .word debug_80C373C+1
-._790:
- ldrh r1, [r4, #0x30]
- mov r0, #0x80
- lsl r0, r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._794 @cond_branch
- ldr r4, ._796 @ gUnknown_Debug_2038A20
- ldr r0, [r4]
- ldrh r1, [r0]
- mov r0, #0x0
- b ._795
-._797:
- .align 2, 0
-._796:
- .word gUnknown_Debug_2038A20
-._794:
- mov r0, #0x80
- lsl r0, r0, #0x2
- and r0, r0, r1
- cmp r0, #0
- beq ._798 @cond_branch
- ldr r4, ._800 @ gUnknown_Debug_2038A20
- ldr r0, [r4]
- ldrh r1, [r0]
- mov r0, #0x1
-._795:
- bl debug_80C38B4
- ldr r1, [r4]
- strh r0, [r1]
- ldr r1, ._800 + 4 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._800 + 8 @ debug_80C7D44
- str r1, [r0]
- b ._821
-._801:
- .align 2, 0
-._800:
- .word gUnknown_Debug_2038A20
- .word gTasks
- .word debug_80C7D44+1
-._798:
- mov r2, #0x1
- and r2, r2, r3
- cmp r2, #0
- beq ._802 @cond_branch
- ldr r0, ._804 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x1
- strb r0, [r1, #0x5]
- ldr r1, ._804 + 4 @ 0x4000040
- ldr r2, ._804 + 8 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r2, ._804 + 12 @ 0x4167
- add r0, r2, #0
- strh r0, [r1]
- ldr r1, ._804 + 16 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._804 + 20 @ debug_80C7DDC
- str r1, [r0]
- b ._821
-._805:
- .align 2, 0
-._804:
- .word gUnknown_Debug_2038A20
- .word 0x4000040
- .word 0x51ef
- .word 0x4167
- .word gTasks
- .word debug_80C7DDC+1
-._802:
- mov r0, #0x10
- and r0, r0, r1
- ldr r3, ._809 @ gUnknown_Debug_2038A20
- cmp r0, #0
- beq ._807 @cond_branch
- ldr r1, [r3]
- ldrb r0, [r1, #0x7]
- cmp r0, #0xd
- bhi ._807 @cond_branch
- lsl r0, r0, #0x1
- ldr r1, ._809 + 4 @ 0x5000102
- add r0, r0, r1
- strh r2, [r0]
- ldr r1, [r3]
- ldrb r0, [r1, #0x7]
- add r0, r0, #0x1
- strb r0, [r1, #0x7]
- b ._813
-._810:
- .align 2, 0
-._809:
- .word gUnknown_Debug_2038A20
- .word 0x5000102
-._807:
- ldrh r1, [r4, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._812 @cond_branch
- ldr r1, [r3]
- ldrb r0, [r1, #0x7]
- cmp r0, #0
- beq ._812 @cond_branch
- lsl r0, r0, #0x1
- ldr r2, ._814 @ 0x5000102
- add r0, r0, r2
- mov r1, #0x0
- strh r1, [r0]
- ldr r1, [r3]
- ldrb r0, [r1, #0x7]
- sub r0, r0, #0x1
- strb r0, [r1, #0x7]
- b ._813
-._815:
- .align 2, 0
-._814:
- .word 0x5000102
-._812:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x8
- and r0, r0, r1
- cmp r0, #0
- beq ._816 @cond_branch
- ldr r4, ._819 @ gUnknown_Debug_2038A20
- ldr r2, [r4]
- ldrb r0, [r2, #0x9]
- mov r1, #0x1
- eor r0, r0, r1
- strb r0, [r2, #0x9]
- ldr r1, [r4]
- ldrb r0, [r1, #0x9]
- cmp r0, #0
- beq ._817 @cond_branch
- ldrh r0, [r1]
- mov r1, #0x0
- mov r2, #0x0
- bl GetMonSpritePalFromOtIdPersonality
- ldr r1, [r4]
- ldrb r1, [r1, #0x6]
- lsl r1, r1, #0x14
- mov r2, #0x80
- lsl r2, r2, #0x11
- add r1, r1, r2
- lsr r1, r1, #0x10
- mov r2, #0x20
- bl LoadCompressedPalette
- b ._818
-._820:
- .align 2, 0
-._819:
- .word gUnknown_Debug_2038A20
-._817:
- ldrh r0, [r1]
- mov r1, #0x0
- mov r2, #0x9
- bl GetMonSpritePalFromOtIdPersonality
- ldr r1, [r4]
- ldrb r1, [r1, #0x6]
- lsl r1, r1, #0x14
- mov r2, #0x80
- lsl r2, r2, #0x11
- add r1, r1, r2
- lsr r1, r1, #0x10
- mov r2, #0x20
- bl LoadCompressedPalette
-._818:
- ldr r5, ._822 @ gUnknown_Debug_2038A20
- ldr r0, [r5]
- ldrb r0, [r0, #0x6]
- lsl r0, r0, #0x5
- ldr r4, ._822 + 4 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r2, ._822 + 8 @ 0xffffff00
- add r1, r4, r2
- mov r2, #0x10
- bl CpuSet
- ldr r0, [r5]
- ldrb r0, [r0, #0x6]
- lsl r0, r0, #0x5
- add r0, r0, r4
- ldr r1, ._822 + 12 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
-._813:
- ldr r1, ._822 + 16 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._822 + 20 @ debug_80C7A54
- str r1, [r0]
- b ._821
-._823:
- .align 2, 0
-._822:
- .word gUnknown_Debug_2038A20
- .word gPlttBufferUnfaded+0x200
- .word 0xffffff00
- .word gPlttBufferFaded+0x100
- .word gTasks
- .word debug_80C7A54+1
-._816:
- ldr r1, [r3]
- ldrb r0, [r1, #0x8]
- add r0, r0, #0x4
- strb r0, [r1, #0x8]
- ldr r2, [r3]
- ldrb r1, [r2, #0x8]
- mov r0, #0x1f
- and r0, r0, r1
- strb r0, [r2, #0x8]
- ldr r0, [r3]
- ldrb r1, [r0, #0x7]
- lsl r1, r1, #0x1
- ldr r2, ._824 @ 0x5000142
- add r1, r1, r2
- ldr r2, ._824 + 4 @ gUnknown_Debug_083F8790
- ldrb r0, [r0, #0x8]
- lsl r0, r0, #0x1
- add r0, r0, r2
- ldrh r0, [r0]
- strh r0, [r1]
-._821:
- add sp, sp, #0x4
- pop {r4, r5, r6}
- pop {r0}
- bx r0
-._825:
- .align 2, 0
-._824:
- .word 0x5000142
- .word gUnknown_Debug_083F8790
-
- thumb_func_end debug_80C7B14
-
- thumb_func_start debug_80C7D44
-debug_80C7D44:
- push {r4, r5, r6, lr}
- add r5, r0, #0
- lsl r5, r5, #0x18
- lsr r5, r5, #0x18
- ldr r6, ._826 @ gSprites
- ldr r4, ._826 + 4 @ gUnknown_Debug_2038A20
- ldr r0, [r4]
- ldrb r1, [r0, #0x2]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r6
- ldrb r0, [r0, #0x5]
- lsr r0, r0, #0x4
- bl GetSpritePaletteTagByPaletteNum
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- bl FreeSpritePaletteByTag
- ldr r0, [r4]
- ldrb r1, [r0, #0x2]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r6
- bl DestroySprite
- ldr r0, [r4]
- ldrb r1, [r0, #0x3]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r6
- ldrb r0, [r0, #0x5]
- lsr r0, r0, #0x4
- bl GetSpritePaletteTagByPaletteNum
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- bl FreeSpritePaletteByTag
- ldr r0, [r4]
- ldrb r1, [r0, #0x3]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r6
- bl DestroySprite
- ldr r0, [r4]
- ldrb r1, [r0, #0x4]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r6
- bl sub_809D510
- ldr r1, ._826 + 8 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._826 + 12 @ debug_80C7934
- str r1, [r0]
- pop {r4, r5, r6}
- pop {r0}
- bx r0
-._827:
- .align 2, 0
-._826:
- .word gSprites
- .word gUnknown_Debug_2038A20
- .word gTasks
- .word debug_80C7934+1
-
- thumb_func_end debug_80C7D44
-
- thumb_func_start debug_80C7DDC
-debug_80C7DDC:
- push {r4, r5, r6, r7, lr}
- lsl r0, r0, #0x18
- lsr r7, r0, #0x18
- ldr r0, ._830 @ gMain
- ldrh r2, [r0, #0x2e]
- mov r1, #0x1
- and r1, r1, r2
- add r3, r0, #0
- cmp r1, #0
- beq ._828 @cond_branch
- ldr r0, ._830 + 4 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x0
- strb r0, [r1, #0x5]
- ldr r1, ._830 + 8 @ 0x4000040
- ldr r2, ._830 + 12 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r2, ._830 + 16 @ 0x699f
- add r0, r2, #0
- strh r0, [r1]
- b ._829
-._831:
- .align 2, 0
-._830:
- .word gMain
- .word gUnknown_Debug_2038A20
- .word 0x4000040
- .word 0x51ef
- .word 0x699f
-._828:
- mov r0, #0x2
- and r0, r0, r2
- cmp r0, #0
- beq ._832 @cond_branch
- ldr r6, ._834 @ gUnknown_Debug_2038A20
- ldr r0, [r6]
- strb r1, [r0, #0x5]
- ldr r1, ._834 + 4 @ 0x4000040
- ldr r2, ._834 + 8 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r2, ._834 + 12 @ 0x699f
- add r0, r2, #0
- strh r0, [r1]
- ldr r0, [r6]
- add r0, r0, #0x10
- ldr r4, ._834 + 16 @ gPlttBufferUnfaded
- add r1, r4, #0
- mov r2, #0x10
- bl CpuSet
- ldr r0, [r6]
- add r0, r0, #0x10
- ldr r5, ._834 + 20 @ gPlttBufferFaded
- add r1, r5, #0
- mov r2, #0x10
- bl CpuSet
- ldr r1, [r6]
- add r0, r1, #0
- add r0, r0, #0x10
- ldrb r1, [r1, #0x6]
- lsl r1, r1, #0x5
- mov r2, #0x80
- lsl r2, r2, #0x1
- add r4, r4, r2
- add r1, r1, r4
- mov r2, #0x10
- bl CpuSet
- ldr r1, [r6]
- add r0, r1, #0
- add r0, r0, #0x10
- ldrb r1, [r1, #0x6]
- lsl r1, r1, #0x5
- mov r2, #0x80
- lsl r2, r2, #0x1
- add r5, r5, r2
- add r1, r1, r5
- mov r2, #0x10
- bl CpuSet
-._829:
- ldr r1, ._834 + 24 @ gTasks
- lsl r0, r7, #0x2
- add r0, r0, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._834 + 28 @ debug_80C7A54
- str r1, [r0]
- b ._871
-._835:
- .align 2, 0
-._834:
- .word gUnknown_Debug_2038A20
- .word 0x4000040
- .word 0x51ef
- .word 0x699f
- .word gPlttBufferUnfaded+0x100
- .word gPlttBufferFaded+0x100
- .word gTasks
- .word debug_80C7A54+1
-._832:
- ldrh r1, [r3, #0x30]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._837 @cond_branch
- ldr r0, ._839 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- ldrb r0, [r1, #0xa]
- cmp r0, #0x1
- bhi ._837 @cond_branch
- add r0, r0, #0x1
- strb r0, [r1, #0xa]
- b ._871
-._840:
- .align 2, 0
-._839:
- .word gUnknown_Debug_2038A20
-._837:
- ldrh r1, [r3, #0x30]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._842 @cond_branch
- ldr r0, ._844 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- ldrb r0, [r1, #0xa]
- cmp r0, #0
- beq ._842 @cond_branch
- sub r0, r0, #0x1
- strb r0, [r1, #0xa]
- b ._871
-._845:
- .align 2, 0
-._844:
- .word gUnknown_Debug_2038A20
-._842:
- ldrh r1, [r3, #0x30]
- mov r0, #0x10
- and r0, r0, r1
- cmp r0, #0
- beq ._846 @cond_branch
- ldr r0, ._851 @ gUnknown_Debug_2038A20
- ldr r2, [r0]
- ldrb r0, [r2, #0xa]
- cmp r0, #0x1
- beq ._847 @cond_branch
- cmp r0, #0x1
- bgt ._848 @cond_branch
- cmp r0, #0
- beq ._849 @cond_branch
- b ._871
-._852:
- .align 2, 0
-._851:
- .word gUnknown_Debug_2038A20
-._848:
- cmp r0, #0x2
- beq ._853 @cond_branch
- b ._871
-._849:
- ldrb r3, [r2, #0xc]
- lsl r1, r3, #0x1b
- lsr r0, r1, #0x1b
- cmp r0, #0x1e
- bhi ._878 @cond_branch
- add r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- mov r1, #0x20
- neg r1, r1
- and r1, r1, r3
- orr r1, r1, r0
- strb r1, [r2, #0xc]
- b ._878
-._847:
- ldrh r3, [r2, #0xc]
- lsl r1, r3, #0x16
- lsr r0, r1, #0x1b
- cmp r0, #0x1e
- bhi ._878 @cond_branch
- add r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- lsl r0, r0, #0x5
- ldr r1, ._859 @ 0xfffffc1f
- and r1, r1, r3
- orr r1, r1, r0
- strh r1, [r2, #0xc]
- b ._878
-._860:
- .align 2, 0
-._859:
- .word 0xfffffc1f
-._853:
- ldrb r3, [r2, #0xd]
- lsl r1, r3, #0x19
- lsr r0, r1, #0x1b
- cmp r0, #0x1e
- bhi ._878 @cond_branch
- add r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- lsl r0, r0, #0x2
- mov r1, #0x7d
- neg r1, r1
- and r1, r1, r3
- orr r1, r1, r0
- strb r1, [r2, #0xd]
- b ._878
-._846:
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._871 @cond_branch
- ldr r0, ._868 @ gUnknown_Debug_2038A20
- ldr r3, [r0]
- ldrb r0, [r3, #0xa]
- cmp r0, #0x1
- beq ._864 @cond_branch
- cmp r0, #0x1
- bgt ._865 @cond_branch
- cmp r0, #0
- beq ._866 @cond_branch
- b ._871
-._869:
- .align 2, 0
-._868:
- .word gUnknown_Debug_2038A20
-._865:
- cmp r0, #0x2
- beq ._870 @cond_branch
- b ._871
-._866:
- ldrb r2, [r3, #0xc]
- mov r0, #0x1f
- and r0, r0, r2
- cmp r0, #0
- beq ._878 @cond_branch
- lsl r0, r2, #0x1b
- lsr r0, r0, #0x1b
- sub r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- mov r1, #0x20
- neg r1, r1
- and r1, r1, r2
- orr r1, r1, r0
- strb r1, [r3, #0xc]
- b ._878
-._864:
- ldrh r2, [r3, #0xc]
- mov r0, #0xf8
- lsl r0, r0, #0x2
- and r0, r0, r2
- cmp r0, #0
- beq ._878 @cond_branch
- lsl r0, r2, #0x16
- lsr r0, r0, #0x1b
- sub r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- lsl r0, r0, #0x5
- ldr r1, ._876 @ 0xfffffc1f
- and r1, r1, r2
- orr r1, r1, r0
- strh r1, [r3, #0xc]
- b ._878
-._877:
- .align 2, 0
-._876:
- .word 0xfffffc1f
-._870:
- ldrb r2, [r3, #0xd]
- mov r0, #0x7c
- and r0, r0, r2
- cmp r0, #0
- beq ._878 @cond_branch
- lsl r0, r2, #0x19
- lsr r0, r0, #0x1b
- sub r0, r0, #0x1
- mov r1, #0x1f
- and r0, r0, r1
- lsl r0, r0, #0x2
- mov r1, #0x7d
- neg r1, r1
- and r1, r1, r2
- orr r1, r1, r0
- strb r1, [r3, #0xd]
-._878:
- ldr r0, ._879 @ gTasks
- lsl r1, r7, #0x2
- add r1, r1, r7
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._879 + 4 @ debug_80C802C
- str r0, [r1]
-._871:
- pop {r4, r5, r6, r7}
- pop {r0}
- bx r0
-._880:
- .align 2, 0
-._879:
- .word gTasks
- .word debug_80C802C+1
-
- thumb_func_end debug_80C7DDC
-
- thumb_func_start debug_80C802C
-debug_80C802C:
- push {r4, r5, r6, lr}
- mov r6, r8
- push {r6}
- add r5, r0, #0
- lsl r5, r5, #0x18
- lsr r5, r5, #0x18
- ldr r0, ._881 @ gUnknown_Debug_2038A20
- ldr r3, [r0]
- ldrb r0, [r3, #0xc]
- lsl r0, r0, #0x1b
- lsr r0, r0, #0x1b
- ldrh r2, [r3, #0xc]
- mov r1, #0xf8
- lsl r1, r1, #0x2
- and r1, r1, r2
- add r0, r0, r1
- ldrb r1, [r3, #0xd]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x1b
- lsl r1, r1, #0xa
- add r0, r0, r1
- ldr r6, ._881 + 4 @ gPlttBufferUnfaded
- ldrb r1, [r3, #0x7]
- add r1, r1, #0x81
- lsl r1, r1, #0x1
- add r1, r1, r6
- strh r0, [r1]
- ldr r1, ._881 + 8 @ gPlttBufferFaded
- mov r8, r1
- ldrb r1, [r3, #0x7]
- add r1, r1, #0x81
- lsl r1, r1, #0x1
- add r1, r1, r8
- strh r0, [r1]
- ldrb r1, [r3, #0x6]
- lsl r1, r1, #0x4
- ldrb r2, [r3, #0x7]
- ldr r4, ._881 + 12 @ 0x101
- add r2, r2, r4
- add r1, r1, r2
- lsl r1, r1, #0x1
- add r1, r1, r6
- strh r0, [r1]
- ldrb r1, [r3, #0x6]
- lsl r1, r1, #0x4
- ldrb r2, [r3, #0x7]
- add r2, r2, r4
- add r1, r1, r2
- lsl r1, r1, #0x1
- add r1, r1, r8
- strh r0, [r1]
- mov r1, #0xe
- mov r2, #0xa
- mov r3, #0x4
- bl debug_80C68CC
- ldr r1, ._881 + 16 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._881 + 20 @ debug_80C7DDC
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6}
- pop {r0}
- bx r0
-._882:
- .align 2, 0
-._881:
- .word gUnknown_Debug_2038A20
- .word gPlttBufferUnfaded
- .word gPlttBufferFaded
- .word 0x101
- .word gTasks
- .word debug_80C7DDC+1
-
- thumb_func_end debug_80C802C
-
- .align 2, 0
-
-.endif
diff --git a/ld_script.txt b/ld_script.txt
index df91d85cc..2497e1d91 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -152,7 +152,6 @@ SECTIONS {
src/fldeff_escalator.o(.text);
src/berry.o(.text);
src/debug/watanabe_debug_menu.o(.text);
- asm/watanabe_debug_menu.o(.text);
src/script_menu.o(.text);
src/naming_screen.o(.text);
src/money.o(.text);
diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c
index b1f7cbe54..cf54f62f2 100644
--- a/src/debug/watanabe_debug_menu.c
+++ b/src/debug/watanabe_debug_menu.c
@@ -144,6 +144,9 @@ void debug_80C777C(u8 taskId);
void debug_80C7934(u8 taskId);
void debug_80C7A54(u8 taskId);
void debug_80C7B14(u8 taskId);
+void debug_80C7D44(u8 taskId);
+void debug_80C7DDC(u8 taskId);
+void debug_80C802C(u8 taskId);
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F8068[5];
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F80D8[10];
@@ -2518,12 +2521,14 @@ void debug_80C6FA8(u8 taskId)
else if (gMain.newAndRepeatedKeys & DPAD_RIGHT && gUnknown_Debug_2038A20->unk7 < 14)
{
((u16 *)PLTT)[0x81 + gUnknown_Debug_2038A20->unk7] = 0;
+ do; while(0);
gUnknown_Debug_2038A20->unk7++;
gTasks[taskId].func = debug_80C6EE8;
}
else if (gMain.newAndRepeatedKeys & DPAD_LEFT && gUnknown_Debug_2038A20->unk7 > 0)
{
((u16 *)PLTT)[0x81 + gUnknown_Debug_2038A20->unk7] = 0;
+ do; while(0);
gUnknown_Debug_2038A20->unk7--;
gTasks[taskId].func = debug_80C6EE8;
}
@@ -3097,4 +3102,444 @@ void debug_80C7A54(u8 taskId)
gTasks[taskId].func = debug_80C7B14;
}
+#ifdef NONMATCHING
+void debug_80C7B14(u8 taskId)
+{
+ if (gMain.newKeys & B_BUTTON)
+ {
+ PlaySE(SE_SELECT);
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
+ SetMainCallback2(debug_80C370C);
+ gTasks[taskId].func = debug_80C373C;
+ }
+ else if (gMain.newAndRepeatedKeys & R_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk0 = debug_80C38B4(0, gUnknown_Debug_2038A20->unk0);
+ gTasks[taskId].func = debug_80C7D44;
+ }
+ else if (gMain.newAndRepeatedKeys & L_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk0 = debug_80C38B4(1, gUnknown_Debug_2038A20->unk0);
+ gTasks[taskId].func = debug_80C7D44;
+ }
+ else if (gMain.newKeys & A_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk5 = 1;
+ REG_WIN0H = 0x51EF;
+ REG_WIN0V = 0x4167;
+ gTasks[taskId].func = debug_80C7DDC;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_RIGHT && gUnknown_Debug_2038A20->unk7 < 14)
+ {
+ ((u16 *)PLTT)[0x81 + gUnknown_Debug_2038A20->unk7] = 0;
+ do; while (0); // this matches the asm here...
+ gUnknown_Debug_2038A20->unk7++;
+ gTasks[taskId].func = debug_80C7A54;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_LEFT && gUnknown_Debug_2038A20->unk7 > 0)
+ {
+ ((u16 *)PLTT)[0x81 + gUnknown_Debug_2038A20->unk7] = 0;
+ do; while (0); // ... but not here
+ gUnknown_Debug_2038A20->unk7--;
+ gTasks[taskId].func = debug_80C7A54;
+ }
+ else if (gMain.newKeys & START_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk9 ^= 1;
+ if (gUnknown_Debug_2038A20->unk9)
+ {
+ LoadCompressedPalette(GetMonSpritePalFromOtIdPersonality(gUnknown_Debug_2038A20->unk0, 0, 0), gUnknown_Debug_2038A20->unk6 * 16 + 0x100, 0x20);
+ }
+ else
+ {
+ LoadCompressedPalette(GetMonSpritePalFromOtIdPersonality(gUnknown_Debug_2038A20->unk0, 0, 9), gUnknown_Debug_2038A20->unk6 * 16 + 0x100, 0x20);
+ }
+ CpuCopy16(gPlttBufferUnfaded + gUnknown_Debug_2038A20->unk6 * 16 + 0x100, gPlttBufferUnfaded + 0x80, 32);
+ CpuCopy16(gPlttBufferUnfaded + gUnknown_Debug_2038A20->unk6 * 16 + 0x100, gPlttBufferFaded + 0x80, 32);
+ gTasks[taskId].func = debug_80C7A54;
+ }
+ else
+ {
+ gUnknown_Debug_2038A20->unk8 += 4;
+ gUnknown_Debug_2038A20->unk8 &= 0x1f;
+ ((u16 *)PLTT)[0xa1 + gUnknown_Debug_2038A20->unk7] = gUnknown_Debug_083F8790[gUnknown_Debug_2038A20->unk8];
+ }
+}
+#else
+NAKED void debug_80C7B14(u8 taskId)
+{
+ asm("\tpush\t{r4, r5, r6, lr}\n"
+ "\tadd\tsp, sp, #0xfffffffc\n"
+ "\tlsl\tr0, r0, #0x18\n"
+ "\tlsr\tr6, r0, #0x18\n"
+ "\tldr\tr1, ._792 @ gMain\n"
+ "\tldrh\tr3, [r1, #0x2e]\n"
+ "\tmov\tr0, #0x2\n"
+ "\tand\tr0, r0, r3\n"
+ "\tadd\tr4, r1, #0\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._790\t@cond_branch\n"
+ "\tmov\tr0, #0x5\n"
+ "\tbl\tPlaySE\n"
+ "\tmov\tr0, #0x1\n"
+ "\tneg\tr0, r0\n"
+ "\tmov\tr1, #0x0\n"
+ "\tstr\tr1, [sp]\n"
+ "\tmov\tr2, #0x0\n"
+ "\tmov\tr3, #0x10\n"
+ "\tbl\tBeginNormalPaletteFade\n"
+ "\tldr\tr0, ._792 + 4 @ debug_80C370C\n"
+ "\tbl\tSetMainCallback2\n"
+ "\tldr\tr1, ._792 + 8 @ gTasks\n"
+ "\tlsl\tr0, r6, #0x2\n"
+ "\tadd\tr0, r0, r6\n"
+ "\tlsl\tr0, r0, #0x3\n"
+ "\tadd\tr0, r0, r1\n"
+ "\tldr\tr1, ._792 + 12 @ debug_80C373C\n"
+ "\tstr\tr1, [r0]\n"
+ "\tb\t._821\n"
+ "._793:\n"
+ "\t.align\t2, 0\n"
+ "._792:\n"
+ "\t.word\tgMain\n"
+ "\t.word\tdebug_80C370C+1\n"
+ "\t.word\tgTasks\n"
+ "\t.word\tdebug_80C373C+1\n"
+ "._790:\n"
+ "\tldrh\tr1, [r4, #0x30]\n"
+ "\tmov\tr0, #0x80\n"
+ "\tlsl\tr0, r0, #0x1\n"
+ "\tand\tr0, r0, r1\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._794\t@cond_branch\n"
+ "\tldr\tr4, ._796 @ gUnknown_Debug_2038A20\n"
+ "\tldr\tr0, [r4]\n"
+ "\tldrh\tr1, [r0]\n"
+ "\tmov\tr0, #0x0\n"
+ "\tb\t._795\n"
+ "._797:\n"
+ "\t.align\t2, 0\n"
+ "._796:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "._794:\n"
+ "\tmov\tr0, #0x80\n"
+ "\tlsl\tr0, r0, #0x2\n"
+ "\tand\tr0, r0, r1\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._798\t@cond_branch\n"
+ "\tldr\tr4, ._800 @ gUnknown_Debug_2038A20\n"
+ "\tldr\tr0, [r4]\n"
+ "\tldrh\tr1, [r0]\n"
+ "\tmov\tr0, #0x1\n"
+ "._795:\n"
+ "\tbl\tdebug_80C38B4\n"
+ "\tldr\tr1, [r4]\n"
+ "\tstrh\tr0, [r1]\n"
+ "\tldr\tr1, ._800 + 4 @ gTasks\n"
+ "\tlsl\tr0, r6, #0x2\n"
+ "\tadd\tr0, r0, r6\n"
+ "\tlsl\tr0, r0, #0x3\n"
+ "\tadd\tr0, r0, r1\n"
+ "\tldr\tr1, ._800 + 8 @ debug_80C7D44\n"
+ "\tstr\tr1, [r0]\n"
+ "\tb\t._821\n"
+ "._801:\n"
+ "\t.align\t2, 0\n"
+ "._800:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "\t.word\tgTasks\n"
+ "\t.word\tdebug_80C7D44+1\n"
+ "._798:\n"
+ "\tmov\tr2, #0x1\n"
+ "\tand\tr2, r2, r3\n"
+ "\tcmp\tr2, #0\n"
+ "\tbeq\t._802\t@cond_branch\n"
+ "\tldr\tr0, ._804 @ gUnknown_Debug_2038A20\n"
+ "\tldr\tr1, [r0]\n"
+ "\tmov\tr0, #0x1\n"
+ "\tstrb\tr0, [r1, #0x5]\n"
+ "\tldr\tr1, ._804 + 4 @ 0x4000040\n"
+ "\tldr\tr2, ._804 + 8 @ 0x51ef\n"
+ "\tadd\tr0, r2, #0\n"
+ "\tstrh\tr0, [r1]\n"
+ "\tadd\tr1, r1, #0x4\n"
+ "\tldr\tr2, ._804 + 12 @ 0x4167\n"
+ "\tadd\tr0, r2, #0\n"
+ "\tstrh\tr0, [r1]\n"
+ "\tldr\tr1, ._804 + 16 @ gTasks\n"
+ "\tlsl\tr0, r6, #0x2\n"
+ "\tadd\tr0, r0, r6\n"
+ "\tlsl\tr0, r0, #0x3\n"
+ "\tadd\tr0, r0, r1\n"
+ "\tldr\tr1, ._804 + 20 @ debug_80C7DDC\n"
+ "\tstr\tr1, [r0]\n"
+ "\tb\t._821\n"
+ "._805:\n"
+ "\t.align\t2, 0\n"
+ "._804:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "\t.word\t0x4000040\n"
+ "\t.word\t0x51ef\n"
+ "\t.word\t0x4167\n"
+ "\t.word\tgTasks\n"
+ "\t.word\tdebug_80C7DDC+1\n"
+ "._802:\n"
+ "\tmov\tr0, #0x10\n"
+ "\tand\tr0, r0, r1\n"
+ "\tldr\tr3, ._809 @ gUnknown_Debug_2038A20\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._807\t@cond_branch\n"
+ "\tldr\tr1, [r3]\n"
+ "\tldrb\tr0, [r1, #0x7]\n"
+ "\tcmp\tr0, #0xd\n"
+ "\tbhi\t._807\t@cond_branch\n"
+ "\tlsl\tr0, r0, #0x1\n"
+ "\tldr\tr1, ._809 + 4 @ 0x5000102\n"
+ "\tadd\tr0, r0, r1\n"
+ "\tstrh\tr2, [r0]\n"
+ "\tldr\tr1, [r3]\n"
+ "\tldrb\tr0, [r1, #0x7]\n"
+ "\tadd\tr0, r0, #0x1\n"
+ "\tstrb\tr0, [r1, #0x7]\n"
+ "\tb\t._813\n"
+ "._810:\n"
+ "\t.align\t2, 0\n"
+ "._809:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "\t.word\t0x5000102\n"
+ "._807:\n"
+ "\tldrh\tr1, [r4, #0x30]\n"
+ "\tmov\tr0, #0x20\n"
+ "\tand\tr0, r0, r1\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._812\t@cond_branch\n"
+ "\tldr\tr1, [r3]\n"
+ "\tldrb\tr0, [r1, #0x7]\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._812\t@cond_branch\n"
+ "\tlsl\tr0, r0, #0x1\n"
+ "\tldr\tr2, ._814 @ 0x5000102\n"
+ "\tadd\tr0, r0, r2\n"
+ "\tmov\tr1, #0x0\n"
+ "\tstrh\tr1, [r0]\n"
+ "\tldr\tr1, [r3]\n"
+ "\tldrb\tr0, [r1, #0x7]\n"
+ "\tsub\tr0, r0, #0x1\n"
+ "\tstrb\tr0, [r1, #0x7]\n"
+ "\tb\t._813\n"
+ "._815:\n"
+ "\t.align\t2, 0\n"
+ "._814:\n"
+ "\t.word\t0x5000102\n"
+ "._812:\n"
+ "\tldrh\tr1, [r4, #0x2e]\n"
+ "\tmov\tr0, #0x8\n"
+ "\tand\tr0, r0, r1\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._816\t@cond_branch\n"
+ "\tldr\tr4, ._819 @ gUnknown_Debug_2038A20\n"
+ "\tldr\tr2, [r4]\n"
+ "\tldrb\tr0, [r2, #0x9]\n"
+ "\tmov\tr1, #0x1\n"
+ "\teor\tr0, r0, r1\n"
+ "\tstrb\tr0, [r2, #0x9]\n"
+ "\tldr\tr1, [r4]\n"
+ "\tldrb\tr0, [r1, #0x9]\n"
+ "\tcmp\tr0, #0\n"
+ "\tbeq\t._817\t@cond_branch\n"
+ "\tldrh\tr0, [r1]\n"
+ "\tmov\tr1, #0x0\n"
+ "\tmov\tr2, #0x0\n"
+ "\tbl\tGetMonSpritePalFromOtIdPersonality\n"
+ "\tldr\tr1, [r4]\n"
+ "\tldrb\tr1, [r1, #0x6]\n"
+ "\tlsl\tr1, r1, #0x14\n"
+ "\tmov\tr2, #0x80\n"
+ "\tlsl\tr2, r2, #0x11\n"
+ "\tadd\tr1, r1, r2\n"
+ "\tlsr\tr1, r1, #0x10\n"
+ "\tmov\tr2, #0x20\n"
+ "\tbl\tLoadCompressedPalette\n"
+ "\tb\t._818\n"
+ "._820:\n"
+ "\t.align\t2, 0\n"
+ "._819:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "._817:\n"
+ "\tldrh\tr0, [r1]\n"
+ "\tmov\tr1, #0x0\n"
+ "\tmov\tr2, #0x9\n"
+ "\tbl\tGetMonSpritePalFromOtIdPersonality\n"
+ "\tldr\tr1, [r4]\n"
+ "\tldrb\tr1, [r1, #0x6]\n"
+ "\tlsl\tr1, r1, #0x14\n"
+ "\tmov\tr2, #0x80\n"
+ "\tlsl\tr2, r2, #0x11\n"
+ "\tadd\tr1, r1, r2\n"
+ "\tlsr\tr1, r1, #0x10\n"
+ "\tmov\tr2, #0x20\n"
+ "\tbl\tLoadCompressedPalette\n"
+ "._818:\n"
+ "\tldr\tr5, ._822 @ gUnknown_Debug_2038A20\n"
+ "\tldr\tr0, [r5]\n"
+ "\tldrb\tr0, [r0, #0x6]\n"
+ "\tlsl\tr0, r0, #0x5\n"
+ "\tldr\tr4, ._822 + 4 @ gPlttBufferUnfaded\n"
+ "\tadd\tr0, r0, r4\n"
+ "\tldr\tr2, ._822 + 8 @ 0xffffff00\n"
+ "\tadd\tr1, r4, r2\n"
+ "\tmov\tr2, #0x10\n"
+ "\tbl\tCpuSet\n"
+ "\tldr\tr0, [r5]\n"
+ "\tldrb\tr0, [r0, #0x6]\n"
+ "\tlsl\tr0, r0, #0x5\n"
+ "\tadd\tr0, r0, r4\n"
+ "\tldr\tr1, ._822 + 12 @ gPlttBufferFaded\n"
+ "\tmov\tr2, #0x10\n"
+ "\tbl\tCpuSet\n"
+ "._813:\n"
+ "\tldr\tr1, ._822 + 16 @ gTasks\n"
+ "\tlsl\tr0, r6, #0x2\n"
+ "\tadd\tr0, r0, r6\n"
+ "\tlsl\tr0, r0, #0x3\n"
+ "\tadd\tr0, r0, r1\n"
+ "\tldr\tr1, ._822 + 20 @ debug_80C7A54\n"
+ "\tstr\tr1, [r0]\n"
+ "\tb\t._821\n"
+ "._823:\n"
+ "\t.align\t2, 0\n"
+ "._822:\n"
+ "\t.word\tgUnknown_Debug_2038A20\n"
+ "\t.word\tgPlttBufferUnfaded+0x200\n"
+ "\t.word\t0xffffff00\n"
+ "\t.word\tgPlttBufferFaded+0x100\n"
+ "\t.word\tgTasks\n"
+ "\t.word\tdebug_80C7A54+1\n"
+ "._816:\n"
+ "\tldr\tr1, [r3]\n"
+ "\tldrb\tr0, [r1, #0x8]\n"
+ "\tadd\tr0, r0, #0x4\n"
+ "\tstrb\tr0, [r1, #0x8]\n"
+ "\tldr\tr2, [r3]\n"
+ "\tldrb\tr1, [r2, #0x8]\n"
+ "\tmov\tr0, #0x1f\n"
+ "\tand\tr0, r0, r1\n"
+ "\tstrb\tr0, [r2, #0x8]\n"
+ "\tldr\tr0, [r3]\n"
+ "\tldrb\tr1, [r0, #0x7]\n"
+ "\tlsl\tr1, r1, #0x1\n"
+ "\tldr\tr2, ._824 @ 0x5000142\n"
+ "\tadd\tr1, r1, r2\n"
+ "\tldr\tr2, ._824 + 4 @ gUnknown_Debug_083F8790\n"
+ "\tldrb\tr0, [r0, #0x8]\n"
+ "\tlsl\tr0, r0, #0x1\n"
+ "\tadd\tr0, r0, r2\n"
+ "\tldrh\tr0, [r0]\n"
+ "\tstrh\tr0, [r1]\n"
+ "._821:\n"
+ "\tadd\tsp, sp, #0x4\n"
+ "\tpop\t{r4, r5, r6}\n"
+ "\tpop\t{r0}\n"
+ "\tbx\tr0\n"
+ "._825:\n"
+ "\t.align\t2, 0\n"
+ "._824:\n"
+ "\t.word\t0x5000142\n"
+ "\t.word\tgUnknown_Debug_083F8790");
+}
+#endif // NONMATCHING
+
+void debug_80C7D44(u8 taskId)
+{
+ FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[gUnknown_Debug_2038A20->unk2].oam.paletteNum));
+ DestroySprite(gSprites + gUnknown_Debug_2038A20->unk2);
+ FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[gUnknown_Debug_2038A20->unk3].oam.paletteNum));
+ DestroySprite(gSprites + gUnknown_Debug_2038A20->unk3);
+ sub_809D510(gSprites + gUnknown_Debug_2038A20->unk4);
+ gTasks[taskId].func = debug_80C7934;
+}
+
+void debug_80C7DDC(u8 taskId)
+{
+ if (gMain.newKeys & A_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk5 = 0;
+ REG_WIN0H = 0x51EF;
+ REG_WIN0V = 0x699F;
+ gTasks[taskId].func = debug_80C7A54;
+ }
+ else if (gMain.newKeys & B_BUTTON)
+ {
+ gUnknown_Debug_2038A20->unk5 = 0;
+ REG_WIN0H = 0x51EF;
+ REG_WIN0V = 0x699F;
+ CpuCopy16(gUnknown_Debug_2038A20->unk10, gPlttBufferUnfaded + 0x80, 32);
+ CpuCopy16(gUnknown_Debug_2038A20->unk10, gPlttBufferFaded + 0x80, 32);
+ CpuCopy16(gUnknown_Debug_2038A20->unk10, gPlttBufferUnfaded + 0x100 + gUnknown_Debug_2038A20->unk6 * 16, 32);
+ CpuCopy16(gUnknown_Debug_2038A20->unk10, gPlttBufferFaded + 0x100 + gUnknown_Debug_2038A20->unk6 * 16, 32);
+ gTasks[taskId].func = debug_80C7A54;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_DOWN && gUnknown_Debug_2038A20->unkA < 2)
+ {
+ gUnknown_Debug_2038A20->unkA++;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_UP && gUnknown_Debug_2038A20->unkA > 0)
+ {
+ gUnknown_Debug_2038A20->unkA--;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_RIGHT)
+ {
+ switch (gUnknown_Debug_2038A20->unkA)
+ {
+ case 0:
+ if (gUnknown_Debug_2038A20->unkC.r < 31)
+ gUnknown_Debug_2038A20->unkC.r++;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ case 1:
+ if (gUnknown_Debug_2038A20->unkC.g < 31)
+ gUnknown_Debug_2038A20->unkC.g++;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ case 2:
+ if (gUnknown_Debug_2038A20->unkC.b < 31)
+ gUnknown_Debug_2038A20->unkC.b++;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ }
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_LEFT)
+ {
+ switch (gUnknown_Debug_2038A20->unkA)
+ {
+ case 0:
+ if (gUnknown_Debug_2038A20->unkC.r > 0)
+ gUnknown_Debug_2038A20->unkC.r--;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ case 1:
+ if (gUnknown_Debug_2038A20->unkC.g > 0)
+ gUnknown_Debug_2038A20->unkC.g--;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ case 2:
+ if (gUnknown_Debug_2038A20->unkC.b > 0)
+ gUnknown_Debug_2038A20->unkC.b--;
+ gTasks[taskId].func = debug_80C802C;
+ break;
+ }
+ }
+}
+
+void debug_80C802C(u8 taskId)
+{
+ u16 pal = (gUnknown_Debug_2038A20->unkC.r & 0x001f) + ((gUnknown_Debug_2038A20->unkC.g << 5) & 0x03e0) + ((gUnknown_Debug_2038A20->unkC.b << 10) & 0x7c00);
+ gPlttBufferUnfaded[gUnknown_Debug_2038A20->unk7 + 0x81] = pal;
+ gPlttBufferFaded[gUnknown_Debug_2038A20->unk7 + 0x81] = pal;
+ gPlttBufferUnfaded[0x101 + gUnknown_Debug_2038A20->unk6 * 16 + gUnknown_Debug_2038A20->unk7] = pal;
+ gPlttBufferFaded[0x101 + gUnknown_Debug_2038A20->unk6 * 16 + gUnknown_Debug_2038A20->unk7] = pal;
+ debug_80C68CC(pal, 14, 10, 4);
+ gTasks[taskId].func = debug_80C7DDC;
+}
+
#endif // DEBUG