fixed heinous bug in switchbox routing
[slipway.git] / src / edu / berkeley / slipway / FtdiBoardSlave.c
index b5dd1a3..920e46b 100644 (file)
@@ -127,7 +127,7 @@ inline void conf(int z, int y, int x, int d) {
 \r
 ISR(SIG_FPGA_INTERRUPT15) { \r
   interrupt_count++;\r
-  fpga_interrupts(1);\r
+  //fpga_interrupts(1);\r
   sei();\r
 }\r
 \r
@@ -153,9 +153,8 @@ inline int hex(char c) {
 }\r
 \r
 int readFPGA() {\r
-  fpga_interrupts(0);\r
   int ret = FISUA;\r
-  fpga_interrupts(1);\r
+  //fpga_interrupts(1);\r
   return ret;\r
 }\r
 \r
@@ -177,6 +176,7 @@ int main() {
   cts(1);\r
 \r
   int x=0, y=0, z=0;\r
+  int flag=0;\r
   for(;;) {\r
     int i, d=0;\r
     int r = recv();\r
@@ -187,7 +187,8 @@ int main() {
         send('I');\r
         send('T');\r
         send('S');\r
-        PORTE |=  (1<<3);\r
+        fpga_interrupts(0);\r
+        if (flag) {PORTE |=  (1<<5);}\r
         break;\r
 \r
       case 1:\r
@@ -199,9 +200,10 @@ int main() {
         break;\r
 \r
       case 2:\r
+        flag=1;\r
         send(readFPGA());\r
         break;\r
-\r
+        /*\r
       case 3: {\r
         int32_t local_interrupt_count = interrupt_count;\r
         interrupt_count = 0;\r
@@ -211,7 +213,7 @@ int main() {
         send((local_interrupt_count >>  0) & 0xff);\r
         break;\r
       }\r
-\r
+        */\r
         /*\r
       case 3:\r
         //init_timer();\r