From 88546f2f0f223d9b822028f0b1f9ef8bcbd267a9 Mon Sep 17 00:00:00 2001 From: cornelk Date: Wed, 26 Jul 2023 15:45:06 -0600 Subject: add argument to set zero fill setting --- source/main.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/main.c b/source/main.c index 0185e65..b646b37 100644 --- a/source/main.c +++ b/source/main.c @@ -87,6 +87,7 @@ static struct argp_option options[] = { { "listing-file", 'L', "", 0, "Name of the listing file" }, { "warnings", 'W', 0, 0, "Show overflow warnings" }, { "output", 'o', "", 0, "Name of the output file, use '-' for stdout" }, + { "zero-fill", 'z', 0, 0, "Fill unused space in ROM with zeroes" }, { 0 } }; @@ -159,12 +160,17 @@ parse_opt (int key, char *arg, struct argp_state *state) argp_usage(state); break; case 's': + if (zero_fill==1) break; dump_seg++; if (dump_seg > 2) dump_seg = 2; break; case 'S': + if (zero_fill==1) break; dump_seg = 2; break; + case 'z': + zero_fill=1; + dump_seg = 0; // disable segment info as zero filling makes it inaccurate case 'i': list_opt = 1; break; -- cgit v1.2.3 From f20c60102c6231fc6f72f9991511762049f55e73 Mon Sep 17 00:00:00 2001 From: cornelk Date: Tue, 8 Aug 2023 23:17:34 -0600 Subject: move zero fill check after argument parsing --- source/main.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/source/main.c b/source/main.c index b646b37..8285856 100644 --- a/source/main.c +++ b/source/main.c @@ -160,17 +160,14 @@ parse_opt (int key, char *arg, struct argp_state *state) argp_usage(state); break; case 's': - if (zero_fill==1) break; dump_seg++; if (dump_seg > 2) dump_seg = 2; break; case 'S': - if (zero_fill==1) break; dump_seg = 2; break; case 'z': zero_fill=1; - dump_seg = 0; // disable segment info as zero filling makes it inaccurate case 'i': list_opt = 1; break; @@ -268,6 +265,8 @@ main(int argc, char **argv) /* parse command line */ argp_parse(&argp, argc, argv, 0, 0, 0); + if (zero_fill==1) dump_seg = 0; // disable segment info as zero filling makes it inaccurate + /* search file extension */ char basename[strlen(in_fname)+1]; strcpy(basename, in_fname); -- cgit v1.2.3