User Tools

Site Tools


geda:gaf

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
geda:gaf [2010/09/13 18:31]
gareth Fixed misplaced apostrophe
geda:gaf [2013/07/23 08:20]
vzh Revised, added info on geda/gaf utilities
Line 1: Line 1:
 +====== gEDA/gaf ======
 +
 +Here is a list of programs, libraries and other things that are
 +part of gEDA/gaf (gschem and friends).
 +
 +===== Schematic capture =====
 +**gschem**(1) is the schematic capture program/​tool which is part
 +of gEDA. Its sole purpose is to facilitate the graphical input of
 +components/​circuits. See the [[geda:​gschem_ug|gschem User Guide]]
 +for more information on the program.
 +
 +===== Netlisting =====
 +**gnetlist**(1) is a netlist generation program. It takes as input
 +gEDA/gaf .sch (schematic) files and the required .sym (symbol)
 +files and converts them into netlists. See the
 +[[geda:​gnetlist_ug|gnetlist User Guide]] for more information on
 +the program.
 +
 +===== Attribute editing =====
 +**gattrib**(1) is gEDA's attribute editor. It reads a set of
 +gschem .sch files (schematic files), and creates a spreadsheet
 +showing all components in rows, with the associated component
 +attributes listed in the columns.
 +
 +See also the [[gEDA:​master_attributes_list|Master Attributes
 +List]] document for more information on attributes used in
 +gEDA/gaf.
 +
 +===== Utilities =====
 +There are many utilities included as part of gEDA/gaf. See their
 +manual pages and READMEs in the source distribution for more
 +information on them:
 +  * **gaf**(1) is a multipurpose command line utility implementing setting up the above programs, exporting schematics and symbols into various formats, and shell for command line processing of their data. See also [[gEDA:​gaf_utility|this page on the utility]].
 +
 +==== Utilities for schematics ====
 +  * **refdes_renum**(1) is a utility for renumbering reference designators in gschem schematic files.
 +  * **grenum**(1) is an advanced refdes renumber utility.
 +  * **garchive**(1) is a utility written in Python used to create and extract gEDA design archives. In archive mode it creates a project archive from a bunch of project files, and in extract mode it extracts the files from the archive and places them in the local directory.
 +  * **gschlas**(1) is a utility which can embed the in-use schematic symbols and pictures into a schematic or set of schematics to put them, for instance, on a website or in an email without the recipient needing to download lots of custom symbols for the design. It can also unembed symbol references from a schematic.
 +
 +==== Utilities for symbols ====
 +  * **gsymcheck**(1) is the symbol checker for the gEDA/gaf system. Give it a symbol file and it will go through and verify that the symbol will work in gschem and friends.
 +  * **gsymfix**(1) is the utility to automatically fix common cut-and-paste issues with gEDA symbols and fix up the symbols so that they will pass gsymcheck with no errors or warnings.
 +  * **gmk_sym**(1) is a program to create rectangular symbols for gschem from a file composed of comma separated lines.
 +  * **tragesym**(1) is a small python script that creates gschem symbols out of structured textfiles. The aim of this script is to make it easier (and faster) to create symbols for gschem. See the [[gEDA:​tragesym tutorial]] and README in the distribution.
 +
 +==== Tools to facilitate netlisting ====
 +  * **gsch2pcb**(1) is a frontend to gnetlist(1) which aids in creating and updating pcb(1) printed circuit board layouts based on a set of electronic schematics created with gschem(1). See also [[gEDA:​gsch2pcb_tutorial|Bill Wilson'​s gsch2pcb tutorial]]. Modern pcb also has an import function which uses import from gnetlist directly.
 +  * **gnet_hier_verilog.sh**(1) is a simple shell script which gathers hierarchical information from a list of unique symbols/​schematics originating from the top level schematic and produces a hierarchical Verilog netlist in a single file.
 +
 +==== Utilities for printing and graphical output ====
 +  * **schdiff**(1) is a graphical diff tool for gschem(1) schematics. It uses ImageMagick(1) and is most useful when combined with a revision control system (such as Git, Mercurial, and Subversion) so it can compare two revisions of the same file, review changes, etc.
 +  * **gpstoimage** is a shell script that creates GIFs from PS files created by gschem using gs and ppmtogif. It has no documentation and is obsoleted by new gaf(1) and gschem(1) printing capabilities.
 +
 +==== Format conversion tools ====
 +  * **convert_sym**(1) converts a Viewlogic symbol/​schematic to gEDA gschem format; there is also **convert_sym.awk** with almost the same functionality.
 +  * **smash_megafile**(1) is a utility that takes a Viewlogic megafile and extracts its contents into a directory, where each element of the library will be represented with one file.
 +  * **olib**(1) is a simple automated converter from OrCAD v4 ASCII parts library to gEDA symbols.
 +  * Sarlacc is an OrCAD to gEDA format converter. It consists of **sarlacc_schem**(1) and **sarlacc_sym**(1). The first utility written in C converts OrCAD schematic files (in 16-bit format) to gEDA format. The second is a Perl script which converts OrCAD text libraries to gEDA components.
 +
 +==== Tools for interaction with other programs ====
 +  * **gxyrs**(1) is a program written in Perl to batch process XYRS files. XYRS files are usually generated by [[http://​pcb.geda-project.org|PCB]] design programs, and are used by board assemblers.
 +  * **sw2asc**(1) is a utility which converts a SWITCAP2 output file into ASCII data files that other tools can read. See the [[geda:​ssan|gEDA/​gaf Switcap Symbols and Netlister]] for more information on the program.
 +  * **pads_backannotate**(1) is a Perl program which backannotates changes from Pads PowerPCB board layouts to gschem(1) schematics. See the [[geda:​fbabgapp|Forward/​Backward Annotation Between gEDA and Pads PowerPCB]] document for more information.
 +  * **pcb_backannotate**(1) is a program written in Perl which reads an engineering change order (ECO) files generated by the [[http://​pcb.geda-project.org|PCB]] program and backannotates the requested changes to a gschem(1) schematics. See the [[http://​pcb.geda-project.org/​manual.html|PCB manual]] for a complete description of the ECO file format.
 +
 +==== Update utilities ​ ====
 +These are utilities for schematics and symbols for support of old schematic file formats:
 +  * **gschupdate** and **gsymupdate** are programs written in Perl which update attributes in schematics and symbols of version 20020527 or earlier to use them in modern **gschem**; they are documented briefly in the source code.
 +
 +
 +===== Symbols =====
 +Symbols (on a schematic) are an abstract representation of the
 +physical components used in electronic circuits. Initial gEDA
 +installation provides you with default symbols contributed by many
 +users. See also the [[gEDA:​gschem_symbol_creation|gEDA/​gaf Symbol
 +Creation document]] on how to create your own symbols and
 +[[http://​gedasymbols.org]] to find already available symbols
 +shared by other gEDA users.
 +
 +===== Libraries =====
 +  * **libgeda** is a main gEDA library of functions for manipulating gEDA schematics and symbols which is used by many of the above mentioned programs and utilities. See the gEDA Scheme Reference Manual (//info geda-scheme//​) for more information on the library.
 +  * **libgedacairo** is a library which provides a renderer for schematics and symbols based on the Cairo vector graphics library and the Pango font library. ​ Data for rendering is loaded using libgeda. See the libgedacairo/​README in the gEDA/gaf distribution for more information.
 +
 +===== Examples and other documentation =====
 +gEDA/gaf contains some examples and other documentation which can
 +be found in the documentation installation directory of your
 +distribution.
  
geda/gaf.txt ยท Last modified: 2013/07/23 08:20 by vzh