Commit Graph

164 Commits

Author SHA1 Message Date
Tim Edwards 704f1dc69f Corrected an error that has been in the magic code forever, in which
if a GDS (CIF) layer is dependent on, and only on, a templayer or
layers that get hierarchically processed, it will not get added to
the list of layers needing hierarchical processing, and therefore
end up not being generated in the output.
2019-05-16 17:41:42 -04:00
Tim Edwards 66603cdb53 Corrected invalid logic in the interpetation of (cif/gds) label
options "text", "port", and "noport" in the techfile.  The
incorrect interpretation was preventing backwards compatibility,
such that ports would not be output on GDS layers if the "port"
option was not used.
2018-11-12 13:25:05 -05:00
Tim Edwards bb0af34441 Corrected an obscure error that causes the background of the layout
window to change after hiding a layer using the toolbar and then
refreshing the layout.  Fixed by saving and restoring the graphics
state around the routine that configures the toolbar image.  Also
added a check to CifPaintCurrent to guard against using an unassigned
ClientData record as a pointer (causes a crash), and added braces
around "expr" values in the Tcl wrapper, which reportedly results in
faster execution of the expression.
2018-10-23 08:44:04 -04:00
Tim Edwards 9eb406ffba Implemented an idea from Staf Verhaegen to have "labels" options
"port" and "noport" in the cifoutput section to distinguish
between layer:purpose pairs for port text vs. other kinds of
text.  This allows a closer correspondence between GDS read and
write.  Note that the port writing is currently only in the GDS
write routine, not in the CIF routine.
2018-09-09 15:09:15 -04:00
Tim Edwards 404629e49f Added new option "port" for the "labels" statement in cifinput.
This allows text appearing on a specific GDS layer:purpose pair
to be interpreted as a port.  This does not quite match the
intended behavior of such layers, since it is implied that any
layer geometry coincident with the text should form the area of
the port, which is not (yet) handled.  Also, it is presumably
implied that the port order matches the order in which text
appears in the GDS stream, but magic does not preserve this
order when re-writing any GDS output.
2018-08-26 22:36:15 -04:00
Tim Edwards 83da1988e6 Corrected CIF import for reading CIF area labels correctly when
the label causes a scale change.  Thanks to Iain McNally for the
patch.  Same correction as made to magic-8.1.
2018-08-20 22:13:16 -04:00
Tim Edwards 193493a0cc Corrected an error in the DEF file read routine's check on via
DRC rules, which was conflating magic and CIF tile types,
resulting in incorrect reading of via layers.
2018-07-19 10:23:30 -04:00
Tim Edwards 4ae868802d Modified the LEF read routine so that it determines the LEF-to-
magic conversion for making magic contact types from contact cuts
from the CIF/GDS input rules rather than the output rules.  This
generally makes more sense, plus avoids conflicts where the output
rules may be set for CIF-DRC checks and may not be appropriate for
LEF input without changing the style.
2018-06-21 12:50:31 -04:00
Tim Edwards 42ec70d4dc Re-implemented plow setup for the first time since about 2006,
enabling the "plow" command.  At this time, however, not all
rules are being implemented correctly given the numerous changes
to the DRC handling since the last time "plow" was working.  Fixes
are ongoing.
2018-04-01 14:40:10 -04:00
Tim Edwards 5be0653afe Corrected an error in the CIF read routine, caused when adding
handling for grid subdivision.  Scaled the value of "center"
for a CIF box and then attempted to use "center" as an unscaled
value.  Same correction as made to magic-8.1.
2017-12-18 20:24:06 -05:00
Tim Edwards 4154e1f0b2 Corrected a bug in CIFMakeManhattanPath that can cause a segfault
or a hang in rare geometry situations.  Same fix as was made to
magic version 8.1.
2017-11-25 16:09:16 -05:00
Tim Edwards efb1f00879 Preliminary method to record polygons and wire paths with property
records when they are read in into their own subcells using the
cif/gds read options.
2017-10-09 11:51:51 -04:00
Tim Edwards 088fc759c4 Set of changes updating version 8.2 to the level of 8.1, since 8.2
development had been halted since it was first created back in April.
Version 8.2 is now the official development version, with the first
development push to create a Cairo graphics interface.
2017-08-01 22:14:42 -04:00
Tim Edwards 231a299b16 Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00