[FAST486]
[reactos.git] / reactos / lib / fast486 / opgroups.c
index 303fcd1..03eb091 100644 (file)
@@ -304,21 +304,21 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8082)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Fetch the immediate operand */
     if (!Fast486FetchByte(State, &Immediate))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Calculate the result */
@@ -327,10 +327,8 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8082)
     /* Unless this is CMP, write back the result */
     if (ModRegRm.Register != 7)
     {
-        return Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
     }
-
-    return TRUE;
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
@@ -346,7 +344,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -357,14 +355,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
         if (!Fast486FetchDword(State, &Immediate))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Read the operands */
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -373,7 +371,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
         /* Unless this is CMP, write back the result */
         if (ModRegRm.Register != 7)
         {
-            return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+            Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
     else
@@ -384,14 +382,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
         if (!Fast486FetchWord(State, &Immediate))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Read the operands */
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -400,11 +398,9 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup81)
         /* Unless this is CMP, write back the result */
         if (ModRegRm.Register != 7)
         {
-            return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
+            Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
-
-    return TRUE;
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
@@ -421,14 +417,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Fetch the immediate operand */
     if (!Fast486FetchByte(State, (PUCHAR)&ImmByte))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -440,7 +436,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -449,7 +445,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
         /* Unless this is CMP, write back the result */
         if (ModRegRm.Register != 7)
         {
-            return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+            Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
     else
@@ -461,7 +457,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -470,11 +466,9 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup83)
         /* Unless this is CMP, write back the result */
         if (ModRegRm.Register != 7)
         {
-            return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
+            Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
-
-    return TRUE;
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8F)
@@ -492,7 +486,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8F)
     if (!Fast486StackPop(State, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
@@ -501,30 +495,18 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8F)
         if (OperandSize) State->GeneralRegs[FAST486_REG_ESP].Long -= sizeof(ULONG);
         else State->GeneralRegs[FAST486_REG_ESP].LowWord -= sizeof(USHORT);
 
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register != 0)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
-    if (OperandSize)
-    {
-        return Fast486WriteModrmDwordOperands(State,
-                                              &ModRegRm,
-                                              FALSE,
-                                              Value);
-    }
-    else
-    {
-        return Fast486WriteModrmWordOperands(State,
-                                             &ModRegRm,
-                                             FALSE,
-                                             LOWORD(Value));
-    }
+    if (OperandSize) Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+    else Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, LOWORD(Value));
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC0)
@@ -538,21 +520,21 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC0)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Fetch the count */
     if (!Fast486FetchByte(State, &Count))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Calculate the result */
@@ -563,10 +545,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC0)
                                           Count));
 
     /* Write back the result */
-    return Fast486WriteModrmByteOperands(State,
-                                         &ModRegRm,
-                                         FALSE,
-                                         Value);
+    Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
@@ -583,14 +562,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Fetch the count */
     if (!Fast486FetchByte(State, &Count))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -601,7 +580,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -612,7 +591,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
                                        Count);
 
         /* Write back the result */
-        return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
     }
     else
     {
@@ -622,7 +601,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -633,7 +612,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC1)
                                               Count));
 
         /* Write back the result */
-        return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
     }
 }
 
@@ -648,27 +627,24 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC6)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register != 0)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
     /* Get the immediate operand */
     if (!Fast486FetchByte(State, &Immediate))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
-    return Fast486WriteModrmByteOperands(State,
-                                         &ModRegRm,
-                                         FALSE,
-                                         Immediate);
+    Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Immediate);
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC7)
@@ -684,14 +660,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC7)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register != 0)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -702,13 +678,10 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC7)
         if (!Fast486FetchDword(State, &Immediate))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
-        return Fast486WriteModrmDwordOperands(State,
-                                              &ModRegRm,
-                                              FALSE,
-                                              Immediate);
+        Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Immediate);
     }
     else
     {
@@ -718,13 +691,10 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupC7)
         if (!Fast486FetchWord(State, &Immediate))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
