This worked for the user, just need to validate it doesn't have a regression.
static const uint8_t CmdGroupBytes[256] = {
// Group 0: 0x00-0x1F (6-byte CDBs)
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, // 0x00-0x0F
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, // 0x10-0x1F
// Group 1: 0x20-0x3F (10-byte CDBs)
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x20-0x2F
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x30-0x3F
// Group 2: 0x40-0x5F (10-byte CDBs)
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x40-0x4F
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x50-0x5F
// Group 3: 0x60-0x7F (reserved, use 10-byte)
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x60-0x6F
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, // 0x70-0x7F
// Group 4: 0x80-0x9F (16-byte CDBs)
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16, // 0x80-0x8F
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16, // 0x90-0x9F
// Group 5: 0xA0-0xBF (12-byte CDBs)
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, // 0xA0-0xAF
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, // 0xB0-0xBF
// Group 6: 0xC0-0xDF (6-byte CDBs, vendor specific - includes OMTI-5204, Toolbox)
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, // 0xC0-0xCF
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, // 0xD0-0xDF
// Group 7: 0xE0-0xFF (6-byte CDBs, vendor specific - includes Xebec)
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, // 0xE0-0xEF
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 // 0xF0-0xFF
};
I The CDB is 6, but being read in as 10 due to the lookup table introduced in b20ebba "Atari ICD Commands"
This worked for the user, just need to validate it doesn't have a regression.
Originally posted by @erichelgeson in #315 (reply in thread)