JMS576/7/8/9 EEPROM offsets: 0x00 - 0x01: USB VID (little endian) 0x02 - 0x03: USB PID (little endian) 0x08 - 0x09: USB BCD? 0x0A: 0x0A = use SCSI strings on 0xC8-0xDF, anything else = use ATA drive ID for SCSI vendor/product 0x0C - 0x2F: String Descriptor 1 - Manufacturer (some firmware dumps may feature a bogus/empty string descriptor at 0x1B) 0x30 - 0x53: String Descriptor 2 - Product 0x54 - 0x77: String Descriptor 3 - Serial Number (descriptor size) (0x54 set to 0 = use serial number from attached drive) 0x78 - 0xC7: 0 0xC8 - 0xCF: SCSI vendor 0xD0 - 0xDF: SCSI product name 0xE0 - 0xE1: "HD" 0xE2: 0 0xE3: generally 0 (0x14 on 01.02.01.04 Orico) 0xE4 - 0xE6: 0 0xE7: Features bitmap 1 bit 7: enable USB Mass Storage / BOT bit 6: enable UASP bit 5: enable 4Kn sector emulation ("Multisec") bit 4: always unset bit 3: always unset bit 2: ??? bit 1: always set bit 0: ??? 0xE8 - 0xEF: 0 OxF0 - 0xF1: "BC" 0xF2: Features bitmap 2 bit 7: always unset bit 6: ??? bit 5: always set bit 4: ??? bit 3: enable powersave mode bit 2: always unset bit 1: always unset bit 0: always unset 0xF3: Features bitmap 3??? bit 7: always set bit 6: always set bit 5: always unset bit 4: always unset bit 3: generally unset (00.04.01.04 Self-Power+ODD has this set) bit 2: always unset bit 1: always unset bit 0: ??? 0xF4 - 0x05: 0 0xF6 - 0xF7: Powersave timeout in seconds (big endian!) 0xF8 - 0xFD: 40 0F 32 05 00 00 0xFE - 0XFF: EEPROM Identifier ("JM") 0x100 - 0x1FF: Junk data? (same on ALL EEPROM dumps) MD5: 34a237c125b376b075debfaa6fbff386 SHA1: 137b6a3313f6fdf8e3a179eadb86e17b5aaedc7d CRC32: 095ca824 USB String Descriptor format: +0: UNICODE String length ((ANSI length + 1) * 2) +1: Descriptor type (0x03) +2...+n: ANSI string