From eb1e00ff18078e997dbb84f9a4ed08052a57face Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 5 Mar 2007 17:08:51 +0000 Subject: - Removed lots of cruft and various attempts at fixing things. - Removed timer2 interrupt code because it was interfering with the hardware PWM on some pins. Replaced it with timer0_overflow_count from wiring.c but that's not fully functional yet, I think I have to get the time units right. Right now it seems to just output everytime rather than every 4ms - removed second [arduino] object in arduino-test.pd that was causing lost serial data. WORKING - analog input working - hardware PWM output working - digital output working - setPinMode to INPUT/OUTPUT for digital pins working NOT WORKING YET - digital inputs - software PWM on non-hardware-PWM pins - save state to EEPROM svn path=/trunk/externals/hardware/arduino/; revision=7468 --- arduino-test.pd | 450 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 246 insertions(+), 204 deletions(-) (limited to 'arduino-test.pd') diff --git a/arduino-test.pd b/arduino-test.pd index b2fe913..e8638c9 100644 --- a/arduino-test.pd +++ b/arduino-test.pd @@ -1,8 +1,8 @@ -#N canvas 216 76 703 544 10; +#N canvas 206 22 667 540 10; #X obj 512 7 import hardware mapping; #X obj 323 136 cnv 15 100 22 empty empty empty 20 12 0 14 -253938 -66577 0; -#X obj 73 165 cnv 15 70 22 empty empty empty 20 12 0 14 -253938 -66577 +#X obj 33 165 cnv 15 70 22 empty empty empty 20 12 0 14 -253938 -66577 0; #X obj 155 190 cnv 15 60 22 empty empty empty 20 12 0 14 -253938 -66577 0; @@ -36,16 +36,14 @@ #X coords 0 -1 1 1 136 17 1 60 60; #X restore 161 169 pd serin; #X text 158 151 serial port #; -#X text 418 514 released under the GNU GPL; -#X text 2 514 (C) Copyright 2006 Hans-Christoph Steiner -; +#X text 420 513 released under the GNU GPL; #X msg 221 192 close; -#X obj 581 328 tgl 15 0 empty empty changes 0 -6 0 8 -262144 -1 -1 +#X obj 532 330 tgl 15 0 empty empty changes 0 -6 0 8 -262144 -1 -1 0 1; -#X obj 520 328 tgl 15 0 empty empty all 0 -6 0 8 -262144 -1 -1 0 1 +#X obj 479 330 tgl 15 0 empty empty all 0 -6 0 8 -262144 -1 -1 0 1 ; -#X obj 138 119 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 --6 1 10 -225271 -1 -1 8800 0; +#X obj 98 119 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 -6 +1 10 -225271 -1 -1 0 0; #X obj 277 332 tgl 15 1 empty empty empty 0 -6 0 8 -225271 -1 -1 0 1; #X text 454 156 how many analogIns to enable:; @@ -53,85 +51,102 @@ 1; #X text 478 216 enable/disable digitalIns; #X msg 455 235 digitalIns \$1; -#X msg 455 193 analogIns 0; -#N canvas 162 133 570 420 serin 0; -#X obj 165 61 cnv 15 15 15 empty \$0-analog-number-canvas 0 4 8 0 14 --233017 -1 0; -#X obj 60 61 hradio 15 1 1 7 empty empty empty 0 -6 0 8 -225280 -1 --1 0; -#X obj 60 13 inlet; -#X msg 200 202 label \$1; -#X obj 200 180 makefilename %d; -#X obj 59 108 int; -#X obj 200 225 send \$0-analog-number-canvas; +#X msg 455 193 analogIns 1 0; +#N canvas 162 133 610 460 serin 0; #X obj 59 337 outlet; -#X msg 60 210 analogIns \$1; -#X msg 201 306 set \$1 \$2; #X obj 59 266 trigger bang anything; #X obj 201 286 list; -#X connect 1 0 5 0; -#X connect 2 0 1 0; -#X connect 3 0 6 0; -#X connect 4 0 3 0; -#X connect 5 0 4 0; -#X connect 5 0 8 0; -#X connect 8 0 10 0; -#X connect 9 0 7 0; -#X connect 10 0 7 0; -#X connect 10 1 11 0; -#X connect 11 0 9 0; -#X coords 0 -1 1 1 121 17 1 60 60; +#X obj 60 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 0 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 75 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 1 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 90 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 2 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 105 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 3 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 120 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 4 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 135 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 5 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 150 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 6 5 9 +1 12 -262130 -1 -1 0 1; +#X obj 165 61 tgl 15 0 junk_to_hide_inlet junk_to_hide_outlet 7 5 9 +1 12 -262130 -1 -1 0 1; +#X msg 59 210 analogIns \$1 \$2; +#X msg 35 106 0 \$1; +#X msg 70 106 1 \$1; +#X msg 105 106 2 \$1; +#X msg 140 106 3 \$1; +#X msg 175 106 4 \$1; +#X msg 210 106 5 \$1; +#X msg 245 106 6 \$1; +#X msg 280 106 7 \$1; +#X msg 202 307 set \$1 \$2 \$3; +#X connect 1 0 0 0; +#X connect 1 1 2 0; +#X connect 2 0 20 0; +#X connect 3 0 12 0; +#X connect 4 0 13 0; +#X connect 5 0 14 0; +#X connect 6 0 15 0; +#X connect 7 0 16 0; +#X connect 8 0 17 0; +#X connect 9 0 18 0; +#X connect 10 0 19 0; +#X connect 11 0 1 0; +#X connect 12 0 11 0; +#X connect 13 0 11 0; +#X connect 14 0 11 0; +#X connect 15 0 11 0; +#X connect 16 0 11 0; +#X connect 17 0 11 0; +#X connect 18 0 11 0; +#X connect 19 0 11 0; +#X connect 20 0 0 0; +#X coords 0 -1 1 1 120 16 1 60 60; #X restore 455 173 pd serin; -#N canvas 77 268 478 328 debugging 0; +#N canvas 77 268 486 336 debugging 0; #X obj 136 31 inlet; #X obj 324 29 inlet; #X obj 27 31 inlet; -#X obj 162 81 spigot; -#X obj 159 106 select 255; -#X obj 184 246 print; -#X obj 184 227 list; -#X obj 43 115 spigot; -#X obj 210 201 bang; -#X obj 181 138 mapping/tolist; -#X obj 208 181 change; -#X obj 208 159 list-abs/list-len; -#X obj 43 136 print DEBUG; -#N canvas 146 22 466 316 DEBUG 0; -#X msg 142 19 open 1; -#X msg 200 20 close; -#X msg 52 82 pinMode 13 1; -#X msg 15 137 digital 13 \$1; -#X obj 15 119 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 -; -#X msg 271 93 213; -#X obj 289 123 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 -127; -#X floatatom 309 123 5 0 0 0 - - -; -#X msg 250 63 150 \, 160; -#X text 311 62 turn off input; -#X msg 284 145 229 \, \$1 \, \$1; -#X msg 318 249 64; -#X msg 304 180 229 \, 127 \, 127; -#X msg 304 210 229 \, 0 \, 0; -#X obj 193 267 arduino 1; -#X connect 0 0 14 0; -#X connect 1 0 14 0; -#X connect 2 0 14 0; -#X connect 3 0 14 0; -#X connect 4 0 3 0; -#X connect 5 0 14 1; -#X connect 6 0 10 0; -#X connect 6 0 7 0; -#X connect 8 0 14 1; -#X connect 10 0 14 1; -#X connect 11 0 14 1; -#X connect 12 0 14 1; -#X connect 13 0 14 1; -#X restore 363 269 pd DEBUG; +#X obj 212 81 spigot; +#X obj 209 106 select 255; +#X obj 234 246 print; +#X obj 234 227 list; +#X obj 93 115 spigot; +#X obj 260 201 bang; +#X obj 231 138 mapping/tolist; +#X obj 258 181 change; +#X obj 258 159 list-abs/list-len; +#X obj 93 136 print DEBUG; +#N canvas 0 22 478 328 measure 0; +#X obj 93 18 inlet; +#X obj 93 260 outlet; +#X obj 93 129 purepd/alternate; +#X obj 93 175 timer; +#X obj 186 150 bang; +#X obj 93 150 bang; +#X obj 200 20 tgl 18 0 empty empty empty 0 -6 0 10 -232576 -1 -1 0 +1; +#X obj 93 56 spigot 0; +#X obj 93 94 select 224; +#X connect 0 0 7 0; +#X connect 2 0 5 0; +#X connect 2 1 4 0; +#X connect 3 0 1 0; +#X connect 4 0 3 1; +#X connect 5 0 3 0; +#X connect 6 0 7 1; +#X connect 7 0 8 0; +#X connect 8 0 2 0; +#X coords 0 -1 1 1 85 18 1 200 20; +#X restore 19 178 pd measure; +#X floatatom 19 201 8 0 0 0 - - -; #X connect 0 0 7 1; #X connect 1 0 3 1; #X connect 2 0 7 0; #X connect 2 0 3 0; +#X connect 2 0 13 0; #X connect 3 0 4 0; #X connect 4 0 9 1; #X connect 4 1 9 0; @@ -142,7 +157,8 @@ #X connect 9 0 11 0; #X connect 10 0 8 0; #X connect 11 0 10 0; -#X restore 460 346 pd debugging stuff; +#X connect 13 0 14 0; +#X restore 427 348 pd debugging stuff; #X floatatom 22 446 5 0 0 3 a0 - -; #X floatatom 68 446 5 0 0 3 a1 - -; #X floatatom 114 446 5 0 0 3 a2 - -; @@ -150,24 +166,24 @@ #X floatatom 206 446 5 0 0 3 a4 - -; #X floatatom 252 446 5 0 0 3 a5 - -; #X text 300 311 <- argument sets port #; -#X msg 102 119 off; -#X obj 80 91 hradio 15 1 0 14 empty empty empty 0 -6 0 8 -176124 -1 --1 11; -#X text 188 77 7; -#X text 82 77 0; -#X text 229 77 10; -#X text 275 77 13; -#X text 142 77 4; -#X text 111 77 2; -#X text 156 77 5; -#X text 171 77 6; -#X text 127 77 3; -#X text 202 77 8; -#X text 219 77 9; -#X text 245 77 11; -#X text 260 77 12; -#X text 97 77 1; -#N canvas 66 58 419 499 pwm 0; +#X msg 62 119 off; +#X obj 40 91 hradio 15 1 0 14 empty empty empty 0 -6 0 8 -176124 -1 +-1 9; +#X text 148 77 7; +#X text 42 77 0; +#X text 189 77 10; +#X text 235 77 13; +#X text 102 77 4; +#X text 71 77 2; +#X text 116 77 5; +#X text 131 77 6; +#X text 87 77 3; +#X text 162 77 8; +#X text 179 77 9; +#X text 205 77 11; +#X text 220 77 12; +#X text 57 77 1; +#N canvas 66 58 423 503 pwm 0; #X obj 38 10 inlet; #X obj 131 10 inlet; #X msg 37 308 pwm \$1 \$2; @@ -207,11 +223,10 @@ #X connect 15 1 16 0; #X connect 16 0 17 0; #X connect 17 0 14 0; -#X restore 81 145 pd pwm; -#X msg 81 167 pwm 11 0.590604; +#X restore 41 145 pd pwm; +#X msg 41 167 pwm 9 0; #X msg 328 195 info; #X msg 367 195 version; -#X obj 468 422 print [arduino]_VERSION; #X obj 230 332 spigot; #X text 13 6 The [arduino] object works with the Firmata firmware for Arduino (previously known as Pduino firmware).; @@ -294,27 +309,27 @@ Arduino (previously known as Pduino firmware).; #X connect 30 1 29 0; #X restore 329 116 pd send-to-arduino----------------; #X text 328 64 turn on output mode for each pin (off=input); -#X msg 329 138 pinMode 13 0; -#N canvas 101 54 455 332 sending 0; +#X msg 329 138 pinMode 12 0; +#N canvas 101 54 463 340 sending 0; #X obj 69 158 cnv 15 100 22 empty empty empty 20 12 0 14 -253938 -66577 0; #X obj 78 244 outlet; -#X msg 78 161 digital 0 0; -#X obj 197 98 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 214 98 tgl 15 0 empty empty 8 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 231 98 tgl 15 0 empty empty 9 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 248 98 tgl 15 0 empty empty 10 0 -6 1 12 -233017 -1 -1 0 1; -#X obj 265 98 tgl 15 0 empty empty 11 0 -6 1 12 -233017 -1 -1 0 1; -#X obj 282 98 tgl 15 0 empty empty 12 0 -6 1 12 -233017 -1 -1 0 1; -#X obj 299 98 tgl 15 0 empty empty 13 0 -6 1 12 -233017 -1 -1 0 1; -#X obj 78 98 tgl 15 0 empty empty 0 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 95 98 tgl 15 0 empty empty 1 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 112 98 tgl 15 0 empty empty 2 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 129 98 tgl 15 0 empty empty 3 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 146 98 tgl 15 0 empty empty 5 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 163 98 tgl 15 0 empty empty 6 4 -6 1 12 -233017 -1 -1 0 1; -#X obj 180 98 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 0 1; -#N canvas 486 328 798 348 generate 0; +#X msg 78 161 digital 0 1; +#X obj 197 98 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 214 98 tgl 15 0 empty empty 8 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 231 98 tgl 15 0 empty empty 9 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 248 98 tgl 15 0 empty empty 10 0 -6 1 12 -233017 -1 -1 1 1; +#X obj 265 98 tgl 15 0 empty empty 11 0 -6 1 12 -233017 -1 -1 1 1; +#X obj 282 98 tgl 15 0 empty empty 12 0 -6 1 12 -233017 -1 -1 1 1; +#X obj 299 98 tgl 15 0 empty empty 13 0 -6 1 12 -233017 -1 -1 1 1; +#X obj 78 98 tgl 15 0 empty empty 0 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 95 98 tgl 15 0 empty empty 1 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 112 98 tgl 15 0 empty empty 2 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 129 98 tgl 15 0 empty empty 3 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 146 98 tgl 15 0 empty empty 5 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 163 98 tgl 15 0 empty empty 6 4 -6 1 12 -233017 -1 -1 1 1; +#X obj 180 98 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 1 1; +#N canvas 482 328 802 352 generate 0; #X obj 49 24 inlet; #X obj 89 24 inlet; #X obj 128 24 inlet; @@ -378,7 +393,7 @@ Arduino (previously known as Pduino firmware).; #X connect 30 0 29 0; #X connect 30 1 29 0; #X restore 78 122 pd generate digital out messages; -#X obj 348 73 tgl 25 0 empty empty ALL 2 12 0 12 -262144 -1 -1 0 1 +#X obj 348 73 tgl 25 0 empty empty ALL 2 12 0 12 -262144 -1 -1 1 1 ; #X obj 349 34 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 16383 ; @@ -468,104 +483,131 @@ Arduino (previously known as Pduino firmware).; #X connect 21 0 22 0; #X connect 22 0 23 0; #X restore 45 420 pd display values without pegging the CPU; -#X obj 397 402 route digital version; +#X obj 397 389 route digital version; #X obj 397 446 route 0 1 2 3 4 5 6 7 8 9 10 11 12 13; -#X obj 415 468 tgl 15 0 empty empty 1 4 23 1 12 -232448 -1 -1 0 1; -#X obj 433 468 tgl 15 0 empty empty 2 4 23 1 12 -232448 -1 -1 0 1; -#X obj 451 468 tgl 15 0 empty empty 3 4 23 1 12 -232448 -1 -1 0 1; -#X obj 469 468 tgl 15 0 empty empty 4 4 23 1 12 -232448 -1 -1 0 1; -#X obj 487 468 tgl 15 0 empty empty 5 4 23 1 12 -232448 -1 -1 0 1; -#X obj 505 468 tgl 15 0 empty empty 6 4 23 1 12 -232448 -1 -1 0 1; -#X obj 523 468 tgl 15 0 empty empty 7 4 23 1 12 -232448 -1 -1 0 1; -#X obj 541 468 tgl 15 0 empty empty 8 4 23 1 12 -232448 -1 -1 0 1; -#X obj 559 468 tgl 15 0 empty empty 9 4 23 1 12 -232448 -1 -1 0 1; -#X obj 577 468 tgl 15 0 empty empty 10 0 23 1 12 -232448 -1 -1 0 1 +#X obj 414 468 tgl 15 0 empty empty 1 4 23 1 12 -232448 -1 -1 0 1; +#X obj 431 468 tgl 15 0 empty empty 2 4 23 1 12 -232448 -1 -1 0 1; +#X obj 448 468 tgl 15 0 empty empty 3 4 23 1 12 -232448 -1 -1 0 1; +#X obj 465 468 tgl 15 0 empty empty 4 4 23 1 12 -232448 -1 -1 0 1; +#X obj 482 468 tgl 15 0 empty empty 5 4 23 1 12 -232448 -1 -1 0 1; +#X obj 499 468 tgl 15 0 empty empty 6 4 23 1 12 -232448 -1 -1 0 1; +#X obj 516 468 tgl 15 0 empty empty 7 4 23 1 12 -232448 -1 -1 0 1; +#X obj 533 468 tgl 15 0 empty empty 8 4 23 1 12 -232448 -1 -1 0 1; +#X obj 550 468 tgl 15 0 empty empty 9 4 23 1 12 -232448 -1 -1 0 1; +#X obj 567 468 tgl 15 0 empty empty 10 0 23 1 12 -232448 -1 -1 0 1 ; -#X obj 595 468 tgl 15 0 empty empty 11 0 23 1 12 -232448 -1 -1 0 1 +#X obj 584 468 tgl 15 0 empty empty 11 0 23 1 12 -232448 -1 -1 0 1 ; -#X obj 613 468 tgl 15 0 empty empty 12 0 23 1 12 -232448 -1 -1 0 1 +#X obj 601 468 tgl 15 0 empty empty 12 0 23 1 12 -232448 -1 -1 0 1 ; -#X obj 631 468 tgl 15 0 empty empty 13 0 23 1 12 -232448 -1 -1 0 1 +#X obj 618 468 tgl 15 0 empty empty 13 0 23 1 12 -232448 -1 -1 0 1 ; #X obj 397 468 tgl 15 0 empty empty 0 4 23 1 12 -232448 -1 -1 0 1; #N canvas 0 22 454 304 raw 0; #X obj 96 231 outlet; #X obj 96 63 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 10 -262144 --1 -1 2500 1; +-1 -1 0 1; #X msg 90 139 171 \, \$1 \, 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X restore 374 292 pd raw PWM; -#X connect 4 0 71 0; +#X text 2 514 (C) Copyright 2006 Free Software Foundation; +#N canvas 0 22 443 216 ver 0; +#X obj 23 7 inlet; +#X obj 250 100 cnv 15 145 17 empty \$0-version_cnv firmata_version_1.0 +4 10 0 12 -203904 -1 0; +#X obj 23 157 send \$0-version_cnv; +#X msg 23 132 label \$1; +#X obj 23 52 zexy/makesymbol firmata_version_%s.%s; +#X obj 48 103 symbol; +#X obj 38 77 loadbang; +#X msg 96 78 bang; +#X obj 23 29 route version; +#X connect 0 0 8 0; +#X connect 3 0 2 0; +#X connect 4 0 3 0; +#X connect 5 0 3 0; +#X connect 6 0 5 0; +#X connect 7 0 5 0; +#X connect 8 0 4 0; +#X coords 0 -1 1 1 145 17 1 250 100; +#X restore 74 351 pd ver; +#X obj 456 409 unpack 0 0; +#X floatatom 456 429 5 0 0 0 - - -; +#X floatatom 513 429 5 0 0 0 - - -; +#X connect 4 0 69 0; #X connect 5 0 4 0; -#X connect 9 0 71 0; -#X connect 10 0 20 2; -#X connect 11 0 20 1; -#X connect 12 0 44 1; -#X connect 13 0 49 1; -#X connect 15 0 17 0; -#X connect 17 0 71 0; -#X connect 18 0 71 0; -#X connect 19 0 18 0; -#X connect 28 0 44 1; -#X connect 29 0 44 0; -#X connect 44 0 45 0; -#X connect 45 0 71 0; -#X connect 46 0 71 0; -#X connect 47 0 71 0; -#X connect 49 0 74 0; -#X connect 51 0 65 1; -#X connect 52 0 65 2; -#X connect 53 0 65 3; -#X connect 54 0 65 4; -#X connect 55 0 65 5; -#X connect 56 0 65 6; -#X connect 57 0 65 7; -#X connect 58 0 65 8; -#X connect 59 0 65 9; -#X connect 60 0 65 10; -#X connect 61 0 65 11; -#X connect 62 0 65 12; -#X connect 63 0 65 13; -#X connect 64 0 65 0; -#X connect 65 0 67 0; -#X connect 67 0 71 0; -#X connect 68 0 71 0; -#X connect 69 0 68 0; -#X connect 71 0 49 0; -#X connect 71 1 20 0; -#X connect 74 0 75 0; -#X connect 74 1 77 0; +#X connect 8 0 69 0; +#X connect 9 0 19 2; +#X connect 10 0 19 1; +#X connect 11 0 43 1; +#X connect 12 0 47 1; +#X connect 14 0 16 0; +#X connect 16 0 69 0; +#X connect 17 0 69 0; +#X connect 18 0 17 0; +#X connect 27 0 43 1; +#X connect 28 0 43 0; +#X connect 43 0 44 0; +#X connect 44 0 69 0; +#X connect 45 0 69 0; +#X connect 46 0 69 0; +#X connect 47 0 72 0; +#X connect 49 0 63 1; +#X connect 50 0 63 2; +#X connect 51 0 63 3; +#X connect 52 0 63 4; +#X connect 53 0 63 5; +#X connect 54 0 63 6; +#X connect 55 0 63 7; +#X connect 56 0 63 8; +#X connect 57 0 63 9; +#X connect 58 0 63 10; +#X connect 59 0 63 11; +#X connect 60 0 63 12; +#X connect 61 0 63 13; +#X connect 62 0 63 0; +#X connect 63 0 65 0; +#X connect 65 0 69 0; +#X connect 66 0 69 0; +#X connect 67 0 66 0; +#X connect 69 0 47 0; +#X connect 69 0 93 0; +#X connect 69 1 19 0; +#X connect 72 0 73 0; +#X connect 72 1 75 0; +#X connect 73 0 74 0; +#X connect 73 1 74 1; +#X connect 73 2 74 2; +#X connect 73 3 74 3; +#X connect 73 4 74 4; +#X connect 73 5 74 5; +#X connect 73 6 74 6; +#X connect 73 7 74 7; +#X connect 74 0 20 0; +#X connect 74 1 21 0; +#X connect 74 2 22 0; +#X connect 74 3 23 0; +#X connect 74 4 24 0; +#X connect 74 5 25 0; +#X connect 74 6 70 0; +#X connect 74 7 71 0; #X connect 75 0 76 0; -#X connect 75 1 76 1; -#X connect 75 2 76 2; -#X connect 75 3 76 3; -#X connect 75 4 76 4; -#X connect 75 5 76 5; -#X connect 75 6 76 6; -#X connect 75 7 76 7; -#X connect 76 0 21 0; -#X connect 76 1 22 0; -#X connect 76 2 23 0; -#X connect 76 3 24 0; -#X connect 76 4 25 0; -#X connect 76 5 26 0; -#X connect 76 6 72 0; -#X connect 76 7 73 0; -#X connect 77 0 78 0; -#X connect 77 1 48 0; -#X connect 78 0 92 0; -#X connect 78 1 79 0; -#X connect 78 2 80 0; -#X connect 78 3 81 0; -#X connect 78 4 82 0; -#X connect 78 5 83 0; -#X connect 78 6 84 0; -#X connect 78 7 85 0; -#X connect 78 8 86 0; -#X connect 78 9 87 0; -#X connect 78 10 88 0; -#X connect 78 11 89 0; -#X connect 78 12 90 0; -#X connect 78 13 91 0; -#X connect 93 0 71 1; +#X connect 75 1 94 0; +#X connect 76 0 90 0; +#X connect 76 1 77 0; +#X connect 76 2 78 0; +#X connect 76 3 79 0; +#X connect 76 4 80 0; +#X connect 76 5 81 0; +#X connect 76 6 82 0; +#X connect 76 7 83 0; +#X connect 76 8 84 0; +#X connect 76 9 85 0; +#X connect 76 10 86 0; +#X connect 76 11 87 0; +#X connect 76 12 88 0; +#X connect 76 13 89 0; +#X connect 91 0 69 1; +#X connect 94 0 95 0; +#X connect 94 1 96 0; -- cgit v1.2.1