-        return Fast486WriteModrmWordOperands(State,
-                                             &ModRegRm,
-                                             FALSE,
-                                             Immediate);
+        Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Immediate);
     }
 }
 
@@ -739,24 +709,21 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD0)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Calculate the result */
     Value = LOBYTE(Fast486RotateOperation(State, ModRegRm.Register, Value, 8, 1));
 
     /* Write back the result */
-    return Fast486WriteModrmByteOperands(State,
-                                         &ModRegRm,
-                                         FALSE,
-                                         Value);
+    Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
 
 }
 
@@ -773,7 +740,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD1)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -784,14 +751,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD1)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
         Value = Fast486RotateOperation(State, ModRegRm.Register, Value, 32, 1);
 
         /* Write back the result */
-        return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
     }
     else
     {
@@ -801,14 +768,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD1)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
         Value = LOWORD(Fast486RotateOperation(State, ModRegRm.Register, Value, 16, 1));
 
         /* Write back the result */
-        return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
     }
 }
 
@@ -823,14 +790,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD2)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Calculate the result */
@@ -841,10 +808,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD2)
                                           State->GeneralRegs[FAST486_REG_ECX].LowByte));
 
     /* Write back the result */
-    return Fast486WriteModrmByteOperands(State,
-                                         &ModRegRm,
-                                         FALSE,
-                                         Value);
+    Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
@@ -860,7 +824,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (OperandSize)
@@ -871,7 +835,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -882,7 +846,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
                                        State->GeneralRegs[FAST486_REG_ECX].LowByte);
 
         /* Write back the result */
-        return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
     }
     else
     {
@@ -892,7 +856,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Calculate the result */
@@ -903,7 +867,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupD3)
                                               State->GeneralRegs[FAST486_REG_ECX].LowByte));
 
         /* Write back the result */
-        return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
+        Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
     }
 }
 
@@ -918,14 +882,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     switch (ModRegRm.Register)
@@ -940,7 +904,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
             if (!Fast486FetchByte(State, &Immediate))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Calculate the result */
@@ -960,7 +924,9 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
         case 2:
         {
             /* Write back the result */
-            return Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, ~Value);
+            Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, ~Value);
+
+            break;
         }
 
         /* NEG */
@@ -978,7 +944,9 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
             State->Flags.Pf = Fast486CalculateParity(Result);
 
             /* Write back the result */
-            return Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Result);
+            Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Result);
+
+            break;
         }
 
         /* MUL */
@@ -1018,7 +986,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
             {
                 /* Divide error */
                 Fast486Exception(State, FAST486_EXCEPTION_DE);
-                return FALSE;
+                return;
             }
 
             Quotient = State->GeneralRegs[FAST486_REG_EAX].LowWord / Value;
@@ -1040,7 +1008,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
             {
                 /* Divide error */
                 Fast486Exception(State, FAST486_EXCEPTION_DE);
-                return FALSE;
+                return;
             }
 
             Quotient = (SHORT)State->GeneralRegs[FAST486_REG_EAX].LowWord / (CHAR)Value;
@@ -1053,8 +1021,6 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF6)
             break;
         }
     }
-
-    return TRUE;
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
@@ -1071,7 +1037,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Set the sign flag */
@@ -1085,7 +1051,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
     }
     else
@@ -1094,7 +1060,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, (PUSHORT)&Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
     }
 
@@ -1112,7 +1078,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
                 if (!Fast486FetchDword(State, &Immediate))
                 {
                     /* Exception occurred */
-                    return FALSE;
+                    return;
                 }
             }
             else
@@ -1121,7 +1087,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
                 if (!Fast486FetchWord(State, (PUSHORT)&Immediate))
                 {
                     /* Exception occurred */
-                    return FALSE;
+                    return;
                 }
             }
 
