home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
archives
/
ckc095.zip
/
ckmiso.h
< prev
next >
Wrap
Text File
|
1989-08-22
|
7KB
|
261 lines
/* ckmiso.h -- mapping between 8859/1 and Apple format */
/* March 15, 1989 Paul Placeway */
/*
* Note that the mapping is incomplete both ways. This poses quite a
* problem: do we just leave the blank ones out, or do we cross refrence
* unrelated characters? If we do the latter, how do we tell the difference
* between like and unlike glyphs?
*/
#define ISO1toApple(c) (((((c) & 0xff) < 0x80) ? ((c) & 0xff) : \
(_l1toa[((c) & 0xff) - 0x80])) & 0xff)
#define AppletoISO1(c) (((((c) & 0xff) < 0x80) ? ((c) & 0xff) : \
(_atol1[((c) & 0xff) - 0x80])) & 0xff)
char _l1toa[128] = {
/* these are more control characters in all 8859 char sets */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0xCA, /* non-printing space */
0xC1, /* inverted ! */
0xA2, /* cent */
0xA3, /* sterling */
0xDB, /* generic curency */
0xB4, /* yen */
0, /* broken vert. bar */
0xA4, /* section */
0xAC, /* dieresis (AKA umlaut) */
0xA9, /* copyright ( (C) ) */
0xBB, /* feminine ordinal (underlined superscript a) */
0xC7, /* left guillemot (like << ) */
0xC2, /* logical not */
0xD0 /* maybe */, /* en dash */
0xA8, /* registered ( (R) ) */
0xF8, /* macron */
0xA1, /* superscript ring */
0xB1, /* plus minus */
0, /* superscript 2 */
0, /* superscript 3 */
0xAB, /* acute accent */
0xB5, /* greek lowercase mu */
0xA6, /* paragraph */
0xA5, /* bullet */
0xFC, /* cedilla */
0, /* superscript 1 */
0xBC, /* masculine ordinal (underlined superscript o) */
0xC8, /* right guillemot (like >> ) */
0, /* 1/4 */
0, /* 1/2 */
0, /* 3/4 */
0xC0, /* inverted ? */
0xCB, /* A grave */
0xE7, /* A accute */
0xE5, /* A circumflex */
0xCC, /* A tilde */
0x80, /* A dieresis */
0x81, /* A ring */
0xAE, /* AE */
0x82, /* C cedilla */
0xE9, /* E grave */
0x83, /* E accute */
0xE6, /* E circumflex */
0xE8, /* E dieresis */
0xED, /* I grave */
0xEA, /* I accute */
0xEB, /* I circumflex */
0xEC, /* I dieresis */
0, /* Uppercase Eth */
0x84, /* N tilde */
0xF1, /* O grave */
0xEE, /* O accute */
0xEF, /* O circumflex */
0xCD, /* O tilde */
0x85, /* O dieresis */
0, /* X mark */
0xAF, /* O slash */
0xF4, /* U grave */
0xF2, /* U accute */
0xF3, /* U circumflex */
0x86, /* U dieresis */
0, /* Y accute */
0, /* Uppercase Thorn */
0xA7, /* Es-sed (German double s) */
0x88, /* a grave */
0x87, /* a accute */
0x89, /* a circumflex */
0x8B, /* a tilde */
0x8A, /* a dieresis */
0x8C, /* a ring */
0xBE, /* ae */
0x8D, /* c cedilla */
0x8F, /* e grave */
0x8E, /* e accute */
0x90, /* e circumflex */
0x91, /* e dieresis */
0x93, /* i grave */
0x92, /* i accute */
0x94, /* i circumflex */
0x95, /* i dieresis */
0, /* lowercase eth */
0x96, /* n tilde */
0x98, /* o grave */
0x97, /* o accute */
0x99, /* o circumflex */
0x9B, /* o tilde */
0x9A, /* o dieresis */
0xD6, /* divide */
0xBF, /* o slash */
0x9D, /* u grave */
0x9C, /* u accute */
0x9E, /* u circumflex */
0x9F, /* u dieresis */
0, /* y accute */
0, /* lowercase thorn */
0xD8 /* y dieresis */
};
char _atol1[128] = {
0xC4, /* A dieresis */
0xC5, /* A ring */
0xC7, /* C cedilla */
0xC9, /* E accute */
0xD1, /* N tilde */
0xD6, /* O dieresis */
0xDC, /* U dieresis */
0xE1, /* a accute */
0xE0, /* a grave */
0xE2, /* a circumflex */
0xE4, /* a dieresis */
0xE3, /* a tilde */
0xE5, /* a ring */
0xE7, /* c cedilla */
0xE9, /* e accute */
0xE8, /* e grave */
0xEA, /* e circumflex */
0xEB, /* e dieresis */
0xED, /* i accute */
0xEC, /* i grave */
0xEE, /* i circumflex */
0xEF, /* i dieresis */
0xF1, /* n tilde */
0xF3, /* o accute */
0xF2, /* o grave */
0xF4, /* o circumflex */
0xF6, /* o dieresis */
0xF5, /* o tilde */
0xFA, /* u accute */
0xF9, /* u grave */
0xFB, /* u circumflex */
0xFC, /* u dieresis */
0, /* dagger */
0xB0, /* superscript ring */
0xA2, /* cent */
0xA3, /* sterling */
0xA7, /* section */
0xB7, /* bullet */
0xB6, /* paragraph */
0xDF, /* Es-sed (German double s) */
0xAE, /* registered ( (R) ) */
0xA9, /* copyright ( (C) ) */
0, /* trade mark */
0xB4, /* acute accent */
0xA8, /* dieresis (AKA umlaut) */
0, /* not equal */
0xC6, /* AE */
0xD8, /* O slash */
0, /* infinity */
0xB1, /* plus minus */
0, /* less than or equal to */
0, /* greater than or equal to */
0xA5, /* yen */
0xB5, /* greek lowercase mu */
0, /* partial */
0, /* Uppercase Sigma (Summation) */
0, /* Uppercase Pi (Power) */
0, /* lowercase pi */
0, /* integral */
0xAA, /* feminine ordinal (underlined superscript a) */
0xBA, /* masculine ordinal (underlined superscript o) */
0, /* Uppercase Omega */
0xE6, /* ae */
0xF8, /* o slash */
0xBF, /* inverted ? */
0xA1, /* inverted ! */
0xAC, /* logical not */
0, /* radical (square root) */
0, /* florin */
0, /* approx equal */
0, /* Uppercase Delta */
0xAB, /* left guillemot (like << ) */
0xBB, /* right guillemot (like >> ) */
0, /* elipsis (...) */
0xA0, /* non-printing space */
0xC0, /* A grave */
0xC3, /* A tilde */
0xD5, /* O tilde */
0, /* OE */
0, /* oe */
0xAD /* maybe */, /* en dash */
0, /* em dash */
0, /* left doublequote ( `` ) */
0, /* right doublequote ( '' ) */
0, /* left singlequote ( ` ) */
0, /* right singlequote ( ' ) */
0xF7, /* divide */
0, /* lozenge (open diamond) */
0xFF, /* y dieresis */
0, /* Y dieresis */
0, /* divide (a / with less slope) */
0xA4, /* generic curency */
0, /* single left guil (like < ) */
0, /* single left guil (like > ) */
0, /* fi */
0, /* fl */
0, /* double dagger */
0, /* centered (small) dot */
0, /* baseline single close quote */
0, /* baseline double close quote */
0, /* per thousand */
0xC2, /* A circumflex */
0xCA, /* E circumflex */
0xC1, /* A accute */
0xCB, /* E dieresis */
0xC8, /* E grave */
0xCD, /* I accute */
0xCE, /* I circumflex */
0xCF, /* I dieresis */
0xCC, /* I grave */
0xD3, /* O accute */
0xD4, /* O circumflex */
0, /* (closed) Apple */
0xD2, /* O grave */
0xDA, /* U accute */
0xDB, /* U circumflex */
0xD9, /* U grave */
0, /* dotless i */
0, /* circumflex */
0, /* tilde */
0xAF, /* macron */
0, /* breve */
0, /* dot accent */
0, /* ring accent */
0xB8, /* cedilla */
0, /* Hungarian umlaut */
0, /* ogonek */
0 /* caron */
};