Files
CydandClaude Fable 5 db7745fcd0 sda4: commit the Glaze developer hard-drive dump
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>
2026-07-04 19:41:15 -05:00

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