convert Python footprint generators to Python 3
[hw/altusmetrum] / packages / wqfn-16.py
old mode 100755 (executable)
new mode 100644 (file)
index 4f21285..00202aa
@@ -1,6 +1,7 @@
-#!/usr/bin/python2
+#!/usr/bin/python3
 # Copyright 2011 by Bdale Garbee <bdale@gag.com>.  GPLv2
 # Copyright 2019 by Keith Packard <keithp@keithp.com>.  GPLv2+
+# Copyright 2024 by Bdale Garbee <bdale@gag.com>.  GPLv3
 #
 # Program to emit PCB footprint for WQFN-16 package used by the DRV8800
 #
@@ -27,16 +28,16 @@ import sys
 def mm2mils100( mm ):
        return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
 
-print '# author: Keith Packard'
-print '# email: keithp@keithp.com'
-print '# dist-license: GPL 2'
-print '# use-license: unlimited'
+print('# author: Keith Packard')
+print('# email: keithp@keithp.com')
+print('# dist-license: GPL 3')
+print('# use-license: unlimited')
 
-print 'Element[0x0 "qfn-16" "" "" 0 0 0 0 0 100 0x0]'
-print "("
+print('Element[0x0 "qfn-16" "" "" 0 0 0 0 0 100 0x0]')
+print("(")
 
 # pad under the chip, must be grounded
-print '   Pad[',\
+print('   Pad[',\
        mm2mils100(0), \
        mm2mils100(0), \
        mm2mils100(0), \
@@ -44,19 +45,19 @@ print '   Pad[',\
        mm2mils100(GndSquare), \
        mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
-       '"pin17" "17" "square,nopaste"]'
+       '"pin17" "17" "square,nopaste"]')
 
 # vias in the ground pad under the chip
 for viarow in range (-1,1):
   for viacol in range (-1,1):
-    print '   Pin[',\
+    print('   Pin[',\
        mm2mils100(1.8 * viacol * CoreSquare / 3 + .9 * CoreSquare/3), \
        mm2mils100(1.8 * viarow * CoreSquare / 3 + .9 * CoreSquare/3), \
        2600, \
        2500, \
        0, \
        1300, \
-       '"pin17" "17" 0x0002]'
+       '"pin17" "17" 0x0002]')
 
 # break pad under chip into a grid to control the resist and paste masks
 
@@ -66,7 +67,7 @@ for viarow in range (-1, 2):
   for viacol in range (-1, 2):
     if (viarow in (-1, 1)) and (viacol in (-1, 1)):
       # copper sub-square with resist over vias
-      print '   Pad[',\
+      print('   Pad[',\
        mm2mils100(viacol * CoreSquare / blocks), \
        mm2mils100(viarow * CoreSquare / blocks), \
        mm2mils100(viacol * CoreSquare / blocks), \
@@ -74,10 +75,10 @@ for viarow in range (-1, 2):
        mm2mils100((CoreSquare)/blocks), \
        0, \
        0, \
-       '"pin17" "17" "square,nopaste"]'
+       '"pin17" "17" "square,nopaste"]')
     else:
       # copper sub-square without resist
-      print '   Pad[',\
+      print('   Pad[',\
        mm2mils100(viacol * CoreSquare / blocks), \
        mm2mils100(viarow * CoreSquare / blocks), \
        mm2mils100(viacol * CoreSquare / blocks), \
@@ -85,9 +86,9 @@ for viarow in range (-1, 2):
        mm2mils100((CoreSquare)/blocks), \
        0, \
        mm2mils100((CoreSquare)/blocks), \
-       '"pin17" "17" "square,nopaste"]'
+       '"pin17" "17" "square,nopaste"]')
       # copper spot to control paste mask generation
-      print '   Pad[',\
+      print('   Pad[',\
        mm2mils100(viacol * CoreSquare / blocks), \
        mm2mils100(viarow * CoreSquare / blocks), \
        mm2mils100(viacol * CoreSquare / blocks), \
@@ -95,11 +96,11 @@ for viarow in range (-1, 2):
        1500, \
        0, \
        mm2mils100((CoreSquare)/blocks), \
-       '"pin17" "17" "square"]'
+       '"pin17" "17" "square"]')
 
 # pins
 for pin in range (1,5):
-    print '   Pad[',\
+    print('   Pad[',\
        mm2mils100((-2.5 + pin) * PinSpacing), \
        mm2mils100(-Overall/2 + PinWidth/2), \
        mm2mils100((-2.5 + pin) * PinSpacing), \
@@ -107,9 +108,9 @@ for pin in range (1,5):
        mm2mils100(PinWidth), \
        mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
-       '"pin%i"' % (13-pin), '"%i"' % (13-pin), '0x0000]'
+       '"pin%i"' % (13-pin), '"%i"' % (13-pin), '0x0000]')
 
-    print '   Pad[',\
+    print('   Pad[',\
        mm2mils100((-2.5 + pin) * PinSpacing), \
        mm2mils100(+Overall/2 - PinHeight + PinWidth/2), \
        mm2mils100((-2.5 + pin) * PinSpacing), \
@@ -117,9 +118,9 @@ for pin in range (1,5):
        mm2mils100(PinWidth), \
        mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
-       '"pin%i"' % pin, '"%i"' % pin, '0x0000]'
+       '"pin%i"' % pin, '"%i"' % pin, '0x0000]')
       
-    print '   Pad[',\
+    print('   Pad[',\
        mm2mils100(Overall/2 - PinHeight + PinWidth/2), \
        mm2mils100((-2.5 + pin) * PinSpacing), \
        mm2mils100(Overall/2 - PinWidth/2), \
@@ -127,9 +128,9 @@ for pin in range (1,5):
        mm2mils100(PinWidth), \
        mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
-       '"pin%i"' % (9-pin), '"%i"' % (9-pin), '0x0000]'
+       '"pin%i"' % (9-pin), '"%i"' % (9-pin), '0x0000]')
 
-    print '   Pad[',\
+    print('   Pad[',\
        mm2mils100(-Overall/2 + PinWidth/2), \
        mm2mils100((-2.5 + pin) * PinSpacing), \
        mm2mils100(-Overall/2 + PinHeight - PinWidth/2), \
@@ -137,10 +138,10 @@ for pin in range (1,5):
        mm2mils100(PinWidth), \
        mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
-       '"pin%i"' % (12+pin), '"%i"' % (12+pin), '0x0000]'
+       '"pin%i"' % (12+pin), '"%i"' % (12+pin), '0x0000]')
 
-print '   ElementArc[',\
+print('   ElementArc[',\
        mm2mils100(-2.0), \
        mm2mils100(2.0), \
-       '500 500 0 360 1000 ]'
-print ")"
+       '500 500 0 360 1000 ]')
+print(")")