--- /dev/null
+#!/usr/bin/env python
+# -*- coding: ASCII -*-
+'''Plastronics socket for
+QFN-100 12x12mm
+SEMPAC MLP12X12-100-OP-01
+offered by MOSIS
+'''
+import sys
+from footprinter import *
+
+#
+# PCB fab minimums
+#
+MASK_SWELL = mil(5.0)
+MIN_TRACE = mil(6.0)
+MIN_SPACE = mil(6.0)
+MIN_PAD_ANNULUS = mil(15.0)
+MIN_VIA_ANNULUS = mil(10.0)
+
+# pcb's coordinates are graphics oriented
+# x in increasing right
+# y in increasing DOWN
+
+SILK_LINEWIDTH = mil(8.0)
+
+
+padw = mm(2.5)
+padh = mm(1.8)
+offset = mm(2.0)
+
+bodyw = mm(4.7)
+bodyh = mm(4.2)
+
+p1 = Pad(1,
+ [
+ -offset - padw,
+ -padh/2,
+ -offset,
+ padh/2
+ ],
+ MIN_SPACE, MASK_SWELL, name='1', sflags='square'
+ )
+
+p2 = Pad(2,
+ [
+ offset,
+ -padh/2,
+ offset + padw,
+ padh/2
+ ],
+ MIN_SPACE, MASK_SWELL, name='2', sflags='square'
+ )
+
+pads = [p1, p2]
+
+# silkscreen
+lines = []
+lines.append(ElementLine(
+ -bodyw/2, bodyh/2,
+ bodyw/2, bodyh/2,
+ SILK_LINEWIDTH))
+lines.append(ElementLine(
+ -bodyw/2, bodyh/2,
+ -bodyw/2, (padh/2 + MIN_SPACE + MASK_SWELL),
+ SILK_LINEWIDTH))
+lines.append(ElementLine(
+ bodyw/2, bodyh/2,
+ bodyw/2, (padh/2 + MIN_SPACE + MASK_SWELL),
+ SILK_LINEWIDTH))
+
+lines.append(ElementLine(
+ -bodyw/2, -bodyh/2,
+ bodyw/2, -bodyh/2,
+ SILK_LINEWIDTH))
+lines.append(ElementLine(
+ -bodyw/2, -bodyh/2,
+ -bodyw/2, -(padh/2 + MIN_SPACE + MASK_SWELL),
+ SILK_LINEWIDTH))
+lines.append(ElementLine(
+ bodyw/2, -bodyh/2,
+ bodyw/2, -(padh/2 + MIN_SPACE + MASK_SWELL),
+ SILK_LINEWIDTH))
+
+fp = Footprint(
+ padpins=pads,
+ linearcs=lines,
+ sflags='',
+ description=''
+ )
+
+fp.mx = 0
+fp.my = 0
+fp.tx = 0
+fp.ty = 0
+fp.write(sys.stdout)
+
--- /dev/null
+Element ["" "" "" "" 0nm 0nm 0nm 0nm 0 100 ""]
+(
+Pad [-3600000nm 0nm -2900000nm 0nm 1800000nm 152400nm 2054000nm "1" "1" "square"]
+Pad [2900000nm 0nm 3600000nm 0nm 1800000nm 152400nm 2054000nm "2" "2" "square"]
+ElementLine [-2350000nm 2100000nm 2350000nm 2100000nm 203200nm]
+ElementLine [-2350000nm 2100000nm -2350000nm 1179400nm 203200nm]
+ElementLine [2350000nm 2100000nm 2350000nm 1179400nm 203200nm]
+ElementLine [-2350000nm -2100000nm 2350000nm -2100000nm 203200nm]
+ElementLine [-2350000nm -2100000nm -2350000nm -1179400nm 203200nm]
+ElementLine [2350000nm -2100000nm 2350000nm -1179400nm 203200nm]
+)