/* Zeta API - Z/formats/character_set/DOS_CP858.h
 ______  ______________  ___
|__   / |  ___|___  ___|/   \
  /  /__|  __|   |  |  /  -  \
 /______|_____|  |__| /__/ \__\
Copyright (C) 2006-2024 Manuel Sainz de Baranda y Goñi.
Released under the terms of the GNU Lesser General Public License v3. */

#ifndef Z_formats_character_set_DOS_CP858_H
#define Z_formats_character_set_DOS_CP858_H

/* From 00h to 7Fh like ASCII */
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_C_WITH_CEDILLA		0x80
#define Z_DOS_CP858_LATIN_SMALL_LETTER_U_WITH_DIAERESIS		0x81
#define Z_DOS_CP858_LATIN_SMALL_LETTER_E_WITH_ACUTE		0x82
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_CIRCUMFLEX	0x83
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_DIAERESIS		0x84
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_GRAVE		0x85
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_RING_ABOVE	0x86
#define Z_DOS_CP858_LATIN_SMALL_LETTER_C_WITH_CEDILLA		0x87
#define Z_DOS_CP858_LATIN_SMALL_LETTER_E_WITH_CIRCUMFLEX	0x88
#define Z_DOS_CP858_LATIN_SMALL_LETTER_E_WITH_DIAERESIS		0x89
#define Z_DOS_CP858_LATIN_SMALL_LETTER_E_WITH_GRAVE		0x8A
#define Z_DOS_CP858_LATIN_SMALL_LETTER_I_WITH_DIAERESIS		0x8B
#define Z_DOS_CP858_LATIN_SMALL_LETTER_I_WITH_CIRCUMFLEX	0x8C
#define Z_DOS_CP858_LATIN_SMALL_LETTER_I_WITH_GRAVE		0x8D
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_DIAERESIS	0x8E
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_RING_ABOVE	0x8F
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_E_WITH_ACUTE		0x90
#define Z_DOS_CP858_LATIN_SMALL_LETTER_AE			0x91
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_AE			0x92
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_CIRCUMFLEX	0x93
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_DIAERESIS		0x94
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_GRAVE		0x95
#define Z_DOS_CP858_LATIN_SMALL_LETTER_U_WITH_CIRCUMFLEX	0x96
#define Z_DOS_CP858_LATIN_SMALL_LETTER_U_WITH_GRAVE		0x97
#define Z_DOS_CP858_LATIN_SMALL_LETTER_Y_WITH_DIAERESIS		0x98
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_DIAERESIS	0x99
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_U_WITH_DIAERESIS	0x9A
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_STROKE		0x9B
#define Z_DOS_CP858_POUND_SIGN					0x9C
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_STROKE		0x9D
#define Z_DOS_CP858_MULTIPLICATION_SIGN				0x9E
#define Z_DOS_CP858_LATIN_SMALL_LETTER_F_WITH_HOOK		0x9F
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_ACUTE		0xA0
#define Z_DOS_CP858_LATIN_SMALL_LETTER_I_WITH_ACUTE		0xA1
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_ACUTE		0xA2
#define Z_DOS_CP858_LATIN_SMALL_LETTER_U_WITH_ACUTE		0xA3
#define Z_DOS_CP858_LATIN_SMALL_LETTER_N_WITH_TILDE		0xA4
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_N_WITH_TILDE		0xA5
#define Z_DOS_CP858_FEMININE_ORDINAL_INDICATOR			0xA6
#define Z_DOS_CP858_MASCULINE_ORDINAL_INDICATOR			0xA7
#define Z_DOS_CP858_INVERTED_QUESTION_MARK			0xA8
#define Z_DOS_CP858_REGISTERED_SIGN				0xA9
#define Z_DOS_CP858_NOT_SIGN					0xAA
#define Z_DOS_CP858_VULGAR_FRACTION_ONE_HALF			0xAB
#define Z_DOS_CP858_VULGAR_FRACTION_ONE_QUARTER			0xAC
#define Z_DOS_CP858_INVERTED_EXCLAMATION_MARK			0xAD
#define Z_DOS_CP858_LEFT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK	0xAE
#define Z_DOS_CP858_RIGHT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK	0xAF
#define Z_DOS_CP858_LIGHT_SHADE					0xB0
#define Z_DOS_CP858_MEDIUM_SHADE				0xB1
#define Z_DOS_CP858_DARK_SHADE					0xB2
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_VERTICAL			0xB3
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_VERTICAL_AND_LEFT	0xB4
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_ACUTE		0xB5
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_CIRCUMFLEX	0xB6
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_GRAVE		0xB7
#define Z_DOS_CP858_COPYRIGHT_SIGN				0xB8
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_VERTICAL_AND_LEFT	0xB9
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_VERTICAL		0xBA
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_DOWN_AND_LEFT		0xBB
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_UP_AND_LEFT		0xBC
#define Z_DOS_CP858_CENT_SIGN					0xBD
#define Z_DOS_CP858_YEN_SIGN					0xBE
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_DOWN_AND_LEFT		0xBF
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_UP_AND_RIGHT		0xC0
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_UP_AND_HORIZONTAL	0xC1
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_DOWN_AND_HORIZONTAL	0xC2
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_VERTICAL_AND_RIGHT	0xC3
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_HORIZONTAL		0xC4
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_VERTICAL_AND_HORIZONTAL	0xC5
#define Z_DOS_CP858_LATIN_SMALL_LETTER_A_WITH_TILDE		0xC6
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_A_WITH_TILDE		0xC7
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_UP_AND_RIGHT		0xC8
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_DOWN_AND_RIGHT		0xC9
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_UP_AND_HORIZONTAL	0xCA
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_DOWN_AND_HORIZONTAL	0xCB
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_VERTICAL_AND_RIGHT	0xCC
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_HORIZONTAL		0xCD
#define Z_DOS_CP858_BOX_DRAWINGS_DOUBLE_VERTICAL_AND_HORIZONTAL	0xCE
#define Z_DOS_CP858_CURRENCY_SIGN				0xCF
#define Z_DOS_CP858_LATIN_SMALL_LETTER_ETH			0xD0
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_ETH			0xD1
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_E_WITH_CIRCUMFLEX	0xD2
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_E_WITH_DIAERESIS	0xD3
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_E_WITH_GRAVE		0xD4
#define Z_DOS_CP858_EURO_SIGN					0xD5
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_I_WITH_ACUTE		0xD6
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_I_WITH_CIRCUMFLEX	0xD7
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_I_WITH_DIAERESIS	0xD8
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_UP_AND_LEFT		0xD9
#define Z_DOS_CP858_BOX_DRAWINGS_LIGHT_DOWN_AND_RIGHT		0xDA
#define Z_DOS_CP858_FULL_BLOCK					0xDB
#define Z_DOS_CP858_LOWER_HALF_BLOCK				0xDC
#define Z_DOS_CP858_BROKEN_BAR					0xDD
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_I_WITH_GRAVE		0xDE
#define Z_DOS_CP858_UPPER_HALF_BLOCK				0xDF
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_ACUTE		0xE0
#define Z_DOS_CP858_LATIN_SMALL_LETTER_SHARP_S			0xE1
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_CIRCUMFLEX	0xE2
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_GRAVE		0xE3
#define Z_DOS_CP858_LATIN_SMALL_LETTER_O_WITH_TILDE		0xE4
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_O_WITH_TILDE		0xE5
#define Z_DOS_CP858_MICRO_SIGN					0xE6
#define Z_DOS_CP858_LATIN_SMALL_LETTER_THORN			0xE7
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_THORN			0xE8
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_U_WITH_ACUTE		0xE9
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_U_WITH_CIRCUMFLEX	0xEA
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_U_WITH_GRAVE		0xEB
#define Z_DOS_CP858_LATIN_SMALL_LETTER_Y_WITH_ACUTE		0xEC
#define Z_DOS_CP858_LATIN_CAPITAL_LETTER_Y_WITH_ACUTE		0xED
#define Z_DOS_CP858_MACRON					0xEE
#define Z_DOS_CP858_ACUTE_ACCENT				0xEF
#define Z_DOS_CP858_SOFT_HYPHEN					0xF0
#define Z_DOS_CP858_PLUS_MINUS_SIGN				0xF1
#define Z_DOS_CP858_DOUBLE_LOW_LINE				0xF2
#define Z_DOS_CP858_VULGAR_FRACTION_THREE_QUARTERS		0xF3
#define Z_DOS_CP858_PILCROW_SIGN				0xF4
#define Z_DOS_CP858_SECTION_SIGN				0xF5
#define Z_DOS_CP858_DIVISION_SIGN				0xF6
#define Z_DOS_CP858_CEDILLA					0xF7
#define Z_DOS_CP858_DEGREE_SIGN					0xF8
#define Z_DOS_CP858_DIAERESIS					0xF9
#define Z_DOS_CP858_MIDDLE_DOT					0xFA
#define Z_DOS_CP858_SUPERSCRIPT_ONE				0xFB
#define Z_DOS_CP858_SUPERSCRIPT_THREE				0xFC
#define Z_DOS_CP858_SUPERSCRIPT_TWO				0xFD
#define Z_DOS_CP858_BLACK_SQUARE				0xFE
#define Z_DOS_CP858_NO_BREAK_SPACE				0xFF

