1.\" $NetBSD: boot32.8,v 1.2 2004/02/23 19:39:48 wiz Exp $ 2.\" 3.\" Copyright (c) 2000, 2001 Ben Harris 4.\" Copyright (c) 2004 Reinoud Zandijk 5.\" All rights reserved. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 3. The name of the author may not be used to endorse or promote products 16.\" derived from this software without specific prior written permission. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 19.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 20.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 22.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28.\" 29.Dd February 23, 2004 30.Dt BOOT32 8 acorn32 31.Os 32.Sh NAME 33.Nm boot32 34.Nd Bootloader for 35.Nx Ns /acorn32 36.Sh SYNOPSIS 37.Nm *boot32 38.Op Fl acdqsv 39.Op Ar root=rootdir 40.Op Ar file 41.Sh DESCRIPTION 42.Nm 43is a program that runs under 44.Tn RISC OS 45and launches the 46.Nx Ns /acorn32 47kernel. 48It needs to be installed in a RISC OS filesystem and given file 49type FFA (Module). 50The kernel it is to load also needs to be stored in a 51.Tn RISC OS 52filesystem. 53.Pp 54It takes the following standard 55.Nx 56options, which set flags in the 57.Va boothowto 58variable in the booted kernel (not all flags may be effective): 59.Bl -tag -width Fl 60.It Fl a 61.Pq Dv RB_ASKNAME 62Cause the kernel to prompt the user for the name of the device containing the 63root filesystem. 64This also causes 65.Nm 66to prompt for the name of the kernel to be loaded. 67.It Fl s 68.Pq Dv RB_SINGLE 69Cause the kernel to ask 70.Nm init 71to boot into single-user mode. 72.It Fl d 73.Pq Dv RB_KDB 74Cause the kernel to enter the kernel debugger as soon as possible. 75.It Fl c 76.Pq Dv RB_USERCONF 77Enter the in-kernel device configuration manager before attaching any 78devices. 79.It Fl q 80.Pq Dv RB_QUIET 81Cause the kernel to emit fewer messages than normal while starting up. 82.It Fl v 83.Pq Dv RB_VERBOSE 84Cause the kernel to emit more messages than normal while starting up. 85.El 86.Pp 87.Nm 88attempts to load the kernel from the RISC OS file specified as 89.Ar file , 90or from 91.Pa netbsd 92if 93.Ar file 94is not specified. 95The file must be an ELF image, and may have been compressed using 96.Xr gzip 1 . 97.Ss Use as a module 98.Nm 99is implemented as a RISC OS relocatable module. 100It can be loaded into memory by running 101.Ql *RMLoad boot32 . 102After this, 103.Nx 104can be booted by running 105.Ql *boot32 106as usual, but the command will be handled by the module. 107.Pp 108It should also be possible to arrange for 109.Nm 110to be loaded from ROM (e.g., from the ROM on an expansion card), in which case 111.Nx 112could be made to boot automatically by making 113.Nm 114the configured language using 115.Ql *Configure Language . 116.Ss Screen display 117When it starts up, 118.Nm 119displays the number of 4 kilobyte memory pages it has been delegated by RISC-OS 120and gives a summary about the memory map as reported by RISC-OS followed by a 121table of physical memory ranges available to the bootloader. 122All this information is mainly for bughunting booting problems. 123.Pp 124It then checks its internal structures and kicks out RISC-OS, relocates all 125memory pages loaded in to their final destinations and kickstarts 126.Nm . 127.Sh FILES 128.Bl -tag -width Pa 129.It Pa /usr/mdec/boot32,ffa 130The location of 131.Nm 132in the 133.Nx 134filesystem. 135.El 136.Sh SEE ALSO 137.Xr gzip 1 , 138.Xr reboot 2 , 139.Xr ddb 4 , 140.Xr userconf 4 , 141.Xr init 8 142.Sh HISTORY 143.Nm 144was introduced in 145.Nx 1.6 146as a replacement for the original 147.Nx Ns /arm32 148bootloader, which was written in BBC BASIC. 149.Sh BUGS 150.Nm 151cannot load kernels from a 152.Nx 153filesystem. 154