diff --git a/libs/klib/Makefile b/libs/klib/Makefile index b85722a0..5fbc1e84 100644 --- a/libs/klib/Makefile +++ b/libs/klib/Makefile @@ -2,5 +2,6 @@ NAME = klib SRCS = src/printk.c \ src/string.c \ src/cpp.c \ + src/stdlib.c \ src/io.c include $(AM_HOME)/Makefile.lib diff --git a/libs/klib/src/stdlib.c b/libs/klib/src/stdlib.c new file mode 100644 index 00000000..d9142876 --- /dev/null +++ b/libs/klib/src/stdlib.c @@ -0,0 +1,11 @@ +static unsigned long int next = 1; + +int rand(void) { + // RAND_MAX assumed to be 32767 + next = next * 1103515245 + 12345; + return (unsigned int)(next/65536) % 32768; +} + +void srand(unsigned int seed) { + next = seed; +}