@@ -1145,13 +1111,15 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
             if (OperandSize)
             {
                 /* 32-bit */
-                return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, ~Value);
+                Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, ~Value);
             }
             else
             {
                 /* 16-bit */
-                return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, LOWORD(~Value));
+                Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, LOWORD(~Value));
             }
+
+            break;
         }
 
         /* NEG */
@@ -1173,13 +1141,15 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
             if (OperandSize)
             {
                 /* 32-bit */
-                return Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Result);
+                Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Result);
             }
             else
             {
                 /* 16-bit */
-                return Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, LOWORD(Result));
+                Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, LOWORD(Result));
             }
+
+            break;
         }
 
         /* MUL */
@@ -1247,7 +1217,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
             {
                 /* Divide error */
                 Fast486Exception(State, FAST486_EXCEPTION_DE);
-                return FALSE;
+                return;
             }
 
             if (OperandSize)
@@ -1283,7 +1253,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
             {
                 /* Divide error */
                 Fast486Exception(State, FAST486_EXCEPTION_DE);
-                return FALSE;
+                return;
             }
 
             if (OperandSize)
@@ -1312,8 +1282,6 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupF7)
             break;
         }
     }
-
-    return TRUE;
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFE)
@@ -1327,21 +1295,21 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFE)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register > 1)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
     if (!Fast486ReadModrmByteOperands(State, &ModRegRm, NULL, &Value))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register == 0)
@@ -1365,10 +1333,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFE)
     State->Flags.Pf = Fast486CalculateParity(Value);
 
     /* Write back the result */
-    return Fast486WriteModrmByteOperands(State,
-                                         &ModRegRm,
-                                         FALSE,
-                                         Value);
+    Fast486WriteModrmByteOperands(State, &ModRegRm, FALSE, Value);
 }
 
 FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
@@ -1384,14 +1349,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register == 7)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
     /* Read the operands */
@@ -1402,7 +1367,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         if (ModRegRm.Register == 0)
@@ -1425,7 +1390,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
             if (!Fast486StackPush(State, State->InstPtr.Long))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the EIP to the address */
