diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/field_door.s | 613 | ||||
| -rw-r--r-- | asm/metatile_behavior.s | 6 | ||||
| -rw-r--r-- | asm/rom_8080874.s | 10 | 
3 files changed, 8 insertions, 621 deletions
| diff --git a/asm/field_door.s b/asm/field_door.s deleted file mode 100644 index 56a7254ca..000000000 --- a/asm/field_door.s +++ /dev/null @@ -1,613 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text - -	thumb_func_start sub_8058378 -sub_8058378: @ 8058378 -	push {lr} -	ldr r1, _08058388 @ =0x06007f00 -	movs r2, 0x40 -	bl CpuFastSet -	pop {r0} -	bx r0 -	.align 2, 0 -_08058388: .4byte 0x06007f00 -	thumb_func_end sub_8058378 - -	thumb_func_start door_build_blockdef -door_build_blockdef: @ 805838C -	push {r4-r6,lr} -	adds r6, r0, 0 -	lsls r1, 16 -	lsrs r5, r1, 16 -	movs r4, 0 -	adds r1, r6, 0 -_08058398: -	ldrb r0, [r2] -	lsls r0, 28 -	lsrs r3, r0, 16 -	adds r2, 0x1 -	adds r0, r5, r4 -	orrs r3, r0 -	strh r3, [r1] -	adds r1, 0x2 -	adds r4, 0x1 -	cmp r4, 0x3 -	ble _08058398 -	cmp r4, 0x7 -	bgt _080583C6 -	lsls r0, r4, 1 -	adds r1, r0, r6 -_080583B6: -	ldrb r0, [r2] -	lsls r3, r0, 12 -	adds r2, 0x1 -	strh r3, [r1] -	adds r1, 0x2 -	adds r4, 0x1 -	cmp r4, 0x7 -	ble _080583B6 -_080583C6: -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end door_build_blockdef - -	thumb_func_start sub_80583CC -sub_80583CC: @ 80583CC -	push {r4-r6,lr} -	sub sp, 0x10 -	adds r5, r0, 0 -	adds r6, r1, 0 -	adds r4, r2, 0 -	movs r1, 0xFE -	lsls r1, 2 -	mov r0, sp -	bl door_build_blockdef -	subs r1, r6, 0x1 -	adds r0, r5, 0 -	mov r2, sp -	bl DrawDoorMetatileAt -	movs r1, 0xFF -	lsls r1, 2 -	adds r4, 0x4 -	mov r0, sp -	adds r2, r4, 0 -	bl door_build_blockdef -	adds r0, r5, 0 -	adds r1, r6, 0 -	mov r2, sp -	bl DrawDoorMetatileAt -	add sp, 0x10 -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end sub_80583CC - -	thumb_func_start sub_805840C -sub_805840C: @ 805840C -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	subs r1, r5, 0x1 -	bl CurrentMapDrawMetatileAt -	adds r0, r4, 0 -	adds r1, r5, 0 -	bl CurrentMapDrawMetatileAt -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end sub_805840C - -	thumb_func_start sub_8058428 -sub_8058428: @ 8058428 -	push {r4-r7,lr} -	adds r5, r0, 0 -	adds r4, r1, 0 -	adds r6, r2, 0 -	adds r7, r3, 0 -	ldrh r1, [r4, 0x2] -	ldr r0, _08058444 @ =0x0000ffff -	cmp r1, r0 -	bne _08058448 -	adds r0, r6, 0 -	adds r1, r7, 0 -	bl sub_805840C -	b _0805845C -	.align 2, 0 -_08058444: .4byte 0x0000ffff -_08058448: -	ldrh r1, [r4, 0x2] -	ldr r0, [r5, 0x4] -	adds r0, r1 -	bl sub_8058378 -	ldr r2, [r5, 0x8] -	adds r0, r6, 0 -	adds r1, r7, 0 -	bl sub_80583CC -_0805845C: -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_8058428 - -	thumb_func_start sub_8058464 -sub_8058464: @ 8058464 -	push {r4-r6,lr} -	adds r6, r0, 0 -	adds r5, r1, 0 -	adds r4, r2, 0 -	movs r1, 0xA -	ldrsh r0, [r4, r1] -	cmp r0, 0 -	bne _0805848A -	movs r2, 0x8 -	ldrsh r1, [r4, r2] -	lsls r1, 2 -	adds r1, r5, r1 -	movs r0, 0xC -	ldrsh r2, [r4, r0] -	movs r0, 0xE -	ldrsh r3, [r4, r0] -	adds r0, r6, 0 -	bl sub_8058428 -_0805848A: -	movs r2, 0xA -	ldrsh r1, [r4, r2] -	movs r2, 0x8 -	ldrsh r0, [r4, r2] -	lsls r0, 2 -	adds r0, r5 -	ldrb r0, [r0] -	cmp r1, r0 -	bne _080584B8 -	movs r0, 0 -	strh r0, [r4, 0xA] -	ldrh r0, [r4, 0x8] -	adds r0, 0x1 -	strh r0, [r4, 0x8] -	movs r1, 0x8 -	ldrsh r0, [r4, r1] -	lsls r0, 2 -	adds r0, r5 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _080584BE -	movs r0, 0 -	b _080584C0 -_080584B8: -	ldrh r0, [r4, 0xA] -	adds r0, 0x1 -	strh r0, [r4, 0xA] -_080584BE: -	movs r0, 0x1 -_080584C0: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_8058464 - -	thumb_func_start task50_overworld_door -task50_overworld_door: @ 80584C8 -	push {r4,lr} -	lsls r0, 24 -	lsrs r4, r0, 24 -	lsls r2, r4, 2 -	adds r2, r4 -	lsls r2, 3 -	ldr r0, _080584FC @ =gTasks + 0x8 -	adds r2, r0 -	ldrh r1, [r2] -	lsls r1, 16 -	ldrh r0, [r2, 0x2] -	orrs r1, r0 -	ldrh r0, [r2, 0x4] -	lsls r0, 16 -	ldrh r3, [r2, 0x6] -	orrs r0, r3 -	bl sub_8058464 -	cmp r0, 0 -	bne _080584F6 -	adds r0, r4, 0 -	bl DestroyTask -_080584F6: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_080584FC: .4byte gTasks + 0x8 -	thumb_func_end task50_overworld_door - -	thumb_func_start door_frame_last -door_frame_last: @ 8058500 -	push {lr} -	adds r1, r0, 0 -	b _08058508 -_08058506: -	adds r1, 0x4 -_08058508: -	ldrb r0, [r1] -	cmp r0, 0 -	bne _08058506 -	subs r0, r1, 0x4 -	pop {r1} -	bx r1 -	thumb_func_end door_frame_last - -	thumb_func_start door_find -door_find: @ 8058514 -	push {lr} -	adds r2, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	b _0805852A -_0805851E: -	ldrh r0, [r2] -	cmp r0, r1 -	bne _08058528 -	adds r0, r2, 0 -	b _08058532 -_08058528: -	adds r2, 0xC -_0805852A: -	ldr r0, [r2, 0x4] -	cmp r0, 0 -	bne _0805851E -	movs r0, 0 -_08058532: -	pop {r1} -	bx r1 -	thumb_func_end door_find - -	thumb_func_start task_overworld_door_add_if_inactive -task_overworld_door_add_if_inactive: @ 8058538 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	adds r6, r0, 0 -	adds r5, r1, 0 -	adds r7, r2, 0 -	mov r8, r3 -	ldr r4, _08058584 @ =task50_overworld_door -	adds r0, r4, 0 -	bl FuncIsActiveTask -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	beq _0805858C -	adds r0, r4, 0 -	movs r1, 0x50 -	bl CreateTask -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r2, _08058588 @ =gTasks + 0x8 -	adds r1, r2 -	strh r7, [r1, 0xC] -	mov r2, r8 -	strh r2, [r1, 0xE] -	strh r5, [r1, 0x2] -	lsrs r2, r5, 16 -	strh r2, [r1] -	strh r6, [r1, 0x6] -	lsrs r2, r6, 16 -	strh r2, [r1, 0x4] -	lsls r0, 24 -	asrs r0, 24 -	b _08058590 -	.align 2, 0 -_08058584: .4byte task50_overworld_door -_08058588: .4byte gTasks + 0x8 -_0805858C: -	movs r0, 0x1 -	negs r0, r0 -_08058590: -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end task_overworld_door_add_if_inactive - -	thumb_func_start sub_805859C -sub_805859C: @ 805859C -	push {lr} -	adds r0, r1, 0 -	adds r1, r2, 0 -	bl sub_805840C -	pop {r0} -	bx r0 -	thumb_func_end sub_805859C - -	thumb_func_start sub_80585AC -sub_80585AC: @ 80585AC -	push {r4-r6,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	adds r6, r2, 0 -	adds r0, r5, 0 -	adds r1, r6, 0 -	bl MapGridGetMetatileIdAt -	adds r1, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	adds r0, r4, 0 -	bl door_find -	adds r4, r0, 0 -	cmp r4, 0 -	beq _080585E2 -	ldr r1, _080585E8 @ =gUnknown_0830F87C -	adds r0, r1, 0 -	bl door_frame_last -	adds r1, r0, 0 -	adds r0, r4, 0 -	adds r2, r5, 0 -	adds r3, r6, 0 -	bl sub_8058428 -_080585E2: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_080585E8: .4byte gUnknown_0830F87C -	thumb_func_end sub_80585AC - -	thumb_func_start sub_80585EC -sub_80585EC: @ 80585EC -	push {r4-r6,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	adds r6, r2, 0 -	adds r0, r5, 0 -	adds r1, r6, 0 -	bl MapGridGetMetatileIdAt -	adds r1, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	adds r0, r4, 0 -	bl door_find -	cmp r0, 0 -	beq _08058620 -	ldr r1, _0805861C @ =gUnknown_0830F87C -	adds r2, r5, 0 -	adds r3, r6, 0 -	bl task_overworld_door_add_if_inactive -	lsls r0, 24 -	asrs r0, 24 -	b _08058624 -	.align 2, 0 -_0805861C: .4byte gUnknown_0830F87C -_08058620: -	movs r0, 0x1 -	negs r0, r0 -_08058624: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_80585EC - -	thumb_func_start sub_805862C -sub_805862C: @ 805862C -	push {r4-r6,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	adds r6, r2, 0 -	adds r0, r5, 0 -	adds r1, r6, 0 -	bl MapGridGetMetatileIdAt -	adds r1, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	adds r0, r4, 0 -	bl door_find -	cmp r0, 0 -	beq _08058660 -	ldr r1, _0805865C @ =gUnknown_0830F890 -	adds r2, r5, 0 -	adds r3, r6, 0 -	bl task_overworld_door_add_if_inactive -	lsls r0, 24 -	asrs r0, 24 -	b _08058664 -	.align 2, 0 -_0805865C: .4byte gUnknown_0830F890 -_08058660: -	movs r0, 0x1 -	negs r0, r0 -_08058664: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_805862C - -	thumb_func_start cur_mapdata_get_door_x2_at -cur_mapdata_get_door_x2_at: @ 805866C -	push {r4,lr} -	adds r4, r0, 0 -	adds r0, r1, 0 -	adds r1, r2, 0 -	bl MapGridGetMetatileIdAt -	adds r1, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	adds r0, r4, 0 -	bl door_find -	cmp r0, 0 -	beq _08058690 -	ldrb r0, [r0, 0x2] -	lsls r0, 24 -	asrs r0, 24 -	b _08058694 -_08058690: -	movs r0, 0x1 -	negs r0, r0 -_08058694: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end cur_mapdata_get_door_x2_at - -	thumb_func_start unref_sub_805869C -unref_sub_805869C: @ 805869C -	push {lr} -	adds r3, r0, 0 -	adds r2, r1, 0 -	ldr r0, _080586B0 @ =gDoorAnimGraphicsTable -	adds r1, r3, 0 -	bl sub_80585EC -	pop {r0} -	bx r0 -	.align 2, 0 -_080586B0: .4byte gDoorAnimGraphicsTable -	thumb_func_end unref_sub_805869C - -	thumb_func_start sub_80586B4 -sub_80586B4: @ 80586B4 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	bl MapGridGetMetatileBehaviorAt -	lsls r0, 24 -	lsrs r0, 24 -	bl sub_8056EAC -	lsls r0, 24 -	cmp r0, 0 -	beq _080586D6 -	ldr r0, _080586DC @ =gDoorAnimGraphicsTable -	adds r1, r4, 0 -	adds r2, r5, 0 -	bl sub_80585AC -_080586D6: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_080586DC: .4byte gDoorAnimGraphicsTable -	thumb_func_end sub_80586B4 - -	thumb_func_start sub_80586E0 -sub_80586E0: @ 80586E0 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	bl MapGridGetMetatileBehaviorAt -	lsls r0, 24 -	lsrs r0, 24 -	bl sub_8056EAC -	lsls r0, 24 -	cmp r0, 0 -	beq _08058702 -	ldr r0, _08058708 @ =gDoorAnimGraphicsTable -	adds r1, r4, 0 -	adds r2, r5, 0 -	bl sub_805859C -_08058702: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_08058708: .4byte gDoorAnimGraphicsTable -	thumb_func_end sub_80586E0 - -	thumb_func_start sub_805870C -sub_805870C: @ 805870C -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	bl MapGridGetMetatileBehaviorAt -	lsls r0, 24 -	lsrs r0, 24 -	bl sub_8056EAC -	lsls r0, 24 -	cmp r0, 0 -	beq _08058738 -	ldr r0, _08058734 @ =gDoorAnimGraphicsTable -	adds r1, r4, 0 -	adds r2, r5, 0 -	bl sub_805862C -	lsls r0, 24 -	asrs r0, 24 -	b _0805873C -	.align 2, 0 -_08058734: .4byte gDoorAnimGraphicsTable -_08058738: -	movs r0, 0x1 -	negs r0, r0 -_0805873C: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_805870C - -	thumb_func_start task_overworld_door_add_if_role_69_for_opening_door_at -task_overworld_door_add_if_role_69_for_opening_door_at: @ 8058744 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	bl MapGridGetMetatileBehaviorAt -	lsls r0, 24 -	lsrs r0, 24 -	bl sub_8056EAC -	lsls r0, 24 -	cmp r0, 0 -	beq _08058770 -	ldr r0, _0805876C @ =gDoorAnimGraphicsTable -	adds r1, r4, 0 -	adds r2, r5, 0 -	bl sub_80585EC -	lsls r0, 24 -	asrs r0, 24 -	b _08058774 -	.align 2, 0 -_0805876C: .4byte gDoorAnimGraphicsTable -_08058770: -	movs r0, 0x1 -	negs r0, r0 -_08058774: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end task_overworld_door_add_if_role_69_for_opening_door_at - -	thumb_func_start sub_805877C -sub_805877C: @ 805877C -	push {lr} -	ldr r0, _0805878C @ =task50_overworld_door -	bl FuncIsActiveTask -	lsls r0, 24 -	lsrs r0, 24 -	pop {r1} -	bx r1 -	.align 2, 0 -_0805878C: .4byte task50_overworld_door -	thumb_func_end sub_805877C - -	thumb_func_start sub_8058790 -sub_8058790: @ 8058790 -	push {lr} -	adds r3, r0, 0 -	adds r2, r1, 0 -	ldr r0, _080587A8 @ =gDoorAnimGraphicsTable -	adds r1, r3, 0 -	bl cur_mapdata_get_door_x2_at -	lsls r0, 24 -	cmp r0, 0 -	beq _080587AC -	movs r0, 0x12 -	b _080587AE -	.align 2, 0 -_080587A8: .4byte gDoorAnimGraphicsTable -_080587AC: -	movs r0, 0x8 -_080587AE: -	pop {r1} -	bx r1 -	thumb_func_end sub_8058790 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/metatile_behavior.s b/asm/metatile_behavior.s index 0217bf6c0..f81e3c0d4 100644 --- a/asm/metatile_behavior.s +++ b/asm/metatile_behavior.s @@ -212,8 +212,8 @@ _08056EA8:  	bx r1  	thumb_func_end is_tile_x69_2_warp_door -	thumb_func_start sub_8056EAC -sub_8056EAC: @ 8056EAC +	thumb_func_start MetatileBehavior_IsDoor +MetatileBehavior_IsDoor: @ 8056EAC  	push {lr}  	lsls r0, 24  	lsrs r0, 24 @@ -229,7 +229,7 @@ _08056EBE:  _08056EC0:  	pop {r1}  	bx r1 -	thumb_func_end sub_8056EAC +	thumb_func_end MetatileBehavior_IsDoor  	thumb_func_start MetatileBehavior_IsEscalator  MetatileBehavior_IsEscalator: @ 8056EC4 diff --git a/asm/rom_8080874.s b/asm/rom_8080874.s index f672bd3cb..d4a6414fb 100644 --- a/asm/rom_8080874.s +++ b/asm/rom_8080874.s @@ -346,7 +346,7 @@ sub_8080AE4: @ 8080AE4  	lsls r0, 24  	lsrs r4, r0, 24  	adds r0, r4, 0 -	bl sub_8056EAC +	bl MetatileBehavior_IsDoor  	lsls r0, 24  	lsrs r0, 24  	cmp r0, 0x1 @@ -461,7 +461,7 @@ _08080BE4:  	ldrsh r0, [r6, r1]  	movs r2, 0  	ldrsh r1, [r7, r2] -	bl sub_80586B4 +	bl FieldSetDoorOpened  	movs r0, 0x1  	strh r0, [r5, 0x8]  	b _08080CAE @@ -499,7 +499,7 @@ _08080C40:  	ldrsh r0, [r6, r1]  	movs r2, 0  	ldrsh r1, [r7, r2] -	bl sub_805870C +	bl FieldAnimateDoorClose  	lsls r0, 24  	asrs r0, 24  	strh r0, [r5, 0xA] @@ -1201,7 +1201,7 @@ _080811A8:  	movs r2, 0  	ldrsh r1, [r6, r2]  	subs r1, 0x1 -	bl task_overworld_door_add_if_role_69_for_opening_door_at +	bl FieldAnimateDoorOpen  	lsls r0, 24  	asrs r0, 24  	strh r0, [r5, 0xA] @@ -1262,7 +1262,7 @@ _08081240:  	movs r2, 0  	ldrsh r1, [r6, r2]  	subs r1, 0x1 -	bl sub_805870C +	bl FieldAnimateDoorClose  	lsls r0, 24  	asrs r0, 24  	strh r0, [r5, 0xA] | 
