summaryrefslogtreecommitdiff
path: root/asm/berry_fix_program.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/berry_fix_program.s')
-rw-r--r--asm/berry_fix_program.s344
1 files changed, 0 insertions, 344 deletions
diff --git a/asm/berry_fix_program.s b/asm/berry_fix_program.s
deleted file mode 100644
index e24fa6c3c..000000000
--- a/asm/berry_fix_program.s
+++ /dev/null
@@ -1,344 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_815F6E0
-sub_815F6E0: @ 815F6E0
- push {r4-r6,lr}
- movs r6, 0x80
- lsls r6, 19
- movs r2, 0
- strh r2, [r6]
- ldr r1, _0815F73C @ =0x04000010
- strh r2, [r1]
- adds r1, 0x2
- strh r2, [r1]
- adds r1, 0x3E
- strh r2, [r1]
- ldr r5, _0815F740 @ =gUnknown_847A890
- lsls r4, r0, 1
- adds r4, r0
- lsls r4, 2
- adds r0, r4, r5
- ldr r0, [r0]
- movs r1, 0xC0
- lsls r1, 19
- bl LZ77UnCompVram
- adds r0, r5, 0x4
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, _0815F744 @ =0x0600f800
- bl LZ77UnCompVram
- adds r5, 0x8
- adds r4, r5
- ldr r0, [r4]
- movs r1, 0xA0
- lsls r1, 19
- movs r4, 0x80
- lsls r4, 1
- adds r2, r4, 0
- bl CpuSet
- ldr r1, _0815F748 @ =0x04000008
- movs r2, 0xF8
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- strh r4, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F73C: .4byte 0x04000010
-_0815F740: .4byte gUnknown_847A890
-_0815F744: .4byte 0x0600f800
-_0815F748: .4byte 0x04000008
- thumb_func_end sub_815F6E0
-
- thumb_func_start sub_815F74C
-sub_815F74C: @ 815F74C
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _0815F7C4 @ =0x0000ffff
- bl DisableInterrupts
- movs r0, 0x1
- bl EnableInterrupts
- bl m4aSoundVSyncOff
- movs r0, 0
- bl SetVBlankCallback
- movs r4, 0
- str r4, [sp]
- ldr r0, _0815F7C8 @ =0x040000d4
- mov r1, sp
- str r1, [r0]
- movs r1, 0xC0
- lsls r1, 19
- str r1, [r0, 0x4]
- ldr r1, _0815F7CC @ =0x85006000
- str r1, [r0, 0x8]
- ldr r1, [r0, 0x8]
- str r4, [sp]
- mov r1, sp
- str r1, [r0]
- movs r1, 0xA0
- lsls r1, 19
- str r1, [r0, 0x4]
- ldr r1, _0815F7D0 @ =0x85000100
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- bl ResetSpriteData
- bl ResetTasks
- bl ScanlineEffect_Stop
- ldr r0, _0815F7D4 @ =gUnknown_3005ECC
- strb r4, [r0]
- ldr r0, _0815F7D8 @ =sub_815F7F0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0815F7DC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- ldr r0, _0815F7E0 @ =sub_815F7E4
- bl SetMainCallback2
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F7C4: .4byte 0x0000ffff
-_0815F7C8: .4byte 0x040000d4
-_0815F7CC: .4byte 0x85006000
-_0815F7D0: .4byte 0x85000100
-_0815F7D4: .4byte gUnknown_3005ECC
-_0815F7D8: .4byte sub_815F7F0
-_0815F7DC: .4byte gTasks
-_0815F7E0: .4byte sub_815F7E4
- thumb_func_end sub_815F74C
-
- thumb_func_start sub_815F7E4
-sub_815F7E4: @ 815F7E4
- push {lr}
- bl RunTasks
- pop {r0}
- bx r0
- thumb_func_end sub_815F7E4
-
- thumb_func_start sub_815F7F0
-sub_815F7F0: @ 815F7F0
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _0815F818 @ =gTasks+0x8
- adds r5, r0, r1
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0xA
- bls _0815F80C
- b _0815F9A6
-_0815F80C:
- lsls r0, 2
- ldr r1, _0815F81C @ =_0815F820
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0815F818: .4byte gTasks+0x8
-_0815F81C: .4byte _0815F820
- .align 2, 0
-_0815F820:
- .4byte _0815F84C
- .4byte _0815F856
- .4byte _0815F874
- .4byte _0815F9A6
- .4byte _0815F890
- .4byte _0815F8C8
- .4byte _0815F934
- .4byte _0815F96A
- .4byte _0815F96E
- .4byte _0815F98C
- .4byte _0815F996
-_0815F84C:
- movs r0, 0x5
- bl sub_815F6E0
- movs r0, 0x1
- b _0815F9A4
-_0815F856:
- ldr r0, _0815F870 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0815F864
- b _0815F9A6
-_0815F864:
- movs r0, 0
- bl sub_815F6E0
- movs r0, 0x2
- b _0815F9A4
- .align 2, 0
-_0815F870: .4byte gMain
-_0815F874:
- ldr r0, _0815F88C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0815F882
- b _0815F9A6
-_0815F882:
- movs r0, 0x1
- bl sub_815F6E0
- movs r0, 0x4
- b _0815F9A4
- .align 2, 0
-_0815F88C: .4byte gMain
-_0815F890:
- ldr r0, _0815F8B4 @ =gUnknown_3005EF0
- ldr r1, _0815F8B8 @ =gMultiBootProgram_BerryGlitchFix_Start
- str r1, [r0]
- ldr r2, _0815F8BC @ =gUnknown_3005EF8
- ldr r0, _0815F8C0 @ =gMultiBootProgram_BerryGlitchFix_End
- subs r0, r1
- str r0, [r2]
- ldr r0, _0815F8C4 @ =gUnknown_3005F00
- str r1, [r0, 0x28]
- adds r1, r0, 0
- adds r1, 0x4B
- movs r4, 0
- strb r4, [r1]
- bl MultiBootInit
- strh r4, [r5, 0x2]
- movs r0, 0x5
- b _0815F9A4
- .align 2, 0
-_0815F8B4: .4byte gUnknown_3005EF0
-_0815F8B8: .4byte gMultiBootProgram_BerryGlitchFix_Start
-_0815F8BC: .4byte gUnknown_3005EF8
-_0815F8C0: .4byte gMultiBootProgram_BerryGlitchFix_End
-_0815F8C4: .4byte gUnknown_3005F00
-_0815F8C8:
- ldr r0, _0815F910 @ =gUnknown_3005F00
- ldrb r6, [r0, 0x18]
- adds r4, r0, 0
- cmp r6, 0
- bne _0815F920
- ldr r0, [r4, 0x1C]
- ldr r1, _0815F914 @ =0x00020200
- ands r0, r1
- cmp r0, r1
- bne _0815F920
- ldrh r0, [r5, 0x2]
- adds r0, 0x1
- strh r0, [r5, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xB4
- ble _0815F924
- movs r0, 0x2
- bl sub_815F6E0
- ldr r0, _0815F918 @ =gUnknown_3005EF0
- ldr r1, [r0]
- adds r1, 0xC0
- ldr r0, _0815F91C @ =gUnknown_3005EF8
- ldr r2, [r0]
- subs r2, 0xC0
- movs r0, 0x1
- str r0, [sp]
- adds r0, r4, 0
- movs r3, 0x4
- bl MultiBootStartMaster
- strh r6, [r5, 0x2]
- movs r0, 0x6
- b _0815F9A4
- .align 2, 0
-_0815F910: .4byte gUnknown_3005F00
-_0815F914: .4byte 0x00020200
-_0815F918: .4byte gUnknown_3005EF0
-_0815F91C: .4byte gUnknown_3005EF8
-_0815F920:
- movs r0, 0
- strh r0, [r5, 0x2]
-_0815F924:
- adds r0, r4, 0
- bl MultiBootMain
- ldr r1, _0815F930 @ =gUnknown_3005EF4
- str r0, [r1]
- b _0815F9A6
- .align 2, 0
-_0815F930: .4byte gUnknown_3005EF4
-_0815F934:
- ldr r4, _0815F954 @ =gUnknown_3005F00
- adds r0, r4, 0
- bl MultiBootMain
- ldr r1, _0815F958 @ =gUnknown_3005EF4
- str r0, [r1]
- adds r0, r4, 0
- bl MultiBootCheckComplete
- cmp r0, 0
- beq _0815F95C
- movs r0, 0x3
- bl sub_815F6E0
- movs r0, 0x7
- b _0815F9A4
- .align 2, 0
-_0815F954: .4byte gUnknown_3005F00
-_0815F958: .4byte gUnknown_3005EF4
-_0815F95C:
- ldrb r1, [r4, 0x1E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0815F9A6
- movs r0, 0x9
- b _0815F9A4
-_0815F96A:
- movs r0, 0x8
- b _0815F9A4
-_0815F96E:
- ldr r0, _0815F988 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0815F9A6
- adds r0, r2, 0
- bl DestroyTask
- bl DoSoftReset
- b _0815F9A6
- .align 2, 0
-_0815F988: .4byte gMain
-_0815F98C:
- movs r0, 0x4
- bl sub_815F6E0
- movs r0, 0xA
- b _0815F9A4
-_0815F996:
- ldr r0, _0815F9B0 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0815F9A6
- movs r0, 0
-_0815F9A4:
- strh r0, [r5]
-_0815F9A6:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F9B0: .4byte gMain
- thumb_func_end sub_815F7F0
-
- .align 2, 0 @ Don't pad with nop.