summaryrefslogtreecommitdiff
path: root/asm/Dolphin/gx/GXDisplayList.s
blob: 82f353e0182b22cf33eb52c8319811f6acd58f62 (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
.include "macros.inc"

.section .text, "ax"  # 0x80005600 - 0x8036FBA0
.global GXCallDisplayList
GXCallDisplayList:
/* 800AD370 000AA2B0  7C 08 02 A6 */	mflr r0
/* 800AD374 000AA2B4  90 01 00 04 */	stw r0, 4(r1)
/* 800AD378 000AA2B8  94 21 FF E8 */	stwu r1, -0x18(r1)
/* 800AD37C 000AA2BC  93 E1 00 14 */	stw r31, 0x14(r1)
/* 800AD380 000AA2C0  3B E4 00 00 */	addi r31, r4, 0
/* 800AD384 000AA2C4  93 C1 00 10 */	stw r30, 0x10(r1)
/* 800AD388 000AA2C8  3B C3 00 00 */	addi r30, r3, 0
/* 800AD38C 000AA2CC  80 AD 82 C8 */	lwz r5, gx@sda21(r13)
/* 800AD390 000AA2D0  80 05 04 F4 */	lwz r0, 0x4f4(r5)
/* 800AD394 000AA2D4  28 00 00 00 */	cmplwi r0, 0
/* 800AD398 000AA2D8  41 82 00 08 */	beq lbl_800AD3A0
/* 800AD39C 000AA2DC  4B FF B4 6D */	bl __GXSetDirtyState
lbl_800AD3A0:
/* 800AD3A0 000AA2E0  80 6D 82 C8 */	lwz r3, gx@sda21(r13)
/* 800AD3A4 000AA2E4  80 03 00 00 */	lwz r0, 0(r3)
/* 800AD3A8 000AA2E8  28 00 00 00 */	cmplwi r0, 0
/* 800AD3AC 000AA2EC  40 82 00 08 */	bne lbl_800AD3B4
/* 800AD3B0 000AA2F0  4B FF B5 E9 */	bl __GXSendFlushPrim
lbl_800AD3B4:
/* 800AD3B4 000AA2F4  38 00 00 40 */	li r0, 0x40
/* 800AD3B8 000AA2F8  3C 60 CC 01 */	lis r3, 0xCC008000@ha
/* 800AD3BC 000AA2FC  98 03 80 00 */	stb r0, 0xCC008000@l(r3)
/* 800AD3C0 000AA300  93 C3 80 00 */	stw r30, -0x8000(r3)
/* 800AD3C4 000AA304  93 E3 80 00 */	stw r31, -0x8000(r3)
/* 800AD3C8 000AA308  80 01 00 1C */	lwz r0, 0x1c(r1)
/* 800AD3CC 000AA30C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 800AD3D0 000AA310  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 800AD3D4 000AA314  38 21 00 18 */	addi r1, r1, 0x18
/* 800AD3D8 000AA318  7C 08 03 A6 */	mtlr r0
/* 800AD3DC 000AA31C  4E 80 00 20 */	blr