summaryrefslogtreecommitdiff
path: root/sys/arch/alpha/stand/boot
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1995-12-14 03:54:39 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1995-12-14 03:54:39 +0000
commitf12226068d16673eea9adafe99388f1061d3309f (patch)
tree90cb542d279e793d072ffc6e9f1f1add1f07179e /sys/arch/alpha/stand/boot
parent470d0389b66fade522060561cc0c6ba36e01e7cb (diff)
update to netbsd
Diffstat (limited to 'sys/arch/alpha/stand/boot')
-rw-r--r--sys/arch/alpha/stand/boot/Makefile102
-rw-r--r--sys/arch/alpha/stand/boot/TODO7
-rw-r--r--sys/arch/alpha/stand/boot/boot.c7
-rw-r--r--sys/arch/alpha/stand/boot/conf.c10
-rw-r--r--sys/arch/alpha/stand/boot/devopen.c (renamed from sys/arch/alpha/stand/boot/libsa/devopen.c)4
-rw-r--r--sys/arch/alpha/stand/boot/disk.c20
-rw-r--r--sys/arch/alpha/stand/boot/disk.h7
-rw-r--r--sys/arch/alpha/stand/boot/filesystem.c (renamed from sys/arch/alpha/stand/boot/libsa/filesystem.c)2
-rw-r--r--sys/arch/alpha/stand/boot/libsa/Makefile14
-rw-r--r--sys/arch/alpha/stand/boot/newvers.sh4
-rw-r--r--sys/arch/alpha/stand/boot/prom.c135
-rw-r--r--sys/arch/alpha/stand/boot/prom_disp.S116
-rw-r--r--sys/arch/alpha/stand/boot/start.S81
-rw-r--r--sys/arch/alpha/stand/boot/version4
14 files changed, 84 insertions, 429 deletions
diff --git a/sys/arch/alpha/stand/boot/Makefile b/sys/arch/alpha/stand/boot/Makefile
index 03d7c126bfa..23c3c283e7c 100644
--- a/sys/arch/alpha/stand/boot/Makefile
+++ b/sys/arch/alpha/stand/boot/Makefile
@@ -1,61 +1,51 @@
-# $NetBSD: Makefile,v 1.4 1995/06/28 00:58:44 cgd Exp $
-#
-# BSD Boot blocks for the Alpha
-#
-# XXX should generate a primary boot block, too...
-
-INCPATH=-I../../../.. -I.
-
-# Boot relocation address
-RELOC1= 20020000
-# Low memory test program relocation address
-#RELOC2= 20004000
-# High memory test program relocation address
-RELOC2= fffffc0000230000
-
-# Compiler and assembler flags used to generate boot blocks.
-#
-DEFS= -DSTANDALONE
-AFLAGS+=-DASSEMBLER ${INCPATH}
-CFLAGS= -mno-fp-regs ${INCPATH} ${DEFS}
-
-LIBS= libsa/libsa.a -lc
-SRCS= boot.c disk.c conf.c prom.c test.c
-
-all: boot
-
-libsa/libsa.a::
- cd libsa; make
-
-# This boot is supposed to be installed in this way:
-# cp boot <true_root_of_disk>/boot
-BOBJS= boot.o conf.o disk.o prom.o prom_disp.o prom_swpal.o vers.o
-boot: start.o ${BOBJS} ${LIBS}
- ${LD} -Ttext ${RELOC1} -N \
- -e start -o ${.TARGET} start.o ${BOBJS} ${LIBS}
-
-# This boot is supposed to be installed in this way:
-# cp test_boot <true_root_of_disk>/test_boot
-#
-# It is used presumably in this way:
-# boot -fi "test_boot" dka300
-TOBJS= prom.o prom_disp.o prom_swpal.o test.o
-test_boot: start.o ${TOBJS} ${LIBS}
- ${LD} -T ${RELOC2} -N -e start -o ${.TARGET} start.o ${TOBJS} ${LIBS}
-
-clean cleandir:
- rm -f .depend *.o *.exe *.i errs make.out core* vers.c
- rm -f a.out boot test_boot
- cd libsa && make cleandir
+# $NetBSD: Makefile,v 1.5 1995/11/23 02:39:20 cgd Exp $
+
+.PATH: ${.CURDIR}/.. ${.CURDIR}/../../../../lib/libsa
+
+BOOT_PROG = boot
+BOOT_RELOC = ${SECONDARY_LOAD_ADDRESS}
+
+BOOT_SRCS = start.S boot.c disk.c conf.c prom.c prom_disp.S OSFpal.c
+BOOT_SRCS+= alloc.c bzero.c close.c dev.c devopen.c disklabel.c
+BOOT_SRCS+= getfile.c gets.c ioctl.c lseek.c open.c printf.c read.c
+BOOT_SRCS+= strcmp.c ufs.c write.c bcopy.c filesystem.c strlen.c
+BOOT_SRCS+= ntohl.c prom_swpal.S
+BOOT_OBJS = ${BOOT_SRCS:N*.h:R:S/$/.o/g}
+
+HEADERSIZE_PROG = headersize
+
+AFLAGS += -DASSEMBLER
+CPPFLAGS += -I${.CURDIR}/../.. -I${.CURDIR}/../../../..
+CFLAGS = -Werror -mno-fp-regs -g -DCOMPAT_UFS
+
+CLEANFILES+= vers.c vers.o
+
+.PATH: ${.CURDIR}/../../../../lib/libkern
+
+all: ${BOOT_PROG}
+
+${BOOT_PROG}: ${BOOT_OBJS} ${HEADERSIZE_PROG}
+ sh ${.CURDIR}/newvers.sh ${.CURDIR}/version
+ ${COMPILE.c} vers.c
+ ${LD} -Ttext ${BOOT_RELOC} -N -e start -o ${BOOT_PROG}.coff \
+ ${BOOT_OBJS} vers.o -lc # XXX
+ size ${BOOT_PROG}.coff
+ strip ${BOOT_PROG}.coff
+ dd if=${BOOT_PROG}.coff of=${BOOT_PROG} \
+ bs=`./${HEADERSIZE_PROG} < ${BOOT_PROG}.coff` skip=1
install:
- install -c -o root -g wheel -m 555 boot ${DESTDIR}/
+ install -c -o bin -g bin -m 444 ${BOOT_PROG} \
+ ${DESTDIR}${BINDIR}/${BOOT_PROG}
-depend: ${SRCS}
- mkdep -p ${INCPATH} ${DEFS} ${SRCS}
- cd libsa && make depend
+clean: _SUBDIRUSE
+ rm -f a.out [Ee]rrs mklog core *.core \
+ ${BOOT_PROG} ${BOOT_OBJS} ${CLEANFILES} \
+ ${BOOT_PROG}.coff ${HEADERSIZE_PROG}
-newvers:
- sh newvers.sh
+cleandir: _SUBDIRUSE clean
-vers.c: newvers
+.include "${.CURDIR}/../Makefile.inc"
+.include <bsd.obj.mk>
+.include <bsd.dep.mk>
+.include <bsd.subdir.mk>
diff --git a/sys/arch/alpha/stand/boot/TODO b/sys/arch/alpha/stand/boot/TODO
deleted file mode 100644
index 57c1ab2f87d..00000000000
--- a/sys/arch/alpha/stand/boot/TODO
+++ /dev/null
@@ -1,7 +0,0 @@
-$NetBSD: TODO,v 1.2 1995/02/16 02:32:53 cgd Exp $
-
-libsa/devopen.c should replace the PMAX source code, and
-they should then share it.
-
-Standalone programs should load against libkern, and sys/stand
-should lose things like strchr() in favor of the libkern versions.
diff --git a/sys/arch/alpha/stand/boot/boot.c b/sys/arch/alpha/stand/boot/boot.c
index 375b0070834..0abbb15e7e8 100644
--- a/sys/arch/alpha/stand/boot/boot.c
+++ b/sys/arch/alpha/stand/boot/boot.c
@@ -1,4 +1,4 @@
-/* $NetBSD: boot.c,v 1.3 1995/06/28 00:58:48 cgd Exp $ */
+/* $NetBSD: boot.c,v 1.4 1995/11/23 02:39:27 cgd Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -39,15 +39,16 @@
*/
#include <lib/libsa/stand.h>
+#include <lib/libkern/libkern.h>
#include <sys/param.h>
#include <sys/exec.h>
#include <machine/prom.h>
-#include "../../include/coff.h"
+#include "include/coff.h"
#define _KERNEL
-#include "../../include/pte.h"
+#include "include/pte.h"
static int aout_exec __P((int, struct exec *, u_int64_t *));
static int coff_exec __P((int, struct exechdr *, u_int64_t *));
diff --git a/sys/arch/alpha/stand/boot/conf.c b/sys/arch/alpha/stand/boot/conf.c
index 9cc3d1b6621..4e81e277451 100644
--- a/sys/arch/alpha/stand/boot/conf.c
+++ b/sys/arch/alpha/stand/boot/conf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: conf.c,v 1.2 1995/02/16 02:32:54 cgd Exp $ */
+/* $NetBSD: conf.c,v 1.3 1995/11/23 02:39:31 cgd Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -41,11 +41,11 @@
#include <lib/libsa/stand.h>
#include <lib/libsa/ufs.h>
-int errno;
-int noioctl __P((void));
+#include "disk.h"
+
+int diskopen __P((struct open_file *, ...)); /* XXX */
-int diskstrategy(), diskopen(), diskclose();
-#define diskioctl noioctl
+int errno;
struct devsw devsw[] = {
{ "disk", diskstrategy, diskopen, diskclose, diskioctl }, /*0*/
diff --git a/sys/arch/alpha/stand/boot/libsa/devopen.c b/sys/arch/alpha/stand/boot/devopen.c
index 78a8cc8efc1..33c5695b286 100644
--- a/sys/arch/alpha/stand/boot/libsa/devopen.c
+++ b/sys/arch/alpha/stand/boot/devopen.c
@@ -1,4 +1,4 @@
-/* $NetBSD: devopen.c,v 1.2 1995/02/16 02:33:04 cgd Exp $ */
+/* $NetBSD: devopen.c,v 1.1 1995/11/23 02:39:37 cgd Exp $ */
/*-
* Copyright (c) 1992, 1993
@@ -57,7 +57,7 @@ devopen(f, fname, file)
char namebuf[20];
int rc;
- cp = fname;
+ cp = (char *)fname;
ncp = namebuf;
/* look for a string like '5/rz0/vmunix' or '5/rz3f/vmunix */
diff --git a/sys/arch/alpha/stand/boot/disk.c b/sys/arch/alpha/stand/boot/disk.c
index f03c0bc2daa..c80cc60a911 100644
--- a/sys/arch/alpha/stand/boot/disk.c
+++ b/sys/arch/alpha/stand/boot/disk.c
@@ -1,4 +1,4 @@
-/* $NetBSD: disk.c,v 1.2 1995/02/16 02:32:55 cgd Exp $ */
+/* $NetBSD: disk.c,v 1.3 1995/11/23 02:39:40 cgd Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -45,6 +45,8 @@
#include <machine/prom.h>
+#include "disk.h"
+
struct disk_softc {
int sc_fd; /* PROM channel number */
int sc_ctlr; /* controller number */
@@ -54,19 +56,24 @@ struct disk_softc {
};
int
-diskstrategy(devdata, rw, bn, reqcnt, addr, cnt)
+diskstrategy(devdata, rw, bn, reqcnt, addrvoid, cnt)
void *devdata;
int rw;
daddr_t bn;
- u_int reqcnt;
- char *addr;
- u_int *cnt; /* out: number of bytes transfered */
+ size_t reqcnt;
+ void *addrvoid;
+ size_t *cnt; /* out: number of bytes transfered */
{
+ char *addr = addrvoid;
struct disk_softc *sc;
struct partition *pp;
prom_return_t ret;
int s;
+ if ((reqcnt & 0xffffff) != reqcnt ||
+ reqcnt == 0)
+ asm("call_pal 0");
+
twiddle();
/* Partial-block transfers not handled. */
@@ -92,7 +99,8 @@ diskopen(f, ctlr, unit, part)
{
struct disklabel *lp;
prom_return_t ret;
- int cnt, devlen, i;
+ size_t cnt;
+ int devlen, i;
char *msg, buf[DEV_BSIZE], devname[32];
static struct disk_softc *sc;
diff --git a/sys/arch/alpha/stand/boot/disk.h b/sys/arch/alpha/stand/boot/disk.h
new file mode 100644
index 00000000000..c60583c11e2
--- /dev/null
+++ b/sys/arch/alpha/stand/boot/disk.h
@@ -0,0 +1,7 @@
+/* $NetBSD: disk.h,v 1.1 1995/11/23 02:39:42 cgd Exp $ */
+
+int diskstrategy __P((void *, int, daddr_t, size_t, void *, size_t *));
+/* int diskopen __P((struct open_file *, int, int, int)); */
+int diskclose __P((struct open_file *));
+
+#define diskioctl noioctl
diff --git a/sys/arch/alpha/stand/boot/libsa/filesystem.c b/sys/arch/alpha/stand/boot/filesystem.c
index 514e6e809bf..8f963e9e673 100644
--- a/sys/arch/alpha/stand/boot/libsa/filesystem.c
+++ b/sys/arch/alpha/stand/boot/filesystem.c
@@ -1,4 +1,4 @@
-/* $NetBSD: filesystem.c,v 1.2 1995/02/16 02:33:05 cgd Exp $ */
+/* $NetBSD: filesystem.c,v 1.1 1995/11/23 02:39:46 cgd Exp $ */
/*
* Copyright (c) 1993 Philip A. Nelson.
diff --git a/sys/arch/alpha/stand/boot/libsa/Makefile b/sys/arch/alpha/stand/boot/libsa/Makefile
deleted file mode 100644
index c84169984f7..00000000000
--- a/sys/arch/alpha/stand/boot/libsa/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-# $NetBSD: Makefile,v 1.2 1995/02/16 02:33:03 cgd Exp $
-
-LIB= sa
-SRCS= alloc.c bzero.c close.c dev.c devopen.c disklabel.c getfile.c \
- gets.c ioctl.c lseek.c open.c printf.c read.c strcmp.c ufs.c \
- write.c bcopy.c filesystem.c strlen.c ntohl.c
-
-.PATH: ../../../../../lib/libsa ../../../../../lib/libkern
-NOPIC=nopic
-NOPROFILE=noprofile
-
-.include <bsd.lib.mk>
-
-CFLAGS= -mno-fp-regs -I../../../../.. -I. -DCOMPAT_UFS
diff --git a/sys/arch/alpha/stand/boot/newvers.sh b/sys/arch/alpha/stand/boot/newvers.sh
index 8e4737c48a6..135bb35fd58 100644
--- a/sys/arch/alpha/stand/boot/newvers.sh
+++ b/sys/arch/alpha/stand/boot/newvers.sh
@@ -1,6 +1,6 @@
#!/bin/sh -
#
-# $NetBSD: newvers.sh,v 1.1 1995/02/13 23:08:10 cgd Exp $
+# $NetBSD: newvers.sh,v 1.2 1995/11/23 02:39:48 cgd Exp $
#
# Copyright (c) 1984, 1986, 1990, 1993
# The Regents of the University of California. All rights reserved.
@@ -36,7 +36,7 @@
# @(#)newvers.sh 8.1 (Berkeley) 4/20/94
u=${USER-root} h=`hostname` t=`date`
-r=`head -1 version`
+r=`head -1 $1`
echo "char bootprog_name[] = \"NetBSD/Alpha boot\";" > vers.c
echo "char bootprog_rev[] = \"${r}\";" >> vers.c
diff --git a/sys/arch/alpha/stand/boot/prom.c b/sys/arch/alpha/stand/boot/prom.c
deleted file mode 100644
index 92e58cfefe3..00000000000
--- a/sys/arch/alpha/stand/boot/prom.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/* $NetBSD: prom.c,v 1.3 1995/06/28 00:58:49 cgd Exp $ */
-
-/*
- * Mach Operating System
- * Copyright (c) 1992 Carnegie Mellon University
- * All Rights Reserved.
- *
- * Permission to use, copy, modify and distribute this software and its
- * documentation is hereby granted, provided that both the copyright
- * notice and this permission notice appear in all copies of the
- * software, derivative works or modified versions, and any portions
- * thereof, and that both notices appear in supporting documentation.
- *
- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
- * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- *
- * Carnegie Mellon requests users of this software to return to
- *
- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
- * School of Computer Science
- * Carnegie Mellon University
- * Pittsburgh PA 15213-3890
- *
- * any improvements or extensions that they make and grant Carnegie Mellon
- * the rights to redistribute these changes.
- */
-
-#include <sys/types.h>
-
-#include <machine/prom.h>
-#include <machine/rpb.h>
-
-int console;
-
-void
-init_prom_calls()
-{
- extern struct prom_vec prom_dispatch_v;
- struct rpb *r;
- struct crb *c;
- char buf[4];
-
- r = (struct rpb *)HWRPB_ADDR;
- c = (struct crb *)((u_int8_t *)r + r->rpb_crb_off);
-
- prom_dispatch_v.routine_arg = c->crb_v_dispatch;
- prom_dispatch_v.routine = c->crb_v_dispatch->code;
-
- /* Look for console tty. */
- prom_getenv(PROM_E_TTY_DEV, buf, 4);
- console = buf[0] - '0';
-}
-
-void
-OSFpal()
-{
- struct rpb *r;
- struct ctb *t;
- struct pcs *p;
- long result;
- int offset;
-
- r = (struct rpb *)HWRPB_ADDR;
- offset = r->rpb_pcs_size * cpu_number();
- p = (struct pcs *)((u_int8_t *)r + r->rpb_pcs_off + offset);
-
- printf("VMS PAL revision: 0x%lx\n",
- p->pcs_palrevisions[PALvar_OpenVMS]);
- printf("OSF PAL rev: 0x%lx\n", p->pcs_palrevisions[PALvar_OSF1]);
- (void)switch_palcode();
- printf("Switch to OSF PAL code succeeded.\n");
-}
-
-int
-getchar()
-{
- prom_return_t ret;
-
- for (;;) {
- ret.bits = prom_dispatch(PROM_R_GETC, console);
- if (ret.u.status == 0 || ret.u.status == 1)
- return (ret.u.retval);
- }
-}
-
-void
-putchar(c)
- int c;
-{
- prom_return_t ret;
- char cbuf;
-
- if (c == '\r' || c == '\n') {
- cbuf = '\r';
- do {
- ret.bits = prom_dispatch(PROM_R_PUTS, console,
- &cbuf, 1);
- } while ((ret.u.retval & 1) == 0);
- cbuf = '\n';
- } else
- cbuf = c;
- do {
- ret.bits = prom_dispatch(PROM_R_PUTS, console, &cbuf, 1);
- } while ((ret.u.retval & 1) == 0);
-}
-
-int
-prom_getenv(id, buf, len)
- int id, len;
- char *buf;
-{
- prom_return_t ret;
-
- ret.bits = prom_dispatch(PROM_R_GETENV, id, buf, len-1);
- if (ret.u.status & 0x4)
- ret.u.retval = 0;
- buf[ret.u.retval] = '\0';
-
- return (ret.u.retval);
-}
-
-int
-prom_open(dev, len)
- char *dev;
- int len;
-{
- prom_return_t ret;
-
- ret.bits = prom_dispatch(PROM_R_OPEN, dev, len);
- if (ret.u.status & 0x4)
- return (-1);
- else
- return (ret.u.retval);
-}
diff --git a/sys/arch/alpha/stand/boot/prom_disp.S b/sys/arch/alpha/stand/boot/prom_disp.S
deleted file mode 100644
index 8387dadc9b2..00000000000
--- a/sys/arch/alpha/stand/boot/prom_disp.S
+++ /dev/null
@@ -1,116 +0,0 @@
-/* $NetBSD: prom_disp.S,v 1.2 1995/02/16 02:32:57 cgd Exp $ */
-
-/*
- * Copyright (c) 1994, 1995 Carnegie-Mellon University.
- * All rights reserved.
- *
- * Author: Chris G. Demetriou
- *
- * Permission to use, copy, modify and distribute this software and
- * its documentation is hereby granted, provided that both the copyright
- * notice and this permission notice appear in all copies of the
- * software, derivative works or modified versions, and any portions
- * thereof, and that both notices appear in supporting documentation.
- *
- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
- * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- *
- * Carnegie Mellon requests users of this software to return to
- *
- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
- * School of Computer Science
- * Carnegie Mellon University
- * Pittsburgh PA 15213-3890
- *
- * any improvements or extensions that they make and grant Carnegie the
- * rights to redistribute these changes.
- */
-
-#ifndef LOCORE
-#include "../../include/asm.h"
-#include "../../include/prom.h"
-#include "../../include/rpb.h"
-#endif
-
- .globl prom_dispatch_v
- .comm prom_dispatch_v 16
-
- .text
- .align 4
-
-/*
- * Dispatcher routine. Implements prom's calling machinery, saves our
- * callee-saved registers as required by C.
- */
-#define D_RA (7*8)
-#define D_S0 (8*8)
-#define D_S1 (9*8)
-#define D_S2 (10*8)
-#define D_S3 (11*8)
-#define D_S4 (12*8)
-#define D_S5 (13*8)
-#define D_S6 (14*8)
-#define DISPATCH_FRAME_SIZE (15*8)
-#define DISPATCH_REGS IM_RA|IM_S0|IM_S1|IM_S2|IM_S3|IM_S4|IM_S5|IM_S6
-
-NESTED(prom_dispatch, 5, DISPATCH_FRAME_SIZE, ra, DISPATCH_REGS, 0)
-
-/* ldgp gp, 0(pv)*/
- SETGP(pv)
-
- lda sp, -DISPATCH_FRAME_SIZE(sp)
- stq ra, D_RA(sp)
- stq s0, D_S0(sp)
- stq s1, D_S1(sp)
- stq s2, D_S2(sp)
- stq s3, D_S3(sp)
- stq s4, D_S4(sp)
- stq s5, D_S5(sp)
- stq s6, D_S6(sp)
-
- /* Lord have mercy because.. I would not. */
-/* #define STUPID_PROM_IS_32_BITS */
-#ifdef STUPID_PROM_IS_32_BITS
- ldah s0, 0x2000(zero) /* hack for hack */
- lda s0, (0x2000-8)(s0)
-
- stq sp, 0(s0)
- or s0, zero, sp
-#endif /* STUPID_PROM_IS_32_BITS */
-
- lda pv, prom_dispatch_v
- ldq v0, 0(pv) /* routine */
- ldq pv, 8(pv) /* routine_arg */
-
- jsr ra, (v0)
-
-#ifdef STUPID_PROM_IS_32_BITS
- ldah s0, 0x2000(zero) /* hack for hack */
- lda s0, (0x2000-8)(s0)
-
- ldq sp, 0(s0)
-#endif /* STUPID_PROM_IS_32_BITS */
-
- ldq ra, D_RA(sp)
- ldq s0, D_S0(sp)
- ldq s1, D_S1(sp)
- ldq s2, D_S2(sp)
- ldq s3, D_S3(sp)
- ldq s4, D_S4(sp)
- ldq s5, D_S5(sp)
- ldq s6, D_S6(sp)
- lda sp, DISPATCH_FRAME_SIZE(sp)
- RET
-END(prom_dispatch)
-
-#undef D_RA
-#undef D_S0
-#undef D_S1
-#undef D_S2
-#undef D_S3
-#undef D_S4
-#undef D_S5
-#undef D_S6
-#undef DISPATCH_FRAME_SIZE
-#undef DISPATCH_REGS
diff --git a/sys/arch/alpha/stand/boot/start.S b/sys/arch/alpha/stand/boot/start.S
deleted file mode 100644
index fe7b93a23dc..00000000000
--- a/sys/arch/alpha/stand/boot/start.S
+++ /dev/null
@@ -1,81 +0,0 @@
-/* $NetBSD: start.S,v 1.2 1995/02/16 02:32:59 cgd Exp $ */
-
-/*
- * Mach Operating System
- * Copyright (c) 1992 Carnegie Mellon University
- * All Rights Reserved.
- *
- * Permission to use, copy, modify and distribute this software and its
- * documentation is hereby granted, provided that both the copyright
- * notice and this permission notice appear in all copies of the
- * software, derivative works or modified versions, and any portions
- * thereof, and that both notices appear in supporting documentation.
- *
- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
- * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- *
- * Carnegie Mellon requests users of this software to return to
- *
- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
- * School of Computer Science
- * Carnegie Mellon University
- * Pittsburgh PA 15213-3890
- *
- * any improvements or extensions that they make and grant Carnegie Mellon
- * the rights to redistribute these changes.
- */
-
-#include "../../include/asm.h"
-
-/*
- * start --
- * Entry point for boot/standalone programs.
- *
- * Arguments:
- * a0 long (first free physical page)
- *
- * This is where the prom comes to. Leaves all exception and interrupts
- * to prom, runs off prom's stack too. No return values.
- */
- .text
- .set noreorder /* don't reorder instructions */
-
-#define ENTRY_FRAME 32
-
-NESTED(start, 1, ENTRY_FRAME, ra, 0, 0)
- br pv,1f /* XXX I have no idea what this does. */
-1: SETGP(pv)
-
- lda sp,start /* start stack below text */
- lda sp,-ENTRY_FRAME(sp)
-
- CALL(main) /* transfer to C */
-
- call_pal PAL_halt /* halt if we ever return */
-END(start)
-
-/*
- * Dummy routine for GCC2.
- */
-LEAF(__main,0)
- RET
-END(__main)
-
-/*
- * cpu_number
- * Return the cpu number, using the whami instruction.
- */
-LEAF(cpu_number, 0)
- call_pal PAL_VMS_mfpr_whami
- RET
-END(cpu_number)
-
-/*
- * halt
- * Halt
- */
-LEAF(halt, 0)
- call_pal PAL_halt
- RET
-END(halt)
diff --git a/sys/arch/alpha/stand/boot/version b/sys/arch/alpha/stand/boot/version
index d6a53b8ab55..a7634431ffb 100644
--- a/sys/arch/alpha/stand/boot/version
+++ b/sys/arch/alpha/stand/boot/version
@@ -1,5 +1,7 @@
-$NetBSD: version,v 1.3 1995/06/28 00:58:52 cgd Exp $
+$NetBSD: version,v 1.4 1995/11/23 02:40:09 cgd Exp $
1.1: Initial version
1.2: don't forget the Id string!
1.3: make it work on AlphaStations
+1.4: Re-import from master sources.
+1.5: Complete rewrite of boot block code.