diff --git a/oscar/SleepLib/loader_plugins/prs1_parser_xpap.cpp b/oscar/SleepLib/loader_plugins/prs1_parser_xpap.cpp index f6d0846a..5e823db5 100644 --- a/oscar/SleepLib/loader_plugins/prs1_parser_xpap.cpp +++ b/oscar/SleepLib/loader_plugins/prs1_parser_xpap.cpp @@ -2079,11 +2079,11 @@ bool PRS1DataChunk::ParseSettingsF0V6(const unsigned char* data, int size) this->ParseTubingTypeV3(data[pos]); break; case 0x48: // ??? Seen on DreamStation 2 non-Advanced (410) - // Appears between 0x2C and 0x2E, but the only values we've seen other than 0 is - // 1, which doesn't seem to be like a reasonable pressure (for ramp pressure) nor - // a boolean setting, which tends to be 0x80. + // Appears between 0x2C (ramp time) and 0x2E (flex mode), with a value of 0-4. CHECK_VALUE(len, 1); - CHECK_VALUES(data[pos], 0, 1); + if (data[pos] > 4) { + UNEXPECTED_VALUE(data[pos], "0-4"); + } //this->AddEvent(new PRS1UnknownDataEvent(QByteArray((const char*) data, size), pos, len)); break; case 0x4a: // Patient controls access, specific to DreamStation 2.