From ce38b43357c573f4a68d24a10f847473ff77b305 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 18 Apr 2012 03:47:31 +0000 Subject: Graphic display, no scalling, no input ... jet --- main.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'main.c') diff --git a/main.c b/main.c index 02a4f8f..70634d1 100644 --- a/main.c +++ b/main.c @@ -21,8 +21,10 @@ #include #include "dcpu16.h" +void (*emu)(unsigned short *, unsigned short *); + void -dumpcode(unsigned short *m) +dumpcode(unsigned short *m, unsigned short *r) { int i, k, sum; @@ -54,17 +56,17 @@ main(int argc, char **argv) unsigned short *m; unsigned short r[nReg] = { 0 }; FILE *fd; - int e_flag = 0; - int g_flag = 0; int ch; + emu = dumpcode; + while ((ch = getopt(argc, argv, "eg")) != -1) switch (ch) { case 'e': - e_flag = 1; + emu = tuiemu; break; case 'g': - g_flag = 1; + emu = guiemu; break; default: usage(); @@ -84,10 +86,7 @@ main(int argc, char **argv) m = compile(fd, MEMSZ); fclose(fd); - if (e_flag) - tuiemu(m, r); - else - dumpcode(m); + emu(m, r); return 0; } -- cgit v1.2.3