MakeDoveMicroBoot -- facilities

MakeDoveMicroBoot is a Mesa program which combines 80186 object code files and/or microcode object files into a single file whose format is known to the Dove bootloader. It is invoked via the Tajo Executive; the format of a command line is

MakeDoveMicroBoot <outfile> ← <infile/sw> [<infile/sw>] ...

where <outfile> is the name of the output file (suffixed by ".db" if no extension is supplied), and <infile/sw> is the name of an input file followed by optional switches. Any number of input files may be supplied, and they are put into the output file in order of appearance. Input file types are identified by the filename extension. Valid types and switches are as follows:

Microcode object files (extension = ".fb"): either Daybreak or Daisy format microcode object files can be loaded. Four classes of switch characters are supported:  A "B" indicates that the following number is a bank number.  Thus B0 implies the first bank, and B1 implies the second bank.  A "C" indicates that the following number is a bank count.  This is used by booting to detemine if the microcode object file should be loaded or ignored.  Booting will read the EEProm to determine the number of 4K banks of control store it has.  If it has only one bank it will ignore microcode object files that were formatted by MakeDoveMicroBoot with the C2 switch.  It will load microcode object files with the C0 or C2 switches.  Similarly if a machine has 2 banks it will ignore C1 files and load only C2 and C0 files.  C0 is the default and provides backward compatability.  The C switch is used to allow microcode for machines with different numbers of banks to live in the same MesaDove.db file.  A machine identifier ("K" for Daybreak or "Y" for Daisy) tells which microcode format is contained in the file; a start mode character ("I" for initialization or "S" for system) indicates whether the file contains initialization code which will terminate, or operating system code which will continue to run. Defaults are bank 0, C0 (load regarless of EEProm contents), Daybreak format, and no start mode (microcode will be loaded but not executed).  Note that I and S switches on Daybreak microcode will not be handled correctly by booting.

80186 object code files (extension = ".loc"): absolute-location 80186 object code files can be loaded. There are 3 kinds of switches for loc files:  a code segment specifier, m or l.  The m switch says the given module should be loaded into main memory.  The l switch which is the default says it should be loaded into local ram.  If a hexadecimal number is present it is taken to be the address where code execution should start.  It will override any start address given in the module.  The S and I switches used for microcode object files have the same meaning for loc files.  Do not use more than one S switch.

MicroBoot files (extension = ".db"): files previously created by MakeDoveMicroBoot may be combined into a single file, prefixed by a table of offsets to the starting locations of each db. Switches are ignored. Files with extension ".db" may not be combined with files of any other type.  While MakeDoveMicroBoot will not have trouble with the recursive application of this feature, booting may well die.  Therefore make sure that any db files you feed to MakeDoveMicroBoot are combinations of loc and fb files not combinations of db files.

MakeDoveMicroBoot also creates a file with the same name as the output file but with the extension ".ts". This file contains the file names and create dates for all of the input files and the output file. It also contains the switches used for each input file.

A run can be prematurely aborted by hitting the stop key.

This document can be obtained by typing "Help MakeDoveMicroBoot" in the Executive.