diff --git a/src/core/kernel/exports/EmuKrnl.cpp b/src/core/kernel/exports/EmuKrnl.cpp index f7b0cb444..a53220c83 100644 --- a/src/core/kernel/exports/EmuKrnl.cpp +++ b/src/core/kernel/exports/EmuKrnl.cpp @@ -175,6 +175,7 @@ void CallSoftwareInterrupt(const xbox::KIRQL SoftwareIrql) HalInterruptRequestRegister ^= (1 << SoftwareIrql); } +// This masks have been verified to be correct against a kernel dump const DWORD IrqlMasks[] = { 0xFFFFFFFE, // IRQL 0 0xFFFFFFFC, // IRQL 1 (APC_LEVEL) @@ -189,12 +190,12 @@ const DWORD IrqlMasks[] = { 0x000FFFF0, // IRQL 10 0x0007FFF0, // IRQL 11 0x0003FFF0, // IRQL 12 - 0x0001FFF0, // IRQL 13 - 0x0001FFF0, // IRQL 14 + 0x0001FFF0, // IRQL 13 (same as IRQL 14) + 0x0001FFF0, // IRQL 14 (same as IRQL 13) 0x00017FF0, // IRQL 15 0x00013FF0, // IRQL 16 - 0x00011FF0, // IRQL 17 - 0x00011FF0, // IRQL 18 + 0x00011FF0, // IRQL 17 (same as IRQL 18) + 0x00011FF0, // IRQL 18 (same as IRQL 17) 0x000117F0, // IRQL 19 0x000113F0, // IRQL 20 0x000111F0, // IRQL 21