//#define COSMOSDEBUG
using Cosmos.Debug.Kernel;
namespace Cosmos.System.ExtendedASCII
{
///
/// CP858Enconding class, represent CP858 encoding. See also: .
///
internal class CP858Enconding : SingleByteEncoding
{
///
/// Debugger instance of the "System" ring with the "CP858 Encoding" tag.
///
private static Debugger myDebugger = new Debugger("System", "CP858 Encoding");
///
/// Create new instance of the class.
///
internal CP858Enconding()
{
myDebugger.SendInternal($"CP858Enconding Setting CodePageTable only one time...");
CodePageTable = new char[]
{
'Ç', 'ü', 'é', 'â', 'ä', 'à', 'å', 'ç', 'ê', 'ë', 'è', 'ï', 'î', 'ì', 'Ä', 'Å',
'É', 'æ', 'Æ', 'ô', 'ö', 'ò', 'û', 'ù', 'ÿ', 'Ö', 'Ü', 'ø', '£', 'Ø', '×', 'ƒ',
'á', 'í', 'ó', 'ú', 'ñ', 'Ñ', 'ª', 'º', '¿', '®', '¬', '½', '¼', '¡', '«', '»',
'░', '▒', '▓', '│', '┤', 'Á', 'Â', 'À', '©', '╣', '║', '╗', '╝', '¢', '¥', '┐',
'└', '┴', '┬', '├', '─', '┼', 'ã', 'Ã', '╚', '╔', '╩', '╦', '╠', '═', '╬', '¤',
'ð', 'Ð', 'Ê', 'Ë', 'È', '€', 'Í', 'Î', 'Ï', '┘', '┌', '█', '▄', '¦', 'Ì', '▀',
'Ó', 'ß', 'Ô', 'Ò', 'õ', 'Õ', 'µ', 'þ', 'Þ', 'Ú', 'Û', 'Ù', 'ý', 'Ý', '¯', '´',
'\u00AD', '±', '‗', '¾', '¶', '§', '÷', '¸', '°', '¨', '·', '¹', '³', '²', '■', '\u00A0'
};
}
///
/// Get encoding body name.
///
public override string BodyName => "IBM00858";
///
/// Get encoding codepage.
///
public override int CodePage => 858;
}
}