X-Git-Url: https://www.codesrc.com/gitweb/index.cgi?p=SCSI2SD.git;a=blobdiff_plain;f=software%2Finclude%2Fscsi2sd.h;h=3e8cf47f8e05d7b92e0206927040954b964b8786;hp=504fe7996c45425ebe903a6dc5102d8fe313d71c;hb=9ad7cc15d0af9c62e642fc7431ab15b3ac66113d;hpb=70257ca8677f4602359cfbb37a422222691b23bd;ds=sidebyside diff --git a/software/include/scsi2sd.h b/software/include/scsi2sd.h index 504fe79..3e8cf47 100755 --- a/software/include/scsi2sd.h +++ b/software/include/scsi2sd.h @@ -95,6 +95,12 @@ typedef enum CONFIG_FLOPPY_14MB } CONFIG_TYPE; +typedef enum +{ + CONFIG_QUIRKS_NONE, + CONFIG_QUIRKS_APPLE +} CONFIG_QUIRKS; + typedef struct __attribute__((packed)) { uint8_t deviceType; @@ -112,7 +118,7 @@ typedef struct __attribute__((packed)) uint8_t deviceType; // CONFIG_TYPE uint8_t flags; // CONFIG_FLAGS - uint8_t pad0; + uint8_t deviceTypeModifier; // Used in INQUIRY response. uint32_t sdSectorStart; uint32_t scsiSectors; @@ -131,7 +137,9 @@ typedef struct __attribute__((packed)) char revision[4]; char serial[16]; - uint8_t reserved[962]; // Pad out to 1024 bytes for main section. + uint16_t quirks; // CONFIG_QUIRKS + + uint8_t reserved[960]; // Pad out to 1024 bytes for main section. uint8_t vpd[3072]; // Total size is 4k. } TargetConfig; @@ -173,7 +181,14 @@ typedef enum // Response: // uint8_t[16] CSD // uint8_t[16] CID - CONFIG_SDINFO + CONFIG_SDINFO, + + // Command content: + // uint8_t CONFIG_SCSITEST + // Response: + // CONFIG_STATUS + // uint8_t result code (0 = passed) + CONFIG_SCSITEST } CONFIG_COMMAND; typedef enum