[Front] [Next Chapter]

Introduction to Embedding Caldera DR-DOS

This chapter outlines the benefits of embedding Caldera(tm) DR-DOS(tm) in ROM, and explains the factors that have to be considered when you decide what type of implementation you require. The implementation may offer a ROMDISK, to allow the system to be booted without conventional disks, or it may allow the DOS kernel, the DOS BIOS, and applications to run from ROM.

Why Put DOS in ROM ?

The main advantage of embedding DR-DOS in ROM is for diskless devices such as set-top boxes, PDA's, cash registers, etc.

Another advantage in executing DR-DOS from ROM, even for conventional computers with disks, is that more Transient Program Area (TPA) is available for application programs. In some implementations of DOS systems, the DOS kernel code occupies at least 40Kb of RAM, but when the DOS kernel executes from ROM this RAM becomes available for applications. In addition, some of the BIOS code can also execute from ROM, freeing more TPA, typically 3 to 4 Kbytes. Many non-PC compatible computers have as little as 128Kb of RAM as standard, and a large percentage of this RAM can be freed for applications if the DOS kernel runs from ROM.

Another use of DR-DOS in ROM is for small computers that are not equipped with conventional hard disk drives or diskette drives, but that may still require applications and DOS to be available when the computer is switched on. They may, for example, provide a disk system as an option, as in many home and educational computers. Other notebook computers use small memory cards; if the DOS system is in an inexpensive EPROM or a masked ROM, the memory card space can be used for applications. If sufficient ROM space is available, some of the DR-DOS utilities can also be placed in ROM. Caldera advises that the ROMs are addressed as a "ROMDISK". This greatly simplifies the building and maintenance of the ROM-based system. A ROMDISK allows any mixture of utilities and applications to be loaded and executed just as if a hard disk were being used.

Other computers that may require a ROM-based system are those that are:

Other typical applications for putting DR-DOS in ROM are:

Supporting Flash ROM

It is possible to implement DR-DOS in a flash ROM environment which allows the system to have read and write capabilities. When creating the ROMDISK, you need to carefully consider what structure of ROMDISK you need to create. Read the following section to determine the type of ROMDISK you need to implement in your system. The two types of ROMDISK are called Fixed File Format (FFF) and FAT.


To decide which type of ROMDISK you need to create, refer to the following table to see which operations you need to do on your particular hardware.
OperationFixed File Format (FFF)FATExplanation
Boot DR-DOS from ROM YES YES Either type can be used
Read Only YES YES Either type can be used
Read/Write NO YES Read/write operations can only be
done on a FAT ROMDISK.
Dynamic file updates can be performed.
less than 1 MB capacity
in hardware. Less than
100 files/directories,
for example.)
YES YES However, it is recommended that
you use the Fixed File Format ROMDISK.
Greater than 1 MB capacity YES YES However, it is recommended that you
use the FAT ROMDISK.

Advantages of a Fixed File Format (FFF) ROMDISK

Updating System Software

When DOS is in ROM, the system software can only be modified by changing the ROM set. However, this manualís example implementation using a ROMDISK simplifies the procedure for changing system software. The order of the ROMs is not fixed irrevocably, and it is often possible to add extra ROMs, or to swap them around without the necessity of changing the whole ROM set.

Hardware design

Another consideration is that on some machines the hardware design makes execution of the DOS kernel from ROM slower than execution from RAM. In practice, though, the longer access time of the DOS kernel in ROM is only noticeable if the application makes constant DOS calls and the machineís ROM BIOS is executing either in faster ROM or in shadow RAM. The sample DOS implementation in this manual illustrates how the user can be given the option of changing to RAM execution on those machines or applications where speed of execution is an issue. Note though that a ROMDISK is always faster than physically accessing a hard disk.


Some of the DOS BIOS can execute from ROM. However, part of the BIOS is compressed in ROM, and any OEM-modified device drivers in the BIOS must not use or reference the compressed segments (INITCODE, INITDATA, INITPSP and INITENV). Programmers should refer to the device driver source code examples provided with the BIOS kit.

In a PC-compatible system, as described in Chapter 3, "Example ROM Implementation," the DOS BIOS and the DOS kernel require less than 64 Kbytes of ROM. This allows the system to execute from ROM with a 64 Kbyte memory window. The computer's ROM BIOS will, typically, require 16, 32, or 64 Kbytes in addition to the 64 Kbytes for the DOS BIOS and kernel. The DR-DOS COMMAND.COM file, or an embedded application can be in the paged part of the ROMDISK, and the amount of ROM they require can be determined by adding up the file sizes.

NOTE: Please check your ROM BIOS licence.

In this manual reference is made to the ROM BIOS. The ROM BIOS is normally supplied with your computer by the original equipment manufacturer (OEM). The ROM BIOS can only be used and copied under the terms and conditions of the license issued to you by the original equipment manufacturer or the supplier of your ROM BIOS. If you are in any doubt about these conditions, please contact your original equipment manufacturer or the supplier of your ROM BIOS.

Where To Go From Here

Once you have decided upon the type of ROMDISK you need to create, the next chapter describes the implementation procedure and how you build the ROMDISK. Chapter 3 "Example ROM Implementations" gives some examples of different types of implementations.

[Front] [Next Chapter]

Copyright © 1976, 1982, 1988, 1991, 1992 and 1997 Caldera, Inc. All rights reserved.