aboutsummaryrefslogtreecommitdiff
path: root/tests/life.c
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-04-25 19:48:54 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-04-25 21:32:43 -0700
commitd239ec265a345fdfdc2f12d9ffa149bfd15ca4e9 (patch)
tree14f270c362936f071359b00418a21d3090803167 /tests/life.c
parent46630aa446c6e984c5e3c745bf36cb7fa555c309 (diff)
standardize benchmark inputs
Diffstat (limited to 'tests/life.c')
-rw-r--r--tests/life.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/tests/life.c b/tests/life.c
index 08742f64..5f902cf1 100644
--- a/tests/life.c
+++ b/tests/life.c
@@ -74,14 +74,19 @@ void game(int w, int h, int i)
show(univ, w, h);
}
-int main(int c, char **v)
+int main(int argc, char **argv)
{
- int w = 0, h = 0, i = -1; // i = -1 means run forever, normal. otherwise, run in benchmark mode
- if (c > 1) w = atoi(v[1]);
- if (c > 2) h = atoi(v[2]);
- if (c > 3) i = atoi(v[3]);
- if (w <= 0) w = 32;
- if (h <= 0) h = 32;
+ int w, h, i;
+ int arg = argc > 1 ? argv[1][0] - '0' : 1;
+ switch(arg) {
+ case 0: w = h = 32; i = 13000; break;
+ case 1: w = h = 32; i = 24000; break;
+ case 2: w = h = 32; i = 5*24000; break;
+ case 3: w = h = 32; i = 10*24000; break;
+ default: printf("error: %d\\n", arg); return -1;
+ }
+
+ printf("life: %d,%d,%d,%d\n", arg, w, h, i);
game(w, h, i);
}