From 7e0f021a9aec35fd8e6725e87e3313b101d26f5e Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Sun, 27 Jan 2008 11:37:44 +0100 Subject: Initial import (2.0.2-6) --- reference/C/CONTRIB/SNIP/reboot.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 reference/C/CONTRIB/SNIP/reboot.c (limited to 'reference/C/CONTRIB/SNIP/reboot.c') diff --git a/reference/C/CONTRIB/SNIP/reboot.c b/reference/C/CONTRIB/SNIP/reboot.c new file mode 100755 index 0000000..88a93d0 --- /dev/null +++ b/reference/C/CONTRIB/SNIP/reboot.c @@ -0,0 +1,32 @@ +/* +** Public domain demo to reboot a PC +*/ + +#ifdef __TURBOC__ + #define FAR far +#else + #define FAR _far +#endif + +short FAR *bios_post = (short FAR *)0x00400072; +void (FAR * boot)(void) = (void (FAR *)())0xffff0000; + +void reboot(warm) +{ + if (warm) + *bios_post = 0x1234; + else *bios_post = 0; + boot(); +} + +#ifdef TEST + +#include + +void main(void) +{ + puts("The computer should do a cold start"); + reboot(0); +} + +#endif /* TEST */ -- cgit v1.2.3-54-g00ecf