diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-08-29 08:14:32 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-08-29 11:20:47 -0700 |
commit | 1b18ec6ee960cb93f2f76d5cbaea8dc61a7339c4 (patch) | |
tree | a3527edd88b3bb00c5f963afbd3650dafb033d32 /103grapheme.subx | |
parent | 34c7221b847e9105b0db19bcf89d4e525c6a6765 (diff) | |
download | mu-1b18ec6ee960cb93f2f76d5cbaea8dc61a7339c4.tar.gz |
import a few more unicode blocks from Unifont
shell/ is currently broken; we've overflowed available contiguous space for code. Block names based on https://www.compart.com/en/unicode/block: 0x0000 - 0x007f Basic Latin 128 0x0080 - 0x00ff Latin-1 Supplement 128 0x0100 - 0x017f Latin Extended-A 128 0x0180 - 0x024f Latin Extended-B 208 0x0250 - 0x02af IPA Extensions 96 0x02b0 - 0x02ff Spacing Modifier Letters 80 0x0300 - 0x036f Combining Diacritical Marks 112 0x0370 - 0x03ff Greek and Coptic 135 0x0400 - 0x04ff Cyrillic 256 0x0500 - 0x052f Cyrillic Supplement 48 0x0530 - 0x058f Armenian 91 0x0590 - 0x05ff Hebrew 88 0x0600 - 0x06ff Arabic 255 0x0700 - 0x074f Syriac 77 0x0750 - 0x077f Arabic Supplement 48 0x0780 - 0x07bf Thaana 50 0x07c0 - 0x07ff NKo 62 0x0800 - 0x083f Samaritan 61 0x0840 - 0x085f Mandaic 29 0x0860 - 0x086f Syriac Supplement 11 0x08a0 - 0x08ff Arabic Extended-A 84 0x0900 - 0x097f Devanagari 128 0x0980 - 0x09ff Bengali 96 0x0a00 - 0x0a7f Gurmukhi 80 0x0a80 - 0x0aff Gujarati 91 0x0b00 - 0x0b7f Oriya 91 0x0b80 - 0x0bff Tamil 72 0x0c00 - 0x0c7f Telugu 98 0x0c80 - 0x0cff Kannada 89 0x0d00 - 0x0d7f Malayalam 118 0x0d80 - 0x0dff Sinhala 91 0x0e00 - 0x0e7f Thai 87 0x0e80 - 0x0eff Lao 82 0x0f00 - 0x0fff Tibetan 211 0x1000 - 0x109f Myanmar 160 0x10a0 - 0x10ff Georgian 88 But don't trust the block sizes above. Thanks to gdb[1] for this helper: define z print 2 * (0x$arg1 - 0x$arg0 + 1) end e.g: (gdb) z 10a0 10ff 192 [1] https://sourceware.org/gdb/current/onlinedocs/gdb/Define.html
Diffstat (limited to '103grapheme.subx')
-rw-r--r-- | 103grapheme.subx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/103grapheme.subx b/103grapheme.subx index 2ed65643..eaeacfab 100644 --- a/103grapheme.subx +++ b/103grapheme.subx @@ -77,8 +77,9 @@ draw-grapheme-on-screen-buffer: # buffer: (addr byte), g: grapheme, x: int, y: c1 4/subop/shift-left *(ebp+24) 4/imm8/log2-font-height # esi = g 8b/-> *(ebp+0xc) 6/r32/esi - # if (g >= 128) return # characters beyond ASCII currently not supported - 81 7/subop/compare %esi 0x80/imm32 + # if (g >= 4352) return # unicode planes supported: latin, greek, cyrillic, armenian, hebrew, arabic, syriac, thaana, n'ko, indian (iscii), sinhala, thai, lao, tibetan, myanmar, georgian + # next few to support: CJK, ethiopic, cherokee, ... + 81 7/subop/compare %esi 0x1100/imm32 0f 8d/jump-if->= $draw-grapheme-on-screen-buffer:end/disp32 # var letter-bitmap/esi = font[g] 69/multiply %esi 0x21/imm32/glyph-size 6/r32/esi |