Skip to content
Snippets Groups Projects
Commit 19f2f49c authored by Deucе's avatar Deucе :ok_hand_tone4:
Browse files

Split codepages into _B (broken vertical) variants

For the three codepages with fonts that do both broken and unbroken
vertical bars, add a _B variant for the one with the broken vertical.

This allows the broken vertical to be "correctly" in the codepage
mapping.
parent 66aefdb0
No related branches found
No related tags found
No related merge requests found
...@@ -59,23 +59,7 @@ const static uint32_t cp437_ext_table[32] = { ...@@ -59,23 +59,7 @@ const static uint32_t cp437_ext_table[32] = {
0x2191, 0x2193, 0x2192, 0x2190, 0x221F, 0x2194, 0x25B2, 0x25BC 0x2191, 0x2193, 0x2192, 0x2190, 0x221F, 0x2194, 0x25B2, 0x25BC
}; };
const static uint32_t cp437_unicode_table[256] = { const static uint32_t cp437_unicode_table[128] = {
0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
0x0078, 0x0079, 0x007a, 0x007b, 0x00a6, 0x007d, 0x007e, 0x007f,
0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7, 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5, 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9, 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
...@@ -1914,8 +1898,11 @@ fb_cptable_from_unicode_cpoint(uint32_t cpoint, char unmapped, const struct code ...@@ -1914,8 +1898,11 @@ fb_cptable_from_unicode_cpoint(uint32_t cpoint, char unmapped, const struct code
static uint32_t static uint32_t
cpoint_from_cptable(uint8_t ch, const struct codepage_def *cpdef) cpoint_from_cptable(uint8_t ch, const struct codepage_def *cpdef)
{ {
if (ch < 128) if (ch < 128) {
if (ch == 0x7C && cpdef->broken_vertical)
return 0x86;
return ch; return ch;
}
return cpdef->cp_unicode_table[ch - 128]; return cpdef->cp_unicode_table[ch - 128];
} }
...@@ -2215,89 +2202,98 @@ error: ...@@ -2215,89 +2202,98 @@ error:
const struct codepage_def ciolib_cp[CIOLIB_CP_COUNT] = { const struct codepage_def ciolib_cp[CIOLIB_CP_COUNT] = {
// 0 // 0
{"CP437", CIOLIB_CP437, ftstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext, {"CP437", CIOLIB_CP437, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp437_table, sizeof(cp437_table) / sizeof(cp437_table[0]), cp437_table, sizeof(cp437_table) / sizeof(cp437_table[0]),
cp437_unicode_table, cp437_ext_table}, cp437_unicode_table, cp437_ext_table, true},
{"CP1251", CIOLIB_CP1251, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP1251", CIOLIB_CP1251, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp1251_table, sizeof(cp1251_table) / sizeof(cp1251_table[0]), cp1251_table, sizeof(cp1251_table) / sizeof(cp1251_table[0]),
cp1251_unicode_table, cp437_ext_table}, cp1251_unicode_table, cp437_ext_table, false},
{"CP1251B", CIOLIB_CP1251_B, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp1251_table, sizeof(cp1251_table) / sizeof(cp1251_table[0]),
cp1251_unicode_table, cp437_ext_table, true},
{"KOI8-R", CIOLIB_KOI8_R, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"KOI8-R", CIOLIB_KOI8_R, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
koi8_r_table, sizeof(koi8_r_table) / sizeof(koi8_r_table[0]), koi8_r_table, sizeof(koi8_r_table) / sizeof(koi8_r_table[0]),
koi8_r_unicode_table, empty_ext_table}, koi8_r_unicode_table, empty_ext_table, true},
{"ISO-8859-2", CIOLIB_ISO_8859_2, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-2", CIOLIB_ISO_8859_2, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_2_table, sizeof(iso8859_2_table) / sizeof(iso8859_2_table[0]), iso8859_2_table, sizeof(iso8859_2_table) / sizeof(iso8859_2_table[0]),
iso8859_2_unicode_table, empty_ext_table}, iso8859_2_unicode_table, empty_ext_table, true},
{"ISO-8859-4", CIOLIB_ISO_8859_4, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-4", CIOLIB_ISO_8859_4, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_4_table, sizeof(iso8859_4_table) / sizeof(iso8859_4_table[0]), iso8859_4_table, sizeof(iso8859_4_table) / sizeof(iso8859_4_table[0]),
iso8859_4_unicode_table, empty_ext_table}, iso8859_4_unicode_table, empty_ext_table, false},
// 5 // 5
{"CP866M", CIOLIB_CP866M, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP866M", CIOLIB_CP866M, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp866m_table, sizeof(cp866m_table) / sizeof(cp866m_table[0]), cp866m_table, sizeof(cp866m_table) / sizeof(cp866m_table[0]),
cp866m_unicode_table, cp437_ext_table}, cp866m_unicode_table, cp437_ext_table, true},
{"ISO-8859-9", CIOLIB_ISO_8859_9, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-9", CIOLIB_ISO_8859_9, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_9_table, sizeof(iso8859_9_table) / sizeof(iso8859_9_table[0]), iso8859_9_table, sizeof(iso8859_9_table) / sizeof(iso8859_9_table[0]),
iso8859_9_unicode_table, empty_ext_table}, iso8859_9_unicode_table, empty_ext_table, false},
{"ISO-8859-8", CIOLIB_ISO_8859_8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-8", CIOLIB_ISO_8859_8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_8_table, sizeof(iso8859_8_table) / sizeof(iso8859_8_table[0]), iso8859_8_table, sizeof(iso8859_8_table) / sizeof(iso8859_8_table[0]),
iso8859_8_unicode_table, empty_ext_table}, iso8859_8_unicode_table, empty_ext_table, false},
{"KOI8-U", CIOLIB_KOI8_U, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"KOI8-U", CIOLIB_KOI8_U, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
koi8_u_table, sizeof(koi8_u_table) / sizeof(koi8_u_table[0]), koi8_u_table, sizeof(koi8_u_table) / sizeof(koi8_u_table[0]),
koi8_u_unicode_table, empty_ext_table}, koi8_u_unicode_table, empty_ext_table, true},
{"ISO-8859-15", CIOLIB_ISO_8859_15, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-15", CIOLIB_ISO_8859_15, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_15_table, sizeof(iso8859_15_table) / sizeof(iso8859_15_table[0]), iso8859_15_table, sizeof(iso8859_15_table) / sizeof(iso8859_15_table[0]),
iso8859_15_unicode_table, empty_ext_table}, iso8859_15_unicode_table, empty_ext_table, false},
// 10 // 10
{"ISO-8859-5", CIOLIB_ISO_8859_5, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-5", CIOLIB_ISO_8859_5, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_5_table, sizeof(iso8859_5_table) / sizeof(iso8859_5_table[0]), iso8859_5_table, sizeof(iso8859_5_table) / sizeof(iso8859_5_table[0]),
iso8859_5_unicode_table, empty_ext_table}, iso8859_5_unicode_table, empty_ext_table, true},
{"CP850", CIOLIB_CP850, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP850", CIOLIB_CP850, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp850_table, sizeof(cp850_table) / sizeof(cp850_table[0]), cp850_table, sizeof(cp850_table) / sizeof(cp850_table[0]),
cp850_unicode_table, cp437_ext_table}, cp850_unicode_table, cp437_ext_table, false},
{"CP850B", CIOLIB_CP850_B, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp850_table, sizeof(cp850_table) / sizeof(cp850_table[0]),
cp850_unicode_table, cp437_ext_table, true},
{"CP865", CIOLIB_CP865, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP865", CIOLIB_CP865, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp865_table, sizeof(cp865_table) / sizeof(cp865_table[0]), cp865_table, sizeof(cp865_table) / sizeof(cp865_table[0]),
cp865_unicode_table, cp437_ext_table}, cp865_unicode_table, cp437_ext_table, false},
{"CP865B", CIOLIB_CP865_B, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp865_table, sizeof(cp865_table) / sizeof(cp865_table[0]),
cp865_unicode_table, cp437_ext_table, true},
{"ISO-8859-7", CIOLIB_ISO_8859_7, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-7", CIOLIB_ISO_8859_7, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_7_table, sizeof(iso8859_7_table) / sizeof(iso8859_7_table[0]), iso8859_7_table, sizeof(iso8859_7_table) / sizeof(iso8859_7_table[0]),
iso8859_7_unicode_table, empty_ext_table}, iso8859_7_unicode_table, empty_ext_table, false},
{"ISO-8859-1", CIOLIB_ISO_8859_1, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ISO-8859-1", CIOLIB_ISO_8859_1, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
iso8859_1_table, sizeof(iso8859_1_table) / sizeof(iso8859_1_table[0]), iso8859_1_table, sizeof(iso8859_1_table) / sizeof(iso8859_1_table[0]),
iso8859_1_unicode_table, empty_ext_table}, iso8859_1_unicode_table, empty_ext_table, false},
// 15 // 15
{"CP866M2", CIOLIB_CP866M2, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP866M2", CIOLIB_CP866M2, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp866m2_table, sizeof(cp866m2_table) / sizeof(cp866m2_table[0]), cp866m2_table, sizeof(cp866m2_table) / sizeof(cp866m2_table[0]),
cp866m2_unicode_table, cp437_ext_table}, cp866m2_unicode_table, cp437_ext_table, true},
{"CP866U", CIOLIB_CP866U, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP866U", CIOLIB_CP866U, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp866u_table, sizeof(cp866u_table) / sizeof(cp866u_table[0]), cp866u_table, sizeof(cp866u_table) / sizeof(cp866u_table[0]),
cp866u_unicode_table, cp437_ext_table}, cp866u_unicode_table, cp437_ext_table, true},
{"CP1131", CIOLIB_CP1131, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"CP1131", CIOLIB_CP1131, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
cp1131_table, sizeof(cp1131_table) / sizeof(cp1131_table[0]), cp1131_table, sizeof(cp1131_table) / sizeof(cp1131_table[0]),
cp1131_unicode_table, cp437_ext_table}, cp1131_unicode_table, cp437_ext_table, false},
{"ARMSCII-8", CIOLIB_ARMSCII8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ARMSCII-8", CIOLIB_ARMSCII8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
armscii8_table, sizeof(armscii8_table) / sizeof(armscii8_table[0]), armscii8_table, sizeof(armscii8_table) / sizeof(armscii8_table[0]),
armscii8_unicode_table, cp437_ext_table}, armscii8_unicode_table, cp437_ext_table, true},
{"HAIK8", CIOLIB_HAIK8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"HAIK8", CIOLIB_HAIK8, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
haik8_table, sizeof(haik8_table) / sizeof(haik8_table[0]), haik8_table, sizeof(haik8_table) / sizeof(haik8_table[0]),
haik8_unicode_table, cp437_ext_table}, haik8_unicode_table, cp437_ext_table, true},
// 20 // 20
{"ATASCII", CIOLIB_ATASCII, ftstr_to_utf8, utf8_to_cpstr, fb_cptable_from_unicode_cpoint, ft_cpoint_from_cptable, ft_cpoint_from_cptable_ext, {"ATASCII", CIOLIB_ATASCII, ftstr_to_utf8, utf8_to_cpstr, fb_cptable_from_unicode_cpoint, ft_cpoint_from_cptable, ft_cpoint_from_cptable_ext,
atascii_table, sizeof(atascii_table) / sizeof(atascii_table[0]), atascii_table, sizeof(atascii_table) / sizeof(atascii_table[0]),
atascii_unicode_table, atascii_ext_table}, atascii_unicode_table, atascii_ext_table, false},
{"PETSCIIU", CIOLIB_PETSCIIU, ftstr_to_utf8, utf8_to_cpstr, ft_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext, {"PETSCIIU", CIOLIB_PETSCIIU, ftstr_to_utf8, utf8_to_cpstr, ft_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext,
petsciiu_table, sizeof(petsciiu_table) / sizeof(petsciiu_table[0]), petsciiu_table, sizeof(petsciiu_table) / sizeof(petsciiu_table[0]),
petsciiu_unicode_table, empty_ext_table}, petsciiu_unicode_table, empty_ext_table, false},
{"PETSCIIL", CIOLIB_PETSCIIL, ftstr_to_utf8, utf8_to_cpstr, ft_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext, {"PETSCIIL", CIOLIB_PETSCIIL, ftstr_to_utf8, utf8_to_cpstr, ft_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext,
petsciil_table, sizeof(petsciil_table) / sizeof(petsciil_table[0]), petsciil_table, sizeof(petsciil_table) / sizeof(petsciil_table[0]),
petsciil_unicode_table, empty_ext_table}, petsciil_unicode_table, empty_ext_table, false},
{"PRESTEL", CIOLIB_PRESTEL, ftstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext, {"PRESTEL", CIOLIB_PRESTEL, ftstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext,
prestel_table, sizeof(prestel_table) / sizeof(prestel_table[0]), prestel_table, sizeof(prestel_table) / sizeof(prestel_table[0]),
prestel_unicode_table, empty_ext_table}, prestel_unicode_table, empty_ext_table, false},
{"PRESTEL-SEP", CIOLIB_PRESTEL_SEP, ftstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext, {"PRESTEL-SEP", CIOLIB_PRESTEL_SEP, ftstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, ft_cpoint_from_cptable, cpoint_from_cptable_ext,
prestel_table_sep, sizeof(prestel_table_sep) / sizeof(prestel_table_sep[0]), prestel_table_sep, sizeof(prestel_table_sep) / sizeof(prestel_table_sep[0]),
prestel_unicode_table_sep, empty_ext_table}, prestel_unicode_table_sep, empty_ext_table, false},
{"ATARI-ST", CIOLIB_ATARIST, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext, {"ATARI-ST", CIOLIB_ATARIST, cpstr_to_utf8, utf8_to_cpstr, cptable_from_unicode_cpoint, cpoint_from_cptable, cpoint_from_cptable_ext,
atarist_table, sizeof(atarist_table) / sizeof(atarist_table[0]), atarist_table, sizeof(atarist_table) / sizeof(atarist_table[0]),
atarist_unicode_table, atarist_ext_table}, atarist_unicode_table, atarist_ext_table, false},
}; };
uint8_t *cp_to_utf8(enum ciolib_codepage cp, const char *cpstr, size_t buflen, size_t *outlen) uint8_t *cp_to_utf8(enum ciolib_codepage cp, const char *cpstr, size_t buflen, size_t *outlen)
......
#ifndef UTF8_CODEPAGES_H #ifndef UTF8_CODEPAGES_H
#define UTF8_CODEPAGES_H #define UTF8_CODEPAGES_H
#include <stdbool.h>
enum ciolib_codepage { enum ciolib_codepage {
CIOLIB_CP437, CIOLIB_CP437,
CIOLIB_CP1251, CIOLIB_CP1251,
CIOLIB_CP1251_B,
CIOLIB_KOI8_R, CIOLIB_KOI8_R,
CIOLIB_ISO_8859_2, CIOLIB_ISO_8859_2,
CIOLIB_ISO_8859_4, CIOLIB_ISO_8859_4,
...@@ -14,7 +17,9 @@ enum ciolib_codepage { ...@@ -14,7 +17,9 @@ enum ciolib_codepage {
CIOLIB_ISO_8859_15, CIOLIB_ISO_8859_15,
CIOLIB_ISO_8859_5, CIOLIB_ISO_8859_5,
CIOLIB_CP850, CIOLIB_CP850,
CIOLIB_CP850_B,
CIOLIB_CP865, CIOLIB_CP865,
CIOLIB_CP865_B,
CIOLIB_ISO_8859_7, CIOLIB_ISO_8859_7,
CIOLIB_ISO_8859_1, CIOLIB_ISO_8859_1,
CIOLIB_CP866M2, CIOLIB_CP866M2,
...@@ -43,6 +48,7 @@ struct codepage_def { ...@@ -43,6 +48,7 @@ struct codepage_def {
const size_t cp_table_sz; const size_t cp_table_sz;
const uint32_t *cp_unicode_table; const uint32_t *cp_unicode_table;
const uint32_t *cp_ext_unicode_table; const uint32_t *cp_ext_unicode_table;
const bool broken_vertical;
}; };
#ifdef __cplusplus #ifdef __cplusplus
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment