sub_81051F0
This commit is contained in:
@@ -5,111 +5,6 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
thumb_func_start sub_81051F0
|
|
||||||
sub_81051F0: @ 81051F0
|
|
||||||
push {r4-r7,lr}
|
|
||||||
mov r7, r10
|
|
||||||
mov r6, r9
|
|
||||||
mov r5, r8
|
|
||||||
push {r5-r7}
|
|
||||||
sub sp, 0x10
|
|
||||||
adds r4, r0, 0
|
|
||||||
lsls r4, 24
|
|
||||||
lsrs r4, 24
|
|
||||||
movs r0, 0x1
|
|
||||||
bl GetBgTilemapBuffer
|
|
||||||
mov r10, r0
|
|
||||||
movs r0, 0x2
|
|
||||||
bl GetBgTilemapBuffer
|
|
||||||
mov r9, r0
|
|
||||||
movs r0, 0x3
|
|
||||||
bl GetBgTilemapBuffer
|
|
||||||
mov r8, r0
|
|
||||||
ldr r0, _0810526C @ =gUnknown_203ACF0
|
|
||||||
ldr r0, [r0]
|
|
||||||
ldr r0, [r0, 0x5C]
|
|
||||||
movs r1, 0x80
|
|
||||||
lsls r1, 5
|
|
||||||
adds r1, r0, r1
|
|
||||||
str r1, [sp, 0x4]
|
|
||||||
movs r1, 0x80
|
|
||||||
lsls r1, 4
|
|
||||||
adds r1, r0, r1
|
|
||||||
str r1, [sp, 0x8]
|
|
||||||
str r0, [sp, 0xC]
|
|
||||||
movs r0, 0
|
|
||||||
str r0, [sp]
|
|
||||||
ldr r1, _08105270 @ =gUnknown_8452388
|
|
||||||
movs r7, 0
|
|
||||||
lsls r0, r4, 4
|
|
||||||
subs r0, r4
|
|
||||||
lsls r0, 1
|
|
||||||
adds r6, r0, r1
|
|
||||||
_08105242:
|
|
||||||
ldrb r4, [r6]
|
|
||||||
cmp r4, 0x1E
|
|
||||||
bne _08105274
|
|
||||||
lsrs r4, r7, 24
|
|
||||||
movs r0, 0
|
|
||||||
mov r1, r10
|
|
||||||
adds r2, r4, 0
|
|
||||||
bl sub_81051D0
|
|
||||||
movs r0, 0
|
|
||||||
mov r1, r9
|
|
||||||
adds r2, r4, 0
|
|
||||||
bl sub_81051D0
|
|
||||||
movs r0, 0xC
|
|
||||||
mov r1, r8
|
|
||||||
adds r2, r4, 0
|
|
||||||
bl sub_81051D0
|
|
||||||
b _0810529A
|
|
||||||
.align 2, 0
|
|
||||||
_0810526C: .4byte gUnknown_203ACF0
|
|
||||||
_08105270: .4byte gUnknown_8452388
|
|
||||||
_08105274:
|
|
||||||
lsrs r5, r7, 24
|
|
||||||
ldr r0, [sp, 0x4]
|
|
||||||
adds r1, r4, 0
|
|
||||||
mov r2, r10
|
|
||||||
adds r3, r5, 0
|
|
||||||
bl sub_81051AC
|
|
||||||
ldr r0, [sp, 0x8]
|
|
||||||
adds r1, r4, 0
|
|
||||||
mov r2, r9
|
|
||||||
adds r3, r5, 0
|
|
||||||
bl sub_81051AC
|
|
||||||
ldr r0, [sp, 0xC]
|
|
||||||
adds r1, r4, 0
|
|
||||||
mov r2, r8
|
|
||||||
adds r3, r5, 0
|
|
||||||
bl sub_81051AC
|
|
||||||
_0810529A:
|
|
||||||
movs r1, 0x80
|
|
||||||
lsls r1, 17
|
|
||||||
adds r7, r1
|
|
||||||
adds r6, 0x1
|
|
||||||
ldr r0, [sp]
|
|
||||||
adds r0, 0x1
|
|
||||||
str r0, [sp]
|
|
||||||
cmp r0, 0x1D
|
|
||||||
ble _08105242
|
|
||||||
movs r0, 0x1
|
|
||||||
bl CopyBgTilemapBufferToVram
|
|
||||||
movs r0, 0x2
|
|
||||||
bl CopyBgTilemapBufferToVram
|
|
||||||
movs r0, 0x3
|
|
||||||
bl CopyBgTilemapBufferToVram
|
|
||||||
movs r0, 0
|
|
||||||
add sp, 0x10
|
|
||||||
pop {r3-r5}
|
|
||||||
mov r8, r3
|
|
||||||
mov r9, r4
|
|
||||||
mov r10, r5
|
|
||||||
pop {r4-r7}
|
|
||||||
pop {r1}
|
|
||||||
bx r1
|
|
||||||
thumb_func_end sub_81051F0
|
|
||||||
|
|
||||||
thumb_func_start sub_81052D0
|
thumb_func_start sub_81052D0
|
||||||
sub_81052D0: @ 81052D0
|
sub_81052D0: @ 81052D0
|
||||||
push {r4-r6,lr}
|
push {r4-r6,lr}
|
||||||
|
|||||||
+34
-1
@@ -66,7 +66,7 @@ struct PokedexScreenData
|
|||||||
u16 field_48;
|
u16 field_48;
|
||||||
u8 filler_4A[0x10];
|
u8 filler_4A[0x10];
|
||||||
u16 field_5A;
|
u16 field_5A;
|
||||||
u8 filler_5C[0x4];
|
u16 * field_5C;
|
||||||
u8 field_60;
|
u8 field_60;
|
||||||
u8 field_61;
|
u8 field_61;
|
||||||
u16 field_62;
|
u16 field_62;
|
||||||
@@ -158,6 +158,7 @@ extern const struct WindowTemplate gUnknown_84521CC;
|
|||||||
extern const u16 gUnknown_845228C[];
|
extern const u16 gUnknown_845228C[];
|
||||||
extern const u8 (*const gUnknown_8452334[])[4];
|
extern const u8 (*const gUnknown_8452334[])[4];
|
||||||
extern const u8 *const gUnknown_8452344[];
|
extern const u8 *const gUnknown_8452344[];
|
||||||
|
extern const u8 gUnknown_8452388[][30];
|
||||||
extern const struct ScrollArrowsTemplate gUnknown_84524B4;
|
extern const struct ScrollArrowsTemplate gUnknown_84524B4;
|
||||||
extern const struct CursorStruct gUnknown_84524C4;
|
extern const struct CursorStruct gUnknown_84524C4;
|
||||||
|
|
||||||
@@ -1947,3 +1948,35 @@ bool8 sub_81051D0(u16 a0, u16 *a1, u8 a2)
|
|||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool8 sub_81051F0(u8 a0)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
int r4;
|
||||||
|
u16 *bg1buff = GetBgTilemapBuffer(1);
|
||||||
|
u16 *bg2buff = GetBgTilemapBuffer(2);
|
||||||
|
u16 *bg3buff = GetBgTilemapBuffer(3);
|
||||||
|
u16 *sp04 = gUnknown_203ACF0->field_5C + 0x800;
|
||||||
|
u16 *sp08 = gUnknown_203ACF0->field_5C + 0x400;
|
||||||
|
u16 *sp0C = gUnknown_203ACF0->field_5C + 0x000;
|
||||||
|
for (i = 0; i < 30; i++)
|
||||||
|
{
|
||||||
|
r4 = gUnknown_8452388[a0][i];
|
||||||
|
if (r4 == 30)
|
||||||
|
{
|
||||||
|
sub_81051D0(0x000, bg1buff, i);
|
||||||
|
sub_81051D0(0x000, bg2buff, i);
|
||||||
|
sub_81051D0(0x00C, bg3buff, i);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sub_81051AC(sp04, r4, bg1buff, i);
|
||||||
|
sub_81051AC(sp08, r4, bg2buff, i);
|
||||||
|
sub_81051AC(sp0C, r4, bg3buff, i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CopyBgTilemapBufferToVram(1);
|
||||||
|
CopyBgTilemapBufferToVram(2);
|
||||||
|
CopyBgTilemapBufferToVram(3);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user