from collections import defaultdict
from skidl import Pin, Part, Alias, SchLib, SKIDL, TEMPLATE

from skidl.pin import pin_types

SKIDL_lib_version = '0.0.1'

CPU_NXP_6800 = SchLib(tool=SKIDL).add_parts(*[
        Part(**{ 'name':'MC6800', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC6800'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68A00L.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC6800\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='Phi1',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='36',name='DBE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='Phi2',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC6802', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC6802'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'https://www.jameco.com/Jameco/Products/ProdDS/43502.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC6802\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PASSIVE,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='MR',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='VCC_STANDBY',func=pin_types.PWRIN,unit=1),
            Pin(num='36',name='RE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='38',name='XTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='39',name='EXTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC6809', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC6809'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC6809\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='~{DMA/BREQ}',func=pin_types.INPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.OUTPUT,unit=1),
            Pin(num='36',name='MRDY',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='EXTAL',func=pin_types.INPUT,unit=1),
            Pin(num='39',name='XTAL',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC6809E', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC6809E'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC6809E\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='BUSY',func=pin_types.OUTPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.INPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.INPUT,unit=1),
            Pin(num='36',name='AVMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='LIC',func=pin_types.OUTPUT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.OUTPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68A00', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68A00'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68A00L.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68A00\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='Phi1',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='36',name='DBE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='Phi2',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68A02', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68A02'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'https://www.jameco.com/Jameco/Products/ProdDS/43502.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68A02\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PASSIVE,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='MR',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='VCC_STANDBY',func=pin_types.PWRIN,unit=1),
            Pin(num='36',name='RE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='38',name='XTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='39',name='EXTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68A09', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68A09'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68A09\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='~{DMA/BREQ}',func=pin_types.INPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.OUTPUT,unit=1),
            Pin(num='36',name='MRDY',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='EXTAL',func=pin_types.INPUT,unit=1),
            Pin(num='39',name='XTAL',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68A09E', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68A09E'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68A09E\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='BUSY',func=pin_types.OUTPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.INPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.INPUT,unit=1),
            Pin(num='36',name='AVMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='LIC',func=pin_types.OUTPUT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.OUTPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68B00', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68B00'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68A00L.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68B00\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='Phi1',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='36',name='DBE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='Phi2',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='N.C.',func=pin_types.NOCONNECT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68B02', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68B02'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'https://www.jameco.com/Jameco/Products/ProdDS/43502.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68B02\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PASSIVE,unit=1),
            Pin(num='10',name='A1',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='22',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='25',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='26',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='MR',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='33',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='34',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='VCC_STANDBY',func=pin_types.PWRIN,unit=1),
            Pin(num='36',name='RE',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='38',name='XTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='39',name='EXTAL',func=pin_types.PASSIVE,unit=1),
            Pin(num='4',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='VMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='7',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='8',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='9',name='A0',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68B09', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68B09'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68B09\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='~{DMA/BREQ}',func=pin_types.INPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.OUTPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.OUTPUT,unit=1),
            Pin(num='36',name='MRDY',func=pin_types.INPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='EXTAL',func=pin_types.INPUT,unit=1),
            Pin(num='39',name='XTAL',func=pin_types.INPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] }),
        Part(**{ 'name':'MC68B09E', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'MC68B09E'}), 'ref_prefix':'U', 'fplist':['Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm', 'Package_DIP:DIP-40_W15.24mm'], 'footprint':'Package_DIP:DIP-40_W15.24mm', 'keywords':'MCU', 'description':'', 'datasheet':'http://pdf.datasheetcatalog.com/datasheet/motorola/MC68B09S.pdf', 'search_text':'/usr/share/kicad/symbols/CPU_NXP_6800.kicad_sym\nMC68B09E\n\nMCU', 'pins':[
            Pin(num='1',name='VSS',func=pin_types.PWRIN,unit=1),
            Pin(num='10',name='A2',func=pin_types.OUTPUT,unit=1),
            Pin(num='11',name='A3',func=pin_types.OUTPUT,unit=1),
            Pin(num='12',name='A4',func=pin_types.OUTPUT,unit=1),
            Pin(num='13',name='A5',func=pin_types.OUTPUT,unit=1),
            Pin(num='14',name='A6',func=pin_types.OUTPUT,unit=1),
            Pin(num='15',name='A7',func=pin_types.OUTPUT,unit=1),
            Pin(num='16',name='A8',func=pin_types.OUTPUT,unit=1),
            Pin(num='17',name='A9',func=pin_types.OUTPUT,unit=1),
            Pin(num='18',name='A10',func=pin_types.OUTPUT,unit=1),
            Pin(num='19',name='A11',func=pin_types.OUTPUT,unit=1),
            Pin(num='2',name='~{NMI}',func=pin_types.INPUT,unit=1),
            Pin(num='20',name='A12',func=pin_types.OUTPUT,unit=1),
            Pin(num='21',name='A13',func=pin_types.OUTPUT,unit=1),
            Pin(num='22',name='A14',func=pin_types.OUTPUT,unit=1),
            Pin(num='23',name='A15',func=pin_types.OUTPUT,unit=1),
            Pin(num='24',name='D7',func=pin_types.BIDIR,unit=1),
            Pin(num='25',name='D6',func=pin_types.BIDIR,unit=1),
            Pin(num='26',name='D5',func=pin_types.BIDIR,unit=1),
            Pin(num='27',name='D4',func=pin_types.BIDIR,unit=1),
            Pin(num='28',name='D3',func=pin_types.BIDIR,unit=1),
            Pin(num='29',name='D2',func=pin_types.BIDIR,unit=1),
            Pin(num='3',name='~{IRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='30',name='D1',func=pin_types.BIDIR,unit=1),
            Pin(num='31',name='D0',func=pin_types.BIDIR,unit=1),
            Pin(num='32',name='R/~{W}',func=pin_types.OUTPUT,unit=1),
            Pin(num='33',name='BUSY',func=pin_types.OUTPUT,unit=1),
            Pin(num='34',name='E',func=pin_types.INPUT,unit=1),
            Pin(num='35',name='Q',func=pin_types.INPUT,unit=1),
            Pin(num='36',name='AVMA',func=pin_types.OUTPUT,unit=1),
            Pin(num='37',name='~{RESET}',func=pin_types.INPUT,unit=1),
            Pin(num='38',name='LIC',func=pin_types.OUTPUT,unit=1),
            Pin(num='39',name='TSC',func=pin_types.OUTPUT,unit=1),
            Pin(num='4',name='~{FIRQ}',func=pin_types.INPUT,unit=1),
            Pin(num='40',name='~{HALT}',func=pin_types.INPUT,unit=1),
            Pin(num='5',name='BS',func=pin_types.OUTPUT,unit=1),
            Pin(num='6',name='BA',func=pin_types.OUTPUT,unit=1),
            Pin(num='7',name='VCC',func=pin_types.PWRIN,unit=1),
            Pin(num='8',name='A0',func=pin_types.OUTPUT,unit=1),
            Pin(num='9',name='A1',func=pin_types.OUTPUT,unit=1)], 'unit_defs':[] })])