– random module – ensure_mixedcase() function
1.4 KiB
stdio
The stdio
module automatically imports the string
and err
modules.
It requires an implementation of void putchar(byte a)
and therefore works only on targets with console output.
void putstr(pointer str, byte len)
Prints a string of length len
located at address str
.
void putstrz(pointer str)
Prints a null-terminated string located at address str
.
If the string is longer than 255 bytes, then the behaviour is undefined (might even crash).
void ensure_mixedcase()
On targets that have separate all-caps and mixed-case modes (like most Commodore machines), switches to the mixed-case mode.
err
enum error_number
Standard error codes. All codes other than err_ok
suggest that the last operation failed.
error_number errno
The result of the last operation.
random
A simple and reasonably fast random number generator. Not suitable for cryptographic or simulation uses.
word rand_seed
Random number generator state.
byte rand()
Get a random byte (0–255) and update the state of the generator.
void init_rand_seed()
Initializes the random number generator state. This may take a long time, even several frames, depending on the target.
Current implementation:
-
On C64, spends two frames reading noise data from the SID chip.
-
On Z80, reads the refresh register.
-
On all other targets, sets the seed to 1.