Implement -d option. advent430
authorEric S. Raymond <esr@thyrsus.com>
Wed, 29 Mar 2023 20:18:34 +0000 (16:18 -0400)
committerEric S. Raymond <esr@thyrsus.com>
Wed, 29 Mar 2023 20:40:57 +0000 (16:40 -0400)
main.c
main.h
misc.c

diff --git a/main.c b/main.c
index 558edcf2a5dc191864d1a3ee5596d63cd0425791..bfc4a12bd0e2ce07fff9236b13f75ca0ef8f1f4c 100644 (file)
--- a/main.c
+++ b/main.c
@@ -42,6 +42,7 @@ long ABBNUM, ACTSPK[36], AMBER, ATTACK, AXE, BACK, BATTER, BEAR, BIRD, BLOOD, BO
                WZDARK = false, ZZWORD;
 FILE  *logfp;
 bool oldstyle = false;
+int debug;
 lcg_state lcgstate;
 
 extern void initialise();
@@ -67,8 +68,11 @@ int main(int argc, char *argv[]) {
 
 /*  Options. */
 
-       while ((ch = getopt(argc, argv, "l:o")) != EOF) {
+       while ((ch = getopt(argc, argv, "dl:o")) != EOF) {
                switch (ch) {
+               case 'd':
+                   debug += 1;
+                   break;
                case 'l':
                        logfp = fopen(optarg, "w+");
                        if (logfp == NULL)
diff --git a/main.h b/main.h
index 184aceea0a17be1a0e727614318946042001e02a..8489fa449d43ece797d28123a3dd81ae77244138 100644 (file)
--- a/main.h
+++ b/main.h
@@ -13,4 +13,5 @@ extern long ABB[], ATAB[], ATLOC[], BLKLIN, DFLAG, DLOC[], FIXED[], HOLDNG,
 extern signed char rawbuf[LINESIZE], INLINE[LINESIZE+1], MAP1[], MAP2[];
 extern FILE *logfp;
 extern bool oldstyle;
+extern int debug;
 extern lcg_state lcgstate;
diff --git a/misc.c b/misc.c
index e717b3fd98fca90de3778301f5ffe52f6f9ee3a6..4ee0f2b79abe017bedb7eead2d1758cecf3f3795 100644 (file)
--- a/misc.c
+++ b/misc.c
@@ -770,6 +770,9 @@ unsigned long get_next_lcg_value(void)
   /* Return the LCG's current value, and then iterate it. */
   unsigned long old_x = lcgstate.x;
   lcgstate.x = (lcgstate.a * lcgstate.x + lcgstate.c) % lcgstate.m;
+  if (debug) {
+      printf("# random %lu\n", old_x);
+  }
   return(old_x);
 }