Home | History | Annotate | Download | only in boot
History log of /src/sys/arch/amiga/stand/bootblock/boot/libstubs.h
RevisionDateAuthorComments
 1.8  25-Mar-2023  abs Fix NetBSD/amiga bootblocks for Kickstart 3.2 - from Karoly Balogh

Kickstart 3.2 changed to not initialize console.device before
bootstrap, so the previous NetBSD bootblocks would crash when they
tried to initialise console output.

With this change if the call to the OpenDevice() stub fails, the
code now calls FindResident() and InitResident() before retrying
the OpenDevice().

Many thanks to Karoly Balogh for tracking this down (and also for
knowing just who to poke to get insight into the 3.2 changes :)
 1.7  17-Oct-2009  mlelstv branches: 1.7.94;
Add a serial console mode for the bootblock. In this mode all console
output will be echoed to the serial port and input will be accepted
from either keyboard or serial port. The bootblock serial console is
limited to 9600bps 8N1 as it uses the AmigaOS kernel debug routines.

To enable this you have to uncomment the SERCONSOLE define in
boot/Makefile.

Also note that the handling of a serial console in the kernel is
independent of this, you need to a build a kernel with 'options
SERCONSOLE'.
 1.6  28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.5  24-Dec-2005  perry branches: 1.5.74; 1.5.76; 1.5.78;
bare asm -> __asm
 1.4  17-Dec-2001  mhitch branches: 1.4.32;
Update amiga booter to two-stage booter.

First stage is bootxx_ffs (for ffs boot partitions) or bootxx_fd (for bootable
floppy disk). These locate, load, and execute the second stage loader boot.amiga.
The console screen is created and passed to the second stage loader.

The second stage loader uses loadfile() to load the kernel image, which can
be either a.out or ELF format, and can also be compressed. It will load a
kernel file from ffs file systems or the ustarfs used on floppy disks.
 1.3  16-Feb-1999  is branches: 1.3.22; 1.3.26;
Fix Copyright dates
 1.2  16-Feb-1999  is Assign my files to The NetBSD Foundation, Inc.
 1.1  29-Nov-1996  is branches: 1.1.1;
Initial revision
 1.1.1.1  29-Nov-1996  is First version of a NetBSD-Amiga bootblock compilable from within NetBSD,
along with toolchain enhancements.

aout2bb transforms a.out files with reloc information into bootblock format
files with a compressed relocation info.

bbstart.s relocates the bootblock using this compressed info, before jumping
to C code.

txlt changes some more of the absolute references to pc-relative ones (we know
we have a single code + data address space).

If you ever try to change this: don't even dare to change the compiler options;
they were found in weeks of trial and error as the ones producing the smallest
(not necessarily fastests) code.

installboot is just a script around dd, for now.

Some ideas by Michael Hitch, Leo Weppelman and Jason Thorpe; bugs added
by myself.
 1.3.26.1  08-Jan-2002  nathanw Catch up to -current.
 1.3.22.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.4.32.1  21-Jun-2006  yamt sync with head.
 1.5.78.2  11-Mar-2010  yamt sync with head
 1.5.78.1  16-May-2008  yamt sync with head.
 1.5.76.1  18-May-2008  yamt sync with head.
 1.5.74.1  02-Jun-2008  mjf Sync with HEAD.
 1.7.94.1  30-Mar-2023  martin Pull up following revision(s) (requested by abs in ticket #133):

sys/arch/amiga/stand/bootblock/boot/libstubs.h: revision 1.8
sys/arch/amiga/stand/bootblock/boot/version: revision 1.3
sys/arch/amiga/stand/bootblock/boot/libstubs.s: revision 1.11
sys/arch/amiga/stand/bootblock/boot/console.c: revision 1.16

Fix NetBSD/amiga bootblocks for Kickstart 3.2 - from Karoly Balogh
Kickstart 3.2 changed to not initialize console.device before
bootstrap, so the previous NetBSD bootblocks would crash when they
tried to initialise console output.

With this change if the call to the OpenDevice() stub fails, the
code now calls FindResident() and InitResident() before retrying
the OpenDevice().

Many thanks to Karoly Balogh for tracking this down (and also for
knowing just who to poke to get insight into the 3.2 changes :)

RSS XML Feed