File: hacking.txt

package info (click to toggle)
pcb-rnd 3.1.7b-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 33,108 kB
  • sloc: ansic: 213,400; yacc: 6,241; sh: 4,698; awk: 3,016; makefile: 2,254; lex: 1,166; python: 519; xml: 261; lisp: 154; tcl: 67; perl: 34; javascript: 6; ruby: 5
file content (21 lines) | stat: -rw-r--r-- 1,096 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
The hyperlynx file is read using a bison/flex scanner. The flex scanner
is in hyp_l, the bison parser in hyp_y.y.  For each hyperlynx construct
the parser calls the corresponding exec_* routine in parser.c. Example:
if the parser encounters an arc segment, the symbol in the scanner/parser
is H_ARC, and the routine in parser.c is called exec_arc().

If you need a rough description of the hyperlynx format, download
"bird33" from http://www.ibis.org/birds/bird33.txt . Substitute ".IBP
file format" with ".HYP file format" and "SUBSTRATE_OUTLINE" with "BOARD"
and you have an (old) description of the hyperlynx format.

Not all CAD programs create compliant .hyp files. The most common
omission is not putting quotes around a string. This causes problems if
the string contains blank space or commas.

If you change scanner or parser you need to revalidate. Try loading a
collection of hyperlynx files generated by diverse CAD programs.

The python script "gensamp" creates a sample hyperlynx file which
contains line, arc and unrouted segments, polygons with and without
holes, polylines, etc.