summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax <mparisi@stevens.edu>2020-09-28 12:53:38 -0400
committerMax <mparisi@stevens.edu>2020-09-28 12:53:38 -0400
commita1cf8e58d480881def7cf19370b076d58527507f (patch)
tree2e9b335d51f64338ca4c07308ff89e526edad35f
parent72c2d3d7105304c50ed5f2f1d39816bc7dbeacad (diff)
resolve incbin at 8044d120 as a precomputed interpolation table for sine/cosine, and add note describing its structure
-rw-r--r--asm/data.s274
1 files changed, 273 insertions, 1 deletions
diff --git a/asm/data.s b/asm/data.s
index ba0d092..8297ecb 100644
--- a/asm/data.s
+++ b/asm/data.s
@@ -5003,9 +5003,281 @@ lbl_8044D050:
.global lbl_8044D0C0
lbl_8044D0C0:
.incbin "baserom.dol", 0x4491C0, 0x60
+
+# TODO: make up a name for this table in nw4r::math
+
+# NOTE: This is an array of structs each containing 4 floats, and it is
+# used by SinFIdx__Q24nw4r4mathFf and CosFIdx__Q24nw4r4mathFf in a
+# linear interpolation method to compute the sine and cosine of x
+
+# NOTE: Here is the element structure (table is indexed using floor(x)):
+ # {
+ # sin(floor(x)*2*pi/256);
+ # cos(floor(x)*2*pi/256);
+ # sin_correction_coeff;
+ # cos_correction_coeff;
+ # };
+
.global lbl_8044D120
lbl_8044D120:
- .incbin "baserom.dol", 0x449220, 0x1010
+ .float 0.000000, 1.000000, 0.024541, -0.000301
+ .float 0.024541, 0.999699, 0.024526, -0.000903
+ .float 0.049068, 0.998795, 0.024497, -0.001505
+ .float 0.073565, 0.997290, 0.024453, -0.002106
+ .float 0.098017, 0.995185, 0.024394, -0.002705
+ .float 0.122411, 0.992480, 0.024320, -0.003303
+ .float 0.146730, 0.989177, 0.024231, -0.003899
+ .float 0.170962, 0.985278, 0.024128, -0.004492
+ .float 0.195090, 0.980785, 0.024011, -0.005083
+ .float 0.219101, 0.975702, 0.023879, -0.005671
+ .float 0.242980, 0.970031, 0.023733, -0.006255
+ .float 0.266713, 0.963776, 0.023572, -0.006836
+ .float 0.290285, 0.956940, 0.023397, -0.007412
+ .float 0.313682, 0.949528, 0.023208, -0.007984
+ .float 0.336890, 0.941544, 0.023005, -0.008551
+ .float 0.359895, 0.932993, 0.022788, -0.009113
+ .float 0.382683, 0.923880, 0.022558, -0.009670
+ .float 0.405241, 0.914210, 0.022314, -0.010220
+ .float 0.427555, 0.903989, 0.022056, -0.010765
+ .float 0.449611, 0.893224, 0.021785, -0.011303
+ .float 0.471397, 0.881921, 0.021501, -0.011834
+ .float 0.492898, 0.870087, 0.021205, -0.012358
+ .float 0.514103, 0.857729, 0.020895, -0.012875
+ .float 0.534998, 0.844854, 0.020573, -0.013384
+ .float 0.555570, 0.831470, 0.020238, -0.013885
+ .float 0.575808, 0.817585, 0.019891, -0.014377
+ .float 0.595699, 0.803208, 0.019532, -0.014861
+ .float 0.615232, 0.788346, 0.019162, -0.015336
+ .float 0.634393, 0.773010, 0.018780, -0.015802
+ .float 0.653173, 0.757209, 0.018386, -0.016258
+ .float 0.671559, 0.740951, 0.017982, -0.016704
+ .float 0.689541, 0.724247, 0.017566, -0.017140
+ .float 0.707107, 0.707107, 0.017140, -0.017566
+ .float 0.724247, 0.689541, 0.016704, -0.017982
+ .float 0.740951, 0.671559, 0.016258, -0.018386
+ .float 0.757209, 0.653173, 0.015802, -0.018780
+ .float 0.773010, 0.634393, 0.015336, -0.019162
+ .float 0.788346, 0.615232, 0.014861, -0.019532
+ .float 0.803208, 0.595699, 0.014377, -0.019891
+ .float 0.817585, 0.575808, 0.013885, -0.020238
+ .float 0.831470, 0.555570, 0.013384, -0.020573
+ .float 0.844854, 0.534998, 0.012875, -0.020895
+ .float 0.857729, 0.514103, 0.012358, -0.021205
+ .float 0.870087, 0.492898, 0.011834, -0.021501
+ .float 0.881921, 0.471397, 0.011303, -0.021785
+ .float 0.893224, 0.449611, 0.010765, -0.022056
+ .float 0.903989, 0.427555, 0.010220, -0.022314
+ .float 0.914210, 0.405241, 0.009670, -0.022558
+ .float 0.923880, 0.382683, 0.009113, -0.022788
+ .float 0.932993, 0.359895, 0.008551, -0.023005
+ .float 0.941544, 0.336890, 0.007984, -0.023208
+ .float 0.949528, 0.313682, 0.007412, -0.023397
+ .float 0.956940, 0.290285, 0.006836, -0.023572
+ .float 0.963776, 0.266713, 0.006255, -0.023733
+ .float 0.970031, 0.242980, 0.005671, -0.023879
+ .float 0.975702, 0.219101, 0.005083, -0.024011
+ .float 0.980785, 0.195090, 0.004492, -0.024128
+ .float 0.985278, 0.170962, 0.003899, -0.024231
+ .float 0.989177, 0.146730, 0.003303, -0.024320
+ .float 0.992480, 0.122411, 0.002705, -0.024394
+ .float 0.995185, 0.098017, 0.002106, -0.024453
+ .float 0.997290, 0.073565, 0.001505, -0.024497
+ .float 0.998795, 0.049068, 0.000903, -0.024526
+ .float 0.999699, 0.024541, 0.000301, -0.024541
+ .float 1.000000, 0.000000, -0.000301, -0.024541
+ .float 0.999699, -0.024541, -0.000903, -0.024526
+ .float 0.998795, -0.049068, -0.001505, -0.024497
+ .float 0.997290, -0.073565, -0.002106, -0.024453
+ .float 0.995185, -0.098017, -0.002705, -0.024394
+ .float 0.992480, -0.122411, -0.003303, -0.024320
+ .float 0.989177, -0.146730, -0.003899, -0.024231
+ .float 0.985278, -0.170962, -0.004492, -0.024128
+ .float 0.980785, -0.195090, -0.005083, -0.024011
+ .float 0.975702, -0.219101, -0.005671, -0.023879
+ .float 0.970031, -0.242980, -0.006255, -0.023733
+ .float 0.963776, -0.266713, -0.006836, -0.023572
+ .float 0.956940, -0.290285, -0.007412, -0.023397
+ .float 0.949528, -0.313682, -0.007984, -0.023208
+ .float 0.941544, -0.336890, -0.008551, -0.023005
+ .float 0.932993, -0.359895, -0.009113, -0.022788
+ .float 0.923880, -0.382683, -0.009670, -0.022558
+ .float 0.914210, -0.405241, -0.010220, -0.022314
+ .float 0.903989, -0.427555, -0.010765, -0.022056
+ .float 0.893224, -0.449611, -0.011303, -0.021785
+ .float 0.881921, -0.471397, -0.011834, -0.021501
+ .float 0.870087, -0.492898, -0.012358, -0.021205
+ .float 0.857729, -0.514103, -0.012875, -0.020895
+ .float 0.844854, -0.534998, -0.013384, -0.020573
+ .float 0.831470, -0.555570, -0.013885, -0.020238
+ .float 0.817585, -0.575808, -0.014377, -0.019891
+ .float 0.803208, -0.595699, -0.014861, -0.019532
+ .float 0.788346, -0.615232, -0.015336, -0.019162
+ .float 0.773010, -0.634393, -0.015802, -0.018780
+ .float 0.757209, -0.653173, -0.016258, -0.018386
+ .float 0.740951, -0.671559, -0.016704, -0.017982
+ .float 0.724247, -0.689541, -0.017140, -0.017566
+ .float 0.707107, -0.707107, -0.017566, -0.017140
+ .float 0.689541, -0.724247, -0.017982, -0.016704
+ .float 0.671559, -0.740951, -0.018386, -0.016258
+ .float 0.653173, -0.757209, -0.018780, -0.015802
+ .float 0.634393, -0.773010, -0.019162, -0.015336
+ .float 0.615232, -0.788346, -0.019532, -0.014861
+ .float 0.595699, -0.803208, -0.019891, -0.014377
+ .float 0.575808, -0.817585, -0.020238, -0.013885
+ .float 0.555570, -0.831470, -0.020573, -0.013384
+ .float 0.534998, -0.844854, -0.020895, -0.012875
+ .float 0.514103, -0.857729, -0.021205, -0.012358
+ .float 0.492898, -0.870087, -0.021501, -0.011834
+ .float 0.471397, -0.881921, -0.021785, -0.011303
+ .float 0.449611, -0.893224, -0.022056, -0.010765
+ .float 0.427555, -0.903989, -0.022314, -0.010220
+ .float 0.405241, -0.914210, -0.022558, -0.009670
+ .float 0.382683, -0.923880, -0.022788, -0.009113
+ .float 0.359895, -0.932993, -0.023005, -0.008551
+ .float 0.336890, -0.941544, -0.023208, -0.007984
+ .float 0.313682, -0.949528, -0.023397, -0.007412
+ .float 0.290285, -0.956940, -0.023572, -0.006836
+ .float 0.266713, -0.963776, -0.023733, -0.006255
+ .float 0.242980, -0.970031, -0.023879, -0.005671
+ .float 0.219101, -0.975702, -0.024011, -0.005083
+ .float 0.195090, -0.980785, -0.024128, -0.004492
+ .float 0.170962, -0.985278, -0.024231, -0.003899
+ .float 0.146730, -0.989177, -0.024320, -0.003303
+ .float 0.122411, -0.992480, -0.024394, -0.002705
+ .float 0.098017, -0.995185, -0.024453, -0.002106
+ .float 0.073565, -0.997290, -0.024497, -0.001505
+ .float 0.049068, -0.998795, -0.024526, -0.000903
+ .float 0.024541, -0.999699, -0.024541, -0.000301
+ .float 0.000000, -1.000000, -0.024541, 0.000301
+ .float -0.024541, -0.999699, -0.024526, 0.000903
+ .float -0.049068, -0.998795, -0.024497, 0.001505
+ .float -0.073565, -0.997290, -0.024453, 0.002106
+ .float -0.098017, -0.995185, -0.024394, 0.002705
+ .float -0.122411, -0.992480, -0.024320, 0.003303
+ .float -0.146730, -0.989177, -0.024231, 0.003899
+ .float -0.170962, -0.985278, -0.024128, 0.004492
+ .float -0.195090, -0.980785, -0.024011, 0.005083
+ .float -0.219101, -0.975702, -0.023879, 0.005671
+ .float -0.242980, -0.970031, -0.023733, 0.006255
+ .float -0.266713, -0.963776, -0.023572, 0.006836
+ .float -0.290285, -0.956940, -0.023397, 0.007412
+ .float -0.313682, -0.949528, -0.023208, 0.007984
+ .float -0.336890, -0.941544, -0.023005, 0.008551
+ .float -0.359895, -0.932993, -0.022788, 0.009113
+ .float -0.382683, -0.923880, -0.022558, 0.009670
+ .float -0.405241, -0.914210, -0.022314, 0.010220
+ .float -0.427555, -0.903989, -0.022056, 0.010765
+ .float -0.449611, -0.893224, -0.021785, 0.011303
+ .float -0.471397, -0.881921, -0.021501, 0.011834
+ .float -0.492898, -0.870087, -0.021205, 0.012358
+ .float -0.514103, -0.857729, -0.020895, 0.012875
+ .float -0.534998, -0.844854, -0.020573, 0.013384
+ .float -0.555570, -0.831470, -0.020238, 0.013885
+ .float -0.575808, -0.817585, -0.019891, 0.014377
+ .float -0.595699, -0.803208, -0.019532, 0.014861
+ .float -0.615232, -0.788346, -0.019162, 0.015336
+ .float -0.634393, -0.773010, -0.018780, 0.015802
+ .float -0.653173, -0.757209, -0.018386, 0.016258
+ .float -0.671559, -0.740951, -0.017982, 0.016704
+ .float -0.689541, -0.724247, -0.017566, 0.017140
+ .float -0.707107, -0.707107, -0.017140, 0.017566
+ .float -0.724247, -0.689541, -0.016704, 0.017982
+ .float -0.740951, -0.671559, -0.016258, 0.018386
+ .float -0.757209, -0.653173, -0.015802, 0.018780
+ .float -0.773010, -0.634393, -0.015336, 0.019162
+ .float -0.788346, -0.615232, -0.014861, 0.019532
+ .float -0.803208, -0.595699, -0.014377, 0.019891
+ .float -0.817585, -0.575808, -0.013885, 0.020238
+ .float -0.831470, -0.555570, -0.013384, 0.020573
+ .float -0.844854, -0.534998, -0.012875, 0.020895
+ .float -0.857729, -0.514103, -0.012358, 0.021205
+ .float -0.870087, -0.492898, -0.011834, 0.021501
+ .float -0.881921, -0.471397, -0.011303, 0.021785
+ .float -0.893224, -0.449611, -0.010765, 0.022056
+ .float -0.903989, -0.427555, -0.010220, 0.022314
+ .float -0.914210, -0.405241, -0.009670, 0.022558
+ .float -0.923880, -0.382683, -0.009113, 0.022788
+ .float -0.932993, -0.359895, -0.008551, 0.023005
+ .float -0.941544, -0.336890, -0.007984, 0.023208
+ .float -0.949528, -0.313682, -0.007412, 0.023397
+ .float -0.956940, -0.290285, -0.006836, 0.023572
+ .float -0.963776, -0.266713, -0.006255, 0.023733
+ .float -0.970031, -0.242980, -0.005671, 0.023879
+ .float -0.975702, -0.219101, -0.005083, 0.024011
+ .float -0.980785, -0.195090, -0.004492, 0.024128
+ .float -0.985278, -0.170962, -0.003899, 0.024231
+ .float -0.989177, -0.146730, -0.003303, 0.024320
+ .float -0.992480, -0.122411, -0.002705, 0.024394
+ .float -0.995185, -0.098017, -0.002106, 0.024453
+ .float -0.997290, -0.073565, -0.001505, 0.024497
+ .float -0.998795, -0.049068, -0.000903, 0.024526
+ .float -0.999699, -0.024541, -0.000301, 0.024541
+ .float -1.000000, -0.000000, 0.000301, 0.024541
+ .float -0.999699, 0.024541, 0.000903, 0.024526
+ .float -0.998795, 0.049068, 0.001505, 0.024497
+ .float -0.997290, 0.073565, 0.002106, 0.024453
+ .float -0.995185, 0.098017, 0.002705, 0.024394
+ .float -0.992480, 0.122411, 0.003303, 0.024320
+ .float -0.989177, 0.146730, 0.003899, 0.024231
+ .float -0.985278, 0.170962, 0.004492, 0.024128
+ .float -0.980785, 0.195090, 0.005083, 0.024011
+ .float -0.975702, 0.219101, 0.005671, 0.023879
+ .float -0.970031, 0.242980, 0.006255, 0.023733
+ .float -0.963776, 0.266713, 0.006836, 0.023572
+ .float -0.956940, 0.290285, 0.007412, 0.023397
+ .float -0.949528, 0.313682, 0.007984, 0.023208
+ .float -0.941544, 0.336890, 0.008551, 0.023005
+ .float -0.932993, 0.359895, 0.009113, 0.022788
+ .float -0.923880, 0.382683, 0.009670, 0.022558
+ .float -0.914210, 0.405241, 0.010220, 0.022314
+ .float -0.903989, 0.427555, 0.010765, 0.022056
+ .float -0.893224, 0.449611, 0.011303, 0.021785
+ .float -0.881921, 0.471397, 0.011834, 0.021501
+ .float -0.870087, 0.492898, 0.012358, 0.021205
+ .float -0.857729, 0.514103, 0.012875, 0.020895
+ .float -0.844854, 0.534998, 0.013384, 0.020573
+ .float -0.831470, 0.555570, 0.013885, 0.020238
+ .float -0.817585, 0.575808, 0.014377, 0.019891
+ .float -0.803208, 0.595699, 0.014861, 0.019532
+ .float -0.788346, 0.615232, 0.015336, 0.019162
+ .float -0.773010, 0.634393, 0.015802, 0.018780
+ .float -0.757209, 0.653173, 0.016258, 0.018386
+ .float -0.740951, 0.671559, 0.016704, 0.017982
+ .float -0.724247, 0.689541, 0.017140, 0.017566
+ .float -0.707107, 0.707107, 0.017566, 0.017140
+ .float -0.689541, 0.724247, 0.017982, 0.016704
+ .float -0.671559, 0.740951, 0.018386, 0.016258
+ .float -0.653173, 0.757209, 0.018780, 0.015802
+ .float -0.634393, 0.773010, 0.019162, 0.015336
+ .float -0.615232, 0.788346, 0.019532, 0.014861
+ .float -0.595699, 0.803208, 0.019891, 0.014377
+ .float -0.575808, 0.817585, 0.020238, 0.013885
+ .float -0.555570, 0.831470, 0.020573, 0.013384
+ .float -0.534998, 0.844854, 0.020895, 0.012875
+ .float -0.514103, 0.857729, 0.021205, 0.012358
+ .float -0.492898, 0.870087, 0.021501, 0.011834
+ .float -0.471397, 0.881921, 0.021785, 0.011303
+ .float -0.449611, 0.893224, 0.022056, 0.010765
+ .float -0.427555, 0.903989, 0.022314, 0.010220
+ .float -0.405241, 0.914210, 0.022558, 0.009670
+ .float -0.382683, 0.923880, 0.022788, 0.009113
+ .float -0.359895, 0.932993, 0.023005, 0.008551
+ .float -0.336890, 0.941544, 0.023208, 0.007984
+ .float -0.313682, 0.949528, 0.023397, 0.007412
+ .float -0.290285, 0.956940, 0.023572, 0.006836
+ .float -0.266713, 0.963776, 0.023733, 0.006255
+ .float -0.242980, 0.970031, 0.023879, 0.005671
+ .float -0.219101, 0.975702, 0.024011, 0.005083
+ .float -0.195090, 0.980785, 0.024128, 0.004492
+ .float -0.170962, 0.985278, 0.024231, 0.003899
+ .float -0.146730, 0.989177, 0.024320, 0.003303
+ .float -0.122411, 0.992480, 0.024394, 0.002705
+ .float -0.098017, 0.995185, 0.024453, 0.002106
+ .float -0.073565, 0.997290, 0.024497, 0.001505
+ .float -0.049068, 0.998795, 0.024526, 0.000903
+ .float -0.024541, 0.999699, 0.024541, 0.000301
+ .float -0.000000, 1.000000, 0.024541, -0.000301
+
.global lbl_8044E130
lbl_8044E130:
.incbin "baserom.dol", 0x44A230, 0x108