G
Guest
Although ACPI has a standard method to specify how to restart a system,
Windows XP always ignores it. There are also two standard hardware methods to
restart a computer. The first method is to send a command (0xFE) to the
keyboard controller (output port 0x64) (this is a legacy from the PC/AT) and
the second is to set a bit in I/O port 0x92. Windows XP always sends the
reset command to the keyboard controller and no other method.
My device is truely headless. No keyboard controller, no video controller.
So, when I try to do "shutdown -r -t 0" the OS shutsdown, but the system does
not restart.
Does anyone know how I can get this to work?
Somewhere in one of the Windows system files there are instructions like
"mov al, 0feh / out 64h, al". If these were changed to "mov al, 02 / out 92h,
al" it would reset the system correctly. I am surprised that Microsoft hasn't
patched this file to do both types of reset for Windows XPe, because keyboard
controllers are obviously not needed for headless embedded systems. This
would be a very safe change (no security implications for example), and
wouldn't take significant time for MS to implement or test... but it's
probably wishful thinking.
Windows XP always ignores it. There are also two standard hardware methods to
restart a computer. The first method is to send a command (0xFE) to the
keyboard controller (output port 0x64) (this is a legacy from the PC/AT) and
the second is to set a bit in I/O port 0x92. Windows XP always sends the
reset command to the keyboard controller and no other method.
My device is truely headless. No keyboard controller, no video controller.
So, when I try to do "shutdown -r -t 0" the OS shutsdown, but the system does
not restart.
Does anyone know how I can get this to work?
Somewhere in one of the Windows system files there are instructions like
"mov al, 0feh / out 64h, al". If these were changed to "mov al, 02 / out 92h,
al" it would reset the system correctly. I am surprised that Microsoft hasn't
patched this file to do both types of reset for Windows XPe, because keyboard
controllers are obviously not needed for headless embedded systems. This
would be a very safe change (no security implications for example), and
wouldn't take significant time for MS to implement or test... but it's
probably wishful thinking.