Rev 141 | Rev 153 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 141 | Rev 142 | ||
|---|---|---|---|
| Line 64... | Line 64... | ||
| 64 | # Visible labels are stored as pins because their size affects the
|
64 | # Visible labels are stored as pins because their size affects the
|
| 65 | # size of the symbols' box.
|
65 | # size of the symbols' box.
|
| 66 | if (/\S/ && $side eq "labels") { |
66 | if (/\S/ && $side eq "labels") { |
| 67 | if ($_ =~ /^block=/) { |
67 | if ($_ =~ /^block=/) { |
| 68 | $blockname = $_; |
68 | $blockname = $_; |
| 69 | printf STDERR "Blocname %s\n", $blockname; |
69 | #printf STDERR "Blocname %s\n", $blockname;
|
| 70 | next; |
70 | next; |
| 71 | }
|
71 | }
|
| 72 | $labelpin --; |
72 | $labelpin --; |
| 73 | $pinside{$labelpin} = $side; |
73 | $pinside{$labelpin} = $side; |
| 74 | $piny{$labelpin} = $y{labels}; |
74 | $piny{$labelpin} = $y{labels}; |
| Line 171... | Line 171... | ||
| 171 | 171 | ||
| 172 | 172 | ||
| 173 | for ($i = $y{labels}; $i <= 0; $i+=100) { |
173 | for ($i = $y{labels}; $i <= 0; $i+=100) { |
| 174 | my $w = $bw{$i}{labels}; |
174 | my $w = $bw{$i}{labels}; |
| 175 | $w += 100 - ($w%100); |
175 | $w += 100 - ($w%100); |
| - | 176 | if (defined $blockname && $i == -200) { |
|
| - | 177 | my ($p,$q) = split ('=', $blockname,2); |
|
| - | 178 | #printf STDERR "LINE %s %d w=%d\n", $bw{$i}{labels}, $i, $w;
|
|
| - | 179 | $w += &textlen($q) + 100; # same space enforcement as it was for inside labels |
|
| - | 180 | #printf STDERR "LINE %s %d w=%d\n", $bw{$i}{labels}, $i, $w;
|
|
| - | 181 | # so we have to block name width to $w here..
|
|
| - | 182 | # but only in last line (device name)
|
|
| - | 183 | }
|
|
| 176 | #$w = (int($w/100) * 100) + (($w/100) > int($w/100))?100:0;
|
184 | #$w = (int($w/100) * 100) + (($w/100) > int($w/100))?100:0;
|
| 177 | if ($boxwidth < $w) { |
185 | if ($boxwidth < $w) { |
| 178 | $boxwidth = $w; |
186 | $boxwidth = $w; |
| 179 | }
|
187 | }
|
| 180 | }
|
188 | }
|
| Line 230... | Line 238... | ||
| 230 | }
|
238 | }
|
| 231 | 239 | ||
| 232 | # blockname if present
|
240 | # blockname if present
|
| 233 | if(defined $blockname) { |
241 | if(defined $blockname) { |
| 234 | printf("T %d %d 5 10 1 1 0 6 1\n%s\n", $boxwidth + $pinnumwidth, $maxy + 400, $blockname); |
242 | printf("T %d %d 5 10 1 1 0 6 1\n%s\n", $boxwidth + $pinnumwidth, $maxy + 400, $blockname); |
| 235 | printf STDERR "BLOCKNAME %s\n", $blockname; |
- | |
| 236 | }
|
243 | }
|
| 237 | 244 | ||
| 238 | # Now print all the pins.
|
245 | # Now print all the pins.
|
| 239 | for $p (sort {$a<=>$b} keys %pinside) { |
246 | for $p (sort {$a<=>$b} keys %pinside) { |
| 240 | next unless $pinside{$p}; |
247 | next unless $pinside{$p}; |