Research V7 development
[unix-history] / usr / src / cmd / standalone / srt0.s
CommitLineData
a570deab
KT
1/ Startup code for two-stage bootstrap
2
3/ non-UNIX instructions
4mfpi = 6500^tst
5stst = 170300^tst
6mtpi = 6600^tst
7mfpd = 106500^tst
8mtpd = 106600^tst
9spl = 230
10ldfps = 170100^tst
11stfps = 170200^tst
12wait = 1
13rtt = 6
14reset = 5
15/ trap = 104400
16
17PS = 177776
18
19.globl _end
20.globl _main, __rtt
21.globl _edata
22 jmp start
23
24/
25/ trap vectors
26/
27 trap;340
28 trap;341 / illegal instruction
29 trap;342 / BPT
30 trap;343 / IOT
31 trap;344 / POWER FAIL
32 trap;345 / EMT
33tvec:
34 start;346 / TRAP
35.=400^.
36.text
37
38
39start:
40 mov $340,*$PS
41 mov $trap,tvec
42/ fix up stack segment clobbered by trap
43 mov $1400,*$KDSA6
44 mov $157776,sp
45 mov $_edata,r0
46 mov $_end,r1
47 sub r0,r1
48 inc r1
49 clc
50 ror r1
511:
52 clr (r0)+
53 sob r1,1b
54 jsr pc,_main
55
56/ fix up stack to point at trap ps-pc pair
57/ so we can return to the bootstrap
58__rtt:
59 clr *$KDSA6
60 mov $140000,sp
61 rtt / we hope!
62 br .
63
64
65.globl _trap
66trap:
67 mov r0,-(sp)
68 mov r1,-(sp)
69 mov *$PS,-(sp)
70 jsr pc,_trap
71 tst (sp)+
72 mov (sp)+,r1
73 mov (sp)+,r0
74 rtt
75
76KDSA6 = 172374