summaryrefslogtreecommitdiff
path: root/asm/code_080300AC.s
blob: 9533deb007ff7e091650e2d6e7a349c72cfc386e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
	.include "asm/macros.inc"

	.include "constants/constants.inc"

	.syntax unified

	.text

	thumb_func_start sub_080300E8
sub_080300E8: @ 0x080300E8
	push {lr}
	ldr r1, _08030110 @ =gScreenTransition
	adds r3, r1, #0
	adds r3, #0xae
	ldrh r0, [r3]
	cmp r0, #0xff
	beq _0803010C
	lsls r0, r0, #2
	adds r1, #0x6c
	adds r0, r0, r1
	ldr r2, _08030114 @ =gPlayerEntity
	ldrh r1, [r0]
	strh r1, [r2, #0x2e]
	ldrh r0, [r0, #2]
	adds r0, #0xc
	strh r0, [r2, #0x32]
	movs r0, #0xff
	strh r0, [r3]
_0803010C:
	pop {pc}
	.align 2, 0
_08030110: .4byte gScreenTransition
_08030114: .4byte gPlayerEntity

	thumb_func_start sub_08030118
sub_08030118: @ 0x08030118
	push {lr}
	adds r2, r0, #0
	ldr r0, _0803013C @ =gScreenTransition
	adds r0, #0xac
	ldrh r0, [r0]
	asrs r0, r2
	movs r1, #1
	ands r0, r1
	cmp r0, #0
	beq _08030140
	movs r0, #0xc0
	lsls r0, r0, #2
	adds r1, r2, #0
	adds r1, #0x67
	bl SetLocalFlagByOffset
	b _0803014C
	.align 2, 0
_0803013C: .4byte gScreenTransition
_08030140:
	movs r0, #0xc0
	lsls r0, r0, #2
	adds r1, r2, #0
	adds r1, #0x67
	bl ClearLocalFlagByOffset
_0803014C:
	pop {pc}
	.align 2, 0

	thumb_func_start sub_08030150
sub_08030150: @ 0x08030150
	push {r4, r5, lr}
	mov ip, r0
	ldr r2, _08030194 @ =gScreenTransition
	adds r5, r2, #0
	adds r5, #0xac
	mov r3, ip
	adds r3, #0x80
	ldrb r4, [r3]
	movs r0, #1
	lsls r0, r4
	ldrh r1, [r5]
	bics r1, r0
	mov r0, ip
	adds r0, #0x84
	ldr r0, [r0]
	lsls r0, r4
	orrs r1, r0
	strh r1, [r5]
	ldrb r0, [r3]
	lsls r0, r0, #2
	adds r2, #0x6c
	adds r0, r0, r2
	mov r4, ip
	ldrh r1, [r4, #0x2e]
	strh r1, [r0]
	ldrb r0, [r3]
	lsls r0, r0, #1
	adds r0, #1
	lsls r0, r0, #1
	adds r0, r0, r2
	ldrh r1, [r4, #0x32]
	strh r1, [r0]
	pop {r4, r5, pc}
	.align 2, 0
_08030194: .4byte gScreenTransition