.\" $NetBSD: installboot.8,v 1.25 2021/02/26 10:44:31 wiz Exp $ .\" .\" Copyright (c) 1996 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation .\" by Paul Kranenburg. .\" .\" 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. .\" .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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. .\" .Dd February 25, 2021 .Dt INSTALLBOOT 8 amiga .Os .Sh NAME .Nm installboot .Nd install a bootstrap on an FFS filesystem partition .Sh SYNOPSIS .Nm /usr/mdec/installboot .Op Fl l Ar newcommandline .Ar bootblock .Ar device .Sh DESCRIPTION .Nm installboot copies the bootblock to a bootable partition. The bootstrap is written into the bootblock area on the partition, right in front of the superblock, and hence limited in size to 8192 bytes. .Pp The bootstrap resides in the first few blocks on the partition .Pq as specified by Commodore-Amiga Inc. The bootstrap is loaded into memory by the ROM from bootable devices: RDB devices, where the partition is marked as bootable, or (not on the DraCo) floppy disks in Amiga format (880K/1760k). .Pp In the presence of more than one bootable partition/floppy disk, the partition is chosen by the bootpriority (from the RDB), which can be overridden by the operator from the boot menu (on Amiga machines, hold down the outer mouse buttons during boot; on DraCo machines, press the left mouse button when prompted). .Pp On RDB devices, the whole bootblock is loaded by the ROM. The number of boot blocks in the RDB partition entry must be correct. .Pp On floppy disks, the ROM always loads the first two blocks (1024 bytes), and the bootblock allocates memory and loads the whole bootblock on startup. .Pp After receiving control, the bootblock uses the stand-alone filesystem code in .Dq libsa.a to load the kernel from the filesystem on the partition it was started from. The code for the boot program can be found in .Pa /usr/mdec/bootxx_fd .Pq floppy disk code , .Pa /usr/mdec/bootxx_ffsv1 .Pq generic RDB disk code for FFSv1 , or .Pa /usr/mdec/bootxx_ffsv2 .Pq generic RDB disk code for FFSv2 . .Pp The arguments are: .Bl -tag -width bootblock .It Fl l Ar newcommandline Specify a different command line to replace the default. .It Ar bootblock The file containing the bootblock (normally /usr/mdec/bootxx_ffsv1 or bootxx_ffsv2 for RDB devices). .It Ar device The name of the character special device specifying the partition on which the bootstrap is to be installed. .El .Sh EXAMPLES The following command will install the boot program for FFSv1 in the bootblock area on .Dq sd0a : .Bd -literal -offset indent installboot /usr/mdec/bootxx_ffsv1 /dev/rsd0a .Ed .Sh SEE ALSO .Xr dd 1 , .Xr amiga/boot 8 .Sh HISTORY The .Nm command first appeared in .Nx 1.3 . .Sh BUGS If .Nm is accidentally used on the whole disk partition, the RDB will be overwritten, making your system unusable after the next reboot. .Pp Some third-party accelerator boards are not autoconfiguring. You won't be able to use their memory when booting from the bootblock after a cold start. .Pp Some third-party disk controllers don't support bootblock booting. .Pp DraCo ROMs don't support bootblock booting from floppy disks. .Pp Most 68060 boards, unlike the DraCo, don't set the SysBase->AttnFlags bit for the 68060 CPU (a patch program which is called during AmigaOS startup does this). You need to add .Cd options BB060STUPIDROM to your kernel to boot on such a machine. .Pp There is currently no easy way to edit the RDB from within .Nx . Therefore, you have to use HDTOOLBOX or a similar tool to set the partition to bootable, "use custom bootblocks" and the number of bootblocks to 16 (for bootxx_ffsv1 or bootxx_ffsv2) or 2 (for bootxx_fd), at least the first time you install the bootblock. .Pp As normal .Xr dd 1 is used to install the bootblock, you can only install onto your currently used root (or any other mounted) partition from single-user mode, or while otherwise running in insecure mode.