puts stdout "Sourcing design .magicrc for technology EFS8A ..."

# Put grid on 0.005 pitch.  This is important, as some commands don't
# rescale the grid automatically (such as lef read?).

set scalefac [tech lambda]
if {[lindex $scalefac 1] < 2} {
    scalegrid 1 2
}

drc off
drc euclidean on

# set PDKPATH "~/projects/efabless/tech/SW/EFS8A"
# set PDKPATH "/ef/tech/SW/EFS8A"
# set MAGTYPE mag

# Allow override of PDK path from environment variable PDKPATH
if {[catch {set PDKPATH $env(PDKPATH)}]} {
    set PDKPATH "/ef/tech/SW/EFS8A"
}

# loading technology
tech load $PDKPATH/libs.tech/magic/current/EFS8A.tech

# load device generator
source $PDKPATH/libs.tech/magic/current/EFS8A.tcl

# load bind keys (optional)
# source $PDKPATH/libs.tech/magic/current/EFS8A-BindKeys

# set units to lambda grid 
snap lambda

# Allow override of type of magic library views used, "mag" or "maglef",
# from environment variable MAGTYPE

if {[catch {set MAGTYPE $env(MAGTYPE)}]} {
   set MAGTYPE maglef
}

# add path to reference cells
if {[file isdir ${PDKPATH}/libs.ref/${MAGTYPE}]} {
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/primdev
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/s8iom0s8
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/scs8hd
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/scs8hs
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/efs8_pads
    addpath ${PDKPATH}/libs.ref/${MAGTYPE}/s8_osu130
} else {
    addpath ${PDKPATH}/libs.ref/primdev/${MAGTYPE}
    addpath ${PDKPATH}/libs.ref/s8iom0s8/${MAGTYPE}
    addpath ${PDKPATH}/libs.ref/scs8hd/${MAGTYPE}
    addpath ${PDKPATH}/libs.ref/scs8hs/${MAGTYPE}
    addpath ${PDKPATH}/libs.ref/efs8_pads/${MAGTYPE}
    addpath ${PDKPATH}/libs.ref/s8_osu130/${MAGTYPE}
}

# add path to GDS cells

# add path to IP from catalog.  This procedure defined in the PDK script.
catch {magic::query_mylib_ip}
# add path to local IP from user design space.  Defined in the PDK script.
catch {magic::query_my_projects}
