diff options
author | ProjectRevoTPP <projectrevotpp@hotmail.com> | 2017-06-26 21:09:49 -0400 |
---|---|---|
committer | ProjectRevoTPP <projectrevotpp@hotmail.com> | 2017-06-26 21:09:49 -0400 |
commit | d10bffc7d8977bee1b42a550dc154d03bf92c3c6 (patch) | |
tree | 68b660f18ea933835710cfcb1fee5041837feee6 | |
parent | f85513f76999c79c6355711fcefaf058d02c7c46 (diff) |
decompile up to sub_80BA800
-rw-r--r-- | asm/sound_check_menu.s | 467 | ||||
-rw-r--r-- | data/sound_check_menu.s | 14 | ||||
-rwxr-xr-x | src/sound_check_menu.c | 209 |
3 files changed, 210 insertions, 480 deletions
diff --git a/asm/sound_check_menu.s b/asm/sound_check_menu.s index 99b894c83..9ebeee4e8 100644 --- a/asm/sound_check_menu.s +++ b/asm/sound_check_menu.s @@ -6,469 +6,6 @@ .text - thumb_func_start sub_80BA65C -sub_80BA65C: @ 80BA65C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_80BA400 - lsls r0, 24 - cmp r0, 0 - beq _080BA67C - ldr r0, _080BA684 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080BA688 @ =sub_80BA384 - str r0, [r1] -_080BA67C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BA684: .4byte gTasks -_080BA688: .4byte sub_80BA384 - thumb_func_end sub_80BA65C - - thumb_func_start sub_80BA68C -sub_80BA68C: @ 80BA68C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _080BA6B0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BA6AA - adds r0, r2, 0 - bl DestroyTask - ldr r0, _080BA6B4 @ =CB2_InitTitleScreen - bl SetMainCallback2 -_080BA6AA: - pop {r0} - bx r0 - .align 2, 0 -_080BA6B0: .4byte gPaletteFade -_080BA6B4: .4byte CB2_InitTitleScreen - thumb_func_end sub_80BA68C - - thumb_func_start sub_80BA6B8 -sub_80BA6B8: @ 80BA6B8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080BA6C6 - cmp r0, 0x1 - beq _080BA6E0 -_080BA6C6: - ldr r1, _080BA6D4 @ =REG_WIN1H - ldr r2, _080BA6D8 @ =0x000011df - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x4 - ldr r2, _080BA6DC @ =0x00002957 - b _080BA6EC - .align 2, 0 -_080BA6D4: .4byte REG_WIN1H -_080BA6D8: .4byte 0x000011df -_080BA6DC: .4byte 0x00002957 -_080BA6E0: - ldr r1, _080BA6F4 @ =REG_WIN1H - ldr r2, _080BA6F8 @ =0x000011df - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x4 - ldr r2, _080BA6FC @ =0x0000618f -_080BA6EC: - adds r0, r2, 0 - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080BA6F4: .4byte REG_WIN1H -_080BA6F8: .4byte 0x000011df -_080BA6FC: .4byte 0x0000618f - thumb_func_end sub_80BA6B8 - - thumb_func_start sub_80BA700 -sub_80BA700: @ 80BA700 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 16 - lsrs r6, r1, 16 - lsls r2, 16 - lsrs r7, r2, 16 - movs r1, 0 - movs r2, 0 -_080BA714: - mov r3, sp - adds r0, r3, r1 - strb r2, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bls _080BA714 - mov r1, sp - movs r0, 0xB0 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - movs r4, 0 - adds r0, r5, 0 - movs r1, 0x64 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080BA748 - mov r1, sp - adds r0, 0xA1 - strb r0, [r1] - movs r4, 0x1 -_080BA748: - adds r0, r5, 0 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _080BA766 - cmp r4, 0 - beq _080BA76C -_080BA766: - mov r1, sp - adds r0, 0xA1 - strb r0, [r1, 0x1] -_080BA76C: - mov r4, sp - adds r0, r5, 0 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - adds r0, 0xA1 - strb r0, [r4, 0x2] - lsls r1, r6, 24 - lsrs r1, 24 - lsls r2, r7, 24 - lsrs r2, 24 - mov r0, sp - bl MenuPrint - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BA700 - - thumb_func_start sub_80BA79C -sub_80BA79C: @ 80BA79C - push {r4-r6,lr} - sub sp, 0xC - adds r4, r0, 0 - lsls r1, 16 - lsrs r6, r1, 16 - lsls r2, 16 - lsrs r5, r2, 16 - movs r3, 0 - movs r1, 0 -_080BA7AE: - mov r2, sp - adds r0, r2, r3 - strb r1, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xA - bls _080BA7AE - mov r0, sp - movs r1, 0xFF - strb r1, [r0, 0xA] - movs r3, 0 - ldrb r0, [r4] - lsls r2, r6, 24 - lsls r5, 24 - cmp r0, 0xFF - beq _080BA7EC -_080BA7D0: - mov r0, sp - adds r1, r0, r3 - adds r0, r4, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - adds r0, r4, r3 - ldrb r0, [r0] - cmp r0, 0xFF - beq _080BA7EC - cmp r3, 0x9 - bls _080BA7D0 -_080BA7EC: - lsrs r1, r2, 24 - lsrs r2, r5, 24 - mov r0, sp - bl MenuPrint - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BA79C - - thumb_func_start sub_80BA800 -sub_80BA800: @ 80BA800 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xCC - lsls r0, 24 - str r0, [sp, 0xB0] - lsrs r2, r0, 24 - str r2, [sp, 0xAC] - ldr r1, _080BA9E8 @ =gUnknown_083D0312 - mov r0, sp - movs r2, 0xA - bl memcpy - mov r0, sp - adds r0, 0xC - str r0, [sp, 0xB4] - ldr r1, _080BA9EC @ =gUnknown_083D031C - movs r2, 0xB - bl memcpy - mov r2, sp - adds r2, 0x18 - str r2, [sp, 0xB8] - ldr r1, _080BA9F0 @ =gDebugText_Voice - adds r0, r2, 0 - movs r2, 0xA - bl memcpy - mov r0, sp - adds r0, 0x24 - str r0, [sp, 0xBC] - ldr r1, _080BA9F4 @ =gDebugText_Volume - movs r2, 0xA - bl memcpy - mov r2, sp - adds r2, 0x30 - str r2, [sp, 0xC0] - ldr r1, _080BA9F8 @ =gDebugText_Panpot - adds r0, r2, 0 - movs r2, 0xA - bl memcpy - mov r0, sp - adds r0, 0x3C - str r0, [sp, 0xC4] - ldr r1, _080BA9FC @ =gDebugText_Pitch - movs r2, 0xA - bl memcpy - mov r2, sp - adds r2, 0x48 - str r2, [sp, 0xC8] - ldr r1, _080BAA00 @ =gDebugText_Length - adds r0, r2, 0 - movs r2, 0xA - bl memcpy - add r4, sp, 0x54 - ldr r1, _080BAA04 @ =gDebugText_Release - adds r0, r4, 0 - movs r2, 0xA - bl memcpy - add r7, sp, 0x60 - ldr r1, _080BAA08 @ =gDebugText_Progress - adds r0, r7, 0 - movs r2, 0xA - bl memcpy - add r0, sp, 0x6C - mov r10, r0 - ldr r1, _080BAA0C @ =gDebugText_Chorus - movs r2, 0xA - bl memcpy - add r2, sp, 0x78 - mov r9, r2 - ldr r1, _080BAA10 @ =gDebugText_Priority - mov r0, r9 - movs r2, 0xA - bl memcpy - add r0, sp, 0x84 - mov r8, r0 - ldr r1, _080BAA14 @ =gUnknown_083D0381 - movs r2, 0x9 - bl memcpy - add r6, sp, 0x90 - ldr r1, _080BAA18 @ =gUnknown_083D038A - adds r0, r6, 0 - movs r2, 0x9 - bl memcpy - add r5, sp, 0x9C - ldr r1, _080BAA1C @ =gUnknown_083D0393 - adds r0, r5, 0 - movs r2, 0x9 - bl memcpy - movs r1, 0x80 - lsls r1, 19 - movs r2, 0xC5 - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - mov r0, sp - movs r1, 0x13 - movs r2, 0x4 - bl MenuPrint - ldr r0, [sp, 0xB4] - movs r1, 0x13 - movs r2, 0x2 - bl MenuPrint - ldr r0, [sp, 0xB8] - movs r1, 0x2 - movs r2, 0x1 - bl MenuPrint - ldr r0, [sp, 0xBC] - movs r1, 0x2 - movs r2, 0x3 - bl MenuPrint - ldr r0, [sp, 0xC0] - movs r1, 0x2 - movs r2, 0x5 - bl MenuPrint - ldr r0, [sp, 0xC4] - movs r1, 0x2 - movs r2, 0x7 - bl MenuPrint - ldr r0, [sp, 0xC8] - movs r1, 0x2 - movs r2, 0x9 - bl MenuPrint - adds r0, r4, 0 - movs r1, 0x2 - movs r2, 0xB - bl MenuPrint - adds r0, r7, 0 - movs r1, 0x2 - movs r2, 0xD - bl MenuPrint - mov r0, r10 - movs r1, 0x2 - movs r2, 0xF - bl MenuPrint - mov r0, r9 - movs r1, 0x2 - movs r2, 0x11 - bl MenuPrint - mov r0, r8 - movs r1, 0x13 - movs r2, 0x10 - bl MenuPrint - adds r0, r6, 0 - movs r1, 0x13 - movs r2, 0xE - bl MenuPrint - adds r0, r5, 0 - movs r1, 0x13 - movs r2, 0xC - bl MenuPrint - ldr r1, _080BAA20 @ =REG_WIN0H - movs r0, 0xF0 - strh r0, [r1] - adds r1, 0x4 - movs r0, 0xA0 - strh r0, [r1] - ldr r0, _080BAA24 @ =gUnknown_020387B3 - movs r1, 0 - strb r1, [r0] - ldr r0, _080BAA28 @ =gUnknown_020387B1 - strb r1, [r0] - ldr r0, _080BAA2C @ =gUnknown_020387B2 - strb r1, [r0] - ldr r0, _080BAA30 @ =gUnknown_03005D30 - movs r2, 0 - str r2, [r0] - ldr r0, _080BAA34 @ =gUnknown_020387D8 - strb r2, [r0] - ldr r1, _080BAA38 @ =gUnknown_020387D9 - movs r0, 0x1 - strb r0, [r1] - ldr r0, _080BAA3C @ =gUnknown_020387B4 - str r2, [r0] - movs r1, 0x78 - str r1, [r0, 0x4] - str r2, [r0, 0x8] - movs r1, 0xF0 - lsls r1, 6 - str r1, [r0, 0xC] - movs r1, 0xB4 - str r1, [r0, 0x10] - str r2, [r0, 0x18] - str r2, [r0, 0x14] - str r2, [r0, 0x1C] - movs r1, 0x2 - str r1, [r0, 0x20] - bl sub_80BAD5C - movs r0, 0 - movs r1, 0 - bl sub_80BAE10 - ldr r1, _080BAA40 @ =gTasks - ldr r2, [sp, 0xAC] - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldr r1, _080BAA44 @ =sub_80BAA48 - str r1, [r0] - add sp, 0xCC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BA9E8: .4byte gUnknown_083D0312 -_080BA9EC: .4byte gUnknown_083D031C -_080BA9F0: .4byte gDebugText_Voice -_080BA9F4: .4byte gDebugText_Volume -_080BA9F8: .4byte gDebugText_Panpot -_080BA9FC: .4byte gDebugText_Pitch -_080BAA00: .4byte gDebugText_Length -_080BAA04: .4byte gDebugText_Release -_080BAA08: .4byte gDebugText_Progress -_080BAA0C: .4byte gDebugText_Chorus -_080BAA10: .4byte gDebugText_Priority -_080BAA14: .4byte gUnknown_083D0381 -_080BAA18: .4byte gUnknown_083D038A -_080BAA1C: .4byte gUnknown_083D0393 -_080BAA20: .4byte REG_WIN0H -_080BAA24: .4byte gUnknown_020387B3 -_080BAA28: .4byte gUnknown_020387B1 -_080BAA2C: .4byte gUnknown_020387B2 -_080BAA30: .4byte gUnknown_03005D30 -_080BAA34: .4byte gUnknown_020387D8 -_080BAA38: .4byte gUnknown_020387D9 -_080BAA3C: .4byte gUnknown_020387B4 -_080BAA40: .4byte gTasks -_080BAA44: .4byte sub_80BAA48 - thumb_func_end sub_80BA800 - thumb_func_start sub_80BAA48 sub_80BAA48: @ 80BAA48 push {r4,r5,lr} @@ -1146,7 +683,7 @@ sub_80BAF84: @ 80BAF84 movs r2, 0x4 bl memcpy add r5, sp, 0x8 - ldr r1, _080BB024 @ =gUnknown_083D0381 + ldr r1, _080BB024 @ =gDebugText_Playing adds r0, r5, 0 movs r2, 0x9 bl memcpy @@ -1202,7 +739,7 @@ sub_80BAF84: @ 80BAF84 .align 2, 0 _080BB01C: .4byte gOtherText_SE _080BB020: .4byte gOtherText_Pan -_080BB024: .4byte gUnknown_083D0381 +_080BB024: .4byte gDebugText_Playing _080BB028: .4byte REG_WIN0H _080BB02C: .4byte gUnknown_020387B4 _080BB030: .4byte gTasks diff --git a/data/sound_check_menu.s b/data/sound_check_menu.s index 6e4702ae3..9278b8b45 100644 --- a/data/sound_check_menu.s +++ b/data/sound_check_menu.s @@ -34,11 +34,11 @@ gUnknown_083D0300:: @ 83D0300 .byte 1, 15 .byte 1, 17 -gUnknown_083D0312:: @ 83D0312 - .string "Bぼたんで もどる$" +gDebugText_BBack:: @ 83D0312 + .string "Bぼたんで もどる$" @ back -gUnknown_083D031C:: @ 83D031C - .string "Aぼたんで さいせい$" +gDebugText_APlay:: @ 83D031C + .string "Aぼたんで さいせい$" @ play gDebugText_Voice:: @ 83D0327 .string "VOICE‥‥‥‥$" @@ -67,13 +67,13 @@ gDebugText_Chorus:: @ 83D036D gDebugText_Priority:: @ 83D0377 .string "PRIORITY‥$" -gUnknown_083D0381:: @ 83D0381 +gDebugText_Playing:: @ 83D0381 .string "さいせいちゆう‥$" @ 再生中 (playing) -gUnknown_083D038A:: @ 83D038A +gDebugText_Reverse:: @ 83D038A .string "はんてん‥‥‥‥$" @ 反転 (reverse) -gUnknown_083D0393:: @ 83D0393 +gDebugText_Stereo:: @ 83D0393 .string "すてれお‥‥‥‥$" @ stereo .align 2 diff --git a/src/sound_check_menu.c b/src/sound_check_menu.c index 75cf48798..a46e7e363 100755 --- a/src/sound_check_menu.c +++ b/src/sound_check_menu.c @@ -7,22 +7,51 @@ #include "text.h" #include "menu.h" #include "songs.h" +#include "title_screen.h" // local task defines -#define UNK_DATA0 data[0] +#define WINDOW_SELECTED data[0] #define BGM_INDEX data[1] #define SE_INDEX data[2] #define UNK_DATA3 data[3] +// window selections +enum +{ + BGM_WINDOW, + SE_WINDOW +}; + extern void sub_80BA6B8(u8); -extern void sub_80BA700(u16, u8, u8); -extern void sub_80BA79C(u8 *, u8, u8); -extern void sub_80BA65C(u8); extern void sub_80BA800(u8); extern void sub_80BAF84(u8); extern void sub_80BB25C(u8); extern void sub_80BA68C(u8); +extern void sub_80BAD5C(void); +extern void sub_80BAE10(u8, u8); +extern void sub_80BAA48(u8); + +struct Struct_20387B4 +{ + u32 unk0; + u32 unk4; + u32 unk8; + u32 unkC; + u32 unk10; + u32 unk14; + u32 unk18; + u32 unk1C; + u32 unk20; +}; + +extern struct Struct_20387B4 gUnknown_020387B4; +extern u8 gUnknown_020387B3; +extern u8 gUnknown_020387B1; +extern u8 gUnknown_020387B2; +extern u32 gUnknown_03005D30; +extern u8 gUnknown_020387D8; +extern u8 gUnknown_020387D9; extern u8 gUnknown_020387B0; extern u8 *gBGMNames[]; @@ -34,9 +63,26 @@ extern u8 gDebugText_SE[]; extern u8 gDebugText_ABDesc[]; extern u8 gDebugText_UpDown[]; extern u8 gDebugText_DriverTest[]; +extern u8 gDebugText_BBack[]; +extern u8 gDebugText_APlay[]; +extern u8 gDebugText_Voice[]; +extern u8 gDebugText_Volume[]; +extern u8 gDebugText_Panpot[]; +extern u8 gDebugText_Pitch[]; +extern u8 gDebugText_Length[]; +extern u8 gDebugText_Release[]; +extern u8 gDebugText_Progress[]; +extern u8 gDebugText_Chorus[]; +extern u8 gDebugText_Priority[]; +extern u8 gDebugText_Playing[]; +extern u8 gDebugText_Reverse[]; +extern u8 gDebugText_Stereo[]; void sub_80BA258(u8); void sub_80BA384(u8); +void sub_80BA65C(u8); +void sub_80BA700(u16, u16, u16); +void sub_80BA79C(u8 *, u16, u16); void sub_80BA0A8(void) { @@ -101,7 +147,7 @@ void CB2_StartSoundCheckMenu(void) SetMainCallback2(sub_80BA0A8); REG_DISPCNT = 0x7140; taskId = CreateTask(sub_80BA258, 0); - TASK.UNK_DATA0 = 0; + TASK.WINDOW_SELECTED = BGM_WINDOW; TASK.BGM_INDEX = 0; TASK.SE_INDEX = 0; TASK.UNK_DATA3 = 0; @@ -146,9 +192,9 @@ void sub_80BA258(u8 taskId) } } -void sub_80BA384(u8 taskId) +void sub_80BA384(u8 taskId) // Task_HandleDrawingSoundCheckMenuText { - sub_80BA6B8(TASK.UNK_DATA0); + sub_80BA6B8(TASK.WINDOW_SELECTED); sub_80BA700(TASK.BGM_INDEX + BGM_STOP, 7, 8); // print by BGM index sub_80BA79C(gBGMNames[TASK.BGM_INDEX], 11, 8); sub_80BA700(TASK.SE_INDEX, 7, 15); @@ -157,7 +203,7 @@ void sub_80BA384(u8 taskId) } #ifdef NONMATCHING -bool8 sub_80BA400(u8 taskId) +bool8 sub_80BA400(u8 taskId) // Task_ProcessSoundCheckMenuInput { if(gMain.newKeys & R_BUTTON) // driver test { @@ -198,6 +244,7 @@ bool8 sub_80BA400(u8 taskId) // _080BA4C4 m4aSongNumStart(gTasks[taskId].data[2]); gTasks[taskId].data[4] = gTasks[taskId].data[2]; + return FALSE; } else // _080BA4D0 { @@ -620,3 +667,149 @@ _080BA658: .4byte gUnknown_020387B0\n\ .syntax divided"); } #endif + +void sub_80BA65C(u8 taskId) +{ + if(sub_80BA400(taskId) != FALSE) + gTasks[taskId].func = sub_80BA384; +} + +void sub_80BA68C(u8 taskId) +{ + if(!gPaletteFade.active) + { + DestroyTask(taskId); + SetMainCallback2(CB2_InitTitleScreen); + } +} + +void sub_80BA6B8(u8 windowType) +{ + switch(windowType) + { + case BGM_WINDOW: + default: + REG_WIN1H = 0x11DF; + REG_WIN1V = 0x2957; + break; + case SE_WINDOW: + REG_WIN1H = 0x11DF; + REG_WIN1V = 0x618F; + break; + } +} + +void sub_80BA700(u16 soundIndex, u16 x, u16 y) // PrintSoundNumber ? +{ + u8 i; + u8 str[5]; + bool8 someBool; + u8 divisorValue; + + for(i = 0; i < 3; i++) + str[i] = 0; // initialize array + + str[3] = 0xB0; + str[4] = 0xFF; + someBool = FALSE; + + divisorValue = soundIndex / 100; + if(divisorValue) + { + str[0] = divisorValue + 0xA1; + someBool = TRUE; + } + + divisorValue = (soundIndex % 100) / 10; + if(divisorValue || someBool != FALSE) + str[1] = divisorValue + 0xA1; + + str[2] = ((soundIndex % 100) % 10) + 0xA1; + MenuPrint(str, x, y); +} + +void sub_80BA79C(u8 *string, u16 x, u16 y) +{ + u8 i; + u8 str[11]; + + for(i = 0; i < 11; i++) + str[i] = 0; // format string. + + str[10] = 0xFF; // the above for loop formats the last element of the array unnecessarily. + + for(i = 0; string[i] != 0xFF && i < 10; i++) + str[i] = string[i]; + + MenuPrint(str, x, y); +} + +void sub_80BA800(u8 taskId) +{ + u8 bbackStr[10]; + u8 aplayStr[11]; + u8 voiceStr[10]; + u8 volumeStr[10]; + u8 panpotStr[10]; + u8 pitchStr[10]; + u8 lengthStr[10]; + u8 releaseStr[10]; + u8 progressStr[10]; + u8 chorusStr[10]; + u8 priorityStr[10]; + u8 playingStr[9]; + u8 reverseStr[9]; + u8 stereoStr[9]; + + memcpy(bbackStr, gDebugText_BBack, sizeof bbackStr); + memcpy(aplayStr, gDebugText_APlay, sizeof aplayStr); + memcpy(voiceStr, gDebugText_Voice, sizeof voiceStr); + memcpy(volumeStr, gDebugText_Volume, sizeof volumeStr); + memcpy(panpotStr, gDebugText_Panpot, sizeof panpotStr); + memcpy(pitchStr, gDebugText_Pitch, sizeof pitchStr); + memcpy(lengthStr, gDebugText_Length, sizeof lengthStr); + memcpy(releaseStr, gDebugText_Release, sizeof releaseStr); + memcpy(progressStr, gDebugText_Progress, sizeof progressStr); + memcpy(chorusStr, gDebugText_Chorus, sizeof chorusStr); + memcpy(priorityStr, gDebugText_Priority, sizeof priorityStr); + memcpy(playingStr, gDebugText_Playing, sizeof playingStr); + memcpy(reverseStr, gDebugText_Reverse, sizeof reverseStr); + memcpy(stereoStr, gDebugText_Stereo, sizeof stereoStr); + + REG_DISPCNT = 0x3140; + MenuDrawTextWindow(0, 0, 0x1D, 0x13); + MenuPrint(bbackStr, 0x13, 0x4); + MenuPrint(aplayStr, 0x13, 0x2); + MenuPrint(voiceStr, 0x2, 0x1); + MenuPrint(volumeStr, 0x2, 0x3); + MenuPrint(panpotStr, 0x2, 0x5); + MenuPrint(pitchStr, 0x2, 0x7); + MenuPrint(lengthStr, 0x2, 0x9); + MenuPrint(releaseStr, 0x2, 0xB); + MenuPrint(progressStr, 0x2, 0xD); + MenuPrint(chorusStr, 0x2, 0xF); + MenuPrint(priorityStr, 0x2, 0x11); + MenuPrint(playingStr, 0x13, 0x10); + MenuPrint(reverseStr, 0x13, 0xE); + MenuPrint(stereoStr, 0x13, 0xC); + REG_WIN0H = 0xF0; + REG_WIN0V = 0xA0; + gUnknown_020387B3 = 0; + gUnknown_020387B1 = 0; + gUnknown_020387B2 = 0; + gUnknown_03005D30 = 0; + gUnknown_020387D8 = 0; + gUnknown_020387D9 = 1; + gUnknown_020387B4.unk0 = 0; + gUnknown_020387B4.unk4 = 0x78; + gUnknown_020387B4.unk8 = 0; + gUnknown_020387B4.unkC = 0x3C00; + gUnknown_020387B4.unk10 = 0xB4; + gUnknown_020387B4.unk18 = 0; + gUnknown_020387B4.unk14 = 0; + gUnknown_020387B4.unk1C = 0; + gUnknown_020387B4.unk20 = 2; + sub_80BAD5C(); + sub_80BAE10(0, 0); + gTasks[taskId].func = sub_80BAA48; +} |