FYI there's even online symbol creator using djboxsym!
$ djboxsym myfile.symdef > myfile.sym
A table of all pin information will be printed to stderr. Note that labels are assigned negative pins internally, and show up in the table that way.
The symdef file is a simple text file, with sections denoted by [section] markers. Here's a sample file and the symbol it generates (note: the edge triggers were added for demonstration purposes). Each section will be documented separately, but the program doesn't care what order the sections are in, and you can list each section multiple times - the program will treat it as if the contents of each section were concatenated.
Any line that begins with # (pound/hash symbol) is ignored. Otherwise, leading and trailing spaces are trimmed, and other whitespace is treated as if it were a single space.
The labels section is for textual labels and attributes that aren't associated with any pins. Each line in this section corresponds to a single label. The label may be preceeded by a ! (exclamation mark) to make the label invisible by default.
If the label is of the form name=value it is assumed to be an attribute, and the name= portion will be hidden. Visible labels are placed in the center of the symbol. Invisible labels are placed outside the upper right corner of the symbol.
pinnumber [opt-flags] pinlabel
Note that "pinnumber" need not be numeric; common BGA pin numbers like C3 are allowed as well.
The optional flags may be ! (exclamation point) to include an inversion bubble on the pin, and/or > (greater than) to include an edge-trigger on the pin.
In addition to pin lines, there are some "special" lines. First, any blank line between pins causes a gap to be included between those pins in the symbol. Second, a line with only .bus on it causes the next group of pins (up to the next line) to be spaced closer together (bus spacing). Third, a ".skip N" line skips N grid units of space in addition to any other space that would be skipped at that point. For reference, pins are normally spaced 200 grid units apart (100 for bus mode).
Pins should be listed in the order you want them to appear on the symbol, from top to bottom.
List any pins that have no connection here; one pin number per line (no flags or labels). The program will ensure that all pins are listed exactly once each; this section lets you list pins that would otherwise be considered missing.
Copyright 2010, all rights reserved unless specified otherwise.
gedasymbols.org is maintained by DJ Delorie