pmdsky-debug-py 9.0.3__py3-none-any.whl → 9.0.5__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pmdsky_debug_py/_release.py +1 -1
- pmdsky_debug_py/eu.py +302 -58
- pmdsky_debug_py/eu_itcm.py +302 -58
- pmdsky_debug_py/jp.py +302 -58
- pmdsky_debug_py/jp_itcm.py +302 -58
- pmdsky_debug_py/na.py +302 -58
- pmdsky_debug_py/na_itcm.py +302 -58
- pmdsky_debug_py/protocol.py +134 -19
- {pmdsky_debug_py-9.0.3.dist-info → pmdsky_debug_py-9.0.5.dist-info}/METADATA +1 -1
- pmdsky_debug_py-9.0.5.dist-info/RECORD +14 -0
- pmdsky_debug_py-9.0.3.dist-info/RECORD +0 -14
- {pmdsky_debug_py-9.0.3.dist-info → pmdsky_debug_py-9.0.5.dist-info}/WHEEL +0 -0
- {pmdsky_debug_py-9.0.3.dist-info → pmdsky_debug_py-9.0.5.dist-info}/top_level.txt +0 -0
pmdsky_debug_py/jp.py
CHANGED
|
@@ -140,7 +140,7 @@ class JpArm7Functions:
|
|
|
140
140
|
" & 0x1f (the cpsr mode bits M4-M0)",
|
|
141
141
|
)
|
|
142
142
|
|
|
143
|
-
|
|
143
|
+
_s32_div_f = Symbol(
|
|
144
144
|
[0xEDB0],
|
|
145
145
|
[0x238EDB0],
|
|
146
146
|
None,
|
|
@@ -148,7 +148,7 @@ class JpArm7Functions:
|
|
|
148
148
|
" dividend\nr1: divisor\nreturn: (quotient) | (remainder << 32)",
|
|
149
149
|
)
|
|
150
150
|
|
|
151
|
-
|
|
151
|
+
_u32_div_f = Symbol(
|
|
152
152
|
[0xEFBC],
|
|
153
153
|
[0x238EFBC],
|
|
154
154
|
None,
|
|
@@ -156,7 +156,7 @@ class JpArm7Functions:
|
|
|
156
156
|
" dividend\nr1: divisor\nreturn: (quotient) | (remainder << 32)",
|
|
157
157
|
)
|
|
158
158
|
|
|
159
|
-
|
|
159
|
+
_u32_div_not_0_f = Symbol(
|
|
160
160
|
[0xEFC4],
|
|
161
161
|
[0x238EFC4],
|
|
162
162
|
None,
|
|
@@ -195,11 +195,11 @@ class JpArm7Section:
|
|
|
195
195
|
|
|
196
196
|
class JpArm9Functions:
|
|
197
197
|
|
|
198
|
-
|
|
198
|
+
Svc_SoftReset = Symbol(None, None, None, "Software interrupt.")
|
|
199
199
|
|
|
200
|
-
|
|
200
|
+
Svc_WaitByLoop = Symbol(None, None, None, "Software interrupt.")
|
|
201
201
|
|
|
202
|
-
|
|
202
|
+
Svc_CpuSet = Symbol(None, None, None, "Software interrupt.")
|
|
203
203
|
|
|
204
204
|
_start = Symbol(
|
|
205
205
|
[0x800],
|
|
@@ -211,7 +211,7 @@ class JpArm9Functions:
|
|
|
211
211
|
" will jump to NitroMain.\n\nNo params.",
|
|
212
212
|
)
|
|
213
213
|
|
|
214
|
-
|
|
214
|
+
MIi_UncompressBackward = Symbol(
|
|
215
215
|
[0x970],
|
|
216
216
|
[0x2000970],
|
|
217
217
|
None,
|
|
@@ -232,7 +232,7 @@ class JpArm9Functions:
|
|
|
232
232
|
"Startup routine in the program's crt0 (https://en.wikipedia.org/wiki/Crt0).",
|
|
233
233
|
)
|
|
234
234
|
|
|
235
|
-
|
|
235
|
+
OSi_ReferSymbol = Symbol(
|
|
236
236
|
None,
|
|
237
237
|
None,
|
|
238
238
|
None,
|
|
@@ -4119,6 +4119,16 @@ class JpArm9Functions:
|
|
|
4119
4119
|
" index",
|
|
4120
4120
|
)
|
|
4121
4121
|
|
|
4122
|
+
UpdateWindow = Symbol(
|
|
4123
|
+
None,
|
|
4124
|
+
None,
|
|
4125
|
+
None,
|
|
4126
|
+
"Seems to cause updated window contents to be displayed.\n \nGets called for"
|
|
4127
|
+
" example at the end of a text box window update and seems to 'commit' the"
|
|
4128
|
+
" update, but in general also gets called with all kinds of window updates."
|
|
4129
|
+
" \n\nr0: window_id",
|
|
4130
|
+
)
|
|
4131
|
+
|
|
4122
4132
|
ClearWindow = Symbol(
|
|
4123
4133
|
None,
|
|
4124
4134
|
None,
|
|
@@ -8918,68 +8928,212 @@ class JpArm9Functions:
|
|
|
8918
8928
|
"The wcslen(3) C library function.\n\nr0: ws\nreturn: length of ws",
|
|
8919
8929
|
)
|
|
8920
8930
|
|
|
8921
|
-
|
|
8931
|
+
_dadd = Symbol(
|
|
8932
|
+
None,
|
|
8933
|
+
None,
|
|
8934
|
+
None,
|
|
8935
|
+
"Implements the addition operator for IEEE 754 double-precision floating-point"
|
|
8936
|
+
" numbers.\n\nThe result is returned in r0 and r1, in accordance with the"
|
|
8937
|
+
" Procedure Call Standard for the Arm Architecture (see"
|
|
8938
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
8939
|
+
" a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn:"
|
|
8940
|
+
" a + b",
|
|
8941
|
+
)
|
|
8942
|
+
|
|
8943
|
+
_d2f = Symbol(
|
|
8944
|
+
None,
|
|
8945
|
+
None,
|
|
8946
|
+
None,
|
|
8947
|
+
"Implements the double to float cast operator for IEEE 754 floating-point"
|
|
8948
|
+
" numbers.\n\nr0: double (low bits)\nr1: double (high bits)\nreturn:"
|
|
8949
|
+
" (float)double",
|
|
8950
|
+
)
|
|
8951
|
+
|
|
8952
|
+
_ll_ufrom_d = Symbol(
|
|
8953
|
+
None,
|
|
8954
|
+
None,
|
|
8955
|
+
None,
|
|
8956
|
+
"Implements the double to unsigned long long cast operation for IEEE 754"
|
|
8957
|
+
" floating-point numbers.\n\nThe result is returned in r0 and r1, in accordance"
|
|
8958
|
+
" with the Procedure Call Standard for the Arm Architecture (see"
|
|
8959
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
8960
|
+
" double (low bits)\nr1: double (high bits)\nreturn: (unsigned long"
|
|
8961
|
+
" long)double",
|
|
8962
|
+
)
|
|
8963
|
+
|
|
8964
|
+
_dflt = Symbol(
|
|
8965
|
+
None,
|
|
8966
|
+
None,
|
|
8967
|
+
None,
|
|
8968
|
+
"Implements the int to double cast operation for IEEE 754 floating-point"
|
|
8969
|
+
" numbers.\n\nThe result is returned in r0 and r1, in accordance with the"
|
|
8970
|
+
" Procedure Call Standard for the Arm Architecture (see"
|
|
8971
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
8972
|
+
" int\nreturn: (double)int",
|
|
8973
|
+
)
|
|
8974
|
+
|
|
8975
|
+
_dfltu = Symbol(
|
|
8976
|
+
None,
|
|
8977
|
+
None,
|
|
8978
|
+
None,
|
|
8979
|
+
"Implements the unsigned int to double cast operation for IEEE 754"
|
|
8980
|
+
" floating-point numbers.\n\nThe result is returned in r0 and r1, in accordance"
|
|
8981
|
+
" with the Procedure Call Standard for the Arm Architecture (see"
|
|
8982
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
8983
|
+
" uint\nreturn: (double)uint",
|
|
8984
|
+
)
|
|
8985
|
+
|
|
8986
|
+
_dmul = Symbol(
|
|
8987
|
+
None,
|
|
8988
|
+
None,
|
|
8989
|
+
None,
|
|
8990
|
+
"Implements the multiplication operator for IEEE 754 double-precision"
|
|
8991
|
+
" floating-point numbers.\n\nThe result is returned in r0 and r1, in accordance"
|
|
8992
|
+
" with the Procedure Call Standard for the Arm Architecture (see"
|
|
8993
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
8994
|
+
" a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn:"
|
|
8995
|
+
" a * b",
|
|
8996
|
+
)
|
|
8997
|
+
|
|
8998
|
+
_dsqrt = Symbol(
|
|
8999
|
+
None,
|
|
9000
|
+
None,
|
|
9001
|
+
None,
|
|
9002
|
+
"Analogous to the sqrt(3) C library function.\n\nThe result is returned in r0"
|
|
9003
|
+
" and r1, in accordance with the Procedure Call Standard for the Arm"
|
|
9004
|
+
" Architecture (see"
|
|
9005
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9006
|
+
" x (low bits)\nr1: x (high bits)\nreturn: sqrt(x)",
|
|
9007
|
+
)
|
|
9008
|
+
|
|
9009
|
+
_dsub = Symbol(
|
|
9010
|
+
None,
|
|
9011
|
+
None,
|
|
9012
|
+
None,
|
|
9013
|
+
"Implements the subtraction operator for IEEE 754 double-precision"
|
|
9014
|
+
" floating-point numbers.\n\nThe result is returned in r0 and r1, in accordance"
|
|
9015
|
+
" with the Procedure Call Standard for the Arm Architecture (see"
|
|
9016
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9017
|
+
" a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn:"
|
|
9018
|
+
" a - b",
|
|
9019
|
+
)
|
|
9020
|
+
|
|
9021
|
+
_fadd = Symbol(
|
|
8922
9022
|
[0x8EFA0],
|
|
8923
9023
|
[0x208EFA0],
|
|
8924
9024
|
None,
|
|
8925
|
-
"
|
|
8926
|
-
"
|
|
8927
|
-
|
|
9025
|
+
"Implements the addition operator for IEEE 754 floating-point"
|
|
9026
|
+
" numbers.\n\nAnalogous to __addsf3 in libgcc.\n\nr0: a\nr1: b\nreturn: a + b",
|
|
9027
|
+
)
|
|
9028
|
+
|
|
9029
|
+
_dgeq = Symbol(
|
|
9030
|
+
None,
|
|
9031
|
+
None,
|
|
9032
|
+
None,
|
|
9033
|
+
"Implements the >= operator for IEEE 754 double-precision floating-point"
|
|
9034
|
+
" numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b"
|
|
9035
|
+
" (high bits)\nreturn: a >= b",
|
|
9036
|
+
)
|
|
9037
|
+
|
|
9038
|
+
_dleq = Symbol(
|
|
9039
|
+
None,
|
|
9040
|
+
None,
|
|
9041
|
+
None,
|
|
9042
|
+
"Implements the <= operator for IEEE 754 double-precision floating-point"
|
|
9043
|
+
" numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b"
|
|
9044
|
+
" (high bits)\nreturn: a <= b",
|
|
9045
|
+
)
|
|
9046
|
+
|
|
9047
|
+
_dls = Symbol(
|
|
9048
|
+
None,
|
|
9049
|
+
None,
|
|
9050
|
+
None,
|
|
9051
|
+
"Implements the < operator for IEEE 754 double-precision floating-point"
|
|
9052
|
+
" numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b"
|
|
9053
|
+
" (high bits)\nreturn: a < b",
|
|
9054
|
+
)
|
|
9055
|
+
|
|
9056
|
+
_deq = Symbol(
|
|
9057
|
+
None,
|
|
9058
|
+
None,
|
|
9059
|
+
None,
|
|
9060
|
+
"Implements the == operator for IEEE 754 double-precision floating-point"
|
|
9061
|
+
" numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b"
|
|
9062
|
+
" (high bits)\nreturn: a == b",
|
|
9063
|
+
)
|
|
9064
|
+
|
|
9065
|
+
_dneq = Symbol(
|
|
9066
|
+
None,
|
|
9067
|
+
None,
|
|
9068
|
+
None,
|
|
9069
|
+
"Implements the != operator for IEEE 754 double-precision floating-point"
|
|
9070
|
+
" numbers.\n\nr0: a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b"
|
|
9071
|
+
" (high bits)\nreturn: a != b",
|
|
9072
|
+
)
|
|
9073
|
+
|
|
9074
|
+
_fls = Symbol(
|
|
9075
|
+
None,
|
|
9076
|
+
None,
|
|
9077
|
+
None,
|
|
9078
|
+
"Implements the < operator for IEEE 754 floating-point numbers.\n\nr0: a\nr1:"
|
|
9079
|
+
" b\nreturn: a < b",
|
|
8928
9080
|
)
|
|
8929
9081
|
|
|
8930
|
-
|
|
9082
|
+
_fdiv = Symbol(
|
|
8931
9083
|
[0x8F51C],
|
|
8932
9084
|
[0x208F51C],
|
|
8933
9085
|
None,
|
|
8934
|
-
"
|
|
8935
|
-
"
|
|
8936
|
-
"
|
|
9086
|
+
"Implements the division operator for IEEE 754 floating-point"
|
|
9087
|
+
" numbers.\n\nAnalogous to __divsf3 in libgcc.\n\nr0: dividend\nr1:"
|
|
9088
|
+
" divisor\nreturn: dividend / divisor",
|
|
8937
9089
|
)
|
|
8938
9090
|
|
|
8939
|
-
|
|
9091
|
+
_f2d = Symbol(
|
|
8940
9092
|
[0x8F8D4],
|
|
8941
9093
|
[0x208F8D4],
|
|
8942
9094
|
None,
|
|
8943
|
-
"
|
|
8944
|
-
"
|
|
8945
|
-
"
|
|
9095
|
+
"Implements the float to double cast operation for IEEE 754 floating-point"
|
|
9096
|
+
" numbers.\n\nAnalogous to __extendsfdf2 in libgcc.\n\nThe result is returned"
|
|
9097
|
+
" in r0 and r1, in accordance with the Procedure Call Standard for the Arm"
|
|
9098
|
+
" Architecture (see"
|
|
9099
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9100
|
+
" float\nreturn: (double)float",
|
|
8946
9101
|
)
|
|
8947
9102
|
|
|
8948
|
-
|
|
9103
|
+
_ffix = Symbol(
|
|
8949
9104
|
[0x8F958],
|
|
8950
9105
|
[0x208F958],
|
|
8951
9106
|
None,
|
|
8952
|
-
"
|
|
8953
|
-
"
|
|
8954
|
-
"
|
|
8955
|
-
"
|
|
9107
|
+
"Implements the float to int cast operation for IEEE 754 floating-point"
|
|
9108
|
+
" numbers. The output saturates if the input is out of the representable range"
|
|
9109
|
+
" for the int type.\n\nAnalogous to __fixsfsi in libgcc.\n\nr0: float\nreturn:"
|
|
9110
|
+
" (int)float",
|
|
8956
9111
|
)
|
|
8957
9112
|
|
|
8958
|
-
|
|
9113
|
+
_fflt = Symbol(
|
|
8959
9114
|
[0x8F98C],
|
|
8960
9115
|
[0x208F98C],
|
|
8961
9116
|
None,
|
|
8962
|
-
"
|
|
8963
|
-
"
|
|
8964
|
-
"
|
|
9117
|
+
"Implements the int to float cast operation for IEEE 754 floating-point"
|
|
9118
|
+
" numbers.\n\nAnalogous to __floatsisf in libgcc.\n\nr0: int\nreturn:"
|
|
9119
|
+
" (float)int",
|
|
8965
9120
|
)
|
|
8966
9121
|
|
|
8967
|
-
|
|
9122
|
+
_ffltu = Symbol(
|
|
8968
9123
|
[0x8F9D4],
|
|
8969
9124
|
[0x208F9D4],
|
|
8970
9125
|
None,
|
|
8971
|
-
"
|
|
8972
|
-
"
|
|
8973
|
-
"
|
|
9126
|
+
"Implements the unsigned int to float cast operation for IEEE 754"
|
|
9127
|
+
" floating-point numbers.\n\nAnalogous to __floatunsisf in libgcc.\n\nr0:"
|
|
9128
|
+
" uint\nreturn: (float)uint",
|
|
8974
9129
|
)
|
|
8975
9130
|
|
|
8976
|
-
|
|
9131
|
+
_fmul = Symbol(
|
|
8977
9132
|
[0x8FA1C],
|
|
8978
9133
|
[0x208FA1C],
|
|
8979
9134
|
None,
|
|
8980
|
-
"
|
|
8981
|
-
"
|
|
8982
|
-
" floating-point numbers.",
|
|
9135
|
+
"Implements the multiplication operator for IEEE 754 floating-point"
|
|
9136
|
+
" numbers.\n\nAnalogous to __mulsf3 in libgcc.\n\nr0: a\nr1: b\nreturn: a * b",
|
|
8983
9137
|
)
|
|
8984
9138
|
|
|
8985
9139
|
sqrtf = Symbol(
|
|
@@ -8989,51 +9143,108 @@ class JpArm9Functions:
|
|
|
8989
9143
|
"The sqrtf(3) C library function.\n\nr0: x\nreturn: sqrt(x)",
|
|
8990
9144
|
)
|
|
8991
9145
|
|
|
8992
|
-
|
|
9146
|
+
_fsub = Symbol(
|
|
8993
9147
|
[0x8FCEC],
|
|
8994
9148
|
[0x208FCEC],
|
|
8995
9149
|
None,
|
|
8996
|
-
"
|
|
8997
|
-
"
|
|
8998
|
-
|
|
9150
|
+
"Implements the subtraction operator for IEEE 754 floating-point"
|
|
9151
|
+
" numbers.\n\nAnalogous to __subsf3 in libgcc.\n\nr0: a\nr1: b\nreturn: a - b",
|
|
9152
|
+
)
|
|
9153
|
+
|
|
9154
|
+
_ll_mod = Symbol(
|
|
9155
|
+
None,
|
|
9156
|
+
None,
|
|
9157
|
+
None,
|
|
9158
|
+
"Implements the modulus operator for signed long longs.\n\nThe result is"
|
|
9159
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9160
|
+
" Arm Architecture (see"
|
|
9161
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9162
|
+
" dividend (low bits)\nr1: dividend (high bits)\nr2: divisor (low bits)\nr3:"
|
|
9163
|
+
" divisor (high bits)\nreturn: dividend % divisor",
|
|
9164
|
+
)
|
|
9165
|
+
|
|
9166
|
+
_ll_sdiv = Symbol(
|
|
9167
|
+
None,
|
|
9168
|
+
None,
|
|
9169
|
+
None,
|
|
9170
|
+
"Implements the division operator for signed long longs.\n\nThe result is"
|
|
9171
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9172
|
+
" Arm Architecture (see"
|
|
9173
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9174
|
+
" dividend (low bits)\nr1: dividend (high bits)\nr2: divisor (low bits)\nr3:"
|
|
9175
|
+
" divisor (high bits)\nreturn: dividend / divisor",
|
|
9176
|
+
)
|
|
9177
|
+
|
|
9178
|
+
_ll_udiv = Symbol(
|
|
9179
|
+
None,
|
|
9180
|
+
None,
|
|
9181
|
+
None,
|
|
9182
|
+
"Implements the division operator for unsigned long longs.\n\nThe result is"
|
|
9183
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9184
|
+
" Arm Architecture (see"
|
|
9185
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9186
|
+
" dividend (low bits)\nr1: dividend (high bits)\nr2: divisor (low bits)\nr3:"
|
|
9187
|
+
" divisor (high bits)\nreturn: dividend / divisor",
|
|
9188
|
+
)
|
|
9189
|
+
|
|
9190
|
+
_ull_mod = Symbol(
|
|
9191
|
+
None,
|
|
9192
|
+
None,
|
|
9193
|
+
None,
|
|
9194
|
+
"Implements the modulus operator for unsigned long longs.\n\nThe result is"
|
|
9195
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9196
|
+
" Arm Architecture (see"
|
|
9197
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9198
|
+
" dividend (low bits)\nr1: dividend (high bits)\nr2: divisor (low bits)\nr3:"
|
|
9199
|
+
" divisor (high bits)\nreturn: dividend % divisor",
|
|
8999
9200
|
)
|
|
9000
9201
|
|
|
9001
|
-
|
|
9202
|
+
_ll_mul = Symbol(
|
|
9203
|
+
None,
|
|
9204
|
+
None,
|
|
9205
|
+
None,
|
|
9206
|
+
"Implements the multiplication operator for signed long longs.\n\nThe result is"
|
|
9207
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9208
|
+
" Arm Architecture (see"
|
|
9209
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9210
|
+
" a (low bits)\nr1: a (high bits)\nr2: b (low bits)\nr3: b (high bits)\nreturn:"
|
|
9211
|
+
" a * b",
|
|
9212
|
+
)
|
|
9213
|
+
|
|
9214
|
+
_s32_div_f = Symbol(
|
|
9002
9215
|
[0x9018C],
|
|
9003
9216
|
[0x209018C],
|
|
9004
9217
|
None,
|
|
9005
|
-
"
|
|
9006
|
-
"
|
|
9007
|
-
"
|
|
9008
|
-
"
|
|
9009
|
-
"
|
|
9010
|
-
" (see"
|
|
9218
|
+
"Implements the division operator for signed ints.\n\nAnalogous to __divsi3 in"
|
|
9219
|
+
" libgcc.\n\nThe return value is a 64-bit integer, with the quotient (dividend"
|
|
9220
|
+
" / divisor) in the lower 32 bits and the remainder (dividend % divisor) in the"
|
|
9221
|
+
" upper 32 bits. In accordance with the Procedure Call Standard for the Arm"
|
|
9222
|
+
" Architecture (see"
|
|
9011
9223
|
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return),"
|
|
9012
9224
|
" this means that the quotient is returned in r0 and the remainder is returned"
|
|
9013
9225
|
" in r1.\n\nr0: dividend\nr1: divisor\nreturn: (quotient) | (remainder << 32)",
|
|
9014
9226
|
)
|
|
9015
9227
|
|
|
9016
|
-
|
|
9228
|
+
_u32_div_f = Symbol(
|
|
9017
9229
|
[0x90398],
|
|
9018
9230
|
[0x2090398],
|
|
9019
9231
|
None,
|
|
9020
|
-
"
|
|
9021
|
-
"
|
|
9022
|
-
"
|
|
9023
|
-
" the
|
|
9024
|
-
"
|
|
9025
|
-
" (see"
|
|
9232
|
+
"Implements the division operator for unsigned ints.\n\nAnalogous to __udivsi3"
|
|
9233
|
+
" in libgcc.\n\nThe return value is a 64-bit integer, with the quotient"
|
|
9234
|
+
" (dividend / divisor) in the lower 32 bits and the remainder (dividend %"
|
|
9235
|
+
" divisor) in the upper 32 bits. In accordance with the Procedure Call Standard"
|
|
9236
|
+
" for the Arm Architecture (see"
|
|
9026
9237
|
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return),"
|
|
9027
9238
|
" this means that the quotient is returned in r0 and the remainder is returned"
|
|
9028
|
-
" in r1.\nNote: This function falls through to
|
|
9239
|
+
" in r1.\nNote: This function falls through to _u32_div_not_0_f.\n\nr0:"
|
|
9029
9240
|
" dividend\nr1: divisor\nreturn: (quotient) | (remainder << 32)",
|
|
9030
9241
|
)
|
|
9031
9242
|
|
|
9032
|
-
|
|
9243
|
+
_u32_div_not_0_f = Symbol(
|
|
9033
9244
|
[0x903A0],
|
|
9034
9245
|
[0x20903A0],
|
|
9035
9246
|
None,
|
|
9036
|
-
"Subsidiary function to
|
|
9247
|
+
"Subsidiary function to _u32_div_f. Skips the initial check for divisor =="
|
|
9037
9248
|
" 0.\n\nThe return value is a 64-bit integer, with the quotient (dividend /"
|
|
9038
9249
|
" divisor) in the lower 32 bits and the remainder (dividend % divisor) in the"
|
|
9039
9250
|
" upper 32 bits. In accordance with the Procedure Call Standard for the Arm"
|
|
@@ -9044,6 +9255,39 @@ class JpArm9Functions:
|
|
|
9044
9255
|
" dividend\nr1: divisor\nreturn: (quotient) | (remainder << 32)",
|
|
9045
9256
|
)
|
|
9046
9257
|
|
|
9258
|
+
_drdiv = Symbol(
|
|
9259
|
+
None,
|
|
9260
|
+
None,
|
|
9261
|
+
None,
|
|
9262
|
+
"The same as _ddiv, but with the parameters reversed.\n\nThis simply swaps the"
|
|
9263
|
+
" first and second parameters, then falls through to _ddiv.\n\nThe result is"
|
|
9264
|
+
" returned in r0 and r1, in accordance with the Procedure Call Standard for the"
|
|
9265
|
+
" Arm Architecture (see"
|
|
9266
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9267
|
+
" divisor (low bits)\nr1: divisor (high bits)\nr2: dividend (low bits)\nr3:"
|
|
9268
|
+
" dividend (high bits)\nreturn: dividend / divisor",
|
|
9269
|
+
)
|
|
9270
|
+
|
|
9271
|
+
_ddiv = Symbol(
|
|
9272
|
+
None,
|
|
9273
|
+
None,
|
|
9274
|
+
None,
|
|
9275
|
+
"Implements the division operator for IEEE 754 double-precision floating-point"
|
|
9276
|
+
" numbers.\n\nThe result is returned in r0 and r1, in accordance with the"
|
|
9277
|
+
" Procedure Call Standard for the Arm Architecture (see"
|
|
9278
|
+
" https://github.com/ARM-software/abi-aa/blob/60a8eb8c55e999d74dac5e368fc9d7e36e38dda4/aapcs32/aapcs32.rst#result-return).\n\nr0:"
|
|
9279
|
+
" dividend (low bits)\nr1: dividend (high bits)\nr2: divisor (low bits)\nr3:"
|
|
9280
|
+
" divisor (high bits)\nreturn: dividend / divisor",
|
|
9281
|
+
)
|
|
9282
|
+
|
|
9283
|
+
_fp_init = Symbol(
|
|
9284
|
+
None,
|
|
9285
|
+
None,
|
|
9286
|
+
None,
|
|
9287
|
+
"Meant to do set up for floating point calculations? Does nothing.\n\nNo"
|
|
9288
|
+
" params.",
|
|
9289
|
+
)
|
|
9290
|
+
|
|
9047
9291
|
|
|
9048
9292
|
class JpArm9Data:
|
|
9049
9293
|
|