Mazovia encoding

Mazovia encoding is a character set used under DOS to represent Polish text. The character set derives from code page 437, with specific positions modified to accommodate Polish letters. Notably, the Mazovia encoding maintains the block graphic characters from code page 437, distinguishing it from IBM's later official Central European code page 852, which failed to preserve all block graphics, leading to incorrect display in programs such as Norton Commander.

The Mazovia encoding was designed in 1984 by Jan Klimowicz of. It was designed as part of a project to develop and produce a Polish IBM PC clone codenamed "". The code page was specifically optimized for the peripheral devices commonly used with the Mazovia 1016 computer, including a graphics card with dual switchable graphics, a keyboard with US English and Russian layouts, and printers with Polish fonts. The Mazovia encoding gained widespread acceptance and distribution in Poland when the Polish National Bank (NBP) adopted it as a standard in 1986. The NBP played a significant role in facilitating the production of compatible computers by Ipaco, which utilized Taiwanese components under the guidance of and Krzysztof Sochacki.

Some ambiguity exists in the official code page assignment for the Mazovia encoding:

PTS-DOS and S/DOS support this encoding under code page 667 (CP667). The same encoding was also called code page 991 (CP991) in some Polish software, however, the FreeDOS implementation of code page 991 seems not to be identical to this original encoding. The DOS code page switching file  for NEC Pinwriters supports the Mazovia encoding under both code pages 667 and 991. FreeDOS has meanwhile introduced support for a variant of the Mazovia encoding under code page 790 (CP790) as well. The Fujitsu DL6400 (Pro) / DL6600 (Pro) printers support the Mazovia encoding as well. This encoding is known as code page 3843 in Star printers.

Character set
Each character is shown with its equivalent Unicode code point. Only the second half of the table (128–255) is shown, all of the first half (0–127) being the same as ASCII and code page 437.

Several variants of this encoding exists:
 * Mazovia with curly quotation marks („ is at 9D and ” is at A9). FreeDOS supports this variant under code page 790.
 * Mazovia 157 (ś is at 9D instead of 9E)
 * Fido Mazovia (ć is at 0x87 instead of 8D and Ć is at 0x80 instead of 0x95)
 * zł Mazovia (złoty sign at 0x9B, like in the original ROM of the Mazovia 1016 computer). This variant was also supported by EGAPL v3.2, a DOS TSR providing polish glyphs that was popular in Poland in the 90's. FreeDOS supports this variant under code page 991 (which also has § (section sign) at 0xA8), although the original definition of code page 991, which pre-dates FreeDOS, appears to have been identical to code page 667.

These variants are not fully compliant with the definition of code page 667 and should therefore not be associated with this number.

{{legend|#FFD|Differences from code page 437}}