gw@sickkids.UUCP (5450) (12/08/88)
How does one completely reboot a PC/XT/AT from software control?
Before you say "... use interrupt hex 19 ...", please note that the
BIOS bootstrap service accessed via interrupt hex 19 is not a complete
reboot. It just loads the boot segment from drive A: and executes it.
What I want is the reboot that occurs when one presses Ctl-Alt-Del
(without using hard coded addresses which could be BIOS dependent).
Anyone have any ideas?
If I get a solution, I'll post it to the net. Thanks all in advance.
--------------------+-------------------------------------------------------
Graham Wilson | UUCP: uunet!mnetor!lsuc!
CyberFluor Inc | {decvax, linus!utzoo}!sickkids!robot!graham
179 John St, #400 | {ubc-vision, watmath}!utai!utgpu!
Toronto Ontario |
M5T 1X4 | BITNET: gw@sickkids.utoronto
(416) 977-5450 | INTERNET: gw@sickkids.toronto.edudhesi@bsu-cs.UUCP (Rahul Dhesi) (12/12/88)
In article <127@sickkids.UUCP> gw@sickkids.UUCP (Graham Wilson) writes: >What I want is the reboot that occurs when one presses Ctl-Alt-Del >(without using hard coded addresses which could be BIOS dependent). Here is one written by Richard Tremmel. begin 644 boot.com MZRX@("`@("`@("`@("`@#5=!4DU"3T]4+D-/32!B>2!2:6-H87)D(%1R96UM M96P:N```CMBX-!*C<@3J``#__P`````````````````````````````````` F```````````````````````````````````````````````````` ` end -- Rahul Dhesi UUCP: <backbones>!{iuvax,pur-ee}!bsu-cs!dhesi
todd@stiatl.UUCP (Todd Merriman) (12/12/88)
ifdef DOCUMENTATION
; ****************************************************************************
REBOOT.ASM
12/18/87
Todd Merriman
.MODULE reboot
.LIBRARY clib
.TYPE function
.APPLICATION system
.SYSTEM msdos
.AUTHOR Todd Merriman
.LANGUAGE Assembly
.DESCRIPTION
Reboot the computer
.ARGUMENTS
void reboot();
.NARRATIVE
The reboot function transfers program control to the CPU reset vector, and
a system reset is performed. This could be used in a case where a device
driver was modified.
.CAUTION
Be sure there are no open files, or any I/O not completed.
.RETURNS
void
.NOTICE
Copyright (c) 1987 Future Communications, Atlanta, Georgia
.ENDOC END DOCUMENTATION
; ****************************************************************************
endif
.XLIST
INCLUDE \HEADER\C.MAC ; symbols and macros for Microsoft
.LIST
; ****************************************************************************
; data
; ****************************************************************************
DSEG ; begin data section
RES_VEC DW 0FFF0H,0F000H ; reset vector
ENDDS ; end data section
; ****************************************************************************
; code
; ****************************************************************************
PSEG ; begin program section
CFUN reboot ; C function declaration
PUSH BP
MOV BP,SP
LEA SI,RES_VEC ; load reset vector
JMP DWORD PTR DS:[SI] ; jump there
POP BP ; this code for good form only
RET
CFEND reboot ; end C function
ENDPS ; end program section
END ; end assembly
; ****************************************************************************
; reboot program
; this is a test for the reboot function
; ****************************************************************************
PAGE 59,132
;
; Outline for assembly programs to .COM files
;
.XLIST
INCLUDE \LAT\HEADER\CSUB.MAC
.LIST
CODE SEGMENT PUBLIC
ASSUME CS:CODE, DS:CODE, SS:CODE, ES:CODE
ORG 100H ; .COM origin
MAIN PROC FAR
START:
CCALL reboot
INT 20H ; to DOS
MAIN ENDP
CODE ENDS
END START
; ****************************************************************************
; End REBOOT.ASM
; ****************************************************************************