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>
321 lines
5.8 KiB
ArmAsm
321 lines
5.8 KiB
ArmAsm
.file "fitplans.c"
|
|
// PGC Rel 2.0a -opt 4
|
|
.text
|
|
.align 8
|
|
_CalcDeltas2:
|
|
.a1 = 0
|
|
.f1 = 96
|
|
orh h%.STACK+.f1-16, r0, r28
|
|
or l%.STACK+.f1-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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// lineno: 0
|
|
orh ha%.C00037, r0, r31
|
|
fld.l l%.C00037(r31), f11
|
|
adds -1, r0, r19
|
|
// lineno: 0
|
|
.B71: //.B0000
|
|
adds 7, r0, r20
|
|
.DB.B7171:
|
|
addu -56, r18, r21
|
|
addu -52, r18, r4
|
|
addu -48, r18, r5
|
|
addu -44, r18, r6
|
|
addu -44, r16, r7
|
|
addu -32, r16, r8
|
|
addu -28, r16, r9
|
|
addu -16, r16, r10
|
|
addu -12, r16, r11
|
|
bla r19, r20,.B148
|
|
pfmul.dd f0, f0, f0
|
|
// lineno: 25
|
|
.B148: //.M0000
|
|
.align 8
|
|
d.pfadd.dd f0, f0, f0
|
|
nop
|
|
|
|
.PL1001:
|
|
d.fnop
|
|
fld.l 48(r7)++, f10
|
|
.DB.B148148:
|
|
d.fnop
|
|
fld.l 48(r9)++, f7
|
|
d.fnop
|
|
fld.l r0(r16), f4
|
|
d.fnop
|
|
fld.l 48(r10)++, f6
|
|
d.pfsub.ss f7, f10, f0
|
|
fld.l 48(r8)++, f17
|
|
d.pfadd.ss f0, f0, f0
|
|
fld.l 48(r11)++, f5
|
|
d.pfsub.ss f6, f4, f0
|
|
mov r21, r29
|
|
d.pfsub.ss f17, f4, f14
|
|
addu 64, r21, r21
|
|
d.pfsub.ss f5, f10, f0
|
|
fst.l f10, 64(r29)
|
|
d.m12tpa.ss f14, f13, f13
|
|
fst.l f17, -4(r28)
|
|
d.ia1p2.ss f0, f0, f15
|
|
fst.l f4, r0(r18)
|
|
d.m12tpa.ss f15, f12, f12
|
|
addu 64, r18, r18
|
|
d.pfmul.ss f0, f0, f16
|
|
addu 48, r16, r16
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f18
|
|
nop
|
|
d.pfsub.ss f18, f16, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f8
|
|
nop
|
|
d.frcp.ss f8, f16
|
|
nop
|
|
d.pfmul.ss f8, f16, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.mi2s1.ss f11, f0, f30
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.m12tpa.ss f16, f30, f30
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f8, f18, f18
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.mi2s1.ss f11, f0, f30
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f0
|
|
nop
|
|
d.pfadd.ss f0, f0, f19
|
|
nop
|
|
d.pfmul.ss f18, f19, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f0
|
|
nop
|
|
d.pfmul.ss f14, f19, f19
|
|
nop
|
|
d.pfmul.ss f13, f19, f0
|
|
nop
|
|
d.pfmul.ss f12, f19, f0
|
|
nop
|
|
d.pfmul.ss f0, f0, f30
|
|
fst.l f30, 64(r4)++
|
|
d.pfmul.ss f0, f0, f30
|
|
fst.l f30, 64(r5)++
|
|
d.pfmul.ss f0, f0, f30
|
|
fst.l f30, 64(r6)++
|
|
d.fiadd.ss f19, f0, f9
|
|
nop
|
|
d.fnop
|
|
bla r19, r20, .PL1001
|
|
d.fiadd.ss f10, f0, f3
|
|
nop
|
|
.align 8
|
|
fnop
|
|
nop
|
|
fnop
|
|
nop
|
|
// lineno: 0
|
|
// lineno: 0
|
|
.B73: //.B0001
|
|
// lineno: 57
|
|
|
|
|
|
|
|
|
|
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
|
|
bri r1
|
|
nop
|
|
.align 8
|
|
_test:
|
|
.a2 = 80
|
|
.f2 = 112
|
|
addu -(.a2+.f2), sp, sp
|
|
st.l fp,(.f2-16)(sp)
|
|
addu (.f2-16), sp, fp
|
|
st.l r1, 4(fp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
st.l r16, 48(fp)
|
|
// lineno: 75
|
|
adds -72, fp, r16
|
|
adds 1, r0, r17
|
|
call _CalcDeltas2
|
|
adds -24, fp, r18
|
|
fld.l -64(fp), f16
|
|
fld.l -32(fp), f17
|
|
fld.l -12(fp), f19
|
|
fld.l -48(fp), f21
|
|
fsub.ss f17, f16, f18
|
|
fld.l -4(fp), f23
|
|
fld.l -24(fp), f26
|
|
fmul.ss f18, f19, f20
|
|
fld.l -8(fp), f29
|
|
fld.l -16(fp), f31
|
|
fsub.ss f21, f16, f22
|
|
fld.l -20(fp), f10
|
|
ld.l 48(fp), r28
|
|
fmul.ss f22, f23, f24
|
|
|
|
|
|
fsub.ss f24, f20, f25
|
|
|
|
|
|
fmul.ss f26, f25, f27
|
|
|
|
|
|
fsub.ss f16, f27, f28
|
|
|
|
|
|
fmul.ss f22, f29, f30
|
|
|
|
|
|
fmul.ss f18, f31, f8
|
|
|
|
|
|
fsub.ss f8, f30, f9
|
|
|
|
|
|
fmul.ss f10, f9, f11
|
|
|
|
|
|
fsub.ss f28, f11, f12
|
|
|
|
|
|
fst.l f25, r0(r28)
|
|
fst.l f9, 4(r28)++
|
|
fst.l f12, 4(r28)++
|
|
|
|
fld.l -60(fp), f13
|
|
fld.l -28(fp), f14
|
|
fld.l -12(fp), f17
|
|
fld.l -44(fp), f21
|
|
fsub.ss f14, f13, f15
|
|
fld.l -4(fp), f20
|
|
fld.l -24(fp), f27
|
|
fmul.ss f15, f17, f19
|
|
fld.l -8(fp), f22
|
|
fld.l -16(fp), f18
|
|
fsub.ss f21, f13, f23
|
|
fld.l -20(fp), f10
|
|
|
|
fmul.ss f23, f20, f24
|
|
|
|
|
|
fsub.ss f24, f19, f26
|
|
|
|
|
|
fmul.ss f27, f26, f16
|
|
|
|
|
|
fsub.ss f13, f16, f29
|
|
|
|
|
|
fmul.ss f23, f22, f31
|
|
|
|
|
|
fmul.ss f15, f18, f30
|
|
|
|
|
|
fsub.ss f30, f31, f8
|
|
|
|
|
|
fmul.ss f10, f8, f11
|
|
|
|
|
|
fsub.ss f29, f11, f28
|
|
|
|
|
|
fst.l f26, 4(r28)++
|
|
fst.l f8, 4(r28)++
|
|
fst.l f28, 4(r28)++
|
|
addu 4, r28, r29
|
|
st.l r29, 48(fp)
|
|
fst.l f28, -92(fp)
|
|
fst.l f26, -84(fp)
|
|
fst.l f8, -88(fp)
|
|
fst.l f23, -76(fp)
|
|
fst.l f15, -80(fp)
|
|
// lineno: 88
|
|
|
|
|
|
|
|
|
|
adds .a2+16, fp, r31
|
|
ld.l 4(fp), r1
|
|
ld.l 0(fp), fp
|
|
bri r1
|
|
mov r31, sp
|
|
.data
|
|
.align 8
|
|
.C00037: // (0)
|
|
.long 0x40000000 // 2.00000000E+00
|
|
.lcomm .STACK,96
|