changeset 694:4a92d9691066

Added a (very) short article on the coco boot process. Hopefully someone will flesh it out.
author roug
date Tue, 31 Dec 2002 12:29:12 +0000
parents 908da66d0f6e
children 693acf8645b1
files docs/articles/boot_process.article
diffstat 1 files changed, 61 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/articles/boot_process.article	Tue Dec 31 12:29:12 2002 +0000
@@ -0,0 +1,61 @@
+<?xml version="1.0" ?>
+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+   "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+<!--
+    The author has not been contacted about adding this article to the
+    documentation set.
+-->
+<article>
+<articleinfo>
+<title>The OS-9 Boot Process</title>
+<subtitle>COCO Computer</subtitle>
+<author><firstname>Alan</firstname><surname>DeKok</surname>
+<affiliation>
+<address>
+<email>aland@striker.ottawa.on.ca</email>
+</address>
+</affiliation>
+</author>
+<revhistory>
+<revision>
+    <revnumber>1</revnumber>
+    <date>Tue Apr 29 21:53:46 EDT 1997</date>
+    <revremark>Last update</revremark>
+</revision>
+</revhistory>
+</articleinfo>
+<orderedlist>
+<listitem><para>Typing 'DOS' at the DECB 'OK' prompt loads in track 34 off of the disk.</para></listitem>
+
+<listitem><para>  Track 34 gets loaded into address $2600, and execution of code
+starts at $2602.</para></listitem>
+
+<listitem><para>  $2602 contains a BRA to the execution point of the REL module.</para></listitem>
+
+<listitem><para>  REL copies the boot track ($2600 to $3800) to address $ED00, and jumps to
+another routine inside of REL, at the new address.</para></listitem>
+
+<listitem><para>  REL then jumps to OS9p1, which sets up system variables, the system
+memory map, system call tables, IRQ &amp; SWI setup, and calls BOOT.</para></listitem>
+
+<listitem><para>  BOOT reads sector $000000 off of a disk, and finds out where the
+OS9Boot file is.</para></listitem>
+
+<listitem><para>  BOOT requests system memory for the size of OS9Boot, seeks to where
+OS9Boot is, and loads it directly into RAM.</para></listitem>
+
+<listitem><para>  It then returns to OS9p1, after setting up pointers in low memory to
+the OS9Boot file.</para></listitem>
+
+<listitem><para>  OS9p1 links to OS9p2, and executes it.</para></listitem>
+
+<listitem><para>  OS9p2 sets up more system calls, links to the clock module, and
+calls it.</para></listitem>
+
+<listitem><para>  Clock sets up some more system calls, starts multitasking, and
+returns to OS9p2.</para></listitem>
+
+<listitem><para>  OS9p2 then does F$Chain of 'CC3Go'.  This prints a start up banner,
+and runs your 'startup' file through a shell.</para></listitem>
+</orderedlist>
+</article>