diff options
author | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
---|---|---|
committer | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
commit | e611b132f9b8abe35b362e5870b74bce94a1e58e (patch) | |
tree | a5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/ntos/nthals/halx86/i386/ixfirm.c | |
download | NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2 NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip |
Diffstat (limited to '')
-rw-r--r-- | private/ntos/nthals/halx86/i386/ixfirm.c | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/private/ntos/nthals/halx86/i386/ixfirm.c b/private/ntos/nthals/halx86/i386/ixfirm.c new file mode 100644 index 000000000..1ebf1032a --- /dev/null +++ b/private/ntos/nthals/halx86/i386/ixfirm.c @@ -0,0 +1,79 @@ +/*++ + +Copyright (c) 1991 Microsoft Corporation + +Module Name: + + ixreboot.c + +Abstract: + + Provides the interface to the firmware for x86. Since there is no + firmware to speak of on x86, this is just reboot support. + +Author: + + John Vert (jvert) 12-Aug-1991 + +Revision History: + +--*/ +#include "halp.h" + +// +// Defines to let us diddle the CMOS clock and the keyboard +// + +#define CMOS_CTRL (PUCHAR )0x70 +#define CMOS_DATA (PUCHAR )0x71 + +#define RESET 0xfe +#define KEYBPORT (PUCHAR )0x64 + +VOID HalpVideoReboot(VOID); +VOID HalpReboot(VOID); + + +VOID +HalReturnToFirmware( + IN FIRMWARE_ENTRY Routine + ) + +/*++ + +Routine Description: + + Returns control to the firmware routine specified. Since the x86 has + no useful firmware, it just stops the system. + +Arguments: + + Routine - Supplies a value indicating which firmware routine to invoke. + +Return Value: + + Does not return. + +--*/ + +{ + switch (Routine) { + case HalHaltRoutine: + case HalPowerDownRoutine: + case HalRestartRoutine: + case HalRebootRoutine: + + HalpVideoReboot(); + + // + // Never returns + // + + HalpReboot(); + break; + default: + DbgPrint("HalReturnToFirmware called\n"); + DbgBreakPoint(); + break; + } +} |