Example #1
0
        public void SetInput(Button button, bool Pressed)
        {
            int buttonVal = (int)button;
            int bitIndex  = buttonVal % 4;

            if (buttonVal > 3)
            {
                if (Pressed)
                {
                    if (Bitwise.IsBitOn(buttonInput, bitIndex))
                    {
                        setButtonInterrupt = true;
                    }
                    buttonInput = Bitwise.ClearBit(buttonInput, bitIndex);
                }
                else
                {
                    buttonInput = Bitwise.SetBit(buttonInput, bitIndex);
                }
            }
            else
            {
                if (Pressed)
                {
                    if (Bitwise.IsBitOn(directionInput, bitIndex))
                    {
                        setDirectionInterrupt = true;
                    }
                    directionInput = Bitwise.ClearBit(directionInput, bitIndex);
                }
                else
                {
                    directionInput = Bitwise.SetBit(directionInput, bitIndex);
                }
            }
        }
Example #2
0
 internal void SetInterrupt(Interrupts interrupt)
 {
     IF = Bitwise.SetBit(IF, (int)interrupt);
 }