696
|
1 <!--
|
|
2 The author has not been contacted about adding this article to the
|
|
3 documentation set.
|
|
4 -->
|
|
5 <article>
|
|
6 <articleinfo>
|
|
7 <title>The OS-9 Boot Process</title>
|
|
8 <subtitle>COCO Computer</subtitle>
|
|
9 <author><firstname>Alan</firstname><surname>DeKok</surname>
|
|
10 <affiliation>
|
|
11 <address>
|
|
12 <email>aland@striker.ottawa.on.ca</email>
|
|
13 </address>
|
|
14 </affiliation>
|
|
15 </author>
|
|
16 <revhistory>
|
|
17 <revision>
|
|
18 <revnumber>1</revnumber>
|
|
19 <date>Tue Apr 29 21:53:46 EDT 1997</date>
|
|
20 <revremark>Last update</revremark>
|
|
21 </revision>
|
|
22 </revhistory>
|
|
23 </articleinfo>
|
|
24 <orderedlist>
|
|
25 <listitem><para>Typing 'DOS' at the DECB 'OK' prompt loads in track 34 off of the disk.</para></listitem>
|
|
26
|
|
27 <listitem><para> Track 34 gets loaded into address $2600, and execution of code
|
|
28 starts at $2602.</para></listitem>
|
|
29
|
|
30 <listitem><para> $2602 contains a BRA to the execution point of the REL module.</para></listitem>
|
|
31
|
|
32 <listitem><para> REL copies the boot track ($2600 to $3800) to address $ED00, and jumps to
|
|
33 another routine inside of REL, at the new address.</para></listitem>
|
|
34
|
|
35 <listitem><para> REL then jumps to OS9p1, which sets up system variables, the system
|
|
36 memory map, system call tables, IRQ & SWI setup, and calls BOOT.</para></listitem>
|
|
37
|
|
38 <listitem><para> BOOT reads sector $000000 off of a disk, and finds out where the
|
|
39 OS9Boot file is.</para></listitem>
|
|
40
|
|
41 <listitem><para> BOOT requests system memory for the size of OS9Boot, seeks to where
|
|
42 OS9Boot is, and loads it directly into RAM.</para></listitem>
|
|
43
|
|
44 <listitem><para> It then returns to OS9p1, after setting up pointers in low memory to
|
|
45 the OS9Boot file.</para></listitem>
|
|
46
|
|
47 <listitem><para> OS9p1 links to OS9p2, and executes it.</para></listitem>
|
|
48
|
|
49 <listitem><para> OS9p2 sets up more system calls, links to the clock module, and
|
|
50 calls it.</para></listitem>
|
|
51
|
|
52 <listitem><para> Clock sets up some more system calls, starts multitasking, and
|
|
53 returns to OS9p2.</para></listitem>
|
|
54
|
|
55 <listitem><para> OS9p2 then does F$Chain of 'CC3Go'. This prints a start up banner,
|
|
56 and runs your 'startup' file through a shell.</para></listitem>
|
|
57 </orderedlist>
|
|
58 </article>
|