diff options
Diffstat (limited to 'src/code/code_800FD970.c')
| -rw-r--r-- | src/code/code_800FD970.c | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/src/code/code_800FD970.c b/src/code/code_800FD970.c deleted file mode 100644 index cc9dc5e63..000000000 --- a/src/code/code_800FD970.c +++ /dev/null @@ -1,79 +0,0 @@ -#include "global.h" - -// The latest generated random number, used to generate the next number in the sequence. -static u32 sRandInt = 1; - -// Space to store a value to be re-interpreted as a float. -static u32 sRandFloat; - -/** - * Gets the next integer in the sequence of pseudo-random numbers. - */ -u32 Rand_Next(void) { - return sRandInt = (sRandInt * 1664525) + 1013904223; -} - -/** - * Seeds the pseudo-random number generator by providing a starting value. - */ -void Rand_Seed(u32 seed) { - sRandInt = seed; -} - -/** - * Returns a pseudo-random floating-point number between 0.0f and 1.0f, by generating - * the next integer and masking it to an IEEE-754 compliant floating-point number - * between 1.0f and 2.0f, returning the result subtract 1.0f. - */ -f32 Rand_ZeroOne(void) { - sRandInt = (sRandInt * 1664525) + 1013904223; - sRandFloat = ((sRandInt >> 9) | 0x3F800000); - return *((f32*)&sRandFloat) - 1.0f; -} - -/** - * Returns a pseudo-random floating-point number between -0.5f and 0.5f by the same - * manner in which Rand_ZeroOne generates its result. - */ -f32 Rand_Centered(void) { - sRandInt = (sRandInt * 1664525) + 1013904223; - sRandFloat = ((sRandInt >> 9) | 0x3F800000); - return *((f32*)&sRandFloat) - 1.5f; -} - -/** - * Seeds a pseudo-random number at rndNum with a provided seed. - */ -void Rand_Seed_Variable(u32* rndNum, u32 seed) { - *rndNum = seed; -} - -/** - * Generates the next pseudo-random integer from the provided rndNum. - */ -u32 Rand_Next_Variable(u32* rndNum) { - return *rndNum = (*rndNum * 1664525) + 1013904223; -} - -/** - * Generates the next pseudo-random floating-point number between 0.0f and - * 1.0f from the provided rndNum. - */ -f32 Rand_ZeroOne_Variable(u32* rndNum) { - u32 next = (*rndNum * 1664525) + 1013904223; - - sRandFloat = ((*rndNum = next) >> 9) | 0x3F800000; - return *((f32*)&sRandFloat) - 1.0f; -} - -/** - * Generates the next pseudo-random floating-point number between -0.5f and - * 0.5f from the provided rndNum. - */ -f32 Rand_Centered_Variable(u32* rndNum) { - u32 next = (*rndNum * 1664525) + 1013904223; - - *rndNum = next; - sRandFloat = (next >> 9) | 0x3F800000; - return *((f32*)&sRandFloat) - 1.5f; -} |
