modernization of symgen.awk, fine tuning of create_symbol.tcl
This commit is contained in:
parent
6a4131699a
commit
9c766c5260
|
|
@ -34,7 +34,7 @@ proc create_symbol {name {in {}} {out {}} {inout {}}} {
|
|||
set y 0
|
||||
foreach pin $in { ;# create all input pins on the left
|
||||
puts $fd "B 5 [expr {$x - 2.5}] [expr {$y - 2.5}] [expr {$x + 2.5}] [expr {$y + 2.5}] {name=$pin dir=in}"
|
||||
puts $fd "T {$pin} [expr {$x + 25}] [expr {$y - 4}] 0 0 0.2 0.2 {}"
|
||||
puts $fd "T {$pin} [expr {$x + 25}] [expr {$y - 6}] 0 0 0.2 0.2 {}"
|
||||
puts $fd "L 4 $x $y [expr {$x + 20}] $y {}"
|
||||
incr y 20
|
||||
}
|
||||
|
|
@ -42,13 +42,13 @@ proc create_symbol {name {in {}} {out {}} {inout {}}} {
|
|||
set y 0
|
||||
foreach pin $out { ;# create all out pins on the top right
|
||||
puts $fd "B 5 [expr {$x - 2.5}] [expr {$y - 2.5}] [expr {$x + 2.5}] [expr {$y + 2.5}] {name=$pin dir=out}"
|
||||
puts $fd "T {$pin} [expr {$x - 25}] [expr {$y - 4}] 0 1 0.2 0.2 {}"
|
||||
puts $fd "T {$pin} [expr {$x - 25}] [expr {$y - 6}] 0 1 0.2 0.2 {}"
|
||||
puts $fd "L 4 [expr {$x - 20}] $y $x $y {}"
|
||||
incr y 20
|
||||
}
|
||||
foreach pin $inout { ;# create all inout pins on the bottom right
|
||||
puts $fd "B 5 [expr {$x - 2.5}] [expr {$y - 2.5}] [expr {$x + 2.5}] [expr {$y + 2.5}] {name=$pin dir=inout}"
|
||||
puts $fd "T {$pin} [expr {$x - 25}] [expr {$y - 4}] 0 1 0.2 0.2 {}"
|
||||
puts $fd "T {$pin} [expr {$x - 25}] [expr {$y - 6}] 0 1 0.2 0.2 {}"
|
||||
puts $fd "L 7 [expr {$x - 20}] $y $x $y {}"
|
||||
incr y 20
|
||||
}
|
||||
|
|
|
|||
|
|
@ -323,9 +323,9 @@ END{
|
|||
|
||||
for(l = 0; l < label["n"]; l++) {
|
||||
dbg("label: " l " : " label[l])
|
||||
labx = (symbolx1 + symbolx2) / 2 - length(label[l]) * labelcharspacing /2
|
||||
labx = (symbolx1 + symbolx2) / 2
|
||||
laby = (symboly1 + symboly2) / 2 + ( l - label["n"] / 2 ) * labelspacing + labelcenteroffset
|
||||
text(label[l], labx, laby, 0, 0, labeltextsize, "")
|
||||
text(label[l], labx, laby, 0, 0, labeltextsize, "hcenter=1")
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -388,7 +388,7 @@ function text(t, x, y, rot, flip, size, props)
|
|||
|
||||
function attrs(a)
|
||||
{
|
||||
print "G {" esc(a) "}"
|
||||
print "K {" esc(a) "}"
|
||||
}
|
||||
|
||||
function header()
|
||||
|
|
|
|||
|
|
@ -1,16 +1,18 @@
|
|||
[labels]
|
||||
TEST SYMBOL
|
||||
STEFAN SCHIPPERS
|
||||
@symname
|
||||
@name
|
||||
! type=subcircuit
|
||||
! format="@name @pinlist @model"
|
||||
! format="@name @pinlist @symname"
|
||||
! template="name=X1"
|
||||
--hide_pinnumber
|
||||
--auto_pinnumber
|
||||
[left]
|
||||
1 i D
|
||||
2 i RST
|
||||
3 i>! CLK
|
||||
i D
|
||||
i RST
|
||||
i>! CLK
|
||||
[right]
|
||||
4 o QB
|
||||
o QB
|
||||
[top]
|
||||
5 io VCC
|
||||
io VCC
|
||||
[bottom]
|
||||
6 io VSS
|
||||
io VSS
|
||||
|
|
|
|||
Loading…
Reference in New Issue