@@ -1452,28 +1417,28 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
                                    sizeof(USHORT)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Push the current value of CS */
             if (!Fast486StackPush(State, State->SegmentRegs[FAST486_REG_CS].Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Push the current value of EIP */
             if (!Fast486StackPush(State, State->InstPtr.Long))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new code segment */
             if (!Fast486LoadSegment(State, FAST486_REG_CS, Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the EIP to the address */
@@ -1505,14 +1470,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
                                    sizeof(USHORT)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new code segment */
             if (!Fast486LoadSegment(State, FAST486_REG_CS, Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the EIP to the address */
@@ -1521,7 +1486,8 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
         else if (ModRegRm.Register == 6)
         {
             /* Push the value on to the stack */
-            return Fast486StackPush(State, Value);
+            Fast486StackPush(State, Value);
+            return;
         }
 
         if (ModRegRm.Register <= 1)
@@ -1532,10 +1498,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
             State->Flags.Pf = Fast486CalculateParity(Value);
 
             /* Write back the result */
-            return Fast486WriteModrmDwordOperands(State,
-                                                  &ModRegRm,
-                                                  FALSE,
-                                                  Value);
+            Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
     else
@@ -1545,7 +1508,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         if (ModRegRm.Register == 0)
@@ -1568,7 +1531,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
             if (!Fast486StackPush(State, State->InstPtr.LowWord))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the IP to the address */
@@ -1598,28 +1561,28 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
                                    sizeof(USHORT)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Push the current value of CS */
             if (!Fast486StackPush(State, State->SegmentRegs[FAST486_REG_CS].Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Push the current value of IP */
             if (!Fast486StackPush(State, State->InstPtr.LowWord))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new code segment */
             if (!Fast486LoadSegment(State, FAST486_REG_CS, Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the IP to the address */
@@ -1657,14 +1620,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
                                    sizeof(USHORT)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new code segment */
             if (!Fast486LoadSegment(State, FAST486_REG_CS, Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Set the IP to the address */
@@ -1676,13 +1639,14 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
         else if (ModRegRm.Register == 6)
         {
             /* Push the value on to the stack */
-            return Fast486StackPush(State, Value);
+            Fast486StackPush(State, Value);
+            return;
         }
         else
         {
             /* Invalid */
             Fast486Exception(State, FAST486_EXCEPTION_UD);
-            return FALSE;
+            return;
         }
 
         if (ModRegRm.Register <= 1)
@@ -1693,17 +1657,11 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroupFF)
             State->Flags.Pf = Fast486CalculateParity(Value);
 
             /* Write back the result */
-            return Fast486WriteModrmWordOperands(State,
-                                                 &ModRegRm,
-                                                 FALSE,
-                                                 Value);
+            Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value);
         }
     }
-
-    return TRUE;
 }
 
-
 FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
 {
     FAST486_MOD_REG_RM ModRegRm;
@@ -1715,7 +1673,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Check which operation this is */
@@ -1729,13 +1687,11 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 || State->Flags.Vm)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
-            return Fast486WriteModrmWordOperands(State,
-                                                 &ModRegRm,
-                                                 FALSE,
-                                                 State->Ldtr.Selector);
+            Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, State->Ldtr.Selector);
+            break;
         }
 
         /* STR */
@@ -1746,13 +1702,11 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 || State->Flags.Vm)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
-            return Fast486WriteModrmWordOperands(State,
-                                                 &ModRegRm,
-                                                 FALSE,
-                                                 State->TaskReg.Selector);
+            Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, State->TaskReg.Selector);
+            break;
         }
 
         /* LLDT */
@@ -1766,14 +1720,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 || State->Flags.Vm)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* This is a privileged instruction */
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!Fast486ReadModrmWordOperands(State,
@@ -1782,14 +1736,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                               &Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Make sure the GDT contains the entry */
             if (GET_SEGMENT_INDEX(Selector) >= (State->Gdtr.Size + 1))
             {
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_GP, Selector);
-                return FALSE;
+                return;
             }
 
             /* Read the GDT */
@@ -1800,26 +1754,26 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                          sizeof(GdtEntry)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             if (GET_SEGMENT_INDEX(Selector) == 0)
             {
                 RtlZeroMemory(&State->Ldtr, sizeof(State->Ldtr));
-                return TRUE;
+                return;
             }
 
             if (!GdtEntry.Present)
             {
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_NP, Selector);
-                return FALSE;
+                return;
             }
 
             if (GdtEntry.Signature != FAST486_LDT_SIGNATURE)
             {
                 /* This is not a LDT descriptor */
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_GP, Selector);
-                return FALSE;
+                return;
             }
 
             /* Update the LDTR */
@@ -1828,7 +1782,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
             State->Ldtr.Limit = GdtEntry.Limit | (GdtEntry.LimitHigh << 16);
             if (GdtEntry.Granularity) State->Ldtr.Limit <<= 12;
 
-            return TRUE;
+            break;
         }
 
         /* LTR */
@@ -1842,14 +1796,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 || State->Flags.Vm)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* This is a privileged instruction */
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!Fast486ReadModrmWordOperands(State,
@@ -1858,14 +1812,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                               &Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Make sure the GDT contains the entry */
             if (GET_SEGMENT_INDEX(Selector) >= (State->Gdtr.Size + 1))
             {
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_GP, Selector);
-                return FALSE;
+                return;
             }
 
             /* Read the GDT */
