]> git.cameronkatri.com Git - bsdgames-darwin.git/blobdiff - monop/roll.c
Add (unsigned char) cast to ctype functions
[bsdgames-darwin.git] / monop / roll.c
index 9de116f492b6ba666bdcc3062d91021514d9413c..07395fa954c4b4c712df97e5d43fc5a1115b727f 100644 (file)
@@ -1,6 +1,8 @@
+/*     $NetBSD: roll.c,v 1.9 2003/08/07 09:37:29 agc Exp $     */
+
 /*
- * Copyright (c) 1980 Regents of the University of California.
- * All rights reserved.
+ * Copyright (c) 1980, 1993
+ *     The Regents of the University of California.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
  * SUCH DAMAGE.
  */
 
+#include <sys/cdefs.h>
 #ifndef lint
-static char sccsid[] = "@(#)roll.c     5.5 (Berkeley) 6/1/90";
+#if 0
+static char sccsid[] = "@(#)roll.c     8.1 (Berkeley) 5/31/93";
+#else
+__RCSID("$NetBSD: roll.c,v 1.9 2003/08/07 09:37:29 agc Exp $");
+#endif
 #endif /* not lint */
 
+#include "monop.ext"
+#include <stdlib.h>
+
 /*
  *     This routine rolls ndie nside-sided dice.
  */
 
-# define       reg     register
-
-# if !defined(vax) && !defined(tahoe)
-# define       MAXRAND 32767L
+#if defined(pdp11)
+#define        MAXRAND 32767L
 
+int
 roll(ndie, nsides)
-int    ndie, nsides; {
-
-       reg long        tot;
-       reg unsigned    n, r;
+       int ndie, nsides;
+{
+       long tot;
+       unsigned n, r;
 
        tot = 0;
        n = ndie;
@@ -57,18 +62,19 @@ int ndie, nsides; {
        return (int) ((tot * (long) nsides) / ((long) MAXRAND + 1)) + ndie;
 }
 
-# else
+#else
 
+int
 roll(ndie, nsides)
-reg int        ndie, nsides; {
-
-       reg int         tot, r;
-       reg double      num_sides;
+       int ndie, nsides;
+{
+       int tot, r;
+       double num_sides;
 
        num_sides = nsides;
        tot = 0;
        while (ndie--)
-               tot += (r = rand()) * (num_sides / 017777777777) + 1;
+               tot += (r = rand()) * (num_sides / RAND_MAX) + 1;
        return tot;
 }
-# endif
+#endif