Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!bionet!ames!vsi1!daver!versatc.versatec.COM!leadsv!zech From: zech@leadsv.UUCP (Bill Zech) Newsgroups: comp.sys.ibm.pc Subject: Re: System boot Summary: INT 19 is not the same as CTL_ALT_DEL Keywords: system boot Message-ID: <9312@leadsv.UUCP> Date: 9 Jan 90 23:02:27 GMT References: <945@excelan.COM> <77@qmsseq.imagen.com> Organization: LOCKHEED, Sunnyvale, CA Lines: 44 In article <77@qmsseq.imagen.com>, pipkins@qmsseq.imagen.com (Jeff Pipkins) writes: > The int 19h vector is supposed to do a warm boot. Like you, I have > experienced frequent hang-ups instead of boots when calling it. I'm > not sure why, either. > There are really three types of boot operations on the PC. COLD BOOT = power on /reset This runs system diagnostics, executes the BIOS initialization, including setup of interrupt vectors, then boots DOS. WARM BOOT = CTL_ALT_DEL This is just like a cold boot, except the diagnostics are skipped or abreviated. INT 19 This is a DOS boot ONLY. The BIOS interrupts are *NOT* reset. Note that INT 19 is a DOS interrupt, not a BIOS int. Any TSR or driver which chains onto an interrupt vector must intercept int 19, and reload the interrupt vectors with their original values, before allowing DOS to handle the int 19. If these resident programs don't do this, then when DOS reloads (blowing away all your TSRs, etc.) the vectors will continue to point at those no longer existing programs. Not all TSRs and drivers are friendly enough to do this, and that is why the system will often crash when you execute an INT 19. You might try removing all this stuff from your system and try out the INT 19 with only one of them at a time to find out which is the bad guy (or bad guys). INT 19 is mainly used during startup after some initialization program runs to extened or modify the BIOS, allowing DOS to reboot with a different BIOS configuration. Some TSR's intercept INT 19 and then jump to the BIOS WARM start routines. Hope this helps. - Bill