Index: funcmap/attiny24.bs =================================================================== --- funcmap/attiny24.bs (revision 9254) +++ funcmap/attiny24.bs (nonexistent) @@ -1,81 +0,0 @@ -refdes U?? - -pinalign left center -pinalign right center -attr device attiny24 -text_size_mult 0.7 - -shape box - -begin pin Vcc - num 1 - loc left -end pin - -begin pin PB0 - num 2 - loc left -end pin - -begin pin PB1 - num 3 - loc left -end pin - -begin pin PB3 - num 4 - loc left -end pin - -begin pin PB2 - num 5 - loc left -end pin - -begin pin PB7 - num 6 - loc left -end pin - -begin pin PB6 - num 7 - loc left -end pin - - - -begin pin GND - num 14 - loc right -end pin - -begin pin PA0 - num 13 - loc right -end pin - -begin pin PA1 - num 12 - loc right -end pin - -begin pin PA2 - num 11 - loc right -end pin - -begin pin PA3 - num 10 - loc right -end pin - -begin pin PA4 - num 9 - loc right -end pin - -begin pin PA5 - num 8 - loc right -end pin - Index: funcmap/attiny24.ry =================================================================== --- funcmap/attiny24.ry (revision 9254) +++ funcmap/attiny24.ry (nonexistent) @@ -1,227 +0,0 @@ -ha:cschem-group-v1 { - ha:group.1 { - uuid=RSuLolzje3jfCK4oCZ8AAAAP; - li:objects { - ha:text.1 { x1=-8000; y1=-4000; rot=0; stroke=sym-primary; dyntext=1; floater=1; text={%../A.name%}; } - ha:polygon.2 { - li:outline { - ha:line { x1=0; y1=0; x2=0; y2=32000; stroke=sym-decor; } - ha:line { x1=0; y1=32000; x2=16000; y2=32000; stroke=sym-decor; } - ha:line { x1=16000; y1=32000; x2=16000; y2=0; stroke=sym-decor; } - ha:line { x1=16000; y1=0; x2=0; y2=0; stroke=sym-decor; } - } - stroke=sym-decor - } - ha:group.3 { - uuid=RSuLolzje3jfCK4oCZ8AAAAB; - x=0; y=28000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=1; - name=Vcc; - } - } - ha:group.4 { - uuid=RSuLolzje3jfCK4oCZ8AAAAC; - x=0; y=24000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=2; - name=PB0; - } - } - ha:group.5 { - uuid=RSuLolzje3jfCK4oCZ8AAAAD; - x=0; y=20000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=3; - name=PB1; - } - } - ha:group.6 { - uuid=RSuLolzje3jfCK4oCZ8AAAAE; - x=0; y=16000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=4; - name=PB3; - } - } - ha:group.7 { - uuid=RSuLolzje3jfCK4oCZ8AAAAF; - x=0; y=12000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=5; - name=PB2; - } - } - ha:group.8 { - uuid=RSuLolzje3jfCK4oCZ8AAAAG; - x=0; y=8000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=6; - name=PB7; - } - } - ha:group.9 { - uuid=RSuLolzje3jfCK4oCZ8AAAAH; - x=0; y=4000; - rot=0; mirx=1; miry=0; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=7; - name=PB6; - } - } - ha:group.10 { - uuid=RSuLolzje3jfCK4oCZ8AAAAI; - x=16000; y=28000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=14; - name=GND; - } - } - ha:group.11 { - uuid=RSuLolzje3jfCK4oCZ8AAAAJ; - x=16000; y=24000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=13; - name=PA0; - } - } - ha:group.12 { - uuid=RSuLolzje3jfCK4oCZ8AAAAK; - x=16000; y=20000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=12; - name=PA1; - } - } - ha:group.13 { - uuid=RSuLolzje3jfCK4oCZ8AAAAL; - x=16000; y=16000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=11; - name=PA2; - } - } - ha:group.14 { - uuid=RSuLolzje3jfCK4oCZ8AAAAM; - x=16000; y=12000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=10; - name=PA3; - } - } - ha:group.15 { - uuid=RSuLolzje3jfCK4oCZ8AAAAN; - x=16000; y=8000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=9; - name=PA4; - } - } - ha:group.16 { - uuid=RSuLolzje3jfCK4oCZ8AAAAO; - x=16000; y=4000; - li:objects { - ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } - ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } - ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } - } - ha:attrib { - role=terminal; - pinnum=8; - name=PA5; - } - } - ha:text.17 { x1=-8000; y1=-8000; rot=0; stroke=sym-secondary; dyntext=1; floater=1; text={%../A.device%}; } - } - ha:attrib { - role=symbol; - name={U?}; - -symbol-generator=boxsym-rnd; - device=attiny24; - } - } -} Index: funcmap/attiny24.funcmap =================================================================== --- funcmap/attiny24.funcmap (revision 9254) +++ funcmap/attiny24.funcmap (nonexistent) @@ -1,71 +0,0 @@ -ha:funcmap.v1 { - ha:comp_attribs { - li:funcmap/ports { - { PB0/PCINT8 -> sigtype=digital; dir=input } - { PB0/XTAL1 -> sigtype=analog; } - - { PB1/PCINT9 -> sigtype=digital; dir=input } - { PB1/XTAL2 -> sigtype=analog; } - - { PB3/PCINT11 -> sigtype=digital; dir=input } - { PB3/RESET -> sigtype=digital; dir=input } - - { PB2/PCINT10 -> sigtype=digital; dir=input } - { PB2/OC0A -> sigtype=digital; dir=output } - { PB2/INT0 -> sigtype=digital; dir=input } - - { PB7/PCINT7 -> sigtype=digital; dir=input } - { PB7/OC0B -> sigtype=digital; dir=output } - { PB7/ADC7 -> sigtype=digital; dir=input } - - { PB6/PCINT6 -> sigtype=digital; dir=input } - { PB6/MOSI -> sigtype=digital; } - { PB6/DI -> sigtype=digital; dir=input } - { PB6/SDA -> sigtype=digital; } - { PB6/OC1A -> sigtype=digital; dir=output } - { PB6/ADC6 -> sigtype=analog; dir=input } - - { PA0/PCINT0 -> sigtype=digital; dir=input } - { PA0/AREF -> sigtype=analog; dir=input } - { PA0/ADC0 -> sigtype=analog; dir=input } - - { PA0/PCINT1 -> sigtype=digital; dir=input } - { PA0/AIN0 -> sigtype=analog; dir=input } - { PA0/ADC1 -> sigtype=analog; dir=input } - - { PA2/PCINT2 -> sigtype=digital; dir=input } - { PA2/AIN1 -> sigtype=analog; dir=input } - { PA2/ADC2 -> sigtype=analog; dir=input } - - { PA3/PCINT3 -> sigtype=digital; dir=input } - { PA3/ADC3 -> sigtype=analog; dir=input } - - { PA4/PCINT4 -> sigtype=digital; dir=input } - { PA4/SCK -> sigtype=digital; } - { PA4/SCL -> sigtype=digital; } - { PA4/ADC4 -> sigtype=analog; dir=input } - - { PA5/PCINT5 -> sigtype=digital; dir=input } - { PA5/MISO -> sigtype=digital; } - { PA5/DO -> sigtype=digital; dir=output } - { PA5/OC1B -> sigtype=digital; dir=output } - { PA5/ADC5 -> sigtype=analog; dir=input } - } - - # coloring - li:funcmap/weak_groups { - { pcint -> PCINT8, PCINT9, PCINT11, PCINT10, PCINT7, PCINT6, PCINT0, PCINT1, PCINT2, PCINT3, PCINT4, PCINT5 } - { xtal -> XTAL1, XTAL2 } - { PWM -> OC0A, OC0B, OC1A, OC1B } - { adc -> AREF, ADC0, ADC1, ADC2, ADC3, ADC4, ADC5, ADC6, ADC7 } - { comparator -> AIN0, AIN1 } - } - - # have to be selected all at once - li:funcmap/strong_groups { - { SPI -> SCK, MISO, MOSI } - { I2C -> SDA, SCL } - { USI -> SCK, DI, DO } - } - } -} Index: funcmap/funcmap/attiny24.funcmap =================================================================== --- funcmap/funcmap/attiny24.funcmap (nonexistent) +++ funcmap/funcmap/attiny24.funcmap (revision 9255) @@ -0,0 +1,71 @@ +ha:funcmap.v1 { + ha:comp_attribs { + li:funcmap/ports { + { PB0/PCINT8 -> sigtype=digital; dir=input } + { PB0/XTAL1 -> sigtype=analog; } + + { PB1/PCINT9 -> sigtype=digital; dir=input } + { PB1/XTAL2 -> sigtype=analog; } + + { PB3/PCINT11 -> sigtype=digital; dir=input } + { PB3/RESET -> sigtype=digital; dir=input } + + { PB2/PCINT10 -> sigtype=digital; dir=input } + { PB2/OC0A -> sigtype=digital; dir=output } + { PB2/INT0 -> sigtype=digital; dir=input } + + { PB7/PCINT7 -> sigtype=digital; dir=input } + { PB7/OC0B -> sigtype=digital; dir=output } + { PB7/ADC7 -> sigtype=digital; dir=input } + + { PB6/PCINT6 -> sigtype=digital; dir=input } + { PB6/MOSI -> sigtype=digital; } + { PB6/DI -> sigtype=digital; dir=input } + { PB6/SDA -> sigtype=digital; } + { PB6/OC1A -> sigtype=digital; dir=output } + { PB6/ADC6 -> sigtype=analog; dir=input } + + { PA0/PCINT0 -> sigtype=digital; dir=input } + { PA0/AREF -> sigtype=analog; dir=input } + { PA0/ADC0 -> sigtype=analog; dir=input } + + { PA0/PCINT1 -> sigtype=digital; dir=input } + { PA0/AIN0 -> sigtype=analog; dir=input } + { PA0/ADC1 -> sigtype=analog; dir=input } + + { PA2/PCINT2 -> sigtype=digital; dir=input } + { PA2/AIN1 -> sigtype=analog; dir=input } + { PA2/ADC2 -> sigtype=analog; dir=input } + + { PA3/PCINT3 -> sigtype=digital; dir=input } + { PA3/ADC3 -> sigtype=analog; dir=input } + + { PA4/PCINT4 -> sigtype=digital; dir=input } + { PA4/SCK -> sigtype=digital; } + { PA4/SCL -> sigtype=digital; } + { PA4/ADC4 -> sigtype=analog; dir=input } + + { PA5/PCINT5 -> sigtype=digital; dir=input } + { PA5/MISO -> sigtype=digital; } + { PA5/DO -> sigtype=digital; dir=output } + { PA5/OC1B -> sigtype=digital; dir=output } + { PA5/ADC5 -> sigtype=analog; dir=input } + } + + # coloring + li:funcmap/weak_groups { + { pcint -> PCINT8, PCINT9, PCINT11, PCINT10, PCINT7, PCINT6, PCINT0, PCINT1, PCINT2, PCINT3, PCINT4, PCINT5 } + { xtal -> XTAL1, XTAL2 } + { PWM -> OC0A, OC0B, OC1A, OC1B } + { adc -> AREF, ADC0, ADC1, ADC2, ADC3, ADC4, ADC5, ADC6, ADC7 } + { comparator -> AIN0, AIN1 } + } + + # have to be selected all at once + li:funcmap/strong_groups { + { SPI -> SCK, MISO, MOSI } + { I2C -> SDA, SCL } + { USI -> SCK, DI, DO } + } + } +} Index: funcmap/symbol/attiny24.bs =================================================================== --- funcmap/symbol/attiny24.bs (nonexistent) +++ funcmap/symbol/attiny24.bs (revision 9255) @@ -0,0 +1,81 @@ +refdes U?? + +pinalign left center +pinalign right center +attr device attiny24 +text_size_mult 0.7 + +shape box + +begin pin Vcc + num 1 + loc left +end pin + +begin pin PB0 + num 2 + loc left +end pin + +begin pin PB1 + num 3 + loc left +end pin + +begin pin PB3 + num 4 + loc left +end pin + +begin pin PB2 + num 5 + loc left +end pin + +begin pin PB7 + num 6 + loc left +end pin + +begin pin PB6 + num 7 + loc left +end pin + + + +begin pin GND + num 14 + loc right +end pin + +begin pin PA0 + num 13 + loc right +end pin + +begin pin PA1 + num 12 + loc right +end pin + +begin pin PA2 + num 11 + loc right +end pin + +begin pin PA3 + num 10 + loc right +end pin + +begin pin PA4 + num 9 + loc right +end pin + +begin pin PA5 + num 8 + loc right +end pin + Index: funcmap/symbol/attiny24.ry =================================================================== --- funcmap/symbol/attiny24.ry (nonexistent) +++ funcmap/symbol/attiny24.ry (revision 9255) @@ -0,0 +1,227 @@ +ha:cschem-group-v1 { + ha:group.1 { + uuid=RSuLolzje3jfCK4oCZ8AAAAP; + li:objects { + ha:text.1 { x1=-8000; y1=-4000; rot=0; stroke=sym-primary; dyntext=1; floater=1; text={%../A.name%}; } + ha:polygon.2 { + li:outline { + ha:line { x1=0; y1=0; x2=0; y2=32000; stroke=sym-decor; } + ha:line { x1=0; y1=32000; x2=16000; y2=32000; stroke=sym-decor; } + ha:line { x1=16000; y1=32000; x2=16000; y2=0; stroke=sym-decor; } + ha:line { x1=16000; y1=0; x2=0; y2=0; stroke=sym-decor; } + } + stroke=sym-decor + } + ha:group.3 { + uuid=RSuLolzje3jfCK4oCZ8AAAAB; + x=0; y=28000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=1; + name=Vcc; + } + } + ha:group.4 { + uuid=RSuLolzje3jfCK4oCZ8AAAAC; + x=0; y=24000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=2; + name=PB0; + } + } + ha:group.5 { + uuid=RSuLolzje3jfCK4oCZ8AAAAD; + x=0; y=20000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=3; + name=PB1; + } + } + ha:group.6 { + uuid=RSuLolzje3jfCK4oCZ8AAAAE; + x=0; y=16000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=4; + name=PB3; + } + } + ha:group.7 { + uuid=RSuLolzje3jfCK4oCZ8AAAAF; + x=0; y=12000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=5; + name=PB2; + } + } + ha:group.8 { + uuid=RSuLolzje3jfCK4oCZ8AAAAG; + x=0; y=8000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=6; + name=PB7; + } + } + ha:group.9 { + uuid=RSuLolzje3jfCK4oCZ8AAAAH; + x=0; y=4000; + rot=0; mirx=1; miry=0; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=7; + name=PB6; + } + } + ha:group.10 { + uuid=RSuLolzje3jfCK4oCZ8AAAAI; + x=16000; y=28000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=14; + name=GND; + } + } + ha:group.11 { + uuid=RSuLolzje3jfCK4oCZ8AAAAJ; + x=16000; y=24000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=13; + name=PA0; + } + } + ha:group.12 { + uuid=RSuLolzje3jfCK4oCZ8AAAAK; + x=16000; y=20000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=12; + name=PA1; + } + } + ha:group.13 { + uuid=RSuLolzje3jfCK4oCZ8AAAAL; + x=16000; y=16000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=11; + name=PA2; + } + } + ha:group.14 { + uuid=RSuLolzje3jfCK4oCZ8AAAAM; + x=16000; y=12000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=10; + name=PA3; + } + } + ha:group.15 { + uuid=RSuLolzje3jfCK4oCZ8AAAAN; + x=16000; y=8000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=9; + name=PA4; + } + } + ha:group.16 { + uuid=RSuLolzje3jfCK4oCZ8AAAAO; + x=16000; y=4000; + li:objects { + ha:line.1 { x1=0; y1=0; x2=4000; y2=0; stroke=term-decor; } + ha:text.2 { x1=1000; y1=0; rot=0; stroke=term-primary; dyntext=1; text={%../a.display/name%}; } + ha:text.3 { x1=-500; y1=-2000; rot=0; mirx=1term-secondary; stroke=term-secondary; dyntext=1; text={%../A.name%}; } + } + ha:attrib { + role=terminal; + pinnum=8; + name=PA5; + } + } + ha:text.17 { x1=-8000; y1=-8000; rot=0; stroke=sym-secondary; dyntext=1; floater=1; text={%../A.device%}; } + } + ha:attrib { + role=symbol; + name={U?}; + -symbol-generator=boxsym-rnd; + device=attiny24; + } + } +}