@@ -1876,26 +1830,26 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                          sizeof(GdtEntry)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             if (GET_SEGMENT_INDEX(Selector) == 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!GdtEntry.Present)
             {
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_NP, Selector);
-                return FALSE;
+                return;
             }
 
             if (GdtEntry.Signature != FAST486_TSS_SIGNATURE)
             {
                 /* This is not a TSS descriptor */
                 Fast486ExceptionWithErrorCode(State, FAST486_EXCEPTION_GP, Selector);
-                return FALSE;
+                return;
             }
 
             /* Update the TR */
@@ -1905,7 +1859,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
             if (GdtEntry.Granularity) State->TaskReg.Limit <<= 12;
             State->TaskReg.Busy = TRUE;
 
-            return TRUE;
+            break;
         }
 
         /* VERR/VERW */
@@ -1920,14 +1874,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 || State->Flags.Vm)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* This is a privileged instruction */
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!Fast486ReadModrmWordOperands(State,
@@ -1936,7 +1890,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                               &Selector))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             if (!(Selector & SEGMENT_TABLE_INDICATOR))
@@ -1946,7 +1900,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 {
                     /* Clear ZF */
                     State->Flags.Zf = FALSE;
-                    return TRUE;
+                    return;
                 }
 
                 /* Read the GDT */
@@ -1957,7 +1911,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                              sizeof(GdtEntry)))
                 {
                     /* Exception occurred */
-                    return FALSE;
+                    return;
                 }
             }
             else
@@ -1967,7 +1921,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                 {
                     /* Clear ZF */
                     State->Flags.Zf = FALSE;
-                    return TRUE;
+                    return;
                 }
 
                 /* Read the LDT */
@@ -1978,7 +1932,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                              sizeof(GdtEntry)))
                 {
                     /* Exception occurred */
-                    return FALSE;
+                    return;
                 }
             }
 
@@ -2003,14 +1957,13 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F00)
                                && (GdtEntry.Dpl <= Fast486GetCurrentPrivLevel(State)));
 
 
-            return TRUE;
+            break;
         }
 
         /* Invalid */
         default:
         {
             Fast486Exception(State, FAST486_EXCEPTION_UD);
-            return FALSE;
         }
     }
 }
@@ -2032,7 +1985,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* Check for the segment override */
@@ -2052,7 +2005,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             {
                 /* The second operand must be a memory location */
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* Fill the 6-byte table register */
@@ -2061,11 +2014,13 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             *((PULONG)&TableReg[sizeof(USHORT)]) = State->Gdtr.Address;
 
             /* Store the GDTR */
-            return Fast486WriteMemory(State,
-                                      Segment,
-                                      ModRegRm.MemoryAddress,
-                                      TableReg,
-                                      sizeof(TableReg));
+            Fast486WriteMemory(State,
+                               Segment,
+                               ModRegRm.MemoryAddress,
+                               TableReg,
+                               sizeof(TableReg));
+
+            break;
         }
 
         /* SIDT */
@@ -2075,7 +2030,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             {
                 /* The second operand must be a memory location */
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* Fill the 6-byte table register */
@@ -2084,11 +2039,13 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             *((PULONG)&TableReg[sizeof(USHORT)]) = State->Idtr.Address;
 
             /* Store the IDTR */
-            return Fast486WriteMemory(State,
-                                      Segment,
-                                      ModRegRm.MemoryAddress,
-                                      TableReg,
-                                      sizeof(TableReg));
+            Fast486WriteMemory(State,
+                               Segment,
+                               ModRegRm.MemoryAddress,
+                               TableReg,
+                               sizeof(TableReg));
+
+            break;
         }
 
         /* LGDT */
@@ -2098,14 +2055,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!ModRegRm.Memory)
             {
                 /* The second operand must be a memory location */
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* Read the new GDTR */
@@ -2117,7 +2074,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
                                    sizeof(TableReg)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new GDT */
@@ -2128,7 +2085,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             /* In 16-bit mode the highest byte is masked out */
             if (!OperandSize) State->Gdtr.Address &= 0x00FFFFFF;
 
-            return TRUE;
+            break;
         }
 
         /* LIDT */
