Index: boxsym-rnd/generator.awk =================================================================== --- boxsym-rnd/generator.awk (revision 2834) +++ boxsym-rnd/generator.awk (revision 2835) @@ -22,7 +22,6 @@ if (slot == "") { # all slots for(n = 0; n < nslots; n++) cnt += count_pins(SLOTS[n], loc, expand_slot, TXTBRD) - return cnt; } for(n = 0; n < SLOT[slot, "npins"]; n++) { @@ -72,7 +71,6 @@ if (slot == "") { # all slots for(n = 0; n < nslots; n++) draw_pins(SLOTS[n], ALIGN, loc, x0, y0, stx, sty, ST) - return } ST["x"] = x0 + ALIGN[loc, "x0"] Index: boxsym-rnd/parser.awk =================================================================== --- boxsym-rnd/parser.awk (revision 2834) +++ boxsym-rnd/parser.awk (revision 2835) @@ -1,5 +1,6 @@ BEGIN { nslots=0 + SLOT["", "npins"] = 0 } # return $0 in a string with $1 removed @@ -114,7 +115,8 @@ } /^[\t ]*#/ { next } ($1 == refdes) { refdes = $2 } -/begin slot/ { parse_slot() } +/begin slot/ { parse_slot(); next } +($1 == "begin") { slot=""; parse_any() } ($1 == "pinalign") { SLOT["", "pinalign", $2] = $3 } ($1 == "label") { SLOT["", "label", ++SLOT["", "labels"]] = $2 } ($1 == "attr") { SLOT["", "attr", $2] = del2($0) }