foreach my $b (sort keys %{$lastboards}) { #for every board
my $ttmp = ""; #"Line Header" part
my $ttmp2 = ""; #"Line Content" part
- my $sl = "";
+ my $sl = ""; #Slice name cell
my $slicename = "";
$slicename = " - ".$obj->{sliceName}->{$slice} if (exists $obj->{sliceName}->{$slice});
next unless defined $data->{$addr}->{$b} || !($obj->{mode} =~ /r/);
$iswriteable = $iswriteable || ($db->{$c}->{mode} =~ /w/);
}
if($iswriteable) {
- my $s = sprintf("w 0x%s 0x%04x 0x%08x \t#%s %i%s",$b,$addr,$data->{$addr}->{$b},$name,$slice,$slicename);
+ my $s = sprintf("w 0x%s 0x%04x 0x%08x",
+ $b,
+ $addr,
+ $data->{$addr}->{$b}
+ );
+ $s .= sprintf(" \t#%s.%i%s",
+ $name,
+ $slice,
+ $slicename);
+ foreach my $c (@{$obj->{children}}) {
+ next unless ($db->{$c}->{mode} =~ /w/);
+ $s .= sprintf(", Bit %i..%i: %s",
+ $db->{$c}->{start},
+ $db->{$c}->{start}+$db->{$c}->{bits}-1,
+ $c);
+ }
push(@RegisterDump,$s);
}
}
if($StyleDump) {
print join("\n",@RegisterDump);
- print("\n");
+ print("\n\n") if scalar @RegisterDump;
}
else {
print $t;