From 8bc5bf6a625a4d079f6679756d66b2c94b360523 Mon Sep 17 00:00:00 2001 From: ian Date: Thu, 5 Aug 2004 21:11:41 +0000 Subject: [PATCH] reversers pcb wip --- pcb/reversers.pcb | 1046 ++++++++++++++++++++++++++++++++++++++++++ reversers-netlist.pl | 36 ++ 2 files changed, 1082 insertions(+) create mode 100644 pcb/reversers.pcb create mode 100755 reversers-netlist.pl diff --git a/pcb/reversers.pcb b/pcb/reversers.pcb new file mode 100644 index 0000000..a8f9775 --- /dev/null +++ b/pcb/reversers.pcb @@ -0,0 +1,1046 @@ +# release: pcb-bin 1.99p +# date: Thu Aug 5 22:11:06 2004 +# user: ian (Ian Jackson) +# host: anarres.relativity.greenend.org.uk + +PCB["reversers.pcb" 1450000 360000] + +Grid[2500.00000000 0 0 1] +Cursor[566815 133501 3.000000] +Thermal[0.500000] +DRC[699 400 800 800] +Flags(0x0000000000001e51) +Groups("1,c:2,s:3:4:5:6:7:8") +Styles["Signal,1000,5500,2800,1000:Power,2500,6000,3500,1000:Fat,4000,6000,3500,1000:Skinny,800,3600,2000,700"] + +Symbol[' ' 1800] +( +) +Symbol['!' 1200] +( + SymbolLine[0 3500 0 4000 800] + SymbolLine[0 0 0 2500 800] +) +Symbol['"' 1200] +( + SymbolLine[0 0 0 1000 800] + SymbolLine[1000 0 1000 1000 800] +) +Symbol['#' 1200] +( + SymbolLine[0 2500 2000 2500 800] + SymbolLine[0 1500 2000 1500 800] + SymbolLine[1500 1000 1500 3000 800] + SymbolLine[500 1000 500 3000 800] +) +Symbol['$' 1200] +( + SymbolLine[1500 500 2000 1000 800] + SymbolLine[500 500 1500 500 800] + SymbolLine[0 1000 500 500 800] + SymbolLine[0 1000 0 1500 800] + SymbolLine[0 1500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 3000 800] + SymbolLine[1500 3500 2000 3000 800] + SymbolLine[500 3500 1500 3500 800] + SymbolLine[0 3000 500 3500 800] + SymbolLine[1000 0 1000 4000 800] +) +Symbol['%' 1200] +( + SymbolLine[0 500 0 1000 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1000 0 800] + SymbolLine[1000 0 1500 500 800] + SymbolLine[1500 500 1500 1000 800] + SymbolLine[1000 1500 1500 1000 800] + SymbolLine[500 1500 1000 1500 800] + SymbolLine[0 1000 500 1500 800] + SymbolLine[0 4000 4000 0 800] + SymbolLine[3500 4000 4000 3500 800] + SymbolLine[4000 3000 4000 3500 800] + SymbolLine[3500 2500 4000 3000 800] + SymbolLine[3000 2500 3500 2500 800] + SymbolLine[2500 3000 3000 2500 800] + SymbolLine[2500 3000 2500 3500 800] + SymbolLine[2500 3500 3000 4000 800] + SymbolLine[3000 4000 3500 4000 800] +) +Symbol['&' 1200] +( + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 500 0 1500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 2500 1500 1000 800] + SymbolLine[500 4000 1000 4000 800] + SymbolLine[1000 4000 2000 3000 800] + SymbolLine[0 1500 2500 4000 800] + SymbolLine[500 0 1000 0 800] + SymbolLine[1000 0 1500 500 800] + SymbolLine[1500 500 1500 1000 800] + SymbolLine[0 2500 0 3500 800] +) +Symbol[''' 1200] +( + SymbolLine[0 1000 1000 0 800] +) +Symbol['(' 1200] +( + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 500 0 3500 800] +) +Symbol[')' 1200] +( + SymbolLine[0 0 500 500 800] + SymbolLine[500 500 500 3500 800] + SymbolLine[0 4000 500 3500 800] +) +Symbol['*' 1200] +( + SymbolLine[0 1000 2000 3000 800] + SymbolLine[0 3000 2000 1000 800] + SymbolLine[0 2000 2000 2000 800] + SymbolLine[1000 1000 1000 3000 800] +) +Symbol['+' 1200] +( + SymbolLine[0 2000 2000 2000 800] + SymbolLine[1000 1000 1000 3000 800] +) +Symbol[',' 1200] +( + SymbolLine[0 5000 1000 4000 800] +) +Symbol['-' 1200] +( + SymbolLine[0 2000 2000 2000 800] +) +Symbol['.' 1200] +( + SymbolLine[0 4000 500 4000 800] +) +Symbol['/' 1200] +( + SymbolLine[0 3500 3000 500 800] +) +Symbol['0' 1200] +( + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 500 0 3500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3000 2000 1000 800] +) +Symbol['1' 1200] +( + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1000 0 1000 4000 800] + SymbolLine[0 1000 1000 0 800] +) +Symbol['2' 1200] +( + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 2000 0 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 1500 800] + SymbolLine[0 4000 2500 1500 800] + SymbolLine[0 4000 2500 4000 800] +) +Symbol['3' 1200] +( + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 2000 2000 2000 800] +) +Symbol['4' 1200] +( + SymbolLine[0 2000 2000 0 800] + SymbolLine[0 2000 2500 2000 800] + SymbolLine[2000 0 2000 4000 800] +) +Symbol['5' 1200] +( + SymbolLine[0 0 2000 0 800] + SymbolLine[0 0 0 2000 800] + SymbolLine[0 2000 500 1500 800] + SymbolLine[500 1500 1500 1500 800] + SymbolLine[1500 1500 2000 2000 800] + SymbolLine[2000 2000 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['6' 1200] +( + SymbolLine[1500 0 2000 500 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[0 2000 1500 2000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[2000 2500 2000 3500 800] +) +Symbol['7' 1200] +( + SymbolLine[0 4000 2500 1500 800] + SymbolLine[2500 0 2500 1500 800] + SymbolLine[0 0 2500 0 800] +) +Symbol['8' 1200] +( + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 1500 500 2000 800] + SymbolLine[0 500 0 1500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 1500 800] + SymbolLine[1500 2000 2000 1500 800] +) +Symbol['9' 1200] +( + SymbolLine[0 4000 2000 2000 800] + SymbolLine[2000 500 2000 2000 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 500 0 1500 800] + SymbolLine[0 1500 500 2000 800] + SymbolLine[500 2000 2000 2000 800] +) +Symbol[':' 1200] +( + SymbolLine[0 1500 500 1500 800] + SymbolLine[0 2500 500 2500 800] +) +Symbol[';' 1200] +( + SymbolLine[0 4000 1000 3000 800] + SymbolLine[1000 1500 1000 2000 800] +) +Symbol['<' 1200] +( + SymbolLine[0 2000 1000 1000 800] + SymbolLine[0 2000 1000 3000 800] +) +Symbol['=' 1200] +( + SymbolLine[0 1500 2000 1500 800] + SymbolLine[0 2500 2000 2500 800] +) +Symbol['>' 1200] +( + SymbolLine[0 1000 1000 2000 800] + SymbolLine[0 3000 1000 2000 800] +) +Symbol['?' 1200] +( + SymbolLine[1000 2000 1000 2500 800] + SymbolLine[1000 3500 1000 4000 800] + SymbolLine[0 500 0 1000 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 1000 800] + SymbolLine[1000 2000 2000 1000 800] +) +Symbol['A' 1200] +( + SymbolLine[0 500 0 4000 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 2000 0 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 4000 800] + SymbolLine[0 2000 2500 2000 800] +) +Symbol['B' 1200] +( + SymbolLine[0 4000 2000 4000 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[2500 2500 2500 3500 800] + SymbolLine[2000 2000 2500 2500 800] + SymbolLine[500 2000 2000 2000 800] + SymbolLine[500 0 500 4000 800] + SymbolLine[0 0 2000 0 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 1500 800] + SymbolLine[2000 2000 2500 1500 800] +) +Symbol['C' 1200] +( + SymbolLine[500 4000 2000 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 500 0 3500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 2000 0 800] +) +Symbol['D' 1200] +( + SymbolLine[500 0 500 4000 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 3500 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[0 4000 2000 4000 800] + SymbolLine[0 0 2000 0 800] +) +Symbol['E' 1200] +( + SymbolLine[0 2000 1500 2000 800] + SymbolLine[0 4000 2000 4000 800] + SymbolLine[0 0 0 4000 800] + SymbolLine[0 0 2000 0 800] +) +Symbol['F' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 0 2000 0 800] + SymbolLine[0 2000 1500 2000 800] +) +Symbol['G' 1200] +( + SymbolLine[2000 0 2500 500 800] + SymbolLine[500 0 2000 0 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 2000 4000 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[2500 2500 2500 3500 800] + SymbolLine[2000 2000 2500 2500 800] + SymbolLine[1000 2000 2000 2000 800] +) +Symbol['H' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[2500 0 2500 4000 800] + SymbolLine[0 2000 2500 2000 800] +) +Symbol['I' 1200] +( + SymbolLine[0 0 1000 0 800] + SymbolLine[500 0 500 4000 800] + SymbolLine[0 4000 1000 4000 800] +) +Symbol['J' 1200] +( + SymbolLine[0 0 1500 0 800] + SymbolLine[1500 0 1500 3500 800] + SymbolLine[1000 4000 1500 3500 800] + SymbolLine[500 4000 1000 4000 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['K' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 2000 2000 0 800] + SymbolLine[0 2000 2000 4000 800] +) +Symbol['L' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 4000 2000 4000 800] +) +Symbol['M' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 0 1500 1500 800] + SymbolLine[1500 1500 3000 0 800] + SymbolLine[3000 0 3000 4000 800] +) +Symbol['N' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 0 0 500 800] + SymbolLine[0 500 2500 3000 800] + SymbolLine[2500 0 2500 4000 800] +) +Symbol['O' 1200] +( + SymbolLine[0 500 0 3500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['P' 1200] +( + SymbolLine[500 0 500 4000 800] + SymbolLine[0 0 2000 0 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 1500 800] + SymbolLine[2000 2000 2500 1500 800] + SymbolLine[500 2000 2000 2000 800] +) +Symbol['Q' 1200] +( + SymbolLine[0 500 0 3500 800] + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1500 0 800] + SymbolLine[1500 0 2000 500 800] + SymbolLine[2000 500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[1000 3000 2000 4000 800] +) +Symbol['R' 1200] +( + SymbolLine[0 0 2000 0 800] + SymbolLine[2000 0 2500 500 800] + SymbolLine[2500 500 2500 1500 800] + SymbolLine[2000 2000 2500 1500 800] + SymbolLine[500 2000 2000 2000 800] + SymbolLine[500 0 500 4000 800] + SymbolLine[500 2000 2500 4000 800] +) +Symbol['S' 1200] +( + SymbolLine[2000 0 2500 500 800] + SymbolLine[500 0 2000 0 800] + SymbolLine[0 500 500 0 800] + SymbolLine[0 500 0 1500 800] + SymbolLine[0 1500 500 2000 800] + SymbolLine[500 2000 2000 2000 800] + SymbolLine[2000 2000 2500 2500 800] + SymbolLine[2500 2500 2500 3500 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[500 4000 2000 4000 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['T' 1200] +( + SymbolLine[0 0 2000 0 800] + SymbolLine[1000 0 1000 4000 800] +) +Symbol['U' 1200] +( + SymbolLine[0 0 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[2000 0 2000 3500 800] +) +Symbol['V' 1200] +( + SymbolLine[0 0 0 3000 800] + SymbolLine[0 3000 1000 4000 800] + SymbolLine[1000 4000 2000 3000 800] + SymbolLine[2000 0 2000 3000 800] +) +Symbol['W' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 4000 1500 2500 800] + SymbolLine[1500 2500 3000 4000 800] + SymbolLine[3000 0 3000 4000 800] +) +Symbol['X' 1200] +( + SymbolLine[0 0 0 500 800] + SymbolLine[0 500 2500 3000 800] + SymbolLine[2500 3000 2500 4000 800] + SymbolLine[0 3000 0 4000 800] + SymbolLine[0 3000 2500 500 800] + SymbolLine[2500 0 2500 500 800] +) +Symbol['Y' 1200] +( + SymbolLine[0 0 0 500 800] + SymbolLine[0 500 1000 1500 800] + SymbolLine[1000 1500 2000 500 800] + SymbolLine[2000 0 2000 500 800] + SymbolLine[1000 1500 1000 4000 800] +) +Symbol['Z' 1200] +( + SymbolLine[0 0 2500 0 800] + SymbolLine[2500 0 2500 500 800] + SymbolLine[0 3000 2500 500 800] + SymbolLine[0 3000 0 4000 800] + SymbolLine[0 4000 2500 4000 800] +) +Symbol['[' 1200] +( + SymbolLine[0 0 500 0 800] + SymbolLine[0 0 0 4000 800] + SymbolLine[0 4000 500 4000 800] +) +Symbol['\' 1200] +( + SymbolLine[0 500 3000 3500 800] +) +Symbol[']' 1200] +( + SymbolLine[0 0 500 0 800] + SymbolLine[500 0 500 4000 800] + SymbolLine[0 4000 500 4000 800] +) +Symbol['^' 1200] +( + SymbolLine[0 500 500 0 800] + SymbolLine[500 0 1000 500 800] +) +Symbol['_' 1200] +( + SymbolLine[0 4000 2000 4000 800] +) +Symbol['a' 1200] +( + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[2000 2000 2000 3500 800] + SymbolLine[2000 3500 2500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] +) +Symbol['b' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[2000 2500 2000 3500 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[0 2500 500 2000 800] +) +Symbol['c' 1200] +( + SymbolLine[500 2000 2000 2000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 2000 4000 800] +) +Symbol['d' 1200] +( + SymbolLine[2000 0 2000 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] +) +Symbol['e' 1200] +( + SymbolLine[500 4000 2000 4000 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[0 3000 2000 3000 800] + SymbolLine[2000 3000 2000 2500 800] +) +Symbol['f' 1000] +( + SymbolLine[500 500 500 4000 800] + SymbolLine[500 500 1000 0 800] + SymbolLine[1000 0 1500 0 800] + SymbolLine[0 2000 1000 2000 800] +) +Symbol['g' 1200] +( + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[0 5000 500 5500 800] + SymbolLine[500 5500 1500 5500 800] + SymbolLine[1500 5500 2000 5000 800] + SymbolLine[2000 2000 2000 5000 800] +) +Symbol['h' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 4000 800] +) +Symbol['i' 1000] +( + SymbolLine[0 1000 0 1500 800] + SymbolLine[0 2500 0 4000 800] +) +Symbol['j' 1000] +( + SymbolLine[500 1000 500 1500 800] + SymbolLine[500 2500 500 5000 800] + SymbolLine[0 5500 500 5000 800] +) +Symbol['k' 1200] +( + SymbolLine[0 0 0 4000 800] + SymbolLine[0 2500 1500 4000 800] + SymbolLine[0 2500 1000 1500 800] +) +Symbol['l' 1000] +( + SymbolLine[0 0 0 3500 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['m' 1200] +( + SymbolLine[500 2500 500 4000 800] + SymbolLine[500 2500 1000 2000 800] + SymbolLine[1000 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 4000 800] + SymbolLine[2000 2500 2500 2000 800] + SymbolLine[2500 2000 3000 2000 800] + SymbolLine[3000 2000 3500 2500 800] + SymbolLine[3500 2500 3500 4000 800] + SymbolLine[0 2000 500 2500 800] +) +Symbol['n' 1200] +( + SymbolLine[500 2500 500 4000 800] + SymbolLine[500 2500 1000 2000 800] + SymbolLine[1000 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 4000 800] + SymbolLine[0 2000 500 2500 800] +) +Symbol['o' 1200] +( + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[2000 2500 2000 3500 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['p' 1200] +( + SymbolLine[500 2500 500 5500 800] + SymbolLine[0 2000 500 2500 800] + SymbolLine[500 2500 1000 2000 800] + SymbolLine[1000 2000 2000 2000 800] + SymbolLine[2000 2000 2500 2500 800] + SymbolLine[2500 2500 2500 3500 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[1000 4000 2000 4000 800] + SymbolLine[500 3500 1000 4000 800] +) +Symbol['q' 1200] +( + SymbolLine[2000 2500 2000 5500 800] + SymbolLine[1500 2000 2000 2500 800] + SymbolLine[500 2000 1500 2000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[0 2500 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] +) +Symbol['r' 1200] +( + SymbolLine[500 2500 500 4000 800] + SymbolLine[500 2500 1000 2000 800] + SymbolLine[1000 2000 2000 2000 800] + SymbolLine[0 2000 500 2500 800] +) +Symbol['s' 1200] +( + SymbolLine[500 4000 2000 4000 800] + SymbolLine[2000 4000 2500 3500 800] + SymbolLine[2000 3000 2500 3500 800] + SymbolLine[500 3000 2000 3000 800] + SymbolLine[0 2500 500 3000 800] + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 2000 2000 800] + SymbolLine[2000 2000 2500 2500 800] + SymbolLine[0 3500 500 4000 800] +) +Symbol['t' 1000] +( + SymbolLine[500 0 500 3500 800] + SymbolLine[500 3500 1000 4000 800] + SymbolLine[0 1500 1000 1500 800] +) +Symbol['u' 1200] +( + SymbolLine[0 2000 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] + SymbolLine[2000 2000 2000 3500 800] +) +Symbol['v' 1200] +( + SymbolLine[0 2000 0 3000 800] + SymbolLine[0 3000 1000 4000 800] + SymbolLine[1000 4000 2000 3000 800] + SymbolLine[2000 2000 2000 3000 800] +) +Symbol['w' 1200] +( + SymbolLine[0 2000 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[500 4000 1000 4000 800] + SymbolLine[1000 4000 1500 3500 800] + SymbolLine[1500 2000 1500 3500 800] + SymbolLine[1500 3500 2000 4000 800] + SymbolLine[2000 4000 2500 4000 800] + SymbolLine[2500 4000 3000 3500 800] + SymbolLine[3000 2000 3000 3500 800] +) +Symbol['x' 1200] +( + SymbolLine[0 2000 2000 4000 800] + SymbolLine[0 4000 2000 2000 800] +) +Symbol['y' 1200] +( + SymbolLine[0 2000 0 3500 800] + SymbolLine[0 3500 500 4000 800] + SymbolLine[2000 2000 2000 5000 800] + SymbolLine[1500 5500 2000 5000 800] + SymbolLine[500 5500 1500 5500 800] + SymbolLine[0 5000 500 5500 800] + SymbolLine[500 4000 1500 4000 800] + SymbolLine[1500 4000 2000 3500 800] +) +Symbol['z' 1200] +( + SymbolLine[0 2000 2000 2000 800] + SymbolLine[0 4000 2000 2000 800] + SymbolLine[0 4000 2000 4000 800] +) +Symbol['{' 1200] +( + SymbolLine[500 500 1000 0 800] + SymbolLine[500 500 500 1500 800] + SymbolLine[0 2000 500 1500 800] + SymbolLine[0 2000 500 2500 800] + SymbolLine[500 2500 500 3500 800] + SymbolLine[500 3500 1000 4000 800] +) +Symbol['|' 1200] +( + SymbolLine[0 0 0 4000 800] +) +Symbol['}' 1200] +( + SymbolLine[0 0 500 500 800] + SymbolLine[500 500 500 1500 800] + SymbolLine[500 1500 1000 2000 800] + SymbolLine[500 2500 1000 2000 800] + SymbolLine[500 2500 500 3500 800] + SymbolLine[0 4000 500 3500 800] +) +Symbol['~' 1200] +( + SymbolLine[0 2500 500 2000 800] + SymbolLine[500 2000 1000 2000 800] + SymbolLine[1000 2000 1500 2500 800] + SymbolLine[1500 2500 2000 2500 800] + SymbolLine[2000 2500 2500 2000 800] +) + +Element[0x00000000 "" "RLY1" "" 500000 125000 -7500 7500 3 100 0x00000000] +( + Pin[0 0 6000 3000 6000 2800 "" "1" 0x00004001] + Pin[0 30000 6000 3000 6000 2800 "" "16" 0x00004001] + Pin[-30000 30000 6000 3000 6000 2800 "" "13" 0x00004001] + Pin[-30000 0 6000 3000 6000 2800 "" "4" 0x00004001] + Pin[-70000 30000 6000 3000 6000 2800 "" "9" 0x00004001] + Pin[-50000 0 6000 3000 6000 2800 "" "6" 0x00004001] + Pin[-50000 30000 6000 3000 6000 2800 "" "11" 0x00004001] + Pin[-70000 0 6000 3000 6000 2800 "" "8" 0x00004001] + ElementLine [-75000 -5000 5000 -5000 1000] + ElementLine [-75000 -5000 -75000 35000 1000] + ElementLine [-75000 35000 5000 35000 1000] + ElementLine [5000 -5000 5000 10000 1000] + ElementLine [5000 20000 5000 35000 1000] + ElementArc [5000 15000 5000 5000 270 180 1000] + + ) + +Element[0x00000000 "generic" "" "DIL 40" 645000 50000 32000 5000 3 100 0x00000000] +( + Pin[0 0 6000 3000 6000 2800 "1" "1" 0x00000101] + Pin[0 10000 6000 3000 6000 2800 "2" "2" 0x00000001] + Pin[0 20000 6000 3000 6000 2800 "3" "3" 0x00000001] + Pin[0 30000 6000 3000 6000 2800 "4" "4" 0x00000001] + Pin[0 40000 6000 3000 6000 2800 "5" "5" 0x00000001] + Pin[0 50000 6000 3000 6000 2800 "6" "6" 0x00000001] + Pin[0 60000 6000 3000 6000 2800 "7" "7" 0x00000001] + Pin[0 70000 6000 3000 6000 2800 "8" "8" 0x00000001] + Pin[0 80000 6000 3000 6000 2800 "9" "9" 0x00000001] + Pin[0 90000 6000 3000 6000 2800 "10" "10" 0x00000001] + Pin[0 100000 6000 3000 6000 2800 "11" "11" 0x00000001] + Pin[0 110000 6000 3000 6000 2800 "12" "12" 0x00000001] + Pin[0 120000 6000 3000 6000 2800 "13" "13" 0x00000001] + Pin[0 130000 6000 3000 6000 2800 "14" "14" 0x00000001] + Pin[0 140000 6000 3000 6000 2800 "15" "15" 0x00000001] + Pin[0 150000 6000 3000 6000 2800 "16" "16" 0x00000001] + Pin[0 160000 6000 3000 6000 2800 "17" "17" 0x00000001] + Pin[0 170000 6000 3000 6000 2800 "18" "18" 0x00000001] + Pin[0 180000 6000 3000 6000 2800 "19" "19" 0x00000001] + Pin[0 190000 6000 3000 6000 2800 "20" "20" 0x00000001] + Pin[60000 190000 6000 3000 6000 2800 "21" "21" 0x00000001] + Pin[60000 180000 6000 3000 6000 2800 "22" "22" 0x00000001] + Pin[60000 170000 6000 3000 6000 2800 "23" "23" 0x00000001] + Pin[60000 160000 6000 3000 6000 2800 "24" "24" 0x00000001] + Pin[60000 150000 6000 3000 6000 2800 "25" "25" 0x00000001] + Pin[60000 140000 6000 3000 6000 2800 "26" "26" 0x00000001] + Pin[60000 130000 6000 3000 6000 2800 "27" "27" 0x00000001] + Pin[60000 120000 6000 3000 6000 2800 "28" "28" 0x00000001] + Pin[60000 110000 6000 3000 6000 2800 "29" "29" 0x00000001] + Pin[60000 100000 6000 3000 6000 2800 "30" "30" 0x00000001] + Pin[60000 90000 6000 3000 6000 2800 "31" "31" 0x00000001] + Pin[60000 80000 6000 3000 6000 2800 "32" "32" 0x00000001] + Pin[60000 70000 6000 3000 6000 2800 "33" "33" 0x00000001] + Pin[60000 60000 6000 3000 6000 2800 "34" "34" 0x00000001] + Pin[60000 50000 6000 3000 6000 2800 "35" "35" 0x00000001] + Pin[60000 40000 6000 3000 6000 2800 "36" "36" 0x00000001] + Pin[60000 30000 6000 3000 6000 2800 "37" "37" 0x00000001] + Pin[60000 20000 6000 3000 6000 2800 "38" "38" 0x00000001] + Pin[60000 10000 6000 3000 6000 2800 "39" "39" 0x00000001] + Pin[60000 0 6000 3000 6000 2800 "40" "40" 0x00000001] + ElementLine [-5000 -5000 -5000 195000 1000] + ElementLine [-5000 195000 65000 195000 1000] + ElementLine [65000 195000 65000 -5000 1000] + ElementLine [-5000 -5000 25000 -5000 1000] + ElementLine [35000 -5000 65000 -5000 1000] + ElementArc [30000 -5000 5000 5000 0 180 1000] + + ) + +Element[0x00000000 "" "XX1" "" 475000 30000 -5000 -10000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + ElementLine [0 5000 -5000 0 1000] + ElementLine [5000 0 0 5000 1000] + ElementLine [0 -5000 5000 0 1000] + ElementLine [-5000 0 0 -5000 1000] + + ) + +Element[0x00000000 "" "XC1" "" 460000 30000 -5000 -10000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + ElementLine [-5000 0 0 -5000 1000] + ElementLine [0 -5000 5000 0 1000] + ElementLine [5000 0 0 5000 1000] + ElementLine [0 5000 -5000 0 1000] + + ) + +Element[0x00000000 "" "BR1" "" 435000 57500 12500 -5000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + Pin[42500 0 6000 2000 6006 3500 "" "2" 0x00000001] + Pin[42500 42500 6000 2000 6006 3500 "" "3" 0x00000001] + Pin[0 42500 6000 2000 6006 3500 "" "4" 0x00000001] + ElementLine [0 -10000 52500 -10000 1000] + ElementLine [-10000 0 0 -10000 1000] + ElementLine [-10000 52500 -10000 0 1000] + ElementLine [52500 52500 -10000 52500 1000] + ElementLine [52500 -10000 52500 52500 1000] + ElementArc [20000 22500 10000 10000 0 90 1000] + ElementArc [22500 22500 10000 10000 90 90 1000] + ElementArc [22500 20000 10000 10000 180 90 1000] + ElementArc [22499 10001 1 1 180 90 1000] + ElementArc [20000 20000 10000 10000 270 90 1000] + + ) + +Element[0x00000000 "resistor_axial" "RS1" "500" 547500 137500 -1400 -2000 1 100 0x00000000] +( + Pin[0 12500 5000 3000 5600 2000 "1" "1" 0x00000101] + Pin[0 -37500 5000 3000 5600 2000 "2" "2" 0x00000001] + ElementLine [-4100 0 4100 0 1000] + ElementLine [4100 -25000 4100 0 1000] + ElementLine [-4100 -25000 4100 -25000 1000] + ElementLine [-4100 -25000 -4100 0 1000] + ElementLine [0 -37500 0 -25000 1000] + ElementLine [0 0 0 12500 1000] + + ) + +Element[0x00000000 "generic" "ULN1" "DIL 18" 615000 220000 -17000 -5000 1 100 0x00000000] +( + Pin[0 0 6000 3000 6600 2800 "1" "1" 0x00000101] + Pin[0 -10000 6000 3000 6600 2800 "2" "2" 0x00000001] + Pin[0 -20000 6000 3000 6600 2800 "3" "3" 0x00000001] + Pin[0 -30000 6000 3000 6600 2800 "4" "4" 0x00000001] + Pin[0 -40000 6000 3000 6600 2800 "5" "5" 0x00000001] + Pin[0 -50000 6000 3000 6600 2800 "6" "6" 0x00000001] + Pin[0 -60000 6000 3000 6600 2800 "7" "7" 0x00000001] + Pin[0 -70000 6000 3000 6600 2800 "8" "8" 0x00000001] + Pin[0 -80000 6000 3000 6600 2800 "9" "9" 0x00000001] + Pin[-30000 -80000 6000 3000 6600 2800 "10" "10" 0x00000001] + Pin[-30000 -70000 6000 3000 6600 2800 "11" "11" 0x00000001] + Pin[-30000 -60000 6000 3000 6600 2800 "12" "12" 0x00000001] + Pin[-30000 -50000 6000 3000 6600 2800 "13" "13" 0x00000001] + Pin[-30000 -40000 6000 3000 6600 2800 "14" "14" 0x00000001] + Pin[-30000 -30000 6000 3000 6600 2800 "15" "15" 0x00000001] + Pin[-30000 -20000 6000 3000 6600 2800 "16" "16" 0x00000001] + Pin[-30000 -10000 6000 3000 6600 2800 "17" "17" 0x00000001] + Pin[-30000 0 6000 3000 6600 2800 "ULN1" "18" 0x00000001] + ElementLine [-35000 5000 -20000 5000 1000] + ElementLine [-10000 5000 5000 5000 1000] + ElementLine [-35000 -85000 -35000 5000 1000] + ElementLine [-35000 -85000 5000 -85000 1000] + ElementLine [5000 -85000 5000 5000 1000] + ElementArc [-15000 5000 5000 5000 180 180 1000] + + ) + +Element[0x00000000 "" "VRLY0" "" 540000 30000 -5000 -10000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + ElementLine [-5000 0 0 -5000 1000] + ElementLine [0 -5000 5000 0 1000] + ElementLine [5000 0 0 5000 1000] + ElementLine [0 5000 -5000 0 1000] + + ) + +Element[0x00000000 "" "BOOSTA" "" 507500 30000 -5000 -10000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + ElementLine [0 5000 -5000 0 1000] + ElementLine [5000 0 0 5000 1000] + ElementLine [0 -5000 5000 0 1000] + ElementLine [-5000 0 0 -5000 1000] + + ) + +Element[0x00000000 "" "BOOSTB" "" 440000 30000 -5000 -10000 0 100 0x00000000] +( + Pin[0 0 6000 2000 6006 3500 "" "1" 0x00000001] + ElementLine [-5000 0 0 -5000 1000] + ElementLine [0 -5000 5000 0 1000] + ElementLine [5000 0 0 5000 1000] + ElementLine [0 5000 -5000 0 1000] + + ) + +Element[0x00000000 "generic" "" "DIL 18" 585000 40000 17000 5000 3 100 0x00000000] +( + Pin[0 0 6000 3000 6600 2800 "1" "1" 0x00000101] + Pin[0 10000 6000 3000 6600 2800 "2" "2" 0x00000001] + Pin[0 20000 6000 3000 6600 2800 "3" "3" 0x00000001] + Pin[0 30000 6000 3000 6600 2800 "4" "4" 0x00000001] + Pin[0 40000 6000 3000 6600 2800 "5" "5" 0x00000001] + Pin[0 50000 6000 3000 6600 2800 "6" "6" 0x00000001] + Pin[0 60000 6000 3000 6600 2800 "7" "7" 0x00000001] + Pin[0 70000 6000 3000 6600 2800 "8" "8" 0x00000001] + Pin[0 80000 6000 3000 6600 2800 "9" "9" 0x00000001] + Pin[30000 80000 6000 3000 6600 2800 "10" "10" 0x00000001] + Pin[30000 70000 6000 3000 6600 2800 "11" "11" 0x00000001] + Pin[30000 60000 6000 3000 6600 2800 "12" "12" 0x00000001] + Pin[30000 50000 6000 3000 6600 2800 "13" "13" 0x00000001] + Pin[30000 40000 6000 3000 6600 2800 "14" "14" 0x00000001] + Pin[30000 30000 6000 3000 6600 2800 "15" "15" 0x00000001] + Pin[30000 20000 6000 3000 6600 2800 "16" "16" 0x00000001] + Pin[30000 10000 6000 3000 6600 2800 "17" "17" 0x00000001] + Pin[30000 0 6000 3000 6600 2800 "18" "18" 0x00000001] + ElementLine [20000 -5000 35000 -5000 1000] + ElementLine [-5000 -5000 10000 -5000 1000] + ElementLine [35000 85000 35000 -5000 1000] + ElementLine [-5000 85000 35000 85000 1000] + ElementLine [-5000 -5000 -5000 85000 1000] + ElementArc [15000 -5000 5000 5000 0 180 1000] + + ) + +Element[0x00000000 "generic" "" "DIL 18" 585000 245000 17000 5000 3 100 0x00000000] +( + Pin[0 0 6000 3000 6600 2800 "1" "1" 0x00000101] + Pin[0 10000 6000 3000 6600 2800 "2" "2" 0x00000001] + Pin[0 20000 6000 3000 6600 2800 "3" "3" 0x00000001] + Pin[0 30000 6000 3000 6600 2800 "4" "4" 0x00000001] + Pin[0 40000 6000 3000 6600 2800 "5" "5" 0x00000001] + Pin[0 50000 6000 3000 6600 2800 "6" "6" 0x00000001] + Pin[0 60000 6000 3000 6600 2800 "7" "7" 0x00000001] + Pin[0 70000 6000 3000 6600 2800 "8" "8" 0x00000001] + Pin[0 80000 6000 3000 6600 2800 "9" "9" 0x00000001] + Pin[30000 80000 6000 3000 6600 2800 "10" "10" 0x00000001] + Pin[30000 70000 6000 3000 6600 2800 "11" "11" 0x00000001] + Pin[30000 60000 6000 3000 6600 2800 "12" "12" 0x00000001] + Pin[30000 50000 6000 3000 6600 2800 "13" "13" 0x00000001] + Pin[30000 40000 6000 3000 6600 2800 "14" "14" 0x00000001] + Pin[30000 30000 6000 3000 6600 2800 "15" "15" 0x00000001] + Pin[30000 20000 6000 3000 6600 2800 "16" "16" 0x00000001] + Pin[30000 10000 6000 3000 6600 2800 "17" "17" 0x00000001] + Pin[30000 0 6000 3000 6600 2800 "18" "18" 0x00000001] + ElementLine [20000 -5000 35000 -5000 1000] + ElementLine [-5000 -5000 10000 -5000 1000] + ElementLine [35000 85000 35000 -5000 1000] + ElementLine [-5000 85000 35000 85000 1000] + ElementLine [-5000 -5000 -5000 85000 1000] + ElementArc [15000 -5000 5000 5000 0 180 1000] + + ) +Layer(1 "component") +( +) +Layer(2 "solder") +( +) +Layer(3 "GND") +( +) +Layer(4 "power") +( +) +Layer(5 "signal1") +( +) +Layer(6 "signal2") +( +) +Layer(7 "unused") +( +) +Layer(8 "unused") +( +) +Layer(9 "silk") +( +) +Layer(10 "silk") +( + Arc[455001 145001 1 1 1000 2000 0 -90 0x00000020] + Arc[455001 145001 1 1 1000 2000 -90 90 0x00000020] +) diff --git a/reversers-netlist.pl b/reversers-netlist.pl new file mode 100755 index 0000000..e9ae2d1 --- /dev/null +++ b/reversers-netlist.pl @@ -0,0 +1,36 @@ +#!/bin/sh + +$max=1; + +@pinleft= (2..10, 14..17, 19,20); +@pinright= reverse (21,22, 24..30, 33..37); + +for $uln (0..1) { + next if $uln*8 > $max; + o("vrly$uln", Power, "CULN%d-2 VRLY%d ULN%d-10", + $uln, + $uln); +} + +for $iter (0..15) { + next if $iter > $max; + $i1= $iter+1; + $wh8= $iter >> 3; + $in8= $iter % 8; + $wh4= $iter >> 2; + $in4= $iter % 4; + o("picout$i1", Signal, "PIC-%d ULN%d-%d", + $pinleft[$iter], + $wh8+1, 8-$in8); + o("rlydrv$i1", Signal, "ULN%d-%d RLY%d-1", + $wh8+1, 11+$in8, + $i1); + o("vrly$wh8", Power, "RLY%d-16", $i1); + o("boosta", Power, "RLY%d-4", $i1); + o("boostb", Power, "RLY%d-13", $i1); + o("trackc", Power, "RLY%d-6 RLY%d-9 XC%d-1", $i1, $i1, $i1); + o("befsenx", Power, "RLY%d-8 RLY%d-11 BR%d-4 OC%d-%d", + $i1, $i1, $i1, $wh4+1,$in4*2+2); + o("afsenx", Power, "BR%d-2 XX%d-1 RS%d-2", + $i1, $i1, $i1); + -- 2.30.2