.\" $NetBSD: boot.8,v 1.15 2014/08/16 08:43:12 apb Exp $
.\"
.\" Copyright (c) 1980, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)boot_i386.8 8.2 (Berkeley) 4/19/94
.\"
.Dd August 16, 2014
.Dt BOOT 8 x68k
.Os
.Sh NAME
.Nm boot
.Nd system bootstrapping procedures
.Sh DESCRIPTION
.Ss Power fail and crash recovery
Normally, the system will reboot itself at power-up or after crashes.
An automatic consistency check of the file systems will be performed,
and unless this fails, the system will resume multi-user operations.
.Ss Cold starts
The X68000/X68030 system boots from the device
which is determined by the configuration of
battery-backuped SRAM.
By default, the boot ROM attempts to boot from
floppy disk drives (from 0 to 3) first,
and then attempts to boot from hard disk (SASI or SCSI).
On the
.Nx Ns Tn /x68k ,
booting from SCSI disks (sd??)
and 2HD floppy disks (fd?a, fd?c) is currently supported.
.Ss Bootstrapping from a floppy
When the floppy disk is selected as the boot device, the initial
program loader of the IOCS (firmware) reads the
.Pa fdboot_ufs
program at the top of the disk, and then the fdboot_ufs program loads the
.Pa /boot
program from the FFS or LFS file system.
Normally, the
.Pa /boot
program then loads the
.Nx
kernel
.Pa /netbsd
from the same floppy.
In addition, the
.Pa /boot
program has abilities to uncompress gzip'ed kernels, to read
the kernel from other disks of other file systems etc (see below).
.Pp
For floppy disks,
.Pa fdboot_ustar
is also provided to read large
kernels which do not fit one a single floppy.
.Ss Bootstrapping from a SCSI hard disk
When a SCSI hard disk is selected as the boot device, the initial
program loader on the SCSI host adapter's ROM reads the
operating system-independent IPL menu program at the top of the disk.
The IPL menu program recognizes the partition table, and selects the partition
to read the operating system kernel.
During this phase, when the HELP key on the keyboard is pressed,
the IPL menu program displays the partition menu of that disk to
prompt the user to select the boot partition (although the
.Nx
implementation of the IPL menu,
.Pa /usr/mdec/mboot ,
does not have this functionality).
.Pp
Next, the IPL menu reads the OS-dependent boot program from the
top of the selected partition.
For
.Nx
FFS/LFS file systems
.Pa sdboot_ufs
is used.
The
.Pa sdboot_ufs
program then loads the
.Pa /boot
program from that partition.
.Ss Normal Operation
Once running, a banner similar to the following will appear:
.Bd -literal -offset indent
NetBSD Multi-boot, Revision 1.1
(user@buildhost, builddate)
Press return to boot now, any other key for boot menu
booting sd0a:netbsd - starting in 5
.Ed
.Pp
After a countdown, the system image listed will be loaded.
(In the example above, it will be
.Dq Li sd0a:netbsd
which is the file
.Nm netbsd
on partition
.Dq a
of the
.Nx
SCSI hard disk of ID 0.
Pressing a key within the time limit will enter interactive mode.
.Ss Interactive mode
In interactive mode, the boot loader will present a prompt, allowing
input of these commands:
.Bl -tag -width helpx -offset indent
.It Ic boot Oo Ar device : Oc Ns Oo Ar filename Oc Oo Fl adqsv Oc
The default
.Ar device
will be set to the disk that the boot loader was
loaded from.
To boot from an alternate disk, the full name of the device should
be given at the prompt.
.Ar device
is of the form
.Xo
.Ar xd Ns Oo
.Ar N Ns Oo
.Ar x
.Oc
.Oc
.Xc
where
.Ar xd
is the device from which to boot,
.Ar N
is the unit number, and
.Ar x
is the partition letter.
.Pp
The following list of supported devices may vary from installation to
installation:
.Pp
.Bl -hang -compact
.It sd
SCSI disks on a controller recognized by the IOCS.
The unit number is the SCSI ID.
.It fd
Floppy drives as numbered by the IOCS.
.El
.Pp
The default
.Ar filename
is
.Pa netbsd ;
if the boot loader fails to successfully
open that image, it then tries
.Pa netbsd.gz
(expected to be a kernel image compressed by
.Xr gzip 1 ) .
Alternate system images can be loaded by just specifying the name of the image.
.Pp
Options are:
.Bl -tag -width xxx
.It Fl a
Prompt for the root file system device, the system crash dump
device, and the path to
.Xr init 8 .
.It Fl d
Bring the system up in debug mode.
Here it waits for a kernel debugger connect; see
.Xr ddb 4 .
.It Fl q
Boot the system in quiet mode.
.It Fl s
Bring the system up in single-user mode.
.It Fl v
Boot the system in verbose mode.
.El
.It Ic help
Print an overview about commands and arguments.
.It Ic ls Op Pa path
Print a directory listing of
.Pa path ,
containing inode number, filename and file type.
.Pa path
can contain a device specification.
.It Ic halt
Reboot the system.
.El
.Ss Model-specific notes
Note for X68030+MC68030 systems:
Nothing special to be attended to; you can boot
.Nx
just like as
other operating systems such as Human68k and OS-9.
.Pp
Note for X68030/040turbo(68040 accelerator by BEEPs) systems:
.Nx
can boot under 040 mode.
It can also boot under 030 mode if you have MC68030 on the board.
.Pp
Note for X68000/Xellent30(68030 accelerator by TSR)+MC68030 systems:
In order to boot
.Nx ,
you must choose 030 mode by using
.Pa CH30.SYS ,
which must reside in the battery-backuped SRAM.
.Pp
Note for X68000/Jupiter-X(68040/060 accelerator by FTZ-net) systems:
The system must be in 040/060 processor mode.
.Sh FILES
.Bl -tag -width /usr/mdec/xxboot_ufs -compact
.It Pa /netbsd
system code
.It Pa /netbsd.gz
gzip-compressed system code
.It Pa /usr/mdec/xxboot_ufs
boot block (read by installboot), xx is disktype
.It Pa /usr/mdec/boot
source of /boot (can be just copied to the root directory)
.It Pa /boot
main part of the boot program
.El
.Sh SEE ALSO
.Xr reboot 2 ,
.Xr disklabel 8 ,
.Xr halt 8 ,
.Xr reboot 8 ,
.Xr shutdown 8
.\" installboot(8) must be written