[comp.os.msdos.programmer] Rebooting

jhall@wpi.WPI.EDU (John Clinton Hall) (11/28/90)

How do I perform a system warm boot?  I have tried INT 19h, which is supposed
to initiate the boot sequence, but it doesn't work?
-- 
----------------------------------------------------------------------------
The highest sounds are hardest to hear.      ## ## ## ##### ##
Going forward is a way to retreat.           ## ## ## ## ## ##  jhall
Great talent shows itself late in life.      ## ## ## ##### ##  @wpi.wpi.edu

valley@uchicago (Doug Dougherty) (11/28/90)

jhall@wpi.WPI.EDU (John Clinton Hall) writes:


>How do I perform a system warm boot?  I have tried INT 19h, which is supposed
>to initiate the boot sequence, but it doesn't work?
>-- 
>----------------------------------------------------------------------------
>The highest sounds are hardest to hear.      ## ## ## ##### ##
>Going forward is a way to retreat.           ## ## ## ## ## ##  jhall
>Great talent shows itself late in life.      ## ## ## ##### ##  @wpi.wpi.edu

This oughta give you the idea:

C> debug reboot.com
-u
2A05:0100 A08000        MOV     AL,[0080]
2A05:0103 08C0          OR      AL,AL
2A05:0105 750B          JNZ     0112
2A05:0107 B84000        MOV     AX,0040
2A05:010A 8ED8          MOV     DS,AX
2A05:010C B83412        MOV     AX,1234
2A05:010F A37200        MOV     [0072],AX
2A05:0112 EA0000FFFF    JMP     FFFF:0000
-q

ts@uwasa.fi (Timo Salmi) (11/28/90)

In article <1990Nov27.201109.1507@wpi.WPI.EDU> jhall@wpi.WPI.EDU (John Clinton Hall) writes:
>
>How do I perform a system warm boot?  I have tried INT 19h, which is supposed
>to initiate the boot sequence, but it doesn't work?

You are right, I does not work, not at least consistently.  You did
not say what language you are using.  If you use Turbo Pascal the
working code is ready preprogrammed in the /pc/ts/tspas22.arc Turbo
Pascal units collection available by anonymous ftp or mail server
from uwasa.fi. 

...................................................................
Prof. Timo Salmi        (Moderating at anon. ftp site 128.214.12.3)
School of Business Studies, University of Vaasa, SF-65101, Finland
Internet: ts@chyde.uwasa.fi Funet: gado::salmi Bitnet: salmi@finfun

rudrak@cl.bull.fr (11/28/90)

In article <1990Nov27.201109.1507@wpi.WPI.EDU> jhall@wpi.WPI.EDU (John Clinton Hall) writes:
>
>How do I perform a system warm boot?  I have tried INT 19h, which is supposed
>to initiate the boot sequence, but it doesn't work?
>-- 
Try this:

Write 1234H at address 0:472H and jump to address FFFF:0000 

-- 
R. Purushotham                          Email: rudrak@saphir.cl.bull.fr
F7 1 D5 BULL SA                         Tel Off: 34627000 ext 3928
78340 Les Clayes sous Bois  FRANCE      Tel Res: 34604752
=======================================================================

jhall@wpi.WPI.EDU (John Clinton Hall) (11/30/90)

Thanks to all who responded to my message on how to perform a system warm boot.

In summary, to perform a system warm boot on the IBM, put the word 1234h in
location 0040h:0072h and JMP to location 0FFFFh:0000h.  For example, the
following Debug code performs a warm boot:

	MOV	AX,0040
	MOV	DS,AX
	MOV	AX,1234
	MOV	[0072],AX
	JMP	FFFF:0000

To cold boot the computer, just JMP 0FFFF:0000h.
-- 
The highest sounds are hardest to hear.  ## ## ## ##### ##  jhall@wpi.wpi.edu
Going forward is a way to retreat.       ## ## ## ## ## ##  Worcester
Great talent shows itself late in life.  ## ## ## ##### ##  Polytechnic
Even a perfect program still has bugs.   ######## ##    ##  Institute

valley@uchicago (Doug Dougherty) (12/01/90)

jhall@wpi.WPI.EDU (John Clinton Hall) writes:


>Thanks to all who responded to my message on how to perform a system warm boot.

>In summary, to perform a system warm boot on the IBM, put the word 1234h in
>location 0040h:0072h and JMP to location 0FFFFh:0000h.  For example, the
>following Debug code performs a warm boot:

>	MOV	AX,0040
>	MOV	DS,AX
>	MOV	AX,1234
>	MOV	[0072],AX
>	JMP	FFFF:0000

>To cold boot the computer, just JMP 0FFFF:0000h.
>-- 
>The highest sounds are hardest to hear.  ## ## ## ##### ##  jhall@wpi.wpi.edu
>Going forward is a way to retreat.       ## ## ## ## ## ##  Worcester
>Great talent shows itself late in life.  ## ## ## ##### ##  Polytechnic
>Even a perfect program still has bugs.   ######## ##    ##  Institute

There are, in fact, some other "magic numbers" one can put into that
location and have strange, magical, and mystical things happen.
Unfortunately, I don't any of them.  Incidentally, the boot code does
ensure that there is a value other than 1234 in that location, so you
shouldn't ever have to manually set it to ensure a cold boot.

david@csource.oz.au (david nugent) (12/06/90)

In <1990Nov30.154658.16398@wpi.WPI.EDU> jhall@wpi.WPI.EDU (John Clinton Hall) writes:

> In summary, to perform a system warm boot on the IBM, put the word 1234h in
> location 0040h:0072h and JMP to location 0FFFFh:0000h.  For example, the
> following Debug code performs a warm boot:

> 	MOV	AX,0040
> 	MOV	DS,AX
> 	MOV	AX,1234
> 	MOV	[0072],AX
> 	JMP	FFFF:0000

> To cold boot the computer, just JMP 0FFFF:0000h.


... which doesn't work reliably - if at all - on a 386 running any sort
of memory management.  It also won't work reliably under DESQview, and will
definitely hang both PC-MOS/386 and Windows 3.x.

I'm glad to say, it does work just fine under VP/ix though. :-)

-- 
        Fidonet: 3:632/348   SIGnet: 28:4100/1  Imex: 90:833/387
              Data:  +61-3-885-7864   Voice: +61-3-826-6711
 Internet/ACSnet: david@csource.oz.au    Uucp: ..!uunet!munnari!csource!david