Un-ignored: the dev drive is the ground truth the restoration and emulator work constantly reference (DPL3/LIBDPL + VRENDER i860 renderer source, BT/RP live+dev game trees, VGL_LABS pod boot, scene/audio content). Kept in-repo for the pod-owner community. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
5310 lines
102 KiB
ArmAsm
5310 lines
102 KiB
ArmAsm
.file "vr_draw.c"
|
|
// PGC Rel 2.0a -opt 4
|
|
.text
|
|
.globl _compute_phong_table
|
|
.align 8
|
|
_compute_phong_table:
|
|
.a1 = 0
|
|
.f1 = 32
|
|
orh h%.STACK+.f1-16, r0, r28
|
|
or l%.STACK+.f1-16, r28, r28
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
// lineno: 59
|
|
ftrunc.sd f8, f16
|
|
|
|
|
|
fxfr f16, r17
|
|
|
|
adds -2, r17, r0
|
|
|
|
bnc .B772
|
|
orh ha%_vr_phong_table, r0, r31
|
|
br .B1572
|
|
ld.l l%_vr_phong_table(r31), r16
|
|
// lineno: 65
|
|
.B772: //.B0000
|
|
adds -1, r17, r17
|
|
.DB.B772772:
|
|
subs 16, r17, r0
|
|
|
|
bnc .B774
|
|
adds 15, r0, r17
|
|
// lineno: 70
|
|
.B774: //.B0001
|
|
shl 7, r17, r29
|
|
.DB.B774774:
|
|
shl 2, r29, r30
|
|
orh ha%_vr_phong_table, r0, r31
|
|
ld.l l%_vr_phong_table(r31), r16
|
|
|
|
adds r30, r16, r16
|
|
st.l r16, -4(r28)
|
|
// lineno: 0
|
|
.B1572: //.R0000
|
|
// lineno: 76
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.globl _init_phong
|
|
.align 8
|
|
_init_phong:
|
|
.a2 = 0
|
|
.f2 = 64
|
|
addu -(.a2+.f2), sp, sp
|
|
st.l fp,(.f2-16)(sp)
|
|
addu (.f2-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -32(fp)
|
|
st.l r5, -28(fp)
|
|
st.l r6, -24(fp)
|
|
st.l r7, -20(fp)
|
|
st.l r8, -16(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh h%_vr_phong_table, r0, r31
|
|
or l%_vr_phong_table, r31, r8
|
|
// lineno: 91
|
|
adds 8192, r0, r16
|
|
|
|
call _malloc
|
|
nop
|
|
orh ha%.C01580, r0, r31
|
|
fld.l l%.C01580(r31), f8
|
|
orh ha%.C01579, r0, r31
|
|
fld.d l%.C01579(r31), f10
|
|
adds 127, r0, r18
|
|
st.l r16, 0(r8)
|
|
adds -1, r0, r17
|
|
adds 1, r0, r19
|
|
mov r0, r20
|
|
mov r8, r21
|
|
bla r17, r18,.B1595
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 94
|
|
.B1595: //.M0000
|
|
.align 8
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
|
|
.PL1001:
|
|
d.fnop
|
|
xorh 0x8000, r19, r28
|
|
.DB.B15951595:
|
|
d.fnop
|
|
ixfr r28, f16
|
|
d.fiadd.ss f11, f0, f17
|
|
ld.l r0(r21), r29
|
|
|
|
d.pfsub.dd f16, f10, f0
|
|
adds 1, r19, r19
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f16
|
|
nop
|
|
d.pfmov.ds f16, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.m12tpa.ss f8, f30, f30
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
bla r17, r18, .PL1002
|
|
d.pfmul.ss f0, f0, f30
|
|
fst.l f30, r20(r29)
|
|
|
|
.PL1002:
|
|
d.fnop
|
|
xorh 0x8000, r19, r28
|
|
d.fnop
|
|
ixfr r28, f16
|
|
d.fiadd.ss f11, f0, f17
|
|
ld.l r0(r21), r29
|
|
d.fnop
|
|
addu 4, r20, r20
|
|
d.pfsub.dd f16, f10, f0
|
|
adds 1, r19, r19
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f16
|
|
nop
|
|
d.pfmov.ds f16, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
d.m12tpa.ss f8, f30, f30
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
bla r17, r18, .PL1002
|
|
d.pfmul.ss f0, f0, f30
|
|
fst.l f30, r20(r29)
|
|
|
|
.PL1003:
|
|
|
|
|
|
|
|
d.fnop
|
|
addu 4, r20, r20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d.fnop
|
|
bla r17, r18, .PL1003
|
|
d.fnop
|
|
nop
|
|
fnop
|
|
nop
|
|
fnop
|
|
nop
|
|
// lineno: 95
|
|
.B783: //.B0003
|
|
ld.l r0(r8), r4
|
|
.DB.B783783:
|
|
adds 1, r0, r6
|
|
adds -16, r6, r0
|
|
|
|
bnc .B787
|
|
fld.l -4(fp), f12
|
|
fld.l -8(fp), f13
|
|
mov r7, r18
|
|
adds -1, r0, r17
|
|
mov r8, r21
|
|
// lineno: 100
|
|
.B1601: //.M0002
|
|
adds 127, r0, r18
|
|
.DB.B16011601:
|
|
addu 508, r4, r5
|
|
mov r0, r20
|
|
bla r17, r18,.B1600
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 101
|
|
.B1600: //.M0001
|
|
ld.l r0(r21), r28
|
|
.DB.B16001600:
|
|
fld.l r0(r4), f16
|
|
fld.l r28(r20), f12
|
|
addu 4, r4, r4
|
|
addu 4, r20, r20
|
|
fmul.ss f12, f16, f17
|
|
|
|
|
|
bla r17, r18, .B1600
|
|
fst.l f17, 4(r5)++
|
|
// lineno: 0
|
|
adds 1, r6, r6
|
|
adds -16, r6, r0
|
|
|
|
bc.t .DB.B16011601
|
|
adds 127, r0, r18
|
|
// lineno: 0
|
|
mov r18, r7
|
|
fst.l f12, -4(fp)
|
|
fst.l f13, -8(fp)
|
|
// lineno: 0
|
|
.B787: //.B0005
|
|
// lineno: 107
|
|
|
|
|
|
|
|
|
|
ld.l -32(fp), r4
|
|
ld.l -28(fp), r5
|
|
ld.l -24(fp), r6
|
|
ld.l -20(fp), r7
|
|
ld.l -16(fp), r8
|
|
adds .a2+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _multisync
|
|
.align 8
|
|
_multisync:
|
|
.a3 = 0
|
|
.f3 = 48
|
|
addu -(.a3+.f3), sp, sp
|
|
st.l fp,(.f3-16)(sp)
|
|
addu (.f3-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 180
|
|
orh ha%__processorId, r0, r31
|
|
ld.l l%__processorId(r31), r28
|
|
|
|
shl 2, r28, r29
|
|
orh ha%_shared_cntl, r0, r31
|
|
ld.l l%_shared_cntl(r31), r30
|
|
st.l r28, -8(fp)
|
|
addu 96, r30, r16
|
|
adds r29, r16, r16
|
|
st.l r16, -16(fp)
|
|
st.l r30, -4(fp)
|
|
orh ha%__numProcessors, r0, r31
|
|
ld.l l%__numProcessors(r31), r17
|
|
|
|
br .B1611
|
|
st.l r17, -12(fp)
|
|
// lineno: 213
|
|
.B1611: //.R0001
|
|
|
|
|
|
|
|
|
|
adds .a3+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_start_frame_stats:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 219
|
|
orh ha%_unclipped_tris, r0, r31
|
|
st.l r0, l%_unclipped_tris(r31)
|
|
orh ha%_farz_drawn_tris, r0, r31
|
|
st.l r0, l%_farz_drawn_tris(r31)
|
|
orh ha%_farz_rejected_tris, r0, r31
|
|
st.l r0, l%_farz_rejected_tris(r31)
|
|
orh ha%_clipped_tris, r0, r31
|
|
st.l r0, l%_clipped_tris(r31)
|
|
orh ha%_clipped_patches, r0, r31
|
|
st.l r0, l%_clipped_patches(r31)
|
|
orh ha%_unclipped_patches, r0, r31
|
|
bri r1
|
|
st.l r0, l%_unclipped_patches(r31)
|
|
// lineno: 225
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_add_DMA_opcodes:
|
|
.a5 = 80
|
|
.f5 = 48
|
|
addu -(.a5+.f5), sp, sp
|
|
st.l fp,(.f5-16)(sp)
|
|
addu (.f5-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -16(fp)
|
|
st.l r5, -12(fp)
|
|
st.l r6, -8(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
st.l r17, 52(fp)
|
|
mov r18, r5
|
|
// lineno: 0
|
|
// lineno: 231
|
|
ld.l 4(r16), r6
|
|
shl 2, r18, r30
|
|
ld.l 2040(r6), r28
|
|
|
|
shra 2, r28, r4
|
|
subs 2032, r28, r29
|
|
subs r29, r30, r0
|
|
|
|
bnc .B844
|
|
call _next_binchunk
|
|
nop
|
|
shl 2, r4, r28
|
|
st.l r16, 2044(r6)
|
|
mov r16, r29
|
|
adds r28, r6, r31
|
|
st.l r29, 0(r31)
|
|
addu 4, r6, r30
|
|
adds r28, r30, r31
|
|
st.l r0, 0(r31)
|
|
mov r6, r17
|
|
ld.l 2044(r6), r6
|
|
adds 2032, r0, r19
|
|
st.l r0, 2044(r6)
|
|
st.l r19, 2040(r17)
|
|
mov r0, r4
|
|
ld.l 48(fp), r20
|
|
|
|
st.l r6, 4(r20)
|
|
// lineno: 255
|
|
.B844: //.B0012
|
|
shl 2, r4, r28
|
|
.DB.B844844:
|
|
adds r28, r6, r16
|
|
ld.l 52(fp), r17
|
|
call _memcpy
|
|
shl 2, r5, r18
|
|
ld.l 2040(r6), r28
|
|
shl 2, r5, r29
|
|
adds r29, r28, r30
|
|
st.l r30, 2040(r6)
|
|
// lineno: 0
|
|
// lineno: 257
|
|
|
|
|
|
|
|
|
|
ld.l -16(fp), r4
|
|
ld.l -12(fp), r5
|
|
ld.l -8(fp), r6
|
|
adds .a5+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _setpxpl5VideoMode
|
|
.align 8
|
|
_setpxpl5VideoMode:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%_framebuf_flip, r0, r31
|
|
ld.l l%_framebuf_flip(r31), r17
|
|
orh ha%_first_framebuf_y, r0, r31
|
|
ld.l l%_first_framebuf_y(r31), r18
|
|
// lineno: 263
|
|
and 0x0004, r16, r0
|
|
bc .B849
|
|
adds 4, r0, r29
|
|
mov r29, r17
|
|
br .B851
|
|
adds 16, r0, r18
|
|
// lineno: 267
|
|
.B849: //.B0013
|
|
and 0x0010, r16, r0
|
|
.DB.B849849:
|
|
bc .B852
|
|
br .B854
|
|
adds 4, r0, r17
|
|
// lineno: 270
|
|
.B852: //.B0015
|
|
and 0x0008, r16, r0
|
|
.DB.B852852:
|
|
bc .B856
|
|
mov r0, r18
|
|
adds 8, r0, r29
|
|
br .B858
|
|
mov r29, r17
|
|
// lineno: 276
|
|
.B856: //.B0017
|
|
mov r0, r18
|
|
.DB.B856856:
|
|
adds 4, r0, r17
|
|
// lineno: 0
|
|
.B858: //.B0018
|
|
// lineno: 0
|
|
.B854: //.B0016
|
|
// lineno: 280
|
|
.B851: //.B0014
|
|
and 0x0080, r16, r0
|
|
.DB.B851851:
|
|
bc .B860
|
|
adds 16, r0, r18
|
|
// lineno: 0
|
|
.B860: //.B0019
|
|
orh ha%_framebuf_flip, r0, r31
|
|
.DB.B860860:
|
|
st.l r17, l%_framebuf_flip(r31)
|
|
orh ha%_first_framebuf_y, r0, r31
|
|
bri r1
|
|
st.l r18, l%_first_framebuf_y(r31)
|
|
// lineno: 282
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_strap_up_transptiles:
|
|
.a7 = 80
|
|
.f7 = 144
|
|
addu -(.a7+.f7), sp, sp
|
|
st.l fp,(.f7-16)(sp)
|
|
addu (.f7-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -120(fp)
|
|
st.l r5, -116(fp)
|
|
st.l r6, -112(fp)
|
|
st.l r7, -108(fp)
|
|
st.l r8, -104(fp)
|
|
st.l r9, -100(fp)
|
|
st.l r10, -96(fp)
|
|
st.l r11, -92(fp)
|
|
st.l r12, -88(fp)
|
|
st.l r13, -84(fp)
|
|
st.l r14, -80(fp)
|
|
st.l r15, -76(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
st.l r18, 56(fp)
|
|
st.l r19, 60(fp)
|
|
st.l r20, 64(fp)
|
|
st.l r21, 68(fp)
|
|
mov r17, r11
|
|
// lineno: 0
|
|
orh 0x8000, r0, r5
|
|
// lineno: 319
|
|
orh ha%_shared_cntl, r0, r31
|
|
ld.l l%_shared_cntl(r31), r28
|
|
mov r0, r12
|
|
ld.l 20(r28), r29
|
|
ld.l 36(r28), r30
|
|
st.l r29, -8(fp)
|
|
st.l r30, -12(fp)
|
|
|
|
ld.l 28(r28), r17
|
|
ld.l 44(r28), r18
|
|
st.l r17, -16(fp)
|
|
st.l r18, -20(fp)
|
|
orh h%.BSS, r0, r31
|
|
or l%.BSS, r31, r19
|
|
ld.l r0(r19), r7
|
|
ld.l 4(r19), r8
|
|
orh ha%_prevBin, r0, r31
|
|
ld.l l%_prevBin(r31), r15
|
|
|
|
subs 0, r16, r0
|
|
st.l r0, -4(fp)
|
|
bnc .B906
|
|
shl 2, r17, r20
|
|
adds r20, r29, r21
|
|
st.l r21, -32(fp)
|
|
shl 2, r18, r22
|
|
adds r22, r30, r23
|
|
st.l r23, -40(fp)
|
|
addu 4, r29, r26
|
|
ld.l 56(fp), r24
|
|
ld.l 60(fp), r25
|
|
st.l r24, -24(fp)
|
|
st.l r25, -28(fp)
|
|
adds r20, r26, r26
|
|
st.l r26, -36(fp)
|
|
addu 4, r30, r27
|
|
adds r22, r27, r27
|
|
st.l r27, -44(fp)
|
|
adds 2, r18, r9
|
|
adds 2, r17, r10
|
|
mov r0, r12
|
|
// lineno: 333
|
|
.B1733: //.M0004
|
|
|
|
subs 0, r11, r0
|
|
mov r0, r4
|
|
bnc .B909
|
|
ld.l -24(fp), r28
|
|
ld.l -28(fp), r29
|
|
st.l r28, -48(fp)
|
|
st.l r29, -52(fp)
|
|
mov r0, r4
|
|
ld.l -44(fp), r30
|
|
ld.l -40(fp), r17
|
|
st.l r30, -56(fp)
|
|
st.l r17, -60(fp)
|
|
|
|
ld.l -36(fp), r18
|
|
ld.l -32(fp), r19
|
|
st.l r18, -64(fp)
|
|
st.l r19, -68(fp)
|
|
|
|
ld.l 64(fp), r6
|
|
// lineno: 334
|
|
.B1714: //.M0003
|
|
ld.l -52(fp), r14
|
|
.DB.B17141714:
|
|
ld.l -48(fp), r13
|
|
ld.l r0(r14), r28
|
|
ld.l r0(r13), r17
|
|
ld.l 252(r28), r29
|
|
ld.l 2040(r28), r30
|
|
st.l r17, -72(fp)
|
|
bte r29, r30, .B916
|
|
bte 0x0000, r15, .B918
|
|
orh ha%_display_tile_base, r0, r31
|
|
ld.l l%_display_tile_base(r31), r18
|
|
ld.l -68(fp), r26
|
|
adds r8, r18, r19
|
|
shl 5, r19, r20
|
|
or r7, r20, r21
|
|
orh ha%_tile_poke_address, r0, r31
|
|
ld.l l%_tile_poke_address(r31), r22
|
|
ld.l -64(fp), r27
|
|
st.l r21, 0(r22)
|
|
orh ha%_wait_poke_address, r0, r31
|
|
ld.l l%_wait_poke_address(r31), r23
|
|
ld.l -60(fp), r30
|
|
st.l r5, 0(r23)
|
|
mov r15, r16
|
|
ld.l r0(r14), r24
|
|
ld.l -56(fp), r29
|
|
addu 8, r24, r24
|
|
mov r24, r25
|
|
st.l r25, 0(r26)
|
|
st.l r0, 0(r27)
|
|
|
|
ld.l r0(r13), r28
|
|
|
|
addu 8, r28, r28
|
|
mov r28, r17
|
|
st.l r17, 0(r30)
|
|
st.l r0, 0(r29)
|
|
|
|
ld.l -8(fp), r17
|
|
|
|
|
|
call _add_DMA_opcodes
|
|
mov r10, r18
|
|
mov r14, r16
|
|
ld.l -12(fp), r17
|
|
|
|
|
|
call _add_DMA_opcodes
|
|
mov r9, r18
|
|
orh ha%_trans_wait_poke_address, r0, r31
|
|
ld.l l%_trans_wait_poke_address(r31), r28
|
|
|
|
br .B922
|
|
st.l r5, 0(r28)
|
|
// lineno: 365
|
|
.B918: //.B0025
|
|
ld.l r0(r14), r28
|
|
.DB.B918918:
|
|
ld.l -60(fp), r18
|
|
st.l r0, 0(r28)
|
|
mov r14, r16
|
|
ld.l r0(r14), r29
|
|
ld.l -56(fp), r19
|
|
st.l r0, 4(r29)
|
|
|
|
ld.l r0(r13), r30
|
|
st.l r14, -4(fp)
|
|
addu 8, r30, r30
|
|
mov r30, r17
|
|
st.l r17, 0(r18)
|
|
st.l r0, 0(r19)
|
|
|
|
ld.l -12(fp), r17
|
|
|
|
|
|
call _add_DMA_opcodes
|
|
mov r9, r18
|
|
orh ha%_trans_wait_poke_address, r0, r31
|
|
ld.l l%_trans_wait_poke_address(r31), r28
|
|
|
|
st.l r5, 0(r28)
|
|
// lineno: 381
|
|
.B922: //.B0026
|
|
br .B924
|
|
nop
|
|
// lineno: 382
|
|
.B916: //.B0024
|
|
orh h%_random_index, r0, r31
|
|
.DB.B916916:
|
|
or l%_random_index, r31, r28
|
|
ld.l 0(r28), r29
|
|
ld.l -72(fp), r17
|
|
shl 2, r29, r30
|
|
orh ha%_random_x, r0, r31
|
|
fld.l l%_random_x(r31), f16
|
|
addu 268, r17, r18
|
|
addu 284, r17, r21
|
|
fst.l f16, r30(r18)
|
|
orh ha%_random_y, r0, r31
|
|
fld.l l%_random_y(r31), f17
|
|
ld.l 0(r28), r19
|
|
|
|
shl 2, r19, r20
|
|
fst.l f17, r20(r21)
|
|
bte 0x0000, r15, .B927
|
|
orh ha%_display_tile_base, r0, r31
|
|
ld.l l%_display_tile_base(r31), r22
|
|
ld.l -68(fp), r17
|
|
adds r8, r22, r23
|
|
shl 5, r23, r24
|
|
or r7, r24, r25
|
|
orh ha%_tile_poke_address, r0, r31
|
|
ld.l l%_tile_poke_address(r31), r26
|
|
ld.l -64(fp), r30
|
|
st.l r25, 0(r26)
|
|
mov r15, r16
|
|
ld.l r0(r13), r27
|
|
|
|
addu 8, r27, r27
|
|
mov r27, r29
|
|
st.l r29, 0(r17)
|
|
st.l r0, 0(r30)
|
|
|
|
ld.l -8(fp), r17
|
|
|
|
|
|
call _add_DMA_opcodes
|
|
mov r10, r18
|
|
orh ha%_wait_poke_address, r0, r31
|
|
ld.l l%_wait_poke_address(r31), r28
|
|
|
|
br .B929
|
|
st.l r5, 0(r28)
|
|
// lineno: 394
|
|
.B927: //.B0028
|
|
ld.l r0(r13), r28
|
|
.DB.B927927:
|
|
st.l r13, -4(fp)
|
|
st.l r0, 0(r28)
|
|
|
|
ld.l r0(r13), r29
|
|
|
|
st.l r0, 4(r29)
|
|
// lineno: 0
|
|
.B929: //.B0029
|
|
// lineno: 401
|
|
.B924: //.B0027
|
|
ld.l -48(fp), r28
|
|
.DB.B924924:
|
|
ld.l -52(fp), r29
|
|
addu 128, r28, r28
|
|
st.l r28, -48(fp)
|
|
addu 128, r29, r29
|
|
st.l r29, -52(fp)
|
|
mov r6, r8
|
|
mov r12, r7
|
|
mov r13, r15
|
|
adds 1, r4, r4
|
|
adds 1, r6, r6
|
|
subs r4, r11, r0
|
|
|
|
bc.t .DB.B17141714
|
|
ld.l -52(fp), r14
|
|
// lineno: 0
|
|
// lineno: 405
|
|
.B909: //.B0023
|
|
ld.l -24(fp), r28
|
|
.DB.B909909:
|
|
ld.l -28(fp), r29
|
|
addu 8, r28, r28
|
|
st.l r28, -24(fp)
|
|
addu 8, r29, r29
|
|
st.l r29, -28(fp)
|
|
adds 1, r12, r12
|
|
ld.l 48(fp), r30
|
|
|
|
subs r12, r30, r0
|
|
|
|
bc .B1733
|
|
// lineno: 0
|
|
// lineno: 406
|
|
.B906: //.B0021
|
|
ld.l 68(fp), r28
|
|
.DB.B906906:
|
|
|
|
bte 0x0000, r28, .B931
|
|
orh ha%_display_tile_base, r0, r31
|
|
ld.l l%_display_tile_base(r31), r29
|
|
ld.l -16(fp), r20
|
|
adds r8, r29, r30
|
|
shl 5, r30, r17
|
|
or r7, r17, r18
|
|
orh ha%_tile_poke_address, r0, r31
|
|
ld.l l%_tile_poke_address(r31), r19
|
|
shl 2, r20, r21
|
|
st.l r18, 0(r19)
|
|
orh 0xf800, r0, r23
|
|
ld.l -8(fp), r17
|
|
mov r15, r16
|
|
adds r21, r17, r31
|
|
st.l r0, 0(r31)
|
|
addu 4, r17, r22
|
|
adds r21, r22, r31
|
|
st.l r23, 0(r31)
|
|
adds 2, r20, r18
|
|
|
|
orh h%.B934, r0, r1
|
|
br _add_DMA_opcodes
|
|
or l%.B934, r1, r1
|
|
// lineno: 417
|
|
.B931: //.B0030
|
|
orh ha%_prevBin, r0, r31
|
|
.DB.B931931:
|
|
st.l r15, l%_prevBin(r31)
|
|
// lineno: 419
|
|
.B934: //.B0031
|
|
orh h%.BSS, r0, r31
|
|
.DB.B934934:
|
|
or l%.BSS, r31, r28
|
|
st.l r7, 0(r28)
|
|
st.l r8, 4(r28)
|
|
|
|
ld.l -4(fp), r16
|
|
// lineno: 0
|
|
// lineno: 423
|
|
|
|
|
|
|
|
|
|
ld.l -120(fp), r4
|
|
ld.l -116(fp), r5
|
|
ld.l -112(fp), r6
|
|
ld.l -108(fp), r7
|
|
ld.l -104(fp), r8
|
|
ld.l -100(fp), r9
|
|
ld.l -96(fp), r10
|
|
ld.l -92(fp), r11
|
|
ld.l -88(fp), r12
|
|
ld.l -84(fp), r13
|
|
ld.l -80(fp), r14
|
|
ld.l -76(fp), r15
|
|
adds .a7+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_redo_end_of_frame:
|
|
.a8 = 0
|
|
.f8 = 32
|
|
addu -(.a8+.f8), sp, sp
|
|
st.l fp,(.f8-16)(sp)
|
|
addu (.f8-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 441
|
|
orh ha%_shared_cntl, r0, r31
|
|
ld.l l%_shared_cntl(r31), r28
|
|
|
|
ld.l 20(r28), r16
|
|
ld.l 16(r28), r17
|
|
call _short_end_of_frame_DMA
|
|
ld.l 52(r28), r18
|
|
orh h%_shared_cntl, r0, r31
|
|
or l%_shared_cntl, r31, r28
|
|
ld.l 0(r28), r29
|
|
|
|
st.l r16, 28(r29)
|
|
|
|
ld.l 0(r28), r30
|
|
|
|
ld.l 52(r30), r16
|
|
call _end_of_textr_DMA
|
|
ld.l 48(r30), r17
|
|
orh ha%_shared_cntl, r0, r31
|
|
ld.l l%_shared_cntl(r31), r28
|
|
|
|
st.l r16, 60(r28)
|
|
orh ha%_recompute_end_of_frame, r0, r31
|
|
st.l r0, l%_recompute_end_of_frame(r31)
|
|
// lineno: 447
|
|
|
|
|
|
|
|
|
|
adds .a8+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_pxpl5_flip:
|
|
.a9 = 80
|
|
.f9 = 64
|
|
addu -(.a9+.f9), sp, sp
|
|
st.l fp,(.f9-16)(sp)
|
|
addu (.f9-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -40(fp)
|
|
st.l r5, -36(fp)
|
|
st.l r6, -32(fp)
|
|
st.l r7, -28(fp)
|
|
st.l r8, -24(fp)
|
|
st.l r9, -20(fp)
|
|
st.l r10, -16(fp)
|
|
st.l r11, -12(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh h%_screenbins, r0, r31
|
|
or l%_screenbins, r31, r5
|
|
orh h%_trans_screenbins, r0, r31
|
|
or l%_trans_screenbins, r31, r6
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r7
|
|
orh h%_coeffstore0, r0, r31
|
|
or l%_coeffstore0, r31, r8
|
|
orh h%_screen1bins, r0, r31
|
|
or l%_screen1bins, r31, r9
|
|
orh h%_screen0bins, r0, r31
|
|
or l%_screen0bins, r31, r10
|
|
// lineno: 473
|
|
orh h%_texture_table_iptr, r0, r31
|
|
or l%_texture_table_iptr, r31, r28
|
|
ld.l 0(r28), r29
|
|
orh ha%_prevBin, r0, r31
|
|
st.l r0, l%_prevBin(r31)
|
|
bte 0x0000, r29, .B968
|
|
adds 3, r0, r18
|
|
orh h%_texture_ramps+-4, r0, r31
|
|
or l%_texture_ramps+-4, r31, r19
|
|
adds -1, r0, r17
|
|
mov r0, r20
|
|
mov r28, r21
|
|
bla r17, r18,.B1789
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 484
|
|
.B1789: //.M0005
|
|
ld.l r0(r21), r28
|
|
.DB.B17891789:
|
|
ld.l 28(r19), r29
|
|
addu 8, r28, r28
|
|
adds r20, r28, r31
|
|
st.l r29, 0(r31)
|
|
addu 28, r19, r19
|
|
bla r17, r18, .B1789
|
|
addu 12, r20, r20
|
|
// lineno: 499
|
|
.B968: //.B0032
|
|
orh h%.BSS+8, r0, r31
|
|
.DB.B968968:
|
|
or l%.BSS+8, r31, r28
|
|
ld.l 4(r28), r16
|
|
ld.l r0(r28), r17
|
|
ld.l r0(r5), r18
|
|
ld.l r0(r6), r19
|
|
orh ha%_first_framebuf_y, r0, r31
|
|
ld.l l%_first_framebuf_y(r31), r20
|
|
call _strap_up_transptiles
|
|
adds 1, r0, r21
|
|
orh ha%__processorId, r0, r31
|
|
ld.l l%__processorId(r31), r28
|
|
st.l r16, -4(fp)
|
|
btne 0x0000, r28, .B973
|
|
orh ha%_recompute_end_of_frame, r0, r31
|
|
ld.l l%_recompute_end_of_frame(r31), r29
|
|
|
|
bte 0x0000, r29, .B976
|
|
orh h%_redo_end_of_frame, r0, r31
|
|
br .B977
|
|
or l%_redo_end_of_frame, r31, r11
|
|
// lineno: 519
|
|
.B976: //.B0036
|
|
mov r0, r11
|
|
.DB.B976976:
|
|
// lineno: 524
|
|
.B977: //.B0037
|
|
ld.l -4(fp), r28
|
|
.DB.B977977:
|
|
|
|
ld.l r0(r28), r16
|
|
orh ha%_shared_cntl, r0, r31
|
|
ld.l l%_shared_cntl(r31), r29
|
|
|
|
ld.l 84(r29), r17
|
|
ld.l 52(r29), r18
|
|
|
|
|
|
call _dN_pxpl5_dma
|
|
mov r11, r19
|
|
mov r16, r4
|
|
or (500000&0xffff), r0, r28
|
|
orh ((500000>>16)&0xffff), r28, r28
|
|
subs r28, r16, r0
|
|
mov r16, r29
|
|
bnc .B979
|
|
orh h%.S00980, r0, r31
|
|
or l%.S00980, r31, r16
|
|
|
|
call _printf
|
|
mov r29, r17
|
|
// lineno: 528
|
|
.B979: //.B0038
|
|
orh ha%_recompute_end_of_frame, r0, r31
|
|
.DB.B979979:
|
|
st.l r0, l%_recompute_end_of_frame(r31)
|
|
orh h%.B982, r0, r1
|
|
br _multisync
|
|
or l%.B982, r1, r1
|
|
// lineno: 533
|
|
.B973: //.B0035
|
|
call _multisync
|
|
nop
|
|
// lineno: 537
|
|
.B982: //.B0039
|
|
call _start_frame_stats
|
|
nop
|
|
ld.l r0(r10), r28
|
|
ld.l r0(r5), r29
|
|
|
|
btne r28, r29, .B984
|
|
orh ha%_trans_screen1bins, r0, r31
|
|
ld.l l%_trans_screen1bins(r31), r30
|
|
ld.l r0(r9), r16
|
|
st.l r30, 0(r6)
|
|
br .B986
|
|
st.l r16, 0(r5)
|
|
// lineno: 544
|
|
.B984: //.B0040
|
|
ld.l r0(r9), r28
|
|
.DB.B984984:
|
|
ld.l r0(r5), r29
|
|
|
|
btne r28, r29, .B987
|
|
orh ha%_trans_screen0bins, r0, r31
|
|
ld.l l%_trans_screen0bins(r31), r30
|
|
ld.l r0(r10), r16
|
|
st.l r30, 0(r6)
|
|
br .B989
|
|
st.l r16, 0(r5)
|
|
// lineno: 550
|
|
.B987: //.B0042
|
|
orh h%.S00990, r0, r31
|
|
.DB.B987987:
|
|
or l%.S00990, r31, r16
|
|
ld.l r0(r5), r17
|
|
ld.l r0(r10), r18
|
|
call _printf
|
|
ld.l r0(r9), r19
|
|
// lineno: 551
|
|
.B993: //.B0044
|
|
br .B993
|
|
nop
|
|
// lineno: 0
|
|
.B989: //.B0043
|
|
// lineno: 555
|
|
.B986: //.B0041
|
|
ld.l r0(r5), r16
|
|
.DB.B986986:
|
|
adds 1024, r0, r17
|
|
call _liberate_screenbins
|
|
adds 768, r0, r18
|
|
ld.l r0(r6), r16
|
|
adds 1024, r0, r17
|
|
call _liberate_screenbins
|
|
adds 768, r0, r18
|
|
orh ha%_lastcoeffptr, r0, r31
|
|
ld.l l%_lastcoeffptr(r31), r28
|
|
ld.l r0(r8), r29
|
|
|
|
btne r29, r28, .B997
|
|
orh ha%_coeffstore1, r0, r31
|
|
ld.l l%_coeffstore1(r31), r30
|
|
orh ha%_last_coeffchunk, r0, r31
|
|
st.l r30, l%_last_coeffchunk(r31)
|
|
br .B999
|
|
st.l r30, 0(r7)
|
|
// lineno: 563
|
|
.B997: //.B0046
|
|
ld.l r0(r8), r28
|
|
.DB.B997997:
|
|
orh ha%_last_coeffchunk, r0, r31
|
|
st.l r28, l%_last_coeffchunk(r31)
|
|
st.l r28, 0(r7)
|
|
// lineno: 567
|
|
.B999: //.B0047
|
|
orh h%_display_tile_base, r0, r31
|
|
.DB.B999999:
|
|
or l%_display_tile_base, r31, r28
|
|
ld.l 0(r28), r29
|
|
orh ha%_framebuf_flip, r0, r31
|
|
ld.l l%_framebuf_flip(r31), r30
|
|
ld.l r0(r7), r22
|
|
xor r29, r30, r16
|
|
st.l r16, 0(r28)
|
|
orh ha%_lastcoeffptr, r0, r31
|
|
st.l r22, l%_lastcoeffptr(r31)
|
|
// lineno: 0
|
|
// lineno: 575
|
|
|
|
|
|
|
|
|
|
ld.l -40(fp), r4
|
|
ld.l -36(fp), r5
|
|
ld.l -32(fp), r6
|
|
ld.l -28(fp), r7
|
|
ld.l -24(fp), r8
|
|
ld.l -20(fp), r9
|
|
ld.l -16(fp), r10
|
|
ld.l -12(fp), r11
|
|
adds .a9+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _flip_screens
|
|
.align 8
|
|
_flip_screens:
|
|
.a10 = 80
|
|
.f10 = 112
|
|
addu -(.a10+.f10), sp, sp
|
|
st.l fp,(.f10-16)(sp)
|
|
addu (.f10-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -80(fp)
|
|
st.l r5, -76(fp)
|
|
st.l r6, -72(fp)
|
|
st.l r7, -68(fp)
|
|
st.l r8, -64(fp)
|
|
st.l r9, -60(fp)
|
|
st.l r10, -56(fp)
|
|
st.l r11, -52(fp)
|
|
st.l r12, -48(fp)
|
|
st.l r13, -44(fp)
|
|
st.l r14, -40(fp)
|
|
st.l r15, -36(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
st.l r17, 52(fp)
|
|
// lineno: 0
|
|
or (268435472&0xffff), r0, r5
|
|
orh ((268435472>>16)&0xffff), r5, r5
|
|
orh h%_shared_cntl, r0, r31
|
|
or l%_shared_cntl, r31, r12
|
|
orh h%_casio_ix, r0, r31
|
|
or l%_casio_ix, r31, r15
|
|
orh 0x2000, r0, r6
|
|
// lineno: 583
|
|
ld.l r0(r15), r28
|
|
|
|
adds 1, r28, r29
|
|
and 0x000f, r29, r30
|
|
adds 11, r30, r16
|
|
and 0x000f, r16, r22
|
|
shl 2, r22, r23
|
|
orh h%_random_numbers, r0, r31
|
|
or l%_random_numbers, r31, r24
|
|
fld.l r24(r23), f16
|
|
orh ha%.C01007, r0, r31
|
|
fld.l l%.C01007(r31), f17
|
|
shl 2, r30, r25
|
|
fld.l r24(r25), f19
|
|
fmul.ss f16, f17, f18
|
|
st.l r30, 0(r15)
|
|
orh ha%_random_y, r0, r31
|
|
fst.l f18, l%_random_y(r31)
|
|
fmul.ss f19, f17, f20
|
|
|
|
orh ha%_random_x, r0, r31
|
|
fst.l f20, l%_random_x(r31)
|
|
orh ha%_very_first_frame, r0, r31
|
|
ld.l l%_very_first_frame(r31), r26
|
|
|
|
btne 0x0000, r26, .B1009
|
|
ld.l r0(r12), r27
|
|
mov r0, r10
|
|
ld.l 16(r27), r14
|
|
adds 63, r0, r18
|
|
st.l r14, -4(fp)
|
|
addu -4, r14, r19
|
|
adds -1, r0, r17
|
|
bla r17, r18,.B1818
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 594
|
|
.B1818: //.M0006
|
|
mov r19, r28
|
|
.DB.B18181818:
|
|
addu 4, r19, r19
|
|
bla r17, r18, .B1818
|
|
st.l r0, 4(r28)
|
|
// lineno: 594
|
|
.B1017: //.B0050
|
|
addu 4, r14, r28
|
|
.DB.B10171017:
|
|
addu 4, r28, r29
|
|
addu 4, r29, r30
|
|
addu 4, r30, r16
|
|
addu 4, r16, r22
|
|
addu 4, r22, r23
|
|
addu 4, r23, r24
|
|
addu 4, r24, r25
|
|
addu 4, r25, r26
|
|
addu 4, r26, r27
|
|
st.l r26, -16(fp)
|
|
st.l r25, -12(fp)
|
|
st.l r24, -8(fp)
|
|
mov r14, r26
|
|
addu 4, r27, r14
|
|
mov r14, r4
|
|
adds 256, r0, r25
|
|
st.l r25, 0(r26)
|
|
or (167790592&0xffff), r0, r24
|
|
orh ((167790592>>16)&0xffff), r24, r24
|
|
st.l r24, 4(r26)
|
|
or (973142528&0xffff), r0, r27
|
|
orh ((973142528>>16)&0xffff), r27, r27
|
|
st.l r27, 4(r28)
|
|
st.l r0, 4(r29)
|
|
st.l r0, 4(r30)
|
|
st.l r0, 4(r16)
|
|
or (989958400&0xffff), r0, r25
|
|
orh ((989958400>>16)&0xffff), r25, r25
|
|
st.l r25, 4(r22)
|
|
st.l r0, 4(r23)
|
|
mov r0, r9
|
|
ld.l -8(fp), r26
|
|
ld.l -12(fp), r24
|
|
st.l r0, 4(r26)
|
|
st.l r0, 4(r24)
|
|
mov r0, r9
|
|
ld.l -16(fp), r28
|
|
ld.l -4(fp), r27
|
|
st.l r0, 4(r28)
|
|
mov r27, r7
|
|
// lineno: 610
|
|
.B1823: //.M0008
|
|
ld.l r0(r12), r28
|
|
.DB.B18231823:
|
|
adds 31, r0, r18
|
|
ld.l 20(r28), r13
|
|
mov r10, r21
|
|
addu 4, r13, r29
|
|
addu 4, r29, r8
|
|
st.l r0, 0(r13)
|
|
st.l r0, 4(r13)
|
|
adds -1, r0, r17
|
|
orh 0x6000, r0, r20
|
|
bla r17, r18,.B1820
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 617
|
|
.B1820: //.M0007
|
|
addu 4, r8, r28
|
|
.DB.B18201820:
|
|
addu 4, r28, r29
|
|
addu 4, r29, r30
|
|
addu 4, r30, r16
|
|
addu 4, r16, r22
|
|
addu 4, r22, r23
|
|
addu 4, r23, r24
|
|
addu 4, r24, r25
|
|
addu 4, r25, r26
|
|
addu 4, r26, r27
|
|
st.l r26, -28(fp)
|
|
st.l r25, -24(fp)
|
|
st.l r24, -20(fp)
|
|
addu 4, r27, r26
|
|
mov r8, r25
|
|
addu 4, r26, r8
|
|
st.l r21, 0(r25)
|
|
st.l r6, 4(r25)
|
|
st.l r4, 4(r28)
|
|
st.l r20, 4(r29)
|
|
st.l r4, 4(r30)
|
|
st.l r20, 4(r16)
|
|
st.l r7, 4(r22)
|
|
st.l r5, 4(r23)
|
|
adds 1, r21, r21
|
|
ld.l -20(fp), r24
|
|
ld.l -24(fp), r26
|
|
st.l r4, 4(r24)
|
|
st.l r20, 4(r26)
|
|
|
|
ld.l -28(fp), r25
|
|
|
|
st.l r0, 4(r25)
|
|
bla r17, r18, .B1820
|
|
st.l r20, 4(r27)
|
|
// lineno: 0
|
|
st.l r0, 0(r8)
|
|
orh 0xf800, r0, r28
|
|
st.l r28, 4(r8)
|
|
mov r13, r16
|
|
ld.l r0(r12), r29
|
|
addu 4, r8, r30
|
|
ld.l 84(r29), r17
|
|
ld.l 52(r29), r18
|
|
addu 4, r30, r8
|
|
mov r21, r10
|
|
call _dN_pxpl5_dma
|
|
mov r0, r19
|
|
adds 1, r9, r9
|
|
adds -32, r9, r0
|
|
|
|
bc.t .DB.B18231823
|
|
ld.l r0(r12), r28
|
|
// lineno: 0
|
|
ld.l r0(r12), r28
|
|
|
|
ld.l 20(r28), r16
|
|
ld.l 16(r28), r17
|
|
ld.l 52(r28), r18
|
|
orh h%_very_first_frame, r0, r31
|
|
or l%_very_first_frame, r31, r29
|
|
ld.l 0(r29), r30
|
|
|
|
adds 1, r30, r22
|
|
call _short_end_of_frame_DMA
|
|
st.l r22, 0(r29)
|
|
ld.l r0(r12), r28
|
|
|
|
st.l r16, 28(r28)
|
|
// lineno: 655
|
|
.B1009: //.B0048
|
|
ld.l 48(fp), r16
|
|
.DB.B10091009:
|
|
call _pxpl5_flip
|
|
ld.l 52(fp), r17
|
|
// lineno: 0
|
|
// lineno: 681
|
|
|
|
|
|
|
|
|
|
ld.l -80(fp), r4
|
|
ld.l -76(fp), r5
|
|
ld.l -72(fp), r6
|
|
ld.l -68(fp), r7
|
|
ld.l -64(fp), r8
|
|
ld.l -60(fp), r9
|
|
ld.l -56(fp), r10
|
|
ld.l -52(fp), r11
|
|
ld.l -48(fp), r12
|
|
ld.l -44(fp), r13
|
|
ld.l -40(fp), r14
|
|
ld.l -36(fp), r15
|
|
adds .a10+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _render_init
|
|
.align 8
|
|
_render_init:
|
|
.a11 = 80
|
|
.f11 = 48
|
|
addu -(.a11+.f11), sp, sp
|
|
st.l fp,(.f11-16)(sp)
|
|
addu (.f11-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -16(fp)
|
|
st.l r5, -12(fp)
|
|
st.l r6, -8(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov r16, r4
|
|
mov r17, r5
|
|
// lineno: 0
|
|
orh h%_shared_cntl, r0, r31
|
|
or l%_shared_cntl, r31, r6
|
|
// lineno: 698
|
|
call _multisync
|
|
nop
|
|
orh h%_render_inited, r0, r31
|
|
or l%_render_inited, r31, r28
|
|
ld.l 0(r28), r29
|
|
|
|
btne 0x0000, r29, .B1052
|
|
orh h%_texture_ramps, r0, r31
|
|
or l%_texture_ramps, r31, r16
|
|
adds 1, r0, r30
|
|
mov r0, r17
|
|
fiadd.ss f0, f0, f8
|
|
|
|
fiadd.ss f0, f0, f9
|
|
|
|
fiadd.ss f0, f0, f10
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f11
|
|
orh ha%_render_inited, r0, r31
|
|
st.l r30, l%_render_inited(r31)
|
|
|
|
fiadd.ss f11, f0, f12
|
|
|
|
call _setRampEntry
|
|
fiadd.ss f11, f0, f13
|
|
orh ha%.C01056, r0, r31
|
|
fld.l l%.C01056(r31), f8
|
|
orh h%_texture_ramps+28, r0, r31
|
|
or l%_texture_ramps+28, r31, r16
|
|
adds 1, r0, r17
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f11
|
|
fiadd.ss f0, f0, f9
|
|
|
|
fiadd.ss f0, f0, f10
|
|
orh ha%.C01057, r0, r31
|
|
fld.l l%.C01057(r31), f13
|
|
call _setRampEntry
|
|
fiadd.ss f11, f0, f12
|
|
orh h%_texture_ramps+56, r0, r31
|
|
or l%_texture_ramps+56, r31, r16
|
|
adds 2, r0, r17
|
|
|
|
fiadd.ss f0, f0, f8
|
|
orh ha%.C00038, r0, r31
|
|
fld.l l%.C00038(r31), f9
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f11
|
|
|
|
fiadd.ss f0, f0, f10
|
|
|
|
|
|
fiadd.ss f11, f0, f12
|
|
|
|
call _setRampEntry
|
|
fiadd.ss f11, f0, f13
|
|
orh h%_texture_ramps+84, r0, r31
|
|
or l%_texture_ramps+84, r31, r16
|
|
adds 3, r0, r17
|
|
|
|
fiadd.ss f0, f0, f8
|
|
|
|
fiadd.ss f0, f0, f9
|
|
orh ha%.C01059, r0, r31
|
|
fld.l l%.C01059(r31), f10
|
|
orh ha%.C01057, r0, r31
|
|
fld.l l%.C01057(r31), f11
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f13
|
|
|
|
call _setRampEntry
|
|
fiadd.ss f11, f0, f12
|
|
call _texInit
|
|
nop
|
|
call _getFsr
|
|
nop
|
|
call _setFsr
|
|
or 0x0001, r16, r16
|
|
adds 63, r4, r28
|
|
shra 6, r28, r29
|
|
orh h%.BSS+12, r0, r31
|
|
or l%.BSS+12, r31, r30
|
|
st.l r29, 0(r30)
|
|
adds 127, r5, r16
|
|
shra 7, r16, r17
|
|
st.l r17, -4(r30)
|
|
orh ha%_display_tile_base, r0, r31
|
|
call _init_phong
|
|
st.l r0, l%_display_tile_base(r31)
|
|
orh ha%__processorId, r0, r31
|
|
ld.l l%__processorId(r31), r28
|
|
|
|
btne 0x0000, r28, .B1061
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 84(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 20(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 16(r28)
|
|
call _malloc
|
|
adds 2048, r0, r16
|
|
mov r16, r28
|
|
adds 8192, r0, r16
|
|
orh ha%.BSS+16, r0, r31
|
|
call _newBytes
|
|
st.l r28, l%.BSS+16(r31)
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 36(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 32(r28)
|
|
call _malloc
|
|
adds 2048, r0, r16
|
|
mov r16, r28
|
|
adds 8192, r0, r16
|
|
orh ha%.BSS+20, r0, r31
|
|
call _newBytes
|
|
st.l r28, l%.BSS+20(r31)
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 52(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 48(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 68(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 64(r28)
|
|
call _newBytes
|
|
adds 8192, r0, r16
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 80(r28)
|
|
|
|
ld.l r0(r6), r29
|
|
|
|
ld.l 52(r29), r16
|
|
call _end_of_textr_DMA
|
|
ld.l 48(r29), r17
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 60(r28)
|
|
|
|
ld.l r0(r6), r29
|
|
|
|
ld.l 68(r29), r16
|
|
call _end_of_transp_DMA
|
|
ld.l 64(r29), r17
|
|
ld.l r0(r6), r28
|
|
adds 45, r0, r19
|
|
st.l r16, 76(r28)
|
|
adds 66, r0, r20
|
|
ld.l r0(r6), r29
|
|
adds 135, r0, r21
|
|
ld.l 20(r29), r16
|
|
ld.l 16(r29), r17
|
|
ld.l 52(r29), r18
|
|
call _short_end_of_frame_DMA
|
|
adds 20, r0, r22
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 28(r28)
|
|
|
|
ld.l r0(r6), r29
|
|
|
|
ld.l 36(r29), r16
|
|
ld.l 32(r29), r17
|
|
call _end_of_transframe_DMA
|
|
ld.l 68(r29), r18
|
|
ld.l r0(r6), r28
|
|
|
|
st.l r16, 44(r28)
|
|
orh h%.B1070, r0, r1
|
|
br _multisync
|
|
or l%.B1070, r1, r1
|
|
// lineno: 780
|
|
.B1061: //.B0058
|
|
call _multisync
|
|
nop
|
|
// lineno: 881
|
|
.B1070: //.B0059
|
|
adds 1024, r0, r16
|
|
.DB.B10701070:
|
|
shl r0, r0, r28
|
|
btne r4, r16, ..L0
|
|
adds 1, r0, r28
|
|
..L0:
|
|
adds 768, r0, r17
|
|
|
|
call _create_screenbins
|
|
mov r28, r18
|
|
orh ha%.C01579, r0, r31
|
|
fld.d l%.C01579(r31), f16
|
|
xorh 0x8000, r4, r28
|
|
ixfr r28, f18
|
|
fiadd.ss f17, f0, f19
|
|
xorh 0x8000, r5, r29
|
|
fsub.dd f18, f16, f20
|
|
orh ha%.C01076, r0, r31
|
|
fld.l l%.C01076(r31), f23
|
|
fmov.ds f20, f22
|
|
|
|
|
|
fsub.ss f22, f23, f24
|
|
|
|
orh ha%_Cmax_x, r0, r31
|
|
fst.l f24, l%_Cmax_x(r31)
|
|
ixfr r29, f26
|
|
fiadd.ss f17, f0, f27
|
|
|
|
fsub.dd f26, f16, f28
|
|
|
|
|
|
fmov.ds f28, f25
|
|
|
|
|
|
fsub.ss f25, f23, f30
|
|
|
|
orh ha%_Cmax_y, r0, r31
|
|
call _multisync
|
|
fst.l f30, l%_Cmax_y(r31)
|
|
// lineno: 0
|
|
.B1052: //.B0057
|
|
// lineno: 898
|
|
|
|
|
|
|
|
|
|
ld.l -16(fp), r4
|
|
ld.l -12(fp), r5
|
|
ld.l -8(fp), r6
|
|
adds .a11+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _vpx_drawstuff
|
|
.align 8
|
|
_vpx_drawstuff:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
// lineno: 910
|
|
ld.l 32(r19), r29
|
|
|
|
st.l r29, 0(r16)
|
|
|
|
fld.l 12(r19), f16
|
|
orh ha%.C01082, r0, r31
|
|
fld.l l%.C01082(r31), f17
|
|
|
|
|
|
fmul.ss f16, f17, f18
|
|
|
|
|
|
ftrunc.sd f18, f20
|
|
|
|
|
|
fxfr f20, r30
|
|
|
|
subs 31, r30, r20
|
|
st.l r20, 0(r17)
|
|
|
|
ld.l 32(r19), r21
|
|
|
|
bte 0x0000, r21, .B1084
|
|
ld.l 172(r18), r22
|
|
|
|
and 0x0003, r22, r0
|
|
bc .B1086
|
|
orh h%_tri_zb_rgb_t, r0, r31
|
|
bri r1
|
|
or l%_tri_zb_rgb_t, r31, r16
|
|
// lineno: 917
|
|
.B1086: //.B0061
|
|
orh h%_tri_zb_f_t, r0, r31
|
|
.DB.B10861086:
|
|
bri r1
|
|
or l%_tri_zb_f_t, r31, r16
|
|
// lineno: 920
|
|
.B1084: //.B0060
|
|
ld.l 172(r18), r29
|
|
.DB.B10841084:
|
|
|
|
and 0x0003, r29, r0
|
|
bc .B1090
|
|
orh h%_tri_zb_rgb, r0, r31
|
|
br .B1860
|
|
or l%_tri_zb_rgb, r31, r16
|
|
// lineno: 923
|
|
.B1090: //.B0064
|
|
orh h%_tri_zb_f, r0, r31
|
|
.DB.B10901090:
|
|
bri r1
|
|
or l%_tri_zb_f, r31, r16
|
|
// lineno: 0
|
|
.B1860: //.R0004
|
|
// lineno: 925
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_eval_lmodel:
|
|
.a13 = 80
|
|
.f13 = 144
|
|
addu -(.a13+.f13), sp, sp
|
|
st.l fp,(.f13-16)(sp)
|
|
addu (.f13-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
fst.d f2, -112(fp)
|
|
fst.d f4, -104(fp)
|
|
fst.d f6, -96(fp)
|
|
st.l r4, -88(fp)
|
|
st.l r5, -84(fp)
|
|
st.l r6, -80(fp)
|
|
st.l r7, -76(fp)
|
|
st.l r8, -72(fp)
|
|
st.l r9, -68(fp)
|
|
st.l r10, -64(fp)
|
|
st.l r11, -60(fp)
|
|
st.l r12, -56(fp)
|
|
st.l r13, -52(fp)
|
|
st.l r14, -48(fp)
|
|
st.l r15, -44(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
// lineno: 0
|
|
adds 3, r0, r5
|
|
// lineno: 938
|
|
fld.l 72(r17), f16
|
|
fld.l 76(r17), f17
|
|
fld.l 80(r17), f18
|
|
fst.l f16, -8(fp)
|
|
fst.l f17, -12(fp)
|
|
fst.l f18, -16(fp)
|
|
adds 1, r0, r28
|
|
fld.l 88(r17), f19
|
|
fld.l 92(r17), f20
|
|
fld.l 96(r17), f21
|
|
fst.l f19, -20(fp)
|
|
fst.l f20, -24(fp)
|
|
fst.l f21, -28(fp)
|
|
mov r0, r4
|
|
fld.l 104(r17), f22
|
|
fld.l 108(r17), f23
|
|
fld.l 112(r17), f24
|
|
fst.l f22, -32(fp)
|
|
fst.l f23, -36(fp)
|
|
fst.l f24, -40(fp)
|
|
st.l r28, 100(r16)
|
|
addu 108, r16, r8
|
|
ld.l 104(r16), r29
|
|
|
|
st.l r29, -4(fp)
|
|
bte 0x0000, r29, .B1114
|
|
ld.l 16(r29), r7
|
|
|
|
bte 0x0000, r7, .B1117
|
|
ld.l 48(fp), r30
|
|
mov r0, r4
|
|
addu 96, r30, r13
|
|
addu 92, r30, r14
|
|
addu 88, r30, r15
|
|
addu 4, r8, r9
|
|
addu 8, r8, r10
|
|
addu 12, r8, r11
|
|
addu 16, r8, r12
|
|
// lineno: 957
|
|
.B1904: //.M0009
|
|
ld.l r0(r7), r6
|
|
.DB.B19041904:
|
|
|
|
ld.l 12(r6), r28
|
|
|
|
btne r5, r28, .B1120
|
|
st.l r5, 0(r8)
|
|
mov r12, r16
|
|
fld.l 44(r6), f16
|
|
fld.l -8(fp), f17
|
|
fld.l 48(r6), f3
|
|
fld.l -20(fp), f19
|
|
fmul.ss f17, f16, f18
|
|
fld.l 52(r6), f2
|
|
fld.l -32(fp), f22
|
|
fmul.ss f19, f3, f20
|
|
fld.l -12(fp), f24
|
|
fld.l -24(fp), f26
|
|
fadd.ss f20, f18, f21
|
|
fld.l -36(fp), f29
|
|
fld.l -16(fp), f31
|
|
fmul.ss f22, f2, f23
|
|
fld.l -28(fp), f11
|
|
fld.l -40(fp), f14
|
|
fadd.ss f23, f21, f7
|
|
fld.l 16(r6), f17
|
|
|
|
fiadd.ss f7, f0, f8
|
|
|
|
fmul.ss f16, f24, f25
|
|
|
|
|
|
fmul.ss f3, f26, f27
|
|
|
|
|
|
fadd.ss f27, f25, f28
|
|
|
|
|
|
fmul.ss f2, f29, f30
|
|
|
|
|
|
fadd.ss f30, f28, f6
|
|
|
|
|
|
fiadd.ss f6, f0, f9
|
|
|
|
fmul.ss f16, f31, f10
|
|
|
|
|
|
fmul.ss f3, f11, f12
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f11
|
|
fadd.ss f12, f10, f13
|
|
|
|
|
|
fmul.ss f2, f14, f15
|
|
|
|
|
|
fadd.ss f15, f13, f5
|
|
|
|
|
|
fiadd.ss f5, f0, f10
|
|
|
|
fst.l f17, r0(r9)
|
|
|
|
fld.l 20(r6), f19
|
|
|
|
|
|
fst.l f19, r0(r10)
|
|
|
|
fld.l 24(r6), f18
|
|
|
|
|
|
call _quick_renorm
|
|
fst.l f18, r0(r11)
|
|
adds 1, r4, r4
|
|
addu 48, r8, r8
|
|
addu 48, r9, r9
|
|
addu 48, r10, r10
|
|
addu 48, r11, r11
|
|
addu 48, r12, r12
|
|
bte 0x0008, r4, .B1905
|
|
br .B1129
|
|
nop
|
|
// lineno: 999
|
|
.B1120: //.B0069
|
|
ld.l 12(r6), r28
|
|
.DB.B11201120:
|
|
|
|
btne 0x0002, r28, .B1130
|
|
fld.l 16(r6), f16
|
|
|
|
|
|
fst.l f16, r0(r15)
|
|
|
|
fld.l 20(r6), f17
|
|
|
|
|
|
fst.l f17, r0(r14)
|
|
|
|
fld.l 24(r6), f18
|
|
|
|
|
|
fst.l f18, r0(r13)
|
|
// lineno: 0
|
|
.B1130: //.B0072
|
|
// lineno: 1011
|
|
.B1129: //.B0071
|
|
ld.l 8(r7), r7
|
|
.DB.B11291129:
|
|
|
|
xor 0x0000, r7, r0
|
|
bnc.t .DB.B19041904
|
|
ld.l r0(r7), r6
|
|
// lineno: 0
|
|
.B1905: //.N0000
|
|
// lineno: 1012
|
|
.B1117: //.B0068
|
|
ld.l 48(fp), r28
|
|
.DB.B11171117:
|
|
|
|
st.l r4, 4(r28)
|
|
// lineno: 0
|
|
.B1114: //.B0066
|
|
// lineno: 1015
|
|
|
|
|
|
|
|
|
|
fld.d -112(fp), f2
|
|
fld.d -104(fp), f4
|
|
fld.d -96(fp), f6
|
|
ld.l -88(fp), r4
|
|
ld.l -84(fp), r5
|
|
ld.l -80(fp), r6
|
|
ld.l -76(fp), r7
|
|
ld.l -72(fp), r8
|
|
ld.l -68(fp), r9
|
|
ld.l -64(fp), r10
|
|
ld.l -60(fp), r11
|
|
ld.l -56(fp), r12
|
|
ld.l -52(fp), r13
|
|
ld.l -48(fp), r14
|
|
ld.l -44(fp), r15
|
|
adds .a13+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _light_structure
|
|
.align 8
|
|
_light_structure:
|
|
.a14 = 80
|
|
.f14 = 96
|
|
orh h%.STACK+.f14-16, r0, r28
|
|
or l%.STACK+.f14-16, r28, r28
|
|
fst.d f2, -64(r28)
|
|
fst.d f4, -56(r28)
|
|
fst.d f6, -48(r28)
|
|
st.l r4, -40(r28)
|
|
st.l r5, -36(r28)
|
|
st.l r6, -32(r28)
|
|
st.l r7, -28(r28)
|
|
st.l r8, -24(r28)
|
|
st.l r9, -20(r28)
|
|
st.l r10, -16(r28)
|
|
st.l r11, -12(r28)
|
|
st.l r12, -8(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r22, 72(r28)
|
|
st.l r23, 76(r28)
|
|
// lineno: 0
|
|
// lineno: 1280
|
|
orh ha%.C01144, r0, r31
|
|
fld.l l%.C01144(r31), f16
|
|
fld.l r0(r18), f17
|
|
fld.l 4(r18), f18
|
|
fld.l 8(r18), f19
|
|
fmul.ss f17, f16, f4
|
|
fld.l 88(r17), f7
|
|
fld.l 92(r17), f6
|
|
fmul.ss f18, f16, f3
|
|
fld.l 96(r17), f5
|
|
|
|
fmul.ss f19, f16, f2
|
|
|
|
bte 0x0000, r16, .B1150
|
|
mov r20, r7
|
|
mov r21, r8
|
|
ld.l 76(r28), r9
|
|
ld.l 72(r28), r10
|
|
addu 108, r17, r11
|
|
addu 4, r17, r12
|
|
// lineno: 1289
|
|
.B1937: //.M0010
|
|
ld.l r16(r9), r29
|
|
.DB.B19371937:
|
|
|
|
bte 0x0000, r29, .B1152
|
|
adds r7, r16, r30
|
|
fld.l r0(r30), f13
|
|
fld.l 4(r30), f14
|
|
fld.l 8(r30), f15
|
|
fiadd.ss f7, f0, f12
|
|
ld.l r0(r12), r4
|
|
fiadd.ss f6, f0, f11
|
|
mov r11, r5
|
|
|
|
adds -1, r4, r0
|
|
fiadd.ss f5, f0, f10
|
|
bc .B1165
|
|
fld.l 16(r11), f16
|
|
fld.l 20(r11), f18
|
|
fld.l 24(r11), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1167
|
|
fld.l 4(r11), f24
|
|
fld.l 8(r11), f26
|
|
fld.l 12(r11), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f7, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f6, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f5, f10
|
|
// lineno: 1313
|
|
.B1167: //.B0077
|
|
addu 48, r5, r5
|
|
.DB.B11671167:
|
|
adds -2, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1170
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1325
|
|
.B1170: //.B0079
|
|
addu 48, r5, r5
|
|
.DB.B11701170:
|
|
adds -3, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1173
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1337
|
|
.B1173: //.B0081
|
|
addu 48, r5, r5
|
|
.DB.B11731173:
|
|
adds -4, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1176
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1349
|
|
.B1176: //.B0083
|
|
addu 48, r5, r5
|
|
.DB.B11761176:
|
|
adds -5, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1179
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1361
|
|
.B1179: //.B0085
|
|
addu 48, r5, r5
|
|
.DB.B11791179:
|
|
adds -6, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1182
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1373
|
|
.B1182: //.B0087
|
|
addu 48, r5, r5
|
|
.DB.B11821182:
|
|
adds -7, r4, r0
|
|
|
|
bc .B1165
|
|
fld.l 16(r5), f16
|
|
fld.l 20(r5), f18
|
|
fld.l 24(r5), f21
|
|
fmul.ss f16, f13, f17
|
|
|
|
|
|
fmul.ss f18, f14, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f21, f15, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f23, f8, f9
|
|
|
|
|
|
pfle.ss f9, f0, f0
|
|
|
|
bnc .B1185
|
|
fld.l 4(r5), f24
|
|
fld.l 8(r5), f26
|
|
fld.l 12(r5), f28
|
|
fmul.ss f9, f24, f25
|
|
|
|
|
|
fadd.ss f25, f12, f12
|
|
|
|
|
|
fmul.ss f9, f26, f27
|
|
|
|
|
|
fadd.ss f27, f11, f11
|
|
|
|
|
|
fmul.ss f9, f28, f29
|
|
|
|
|
|
fadd.ss f29, f10, f10
|
|
// lineno: 1385
|
|
.B1185: //.B0089
|
|
// lineno: 1389
|
|
.B1165: //accums
|
|
fmul.ss f12, f4, f16
|
|
.DB.B11651165:
|
|
mov r16, r29
|
|
|
|
fst.l f16, r10(r29)++
|
|
fmul.ss f11, f3, f17
|
|
|
|
|
|
fst.l f17, 4(r29)++
|
|
fmul.ss f10, f2, f18
|
|
|
|
|
|
fst.l f18, 4(r29)++
|
|
addu 4, r29, r6
|
|
// lineno: 1396
|
|
.B1152: //.B0075
|
|
ld.l r16(r8), r16
|
|
.DB.B11521152:
|
|
|
|
xor 0x0000, r16, r0
|
|
bnc.t .DB.B19371937
|
|
ld.l r16(r9), r29
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1150: //.B0074
|
|
// lineno: 1397
|
|
|
|
|
|
|
|
|
|
fld.d -64(r28), f2
|
|
fld.d -56(r28), f4
|
|
fld.d -48(r28), f6
|
|
ld.l -40(r28), r4
|
|
ld.l -36(r28), r5
|
|
ld.l -32(r28), r6
|
|
ld.l -28(r28), r7
|
|
ld.l -24(r28), r8
|
|
ld.l -20(r28), r9
|
|
ld.l -16(r28), r10
|
|
ld.l -12(r28), r11
|
|
ld.l -8(r28), r12
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_cookize_vertices:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%.C01144, r0, r31
|
|
fld.l l%.C01144(r31), f8
|
|
orh ha%.C01082, r0, r31
|
|
fld.l l%.C01082(r31), f12
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f14
|
|
adds -1, r0, r19
|
|
// lineno: 1405
|
|
|
|
subs 0, r17, r0
|
|
fld.l 12(r18), f13
|
|
bnc .B1202
|
|
adds -1, r17, r20
|
|
bla r19, r20,.B1953
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 1413
|
|
.B1953: //.M0011
|
|
ld.l 76(r16), r29
|
|
.DB.B19531953:
|
|
|
|
bte 0x0000, r29, .B1204
|
|
fld.l 28(r16), f9
|
|
fld.l 16(r16), f19
|
|
fld.l 20(r16), f11
|
|
fmul.ss f13, f9, f16
|
|
fld.l 24(r16), f10
|
|
|
|
fsub.ss f14, f16, f17
|
|
|
|
|
|
fmul.ss f17, f12, f18
|
|
|
|
|
|
fst.l f18, 40(r16)
|
|
fmul.ss f19, f8, f20
|
|
|
|
|
|
fst.l f20, 64(r16)
|
|
fmul.ss f11, f8, f21
|
|
|
|
|
|
fst.l f21, 68(r16)
|
|
fmul.ss f10, f8, f22
|
|
|
|
|
|
fst.l f22, 72(r16)
|
|
// lineno: 1425
|
|
.B1204: //.B0092
|
|
bla r19, r20, .B1953
|
|
ld.l 44(r16), r16
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1202: //.B0091
|
|
// lineno: 1426
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_clear_vertices:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
// lineno: 1441
|
|
bte 0x0000, r16, .B1210
|
|
// lineno: 1443
|
|
.B1209: //.B0093
|
|
st.l r17, 84(r16)
|
|
.DB.B12091209:
|
|
st.l r17, 164(r16)
|
|
st.l r17, 244(r16)
|
|
st.l r17, 324(r16)
|
|
st.l r17, 404(r16)
|
|
st.l r17, 484(r16)
|
|
st.l r17, 564(r16)
|
|
st.l r17, 644(r16)
|
|
|
|
ld.l r0(r16), r16
|
|
|
|
xor 0x0000, r16, r0
|
|
bnc.t .DB.B12091209
|
|
st.l r17, 84(r16)
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1210: //.B0094
|
|
// lineno: 1453
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_clear_facets:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
// lineno: 1466
|
|
bte 0x0000, r16, .B1216
|
|
// lineno: 1468
|
|
.B1215: //.B0095
|
|
st.l r17, 68(r16)
|
|
.DB.B12151215:
|
|
st.l r17, 132(r16)
|
|
st.l r17, 196(r16)
|
|
st.l r17, 260(r16)
|
|
st.l r17, 324(r16)
|
|
st.l r17, 388(r16)
|
|
st.l r17, 452(r16)
|
|
st.l r17, 516(r16)
|
|
|
|
ld.l r0(r16), r16
|
|
|
|
xor 0x0000, r16, r0
|
|
bnc.t .DB.B12151215
|
|
st.l r17, 68(r16)
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1216: //.B0096
|
|
// lineno: 1478
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_solve:
|
|
.a18 = 0
|
|
.f18 = 32
|
|
orh h%.STACK+.f18-16, r0, r28
|
|
or l%.STACK+.f18-16, r28, r28
|
|
st.l r4, -8(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
adds 1, r0, r19
|
|
// lineno: 1506
|
|
fld.l r0(r17), f8
|
|
fld.l 4(r17), f9
|
|
fld.l 8(r17), f10
|
|
fld.l 12(r17), f11
|
|
addu 8, r16, r4
|
|
bte 0x0000, r4, .B1230
|
|
// lineno: 1514
|
|
.B2012: //.M0013
|
|
fld.l 32(r4), f16
|
|
.DB.B20122012:
|
|
fld.l 36(r4), f18
|
|
fld.l 40(r4), f21
|
|
fmul.ss f8, f16, f17
|
|
fld.l 44(r4), f24
|
|
|
|
fmul.ss f9, f18, f19
|
|
|
|
|
|
fadd.ss f19, f17, f20
|
|
|
|
|
|
fmul.ss f10, f21, f22
|
|
|
|
|
|
fadd.ss f22, f20, f23
|
|
|
|
|
|
fmul.ss f11, f24, f25
|
|
|
|
|
|
fadd.ss f25, f23, f26
|
|
|
|
|
|
pfle.ss f26, f0, f0
|
|
|
|
bnc .B1232
|
|
st.l r19, 60(r4)
|
|
adds 3, r0, r18
|
|
ld.l 8(r4), r29
|
|
addu 16, r4, r24
|
|
st.l r19, 76(r29)
|
|
addu 4, r4, r25
|
|
ld.l 12(r4), r30
|
|
|
|
st.l r19, 76(r30)
|
|
|
|
ld.l 16(r4), r22
|
|
|
|
st.l r19, 76(r22)
|
|
|
|
ld.l 4(r4), r23
|
|
|
|
subs r18, r23, r0
|
|
|
|
bnc .B1235
|
|
mov r24, r20
|
|
mov r25, r21
|
|
// lineno: 1525
|
|
.B2011: //.M0012
|
|
ld.l 4(r20), r29
|
|
.DB.B20112011:
|
|
addu 4, r20, r20
|
|
st.l r19, 76(r29)
|
|
adds r19, r18, r18
|
|
ld.l r0(r21), r30
|
|
|
|
subs r18, r30, r0
|
|
|
|
bc.t .DB.B20112011
|
|
ld.l 4(r20), r29
|
|
// lineno: 0
|
|
// lineno: 1527
|
|
.B1235: //.B0101
|
|
br .B1237
|
|
nop
|
|
// lineno: 1531
|
|
.B1232: //.B0099
|
|
st.l r0, 60(r4)
|
|
.DB.B12321232:
|
|
// lineno: 1533
|
|
.B1237: //.B0102
|
|
ld.l r0(r4), r4
|
|
.DB.B12371237:
|
|
|
|
xor 0x0000, r4, r0
|
|
bnc.t .DB.B20122012
|
|
fld.l 32(r4), f16
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1230: //.B0098
|
|
// lineno: 1534
|
|
|
|
|
|
|
|
|
|
ld.l -8(r28), r4
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_clip_vertex_copy:
|
|
.a19 = 0
|
|
.f19 = 32
|
|
orh h%.STACK+.f19-16, r0, r28
|
|
or l%.STACK+.f19-16, r28, r28
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 1598
|
|
mov r17, r29
|
|
mov r29, r30
|
|
fld.l 32(r29)++, f18
|
|
mov r16, r18
|
|
mov r18, r19
|
|
fst.l f18, 32(r18)++
|
|
mov r30, r20
|
|
fld.l 4(r29)++, f19
|
|
mov r19, r21
|
|
|
|
fst.l f19, 4(r18)++
|
|
|
|
fld.l 4(r29), f20
|
|
|
|
|
|
fst.l f20, 4(r18)
|
|
|
|
fld.l 48(r30)++, f22
|
|
|
|
|
|
fst.l f22, 48(r19)++
|
|
|
|
fld.l 4(r30)++, f23
|
|
|
|
|
|
fst.l f23, 4(r19)++
|
|
|
|
fld.l 4(r30)++, f24
|
|
|
|
|
|
fst.l f24, 4(r19)++
|
|
|
|
fld.l 4(r30), f25
|
|
|
|
|
|
fst.l f25, 4(r19)
|
|
|
|
fld.l 64(r20)++, f26
|
|
|
|
|
|
fst.l f26, 64(r21)++
|
|
|
|
fld.l 4(r20)++, f27
|
|
|
|
|
|
fst.l f27, 4(r21)++
|
|
|
|
fld.l 4(r20)++, f28
|
|
addu 4, r20, r23
|
|
st.l r23, -8(r28)
|
|
fst.l f28, 4(r21)++
|
|
addu 4, r21, r22
|
|
bri r1
|
|
st.l r22, -4(r28)
|
|
// lineno: 1614
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_and_project:
|
|
.a20 = 0
|
|
.f20 = 48
|
|
orh h%.STACK+.f20-16, r0, r28
|
|
or l%.STACK+.f20-16, r28, r28
|
|
fst.d f2, -16(r28)
|
|
st.l r4, -8(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%.C00037, r0, r31
|
|
fld.l l%.C00037(r31), f9
|
|
adds -1, r0, r19
|
|
// lineno: 1627
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f16
|
|
fld.l 172(r16), f17
|
|
fld.l 144(r16), f19
|
|
fld.l 176(r16), f21
|
|
fadd.ss f17, f16, f18
|
|
orh ha%_sub_pixel_correct, r0, r31
|
|
fld.l l%_sub_pixel_correct(r31), f10
|
|
fmul.ss f19, f18, f20
|
|
fld.l 152(r16), f23
|
|
fld.l 164(r16), f25
|
|
fadd.ss f10, f20, f2
|
|
fld.l 128(r16), f26
|
|
ld.l 4(r18), r4
|
|
fadd.ss f21, f16, f22
|
|
orh ha%_Czscale, r0, r31
|
|
fld.l l%_Czscale(r31), f28
|
|
fmul.ss f23, f22, f24
|
|
addu 8, r18, r21
|
|
|
|
fadd.ss f10, f24, f14
|
|
|
|
|
|
fmul.ss f26, f25, f27
|
|
|
|
|
|
fmul.ss f28, f27, f12
|
|
|
|
|
|
fmul.ss f26, f19, f15
|
|
|
|
|
|
|
|
subs 0, r4, r0
|
|
fmul.ss f26, f23, f13
|
|
bnc .B1266
|
|
adds -1, r4, r20
|
|
bla r19, r20,.B2040
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 1639
|
|
.B2040: //.M0014
|
|
.align 8
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
|
|
.PL2001:
|
|
d.fnop
|
|
fld.l 56(r21), f16
|
|
.DB.B20402040:
|
|
d.fnop
|
|
fld.l 48(r21), f20
|
|
d.fnop
|
|
fld.l 52(r21), f11
|
|
d.frcp.ss f16, f17
|
|
nop
|
|
d.pfmul.ss f16, f17, f0
|
|
nop
|
|
d.pfmul.ss f15, f20, f0
|
|
nop
|
|
d.pfmul.ss f13, f11, f0
|
|
nop
|
|
d.mi2s1.ss f9, f0, f30
|
|
nop
|
|
d.mm12msm.ss f0, f0, f21
|
|
nop
|
|
d.mm12msm.ss f0, f0, f18
|
|
nop
|
|
d.m12tpa.ss f17, f30, f30
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f16, f17, f17
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.mi2s1.ss f9, f0, f30
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f20
|
|
nop
|
|
d.pfmul.ss f17, f20, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f21, f16, f16
|
|
nop
|
|
d.pfmul.ss f18, f16, f0
|
|
nop
|
|
d.pfmul.ss f12, f16, f0
|
|
nop
|
|
d.mi2p1.ss f2, f0, f30
|
|
nop
|
|
d.mi2p1.ss f14, f0, f30
|
|
nop
|
|
d.mm12msm.ss f0, f0, f30
|
|
fst.l f30, 56(r21)
|
|
d.pfsub.ss f30, f10, f30
|
|
nop
|
|
d.pfsub.ss f30, f10, f30
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f30
|
|
fst.l f30, 48(r21)
|
|
d.pfadd.ss f0, f0, f30
|
|
fst.l f30, 52(r21)
|
|
d.fiadd.ss f16, f0, f8
|
|
nop
|
|
d.fnop
|
|
ld.l 44(r21), r21
|
|
d.fnop
|
|
bla r19, r20, .PL2001
|
|
d.fnop
|
|
nop
|
|
.align 8
|
|
fnop
|
|
nop
|
|
fnop
|
|
nop
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1266: //.B0104
|
|
// lineno: 1648
|
|
|
|
|
|
|
|
|
|
fld.d -16(r28), f2
|
|
ld.l -8(r28), r4
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_xform_and_project:
|
|
.a21 = 0
|
|
.f21 = 96
|
|
orh h%.STACK+.f21-16, r0, r28
|
|
or l%.STACK+.f21-16, r28, r28
|
|
fst.d f2, -72(r28)
|
|
fst.d f4, -64(r28)
|
|
fst.d f6, -56(r28)
|
|
st.l r4, -48(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%.C00037, r0, r31
|
|
fld.l l%.C00037(r31), f15
|
|
adds -1, r0, r19
|
|
// lineno: 1667
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f16
|
|
fld.l 172(r16), f17
|
|
fld.l 144(r16), f19
|
|
fld.l 176(r16), f22
|
|
fadd.ss f17, f16, f18
|
|
orh ha%_sub_pixel_correct, r0, r31
|
|
fld.l l%_sub_pixel_correct(r31), f2
|
|
fmul.ss f19, f18, f20
|
|
fld.l 152(r16), f24
|
|
fld.l 164(r16), f26
|
|
fadd.ss f2, f20, f21
|
|
fld.l 128(r16), f27
|
|
fld.l 8(r17), f31
|
|
fst.l f21, -40(r28)
|
|
fadd.ss f22, f16, f23
|
|
orh ha%_Czscale, r0, r31
|
|
fld.l l%_Czscale(r31), f29
|
|
fmul.ss f24, f23, f25
|
|
fld.l 12(r17), f17
|
|
fld.l 24(r17), f18
|
|
fadd.ss f2, f25, f7
|
|
fld.l 28(r17), f20
|
|
fld.l 40(r17), f21
|
|
fmul.ss f27, f26, f28
|
|
fld.l 44(r17), f16
|
|
fld.l 56(r17), f22
|
|
fmul.ss f29, f28, f5
|
|
fld.l 60(r17), f23
|
|
fld.l 16(r17), f11
|
|
fmul.ss f27, f19, f30
|
|
fld.l 32(r17), f12
|
|
fld.l 48(r17), f13
|
|
fst.l f30, -36(r28)
|
|
fmul.ss f27, f24, f6
|
|
fld.l 64(r17), f14
|
|
ld.l 4(r18), r4
|
|
fst.l f31, -4(r28)
|
|
fst.l f17, -8(r28)
|
|
fst.l f18, -12(r28)
|
|
fst.l f20, -16(r28)
|
|
fst.l f21, -20(r28)
|
|
fst.l f16, -24(r28)
|
|
fst.l f22, -28(r28)
|
|
fst.l f23, -32(r28)
|
|
addu 8, r18, r21
|
|
subs 0, r4, r0
|
|
|
|
bnc .B1301
|
|
adds -1, r4, r20
|
|
bla r19, r20,.B2073
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 1693
|
|
.B2073: //.M0015
|
|
.align 8
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
.align 8
|
|
.PD0.B2073105:
|
|
d.fnop
|
|
fld.l r0(r21), f16
|
|
.DB.B20732073:
|
|
d.fnop
|
|
fld.l 4(r21), f9
|
|
d.fnop
|
|
fld.l 8(r21), f20
|
|
d.pfmul.ss f16, f11, f0
|
|
fld.l -4(r28), f31
|
|
d.pfmul.ss f9, f12, f0
|
|
nop
|
|
d.pfmul.ss f20, f13, f0
|
|
nop
|
|
d.pfmul.ss f31, f16, f17
|
|
nop
|
|
d.mi2p1.ss f17, f0, f18
|
|
fld.l -12(r28), f31
|
|
d.mm12msm.ss f0, f0, f21
|
|
nop
|
|
d.mm12msm.ss f0, f0, f18
|
|
nop
|
|
d.pfadd.ss f21, f19, f19
|
|
nop
|
|
d.mm12msm.ss f31, f9, f0
|
|
fld.l -20(r28), f21
|
|
d.mm12msm.ss f0, f0, f0
|
|
nop
|
|
d.ia1p2.ss f14, f22, f22
|
|
nop
|
|
d.mm12msm.ss f0, f0, f17
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f23
|
|
nop
|
|
d.frcp.ss f23, f24
|
|
nop
|
|
d.pfmul.ss f23, f24, f0
|
|
nop
|
|
d.ia1p2.ss f18, f17, f0
|
|
nop
|
|
d.mm12msm.ss f21, f20, f0
|
|
fld.l -28(r28), f17
|
|
d.mi2s1.ss f15, f0, f25
|
|
fld.l -36(r28), f18
|
|
d.ia1p2.ss f0, f0, f19
|
|
nop
|
|
d.mi2p1.ss f19, f0, f31
|
|
nop
|
|
d.m12tpa.ss f24, f26, f26
|
|
fld.l -40(r28), f31
|
|
d.mm12msm.ss f0, f0, f0
|
|
fld.l -8(r28), f24
|
|
d.ia1p2.ss f17, f22, f22
|
|
nop
|
|
d.mm12msm.ss f23, f27, f27
|
|
fld.l -16(r28), f17
|
|
d.mm12msm.ss f16, f24, f0
|
|
nop
|
|
d.m12tpa.ss f18, f4, f4
|
|
nop
|
|
d.mi2s1.ss f15, f0, f28
|
|
fld.l -24(r28), f18
|
|
d.mm12msm.ss f0, f0, f22
|
|
nop
|
|
d.mm12msm.ss f9, f17, f21
|
|
nop
|
|
d.m12tpa.ss f20, f18, f29
|
|
nop
|
|
d.pfmul.ss f27, f29, f0
|
|
fld.l -32(r28), f18
|
|
d.mi2p1.ss f22, f0, f24
|
|
nop
|
|
d.mm12msm.ss f0, f0, f28
|
|
nop
|
|
d.mm12msm.ss f21, f30, f30
|
|
nop
|
|
d.ia1p2.ss f28, f16, f16
|
|
nop
|
|
d.mm12msm.ss f5, f30, f0
|
|
nop
|
|
d.mi2p1.ss f31, f0, f25
|
|
nop
|
|
d.ia1p2.ss f18, f17, f17
|
|
nop
|
|
d.mm12msm.ss f0, f0, f24
|
|
fst.l f24, 56(r21)
|
|
d.pfsub.ss f19, f2, f19
|
|
nop
|
|
d.m12tpa.ss f6, f3, f3
|
|
nop
|
|
d.mm12msm.ss f0, f0, f0
|
|
nop
|
|
d.ia1p2.ss f0, f0, f26
|
|
fst.l f26, 48(r21)
|
|
d.pfmul.ss f30, f20, f20
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.mi2p1.ss f7, f0, f29
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfsub.ss f27, f2, f27
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f23
|
|
fst.l f23, 52(r21)
|
|
d.fiadd.ss f30, f0, f8
|
|
nop
|
|
d.fnop
|
|
ld.l 44(r21), r21
|
|
d.fnop
|
|
bla r19, r20, .PD0.B2073105
|
|
d.fnop
|
|
nop
|
|
.align 8
|
|
fnop
|
|
nop
|
|
fnop
|
|
nop
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1301: //.B0106
|
|
// lineno: 1707
|
|
|
|
|
|
|
|
|
|
fld.d -72(r28), f2
|
|
fld.d -64(r28), f4
|
|
fld.d -56(r28), f6
|
|
ld.l -48(r28), r4
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_xform:
|
|
.a22 = 0
|
|
.f22 = 64
|
|
orh h%.STACK+.f22-16, r0, r28
|
|
or l%.STACK+.f22-16, r28, r28
|
|
fst.d f2, -40(r28)
|
|
fst.d f4, -32(r28)
|
|
fst.d f6, -24(r28)
|
|
st.l r4, -16(r28)
|
|
st.l r5, -12(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
adds -1, r0, r19
|
|
// lineno: 1716
|
|
fld.l 56(r17), f16
|
|
fld.l 8(r17), f5
|
|
fld.l 12(r17), f15
|
|
fst.l f16, -4(r28)
|
|
addu 8, r18, r21
|
|
fld.l 16(r17), f11
|
|
fld.l 24(r17), f6
|
|
fld.l 28(r17), f2
|
|
fld.l 32(r17), f12
|
|
fld.l 40(r17), f7
|
|
fld.l 44(r17), f3
|
|
fld.l 48(r17), f13
|
|
fld.l 60(r17), f4
|
|
fld.l 64(r17), f14
|
|
ld.l 4(r18), r5
|
|
|
|
subs 0, r5, r0
|
|
|
|
bnc .B1329
|
|
adds -1, r5, r20
|
|
bla r19, r20,.B2098
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 1737
|
|
.B2098: //.M0016
|
|
ld.l 76(r21), r29
|
|
.DB.B20982098:
|
|
|
|
bte 0x0000, r29, .B1331
|
|
fld.l r0(r21), f10
|
|
fld.l 4(r21), f9
|
|
fld.l 8(r21), f8
|
|
fmul.ss f5, f10, f16
|
|
fld.l -4(r28), f21
|
|
addu 48, r21, r30
|
|
fmul.ss f6, f9, f17
|
|
|
|
|
|
fadd.ss f17, f16, f18
|
|
|
|
|
|
fmul.ss f7, f8, f19
|
|
|
|
|
|
fadd.ss f19, f18, f20
|
|
|
|
|
|
fadd.ss f21, f20, f22
|
|
|
|
|
|
fst.l f22, r0(r30)
|
|
fmul.ss f10, f15, f23
|
|
|
|
|
|
fmul.ss f9, f2, f24
|
|
|
|
|
|
fadd.ss f24, f23, f25
|
|
|
|
|
|
fmul.ss f8, f3, f26
|
|
|
|
|
|
fadd.ss f26, f25, f27
|
|
|
|
|
|
fadd.ss f4, f27, f28
|
|
|
|
|
|
fst.l f28, 4(r30)
|
|
fmul.ss f10, f11, f29
|
|
|
|
|
|
fmul.ss f9, f12, f30
|
|
|
|
|
|
fadd.ss f30, f29, f31
|
|
|
|
|
|
fmul.ss f8, f13, f16
|
|
|
|
|
|
fadd.ss f16, f31, f17
|
|
|
|
|
|
fadd.ss f14, f17, f18
|
|
|
|
|
|
fst.l f18, 8(r30)
|
|
// lineno: 1748
|
|
.B1331: //.B0109
|
|
bla r19, r20, .B2098
|
|
ld.l 44(r21), r21
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1329: //.B0108
|
|
// lineno: 1749
|
|
|
|
|
|
|
|
|
|
fld.d -40(r28), f2
|
|
fld.d -32(r28), f4
|
|
fld.d -24(r28), f6
|
|
ld.l -16(r28), r4
|
|
ld.l -12(r28), r5
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_do_clipping:
|
|
.a23 = 0
|
|
.f23 = 112
|
|
orh h%.STACK+.f23-16, r0, r28
|
|
or l%.STACK+.f23-16, r28, r28
|
|
st.l r4, -80(r28)
|
|
st.l r5, -76(r28)
|
|
st.l r6, -72(r28)
|
|
st.l r7, -68(r28)
|
|
st.l r8, -64(r28)
|
|
st.l r9, -60(r28)
|
|
st.l r10, -56(r28)
|
|
st.l r11, -52(r28)
|
|
st.l r12, -48(r28)
|
|
st.l r13, -44(r28)
|
|
st.l r14, -40(r28)
|
|
st.l r15, -36(r28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%.C00037, r0, r31
|
|
fld.l l%.C00037(r31), f13
|
|
adds -1, r0, r20
|
|
// lineno: 1761
|
|
ld.l r0(r17), r29
|
|
mov r0, r4
|
|
fld.l 56(r29), f11
|
|
mov r0, r4
|
|
addu 68, r16, r30
|
|
fsub.ss f11, f8, f14
|
|
st.l r30, -4(r28)
|
|
addu 72, r16, r22
|
|
pfle.ss f0, f14, f0
|
|
shl r0, r0, r6
|
|
bc ..L1
|
|
adds 1, r0, r6
|
|
..L1:
|
|
st.l r22, -8(r28)
|
|
addu 76, r16, r23
|
|
st.l r23, -12(r28)
|
|
addu 36, r16, r24
|
|
st.l r24, -16(r28)
|
|
addu 56, r16, r25
|
|
st.l r25, -20(r28)
|
|
addu 48, r16, r26
|
|
st.l r26, -24(r28)
|
|
addu 52, r16, r27
|
|
st.l r27, -28(r28)
|
|
addu 40, r16, r29
|
|
st.l r29, -32(r28)
|
|
adds 2, r0, r21
|
|
and 0x0003, r19, r7
|
|
and 0x0010, r19, r8
|
|
and 0x0008, r19, r9
|
|
addu 32, r16, r14
|
|
addu 64, r16, r15
|
|
bla r20, r21,.B2144
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 1771
|
|
.B2144: //.M0017
|
|
ld.l r0(r18), r29
|
|
.DB.B21442144:
|
|
|
|
fld.l 56(r29), f9
|
|
|
|
|
|
fsub.ss f9, f8, f12
|
|
|
|
|
|
pfle.ss f0, f12, f0
|
|
shl r0, r0, r5
|
|
bc ..L2
|
|
adds 1, r0, r5
|
|
..L2:
|
|
bte 0x0000, r6, .B1346
|
|
bte 0x0000, r5, .B1346
|
|
fld.l 32(r29)++, f16
|
|
mov r14, r30
|
|
mov r30, r22
|
|
fst.l f16, r0(r14)
|
|
mov r15, r27
|
|
fld.l 4(r29)++, f17
|
|
ld.l -24(r28), r24
|
|
addu 80, r22, r14
|
|
fst.l f17, 4(r30)++
|
|
mov r24, r25
|
|
fld.l 4(r29), f18
|
|
mov r27, r29
|
|
adds 1, r4, r4
|
|
fst.l f18, 4(r30)
|
|
fiadd.ss f9, f0, f11
|
|
ld.l r0(r18), r23
|
|
ld.l -4(r28), r30
|
|
fld.l 48(r23)++, f19
|
|
addu 80, r30, r30
|
|
st.l r30, -4(r28)
|
|
fst.l f19, r0(r24)
|
|
fiadd.ss f12, f0, f14
|
|
fld.l 4(r23)++, f20
|
|
ld.l -8(r28), r30
|
|
mov r18, r17
|
|
fst.l f20, 4(r24)++
|
|
addu 80, r30, r30
|
|
fld.l 4(r23)++, f21
|
|
st.l r30, -8(r28)
|
|
mov r5, r6
|
|
fst.l f21, 4(r24)++
|
|
|
|
fld.l 4(r23), f22
|
|
ld.l -12(r28), r30
|
|
ld.l -16(r28), r23
|
|
fst.l f22, 4(r24)
|
|
addu 80, r30, r30
|
|
ld.l r0(r18), r26
|
|
addu 80, r23, r23
|
|
fld.l 64(r26)++, f23
|
|
st.l r30, -12(r28)
|
|
st.l r23, -16(r28)
|
|
fst.l f23, r0(r15)
|
|
addu 80, r25, r30
|
|
fld.l 4(r26)++, f24
|
|
ld.l -20(r28), r24
|
|
st.l r30, -24(r28)
|
|
fst.l f24, 4(r27)++
|
|
addu 80, r24, r24
|
|
fld.l 4(r26)++, f25
|
|
addu 4, r26, r12
|
|
st.l r24, -20(r28)
|
|
fst.l f25, 4(r27)++
|
|
addu 4, r27, r13
|
|
ld.l -28(r28), r23
|
|
ld.l -32(r28), r25
|
|
addu 80, r23, r23
|
|
st.l r23, -28(r28)
|
|
addu 80, r25, r25
|
|
st.l r25, -32(r28)
|
|
addu 80, r29, r15
|
|
bla r20, r21, .B2144
|
|
addu 4, r18, r18
|
|
br .B2145
|
|
nop
|
|
// lineno: 1801
|
|
.B1346: //.B0112
|
|
btne 0x0000, r5, .B1354
|
|
bte 0x0000, r6, .B1353
|
|
// lineno: 1805
|
|
.B1354: //.B0115
|
|
fsub.ss f9, f11, f16
|
|
.DB.B13541354:
|
|
ld.l -20(r28), r29
|
|
ld.l -24(r28), r23
|
|
frcp.ss f16, f17
|
|
fmul.ss f16, f17, f18
|
|
ld.l -28(r28), r26
|
|
|
|
fsub.ss f13, f18, f19
|
|
|
|
|
|
fmul.ss f17, f19, f20
|
|
|
|
|
|
fmul.ss f16, f20, f21
|
|
|
|
|
|
fsub.ss f13, f21, f22
|
|
|
|
|
|
fmul.ss f22, f20, f23
|
|
|
|
|
|
fsub.ss f8, f11, f24
|
|
|
|
|
|
fmul.ss f24, f23, f10
|
|
|
|
|
|
fst.l f8, r0(r29)
|
|
|
|
ld.l r0(r17), r30
|
|
ld.l r0(r18), r22
|
|
fld.l 48(r30), f25
|
|
fld.l 48(r22), f26
|
|
ld.l -32(r28), r30
|
|
|
|
fsub.ss f26, f25, f27
|
|
|
|
|
|
fmul.ss f27, f10, f28
|
|
|
|
|
|
fadd.ss f25, f28, f29
|
|
|
|
|
|
fst.l f29, r0(r23)
|
|
|
|
ld.l r0(r17), r24
|
|
ld.l r0(r18), r25
|
|
fld.l 52(r24), f30
|
|
fld.l 52(r25), f31
|
|
|
|
|
|
fsub.ss f31, f30, f15
|
|
|
|
|
|
fmul.ss f10, f15, f18
|
|
|
|
|
|
fadd.ss f30, f18, f19
|
|
|
|
|
|
fst.l f19, r0(r26)
|
|
|
|
ld.l r0(r17), r27
|
|
ld.l r0(r18), r29
|
|
fld.l 40(r27), f17
|
|
fld.l 40(r29), f21
|
|
|
|
|
|
fsub.ss f21, f17, f20
|
|
|
|
|
|
fmul.ss f10, f20, f22
|
|
|
|
|
|
fadd.ss f17, f22, f16
|
|
|
|
|
|
fst.l f16, r0(r30)
|
|
bte 0x0000, r9, .B1357
|
|
ld.l r0(r17), r22
|
|
ld.l r0(r18), r23
|
|
fld.l 32(r22), f23
|
|
fld.l 32(r23), f24
|
|
ld.l -16(r28), r26
|
|
|
|
fsub.ss f24, f23, f26
|
|
|
|
|
|
fmul.ss f10, f26, f27
|
|
|
|
|
|
fadd.ss f23, f27, f28
|
|
|
|
|
|
fst.l f28, r0(r14)
|
|
|
|
ld.l r0(r17), r24
|
|
ld.l r0(r18), r25
|
|
fld.l 36(r24), f25
|
|
fld.l 36(r25), f29
|
|
|
|
|
|
fsub.ss f29, f25, f31
|
|
|
|
|
|
fmul.ss f10, f31, f15
|
|
|
|
|
|
fadd.ss f25, f15, f18
|
|
|
|
|
|
br .B1359
|
|
fst.l f18, r0(r26)
|
|
// lineno: 1819
|
|
.B1357: //.B0116
|
|
bte 0x0000, r8, .B1360
|
|
ld.l r0(r17), r29
|
|
ld.l r0(r18), r30
|
|
fld.l 32(r29), f16
|
|
fld.l 32(r30), f17
|
|
ld.l -16(r28), r24
|
|
|
|
fsub.ss f17, f16, f18
|
|
|
|
|
|
fmul.ss f10, f18, f19
|
|
|
|
|
|
fadd.ss f16, f19, f20
|
|
|
|
|
|
fst.l f20, r0(r14)
|
|
|
|
ld.l r0(r17), r22
|
|
ld.l r0(r18), r23
|
|
fld.l 36(r22), f21
|
|
fld.l 36(r23), f22
|
|
|
|
|
|
fsub.ss f22, f21, f23
|
|
|
|
|
|
fmul.ss f10, f23, f24
|
|
|
|
|
|
fadd.ss f21, f24, f25
|
|
|
|
|
|
fst.l f25, r0(r24)
|
|
// lineno: 0
|
|
.B1360: //.B0118
|
|
// lineno: 1823
|
|
.B1359: //.B0117
|
|
bte 0x0000, r7, .B1362
|
|
ld.l r0(r17), r29
|
|
ld.l r0(r18), r30
|
|
fld.l 64(r29), f16
|
|
fld.l 64(r30), f17
|
|
ld.l -4(r28), r24
|
|
ld.l -8(r28), r27
|
|
fsub.ss f17, f16, f18
|
|
|
|
|
|
fmul.ss f10, f18, f19
|
|
|
|
|
|
fadd.ss f16, f19, f20
|
|
|
|
|
|
fst.l f20, r0(r15)
|
|
|
|
ld.l r0(r17), r22
|
|
ld.l r0(r18), r23
|
|
fld.l 68(r22), f21
|
|
fld.l 68(r23), f22
|
|
ld.l -12(r28), r22
|
|
|
|
fsub.ss f22, f21, f23
|
|
|
|
|
|
fmul.ss f10, f23, f24
|
|
|
|
|
|
fadd.ss f21, f24, f25
|
|
|
|
|
|
fst.l f25, r0(r24)
|
|
|
|
ld.l r0(r17), r25
|
|
ld.l r0(r18), r26
|
|
fld.l 72(r25), f26
|
|
fld.l 72(r26), f27
|
|
|
|
|
|
fsub.ss f27, f26, f28
|
|
|
|
|
|
fmul.ss f10, f28, f29
|
|
|
|
|
|
fadd.ss f26, f29, f30
|
|
|
|
|
|
fst.l f30, r0(r27)
|
|
|
|
ld.l r0(r17), r29
|
|
ld.l r0(r18), r30
|
|
fld.l 76(r29), f31
|
|
fld.l 76(r30), f15
|
|
|
|
|
|
fsub.ss f15, f31, f17
|
|
|
|
|
|
fmul.ss f10, f17, f18
|
|
|
|
|
|
fadd.ss f31, f18, f19
|
|
|
|
|
|
fst.l f19, r0(r22)
|
|
// lineno: 1830
|
|
.B1362: //.B0119
|
|
ld.l -4(r28), r29
|
|
.DB.B13621362:
|
|
ld.l -8(r28), r30
|
|
addu 80, r29, r29
|
|
st.l r29, -4(r28)
|
|
addu 80, r30, r30
|
|
st.l r30, -8(r28)
|
|
addu 80, r15, r15
|
|
ld.l -12(r28), r22
|
|
ld.l -16(r28), r23
|
|
addu 80, r22, r22
|
|
st.l r22, -12(r28)
|
|
addu 80, r23, r23
|
|
st.l r23, -16(r28)
|
|
addu 80, r14, r14
|
|
ld.l -20(r28), r24
|
|
ld.l -24(r28), r25
|
|
addu 80, r24, r24
|
|
st.l r24, -20(r28)
|
|
addu 80, r25, r25
|
|
st.l r25, -24(r28)
|
|
adds 1, r4, r4
|
|
ld.l -28(r28), r26
|
|
ld.l -32(r28), r27
|
|
addu 80, r26, r26
|
|
st.l r26, -28(r28)
|
|
addu 80, r27, r27
|
|
st.l r27, -32(r28)
|
|
// lineno: 1832
|
|
.B1353: //.B0114
|
|
bte 0x0000, r5, .B1364
|
|
ld.l r0(r18), r29
|
|
mov r14, r30
|
|
fld.l 32(r29)++, f16
|
|
mov r30, r22
|
|
ld.l -24(r28), r24
|
|
fst.l f16, r0(r14)
|
|
mov r24, r25
|
|
fld.l 4(r29)++, f17
|
|
mov r15, r27
|
|
addu 80, r22, r14
|
|
fst.l f17, 4(r30)++
|
|
adds 1, r4, r4
|
|
fld.l 4(r29), f18
|
|
mov r27, r29
|
|
|
|
fst.l f18, 4(r30)
|
|
|
|
ld.l r0(r18), r23
|
|
ld.l -4(r28), r30
|
|
fld.l 48(r23)++, f19
|
|
addu 80, r30, r30
|
|
st.l r30, -4(r28)
|
|
fst.l f19, r0(r24)
|
|
|
|
fld.l 4(r23)++, f20
|
|
ld.l -8(r28), r30
|
|
|
|
fst.l f20, 4(r24)++
|
|
addu 80, r30, r30
|
|
fld.l 4(r23)++, f21
|
|
st.l r30, -8(r28)
|
|
|
|
fst.l f21, 4(r24)++
|
|
|
|
fld.l 4(r23), f22
|
|
ld.l -12(r28), r30
|
|
ld.l -16(r28), r23
|
|
fst.l f22, 4(r24)
|
|
addu 80, r30, r30
|
|
ld.l r0(r18), r26
|
|
addu 80, r23, r23
|
|
fld.l 64(r26)++, f23
|
|
st.l r30, -12(r28)
|
|
st.l r23, -16(r28)
|
|
fst.l f23, r0(r15)
|
|
addu 80, r25, r30
|
|
fld.l 4(r26)++, f24
|
|
ld.l -20(r28), r24
|
|
st.l r30, -24(r28)
|
|
fst.l f24, 4(r27)++
|
|
addu 80, r24, r24
|
|
fld.l 4(r26)++, f25
|
|
addu 4, r26, r10
|
|
st.l r24, -20(r28)
|
|
fst.l f25, 4(r27)++
|
|
addu 4, r27, r11
|
|
ld.l -28(r28), r23
|
|
ld.l -32(r28), r25
|
|
addu 80, r23, r23
|
|
st.l r23, -28(r28)
|
|
addu 80, r25, r25
|
|
st.l r25, -32(r28)
|
|
addu 80, r29, r15
|
|
// lineno: 0
|
|
.B1364: //.B0120
|
|
fiadd.ss f9, f0, f11
|
|
.DB.B13641364:
|
|
mov r18, r17
|
|
fiadd.ss f12, f0, f14
|
|
mov r5, r6
|
|
bla r20, r21, .B2144
|
|
addu 4, r18, r18
|
|
// lineno: 0
|
|
.B2145: //.B0179
|
|
mov r4, r16
|
|
.DB.B21452145:
|
|
// lineno: 0
|
|
// lineno: 1862
|
|
|
|
|
|
|
|
|
|
ld.l -80(r28), r4
|
|
ld.l -76(r28), r5
|
|
ld.l -72(r28), r6
|
|
ld.l -68(r28), r7
|
|
ld.l -64(r28), r8
|
|
ld.l -60(r28), r9
|
|
ld.l -56(r28), r10
|
|
ld.l -52(r28), r11
|
|
ld.l -48(r28), r12
|
|
ld.l -44(r28), r13
|
|
ld.l -40(r28), r14
|
|
ld.l -36(r28), r15
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_clip_triangle:
|
|
.a24 = 80
|
|
.f24 = 80
|
|
addu -(.a24+.f24), sp, sp
|
|
st.l fp,(.f24-16)(sp)
|
|
addu (.f24-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
fst.d f2, -56(fp)
|
|
st.l r4, -48(fp)
|
|
st.l r5, -44(fp)
|
|
st.l r6, -40(fp)
|
|
st.l r7, -36(fp)
|
|
st.l r8, -32(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fiadd.ss f8, f0, f2
|
|
st.l r20, 64(fp)
|
|
st.l r21, 68(fp)
|
|
st.l r23, 76(fp)
|
|
mov r24, r5
|
|
mov r22, r6
|
|
// lineno: 0
|
|
orh h%_clip_vertices, r0, r31
|
|
or l%_clip_vertices, r31, r8
|
|
// lineno: 1877
|
|
fld.l 132(r20), f8
|
|
st.l r17, -16(fp)
|
|
st.l r18, -12(fp)
|
|
st.l r19, -8(fp)
|
|
adds -8, fp, r17
|
|
fld.l 48(r16), f16
|
|
orh ha%_clip_connections, r0, r31
|
|
ld.l l%_clip_connections(r31), r28
|
|
ld.l 68(fp), r29
|
|
addu 8, r28, r7
|
|
fst.l f16, 48(r7)
|
|
adds -16, fp, r18
|
|
fld.l 52(r16), f17
|
|
ld.l r0(r8), r30
|
|
|
|
fst.l f17, 52(r7)
|
|
|
|
fld.l 56(r16), f18
|
|
addu 8, r30, r16
|
|
st.l r16, -4(fp)
|
|
fst.l f18, 56(r7)
|
|
|
|
call _do_clipping
|
|
ld.l 172(r29), r19
|
|
mov r16, r28
|
|
subs 2, r16, r0
|
|
mov r16, r4
|
|
bnc .B1385
|
|
ld.l 64(fp), r16
|
|
ld.l 68(fp), r17
|
|
ld.l r0(r8), r18
|
|
|
|
call _and_project
|
|
st.l r28, 4(r18)
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
adds 1, r0, r20
|
|
fiadd.ss f2, f0, f8
|
|
adds 3, r0, r28
|
|
mov r5, r17
|
|
mov r7, r18
|
|
mov r6, r19
|
|
st.l r28, 4(r7)
|
|
|
|
ld.l 76(fp), r29
|
|
calli r29
|
|
nop
|
|
btne 0x0004, r4, .B1387
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
adds 1, r0, r20
|
|
fiadd.ss f2, f0, f8
|
|
ld.l 12(r7), r28
|
|
mov r5, r17
|
|
mov r7, r18
|
|
mov r6, r19
|
|
st.l r28, -20(fp)
|
|
|
|
ld.l 16(r7), r29
|
|
ld.l 20(r7), r30
|
|
st.l r29, 12(r7)
|
|
st.l r30, 16(r7)
|
|
|
|
ld.l 76(fp), r21
|
|
calli r21
|
|
nop
|
|
ld.l 12(r7), r28
|
|
ld.l -20(fp), r29
|
|
st.l r28, 16(r7)
|
|
st.l r29, 12(r7)
|
|
// lineno: 0
|
|
.B1387: //.B0122
|
|
// lineno: 0
|
|
.B1385: //.B0121
|
|
// lineno: 1916
|
|
|
|
|
|
|
|
|
|
fld.d -56(fp), f2
|
|
ld.l -48(fp), r4
|
|
ld.l -44(fp), r5
|
|
ld.l -40(fp), r6
|
|
ld.l -36(fp), r7
|
|
ld.l -32(fp), r8
|
|
adds .a24+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_draw_unclipped_geometry:
|
|
.a25 = 80
|
|
.f25 = 32
|
|
addu -(.a25+.f25), sp, sp
|
|
st.l fp,(.f25-16)(sp)
|
|
addu (.f25-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r17, 52(fp)
|
|
st.l r18, 56(fp)
|
|
st.l r19, 60(fp)
|
|
// lineno: 1937
|
|
mov r16, r28
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
ld.l 60(fp), r17
|
|
ld.l 16(r28), r29
|
|
ld.l 52(fp), r19
|
|
addu 8, r29, r18
|
|
ld.l 4(r29), r20
|
|
st.l r18, -8(fp)
|
|
st.l r20, -4(fp)
|
|
|
|
ld.l 56(fp), r30
|
|
calli r30
|
|
nop
|
|
// lineno: 1948
|
|
|
|
|
|
|
|
|
|
adds .a25+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_draw_hither_clipped_geometry:
|
|
.a26 = 80
|
|
.f26 = 128
|
|
addu -(.a26+.f26), sp, sp
|
|
st.l fp,(.f26-16)(sp)
|
|
addu (.f26-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
fst.d f2, -96(fp)
|
|
st.l r4, -88(fp)
|
|
st.l r5, -84(fp)
|
|
st.l r6, -80(fp)
|
|
st.l r7, -76(fp)
|
|
st.l r8, -72(fp)
|
|
st.l r9, -68(fp)
|
|
st.l r10, -64(fp)
|
|
st.l r11, -60(fp)
|
|
st.l r12, -56(fp)
|
|
st.l r13, -52(fp)
|
|
st.l r14, -48(fp)
|
|
st.l r15, -44(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fiadd.ss f8, f0, f2
|
|
st.l r16, 48(fp)
|
|
st.l r19, 60(fp)
|
|
st.l r20, 64(fp)
|
|
mov r18, r8
|
|
mov r21, r9
|
|
// lineno: 0
|
|
// lineno: 1962
|
|
ld.l 16(r17), r28
|
|
fld.l 132(r19), f3
|
|
ld.l 4(r28), r29
|
|
addu 8, r28, r12
|
|
st.l r29, -4(fp)
|
|
orh ha%_clip_connections, r0, r31
|
|
ld.l l%_clip_connections(r31), r30
|
|
st.l r0, -12(fp)
|
|
addu 8, r30, r30
|
|
|
|
subs 0, r29, r0
|
|
st.l r30, -8(fp)
|
|
bnc .B1416
|
|
ld.l 60(fp), r13
|
|
addu 4, r30, r16
|
|
st.l r16, -16(fp)
|
|
addu 56, r30, r22
|
|
st.l r22, -20(fp)
|
|
addu 52, r30, r23
|
|
st.l r23, -24(fp)
|
|
addu 48, r30, r24
|
|
st.l r24, -28(fp)
|
|
// lineno: 1970
|
|
.B2226: //.M0021
|
|
ld.l 60(r12), r28
|
|
.DB.B22262226:
|
|
|
|
bte 0x0000, r28, .B1418
|
|
addu 8, r12, r29
|
|
st.l r29, -32(fp)
|
|
|
|
ld.l 4(r12), r15
|
|
st.l r0, -36(fp)
|
|
bte 0x0000, r15, .B1425
|
|
fiadd.ss f3, f0, f8
|
|
mov r15, r18
|
|
mov r0, r20
|
|
mov r29, r21
|
|
// lineno: 1978
|
|
.B2203: //.M0018
|
|
ld.l r0(r21), r28
|
|
.DB.B22032203:
|
|
addu 4, r21, r21
|
|
fld.l 56(r28), f16
|
|
adds -1, r18, r18
|
|
|
|
pfgt.ss f8, f16, f0
|
|
shl r0, r0, r29
|
|
bnc ..L3
|
|
adds 1, r0, r29
|
|
..L3:
|
|
adds r20, r29, r20
|
|
xor 0x0000, r18, r0
|
|
bnc.t .DB.B22032203
|
|
ld.l r0(r21), r28
|
|
// lineno: 0
|
|
mov r18, r15
|
|
st.l r20, -36(fp)
|
|
st.l r21, -32(fp)
|
|
// lineno: 1980
|
|
.B1425: //.B0127
|
|
ld.l -36(fp), r28
|
|
.DB.B14251425:
|
|
|
|
btne 0x0000, r28, .B1427
|
|
orh ha%_clip_vertices, r0, r31
|
|
ld.l l%_clip_vertices(r31), r29
|
|
addu 8, r12, r30
|
|
addu 8, r29, r29
|
|
st.l r29, -40(fp)
|
|
st.l r30, -32(fp)
|
|
|
|
ld.l 4(r12), r15
|
|
|
|
bte 0x0000, r15, .B1430
|
|
mov r15, r4
|
|
mov r29, r5
|
|
mov r30, r6
|
|
// lineno: 1990
|
|
.B2204: //.M0019
|
|
ld.l r0(r6), r17
|
|
.DB.B22042204:
|
|
call _clip_vertex_copy
|
|
mov r5, r16
|
|
addu 4, r6, r6
|
|
addu 80, r5, r5
|
|
adds -1, r4, r4
|
|
xor 0x0000, r4, r0
|
|
bnc.t .DB.B22042204
|
|
ld.l r0(r6), r17
|
|
// lineno: 0
|
|
mov r4, r15
|
|
st.l r5, -40(fp)
|
|
st.l r6, -32(fp)
|
|
// lineno: 1993
|
|
.B1430: //.B0130
|
|
fld.l 48(r12), f16
|
|
.DB.B14301430:
|
|
ld.l -28(fp), r28
|
|
ld.l -24(fp), r29
|
|
fst.l f16, r0(r28)
|
|
|
|
fld.l 52(r12), f17
|
|
ld.l -20(fp), r30
|
|
ld.l -16(fp), r23
|
|
fst.l f17, r0(r29)
|
|
|
|
fld.l 56(r12), f18
|
|
orh ha%_clip_vertices, r0, r31
|
|
ld.l l%_clip_vertices(r31), r18
|
|
fst.l f18, r0(r30)
|
|
|
|
ld.l 4(r12), r16
|
|
ld.l 48(fp), r17
|
|
st.l r16, 4(r18)
|
|
mov r13, r16
|
|
ld.l 4(r12), r22
|
|
|
|
call _and_project
|
|
st.l r22, 0(r23)
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
ld.l -8(fp), r18
|
|
fiadd.ss f2, f0, f8
|
|
adds 1, r0, r20
|
|
mov r9, r17
|
|
mov r8, r19
|
|
ld.l 64(fp), r28
|
|
|
|
orh h%.B1432, r0, r1
|
|
bri r28
|
|
or l%.B1432, r1, r1
|
|
// lineno: 2017
|
|
.B1427: //.B0128
|
|
ld.l 4(r12), r28
|
|
.DB.B14271427:
|
|
ld.l -36(fp), r29
|
|
addu 4, r12, r16
|
|
subs r29, r28, r0
|
|
|
|
bnc .B1433
|
|
mov r0, r7
|
|
adds -2, r28, r30
|
|
subs 0, r30, r0
|
|
|
|
bnc .B1436
|
|
ld.l 48(fp), r4
|
|
ld.l 64(fp), r5
|
|
mov r0, r7
|
|
addu 12, r12, r10
|
|
addu 16, r12, r11
|
|
mov r16, r6
|
|
addu 8, r12, r14
|
|
// lineno: 2025
|
|
.B2217: //.M0020
|
|
mov r12, r16
|
|
.DB.B22172217:
|
|
ld.l r0(r14), r17
|
|
ld.l r0(r10), r18
|
|
ld.l r0(r11), r19
|
|
|
|
|
|
mov r13, r20
|
|
mov r4, r21
|
|
mov r8, r22
|
|
mov r5, r23
|
|
mov r9, r24
|
|
call _clip_triangle
|
|
fiadd.ss f2, f0, f8
|
|
ld.l r0(r6), r28
|
|
adds 1, r7, r7
|
|
adds -2, r28, r29
|
|
addu 4, r10, r10
|
|
addu 4, r11, r11
|
|
subs r7, r29, r0
|
|
|
|
bc.t .DB.B22172217
|
|
mov r12, r16
|
|
// lineno: 0
|
|
// lineno: 2026
|
|
.B1436: //.B0134
|
|
// lineno: 0
|
|
.B1433: //.B0132
|
|
// lineno: 0
|
|
.B1432: //.B0131
|
|
// lineno: 2030
|
|
.B1418: //.B0125
|
|
ld.l -12(fp), r28
|
|
.DB.B14181418:
|
|
ld.l r0(r12), r12
|
|
adds 1, r28, r29
|
|
st.l r29, -12(fp)
|
|
|
|
ld.l -4(fp), r30
|
|
|
|
subs r29, r30, r0
|
|
|
|
bc.t .DB.B22262226
|
|
ld.l 60(r12), r28
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1416: //.B0124
|
|
// lineno: 2031
|
|
|
|
|
|
|
|
|
|
fld.d -96(fp), f2
|
|
ld.l -88(fp), r4
|
|
ld.l -84(fp), r5
|
|
ld.l -80(fp), r6
|
|
ld.l -76(fp), r7
|
|
ld.l -72(fp), r8
|
|
ld.l -68(fp), r9
|
|
ld.l -64(fp), r10
|
|
ld.l -60(fp), r11
|
|
ld.l -56(fp), r12
|
|
ld.l -52(fp), r13
|
|
ld.l -48(fp), r14
|
|
ld.l -44(fp), r15
|
|
adds .a26+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_draw_geogroup:
|
|
.a27 = 80
|
|
.f27 = 160
|
|
addu -(.a27+.f27), sp, sp
|
|
st.l fp,(.f27-16)(sp)
|
|
addu (.f27-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
fst.d f2, -128(fp)
|
|
st.l r4, -120(fp)
|
|
st.l r5, -116(fp)
|
|
st.l r6, -112(fp)
|
|
st.l r7, -108(fp)
|
|
st.l r8, -104(fp)
|
|
st.l r9, -100(fp)
|
|
st.l r10, -96(fp)
|
|
st.l r11, -92(fp)
|
|
st.l r12, -88(fp)
|
|
st.l r13, -84(fp)
|
|
st.l r14, -80(fp)
|
|
st.l r15, -76(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
st.l r17, 52(fp)
|
|
st.l r18, 56(fp)
|
|
// lineno: 0
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f2
|
|
orh ha%.C01491, r0, r31
|
|
fld.l l%.C01491(r31), f3
|
|
// lineno: 2099
|
|
ld.l 4(r17), r28
|
|
ld.l 172(r17), r29
|
|
st.l r28, -4(fp)
|
|
st.l r29, -8(fp)
|
|
|
|
ld.l 168(r17), r30
|
|
ld.l 100(r18), r16
|
|
st.l r30, -12(fp)
|
|
btne 0x0000, r16, .B1454
|
|
call _eval_lmodel
|
|
ld.l 56(fp), r16
|
|
// lineno: 2118
|
|
.B1454: //.B0135
|
|
ld.l -8(fp), r28
|
|
.DB.B14541454:
|
|
|
|
and 0x0200, r28, r0
|
|
bc .B1456
|
|
adds -20, fp, r16
|
|
adds -16, fp, r17
|
|
ld.l 52(fp), r18
|
|
|
|
call _vpx_drawstuff
|
|
addu 184, r18, r19
|
|
st.l r16, -24(fp)
|
|
// lineno: 2121
|
|
.B1456: //.B0136
|
|
ld.l -8(fp), r28
|
|
.DB.B14561456:
|
|
|
|
and 0x0400, r28, r0
|
|
bc .B1457
|
|
adds -32, fp, r16
|
|
adds -28, fp, r17
|
|
ld.l 52(fp), r18
|
|
|
|
call _vpx_drawstuff
|
|
addu 228, r18, r19
|
|
st.l r16, -36(fp)
|
|
// lineno: 2126
|
|
.B1457: //.B0137
|
|
ld.l 52(fp), r28
|
|
.DB.B14571457:
|
|
ld.l -4(fp), r16
|
|
addu 184, r28, r29
|
|
st.l r29, -40(fp)
|
|
addu 228, r28, r30
|
|
st.l r30, -44(fp)
|
|
|
|
ld.l 56(r16), r13
|
|
|
|
bte 0x0000, r13, .B1459
|
|
ld.l -12(fp), r19
|
|
ld.l -8(fp), r20
|
|
and 0x0010, r19, r4
|
|
and 0x0002, r20, r5
|
|
and 0x0001, r20, r6
|
|
and 0x0003, r20, r7
|
|
and 0x0400, r20, r8
|
|
and 0x0200, r20, r9
|
|
ld.l 48(fp), r11
|
|
addu 136, r28, r21
|
|
st.l r21, -48(fp)
|
|
addu 40, r29, r22
|
|
st.l r22, -52(fp)
|
|
addu 36, r29, r23
|
|
st.l r23, -56(fp)
|
|
addu 152, r28, r24
|
|
st.l r24, -60(fp)
|
|
addu 40, r30, r25
|
|
st.l r25, -64(fp)
|
|
addu 36, r30, r26
|
|
st.l r26, -68(fp)
|
|
mov r28, r12
|
|
// lineno: 2130
|
|
.B2279: //.M0022
|
|
ld.l r0(r13), r10
|
|
.DB.B22792279:
|
|
ld.l -24(fp), r14
|
|
ld.l 24(r10), r28
|
|
ld.l -36(fp), r15
|
|
bte 0x0000, r28, .B1464
|
|
orh h%_tri_zb_rgb, r0, r31
|
|
or l%_tri_zb_rgb, r31, r29
|
|
btne r29, r14, .B1466
|
|
br .B1467
|
|
mov r29, r14
|
|
// lineno: 2137
|
|
.B1466: //.B0141
|
|
orh h%_tri_zb_rgb_t, r0, r31
|
|
.DB.B14661466:
|
|
or l%_tri_zb_rgb_t, r31, r28
|
|
ld.l -24(fp), r29
|
|
|
|
btne r28, r29, .B1468
|
|
orh h%_tri_zb_rgb_o_t, r0, r31
|
|
or l%_tri_zb_rgb_o_t, r31, r14
|
|
// lineno: 0
|
|
.B1468: //.B0143
|
|
// lineno: 2141
|
|
.B1467: //.B0142
|
|
orh h%_tri_zb_rgb, r0, r31
|
|
.DB.B14671467:
|
|
or l%_tri_zb_rgb, r31, r28
|
|
ld.l -36(fp), r29
|
|
|
|
btne r28, r29, .B1469
|
|
br .B1470
|
|
mov r28, r15
|
|
// lineno: 2143
|
|
.B1469: //.B0144
|
|
orh h%_tri_zb_rgb_t, r0, r31
|
|
.DB.B14691469:
|
|
or l%_tri_zb_rgb_t, r31, r28
|
|
ld.l -36(fp), r29
|
|
|
|
btne r28, r29, .B1471
|
|
orh h%_tri_zb_rgb_o_t, r0, r31
|
|
or l%_tri_zb_rgb_o_t, r31, r15
|
|
// lineno: 0
|
|
.B1471: //.B0146
|
|
// lineno: 0
|
|
.B1470: //.B0145
|
|
// lineno: 2148
|
|
.B1464: //.B0140
|
|
bte 0x0000, r9, .B1472
|
|
ld.l -56(fp), r28
|
|
ld.l -52(fp), r29
|
|
fld.l r0(r28), f16
|
|
|
|
orh ha%_Cdelta_u, r0, r31
|
|
fst.l f16, l%_Cdelta_u(r31)
|
|
|
|
fld.l r0(r29), f17
|
|
|
|
orh ha%_Cdelta_v, r0, r31
|
|
fst.l f17, l%_Cdelta_v(r31)
|
|
|
|
ld.l 20(r10), r16
|
|
|
|
|
|
call _clear_vertices
|
|
mov r0, r17
|
|
ld.l 16(r10), r16
|
|
call _solve_fn
|
|
ld.l -48(fp), r17
|
|
btne 0x0000, r7, .B1474
|
|
ld.l 16(r10), r28
|
|
ld.l 56(fp), r17
|
|
addu 8, r28, r16
|
|
ld.l -40(fp), r18
|
|
ld.l 4(r28), r19
|
|
adds 32, r0, r20
|
|
fiadd.ss f2, f0, f8
|
|
adds 48, r0, r22
|
|
adds 60, r0, r23
|
|
|
|
mov r0, r21
|
|
|
|
orh h%.B1477, r0, r1
|
|
br _light_structure
|
|
or l%.B1477, r1, r1
|
|
// lineno: 2165
|
|
.B1474: //.B0148
|
|
bte 0x0000, r6, .B1478
|
|
ld.l 20(r10), r28
|
|
ld.l 56(fp), r17
|
|
addu 8, r28, r16
|
|
ld.l -40(fp), r18
|
|
ld.l 4(r28), r19
|
|
adds 16, r0, r20
|
|
fiadd.ss f2, f0, f8
|
|
adds 44, r0, r21
|
|
adds 64, r0, r22
|
|
adds 76, r0, r23
|
|
|
|
|
|
|
|
orh h%.B1481, r0, r1
|
|
br _light_structure
|
|
or l%.B1481, r1, r1
|
|
// lineno: 2174
|
|
.B1478: //.B0150
|
|
bte 0x0000, r5, .B1482
|
|
ld.l 20(r10), r28
|
|
ld.l -40(fp), r18
|
|
addu 8, r28, r16
|
|
call _cookize_vertices
|
|
ld.l 4(r28), r17
|
|
// lineno: 0
|
|
.B1482: //.B0152
|
|
// lineno: 0
|
|
.B1481: //.B0151
|
|
// lineno: 2179
|
|
.B1477: //.B0149
|
|
bte 0x0000, r4, .B1483
|
|
mov r11, r16
|
|
mov r12, r17
|
|
call _xform
|
|
ld.l 20(r10), r18
|
|
mov r12, r16
|
|
mov r10, r17
|
|
mov r0, r18
|
|
mov r11, r19
|
|
mov r14, r20
|
|
ld.l -16(fp), r21
|
|
fld.l -20(fp), f8
|
|
|
|
|
|
|
|
orh h%.B1485, r0, r1
|
|
br _draw_hither_clipped_geometry
|
|
or l%.B1485, r1, r1
|
|
// lineno: 2185
|
|
.B1483: //.B0153
|
|
mov r11, r16
|
|
.DB.B14831483:
|
|
mov r12, r17
|
|
call _xform_and_project_fn
|
|
ld.l 20(r10), r18
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
fld.l -20(fp), f8
|
|
ld.l -16(fp), r17
|
|
ld.l 16(r10), r28
|
|
|
|
addu 8, r28, r18
|
|
ld.l 4(r28), r20
|
|
mov r0, r19
|
|
calli r14
|
|
nop
|
|
// lineno: 0
|
|
.B1485: //.B0154
|
|
// lineno: 2204
|
|
.B1472: //.B0147
|
|
bte 0x0000, r8, .B1487
|
|
ld.l -68(fp), r28
|
|
ld.l -64(fp), r29
|
|
fld.l r0(r28), f16
|
|
|
|
orh ha%_Cdelta_u, r0, r31
|
|
fst.l f16, l%_Cdelta_u(r31)
|
|
|
|
fld.l r0(r29), f17
|
|
|
|
orh ha%_Cdelta_v, r0, r31
|
|
fst.l f17, l%_Cdelta_v(r31)
|
|
|
|
ld.l 20(r10), r16
|
|
|
|
|
|
call _clear_vertices
|
|
mov r0, r17
|
|
ld.l 16(r10), r16
|
|
call _solve_fn
|
|
ld.l -60(fp), r17
|
|
btne 0x0000, r7, .B1489
|
|
ld.l 16(r10), r28
|
|
ld.l 56(fp), r17
|
|
addu 8, r28, r16
|
|
ld.l -44(fp), r18
|
|
ld.l 4(r28), r19
|
|
adds 32, r0, r20
|
|
fiadd.ss f3, f0, f8
|
|
adds 48, r0, r22
|
|
adds 60, r0, r23
|
|
|
|
mov r0, r21
|
|
|
|
orh h%.B1492, r0, r1
|
|
br _light_structure
|
|
or l%.B1492, r1, r1
|
|
// lineno: 2222
|
|
.B1489: //.B0156
|
|
bte 0x0000, r6, .B1493
|
|
ld.l 20(r10), r28
|
|
ld.l 56(fp), r17
|
|
addu 8, r28, r16
|
|
ld.l -44(fp), r18
|
|
ld.l 4(r28), r19
|
|
adds 16, r0, r20
|
|
fiadd.ss f3, f0, f8
|
|
adds 44, r0, r21
|
|
adds 64, r0, r22
|
|
adds 76, r0, r23
|
|
|
|
|
|
|
|
orh h%.B1495, r0, r1
|
|
br _light_structure
|
|
or l%.B1495, r1, r1
|
|
// lineno: 2232
|
|
.B1493: //.B0158
|
|
bte 0x0000, r5, .B1496
|
|
ld.l 20(r10), r28
|
|
ld.l -44(fp), r18
|
|
addu 8, r28, r16
|
|
call _cookize_vertices
|
|
ld.l 4(r28), r17
|
|
// lineno: 0
|
|
.B1496: //.B0160
|
|
// lineno: 0
|
|
.B1495: //.B0159
|
|
// lineno: 2238
|
|
.B1492: //.B0157
|
|
bte 0x0000, r4, .B1498
|
|
mov r11, r16
|
|
mov r12, r17
|
|
call _xform
|
|
ld.l 20(r10), r18
|
|
mov r12, r16
|
|
mov r10, r17
|
|
adds 1, r0, r18
|
|
ld.l -28(fp), r21
|
|
mov r11, r19
|
|
mov r15, r20
|
|
fld.l -32(fp), f8
|
|
|
|
|
|
|
|
orh h%.B1500, r0, r1
|
|
br _draw_hither_clipped_geometry
|
|
or l%.B1500, r1, r1
|
|
// lineno: 2244
|
|
.B1498: //.B0161
|
|
mov r11, r16
|
|
.DB.B14981498:
|
|
mov r12, r17
|
|
call _xform_and_project_fn
|
|
ld.l 20(r10), r18
|
|
orh h%_coefficient_ptr, r0, r31
|
|
or l%_coefficient_ptr, r31, r16
|
|
fld.l -32(fp), f8
|
|
ld.l -28(fp), r17
|
|
ld.l 16(r10), r28
|
|
adds 1, r0, r19
|
|
addu 8, r28, r18
|
|
ld.l 4(r28), r20
|
|
calli r15
|
|
nop
|
|
// lineno: 0
|
|
.B1500: //.B0162
|
|
// lineno: 2260
|
|
.B1487: //.B0155
|
|
ld.l 8(r13), r13
|
|
.DB.B14871487:
|
|
|
|
xor 0x0000, r13, r0
|
|
bnc.t .DB.B22792279
|
|
ld.l r0(r13), r10
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B1459: //.B0139
|
|
// lineno: 2261
|
|
|
|
|
|
|
|
|
|
fld.d -128(fp), f2
|
|
ld.l -120(fp), r4
|
|
ld.l -116(fp), r5
|
|
ld.l -112(fp), r6
|
|
ld.l -108(fp), r7
|
|
ld.l -104(fp), r8
|
|
ld.l -100(fp), r9
|
|
ld.l -96(fp), r10
|
|
ld.l -92(fp), r11
|
|
ld.l -88(fp), r12
|
|
ld.l -84(fp), r13
|
|
ld.l -80(fp), r14
|
|
ld.l -76(fp), r15
|
|
adds .a27+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_veloci_draw:
|
|
.a28 = 80
|
|
.f28 = 64
|
|
addu -(.a28+.f28), sp, sp
|
|
st.l fp,(.f28-16)(sp)
|
|
addu (.f28-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -32(fp)
|
|
st.l r5, -28(fp)
|
|
st.l r6, -24(fp)
|
|
st.l r7, -20(fp)
|
|
st.l r8, -16(fp)
|
|
st.l r9, -12(fp)
|
|
st.l r10, -8(fp)
|
|
st.l r11, -4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
// lineno: 0
|
|
// lineno: 2277
|
|
mov r0, r7
|
|
ld.l 260(r16), r11
|
|
|
|
bte 0x0000, r11, .B1510
|
|
ld.l 48(fp), r9
|
|
mov r0, r7
|
|
// lineno: 2284
|
|
.B2294: //.M0024
|
|
ld.l 12(r11), r10
|
|
.DB.B22942294:
|
|
ld.l 8(r11), r28
|
|
addu 16, r11, r5
|
|
addu 8, r11, r29
|
|
subs 0, r28, r0
|
|
mov r0, r4
|
|
bnc .B1515
|
|
mov r0, r4
|
|
mov r29, r8
|
|
// lineno: 2289
|
|
.B2292: //.M0023
|
|
ld.l r0(r5), r28
|
|
.DB.B22922292:
|
|
mov r5, r6
|
|
btne 0x000a, r28, .B1518
|
|
mov r9, r16
|
|
mov r5, r17
|
|
call _draw_geogroup
|
|
mov r7, r18
|
|
br .B1521
|
|
addu 272, r5, r5
|
|
// lineno: 2295
|
|
.B1518: //.B0167
|
|
ld.l r0(r6), r28
|
|
.DB.B15181518:
|
|
|
|
btne 0x0006, r28, .B2293
|
|
mov r5, r7
|
|
br .B1525
|
|
addu 496, r5, r5
|
|
// lineno: 2300
|
|
.B1522: //.B0169
|
|
orh h%.S01526, r0, r31
|
|
.DB.B15221522:
|
|
or l%.S01526, r31, r16
|
|
ld.l r0(r6), r17
|
|
|
|
|
|
orh h%.B2289, r0, r1
|
|
br _printf
|
|
or l%.B2289, r1, r1
|
|
// lineno: 0
|
|
.B1525: //.B0170
|
|
// lineno: 2303
|
|
.B1521: //.B0168
|
|
adds 1, r4, r4
|
|
.DB.B15211521:
|
|
ld.l r0(r8), r28
|
|
|
|
subs r4, r28, r0
|
|
|
|
bc.t .DB.B22922292
|
|
ld.l r0(r5), r28
|
|
// lineno: 0
|
|
br .B1515
|
|
nop
|
|
// lineno: 0
|
|
.B2293: //.N0001
|
|
br .B2295
|
|
nop
|
|
// lineno: 2304
|
|
.B1515: //.B0166
|
|
ld.l 4(r11), r11
|
|
.DB.B15151515:
|
|
xor 0x0000, r10, r0
|
|
bc.t .DB.B22942294
|
|
ld.l 12(r11), r10
|
|
// lineno: 0
|
|
br .B1510
|
|
nop
|
|
// lineno: 0
|
|
.B2295: //.N0002
|
|
br .DB.B15221522
|
|
orh h%.S01526, r0, r31
|
|
// lineno: 2307
|
|
.B1510: //.B0163
|
|
// lineno: 0
|
|
.B2289: //.R0007
|
|
// lineno: 0
|
|
|
|
|
|
|
|
|
|
ld.l -32(fp), r4
|
|
ld.l -28(fp), r5
|
|
ld.l -24(fp), r6
|
|
ld.l -20(fp), r7
|
|
ld.l -16(fp), r8
|
|
ld.l -12(fp), r9
|
|
ld.l -8(fp), r10
|
|
ld.l -4(fp), r11
|
|
adds .a28+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.align 8
|
|
_veloci_rasterize:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 2316
|
|
|
|
|
|
|
|
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_veloci_swap_buffers:
|
|
.a30 = 80
|
|
.f30 = 32
|
|
addu -(.a30+.f30), sp, sp
|
|
st.l fp,(.f30-16)(sp)
|
|
addu (.f30-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 2326
|
|
adds 2, r0, r16
|
|
|
|
call _flip_screens
|
|
mov r16, r17
|
|
// lineno: 2329
|
|
|
|
|
|
|
|
|
|
adds .a30+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.globl _vr_draw_scene
|
|
.align 8
|
|
_vr_draw_scene:
|
|
.a31 = 80
|
|
.f31 = 96
|
|
addu -(.a31+.f31), sp, sp
|
|
st.l fp,(.f31-16)(sp)
|
|
addu (.f31-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
st.l r4, -72(fp)
|
|
st.l r5, -68(fp)
|
|
st.l r6, -64(fp)
|
|
st.l r7, -60(fp)
|
|
st.l r8, -56(fp)
|
|
st.l r9, -52(fp)
|
|
st.l r10, -48(fp)
|
|
st.l r11, -44(fp)
|
|
st.l r12, -40(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
// lineno: 0
|
|
orh h%_clip_vertices, r0, r31
|
|
or l%_clip_vertices, r31, r9
|
|
orh h%_clip_connections, r0, r31
|
|
or l%_clip_connections, r31, r10
|
|
// lineno: 2350
|
|
ld.l r0(r9), r28
|
|
|
|
btne 0x0000, r28, .B1544
|
|
call _malloc
|
|
adds 648, r0, r16
|
|
mov r16, r28
|
|
adds 520, r0, r16
|
|
call _malloc
|
|
st.l r28, 0(r9)
|
|
ld.l r0(r9), r28
|
|
adds 1, r0, r29
|
|
st.l r0, 0(r28)
|
|
st.l r0, 0(r16)
|
|
st.l r29, 4(r16)
|
|
addu 8, r16, r11
|
|
st.l r29, 60(r11)
|
|
addu 8, r28, r12
|
|
mov r12, r19
|
|
adds 7, r0, r18
|
|
addu 4, r11, r20
|
|
st.l r16, 0(r10)
|
|
adds -1, r0, r17
|
|
bla r17, r18,.B2349
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 2368
|
|
.B2349: //.M0025
|
|
mov r20, r28
|
|
.DB.B23492349:
|
|
addu 4, r20, r20
|
|
st.l r19, 4(r28)
|
|
bla r17, r18, .B2349
|
|
addu 80, r19, r19
|
|
// lineno: 0
|
|
.B1554: //.B0174
|
|
adds 7, r0, r18
|
|
.DB.B15541554:
|
|
mov r12, r21
|
|
adds -1, r0, r17
|
|
bla r17, r18,.B2350
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 2372
|
|
.B2350: //.M0026
|
|
mov r21, r28
|
|
.DB.B23502350:
|
|
addu 80, r21, r21
|
|
bla r17, r18, .B2350
|
|
st.l r21, 44(r28)
|
|
// lineno: 0
|
|
orh h%_animate_time_0, r0, r31
|
|
or l%_animate_time_0, r31, r16
|
|
call _dN_timer
|
|
mov r21, r12
|
|
// lineno: 2379
|
|
.B1544: //.B0171
|
|
orh h%_animate_time, r0, r31
|
|
.DB.B15441544:
|
|
call _dN_timer
|
|
or l%_animate_time, r31, r16
|
|
orh ha%_animate_time_0, r0, r31
|
|
ld.l l%_animate_time_0(r31), r28
|
|
orh ha%_animate_time, r0, r31
|
|
ld.l l%_animate_time(r31), r29
|
|
fst.l f0, -16(fp)
|
|
subs r29, r28, r30
|
|
xorh 0x8000, r30, r16
|
|
orh ha%.C01579, r0, r31
|
|
fld.d l%.C01579(r31), f16
|
|
fst.l f0, -12(fp)
|
|
ixfr r16, f18
|
|
fiadd.ss f17, f0, f19
|
|
|
|
fsub.dd f18, f16, f20
|
|
orh ha%.C02311, r0, r31
|
|
fld.l l%.C02311(r31), f23
|
|
fmov.ds f20, f22
|
|
orh ha%.C00036, r0, r31
|
|
fld.l l%.C00036(r31), f25
|
|
fmul.ss f22, f23, f24
|
|
|
|
orh ha%_animate_elapsed_time, r0, r31
|
|
fst.l f24, l%_animate_elapsed_time(r31)
|
|
fst.l f25, -4(fp)
|
|
orh ha%_the_scene+32, r0, r31
|
|
ld.l l%_the_scene+32(r31), r5
|
|
fst.l f0, -8(fp)
|
|
bte 0x0000, r5, .B1561
|
|
// lineno: 2389
|
|
.B2351: //.M0027
|
|
ld.l r0(r5), r6
|
|
.DB.B23512351:
|
|
|
|
bte 0x0000, r6, .B1564
|
|
call _dN_timer
|
|
adds -20, fp, r16
|
|
mov r6, r16
|
|
call _veloci_cull
|
|
adds -16, fp, r17
|
|
mov r16, r28
|
|
adds -24, fp, r16
|
|
call _dN_timer
|
|
mov r28, r8
|
|
call _veloci_draw
|
|
mov r8, r16
|
|
call _veloci_rasterize
|
|
mov r16, r7
|
|
call _dN_timer
|
|
adds -28, fp, r16
|
|
// lineno: 2402
|
|
.B1564: //.B0178
|
|
ld.l 8(r5), r5
|
|
.DB.B15641564:
|
|
|
|
xor 0x0000, r5, r0
|
|
bnc.t .DB.B23512351
|
|
ld.l r0(r5), r6
|
|
// lineno: 0
|
|
// lineno: 2404
|
|
.B1561: //.B0177
|
|
ld.l 48(fp), r16
|
|
.DB.B15611561:
|
|
|
|
|
|
call _veloci_swap_buffers
|
|
nop
|
|
// lineno: 0
|
|
// lineno: 2405
|
|
|
|
|
|
|
|
|
|
ld.l -72(fp), r4
|
|
ld.l -68(fp), r5
|
|
ld.l -64(fp), r6
|
|
ld.l -60(fp), r7
|
|
ld.l -56(fp), r8
|
|
ld.l -52(fp), r9
|
|
ld.l -48(fp), r10
|
|
ld.l -44(fp), r11
|
|
ld.l -40(fp), r12
|
|
adds .a31+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.data
|
|
.align 8
|
|
.C01580: // (0)
|
|
.long 0x3c000000 // 7.81250000E-03
|
|
.align 8
|
|
.C01579: // (8)
|
|
.long 0x80000000, 0x43300000 // 4.50360177485414400E+15
|
|
.C01007: // (16)
|
|
.long 0x425f999a // 5.59000015E+01
|
|
.C00036: // (20)
|
|
.long 0x3f800000 // 1.00000000E+00
|
|
.C01057: // (24)
|
|
.long 0x3f666666 // 8.99999976E-01
|
|
.C01056: // (28)
|
|
.long 0x3e99999a // 3.00000012E-01
|
|
.C00038: // (32)
|
|
.long 0x3f000000 // 5.00000000E-01
|
|
.C01059: // (36)
|
|
.long 0x3ecccccd // 4.00000006E-01
|
|
.C01076: // (40)
|
|
.long 0x3c23d70a // 9.99999978E-03
|
|
.C01082: // (44)
|
|
.long 0x41f80000 // 3.10000000E+01
|
|
.C01144: // (48)
|
|
.long 0x437f0000 // 2.55000000E+02
|
|
.C00037: // (52)
|
|
.long 0x40000000 // 2.00000000E+00
|
|
.C01491: // (56)
|
|
.long 0xbf800000 // -1.00000000E+00
|
|
.C02311: // (60)
|
|
.long 0x358637bd // 9.99999997E-07
|
|
.data
|
|
.align 1
|
|
.S00980: //
|
|
// "is this right - spintime=%d\n"
|
|
.byte 0x69,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x72,0x69,0x67
|
|
.byte 0x68,0x74,0x20,0x2d,0x20,0x73,0x70,0x69,0x6e,0x74,0x69
|
|
.byte 0x6d,0x65,0x3d,0x25,0x64,0x0a,0x00
|
|
.S00990: //
|
|
// "WHOAH - screenbins neither screen0 nor screen1 0x%x 0x%x 0x%x\n"
|
|
.byte 0x57,0x48,0x4f,0x41,0x48,0x20,0x2d,0x20,0x73,0x63,0x72
|
|
.byte 0x65,0x65,0x6e,0x62,0x69,0x6e,0x73,0x20,0x6e,0x65,0x69
|
|
.byte 0x74,0x68,0x65,0x72,0x20,0x73,0x63,0x72,0x65,0x65,0x6e
|
|
.byte 0x30,0x20,0x6e,0x6f,0x72,0x20,0x73,0x63,0x72,0x65,0x65
|
|
.byte 0x6e,0x31,0x20,0x30,0x78,0x25,0x78,0x20,0x30,0x78,0x25
|
|
.byte 0x78,0x20,0x30,0x78,0x25,0x78,0x0a,0x00
|
|
.S01526: //
|
|
// "ERROR - bad displaylist tag 0x%x\n"
|
|
.byte 0x45,0x52,0x52,0x4f,0x52,0x20,0x2d,0x20,0x62,0x61,0x64
|
|
.byte 0x20,0x64,0x69,0x73,0x70,0x6c,0x61,0x79,0x6c,0x69,0x73
|
|
.byte 0x74,0x20,0x74,0x61,0x67,0x20,0x30,0x78,0x25,0x78,0x0a
|
|
.byte 0x00
|
|
.data
|
|
.globl _back_colour
|
|
.align 4
|
|
_back_colour: //back_colour
|
|
.long 0
|
|
_display_tile_base: //display_tile_base
|
|
.long 0
|
|
_very_first_frame: //very_first_frame
|
|
.long 0
|
|
_first_framebuf_y: //first_framebuf_y
|
|
.long 0
|
|
_framebuf_flip: //framebuf_flip
|
|
.long 4
|
|
_prevBin: //prevBin
|
|
.long 0
|
|
_unclipped_tris: //unclipped_tris
|
|
.long 0
|
|
_farz_drawn_tris: //farz_drawn_tris
|
|
.long 0
|
|
_farz_rejected_tris: //farz_rejected_tris
|
|
.long 0
|
|
_clipped_tris: //clipped_tris
|
|
.long 0
|
|
_clipped_patches: //clipped_patches
|
|
.long 0
|
|
_unclipped_patches: //unclipped_patches
|
|
.long 0
|
|
.globl _multisyncs
|
|
_multisyncs: //multisyncs
|
|
.long 0
|
|
.globl _recompute_end_of_frame
|
|
_recompute_end_of_frame: //recompute_end_of_frame
|
|
.long 1
|
|
.globl _random_x
|
|
_random_x: //random_x
|
|
.long 0x0 // 0.00000000E+00
|
|
.globl _random_y
|
|
_random_y: //random_y
|
|
.long 0x0 // 0.00000000E+00
|
|
_random_numbers: //random_numbers
|
|
.long 0x3dd70a3d // 1.04999997E-01
|
|
.long 0x3ed9999a // 4.25000012E-01
|
|
.long 0x3f09fbe7 // 5.38999975E-01
|
|
.long 0x3f595810 // 8.48999977E-01
|
|
.long 0x3e96872b // 2.94000000E-01
|
|
.long 0x3e4ed917 // 2.02000007E-01
|
|
.long 0x3f7851ec // 9.70000029E-01
|
|
.long 0x3ea9fbe7 // 3.31999987E-01
|
|
.long 0x3f1ae148 // 6.05000019E-01
|
|
.long 0x3eef1aa0 // 4.67000008E-01
|
|
.long 0x3de147ae // 1.09999999E-01
|
|
.long 0x3f6c0831 // 9.21999991E-01
|
|
.long 0x3f620c4a // 8.83000016E-01
|
|
.long 0x3e75c28f // 2.39999995E-01
|
|
.long 0x3e87ae14 // 2.64999986E-01
|
|
.long 0x3ba3d70a // 4.99999989E-03
|
|
_casio_ix: //casio_ix
|
|
.long 0
|
|
_render_inited: //render_inited
|
|
.long 0
|
|
_clip_vertices: //clip_vertices
|
|
.long 0
|
|
_clip_connections: //clip_connections
|
|
.long 0
|
|
.globl _sub_pixel_correct
|
|
_sub_pixel_correct: //sub_pixel_correct
|
|
.long 0x0 // 0.00000000E+00
|
|
.globl _Czscale
|
|
_Czscale: //Czscale
|
|
.long 0x497ffffe // 1.04857588E+06
|
|
.globl _animate_elapsed_time
|
|
_animate_elapsed_time: //animate_elapsed_time
|
|
.long 0x0 // 0.00000000E+00
|
|
.lcomm .STACK,176
|
|
.lcomm .BSS,32
|
|
//prevX +0
|
|
//prevY +4
|
|
//y_display_tiles +8
|
|
//x_display_tiles +12
|
|
//DMA_copy +16
|
|
//transp_DMA_copy +20
|
|
.data
|
|
.comm _vr_phong_table,4
|
|
.comm _random_offset,4
|
|
.comm _animate_time_0,4
|
|
.comm _animate_time,4
|
|
.extern _veloci_cull
|
|
.extern _dN_timer
|
|
.extern _xform_and_project_fn
|
|
.extern _solve_fn
|
|
.extern _tri_zb_rgb_o_t
|
|
.extern _quick_renorm
|
|
.extern _tri_zb_f
|
|
.extern _tri_zb_rgb
|
|
.extern _tri_zb_f_t
|
|
.extern _tri_zb_rgb_t
|
|
.extern _create_screenbins
|
|
.extern _end_of_transframe_DMA
|
|
.extern _end_of_transp_DMA
|
|
.extern _newBytes
|
|
.extern _setFsr
|
|
.extern _getFsr
|
|
.extern _texInit
|
|
.extern _setRampEntry
|
|
.extern _liberate_screenbins
|
|
.extern _printf
|
|
.extern _dN_pxpl5_dma
|
|
.extern _end_of_textr_DMA
|
|
.extern _short_end_of_frame_DMA
|
|
.extern _memcpy
|
|
.extern _next_binchunk
|
|
.extern _malloc
|