Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

import of magic-7.1

Magic is an interactive system for creating and modifying VLSI circuit
layouts.  With Magic, you use a color graphics display and a mouse or
graphics tablet to design basic cells and to combine them
hierarchically into large structures.  Magic is different from other
layout editors you may have used.  The most important difference is
that Magic is more than just a color painting tool: it understands
quite a bit about the nature of circuits and uses this information to
provide you with additional operations.  For example, Magic has
built-in knowledge of layout rules; as you are editing, it
continuously checks for rule violations.  Magic also knows about
connectivity and transistors, and contains a built-in hierarchical
circuit extractor.  Magic also has a plow operation that
you can use to stretch or compact cells.  Lastly, Magic has routing
tools that you can use to make the global interconnections in your
circuits.

Magic is based on the Mead-Conway style of design.  This means that it
uses simplified design rules and circuit structures.  The
simplifications make it easier for you to design circuits and permit
Magic to provide powerful assistance that would not be possible
otherwise.  However, they result in slightly less dense circuits than
you could get with more complex rules and structures.  For example,
Magic permits only Manhattan designs (those whose edges are vertical
or horizontal).
  • Loading branch information...
commit a8c04de0860a01b198c2dfbff0b477293cb1a341 1 parent 7db2f4d
dmcmahill authored
View
24 cad/magic/DESCR
@@ -0,0 +1,24 @@
+Magic is an interactive system for creating and modifying VLSI circuit
+layouts. With Magic, you use a color graphics display and a mouse or
+graphics tablet to design basic cells and to combine them
+hierarchically into large structures. Magic is different from other
+layout editors you may have used. The most important difference is
+that Magic is more than just a color painting tool: it understands
+quite a bit about the nature of circuits and uses this information to
+provide you with additional operations. For example, Magic has
+built-in knowledge of layout rules; as you are editing, it
+continuously checks for rule violations. Magic also knows about
+connectivity and transistors, and contains a built-in hierarchical
+circuit extractor. Magic also has a plow operation that
+you can use to stretch or compact cells. Lastly, Magic has routing
+tools that you can use to make the global interconnections in your
+circuits.
+
+Magic is based on the Mead-Conway style of design. This means that it
+uses simplified design rules and circuit structures. The
+simplifications make it easier for you to design circuits and permit
+Magic to provide powerful assistance that would not be possible
+otherwise. However, they result in slightly less dense circuits than
+you could get with more complex rules and structures. For example,
+Magic permits only Manhattan designs (those whose edges are vertical
+or horizontal).
View
7 cad/magic/MESSAGE
@@ -0,0 +1,7 @@
+======================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2002/04/06 21:37:29 dmcmahill Exp $
+
+You must set the environment variable CAD_HOME to ${PREFIX} to
+use the tools in this package.
+
+======================================================================
View
19 cad/magic/Makefile
@@ -0,0 +1,19 @@
+# $NetBSD: Makefile,v 1.1.1.1 2002/04/06 21:37:28 dmcmahill Exp $
+#
+
+DISTNAME= magic-7.1
+CATEGORIES= cad
+MASTER_SITES= http://vlsi.cornell.edu/magic/
+
+MAINTAINER= dmcmahill@netbsd.org
+HOMEPAGE= http://vlsi.cornell.edu/magic/
+COMMENT= Integrated circuit layout system
+
+USE_GMAKE= yes
+MAKE_ENV+= CAD_HOME=${PREFIX}
+
+do-configure:
+ cd ${WRKSRC} && printf "1\n2\n6\n\n\n\n\n\n\n\n\n\n\n" | \
+ ${ENV} ${MAKE_ENV} ./scripts/config
+
+.include "../../mk/bsd.pkg.mk"
View
168 cad/magic/PLIST
@@ -0,0 +1,168 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2002/04/06 21:37:28 dmcmahill Exp $
+bin/XHelper7
+bin/ext2sim
+bin/ext2spice
+bin/extcheck
+bin/magic
+bin/magicusage
+bin/net2ir
+bin/spice2sim
+lib/libmpack.a
+lib/magic/doc/addendum6_5.ps
+lib/magic/doc/copyright.ps
+lib/magic/doc/introduction.ps
+lib/magic/doc/maint1.ps
+lib/magic/doc/maint2.ps
+lib/magic/doc/maint3.ps
+lib/magic/doc/maint4.ps
+lib/magic/doc/tut1.ps
+lib/magic/doc/tut10.ps
+lib/magic/doc/tut11.ps
+lib/magic/doc/tut2.ps
+lib/magic/doc/tut3.ps
+lib/magic/doc/tut4.ps
+lib/magic/doc/tut5.ps
+lib/magic/doc/tut6.ps
+lib/magic/doc/tut7.ps
+lib/magic/doc/tut8.ps
+lib/magic/doc/tut9.ps
+lib/magic/doc/tutscm1.ps
+lib/magic/doc/tutscm2.ps
+lib/magic/doc/tutscm3.ps
+lib/magic/doc/tutscm4.ps
+lib/magic/doc/tutwrl1.ps
+lib/magic/scm/box.scm
+lib/magic/scm/default.scm
+lib/magic/scm/draw.scm
+lib/magic/scm/drc.scm
+lib/magic/scm/gate.scm
+lib/magic/scm/help.scm
+lib/magic/scm/label.scm
+lib/magic/scm/layout.scm
+lib/magic/scm/prs.scm
+lib/magic/scm/sel.scm
+lib/magic/scm/stack.scm
+lib/magic/sys/.magic
+lib/magic/sys/bw.glyphs
+lib/magic/sys/color.glyphs
+lib/magic/sys/magicps.pro
+lib/magic/sys/mos.24bit.dstyle5
+lib/magic/sys/mos.7bit.dstyle5
+lib/magic/sys/mos.7bit.mraster.cmap1
+lib/magic/sys/mos.7bit.mraster_dstyle5
+lib/magic/sys/mos.7bit.std.cmap1
+lib/magic/sys/mos.OpenGL.dstyle5
+lib/magic/sys/mos.OpenGL.std.cmap1
+lib/magic/sys/scmos-sub.tech26
+lib/magic/sys/scmos-sub.tech27
+lib/magic/sys/scmos-tm.tech26
+lib/magic/sys/scmos-tm.tech27
+lib/magic/sys/scmos.tech
+lib/magic/sys/scmos.tech26
+lib/magic/sys/scmos.tech27
+lib/magic/sys/scmosWR.tech26
+lib/magic/sys/scmosWR.tech27
+lib/magic/sys/windows11.glyphs
+lib/magic/sys/windows14.glyphs
+lib/magic/sys/windows22.glyphs
+lib/magic/sys/windows7.glyphs
+lib/magic/tutorial/m3a.mag
+lib/magic/tutorial/maint2a.mag
+lib/magic/tutorial/tut1.mag
+lib/magic/tutorial/tut11a.al
+lib/magic/tutorial/tut11a.cmd
+lib/magic/tutorial/tut11a.ext
+lib/magic/tutorial/tut11a.mag
+lib/magic/tutorial/tut11a.nodes
+lib/magic/tutorial/tut11a.rsm
+lib/magic/tutorial/tut11a.sim
+lib/magic/tutorial/tut11b.ext
+lib/magic/tutorial/tut11b.mag
+lib/magic/tutorial/tut11c.ext
+lib/magic/tutorial/tut11c.mag
+lib/magic/tutorial/tut11d.ext
+lib/magic/tutorial/tut11d.mag
+lib/magic/tutorial/tut2a.mag
+lib/magic/tutorial/tut2b.mag
+lib/magic/tutorial/tut2c.mag
+lib/magic/tutorial/tut2d.mag
+lib/magic/tutorial/tut3a.mag
+lib/magic/tutorial/tut3b.mag
+lib/magic/tutorial/tut3c.mag
+lib/magic/tutorial/tut3d.mag
+lib/magic/tutorial/tut3e.mag
+lib/magic/tutorial/tut3f.mag
+lib/magic/tutorial/tut3g.mag
+lib/magic/tutorial/tut3h.mag
+lib/magic/tutorial/tut4a.mag
+lib/magic/tutorial/tut4x.mag
+lib/magic/tutorial/tut4y.mag
+lib/magic/tutorial/tut4z.mag
+lib/magic/tutorial/tut5a.mag
+lib/magic/tutorial/tut5b.mag
+lib/magic/tutorial/tut6a.mag
+lib/magic/tutorial/tut6b.mag
+lib/magic/tutorial/tut6c.mag
+lib/magic/tutorial/tut6x.mag
+lib/magic/tutorial/tut6y.mag
+lib/magic/tutorial/tut7a.mag
+lib/magic/tutorial/tut7b.mag
+lib/magic/tutorial/tut7b.net
+lib/magic/tutorial/tut7c.mag
+lib/magic/tutorial/tut7d.mag
+lib/magic/tutorial/tut7d.net
+lib/magic/tutorial/tut8a.mag
+lib/magic/tutorial/tut8b.mag
+lib/magic/tutorial/tut8c.mag
+lib/magic/tutorial/tut8d.mag
+lib/magic/tutorial/tut8e.mag
+lib/magic/tutorial/tut8f.mag
+lib/magic/tutorial/tut8g.mag
+lib/magic/tutorial/tut8h.mag
+lib/magic/tutorial/tut8i.mag
+lib/magic/tutorial/tut8j.mag
+lib/magic/tutorial/tut8k.mag
+lib/magic/tutorial/tut8l.mag
+lib/magic/tutorial/tut8m.mag
+lib/magic/tutorial/tut8n.mag
+lib/magic/tutorial/tut8r.mag
+lib/magic/tutorial/tut9a.mag
+lib/magic/tutorial/tut9b.mag
+lib/magic/tutorial/tut9x.mag
+lib/magic/tutorial/tut9y.mag
+lib/mpack.h
+man/man1/ext2sim.1
+man/man1/ext2spice.1
+man/man1/extcheck.1
+man/man1/magic.1
+man/man1/magicusage.1
+man/man3/dqueue.3
+man/man3/extflat.3
+man/man3/geometry.3
+man/man3/hash.3
+man/man3/heap.3
+man/man3/libmalloc.3
+man/man3/list.3
+man/man3/magicutils.3
+man/man3/malloc.3
+man/man3/path.3
+man/man3/runstats.3
+man/man3/set.3
+man/man3/show.3
+man/man3/stack.3
+man/man3/string.3
+man/man5/cmap.5
+man/man5/displays.5
+man/man5/dlys.5
+man/man5/dstyle.5
+man/man5/ext.5
+man/man5/glyphs.5
+man/man5/magic.5
+man/man5/net.5
+man/man5/sim.5
+man/man8/prleak.8
+@dirrm lib/magic/tutorial
+@dirrm lib/magic/sys
+@dirrm lib/magic/scm
+@dirrm lib/magic/doc
+@dirrm lib/magic
View
6 cad/magic/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2002/04/06 21:37:28 dmcmahill Exp $
+
+SHA1 (magic-7.1.tar.gz) = 176eb4c6a0ff33c6e265e61360c02da4f454f101
+Size (magic-7.1.tar.gz) = 3860487 bytes
+SHA1 (patch-aa) = bb18e6672441e404b0969cd1f5cb387ef4f97386
+SHA1 (patch-ab) = fab0d76781c186f0f74a37be856c957c7e8be648
View
79 cad/magic/patches/patch-aa
@@ -0,0 +1,79 @@
+$NetBSD: patch-aa,v 1.1.1.1 2002/04/06 21:37:29 dmcmahill Exp $
+
+--- misc/magic.h.orig Fri Sep 21 11:15:45 2001
++++ misc/magic.h Wed Mar 13 12:37:46 2002
+@@ -147,69 +147,11 @@
+ */
+
+-#ifdef i386
+-#define IS_LITTLE_ENDIAN /* Intel x86 processors. */
++#include <sys/endian.h>
++#if BYTE_ORDER==BIG_ENDIAN
++#define IS_BIG_ENDIAN
++#else
++#define IS_LITTLE_ENDIAN
+ #endif
+
+-#ifdef linux
+-#define IS_LITTLE_ENDIAN /* Intel x86 processors running Linux >=.99p7. */
+-#endif
+-
+-#ifdef vax
+-#define IS_LITTLE_ENDIAN /* The good 'ol VAX. */
+-#endif
+-
+-#ifdef MIPSEL
+-#define IS_LITTLE_ENDIAN /* MIPS processors in little-endian mode. */
+-#endif
+-
+-#ifdef wrltitan
+-#define IS_LITTLE_ENDIAN /* A DEC-WRL titan research machine (only 20 exist). */
+- /* NOT intended for the Ardent titan machine. */
+-#endif
+-
+-#ifdef MIPSEB
+-#define IS_BIG_ENDIAN /* MIPS processors in big-endian mode. */
+-#endif
+-
+-#ifdef mc68000
+-#define IS_BIG_ENDIAN /* All 68xxx machines, such as Sun2's and Sun3's. */
+-#endif
+-
+-#ifdef macII
+-#define IS_BIG_ENDIAN /* Apple MacII (also a 68000, but being safe here.) */
+-#endif
+-
+-#ifdef sparc
+-#define IS_BIG_ENDIAN /* All SPARC-based machines. */
+-#endif
+-
+-#ifdef ibm032
+-#define IS_BIG_ENDIAN /* IBM PC-RT and related machines. */
+-#endif
+-
+-#ifdef hp9000s300
+-#define IS_BIG_ENDIAN /* HP 9000 machine. */
+-#endif
+-
+-#ifdef hp9000s800
+-#define IS_BIG_ENDIAN /* HP 9000 machine. */
+-#endif
+-
+-#ifdef hp9000s820
+-#define IS_BIG_ENDIAN /* HP 9000 machine. */
+-#endif
+-
+-#ifdef ALPHA
+-#define IS_LITTLE_ENDIAN /* Digital Alpha AXP */
+-#endif
+-
+-/* Well, how'd we do? */
+-
+-#if !defined(IS_BIG_ENDIAN) && !defined(IS_LITTLE_ENDIAN)
+- You_need_to_define_IS_LITTLE_ENDIAN_or_IS_BIG_ENDIAN_for_your_machine.
+-#endif
+-#if defined(IS_BIG_ENDIAN) && defined(IS_LITTLE_ENDIAN)
+- You_should_not_define_both_IS_LITTLE_ENDIAN_and_IS_BIG_ENDIAN.
+-#endif
+
+ /* ------- Configuration: Handle Missing Routines/Definitions ------- */
View
11 cad/magic/patches/patch-ab
@@ -0,0 +1,11 @@
+$NetBSD: patch-ab,v 1.1.1.1 2002/04/06 21:37:29 dmcmahill Exp $
+
+--- scripts/config.orig Mon Feb 4 12:53:10 2002
++++ scripts/config Wed Mar 13 13:03:53 2002
+@@ -200,5 +200,5 @@
+ echo " script completes."
+ set gr_cflags=("$gr_cflags" -I/usr/X11R6/include)
+- set gr_libs=(-L/usr/X11R6/lib "$gr_libs")
++ set gr_libs=(-L${X11BASE}/lib -R${X11BASE}/lib "$gr_libs")
+ endif
+ breaksw
Please sign in to comment.
Something went wrong with that request. Please try again.