Cosmac Elf Emulator

This emulator will emulate an Elf computer similar in design to the Cosmac Elf computer project published in popular electronics in 1976. The Cosmac Elf computer had 256 bytes of RAM, 8 toggle switches for input, 4 hex displays to show the current address and 2 hex displays for data output. Additional information about the Cosmac Elf can be found on the Emma 02 site.

To start the Cosmac Elf emulator first select the Elf tab (yellow ellipse) followed by the Cosmac Elf tab (orange ellipse) and then press Start:

The above will have started the default Cosmac Elf emulator configuration running Elf/Os with Serial I/O. To change to other predefined configurations load one of them with the menu option below (blue ellipse) following the grey menu:

Summary of the Cosmac Elf configurations:


A bare Cosmac Elf using the front panel and 256 bytes RAM.

Chip 8 Mode

Chip-8 configuration for the Elf, default Blinky is selected as chip 8 game. The Chip-8 interpreter will be loaded from address 0 to hex 1FF as well as hex E00-E6D. The selected chip-8 SW will load from hex 200.


These configurations are for running ElfOs on indicated video type with BIOSIO.

Elf/Os Installation

These configurations are for installation of ElfOs on indicated video type with or without BIOSIO.

Default/Elf/Os - Serial I/O

This configuration is for running ElfOs on Serial I/O.

EPROM Boards

Two EPROM board configurations are supported, one including a mini monitor and Quest Super BASIC REL 5.0 and one with the Super Gold Monitor and assembler. Both ROM files were created by Eric Tchong. Of course Super BASIC itself was designed by Ron Cenker. BASIC can be started from the monitor by pressing B. For documentation on these ROM see the file section of the CosmacElf yahoo group.

Fig Forth

This configuration will load and run Fig Forth for the 1802. This version of Forth uses a terminal connected to an UART CDP1854 for which very basic support is implemented in the emulator.

Game Mode

This configuration should run most games, default the invaders game will be selected but this can be changed to any of the other provided game files.

Giant Board

Basic configuration that will load and run the Netronics giant board monitor (at location hex F000. See the chapter on the Giant Board

Music Machine

Basic configuration to run the Music Maker and Christmas songs as all published in the Ipso Facto (Issue 5 and 8). Default the 'Music Maker.hex' and song 'O Christmas Tree.hex' will be loaded. Note that some songs will need a different speed which is indicated in the song file name (Double, 1_2 etc.), to play these also load the equivalent Music Maker file. The Ipso Facto articles can be found on and are also included in the Elf/Music directory.

Netronics Tiny Basic

These configuration will load and run Netronics Tiny Basic, either on Pixie video or a VT100 terminal. Note that to start the basic you will need to press 'return' when using the Pixie version and press return twice on the VT100 version.


Pico/Elf V2 configurations.

Quest Super Basic

These configurations will load and run Quest Super Basic (version is indicated in the filename) on the Cosmac Elf, Netronics Elf II or Quest Super Elf. See the chapter on Quest Super Basic.

Quest Tape Loader

Quest Super Basic loader program.

RCA Basic

These configuration will load and run RCA Basic on the Cosmac Elf, Netronics Elf II or Quest Super Elf. See the chapter on RCA Basic.


RCA Monitor program as described in IPSO facto number 10.

ROM Mapper

Richard's ROM Mapper, this uses OUT 7 to select a 32K slot from any large ROM chip. Selected ROM is switched to hex 8000-FFFF by using A15 from bit 0 on port 7, A16 from bit 1 etc. After starting the Elf hit 'return' and type RUN. To load a program type the program number or N for next page.

Tiny Basic Interpreter V2 - MC6847

This configuration will load and run Tiny Basic Interpreter for the Cosmac 1802 version 2 by Robert Edwards including output routines for an MC6847 video.


Basic UT4 configuration with 62K RAM and UT4 running in ROM at hex 8000-81FF


VDU / MC6847 configurations, one with ASCII keyboard and one with a hex keypad.

This chapter also includes:

Control Windows
Front Panel
Hex Keypad
Led Module
ROM and RAM Files
Video Types
Keyboard Mapping and Types
Disk Types
Auto Boot
Device Ports
Printer Support
Cassette Support
XMODEM Support
Quest Super Basic
RCA Basic
Giant Board
Installation Elf/Os 2.5 via Biosio
Installation Elf/Os 2.8
Installation Biosio

Please note the following limitations:
TMS 9918 Support does not include multi colour mode and sprites
Extended ports only supports Extended RAM pager
FDC Disk Support has not been tested

If you know how the above not tested features should work or have SW that support these and/or additional HW please drop me an email.