Improved async noise model that considers all 9 dbx signals. v6.2.3-beta
authorMichael McMaster <michael@codesrc.com>
Wed, 24 Apr 2019 11:53:16 +0000 (21:53 +1000)
committerMichael McMaster <michael@codesrc.com>
Wed, 24 Apr 2019 11:53:16 +0000 (21:53 +1000)
CHANGELOG
rtl/fpga_bitmap.o
src/firmware/config.c
src/firmware/scsiPhy.c

index 04f6656..a98974e 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 2019XXXX
        - Port XEBEC support from v5 firmware
        - Add Flexible Disk Drive Geometry SCSI MODE page
 2019XXXX
        - Port XEBEC support from v5 firmware
        - Add Flexible Disk Drive Geometry SCSI MODE page
+       - Stability improvements
 
 20181011               6.2.1
        - Fix bug in USB disk interface with disks over 4GB
 
 20181011               6.2.1
        - Fix bug in USB disk interface with disks over 4GB
index cb1310f..48d78e9 100644 (file)
Binary files a/rtl/fpga_bitmap.o and b/rtl/fpga_bitmap.o differ
index ead6f28..503833a 100755 (executable)
@@ -37,7 +37,7 @@
 \r
 #include <string.h>\r
 \r
 \r
 #include <string.h>\r
 \r
-static const uint16_t FIRMWARE_VERSION = 0x0621;\r
+static const uint16_t FIRMWARE_VERSION = 0x0623;\r
 \r
 // 1 flash row\r
 static const uint8_t DEFAULT_CONFIG[128] =\r
 \r
 // 1 flash row\r
 static const uint8_t DEFAULT_CONFIG[128] =\r
@@ -219,7 +219,7 @@ debugCommand()
        response[27] = scsiDev.lastSenseASC >> 8;\r
        response[28] = scsiDev.lastSenseASC;\r
        response[29] = *SCSI_STS_DBX & 0xff; // What we've read\r
        response[27] = scsiDev.lastSenseASC >> 8;\r
        response[28] = scsiDev.lastSenseASC;\r
        response[29] = *SCSI_STS_DBX & 0xff; // What we've read\r
-       response[30] = 0; // obsolete\r
+       response[30] = *SCSI_STS_SELECTED;\r
        response[31] = *SCSI_STS_DBX >> 8; // What we're writing\r
        hidPacket_send(response, sizeof(response));\r
 }\r
        response[31] = *SCSI_STS_DBX >> 8; // What we're writing\r
        hidPacket_send(response, sizeof(response));\r
 }\r
index 48bf535..c00b8d5 100755 (executable)
@@ -30,8 +30,8 @@
 static uint8_t asyncTimings[][4] =\r
 {\r
 /* Speed,    Assert,    Deskew,    Hold,    Glitch */\r
 static uint8_t asyncTimings[][4] =\r
 {\r
 /* Speed,    Assert,    Deskew,    Hold,    Glitch */\r
-{/*1.5MB/s*/ 28,        18,        13,      15},\r
-{/*3.3MB/s*/ 13,        6,         6,       13},\r
+{/*1.5MB/s*/ 28,        18,        13,      6},\r
+{/*3.3MB/s*/ 13,        6,         6,       6},\r
 {/*5MB/s*/   9,         6,         6,       6}, // 80ns\r
 {/*safe*/    3,         6,         6,       6}, // Probably safe\r
 {/*turbo*/   3,         3,         3,       2}\r
 {/*5MB/s*/   9,         6,         6,       6}, // 80ns\r
 {/*safe*/    3,         6,         6,       6}, // Probably safe\r
 {/*turbo*/   3,         3,         3,       2}\r
@@ -576,6 +576,7 @@ void scsiEnterPhase(int newPhase)
 \r
                        if (scsiDev.compatMode < COMPAT_SCSI2)\r
                        {\r
 \r
                        if (scsiDev.compatMode < COMPAT_SCSI2)\r
                        {\r
+                               // EMU EMAX needs 100uS ! 10uS is not enough.\r
                                s2s_delay_us(100);\r
                        }\r
                }\r
                                s2s_delay_us(100);\r
                        }\r
                }\r