Annotation of 43BSDReno/games/warp/util.h, revision 1.1.1.1

1.1       root        1: /* $Header: util.h,v 7.0 86/10/08 15:14:37 lwall Exp $ */
                      2: 
                      3: /* $Log:       util.h,v $
                      4:  * Revision 7.0  86/10/08  15:14:37  lwall
                      5:  * Split into separate files.  Added amoebas and pirates.
                      6:  * 
                      7:  */
                      8: 
                      9: #if RANDBITS < 15 || defined(lint)
                     10: #define rand_mod(m) getpid()
                     11: #define RANDRAND 0.0
                     12: #define HALFRAND 0
                     13: #define myrand() getpid()
                     14: #else
                     15: #if RANDBITS == 15     /* 15 bits of rand()? */
                     16: #define RANDRAND 268435456.0 /* that's 2**28 */
                     17: #define HALFRAND 0x4000 /* that's 2**14 */
                     18: int rand();
                     19: #define myrand() (rand()&32767)
                     20: #define rand_mod(m) ((int)((double)myrand() / 32768.0 * ((double)(m))))
                     21: /* pick number in 0..m-1 */
                     22: 
                     23: #else
                     24: 
                     25: #if RANDBITS < 31      /* 16 bits of rand()? */
                     26: #define RANDRAND 1073741824.0 /* that's 2**30 */
                     27: #define HALFRAND 0x8000 /* that's 2**15 */
                     28: unsigned rand();
                     29: #define myrand() (rand()&65535)
                     30: #define rand_mod(m) ((int)((double)myrand() / 65536.0 * ((double)(m))))
                     31: /* pick number in 0..m-1 */
                     32: 
                     33: #else          /* assume 31 bits */
                     34: #define RANDRAND 1152921504606846976.0 /* that's 2**60 */
                     35: #define HALFRAND 0x40000000 /* that's 2**30 */
                     36: long rand();
                     37: #define myrand() rand()
                     38: #define rand_mod(m) ((myrand() / 37) % (m)) /* pick number in 0..m-1 */
                     39: /*
                     40:  * The reason for the /37 above is that our random number generator yields
                     41:  * successive evens and odds, for some reason.  This makes strange star maps.
                     42:  */
                     43: #endif
                     44: #endif
                     45: #endif
                     46: 
                     47: 
                     48:     /* we get fractions of seconds from calling ftime on timebuf */
                     49: 
                     50: EXT struct timeb timebuf;
                     51: #define roundsleep(x) (ftime(&timebuf),sleep(timebuf.millitm > 500?x+1:x))
                     52: 
                     53: void movc3();
                     54: void no_can_do();
                     55: int exdis();
                     56: 
                     57: EXT bool waiting INIT(FALSE);          /* are we waiting for subprocess (in doshell)? */
                     58: 
                     59: #ifdef NOTDEF
                     60: EXT int len_last_line_got INIT(0);
                     61:                        /* strlen of some_buf after */
                     62:                        /*  some_buf = get_a_line(bufptr,buffersize,fp) */
                     63: #endif
                     64: 
                     65: #ifdef NOTDEF
                     66: /* is the string for makedir a directory name or a filename? */
                     67: 
                     68: #define MD_DIR 0
                     69: #define MD_FILE 1
                     70: #endif
                     71: 
                     72: void util_init();
                     73: char   *safemalloc();
                     74: char   *safecpy();
                     75: char   *cpytill();
                     76: char   *instr();
                     77: #ifdef SETUIDGID
                     78:     int                eaccess();
                     79: #endif
                     80: char   *getwd();
                     81: void   cat();
                     82: void   prexit();
                     83: char   *savestr();
                     84: char   *getval();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.