Changeset 8565a42 in mainline for kernel/genarch/src/fb


Ignore:
Timestamp:
2018-03-02T20:34:50Z (8 years ago)
Author:
GitHub <noreply@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a1a81f69, d5e5fd1
Parents:
3061bc1 (diff), 34e1206 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-02 20:34:50)
git-committer:
GitHub <noreply@…> (2018-03-02 20:34:50)
Message:

Remove all trailing whitespace, everywhere.

See individual commit messages for details.

Location:
kernel/genarch/src/fb
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • kernel/genarch/src/fb/bfb.c

    r3061bc1 r8565a42  
    6161            (bfb_bpp == 0) || (bfb_scanline == 0))
    6262                return false;
    63        
     63
    6464        fb_properties_t bfb_props = {
    6565                .addr = bfb_addr,
     
    6969                .scan = bfb_scanline
    7070        };
    71        
     71
    7272        switch (bfb_bpp) {
    7373        case 8:
     
    9292                return false;
    9393        }
    94        
     94
    9595        outdev_t *fbdev = fb_init(&bfb_props);
    9696        if (!fbdev)
    9797                return false;
    98        
     98
    9999        stdout_wire(fbdev);
    100100        return true;
  • kernel/genarch/src/fb/fb.c

    r3061bc1 r8565a42  
    8484typedef struct {
    8585        SPINLOCK_DECLARE(lock);
    86        
     86
    8787        parea_t parea;
    88        
     88
    8989        uint8_t *addr;
    9090        uint16_t *backbuf;
    9191        uint8_t *glyphs;
    9292        uint8_t *bgscan;
    93        
     93
    9494        rgb_conv_t rgb_conv;
    95        
     95
    9696        unsigned int xres;
    9797        unsigned int yres;
    98        
     98
    9999        /** Number of rows that fit on framebuffer */
    100100        unsigned int rowtrim;
    101        
     101
    102102        unsigned int scanline;
    103103        unsigned int glyphscanline;
    104        
     104
    105105        unsigned int pixelbytes;
    106106        unsigned int glyphbytes;
    107107        unsigned int bgscanbytes;
    108        
     108
    109109        /** Number of columns in the backbuffer */
    110110        unsigned int cols;
    111111        /** Number of rows in the backbuffer */
    112112        unsigned int rows;
    113        
     113
    114114        /** Starting row in the cyclic backbuffer */
    115115        unsigned int start_row;
    116        
     116
    117117        /** Top-most visible row (relative to start_row) */
    118118        unsigned int offset_row;
    119        
     119
    120120        /** Current backbuffer position */
    121121        unsigned int position;
     
    236236        if (!overlay)
    237237                instance->backbuf[BB_POS(instance, col, row)] = glyph;
    238        
     238
    239239        /* Do not output if the framebuffer is used by user space */
    240240        if ((instance->parea.mapped) && (!console_override))
    241241                return;
    242        
     242
    243243        /* Check whether the glyph should be visible */
    244244        if (row < instance->offset_row)
    245245                return;
    246        
     246
    247247        unsigned int rel_row = row - instance->offset_row;
    248248        if (rel_row >= instance->rowtrim)
    249249                return;
    250        
     250
    251251        unsigned int x = COL2X(col);
    252252        unsigned int y = ROW2Y(rel_row);
    253        
     253
    254254        for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++)
    255255                memcpy(&instance->addr[FB_POS(instance, x, y + yd)],
     
    267267                        unsigned int y = ROW2Y(rel_row);
    268268                        unsigned int row = rel_row + instance->offset_row;
    269                        
     269
    270270                        for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++) {
    271271                                unsigned int x;
    272272                                unsigned int col;
    273                                
     273
    274274                                for (col = 0, x = 0; col < instance->cols;
    275275                                    col++, x += FONT_WIDTH) {
    276276                                        uint16_t glyph;
    277                                        
     277
    278278                                        if (row < instance->rows - 1) {
    279279                                                if (instance->backbuf[BB_POS(instance, col, row)] ==
    280280                                                    instance->backbuf[BB_POS(instance, col, row + 1)])
    281281                                                        continue;
    282                                                
     282
    283283                                                glyph = instance->backbuf[BB_POS(instance, col, row + 1)];
    284284                                        } else
    285285                                                glyph = 0;
    286                                        
     286
    287287                                        memcpy(&instance->addr[FB_POS(instance, x, y + yd)],
    288288                                            &instance->glyphs[GLYPH_POS(instance, glyph, yd)],
     
    292292                }
    293293        }
    294        
     294
    295295        /*
    296296         * Implement backbuffer scrolling by wrapping around
    297297         * the cyclic buffer.
    298298         */
    299        
     299
    300300        instance->start_row++;
    301301        if (instance->start_row == instance->rows)
    302302                instance->start_row = 0;
    303        
     303
    304304        memsetw(&instance->backbuf[BB_POS(instance, 0, instance->rows - 1)],
    305305            instance->cols, 0);
     
    310310        unsigned int col = instance->position % instance->cols;
    311311        unsigned int row = instance->position / instance->cols;
    312        
     312
    313313        glyph_draw(instance, fb_font_glyph(U_CURSOR), col, row, true);
    314314}
     
    318318        unsigned int col = instance->position % instance->cols;
    319319        unsigned int row = instance->position / instance->cols;
    320        
     320
    321321        glyph_draw(instance, instance->backbuf[BB_POS(instance, col, row)],
    322322            col, row, true);
     
    333333        /* Prerender glyphs */
    334334        uint16_t glyph;
    335        
     335
    336336        for (glyph = 0; glyph < FONT_GLYPHS; glyph++) {
    337337                uint32_t fg_color;
    338                
     338
    339339                if (glyph == FONT_GLYPHS - 1)
    340340                        fg_color = INV_COLOR;
    341341                else
    342342                        fg_color = FG_COLOR;
    343                
     343
    344344                unsigned int y;
    345                
     345
    346346                for (y = 0; y < FONT_SCANLINES; y++) {
    347347                        unsigned int x;
    348                        
     348
    349349                        for (x = 0; x < FONT_WIDTH; x++) {
    350350                                void *dst =
     
    357357                }
    358358        }
    359        
     359
    360360        /* Prerender background scanline */
    361361        unsigned int x;
    362        
     362
    363363        for (x = 0; x < instance->xres; x++)
    364364                instance->rgb_conv(&instance->bgscan[x * instance->pixelbytes], BG_COLOR);
     
    370370                unsigned int y = ROW2Y(rel_row);
    371371                unsigned int row = rel_row + instance->offset_row;
    372                
     372
    373373                for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++) {
    374374                        unsigned int x;
    375375                        unsigned int col;
    376                        
     376
    377377                        for (col = 0, x = 0; col < instance->cols;
    378378                            col++, x += FONT_WIDTH) {
     
    385385                }
    386386        }
    387        
     387
    388388        if (COL2X(instance->cols) < instance->xres) {
    389389                unsigned int y;
    390390                unsigned int size =
    391391                    (instance->xres - COL2X(instance->cols)) * instance->pixelbytes;
    392                
     392
    393393                for (y = 0; y < instance->yres; y++)
    394394                        memcpy(&instance->addr[FB_POS(instance, COL2X(instance->cols), y)],
    395395                            instance->bgscan, size);
    396396        }
    397        
     397
    398398        if (ROW2Y(instance->rowtrim) < instance->yres) {
    399399                unsigned int y;
    400                
     400
    401401                for (y = ROW2Y(instance->rowtrim); y < instance->yres; y++)
    402402                        memcpy(&instance->addr[FB_POS(instance, 0, y)],
     
    414414        fb_instance_t *instance = (fb_instance_t *) dev->data;
    415415        spinlock_lock(&instance->lock);
    416        
     416
    417417        switch (ch) {
    418418        case '\n':
     
    446446                instance->position++;
    447447        }
    448        
     448
    449449        if (instance->position >= instance->cols * instance->rows) {
    450450                instance->position -= instance->cols;
    451451                screen_scroll(instance);
    452452        }
    453        
     453
    454454        cursor_put(instance);
    455        
     455
    456456        spinlock_unlock(&instance->lock);
    457457}
     
    464464        fb_instance_t *instance = (fb_instance_t *) dev->data;
    465465        spinlock_lock(&instance->lock);
    466        
     466
    467467        if (instance->offset_row >= instance->rowtrim / 2)
    468468                instance->offset_row -= instance->rowtrim / 2;
    469469        else
    470470                instance->offset_row = 0;
    471        
     471
    472472        fb_redraw_internal(instance);
    473473        cursor_put(instance);
    474        
     474
    475475        spinlock_unlock(&instance->lock);
    476476}
     
    483483        fb_instance_t *instance = (fb_instance_t *) dev->data;
    484484        spinlock_lock(&instance->lock);
    485        
     485
    486486        if (instance->offset_row + instance->rowtrim / 2 <=
    487487            instance->rows - instance->rowtrim)
     
    489489        else
    490490                instance->offset_row = instance->rows - instance->rowtrim;
    491        
     491
    492492        fb_redraw_internal(instance);
    493493        cursor_put(instance);
    494        
     494
    495495        spinlock_unlock(&instance->lock);
    496496}
     
    502502{
    503503        fb_instance_t *instance = (fb_instance_t *) dev->data;
    504        
     504
    505505        spinlock_lock(&instance->lock);
    506506        fb_redraw_internal(instance);
     
    517517        assert(props->y > 0);
    518518        assert(props->scan > 0);
    519        
     519
    520520        rgb_conv_t rgb_conv;
    521521        unsigned int pixelbytes;
    522        
     522
    523523        switch (props->visual) {
    524524        case VISUAL_INDIRECT_8:
     
    570570                return NULL;
    571571        }
    572        
     572
    573573        outdev_t *fbdev = malloc(sizeof(outdev_t), FRAME_ATOMIC);
    574574        if (!fbdev)
    575575                return NULL;
    576        
     576
    577577        fb_instance_t *instance = malloc(sizeof(fb_instance_t), FRAME_ATOMIC);
    578578        if (!instance) {
     
    580580                return NULL;
    581581        }
    582        
     582
    583583        outdev_initialize("fbdev", fbdev, &fbdev_ops);
    584584        fbdev->data = instance;
    585        
     585
    586586        spinlock_initialize(&instance->lock, "*fb.instance.lock");
    587        
     587
    588588        instance->rgb_conv = rgb_conv;
    589589        instance->pixelbytes = pixelbytes;
     
    591591        instance->yres = props->y;
    592592        instance->scanline = props->scan;
    593        
     593
    594594        instance->rowtrim = Y2ROW(instance->yres);
    595        
     595
    596596        instance->cols = X2COL(instance->xres);
    597597        instance->rows = FB_PAGES * instance->rowtrim;
    598        
     598
    599599        instance->start_row = instance->rows - instance->rowtrim;
    600600        instance->offset_row = instance->start_row;
    601601        instance->position = instance->start_row * instance->cols;
    602        
     602
    603603        instance->glyphscanline = FONT_WIDTH * instance->pixelbytes;
    604604        instance->glyphbytes = ROW2Y(instance->glyphscanline);
    605605        instance->bgscanbytes = instance->xres * instance->pixelbytes;
    606        
     606
    607607        size_t fbsize = instance->scanline * instance->yres;
    608608        size_t bbsize = instance->cols * instance->rows * sizeof(uint16_t);
    609609        size_t glyphsize = FONT_GLYPHS * instance->glyphbytes;
    610        
     610
    611611        instance->addr = (uint8_t *) km_map((uintptr_t) props->addr, fbsize,
    612612            PAGE_WRITE | PAGE_NOT_CACHEABLE);
     
    617617                return NULL;
    618618        }
    619        
     619
    620620        instance->backbuf = (uint16_t *) malloc(bbsize, 0);
    621621        if (!instance->backbuf) {
     
    625625                return NULL;
    626626        }
    627        
     627
    628628        instance->glyphs = (uint8_t *) malloc(glyphsize, 0);
    629629        if (!instance->glyphs) {
     
    634634                return NULL;
    635635        }
    636        
     636
    637637        instance->bgscan = malloc(instance->bgscanbytes, 0);
    638638        if (!instance->bgscan) {
     
    644644                return NULL;
    645645        }
    646        
     646
    647647        memsetw(instance->backbuf, instance->cols * instance->rows, 0);
    648648        glyphs_render(instance);
    649        
     649
    650650        link_initialize(&instance->parea.link);
    651651        instance->parea.pbase = props->addr;
     
    654654        instance->parea.mapped = false;
    655655        ddi_parea_register(&instance->parea);
    656        
     656
    657657        if (!fb_exported) {
    658658                /*
     
    668668                sysinfo_set_item_val("fb.visual", NULL, props->visual);
    669669                sysinfo_set_item_val("fb.address.physical", NULL, props->addr);
    670                
     670
    671671                fb_exported = true;
    672672        }
    673        
     673
    674674        fb_redraw(fbdev);
    675675        return fbdev;
  • kernel/genarch/src/fb/font-8x16.c

    r3061bc1 r8565a42  
    4747        if (ch == 0x0000)
    4848                return 0;
    49        
     49
    5050        if ((ch >= 0x0020) && (ch <= 0x007f))
    5151                return (ch - 32);
    52        
     52
    5353        if ((ch >= 0x00a0) && (ch <= 0x021f))
    5454                return (ch - 64);
    55        
     55
    5656        if ((ch >= 0x0222) && (ch <= 0x0233))
    5757                return (ch - 66);
    58        
     58
    5959        if ((ch >= 0x0250) && (ch <= 0x02ad))
    6060                return (ch - 94);
    61        
     61
    6262        if ((ch >= 0x02b0) && (ch <= 0x02cf))
    6363                return (ch - 96);
    64        
     64
    6565        if ((ch >= 0x02d8) && (ch <= 0x02dd))
    6666                return (ch - 104);
    67        
     67
    6868        if (ch == 0x02ee)
    6969                return 630;
    70        
     70
    7171        if ((ch >= 0x0300) && (ch <= 0x0301))
    7272                return (ch - 137);
    73        
     73
    7474        if (ch == 0x0303)
    7575                return 633;
    76        
     76
    7777        if (ch == 0x0309)
    7878                return 634;
    79        
     79
    8080        if ((ch >= 0x0312) && (ch <= 0x0314))
    8181                return (ch - 151);
    82        
     82
    8383        if (ch == 0x0323)
    8484                return 638;
    85        
     85
    8686        if ((ch >= 0x0340) && (ch <= 0x0341))
    8787                return (ch - 193);
    88        
     88
    8989        if ((ch >= 0x0374) && (ch <= 0x0375))
    9090                return (ch - 243);
    91        
     91
    9292        if (ch == 0x037a)
    9393                return 643;
    94        
     94
    9595        if (ch == 0x037e)
    9696                return 644;
    97        
     97
    9898        if ((ch >= 0x0384) && (ch <= 0x038a))
    9999                return (ch - 255);
    100        
     100
    101101        if (ch == 0x038c)
    102102                return 652;
    103        
     103
    104104        if ((ch >= 0x038e) && (ch <= 0x03a1))
    105105                return (ch - 257);
    106        
     106
    107107        if ((ch >= 0x03a3) && (ch <= 0x03ce))
    108108                return (ch - 258);
    109        
     109
    110110        if ((ch >= 0x03d0) && (ch <= 0x03d7))
    111111                return (ch - 259);
    112        
     112
    113113        if ((ch >= 0x03da) && (ch <= 0x03f3))
    114114                return (ch - 261);
    115        
     115
    116116        if ((ch >= 0x0400) && (ch <= 0x0486))
    117117                return (ch - 273);
    118        
     118
    119119        if ((ch >= 0x0488) && (ch <= 0x04ce))
    120120                return (ch - 274);
    121        
     121
    122122        if ((ch >= 0x04d0) && (ch <= 0x04f5))
    123123                return (ch - 275);
    124        
     124
    125125        if ((ch >= 0x04f8) && (ch <= 0x04f9))
    126126                return (ch - 277);
    127        
     127
    128128        if ((ch >= 0x0500) && (ch <= 0x050f))
    129129                return (ch - 283);
    130        
     130
    131131        if ((ch >= 0x0530) && (ch <= 0x0556))
    132132                return (ch - 315);
    133        
     133
    134134        if ((ch >= 0x0559) && (ch <= 0x055f))
    135135                return (ch - 317);
    136        
     136
    137137        if ((ch >= 0x0561) && (ch <= 0x0587))
    138138                return (ch - 318);
    139        
     139
    140140        if ((ch >= 0x0589) && (ch <= 0x058a))
    141141                return (ch - 319);
    142        
     142
    143143        if ((ch >= 0x0591) && (ch <= 0x05a1))
    144144                return (ch - 325);
    145        
     145
    146146        if ((ch >= 0x05a3) && (ch <= 0x05b9))
    147147                return (ch - 326);
    148        
     148
    149149        if ((ch >= 0x05bb) && (ch <= 0x05c4))
    150150                return (ch - 327);
    151        
     151
    152152        if ((ch >= 0x05d0) && (ch <= 0x05ea))
    153153                return (ch - 338);
    154        
     154
    155155        if ((ch >= 0x05f0) && (ch <= 0x05f4))
    156156                return (ch - 343);
    157        
     157
    158158        if (ch == 0x060c)
    159159                return 1182;
    160        
     160
    161161        if (ch == 0x061b)
    162162                return 1183;
    163        
     163
    164164        if (ch == 0x061f)
    165165                return 1184;
    166        
     166
    167167        if ((ch >= 0x0621) && (ch <= 0x063a))
    168168                return (ch - 384);
    169        
     169
    170170        if ((ch >= 0x0640) && (ch <= 0x0655))
    171171                return (ch - 389);
    172        
     172
    173173        if ((ch >= 0x0660) && (ch <= 0x066d))
    174174                return (ch - 399);
    175        
     175
    176176        if ((ch >= 0x0670) && (ch <= 0x06ed))
    177177                return (ch - 401);
    178        
     178
    179179        if ((ch >= 0x06f0) && (ch <= 0x06fe))
    180180                return (ch - 403);
    181        
     181
    182182        if (ch == 0x10d3)
    183183                return 1388;
    184        
     184
    185185        if (ch == 0x10d7)
    186186                return 1389;
    187        
     187
    188188        if (ch == 0x10da)
    189189                return 1390;
    190        
     190
    191191        if (ch == 0x10dd)
    192192                return 1391;
    193        
     193
    194194        if (ch == 0x10e6)
    195195                return 1392;
    196        
     196
    197197        if ((ch >= 0x1e00) && (ch <= 0x1e9b))
    198198                return (ch - 6287);
    199        
     199
    200200        if ((ch >= 0x1ea0) && (ch <= 0x1ef9))
    201201                return (ch - 6291);
    202        
     202
    203203        if ((ch >= 0x1f00) && (ch <= 0x1f07))
    204204                return (ch - 6297);
    205        
     205
    206206        if ((ch >= 0x2000) && (ch <= 0x2027))
    207207                return (ch - 6545);
    208        
     208
    209209        if ((ch >= 0x2030) && (ch <= 0x2046))
    210210                return (ch - 6553);
    211        
     211
    212212        if ((ch >= 0x2048) && (ch <= 0x204d))
    213213                return (ch - 6554);
    214        
     214
    215215        if (ch == 0x2070)
    216216                return 1716;
    217        
     217
    218218        if ((ch >= 0x2074) && (ch <= 0x208f))
    219219                return (ch - 6591);
    220        
     220
    221221        if ((ch >= 0x20a0) && (ch <= 0x20af))
    222222                return (ch - 6607);
    223        
     223
    224224        if ((ch >= 0x2100) && (ch <= 0x213a))
    225225                return (ch - 6687);
    226        
     226
    227227        if ((ch >= 0x2153) && (ch <= 0x2183))
    228228                return (ch - 6711);
    229        
     229
    230230        if ((ch >= 0x2190) && (ch <= 0x21f3))
    231231                return (ch - 6723);
    232        
     232
    233233        if ((ch >= 0x2200) && (ch <= 0x22f1))
    234234                return (ch - 6735);
    235        
     235
    236236        if (ch == 0x2300)
    237237                return 2211;
    238        
     238
    239239        if (ch == 0x2302)
    240240                return 2212;
    241        
     241
    242242        if ((ch >= 0x2308) && (ch <= 0x230b))
    243243                return (ch - 6755);
    244        
     244
    245245        if (ch == 0x2310)
    246246                return 2217;
    247        
     247
    248248        if (ch == 0x2318)
    249249                return 2218;
    250        
     250
    251251        if ((ch >= 0x231a) && (ch <= 0x231b))
    252252                return (ch - 6767);
    253        
     253
    254254        if ((ch >= 0x2320) && (ch <= 0x2321))
    255255                return (ch - 6771);
    256        
     256
    257257        if ((ch >= 0x2329) && (ch <= 0x232a))
    258258                return (ch - 6778);
    259        
     259
    260260        if ((ch >= 0x239b) && (ch <= 0x23bd))
    261261                return (ch - 6890);
    262        
     262
    263263        if (ch == 0x23ce)
    264264                return 2260;
    265        
     265
    266266        if ((ch >= 0x2409) && (ch <= 0x240d))
    267267                return (ch - 6964);
    268        
     268
    269269        if ((ch >= 0x2423) && (ch <= 0x2424))
    270270                return (ch - 6985);
    271        
     271
    272272        if (ch == 0x2426)
    273273                return 2268;
    274        
     274
    275275        if ((ch >= 0x2500) && (ch <= 0x2595))
    276276                return (ch - 7203);
    277        
     277
    278278        if ((ch >= 0x25a0) && (ch <= 0x25f7))
    279279                return (ch - 7213);
    280        
     280
    281281        if ((ch >= 0x2600) && (ch <= 0x2602))
    282282                return (ch - 7221);
    283        
     283
    284284        if ((ch >= 0x2605) && (ch <= 0x260d))
    285285                return (ch - 7223);
    286        
     286
    287287        if ((ch >= 0x2610) && (ch <= 0x2613))
    288288                return (ch - 7225);
    289        
     289
    290290        if (ch == 0x2620)
    291291                return 2523;
    292        
     292
    293293        if (ch == 0x2622)
    294294                return 2524;
    295        
     295
    296296        if (ch == 0x2626)
    297297                return 2525;
    298        
     298
    299299        if ((ch >= 0x2628) && (ch <= 0x262b))
    300300                return (ch - 7242);
    301        
     301
    302302        if ((ch >= 0x262e) && (ch <= 0x2637))
    303303                return (ch - 7244);
    304        
     304
    305305        if ((ch >= 0x2639) && (ch <= 0x2653))
    306306                return (ch - 7245);
    307        
     307
    308308        if ((ch >= 0x2660) && (ch <= 0x2667))
    309309                return (ch - 7257);
    310        
     310
    311311        if ((ch >= 0x2669) && (ch <= 0x266f))
    312312                return (ch - 7258);
    313        
     313
    314314        if ((ch >= 0xfb00) && (ch <= 0xfb05))
    315315                return (ch - 61674);
    316        
     316
    317317        if ((ch >= 0xfb50) && (ch <= 0xfbb1))
    318318                return (ch - 61748);
    319        
     319
    320320        if ((ch >= 0xfbd3) && (ch <= 0xfbe9))
    321321                return (ch - 61781);
    322        
     322
    323323        if ((ch >= 0xfbfc) && (ch <= 0xfbff))
    324324                return (ch - 61799);
    325        
     325
    326326        if ((ch >= 0xfc5b) && (ch <= 0xfc63))
    327327                return (ch - 61890);
    328        
     328
    329329        if (ch == 0xfc90)
    330330                return 2722;
    331        
     331
    332332        if ((ch >= 0xfcf2) && (ch <= 0xfcf4))
    333333                return (ch - 62031);
    334        
     334
    335335        if ((ch >= 0xfd3c) && (ch <= 0xfd3f))
    336336                return (ch - 62102);
    337        
     337
    338338        if (ch == 0xfdf2)
    339339                return 2730;
    340        
     340
    341341        if ((ch >= 0xfe50) && (ch <= 0xfe52))
    342342                return (ch - 62373);
    343        
     343
    344344        if ((ch >= 0xfe54) && (ch <= 0xfe66))
    345345                return (ch - 62374);
    346        
     346
    347347        if ((ch >= 0xfe68) && (ch <= 0xfe6b))
    348348                return (ch - 62375);
    349        
     349
    350350        if ((ch >= 0xfe70) && (ch <= 0xfe72))
    351351                return (ch - 62379);
    352        
     352
    353353        if (ch == 0xfe74)
    354354                return 2760;
    355        
     355
    356356        if ((ch >= 0xfe76) && (ch <= 0xfefc))
    357357                return (ch - 62381);
    358        
     358
    359359        if (ch == 0xfeff)
    360360                return 2896;
    361        
     361
    362362        return 2898;
    363363}
     
    32623262        {0xf1, 0x35, 0x55, 0x8a, 0xe0, 0x06, 0x95, 0xd6, 0xb5, 0x97, 0x00, 0xee, 0x8a, 0xee, 0x28, 0xe8},
    32633263        {0x00, 0x38, 0x7c, 0x7c, 0xc6, 0x92, 0xf2, 0xe6, 0xfe, 0xe6, 0x7c, 0x7c, 0x38, 0x00, 0x00, 0x00},
    3264        
     3264
    32653265        /* Special glyph for unknown character */
    32663266        {0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x0c, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00}
Note: See TracChangeset for help on using the changeset viewer.