summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-04-21 11:18:33 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-04-21 11:18:33 -0400
commit8528e529dac0ee23a1ffe9c8f7177c6c32825fa8 (patch)
tree4d36e582381b7da2764454aa226eecb168e6c592
parentf2adb8e246e5d850c6fdf51e5ba113b13640888c (diff)
copypasta through debug_80C7A54
-rw-r--r--asm/watanabe_debug_menu.s426
-rw-r--r--src/debug/watanabe_debug_menu.c80
2 files changed, 80 insertions, 426 deletions
diff --git a/asm/watanabe_debug_menu.s b/asm/watanabe_debug_menu.s
index e7ae5d91f..cb801d86b 100644
--- a/asm/watanabe_debug_menu.s
+++ b/asm/watanabe_debug_menu.s
@@ -5,432 +5,6 @@
.text
- thumb_func_start debug_80C777C
-debug_80C777C:
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- add sp, sp, #0xffffffec
- lsl r0, r0, #0x18
- lsr r7, r0, #0x18
- ldr r1, ._784 @ gUnknown_Debug_083F8815
- mov r0, sp
- mov r2, #0x12
- bl memcpy
- mov r0, #0x9
- mov r1, #0x0
- mov r2, #0xe
- mov r3, #0x7
- bl Menu_DrawStdWindowFrame
- mov r0, #0x0
- mov r1, #0x0
- mov r2, #0x9
- mov r3, #0x9
- bl Menu_DrawStdWindowFrame
- mov r0, #0x0
- mov r1, #0xa
- mov r2, #0x9
- mov r3, #0x13
- bl Menu_DrawStdWindowFrame
- mov r0, #0xe
- mov r1, #0x0
- mov r2, #0x1d
- mov r3, #0x7
- bl Menu_DrawStdWindowFrame
- ldr r0, ._784 + 4 @ gUnknown_Debug_083F87D0
- mov r1, #0xf
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._784 + 8 @ gUnknown_Debug_083F87D8
- mov r1, #0x19
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._784 + 12 @ gUnknown_Debug_083F87E0
- mov r1, #0xf
- mov r2, #0x5
- bl Menu_PrintText
- mov r0, #0xa
- mov r1, #0x8
- mov r2, #0x1d
- mov r3, #0xc
- bl Menu_DrawStdWindowFrame
- mov r2, #0x0
- ldr r4, ._784 + 16 @ 0x600fa56
- ldr r0, ._784 + 20 @ 0xa311
- add r3, r0, #0
-._779:
- lsl r0, r2, #0x1
- add r0, r0, r4
- add r1, r2, r3
- strh r1, [r0]
- add r0, r2, #1
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- cmp r2, #0xe
- bls ._779 @cond_branch
- mov r2, #0x0
- ldr r5, ._784 + 24 @ gUnknown_Debug_083F87F4
- lsl r6, r7, #0x2
- mov r8, r6
- ldr r4, ._784 + 28 @ 0x600f256
- ldr r0, ._784 + 32 @ 0x8301
- add r3, r0, #0
-._780:
- lsl r0, r2, #0x1
- add r0, r0, r4
- add r1, r2, r3
- strh r1, [r0]
- add r0, r2, #1
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- cmp r2, #0xe
- bls ._780 @cond_branch
- add r0, r5, #0
- mov r1, #0x14
- mov r2, #0xa
- bl Menu_PrintText
- mov r0, #0xa
- mov r1, #0xd
- mov r2, #0x1d
- mov r3, #0x13
- bl Menu_DrawStdWindowFrame
- mov r1, sp
- mov r0, #0x23
- strb r0, [r1]
- mov r2, #0x0
- ldr r4, ._784 + 36 @ 0x600f396
- mov r5, #0x93
- lsl r5, r5, #0x8
- add r3, r5, #0
-._781:
- lsl r1, r2, #0x1
- add r1, r1, r4
- mov r6, sp
- add r0, r6, r2
- ldrb r0, [r0]
- add r0, r0, r3
- strh r0, [r1]
- add r0, r2, #1
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- cmp r2, #0x11
- bls ._781 @cond_branch
- mov r1, sp
- mov r0, #0x24
- strb r0, [r1]
- mov r2, #0x0
- ldr r5, ._784 + 40 @ gUnknown_Debug_083F8801
- ldr r4, ._784 + 44 @ 0x600f3d6
- mov r0, #0x93
- lsl r0, r0, #0x8
- add r3, r0, #0
-._782:
- lsl r1, r2, #0x1
- add r1, r1, r4
- mov r6, sp
- add r0, r6, r2
- ldrb r0, [r0]
- add r0, r0, r3
- strh r0, [r1]
- add r0, r2, #1
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- cmp r2, #0x11
- bls ._782 @cond_branch
- mov r1, sp
- mov r0, #0x25
- strb r0, [r1]
- mov r2, #0x0
- ldr r4, ._784 + 48 @ 0x600f416
- mov r0, #0x93
- lsl r0, r0, #0x8
- add r3, r0, #0
-._783:
- lsl r1, r2, #0x1
- add r1, r1, r4
- mov r6, sp
- add r0, r6, r2
- ldrb r0, [r0]
- add r0, r0, r3
- strh r0, [r1]
- add r0, r2, #1
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- cmp r2, #0x11
- bls ._783 @cond_branch
- add r0, r5, #0
- mov r1, #0xf
- mov r2, #0x11
- bl Menu_PrintText
- ldr r1, ._784 + 52 @ 0x4000040
- ldr r2, ._784 + 56 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r5, ._784 + 60 @ 0x699f
- add r0, r5, #0
- strh r0, [r1]
- ldr r1, ._784 + 64 @ gTasks
- mov r6, r8
- add r0, r6, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._784 + 68 @ debug_80C7934
- str r1, [r0]
- add sp, sp, #0x14
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7}
- pop {r0}
- bx r0
-._785:
- .align 2, 0
-._784:
- .word gUnknown_Debug_083F8815
- .word gUnknown_Debug_083F87D0
- .word gUnknown_Debug_083F87D8
- .word gUnknown_Debug_083F87E0
- .word 0x600fa56
- .word 0xa311
- .word gUnknown_Debug_083F87F4
- .word 0x600f256
- .word 0x8301
- .word 0x600f396
- .word gUnknown_Debug_083F8801
- .word 0x600f3d6
- .word 0x600f416
- .word 0x4000040
- .word 0x51ef
- .word 0x699f
- .word gTasks
- .word debug_80C7934+1
-
- thumb_func_end debug_80C777C
-
- thumb_func_start debug_80C7934
-debug_80C7934:
- push {r4, r5, r6, lr}
- mov r6, r8
- push {r6}
- add sp, sp, #0xfffffff8
- mov r8, r0
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- mov r8, r0
- ldr r5, ._786 @ gUnknown_Debug_2038A20
- ldr r6, [r5]
- ldrh r2, [r6]
- lsl r0, r2, #0x3
- ldr r1, ._786 + 4 @ gTrainerFrontPicTable
- add r0, r0, r1
- ldr r1, ._786 + 8 @ gTrainerFrontPicCoords
- lsl r2, r2, #0x2
- add r2, r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, #0x1]
- ldr r4, ._786 + 12 @ gUnknown_081FAF4C
- ldr r3, [r4]
- ldr r4, [r4, #0x4]
- str r4, [sp]
- ldrh r4, [r6]
- str r4, [sp, #0x4]
- bl DecompressPicFromTable_2
- ldr r0, [r5]
- ldrh r0, [r0]
- lsl r0, r0, #0x3
- ldr r1, ._786 + 16 @ gTrainerFrontPicPaletteTable
- add r0, r0, r1
- bl LoadCompressedObjectPalette
- ldr r0, [r5]
- ldrh r0, [r0]
- mov r1, #0x1
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, ._786 + 20 @ gUnknown_02024E8C
- mov r1, #0x28
- mov r2, #0x28
- mov r3, #0x0
- bl CreateSprite
- ldr r1, [r5]
- mov r6, #0x0
- strb r0, [r1, #0x2]
- ldr r4, ._786 + 24 @ gSprites
- ldr r2, [r5]
- ldrb r1, [r2, #0x2]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r1, r4, #0
- add r1, r1, #0x1c
- add r0, r0, r1
- ldr r1, ._786 + 28 @ debug_69
- str r1, [r0]
- ldrb r0, [r2, #0x2]
- lsl r1, r0, #0x4
- add r1, r1, r0
- lsl r1, r1, #0x2
- add r1, r1, r4
- ldrb r2, [r1, #0x5]
- mov r0, #0xd
- neg r0, r0
- and r0, r0, r2
- strb r0, [r1, #0x5]
- ldr r0, [r5]
- ldrh r0, [r0]
- mov r1, #0x1a
- mov r2, #0x5
- bl debug_80C376C
- ldr r2, [r5]
- ldrb r1, [r2, #0x2]
- lsl r0, r1, #0x4
- add r0, r0, r1
- lsl r0, r0, #0x2
- add r0, r0, r4
- ldrb r0, [r0, #0x5]
- lsr r0, r0, #0x4
- strb r0, [r2, #0x6]
- ldr r0, [r5]
- ldrb r0, [r0, #0x6]
- lsl r0, r0, #0x5
- ldr r4, ._786 + 32 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r2, ._786 + 36 @ 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, ._786 + 40 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
- ldr r1, ._786 + 44 @ gTasks
- mov r2, r8
- lsl r0, r2, #0x2
- add r0, r0, r8
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._786 + 48 @ debug_80C7A54
- str r1, [r0]
- ldr r0, [r5]
- strb r6, [r0, #0x9]
- add sp, sp, #0x8
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6}
- pop {r0}
- bx r0
-._787:
- .align 2, 0
-._786:
- .word gUnknown_Debug_2038A20
- .word gTrainerFrontPicTable
- .word gTrainerFrontPicCoords
- .word gUnknown_081FAF4C
- .word gTrainerFrontPicPaletteTable
- .word gUnknown_02024E8C
- .word gSprites
- .word debug_69+1
- .word gPlttBufferUnfaded+0x200
- .word 0xffffff00
- .word gPlttBufferFaded+0x100
- .word gTasks
- .word debug_80C7A54+1
-
- thumb_func_end debug_80C7934
-
- thumb_func_start debug_80C7A54
-debug_80C7A54:
- push {r4, r5, r6, lr}
- add r6, r0, #0
- lsl r6, r6, #0x18
- lsr r6, r6, #0x18
- ldr r4, ._788 @ gPlttBufferUnfaded
- ldr r5, ._788 + 4 @ gUnknown_Debug_2038A20
- ldr r1, [r5]
- add r1, r1, #0x10
- add r0, r4, #0
- mov r2, #0x10
- bl CpuSet
- ldr r0, ._788 + 8 @ 0xffffff00
- add r4, r4, r0
- ldr r3, [r5]
- ldrb r0, [r3, #0x7]
- add r0, r0, #0x81
- lsl r0, r0, #0x1
- add r0, r0, r4
- ldrh r4, [r0]
- mov r1, #0x1f
- and r1, r1, r4
- ldrb r2, [r3, #0xc]
- mov r0, #0x20
- neg r0, r0
- and r0, r0, r2
- orr r0, r0, r1
- strb r0, [r3, #0xc]
- ldr r3, [r5]
- mov r1, #0xf8
- lsl r1, r1, #0x2
- and r1, r1, r4
- ldrh r2, [r3, #0xc]
- ldr r0, ._788 + 12 @ 0xfffffc1f
- and r0, r0, r2
- orr r0, r0, r1
- strh r0, [r3, #0xc]
- mov r1, #0xf8
- lsl r1, r1, #0x7
- and r1, r1, r4
- lsr r1, r1, #0x8
- ldrb r2, [r3, #0xd]
- mov r0, #0x7d
- neg r0, r0
- and r0, r0, r2
- orr r0, r0, r1
- strb r0, [r3, #0xd]
- ldr r2, [r5]
- ldrb r1, [r2, #0xd]
- mov r0, #0x7f
- and r0, r0, r1
- strb r0, [r2, #0xd]
- ldr r0, [r5]
- ldrb r0, [r0, #0x7]
- add r0, r0, #0x1
- mov r1, #0xb
- mov r2, #0xa
- mov r3, #0x2
- bl debug_80C68CC
- ldr r0, ._788 + 16 @ gUnknown_Debug_083F8813
- mov r1, #0xd
- mov r2, #0xa
- bl Menu_PrintText
- add r0, r4, #0
- mov r1, #0xe
- mov r2, #0xa
- mov r3, #0x4
- bl debug_80C68CC
- ldr r1, ._788 + 20 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._788 + 24 @ debug_80C7B14
- str r1, [r0]
- pop {r4, r5, r6}
- pop {r0}
- bx r0
-._789:
- .align 2, 0
-._788:
- .word gPlttBufferUnfaded+0x100
- .word gUnknown_Debug_2038A20
- .word 0xffffff00
- .word 0xfffffc1f
- .word gUnknown_Debug_083F8813
- .word gTasks
- .word debug_80C7B14+1
-
- thumb_func_end debug_80C7A54
-
thumb_func_start debug_80C7B14
debug_80C7B14:
push {r4, r5, r6, lr}
diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c
index 7bb182be8..b1f7cbe54 100644
--- a/src/debug/watanabe_debug_menu.c
+++ b/src/debug/watanabe_debug_menu.c
@@ -141,6 +141,9 @@ void debug_80C7294(u8 taskId);
void debug_80C74E4(u8 taskId);
void debug_80C7584(struct Sprite *);
void debug_80C777C(u8 taskId);
+void debug_80C7934(u8 taskId);
+void debug_80C7A54(u8 taskId);
+void debug_80C7B14(u8 taskId);
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F8068[5];
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F80D8[10];
@@ -3017,4 +3020,81 @@ void InitSeeTrainers(void)
StartSpriteAnim(gSprites + spriteId, 2);
}
+void debug_80C777C(u8 taskId)
+{
+ // u8 sp00[] = {0x00, 0x10, 0x20, 0x20, 0x20, 0x21, 0x20, 0x20, 0x20, 0x21, 0x20, 0x20, 0x20, 0x21, 0x20, 0x20, 0x20, 0x21};
+ u8 i;
+ u8 sp00[ARRAY_COUNT(gUnknown_Debug_083F8815)];
+ memcpy(sp00, gUnknown_Debug_083F8815, sizeof(gUnknown_Debug_083F8815));
+
+ Menu_DrawStdWindowFrame(9, 0, 14, 7);
+ Menu_DrawStdWindowFrame(0, 0, 9, 9);
+ Menu_DrawStdWindowFrame(0, 10, 9, 19);
+ Menu_DrawStdWindowFrame(14, 0, 29, 7);
+ Menu_PrintText(gUnknown_Debug_083F87D0, 15, 1);
+ Menu_PrintText(gUnknown_Debug_083F87D8, 25, 1);
+ Menu_PrintText(gUnknown_Debug_083F87E0, 15, 5);
+
+ Menu_DrawStdWindowFrame(10, 8, 29, 12);
+ for (i = 0; i < 15; i++)
+ ((u16 *)(VRAM + 0xFA56))[i] = 0xA311 + i;
+ for (i = 0; i < 15; i++)
+ ((u16 *)(VRAM + 0xF256))[i] = 0x8301 + i;
+
+ Menu_PrintText(gUnknown_Debug_083F87F4, 20, 10);
+ Menu_DrawStdWindowFrame(10, 13, 29, 19);
+
+ sp00[0] = 0x23;
+ for (i = 0; i < 18; i++)
+ ((u16 *)(VRAM + 0xF396))[i] = 0x9300 + sp00[i];
+ sp00[0] = 0x24;
+ for (i = 0; i < 18; i++)
+ ((u16 *)(VRAM + 0xF3D6))[i] = 0x9300 + sp00[i];
+ sp00[0] = 0x25;
+ for (i = 0; i < 18; i++)
+ ((u16 *)(VRAM + 0xF416))[i] = 0x9300 + sp00[i];
+
+ Menu_PrintText(gUnknown_Debug_083F8801, 15, 17);
+
+ REG_WIN0H = 0x51EF;
+ REG_WIN0V = 0x699F;
+
+ gTasks[taskId].func = debug_80C7934;
+}
+
+void debug_80C7934(u8 taskId)
+{
+ DecompressPicFromTable_2(gTrainerFrontPicTable + gUnknown_Debug_2038A20->unk0, gTrainerFrontPicCoords[gUnknown_Debug_2038A20->unk0].coords, gTrainerFrontPicCoords[gUnknown_Debug_2038A20->unk0].y_offset, gUnknown_081FAF4C[0], gUnknown_081FAF4C[1], gUnknown_Debug_2038A20->unk0);
+ LoadCompressedObjectPalette(gTrainerFrontPicPaletteTable + gUnknown_Debug_2038A20->unk0);
+ GetMonSpriteTemplate_803C5A0(gUnknown_Debug_2038A20->unk0, 1);
+ gUnknown_Debug_2038A20->unk2 = CreateSprite(&gUnknown_02024E8C, 0x28, 0x28, 0);
+ gSprites[gUnknown_Debug_2038A20->unk2].callback = debug_69;
+ gSprites[gUnknown_Debug_2038A20->unk2].oam.priority = 0;
+
+ debug_80C376C(gUnknown_Debug_2038A20->unk0, 26, 5);
+
+ gUnknown_Debug_2038A20->unk6 = gSprites[gUnknown_Debug_2038A20->unk2].oam.paletteNum;
+ CpuCopy16(gPlttBufferUnfaded + gUnknown_Debug_2038A20->unk6 * 16 + 0x100, gPlttBufferUnfaded + 0x80, 0x20);
+ CpuCopy16(gPlttBufferUnfaded + gUnknown_Debug_2038A20->unk6 * 16 + 0x100, gPlttBufferFaded + 0x80, 0x20);
+
+ gTasks[taskId].func = debug_80C7A54;
+
+ gUnknown_Debug_2038A20->unk9 = 0;
+}
+
+void debug_80C7A54(u8 taskId)
+{
+ u16 hue;
+ CpuCopy16(gPlttBufferUnfaded + 0x80, gUnknown_Debug_2038A20->unk10, 32);
+ hue = gPlttBufferUnfaded[gUnknown_Debug_2038A20->unk7 + 0x81];
+ gUnknown_Debug_2038A20->unkC.r = hue & 0x1f;
+ gUnknown_Debug_2038A20->unkC.g = (hue & 0x3e0) >> 5;
+ gUnknown_Debug_2038A20->unkC.b = (hue & 0x7c00) >> 10;
+ gUnknown_Debug_2038A20->unkC.unused_15 = 0;
+ debug_80C68CC(gUnknown_Debug_2038A20->unk7 + 1, 11, 10, 2);
+ Menu_PrintText(gUnknown_Debug_083F8813, 13, 10);
+ debug_80C68CC(hue, 14, 10, 4);
+ gTasks[taskId].func = debug_80C7B14;
+}
+
#endif // DEBUG