fix XYRS on crystal and accelerometer footprints
[hw/bdale] / pkg / newlib / MOT475-01.py
index 0820645f541eacbee19587735a388126e46077ad..b5073d8300682fb85667ca2304a8bcb4ef47f981 100755 (executable)
@@ -5,10 +5,13 @@
 #
 
 # dimensions in mm from MP3H6115A.pdf Motorola packaging datasheet
+BodyWidth = 7.6
+BodyHeight = 10.45
 PinWidth = 0.61
 PinHeight = 2.03
 PinSpacing = 1.27
-RowSpacing = 9.65
+RowCenters = 9.65
+RowSpacing = RowCenters - PinHeight
 BodySize = 7.4
 
 import sys
@@ -21,56 +24,56 @@ print 'Element[0x0 "MOT475-01" "" "" 0 0 0 0 0 100 0x0]'
 print "("
 for pin in range (0,8):
     print '   Pad[',\
-       mm2mils100(pin * PinSpacing + PinWidth/2), \
-       mm2mils100(PinWidth/2), \
-       mm2mils100(pin * PinSpacing + PinWidth/2), \
-       mm2mils100(PinHeight - PinWidth/2), \
+       mm2mils100((pin-3.5) * PinSpacing), \
+       mm2mils100(-(RowSpacing/2 + PinWidth/2)), \
+       mm2mils100((pin-3.5) * PinSpacing), \
+       mm2mils100(-(RowSpacing/2 + PinHeight - PinWidth/2)), \
        mm2mils100(PinWidth), \
        mm2mils100(PinSpacing - PinWidth), \
        mm2mils100(PinWidth)+600, \
        '"pin%i"' % (16 - pin), '"%i"' % (16 - pin), '0x0100]'
 
     print '   Pad[',\
-       mm2mils100(pin * PinSpacing + PinWidth/2), \
-       mm2mils100(RowSpacing + PinWidth/2), \
-       mm2mils100(pin * PinSpacing + PinWidth/2), \
-       mm2mils100(RowSpacing + PinHeight - PinWidth/2), \
+       mm2mils100((pin-3.5) * PinSpacing), \
+       mm2mils100(RowSpacing/2 + PinWidth/2), \
+       mm2mils100((pin-3.5) * PinSpacing), \
+       mm2mils100(RowSpacing/2 + PinHeight - PinWidth/2), \
        mm2mils100(PinWidth), \
        mm2mils100(PinSpacing - PinWidth), \
        mm2mils100(PinWidth)+600, \
        '"pin%i"' % (1 + pin), '"%i"' % (1 + pin), '0x0100]'
 
-#print '   ElementLine[',\
-#      mm2mils100(2 * PinSpacing - .254 - BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 - BodySize/2), \
-#      mm2mils100(2 * PinSpacing - .254 + BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 - BodySize/2), \
-#      '1000 ]'
-#
-#print '   ElementLine[',\
-#      mm2mils100(2 * PinSpacing - .254 - BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 + BodySize/2), \
-#      mm2mils100(2 * PinSpacing - .254 + BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 + BodySize/2), \
-#      '1000 ]'
-#
-#print '   ElementLine[',\
-#      mm2mils100(2 * PinSpacing - .254 - BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 - BodySize/2), \
-#      mm2mils100(2 * PinSpacing - .254 - BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 + BodySize/2), \
-#      '1000 ]'
-#
-#print '   ElementLine[',\
-#      mm2mils100(2 * PinSpacing - .254 + BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 - BodySize/2), \
-#      mm2mils100(2 * PinSpacing - .254 + BodySize/2), \
-#      mm2mils100(PinHeight/2 + RowSpacing/2 + BodySize/2), \
-#      '1000 ]'
+print '   ElementLine[',\
+       mm2mils100(-BodyHeight/2), \
+       mm2mils100(-BodyWidth/2), \
+       mm2mils100(-BodyHeight/2), \
+       mm2mils100( BodyWidth/2), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100(-BodyHeight/2), \
+       mm2mils100( BodyWidth/2), \
+       mm2mils100( BodyHeight/2), \
+       mm2mils100( BodyWidth/2), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100( BodyHeight/2), \
+       mm2mils100( BodyWidth/2), \
+       mm2mils100( BodyHeight/2), \
+       mm2mils100(-BodyWidth/2), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100( BodyHeight/2), \
+       mm2mils100(-BodyWidth/2), \
+       mm2mils100(-BodyHeight/2), \
+       mm2mils100(-BodyWidth/2), \
+       '1000 ]'
 
 print '   ElementArc[',\
-       mm2mils100(PinWidth/2), \
-       mm2mils100(RowSpacing-PinHeight/4), \
+       mm2mils100(-3.5 * PinSpacing), \
+       mm2mils100(RowSpacing/2-PinHeight/4), \
        '500 500 0 360 1000 ]'
 
 print ")"