summaryrefslogtreecommitdiff
path: root/sys/arch/vax/stand/xxboot/start.S
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/vax/stand/xxboot/start.S')
-rw-r--r--sys/arch/vax/stand/xxboot/start.S44
1 files changed, 2 insertions, 42 deletions
diff --git a/sys/arch/vax/stand/xxboot/start.S b/sys/arch/vax/stand/xxboot/start.S
index ead88591dc4..df019026dc9 100644
--- a/sys/arch/vax/stand/xxboot/start.S
+++ b/sys/arch/vax/stand/xxboot/start.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: start.S,v 1.2 2003/11/07 10:16:45 jmc Exp $ */
+/* $OpenBSD: start.S,v 1.3 2011/07/06 18:32:59 miod Exp $ */
/* $NetBSD: start.S,v 1.1 2002/02/24 01:04:26 matt Exp $ */
/*
* Copyright (c) 1995 Ludd, University of Lule}, Sweden.
@@ -64,8 +64,7 @@ _C_LABEL(start):
brb from_0x08 # skip ...
.org 0x0C # 11/750 & 8200 starts here
- movzbl $1,_C_LABEL(from)# We booted from "old" rom.
- brw cont_750
+ halt # not supported
from_0x00: # uVAX from TK50
@@ -132,45 +131,6 @@ start_vmb:
_C_LABEL(from):
.long 0
-/*
- * After bootblock (LBN0) has been loaded into the first page
- * of good memory by 11/750's ROM-code (transfer address
- * of bootblock-code is: base of good memory + 0x0C) registers
- * are initialized as:
- * R0: type of boot-device
- * 0: Massbus device
- * 1: RK06/RK07
- * 2: RL02
- * 17: UDA50
- * 35: TK50
- * 64: TU58
- * R1: (UBA) address of UNIBUS I/O-page
- * (MBA) address of boot device's adapter
- * R2: (UBA) address of the boot device's CSR
- * (MBA) controller number of boot device
- * R6: address of driver subroutine in ROM
- *
- * cont_750 reads in LBN1-15 for further execution.
- */
-cont_750:
- movl $_C_LABEL(start), sp # move stack to avoid clobbering the code
- pushr $0x131 # save clobbered registers
- clrl r4 # %r4 == # of blocks transferred
- movab _C_LABEL(start),r5 # %r5 have base address for next transfer
- pushl r5 # ...on stack also (Why?)
-1: incl r4 # increment block count
- movl r4,r8 # LBN is in %r8 for rom routine
- addl2 $0x200,r5 # Increase address for next read
- cmpl $16,r4 # read 15 blocks?
- beql 2f # Yep
- movl r5,(sp) # move address to stack also
- jsb (r6) # read 512 bytes
- blbs r0,1b # jump if read succeeded
- halt # otherwise die...
-2: tstl (sp)+ # remove boring arg from stack
- popr $0x131 # restore clobbered registers
- brw start_all # Ok, continue...
-
/* uVAX main entry is at the start of the second disk block. This is
* needed for multi-arch CD booting where multiple architecture need
* to shove stuff in boot block 0.