NetBSD/share/man/man8/man8.arm26/BBBB.8
2000-11-25 23:55:34 +00:00

141 lines
4.2 KiB
Groff

.\" $NetBSD: BBBB.8,v 1.3 2000/11/25 23:55:34 bjh21 Exp $
.\"
.\" Copyright (c) 2000 Ben Harris
.\" 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. The name of the author may not be used to endorse or promote products
.\" derived from this software without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
.\"
.Dd November 21, 2000
.Dt BBBB 8 arm26
.Os
.Sh NAME
.Nm BBBB
.Nd Bootloader for
.Nx Ns /arm26
.Sh SYNOPSIS
.Nm
.Op Fl adsqv
.Op Ar file
.Sh DESCRIPTION
.Nm
is a program that runs under
.Tn RISC OS
and launches the
.Nx Ns /arm26
kernel. It needs to be installed in a RISC OS
filesystem and given file type FFB (BASIC). The kernel it is to load
also needs to be stored in a
.Tn RISC OS
filesystem.
.Pp
It takes the following options, which set flags in the
.Va boothowto
variable in the booted kernel:
.Bl -tag -width Fl
.It Fl a
.Pq Dv RB_ASKNAME
Cause the kernel to prompt the user for the name of the device containing the
root filesystem. This also causes
.Nm
to prompt for the name of the kernel to be loaded.
.It Fl s
.Pq Dv RB_SINGLE
Cause the kernel to ask
.Nm init
to boot into single-user mode.
.It Fl d
.Pq Dv RB_KDB
Cause the kernel to ented the kernel debugger as soon as possible.
.It Fl q
.Pq Dv RB_QUIET
Cause the kernel to emit fewer messages than normal while starting up.
.It Fl v
.Pq Dv RB_VERBOSE
Cause the kernel to emit more messages than normal while starting up.
.El
.Pp
.Nm
attempts to load the kernel from the RISC OS file specified as
.Ar file ,
or from
.Pa netbsd
if
.Ar file
is not specified.
.Ss Screen display
.\" From <URL:http://mail-index.netbsd.org/port-arm26/2000/05/02/0001.html>
When it starts up,
.Nm
displays the current memory map.
Each character in the map represents one page of (physical) RAM. The
ticks along the top are to stop you getting lost. The characters in the
map indicate what the memory's being used for (actually where it's
logically mapped):
.Pp
.Bd -literal -offset indent
0 -> zero-page
+ -> BBBB workspace
* -> Free space (BBBB wants to put the kernel here)
d -> RAM disc
s -> System sprite area
m -> RMA
h -> System heap/stack
f -> Font cache
S -> Screen memory
.Ed
.Pp
On a machine with 32k pages (which is all
.Nx Ns /arm26
supports), the left
half of the first line is potential screen memory, and hence not used by
.Nm "" .
The next page is usually zero page under RISC OS, and is used for
zero page under
.Nx . The next is usually system heap under RISC OS,
and is used for process 0's kernel stack under
.Nx .
The next is used for the message buffer under
.Nx .
Pages from there on are used to load
the kernel, and must be free if
.Nm
is to do so successfully. Future
bootloaders should load the kernel into whatever pages are free, then kick
out RISC OS and shuffle them into the right shape. This is left as an
exercise for the enthusiatic reader.
.Sh SEE ALSO
.Xr reboot 2 ,
.Xr ddb 4 ,
.Xr init 8
.Sh HISTORY
.Nm
is as old as
.Nx Ns /arm26 ,
which isn't very old. Its name is a contraction of
.Dq Ben's BASIC BSD Bootloader .
.Sh BUGS
.Nm
cannot load kernels from a
.Nx
filesystem, nor can it load compressed kernels.