mirror of
https://github.com/ganelson/inform.git
synced 2024-07-02 23:14:57 +03:00
Reimplemented ZSCII character case conversions
This commit is contained in:
parent
fa56bfa85e
commit
e14abc3b8e
|
@ -323,27 +323,53 @@ the ZSCII character set.
|
|||
|
||||
@c
|
||||
[ VM_UpperToLowerCase c;
|
||||
switch (c) {
|
||||
'A' to 'Z': c = c + 32;
|
||||
202, 204, 212, 214, 221: c--;
|
||||
217, 218: c = c - 2;
|
||||
158 to 160, 167 to 168, 208 to 210: c = c - 3;
|
||||
186 to 190, 196 to 200: c = c - 5 ;
|
||||
175 to 180: c = c - 6;
|
||||
}
|
||||
return c;
|
||||
if (c < 'A') return c;
|
||||
if (c <= 'Z') return c + 32;
|
||||
if (c < 158) return c;
|
||||
if (c <= 160) return c - 3;
|
||||
if (c < 167) return c;
|
||||
if (c <= 168) return c - 3;
|
||||
if (c < 175) return c;
|
||||
if (c <= 180) return c - 6;
|
||||
if (c < 186) return c;
|
||||
if (c <= 190) return c - 5;
|
||||
if (c < 196) return c;
|
||||
if (c <= 200) return c - 5;
|
||||
if (c == 202) return c - 1;
|
||||
if (c == 204) return c - 1;
|
||||
if (c < 208) return c;
|
||||
if (c <= 210) return c - 3;
|
||||
if (c == 212) return c - 1;
|
||||
if (c == 214) return c - 1;
|
||||
if (c == 217) return c - 2;
|
||||
if (c == 218) return c - 2;
|
||||
if (c == 221) return c - 1;
|
||||
return c;
|
||||
];
|
||||
|
||||
[ VM_LowerToUpperCase c;
|
||||
switch (c) {
|
||||
'a' to 'z': c = c - 32;
|
||||
201, 203, 211, 213, 220: c++;
|
||||
215, 216: c = c + 2;
|
||||
155 to 157, 164 to 165, 205 to 207: c = c + 3;
|
||||
181 to 185, 191 to 195: c = c + 5 ;
|
||||
169 to 174: c = c + 6;
|
||||
}
|
||||
return c;
|
||||
if (c < 'a') return c;
|
||||
if (c <= 'z') return c - 32;
|
||||
if (c < 155) return c;
|
||||
if (c <= 157) return c + 3;
|
||||
if (c < 164) return c;
|
||||
if (c <= 165) return c + 3;
|
||||
if (c < 169) return c;
|
||||
if (c <= 174) return c + 6;
|
||||
if (c < 181) return c;
|
||||
if (c <= 185) return c + 5;
|
||||
if (c < 191) return c;
|
||||
if (c <= 195) return c + 5;
|
||||
if (c == 201) return c + 1;
|
||||
if (c == 203) return c + 1;
|
||||
if (c < 205) return c;
|
||||
if (c <= 207) return c + 3;
|
||||
if (c == 211) return c + 1;
|
||||
if (c == 213) return c + 1;
|
||||
if (c == 215) return c + 2;
|
||||
if (c == 216) return c + 2;
|
||||
if (c == 220) return c + 1;
|
||||
return c;
|
||||
];
|
||||
|
||||
@p The Screen.
|
||||
|
|
Loading…
Reference in a new issue