This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
geda:gaf [2013/07/08 08:16] vzh Reformat a list and add a link to a new document |
geda:gaf [2013/07/23 08:20] (current) vzh Revised, added info on geda/gaf utilities |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== gEDA/gaf ====== | ====== gEDA/gaf ====== | ||
- | ===== gschem and friends ===== | + | Here is a list of programs, libraries and other things that are |
+ | part of gEDA/gaf (gschem and friends). | ||
- | Here is a list of programs 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. | ||
- | * gschem is the schematic capture program/tool which is part of gEDA. Its sole purpose is to facilitate the graphical input of components/circuits. | + | ===== Netlisting ===== |
- | * gnetlist is a netlist generation program. It takes as input gEDA/gaf .sch (schematic) file and the required .sym (symbol) files and converts them into netlists. | + | **gnetlist**(1) is a netlist generation program. It takes as input |
- | * gattrib 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. | + | gEDA/gaf .sch (schematic) files and the required .sym (symbol) |
- | * symbols (on a schematic) are an abstract representation of the physical components used in electronic circuits. | + | files and converts them into netlists. See the |
- | * There are many utilities included as part of gEDA/gaf. | + | [[geda:gnetlist_ug|gnetlist User Guide]] for more information on |
- | * [[gEDA:gaf_utility|gaf]] is a command line utility implementing setting up the above programs, exporting schematics and symbols into various formats, and shell for command line processing of its data. | + | the program. |
- | * gsymcheck 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. | + | |
- | This page is under construction as there is much information that needs to be migrated into this wiki. FIXME | + | ===== 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. | ||