Path: utzoo!attcan!uunet!cs.utexas.edu!samsung!brutus.cs.uiuc.edu!psuvax1!psuvm!jxs118 From: JXS118@psuvm.psu.edu (Jeff Siegel, Op from Atherton Hall) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: How to do a warm-boot from a C program Message-ID: <90050.231645JXS118@psuvm.psu.edu> Date: 20 Feb 90 04:16:45 GMT References: <2028@milton.acs.washington.edu>

> >jimmy writes: >>Does anyone know how to do a boot from a C program? > >Yes, just do an Interrupt 25 (which is 19h). That will do it nicely. Sorry, but my first reaction is NO ! NO ! NO ! This is a seems to be a common misconception. Int 19h is too buggy on most machines that I've seen. It won't reset any hardware registers that may have been mucked with. It alsowill fail (mostly) if you have multiple-page-tracking-type EMM drivers installed. Your best bet for a reboot is to far jump to addresss FFFF:0000. This will cause the almost-equivalent of pressing the resest button (provided you have one.) However, this invokes the memory test (usually lengthy). To exactly mimick a CTRL-ALT-DEL, you must write hex word 1234 into some special address in the bios data areas (it is listed in Norton, i don't remeber what the address is.) and then do the far jump. +-----------------------------------------------------------------------+ | Jeff Siegel | "Penn State --- | | 24 Atherton Hall | Where the men are men and the | | 862-5124 | sheep are nervous. " | | JXS118 @ PSUVM.BITNET | - Ray Wolfgang | +-------------------------------+---------------------------------------+