view docs/nitros9guide/os9gen.refentry @ 2857:d5220b220313 lwtools-port

Makefiles: Use native cp for copying dsk images The "os9 copy" is not able to do this on Cygwin, and is not the right tool for the job anyway. Thanks to Bob Devries for reporting this issue!
author Tormod Volden <debian.tormod@gmail.com>
date Sat, 13 Jul 2013 11:53:36 +0200
parents 4dae346c4969
children
line wrap: on
line source

<refentry id="os9gen">
<refnamediv>
<refname>OS9GEN</refname>
<refpurpose>Build and Link a Bootstrap File</refpurpose>
</refnamediv>

<refsynopsisdiv>
<cmdsynopsis>
<command>os9gen</command>
<arg choice="plain">
  <replaceable>device name</replaceable>
</arg>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Description</title>
<para>
<command>OS9Gen</command> is used to create and link the <filename>OS9Boot</filename> file required on any
disk from which OS-9 is to be bootstrapped. <command>OS9Gen</command> is used to add
modules to an existing boot or to create an entirely new boot file.
If an exact copy of the existing <filename>OS9Boot</filename> file is desired, the
<command>cobbler</command> command should be used instead.
</para>
<para>
The name of the device on which the <filename>OS9Boot</filename> file is to be
installed is passed to <command>OS9Gen</command> as a command line parameter. <command>OS9Gen</command> then
creates a working file called <filename>TempBoot</filename> on the device specified.
Next it reads file names (pathlists) from its standard input, one
pathlist per line. Every file named is opened and copied to
<filename>TempBoot</filename>. This is repeated until end-of-file or a blank line is
reached on <command>OS9Gen</command>'s standard input. All boot files must contain the
OS-9 component modules listed in section <xref linkend="sec6.1"/>.
</para>
<para>
After all input files have been copied to <filename>TempBoot</filename>, the old
<filename>OS9Boot</filename> file, if present, is deleted. <filename>TempBoot</filename> is then renamed
to <filename>OS9Boot</filename>, and its starting address and size is linked in the
disk's Identification Sector (LSN 0) for use by the OS-9 bootstrap
firmware.
</para>
<para>
WARNING: Any <filename>OS9Boot</filename> file must be stored in physically contiguous
sectors. Therefore, <command>OS9Gen</command> is normally used on a freshly formatted
disk. If the <filename>OS9Boot</filename> file is fragmented, <command>OS9Gen</command> will print a
warning message indicated the disk cannot be used to bootstrap OS-9.
</para>
<para>
The list of file names given to <command>OS9Gen</command> can be entered from a keyboard, or
<command>OS9Gen</command>'s standard input may be redirected to a text file
containing a list of file names (pathlists) . If names are entered
manually, no prompts are given, and the end-of-file key (usually
ESCAPE) or a blank line is entered after the line containing the
last pathlist.
</para>
<para>
For more information see: <xref linkend="sec6"/>,
<xref linkend="sec6.1"/>, <xref linkend="sec6.6"/>
</para>
</refsect1>
<refsect1><title>Examples</title>
<para>
To manually install a boot file on device &quot;d1&quot; which is an exact
copy of the <filename>OS9Boot</filename> file on device &quot;d0&quot;:
</para>
<screen>
OS9: os9gen /d1          (run OS9Gen)
/d0/os9boot              (enter file to be installed)
[ESCAPE]                 (enter end-of-file)
</screen>
<para>
To manually install a boot file on device &quot;d1&quot; which is a copy of
the <filename>OS9Boot</filename> file on device &quot;d0&quot; with the addition of
modules stored in the files <filename>/d0/tape.driver</filename> and <filename>/d2/video.driver</filename>:
</para>
<screen>
OS9: os9gen /d1          (run OS9Gen)
/d0/os9boot              (enter main boot file name)
/d0/tape.driver          (enter name of first file to be added)
/d2/video.driver         (enter name of second file to be added)
[ESCAPE]                 (enter end-of-file)
</screen>
<para>
As above, but automatically by redirecting <command>OS9Gen</command> standard input:
</para>
<screen>
OS9: build /d0/bootlist  (use <command>build</command> to create file <filename>bootlist</filename>)
? /d0/os9boot            (enter first file name)
? /d0/tape.driver        (enter second file name)
? /d2/video.driver       (enter third file name)
? [RETURN]               (terminate <command>build</command>)
OS9: os9gen /d1 &lt;/d0/bootlist  (run OS9gen with redirected input)
</screen>
</refsect1>
</refentry>