Newsgroups: comp.sys.atari.st
Path: utzoo!utgpu!watserv1!watmath!ljdickey
From: ljdickey@watmath.waterloo.edu (L.J.Dickey)
Subject: Re: booting from hard disk
Message-ID: <1991Mar12.042707.26779@watmath.waterloo.edu>
Organization: University of Waterloo
References: <1991Mar06.205849.23089@lynx.CS.ORST.EDU> <91066.115758ZUR072@DMSWWU1C.BITNET> <1819@mwca.UUCP>
Date: Tue, 12 Mar 1991 04:27:07 GMT
Lines: 138

A lot of helpful solutions have been posted to the problems mentioned
about booting with a SCSI device.  In November last year I wrote
this little article that I thought everybody would remember.

I guess we have some new readers.

============================================================================

"Baby Ugly Duckling" by Larry Rymal 
and
"HDWBOOT" by Jelske Kloppenburg


A Review by
Lee Dickey


The problem

When I turn on my MEGA ST2 and my ICD hard drive at the same time, the
computer boots from the floppy, and not from the hard drive, because it
takes a few seconds for the hard drive to make itself ready for use,
and this is after the computer itself is ready to boot.  Thus, if I
start my system by turning on on my computer and my hard drive at the
same time, the computer boots up from the floppy drive, and not from
the hard drive, and I can not make use of the programs and files I have
stored on the hard drive.


The easy solution

Of course, the simplest solution to this problem is to turn on the hard
drive first, wait the necessary 15 seconds or so until the hard drive is
ready, and then turn on the computer.  This way, the software supplied
by my drive manufacturer is used during the boot.


A deeper problem

Maybe you have a setup where you want to flip one big switch to
turn on everything at once.  Or maybe you like to run your system
unattended, like with a bulletin board, and you want your system to
re-start in the event of a power interruption, or maybe you are as
impatient as I am and you just can't bear standing there waiting
those 15 seconds or so between turning on the hard drive and turning
on the main unit.


The hardware solution

One hardware solution is to have a sequencer do the job.  Before he
wrote his program, DUCK31, Larry Rymal used to make such a sequencer,
called the Ugly Duckling Hardware Sequencer.  I have never seen one of
these things, but I imagine that it was some sort of box with one switch
on the front and two (or more?) outlets on the back, one outlet to be
used for the hard drive, which comes on right away, and the other,
with a delay circuit built in, for the computer.  I guess that Larry
got tired of working with his soldering iron, and had plenty of time
to think about a software solution.


Software solutions

The first software alternative that I found was Baby Ugly Duckling 3.1
by Larry Rymal, which appeared on the net in January of 1990. I have
used it quite often, especially when I want to turn on all the switches
at about the same time.

The setup works this way:

   (1)  I turn on everything in my system at once: the monitor, the
	computer, the drive, everything.
   (2)  My computer tries to read from the hard drive and finds nobody
	home, because the computer is ready to go before the drive is.
   (3)	My computer boots from drive A:, it finds the folder A:\AUTO\ ,
	and the program there, DUCK31.PRG, is executed.
   (4)  A message appears on the screen and there is a 15 second pause.
   (5)  Meanwhile, the hard drive finishes its startup sequence,
	and is ready for use when it is next polled by the computer.
   (6)  After the 15 second delay period is over, DUCK31 issues
	a command to re-boot the system.  I am not sure if it is a
	"warm boot" or a "cold boot", but I suspect that it is a cold
	boot.  This time during the boot procedure the hard drive gets
	noticed and my files in C:\AUTO\ are executed.


Last month, I found another program, HDWBOOT.TOS, by Jelske Kloppenburg,
which provides a second software alternative.  The operation goes like
this: I turn on all the switches of my system, just like before, and
the computer uses a program on the boot sector of a floppy in my
floppy drive.  The program in the boot sector simply polls the hard
drive until it finds it ready, and then it gives the command to re-boot
the system. To install the program on the floppy, one simply runs the
program HDWBOOT.TOS.


Negatives aspects

As software goes, DUCK31 has too many options; some some of them are
intended for the debugging phase, and should have been turned off
or masked before the program was shipped.

My MEGA ST2 is subject to a "double boot" problem.  Often, when I turn
my system on, the computer goes through two boot cycles, whether I use
one of these programs or not.  This means, sadly, that sometimes I get
as many as four boot sequences happening: two of them from the floppy,
and then two more happen from the hard drive. I don't know why this
doubling happens, nor do I know any way to stop it.  I suspect that
it has nothing to do with DUCK31 or HDWBOOT, but has everything to do
with TOS 1.2, the version of the operating system that I am running.

There have been times when I have wanted to avoid running the DUCK31
program.  Of course I could slip the disk out of the computer, and
put another disk in.  But that would be too easy.  I know how to
disable a program in the AUTO folder:  change its name.  For instance
the program "A:\AUTO\DUCK31.PRG" can be renamed to "A:\AUTO\DUCK31\PR".
However, I don't know how to disable a program in the boot sector.  I
suppose I could use a virus detector to write over the boot sector, but
this is destructive, and I would have to re-run the program HDWBOOT.TOS,
to re-create the boot sector.


Where to get DUCK31 and HDWBOOT

I got both programs from the Atari Binaries news groups on usenet,
but both should be available from the ftp archive servers "terminator"
and "panarthea".

	Lee Dickey
	ljdickey@math.waterloo.edu

1990-11-04

-- 
Prof L.J. Dickey, Faculty of Mathematics, U of Waterloo, Canada N2L 3G1
	Internet:	ljdickey@watmath.waterloo.edu
	UUCP:		ljdickey@watmath.UUCP	..!uunet!watmath!ljdickey
	X.400:		ljdickey@watmath.UWaterloo.ca
