ROM-DOS - DOS for the Embedded Systems

The essential DOS environment for embedded devices

ROM-DOS was introduced in 1989 as an MS-DOS compatible operating system engineered specifically for embedded developers. The most robust DOS available to serve the embedded marketplace, ROM-DOS enables current desktop hardware in legacy implementations. ROM-DOS continues to have backward compatibility build options, and is the fastest way to connect an embedded system to the Internet.

OEMs are now able to take advantage of large disk drives and Long File Names with ROM-DOS 7.1. With as little as a 186 CPU, a small amount of RAM and flash memory or other non-volatile storage, OEMs can create a low cost system in no time.

Datalight offers two ROM-DOS options:
  • ROM-DOS Software Development Kit provides unrivaled flexibility to embedded developers.
  • ROM-DOS Single User Version is a DOS solution perfect for desktop users and OEMs wanting a single seat replacement DOS.
The benefits of ROM-DOS include:
  • Embedded Design Features
  • Foundational OS
  • Connectivity Tools
  • Product Technical Support

How ROM-DOS Works

In any computer system, an operating system has many responsibilities. Operating systems perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk and controlling peripheral devices such as disk drives and printers. They also serve as the software platform on top of which other application programs can run. The application programs must be written to run on top of a particular operating system.

ROM-DOS™ provides a well-known, well-documented interface for application programs to send and receive information for other devices throughout the computer. Although it is possible to design application programs that bypass the operating system and communicate directly to hardware, this is generally ill advised. Since ROM-DOS is responsible for such activities as disk access and memory allocation, bypassing ROM-DOS and communicating directly to the hardware is like sky diving without a second chute. You can do it, but if something goes wrong, you are in for a world of trouble.

ROM-DOS communicates to the application and device drivers through the use of defined interrupts. For stability and efficiency, applications should be designed so that all communication from the application runs through the ROM-DOS kernel.
ROM-DOS Diagram
Designing a system so that all access to devices and system resources runs through the ROM-DOS kernel provides a high level of stability, enabling systems to run unmonitored without needing to reboot for extended periods of time.


ROM-DOS Kernel Diagram

System Requirements

The minimum system requirements for your target hardware are:
  • 186 or higher processor
  • ROM based operation requires 60K to 90K of ROM or Flash
  • Internet connectivity requires a packet driver or modem connection

Additional documents providing more technical details are available in Resources



ROM-DOS Product Details

ROM-DOS™ is the industry leader of DOS technologies and delivers features including kernel level FAT32 and Long File Name support. Committed to embedded developers, Datalight offers source code modules in library and assembly format that allow developers control over their DOS. Datalight is committed to ROM-DOS for the long-run, and continues to provide technical support.
Embedded Features

ROM-DOS contains embedded features such as a configurable ROM-DOS BUILD utility.


  • ROM-DOS BUILD Utility - ROM-DOS BUILD utility enables developers to include or exclude a variety of features such as Kernel options, device drivers, FAT32 & Long File Name support and other ROM-DOS capabilities. By removing these, a smaller footprint can be generated providing more memory for application and data storage.


SOCKETS™ Internet Connectivity

ROM-DOS incorporates a suite of tools, including a compact TCP/IP stack, that advance the embedded device from stand-alone to Internet enabled. The SOCKETS suite supports applications that provide embedded systems with the ability to send and receive email, transfer files via FTP, run a remote console or be viewed from a local web browser.

  • E-Mail - The system can be controlled remotely via specific e-mail messages that control the system behavior. Notification can be delivered to a server that monitors many systems, or to an operator via a message to a desktop e-mail address, cell phone or pager.
  • Optional 32 bit Sockets Kernel - Socket32 provides a stand-alone interactive 32 bit TCP/IP stack that contains FTP and Telnet clients, HTTP, Remote Console, Echo, UDP and Discard servers, WebDOS Commander, CGI Demo and status console including protocol tracing facilities.  Socket32 is based on the DJGPP compiler tools and offers conventional RAM savings over the real-mode Sockets kernel. Contact for more information and instructions on downloading this SDK add-on.  
  • Web Server - SOCKETS provides a web server that allows an embedded system to be viewed and controlled from a web browser. Change application variables using the Server Side Includes (SSI) functionality. Other applets can be spawned using the Common Gateway Interface (CGI) in the web server.
  • Security - User authentication is performed on multiple levels. The web server uses a password file to define the rights of a connecting client. A second access file has the ability to assign specific access rights on a directory level. The remote call back feature has the host system call the remote system; the remote system detects the call and hangs up immediately. It then calls the host at a predetermined phone number. This is one of the most economical security options.
  • File Transfer - Files can be sent and received from a SOCKETS system using the Internet standard File Transfer Protocol (FTP) with the FTP server. This enables a user to update applications running on the remote system or retrieve data files from the system.
  • Remote Console - Allows access through MicrosoftÆ Internet Explorer and appears as a DOS box on the browser. Status on the remote embedded system can be easily monitored. Applications such as diagnostics can easily be run and results read and presented in HTML format where a DOS box isn't preferred.


Desktop Disk Accessibility