@@ -2138,14 +2095,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             if (!ModRegRm.Memory)
             {
                 /* The second operand must be a memory location */
                 Fast486Exception(State, FAST486_EXCEPTION_UD);
-                return FALSE;
+                return;
             }
 
             /* Read the new IDTR */
@@ -2157,7 +2114,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
                                    sizeof(TableReg)))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* Load the new IDT */
@@ -2168,17 +2125,19 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             /* In 16-bit mode the highest byte is masked out */
             if (!OperandSize) State->Idtr.Address &= 0x00FFFFFF;
 
-            return TRUE;
+            break;
         }
 
         /* SMSW */
         case 4:
         {
             /* Store the lower 16 bits (Machine Status Word) of CR0 */
-            return Fast486WriteModrmWordOperands(State,
-                                                 &ModRegRm,
-                                                 FALSE,
-                                                 LOWORD(State->ControlRegisters[FAST486_REG_CR0]));
+            Fast486WriteModrmWordOperands(State,
+                                          &ModRegRm,
+                                          FALSE,
+                                          LOWORD(State->ControlRegisters[FAST486_REG_CR0]));
+
+            break;
         }
 
         /* LMSW */
@@ -2190,14 +2149,14 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
             if (Fast486GetCurrentPrivLevel(State) != 0)
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             /* Read the new Machine Status Word */
             if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &MachineStatusWord))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
 
             /* This instruction cannot be used to return to real mode */
@@ -2205,28 +2164,27 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0F01)
                 && !(MachineStatusWord & FAST486_CR0_PE))
             {
                 Fast486Exception(State, FAST486_EXCEPTION_GP);
-                return FALSE;
+                return;
             }
 
             /* Set the lowest 4 bits */
             State->ControlRegisters[FAST486_REG_CR0] &= 0xFFFFFFF0;
             State->ControlRegisters[FAST486_REG_CR0] |= MachineStatusWord & 0x0F;
 
-            return TRUE;
+            break;
         }
 
         /* INVLPG */
         case 7:
         {
             UNIMPLEMENTED;
-            return FALSE;
+            break;
         }
 
         /* Invalid */
         default:
         {
             Fast486Exception(State, FAST486_EXCEPTION_UD);
-            return FALSE;
         }
     }
 }
@@ -2241,12 +2199,12 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FB9)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     /* All of them are reserved (UD2) */
     Fast486Exception(State, FAST486_EXCEPTION_UD);
-    return FALSE;
+    return;
 }
 
 FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
@@ -2268,21 +2226,21 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
     if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Register < 4)
     {
         /* Invalid */
         Fast486Exception(State, FAST486_EXCEPTION_UD);
-        return FALSE;
+        return;
     }
 
     /* Get the bit number */
     if (!Fast486FetchByte(State, &BitNumber))
     {
         /* Exception occurred */
-        return FALSE;
+        return;
     }
 
     if (ModRegRm.Memory)
@@ -2305,7 +2263,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
         if (!Fast486ReadModrmDwordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Set CF to the bit value */
@@ -2333,7 +2291,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
             if (!Fast486WriteModrmDwordOperands(State, &ModRegRm, FALSE, Value))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
         }
     }
@@ -2345,7 +2303,7 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
         if (!Fast486ReadModrmWordOperands(State, &ModRegRm, NULL, &Value))
         {
             /* Exception occurred */
-            return FALSE;
+            return;
         }
 
         /* Set CF to the bit value */
@@ -2373,13 +2331,10 @@ FAST486_OPCODE_HANDLER(Fast486ExtOpcodeGroup0FBA)
             if (!Fast486WriteModrmWordOperands(State, &ModRegRm, FALSE, Value))
             {
                 /* Exception occurred */
-                return FALSE;
+                return;
             }
         }
     }
-
-    /* Return success */
-    return TRUE;
 }
 
 /* EOF */