#define Z_ARRAY_CONTENT_DOS_CP858_TO_UNICODE(_)					\
	_(00C7), _(00FC), _(00E9), _(00E2), _(00E4), _(00E0), _(00E5), _(00E7), \
	_(00EA), _(00EB), _(00E8), _(00EF), _(00EE), _(00EC), _(00C4), _(00C5), \
	_(00C9), _(00E6), _(00C6), _(00F4), _(00F6), _(00F2), _(00FB), _(00F9), \
	_(00FF), _(00D6), _(00DC), _(00F8), _(00A3), _(00D8), _(00D7), _(0192), \
	_(00E1), _(00ED), _(00F3), _(00FA), _(00F1), _(00D1), _(00AA), _(00BA), \
	_(00BF), _(00AE), _(00AC), _(00BD), _(00BC), _(00A1), _(00AB), _(00BB), \
	_(2591), _(2592), _(2593), _(2502), _(2524), _(00C1), _(00C2), _(00C0), \
	_(00A9), _(2563), _(2551), _(2557), _(255D), _(00A2), _(00A5), _(2510), \
	_(2514), _(2534), _(252C), _(251C), _(2500), _(253C), _(00E3), _(00C3), \
	_(255A), _(2554), _(2569), _(2566), _(2560), _(2550), _(256C), _(00A4), \
	_(00F0), _(00D0), _(00CA), _(00CB), _(00C8), _(20AC), _(00CD), _(00CE), \
	_(00CF), _(2518), _(250C), _(2588), _(2584), _(00A6), _(00CC), _(2580), \
	_(00D3), _(00DF), _(00D4), _(00D2), _(00F5), _(00D5), _(00B5), _(00FE), \
	_(00DE), _(00DA), _(00DB), _(00D9), _(00FD), _(00DD), _(00AF), _(00B4), \
	_(00AD), _(00B1), _(2017), _(00BE), _(00B6), _(00A7), _(00F7), _(00B8), \
	_(00B0), _(00A8), _(00B7), _(00B9), _(00B3), _(00B2), _(25A0), _(00A0)

#endif /* Z_formats_character_set_DOS_CP858_H */
