private void UpdateZeroFlag(FlagAffect flagAffect, byte value) { switch (flagAffect) { case FlagAffect.AFFECTED: if (value == 0) { flags.ZeroFlag = true; } else { flags.ZeroFlag = false; } break; case FlagAffect.SET: flags.ZeroFlag = true; break; case FlagAffect.RESET: flags.ZeroFlag = false; break; case FlagAffect.UNAFFECTED: break; } }
private void UpdateNegativeFlag(FlagAffect flagAffect, byte value) { switch (flagAffect) { case FlagAffect.AFFECTED: if ((value & 0x80) > 0) { flags.NegativeFlag = true; } flags.NegativeFlag = false; break; case FlagAffect.SET: flags.ZeroFlag = true; break; case FlagAffect.RESET: flags.ZeroFlag = false; break; case FlagAffect.UNAFFECTED: break; } }