diff --git a/asm/datazone.x230.config b/asm/datazone.x230.config index e1dd089..0bb5668 100644 --- a/asm/datazone.x230.config +++ b/asm/datazone.x230.config @@ -1,4 +1,6 @@ +option want_rows 10 + # too many false positives #load_memory 0x00ffc 4188 x230.G2HT35WW.img 0x00ffc 0 #load_memory 0x02920 52 x230.G2HT35WW.img 0x02920 0 diff --git a/asm/dump_datazone b/asm/dump_datazone index e625a4f..300506c 100755 --- a/asm/dump_datazone +++ b/asm/dump_datazone @@ -272,6 +272,9 @@ sub load_configfile { } elsif (m/^sizes\W+/) { my @a = split(/\W+/,$_); $db->{sizes}{$a[1]} = $a[2]; + } elsif (m/^option\W+/) { + my @a = split(/\W+/,$_); + $db->{option}{$a[1]} = $a[2]; } } } @@ -411,8 +414,7 @@ sub output_dot { } # what is the maximum number of rows per object? - # FIXME - expose this variable on the commandline - my $want_rows = 1; + my $want_rows = $db->{option}{want_rows}; if ($want_rows < 2) { @ports = $ports[0]; @@ -444,6 +446,7 @@ sub main() { $db->{sizes}{word} = 4; $db->{sizes}{ptr} = 4; $db->{sizes}{endian} = "little"; + $db->{option}{want_rows} = 1; $db->{symbols} = Symbols->new(); $db->{regions} = MemRegions->new();