Read performance improvements
[SCSI2SD-V6.git] / software / SCSI2SD / SCSI2SD.cydsn / loopback.c
index b57b4a9..b64405a 100755 (executable)
 #include "loopback.h"\r
 #include "scsi.h"\r
 #include "device.h"\r
+#include "scsiPhy.h"\r
 \r
 // Return true if all inputs are un-asserted (1)\r
 // Note that CyPins returns non-zero if pin is active. It does NOT\r
 // necessarily return 1.\r
 static int test_initial_inputs(void)\r
 {\r
-       uint8 dbx = SCSI_In_DBx_Read();\r
+       uint8 dbx = scsiReadDBxPins();\r
        int result =\r
                (dbx == 0xFF) &&\r
                CyPins_ReadPin(SCSI_In_DBP) &&\r
@@ -41,6 +42,7 @@ static int test_initial_inputs(void)
        return result;\r
 }\r
 \r
+/* Not currently possible to write directly to the output pins\r
 static int test_data_lines(void)\r
 {\r
        int result = 1;\r
@@ -58,6 +60,7 @@ static int test_data_lines(void)
        SCSI_Out_DBx_Write(0);\r
        return result;\r
 }\r
+*/\r
 \r
 static int test_data_10MHz(void)\r
 {\r
@@ -69,11 +72,12 @@ static int test_data_10MHz(void)
        int i;\r
        for (i = 0; i < 100; ++i)\r
        {\r
+               uint8 dbx;\r
                // We write using Active High\r
                SCSI_Out_DBx_Write(0xFF);\r
                CyDelayCycles(3);\r
                // And expect an Active Low response.\r
-               uint8 dbx = SCSI_In_DBx_Read();\r
+               dbx = SCSI_In_DBx_Read();\r
                result = result && (dbx == 0);\r
                \r
                // We write using Active High\r
@@ -132,7 +136,7 @@ static void test_success(void)
 void scsi2sd_test_loopback(void)\r
 {\r
        if (!test_initial_inputs() ||\r
-               !test_data_lines() ||\r
+               //!test_data_lines() ||\r
                !test_data_10MHz() ||\r
                !test_ATN_interrupt())\r
        {\r
@@ -142,4 +146,4 @@ void scsi2sd_test_loopback(void)
        {\r
                test_success();\r
        }\r
-}
\ No newline at end of file
+}\r