Jose Catena <jc1@diwaves.com>
[reactos.git] / reactos / lib / sdk / crt / math / rand.c
1 /* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
2 #include <precomp.h>
3
4 #include <internal/tls.h>
5
6 /*
7 * @implemented
8 */
9 int
10 rand(void)
11 {
12 PTHREADDATA ThreadData = GetThreadData();
13
14 ThreadData->tnext = ThreadData->tnext * 0x5deece66dLL + 2531011;
15 return (int)((ThreadData->tnext >> 16) & RAND_MAX);
16 }
17
18 /*
19 * @implemented
20 */
21 void
22 srand(unsigned int seed)
23 {
24 PTHREADDATA ThreadData = GetThreadData();
25
26 ThreadData->tnext = (ULONGLONG)seed;
27 }