BMP

BMP is a device independent, two dimensional raster graphics file format introduced with OS/2 1.1 Presentation Manager based on Microsoft Windows Version 2 format which replaced the now forgotten DDB format. The name is simply a shortening of "Bitmap" and not an acronym.

OS/2 PM uses the same file format for bit maps, icons, and pointers in resource files.

The BMP format is sometimes used in embedded programming for the same reason it was used in OS/2 and MS Windows, even with the (Huffman 1D and RLE) compression options, loading and displaying BMP files is very simple affair and decompression takes very little processing power. And when dealing with small files for small screens the slight size increase versus newer formats is a non issue.

Windows Bitmap Format

 * Windows 1.x DDB (Device-Dependent Bitmap)
 * Windows 2.x DIB (Device Independent Bitmap)
 * Windows 3.0 DIB (Device Independent Bitmap)
 * Windows 95 (4.x)

OS/2 1.1 PM
It's almost identical to Windows 2.x BMP, except that the Width and Height fields are signed values in Windows BMP files. 1, 4, 8 (color palette) and 24 bits/pixel are valid.

Filetypes:
 * 424Dh ("BM") - single image file, bitmap header Size field = 12
 * 4142h ("BA") - bitmap array file
 * 4349h ("IC") - icon (*.ICO), 1-bit monochrome
 * 4943h ("CI") - colour icon (*.ICO)
 * 5450h ("PT") - pointer (*.PTR), 1-bit monochrome
 * 5043h ("CP") - colour pointer (*.PTR)

OS/2 2.0

 * Compression
 * Multiple units of length
 * Half-toming
 * Multiple colour code schemes
 * User-defined space
 * Structure
 * Bitmap Information Structure
 * Colour table (required for 24-bit)
 * Bitmap Pel Data

Links

 * Description of the BMP related formats - From Presentation Manager Programming Reference, Volume III.
 * BMP description on Wikipedia - Note that it focuses on the OS/2 1.x format and does not include descriptions of any of the improvements included with the OS/2 v2 version of the format.
 * OS/2 Bitmap File Format Summary from FileFormat.info