Read-only memory (ROM) is used as a storage medium in computers. Because it cannot (easily) be written to, its main uses lie in the distribution of software that is very closely related to hardware, and not likely to need upgrading. For example, a networking or graphics card may implement some basic functionality through software contained on a ROM. ROMs typically take the shape of IC packages, i.e. black "computer chips", not immediately distinguishable from other chips like RAMs but for the text printed on the chips.
There is a trend to put less and less software into static ROMs, and more on disk storage, making changes easier. Home computers in the early 1980s came with their complete operating system in ROM, often including a BASIC programming language interpreter. There was no reasonable alternative because disk drives were generally optional. Upgrading to a newer version meant using either a soldering iron or a set of DIP sockets and replacing the old ROM chip with a new one. By the 2000s operating systems for desktop computers are not generally on ROM anymore. Computers may still rely on some software in ROMs, like their BIOS, but even that is more likely to reside on a Flash-ROM (see below). Mobile phones and personal digital assistants are likely to have software in ROM (or at least flash memory).
Video game consoles that use ROM based software include the Super Famicom, Super Nintendo Entertainment System North American and European versions of the Super Famicom), the Nintendo 64, and the Game Boy. Such ROMs are sealed into plastic cases suitable for handling and repeated insertion, known as cartridges or "carts" (or "Game Pak" if you are Nintendo). Many home computers also used ROM cartridges for distributing games and other types of software.
One reason why some data still sits in ROMs is speed – disks are an order of magnitude slower. Even more important, though, is that you cannot read software that is needed to drive a disk from the disk itself – see bootstrap. Hence the BIOS or a bootloader for a computer is often stored in ROM. Another application for ROMs is in storing software for embedded systems operating in physically demanding environments (exposed to, say, vibration, or high G-forces), where rotating media like disks are less appropriate.
Classic mask-programmed ROM chips are written to during production and cannot change content afterwards. But there are other types of non-volatile solid-state memory:
- PROMs (Programmable Read-Only Memory) can be written to (programmed) via a special device, a PROM programmer. The writing often takes the form of destroying internal links with the result that a PROM can only be programmed once.
- EPROMs (Erasable Programmable Read-Only Memory) can be erased by exposure to ultraviolet light then rewritten via an EPROM programmer. Repeated exposure to ultraviolet light will eventually destroy the EPROM but it generally takes many exposures before the EPROM becomes unusable.
- Flash memory or EEPROMs (Electrically Erasable Read-Only Memory) can be electrically erased then written to (flashed) without taking them out of the computer. Flashing is much slower than writing to RAM (Random Access Memory) (or reading from any ROM).
By applying write protection, read/write memory may be turned (temporarily) into read-only memory.
ROM as in ROM image may refer to a data file that contains an image of the software normally distributed in a ROM, such as a copy of a video game cartridge (often a violation of copyright or sui generis mask work rights unless your jurisdiction has a fair use protection).\n