Capsule Summary:
----------------

	setenv CAD_HOME /a/new/empty/directory
	make config
	make install


Notes to Magic maintainers:
--------------------------

    This directory contains all the sources for the Magic system and related
    programs.  The system runs on a number of machines.  You should read the
    Magic Maintainer's manual as well as the introduction to Magic before
    compiling the system.  These documents are in the "doc" subdirectory in
    ditroff/gremlin format as well as in Postscript.
    
    The compilation process happens in three steps.  
    
    (1) To configure the system for a particular machine, set your
    CAD_HOME environment variable to where you would like to install
    magic and then run "make config" and answer the questions.  This
    sets up compile flags in misc/CFLAGS and misc/DFLAGS.
    The default CFLAGS do not include optimization. If you want to
    optimize edit the CFLAGS after you run make config and add -O
    to the flags. Keep in mind that this might cause problems in
    some architectures (a known problem is in solaris and the textio
    module when compiled with -O. The fix is to compile textio without 
    optimization: compile first the whole system with optim then change
    CFLAGS and recompile textio without optimization).

    (2) To then compile the system, type "make force".  If you are
    porting magic to a new system, your first step should be to set up
    the constants at the end of misc/magic.h.  If you have partially
    compiled magic, you can use "make everything" in order to just
    recompile what is needed.  If there are problems, however, it is
    best to do a "make force" to ensure that everything indeed gets
    recompiled.

    (3) When you are happy with it, do a "make install" to set up a
    tree stucture in the directory described by your CAD_HOME
    environment variable.

    See Maintainer's Manual #1 for more information on how the sources
    are organized and what compile-time options are available.

Utility programs and libraries (ext2sim, magicusage, prleak):
    In addition to Magic, this directory contains several additional utility
    programs.  These are described briefly in Maintainer's Manual #1, and
    more fully in their respective man pages.  Each programs resides in a
    different subdirectory of this one.  If you want to recompile any of these
    programs, you'll need to re-make the rest of Magic, since they use modules
    from Magic.

Updates on the Net:
-------------------
Use your World Wide Web browser to read:

	http://www.research.digital.com/wrl/magic/magic.html

If you don't have web access, use FTP to following site:

        machine:    gatekeeper.dec.com   (16.1.0.2)
        account:    anonymous
        password:   guest
        directory:  pub/DEC/magic/6.4/notes

What's new in 6.4:
------------------
This release, magic 6.4, contains the following modifications:

	1) A number of bug fixes from the 6.3 notes.

	2) A version numbering facility for tech files.  Please add a new 
	   section to each tech file after the "tech" section, following 
	   this example:

		version
		    version 2.0.3
		    description "MOSIS CMOS 0.13u Nano-nano technology."
		end
		    
	   Older versions of magic will complain about the new section, but
	   no harm will be done.

	4) Various comments describing dates and versions, including the
	   above tech file information, are not written to the CIF file.

	3) Support for patches and versioning:  A new command called "version"
	   lists out the version number and patches that are installed.
	   A header file called patchlevel.h keeps track of a PATCHLEVEL 
	   integer and a string in patchlevel.c keeps track of the names of
	   each installed patch.  When posting patches to the net please be
	   sure your patch updates variables.  See the files for details.

	4) Ports to Alpha AXP OSF/1, SGI/IRIX (courtesy of Stefanos 
	   Sidiropoulos) and Linux (courtesy of Harold Levy).

	5) A change in the extractor algorithm to provide shielding for
	   perimeter capacitances. Also a change in ext2sim to maintain
	   information about the area and perimeter of diffusion and
	   the bulk connection of the fets (written by Stefanos
	   Sidiropoulos).


What's new in 6.5:
-----------------
        1) Bug fixes in the extractor propagation of attributes (SU)

        2) New version of ext2sim ext2spice with support for hspice, spice2, 
           and spice3 (SU)

        3) Integration of the port to SUN's Solaris OS (MIT)

        4) Port to FreeBSD2.x. Thanks to John Wehle (john@jwlab.feith.com)

	5) Integration of part of the DEC/WRL code fragments into the drc
	   code. Since the code is not completely trustworthy the fragments 
	   are ifdef'd so if need be the drc will behave exactly as the old one.
	   (you just need to change the #define DRC_EXTENSIONS in drc/drc.h
	    to do that).  For a description of the extensions look into 
	    doc/tutwrl1.ps (DEC/WRL)
	
	6) Integration of some patches in to the CIF code that introduce:
	    (i)  A new cif operation squares-grid which generates contacts 
		 on grid.
            (ii) A new cif layer command min-width is added so that generated
		 layers have the correct min drc width when magic expands
		 layers in the hierarchy (like it does with wells).
		 

Magic-6.5 crashes if compiled with gcc in Solaris2.x/SunOS5.x (curiously enough 
it does not have that problem if compiled with Sun's cc compiler). To get 
around that you need to set the flag -DUSE_SYSTEM_MALLOC flag in misc/DFLAGS 
after you run make :config. The error has to do with allignment of doubles 
and an alternative way to get rid of it is to change extract/extractInt.h 
so that CapValue is float instead of double.  Nevertheless the first method 
is recomended.

What's new in 6.5.1:
--------------------
	1) Support for true-color displays (courtesy of Michael Godfrey)
	   Look into doc/hires-color.txt
	2) Minor updates in ext2sim, ext2spice

What's new in 6.5.2:
--------------------
Provided by R. Timothy Edwards:
	1) Support for OpenGL
	   Look at doc/open_gl.txt
	2) Minor update to :config for selection of multiple graphics
	   interfaces.
	3) Updates to dstyle and cmap files
	4) Always do a check to see if there is only one active layout
	   window:  There's no need to annoy the user with complaints
	   of "Put the cursor in a layout window" when there is no
	   possibility of confusion about the matter.

Provided by Philippe Pouliquen:
	5) "readline" command line editing capability
	6) Macro extensions for X11 (see doc/macro_extension.txt)
	7) Better handling of filenames on the UNIX command-line (multiple
	   filenames allowed, ".mag" extension not required).
	8) New commands:  "child", "parent", "down", "xload", "list", "listall",
	   "listtop", "shell", "imacro".
	9) Command alterations: "box [+|-][dir]", "select visible", area of box
	   included in "box" command.
       10) Updated .magic macro file (source in magic/proto.magic, install in
	   ${CAD_HOME}/lib/magic/sys/.magic) (see doc/default_macros.txt).
