Subversion Repositories Kolibri OS

Rev

Rev 2318 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. ; Kolibri-A vectorized system fonts
  3. ; A.Jerdev <artem@jerdev.co.uk>
  4. ; Copyright (C) KolibriOS Team, 2011
  5. ;
  6. ; font data section
  7.  
  8.  
  9. macro gptick    origin, r, tick
  10. {    dw  (origin mod 64) shl 10 + (r mod 8) shl 7 + (tick mod 128) }
  11.  
  12. macro ritick    x, y, tick
  13. {    dw  (x mod 16) shl 12 + (y mod 32) shl 7 + (tick mod 4) shl 4 }
  14.  
  15. macro cstick    x, y, r, tick
  16. {    dw  (x mod 16) shl 12 + (y mod 32) shl 7 + (tick mod 4) shl 4 + 2 + (r mod 2)}
  17.  
  18. macro mstick    x, y, r, tick
  19. {    dw  (x mod 16) shl 12 + (y mod 32) shl 7 + (rmod 4) shl 5 + (tick mod 32) }
  20.  
  21. macro lntick    x, y, r, len
  22. {    dw  (x mod 16) shl 12 + (y mod 32) shl 7 + (rmod 4) shl 5 + (len mod 16) }
  23.  
  24. ;align 8
  25. sdsh_data:
  26.  
  27. .numfonts   db  2               ; number of system fonts
  28. .numsptks   db  32              ; number of special ticks
  29. .numticks   dw  ?               ; total number of ticks
  30. .sp_ticks   dd  .special_ticks  ; special table
  31. .ticktble   dd  .tick_table     ; general table
  32. .origtble   dd  .origs          ; origins table
  33. .chartble   dd  .chars          ; characters table
  34. .pix4       db  34
  35. .pix5       db  40
  36. .pix6       db  50
  37. .pix7       db  60
  38. .pix8       db  70
  39.  
  40.  
  41. align 16
  42. .info:
  43.  
  44. ;    System font #0: 5x9  
  45. .fnt0.x     db  5       ; X-width
  46. .fnt0.y     db  9       ; Y-heigth
  47. .fnt0.rs    dw  0       ; reserved
  48. .fnt0.tab   dd  .table0
  49. .fnt0.org   dd  .origs0
  50.  
  51. align 16
  52. ;    System font #1: 7x10  
  53. .fnt1.x     db  7       ; X-width
  54. .fnt1.y     db  9       ; Y-heigth
  55. .fnt1.rs    dw  0       ; reserved
  56. .fnt1.tab   dd  .table1
  57. .fnt1.org   dd  .origs1
  58.  
  59. align 4
  60. .origs0:
  61.             db  0x00    ; zero
  62.             db  0x02    ; 1     s/7Xæëÿ
  63.             db  0x05    ; 2     6W~ç
  64.             db  0x06    ; 3     ^*Sâú
  65.             db  0x08    ; 4     \ÆÚ
  66.             db  0x32    ; 5     0(adqceku{
  67.             db  0x42    ; 6     Æê
  68.             db  0x43    ; 7     <ç
  69.             db  0x07    ; 8     &>?23á
  70.             db  0x18    ; 9     )9D
  71.             db  0x44    ; 10    *8B
  72.             db  0x03    ; 11    $
  73.             db  0x46    ; 12    vJVgæ
  74.             db  0x35    ; 13    5}ßì
  75.             db  0x15    ; 14    4
  76.             db  0x45    ; 15    9e
  77.             db  0x16    ; 16    abphinÛ
  78.             db  0x13    ; 17    f
  79.             db  0x48    ; 18    Y
  80.             db  0x22    ; 19    j&ä
  81.             db  0x36    ; 20    mt
  82.             db  0x25    ; 21    r
  83.             db  0x12    ; 22    wö
  84.             db  0x26    ; 23    {Ú
  85.             db  0x24    ; 24    }úþ
  86.             db  0x28    ; 25    É
  87.             db  0x14    ; 26    Ëûüÿ
  88.             db  0x34    ; 27    ×Ó÷
  89.             db  0x38    ; 28    Þé
  90.             db  0x41    ; 29    ó
  91.  
  92. align 4
  93. .tick_table:
  94. .v1:
  95.                             ;  32   33
  96.             db  01b         ; XX    XX  
  97.             db  11b         ;   X    X  
  98. .v2:
  99.                             ;  34    35     36    37    38
  100.             db  0100b       ; XXX    XXX   XX    XX    XX
  101.             db  1100b       ;    X     X     X     XX    X
  102.             db  0001b       ;                 X          X
  103.             db  1001b       ;
  104.             db  0101b       ;
  105.             db  ?
  106. .v3:
  107.                             ;  40    41     42     43    44   45    46     47
  108.             db  011001b     ; XX     XXX   XXX     XX   XX    XX   XXXX    XX
  109.             db  001100b     ;   XX     X      X     X     X     X     X     X
  110.             db  000100b     ;     X    X      X     X      X    X          X
  111.             db  000011b     ;                       X      X    X         X
  112.             db  010001b     ;
  113.             db  000101b     ;
  114.             db  110000b     ;
  115.             db  000111b     ;
  116.  
  117. .v4:
  118.             db  01010001b                       ; f0: ?23S
  119.             db  01000101b                       ; f0: 35
  120.             db  01010000b                       ; f0: Ë
  121.             db  01010010b                       ; f0: ë
  122.             db  00011101b                       ; f0: úûü
  123. .v5:
  124.             db  00000001b, 01b                  ;1f0: )(Þ
  125.             db  00000001b, 10b                  ; f0: /7X
  126.             db  01000101b, 01b                  ;3f0: 8uÚÛæ
  127.             db  01010100b, 00b                  ; f0: BPRa
  128.             db  00000010b, 01b                  ;5f0: \X&
  129.             db  00010100b, 00b                  ; f0: ahnu×
  130.             db  10111000b, 00b                  ;7f0: Æ
  131.  
  132. .v6:
  133.             db  01000000b, 0101b                ; f0: Jfg
  134.             db  01010100b, 0001b                ; f0: ß
  135. .v7:
  136.             db  11011001b, 011001b              ; f0: ><vVY
  137.             db  00010001b, 010001b              ; f0: D
  138.             db  00010100b, 000101b              ; f0: bcdpqg
  139. .v8:
  140.             db  00110000b, 00001100b            ; f0: 5
  141. .v10:
  142.             db  00010100b, 01010000b, 0100b     ; f0: @0CGOQÑÎÝ
  143.             db  01010100b, 01010001b, 0100b     ; f0: 689
  144. .v11:
  145.             db  10100000b, 01010010b, 000001b   ; f0: $s
  146.  
  147.  
  148. align 4
  149. .table0:
  150.    times 33 dw 0
  151.         dw (.ch0_33 -.chars)*16 + 2         ; #33 !
  152.         dw (.ch0_34 -.chars)*16 + 2         ; #34 "            
  153.         dw (.ch0_35 -.chars)*16 + 4         ; #35 #
  154.         dw (.ch0_36 -.chars)*16 + 2         ; #36 $
  155.         dw (.ch0_37 -.chars)*16 + 3         ; #37 %
  156.         dw (.ch0_38 -.chars)*16 + 4         ; #38 &  
  157.         dw (.ch0_39 -.chars)*16 + 1         ; #39 '
  158.         dw (.ch0_40 -.chars)*16 + 1         ; #40 (          
  159.         dw (.ch0_41 -.chars)*16 + 1         ; #41 )
  160.         dw (.ch0_42 -.chars)*16 + 3         ; #42 *
  161.         dw (.ch0_43 -.chars)*16 + 2         ; #43 +
  162.         dw (.ch0_44 -.chars)*16 + 2         ; #44 ,    
  163.         dw (.ch0_45 -.chars)*16 + 1         ; #45 -    
  164.         dw (.ch0_46 -.chars)*16 + 1         ; #46 .                    
  165.         dw (.ch0_47 -.chars)*16 + 1         ; #47 /            
  166.         dw (.ch0_48 -.chars)*16 + 2         ; #48 0
  167.         dw (.ch0_49 -.chars)*16 + 2         ; #49 1
  168.         dw (.ch0_50 -.chars)*16 + 3         ; #50 2
  169.         dw (.ch0_51 -.chars)*16 + 3         ; #51 3
  170.         dw (.ch0_52 -.chars)*16 + 3         ; #52 4
  171.         dw (.ch0_53 -.chars)*16 + 2         ; #53 5
  172.         dw (.ch0_54 -.chars)*16 + 2         ; #54 6
  173.         dw (.ch0_55 -.chars)*16 + 2         ; #55 7
  174.         dw (.ch0_56 -.chars)*16 + 2         ; #56 8
  175.         dw (.ch0_57 -.chars)*16 + 2         ; #57 9
  176.         dw (.ch0_58 -.chars)*16 + 2         ; #58 :
  177.         dw (.ch0_59 -.chars)*16 + 3         ; #59 ;
  178.         dw (.ch0_60 -.chars)*16 + 1         ; #60 <
  179.         dw (.ch0_61 -.chars)*16 + 2         ; #61 =
  180.         dw (.ch0_62 -.chars)*16 + 1         ; #62 >
  181.         dw (.ch0_63 -.chars)*16 + 3         ; #63 ?
  182.         dw (.ch0_64 -.chars)*16 + 2         ; #64 @
  183.         dw (.ch0_65 -.chars)*16 + 4         ; #65 A
  184.         dw (.ch0_66 -.chars)*16 + 3         ; #66 B
  185.         dw (.ch0_67 -.chars)*16 + 2         ; #67 C
  186.         dw (.ch0_68 -.chars)*16 + 2         ; #68 D
  187.         dw (.ch0_69 -.chars)*16 + 4         ; #69 E
  188.         dw (.ch0_70 -.chars)*16 + 3         ; #70 F
  189.         dw (.ch0_71 -.chars)*16 + 2         ; #71 G
  190.         dw (.ch0_72 -.chars)*16 + 3         ; #72 H
  191.         dw (.ch0_73 -.chars)*16 + 3         ; #73 I
  192.         dw (.ch0_74 -.chars)*16 + 2         ; #74 J
  193.         dw (.ch0_75 -.chars)*16 + 3         ; #75 K
  194.         dw (.ch0_76 -.chars)*16 + 2         ; #76 L
  195.         dw (.ch0_78 -.chars)*16 + 3         ; #78 N
  196.         dw (.ch0_79 -.chars)*16 + 2         ; #79 O
  197.         dw (.ch0_80 -.chars)*16 + 2         ; #80 P
  198.         dw (.ch0_81 -.chars)*16 + 3         ; #81 Q
  199.         dw (.ch0_82 -.chars)*16 + 3         ; #82 R
  200.         dw (.ch0_83 -.chars)*16 + 3         ; #83 S
  201.         dw (.ch0_84 -.chars)*16 + 3         ; #84 T
  202.         dw (.ch0_85 -.chars)*16 + 3         ; #85 U
  203.         dw (.ch0_86 -.chars)*16 + 3         ; #86 V
  204.         dw (.ch0_87 -.chars)*16 + 3         ; #87 W
  205.         dw (.ch0_88 -.chars)*16 + 2         ; #88 X
  206.         dw (.ch0_89 -.chars)*16 + 2         ; #88 Y
  207.         dw (.ch0_90 -.chars)*16 + 3         ; #90 Z
  208.         dw (.ch0_91 -.chars)*16 + 3         ; #91 [
  209.         dw (.ch0_92 -.chars)*16 + 1         ; #92 \
  210.         dw (.ch0_93 -.chars)*16 + 3         ; #93 ]
  211.         dw (.ch0_94 -.chars)*16 + 1         ; #94 ^
  212.         dw (.ch0_95 -.chars)*16 + 1         ; #95 _
  213.         dw (.ch0_96 -.chars)*16 + 1         ; #96 `
  214.         dw (.ch0_97 -.chars)*16 + 2         ; #97  a
  215.         dw (.ch0_98 -.chars)*16 + 2         ; #98  b
  216.         dw (.ch0_99 -.chars)*16 + 3         ; #99  c
  217.         dw (.ch0_100-.chars)*16 + 2         ; #100 d
  218.         dw (.ch0_101-.chars)*16 + 2         ; #101 e
  219.         dw (.ch0_102-.chars)*16 + 3         ; #102 f
  220.         dw (.ch0_103-.chars)*16 + 2         ; #103 g
  221.         dw (.ch0_104-.chars)*16 + 2         ; #104 h
  222.         dw (.ch0_105-.chars)*16 + 3         ; #105 i
  223.         dw (.ch0_106-.chars)*16 + 3         ; #106 j
  224.         dw (.ch0_107-.chars)*16 + 2         ; #107 k
  225.         dw (.ch0_108-.chars)*16 + 3         ; #108 l
  226.         dw (.ch0_109-.chars)*16 + 4         ; #109 m
  227.         dw (.ch0_110-.chars)*16 + 2         ; #110 m
  228.         dw (.ch0_111-.chars)*16 + 1         ; #111 o
  229.         dw (.ch0_112-.chars)*16 + 2         ; #112 p
  230.         dw (.ch0_113-.chars)*16 + 2         ; #113 q
  231.         dw (.ch0_113-.chars)*16 + 2         ; #113 r
  232.         dw (.ch0_115-.chars)*16 + 1         ; #115 s
  233.         dw (.ch0_116-.chars)*16 + 3         ; #116 t
  234.         dw (.ch0_117-.chars)*16 + 2         ; #117 u
  235.         dw (.ch0_118-.chars)*16 + 1         ; #118 v
  236.         dw (.ch0_119-.chars)*16 + 4         ; #119 w
  237.         dw (.ch0_120-.chars)*16 + 2         ; #120 x
  238.         dw (.ch0_121-.chars)*16 + 2         ; #121 y
  239.         dw (.ch0_122-.chars)*16 + 3         ; #122 z
  240.         dw (.ch0_123-.chars)*16 + 2         ; #123 {
  241.         dw (.ch0_124-.chars)*16 + 1         ; #124 |
  242.         dw (.ch0_125-.chars)*16 + 2         ; #125 }
  243.         dw (.ch0_126-.chars)*16 + 2         ; #126 ~
  244.         dw (.ch0_127-.chars)*16 + 2         ; #127 ¦
  245.  
  246.         dw (.ch0_128-.chars)*16 + 4         ; #128 A
  247.         dw (.ch0_129-.chars)*16 + 3         ; #129 Á
  248.         dw (.ch0_130-.chars)*16 + 3         ; #130 Â
  249.         dw (.ch0_131-.chars)*16 + 2         ; #131 Ã
  250.         dw (.ch0_132-.chars)*16 + 6         ; #132 Ä
  251.         dw (.ch0_133-.chars)*16 + 4         ; #133 Å
  252.         dw (.ch0_134-.chars)*16 + 3         ; #134 Æ
  253.         dw (.ch0_135-.chars)*16 + 3         ; #135 Ç
  254.         dw (.ch0_136-.chars)*16 + 3         ; #136 È
  255.         dw (.ch0_137-.chars)*16 + 4         ; #137 É
  256.         dw (.ch0_138-.chars)*16 + 3         ; #138 K
  257.         dw (.ch0_139-.chars)*16 + 3         ; #139 Ë
  258.         dw (.ch0_140-.chars)*16 + 4         ; #140 Ì
  259.         dw (.ch0_141-.chars)*16 + 4         ; #141 Í
  260.         dw (.ch0_142-.chars)*16 + 2         ; #142 Î
  261.         dw (.ch0_143-.chars)*16 + 3         ; #143 Ï
  262.         dw (.ch0_144-.chars)*16 + 2         ; #144 Ð
  263.         dw (.ch0_145-.chars)*16 + 2         ; #145 Ñ
  264.         dw (.ch0_146-.chars)*16 + 3         ; #146 T
  265.         dw (.ch0_147-.chars)*16 + 3         ; #147 Ó
  266.         dw (.ch0_148-.chars)*16 + 3         ; #148 Ô
  267.         dw (.ch0_149-.chars)*16 + 2         ; #149 Õ
  268.         dw (.ch0_150-.chars)*16 + 4         ; #150 Ö
  269.         dw (.ch0_151-.chars)*16 + 2         ; #151 ×
  270.         dw (.ch0_152-.chars)*16 + 4         ; #152 Ø
  271.         dw (.ch0_153-.chars)*16 + 5         ; #153 Ù
  272.         dw (.ch0_154-.chars)*16 + 3         ; #154 Ú
  273.         dw (.ch0_155-.chars)*16 + 3         ; #155 Û
  274.         dw (.ch0_156-.chars)*16 + 2         ; #156 Ü
  275.         dw (.ch0_157-.chars)*16 + 3         ; #157 Ý
  276.         dw (.ch0_158-.chars)*16 + 4         ; #158 Þ
  277.         dw (.ch0_159-.chars)*16 + 3         ; #159 ß
  278.         dw (.ch0_160-.chars)*16 + 2         ; #160 a
  279.         dw (.ch0_161-.chars)*16 + 2         ; #161 á
  280.         dw (.ch0_162-.chars)*16 + 3         ; #162 â
  281.         dw (.ch0_163-.chars)*16 + 2         ; #163 ã
  282.         dw (.ch0_164-.chars)*16 + 4         ; #164 ä
  283.         dw (.ch0_165-.chars)*16 + 2         ; #165 e
  284.         dw (.ch0_166-.chars)*16 + 3         ; #166 æ
  285.         dw (.ch0_167-.chars)*16 + 3         ; #167 ç
  286.         dw (.ch0_168-.chars)*16 + 3         ; #168 è
  287.         dw (.ch0_169-.chars)*16 + 4         ; #169 é
  288.         dw (.ch0_170-.chars)*16 + 3         ; #170 ê
  289.         dw (.ch0_171-.chars)*16 + 2         ; #171 ë
  290.         dw (.ch0_172-.chars)*16 + 3         ; #172 ì
  291.         dw (.ch0_173-.chars)*16 + 3         ; #173 í
  292.         dw (.ch0_174-.chars)*16 + 1         ; #174 î
  293.         dw (.ch0_175-.chars)*16 + 3         ; #175 ï
  294.    times 48 dw 0                            ; #176-223
  295.         dw (.ch0_224-.chars)*16 + 2         ; #224 p
  296.         dw (.ch0_225-.chars)*16 + 2         ; #225 c
  297.         dw (.ch0_226-.chars)*16 + 2         ; #226 ò
  298.         dw (.ch0_227-.chars)*16 + 3         ; #227 ó
  299.         dw (.ch0_228-.chars)*16 + 2         ; #228 ô
  300.         dw (.ch0_229-.chars)*16 + 2         ; #229 õ
  301.         dw (.ch0_230-.chars)*16 + 3         ; #230 ö
  302.         dw (.ch0_231-.chars)*16 + 2         ; #231 ÷
  303.         dw (.ch0_232-.chars)*16 + 4         ; #232 ø
  304.         dw (.ch0_233-.chars)*16 + 5         ; #233 ù
  305.         dw (.ch0_234-.chars)*16 + 2         ; #234 ú
  306.         dw (.ch0_235-.chars)*16 + 3         ; #235 û
  307.         dw (.ch0_236-.chars)*16 + 2         ; #236 ü
  308.         dw (.ch0_237-.chars)*16 + 3         ; #237 ý
  309.         dw (.ch0_238-.chars)*16 + 3         ; #238 þ
  310.         dw (.ch0_239-.chars)*16 + 3         ; #239 ÿ
  311.         dw (.ch0_240-.chars)*16 + 5         ; #240 ¨
  312.         dw (.ch0_241-.chars)*16 + 4         ; #241 ¸
  313.    times 14 dw 0                            ; #142-255
  314.  
  315. align 4
  316. .chars:
  317. .ch0_33:    !
  318.     ritick      2, 2, 0      
  319.     lntick      2, 4, 2, 5      
  320. .ch0_34:    ; "
  321. .ch0_39:    ; '
  322.     lntick      1, 8, 2, 2      
  323.     lntick      3, 8, 2, 2      
  324. .ch0_36:    ; $
  325.     lntick      2, 2, 2, 5
  326.     gptick     11, 0, v11_1      
  327. .ch0_37:    ; %
  328.     cstick      0, 9, 0, 0      
  329.     lntick      0, 3, 1, 5      
  330.     cstick      3, 3, 0, 0      
  331. .ch0_38:    ; &
  332.     gptick      7, 6, v5_5
  333.     gptick     19, 4, 38
  334. .ch0_40:    ; (
  335.     gptick      5, 3, v5_1
  336. .ch0_41:    ; )
  337.     gptick      9, 7, v5_1
  338. .ch0_42:    ; *
  339.     gptick      3, 7, 33
  340.     gptick     10, 3, 33
  341.     lntick      3, 3, 2, 5      
  342. .ch0_43:    ; +
  343.     lntick      3, 3, 2, 5      
  344. .ch0_45:    ; -
  345. .ch0_35:    ; #
  346. .ch0_61:    ; =
  347.     lntick      0, 4, 0, 5      
  348.     lntick      0, 6, 0, 5      
  349.     lntick      1, 2, 2, 5      
  350.     lntick      3, 2, 2, 5      
  351. .ch0_58:    ; :
  352. .ch0_59:    ; ;
  353.     cstick      1, 7, 0, 0      
  354. .ch0_46:    ; .
  355. .ch0_44:    ; ,
  356.     cstick      1, 3, 0, 0      
  357.     ritick      1, 1, 0      
  358. .ch0_47:    ; /
  359. .ch0_55:    ; 7
  360.     gptick      1, 2, v5_2
  361.     lntick      0, 8, 0, 4
  362. .ch0_64:    ; @
  363.     cstick      3, 6, 0, 1
  364. .ch0_48:    ; 0
  365. .ch0_79:    ; O
  366. .ch0_142:   ; Î
  367. .ch0_81:    ; Q
  368.     gptick      5, 4, v10_1
  369.     lntick      4, 4, 2, 4
  370.     lntick      3, 1, 0, 2
  371. .ch0_49:    ; 1
  372. .ch0_124:   ; |
  373.     lntick      2, 2, 2, 7      
  374.     ritick      1, 6, 0      
  375. .ch0_50:    ; 2
  376.     lntick      0, 2, 0, 5
  377.     lntick      1, 3, 1, 3
  378. .ch0_83:    ; S
  379.     gptick      3, 2, v4_1
  380. .ch0_51:    ; 3
  381.     lntick      1, 5, 0, 3
  382.     gptick      8, 1, v4_1
  383. .ch0_53:    ; 5
  384.     gptick     10, 6, v4_2
  385.     gptick     13, 4, v8_1
  386. .ch0_52:    ; 4
  387.     gptick     14, 2, 32
  388.     lntick      0, 4, 0, 5
  389.     lntick      3, 2, 2, 7
  390. .ch0_54:    ; 6
  391.     gptick     14, 0, v10_2
  392.     gptick      2, 0, 44
  393. .ch0_56:    ; 8
  394.     gptick     10, 6, v5_3
  395. .ch0_57:    ; 9
  396.     gptick      9, 0, v10_2
  397.     gptick     15, 0, 44
  398. .ch0_60:    ; <
  399.     gptick      7, 4, v7_1
  400. .ch0_62:    ; >
  401.     gptick      8, 4, v7_1
  402. .ch0_63:    ; ?
  403.     gptick      7, 1, v4_1
  404.  
  405. .ch0_66:    ; B
  406. .ch0_130:   ; B
  407.     gptick     10, 6, 45
  408. .ch0_80:    ; P
  409. .ch0_144:   ; Ð
  410. .ch0_82:    ; R
  411.     gptick      9, 0, v5_4
  412. .ch0_75:    ; K
  413. .ch0_138:   ; K
  414.     lntick      0, 2, 2, 7
  415.     lntick      4, 2, 3, 3
  416.     lntick      1, 5, 1, 4
  417. .ch0_67:    ; C
  418. .ch0_145:   ; Ñ
  419.     ritick      5, 3, 0
  420. .ch0_71:    ; G
  421.     gptick      5, 4, v10_1
  422.     gptick      4, 5, 43
  423. .ch0_68:    ; D
  424.     gptick      9, 0, v7_1
  425. .ch0_76:    ; L
  426.     lntick      0, 2, 2, 7      
  427.     lntick      1, 2, 0, 4      
  428. .ch0_240:   ; ¨
  429.     ritick      1, 9, 0
  430.     ritick      3, 9, 0
  431. .ch0_133:   ; E
  432. .ch0_69:    ; E
  433.     lntick      1, 2, 0, 4      
  434. .ch0_70:    ; F
  435.     lntick      1, 8, 0, 4      
  436. .ch0_72:    ; H
  437. .ch0_141:   ; H
  438.     lntick      1, 5, 0, 3      
  439.     lntick      0, 2, 2, 7      
  440.     lntick      0, 4, 2, 7      
  441. .ch0_73:    ; I
  442.     lntick      1, 8, 0, 3
  443. .ch0_74:    ; J
  444.     gptick     12, 6, v6_1
  445.     lntick      3, 8, 0, 3
  446. .ch0_84:    ; T
  447. .ch0_146:   ; Ò
  448.     lntick      3, 3, 2, 5
  449.     lntick      2, 2, 0, 3
  450.     lntick      0, 8, 0, 5
  451. .ch0_77:    ; M
  452. .ch0_140:   ; M
  453.     gptick      3, 5, 2, 32
  454.     ritick      1, 7, 0
  455. .ch0_78:    ; N
  456.     lntick      0, 2, 2, 7
  457.     lntick      4, 2, 2, 7
  458.     lntick      3, 4, 3, 3
  459. .ch0_85:    ; U
  460.     lntick      1, 2, 0, 3
  461. .ch0_87:    ; W
  462.     lntick      0, 3, 2, 6
  463.     lntick      4, 3, 2, 6
  464.     gptick      0, 2, 1, 41
  465. .ch0_86:    ; V
  466.     lntick      0, 7, 0, 2
  467.     lntick      4, 7, 0, 2
  468. .ch0_118:   ; v
  469. .ch0_121:   ; y
  470.     gptick     12, 6, v7_1      
  471.     lntick      0, 1, 2, 2      
  472. .ch0_88:    ; X
  473. .ch0_149:   ; Õ
  474.     gptick      1, 2, v5_2
  475.     gptick      4, 6, v5_5
  476. .ch0_89:    ; Y
  477.     gptick     18, 6, v7_1
  478.     lntick      3, 2, 2, 2
  479. .ch0_90:    ; Z
  480.     lntick      0, 2, 0, 5      
  481.     lntick      0, 8, 0, 5      
  482.     lntick      0, 3, 1, 5      
  483. .ch0_92:    ; \
  484.     gptick      4, 6, v5_5
  485. .ch0_91:    ; [
  486.     lntick      1, 3, 2, 5
  487. .ch0_93:    ; ]
  488.     lntick      1, 2, 0, 3
  489.     lntick      1, 8, 0, 3
  490.     lntick      3, 3, 2, 5
  491. .ch0_65:    ; A
  492. .ch0_128:   ; À
  493.     lntick      0, 2, 2, 4
  494.     lntick      4, 2, 2, 4
  495.     lntick      1, 4, 0, 3
  496. .ch0_94:    ; ^
  497.     gptick      3, 1, 41      
  498. .ch0_95:    ; _
  499.     lntick      0, 1, 0, 5      
  500. .ch0_96:    ; `
  501.     lntick      3, 8, 3, 2      
  502. .ch0_97:    ; a
  503. .ch0_160:   ; a
  504.     gptick      5, 4, v5_4
  505.     gptick     16, 0, v5_6
  506. .ch0_129:   ; Á
  507.     lntick      1, 8, 0, 3
  508. .ch0_98:    ; b
  509.     lntick      0, 2, 2, 7
  510. .ch0_112:   ; p
  511.     gptick     16, 0, v7_3
  512.     lntick      0, 0, 2, 7
  513. .ch0_99:    ; c
  514. .ch0_225:   ; c
  515.     ritick      4, 5, 0
  516.     ritick      4, 2, 0
  517. .ch0_101:   ; e
  518. .ch0_165:   ; å
  519. .ch0_241:   ; ¸
  520.     gptick      5, 4, v7_3
  521.     gptick     15, 6, 43
  522.     ritick      1, 8, 0
  523.     ritick      3, 8, 0
  524. .ch0_100:   ; d
  525.     lntick      4, 2, 2, 7
  526. .ch0_113:   ; p
  527. .ch0_224:   ; p
  528.     gptick      5, 4, v7_3
  529.     lntick      4, 0, 2, 7
  530. .ch0_102:   ; f
  531.     gptick     17, 2, v6_1
  532.     ritick      1, 2, 0
  533.     lntick      0, 6, 0, 3
  534. .ch0_103:   ; g
  535.     gptick     12, 6, v6_1
  536.     gptick      5, 4, v7_3
  537. .ch0_104:   ; h
  538.     gptick     16, 0, v5_6
  539. .ch0_107:   ; k
  540.     lntick      0, 2, 2, 7
  541.     gptick      5, 3, 41
  542. .ch0_105:   ; i
  543.     lntick      1, 2, 0, 3
  544. .ch0_106:   ; j
  545.     gptick     16, 0, 43
  546.     ritick      2, 8, 0
  547.     gptick     19, 5, 32
  548. .ch0_108:   ; l
  549.     lntick      1, 2, 0, 3
  550.     lntick      2, 3, 2, 6
  551.     ritick      1, 8, 0
  552. .ch0_109:   ; m
  553.     lntick      2, 3, 2, 2
  554.     gptick     20, 5, 33
  555.     lntick      4, 2, 2, 4
  556. .ch0_110:   ; n
  557.     lntick      0, 2, 2, 5
  558.     gptick     16, 0, v5_6
  559. .ch0_114:   ; r
  560.     lntick      1, 2, 2, 5
  561.     gptick     21, 1, 32
  562. .ch0_115:   ; s
  563.     gptick      1, 0, v11_1      
  564. .ch0_116:   ; t
  565.     gptick     16, 0, 43
  566.     gptick     20, 3, 32      
  567.     lntick      3, 2, 0, 2
  568. .ch0_117:   ; u
  569. .ch0_227:   ; ó
  570.     lntick      4, 2, 2, 5
  571.     gptick      5, 4, v5_6
  572.     gptick     29, 5, 36
  573. .ch0_119:   ; w
  574.     lntick      2, 4, 2, 2
  575.     gptick     22, 1, 33
  576.     lntick      0, 3, 2, 4
  577.     lntick      4, 3, 2, 4
  578. .ch0_120:   ; x
  579.     lntick      0, 2, 1, 5
  580.     lntick      4, 2, 3, 5
  581. .ch0_122:   ; z
  582.     lntick      0, 2, 0, 5
  583.     lntick      0, 6, 0, 5
  584.     lntick      1, 2, 3, 3
  585. .ch0_123:   ; {
  586.     gptick      5, 3, 37
  587.     gptick     23, 2, 32
  588. .ch0_125:   ; }
  589.     gptick     13, 3, 37
  590.     gptick     24, 6, 32
  591. .ch0_126:   ; ~
  592.     gptick      2, 1, 33
  593.     lntick      3, 3, 1, 2
  594. .ch0_127:   ; ¦
  595.     lntick      2, 2, 2, 3
  596.     lntick      2, 6, 2, 3
  597. .ch0_131:   ; Ã
  598.     lntick      1, 8, 0, 4
  599. .ch0_132:   ; Ä
  600.     lntick      1, 2, 2, 6
  601.     lntick      2, 8, 0, 3
  602.     lntick      0, 1, 2, 2
  603. .ch0_150:   ; Ö
  604.     lntick      1, 2, 0, 4
  605.     lntick      3, 3, 2, 6
  606.     ritick      4, 1, 0
  607.     lntick      0, 3, 2, 6
  608. .ch0_134:   ; Æ
  609.     gptick      4, 6, v5_7
  610.     gptick      6, 2, v5_7
  611. .ch0_148:   ; Ô
  612.     lntick      2, 2, 2, 7
  613.     cstick      1, 8, 0, 3
  614. .ch0_137:   ; É
  615.     gptick     25, 2, 33
  616. .ch0_136:   ; È
  617.     lntick      0, 2, 2, 7
  618.     lntick      1, 4, 1, 3
  619. .ch0_139:   ; Ë
  620.     lntick      4, 2, 2, 7
  621.     gptick     26, 2, v4_3
  622.     lntick      0, 2, 1, 2
  623. .ch0_143:   ; Ï
  624.     lntick      0, 2, 2, 7
  625.     lntick      1, 8, 0, 3
  626. .ch0_151:   ; ×
  627.     lntick      4, 2, 2, 7
  628. .ch0_147:   ; Ó
  629.     gptick     27, 4, v5_6
  630.     lntick      4, 3, 2, 6
  631.     lntick      1, 2, 0, 3
  632. .ch0_155:   ; Û
  633.     lntick     16, 0, v5_3
  634. .ch0_152:   ; Ø
  635. .ch0_153:   ; Ù
  636.     lntick      0, 3, 2, 6    
  637.     lntick      4, 2, 2, 7    
  638.     lntick      2, 3, 2, 6    
  639.     lntick      0, 2, 0, 5    
  640.     lntick      4, 1, 2, 2
  641. .ch0_154:   ; Ú
  642. .ch0_156:   ; Ü
  643.     lntick     26, 0, v5_3
  644.     lntick      1, 3, 2, 6
  645.     ritick      0, 8, 0
  646. .ch0_135:   ; Ç
  647.     ritick      3, 5, 0
  648. .ch0_157:   ; Ý
  649.     gptick      8, 1, v4_1
  650.     gptick     10, 6, v4_2
  651.     lntick      1, 5, 0, 4
  652. .ch0_158:   ; Þ
  653.     gptick     28, 7, v5_1
  654.     lntick      2, 3, 2, 5
  655.     lntick      0, 2, 2, 7
  656.     ritick      1, 5, 0
  657. .ch0_159:   ; ß
  658.     gptick     13, 4, v6_2
  659.     lntick      4, 2, 2, 7
  660.     lntick      0, 2, 1, 3
  661. .ch0_161:   ; á
  662.     gptick      8, 1, 36
  663. .ch0_162:   ; â
  664. .ch0_111:   ; o
  665. .ch0_174:   ; o
  666.     cstick      1, 6, 0, 3
  667.     gptick      3, 2, 38
  668.     ritick      2, 7, 0
  669. .ch0_163:   ; ã
  670.     lntick      1, 7, 0, 4
  671. .ch0_164:   ; ä
  672.     lntick      1, 2, 2, 4
  673.     gptick     23, 0, 43
  674.     gptick     19, 0, 35
  675.     lntick      0, 1, 2, 2
  676. .ch0_166:   ; æ
  677.     gptick     12, 6, v5_3
  678.     gptick      1, 2, v5_3
  679.     lntick      2, 2, 2, 5
  680. .ch0_167:   ; ç
  681.     lntick      2, 4, 0, 2
  682. .ch0_237:   ; ý
  683.     gptick      2, 1, 44
  684.     gptick      7, 5, 44
  685.     lntick      2, 4, 0, 3
  686. .ch0_169:   ; é
  687.     gptick     28, 5, 33
  688. .ch0_168:   ; è
  689.     lntick      4, 2, 2, 5
  690.     lntick      1, 3, 1, 3
  691. .ch0_170:   ; ê
  692.     lntick      2, 2, 2, 5
  693.     gptick      6, 3, 41
  694.     ritick      1, 5, 0
  695. .ch0_171:   ; ë
  696.     gptick      1, 1, v4_4
  697. .ch0_172:   ; ì
  698.     lntick      4, 2, 2, 5
  699.     gptick     13, 5, 33
  700. .ch0_173:   ; í
  701.     lntick      0, 2, 2, 5
  702.     lntick      1, 4, 0, 3
  703. .ch0_175:   ; ï
  704.     lntick      4, 2, 2, 4
  705.     lntick      0, 2, 2, 4
  706. .ch0_226:   ; ò
  707.     lntick      0, 6, 0, 5
  708.     lntick      2, 2, 2, 4
  709. .ch0_228:   ; ô
  710.     cstick      1, 6, 0, 3
  711.     lntick      2, 0, 2, 6
  712. .ch0_229:   ; õ
  713.     lntick      0, 2, 1, 5
  714.     lntick      4, 2, 3, 5
  715. .ch0_230:   ; ö
  716.     lntick      0, 2, 2, 5
  717.     lntick      3, 3, 2, 4
  718.     gptick     22, 0, 46
  719. .ch0_231:   ; ÷
  720.     gptick     27, 4, 42
  721. .ch0_232:   ; ø
  722. .ch0_233:   ; ù
  723.     lntick      4, 2, 2, 5
  724.     lntick      0, 3, 2, 4
  725.     lntick      2, 3, 2, 4
  726.     lntick      0, 2, 0, 4
  727.     lntick      5, 1, 2, 2
  728. .ch0_234:   ; ú
  729.     gptick     24, 0, v4_5
  730.     gptick      6, 0, 43
  731. .ch0_235:   ; û
  732. .ch0_236:   ; ü
  733.     lntick      0, 3, 2, 4
  734.     gptick     26, 0, v4_5
  735.     lntick      4, 2, 2, 5
  736. .ch0_238:   ; þ
  737.     gptick     24, 2, v4_5
  738.     lntick      3, 2, 3, 3
  739.     lntick      0, 2, 2, 5
  740. .ch0_239:   ; ÿ
  741.     gptick     26, 3, 47
  742.     lntick      4, 2, 2, 5
  743.     gptick      1, 1, 34
  744.