Пример #1
0
        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;
            }
        }
Пример #2
0
        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;
            }
        }