From: Jason Self Date: Sat, 19 Sep 2015 04:15:18 +0000 (-0700) Subject: zilasm/main: Default ZVersion changed from 1 to 6, ZorkID changed from byte to word. X-Git-Url: https://jxself.org/git/?p=zilutils.git;a=commitdiff_plain;h=96b70de7e75c4a903ee686385a101894403c99b0 zilasm/main: Default ZVersion changed from 1 to 6, ZorkID changed from byte to word. --- diff --git a/zilasm/main.c b/zilasm/main.c index 1621676..a6bfa68 100644 --- a/zilasm/main.c +++ b/zilasm/main.c @@ -37,13 +37,14 @@ static struct option const long_options[] = { "zorkid", required_argument, NULL, ZORKID }, { "serial", required_argument, NULL, ZSERIAL }, { NULL, 0, NULL, 0 } + }; struct { - int zversion; /* 0 - 8 */ - int zorkid; /* 0 - 255 */ - char zserial[7]; /* YYMMDD */ + int zversion; /* 0 - 8 */ + int zorkid; /* 0 - 65535 */ + char zserial[7]; /* YYMMDD */ } Config; void wrong_arg() @@ -54,13 +55,12 @@ void wrong_arg() void print_version() { - printf(PACKAGE_STRING "\n" - "License AGPLv3+: GNU AGPL version 3 or later\n" - "\n" - "This is free software: you are free to change and redistribute it.\n" - "There is NO WARRANTY, to the extent permitted by law.\n" + printf( PACKAGE_STRING "\n" + "License AGPLv3+: GNU AGPL version 3 or later\n" + "\n" + "This is free software: you are free to change and redistribute it.\n" + "There is NO WARRANTY, to the extent permitted by law.\n" ); - exit(0); } @@ -72,11 +72,10 @@ void print_usage(int failed) "--help Display this help\n" "\n" "--zversion (accepts numbers 1 - 8, defaults to 1 if not specified)\n" - "--zorkid (accepts digits, defaults to 0 if not specified)\n" + "--zorkid (integer between 0 and 65535, defaults to 0 if not specified)\n" "--serial (six characters of ASCII, defaults to current date\n" " in the form YYMMDD if not specified)\n" ); - exit(failed); } @@ -84,14 +83,14 @@ void fill_zserial(void) { time_t t; struct tm *timeinfo; - time(&t); + time (&t); timeinfo = localtime(&t); - strftime(Config.zserial, sizeof(Config.zserial), "%y%m%d", timeinfo); + strftime (Config.zserial, sizeof(Config.zserial), "%y%m%d", timeinfo); } void fill_config(void) { - Config.zversion = 1; + Config.zversion = 6; Config.zorkid = 0; fill_zserial(); } @@ -103,14 +102,12 @@ void parse_intarg(int *dest, const char name[], int min, int max, int defval) *dest = defval; return; } - int n = atoi(optarg); if (n >= min && n <= max) { *dest = n; return; } - fprintf(stderr, "Wrong %s value %s, must be integer between %d and %d\n", name, optarg, min, max); wrong_arg(); @@ -123,22 +120,19 @@ void parse_zserial(void) fill_zserial(); return; } - size_t n = strlen(optarg); if (n == sizeof(Config.zserial) - 1) { char *p = optarg; while (*p && isalnum(*p)) p++; - - if (!*p) /* ..optarg contains alphanumeric only? */ + if (!*p) /* ..optarg contains alphanumeric only? */ { strncpy(Config.zserial, optarg, sizeof(Config.zserial)); return; } } - - fprintf(stderr, "Wrong zserial value %s, must be 6 ASCII characters\n", optarg); + fprintf(stderr, "Wrong zserial value %s, must be 6 ascii characters\n", optarg); wrong_arg(); } @@ -147,19 +141,19 @@ int main(int argc, char *argv[], char *envp[]) fill_config(); int opt = 0; - while ((opt = getopt_long(argc, argv, "hV", long_options, NULL)) != -1) + while ((opt = getopt_long (argc, argv, "hV", long_options, NULL)) != -1) { - switch (opt) + switch(opt) { case 'h' : print_usage(0); case 'V' : print_version(); case ZVERSION: - parse_intarg(&Config.zversion, "zversion", 1, 8, 1); + parse_intarg(&Config.zversion, "zversion", 1, 8, 1); break; case ZORKID : - parse_intarg(&Config.zorkid, "zorkid", 0, 255, 0); + parse_intarg(&Config.zorkid, "zorkid", 0, 0xFFFF, 0); break; case ZSERIAL : parse_zserial();