ROM-DOS supports full file access on standard Desktop FAT32 disks, the FAT16 hard disk format used for today's Compact Flash cards, and the FAT12 used for the smallest types of removable media like floppy disks. Also MicrosoftÆ WindowsÆ Long File Names are supported for any of these disk formats.

  • FAT32 - Windows hard disks are supported with FAT32. The disk support is completely transparent to the application program, so no application changes are required to access files on huge disks. No new API's are required to support these disks.
  • FAT16 - ROM-DOS supports the standard FAT16 disk format for Compact Flash Cards or other smaller disk formats.
  • Long Filename Support (LFN) - Files on any size disk can be accessed easily with Long File Names. Long File Names can be read, written and deleted with ROM-DOS. Long File Names are accessed using the standard Windows / DOS APIs.


Rapid Development

Datalight reduces time to market by providing a suite of tools that enables rapid application development needed to complete a product on time.

  • Software Development Toolkit (SDTK) - The ROM-DOS SDTK includes Borland C compiler and linker, Turbo Assembler as well as tools developed by Datalight engineers for use specifically with Datalight products.


System Requirements

The minimum system requirements for your target hardware are:

  • 186 or higher processor
  • ROM based operation requires 60K to 90K of ROM or Flash
  • Internet connectivity requires a packet driver or modem connection


ROM-DOS Benefits:


  • Embedded Design Features - ROM-DOS was specifically designed for use in embedded systems, and its features make it uniquely suited to embedded devices.
  • Foundational OS - ROM-DOS provides the closest, most direct access to x86 hardware. No other operating system can be integrated this closely with underlying hardware. This unique ability allows ROM-DOS to serve as a foundational operating system, running either underneath or alongside another operating system. Used in this manner, ROM-DOS stabilizes the underlying device operation, creating a consistent environment in which the companion OS can run to its full potential.
  • Connectivity Tools - ROM-DOS incorporates a suite of tools, including a compact TCP/IP stack that is designed to advance the embedded device market from stand-alone to Internet-enabled. ROM-DOS supports applications that provide embedded systems with the ability to send and receive e-mail, securely transfer files via FTP, run a private remote console or be viewed from a local web browser.

 Software Development Toolkit

The Datalight Software Development Toolkit (SDTK) supports Datalight ROM-DOS™ based products, including FlashFX® for ROM-DOS, with a standard development environment. The SDTK supplements Datalight DOS-based products by providing all of the tools necessary to complete configuration, development and deployment of both Datalight software and OEM applications. The tools include third party programs such as the Borland C/C++ 5.2 compiler and linker as well as a library of DOS development and debugging tools developed by Datalight.



The SDTK is shipped with the purchase of the ROM-DOS Software Development Kit and is available to existing Datalight customers.


System Requirements

Minimal system requirements include Windows 95/98/NT and 100MB for command line tools, 450MB for the full Borland Integrated Development Environment.






Borland C/C++ Full C/C++ compiler, linker, tools, example and help files for DOS and Windows environments
Turbo Assembler Assembly language compiler that supports the 8086 through 586 class machines
NED A full-featured, full-screen editor for DOS that provides simultaneous access to multiple files
LOC Binary locate tool for developing ROM-able application and BIOS extensions
PROMERGE Merges multiple files into a binary image suitable for a PROM burner
RECURSE Repeats any command in all subdirectories
PROTO Creates prototypes from C source files

Getting Started

For individuals, access the ROM-DOS Single User Version

For commercial use, Contact Sales

SOCKETS Product Details

Datalight SOCKETS™ is the best way to Internet-enable an embedded system because it is compatible, flexible and affordable. Any ROM-DOS environment with a modem or network interface card can be connected to the Internet in a matter of minutes rather than the days or weeks required by compile-in networking libraries. By including SOCKETS in ROM-DOS, Datalight lowers the entry cost and early risk associated with complex and costly competitive products.

Product Details

Datalight SOCKETS provides standard communications applications and the facilities to run custom-written applications, allowing you to:

  • Run applications on a TCP/IP host system from a remote embedded system
  • Transfer data between an embedded system and TCP/IP hosts
  • Run network aware applications on an embedded system
  • Print to an embedded system from TCP/IP hosts and vice versa

Datalight SOCKETS consists of:

  • A TSR kernel that:
    • Connects to a physical Ethernet or Token Ring network using a network interface with associated Packet Driver and/or to a point-to-point serial network using standard serial communication ports with or without modem dial in/out
    • Implements standard Internet protocols ARP, PPP, LCP, IPCP, IPv6CP, PAP, CHAP MD5, IP, IPv6, ICMP, ICMPv6, IGMP, RIP, UDP, TCP, BOOTP, DHCP and DNS
    • Provides IP routing support for IPv4
    • Provides two Application Programming Interfaces (APIs)
    • Provides a Socket Print client
    • Provides a Socket Print Server and LPD Server
    • Optionally keeps MIB II status and statistical information.
  • C libraries and source code to access the APIs including a TCP/IP Sockets library implementing the BSD Sockets abstraction; the libraries also support 32-bit applications using a DOS extender
  • A SOCKETS kernel building program
  • A SOCKETS configuration program
  • Utility programs to test the network and display the status of the kernel
  • Mail programs in binary format
  • Resident servers for FTP, HTTP and Remote Console including a CGI API for serving dynamic web-pages and a Remote Console Java applet to emulate a DOS console of the embedded system on a Java capable browser
  • A Telnet client including an ANSI/VT emulator
  • An FTP client and a simple HTTP file GET utility
  • Print clients for Socket printing and LPD printing (LPR)
  • A resident FTP API to implement FTP client/server functionality in user written programs
  • A resident RFC compliant NETBIOS API
  • Utilities to validate integrity and quality of all kernel APIs