예제 #1
0
파일: Power.cs 프로젝트: 0xF6/IvyOS
        public static void Reboot()
        {
            byte good = 0x02;

            while ((good & 0x02) != 0)
            {
                good = AXP.Inb(0x64);
            }
            AXP.Outb(0x64, 0xFE); //Pulse reset pin
            Cosmos.Core.Global.CPU.Halt();
        }
예제 #2
0
        public static void ClearMask(byte IRQline)
        {
            ushort port;

            if (IRQline < 8)
            {
                port = 0x20 + 1;
            }
            else
            {
                port     = 0xA0 + 1;
                IRQline -= 8;
            }
            var value = (byte)(AXP.Inb(port) & ~(1 << IRQline));

            AXP.Outb(port, value);
        }