# HG changeset patch # User gthomas # Date 1062009964 0 # Node ID f30dbfbd254c81cc1c5155740bb89cee6fb2e941 # Parent 028ac74b016c884d7f11eef5121fe4e1f141f25c VNC server package from Chris Garry diff --git a/packages/ChangeLog b/packages/ChangeLog --- a/packages/ChangeLog +++ b/packages/ChangeLog @@ -1,3 +1,7 @@ +2003-08-22 Chris Garry + + * ecos.db: Add new VNC server package. + 2003-08-22 Gary Thomas * ecos.db: Add support for picasso - another NMI uEngine (PXA255) diff --git a/packages/NEWS b/packages/NEWS --- a/packages/NEWS +++ b/packages/NEWS @@ -1,3 +1,5 @@ +* VNC server (remote access graphic system), contributed by + Chris Garry * New port to Analogue & Micro Rattler (Motorola MPC8250) * Improved support for ethernet PHY devices. * Improved variant support for Motorola Power-QUICC2 systems. diff --git a/packages/ecos.db b/packages/ecos.db --- a/packages/ecos.db +++ b/packages/ecos.db @@ -5023,3 +5023,14 @@ target rattler { The rattler target provides the packages needed to run eCos on an Analogue & Micro Rattler (MPC8250) board." } + +# -------------------------------------------------------------------------- + +package CYGPKG_VNC_SERVER { + alias { "VNC server" vnc_server } + directory net/vnc_server + script vnc-server.cdl + description "VNC server." +} + +# -------------------------------------------------------------------------- diff --git a/packages/net/vnc_server/current/ChangeLog b/packages/net/vnc_server/current/ChangeLog new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/ChangeLog @@ -0,0 +1,37 @@ +2003-08-22 Chris Garry + + * tests/vnc-test.c: + + * src/fonts/winFreeSystem14x16.c: + * src/fonts/winFreeSansSerif11x13.c: + * src/fonts/symbol.c: + * src/fonts/rom8x8.c: + * src/fonts/rom8x16.c: + * src/fonts/helvR10.c: + * src/fonts/helvB12.c: + * src/fonts/helvB10.c: + * src/fonts/device.h: + * src/fonts/X6x13.c: + * src/fonts/X5x7.c: + + * include/vnc-server.h: + + * cdl/vnc-server.cdl: + * doc/vnc-server.html: + + * src/init.cxx: + * src/vnc_kbd.c: + * src/vnc_mouse.c: + * src/vnc-server.c: + Created VNC Server package. + + +#####ECOSPDCOPYRIGHTBEGIN#### +# +# Copyright (C) 2000, 2001, 2002, 2003 Red Hat, Inc. +# All Rights Reserved. +# +# Permission is granted to use, copy, modify and redistribute this +# file. +# +#####ECOSPDCOPYRIGHTEND#### diff --git a/packages/net/vnc_server/current/cdl/vnc-server.cdl b/packages/net/vnc_server/current/cdl/vnc-server.cdl new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/cdl/vnc-server.cdl @@ -0,0 +1,283 @@ +# ==================================================================== +# +# vnc-server.cdl +# +# VNC Server configuration data +# +# ==================================================================== +#####ECOSGPLCOPYRIGHTBEGIN#### +## ------------------------------------------- +## This file is part of eCos, the Embedded Configurable Operating System. +## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +## +## eCos is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free +## Software Foundation; either version 2 or (at your option) any later version. +## +## eCos is distributed in the hope that it will be useful, but WITHOUT ANY +## WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +## for more details. +## +## You should have received a copy of the GNU General Public License along +## with eCos; if not, write to the Free Software Foundation, Inc., +## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +## +## As a special exception, if other files instantiate templates or use macros +## or inline functions from this file, or you compile this file and link it +## with other works to produce a work based on this file, this file does not +## by itself cause the resulting work to be covered by the GNU General Public +## License. However the source code for this file must still be made available +## in accordance with section (3) of the GNU General Public License. +## +## This exception does not invalidate any other reasons why a work based on +## this file might be covered by the GNU General Public License. +## +## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +## at http://sources.redhat.com/ecos/ecos-license/ +## ------------------------------------------- +#####ECOSGPLCOPYRIGHTEND#### +#========================================================================== +######DESCRIPTIONBEGIN#### +# +# Author(s): Chris Garry +# Contributors: +# Date: 2003-08-22 +# Purpose: +# Description: eCos VNC Server configuration data +# +#####DESCRIPTIONEND#### +# +#========================================================================*/ + + +cdl_package CYGPKG_VNC_SERVER { + display "VNC Server" + doc doc/vnc-server.html + include_dir . + requires (CYGNUM_VNC_SERVER_PIXEL_SELECTED <= 1) + requires CYGPKG_IO + requires (CYGPKG_NET || CYGPKG_NET_LWIP) + description "VNC Server." + compile vnc-server.c + compile -library=libextras.a init.cxx + + cdl_option CYGNUM_VNC_SERVER_PORT { + display "VNC server port number" + flavor data + default_value 5900 + description "Port VNC server will listen on for client connection. + This defaults to the standard port 5900, but may + be changed to any other port number if required." + } + + cdl_option CYGDAT_VNC_DESKTOP_NAME { + display "VNC Desktop Name" + flavor data + default_value { "\"eCos Desktop\"" } + description "This is the string that will be sent to the client + in the ServerInitialisation message as the desktop + name." + } + + cdl_option CYGNUM_VNC_SERVER_DELAY { + display "VNC server startup delay" + flavor data + default_value 0 + description "This defines the number of system clock ticks that the VNC + server will wait before initializing itself and spawning any + extra server threads. This is to give the application a chance + to initialize properly without any interference from the VNC + server." + } + + cdl_option CYGNUM_VNC_SERVER_PRIORITY { + display "VNC server thread priority" + flavor data + default_value { CYGNUM_KERNEL_SCHED_PRIORITIES-2 } + legal_values 0 to CYGNUM_KERNEL_SCHED_PRIORITIES + description "This sets the priority of the VNC server threads. + The default priority is 1 above the lowest priority." + } + + cdl_component CYGPKG_VNC_SERVER_ENCODING_OPTIONS { + display "Encoding options" + flavor none + no_define + + cdl_component CYGNUM_VNC_SERVER_USE_CORRE_ENCODING { + display "Use CoRRE encoding" + flavor bool + default_value 1 + description "This option causes the VNC server to use + CoRRE encoding on the display data it sends to the client + (vncviewer program). If an encoded data packet works out + larger than the RAW data packet, then that packet is sent + as raw data anyway. If this option is not selected, or + the client does not support CoRRE encoding, then the display + data is sent as raw data." + + cdl_option CYGNUM_VNC_SERVER_CORRE_ENCODING_HACK { + display "Work-around CoRRE bug in vncviewer" + flavor bool + default_value 1 + description "Some versions of the vncviewer program have + a bug where they don't display the background colour when + CoRRE encoding is used. This option adds a workaround to + this bug to the VNC server. Note, this problem is not seen + with the TightVNC viewer." + } + } + } + + + cdl_component CYGPKG_VNC_SERVER_DISPLAY_OPTIONS { + display "Display options" + flavor none + no_define + + cdl_option CYGNUM_VNC_SERVER_FRAME_WIDTH { + display "Frame width in pixels" + flavor data + default_value 640 + description "This sets the width of the VNC server frame buffer." + } + + cdl_option CYGNUM_VNC_SERVER_FRAME_HEIGHT { + display "Frame heigth in pixels" + flavor data + default_value 480 + description "This sets the height of the VNC server frame buffer." + } + + cdl_option CYGNUM_VNC_SERVER_TILE_SIZE { + display "Display tile size" + flavor data + default_value 32 + legal_values 1 to 255 + description "This sets the size of the tile for the VNC server. The VNC + frame is split into tiles and frame updates to the client are always + multiples of whole tiles. Note that these tiles are not the same as the + tiles used with Hextile encoding." + } + + cdl_interface CYGNUM_VNC_SERVER_PIXEL_SELECTED { + display "Pixel format support" + } + + cdl_option CYGNUM_VNC_SERVER_PIXEL_RGB332 { + display "RGB332 pixel format (8-bit)" + flavor bool + default_value 1 + implements CYGNUM_VNC_SERVER_PIXEL_SELECTED + description "This selects 8-bit, RGB332 pixel format." + } + + cdl_option CYGNUM_VNC_SERVER_PIXEL_RGB555 { + display "RGB555 pixel format (16-bit)" + flavor bool + default_value 0 + implements CYGNUM_VNC_SERVER_PIXEL_SELECTED + description "This selects 16-bit, RGB555 pixel format." + } + + cdl_option CYGNUM_VNC_SERVER_PIXEL_RGB565 { + display "RGB565 pixel format (16-bit)" + flavor bool + default_value 0 + implements CYGNUM_VNC_SERVER_PIXEL_SELECTED + description "This selects 16-bit, RGB565 pixel format." + } + + cdl_option CYGNUM_VNC_SERVER_INCLUDE_VNC_PRINTF { + display "Include VncPrintf() function" + flavor bool + default_value 1 + requires !CYGPKG_MICROWINDOWS + description "If this option is selected, the VNC server will include + the VncPrintf function for writing text to the VNC server frame buffer. + This function is not available if the MicroWindows package is also + included." +# compile -library=libextras.a fonts/winFreeSystem14x16.c + compile \ + fonts/helvB10.c \ + fonts/helvB12.c \ + fonts/helvR10.c \ + fonts/rom8x16.c \ + fonts/rom8x8.c \ + fonts/symbol.c \ + fonts/winFreeSansSerif11x13.c \ + fonts/winFreeSystem14x16.c \ + fonts/X5x7.c \ + fonts/X6x13.c + + + } + + } + + cdl_component CYGPKG_VNC_SERVER_BUILD_MOUSE_DRIVER { + display "Build VNC mouse driver" + flavor bool + default_value 1 + requires CYGPKG_IO_FILEIO + description "If this option is selected, the VNC mouse driver will be built. + If not selected, all mouse data from the VNC client will be + quietly ignored." + compile -library=libextras.a vnc_mouse.c + + + cdl_option CYGNUM_VNC_SERVER_MOUSE_EVENTS { + display "Number of mouse events for VNC server mouse driver to buffer." + flavor data + default_value 64 + description "This option specifies how many mouse events the + mouse driver can hold before it overflows." + } + + cdl_option CYGDAT_VNC_SERVER_MOUSE_NAME { + display "Device name for the VNC server mouse driver" + flavor data + default_value {"\"/dev/vnc_mouse\""} + description "This option sets the device name for the VNC server mouse." + } + } + + cdl_component CYGPKG_VNC_SERVER_BUILD_KEYBOARD_DRIVER { + display "Build VNC keyboard driver" + flavor bool + default_value 1 + requires CYGPKG_IO_FILEIO + description "If this option is selected, the VNC keyboard driver will be + built. If not selected, all keyboard data from the VNC client + will be quietly ignored." + compile -library=libextras.a vnc_kbd.c + + cdl_option CYGNUM_VNC_SERVER_KEYBOARD_EVENTS { + display "Number of keyboard events for VNC server keyboard driver to buffer." + flavor data + default_value 64 + description "This option specifies how many keystroke events the + keyboard driver can hold before it overflows." + } + + cdl_option CYGDAT_VNC_SERVER_KEYBOARD_NAME { + display "Device name for the VNC server keyboard driver" + flavor data + default_value {"\"/dev/vnc_kbd\""} + description "This option sets the device name for the VNC server keyboard." + } + } + + cdl_option CYGPKG_VNC_SERVER_TESTS { + display "VNC server tests" + flavor data + no_define + calculated { "tests/vnc-test" } + description " + This option specifies the set of tests + for the VNC server package." + } +} + +# EOF vnc-server.cdl diff --git a/packages/net/vnc_server/current/doc/vnc-server.html b/packages/net/vnc_server/current/doc/vnc-server.html new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/doc/vnc-server.html @@ -0,0 +1,606 @@ + + +VNC server for eCos + + + + +

VNC server for eCos

+

Introduction

+

VNC stands for Virtual Network Computing. It is in essence, a remote display + system which allows you to view a computing 'desktop' environment not only on + the machine where it is running, but from anywhere on the Internet and from + a wide variety of machine architectures. For full details of VNC, and to get + the vncviewer program see: http://www.uk.research.att.com/vnc/. +

+

The VNC server for eCos runs on the target platform and waits for a client + (vncviewer program running on a PC) to connect via an ethernet connection (port + 5900). Once a client has connected, the target platform has a virtual screen, + keyboard and mouse.

+

 

+

Limitations

+

The eCos port of the VNC server has been designed with some limitations in + order to keep memory and processor power requirements to a minimum.

+
    +
  1. The VNC client must accept the settings that the VNC server suggests (bits-per-pixel, + number-of-colours and so on as specified at build time with the eCos configuration + tool) or the VNC server will just disconnect.
  2. +
  3. The VNC server only supports CoRRE encoding and RAW encoding for sending + display data to the client.
  4. +
  5. The VNC server does not support password authentication, the client is able + to connect without the user typing in a password.
  6. +
  7. Only one VNC client may connect to the VNC server at a time.
  8. +
+

In reality these limitations are not a problem.

+

 

+

VNC server API

+

If the VNC server is to be used with the eCos port of MicroWindows, then VNC + server API may be ignored and the application should just use one of the API + supplied by MicroWindows.

+

VNC server display API

+

To use the VNC server display API the application should include the VNC server + header file by adding the following line to their C application:

+

#include <vnc-server.h> +   /* VNC server header file *

+

This file specifies several function to manipulate the display.

+ + + + +
+

vnc_frame_format_t* + VncGetInfo(void)

+

The VNC get info function returns a pointer to a 'vnc_frame_format_t' + type structure and is used to get information about the VNC display. 'vnc_frame_format_t' + is defined in the vnc-server.h file as:

+

typedef struct
+ {
+     cyg_uint16 frame_width;
+     cyg_uint16 frame_height;
+     void * frame_buffer;
+     bool rgb332;
+     
bool + rgb555;
+     bool rgb565;
+ } vnc_frame_format_t;

+

The frame_width and frame height fields contain the VNC server display + size in pixels.

+

The * frame_buffer pointer contains the address of the actual frame buffer + the VNC server uses, though the application should never write to this + buffer directly.

+

The final 3 (bool) fields specifiy the pixel format - only one of them + will be set to true.

+
+

 

+ + + +
+

void + VncInit(vnc_colour_t colour)

+

The VNC initialise function, initialises the VNC server and paints the + display with the specified colour. This funcftion must be called before + any of the other VNC server display functions are used, except for VncGetInfo() + - which may be called at any time.

+

The type 'vnc_colour_t' is defined in the vnc-server.h file - and is + used to represent a colour. If the VNC server is built to support 8-bit + pixel data then 'vnc_colour_t' will be type cyg_uint8, but if 16-bit pixel + data is being used then 'vnc_colour_t' will be type cyg_uint16.

+
+

 

+ + + + +
+

void + VncDrawPixel(cyg_uint16 x,
+                   cyg_uint16 + y,
+                   + vnc_colour_t colour)

+

The VNC draw pixel function simply draws a pixel of colour, 'colour', + at position ('x', 'y') on the VNC server display. Note that pixel (0, + 0) is the top-left pixel in the display.

+
+

 

+ + + + +
+

vnc_colour_t + VncReadPixel(cyg_uint16 x
+                           + cyg_uint16 y)

+

The VNC read pixel function simply returns the colour of the pixel at + position ('x', 'y') on the VNC server display. Note that pixel (0, 0) + is the top-left pixel in the display.

+
+

 

+ + + +
+

void + VncDrawHorzLine(cyg_uint16 x1,
+                      + cyg_uint16 x2,
+                      + cyg_uint16 y,
+                      + vnc_colour_t colour)

+

The VNC draw horizontal line function simply draws a line of pixels of + colour, 'colour', from position ('x1', 'y') to position ('x2', 'y') (inclusive) + on the VNC server display. Note that pixel (0, 0) is the top-left pixel + in the display.

+
+

 

+ + + + +
+

void + VncDrawVertLine(cyg_uint16 x,
+                      + cyg_uint16 y1,
+                      + cyg_uint16 y2,
+                      + vnc_colour_t colour)

+

The VNC draw vertical line function simply draws a line of pixels of + colour, 'colour', from position ('x', 'y1') to position ('x', 'y2') (inclusive) + on the VNC server display. Note that pixel (0, 0) is the top-left pixel + in the display.

+
+

 

+ + + + +
+

void + VncFillRect(cyg_uint16 x1,
+                  + cyg_uint16 y1,
+                  + cyg_uint16 x2,
+                  + cyg_uint16 y2,
+                  + vnc_colour_t colour)

+

The VNC fill rectangle function draws a solid rectangle of colour, 'colour', + with top-left corner at ('x1', 'y1') and bottom right corner at ('x2', + 'y2') (inclusive) on the VNC server display. Note that pixel (0, 0) is + the top-left pixel in the display.

+
+

 

+ + + + +
+

void + VncCopyRect(cyg_uint16 x1,
+                  + cyg_uint16 y1,
+                  + cyg_uint16 width,
+                  + cyg_uint16 height,
+                  + cyg_uint16 x2,
+                  + cyg_uint16 y2)

+

The VNC copy rectangle function copies a rectangle from one part of the + VNC display to another. The source rectangle is of width 'width', and + height 'height', with its top-left corner at ('x1', 'y1'). The destination + rectangle is the same size with its top-left corner at ('x2', 'y2'). Note + that pixel (0, 0) is the top-left pixel in the display.

+
+

 

+ + + + +
+

void + VncCopyRect2Buffer(cyg_uint16 x,
+                         + cyg_uint16 y,
+                         + cyg_uint16 width,
+                         + cyg_uint16 height,
+                         + void *buffer,
+                         + cyg_uint16 buff_w,
+                         + cyg_uint16 buff_h,
+                         + cyg_uint16 x_off,
+                         + cyg_uint16 y_off)

+

The VNC copy rectangle to buffer function copies a rectangle of the VNC + server display to a buffer supplied by the application. This function + is useful for saving areas of the display which will need to be restored + later, such as the area under a mouse cursor.

+

The rectangle of the display to be copied is of width 'width' and height + 'height' with its top-left corner at position ('x', 'y'). The address + of the buffer supplied to copy the image data is specified by '*buffer'. + This buffer is of width 'buff_w' and height 'buff_height'. If the buffer + width and height is larger than the rectangle being copied from the display, + an x and y offset may be supplied ('x_off' and 'y_off' respectively) to + offset where the rectangle of display data in the buffer.

+

For example a buffer of width = 50 and height = 40 could be defined with:

+

vnc_colour_t + my_buffer[40][50];

+

Then VncCopyRect2Buffer() could be called with:

+

VncCopyRect2Buffer(10, +  /* x-pos on display */
+                    10, +  /* y-pos on display */

+                    30, +  /* rectangle width on display */
+                    20, +  /* rectangle heigth on display */
+                    20, +  /* rectangle heigth on display */
+                                       (void + *)my_buffer, /* Address of buffer */
+
                   50, +  /* buffer width */
+
                   40, +  /* buffer height */
+
                   5, +   /* buffer x-offset */
+
                   6); +  /* buffer y-offset */ +
+

+

This would copy a 30 pixel wide, 20 pixel high rectangle from (10, 10) + of the VNC server display to the buffer 'my_buffer'. Inside the buffer + there would by an x-offset of 5 and a y offset of 6. Thus pixel (10, 10) + from the VNC server display would now be copied to my_buffer[6][5] - and + so on for the rest of the rectangle.

+
+

 

+ + + +
+

void + VncCopyBuffer2Rect(void *buffer,
+                         + cyg_uint16 buff_w,
+                         + cyg_uint16 buff_h,
+                         + cyg_uint16 x_off,
+                         + cyg_uint16 y_off,
+                         + cyg_uint16 x,
+                         + cyg_uint16 y,
+                         + cyg_uint16 width,
+                         + cyg_uint16 height)

+

The VNC copy buffer to rectangle function copies a rectangle from a buffer + supplied by the application to the VNC server display. This function is + usefull for restoring previously saved areas of the display.

+

For example, to restore the rectangle saved in the previous example use + of the VncCopyRect2Buffer() function above, the VncCopyBuff2Rect() would + be called with:

+

VncCopyBuffer2Rect((void + *)my_buffer, /* Address of buffer */
+
                   50, +  /* buffer width */
+
                   40, +  /* buffer height */
+
                   5, +   /* buffer x-offset */
+
                   6, +   /* buffer y-offset */
+
                   10, +  /* x-pos on display */
+                    10, +  /* y-pos on display */

+                    30, +  /* rectangle width on display */
+                    20); + /* rectangle heigth on display */

+

Note that in most uses of the VncCopyBuff2Rect() and VncCopyRect2Buffer() + functions would be called with:
+     width = buff_w
+     heigth = buff_h
+     x_off = 0
+     y_off = 0.

+

In this case there is no offset into the buffer and the buffer is used + 100% to store the rectangle from the display. +

+
+

 

+ + + + +
+

vnc_printf_return_t + VncPrintf(MWCFONT* font,
+
                              int + do_print,
+                               vnc_colour_t + colour,
+                               int + x,
+                               int + y,
+                               const + char *fmt, ... );)

+

The VNC printf function writes test to a specified position in the VNC + frame buffer, using the specified font and colour.

+

The '* font' argument is a pointer to a MWCFONT font structure. This + is the same font structure as used by MicroWindows, though the VNC server + has its own copy of the font description files. The available fonts are:

+

    font_rom8x16
+     font_rom8x8
+     font_winFreeSansSerif11x13
+     font_winFreeSystem14x16
+     font_helvB10
+     font_helvB12
+     font_helvR10
+     font_X5x7
+     font_X6x13

+

If the font argument is set to '0', then the default font (winFreeSystem14x16) + is used.

+

The 'do_print' argument is used to specify whether the function should + actually write the text to the frame buffer. If do_print is non-zero, + then the text will be written to the frame buffer. If do_print is zero, + then no text will be written, but the return value from the function will + sill be valid.

+

The 'colour' argument specifies the colour to use to write the text.

+

The 'x' and 'y' arguments specify the pixel position (x, y) in the frame + buffer of the top left pixel of the first character to be printed.

+

The 'const char *fmt, ...' argumets are used as in a normal printf statement.

+

The function returns a data structure of type vnc_printf_return_t, this + is defined as:

+

    typedef struct
+     {
+         int chars;
+         cyg_uint16 width;
+         cyg_uint16 height;
+     } vnc_printf_return_t;

+

The 'chars' values is exactly as would have been returned by the printf() + function.

+

The width and height attributes specify the width and height of a rectangle + surrounding the text written to the screen. This data can be used to know + how much of the frame buffer needs to be painted to delete the text, or + (used together with the 'do_print' argument set to 0) to calculate how + much of the screen should be saved before printing to it so that it may + be restored later.

+

An example of writing some text to position (250, 200) of the frame buffer, + using the colout cyan and the font, winFreeSansSerif11x13:

+

vnc_printf_return_t + print_area;

+

print_area = + VncPrintf(&font_winFreeSansSerif11x13,
+                        1,
+
                       + VNC_CYAN,
+
                       + 250,
+
                       + 200,
+
                       +
"Hello + World!\nUsing winFreeSansSerif11x13 font");

+

Note: 'print_area.width' and 'print_area.height' will be set to indicate + how much of the frame buffer was used to print this text.

+

Another example, using the default font this time:

+

print_area = + VncPrintf(0,
+                        1,
+
                       VNC_BLACK, +
+
                       250,
+
                       200,
+
                       
"50 + * 34 = %d", 50*34);

+

+
+

Also included in the vnc-server.h header file are 16 predefined colours:

+ + + + +
VNC_BLACK
+ VNC_BLUE
+ VNC_GREEN
+ VNC_CYAN
+ VNC_RED
+ VNC_MAGENTA
+ VNC_BROWN
+ VNC_LTGRAY
+ VNC_LTGREY  /* Same as VNC_LTGRAY */
+ VNC_GRAY
+ VNC_GREY  /* Same as VNC_GRAY */
+ VNC_LTBLUE
+ VNC_LTGREEN
+ VNC_LTCYAN
+ VNC_LTRED
+ VNC_LTMAGENTA
+ VNC_YELLOW
+ VNC_WHITE
+

These colours are all of type vnc_colour_t and are always correct for the selected + pixel type.

+
+

Also contained in the vnc-server.h header file is a macro to convert from a + full RGB colour value to the nearest colour that the type vnc_colour_t can represent. + This macro is:

+ + + + +
+

VNC_RGB2COL(red, green, blue)

+

The arguments red, green and blue each have a value from 0 to 255.

+

For example, to initialise the VNC server display with a colour as close + to a very specific shade of green [red=156, green=229, blue=91] - the + VncInit() function could be called as follows:

+

VncInit( VNC_RGB2COL(156, + 229, 91) );

+

Obviously the colour match will be better if the VNC server had been + built with 16 bits per pixel rather than with 8 bits per pixel, but in + each case the best available colour will be used.

+
+

Though not strictly a display function, a function to sound a bell on the client + is available.

+ + + + +
+

void + VncSoundBell(void)

+

The VNC Sound Bell function simply sounds a bell on the client - if the + client supports this.

+
+

 

+

VNC server mouse API

+

The VNC server mouse device driver is a standard eCos IO device driver. The + device name is "/dev/vnc_mouse" by default, but this may be modified + with the configuration tool. The first step in using the mouse device driver + is to use the cyg_io_lookup() function:

+ + + + +
+

Cyg_ErrNo mouse_err;
+ cyg_io_handle_t mouse_handle;
+ cyg_uint8 mouse_data[8];
+ cyg_uint32 mouse_len;

+
+ mouse_err = cyg_io_lookup("/dev/vnc_mouse", + &mouse_handle); /* Open mouse device */ if (mouse_err == -ENOENT)
+ {
+     diag_printf("Could not open mouse device\n"); +
+ }

+
+

Once the cyg_io_lookup() function has found the mouse device driver, the driver + is active and should be read regularly to prevent the receive buffer from overflowing + with data. Data is read using the cyg_io_read() function:

+ + + + +
+

mouse_len = 8;  /* + Try to read 8 bytes from mouse */
+ cyg_io_read(mouse_handle, mouse_data, &mouse_len );
+ if (mouse_len == 0)
+ {
+     diag_printf("Mouse has no new data\n");
+ }
+ else
+ {
+     diag_printf("Have New mouse data:\n");

+     diag_printf("  Mouse + button data: 0x%x\n", mouse_data[1]);
+         diag_printf("  Mouse + x-coord: %d\n", mouse_data[2]*256 + mouse_data[3]);
+         diag_printf("  Mouse + y-coord: %d\n", mouse_data[4]*256 + mouse_data[5]);
+ }

+
+

The cyg_io_read() function is a non-blocking function and each mouse event + generates 8 bytes of data:

+

Byte 0: Padding - always zero
+ Byte 1: Button data (bit 0 = 1 if the left button is pressed, bit 2 = 1 if the + right button is pressed)
+ Byte 2: Mose position x-coord MSB
+ Byte 3: Mose position x-coord LSB
+ Byte 4: Mose position y-coord MSB
+ Byte 5: Mose position y-coord LSB
+ Byte 6: Padding - always zero
+ Byte 7: Padding - always zero

+

 

+

VNC server keyboard API

+

The VNC server keyboard device driver is a standard eCos IO device driver. + The device name is "/dev/vnc_kbd" by default, but this may be modified + with the configuration tool. The first step in using the keyboard device driver + is to use the cyg_io_lookup() function:

+ + + + +
+

Cyg_ErrNo kdb_err;
+ cyg_io_handle_t kbd_handle;
+ cyg_uint8 kbd_data[8];
+ cyg_uint32 kbd_len;

+
+ kbd_err = cyg_io_lookup("/dev/vnc_kbd", + &kbd_handle); /* Open kbd device */
+ if (kbd_err == -ENOENT)
+ {
+     diag_printf("Could not open kbd device\n");
+ }

+
+

Once the cyg_io_lookup() function has found the keyboard device driver, the + driver is active and should be read regularly to prevent the receive buffer + from overflowing with data. Data is read using the cyg_io_read() function:

+ + + + +
+

kbd_len = 4;  /* + Try to read 4 bytes from keyboard */
+ cyg_io_read(kbd_handle, kbd_data, &kbd_len );
+ if (kbd_len == 0)
+ {
+     diag_printf("Keyboard has no new data\n");
+ }
+ else
+ {
+     diag_printf("Have New keyboard data:\n");
+     if (kbd_data[1])
+     {

+         diag_printf("  Keysym + value 0x%x pressed\n",
+                      kbd_data[2]*256 + + kbd_data[3]
);
+     }
+     else
+     {
+         diag_printf("  Keysym + value 0x%x released\n",
+                      kbd_data[2]*256 + + kbd_data[3]
); +
+     }

+ }

+
+

The cyg_io_read() function is a non-blocking function and each keystroke event + generates 4bytes of data:

+

Byte 0: Padding - always zero
+ Byte 1: Key pressed/released (1 when key pressed)
+ Byte 2: Keysym value for key MSB
+ Byte 3: Keysym value for key LSB
+

+

The actual key values are specified using the "keysym" values defined + by the X Window System. For most ordinary keys the keysym value is the same + as the corresponding ASCII value. For full details see either the Xlib Reference + Manual, published by O'Reilly & Associates or see the header file <X11/keysymdef.h> + from any X Window System installation (a google search for 'keysymdef.h' should + find it).

+

 

+

 

+ + diff --git a/packages/net/vnc_server/current/include/vnc-server.h b/packages/net/vnc_server/current/include/vnc-server.h new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/include/vnc-server.h @@ -0,0 +1,175 @@ +//========================================================================== +// +// vnc-server.h +// +// +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +//#####DESCRIPTIONBEGIN#### +// +// Author(s): Chris Garry +// Contributors: +// Date: 2003-08-22 +// Purpose: +// Description: Header file for VNC Server +// +//####DESCRIPTIONEND#### +// +//========================================================================*/ + + +#include /* Kernel API */ +#include + +/* Type to hold the frame format details */ +typedef struct +{ + cyg_uint16 frame_width; + cyg_uint16 frame_height; + void * frame_buffer; + bool rgb332; + bool rgb555; + bool rgb565; +} vnc_frame_format_t; + + +#ifdef CYGNUM_VNC_SERVER_INCLUDE_VNC_PRINTF +/* The typedefs for MWIMAGEBITS and MWCFONT and required to use */ +/* the font definition files in the src/fonts/ directory. These */ +/* typedefs are repeated in the device.h file also in the */ +/* src/fonts/ directory */ +typedef unsigned short MWIMAGEBITS; /* bitmap image unit size*/ +typedef struct { + char * name; /* font name*/ + int maxwidth; /* max width in pixels*/ + int height; /* height in pixels*/ + int ascent; /* ascent (baseline) height*/ + int firstchar; /* first character in bitmap*/ + int size; /* font size in characters*/ + MWIMAGEBITS * bits; /* 16-bit right-padded bitmap data*/ + unsigned short *offset; /* 256 offsets into bitmap data*/ + unsigned char * width; /* 256 character widths or 0 if fixed*/ +} MWCFONT; + +/* Type to hold rectangle size details */ +typedef struct +{ + int chars; + cyg_uint16 width; + cyg_uint16 height; +} vnc_printf_return_t; +#endif + +/* Type for colour values */ +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB332 +typedef cyg_uint8 vnc_color_t; +typedef cyg_uint8 vnc_colour_t; +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB555 +typedef cyg_uint16 vnc_color_t; +typedef cyg_uint16 vnc_colour_t; +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB565 +typedef cyg_uint16 vnc_color_t; +typedef cyg_uint16 vnc_colour_t; +#endif + + +/* Driver function prototypes */ +vnc_frame_format_t* VncGetInfo(void); +void VncInit(vnc_colour_t colour); +void VncDrawPixel(cyg_uint16 x, cyg_uint16 y, vnc_colour_t colour); +vnc_colour_t VncReadPixel(cyg_uint16 x, cyg_uint16 y); +void VncDrawHorzLine(cyg_uint16 x1, cyg_uint16 x2, cyg_uint16 y, vnc_colour_t colour); +void VncDrawVertLine(cyg_uint16 x, cyg_uint16 y1, cyg_uint16 y2, vnc_colour_t colour); +void VncFillRect(cyg_uint16 x1, cyg_uint16 y1, cyg_uint16 x2, cyg_uint16 y2, vnc_colour_t colour); +void VncCopyRect(cyg_uint16 x1, cyg_uint16 y1, cyg_uint16 width, cyg_uint16 height, cyg_uint16 x2, cyg_uint16 y2); +void VncCopyRect2Buffer(cyg_uint16 x, cyg_uint16 y, cyg_uint16 width, cyg_uint16 height, + void *buffer, cyg_uint16 buff_w, cyg_uint16 buff_h, cyg_uint16 x_off, cyg_uint16 y_off); +void VncCopyBuffer2Rect(void *buffer, cyg_uint16 buff_w, cyg_uint16 buff_h, cyg_uint16 x_off, cyg_uint16 y_off, + cyg_uint16 x, cyg_uint16 y, cyg_uint16 width, cyg_uint16 height); +void VncSoundBell(void); +#ifdef CYGNUM_VNC_SERVER_INCLUDE_VNC_PRINTF +vnc_printf_return_t VncPrintf(MWCFONT* font, int do_print, vnc_colour_t colour, int x, int y, const char *fmt, ... ); +#endif + + +/* Macros to convert from RGB to colour values */ +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB332 +#define VNC_RGB2COL(r,g,b) (vnc_colour_t)(((((cyg_uint8)r)&0xE0) >> 0) \ + |((((cyg_uint8)g)&0xE0) >> 3) \ + |((((cyg_uint8)b)&0xC0) >> 6)) +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB555 +#define VNC_RGB2COL(r,g,b) (vnc_colour_t)(((((cyg_uint8)r)&0xF8) << 7) \ + |((((cyg_uint8)g)&0xF8) << 2) \ + |((((cyg_uint8)b)&0xF8) >> 3)) +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB565 +#define VNC_RGB2COL(r,g,b) (vnc_colour_t)(((((cyg_uint8)r)&0xF8) << 8) \ + |((((cyg_uint8)g)&0xFC) << 3) \ + |((((cyg_uint8)b)&0xF8) >> 3)) +#endif + + +/* 16 defined colours for application use */ +#define VNC_BLACK VNC_RGB2COL( 0 , 0 , 0 ) +#define VNC_BLUE VNC_RGB2COL( 0 , 0 , 128 ) +#define VNC_GREEN VNC_RGB2COL( 0 , 128, 0 ) +#define VNC_CYAN VNC_RGB2COL( 0 , 128, 128 ) +#define VNC_RED VNC_RGB2COL( 128, 0 , 0 ) +#define VNC_MAGENTA VNC_RGB2COL( 128, 0 , 128 ) +#define VNC_BROWN VNC_RGB2COL( 128, 64 , 0 ) +#define VNC_LTGRAY VNC_RGB2COL( 192, 192, 192 ) +#define VNC_LTGREY VNC_RGB2COL( 192, 192, 192 ) +#define VNC_GRAY VNC_RGB2COL( 128, 128, 128 ) +#define VNC_GREY VNC_RGB2COL( 128, 128, 128 ) +#define VNC_LTBLUE VNC_RGB2COL( 0 , 0 , 255 ) +#define VNC_LTGREEN VNC_RGB2COL( 0 , 255, 0 ) +#define VNC_LTCYAN VNC_RGB2COL( 0 , 255, 255 ) +#define VNC_LTRED VNC_RGB2COL( 255, 0 , 0 ) +#define VNC_LTMAGENTA VNC_RGB2COL( 255, 0 , 255 ) +#define VNC_YELLOW VNC_RGB2COL( 255, 255, 0 ) +#define VNC_WHITE VNC_RGB2COL( 255, 255, 255 ) + +#ifdef CYGNUM_VNC_SERVER_INCLUDE_VNC_PRINTF +/* Compiled in fonts*/ +extern MWCFONT font_rom8x16, font_rom8x8; +extern MWCFONT font_winFreeSansSerif11x13; +extern MWCFONT font_winFreeSystem14x16; /* Default font */ +extern MWCFONT font_helvB10, font_helvB12, font_helvR10; +extern MWCFONT font_X5x7, font_X6x13; +#endif diff --git a/packages/net/vnc_server/current/src/fonts/X5x7.c b/packages/net/vnc_server/current/src/fonts/X5x7.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/X5x7.c @@ -0,0 +1,2702 @@ +/* Generated by convbdf on Tue Oct 3 00:24:24 MDT 2000. */ +#include "device.h" + +/* Font information: + + name: "-Misc-Fixed-Medium-R-Normal--7-70-75-75-C-50-ISO8859-1" + pixel size: 7 + ascent: 6 + descent: 1 +*/ + +/* Font character bitmap data. */ +static MWIMAGEBITS X5x7_bits[] = { + +/* Character (0x00): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + | | + +----------------+ */ +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0x0000, + +/* Character (0x01): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + | *** | + |***** | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x2000, +0x7000, +0xf800, +0x7000, +0x2000, +0x0000, + +/* Character (0x02): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * * | + |* * | + | * * | + |* * | + | * * | + |* * | + | | + +----------------+ */ +0x5000, +0xa000, +0x5000, +0xa000, +0x5000, +0xa000, +0x0000, + +/* Character (0x03): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |*** | + |* * | + |* * | + | *** | + | * | + | * | + +----------------+ */ +0xa000, +0xe000, +0xa000, +0xa000, +0x7000, +0x2000, +0x2000, + +/* Character (0x04): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |** | + |* | + |** | + |* ** | + | * | + | ** | + | * | + +----------------+ */ +0xc000, +0x8000, +0xc000, +0xb000, +0x2000, +0x3000, +0x2000, + +/* Character (0x05): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |** | + |* | + |** | + | ** | + | * * | + | ** | + | * * | + +----------------+ */ +0xc000, +0x8000, +0xc000, +0x6000, +0x5000, +0x6000, +0x5000, + +/* Character (0x06): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* | + |** | + | ** | + | * | + | ** | + | * | + +----------------+ */ +0x8000, +0x8000, +0xc000, +0x3000, +0x2000, +0x3000, +0x2000, + +/* Character (0x07): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * * | + | * | + | | + | | + | | + | | + +----------------+ */ +0x2000, +0x5000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x08): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | *** | + | * | + | | + | *** | + | | + | | + +----------------+ */ +0x2000, +0x7000, +0x2000, +0x0000, +0x7000, +0x0000, +0x0000, + +/* Character (0x09): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |** * | + |* ** | + |* * | + | * | + | * | + | ** | + +----------------+ */ +0x9000, +0xd000, +0xb000, +0x9000, +0x2000, +0x2000, +0x3000, + +/* Character (0x0a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |* * | + | * | + | *** | + | * | + | * | + +----------------+ */ +0xa000, +0xa000, +0xa000, +0x4000, +0x7000, +0x2000, +0x2000, + +/* Character (0x0b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + |*** | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0xe000, +0x0000, +0x0000, +0x0000, + +/* Character (0x0c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + |*** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0xe000, +0x2000, +0x2000, +0x2000, + +/* Character (0x0d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | *** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x3800, +0x2000, +0x2000, +0x2000, + +/* Character (0x0e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | *** | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x3800, +0x0000, +0x0000, +0x0000, + +/* Character (0x0f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + |***** | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0xf800, +0x2000, +0x2000, +0x2000, + +/* Character (0x10): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + |***** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x11): + bbw=6, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |***** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x12): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + |***** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, + +/* Character (0x13): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, + +/* Character (0x14): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + | | + |***** | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, + +/* Character (0x15): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | *** | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x3800, +0x2000, +0x2000, +0x2000, + +/* Character (0x16): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + |*** | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0xe000, +0x2000, +0x2000, +0x2000, + +/* Character (0x17): + bbw=6, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + |***** | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0xf800, +0x0000, +0x0000, +0x0000, + +/* Character (0x18): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + |***** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0xf800, +0x2000, +0x2000, +0x2000, + +/* Character (0x19): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x1a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | *** | + | | + +----------------+ */ +0x1000, +0x2000, +0x4000, +0x2000, +0x1000, +0x7000, +0x0000, + +/* Character (0x1b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | *** | + | | + +----------------+ */ +0x4000, +0x2000, +0x1000, +0x2000, +0x4000, +0x7000, +0x0000, + +/* Character (0x1c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | *** | + | * * | + | * * | + | * * | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x5000, +0x5000, +0x5000, +0x0000, + +/* Character (0x1d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + | *** | + | * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x1000, +0x7000, +0x2000, +0x7000, +0x4000, +0x0000, + +/* Character (0x1e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | ** | + | * | + |*** | + | * | + |* ** | + | | + +----------------+ */ +0x0000, +0x3000, +0x4000, +0xe000, +0x4000, +0xb000, +0x0000, + +/* Character (0x1f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x2000, +0x0000, +0x0000, +0x0000, + +/* Character (0x20): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x21): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | | + | * | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x2000, +0x0000, + +/* Character (0x22): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * * | + | * * | + | * * | + | | + | | + | | + | | + +----------------+ */ +0x5000, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x23): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * * | + |***** | + | * * | + |***** | + | * * | + | | + +----------------+ */ +0x0000, +0x5000, +0xf800, +0x5000, +0xf800, +0x5000, +0x0000, + +/* Character (0x24): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | *** | + |* * | + | *** | + | * * | + | *** | + | | + +----------------+ */ +0x0000, +0x7000, +0xa000, +0x7000, +0x2800, +0x7000, +0x0000, + +/* Character (0x25): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* * | + | * | + | * | + |* * | + | * | + | | + +----------------+ */ +0x8000, +0x9000, +0x2000, +0x4000, +0x9000, +0x1000, +0x0000, + +/* Character (0x26): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + |* * | + | * | + |* * | + | * * | + | | + +----------------+ */ +0x0000, +0x4000, +0xa000, +0x4000, +0xa000, +0x5000, +0x0000, + +/* Character (0x27): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + | * | + |* | + | | + | | + | | + | | + +----------------+ */ +0x6000, +0x4000, +0x8000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x28): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | | + +----------------+ */ +0x2000, +0x4000, +0x4000, +0x4000, +0x4000, +0x2000, +0x0000, + +/* Character (0x29): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | | + +----------------+ */ +0x4000, +0x2000, +0x2000, +0x2000, +0x2000, +0x4000, +0x0000, + +/* Character (0x2a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + |* * | + | * | + |*** | + | * | + |* * | + | | + +----------------+ */ +0x0000, +0xa000, +0x4000, +0xe000, +0x4000, +0xa000, +0x0000, + +/* Character (0x2b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + | * | + |***** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x2000, +0x2000, +0xf800, +0x2000, +0x2000, +0x0000, + +/* Character (0x2c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x4000, +0x8000, + +/* Character (0x2d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + |**** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0xf000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + | ** | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, + +/* Character (0x2f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + | * | + | * | + |* | + | | + | | + +----------------+ */ +0x0000, +0x1000, +0x2000, +0x4000, +0x8000, +0x0000, +0x0000, + +/* Character (0x30): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + |* * | + |* * | + |* * | + |* * | + | * | + | | + +----------------+ */ +0x4000, +0xa000, +0xa000, +0xa000, +0xa000, +0x4000, +0x0000, + +/* Character (0x31): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + |** | + | * | + | * | + | * | + |*** | + | | + +----------------+ */ +0x4000, +0xc000, +0x4000, +0x4000, +0x4000, +0xe000, +0x0000, + +/* Character (0x32): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + | * | + | * | + | * | + |**** | + | | + +----------------+ */ +0x6000, +0x9000, +0x1000, +0x2000, +0x4000, +0xf000, +0x0000, + +/* Character (0x33): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + | * | + | ** | + | * | + |* * | + | ** | + | | + +----------------+ */ +0xf000, +0x1000, +0x6000, +0x1000, +0x9000, +0x6000, +0x0000, + +/* Character (0x34): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | ** | + |* * | + |**** | + | * | + | * | + | | + +----------------+ */ +0x2000, +0x6000, +0xa000, +0xf000, +0x2000, +0x2000, +0x0000, + +/* Character (0x35): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + |* | + |*** | + | * | + |* * | + | ** | + | | + +----------------+ */ +0xf000, +0x8000, +0xe000, +0x1000, +0x9000, +0x6000, +0x0000, + +/* Character (0x36): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* | + |*** | + |* * | + |* * | + | ** | + | | + +----------------+ */ +0x6000, +0x8000, +0xe000, +0x9000, +0x9000, +0x6000, +0x0000, + +/* Character (0x37): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + | * | + | * | + | * | + | * | + | * | + | | + +----------------+ */ +0xf000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x0000, + +/* Character (0x38): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + | ** | + |* * | + |* * | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0x6000, +0x9000, +0x9000, +0x6000, +0x0000, + +/* Character (0x39): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* * | + | *** | + | * | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0x9000, +0x7000, +0x1000, +0x6000, +0x0000, + +/* Character (0x3a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | ** | + | ** | + | | + | ** | + | ** | + | | + +----------------+ */ +0x0000, +0x6000, +0x6000, +0x0000, +0x6000, +0x6000, +0x0000, + +/* Character (0x3b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | ** | + | ** | + | | + | ** | + | * | + |* | + +----------------+ */ +0x0000, +0x6000, +0x6000, +0x0000, +0x6000, +0x4000, +0x8000, + +/* Character (0x3c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | * | + | * | + |* | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x2000, +0x4000, +0x8000, +0x4000, +0x2000, +0x0000, + +/* Character (0x3d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |**** | + | | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x0000, +0xf000, +0x0000, +0x0000, + +/* Character (0x3e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + |* | + | * | + | * | + | * | + |* | + | | + +----------------+ */ +0x0000, +0x8000, +0x4000, +0x2000, +0x4000, +0x8000, +0x0000, + +/* Character (0x3f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + |* * | + | * | + | * | + | | + | * | + | | + +----------------+ */ +0x4000, +0xa000, +0x2000, +0x4000, +0x0000, +0x4000, +0x0000, + +/* Character (0x40): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* ** | + |* ** | + |* | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0xb000, +0xb000, +0x8000, +0x6000, +0x0000, + +/* Character (0x41): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* * | + |**** | + |* * | + |* * | + | | + +----------------+ */ +0x6000, +0x9000, +0x9000, +0xf000, +0x9000, +0x9000, +0x0000, + +/* Character (0x42): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + |* * | + |*** | + |* * | + |* * | + |*** | + | | + +----------------+ */ +0xe000, +0x9000, +0xe000, +0x9000, +0x9000, +0xe000, +0x0000, + +/* Character (0x43): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* | + |* | + |* * | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0x8000, +0x8000, +0x9000, +0x6000, +0x0000, + +/* Character (0x44): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + |* * | + |* * | + |* * | + |* * | + |*** | + | | + +----------------+ */ +0xe000, +0x9000, +0x9000, +0x9000, +0x9000, +0xe000, +0x0000, + +/* Character (0x45): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + |* | + |*** | + |* | + |* | + |**** | + | | + +----------------+ */ +0xf000, +0x8000, +0xe000, +0x8000, +0x8000, +0xf000, +0x0000, + +/* Character (0x46): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + |* | + |*** | + |* | + |* | + |* | + | | + +----------------+ */ +0xf000, +0x8000, +0xe000, +0x8000, +0x8000, +0x8000, +0x0000, + +/* Character (0x47): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* | + |* ** | + |* * | + | *** | + | | + +----------------+ */ +0x6000, +0x9000, +0x8000, +0xb000, +0x9000, +0x7000, +0x0000, + +/* Character (0x48): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |**** | + |* * | + |* * | + |* * | + | | + +----------------+ */ +0x9000, +0x9000, +0xf000, +0x9000, +0x9000, +0x9000, +0x0000, + +/* Character (0x49): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + | * | + | * | + | * | + | * | + |*** | + | | + +----------------+ */ +0xe000, +0x4000, +0x4000, +0x4000, +0x4000, +0xe000, +0x0000, + +/* Character (0x4a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + |* * | + | ** | + | | + +----------------+ */ +0x1000, +0x1000, +0x1000, +0x1000, +0x9000, +0x6000, +0x0000, + +/* Character (0x4b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |** | + |** | + |* * | + |* * | + | | + +----------------+ */ +0x9000, +0xa000, +0xc000, +0xc000, +0xa000, +0x9000, +0x0000, + +/* Character (0x4c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* | + |* | + |* | + |* | + |**** | + | | + +----------------+ */ +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0xf000, +0x0000, + +/* Character (0x4d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |**** | + |**** | + |* * | + |* * | + |* * | + | | + +----------------+ */ +0x9000, +0xf000, +0xf000, +0x9000, +0x9000, +0x9000, +0x0000, + +/* Character (0x4e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |** * | + |** * | + |* ** | + |* ** | + |* * | + | | + +----------------+ */ +0x9000, +0xd000, +0xd000, +0xb000, +0xb000, +0x9000, +0x0000, + +/* Character (0x4f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* * | + |* * | + |* * | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0x9000, +0x9000, +0x9000, +0x6000, +0x0000, + +/* Character (0x50): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + |* * | + |* * | + |*** | + |* | + |* | + | | + +----------------+ */ +0xe000, +0x9000, +0x9000, +0xe000, +0x8000, +0x8000, +0x0000, + +/* Character (0x51): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + |* * | + |* * | + |** * | + | ** | + | * | + +----------------+ */ +0x6000, +0x9000, +0x9000, +0x9000, +0xd000, +0x6000, +0x1000, + +/* Character (0x52): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + |* * | + |* * | + |*** | + |* * | + |* * | + | | + +----------------+ */ +0xe000, +0x9000, +0x9000, +0xe000, +0xa000, +0x9000, +0x0000, + +/* Character (0x53): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | ** | + |* * | + | * | + | * | + |* * | + | ** | + | | + +----------------+ */ +0x6000, +0x9000, +0x4000, +0x2000, +0x9000, +0x6000, +0x0000, + +/* Character (0x54): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + | * | + | * | + | * | + | * | + | * | + | | + +----------------+ */ +0xe000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, + +/* Character (0x55): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |* * | + |* * | + |* * | + | ** | + | | + +----------------+ */ +0x9000, +0x9000, +0x9000, +0x9000, +0x9000, +0x6000, +0x0000, + +/* Character (0x56): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |* * | + |* * | + | ** | + | ** | + | | + +----------------+ */ +0x9000, +0x9000, +0x9000, +0x9000, +0x6000, +0x6000, +0x0000, + +/* Character (0x57): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |* * | + |**** | + |**** | + |* * | + | | + +----------------+ */ +0x9000, +0x9000, +0x9000, +0xf000, +0xf000, +0x9000, +0x0000, + +/* Character (0x58): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + | ** | + | ** | + |* * | + |* * | + | | + +----------------+ */ +0x9000, +0x9000, +0x6000, +0x6000, +0x9000, +0x9000, +0x0000, + +/* Character (0x59): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* * | + |* * | + |* * | + | * | + | * | + | * | + | | + +----------------+ */ +0xa000, +0xa000, +0xa000, +0x4000, +0x4000, +0x4000, +0x0000, + +/* Character (0x5a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |**** | + | * | + | * | + | * | + |* | + |**** | + | | + +----------------+ */ +0xf000, +0x1000, +0x2000, +0x4000, +0x8000, +0xf000, +0x0000, + +/* Character (0x5b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + |* | + |* | + |* | + |* | + |*** | + | | + +----------------+ */ +0xe000, +0x8000, +0x8000, +0x8000, +0x8000, +0xe000, +0x0000, + +/* Character (0x5c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + |* | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x8000, +0x4000, +0x2000, +0x1000, +0x0000, +0x0000, + +/* Character (0x5d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |*** | + | * | + | * | + | * | + | * | + |*** | + | | + +----------------+ */ +0xe000, +0x2000, +0x2000, +0x2000, +0x2000, +0xe000, +0x0000, + +/* Character (0x5e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + |* * | + | | + | | + | | + | | + | | + +----------------+ */ +0x4000, +0xa000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | | + | | + | | + |**** | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0x0000, + +/* Character (0x60): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |** | + | * | + | * | + | | + | | + | | + | | + +----------------+ */ +0xc000, +0x4000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x61): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | *** | + |* * | + |* ** | + | * * | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x9000, +0xb000, +0x5000, +0x0000, + +/* Character (0x62): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* | + |*** | + |* * | + |* * | + |*** | + | | + +----------------+ */ +0x8000, +0x8000, +0xe000, +0x9000, +0x9000, +0xe000, +0x0000, + +/* Character (0x63): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | ** | + |* | + |* | + | ** | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x8000, +0x8000, +0x6000, +0x0000, + +/* Character (0x64): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | *** | + |* * | + |* * | + | *** | + | | + +----------------+ */ +0x1000, +0x1000, +0x7000, +0x9000, +0x9000, +0x7000, +0x0000, + +/* Character (0x65): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | ** | + |* ** | + |** | + | ** | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0xb000, +0xc000, +0x6000, +0x0000, + +/* Character (0x66): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * * | + | * | + |*** | + | * | + | * | + | | + +----------------+ */ +0x2000, +0x5000, +0x4000, +0xe000, +0x4000, +0x4000, +0x0000, + +/* Character (0x67): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | *** | + |* * | + | ** | + |* | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x9000, +0x6000, +0x8000, +0x7000, + +/* Character (0x68): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* | + |*** | + |* * | + |* * | + |* * | + | | + +----------------+ */ +0x8000, +0x8000, +0xe000, +0x9000, +0x9000, +0x9000, +0x0000, + +/* Character (0x69): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | | + |** | + | * | + | * | + |*** | + | | + +----------------+ */ +0x4000, +0x0000, +0xc000, +0x4000, +0x4000, +0xe000, +0x0000, + +/* Character (0x6a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | | + | * | + | * | + | * | + |* * | + | * | + +----------------+ */ +0x2000, +0x0000, +0x2000, +0x2000, +0x2000, +0xa000, +0x4000, + +/* Character (0x6b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + |* | + |* * | + |** | + |* * | + |* * | + | | + +----------------+ */ +0x8000, +0x8000, +0xa000, +0xc000, +0xa000, +0x9000, +0x0000, + +/* Character (0x6c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |** | + | * | + | * | + | * | + | * | + |*** | + | | + +----------------+ */ +0xc000, +0x4000, +0x4000, +0x4000, +0x4000, +0xe000, +0x0000, + +/* Character (0x6d): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + |**** | + |* * | + |* * | + | | + +----------------+ */ +0x0000, +0x0000, +0xa000, +0xf000, +0x9000, +0x9000, +0x0000, + +/* Character (0x6e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |*** | + |* * | + |* * | + |* * | + | | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0x9000, +0x9000, +0x9000, +0x0000, + +/* Character (0x6f): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | ** | + |* * | + |* * | + | ** | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x9000, +0x9000, +0x6000, +0x0000, + +/* Character (0x70): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |*** | + |* * | + |* * | + |*** | + |* | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0x9000, +0x9000, +0xe000, +0x8000, + +/* Character (0x71): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + | *** | + | * | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x9000, +0x9000, +0x7000, +0x1000, + +/* Character (0x72): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |*** | + |* * | + |* | + |* | + | | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0x9000, +0x8000, +0x8000, +0x0000, + +/* Character (0x73): + bbw=6, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + | *** | + |** | + | ** | + |*** | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xc000, +0x3000, +0xe000, +0x0000, + +/* Character (0x74): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + |*** | + | * | + | * | + | ** | + | | + +----------------+ */ +0x4000, +0x4000, +0xe000, +0x4000, +0x4000, +0x3000, +0x0000, + +/* Character (0x75): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + | *** | + | | + +----------------+ */ +0x0000, +0x0000, +0x9000, +0x9000, +0x9000, +0x7000, +0x0000, + +/* Character (0x76): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0xa000, +0xa000, +0xa000, +0x4000, +0x0000, + +/* Character (0x77): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + |* * | + |**** | + |**** | + | | + +----------------+ */ +0x0000, +0x0000, +0x9000, +0x9000, +0xf000, +0xf000, +0x0000, + +/* Character (0x78): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + | ** | + | ** | + |* * | + | | + +----------------+ */ +0x0000, +0x0000, +0x9000, +0x6000, +0x6000, +0x9000, +0x0000, + +/* Character (0x79): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |* * | + |* * | + | * * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x9000, +0x9000, +0x5000, +0x2000, +0x4000, + +/* Character (0x7a): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | | + | | + |**** | + | * | + | * | + |**** | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x2000, +0x4000, +0xf000, +0x0000, + +/* Character (0x7b): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + |** | + | * | + | * | + | * | + | | + +----------------+ */ +0x2000, +0x4000, +0xc000, +0x4000, +0x4000, +0x2000, +0x0000, + +/* Character (0x7c): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | | + +----------------+ */ +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, + +/* Character (0x7d): + bbw=6, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + |* | + | * | + | ** | + | * | + | * | + |* | + | | + +----------------+ */ +0x8000, +0x4000, +0x6000, +0x4000, +0x4000, +0x8000, +0x0000, + +/* Character (0x7e): + bbw=5, bbh=7, bbx=0, bby=-1, width=5 + +----------------+ + | * * | + |* * | + | | + | | + | | + | | + | | + +----------------+ */ +0x5000, +0xa000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +}; + +/* Character->glyph data. */ +static unsigned short X5x7_offset[] = { + 0, /* (0x00) */ + 7, /* (0x01) */ + 14, /* (0x02) */ + 21, /* (0x03) */ + 28, /* (0x04) */ + 35, /* (0x05) */ + 42, /* (0x06) */ + 49, /* (0x07) */ + 56, /* (0x08) */ + 63, /* (0x09) */ + 70, /* (0x0a) */ + 77, /* (0x0b) */ + 84, /* (0x0c) */ + 91, /* (0x0d) */ + 98, /* (0x0e) */ + 105, /* (0x0f) */ + 112, /* (0x10) */ + 119, /* (0x11) */ + 126, /* (0x12) */ + 133, /* (0x13) */ + 140, /* (0x14) */ + 147, /* (0x15) */ + 154, /* (0x16) */ + 161, /* (0x17) */ + 168, /* (0x18) */ + 175, /* (0x19) */ + 182, /* (0x1a) */ + 189, /* (0x1b) */ + 196, /* (0x1c) */ + 203, /* (0x1d) */ + 210, /* (0x1e) */ + 217, /* (0x1f) */ + 224, /* (0x20) */ + 231, /* (0x21) */ + 238, /* (0x22) */ + 245, /* (0x23) */ + 252, /* (0x24) */ + 259, /* (0x25) */ + 266, /* (0x26) */ + 273, /* (0x27) */ + 280, /* (0x28) */ + 287, /* (0x29) */ + 294, /* (0x2a) */ + 301, /* (0x2b) */ + 308, /* (0x2c) */ + 315, /* (0x2d) */ + 322, /* (0x2e) */ + 329, /* (0x2f) */ + 336, /* (0x30) */ + 343, /* (0x31) */ + 350, /* (0x32) */ + 357, /* (0x33) */ + 364, /* (0x34) */ + 371, /* (0x35) */ + 378, /* (0x36) */ + 385, /* (0x37) */ + 392, /* (0x38) */ + 399, /* (0x39) */ + 406, /* (0x3a) */ + 413, /* (0x3b) */ + 420, /* (0x3c) */ + 427, /* (0x3d) */ + 434, /* (0x3e) */ + 441, /* (0x3f) */ + 448, /* (0x40) */ + 455, /* (0x41) */ + 462, /* (0x42) */ + 469, /* (0x43) */ + 476, /* (0x44) */ + 483, /* (0x45) */ + 490, /* (0x46) */ + 497, /* (0x47) */ + 504, /* (0x48) */ + 511, /* (0x49) */ + 518, /* (0x4a) */ + 525, /* (0x4b) */ + 532, /* (0x4c) */ + 539, /* (0x4d) */ + 546, /* (0x4e) */ + 553, /* (0x4f) */ + 560, /* (0x50) */ + 567, /* (0x51) */ + 574, /* (0x52) */ + 581, /* (0x53) */ + 588, /* (0x54) */ + 595, /* (0x55) */ + 602, /* (0x56) */ + 609, /* (0x57) */ + 616, /* (0x58) */ + 623, /* (0x59) */ + 630, /* (0x5a) */ + 637, /* (0x5b) */ + 644, /* (0x5c) */ + 651, /* (0x5d) */ + 658, /* (0x5e) */ + 665, /* (0x5f) */ + 672, /* (0x60) */ + 679, /* (0x61) */ + 686, /* (0x62) */ + 693, /* (0x63) */ + 700, /* (0x64) */ + 707, /* (0x65) */ + 714, /* (0x66) */ + 721, /* (0x67) */ + 728, /* (0x68) */ + 735, /* (0x69) */ + 742, /* (0x6a) */ + 749, /* (0x6b) */ + 756, /* (0x6c) */ + 763, /* (0x6d) */ + 770, /* (0x6e) */ + 777, /* (0x6f) */ + 784, /* (0x70) */ + 791, /* (0x71) */ + 798, /* (0x72) */ + 805, /* (0x73) */ + 812, /* (0x74) */ + 819, /* (0x75) */ + 826, /* (0x76) */ + 833, /* (0x77) */ + 840, /* (0x78) */ + 847, /* (0x79) */ + 854, /* (0x7a) */ + 861, /* (0x7b) */ + 868, /* (0x7c) */ + 875, /* (0x7d) */ + 882, /* (0x7e) */ +}; + +/* Character width data. */ +static unsigned char X5x7_width[] = { + 5, /* (0x00) */ + 5, /* (0x01) */ + 5, /* (0x02) */ + 5, /* (0x03) */ + 5, /* (0x04) */ + 5, /* (0x05) */ + 5, /* (0x06) */ + 5, /* (0x07) */ + 5, /* (0x08) */ + 5, /* (0x09) */ + 5, /* (0x0a) */ + 5, /* (0x0b) */ + 5, /* (0x0c) */ + 5, /* (0x0d) */ + 5, /* (0x0e) */ + 5, /* (0x0f) */ + 5, /* (0x10) */ + 5, /* (0x11) */ + 5, /* (0x12) */ + 5, /* (0x13) */ + 5, /* (0x14) */ + 5, /* (0x15) */ + 5, /* (0x16) */ + 5, /* (0x17) */ + 5, /* (0x18) */ + 5, /* (0x19) */ + 5, /* (0x1a) */ + 5, /* (0x1b) */ + 5, /* (0x1c) */ + 5, /* (0x1d) */ + 5, /* (0x1e) */ + 5, /* (0x1f) */ + 5, /* (0x20) */ + 5, /* (0x21) */ + 5, /* (0x22) */ + 5, /* (0x23) */ + 5, /* (0x24) */ + 5, /* (0x25) */ + 5, /* (0x26) */ + 5, /* (0x27) */ + 5, /* (0x28) */ + 5, /* (0x29) */ + 5, /* (0x2a) */ + 5, /* (0x2b) */ + 5, /* (0x2c) */ + 5, /* (0x2d) */ + 5, /* (0x2e) */ + 5, /* (0x2f) */ + 5, /* (0x30) */ + 5, /* (0x31) */ + 5, /* (0x32) */ + 5, /* (0x33) */ + 5, /* (0x34) */ + 5, /* (0x35) */ + 5, /* (0x36) */ + 5, /* (0x37) */ + 5, /* (0x38) */ + 5, /* (0x39) */ + 5, /* (0x3a) */ + 5, /* (0x3b) */ + 5, /* (0x3c) */ + 5, /* (0x3d) */ + 5, /* (0x3e) */ + 5, /* (0x3f) */ + 5, /* (0x40) */ + 5, /* (0x41) */ + 5, /* (0x42) */ + 5, /* (0x43) */ + 5, /* (0x44) */ + 5, /* (0x45) */ + 5, /* (0x46) */ + 5, /* (0x47) */ + 5, /* (0x48) */ + 5, /* (0x49) */ + 5, /* (0x4a) */ + 5, /* (0x4b) */ + 5, /* (0x4c) */ + 5, /* (0x4d) */ + 5, /* (0x4e) */ + 5, /* (0x4f) */ + 5, /* (0x50) */ + 5, /* (0x51) */ + 5, /* (0x52) */ + 5, /* (0x53) */ + 5, /* (0x54) */ + 5, /* (0x55) */ + 5, /* (0x56) */ + 5, /* (0x57) */ + 5, /* (0x58) */ + 5, /* (0x59) */ + 5, /* (0x5a) */ + 5, /* (0x5b) */ + 5, /* (0x5c) */ + 5, /* (0x5d) */ + 5, /* (0x5e) */ + 5, /* (0x5f) */ + 5, /* (0x60) */ + 5, /* (0x61) */ + 5, /* (0x62) */ + 5, /* (0x63) */ + 5, /* (0x64) */ + 5, /* (0x65) */ + 5, /* (0x66) */ + 5, /* (0x67) */ + 5, /* (0x68) */ + 5, /* (0x69) */ + 5, /* (0x6a) */ + 5, /* (0x6b) */ + 5, /* (0x6c) */ + 5, /* (0x6d) */ + 5, /* (0x6e) */ + 5, /* (0x6f) */ + 5, /* (0x70) */ + 5, /* (0x71) */ + 5, /* (0x72) */ + 5, /* (0x73) */ + 5, /* (0x74) */ + 5, /* (0x75) */ + 5, /* (0x76) */ + 5, /* (0x77) */ + 5, /* (0x78) */ + 5, /* (0x79) */ + 5, /* (0x7a) */ + 5, /* (0x7b) */ + 5, /* (0x7c) */ + 5, /* (0x7d) */ + 5, /* (0x7e) */ +}; + +/* Exported structure definition. */ +MWCFONT font_X5x7 = { + "X5x7", + 5, + 7, + 6, + 0, + 127, + X5x7_bits, + X5x7_offset, + X5x7_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/X6x13.c b/packages/net/vnc_server/current/src/fonts/X6x13.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/X6x13.c @@ -0,0 +1,4226 @@ +/* Generated by convbdf on Tue Oct 3 00:24:25 MDT 2000. */ +#include "device.h" + +/* Font information: + + name: "-Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO8859-1" + pixel size: 13 + ascent: 11 + descent: 2 +*/ + +/* Font character bitmap data. */ +static MWIMAGEBITS X6x13_bits[] = { + +/* Character (0x00): + bbw=4, bbh=11, bbx=1, bby=-1, width=6 + +----------------+ + | | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | **** | + | | + +----------------+ */ +0x0000, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x7800, +0x0000, + +/* Character (0x01): + bbw=5, bbh=5, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | * | + | *** | + |***** | + | *** | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x7000, +0xf800, +0x7000, +0x2000, +0x0000, +0x0000, +0x0000, + +/* Character (0x02): + bbw=6, bbh=12, bbx=0, bby=-2, width=6 + +----------------+ + | | + | * * * | + |* * * | + | * * * | + |* * * | + | * * * | + |* * * | + | * * * | + |* * * | + | * * * | + |* * * | + | * * * | + |* * * | + +----------------+ */ +0x0000, +0x5400, +0xa800, +0x5400, +0xa800, +0x5400, +0xa800, +0x5400, +0xa800, +0x5400, +0xa800, +0x5400, +0xa800, + +/* Character (0x03): + bbw=4, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* * | + |* * | + |*** | + |* * | + |* * | + | *** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xa000, +0xa000, +0xe000, +0xa000, +0xa000, +0x7000, +0x2000, +0x2000, +0x2000, + +/* Character (0x04): + bbw=4, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |*** | + |* | + |** | + |* | + |**** | + | * | + | ** | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xe000, +0x8000, +0xc000, +0x8000, +0xf000, +0x4000, +0x6000, +0x4000, +0x4000, + +/* Character (0x05): + bbw=5, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |* | + |* | + | *** | + | *** | + | * * | + | *** | + | * * | + | * * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8000, +0x8000, +0x7000, +0x7000, +0x4800, +0x7000, +0x5000, +0x4800, + +/* Character (0x06): + bbw=4, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* | + |* | + |* | + |*** | + | *** | + | * | + | ** | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0xe000, +0x7000, +0x4000, +0x6000, +0x4000, +0x4000, + +/* Character (0x07): + bbw=4, bbh=4, bbx=0, bby=5, width=6 + +----------------+ + | | + | | + | ** | + |* * | + |* * | + | ** | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x9000, +0x9000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x08): + bbw=5, bbh=7, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | * | + |***** | + | * | + | * | + | | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x2000, +0xf800, +0x2000, +0x2000, +0x0000, +0xf800, +0x0000, +0x0000, + +/* Character (0x09): + bbw=5, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* * | + |** * | + |* * * | + |* ** | + |* * | + | * | + | * | + | * | + | **** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0xc800, +0xa800, +0x9800, +0x8800, +0x4000, +0x4000, +0x4000, +0x7800, + +/* Character (0x0a): + bbw=5, bbh=9, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* * | + |* * | + | * * | + | * | + | | + |***** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0x5000, +0x2000, +0x0000, +0xf800, +0x2000, +0x2000, +0x2000, + +/* Character (0x0b): + bbw=3, bbh=8, bbx=0, bby=3, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |*** | + | | + | | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0xe000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x0c): + bbw=3, bbh=6, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + |*** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xe000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x0d): + bbw=4, bbh=6, bbx=2, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | **** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x0e): + bbw=4, bbh=8, bbx=2, bby=3, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | **** | + | | + | | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x0f): + bbw=6, bbh=13, bbx=0, bby=-2, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |****** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0xfc00, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x10): + bbw=6, bbh=1, bbx=0, bby=7, width=6 + +----------------+ + | | + | | + | | + |****** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x11): + bbw=6, bbh=1, bbx=0, bby=5, width=6 + +----------------+ + | | + | | + | | + | | + | | + |****** | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x12): + bbw=6, bbh=1, bbx=0, bby=3, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + |****** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x13): + bbw=6, bbh=1, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + |****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, + +/* Character (0x14): + bbw=6, bbh=1, bbx=0, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |****** | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, + +/* Character (0x15): + bbw=4, bbh=13, bbx=2, bby=-2, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | **** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x3c00, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x16): + bbw=3, bbh=13, bbx=0, bby=-2, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |*** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0xe000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x17): + bbw=6, bbh=8, bbx=0, bby=3, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |****** | + | | + | | + | | + | | + | | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x18): + bbw=6, bbh=6, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + |****** | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x19): + bbw=1, bbh=13, bbx=2, bby=-2, width=6 + +----------------+ + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, + +/* Character (0x1a): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0800, +0x1000, +0x2000, +0x4000, +0x2000, +0x1000, +0x0800, +0xf800, +0x0000, +0x0000, + +/* Character (0x1b): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + |* | + | * | + | * | + | * | + | * | + | * | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x8000, +0x4000, +0x2000, +0x1000, +0x2000, +0x4000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x1c): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |***** | + | * * | + | * * | + | * * | + | * * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x5000, +0x5000, +0x5000, +0x5000, +0x9000, +0x0000, +0x0000, + +/* Character (0x1d): + bbw=5, bbh=5, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | * | + |***** | + | * | + |***** | + |* | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0800, +0xf800, +0x2000, +0xf800, +0x8000, +0x0000, +0x0000, +0x0000, + +/* Character (0x1e): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | * * | + | * | + | * | + |*** | + | * | + | * | + | * * | + |* ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x4800, +0x4000, +0x4000, +0xe000, +0x4000, +0x4000, +0x4800, +0xb000, +0x0000, +0x0000, + +/* Character (0x1f): + bbw=1, bbh=1, bbx=2, bby=2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x20): + bbw=0, bbh=0, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x21): + bbw=1, bbh=9, bbx=2, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x2000, +0x0000, +0x0000, + +/* Character (0x22): + bbw=3, bbh=3, bbx=1, bby=6, width=6 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x5000, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x23): + bbw=5, bbh=7, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | * * | + | * * | + |***** | + | * * | + |***** | + | * * | + | * * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x5000, +0x5000, +0xf800, +0x5000, +0xf800, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, + +/* Character (0x24): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | **** | + |* * | + |* * | + | *** | + | * * | + | * * | + |**** | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x7800, +0xa000, +0xa000, +0x7000, +0x2800, +0x2800, +0xf000, +0x2000, +0x0000, +0x0000, + +/* Character (0x25): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * * | + |* * * | + | * * | + | * | + | * | + | * | + | * * | + |* * * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4800, +0xa800, +0x5000, +0x1000, +0x2000, +0x4000, +0x5000, +0xa800, +0x9000, +0x0000, +0x0000, + +/* Character (0x26): + bbw=5, bbh=8, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | * | + |* * | + |* * | + | * | + |* * | + |* ** | + |* * | + | ** * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0xa000, +0xa000, +0x4000, +0xa000, +0x9800, +0x9000, +0x6800, +0x0000, +0x0000, +0x0000, + +/* Character (0x27): + bbw=3, bbh=3, bbx=1, bby=6, width=6 + +----------------+ + | | + | | + | ** | + | * | + | * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x28): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x4000, +0x2000, +0x2000, +0x1000, +0x0000, +0x0000, + +/* Character (0x29): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x2000, +0x2000, +0x1000, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, +0x0000, +0x0000, + +/* Character (0x2a): + bbw=5, bbh=7, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | * | + |* * * | + |***** | + | *** | + |***** | + |* * * | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x2000, +0xa800, +0xf800, +0x7000, +0xf800, +0xa800, +0x2000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2b): + bbw=5, bbh=5, bbx=0, bby=2, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | * | + |***** | + | * | + | * | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x2000, +0xf800, +0x2000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2c): + bbw=3, bbh=3, bbx=1, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x2000, +0x4000, +0x0000, + +/* Character (0x2d): + bbw=5, bbh=1, bbx=0, bby=4, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + |***** | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2e): + bbw=3, bbh=3, bbx=1, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x7000, +0x2000, +0x0000, + +/* Character (0x2f): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0800, +0x0800, +0x1000, +0x1000, +0x2000, +0x4000, +0x4000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x30): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * * | + |* * | + |* * | + |* * | + |* * | + |* * | + | * * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x5000, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x5000, +0x2000, +0x0000, +0x0000, + +/* Character (0x31): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | ** | + |* * | + | * | + | * | + | * | + | * | + | * | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x6000, +0xa000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0xf800, +0x0000, +0x0000, + +/* Character (0x32): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + | * | + | * | + | * | + | * | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x0800, +0x1000, +0x2000, +0x4000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x33): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | *** | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x0800, +0x1000, +0x2000, +0x7000, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x34): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | ** | + | * * | + | * * | + |* * | + |***** | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x1000, +0x3000, +0x5000, +0x5000, +0x9000, +0xf800, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character (0x35): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |* | + |* | + |* ** | + |** * | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x8000, +0x8000, +0xb000, +0xc800, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x36): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* | + |* | + |**** | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0x8000, +0xf000, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x37): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x0800, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x38): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* * | + | *** | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x7000, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x39): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* * | + | **** | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x7800, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x3a): + bbw=3, bbh=8, bbx=1, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | *** | + | * | + | | + | | + | * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x7000, +0x2000, +0x0000, +0x0000, +0x2000, +0x7000, +0x2000, +0x0000, + +/* Character (0x3b): + bbw=3, bbh=8, bbx=1, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | *** | + | * | + | | + | | + | ** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x7000, +0x2000, +0x0000, +0x0000, +0x3000, +0x2000, +0x4000, +0x0000, + +/* Character (0x3c): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + |* | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0800, +0x1000, +0x2000, +0x4000, +0x8000, +0x4000, +0x2000, +0x1000, +0x0800, +0x0000, +0x0000, + +/* Character (0x3d): + bbw=5, bbh=4, bbx=0, bby=2, width=6 + +----------------+ + | | + | | + | | + | | + | | + |***** | + | | + | | + |***** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3e): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x4000, +0x2000, +0x1000, +0x0800, +0x1000, +0x2000, +0x4000, +0x8000, +0x0000, +0x0000, + +/* Character (0x3f): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + | * | + | * | + | * | + | * | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x0800, +0x1000, +0x2000, +0x2000, +0x0000, +0x2000, +0x0000, +0x0000, + +/* Character (0x40): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* ** | + |* * * | + |* * * | + |* ** | + |* | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x9800, +0xa800, +0xa800, +0xb000, +0x8000, +0x7800, +0x0000, +0x0000, + +/* Character (0x41): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * * | + |* * | + |* * | + |* * | + |***** | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x5000, +0x8800, +0x8800, +0x8800, +0xf800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x42): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |**** | + | * * | + | * * | + | * * | + | *** | + | * * | + | * * | + | * * | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x4800, +0x4800, +0x4800, +0x7000, +0x4800, +0x4800, +0x4800, +0xf000, +0x0000, +0x0000, + +/* Character (0x43): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* | + |* | + |* | + |* | + |* | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x44): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |**** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x4800, +0x4800, +0x4800, +0x4800, +0x4800, +0x4800, +0x4800, +0xf000, +0x0000, +0x0000, + +/* Character (0x45): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |* | + |* | + |* | + |**** | + |* | + |* | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x8000, +0x8000, +0x8000, +0xf000, +0x8000, +0x8000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x46): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |* | + |* | + |* | + |**** | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x8000, +0x8000, +0x8000, +0xf000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x47): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* | + |* | + |* | + |* ** | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0x8000, +0x8000, +0x9800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x48): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + |* * | + |***** | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x8800, +0xf800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x49): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | *** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x7000, +0x0000, +0x0000, + +/* Character (0x4a): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + | * | + | * | + | * | + | * | + | * | + | * | + |* * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x9000, +0x6000, +0x0000, +0x0000, + +/* Character (0x4b): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + |* * | + |** | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x9000, +0xa000, +0xc000, +0xa000, +0x9000, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x4c): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* | + |* | + |* | + |* | + |* | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x4d): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |** ** | + |* * * | + |* * * | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0xd800, +0xa800, +0xa800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x4e): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |** * | + |** * | + |* * * | + |* * * | + |* ** | + |* ** | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0xc800, +0xc800, +0xa800, +0xa800, +0x9800, +0x9800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x4f): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x50): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |**** | + |* * | + |* * | + |* * | + |**** | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x8800, +0x8800, +0x8800, +0xf000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x51): + bbw=5, bbh=10, bbx=0, bby=-1, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0xa800, +0x7000, +0x0800, +0x0000, + +/* Character (0x52): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |**** | + |* * | + |* * | + |* * | + |**** | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0x8800, +0x8800, +0x8800, +0xf000, +0xa000, +0x9000, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x53): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* | + |* | + | *** | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0x8000, +0x7000, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x54): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x55): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x56): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + |* * | + | * * | + | * * | + | * * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x8800, +0x5000, +0x5000, +0x5000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x57): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + |* * | + |* * | + |* * * | + |* * * | + |* * * | + |** ** | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x8800, +0xa800, +0xa800, +0xa800, +0xd800, +0x8800, +0x0000, +0x0000, + +/* Character (0x58): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + | * * | + | * * | + | * | + | * * | + | * * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x5000, +0x5000, +0x2000, +0x5000, +0x5000, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x59): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* * | + |* * | + | * * | + | * * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8800, +0x8800, +0x5000, +0x5000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x5a): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x0800, +0x1000, +0x1000, +0x2000, +0x4000, +0x4000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x5b): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | *** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x7000, +0x0000, +0x0000, + +/* Character (0x5c): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x4000, +0x4000, +0x2000, +0x1000, +0x1000, +0x0800, +0x0800, +0x0000, +0x0000, + +/* Character (0x5d): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | *** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x7000, +0x0000, +0x0000, + +/* Character (0x5e): + bbw=5, bbh=3, bbx=0, bby=6, width=6 + +----------------+ + | | + | | + | * | + | * * | + |* * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x5000, +0x8800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5f): + bbw=5, bbh=1, bbx=0, bby=-1, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |***** | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, + +/* Character (0x60): + bbw=3, bbh=3, bbx=2, bby=6, width=6 + +----------------+ + | | + | | + | ** | + | * | + | * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x1000, +0x0800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x61): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + | * | + | **** | + |* * | + |* * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x0800, +0x7800, +0x8800, +0x8800, +0x7800, +0x0000, +0x0000, + +/* Character (0x62): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* | + |**** | + |* * | + |* * | + |* * | + |* * | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0xf000, +0x8800, +0x8800, +0x8800, +0x8800, +0xf000, +0x0000, +0x0000, + +/* Character (0x63): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + |* * | + |* | + |* | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0x8000, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x64): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | **** | + |* * | + |* * | + |* * | + |* * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0800, +0x0800, +0x0800, +0x7800, +0x8800, +0x8800, +0x8800, +0x8800, +0x7800, +0x0000, +0x0000, + +/* Character (0x65): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + |* * | + |***** | + |* | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0xf800, +0x8000, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x66): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | * * | + | * | + | * | + |**** | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x4800, +0x4000, +0x4000, +0xf000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x67): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + |* * | + |* * | + |* * | + | **** | + | * | + |* * | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x7800, +0x0800, +0x8800, +0x7000, + +/* Character (0x68): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* | + |* ** | + |** * | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0xb000, +0xc800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x69): + bbw=3, bbh=8, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | | + | * | + | | + | ** | + | * | + | * | + | * | + | * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x2000, +0x0000, +0x6000, +0x2000, +0x2000, +0x2000, +0x2000, +0x7000, +0x0000, +0x0000, + +/* Character (0x6a): + bbw=4, bbh=10, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | * | + | | + | ** | + | * | + | * | + | * | + | * | + |* * | + |* * | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x1000, +0x0000, +0x3000, +0x1000, +0x1000, +0x1000, +0x1000, +0x9000, +0x9000, +0x6000, + +/* Character (0x6b): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* | + |* * | + |* * | + |** | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0x9000, +0xa000, +0xc000, +0xa000, +0x9000, +0x8800, +0x0000, +0x0000, + +/* Character (0x6c): + bbw=3, bbh=9, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x7000, +0x0000, +0x0000, + +/* Character (0x6d): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |** * | + |* * * | + |* * * | + |* * * | + |* * * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xd000, +0xa800, +0xa800, +0xa800, +0xa800, +0x8800, +0x0000, +0x0000, + +/* Character (0x6e): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* ** | + |** * | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xc800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x6f): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x70): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + |**** | + |* * | + |* * | + |* * | + |**** | + |* | + |* | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0x8800, +0x8800, +0x8800, +0xf000, +0x8000, +0x8000, +0x8000, + +/* Character (0x71): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | **** | + |* * | + |* * | + |* * | + | **** | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0x8800, +0x8800, +0x8800, +0x7800, +0x0800, +0x0800, +0x0800, + +/* Character (0x72): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* ** | + |** * | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xc800, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x73): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + | *** | + |* * | + | ** | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0x6000, +0x1000, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x74): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | * | + | * | + |**** | + | * | + | * | + | * | + | * * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0xf000, +0x4000, +0x4000, +0x4000, +0x4800, +0x3000, +0x0000, +0x0000, + +/* Character (0x75): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* * | + |* * | + |* * | + |* * | + |* ** | + | ** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x8800, +0x9800, +0x6800, +0x0000, +0x0000, + +/* Character (0x76): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* * | + |* * | + |* * | + | * * | + | * * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x5000, +0x5000, +0x2000, +0x0000, +0x0000, + +/* Character (0x77): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* * | + |* * | + |* * * | + |* * * | + |* * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0xa800, +0xa800, +0xa800, +0x5000, +0x0000, +0x0000, + +/* Character (0x78): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* * | + | * * | + | * | + | * | + | * * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x5000, +0x2000, +0x2000, +0x5000, +0x8800, +0x0000, +0x0000, + +/* Character (0x79): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + |* * | + |* * | + |* * | + |* ** | + | ** * | + | * | + |* * | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0x8800, +0x9800, +0x6800, +0x0800, +0x8800, +0x7000, + +/* Character (0x7a): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | | + |***** | + | * | + | * | + | * | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1000, +0x2000, +0x4000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x7b): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | * | + | * | + | * | + |** | + | * | + | * | + | * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x2000, +0x2000, +0x2000, +0xc000, +0x2000, +0x2000, +0x2000, +0x1800, +0x0000, +0x0000, + +/* Character (0x7c): + bbw=1, bbh=9, bbx=2, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x7d): + bbw=5, bbh=9, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |** | + | * | + | * | + | * | + | ** | + | * | + | * | + | * | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x2000, +0x2000, +0x2000, +0x1800, +0x2000, +0x2000, +0x2000, +0xc000, +0x0000, +0x0000, + +/* Character (0x7e): + bbw=5, bbh=3, bbx=0, bby=6, width=6 + +----------------+ + | | + | | + | * * | + |* * * | + |* * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4800, +0xa800, +0x9000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +}; + +/* Character->glyph data. */ +static unsigned short X6x13_offset[] = { + 0, /* (0x00) */ + 13, /* (0x01) */ + 26, /* (0x02) */ + 39, /* (0x03) */ + 52, /* (0x04) */ + 65, /* (0x05) */ + 78, /* (0x06) */ + 91, /* (0x07) */ + 104, /* (0x08) */ + 117, /* (0x09) */ + 130, /* (0x0a) */ + 143, /* (0x0b) */ + 156, /* (0x0c) */ + 169, /* (0x0d) */ + 182, /* (0x0e) */ + 195, /* (0x0f) */ + 208, /* (0x10) */ + 221, /* (0x11) */ + 234, /* (0x12) */ + 247, /* (0x13) */ + 260, /* (0x14) */ + 273, /* (0x15) */ + 286, /* (0x16) */ + 299, /* (0x17) */ + 312, /* (0x18) */ + 325, /* (0x19) */ + 338, /* (0x1a) */ + 351, /* (0x1b) */ + 364, /* (0x1c) */ + 377, /* (0x1d) */ + 390, /* (0x1e) */ + 403, /* (0x1f) */ + 416, /* (0x20) */ + 429, /* (0x21) */ + 442, /* (0x22) */ + 455, /* (0x23) */ + 468, /* (0x24) */ + 481, /* (0x25) */ + 494, /* (0x26) */ + 507, /* (0x27) */ + 520, /* (0x28) */ + 533, /* (0x29) */ + 546, /* (0x2a) */ + 559, /* (0x2b) */ + 572, /* (0x2c) */ + 585, /* (0x2d) */ + 598, /* (0x2e) */ + 611, /* (0x2f) */ + 624, /* (0x30) */ + 637, /* (0x31) */ + 650, /* (0x32) */ + 663, /* (0x33) */ + 676, /* (0x34) */ + 689, /* (0x35) */ + 702, /* (0x36) */ + 715, /* (0x37) */ + 728, /* (0x38) */ + 741, /* (0x39) */ + 754, /* (0x3a) */ + 767, /* (0x3b) */ + 780, /* (0x3c) */ + 793, /* (0x3d) */ + 806, /* (0x3e) */ + 819, /* (0x3f) */ + 832, /* (0x40) */ + 845, /* (0x41) */ + 858, /* (0x42) */ + 871, /* (0x43) */ + 884, /* (0x44) */ + 897, /* (0x45) */ + 910, /* (0x46) */ + 923, /* (0x47) */ + 936, /* (0x48) */ + 949, /* (0x49) */ + 962, /* (0x4a) */ + 975, /* (0x4b) */ + 988, /* (0x4c) */ + 1001, /* (0x4d) */ + 1014, /* (0x4e) */ + 1027, /* (0x4f) */ + 1040, /* (0x50) */ + 1053, /* (0x51) */ + 1066, /* (0x52) */ + 1079, /* (0x53) */ + 1092, /* (0x54) */ + 1105, /* (0x55) */ + 1118, /* (0x56) */ + 1131, /* (0x57) */ + 1144, /* (0x58) */ + 1157, /* (0x59) */ + 1170, /* (0x5a) */ + 1183, /* (0x5b) */ + 1196, /* (0x5c) */ + 1209, /* (0x5d) */ + 1222, /* (0x5e) */ + 1235, /* (0x5f) */ + 1248, /* (0x60) */ + 1261, /* (0x61) */ + 1274, /* (0x62) */ + 1287, /* (0x63) */ + 1300, /* (0x64) */ + 1313, /* (0x65) */ + 1326, /* (0x66) */ + 1339, /* (0x67) */ + 1352, /* (0x68) */ + 1365, /* (0x69) */ + 1378, /* (0x6a) */ + 1391, /* (0x6b) */ + 1404, /* (0x6c) */ + 1417, /* (0x6d) */ + 1430, /* (0x6e) */ + 1443, /* (0x6f) */ + 1456, /* (0x70) */ + 1469, /* (0x71) */ + 1482, /* (0x72) */ + 1495, /* (0x73) */ + 1508, /* (0x74) */ + 1521, /* (0x75) */ + 1534, /* (0x76) */ + 1547, /* (0x77) */ + 1560, /* (0x78) */ + 1573, /* (0x79) */ + 1586, /* (0x7a) */ + 1599, /* (0x7b) */ + 1612, /* (0x7c) */ + 1625, /* (0x7d) */ + 1638, /* (0x7e) */ +}; + +/* Character width data. */ +static unsigned char X6x13_width[] = { + 6, /* (0x00) */ + 6, /* (0x01) */ + 6, /* (0x02) */ + 6, /* (0x03) */ + 6, /* (0x04) */ + 6, /* (0x05) */ + 6, /* (0x06) */ + 6, /* (0x07) */ + 6, /* (0x08) */ + 6, /* (0x09) */ + 6, /* (0x0a) */ + 6, /* (0x0b) */ + 6, /* (0x0c) */ + 6, /* (0x0d) */ + 6, /* (0x0e) */ + 6, /* (0x0f) */ + 6, /* (0x10) */ + 6, /* (0x11) */ + 6, /* (0x12) */ + 6, /* (0x13) */ + 6, /* (0x14) */ + 6, /* (0x15) */ + 6, /* (0x16) */ + 6, /* (0x17) */ + 6, /* (0x18) */ + 6, /* (0x19) */ + 6, /* (0x1a) */ + 6, /* (0x1b) */ + 6, /* (0x1c) */ + 6, /* (0x1d) */ + 6, /* (0x1e) */ + 6, /* (0x1f) */ + 6, /* (0x20) */ + 6, /* (0x21) */ + 6, /* (0x22) */ + 6, /* (0x23) */ + 6, /* (0x24) */ + 6, /* (0x25) */ + 6, /* (0x26) */ + 6, /* (0x27) */ + 6, /* (0x28) */ + 6, /* (0x29) */ + 6, /* (0x2a) */ + 6, /* (0x2b) */ + 6, /* (0x2c) */ + 6, /* (0x2d) */ + 6, /* (0x2e) */ + 6, /* (0x2f) */ + 6, /* (0x30) */ + 6, /* (0x31) */ + 6, /* (0x32) */ + 6, /* (0x33) */ + 6, /* (0x34) */ + 6, /* (0x35) */ + 6, /* (0x36) */ + 6, /* (0x37) */ + 6, /* (0x38) */ + 6, /* (0x39) */ + 6, /* (0x3a) */ + 6, /* (0x3b) */ + 6, /* (0x3c) */ + 6, /* (0x3d) */ + 6, /* (0x3e) */ + 6, /* (0x3f) */ + 6, /* (0x40) */ + 6, /* (0x41) */ + 6, /* (0x42) */ + 6, /* (0x43) */ + 6, /* (0x44) */ + 6, /* (0x45) */ + 6, /* (0x46) */ + 6, /* (0x47) */ + 6, /* (0x48) */ + 6, /* (0x49) */ + 6, /* (0x4a) */ + 6, /* (0x4b) */ + 6, /* (0x4c) */ + 6, /* (0x4d) */ + 6, /* (0x4e) */ + 6, /* (0x4f) */ + 6, /* (0x50) */ + 6, /* (0x51) */ + 6, /* (0x52) */ + 6, /* (0x53) */ + 6, /* (0x54) */ + 6, /* (0x55) */ + 6, /* (0x56) */ + 6, /* (0x57) */ + 6, /* (0x58) */ + 6, /* (0x59) */ + 6, /* (0x5a) */ + 6, /* (0x5b) */ + 6, /* (0x5c) */ + 6, /* (0x5d) */ + 6, /* (0x5e) */ + 6, /* (0x5f) */ + 6, /* (0x60) */ + 6, /* (0x61) */ + 6, /* (0x62) */ + 6, /* (0x63) */ + 6, /* (0x64) */ + 6, /* (0x65) */ + 6, /* (0x66) */ + 6, /* (0x67) */ + 6, /* (0x68) */ + 6, /* (0x69) */ + 6, /* (0x6a) */ + 6, /* (0x6b) */ + 6, /* (0x6c) */ + 6, /* (0x6d) */ + 6, /* (0x6e) */ + 6, /* (0x6f) */ + 6, /* (0x70) */ + 6, /* (0x71) */ + 6, /* (0x72) */ + 6, /* (0x73) */ + 6, /* (0x74) */ + 6, /* (0x75) */ + 6, /* (0x76) */ + 6, /* (0x77) */ + 6, /* (0x78) */ + 6, /* (0x79) */ + 6, /* (0x7a) */ + 6, /* (0x7b) */ + 6, /* (0x7c) */ + 6, /* (0x7d) */ + 6, /* (0x7e) */ +}; + +/* Exported structure definition. */ +MWCFONT font_X6x13 = { + "X6x13", + 6, + 13, + 11, + 0, + 127, + X6x13_bits, + X6x13_offset, + X6x13_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/device.h b/packages/net/vnc_server/current/src/fonts/device.h new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/device.h @@ -0,0 +1,32 @@ +/* + * Copyright (c) 1999, 2000 Greg Haerr + * + * Engine-level Screen, Mouse and Keyboard device driver API's and types + * + * Contents of this file are not for general export + */ + +/* This is a fragment of the device.h file as used by the eCos port */ +/* of MicroWindows. This file is required to allow the VNC server */ +/* to use the font definition files supplied with microwindows. */ +/* This file is only included by the font definition files, other */ +/* files, including application files should include the */ +/* vnc-server.h file which also contains these 2 typedefs */ + +/* Chris Garry 26-Aug-2003 */ + + +typedef unsigned short MWIMAGEBITS; /* bitmap image unit size*/ + +typedef struct { + char * name; /* font name*/ + int maxwidth; /* max width in pixels*/ + int height; /* height in pixels*/ + int ascent; /* ascent (baseline) height*/ + int firstchar; /* first character in bitmap*/ + int size; /* font size in characters*/ + MWIMAGEBITS * bits; /* 16-bit right-padded bitmap data*/ + unsigned short *offset; /* 256 offsets into bitmap data*/ + unsigned char * width; /* 256 character widths or 0 if fixed*/ +} MWCFONT; + diff --git a/packages/net/vnc_server/current/src/fonts/helvB10.c b/packages/net/vnc_server/current/src/fonts/helvB10.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/helvB10.c @@ -0,0 +1,2980 @@ +/* Generated by convbdf on Tue Oct 3 00:24:22 MDT 2000. */ +#include "device.h" + +/* Font information: + + name: -Adobe-Helvetica-Bold-R-Normal--10-100-75-75-P-60-ISO8859-1 + pixel size: 10 + ascent: 10 + descent: 2 +*/ + +/* Font character bitmap data. */ +static MWIMAGEBITS helvB10_bits[] = { + +/* Character (0x20): + bbw=1, bbh=1, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x21): + bbw=2, bbh=8, bbx=1, bby=0, width=4 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | * | + | * | + | | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x4000, +0x4000, +0x0000, +0x6000, +0x0000, +0x0000, + +/* Character (0x22): + bbw=3, bbh=3, bbx=1, bby=5, width=5 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x5000, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x23): + bbw=6, bbh=7, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | * * | + | * * | + |****** | + | * * | + |***** | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x5000, +0x5000, +0xfc00, +0x5000, +0xf800, +0xa000, +0xa000, +0x0000, +0x0000, + +/* Character (0x24): + bbw=5, bbh=9, bbx=0, bby=-1, width=6 + +----------------+ + | | + | | + | * | + | *** | + |* * * | + |*** | + | *** | + | *** | + |* * * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x7000, +0xa800, +0xe000, +0x7000, +0x3800, +0xa800, +0x7000, +0x2000, +0x0000, + +/* Character (0x25): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | ** * | + |* ** * | + | ** * | + | * | + | * | + | * ** | + | * * ** | + |* ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6200, +0xb400, +0x6800, +0x1000, +0x1000, +0x2c00, +0x5600, +0x8c00, +0x0000, +0x0000, + +/* Character (0x26): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | *** | + |** ** | + |** ** | + | *** | + |** **** | + |** ** | + |** *** | + | *** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0xd800, +0x7000, +0xde00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, + +/* Character (0x27): + bbw=2, bbh=3, bbx=0, bby=5, width=3 + +----------------+ + | | + | | + |** | + | * | + |* | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x4000, +0x8000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x28): + bbw=3, bbh=10, bbx=0, bby=-2, width=4 + +----------------+ + | | + | | + | * | + | ** | + | * | + |** | + |** | + |** | + |** | + | * | + | ** | + | * | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x6000, +0x4000, +0xc000, +0xc000, +0xc000, +0xc000, +0x4000, +0x6000, +0x2000, + +/* Character (0x29): + bbw=3, bbh=10, bbx=0, bby=-2, width=4 + +----------------+ + | | + | | + |* | + |** | + | * | + | ** | + | ** | + | ** | + | ** | + | * | + |** | + |* | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0xc000, +0x4000, +0x6000, +0x6000, +0x6000, +0x6000, +0x4000, +0xc000, +0x8000, + +/* Character (0x2a): + bbw=3, bbh=3, bbx=0, bby=5, width=4 + +----------------+ + | | + | | + |* * | + | * | + |* * | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xa000, +0x4000, +0xa000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2b): + bbw=6, bbh=5, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | ** | + | ** | + |****** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x3000, +0xfc00, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2c): + bbw=2, bbh=4, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x8000, + +/* Character (0x2d): + bbw=5, bbh=1, bbx=1, bby=3, width=7 + +----------------+ + | | + | | + | | + | | + | | + | | + | ***** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2e): + bbw=1, bbh=2, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x2f): + bbw=4, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x30): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0xd800, +0xd800, +0xd800, +0xd800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x31): + bbw=4, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + |**** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0xf000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x0000, +0x0000, + +/* Character (0x32): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + | ** | + | ** | + | ** | + | ** | + |** | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0x1800, +0x1800, +0x3000, +0x6000, +0xc000, +0xf800, +0x0000, +0x0000, + +/* Character (0x33): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0x1800, +0x3000, +0x1800, +0x1800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x34): + bbw=6, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | *** | + | * ** | + | * ** | + |* ** | + |****** | + | ** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x3800, +0x5800, +0x5800, +0x9800, +0xfc00, +0x1800, +0x1800, +0x0000, +0x0000, + +/* Character (0x35): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |** | + |** | + |**** | + | ** | + |* ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xc000, +0xc000, +0xf000, +0x1800, +0x9800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x36): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + |** | + |**** | + |** ** | + |** ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0xc000, +0xf000, +0xd800, +0xd800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x37): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x1800, +0x1800, +0x3000, +0x3000, +0x3000, +0x6000, +0x6000, +0x0000, +0x0000, + +/* Character (0x38): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + |** ** | + | *** | + |** ** | + |** ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0xd800, +0x7000, +0xd800, +0xd800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x39): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + |** ** | + |** ** | + | **** | + | ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0xd800, +0xd800, +0x7800, +0x1800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x3a): + bbw=1, bbh=6, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | * | + | * | + | | + | | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x0000, +0x0000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x3b): + bbw=2, bbh=8, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + | | + | | + | * | + | * | + | | + | | + | * | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x8000, + +/* Character (0x3c): + bbw=4, bbh=5, bbx=0, bby=1, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + | ** | + |** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x6000, +0xc000, +0x6000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3d): + bbw=5, bbh=3, bbx=0, bby=2, width=6 + +----------------+ + | | + | | + | | + | | + | | + |***** | + | | + |***** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x0000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3e): + bbw=4, bbh=5, bbx=0, bby=1, width=5 + +----------------+ + | | + | | + | | + | | + |** | + | ** | + | ** | + | ** | + |** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xc000, +0x6000, +0x3000, +0x6000, +0xc000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3f): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |** ** | + | ** | + | ** | + | ** | + | ** | + | | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0x1800, +0x3000, +0x6000, +0x6000, +0x0000, +0x6000, +0x0000, +0x0000, + +/* Character (0x40): + bbw=10, bbh=9, bbx=0, bby=-2, width=11 + +----------------+ + | | + | | + | | + | ***** | + | ** * | + | * ** * * | + |* * * * | + |* * * * | + |* * * * | + |* ** ** | + | * | + | ***** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x1f00, +0x6080, +0x4d40, +0x9240, +0xa240, +0xa480, +0x9b00, +0x4000, +0x3e00, + +/* Character (0x41): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | *** | + | *** | + | ** ** | + | ** ** | + | ** ** | + |******* | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x3800, +0x6c00, +0x6c00, +0x6c00, +0xfe00, +0xc600, +0xc600, +0x0000, +0x0000, + +/* Character (0x42): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |***** | + |** ** | + |** ** | + |***** | + |** ** | + |** ** | + |** ** | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xcc00, +0xcc00, +0xf800, +0xcc00, +0xcc00, +0xcc00, +0xf800, +0x0000, +0x0000, + +/* Character (0x43): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | ** ** | + |** * | + |** | + |** | + |** * | + | ** ** | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0xc200, +0xc000, +0xc000, +0xc200, +0x6600, +0x3c00, +0x0000, +0x0000, + +/* Character (0x44): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |**** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf000, +0xd800, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xd800, +0xf000, +0x0000, +0x0000, + +/* Character (0x45): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |** | + |** | + |***** | + |** | + |** | + |** | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xc000, +0xc000, +0xf800, +0xc000, +0xc000, +0xc000, +0xf800, +0x0000, +0x0000, + +/* Character (0x46): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |** | + |** | + |**** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xc000, +0xc000, +0xf000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x47): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | ** ** | + |** * | + |** | + |** *** | + |** ** | + | ** ** | + | *** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0xc200, +0xc000, +0xce00, +0xc600, +0x6600, +0x3a00, +0x0000, +0x0000, + +/* Character (0x48): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** ** | + |** ** | + |** ** | + |****** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xfc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x0000, +0x0000, + +/* Character (0x49): + bbw=2, bbh=8, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x4a): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x4b): + bbw=7, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** ** | + |** ** | + |**** | + |*** | + |**** | + |** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xcc00, +0xd800, +0xf000, +0xe000, +0xf000, +0xd800, +0xcc00, +0xc600, +0x0000, +0x0000, + +/* Character (0x4c): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xf800, +0x0000, +0x0000, + +/* Character (0x4d): + bbw=9, bbh=8, bbx=0, bby=0, width=10 + +----------------+ + | | + | | + |** ** | + |*** *** | + |*** *** | + |**** **** | + |** * * ** | + |** *** ** | + |** * ** | + |** * ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc180, +0xe380, +0xe380, +0xf780, +0xd580, +0xdd80, +0xc980, +0xc980, +0x0000, +0x0000, + +/* Character (0x4e): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |*** ** | + |*** ** | + |** * ** | + |** * ** | + |** *** | + |** *** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc600, +0xe600, +0xe600, +0xd600, +0xd600, +0xce00, +0xce00, +0xc600, +0x0000, +0x0000, + +/* Character (0x4f): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0xc600, +0x6c00, +0x3800, +0x0000, +0x0000, + +/* Character (0x50): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |***** | + |** ** | + |** ** | + |** ** | + |***** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xcc00, +0xcc00, +0xcc00, +0xf800, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x51): + bbw=7, bbh=9, bbx=0, bby=-1, width=8 + +----------------+ + | | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + |** * ** | + | ** ** | + | **** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0xd600, +0x6c00, +0x3c00, +0x0200, +0x0000, + +/* Character (0x52): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |***** | + |** ** | + |** ** | + |** ** | + |***** | + |** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0xcc00, +0xcc00, +0xcc00, +0xf800, +0xcc00, +0xcc00, +0xcc00, +0x0000, +0x0000, + +/* Character (0x53): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + |*** | + | **** | + | *** | + |* ** | + |** ** | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xe000, +0x7800, +0x1c00, +0x8c00, +0xcc00, +0x7800, +0x0000, +0x0000, + +/* Character (0x54): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |****** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xfc00, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x0000, +0x0000, + +/* Character (0x55): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, + +/* Character (0x56): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | ** ** | + | *** | + | *** | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x6c00, +0x6c00, +0x3800, +0x3800, +0x1000, +0x0000, +0x0000, + +/* Character (0x57): + bbw=10, bbh=8, bbx=0, bby=0, width=11 + +----------------+ + | | + | | + |** ** ** | + |** ** ** | + |** ** ** | + | ** ** ** | + | ** ** ** | + | ******** | + | ** ** | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xccc0, +0xccc0, +0xccc0, +0x6d80, +0x6d80, +0x7f80, +0x3300, +0x2100, +0x0000, +0x0000, + +/* Character (0x58): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | *** | + | *** | + | ** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x3800, +0x3800, +0x6c00, +0xc600, +0xc600, +0x0000, +0x0000, + +/* Character (0x59): + bbw=8, bbh=8, bbx=0, bby=0, width=9 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x3c00, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, + +/* Character (0x5a): + bbw=6, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |****** | + | ** | + | ** | + | ** | + | *** | + | ** | + |** | + |****** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xfc00, +0x0c00, +0x1800, +0x3000, +0x7000, +0x6000, +0xc000, +0xfc00, +0x0000, +0x0000, + +/* Character (0x5b): + bbw=3, bbh=10, bbx=0, bby=-2, width=4 + +----------------+ + | | + | | + |*** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |*** | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xe000, + +/* Character (0x5c): + bbw=4, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + |* | + |* | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x4000, +0x4000, +0x2000, +0x2000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character (0x5d): + bbw=3, bbh=10, bbx=0, bby=-2, width=4 + +----------------+ + | | + | | + |*** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |*** | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xe000, + +/* Character (0x5e): + bbw=5, bbh=4, bbx=0, bby=4, width=5 + +----------------+ + | | + | | + | * | + | *** | + |** ** | + |* * | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x7000, +0xd800, +0x8800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5f): + bbw=6, bbh=1, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |****** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, + +/* Character (0x60): + bbw=2, bbh=3, bbx=0, bby=5, width=3 + +----------------+ + | | + | | + | * | + |* | + |** | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x8000, +0xc000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x61): + bbw=6, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |* ** | + | **** | + |** ** | + |** ** | + | ** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x9800, +0x7800, +0xd800, +0xd800, +0x6c00, +0x0000, +0x0000, + +/* Character (0x62): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |** | + |** | + |**** | + |** ** | + |** * | + |** * | + |** ** | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xf000, +0xd800, +0xc800, +0xc800, +0xd800, +0xf000, +0x0000, +0x0000, + +/* Character (0x63): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + | *** | + |** * | + |** | + |** | + |** * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0xd000, +0xc000, +0xc000, +0xd000, +0x7000, +0x0000, +0x0000, + +/* Character (0x64): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | ** | + | **** | + |** ** | + |* ** | + |* ** | + |** ** | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x7800, +0xd800, +0x9800, +0x9800, +0xd800, +0x7800, +0x0000, +0x0000, + +/* Character (0x65): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |** ** | + |***** | + |** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0xd800, +0xf800, +0xc000, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x66): + bbw=4, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | *** | + |** | + |*** | + |** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0xc000, +0xe000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x67): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | ** * | + |** ** | + |* ** | + |* ** | + |** ** | + | **** | + | ** | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6800, +0xd800, +0x9800, +0x9800, +0xd800, +0x7800, +0x1800, +0x7000, + +/* Character (0x68): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |** | + |** | + |**** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xf000, +0xd800, +0xd800, +0xd800, +0xd800, +0xd800, +0x0000, +0x0000, + +/* Character (0x69): + bbw=2, bbh=8, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |** | + | | + |** | + |** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x6a): + bbw=2, bbh=10, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + |** | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |* | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x8000, + +/* Character (0x6b): + bbw=6, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |** | + |** | + |** ** | + |**** | + |*** | + |**** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xd800, +0xf000, +0xe000, +0xf000, +0xd800, +0xcc00, +0x0000, +0x0000, + +/* Character (0x6c): + bbw=2, bbh=8, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x6d): + bbw=8, bbh=6, bbx=0, bby=0, width=9 + +----------------+ + | | + | | + | | + | | + |* ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb600, +0xdb00, +0xdb00, +0xdb00, +0xdb00, +0xdb00, +0x0000, +0x0000, + +/* Character (0x6e): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |* ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xd800, +0xd800, +0xd800, +0xd800, +0xd800, +0x0000, +0x0000, + +/* Character (0x6f): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |** ** | + |** ** | + |** ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0xd800, +0xd800, +0xd800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x70): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* ** | + |** ** | + |** * | + |** * | + |** ** | + |**** | + |** | + |** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xd800, +0xc800, +0xc800, +0xd800, +0xf000, +0xc000, +0xc000, + +/* Character (0x71): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | ** * | + |** ** | + |* ** | + |* ** | + |** ** | + | **** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6800, +0xd800, +0x9800, +0x9800, +0xd800, +0x7800, +0x1800, +0x1800, + +/* Character (0x72): + bbw=4, bbh=6, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | | + | | + |* ** | + |*** | + |** | + |** | + |** | + |** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xe000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, + +/* Character (0x73): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |** ** | + | *** | + | ** | + |** ** | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0xd800, +0x7000, +0x1800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character (0x74): + bbw=3, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + |** | + |** | + |*** | + |** | + |** | + |** | + |** | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xe000, +0xc000, +0xc000, +0xc000, +0xc000, +0x6000, +0x0000, +0x0000, + +/* Character (0x75): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xd800, +0xd800, +0xd800, +0xd800, +0x6800, +0x0000, +0x0000, + +/* Character (0x76): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + | * * | + | *** | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xd800, +0xd800, +0x5000, +0x7000, +0x2000, +0x0000, +0x0000, + +/* Character (0x77): + bbw=7, bbh=6, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | | + | | + |** * ** | + |** * ** | + |** * ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd600, +0xd600, +0xd600, +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, + +/* Character (0x78): + bbw=6, bbh=6, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + |** ** | + | **** | + | ** | + | **** | + |** ** | + |** ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xcc00, +0x7800, +0x3000, +0x7800, +0xcc00, +0xcc00, +0x0000, +0x0000, + +/* Character (0x79): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xd800, +0xd800, +0xd800, +0x7800, +0x3000, +0x3000, +0x6000, + +/* Character (0x7a): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |***** | + | ** | + | ** | + | ** | + |** | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1800, +0x3000, +0x6000, +0xc000, +0xf800, +0x0000, +0x0000, + +/* Character (0x7b): + bbw=4, bbh=10, bbx=0, bby=-2, width=5 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x6000, +0x6000, +0x6000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, + +/* Character (0x7c): + bbw=1, bbh=10, bbx=1, bby=-2, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, + +/* Character (0x7d): + bbw=4, bbh=10, bbx=0, bby=-2, width=5 + +----------------+ + | | + | | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x6000, +0x6000, +0x6000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character (0x7e): + bbw=6, bbh=2, bbx=0, bby=2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | ** ** | + |** ** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6c00, +0xd800, +0x0000, +0x0000, +0x0000, +0x0000, +}; + +/* Character->glyph data. */ +static unsigned short helvB10_offset[] = { + 0, /* (0x20) */ + 12, /* (0x21) */ + 24, /* (0x22) */ + 36, /* (0x23) */ + 48, /* (0x24) */ + 60, /* (0x25) */ + 72, /* (0x26) */ + 84, /* (0x27) */ + 96, /* (0x28) */ + 108, /* (0x29) */ + 120, /* (0x2a) */ + 132, /* (0x2b) */ + 144, /* (0x2c) */ + 156, /* (0x2d) */ + 168, /* (0x2e) */ + 180, /* (0x2f) */ + 192, /* (0x30) */ + 204, /* (0x31) */ + 216, /* (0x32) */ + 228, /* (0x33) */ + 240, /* (0x34) */ + 252, /* (0x35) */ + 264, /* (0x36) */ + 276, /* (0x37) */ + 288, /* (0x38) */ + 300, /* (0x39) */ + 312, /* (0x3a) */ + 324, /* (0x3b) */ + 336, /* (0x3c) */ + 348, /* (0x3d) */ + 360, /* (0x3e) */ + 372, /* (0x3f) */ + 384, /* (0x40) */ + 396, /* (0x41) */ + 408, /* (0x42) */ + 420, /* (0x43) */ + 432, /* (0x44) */ + 444, /* (0x45) */ + 456, /* (0x46) */ + 468, /* (0x47) */ + 480, /* (0x48) */ + 492, /* (0x49) */ + 504, /* (0x4a) */ + 516, /* (0x4b) */ + 528, /* (0x4c) */ + 540, /* (0x4d) */ + 552, /* (0x4e) */ + 564, /* (0x4f) */ + 576, /* (0x50) */ + 588, /* (0x51) */ + 600, /* (0x52) */ + 612, /* (0x53) */ + 624, /* (0x54) */ + 636, /* (0x55) */ + 648, /* (0x56) */ + 660, /* (0x57) */ + 672, /* (0x58) */ + 684, /* (0x59) */ + 696, /* (0x5a) */ + 708, /* (0x5b) */ + 720, /* (0x5c) */ + 732, /* (0x5d) */ + 744, /* (0x5e) */ + 756, /* (0x5f) */ + 768, /* (0x60) */ + 780, /* (0x61) */ + 792, /* (0x62) */ + 804, /* (0x63) */ + 816, /* (0x64) */ + 828, /* (0x65) */ + 840, /* (0x66) */ + 852, /* (0x67) */ + 864, /* (0x68) */ + 876, /* (0x69) */ + 888, /* (0x6a) */ + 900, /* (0x6b) */ + 912, /* (0x6c) */ + 924, /* (0x6d) */ + 936, /* (0x6e) */ + 948, /* (0x6f) */ + 960, /* (0x70) */ + 972, /* (0x71) */ + 984, /* (0x72) */ + 996, /* (0x73) */ + 1008, /* (0x74) */ + 1020, /* (0x75) */ + 1032, /* (0x76) */ + 1044, /* (0x77) */ + 1056, /* (0x78) */ + 1068, /* (0x79) */ + 1080, /* (0x7a) */ + 1092, /* (0x7b) */ + 1104, /* (0x7c) */ + 1116, /* (0x7d) */ + 1128, /* (0x7e) */ +}; + +/* Character width data. */ +static unsigned char helvB10_width[] = { + 3, /* (0x20) */ + 4, /* (0x21) */ + 5, /* (0x22) */ + 6, /* (0x23) */ + 6, /* (0x24) */ + 8, /* (0x25) */ + 8, /* (0x26) */ + 3, /* (0x27) */ + 4, /* (0x28) */ + 4, /* (0x29) */ + 4, /* (0x2a) */ + 6, /* (0x2b) */ + 3, /* (0x2c) */ + 7, /* (0x2d) */ + 3, /* (0x2e) */ + 4, /* (0x2f) */ + 6, /* (0x30) */ + 6, /* (0x31) */ + 6, /* (0x32) */ + 6, /* (0x33) */ + 6, /* (0x34) */ + 6, /* (0x35) */ + 6, /* (0x36) */ + 6, /* (0x37) */ + 6, /* (0x38) */ + 6, /* (0x39) */ + 3, /* (0x3a) */ + 3, /* (0x3b) */ + 5, /* (0x3c) */ + 6, /* (0x3d) */ + 5, /* (0x3e) */ + 6, /* (0x3f) */ + 11, /* (0x40) */ + 8, /* (0x41) */ + 7, /* (0x42) */ + 8, /* (0x43) */ + 7, /* (0x44) */ + 6, /* (0x45) */ + 6, /* (0x46) */ + 8, /* (0x47) */ + 7, /* (0x48) */ + 3, /* (0x49) */ + 6, /* (0x4a) */ + 7, /* (0x4b) */ + 6, /* (0x4c) */ + 10, /* (0x4d) */ + 8, /* (0x4e) */ + 8, /* (0x4f) */ + 7, /* (0x50) */ + 8, /* (0x51) */ + 7, /* (0x52) */ + 7, /* (0x53) */ + 7, /* (0x54) */ + 7, /* (0x55) */ + 8, /* (0x56) */ + 11, /* (0x57) */ + 8, /* (0x58) */ + 9, /* (0x59) */ + 7, /* (0x5a) */ + 4, /* (0x5b) */ + 4, /* (0x5c) */ + 4, /* (0x5d) */ + 5, /* (0x5e) */ + 6, /* (0x5f) */ + 3, /* (0x60) */ + 6, /* (0x61) */ + 6, /* (0x62) */ + 5, /* (0x63) */ + 6, /* (0x64) */ + 6, /* (0x65) */ + 4, /* (0x66) */ + 6, /* (0x67) */ + 6, /* (0x68) */ + 3, /* (0x69) */ + 3, /* (0x6a) */ + 6, /* (0x6b) */ + 3, /* (0x6c) */ + 9, /* (0x6d) */ + 6, /* (0x6e) */ + 6, /* (0x6f) */ + 6, /* (0x70) */ + 6, /* (0x71) */ + 4, /* (0x72) */ + 6, /* (0x73) */ + 4, /* (0x74) */ + 6, /* (0x75) */ + 6, /* (0x76) */ + 8, /* (0x77) */ + 7, /* (0x78) */ + 6, /* (0x79) */ + 6, /* (0x7a) */ + 5, /* (0x7b) */ + 3, /* (0x7c) */ + 5, /* (0x7d) */ + 6, /* (0x7e) */ +}; + +/* Exported structure definition. */ +MWCFONT font_helvB10 = { + "helvB10", + 11, + 12, + 10, + 32, + 95, + helvB10_bits, + helvB10_offset, + helvB10_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/helvB12.c b/packages/net/vnc_server/current/src/fonts/helvB12.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/helvB12.c @@ -0,0 +1,3360 @@ +/* Generated by convbdf on Tue Oct 3 00:24:23 MDT 2000. */ +#include "device.h" + +/* Font information: + + name: -Adobe-Helvetica-Bold-R-Normal--12-120-75-75-P-70-ISO8859-1 + pixel size: 12 + ascent: 11 + descent: 3 +*/ + +/* Font character bitmap data. */ +static MWIMAGEBITS helvB12_bits[] = { + +/* Character (0x20): + bbw=1, bbh=1, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x21): + bbw=2, bbh=9, bbx=1, bby=0, width=4 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | * | + | | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x4000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x22): + bbw=3, bbh=3, bbx=1, bby=6, width=5 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x5000, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x23): + bbw=7, bbh=8, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | | + | * * | + | * * | + | ****** | + | * * | + | * * | + |****** | + | * * | + | * * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x1400, +0x1400, +0x7e00, +0x2800, +0x2800, +0xfc00, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, + +/* Character (0x24): + bbw=6, bbh=11, bbx=0, bby=-2, width=7 + +----------------+ + | | + | | + | * | + | **** | + |** * * | + |** * | + | **** | + | *** | + |* * * | + |** * * | + | **** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x7800, +0xd400, +0xd000, +0x7800, +0x1c00, +0x9400, +0xd400, +0x7800, +0x1000, +0x1000, +0x0000, + +/* Character (0x25): + bbw=11, bbh=9, bbx=0, bby=0, width=12 + +----------------+ + | | + | | + | *** * | + |** ** ** | + |** ** * | + | *** * | + | * | + | * *** | + | * ** ** | + | ** ** ** | + | * *** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7100, +0xdb00, +0xda00, +0x7400, +0x0400, +0x09c0, +0x0b60, +0x1b60, +0x11c0, +0x0000, +0x0000, +0x0000, + +/* Character (0x26): + bbw=9, bbh=9, bbx=0, bby=0, width=9 + +----------------+ + | | + | | + | *** | + | ** ** | + | ** ** | + | *** | + | **** * | + |** **** | + |** ** | + |** **** | + | **** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0x6c00, +0x3800, +0x7900, +0xcf00, +0xc600, +0xcf00, +0x7980, +0x0000, +0x0000, +0x0000, + +/* Character (0x27): + bbw=2, bbh=3, bbx=1, bby=6, width=4 + +----------------+ + | | + | | + | ** | + | * | + | * | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x28): + bbw=4, bbh=12, bbx=1, bby=-3, width=6 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x3000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, +0x3000, +0x1800, + +/* Character (0x29): + bbw=4, bbh=12, bbx=1, bby=-3, width=6 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x3000, +0x3000, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3000, +0x3000, +0x6000, + +/* Character (0x2a): + bbw=5, bbh=4, bbx=0, bby=5, width=6 + +----------------+ + | | + | | + | * | + |***** | + | *** | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0xf800, +0x7000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2b): + bbw=6, bbh=5, bbx=0, bby=1, width=7 + +----------------+ + | | + | | + | | + | | + | | + | ** | + | ** | + |****** | + | ** | + | ** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x3000, +0xfc00, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2c): + bbw=2, bbh=4, bbx=1, bby=-2, width=4 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x2000, +0x4000, +0x0000, + +/* Character (0x2d): + bbw=5, bbh=1, bbx=1, bby=3, width=8 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | ***** | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2e): + bbw=2, bbh=2, bbx=1, bby=0, width=4 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2f): + bbw=4, bbh=9, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | ** | + | ** | + | * | + | ** | + | ** | + | * | + | * | + |** | + |** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x3000, +0x2000, +0x6000, +0x6000, +0x4000, +0x4000, +0xc000, +0xc000, +0x0000, +0x0000, +0x0000, + +/* Character (0x30): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x31): + bbw=4, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | ** | + |**** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0xf000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character (0x32): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + | ** | + | ** | + | ** | + | ** | + |** | + |** | + |****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc000, +0xc000, +0xfc00, +0x0000, +0x0000, +0x0000, + +/* Character (0x33): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + | ** | + | *** | + | ** | + | ** | + | ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0x0c00, +0x3800, +0x0c00, +0x0c00, +0x0c00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x34): + bbw=7, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | ** | + | *** | + | * ** | + | * ** | + | * ** | + |* ** | + |******* | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0c00, +0x1c00, +0x2c00, +0x2c00, +0x4c00, +0x8c00, +0xfe00, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0000, + +/* Character (0x35): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | ***** | + | ** | + |** | + |***** | + | ** | + | ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7c00, +0x6000, +0xc000, +0xf800, +0x0c00, +0x0c00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x36): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + |** | + |** | + |***** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xc000, +0xc000, +0xf800, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x37): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |****** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xfc00, +0x0c00, +0x1800, +0x1800, +0x3000, +0x3000, +0x3000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x38): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + |** ** | + | **** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0x7800, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x39): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | **** | + |** ** | + |** ** | + |** ** | + | ***** | + | ** | + | ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0xcc00, +0x7c00, +0x0c00, +0x0c00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x3a): + bbw=2, bbh=7, bbx=1, bby=0, width=4 + +----------------+ + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3b): + bbw=2, bbh=9, bbx=1, bby=-2, width=4 + +----------------+ + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | ** | + | ** | + | * | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x2000, +0x4000, +0x0000, + +/* Character (0x3c): + bbw=5, bbh=5, bbx=1, bby=1, width=7 + +----------------+ + | | + | | + | | + | | + | | + | ** | + | *** | + | ** | + | *** | + | ** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x3800, +0x6000, +0x3800, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3d): + bbw=6, bbh=3, bbx=0, bby=2, width=7 + +----------------+ + | | + | | + | | + | | + | | + | | + |****** | + | | + |****** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3e): + bbw=5, bbh=5, bbx=1, bby=1, width=7 + +----------------+ + | | + | | + | | + | | + | | + | ** | + | *** | + | ** | + | *** | + | ** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x3800, +0x0c00, +0x3800, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3f): + bbw=6, bbh=9, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x0c00, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character (0x40): + bbw=10, bbh=10, bbx=1, bby=-1, width=12 + +----------------+ + | | + | | + | ***** | + | ** * | + | * * | + | * ** * * | + | * * * * | + | * * * * | + | * * ** * | + | * ** ** | + | * | + | ***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0f80, +0x3040, +0x2020, +0x46a0, +0x4920, +0x5120, +0x5340, +0x4d80, +0x2000, +0x1f00, +0x0000, +0x0000, + +/* Character (0x41): + bbw=8, bbh=9, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | ** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character (0x42): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7e00, +0x6300, +0x6300, +0x6300, +0x7e00, +0x6300, +0x6300, +0x6300, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x43): + bbw=7, bbh=9, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | ** ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x44): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7c00, +0x6600, +0x6300, +0x6300, +0x6300, +0x6300, +0x6300, +0x6600, +0x7c00, +0x0000, +0x0000, +0x0000, + +/* Character (0x45): + bbw=6, bbh=9, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | ****** | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x46): + bbw=6, bbh=9, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | ****** | + | ** | + | ** | + | ** | + | ***** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x7c00, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x47): + bbw=8, bbh=9, bbx=1, bby=0, width=10 + +----------------+ + | | + | | + | ***** | + | ** ** | + | ** | + | ** | + | ** **** | + | ** ** | + | ** ** | + | ** ** | + | **** * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1f00, +0x3180, +0x6000, +0x6000, +0x6780, +0x6180, +0x6180, +0x3180, +0x1e80, +0x0000, +0x0000, +0x0000, + +/* Character (0x48): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6300, +0x6300, +0x6300, +0x6300, +0x7f00, +0x6300, +0x6300, +0x6300, +0x6300, +0x0000, +0x0000, +0x0000, + +/* Character (0x49): + bbw=2, bbh=9, bbx=1, bby=0, width=4 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x4a): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x4b): + bbw=8, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | **** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6300, +0x6600, +0x6c00, +0x7800, +0x7800, +0x6c00, +0x6600, +0x6300, +0x6180, +0x0000, +0x0000, +0x0000, + +/* Character (0x4c): + bbw=6, bbh=9, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x4d): + bbw=9, bbh=9, bbx=1, bby=0, width=11 + +----------------+ + | | + | | + | ** ** | + | ** ** | + | *** *** | + | *** *** | + | **** **** | + | ** * * ** | + | ** *** ** | + | ** * ** | + | ** * ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x60c0, +0x60c0, +0x71c0, +0x71c0, +0x7bc0, +0x6ac0, +0x6ec0, +0x64c0, +0x64c0, +0x0000, +0x0000, +0x0000, + +/* Character (0x4e): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ** ** | + | *** ** | + | *** ** | + | ** * ** | + | ** * ** | + | ** *** | + | ** *** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6300, +0x7300, +0x7300, +0x6b00, +0x6b00, +0x6700, +0x6700, +0x6300, +0x6300, +0x0000, +0x0000, +0x0000, + +/* Character (0x4f): + bbw=8, bbh=9, bbx=1, bby=0, width=10 + +----------------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x50): + bbw=7, bbh=9, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7e00, +0x6300, +0x6300, +0x6300, +0x7e00, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x51): + bbw=8, bbh=9, bbx=1, bby=0, width=10 + +----------------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** * ** | + | ** **** | + | ** ** | + | ****** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6580, +0x6780, +0x3300, +0x1f80, +0x0000, +0x0000, +0x0000, + +/* Character (0x52): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7e00, +0x6300, +0x6300, +0x6300, +0x7e00, +0x6600, +0x6300, +0x6300, +0x6300, +0x0000, +0x0000, +0x0000, + +/* Character (0x53): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ***** | + | ** ** | + | ** ** | + | *** | + | *** | + | *** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3e00, +0x6300, +0x6300, +0x3800, +0x0e00, +0x0700, +0x6300, +0x6300, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x54): + bbw=8, bbh=9, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |******** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character (0x55): + bbw=7, bbh=9, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6300, +0x6300, +0x6300, +0x6300, +0x6300, +0x6300, +0x6300, +0x3600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character (0x56): + bbw=8, bbh=9, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | ** ** | + | * * | + | **** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x6600, +0x2400, +0x3c00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character (0x57): + bbw=10, bbh=9, bbx=0, bby=0, width=10 + +----------------+ + | | + | | + |** ** ** | + |** ** ** | + |** ** ** | + | * ** * | + | ** ** ** | + | ** ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xccc0, +0xccc0, +0xccc0, +0x4c80, +0x6d80, +0x6d80, +0x3300, +0x3300, +0x3300, +0x0000, +0x0000, +0x0000, + +/* Character (0x58): + bbw=8, bbh=9, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | **** | + | ** | + | **** | + | ** ** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0x6600, +0x3c00, +0x1800, +0x3c00, +0x6600, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character (0x59): + bbw=8, bbh=9, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x3c00, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character (0x5a): + bbw=7, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |******* | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + |******* | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xfe00, +0x0600, +0x0c00, +0x1800, +0x3000, +0x3000, +0x6000, +0xc000, +0xfe00, +0x0000, +0x0000, +0x0000, + +/* Character (0x5b): + bbw=3, bbh=12, bbx=1, bby=-3, width=4 + +----------------+ + | | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7000, + +/* Character (0x5c): + bbw=4, bbh=9, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + |** | + |** | + | * | + | ** | + | ** | + | * | + | * | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0x4000, +0x6000, +0x6000, +0x2000, +0x2000, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5d): + bbw=3, bbh=12, bbx=0, bby=-3, width=4 + +----------------+ + | | + | | + |*** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |*** | + +----------------+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xe000, + +/* Character (0x5e): + bbw=7, bbh=4, bbx=0, bby=5, width=7 + +----------------+ + | | + | | + | * | + | *** | + | ** ** | + |** ** | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x3800, +0x6c00, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5f): + bbw=7, bbh=1, bbx=0, bby=-3, width=7 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |******* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, + +/* Character (0x60): + bbw=2, bbh=3, bbx=1, bby=6, width=4 + +----------------+ + | | + | | + | * | + | * | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x4000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x61): + bbw=7, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + | **** | + |** ** | + | ** | + | ***** | + |** ** | + |** ** | + | *** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0xcc00, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0x7600, +0x0000, +0x0000, +0x0000, + +/* Character (0x62): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** | + |** | + |** ** | + |*** ** | + |** ** | + |** ** | + |** ** | + |*** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xd800, +0xec00, +0xcc00, +0xcc00, +0xcc00, +0xec00, +0xd800, +0x0000, +0x0000, +0x0000, + +/* Character (0x63): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + | **** | + |** ** | + |** | + |** | + |** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0xcc00, +0xc000, +0xc000, +0xc000, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x64): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | ** | + | ** | + | ** ** | + |** *** | + |** ** | + |** ** | + |** ** | + |** *** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0c00, +0x0c00, +0x6c00, +0xdc00, +0xcc00, +0xcc00, +0xcc00, +0xdc00, +0x6c00, +0x0000, +0x0000, +0x0000, + +/* Character (0x65): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + | **** | + |** ** | + |** ** | + |****** | + |** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0xfc00, +0xc000, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x66): + bbw=5, bbh=9, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | *** | + | ** | + |**** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x6000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x67): + bbw=6, bbh=10, bbx=0, bby=-3, width=7 + +----------------+ + | | + | | + | | + | | + | ** ** | + |** *** | + |** ** | + |** ** | + |** ** | + |** *** | + | ** ** | + | ** | + |** ** | + | **** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6c00, +0xdc00, +0xcc00, +0xcc00, +0xcc00, +0xdc00, +0x6c00, +0x0c00, +0xcc00, +0x7800, + +/* Character (0x68): + bbw=6, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** | + |** | + |** ** | + |*** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xd800, +0xec00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x0000, +0x0000, +0x0000, + +/* Character (0x69): + bbw=2, bbh=9, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |** | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, +0x0000, + +/* Character (0x6a): + bbw=3, bbh=12, bbx=0, bby=-3, width=4 + +----------------+ + | | + | | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character (0x6b): + bbw=7, bbh=9, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |** | + |** | + |** ** | + |** ** | + |**** | + |**** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xcc00, +0xd800, +0xf000, +0xf000, +0xd800, +0xcc00, +0xc600, +0x0000, +0x0000, +0x0000, + +/* Character (0x6c): + bbw=2, bbh=9, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + |** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, +0x0000, + +/* Character (0x6d): + bbw=10, bbh=7, bbx=0, bby=0, width=11 + +----------------+ + | | + | | + | | + | | + |* *** *** | + |** ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + |** ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xbb80, +0xccc0, +0xccc0, +0xccc0, +0xccc0, +0xccc0, +0xccc0, +0x0000, +0x0000, +0x0000, + +/* Character (0x6e): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + |** ** | + |*** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xec00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x0000, +0x0000, +0x0000, + +/* Character (0x6f): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + | **** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x70): + bbw=6, bbh=10, bbx=0, bby=-3, width=7 + +----------------+ + | | + | | + | | + | | + |** ** | + |*** ** | + |** ** | + |** ** | + |** ** | + |*** ** | + |** ** | + |** | + |** | + |** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xec00, +0xcc00, +0xcc00, +0xcc00, +0xec00, +0xd800, +0xc000, +0xc000, +0xc000, + +/* Character (0x71): + bbw=6, bbh=10, bbx=0, bby=-3, width=7 + +----------------+ + | | + | | + | | + | | + | *** * | + |** *** | + |** ** | + |** ** | + |** ** | + |** *** | + | ** ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7400, +0xdc00, +0xcc00, +0xcc00, +0xcc00, +0xdc00, +0x6c00, +0x0c00, +0x0c00, +0x0c00, + +/* Character (0x72): + bbw=5, bbh=7, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + |** ** | + |***** | + |*** | + |** | + |** | + |** | + |** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0xf800, +0xe000, +0xc000, +0xc000, +0xc000, +0xc000, +0x0000, +0x0000, +0x0000, + +/* Character (0x73): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + | **** | + |** ** | + |*** | + | *** | + | *** | + |** ** | + | **** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0xcc00, +0xe000, +0x3800, +0x1c00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character (0x74): + bbw=5, bbh=9, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | ** | + | ** | + |**** | + | ** | + | ** | + | ** | + | ** | + | ** * | + | ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6800, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character (0x75): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xdc00, +0x6c00, +0x0000, +0x0000, +0x0000, + +/* Character (0x76): + bbw=7, bbh=7, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | *** | + | *** | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x6c00, +0x3800, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, + +/* Character (0x77): + bbw=10, bbh=7, bbx=0, bby=0, width=11 + +----------------+ + | | + | | + | | + | | + |** ** ** | + |** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xccc0, +0xccc0, +0x6d80, +0x6d80, +0x6d80, +0x3300, +0x3300, +0x0000, +0x0000, +0x0000, + +/* Character (0x78): + bbw=6, bbh=7, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + | **** | + | ** | + | **** | + |** ** | + |** ** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xcc00, +0xcc00, +0x7800, +0x3000, +0x7800, +0xcc00, +0xcc00, +0x0000, +0x0000, +0x0000, + +/* Character (0x79): + bbw=7, bbh=10, bbx=0, bby=-3, width=8 + +----------------+ + | | + | | + | | + | | + |** ** | + |** ** | + | ** ** | + | ** ** | + | *** | + | *** | + | ** | + | * | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x6c00, +0x3800, +0x3800, +0x1800, +0x1000, +0x3000, +0x6000, + +/* Character (0x7a): + bbw=5, bbh=7, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |***** | + | ** | + | ** | + | * | + | ** | + |** | + |***** | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1800, +0x3000, +0x2000, +0x6000, +0xc000, +0xf800, +0x0000, +0x0000, +0x0000, + +/* Character (0x7b): + bbw=4, bbh=12, bbx=0, bby=-3, width=5 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, + +/* Character (0x7c): + bbw=2, bbh=12, bbx=1, bby=-3, width=4 + +----------------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, + +/* Character (0x7d): + bbw=4, bbh=12, bbx=0, bby=-3, width=5 + +----------------+ + | | + | | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character (0x7e): + bbw=7, bbh=2, bbx=0, bby=3, width=7 + +----------------+ + | | + | | + | | + | | + | | + | | + | *** ** | + |** *** | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xdc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +}; + +/* Character->glyph data. */ +static unsigned short helvB12_offset[] = { + 0, /* (0x20) */ + 14, /* (0x21) */ + 28, /* (0x22) */ + 42, /* (0x23) */ + 56, /* (0x24) */ + 70, /* (0x25) */ + 84, /* (0x26) */ + 98, /* (0x27) */ + 112, /* (0x28) */ + 126, /* (0x29) */ + 140, /* (0x2a) */ + 154, /* (0x2b) */ + 168, /* (0x2c) */ + 182, /* (0x2d) */ + 196, /* (0x2e) */ + 210, /* (0x2f) */ + 224, /* (0x30) */ + 238, /* (0x31) */ + 252, /* (0x32) */ + 266, /* (0x33) */ + 280, /* (0x34) */ + 294, /* (0x35) */ + 308, /* (0x36) */ + 322, /* (0x37) */ + 336, /* (0x38) */ + 350, /* (0x39) */ + 364, /* (0x3a) */ + 378, /* (0x3b) */ + 392, /* (0x3c) */ + 406, /* (0x3d) */ + 420, /* (0x3e) */ + 434, /* (0x3f) */ + 448, /* (0x40) */ + 462, /* (0x41) */ + 476, /* (0x42) */ + 490, /* (0x43) */ + 504, /* (0x44) */ + 518, /* (0x45) */ + 532, /* (0x46) */ + 546, /* (0x47) */ + 560, /* (0x48) */ + 574, /* (0x49) */ + 588, /* (0x4a) */ + 602, /* (0x4b) */ + 616, /* (0x4c) */ + 630, /* (0x4d) */ + 644, /* (0x4e) */ + 658, /* (0x4f) */ + 672, /* (0x50) */ + 686, /* (0x51) */ + 700, /* (0x52) */ + 714, /* (0x53) */ + 728, /* (0x54) */ + 742, /* (0x55) */ + 756, /* (0x56) */ + 770, /* (0x57) */ + 784, /* (0x58) */ + 798, /* (0x59) */ + 812, /* (0x5a) */ + 826, /* (0x5b) */ + 840, /* (0x5c) */ + 854, /* (0x5d) */ + 868, /* (0x5e) */ + 882, /* (0x5f) */ + 896, /* (0x60) */ + 910, /* (0x61) */ + 924, /* (0x62) */ + 938, /* (0x63) */ + 952, /* (0x64) */ + 966, /* (0x65) */ + 980, /* (0x66) */ + 994, /* (0x67) */ + 1008, /* (0x68) */ + 1022, /* (0x69) */ + 1036, /* (0x6a) */ + 1050, /* (0x6b) */ + 1064, /* (0x6c) */ + 1078, /* (0x6d) */ + 1092, /* (0x6e) */ + 1106, /* (0x6f) */ + 1120, /* (0x70) */ + 1134, /* (0x71) */ + 1148, /* (0x72) */ + 1162, /* (0x73) */ + 1176, /* (0x74) */ + 1190, /* (0x75) */ + 1204, /* (0x76) */ + 1218, /* (0x77) */ + 1232, /* (0x78) */ + 1246, /* (0x79) */ + 1260, /* (0x7a) */ + 1274, /* (0x7b) */ + 1288, /* (0x7c) */ + 1302, /* (0x7d) */ + 1316, /* (0x7e) */ +}; + +/* Character width data. */ +static unsigned char helvB12_width[] = { + 4, /* (0x20) */ + 4, /* (0x21) */ + 5, /* (0x22) */ + 8, /* (0x23) */ + 7, /* (0x24) */ + 12, /* (0x25) */ + 9, /* (0x26) */ + 4, /* (0x27) */ + 6, /* (0x28) */ + 6, /* (0x29) */ + 6, /* (0x2a) */ + 7, /* (0x2b) */ + 4, /* (0x2c) */ + 8, /* (0x2d) */ + 4, /* (0x2e) */ + 4, /* (0x2f) */ + 7, /* (0x30) */ + 7, /* (0x31) */ + 7, /* (0x32) */ + 7, /* (0x33) */ + 7, /* (0x34) */ + 7, /* (0x35) */ + 7, /* (0x36) */ + 7, /* (0x37) */ + 7, /* (0x38) */ + 7, /* (0x39) */ + 4, /* (0x3a) */ + 4, /* (0x3b) */ + 7, /* (0x3c) */ + 7, /* (0x3d) */ + 7, /* (0x3e) */ + 8, /* (0x3f) */ + 12, /* (0x40) */ + 8, /* (0x41) */ + 9, /* (0x42) */ + 8, /* (0x43) */ + 9, /* (0x44) */ + 8, /* (0x45) */ + 7, /* (0x46) */ + 10, /* (0x47) */ + 9, /* (0x48) */ + 4, /* (0x49) */ + 7, /* (0x4a) */ + 9, /* (0x4b) */ + 7, /* (0x4c) */ + 11, /* (0x4d) */ + 9, /* (0x4e) */ + 10, /* (0x4f) */ + 8, /* (0x50) */ + 10, /* (0x51) */ + 9, /* (0x52) */ + 9, /* (0x53) */ + 8, /* (0x54) */ + 9, /* (0x55) */ + 8, /* (0x56) */ + 10, /* (0x57) */ + 8, /* (0x58) */ + 8, /* (0x59) */ + 7, /* (0x5a) */ + 4, /* (0x5b) */ + 4, /* (0x5c) */ + 4, /* (0x5d) */ + 7, /* (0x5e) */ + 7, /* (0x5f) */ + 4, /* (0x60) */ + 7, /* (0x61) */ + 7, /* (0x62) */ + 7, /* (0x63) */ + 7, /* (0x64) */ + 7, /* (0x65) */ + 5, /* (0x66) */ + 7, /* (0x67) */ + 7, /* (0x68) */ + 3, /* (0x69) */ + 4, /* (0x6a) */ + 7, /* (0x6b) */ + 3, /* (0x6c) */ + 11, /* (0x6d) */ + 7, /* (0x6e) */ + 7, /* (0x6f) */ + 7, /* (0x70) */ + 7, /* (0x71) */ + 5, /* (0x72) */ + 7, /* (0x73) */ + 5, /* (0x74) */ + 7, /* (0x75) */ + 8, /* (0x76) */ + 11, /* (0x77) */ + 7, /* (0x78) */ + 8, /* (0x79) */ + 6, /* (0x7a) */ + 5, /* (0x7b) */ + 4, /* (0x7c) */ + 5, /* (0x7d) */ + 7, /* (0x7e) */ +}; + +/* Exported structure definition. */ +MWCFONT font_helvB12 = { + "helvB12", + 12, + 14, + 11, + 32, + 95, + helvB12_bits, + helvB12_offset, + helvB12_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/helvR10.c b/packages/net/vnc_server/current/src/fonts/helvR10.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/helvR10.c @@ -0,0 +1,2980 @@ +/* Generated by convbdf on Tue Oct 3 00:24:24 MDT 2000. */ +#include "device.h" + +/* Font information: + + name: -Adobe-Helvetica-Medium-R-Normal--10-100-75-75-P-56-ISO8859-1 + pixel size: 10 + ascent: 10 + descent: 2 +*/ + +/* Font character bitmap data. */ +static MWIMAGEBITS helvR10_bits[] = { + +/* Character (0x20): + bbw=1, bbh=1, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x21): + bbw=1, bbh=8, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x4000, +0x0000, +0x0000, + +/* Character (0x22): + bbw=3, bbh=2, bbx=1, bby=6, width=4 + +----------------+ + | | + | | + | * * | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x5000, +0x5000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x23): + bbw=6, bbh=7, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | * * | + | * * | + | ***** | + | * * | + |***** | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x2800, +0x2800, +0x7c00, +0x2800, +0xf800, +0x5000, +0x5000, +0x0000, +0x0000, + +/* Character (0x24): + bbw=5, bbh=9, bbx=0, bby=-1, width=6 + +----------------+ + | | + | | + | * | + | *** | + |* * * | + |* * | + | *** | + | * * | + |* * * | + | *** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x7000, +0xa800, +0xa000, +0x7000, +0x2800, +0xa800, +0x7000, +0x2000, +0x0000, + +/* Character (0x25): + bbw=8, bbh=8, bbx=0, bby=0, width=9 + +----------------+ + | | + | | + | ** * | + |* * * | + | ** * | + | * | + | * | + | * ** | + | * * * | + | * ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6400, +0x9400, +0x6800, +0x0800, +0x1000, +0x1600, +0x2900, +0x2600, +0x0000, +0x0000, + +/* Character (0x26): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | * | + | * * | + | * * | + | ** | + | * * * | + | * ** | + | * ** | + | ** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x2800, +0x2800, +0x3000, +0x5200, +0x4c00, +0x4c00, +0x3200, +0x0000, +0x0000, + +/* Character (0x27): + bbw=2, bbh=3, bbx=1, bby=5, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x28): + bbw=3, bbh=10, bbx=0, bby=-2, width=4 + +----------------+ + | | + | | + | * | + | * | + | * | + |* | + |* | + |* | + |* | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x4000, +0x4000, +0x8000, +0x8000, +0x8000, +0x8000, +0x4000, +0x4000, +0x2000, + +/* Character (0x29): + bbw=3, bbh=10, bbx=1, bby=-2, width=4 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x2000, +0x2000, +0x1000, +0x1000, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, + +/* Character (0x2a): + bbw=3, bbh=3, bbx=0, bby=5, width=4 + +----------------+ + | | + | | + |* * | + | * | + |* * | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xa000, +0x4000, +0xa000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2b): + bbw=5, bbh=5, bbx=0, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | * | + |***** | + | * | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x2000, +0xf800, +0x2000, +0x2000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2c): + bbw=2, bbh=3, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x8000, + +/* Character (0x2d): + bbw=5, bbh=1, bbx=1, bby=3, width=7 + +----------------+ + | | + | | + | | + | | + | | + | | + | ***** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x2e): + bbw=1, bbh=1, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, + +/* Character (0x2f): + bbw=3, bbh=8, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x4000, +0x4000, +0x4000, +0x4000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x30): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x31): + bbw=2, bbh=8, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | * | + | ** | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x6000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x32): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + | * | + | * | + | ** | + | * | + |* | + |***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x0800, +0x0800, +0x3000, +0x4000, +0x8000, +0xf800, +0x0000, +0x0000, + +/* Character (0x33): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + | * | + | ** | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x0800, +0x3000, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x34): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | ** | + | * * | + | * * | + |* * | + |***** | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x3000, +0x5000, +0x5000, +0x9000, +0xf800, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character (0x35): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + |* | + |* | + |**** | + | * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x8000, +0x8000, +0xf000, +0x0800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x36): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* | + |* ** | + |** * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8000, +0xb000, +0xc800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x37): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x0800, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x38): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + | *** | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x7000, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x39): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | *** | + |* * | + |* * | + |* ** | + | ** * | + | * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x9800, +0x6800, +0x0800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x3a): + bbw=1, bbh=6, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | | + | | + | * | + | | + | | + | | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, + +/* Character (0x3b): + bbw=2, bbh=8, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + | | + | | + | * | + | | + | | + | | + | | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x8000, + +/* Character (0x3c): + bbw=3, bbh=5, bbx=1, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | * | + | * | + | * | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x2000, +0x4000, +0x2000, +0x1000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3d): + bbw=4, bbh=3, bbx=0, bby=2, width=5 + +----------------+ + | | + | | + | | + | | + | | + |**** | + | | + |**** | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0x0000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3e): + bbw=3, bbh=5, bbx=1, bby=1, width=6 + +----------------+ + | | + | | + | | + | | + | * | + | * | + | * | + | * | + | * | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x2000, +0x1000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, + +/* Character (0x3f): + bbw=4, bbh=8, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | ** | + | * * | + | * | + | * | + | * | + | * | + | | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x4800, +0x0800, +0x1000, +0x2000, +0x2000, +0x0000, +0x2000, +0x0000, +0x0000, + +/* Character (0x40): + bbw=10, bbh=10, bbx=0, bby=-2, width=11 + +----------------+ + | | + | | + | ***** | + | * * | + | * ** * * | + |* * * * | + |* * * * | + |* * * * | + |* * * * | + |* ** ** | + | * | + | ***** | + +----------------+ */ +0x0000, +0x0000, +0x1f00, +0x2080, +0x4d40, +0x9240, +0xa240, +0xa480, +0xa480, +0x9b00, +0x4000, +0x3e00, + +/* Character (0x41): + bbw=7, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character (0x42): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | **** | + | * * | + | * * | + | * * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0x4400, +0x4400, +0x7800, +0x4400, +0x4400, +0x4400, +0x7800, +0x0000, +0x0000, + +/* Character (0x43): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | * * | + | * | + | * | + | * | + | * | + | * * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4000, +0x4000, +0x4000, +0x4000, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character (0x44): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0x4400, +0x4200, +0x4200, +0x4200, +0x4200, +0x4400, +0x7800, +0x0000, +0x0000, + +/* Character (0x45): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | ***** | + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7c00, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character (0x46): + bbw=5, bbh=8, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | ***** | + | * | + | * | + | **** | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7c00, +0x4000, +0x4000, +0x7800, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x47): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | * * | + | * | + | * | + | * ** | + | * * | + | * ** | + | *** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4000, +0x4000, +0x4600, +0x4200, +0x4600, +0x3a00, +0x0000, +0x0000, + +/* Character (0x48): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | ****** | + | * * | + | * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4200, +0x4200, +0x4200, +0x7e00, +0x4200, +0x4200, +0x4200, +0x4200, +0x0000, +0x0000, + +/* Character (0x49): + bbw=1, bbh=8, bbx=1, bby=0, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x4a): + bbw=4, bbh=8, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + |* * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x9000, +0x6000, +0x0000, +0x0000, + +/* Character (0x4b): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | *** | + | * * | + | * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4400, +0x4800, +0x5000, +0x7000, +0x4800, +0x4800, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character (0x4c): + bbw=4, bbh=8, bbx=1, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x7800, +0x0000, +0x0000, + +/* Character (0x4d): + bbw=7, bbh=8, bbx=1, bby=0, width=9 + +----------------+ + | | + | | + | * * | + | ** ** | + | ** ** | + | * * * * | + | * * * * | + | * * * | + | * * * | + | * * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4100, +0x6300, +0x6300, +0x5500, +0x5500, +0x4900, +0x4900, +0x4900, +0x0000, +0x0000, + +/* Character (0x4e): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | ** * | + | ** * | + | * * * | + | * * * | + | * * * | + | * * * | + | * ** | + | * ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x6200, +0x6200, +0x5200, +0x5200, +0x4a00, +0x4a00, +0x4600, +0x4600, +0x0000, +0x0000, + +/* Character (0x4f): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character (0x50): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | **** | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0x4400, +0x4400, +0x7800, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x51): + bbw=7, bbh=9, bbx=1, bby=-1, width=8 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * * | + | * ** | + | ***** | + | * | + | | + +----------------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4a00, +0x4600, +0x3e00, +0x0100, +0x0000, + +/* Character (0x52): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | **** | + | * * | + | * * | + | **** | + | * * | + | * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7800, +0x4400, +0x4400, +0x7800, +0x4400, +0x4400, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character (0x53): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | *** | + | * * | + | * | + | *** | + | * | + | * * | + | * * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4000, +0x3800, +0x0400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character (0x54): + bbw=5, bbh=8, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + |***** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0xf800, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x55): + bbw=6, bbh=8, bbx=1, bby=0, width=8 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character (0x56): + bbw=7, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |* * | + |* * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8200, +0x8200, +0x4400, +0x4400, +0x4400, +0x2800, +0x2800, +0x1000, +0x0000, +0x0000, + +/* Character (0x57): + bbw=9, bbh=8, bbx=0, bby=0, width=9 + +----------------+ + | | + | | + |* * * | + |* * * | + | * * * | + | * * * | + | * * * * | + | * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8880, +0x8880, +0x4900, +0x4900, +0x5500, +0x2200, +0x2200, +0x2200, +0x0000, +0x0000, + +/* Character (0x58): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | * * | + | * * | + | * * | + | * | + | * * | + | * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4400, +0x4400, +0x2800, +0x1000, +0x2800, +0x2800, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character (0x59): + bbw=7, bbh=8, bbx=0, bby=0, width=7 + +----------------+ + | | + | | + |* * | + | * * | + | * * | + | * * | + | * * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8200, +0x4400, +0x4400, +0x2800, +0x2800, +0x1000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character (0x5a): + bbw=5, bbh=8, bbx=1, bby=0, width=7 + +----------------+ + | | + | | + | ***** | + | * | + | * | + | * | + | * | + | * | + | * | + | ***** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x7c00, +0x0400, +0x0800, +0x1000, +0x1000, +0x2000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character (0x5b): + bbw=2, bbh=10, bbx=1, bby=-2, width=3 + +----------------+ + | | + | | + | ** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | ** | + +----------------+ */ +0x0000, +0x0000, +0x6000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x6000, + +/* Character (0x5c): + bbw=3, bbh=8, bbx=0, bby=0, width=3 + +----------------+ + | | + | | + |* | + |* | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x4000, +0x4000, +0x4000, +0x4000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x5d): + bbw=2, bbh=10, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + |** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |** | + +----------------+ */ +0x0000, +0x0000, +0xc000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0xc000, + +/* Character (0x5e): + bbw=5, bbh=5, bbx=0, bby=3, width=6 + +----------------+ + | | + | | + | * | + | * | + | * * | + | * * | + |* * | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x5000, +0x5000, +0x8800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x5f): + bbw=6, bbh=1, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |****** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, + +/* Character (0x60): + bbw=2, bbh=3, bbx=0, bby=5, width=3 + +----------------+ + | | + | | + | * | + |* | + |* | + | | + | | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x8000, +0x8000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x61): + bbw=5, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + |*** | + | * | + | *** | + |* * | + |* * | + | ** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xe000, +0x1000, +0x7000, +0x9000, +0x9000, +0x6800, +0x0000, +0x0000, + +/* Character (0x62): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* ** | + |** * | + |* * | + |* * | + |** * | + |* ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0xb000, +0xc800, +0x8800, +0x8800, +0xc800, +0xb000, +0x0000, +0x0000, + +/* Character (0x63): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + |* * | + |* | + |* | + |* * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x9000, +0x8000, +0x8000, +0x9000, +0x6000, +0x0000, +0x0000, + +/* Character (0x64): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | * | + | * | + | ** * | + |* ** | + |* * | + |* * | + |* ** | + | ** * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0800, +0x0800, +0x6800, +0x9800, +0x8800, +0x8800, +0x9800, +0x6800, +0x0000, +0x0000, + +/* Character (0x65): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + |* * | + |**** | + |* | + |* * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x9000, +0xf000, +0x8000, +0x9000, +0x6000, +0x0000, +0x0000, + +/* Character (0x66): + bbw=4, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | ** | + | * | + |*** | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x3000, +0x4000, +0xe000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character (0x67): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | ** * | + |* ** | + |* * | + |* * | + |* ** | + | ** * | + | * | + | *** | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6800, +0x9800, +0x8800, +0x8800, +0x9800, +0x6800, +0x0800, +0x7000, + +/* Character (0x68): + bbw=5, bbh=8, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + |* | + |* | + |* ** | + |** * | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0xb000, +0xc800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x69): + bbw=1, bbh=8, bbx=0, bby=0, width=2 + +----------------+ + | | + | | + |* | + | | + |* | + |* | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x0000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x6a): + bbw=1, bbh=9, bbx=0, bby=-1, width=2 + +----------------+ + | | + | | + |* | + | | + |* | + |* | + |* | + |* | + |* | + |* | + |* | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x0000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, + +/* Character (0x6b): + bbw=4, bbh=8, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + |* | + |* | + |* * | + |* * | + |** | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x9000, +0xa000, +0xc000, +0xa000, +0x9000, +0x9000, +0x0000, +0x0000, + +/* Character (0x6c): + bbw=1, bbh=8, bbx=0, bby=0, width=2 + +----------------+ + | | + | | + |* | + |* | + |* | + |* | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x6d): + bbw=7, bbh=6, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | | + | | + |*** ** | + |* * * | + |* * * | + |* * * | + |* * * | + |* * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xec00, +0x9200, +0x9200, +0x9200, +0x9200, +0x9200, +0x0000, +0x0000, + +/* Character (0x6e): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |* ** | + |** * | + |* * | + |* * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xc800, +0x8800, +0x8800, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x6f): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + | *** | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7000, +0x8800, +0x8800, +0x8800, +0x8800, +0x7000, +0x0000, +0x0000, + +/* Character (0x70): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + |* ** | + |** * | + |* * | + |* * | + |** * | + |* ** | + |* | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xb000, +0xc800, +0x8800, +0x8800, +0xc800, +0xb000, +0x8000, +0x8000, + +/* Character (0x71): + bbw=5, bbh=8, bbx=0, bby=-2, width=6 + +----------------+ + | | + | | + | | + | | + | ** * | + |* ** | + |* * | + |* * | + |* ** | + | ** * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6800, +0x9800, +0x8800, +0x8800, +0x9800, +0x6800, +0x0800, +0x0800, + +/* Character (0x72): + bbw=3, bbh=6, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | | + | | + |* * | + |** | + |* | + |* | + |* | + |* | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xa000, +0xc000, +0x8000, +0x8000, +0x8000, +0x8000, +0x0000, +0x0000, + +/* Character (0x73): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + | ** | + |* * | + | ** | + | * | + |* * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x9000, +0x6000, +0x1000, +0x9000, +0x6000, +0x0000, +0x0000, + +/* Character (0x74): + bbw=3, bbh=8, bbx=0, bby=0, width=4 + +----------------+ + | | + | | + | * | + | * | + |*** | + | * | + | * | + | * | + | * | + | ** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0xe000, +0x4000, +0x4000, +0x4000, +0x4000, +0x6000, +0x0000, +0x0000, + +/* Character (0x75): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + |* * | + |* * | + |* * | + |* * | + |* * | + | *** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x9000, +0x9000, +0x9000, +0x9000, +0x9000, +0x7000, +0x0000, +0x0000, + +/* Character (0x76): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |* * | + |* * | + | * * | + | * * | + | * | + | * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x8800, +0x5000, +0x5000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character (0x77): + bbw=7, bbh=6, bbx=0, bby=0, width=8 + +----------------+ + | | + | | + | | + | | + |* * * | + |* * * | + | * * * | + | * * * | + | * * | + | * * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x9200, +0x9200, +0x5400, +0x5400, +0x2800, +0x2800, +0x0000, +0x0000, + +/* Character (0x78): + bbw=5, bbh=6, bbx=0, bby=0, width=6 + +----------------+ + | | + | | + | | + | | + |* * | + | * * | + | * | + | * * | + |* * | + |* * | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8800, +0x5000, +0x2000, +0x5000, +0x8800, +0x8800, +0x0000, +0x0000, + +/* Character (0x79): + bbw=4, bbh=8, bbx=0, bby=-2, width=5 + +----------------+ + | | + | | + | | + | | + |* * | + |* * | + |* * | + |* * | + | ** | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x9000, +0x9000, +0xa000, +0xa000, +0x6000, +0x4000, +0x4000, +0x8000, + +/* Character (0x7a): + bbw=4, bbh=6, bbx=0, bby=0, width=5 + +----------------+ + | | + | | + | | + | | + |**** | + | * | + | * | + | * | + |* | + |**** | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0x1000, +0x2000, +0x4000, +0x8000, +0xf000, +0x0000, +0x0000, + +/* Character (0x7b): + bbw=3, bbh=10, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + |* | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x2000, +0x4000, +0x4000, +0x4000, +0x8000, +0x4000, +0x4000, +0x4000, +0x4000, +0x2000, + +/* Character (0x7c): + bbw=1, bbh=10, bbx=1, bby=-2, width=3 + +----------------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +----------------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, + +/* Character (0x7d): + bbw=3, bbh=10, bbx=0, bby=-2, width=3 + +----------------+ + | | + | | + |* | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |* | + +----------------+ */ +0x0000, +0x0000, +0x8000, +0x4000, +0x4000, +0x4000, +0x2000, +0x4000, +0x4000, +0x4000, +0x4000, +0x8000, + +/* Character (0x7e): + bbw=6, bbh=2, bbx=0, bby=3, width=7 + +----------------+ + | | + | | + | | + | | + | | + | ** * | + |* ** | + | | + | | + | | + | | + | | + +----------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6400, +0x9800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +}; + +/* Character->glyph data. */ +static unsigned short helvR10_offset[] = { + 0, /* (0x20) */ + 12, /* (0x21) */ + 24, /* (0x22) */ + 36, /* (0x23) */ + 48, /* (0x24) */ + 60, /* (0x25) */ + 72, /* (0x26) */ + 84, /* (0x27) */ + 96, /* (0x28) */ + 108, /* (0x29) */ + 120, /* (0x2a) */ + 132, /* (0x2b) */ + 144, /* (0x2c) */ + 156, /* (0x2d) */ + 168, /* (0x2e) */ + 180, /* (0x2f) */ + 192, /* (0x30) */ + 204, /* (0x31) */ + 216, /* (0x32) */ + 228, /* (0x33) */ + 240, /* (0x34) */ + 252, /* (0x35) */ + 264, /* (0x36) */ + 276, /* (0x37) */ + 288, /* (0x38) */ + 300, /* (0x39) */ + 312, /* (0x3a) */ + 324, /* (0x3b) */ + 336, /* (0x3c) */ + 348, /* (0x3d) */ + 360, /* (0x3e) */ + 372, /* (0x3f) */ + 384, /* (0x40) */ + 396, /* (0x41) */ + 408, /* (0x42) */ + 420, /* (0x43) */ + 432, /* (0x44) */ + 444, /* (0x45) */ + 456, /* (0x46) */ + 468, /* (0x47) */ + 480, /* (0x48) */ + 492, /* (0x49) */ + 504, /* (0x4a) */ + 516, /* (0x4b) */ + 528, /* (0x4c) */ + 540, /* (0x4d) */ + 552, /* (0x4e) */ + 564, /* (0x4f) */ + 576, /* (0x50) */ + 588, /* (0x51) */ + 600, /* (0x52) */ + 612, /* (0x53) */ + 624, /* (0x54) */ + 636, /* (0x55) */ + 648, /* (0x56) */ + 660, /* (0x57) */ + 672, /* (0x58) */ + 684, /* (0x59) */ + 696, /* (0x5a) */ + 708, /* (0x5b) */ + 720, /* (0x5c) */ + 732, /* (0x5d) */ + 744, /* (0x5e) */ + 756, /* (0x5f) */ + 768, /* (0x60) */ + 780, /* (0x61) */ + 792, /* (0x62) */ + 804, /* (0x63) */ + 816, /* (0x64) */ + 828, /* (0x65) */ + 840, /* (0x66) */ + 852, /* (0x67) */ + 864, /* (0x68) */ + 876, /* (0x69) */ + 888, /* (0x6a) */ + 900, /* (0x6b) */ + 912, /* (0x6c) */ + 924, /* (0x6d) */ + 936, /* (0x6e) */ + 948, /* (0x6f) */ + 960, /* (0x70) */ + 972, /* (0x71) */ + 984, /* (0x72) */ + 996, /* (0x73) */ + 1008, /* (0x74) */ + 1020, /* (0x75) */ + 1032, /* (0x76) */ + 1044, /* (0x77) */ + 1056, /* (0x78) */ + 1068, /* (0x79) */ + 1080, /* (0x7a) */ + 1092, /* (0x7b) */ + 1104, /* (0x7c) */ + 1116, /* (0x7d) */ + 1128, /* (0x7e) */ +}; + +/* Character width data. */ +static unsigned char helvR10_width[] = { + 3, /* (0x20) */ + 3, /* (0x21) */ + 4, /* (0x22) */ + 6, /* (0x23) */ + 6, /* (0x24) */ + 9, /* (0x25) */ + 8, /* (0x26) */ + 3, /* (0x27) */ + 4, /* (0x28) */ + 4, /* (0x29) */ + 4, /* (0x2a) */ + 6, /* (0x2b) */ + 3, /* (0x2c) */ + 7, /* (0x2d) */ + 3, /* (0x2e) */ + 3, /* (0x2f) */ + 6, /* (0x30) */ + 6, /* (0x31) */ + 6, /* (0x32) */ + 6, /* (0x33) */ + 6, /* (0x34) */ + 6, /* (0x35) */ + 6, /* (0x36) */ + 6, /* (0x37) */ + 6, /* (0x38) */ + 6, /* (0x39) */ + 3, /* (0x3a) */ + 3, /* (0x3b) */ + 6, /* (0x3c) */ + 5, /* (0x3d) */ + 6, /* (0x3e) */ + 6, /* (0x3f) */ + 11, /* (0x40) */ + 7, /* (0x41) */ + 7, /* (0x42) */ + 8, /* (0x43) */ + 8, /* (0x44) */ + 7, /* (0x45) */ + 6, /* (0x46) */ + 8, /* (0x47) */ + 8, /* (0x48) */ + 3, /* (0x49) */ + 5, /* (0x4a) */ + 7, /* (0x4b) */ + 6, /* (0x4c) */ + 9, /* (0x4d) */ + 8, /* (0x4e) */ + 8, /* (0x4f) */ + 7, /* (0x50) */ + 8, /* (0x51) */ + 7, /* (0x52) */ + 7, /* (0x53) */ + 5, /* (0x54) */ + 8, /* (0x55) */ + 7, /* (0x56) */ + 9, /* (0x57) */ + 7, /* (0x58) */ + 7, /* (0x59) */ + 7, /* (0x5a) */ + 3, /* (0x5b) */ + 3, /* (0x5c) */ + 3, /* (0x5d) */ + 6, /* (0x5e) */ + 6, /* (0x5f) */ + 3, /* (0x60) */ + 5, /* (0x61) */ + 6, /* (0x62) */ + 5, /* (0x63) */ + 6, /* (0x64) */ + 5, /* (0x65) */ + 4, /* (0x66) */ + 6, /* (0x67) */ + 6, /* (0x68) */ + 2, /* (0x69) */ + 2, /* (0x6a) */ + 5, /* (0x6b) */ + 2, /* (0x6c) */ + 8, /* (0x6d) */ + 6, /* (0x6e) */ + 6, /* (0x6f) */ + 6, /* (0x70) */ + 6, /* (0x71) */ + 4, /* (0x72) */ + 5, /* (0x73) */ + 4, /* (0x74) */ + 5, /* (0x75) */ + 6, /* (0x76) */ + 8, /* (0x77) */ + 6, /* (0x78) */ + 5, /* (0x79) */ + 5, /* (0x7a) */ + 3, /* (0x7b) */ + 3, /* (0x7c) */ + 3, /* (0x7d) */ + 7, /* (0x7e) */ +}; + +/* Exported structure definition. */ +MWCFONT font_helvR10 = { + "helvR10", + 11, + 12, + 10, + 32, + 95, + helvR10_bits, + helvR10_offset, + helvR10_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/rom8x16.c b/packages/net/vnc_server/current/src/fonts/rom8x16.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/rom8x16.c @@ -0,0 +1,9494 @@ +/* Generated by convrom.exe*/ +#include "device.h" + +/* ROM 8x16 Font bios mode 12 */ + +static MWIMAGEBITS rom8x16_bits[] = { + +/* Character (0x00): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x01): + ht=16, width=8 + +--------+ + | | + | | + | ****** | + |* *| + |* * * *| + |* *| + |* *| + |* **** *| + |* ** *| + |* *| + |* *| + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0x8100, +0xa500, +0x8100, +0x8100, +0xbd00, +0x9900, +0x8100, +0x8100, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x02): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |******* | + |******* | + |** * ** | + |******* | + |******* | + |* *** * | + |** ** | + |******* | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xfe00, +0xfe00, +0xd600, +0xfe00, +0xfe00, +0xba00, +0xc600, +0xfe00, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x03): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + |*** *** | + |******* | + |******* | + |******* | + |******* | + | ***** | + | *** | + | * | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6c00, +0xee00, +0xfe00, +0xfe00, +0xfe00, +0xfe00, +0x7c00, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x04): + ht=16, width=8 + +--------+ + | | + | | + | | + | * | + | *** | + | ***** | + |******* | + | ***** | + | *** | + | * | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1000, +0x3800, +0x7c00, +0xfe00, +0x7c00, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x05): + ht=16, width=8 + +--------+ + | | + | | + | | + | * | + | *** | + | *** | + | * | + | ** ** | + |*** *** | + | ** ** | + | * | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1000, +0x3800, +0x3800, +0x1000, +0x6c00, +0xee00, +0x6c00, +0x1000, +0x3800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x06): + ht=16, width=8 + +--------+ + | | + | | + | * | + | *** | + | ***** | + | ***** | + |******* | + |******* | + |******* | + | ** ** | + | * | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1000, +0x3800, +0x7c00, +0x7c00, +0xfe00, +0xfe00, +0xfe00, +0x6c00, +0x1000, +0x3800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x07): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | **** | + | **** | + | **** | + | ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x3c00, +0x3c00, +0x3c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x08): + ht=16, width=8 + +--------+ + |********| + |********| + |********| + |********| + |********| + |*** ***| + |** **| + |** **| + |** **| + |*** ***| + |********| + |********| + |********| + |********| + |********| + |********| + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xe700, +0xc300, +0xc300, +0xc300, +0xe700, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character (0x09): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x3c00, +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character + (0x0a): + ht=16, width=8 + +--------+ + |********| + |********| + |********| + |********| + |*** ***| + |** **| + |* ** *| + |* ** *| + |* ** *| + |** **| + |*** ***| + |********| + |********| + |********| + |********| + |********| + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0xe700, +0xc300, +0x9900, +0x9900, +0x9900, +0xc300, +0xe700, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character (0x0b): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | *** | + | **** | + | ** ** | + | **** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1e00, +0x0e00, +0x1e00, +0x3600, +0x7800, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x0c): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x7e00, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x0d): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** * | + | **** | + | ** | + | ** | + | ** | + | ** | + | **** | + |***** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1e00, +0x1a00, +0x1e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x7800, +0xf800, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x0e): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + | ** ** | + | ***** | + | ** ** | + | ** ** | + | *** ** | + |**** ** | + | ** ** | + | *** | + | **** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3e00, +0x3600, +0x3e00, +0x3600, +0x3600, +0x7600, +0xf600, +0x6600, +0x0e00, +0x1e00, +0x0c00, +0x0000, +0x0000, +0x0000, + +/* Character  (0x0f): + ht=16, width=8 + +--------+ + | | + | | + | ** | + |** ** **| + | ****** | + | **** | + | ** ** | + | ** ** | + | **** | + | ****** | + |** ** **| + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0xdb00, +0x7e00, +0x3c00, +0x6600, +0x6600, +0x3c00, +0x7e00, +0xdb00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x10): + ht=16, width=8 + +--------+ + | | + | | + | | + |* | + |*** | + |**** | + |****** | + |******* | + |****** | + |**** | + |*** | + |* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x8000, +0xe000, +0xf000, +0xfc00, +0xfe00, +0xfc00, +0xf000, +0xe000, +0x8000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x11): + ht=16, width=8 + +--------+ + | | + | | + | | + | * | + | *** | + | ***** | + | ****** | + |******* | + | ****** | + | ***** | + | *** | + | * | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0200, +0x0e00, +0x3e00, +0x7e00, +0xfe00, +0x7e00, +0x3e00, +0x0e00, +0x0200, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x12): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | **** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x7e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x13): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | ** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x6600, +0x6600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x14): + ht=16, width=8 + +--------+ + | | + | | + | *******| + |** ** **| + |** ** **| + |** ** **| + |** ** **| + | **** **| + | ** **| + | ** **| + | ** **| + | ** **| + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7f00, +0xdb00, +0xdb00, +0xdb00, +0xdb00, +0x7b00, +0x1b00, +0x1b00, +0x1b00, +0x1b00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x15): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + | ** | + | ***** | + |**** ** | + |** **** | + | ***** | + | ** | + |** ** | + |** ** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0x6000, +0x7c00, +0xf600, +0xde00, +0x7c00, +0x0c00, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, + +/* Character  (0x16): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + |******* | + |******* | + |******* | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0xfe00, +0xfe00, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x17): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ****** | + | ** | + | ** | + | ** | + | ****** | + | **** | + | ** | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x7e00, +0x1800, +0x1800, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x18): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x7e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x19): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | **** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character -> (0x1a): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | *** | + |********| + | *** | + | ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x0e00, +0xff00, +0x0e00, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x1b): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | *** | + |******* | + | *** | + | ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x7000, +0xfe00, +0x7000, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x1c): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + |** | + |** | + |** | + |******* | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x1d): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | * * | + | ** ** | + |********| + | ** ** | + | * * | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2400, +0x6600, +0xff00, +0x6600, +0x2400, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x1e): + ht=16, width=8 + +--------+ + | | + | | + | | + | * | + | *** | + | *** | + | *** | + | ***** | + | ***** | + |******* | + |******* | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1000, +0x3800, +0x3800, +0x3800, +0x7c00, +0x7c00, +0xfe00, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x1f): + ht=16, width=8 + +--------+ + | | + | | + | | + |******* | + |******* | + | ***** | + | ***** | + | ***** | + | *** | + | *** | + | * | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0xfe00, +0xfe00, +0x7c00, +0x7c00, +0x7c00, +0x3800, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x20): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ! (0x21): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | **** | + | **** | + | **** | + | ** | + | ** | + | | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x3c00, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character " (0x22): + ht=16, width=8 + +--------+ + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3600, +0x3600, +0x3600, +0x3600, +0x1400, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character # (0x23): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + |******* | + | ** ** | + | ** ** | + |******* | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6c00, +0x6c00, +0x6c00, +0xfe00, +0x6c00, +0x6c00, +0xfe00, +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character $ (0x24): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ***** | + |** ** | + |** | + | **** | + | **** | + | ** | + |** ** | + | ***** | + | ** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x7c00, +0xc600, +0xc000, +0x7800, +0x3c00, +0x0600, +0xc600, +0x7c00, +0x1800, +0x1800, +0x0000, +0x0000, + +/* Character % (0x25): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** * | + | ** ** | + | ** | + | ** | + | ** | + | ** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6200, +0x6600, +0x0c00, +0x1800, +0x3000, +0x6600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character & (0x26): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** ** | + | *** | + | ** | + | *** ** | + | ****** | + |** ** | + |** ** | + |** ** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0x3800, +0x3000, +0x7600, +0x7e00, +0xcc00, +0xcc00, +0xcc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ' (0x27): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0c00, +0x0c00, +0x0c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ( (0x28): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0c00, +0x1800, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x1800, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ) (0x29): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3000, +0x1800, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x1800, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character * (0x2a): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** ** | + | *** | + |******* | + | *** | + | ** ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6c00, +0x3800, +0xfe00, +0x3800, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character + (0x2b): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | ** | + | ****** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character , (0x2c): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0c00, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character - (0x2d): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |******* | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character . (0x2e): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character / (0x2f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | * | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + |* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0200, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc000, +0x8000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 0 (0x30): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** *** | + |** **** | + |**** ** | + |*** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xce00, +0xde00, +0xf600, +0xe600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 1 (0x31): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x7800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 2 (0x32): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 3 (0x33): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + | ** | + | ** | + | **** | + | ** | + | ** | + | ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0x0600, +0x0600, +0x3c00, +0x0600, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 4 (0x34): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | *** | + | **** | + | ** ** | + |** ** | + |** ** | + |******* | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0c00, +0x1c00, +0x3c00, +0x6c00, +0xcc00, +0xcc00, +0xfe00, +0x0c00, +0x0c00, +0x1e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 5 (0x35): + ht=16, width=8 + +--------+ + | | + | | + |******* | + |** | + |** | + |** | + |****** | + | ** | + | ** | + | ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0xc000, +0xc000, +0xc000, +0xfc00, +0x0600, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 6 (0x36): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** | + |** | + |****** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0xc000, +0xfc00, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 7 (0x37): + ht=16, width=8 + +--------+ + | | + | | + |******* | + |** ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0xc600, +0x0600, +0x0c00, +0x1800, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 8 (0x38): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character 9 (0x39): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + | ****** | + | ** | + | ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0x7e00, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character : (0x3a): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ; (0x3b): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0c00, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character < (0x3c): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + |** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character = (0x3d): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + |******* | + | | + |******* | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x0000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character > (0x3e): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ? (0x3f): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + | ** | + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0x0c00, +0x1800, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character @ (0x40): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** **** | + |** **** | + |** **** | + |** *** | + |** | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xde00, +0xde00, +0xde00, +0xdc00, +0xc000, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character A (0x41): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character B (0x42): + ht=16, width=8 + +--------+ + | | + | | + |****** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfc00, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character C (0x43): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + |** * | + |** | + |** | + |** | + |** | + |** * | + | ** ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0xc200, +0xc000, +0xc000, +0xc000, +0xc000, +0xc200, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character D (0x44): + ht=16, width=8 + +--------+ + | | + | | + |***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xf800, +0x6c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6c00, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character E (0x45): + ht=16, width=8 + +--------+ + | | + | | + |******* | + | ** ** | + | ** | + | ** * | + | ***** | + | ** * | + | ** | + | ** | + | ** ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x6600, +0x6000, +0x6400, +0x7c00, +0x6400, +0x6000, +0x6000, +0x6600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character F (0x46): + ht=16, width=8 + +--------+ + | | + | | + |******* | + | ** ** | + | ** | + | ** * | + | ***** | + | ** * | + | ** | + | ** | + | ** | + |**** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x6600, +0x6000, +0x6400, +0x7c00, +0x6400, +0x6000, +0x6000, +0x6000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character G (0x47): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** | + |** | + |** | + |** *** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc000, +0xc000, +0xc000, +0xce00, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character H (0x48): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character I (0x49): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character J (0x4a): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xd800, +0xd800, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character K (0x4b): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |**** | + |**** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xcc00, +0xd800, +0xf000, +0xf000, +0xd800, +0xcc00, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character L (0x4c): + ht=16, width=8 + +--------+ + | | + | | + |**** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** * | + | ** ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6200, +0x6600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character M (0x4d): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |*** *** | + |*** *** | + |******* | + |** * ** | + |** * ** | + |** * ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xee00, +0xee00, +0xfe00, +0xd600, +0xd600, +0xd600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character N (0x4e): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |*** ** | + |*** ** | + |**** ** | + |** **** | + |** *** | + |** *** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xe600, +0xe600, +0xf600, +0xde00, +0xce00, +0xce00, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character O (0x4f): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character P (0x50): + ht=16, width=8 + +--------+ + | | + | | + |****** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + | ** | + |**** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfc00, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6000, +0x6000, +0x6000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Q (0x51): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** * ** | + |** * ** | + | ***** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xd600, +0xd600, +0x7c00, +0x0600, +0x0000, +0x0000, +0x0000, + +/* Character R (0x52): + ht=16, width=8 + +--------+ + | | + | | + |****** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | **** | + | ** ** | + | ** ** | + | ** ** | + |*** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfc00, +0x6600, +0x6600, +0x6600, +0x7c00, +0x7800, +0x6c00, +0x6600, +0x6600, +0xe600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character S (0x53): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** | + |** | + | *** | + | *** | + | ** | + | ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0xc000, +0x7000, +0x1c00, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character T (0x54): + ht=16, width=8 + +--------+ + | | + | | + | ****** | + | * ** * | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0x5a00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character U (0x55): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character V (0x56): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | * | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x6c00, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character W (0x57): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** * ** | + |** * ** | + |** * ** | + |******* | + |*** *** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xd600, +0xd600, +0xd600, +0xfe00, +0xee00, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character X (0x58): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0x6c00, +0x3800, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Y (0x59): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Z (0x5a): + ht=16, width=8 + +--------+ + | | + | | + |******* | + |** ** | + |* ** | + | ** | + | ** | + | ** | + | ** | + |** * | + |** ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0xc600, +0x8600, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc200, +0xc600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character [ (0x5b): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character \ (0x5c): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + |* | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | * | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x8000, +0xc000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0200, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ] (0x5d): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ^ (0x5e): + ht=16, width=8 + +--------+ + | | + | * | + | *** | + | ** ** | + |** ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x1000, +0x3800, +0x6c00, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character _ (0x5f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |********| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0x0000, + +/* Character ` (0x60): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x1800, +0x1800, +0x0c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character a (0x61): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character b (0x62): + ht=16, width=8 + +--------+ + | | + | | + |*** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character c (0x63): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + |** ** | + |** | + |** | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0xc000, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character d (0x64): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x0c00, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character e (0x65): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + |** ** | + |** ** | + |******* | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xfe00, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character f (0x66): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** ** | + | ** | + | ** | + |****** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x3600, +0x3000, +0x3000, +0xfc00, +0x3000, +0x3000, +0x3000, +0x3000, +0x7800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character g (0x67): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | *** ** | + |** *** | + |** ** | + |** ** | + |** *** | + | *** ** | + | ** | + |** ** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xce00, +0xc600, +0xc600, +0xce00, +0x7600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, + +/* Character h (0x68): + ht=16, width=8 + +--------+ + | | + | | + |*** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |*** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0xe600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character i (0x69): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character j (0x6a): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0000, +0x1c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, + +/* Character k (0x6b): + ht=16, width=8 + +--------+ + | | + | | + |*** | + | ** | + | ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** ** | + | ** ** | + |*** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x6600, +0x6600, +0x6c00, +0x7800, +0x6c00, +0x6600, +0xe600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character l (0x6c): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character m (0x6d): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** ** | + |******* | + |** * ** | + |** * ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6c00, +0xfe00, +0xd600, +0xd600, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character n (0x6e): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** *** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xdc00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character o (0x6f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character p (0x70): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** *** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + |**** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xdc00, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6000, +0x6000, +0xf000, +0x0000, +0x0000, + +/* Character q (0x71): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | *** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | ** | + | ** | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7c00, +0x0c00, +0x0c00, +0x1e00, +0x0000, +0x0000, + +/* Character r (0x72): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** *** | + | ** ** | + | ** | + | ** | + | ** | + | ** | + |**** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xdc00, +0x6600, +0x6000, +0x6000, +0x6000, +0x6000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character s (0x73): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + |** ** | + |** | + | ***** | + | ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0x7c00, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character t (0x74): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + |****** | + | ** | + | ** | + | ** | + | ** | + | ** ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3000, +0x3000, +0x3000, +0xfc00, +0x3000, +0x3000, +0x3000, +0x3000, +0x3600, +0x1c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character u (0x75): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character v (0x76): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | * | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0x6c00, +0x3800, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character w (0x77): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + |** ** | + |** * ** | + |** * ** | + |** * ** | + |******* | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0xd600, +0xd600, +0xd600, +0xfe00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character x (0x78): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + |** ** | + | ** ** | + | *** | + | ** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x3800, +0x6c00, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character y (0x79): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | ** | + |** ** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xce00, +0x7600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, + +/* Character z (0x7a): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |******* | + |* ** | + | ** | + | ** | + | ** | + | ** * | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x8600, +0x0c00, +0x1800, +0x3000, +0x6200, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character { (0x7b): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | ** | + | *** | + | ** | + | ** | + | ** | + | ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0e00, +0x1800, +0x1800, +0x1800, +0x7000, +0x1800, +0x1800, +0x1800, +0x1800, +0x0e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character | (0x7c): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character } (0x7d): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | ** | + | *** | + | ** | + | ** | + | ** | + | ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7000, +0x1800, +0x1800, +0x1800, +0x0e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ~ (0x7e): + ht=16, width=8 + +--------+ + | | + | | + | *** ** | + |** *** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7600, +0xdc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x7f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | * | + | *** | + | *** | + | ** ** | + | ** ** | + |******* | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x3800, +0x3800, +0x6c00, +0x6c00, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character € (0x80): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + |** | + |** | + |** | + |** ** | + | ** ** | + | **** | + | ** | + | ** | + |** ** | + | *** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0xc000, +0xc000, +0xc000, +0xc600, +0x6600, +0x3c00, +0x1800, +0x0c00, +0xcc00, +0x3800, +0x0000, +0x0000, + +/* Character (0x81): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ‚ (0x82): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | ***** | + |** ** | + |** ** | + |******* | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0c00, +0x1800, +0x3000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xfe00, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ƒ (0x83): + ht=16, width=8 + +--------+ + | | + | ** | + | **** | + |** ** | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x7800, +0xcc00, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character „ (0x84): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + | | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xcc00, +0x0000, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character … (0x85): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x6000, +0x3000, +0x1800, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character † (0x86): + ht=16, width=8 + +--------+ + | | + | *** | + | ** ** | + | *** | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3800, +0x6c00, +0x3800, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ‡ (0x87): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ***** | + |** ** | + |** | + |** | + |** ** | + | ***** | + | ** | + | ** | + | ** ** | + | *** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0xc000, +0xc600, +0x7c00, +0x1800, +0x0c00, +0x6c00, +0x3800, +0x0000, +0x0000, + +/* Character ˆ (0x88): + ht=16, width=8 + +--------+ + | | + | ** | + | **** | + |** ** | + | | + | ***** | + |** ** | + |** ** | + |******* | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x7800, +0xcc00, +0x0000, +0x7c00, +0xc600, +0xc600, +0xfe00, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ‰ (0x89): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + | | + | | + | ***** | + |** ** | + |** ** | + |******* | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xcc00, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xfe00, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Š (0x8a): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | ***** | + |** ** | + |** ** | + |******* | + |** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x1800, +0x0c00, +0x0000, +0x7c00, +0xc600, +0xc600, +0xfe00, +0xc000, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ‹ (0x8b): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6600, +0x0000, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Œ (0x8c): + ht=16, width=8 + +--------+ + | | + | ** | + | **** | + | ** ** | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x3c00, +0x6600, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x8d): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x6000, +0x3000, +0x1800, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ž (0x8e): + ht=16, width=8 + +--------+ + | | + |** ** | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x8f): + ht=16, width=8 + +--------+ + | *** | + | ** ** | + | *** | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x3800, +0x6c00, +0x3800, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x90): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | | + |******* | + | ** | + | ** | + | ***** | + | ** | + | ** | + | ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0c00, +0x1800, +0x3000, +0x0000, +0xfe00, +0x6000, +0x6000, +0x7c00, +0x6000, +0x6000, +0x6000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ‘ (0x91): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** ** | + |** ** **| + | ** **| + | *******| + |** ** | + |** ** | + |** *****| + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6600, +0xdb00, +0x1b00, +0x7f00, +0xd800, +0xd800, +0xdf00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ’ (0x92): + ht=16, width=8 + +--------+ + | | + | | + | ****** | + |** ** | + |** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + |** **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0xd800, +0xd800, +0xd800, +0xd800, +0xfe00, +0xd800, +0xd800, +0xd800, +0xde00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character “ (0x93): + ht=16, width=8 + +--------+ + | | + | ** | + | **** | + |** ** | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x7800, +0xcc00, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ” (0x94): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character • (0x95): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x1800, +0x0c00, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character – (0x96): + ht=16, width=8 + +--------+ + | | + | ** | + | **** | + |** ** | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x7800, +0xcc00, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character — (0x97): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x6000, +0x3000, +0x1800, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ˜ (0x98): + ht=16, width=8 + +--------+ + | | + |** ** | + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | ** | + | ** | + |** ** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xce00, +0x7600, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, +0x0000, + +/* Character ™ (0x99): + ht=16, width=8 + +--------+ + | | + |** ** | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character š (0x9a): + ht=16, width=8 + +--------+ + | | + |** ** | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character › (0x9b): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ***** | + |** ** | + |** | + |** | + |** ** | + | ***** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x7c00, +0xc600, +0xc000, +0xc000, +0xc600, +0x7c00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character œ (0x9c): + ht=16, width=8 + +--------+ + | | + | *** | + | ** ** | + | ** | + | ** | + |**** | + | ** | + | ** | + | ** | + | ** ** | + |**** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3800, +0x6c00, +0x6000, +0x6000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6600, +0xf600, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character (0x9d): + ht=16, width=8 + +--------+ + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ****** | + | ** | + | **** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x7e00, +0x1800, +0x3c00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ž (0x9e): + ht=16, width=8 + +--------+ + | | + |****** | + |** ** | + |** ** | + |****** | + |** | + |** ** | + |** **** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0xfc00, +0xc600, +0xc600, +0xfc00, +0xc000, +0xcc00, +0xde00, +0xcc00, +0xcc00, +0xcc00, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ÿ (0x9f): + ht=16, width=8 + +--------+ + | | + | *** | + | ** **| + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + | *** | + | | + | | + +--------+ */ +0x0000, +0x0e00, +0x1b00, +0x1800, +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xd800, +0x7000, +0x0000, +0x0000, + +/* Character   (0xa0): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | **** | + | ** | + | ***** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0c00, +0x1800, +0x3000, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¡ (0xa1): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0c00, +0x1800, +0x3000, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¢ (0xa2): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0c00, +0x1800, +0x3000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character £ (0xa3): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** | + | | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x3000, +0x6000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¤ (0xa4): + ht=16, width=8 + +--------+ + | | + | | + | *** ** | + |** *** | + | | + |* **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |*** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7600, +0xdc00, +0x0000, +0xbc00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0xe600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¥ (0xa5): + ht=16, width=8 + +--------+ + | | + | *** ** | + |** *** | + | | + |** ** | + |** ** | + |*** ** | + |**** ** | + |** **** | + |** *** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x7600, +0xdc00, +0x0000, +0xc600, +0xc600, +0xe600, +0xf600, +0xde00, +0xce00, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¦ (0xa6): + ht=16, width=8 + +--------+ + | | + | **** | + | ** ** | + | ** ** | + | ***** | + | | + | ****** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3c00, +0x6c00, +0x6c00, +0x3e00, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character § (0xa7): + ht=16, width=8 + +--------+ + | | + | *** | + | ** ** | + | ** ** | + | *** | + | | + | ***** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x3800, +0x6c00, +0x6c00, +0x3800, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¨ (0xa8): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3000, +0x3000, +0x0000, +0x3000, +0x3000, +0x3000, +0x6000, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character © (0xa9): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ****** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ª (0xaa): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ****** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x0600, +0x0600, +0x0600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character « (0xab): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** * | + | ** ** | + | ** ** | + | ** | + | ** | + | ** | + |** *** | + | ** ** | + | ** | + | ** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x6000, +0x6000, +0x6200, +0x6600, +0x6c00, +0x1800, +0x3000, +0x6000, +0xdc00, +0x3600, +0x0c00, +0x1800, +0x3e00, +0x0000, +0x0000, + +/* Character ¬ (0xac): + ht=16, width=8 + +--------+ + | | + | ** | + | ** | + | ** * | + | ** ** | + | ** ** | + | ** | + | ** ** | + | ** *** | + |** **** | + | ** ** | + | ****** | + | ** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x6000, +0x6000, +0x6200, +0x6600, +0x6c00, +0x1800, +0x3600, +0x6e00, +0xde00, +0x3600, +0x7e00, +0x0600, +0x0600, +0x0000, +0x0000, + +/* Character ­ (0xad): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | **** | + | **** | + | **** | + | **** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x3c00, +0x3c00, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ® (0xae): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** ** | + | ** ** | + |** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3600, +0x6c00, +0xd800, +0x6c00, +0x3600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¯ (0xaf): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** ** | + | ** ** | + | ** ** | + | ** ** | + |** ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0x6c00, +0x3600, +0x6c00, +0xd800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ° (0xb0): + ht=16, width=8 + +--------+ + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + | * *| + | * * | + +--------+ */ +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, +0x1100, +0x4400, + +/* Character ± (0xb1): + ht=16, width=8 + +--------+ + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + +--------+ */ +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, + +/* Character ² (0xb2): + ht=16, width=8 + +--------+ + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + +--------+ */ +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, + +/* Character ³ (0xb3): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character ´ (0xb4): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character µ (0xb5): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + |***** | + | ** | + |***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character ¶ (0xb6): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xf600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character · (0xb7): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character ¸ (0xb8): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |***** | + | ** | + |***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character ¹ (0xb9): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ** | + | ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xf600, +0x0600, +0xf600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character º (0xba): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character » (0xbb): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |******* | + | ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x0600, +0xf600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character ¼ (0xbc): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ** | + | ** | + |******* | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xf600, +0x0600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ½ (0xbd): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |******* | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¾ (0xbe): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + |***** | + | ** | + |***** | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x1800, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¿ (0xbf): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character À (0xc0): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *****| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Á (0xc1): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0xc2): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |********| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character à (0xc3): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Ä (0xc4): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Å (0xc5): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |********| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Æ (0xc6): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | *****| + | ** | + | *****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Ç (0xc7): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3700, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character È (0xc8): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ***| + | ** | + | ******| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3700, +0x3000, +0x3f00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character É (0xc9): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ******| + | ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3f00, +0x3000, +0x3700, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Ê (0xca): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ***| + | | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xf700, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ë (0xcb): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |********| + | | + |**** ***| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0xf700, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Ì (0xcc): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ***| + | ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3700, +0x3000, +0x3700, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Í (0xcd): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |********| + | | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Î (0xce): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ***| + | | + |**** ***| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xf700, +0x0000, +0xf700, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Ï (0xcf): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + |********| + | | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ð (0xd0): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ñ (0xd1): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |********| + | | + |********| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Ò (0xd2): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |********| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Ó (0xd3): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3f00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ô (0xd4): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | *****| + | ** | + | *****| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x1800, +0x1f00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Õ (0xd5): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | *****| + | ** | + | *****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1f00, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Ö (0xd6): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ******| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3f00, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character × (0xd7): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |********| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0xff00, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character Ø (0xd8): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + |********| + | ** | + |********| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Ù (0xd9): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |***** | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ú (0xda): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | *****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1f00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character Û (0xdb): + ht=16, width=8 + +--------+ + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character Ü (0xdc): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character Ý (0xdd): + ht=16, width=8 + +--------+ + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + +--------+ */ +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, + +/* Character Þ (0xde): + ht=16, width=8 + +--------+ + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + +--------+ */ +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, + +/* Character ß (0xdf): + ht=16, width=8 + +--------+ + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character à (0xe0): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | *** ** | + |** *** | + |** ** | + |** ** | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xdc00, +0xd800, +0xd800, +0xd800, +0xd800, +0xdc00, +0x7600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character á (0xe1): + ht=16, width=8 + +--------+ + | | + | | + | **** | + |** ** | + |** ** | + |** ** | + |****** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0xd800, +0xfc00, +0xc600, +0xc600, +0xc600, +0xc600, +0xcc00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character â (0xe2): + ht=16, width=8 + +--------+ + | | + | | + |******* | + | ** ** | + | ** * | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x6600, +0x6200, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ã (0xe3): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ä (0xe4): + ht=16, width=8 + +--------+ + | | + | | + |******* | + |** ** | + | ** * | + | ** | + | ** | + | ** | + | ** | + | ** * | + |** ** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0xc600, +0x6200, +0x3000, +0x1800, +0x1800, +0x3000, +0x6200, +0xc600, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character å (0xe5): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ****** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0xd800, +0xcc00, +0xcc00, +0xcc00, +0xd800, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character æ (0xe6): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + |** | + |* | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6000, +0xc000, +0x8000, +0x0000, +0x0000, +0x0000, + +/* Character ç (0xe7): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | *** ** | + |** *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xdc00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character è (0xe8): + ht=16, width=8 + +--------+ + | | + | | + |******* | + | *** | + | *** | + | ** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | *** | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x3800, +0x3800, +0x6c00, +0xc600, +0xc600, +0x6c00, +0x3800, +0x3800, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character é (0xe9): + ht=16, width=8 + +--------+ + | | + | | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + | ** ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0x6c00, +0x3800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ê (0xea): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ** ** | + | ** ** | + | ** ** | + |*** *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0xc600, +0xc600, +0xc600, +0xc600, +0x6c00, +0x6c00, +0x6c00, +0xee00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ë (0xeb): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + | ** | + | ** | + | **** | + | ** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3e00, +0x6000, +0x6000, +0x3c00, +0x6600, +0xc600, +0xc600, +0xc600, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ì (0xec): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ****** | + |** ** **| + |** ** **| + |** ** **| + | ****** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0xdb00, +0xdb00, +0xdb00, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character í (0xed): + ht=16, width=8 + +--------+ + | | + | | + | * | + | ** | + | ***** | + |** *** | + |** **** | + |**** ** | + |**** ** | + | ***** | + | ** | + |** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0200, +0x0600, +0x7c00, +0xce00, +0xde00, +0xf600, +0xf600, +0x7c00, +0x6000, +0xc000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character î (0xee): + ht=16, width=8 + +--------+ + | | + | | + | | + | *** | + | ** | + | ** | + | ** | + | ***** | + | ** | + | ** | + | ** | + | *** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1c00, +0x3000, +0x6000, +0x6000, +0x7c00, +0x6000, +0x6000, +0x3000, +0x1c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ï (0xef): + ht=16, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ð (0xf0): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + |******* | + | | + | | + |******* | + | | + | | + |******* | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ñ (0xf1): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | ** | + | ****** | + | ** | + | ** | + | | + | | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x0000, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ò (0xf2): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0c00, +0x1800, +0x3000, +0x0000, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ó (0xf3): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | ****** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0c00, +0x1800, +0x3000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0000, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ô (0xf4): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | **** | + | ** * | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x1e00, +0x1a00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character õ (0xf5): + ht=16, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | * ** | + | **** | + | ** | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x5800, +0x7800, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character ö (0xf6): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | ** | + | | + | ****** | + | | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x7e00, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ÷ (0xf7): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | *** ** | + |** *** | + | | + | *** ** | + |** *** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0xdc00, +0x0000, +0x7600, +0xdc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ø (0xf8): + ht=16, width=8 + +--------+ + | | + | | + | **** | + |** ** | + |** ** | + | **** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7800, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ù (0xf9): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ú (0xfa): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character û (0xfb): + ht=16, width=8 + +--------+ + | | + | | + | *****| + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | **** | + | *** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1f00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0xd800, +0xd800, +0x7800, +0x3800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character ü (0xfc): + ht=16, width=8 + +--------+ + | | + | | + |** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xd800, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ý (0xfd): + ht=16, width=8 + +--------+ + | | + | | + | *** | + |** ** | + | ** | + | ** | + | ** | + |***** | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7000, +0xd800, +0x1800, +0x3000, +0x6000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character þ (0xfe): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ****** | + | ****** | + | ****** | + | ****** | + | ****** | + | ****** | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x7e00, +0x7e00, +0x7e00, +0x7e00, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ÿ (0xff): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +}; + +/* Exported structure definition. */ +MWCFONT font_rom8x16 = { + "rom8x16", + 8, + 16, + 12, + 0, + 256, + rom8x16_bits, + 0, + 0 +}; diff --git a/packages/net/vnc_server/current/src/fonts/rom8x8.c b/packages/net/vnc_server/current/src/fonts/rom8x8.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/rom8x8.c @@ -0,0 +1,5398 @@ +/* Generated by convrom.exe*/ +#include "device.h" + +/* ROM 8x8 Font bios mode 10 */ + +static MWIMAGEBITS rom8x8_bits[] = { + +/* Character (0x00): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x01): + ht=8, width=8 + +--------+ + | ****** | + |* *| + |* * * *| + |* *| + |* **** *| + |* ** *| + |* *| + | ****** | + +--------+ */ +0x7e00, +0x8100, +0xa500, +0x8100, +0xbd00, +0x9900, +0x8100, +0x7e00, + +/* Character  (0x02): + ht=8, width=8 + +--------+ + | ***** | + |******* | + |** * ** | + |* *** * | + |** ** | + |******* | + | ***** | + | | + +--------+ */ +0x7c00, +0xfe00, +0xd600, +0xba00, +0xc600, +0xfe00, +0x7c00, +0x0000, + +/* Character  (0x03): + ht=8, width=8 + +--------+ + |** ** | + |*** *** | + |******* | + |******* | + | ***** | + | *** | + | * | + | | + +--------+ */ +0xc600, +0xee00, +0xfe00, +0xfe00, +0x7c00, +0x3800, +0x1000, +0x0000, + +/* Character  (0x04): + ht=8, width=8 + +--------+ + | * | + | *** | + | ***** | + |******* | + | ***** | + | *** | + | * | + | | + +--------+ */ +0x1000, +0x3800, +0x7c00, +0xfe00, +0x7c00, +0x3800, +0x1000, +0x0000, + +/* Character  (0x05): + ht=8, width=8 + +--------+ + | * | + | *** | + | * | + |*** *** | + |*** *** | + | * | + | *** | + | | + +--------+ */ +0x1000, +0x3800, +0x1000, +0xee00, +0xee00, +0x1000, +0x3800, +0x0000, + +/* Character  (0x06): + ht=8, width=8 + +--------+ + | *** | + | ***** | + |******* | + |******* | + | ** ** | + | * | + | *** | + | | + +--------+ */ +0x3800, +0x7c00, +0xfe00, +0xfe00, +0x6c00, +0x1000, +0x3800, +0x0000, + +/* Character  (0x07): + ht=8, width=8 + +--------+ + | | + | ** | + | **** | + | ****** | + | **** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x3c00, +0x7e00, +0x3c00, +0x1800, +0x0000, +0x0000, + +/* Character  (0x08): + ht=8, width=8 + +--------+ + |********| + |*** ***| + |** **| + |* *| + |** **| + |*** ***| + |********| + |********| + +--------+ */ +0xff00, +0xe700, +0xc300, +0x8100, +0xc300, +0xe700, +0xff00, +0xff00, + +/* Character (0x09): + ht=8, width=8 + +--------+ + | | + | ** | + | **** | + | ** ** | + | ** ** | + | **** | + | ** | + | | + +--------+ */ +0x0000, +0x1800, +0x3c00, +0x6600, +0x6600, +0x3c00, +0x1800, +0x0000, + +/* Character + (0x0a): + ht=8, width=8 + +--------+ + |********| + |*** ***| + |** **| + |* ** *| + |* ** *| + |** **| + |*** ***| + |********| + +--------+ */ +0xff00, +0xe700, +0xc300, +0x9900, +0x9900, +0xc300, +0xe700, +0xff00, + +/* Character (0x0b): + ht=8, width=8 + +--------+ + | **** | + | *** | + | **** | + | ** ** | + | **** | + |** ** | + |** ** | + | **** | + +--------+ */ +0x1e00, +0x0e00, +0x1e00, +0x3600, +0x7800, +0xcc00, +0xcc00, +0x7800, + +/* Character (0x0c): + ht=8, width=8 + +--------+ + | ****** | + |** **| + |** **| + | ****** | + | ** | + | ****** | + | ** | + | ** | + +--------+ */ +0x7e00, +0xc300, +0xc300, +0x7e00, +0x1800, +0x7e00, +0x1800, +0x1800, + +/* Character (0x0d): + ht=8, width=8 + +--------+ + | **** | + | ** * | + | **** | + | ** | + | ** | + | *** | + |**** | + | ** | + +--------+ */ +0x1e00, +0x1a00, +0x1e00, +0x1800, +0x1800, +0x7000, +0xf000, +0x6000, + +/* Character  (0x0e): + ht=8, width=8 + +--------+ + | ***** | + | ***** | + | ** ** | + | ** ** | + |**** ** | + | ** ** | + | **** | + | ** | + +--------+ */ +0x3e00, +0x3e00, +0x3600, +0x3600, +0xf600, +0x6600, +0x1e00, +0x0c00, + +/* Character  (0x0f): + ht=8, width=8 + +--------+ + |** ** **| + | **** | + | ** ** | + |*** ***| + | ** ** | + | **** | + |** ** **| + | | + +--------+ */ +0xdb00, +0x3c00, +0x6600, +0xe700, +0x6600, +0x3c00, +0xdb00, +0x0000, + +/* Character  (0x10): + ht=8, width=8 + +--------+ + |* | + |** | + |**** | + |***** | + |**** | + |** | + |* | + | | + +--------+ */ +0x8000, +0xc000, +0xf000, +0xf800, +0xf000, +0xc000, +0x8000, +0x0000, + +/* Character  (0x11): + ht=8, width=8 + +--------+ + | * | + | ** | + | **** | + | ***** | + | **** | + | ** | + | * | + | | + +--------+ */ +0x0200, +0x0600, +0x1e00, +0x3e00, +0x1e00, +0x0600, +0x0200, +0x0000, + +/* Character  (0x12): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ****** | + | ** | + | ****** | + | **** | + | ** | + | | + +--------+ */ +0x1800, +0x3c00, +0x7e00, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x0000, + +/* Character  (0x13): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | ** ** | + | | + +--------+ */ +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x6600, +0x0000, + +/* Character  (0x14): + ht=8, width=8 + +--------+ + | *******| + |** ** **| + | **** **| + | *** **| + | ** **| + | ** **| + | ** **| + | | + +--------+ */ +0x7f00, +0xdb00, +0x7b00, +0x3b00, +0x1b00, +0x1b00, +0x1b00, +0x0000, + +/* Character  (0x15): + ht=8, width=8 + +--------+ + | **** | + | ** ** | + | *** | + | ** ** | + | ** ** | + | *** | + |** ** | + | **** | + +--------+ */ +0x3c00, +0x6600, +0x3800, +0x6c00, +0x6c00, +0x3800, +0xcc00, +0x7800, + +/* Character  (0x16): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |******* | + |******* | + |******* | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0xfe00, +0xfe00, +0x0000, + +/* Character  (0x17): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ****** | + | ** | + | ****** | + | **** | + | ** | + | ****** | + +--------+ */ +0x1800, +0x3c00, +0x7e00, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x7e00, + +/* Character  (0x18): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x1800, +0x3c00, +0x7e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, + +/* Character  (0x19): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ****** | + | **** | + | ** | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x7e00, +0x3c00, +0x1800, +0x0000, + +/* Character -> (0x1a): + ht=8, width=8 + +--------+ + | | + | ** | + | *** | + |******* | + | *** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x1c00, +0xfe00, +0x1c00, +0x1800, +0x0000, +0x0000, + +/* Character  (0x1b): + ht=8, width=8 + +--------+ + | | + | ** | + | *** | + |******* | + | *** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x7000, +0xfe00, +0x7000, +0x3000, +0x0000, +0x0000, + +/* Character  (0x1c): + ht=8, width=8 + +--------+ + | | + | | + |** | + |** | + |** | + |******* | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xfe00, +0x0000, +0x0000, + +/* Character  (0x1d): + ht=8, width=8 + +--------+ + | | + | * * | + | ** ** | + |********| + | ** ** | + | * * | + | | + | | + +--------+ */ +0x0000, +0x2400, +0x6600, +0xff00, +0x6600, +0x2400, +0x0000, +0x0000, + +/* Character  (0x1e): + ht=8, width=8 + +--------+ + | | + | * | + | *** | + | ***** | + | ***** | + |******* | + | | + | | + +--------+ */ +0x0000, +0x1000, +0x3800, +0x7c00, +0x7c00, +0xfe00, +0x0000, +0x0000, + +/* Character  (0x1f): + ht=8, width=8 + +--------+ + | | + |******* | + | ***** | + | ***** | + | *** | + | * | + | | + | | + +--------+ */ +0x0000, +0xfe00, +0x7c00, +0x7c00, +0x3800, +0x1000, +0x0000, +0x0000, + +/* Character (0x20): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ! (0x21): + ht=8, width=8 + +--------+ + | ** | + | **** | + | **** | + | ** | + | ** | + | | + | ** | + | | + +--------+ */ +0x1800, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x0000, +0x1800, +0x0000, + +/* Character " (0x22): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + | | + +--------+ */ +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character # (0x23): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + |******* | + | ** ** | + |******* | + | ** ** | + | ** ** | + | | + +--------+ */ +0x6c00, +0x6c00, +0xfe00, +0x6c00, +0xfe00, +0x6c00, +0x6c00, +0x0000, + +/* Character $ (0x24): + ht=8, width=8 + +--------+ + | ** | + | ****** | + |** | + | ***** | + | ** | + |****** | + | ** | + | | + +--------+ */ +0x1800, +0x7e00, +0xc000, +0x7c00, +0x0600, +0xfc00, +0x1800, +0x0000, + +/* Character % (0x25): + ht=8, width=8 + +--------+ + | | + |** ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + | | + +--------+ */ +0x0000, +0xc600, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc600, +0x0000, + +/* Character & (0x26): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + | *** | + | *** ** | + |** ** | + |** ** | + | *** ** | + | | + +--------+ */ +0x3800, +0x6c00, +0x3800, +0x7600, +0xcc00, +0xcc00, +0x7600, +0x0000, + +/* Character ' (0x27): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ( (0x28): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x1800, +0x3000, +0x6000, +0x6000, +0x6000, +0x3000, +0x1800, +0x0000, + +/* Character ) (0x29): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x6000, +0x3000, +0x1800, +0x1800, +0x1800, +0x3000, +0x6000, +0x0000, + +/* Character * (0x2a): + ht=8, width=8 + +--------+ + | | + |*** *** | + | ***** | + |******* | + | ***** | + |*** *** | + | | + | | + +--------+ */ +0x0000, +0xee00, +0x7c00, +0xfe00, +0x7c00, +0xee00, +0x0000, +0x0000, + +/* Character + (0x2b): + ht=8, width=8 + +--------+ + | | + | ** | + | ** | + | ****** | + | ** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x0000, +0x0000, + +/* Character , (0x2c): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x3000, +0x0000, + +/* Character - (0x2d): + ht=8, width=8 + +--------+ + | | + | | + | | + |******* | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character . (0x2e): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | | + | *** | + | *** | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x3800, +0x0000, + +/* Character / (0x2f): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + |* | + | | + +--------+ */ +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0xc000, +0x8000, +0x0000, + +/* Character 0 (0x30): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** *** | + |** **** | + |**** ** | + |*** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xce00, +0xde00, +0xf600, +0xe600, +0x7c00, +0x0000, + +/* Character 1 (0x31): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | | + +--------+ */ +0x1800, +0x7800, +0x1800, +0x1800, +0x1800, +0x1800, +0x7e00, +0x0000, + +/* Character 2 (0x32): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | ** | + | ** | + | ** | + | ** ** | + |******* | + | | + +--------+ */ +0x7c00, +0xc600, +0x0c00, +0x1800, +0x3000, +0x6600, +0xfe00, +0x0000, + +/* Character 3 (0x33): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | ** | + | **** | + | ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0x0600, +0x3c00, +0x0600, +0xc600, +0x7c00, +0x0000, + +/* Character 4 (0x34): + ht=8, width=8 + +--------+ + | ** | + | *** | + | **** | + | ** ** | + |******* | + | ** | + | ** | + | | + +--------+ */ +0x0c00, +0x1c00, +0x3c00, +0x6c00, +0xfe00, +0x0c00, +0x0c00, +0x0000, + +/* Character 5 (0x35): + ht=8, width=8 + +--------+ + |******* | + |** | + |****** | + | ** | + | ** | + |** ** | + | ***** | + | | + +--------+ */ +0xfe00, +0xc000, +0xfc00, +0x0600, +0x0600, +0xc600, +0x7c00, +0x0000, + +/* Character 6 (0x36): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** | + |****** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc000, +0xfc00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character 7 (0x37): + ht=8, width=8 + +--------+ + |******* | + |** ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0xfe00, +0xc600, +0x0600, +0x0c00, +0x1800, +0x1800, +0x1800, +0x0000, + +/* Character 8 (0x38): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + | ***** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character 9 (0x39): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + | ****** | + | ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0x7e00, +0x0600, +0xc600, +0x7c00, +0x0000, + +/* Character : (0x3a): + ht=8, width=8 + +--------+ + | | + | *** | + | *** | + | | + | | + | *** | + | *** | + | | + +--------+ */ +0x0000, +0x1c00, +0x1c00, +0x0000, +0x0000, +0x1c00, +0x1c00, +0x0000, + +/* Character ; (0x3b): + ht=8, width=8 + +--------+ + | | + | ** | + | ** | + | | + | | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x1800, +0x1800, +0x3000, + +/* Character < (0x3c): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x0c00, +0x1800, +0x3000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0000, + +/* Character = (0x3d): + ht=8, width=8 + +--------+ + | | + | | + |******* | + | | + | | + |******* | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, +0xfe00, +0x0000, +0x0000, + +/* Character > (0x3e): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x6000, +0x3000, +0x1800, +0x0c00, +0x1800, +0x3000, +0x6000, +0x0000, + +/* Character ? (0x3f): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | ** | + | ** | + | ** | + | | + | ** | + | | + +--------+ */ +0x7c00, +0xc600, +0x0600, +0x0c00, +0x1800, +0x0000, +0x1800, +0x0000, + +/* Character @ (0x40): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + |** **** | + |** *** | + |** | + | ****** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0xde00, +0xdc00, +0xc000, +0x7e00, +0x0000, + +/* Character A (0x41): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + | | + +--------+ */ +0x3800, +0x6c00, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0x0000, + +/* Character B (0x42): + ht=8, width=8 + +--------+ + |****** | + | ** ** | + | ** ** | + | ***** | + | ** ** | + | ** ** | + |****** | + | | + +--------+ */ +0xfc00, +0x6600, +0x6600, +0x7c00, +0x6600, +0x6600, +0xfc00, +0x0000, + +/* Character C (0x43): + ht=8, width=8 + +--------+ + | **** | + | ** ** | + |** | + |** | + |** | + | ** ** | + | **** | + | | + +--------+ */ +0x3c00, +0x6600, +0xc000, +0xc000, +0xc000, +0x6600, +0x3c00, +0x0000, + +/* Character D (0x44): + ht=8, width=8 + +--------+ + |***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |***** | + | | + +--------+ */ +0xf800, +0x6c00, +0x6600, +0x6600, +0x6600, +0x6c00, +0xf800, +0x0000, + +/* Character E (0x45): + ht=8, width=8 + +--------+ + |******* | + |** * | + |** | + |***** | + |** | + |** * | + |******* | + | | + +--------+ */ +0xfe00, +0xc200, +0xc000, +0xf800, +0xc000, +0xc200, +0xfe00, +0x0000, + +/* Character F (0x46): + ht=8, width=8 + +--------+ + |******* | + | ** * | + | ** | + | ***** | + | ** | + | ** | + |**** | + | | + +--------+ */ +0xfe00, +0x6200, +0x6000, +0x7c00, +0x6000, +0x6000, +0xf000, +0x0000, + +/* Character G (0x47): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** | + |** | + |** **** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc000, +0xc000, +0xde00, +0xc600, +0x7c00, +0x0000, + +/* Character H (0x48): + ht=8, width=8 + +--------+ + |** ** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** ** | + | | + +--------+ */ +0xc600, +0xc600, +0xc600, +0xfe00, +0xc600, +0xc600, +0xc600, +0x0000, + +/* Character I (0x49): + ht=8, width=8 + +--------+ + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x3c00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character J (0x4a): + ht=8, width=8 + +--------+ + | **** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + | *** | + | | + +--------+ */ +0x3c00, +0x1800, +0x1800, +0x1800, +0xd800, +0xd800, +0x7000, +0x0000, + +/* Character K (0x4b): + ht=8, width=8 + +--------+ + |** ** | + |** ** | + |** ** | + |**** | + |** ** | + |** ** | + |** ** | + | | + +--------+ */ +0xc600, +0xcc00, +0xd800, +0xf000, +0xd800, +0xcc00, +0xc600, +0x0000, + +/* Character L (0x4c): + ht=8, width=8 + +--------+ + |**** | + | ** | + | ** | + | ** | + | ** | + | ** * | + |******* | + | | + +--------+ */ +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6200, +0xfe00, +0x0000, + +/* Character M (0x4d): + ht=8, width=8 + +--------+ + |** ** | + |*** *** | + |******* | + |** * ** | + |** * ** | + |** ** | + |** ** | + | | + +--------+ */ +0xc600, +0xee00, +0xfe00, +0xd600, +0xd600, +0xc600, +0xc600, +0x0000, + +/* Character N (0x4e): + ht=8, width=8 + +--------+ + |** ** | + |*** ** | + |*** ** | + |**** ** | + |** **** | + |** *** | + |** ** | + | | + +--------+ */ +0xc600, +0xe600, +0xe600, +0xf600, +0xde00, +0xce00, +0xc600, +0x0000, + +/* Character O (0x4f): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character P (0x50): + ht=8, width=8 + +--------+ + |****** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + |**** | + | | + +--------+ */ +0xfc00, +0x6600, +0x6600, +0x7c00, +0x6000, +0x6000, +0xf000, +0x0000, + +/* Character Q (0x51): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** * ** | + | ***** | + | ** | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xd600, +0x7c00, +0x0600, + +/* Character R (0x52): + ht=8, width=8 + +--------+ + |****** | + |** ** | + |** ** | + |****** | + |** ** | + |** ** | + |** ** | + | | + +--------+ */ +0xfc00, +0xc600, +0xc600, +0xfc00, +0xd800, +0xcc00, +0xc600, +0x0000, + +/* Character S (0x53): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** | + | ***** | + | ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc000, +0x7c00, +0x0600, +0xc600, +0x7c00, +0x0000, + +/* Character T (0x54): + ht=8, width=8 + +--------+ + | ****** | + | * ** * | + | ** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x7e00, +0x5a00, +0x1800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character U (0x55): + ht=8, width=8 + +--------+ + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character V (0x56): + ht=8, width=8 + +--------+ + |** ** | + |** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | * | + | | + +--------+ */ +0xc600, +0xc600, +0xc600, +0xc600, +0x6c00, +0x3800, +0x1000, +0x0000, + +/* Character W (0x57): + ht=8, width=8 + +--------+ + |** ** | + |** ** | + |** * ** | + |** * ** | + |******* | + |*** *** | + |** ** | + | | + +--------+ */ +0xc600, +0xc600, +0xd600, +0xd600, +0xfe00, +0xee00, +0xc600, +0x0000, + +/* Character X (0x58): + ht=8, width=8 + +--------+ + |** ** | + | ** ** | + | *** | + | *** | + | *** | + | ** ** | + |** ** | + | | + +--------+ */ +0xc600, +0x6c00, +0x3800, +0x3800, +0x3800, +0x6c00, +0xc600, +0x0000, + +/* Character Y (0x59): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character Z (0x5a): + ht=8, width=8 + +--------+ + |******* | + |* ** | + | ** | + | ** | + | ** | + | ** * | + |******* | + | | + +--------+ */ +0xfe00, +0x8600, +0x0c00, +0x1800, +0x3000, +0x6200, +0xfe00, +0x0000, + +/* Character [ (0x5b): + ht=8, width=8 + +--------+ + | ***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ***** | + | | + +--------+ */ +0x7c00, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7c00, +0x0000, + +/* Character \ (0x5c): + ht=8, width=8 + +--------+ + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | * | + | | + +--------+ */ +0xc000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0200, +0x0000, + +/* Character ] (0x5d): + ht=8, width=8 + +--------+ + | ***** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ***** | + | | + +--------+ */ +0x7c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x7c00, +0x0000, + +/* Character ^ (0x5e): + ht=8, width=8 + +--------+ + | * | + | *** | + | ** ** | + |** ** | + | | + | | + | | + | | + +--------+ */ +0x1000, +0x3800, +0x6c00, +0xc600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character _ (0x5f): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + |********| + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, + +/* Character ` (0x60): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + +--------+ */ +0x3000, +0x3000, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character a (0x61): + ht=8, width=8 + +--------+ + | | + | | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0x0000, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character b (0x62): + ht=8, width=8 + +--------+ + |*** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + |****** | + | | + +--------+ */ +0xe000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0xfc00, +0x0000, + +/* Character c (0x63): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** | + |** ** | + | ***** | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc000, +0xc600, +0x7c00, +0x0000, + +/* Character d (0x64): + ht=8, width=8 + +--------+ + | *** | + | ** | + | ***** | + |** ** | + |** ** | + |** ** | + | ****** | + | | + +--------+ */ +0x1c00, +0x0c00, +0x7c00, +0xcc00, +0xcc00, +0xcc00, +0x7e00, +0x0000, + +/* Character e (0x65): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |******* | + |** | + | ***** | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xfe00, +0xc000, +0x7c00, +0x0000, + +/* Character f (0x66): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + | ** | + |****** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x1c00, +0x3600, +0x3000, +0xfc00, +0x3000, +0x3000, +0x7800, +0x0000, + +/* Character g (0x67): + ht=8, width=8 + +--------+ + | | + | | + | *** ** | + |** *** | + |** ** | + | ****** | + | ** | + | ***** | + +--------+ */ +0x0000, +0x0000, +0x7600, +0xce00, +0xc600, +0x7e00, +0x0600, +0x7c00, + +/* Character h (0x68): + ht=8, width=8 + +--------+ + |*** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + |*** ** | + | | + +--------+ */ +0xe000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0xe600, +0x0000, + +/* Character i (0x69): + ht=8, width=8 + +--------+ + | ** | + | | + | *** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x1800, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character j (0x6a): + ht=8, width=8 + +--------+ + | ** | + | | + | *** | + | ** | + | ** | + | ** | + |** ** | + | **** | + +--------+ */ +0x0c00, +0x0000, +0x1c00, +0x0c00, +0x0c00, +0x0c00, +0xcc00, +0x7800, + +/* Character k (0x6b): + ht=8, width=8 + +--------+ + |*** | + | ** | + | ** ** | + | ** ** | + | **** | + | ** ** | + |*** ** | + | | + +--------+ */ +0xe000, +0x6000, +0x6600, +0x6c00, +0x7800, +0x6c00, +0xe600, +0x0000, + +/* Character l (0x6c): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *** | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1c00, +0x0000, + +/* Character m (0x6d): + ht=8, width=8 + +--------+ + | | + | | + | ** ** | + |******* | + |** * ** | + |** * ** | + |** ** | + | | + +--------+ */ +0x0000, +0x0000, +0x6c00, +0xfe00, +0xd600, +0xd600, +0xc600, +0x0000, + +/* Character n (0x6e): + ht=8, width=8 + +--------+ + | | + | | + |** *** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + +--------+ */ +0x0000, +0x0000, +0xdc00, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, + +/* Character o (0x6f): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character p (0x70): + ht=8, width=8 + +--------+ + | | + | | + |** *** | + | ** ** | + | ** ** | + | ***** | + | ** | + |**** | + +--------+ */ +0x0000, +0x0000, +0xdc00, +0x6600, +0x6600, +0x7c00, +0x6000, +0xf000, + +/* Character q (0x71): + ht=8, width=8 + +--------+ + | | + | | + | *** ** | + |** ** | + |** ** | + | ***** | + | ** | + | **** | + +--------+ */ +0x0000, +0x0000, +0x7600, +0xcc00, +0xcc00, +0x7c00, +0x0c00, +0x1e00, + +/* Character r (0x72): + ht=8, width=8 + +--------+ + | | + | | + |** *** | + | ** ** | + | ** | + | ** | + |**** | + | | + +--------+ */ +0x0000, +0x0000, +0xdc00, +0x6600, +0x6000, +0x6000, +0xf000, +0x0000, + +/* Character s (0x73): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + |** | + | ***** | + | ** | + | ***** | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc000, +0x7c00, +0x0600, +0x7c00, +0x0000, + +/* Character t (0x74): + ht=8, width=8 + +--------+ + | ** | + | ** | + |****** | + | ** | + | ** | + | ** ** | + | *** | + | | + +--------+ */ +0x3000, +0x3000, +0xfc00, +0x3000, +0x3000, +0x3600, +0x1c00, +0x0000, + +/* Character u (0x75): + ht=8, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** ** | + |** ** | + | *** ** | + | | + +--------+ */ +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x7600, +0x0000, + +/* Character v (0x76): + ht=8, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + | ** ** | + | *** | + | * | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0x6c00, +0x3800, +0x1000, +0x0000, + +/* Character w (0x77): + ht=8, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** * ** | + |******* | + | ** ** | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xd600, +0xfe00, +0x6c00, +0x0000, + +/* Character x (0x78): + ht=8, width=8 + +--------+ + | | + | | + |** ** | + | ** ** | + | *** | + | ** ** | + |** ** | + | | + +--------+ */ +0x0000, +0x0000, +0xc600, +0x6c00, +0x3800, +0x6c00, +0xc600, +0x0000, + +/* Character y (0x79): + ht=8, width=8 + +--------+ + | | + | | + |** ** | + |** ** | + |** *** | + | *** ** | + | ** | + | ***** | + +--------+ */ +0x0000, +0x0000, +0xc600, +0xc600, +0xce00, +0x7600, +0x0600, +0x7c00, + +/* Character z (0x7a): + ht=8, width=8 + +--------+ + | | + | | + |****** | + |* ** | + | ** | + | ** * | + |****** | + | | + +--------+ */ +0x0000, +0x0000, +0xfc00, +0x9800, +0x3000, +0x6400, +0xfc00, +0x0000, + +/* Character { (0x7b): + ht=8, width=8 + +--------+ + | *** | + | ** | + | ** | + | *** | + | ** | + | ** | + | *** | + | | + +--------+ */ +0x0e00, +0x1800, +0x1800, +0x7000, +0x1800, +0x1800, +0x0e00, +0x0000, + +/* Character | (0x7c): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x1800, +0x0000, + +/* Character } (0x7d): + ht=8, width=8 + +--------+ + | *** | + | ** | + | ** | + | *** | + | ** | + | ** | + | *** | + | | + +--------+ */ +0x7000, +0x1800, +0x1800, +0x0e00, +0x1800, +0x1800, +0x7000, +0x0000, + +/* Character ~ (0x7e): + ht=8, width=8 + +--------+ + | *** ** | + |** *** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x7600, +0xdc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x7f): + ht=8, width=8 + +--------+ + | | + | * | + | *** | + | *** | + | ** ** | + | ** ** | + |******* | + | | + +--------+ */ +0x0000, +0x1000, +0x3800, +0x3800, +0x6c00, +0x6c00, +0xfe00, +0x0000, + +/* Character € (0x80): + ht=8, width=8 + +--------+ + | **** | + | ** ** | + |** | + | ** ** | + | **** | + | ** | + |** ** | + | **** | + +--------+ */ +0x3c00, +0x6600, +0xc000, +0x6600, +0x3c00, +0x1800, +0xcc00, +0x7800, + +/* Character (0x81): + ht=8, width=8 + +--------+ + | | + |** ** | + | | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, + +/* Character ‚ (0x82): + ht=8, width=8 + +--------+ + | *** | + | | + | ***** | + |** ** | + |******* | + |** | + | ***** | + | | + +--------+ */ +0x0e00, +0x0000, +0x7c00, +0xc600, +0xfe00, +0xc000, +0x7c00, +0x0000, + +/* Character ƒ (0x83): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0x7c00, +0xc600, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character „ (0x84): + ht=8, width=8 + +--------+ + |** ** | + | | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0xc600, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character … (0x85): + ht=8, width=8 + +--------+ + |*** | + | | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0xe000, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character † (0x86): + ht=8, width=8 + +--------+ + | *** | + | *** | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0x3800, +0x3800, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character ‡ (0x87): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + |** | + | ***** | + | ** | + | ** ** | + | *** | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0xc000, +0x7c00, +0x1800, +0x6c00, +0x3800, + +/* Character ˆ (0x88): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | ***** | + |** ** | + |******* | + |** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0x7c00, +0xc600, +0xfe00, +0xc000, +0x7c00, +0x0000, + +/* Character ‰ (0x89): + ht=8, width=8 + +--------+ + |** ** | + | | + | ***** | + |** ** | + |******* | + |** | + | ***** | + | | + +--------+ */ +0xc600, +0x0000, +0x7c00, +0xc600, +0xfe00, +0xc000, +0x7c00, +0x0000, + +/* Character Š (0x8a): + ht=8, width=8 + +--------+ + |*** | + | | + | ***** | + |** ** | + |******* | + |** | + | ***** | + | | + +--------+ */ +0xe000, +0x0000, +0x7c00, +0xc600, +0xfe00, +0xc000, +0x7c00, +0x0000, + +/* Character ‹ (0x8b): + ht=8, width=8 + +--------+ + | ** ** | + | | + | *** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x6600, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character Œ (0x8c): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | *** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x7c00, +0xc600, +0x3800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character (0x8d): + ht=8, width=8 + +--------+ + |*** | + | | + | *** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0xe000, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character Ž (0x8e): + ht=8, width=8 + +--------+ + |** ** | + | *** | + | ** ** | + |** ** | + |******* | + |** ** | + |** ** | + | | + +--------+ */ +0xc600, +0x3800, +0x6c00, +0xc600, +0xfe00, +0xc600, +0xc600, +0x0000, + +/* Character (0x8f): + ht=8, width=8 + +--------+ + | *** | + | *** | + | | + | ***** | + |** ** | + |******* | + |** ** | + | | + +--------+ */ +0x3800, +0x3800, +0x0000, +0x7c00, +0xc600, +0xfe00, +0xc600, +0x0000, + +/* Character (0x90): + ht=8, width=8 + +--------+ + | *** | + | | + |******* | + |** | + |***** | + |** | + |******* | + | | + +--------+ */ +0x0e00, +0x0000, +0xfe00, +0xc000, +0xf800, +0xc000, +0xfe00, +0x0000, + +/* Character ‘ (0x91): + ht=8, width=8 + +--------+ + | | + | | + | ** ** | + |* ** * | + | ****** | + |** ** | + | ** *** | + | | + +--------+ */ +0x0000, +0x0000, +0x6c00, +0x9a00, +0x7e00, +0xd800, +0x6e00, +0x0000, + +/* Character ’ (0x92): + ht=8, width=8 + +--------+ + | ****** | + |** ** | + |** ** | + |******* | + |** ** | + |** ** | + |** **** | + | | + +--------+ */ +0x7e00, +0xd800, +0xd800, +0xfe00, +0xd800, +0xd800, +0xde00, +0x0000, + +/* Character “ (0x93): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | | + | ***** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x7c00, +0xc600, +0x0000, +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character ” (0x94): + ht=8, width=8 + +--------+ + | | + |** ** | + | | + | ***** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x0000, +0xc600, +0x0000, +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character • (0x95): + ht=8, width=8 + +--------+ + | | + |*** | + | | + | ***** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x0000, +0xe000, +0x0000, +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character – (0x96): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + +--------+ */ +0x7c00, +0xc600, +0x0000, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, + +/* Character — (0x97): + ht=8, width=8 + +--------+ + | | + |*** | + | | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + +--------+ */ +0x0000, +0xe000, +0x0000, +0xc600, +0xc600, +0xce00, +0x7600, +0x0000, + +/* Character ˜ (0x98): + ht=8, width=8 + +--------+ + | | + |** ** | + | | + |** ** | + |** *** | + | *** ** | + | ** | + | ***** | + +--------+ */ +0x0000, +0xc600, +0x0000, +0xc600, +0xce00, +0x7600, +0x0600, +0x7c00, + +/* Character ™ (0x99): + ht=8, width=8 + +--------+ + |** ** | + | *** | + | ** ** | + |** ** | + |** ** | + | ** ** | + | *** | + | | + +--------+ */ +0xc600, +0x3800, +0x6c00, +0xc600, +0xc600, +0x6c00, +0x3800, +0x0000, + +/* Character š (0x9a): + ht=8, width=8 + +--------+ + |** ** | + | | + |** ** | + |** ** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0xc600, +0x0000, +0xc600, +0xc600, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character › (0x9b): + ht=8, width=8 + +--------+ + | | + | ** | + | ****** | + |** ** | + |** ** | + | ****** | + | ** | + | | + +--------+ */ +0x0000, +0x1800, +0x7e00, +0xd800, +0xd800, +0x7e00, +0x1800, +0x0000, + +/* Character œ (0x9c): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + | ** | + |**** | + | ** ** | + |**** ** | + | ** ** | + | | + +--------+ */ +0x3800, +0x6c00, +0x6000, +0xf000, +0x6600, +0xf600, +0x6c00, +0x0000, + +/* Character (0x9d): + ht=8, width=8 + +--------+ + |** **| + | ** ** | + | **** | + | ****** | + | ** | + | **** | + | ** | + | | + +--------+ */ +0xc300, +0x6600, +0x3c00, +0x7e00, +0x1800, +0x3c00, +0x1800, +0x0000, + +/* Character ž (0x9e): + ht=8, width=8 + +--------+ + |****** | + |** ** | + |****** | + |** ** | + |** **** | + |** ** | + |** *** | + | | + +--------+ */ +0xfc00, +0xc600, +0xfc00, +0xcc00, +0xde00, +0xcc00, +0xce00, +0x0000, + +/* Character Ÿ (0x9f): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ** | + | ****** | + | ** | + | ** | + |** ** | + | *** | + +--------+ */ +0x0c00, +0x1e00, +0x1800, +0x7e00, +0x1800, +0x1800, +0xd800, +0x7000, + +/* Character   (0xa0): + ht=8, width=8 + +--------+ + | *** | + | | + | **** | + | ** | + | ***** | + |** ** | + | ****** | + | | + +--------+ */ +0x0e00, +0x0000, +0x7800, +0x0c00, +0x7c00, +0xcc00, +0x7e00, +0x0000, + +/* Character ¡ (0xa1): + ht=8, width=8 + +--------+ + | *** | + | | + | *** | + | ** | + | ** | + | ** | + | **** | + | | + +--------+ */ +0x1c00, +0x0000, +0x3800, +0x1800, +0x1800, +0x1800, +0x3c00, +0x0000, + +/* Character ¢ (0xa2): + ht=8, width=8 + +--------+ + | | + | *** | + | | + | ***** | + |** ** | + |** ** | + | ***** | + | | + +--------+ */ +0x0000, +0x0e00, +0x0000, +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, + +/* Character £ (0xa3): + ht=8, width=8 + +--------+ + | | + | *** | + | | + |** ** | + |** ** | + |** *** | + | *** ** | + | | + +--------+ */ +0x0000, +0x0e00, +0x0000, +0xcc00, +0xcc00, +0xdc00, +0x7600, +0x0000, + +/* Character ¤ (0xa4): + ht=8, width=8 + +--------+ + | | + |****** | + | | + |* **** | + | ** ** | + | ** ** | + |*** ** | + | | + +--------+ */ +0x0000, +0xfc00, +0x0000, +0xbc00, +0x6600, +0x6600, +0xe600, +0x0000, + +/* Character ¥ (0xa5): + ht=8, width=8 + +--------+ + |******* | + | | + |** ** | + |*** ** | + |**** ** | + |** *** | + |** ** | + | | + +--------+ */ +0xfe00, +0x0000, +0xc600, +0xe600, +0xf600, +0xce00, +0xc600, +0x0000, + +/* Character ¦ (0xa6): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + | ***** | + | | + | ****** | + | | + | | + | | + +--------+ */ +0x3800, +0x6c00, +0x3e00, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character § (0xa7): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + | ***** | + | | + | ***** | + | | + | | + | | + +--------+ */ +0x7c00, +0xc600, +0x7c00, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, + +/* Character ¨ (0xa8): + ht=8, width=8 + +--------+ + | ** | + | | + | ** | + | ** | + | ** | + | ** ** | + | **** | + | | + +--------+ */ +0x1800, +0x0000, +0x1800, +0x3000, +0x6000, +0x6600, +0x3c00, +0x0000, + +/* Character © (0xa9): + ht=8, width=8 + +--------+ + | | + | | + | | + | ***** | + | ** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7c00, +0x6000, +0x6000, +0x0000, +0x0000, + +/* Character ª (0xaa): + ht=8, width=8 + +--------+ + | | + | | + | | + | ***** | + | ** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7c00, +0x0c00, +0x0c00, +0x0000, +0x0000, + +/* Character « (0xab): + ht=8, width=8 + +--------+ + |** | + |** ** | + |** ** | + | ** | + | ***** | + | ** ** | + | ** | + | ***** | + +--------+ */ +0xc000, +0xcc00, +0xd800, +0x3000, +0x7c00, +0x3600, +0x0c00, +0x3e00, + +/* Character ¬ (0xac): + ht=8, width=8 + +--------+ + |** | + |** ** | + |** ** | + | ** | + | ** ** | + | **** | + | ****** | + | ** | + +--------+ */ +0xc000, +0xcc00, +0xd800, +0x3000, +0x6c00, +0x3c00, +0x7e00, +0x0c00, + +/* Character ­ (0xad): + ht=8, width=8 + +--------+ + | ** | + | | + | ** | + | ** | + | **** | + | **** | + | ** | + | | + +--------+ */ +0x1800, +0x0000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x1800, +0x0000, + +/* Character ® (0xae): + ht=8, width=8 + +--------+ + | | + | ** ** | + | ** ** | + |** ** | + | ** ** | + | ** ** | + | | + | | + +--------+ */ +0x0000, +0x3600, +0x6c00, +0xd800, +0x6c00, +0x3600, +0x0000, +0x0000, + +/* Character ¯ (0xaf): + ht=8, width=8 + +--------+ + | | + |** ** | + | ** ** | + | ** ** | + | ** ** | + |** ** | + | | + | | + +--------+ */ +0x0000, +0xd800, +0x6c00, +0x3600, +0x6c00, +0xd800, +0x0000, +0x0000, + +/* Character ° (0xb0): + ht=8, width=8 + +--------+ + | * * | + |* * | + | * * | + |* * | + | * * | + |* * | + | * * | + |* * | + +--------+ */ +0x2200, +0x8800, +0x2200, +0x8800, +0x2200, +0x8800, +0x2200, +0x8800, + +/* Character ± (0xb1): + ht=8, width=8 + +--------+ + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + | * * * *| + |* * * * | + +--------+ */ +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, +0x5500, +0xaa00, + +/* Character ² (0xb2): + ht=8, width=8 + +--------+ + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + |** *** *| + | *** ***| + +--------+ */ +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, +0xdd00, +0x7700, + +/* Character ³ (0xb3): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character ´ (0xb4): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + |***** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, + +/* Character µ (0xb5): + ht=8, width=8 + +--------+ + | ** | + | ** | + |***** | + | ** | + |***** | + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0xf800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, + +/* Character ¶ (0xb6): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0xf600, +0x3600, +0x3600, +0x3600, + +/* Character · (0xb7): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |******* | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xfe00, +0x3600, +0x3600, +0x3600, + +/* Character ¸ (0xb8): + ht=8, width=8 + +--------+ + | | + | | + |***** | + | ** | + |***** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0xf800, +0x1800, +0xf800, +0x1800, +0x1800, +0x1800, + +/* Character ¹ (0xb9): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + |**** ** | + | ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0xf600, +0x0600, +0xf600, +0x3600, +0x3600, +0x3600, + +/* Character º (0xba): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, +0x3600, + +/* Character » (0xbb): + ht=8, width=8 + +--------+ + | | + | | + |******* | + | ** | + |**** ** | + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0xfe00, +0x0600, +0xf600, +0x3600, +0x3600, +0x3600, + +/* Character ¼ (0xbc): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + |**** ** | + | ** | + |******* | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0xf600, +0x0600, +0xfe00, +0x0000, +0x0000, +0x0000, + +/* Character ½ (0xbd): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |******* | + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0xfe00, +0x0000, +0x0000, +0x0000, + +/* Character ¾ (0xbe): + ht=8, width=8 + +--------+ + | ** | + | ** | + |***** | + | ** | + |***** | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0xf800, +0x1800, +0xf800, +0x0000, +0x0000, +0x0000, + +/* Character ¿ (0xbf): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |***** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xf800, +0x1800, +0x1800, +0x1800, + +/* Character À (0xc0): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | *****| + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x0000, +0x0000, +0x0000, + +/* Character Á (0xc1): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + |********| + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character  (0xc2): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |********| + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, + +/* Character à (0xc3): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | *****| + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, + +/* Character Ä (0xc4): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |********| + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character Å (0xc5): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + |********| + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, + +/* Character Æ (0xc6): + ht=8, width=8 + +--------+ + | ** | + | ** | + | *****| + | ** | + | *****| + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0x1f00, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, + +/* Character Ç (0xc7): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3700, +0x3600, +0x3600, +0x3600, + +/* Character È (0xc8): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ***| + | ** | + | ******| + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3700, +0x3000, +0x3f00, +0x0000, +0x0000, +0x0000, + +/* Character É (0xc9): + ht=8, width=8 + +--------+ + | | + | | + | ******| + | ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x3f00, +0x3000, +0x3700, +0x3600, +0x3600, +0x3600, + +/* Character Ê (0xca): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + |**** ***| + | | + |********| + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0xf700, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character Ë (0xcb): + ht=8, width=8 + +--------+ + | | + | | + |********| + | | + |**** ***| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0xff00, +0x0000, +0xf700, +0x3600, +0x3600, +0x3600, + +/* Character Ì (0xcc): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ***| + | ** | + | ** ***| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3700, +0x3000, +0x3700, +0x3600, +0x3600, +0x3600, + +/* Character Í (0xcd): + ht=8, width=8 + +--------+ + | | + | | + |********| + | | + |********| + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xff00, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character Î (0xce): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + |**** ***| + | | + |**** ***| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0xf700, +0x0000, +0xf700, +0x3600, +0x3600, +0x3600, + +/* Character Ï (0xcf): + ht=8, width=8 + +--------+ + | ** | + | ** | + |********| + | | + |********| + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0xff00, +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character Ð (0xd0): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |********| + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0xff00, +0x0000, +0x0000, +0x0000, + +/* Character Ñ (0xd1): + ht=8, width=8 + +--------+ + | | + | | + |********| + | | + |********| + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0xff00, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, + +/* Character Ò (0xd2): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |********| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0x3600, +0x3600, +0x3600, + +/* Character Ó (0xd3): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******| + | | + | | + | | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0x3f00, +0x0000, +0x0000, +0x0000, + +/* Character Ô (0xd4): + ht=8, width=8 + +--------+ + | ** | + | ** | + | *****| + | ** | + | *****| + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1f00, +0x1800, +0x1f00, +0x0000, +0x0000, +0x0000, + +/* Character Õ (0xd5): + ht=8, width=8 + +--------+ + | | + | | + | *****| + | ** | + | *****| + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x1f00, +0x1800, +0x1f00, +0x1800, +0x1800, +0x1800, + +/* Character Ö (0xd6): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | ******| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x3f00, +0x3600, +0x3600, +0x3600, + +/* Character × (0xd7): + ht=8, width=8 + +--------+ + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |********| + | ** ** | + | ** ** | + | ** ** | + +--------+ */ +0x3600, +0x3600, +0x3600, +0x3600, +0xff00, +0x3600, +0x3600, +0x3600, + +/* Character Ø (0xd8): + ht=8, width=8 + +--------+ + | ** | + | ** | + |********| + | ** | + |********| + | ** | + | ** | + | ** | + +--------+ */ +0x1800, +0x1800, +0xff00, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, + +/* Character Ù (0xd9): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + |***** | + | | + | | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0xf800, +0x0000, +0x0000, +0x0000, + +/* Character Ú (0xda): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | *****| + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1f00, +0x1800, +0x1800, +0x1800, + +/* Character Û (0xdb): + ht=8, width=8 + +--------+ + |********| + |********| + |********| + |********| + |********| + |********| + |********| + |********| + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character Ü (0xdc): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + |********| + |********| + |********| + |********| + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, +0xff00, +0xff00, +0xff00, + +/* Character Ý (0xdd): + ht=8, width=8 + +--------+ + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + |**** | + +--------+ */ +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, +0xf000, + +/* Character Þ (0xde): + ht=8, width=8 + +--------+ + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + | ****| + +--------+ */ +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, +0x0f00, + +/* Character ß (0xdf): + ht=8, width=8 + +--------+ + |********| + |********| + |********| + |********| + | | + | | + | | + | | + +--------+ */ +0xff00, +0xff00, +0xff00, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character à (0xe0): + ht=8, width=8 + +--------+ + | | + | | + | ** ** | + |** *** | + |** ** | + |** *** | + | ** ** | + | | + +--------+ */ +0x0000, +0x0000, +0x6600, +0xdc00, +0xd800, +0xdc00, +0x6600, +0x0000, + +/* Character á (0xe1): + ht=8, width=8 + +--------+ + | | + | **** | + |** ** | + |***** | + |** ** | + |** ** | + |** ** | + | | + +--------+ */ +0x0000, +0x7800, +0xcc00, +0xf800, +0xcc00, +0xc600, +0xcc00, +0x0000, + +/* Character â (0xe2): + ht=8, width=8 + +--------+ + | | + |******* | + | ** * | + | ** | + | ** | + | ** | + |*** | + | | + +--------+ */ +0x0000, +0xfe00, +0x6200, +0x6000, +0x6000, +0x6000, +0xe000, +0x0000, + +/* Character ã (0xe3): + ht=8, width=8 + +--------+ + | | + |******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + +--------+ */ +0x0000, +0xfe00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x6c00, +0x0000, + +/* Character ä (0xe4): + ht=8, width=8 + +--------+ + |******* | + |** ** | + | ** | + | ** | + | ** | + |** ** | + |******* | + | | + +--------+ */ +0xfe00, +0xc600, +0x6000, +0x3000, +0x6000, +0xc600, +0xfe00, +0x0000, + +/* Character å (0xe5): + ht=8, width=8 + +--------+ + | | + | ****** | + |** ** | + |** ** | + |** ** | + |** ** | + | *** | + | | + +--------+ */ +0x0000, +0x7e00, +0xd800, +0xcc00, +0xcc00, +0xd800, +0x7000, +0x0000, + +/* Character æ (0xe6): + ht=8, width=8 + +--------+ + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + |** | + | | + +--------+ */ +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0xc000, +0x0000, + +/* Character ç (0xe7): + ht=8, width=8 + +--------+ + | | + | *** ** | + |** *** | + | ** | + | ** | + | ** | + | *** | + | | + +--------+ */ +0x0000, +0x7600, +0xdc00, +0x1800, +0x1800, +0x1800, +0x3800, +0x0000, + +/* Character è (0xe8): + ht=8, width=8 + +--------+ + |******* | + | *** | + | ** ** | + |** ** | + | ** ** | + | *** | + |******* | + | | + +--------+ */ +0xfe00, +0x3800, +0x6c00, +0xc600, +0x6c00, +0x3800, +0xfe00, +0x0000, + +/* Character é (0xe9): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + |** ** | + |******* | + |** ** | + | ** ** | + | *** | + | | + +--------+ */ +0x3800, +0x6c00, +0xc600, +0xfe00, +0xc600, +0x6c00, +0x3800, +0x0000, + +/* Character ê (0xea): + ht=8, width=8 + +--------+ + | *** | + | ** ** | + |** ** | + |** ** | + | ** ** | + | ** ** | + |*** *** | + | | + +--------+ */ +0x3800, +0x6c00, +0xc600, +0xc600, +0x6c00, +0x6c00, +0xee00, +0x0000, + +/* Character ë (0xeb): + ht=8, width=8 + +--------+ + | ***** | + | ** | + | *** | + | ** ** | + |** ** | + |** ** | + | **** | + | | + +--------+ */ +0x3e00, +0x6000, +0x3800, +0x6600, +0xc600, +0xcc00, +0x7800, +0x0000, + +/* Character ì (0xec): + ht=8, width=8 + +--------+ + | | + | | + | ****** | + |** ** **| + |** ** **| + | ****** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0xdb00, +0xdb00, +0x7e00, +0x0000, +0x0000, + +/* Character í (0xed): + ht=8, width=8 + +--------+ + | ** | + | ***** | + |** **** | + |**** ** | + |*** ** | + | ***** | + |** | + | | + +--------+ */ +0x0600, +0x7c00, +0xde00, +0xf600, +0xe600, +0x7c00, +0xc000, +0x0000, + +/* Character î (0xee): + ht=8, width=8 + +--------+ + | *** | + | ** | + |** | + |***** | + |** | + | ** | + | *** | + | | + +--------+ */ +0x3800, +0x6000, +0xc000, +0xf800, +0xc000, +0x6000, +0x3800, +0x0000, + +/* Character ï (0xef): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + |** ** | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0xc600, +0x0000, + +/* Character ð (0xf0): + ht=8, width=8 + +--------+ + | | + |******* | + | | + |******* | + | | + |******* | + | | + | | + +--------+ */ +0x0000, +0xfe00, +0x0000, +0xfe00, +0x0000, +0xfe00, +0x0000, +0x0000, + +/* Character ñ (0xf1): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ****** | + | ** | + | ** | + | | + | ****** | + | | + +--------+ */ +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x0000, +0x7e00, +0x0000, + +/* Character ò (0xf2): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | ****** | + | | + +--------+ */ +0x3000, +0x1800, +0x0c00, +0x1800, +0x3000, +0x0000, +0x7e00, +0x0000, + +/* Character ó (0xf3): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | ****** | + | | + +--------+ */ +0x0c00, +0x1800, +0x3000, +0x1800, +0x0c00, +0x0000, +0x7e00, +0x0000, + +/* Character ô (0xf4): + ht=8, width=8 + +--------+ + | ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0c00, +0x1e00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, + +/* Character õ (0xf5): + ht=8, width=8 + +--------+ + | ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | ** | + | | + +--------+ */ +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x7800, +0x3000, +0x0000, + +/* Character ö (0xf6): + ht=8, width=8 + +--------+ + | | + | | + | ** | + | | + | ****** | + | | + | ** | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x0000, +0x7e00, +0x0000, +0x1800, +0x0000, + +/* Character ÷ (0xf7): + ht=8, width=8 + +--------+ + | | + | *** ** | + |** *** | + | | + | *** ** | + |** *** | + | | + | | + +--------+ */ +0x0000, +0x7600, +0xdc00, +0x0000, +0x7600, +0xdc00, +0x0000, +0x0000, + +/* Character ø (0xf8): + ht=8, width=8 + +--------+ + | ***** | + |** ** | + |** ** | + | ***** | + | | + | | + | | + | | + +--------+ */ +0x7c00, +0xc600, +0xc600, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ù (0xf9): + ht=8, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character ú (0xfa): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character û (0xfb): + ht=8, width=8 + +--------+ + | *****| + | ** | + | ** | + | ** | + |***** | + | *** | + | ** | + | | + +--------+ */ +0x1f00, +0x1800, +0x1800, +0x1800, +0xf800, +0x3800, +0x1800, +0x0000, + +/* Character ü (0xfc): + ht=8, width=8 + +--------+ + |** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0xd800, +0x6c00, +0x6c00, +0x6c00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ý (0xfd): + ht=8, width=8 + +--------+ + | *** | + |** ** | + | ** | + |***** | + | | + | | + | | + | | + +--------+ */ +0x7000, +0xd800, +0x3000, +0xf800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character þ (0xfe): + ht=8, width=8 + +--------+ + | | + | | + | ***** | + | ***** | + | ***** | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0x7c00, +0x7c00, +0x7c00, +0x0000, +0x0000, + +/* Character ÿ (0xff): + ht=8, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +}; + +/* Exported structure definition. */ +MWCFONT font_rom8x8 = { + "rom8x8", + 8, + 8, + 7, + 0, + 256, + rom8x8_bits, + 0, + 0 +}; diff --git a/packages/net/vnc_server/current/src/fonts/symbol.c b/packages/net/vnc_server/current/src/fonts/symbol.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/symbol.c @@ -0,0 +1,148 @@ +/* + * Originally from BOGL - Ben's Own Graphics Library. + * Written by Ben Pfaff . + */ +#include "device.h" + +/* Symbol font definition. */ + +MWIMAGEBITS symbol_bits[] = { +/* Character 0x00: + +--------------------------------+ + | | + | | + |******* | + |* * | + |* * | + |* * | + |* * | + |* * | + |******* | + | | + | | + | | + +--------------------------------+ */ +0x0000, +0x0000, +0xfe00, +0x8200, +0x8200, +0x8200, +0x8200, +0x8200, +0xfe00, +0x0000, +0x0000, +0x0000, + +/* Character 0x01: + +--------------------------------+ + | | + | | + |******* | + |* * | + |* * * * | + |* * * | + |* * * * | + |* * | + |******* | + | | + | | + | | + +--------------------------------+ */ +0x0000, +0x0000, +0xfe00, +0x8200, +0xaa00, +0x9200, +0xaa00, +0x8200, +0xfe00, +0x0000, +0x0000, +0x0000, + +/* Character 0x02: + +--------------------------------+ + | | + | | + | * | + | *** | + |***** | + | * | + | * | + | * | + | * | + | | + | | + | | + +--------------------------------+ */ +0x0000, +0x0000, +0x2000, +0x7000, +0xf800, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, +0x0000, + +/* Character 0x03: + +--------------------------------+ + | | + | | + | * | + | * | + | * | + | * | + |***** | + | *** | + | * | + | | + | | + | | + +--------------------------------+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0xf800, +0x7000, +0x2000, +0x0000, +0x0000, +0x0000, + +}; + +static unsigned short symbol_offset[] = { + 0, /* 0x00 */ + 12, /* 0x01 */ + 24, /* 0x02 */ + 36, /* 0x03 */ +}; + +static unsigned char symbol_width[] = { + 8, /* 0x00 */ + 8, /* 0x01 */ + 5, /* 0x02 */ + 5, /* 0x03 */ +}; + +MWCFONT font_symbol = { + "symbol", + 8, + 12, + 9, + 0, + 4, + symbol_bits, + symbol_offset, + symbol_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/winFreeSansSerif11x13.c b/packages/net/vnc_server/current/src/fonts/winFreeSansSerif11x13.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/winFreeSansSerif11x13.c @@ -0,0 +1,7427 @@ +/* Generated by convfnt.exe*/ +#include "device.h" + +/* Windows FreeSansSerif 11x13 Font */ + +/* + * #FONTRES 100,96,96:Free Sans Serif 8 + * Distributed under the MPL (c) 1999 darran@rimron.co.uk v0.3 + * Free Sans Serif + */ + +static MWIMAGEBITS winFreeSansSerif11x13_bits[] = { + +/* Character (0x20): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ! (0x21): + ht=13, width=3 + +---+ + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + | * | + | | + | | + +---+ */ +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, + +/* Character " (0x22): + ht=13, width=5 + +-----+ + | | + | * *| + | * *| + | * *| + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x4800, +0x4800, +0x4800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character # (0x23): + ht=13, width=7 + +-------+ + | | + | * * | + | * * | + | ******| + | * * | + | * * | + | * * | + | * * | + | ******| + | * * | + | * * | + | | + | | + +-------+ */ +0x0000, +0x2400, +0x2400, +0x7e00, +0x2400, +0x2400, +0x2400, +0x2400, +0x7e00, +0x2400, +0x2400, +0x0000, +0x0000, + +/* Character $ (0x24): + ht=13, width=6 + +------+ + | | + | * | + | *** | + | * * *| + | * * | + | ** | + | ** | + | * *| + | * * *| + | *** | + | * | + | | + | | + +------+ */ +0x0000, +0x1000, +0x3800, +0x5400, +0x5000, +0x3000, +0x1800, +0x1400, +0x5400, +0x3800, +0x1000, +0x0000, +0x0000, + +/* Character % (0x25): + ht=13, width=8 + +--------+ + | | + | ** | + | * * | + | * * *| + | ** * | + | * | + | * | + | * ** | + | * * *| + | * * *| + | ** | + | | + | | + +--------+ */ +0x0000, +0x3000, +0x4800, +0x4900, +0x3200, +0x0400, +0x0800, +0x1600, +0x2900, +0x4900, +0x0600, +0x0000, +0x0000, + +/* Character & (0x26): + ht=13, width=6 + +------+ + | | + | * | + | * * | + | * * | + | * | + | * | + | * * *| + | * * | + | * * | + | * * | + | ** *| + | | + | | + +------+ */ +0x0000, +0x2000, +0x5000, +0x5000, +0x2000, +0x2000, +0x5400, +0x4800, +0x4800, +0x4800, +0x3400, +0x0000, +0x0000, + +/* Character ' (0x27): + ht=13, width=2 + +--+ + | | + | *| + | *| + | *| + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--+ */ +0x0000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ( (0x28): + ht=13, width=3 + +---+ + | | + | *| + | **| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | **| + | *| + | | + +---+ */ +0x0000, +0x2000, +0x6000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x6000, +0x2000, +0x0000, + +/* Character ) (0x29): + ht=13, width=3 + +---+ + | | + | * | + | **| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | **| + | * | + | | + +---+ */ +0x0000, +0x4000, +0x6000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x6000, +0x4000, +0x0000, + +/* Character * (0x2a): + ht=13, width=4 + +----+ + | | + | | + |* *| + | ** | + |****| + | ** | + |* *| + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x9000, +0x6000, +0xf000, +0x6000, +0x9000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character + (0x2b): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | * | + | * | + | ** **| + | * | + | * | + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x1000, +0x6c00, +0x1000, +0x1000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character , (0x2c): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | *| + | *| + | * | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x2000, +0x4000, +0x0000, + +/* Character - (0x2d): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | **| + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character . (0x2e): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | * | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, + +/* Character / (0x2f): + ht=13, width=5 + +-----+ + | | + | *| + | *| + | *| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +-----+ */ +0x0000, +0x0800, +0x0800, +0x0800, +0x1000, +0x1000, +0x2000, +0x2000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character 0 (0x30): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character 1 (0x31): + ht=13, width=6 + +------+ + | | + | | + | * | + | *** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x1000, +0x7000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character 2 (0x32): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + | *| + | *| + | * | + | * | + | * | + | *****| + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x0400, +0x0400, +0x0800, +0x1000, +0x2000, +0x7c00, +0x0000, +0x0000, + +/* Character 3 (0x33): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + | *| + | ** | + | *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x0400, +0x1800, +0x0400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character 4 (0x34): + ht=13, width=6 + +------+ + | | + | | + | * * | + | * * | + | * * | + | * * | + | * * | + | *****| + | * | + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4800, +0x4800, +0x4800, +0x4800, +0x4800, +0x7c00, +0x0800, +0x0800, +0x0800, +0x0000, +0x0000, + +/* Character 5 (0x35): + ht=13, width=6 + +------+ + | | + | | + | *****| + | * | + | * | + | * | + | **** | + | *| + | *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7800, +0x0400, +0x0400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character 6 (0x36): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * | + | * | + | **** | + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4000, +0x4000, +0x7800, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character 7 (0x37): + ht=13, width=6 + +------+ + | | + | | + | *****| + | *| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x7c00, +0x0400, +0x0800, +0x0800, +0x1000, +0x1000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character 8 (0x38): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + | * *| + | *** | + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x3800, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character 9 (0x39): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + | * *| + | *** | + | *| + | *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x3800, +0x0400, +0x0400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character : (0x3a): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | * | + | | + | | + | | + | | + | * | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x0000, + +/* Character ; (0x3b): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | *| + | | + | | + | | + | | + | *| + | * | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x4000, +0x0000, +0x0000, + +/* Character < (0x3c): + ht=13, width=6 + +------+ + | | + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0800, +0x1000, +0x2000, +0x4000, +0x2000, +0x1000, +0x0800, +0x0000, +0x0000, +0x0000, + +/* Character = (0x3d): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *****| + | | + | *****| + | | + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x0000, +0x7c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character > (0x3e): + ht=13, width=6 + +------+ + | | + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x4000, +0x2000, +0x1000, +0x0800, +0x1000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, + +/* Character ? (0x3f): + ht=13, width=6 + +------+ + | | + | *** | + | * *| + | * *| + | *| + | *| + | * | + | * | + | * | + | | + | * | + | | + | | + +------+ */ +0x0000, +0x3800, +0x4400, +0x4400, +0x0400, +0x0400, +0x0800, +0x1000, +0x1000, +0x0000, +0x1000, +0x0000, +0x0000, + +/* Character @ (0x40): + ht=13, width=11 + +-----------+ + | | + | **** | + | ** ** | + | * * | + | * *** *| + | * * * *| + | * * * *| + | * ** ***| + | * | + | * | + | ****** | + | | + | | + +-----------+ */ +0x0000, +0x0f00, +0x30c0, +0x2040, +0x4720, +0x4920, +0x4920, +0x46e0, +0x2000, +0x2000, +0x1f80, +0x0000, +0x0000, + +/* Character A (0x41): + ht=13, width=7 + +-------+ + | | + | | + | * | + | * | + | * * | + | * * | + | * * | + | * * | + | ***** | + |* *| + |* *| + | | + | | + +-------+ */ +0x0000, +0x0000, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x4400, +0x7c00, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character B (0x42): + ht=13, width=7 + +-------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | **** | + | * * | + | * * | + | * * | + | **** | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x7800, +0x4400, +0x4400, +0x4400, +0x7800, +0x4400, +0x4400, +0x4400, +0x7800, +0x0000, +0x0000, + +/* Character C (0x43): + ht=13, width=7 + +-------+ + | | + | | + | **** | + | * *| + | * *| + | * | + | * | + | * | + | * *| + | * *| + | **** | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4000, +0x4000, +0x4000, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character D (0x44): + ht=13, width=8 + +--------+ + | | + | | + | **** | + | * * | + | * *| + | * *| + | * *| + | * *| + | * *| + | * * | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x2200, +0x2100, +0x2100, +0x2100, +0x2100, +0x2100, +0x2200, +0x3c00, +0x0000, +0x0000, + +/* Character E (0x45): + ht=13, width=7 + +-------+ + | | + | | + | *****| + | * | + | * | + | * | + | **** | + | * | + | * | + | * | + | *****| + | | + | | + +-------+ */ +0x0000, +0x0000, +0x3e00, +0x2000, +0x2000, +0x2000, +0x3c00, +0x2000, +0x2000, +0x2000, +0x3e00, +0x0000, +0x0000, + +/* Character F (0x46): + ht=13, width=6 + +------+ + | | + | | + | *****| + | * | + | * | + | * | + | *****| + | * | + | * | + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character G (0x47): + ht=13, width=8 + +--------+ + | | + | | + | **** | + | * *| + | * | + | * | + | * ***| + | * *| + | * *| + | * **| + | *** *| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1e00, +0x2100, +0x2000, +0x2000, +0x2700, +0x2100, +0x2100, +0x2300, +0x1d00, +0x0000, +0x0000, + +/* Character H (0x48): + ht=13, width=8 + +--------+ + | | + | | + | * *| + | * *| + | * *| + | * *| + | ******| + | * *| + | * *| + | * *| + | * *| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x2100, +0x2100, +0x2100, +0x2100, +0x3f00, +0x2100, +0x2100, +0x2100, +0x2100, +0x0000, +0x0000, + +/* Character I (0x49): + ht=13, width=3 + +---+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character J (0x4a): + ht=13, width=5 + +-----+ + | | + | | + | *| + | *| + | *| + | *| + | *| + | *| + | * *| + | * *| + | ** | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0800, +0x0800, +0x0800, +0x0800, +0x0800, +0x0800, +0x4800, +0x4800, +0x3000, +0x0000, +0x0000, + +/* Character K (0x4b): + ht=13, width=7 + +-------+ + | | + | | + | * *| + | * * | + | * * | + | * * | + | ** | + | * * | + | * * | + | * * | + | * *| + | | + | | + +-------+ */ +0x0000, +0x0000, +0x4200, +0x4400, +0x4800, +0x5000, +0x6000, +0x5000, +0x4800, +0x4400, +0x4200, +0x0000, +0x0000, + +/* Character L (0x4c): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *****| + | | + | | + +------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character M (0x4d): + ht=13, width=9 + +---------+ + | | + | | + | * * | + | ** ** | + | ** ** | + | * * * * | + | * * * * | + | * * * | + | * * * | + | * * | + | * * | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x4100, +0x6300, +0x6300, +0x5500, +0x5500, +0x4900, +0x4900, +0x4100, +0x4100, +0x0000, +0x0000, + +/* Character N (0x4e): + ht=13, width=8 + +--------+ + | | + | | + | * * | + | ** * | + | ** * | + | * * * | + | * * * | + | * * * | + | * ** | + | * ** | + | * * | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x4200, +0x6200, +0x6200, +0x5200, +0x4a00, +0x4a00, +0x4600, +0x4600, +0x4200, +0x0000, +0x0000, + +/* Character O (0x4f): + ht=13, width=8 + +--------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character P (0x50): + ht=13, width=7 + +-------+ + | | + | | + | ***** | + | * *| + | * *| + | * *| + | * *| + | ***** | + | * | + | * | + | * | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x7c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x7c00, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character Q (0x51): + ht=13, width=8 + +--------+ + | | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * * | + | * ** | + | **** | + | * | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4a00, +0x4600, +0x3c00, +0x0200, +0x0000, + +/* Character R (0x52): + ht=13, width=8 + +--------+ + | | + | | + | ***** | + | * * | + | * * | + | * * | + | ***** | + | * * | + | * * | + | * * | + | * * | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0x4200, +0x4200, +0x4200, +0x7c00, +0x4800, +0x4400, +0x4200, +0x4200, +0x0000, +0x0000, + +/* Character S (0x53): + ht=13, width=7 + +-------+ + | | + | | + | *** | + | * * | + | * * | + | * | + | *** | + | * | + | * * | + | * * | + | *** | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4000, +0x3800, +0x0400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character T (0x54): + ht=13, width=7 + +-------+ + | | + | | + | ***** | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x7c00, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character U (0x55): + ht=13, width=8 + +--------+ + | | + | | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character V (0x56): + ht=13, width=7 + +-------+ + | | + | | + |* *| + |* *| + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x8200, +0x8200, +0x4400, +0x4400, +0x4400, +0x2800, +0x2800, +0x2800, +0x1000, +0x0000, +0x0000, + +/* Character W (0x57): + ht=13, width=11 + +-----------+ + | | + | | + |* *| + |* *| + | * * * | + | * * * | + | * * * | + | * * * * | + | * * * * | + | * * * * | + | * * | + | | + | | + +-----------+ */ +0x0000, +0x0000, +0x8020, +0x8020, +0x4440, +0x4440, +0x4440, +0x2a80, +0x2a80, +0x2a80, +0x1100, +0x0000, +0x0000, + +/* Character X (0x58): + ht=13, width=7 + +-------+ + | | + | | + |* *| + |* *| + | * * | + | * * | + | * | + | * * | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x0000, +0x0000, +0x8200, +0x8200, +0x4400, +0x2800, +0x1000, +0x2800, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character Y (0x59): + ht=13, width=7 + +-------+ + | | + | | + |* *| + |* *| + | * * | + | * * | + | * * | + | * * | + | * | + | * | + | * | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x8200, +0x8200, +0x4400, +0x4400, +0x2800, +0x2800, +0x1000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character Z (0x5a): + ht=13, width=7 + +-------+ + | | + | | + |*******| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + |*******| + | | + | | + +-------+ */ +0x0000, +0x0000, +0xfe00, +0x0400, +0x0400, +0x0800, +0x1000, +0x2000, +0x4000, +0x4000, +0xfe00, +0x0000, +0x0000, + +/* Character [ (0x5b): + ht=13, width=3 + +---+ + | | + | **| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | **| + | | + +---+ */ +0x0000, +0x6000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x6000, +0x0000, + +/* Character \ (0x5c): + ht=13, width=5 + +-----+ + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *| + | *| + | *| + | | + | | + +-----+ */ +0x0000, +0x4000, +0x4000, +0x4000, +0x2000, +0x2000, +0x1000, +0x1000, +0x0800, +0x0800, +0x0800, +0x0000, +0x0000, + +/* Character ] (0x5d): + ht=13, width=3 + +---+ + | | + | **| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | **| + | | + +---+ */ +0x0000, +0x6000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x6000, +0x0000, + +/* Character ^ (0x5e): + ht=13, width=6 + +------+ + | | + | * | + | * * | + | * *| + | * *| + | | + | | + | | + | | + | | + | | + | | + | | + +------+ */ +0x0000, +0x1000, +0x2800, +0x4400, +0x4400, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character _ (0x5f): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |******| + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xfc00, + +/* Character ` (0x60): + ht=13, width=3 + +---+ + | | + | | + | * | + | *| + | *| + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x4000, +0x2000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character a (0x61): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character b (0x62): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | * | + | **** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x7800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character c (0x63): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4000, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character d (0x64): + ht=13, width=6 + +------+ + | | + | | + | *| + | *| + | *| + | ****| + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0400, +0x0400, +0x0400, +0x3c00, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character e (0x65): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | **** | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x7800, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character f (0x66): + ht=13, width=3 + +---+ + | | + | | + | *| + | * | + | * | + | * | + | **| + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x0000, +0x0000, +0x2000, +0x4000, +0x4000, +0x4000, +0x6000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character g (0x67): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | ****| + | *| + | **** | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3c00, +0x0400, +0x7800, + +/* Character h (0x68): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | * | + | * ** | + | ** *| + | * *| + | * *| + | * *| + | * *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x5800, +0x6400, +0x4400, +0x4400, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character i (0x69): + ht=13, width=2 + +--+ + | | + | | + | *| + | | + | | + | *| + | *| + | *| + | *| + | *| + | *| + | | + | | + +--+ */ +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character j (0x6a): + ht=13, width=2 + +--+ + | | + | | + | *| + | | + | | + | *| + | *| + | *| + | *| + | *| + | *| + | *| + |* | + +--+ */ +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x8000, + +/* Character k (0x6b): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | * | + | * *| + | * * | + | *** | + | * * | + | * * | + | * *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4400, +0x4800, +0x7000, +0x5000, +0x4800, +0x4400, +0x0000, +0x0000, + +/* Character l (0x6c): + ht=13, width=2 + +--+ + | | + | | + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | | + | | + +--+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character m (0x6d): + ht=13, width=8 + +--------+ + | | + | | + | | + | | + | | + | *** ** | + | * * *| + | * * *| + | * * *| + | * * *| + | * * *| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7600, +0x4900, +0x4900, +0x4900, +0x4900, +0x4900, +0x0000, +0x0000, + +/* Character n (0x6e): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * ** | + | ** *| + | * *| + | * *| + | * *| + | * *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x5800, +0x6400, +0x4400, +0x4400, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character o (0x6f): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character p (0x70): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | **** | + | * | + | * | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x7800, +0x4000, +0x4000, + +/* Character q (0x71): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | ****| + | *| + | *| + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3c00, +0x0400, +0x0400, + +/* Character r (0x72): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | *| + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character s (0x73): + ht=13, width=5 + +-----+ + | | + | | + | | + | | + | | + | ** | + | * *| + | * | + | * | + | * *| + | ** | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x4800, +0x2000, +0x1000, +0x4800, +0x3000, +0x0000, +0x0000, + +/* Character t (0x74): + ht=13, width=3 + +---+ + | | + | | + | | + | * | + | * | + | **| + | * | + | * | + | * | + | * | + | *| + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x6000, +0x4000, +0x4000, +0x4000, +0x4000, +0x2000, +0x0000, +0x0000, + +/* Character u (0x75): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * *| + | * *| + | * *| + | * *| + | * **| + | ** *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4400, +0x4400, +0x4400, +0x4400, +0x4c00, +0x3400, +0x0000, +0x0000, + +/* Character v (0x76): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * *| + | * *| + | * * | + | * * | + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4400, +0x4400, +0x2800, +0x2800, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character w (0x77): + ht=13, width=8 + +--------+ + | | + | | + | | + | | + | | + | * *| + | * * *| + | * * *| + | * * * *| + | * * * *| + | * * | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4100, +0x4900, +0x4900, +0x5500, +0x5500, +0x2200, +0x0000, +0x0000, + +/* Character x (0x78): + ht=13, width=5 + +-----+ + | | + | | + | | + | | + | | + | * *| + | * *| + | ** | + | ** | + | * *| + | * *| + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4800, +0x4800, +0x3000, +0x3000, +0x4800, +0x4800, +0x0000, +0x0000, + +/* Character y (0x79): + ht=13, width=5 + +-----+ + | | + | | + | | + | | + | | + | * *| + | * *| + | * *| + | * *| + | ** | + | * | + | * | + |** | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4800, +0x4800, +0x4800, +0x4800, +0x3000, +0x2000, +0x2000, +0xc000, + +/* Character z (0x7a): + ht=13, width=5 + +-----+ + | | + | | + | | + | | + | | + | ****| + | *| + | * | + | * | + | * | + | ****| + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0x0800, +0x1000, +0x2000, +0x4000, +0x7800, +0x0000, +0x0000, + +/* Character { (0x7b): + ht=13, width=4 + +----+ + | | + | *| + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | *| + | | + +----+ */ +0x0000, +0x1000, +0x2000, +0x2000, +0x2000, +0x2000, +0x4000, +0x2000, +0x2000, +0x2000, +0x2000, +0x1000, +0x0000, + +/* Character | (0x7c): + ht=13, width=2 + +--+ + | | + | | + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | *| + | | + +--+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, + +/* Character } (0x7d): + ht=13, width=4 + +----+ + | | + | * | + | * | + | * | + | * | + | * | + | *| + | * | + | * | + | * | + | * | + | * | + | | + +----+ */ +0x0000, +0x4000, +0x2000, +0x2000, +0x2000, +0x2000, +0x1000, +0x2000, +0x2000, +0x2000, +0x2000, +0x4000, +0x0000, + +/* Character ~ (0x7e): + ht=13, width=7 + +-------+ + | | + | | + | | + | ** *| + | * ** | + | | + | | + | | + | | + | | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x3200, +0x4c00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x7f): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character € (0x80): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * *| + |**** | + | * | + |**** | + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0xf000, +0x4000, +0xf000, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character (0x81): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ‚ (0x82): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ƒ (0x83): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character „ (0x84): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character … (0x85): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character † (0x86): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ‡ (0x87): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ˆ (0x88): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ‰ (0x89): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character Š (0x8a): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ‹ (0x8b): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character Œ (0x8c): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character (0x8d): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character Ž (0x8e): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character (0x8f): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character (0x90): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ‘ (0x91): + ht=13, width=3 + +---+ + | | + | | + | *| + | *| + | * | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ’ (0x92): + ht=13, width=3 + +---+ + | | + | | + | *| + | *| + | * | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x2000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character “ (0x93): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ” (0x94): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character • (0x95): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character – (0x96): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character — (0x97): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ˜ (0x98): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ™ (0x99): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character š (0x9a): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character › (0x9b): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character œ (0x9c): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character (0x9d): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character ž (0x9e): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character Ÿ (0x9f): + ht=13, width=3 + +---+ + | | + | | + | | + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | **| + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, + +/* Character   (0xa0): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¡ (0xa1): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | * | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, + +/* Character ¢ (0xa2): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | * | + | *** | + | * * *| + | * * | + | * * | + | * * *| + | *** | + | * | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0800, +0x3800, +0x5400, +0x5000, +0x5000, +0x5400, +0x3800, +0x2000, +0x0000, + +/* Character £ (0xa3): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * | + |***** | + | * | + |***** | + | * | + | * | + | *****| + | | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x4000, +0xf800, +0x4000, +0xf800, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character ¤ (0xa4): + ht=13, width=6 + +------+ + | | + | | + | * *| + | *** | + | * * | + | * *| + | * * | + | *** | + | * *| + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4400, +0x3800, +0x2800, +0x4400, +0x2800, +0x3800, +0x4400, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¥ (0xa5): + ht=13, width=6 + +------+ + | | + | | + | * *| + | * *| + | * * | + | * * | + | *****| + | * | + | *****| + | * | + | * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4400, +0x4400, +0x2800, +0x2800, +0x7c00, +0x1000, +0x7c00, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character ¦ (0xa6): + ht=13, width=2 + +--+ + | | + | | + | | + | *| + | *| + | *| + | *| + | | + | *| + | *| + | *| + | *| + | | + +--+ */ +0x0000, +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, + +/* Character § (0xa7): + ht=13, width=6 + +------+ + | | + | | + | *** | + | * *| + | * | + | * * | + | * * | + | * *| + | * *| + | * | + | * *| + | *** | + | | + +------+ */ +0x0000, +0x0000, +0x3800, +0x4400, +0x2000, +0x5000, +0x4800, +0x2400, +0x1400, +0x0800, +0x4400, +0x3800, +0x0000, + +/* Character ¨ (0xa8): + ht=13, width=3 + +---+ + | | + | | + |* *| + |* *| + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0xa000, +0xa000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character © (0xa9): + ht=13, width=9 + +---------+ + | | + | | + | **** | + | * * | + | * ** *| + | * * *| + | * ** *| + | * * | + | **** | + | | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x1e00, +0x2100, +0x4c80, +0x5080, +0x4c80, +0x2100, +0x1e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ª (0xaa): + ht=13, width=4 + +----+ + | | + | | + | ** | + | **| + | * *| + | ***| + | | + | ***| + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x3000, +0x5000, +0x7000, +0x0000, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character « (0xab): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | | + | * *| + | * * | + | * * | + | * * | + | * *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1400, +0x2800, +0x5000, +0x2800, +0x1400, +0x0000, +0x0000, + +/* Character ¬ (0xac): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | | + | *****| + | *| + | *| + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x0400, +0x0400, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ­ (0xad): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | **| + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ® (0xae): + ht=13, width=8 + +--------+ + | | + | | + | ***** | + | * *** *| + | * * * *| + | * ** *| + | * * * *| + | * * * *| + | ***** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3e00, +0x5d00, +0x5500, +0x5900, +0x5500, +0x5500, +0x3e00, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¯ (0xaf): + ht=13, width=6 + +------+ + | | + |******| + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +------+ */ +0x0000, +0xfc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ° (0xb0): + ht=13, width=4 + +----+ + | | + | | + | * | + | * *| + | * | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x2000, +0x5000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ± (0xb1): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | * | + | * | + | *****| + | * | + | * | + | | + | *****| + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x1000, +0x7c00, +0x1000, +0x1000, +0x0000, +0x7c00, +0x0000, +0x0000, + +/* Character ² (0xb2): + ht=13, width=3 + +---+ + | | + | | + |** | + | *| + | * | + |* | + |***| + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0xc000, +0x2000, +0x4000, +0x8000, +0xe000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ³ (0xb3): + ht=13, width=3 + +---+ + | | + | | + |** | + | *| + |** | + | *| + |** | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0xc000, +0x2000, +0xc000, +0x2000, +0xc000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ´ (0xb4): + ht=13, width=3 + +---+ + | | + | | + | *| + | * | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x2000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character µ (0xb5): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * * | + | * * | + | * * | + | * * | + | * * | + | *** *| + | * | + | * | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4800, +0x4800, +0x4800, +0x4800, +0x4800, +0x7400, +0x4000, +0x4000, + +/* Character ¶ (0xb6): + ht=13, width=6 + +------+ + | | + | | + | ****| + | *****| + | *****| + | *****| + | ****| + | * *| + | * *| + | * *| + | * *| + | * *| + | | + +------+ */ +0x0000, +0x0000, +0x3c00, +0x7c00, +0x7c00, +0x7c00, +0x3c00, +0x1400, +0x1400, +0x1400, +0x1400, +0x1400, +0x0000, + +/* Character · (0xb7): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | * | + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¸ (0xb8): + ht=13, width=3 + +---+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | *| + | **| + +---+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x2000, +0x6000, + +/* Character ¹ (0xb9): + ht=13, width=3 + +---+ + | | + | | + | *| + | **| + | *| + | *| + | *| + | | + | | + | | + | | + | | + | | + +---+ */ +0x0000, +0x0000, +0x2000, +0x6000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character º (0xba): + ht=13, width=4 + +----+ + | | + | | + | ***| + | * *| + | * *| + | ***| + | | + | ***| + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x7000, +0x5000, +0x5000, +0x7000, +0x0000, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character » (0xbb): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * * | + | * * | + | * *| + | * *| + | * * | + | * * | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x5000, +0x2800, +0x1400, +0x1400, +0x2800, +0x5000, +0x0000, +0x0000, + +/* Character ¼ (0xbc): + ht=13, width=8 + +--------+ + | | + | | + | * | + | ** *| + | * * | + | * * | + | * * *| + | * **| + | * * *| + | * ***| + | *| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x2000, +0x6100, +0x2200, +0x2400, +0x2900, +0x1300, +0x2500, +0x4700, +0x0100, +0x0000, +0x0000, + +/* Character ½ (0xbd): + ht=13, width=8 + +--------+ + | | + | | + | * | + | ** *| + | * * | + | * * | + | * * * | + | * * *| + | * * | + | * * | + | ***| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x2000, +0x6100, +0x2200, +0x2400, +0x2a00, +0x1500, +0x2200, +0x4400, +0x0700, +0x0000, +0x0000, + +/* Character ¾ (0xbe): + ht=13, width=8 + +--------+ + | | + | | + | ** | + | * *| + | ** * | + | * * | + | ** * *| + | * **| + | * * *| + | * ***| + | *| + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6000, +0x1100, +0x3200, +0x1400, +0x6900, +0x1300, +0x2500, +0x4700, +0x0100, +0x0000, +0x0000, + +/* Character ¿ (0xbf): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | * | + | | + | * | + | * | + | * | + | * | + | * | + | * *| + | *** | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x0000, +0x1000, +0x1000, +0x2000, +0x4000, +0x4000, +0x4400, +0x3800, + +/* Character À (0xc0): + ht=13, width=7 + +-------+ + | * | + | * | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x2000, +0x1000, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character Á (0xc1): + ht=13, width=7 + +-------+ + | * | + | * | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x0800, +0x1000, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character  (0xc2): + ht=13, width=7 + +-------+ + | * | + | * * | + | | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x1000, +0x2800, +0x0000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character à (0xc3): + ht=13, width=7 + +-------+ + | ** * | + | * ** | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x3400, +0x5800, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character Ä (0xc4): + ht=13, width=7 + +-------+ + | * * | + | | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x4400, +0x0000, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character Å (0xc5): + ht=13, width=7 + +-------+ + | * | + | * * | + | * | + | * | + | * * | + | * * | + | * * | + | ***** | + | * * | + |* *| + |* *| + | | + | | + +-------+ */ +0x1000, +0x2800, +0x1000, +0x1000, +0x2800, +0x2800, +0x4400, +0x7c00, +0x4400, +0x8200, +0x8200, +0x0000, +0x0000, + +/* Character Æ (0xc6): + ht=13, width=10 + +----------+ + | | + | | + | ****** | + | ** | + | * * | + | * * | + | ******** | + | * * | + | * * | + |* * | + |* ***** | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x1f80, +0x1800, +0x2800, +0x2800, +0x7f80, +0x4800, +0x4800, +0x8800, +0x8f80, +0x0000, +0x0000, + +/* Character Ç (0xc7): + ht=13, width=7 + +-------+ + | | + | | + | **** | + | * *| + | * *| + | * | + | * | + | * | + | * *| + | * *| + | **** | + | * | + | ** | + +-------+ */ +0x0000, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4000, +0x4000, +0x4000, +0x4200, +0x4200, +0x3c00, +0x0800, +0x1800, + +/* Character È (0xc8): + ht=13, width=7 + +-------+ + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | | + | | + +-------+ */ +0x2000, +0x1000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character É (0xc9): + ht=13, width=7 + +-------+ + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | | + | | + +-------+ */ +0x0800, +0x1000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character Ê (0xca): + ht=13, width=7 + +-------+ + | * | + | * * | + | ***** | + | * | + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | | + | | + +-------+ */ +0x1000, +0x2800, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character Ë (0xcb): + ht=13, width=7 + +-------+ + | * * | + | | + | ***** | + | * | + | * | + | * | + | ***** | + | * | + | * | + | * | + | ***** | + | | + | | + +-------+ */ +0x4400, +0x0000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x4000, +0x4000, +0x4000, +0x7c00, +0x0000, +0x0000, + +/* Character Ì (0xcc): + ht=13, width=3 + +---+ + |* | + | * | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x8000, +0x4000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character Í (0xcd): + ht=13, width=3 + +---+ + | *| + | * | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x2000, +0x4000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character Î (0xce): + ht=13, width=3 + +---+ + | * | + |* *| + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0x4000, +0xa000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character Ï (0xcf): + ht=13, width=3 + +---+ + |* *| + | | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +---+ */ +0xa000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character Ð (0xd0): + ht=13, width=8 + +--------+ + | | + | | + | ***** | + | * * | + | * * | + | * * | + |***** * | + | * * | + | * * | + | * * | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7c00, +0x4200, +0x4200, +0x4200, +0xfa00, +0x4200, +0x4200, +0x4200, +0x7c00, +0x0000, +0x0000, + +/* Character Ñ (0xd1): + ht=13, width=8 + +--------+ + | ** * | + | * ** | + | * * | + | ** * | + | ** * | + | * * * | + | * * * | + | * * * | + | * ** | + | * ** | + | * * | + | | + | | + +--------+ */ +0x3200, +0x4c00, +0x4200, +0x6200, +0x6200, +0x5200, +0x4a00, +0x4a00, +0x4600, +0x4600, +0x4200, +0x0000, +0x0000, + +/* Character Ò (0xd2): + ht=13, width=8 + +--------+ + | * | + | * | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x1000, +0x0800, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ó (0xd3): + ht=13, width=8 + +--------+ + | * | + | * | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x0800, +0x1000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ô (0xd4): + ht=13, width=8 + +--------+ + | ** | + | * * | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x1800, +0x2400, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Õ (0xd5): + ht=13, width=8 + +--------+ + | ** * | + | * ** | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x3200, +0x4c00, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ö (0xd6): + ht=13, width=8 + +--------+ + | * * | + | | + | **** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x2400, +0x0000, +0x3c00, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character × (0xd7): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * *| + | * * | + | * | + | * * | + | * *| + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x4400, +0x2800, +0x1000, +0x2800, +0x4400, +0x0000, +0x0000, +0x0000, + +/* Character Ø (0xd8): + ht=13, width=8 + +--------+ + | | + | | + | ***** | + | * ** | + | * * * | + | * * * | + | * * * | + | * * * | + | ** * | + | ** * | + | ***** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3e00, +0x4600, +0x4a00, +0x4a00, +0x5200, +0x5200, +0x6200, +0x6200, +0x7c00, +0x0000, +0x0000, + +/* Character Ù (0xd9): + ht=13, width=8 + +--------+ + | * | + | * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x1000, +0x0800, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ú (0xda): + ht=13, width=8 + +--------+ + | * | + | * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x0800, +0x1000, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Û (0xdb): + ht=13, width=8 + +--------+ + | ** | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x1800, +0x2400, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ü (0xdc): + ht=13, width=8 + +--------+ + | * * | + | | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | * * | + | **** | + | | + | | + +--------+ */ +0x2400, +0x0000, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x4200, +0x3c00, +0x0000, +0x0000, + +/* Character Ý (0xdd): + ht=13, width=7 + +-------+ + | * | + | * | + |* *| + |* *| + | * * | + | * * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +-------+ */ +0x0800, +0x1000, +0x8200, +0x8200, +0x4400, +0x2800, +0x1000, +0x1000, +0x1000, +0x1000, +0x1000, +0x0000, +0x0000, + +/* Character Þ (0xde): + ht=13, width=7 + +-------+ + | | + | | + | * | + | * | + | ***** | + | * *| + | * *| + | * *| + | ***** | + | * | + | * | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x7c00, +0x4200, +0x4200, +0x4200, +0x7c00, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character ß (0xdf): + ht=13, width=6 + +------+ + | | + | | + | ** | + | * * | + | * * | + | * * | + | * ** | + | * *| + | * *| + | * *| + | * ** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3000, +0x4800, +0x4800, +0x4800, +0x5800, +0x4400, +0x4400, +0x4400, +0x5800, +0x0000, +0x0000, + +/* Character à (0xe0): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x2000, +0x1000, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character á (0xe1): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0800, +0x1000, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character â (0xe2): + ht=13, width=6 + +------+ + | | + | | + | * | + | * * | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x1000, +0x2800, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ã (0xe3): + ht=13, width=6 + +------+ + | | + | | + | ** *| + | * ** | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3400, +0x5800, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ä (0xe4): + ht=13, width=6 + +------+ + | | + | | + | * *| + | | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x2400, +0x0000, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character å (0xe5): + ht=13, width=6 + +------+ + | | + | * | + | * * | + | * | + | | + | *** | + | *| + | ****| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x1000, +0x2800, +0x1000, +0x0000, +0x3800, +0x0400, +0x3c00, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character æ (0xe6): + ht=13, width=10 + +----------+ + | | + | | + | | + | | + | | + | *** *** | + | * *| + | ******* | + | * * | + | * * *| + | *** *** | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3b80, +0x0440, +0x3f80, +0x4400, +0x4440, +0x3b80, +0x0000, +0x0000, + +/* Character ç (0xe7): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | *** | + | * *| + | * | + | * | + | * *| + | *** | + | * | + | ** | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3800, +0x4400, +0x4000, +0x4000, +0x4400, +0x3800, +0x1000, +0x3000, + +/* Character è (0xe8): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | * *| + | **** | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x2000, +0x1000, +0x0000, +0x3800, +0x4400, +0x7800, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character é (0xe9): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | * *| + | **** | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0800, +0x1000, +0x0000, +0x3800, +0x4400, +0x7800, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ê (0xea): + ht=13, width=6 + +------+ + | | + | | + | * | + | * * | + | | + | *** | + | * *| + | **** | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x1000, +0x2800, +0x0000, +0x3800, +0x4400, +0x7800, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ë (0xeb): + ht=13, width=6 + +------+ + | | + | | + | * *| + | | + | | + | *** | + | * *| + | **** | + | * | + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4400, +0x0000, +0x0000, +0x3800, +0x4400, +0x7800, +0x4000, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ì (0xec): + ht=13, width=2 + +--+ + | | + | | + |* | + | *| + | | + | *| + | *| + | *| + | *| + | *| + | *| + | | + | | + +--+ */ +0x0000, +0x0000, +0x8000, +0x4000, +0x0000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x4000, +0x0000, +0x0000, + +/* Character í (0xed): + ht=13, width=4 + +----+ + | | + | | + | *| + | * | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----+ */ +0x0000, +0x0000, +0x1000, +0x2000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character î (0xee): + ht=13, width=4 + +----+ + | | + | | + | * | + | * *| + | | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----+ */ +0x0000, +0x0000, +0x2000, +0x5000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character ï (0xef): + ht=13, width=4 + +----+ + | | + | | + | * *| + | | + | | + | * | + | * | + | * | + | * | + | * | + | * | + | | + | | + +----+ */ +0x0000, +0x0000, +0x5000, +0x0000, +0x0000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x2000, +0x0000, +0x0000, + +/* Character ð (0xf0): + ht=13, width=6 + +------+ + | | + | | + | * * | + | * | + | * * | + | * | + | ****| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x2800, +0x1000, +0x2800, +0x0800, +0x3c00, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ñ (0xf1): + ht=13, width=6 + +------+ + | | + | | + | ** *| + | * ** | + | | + | * ** | + | ** *| + | * *| + | * *| + | * *| + | * *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x3400, +0x5800, +0x0000, +0x5800, +0x6400, +0x4400, +0x4400, +0x4400, +0x4400, +0x0000, +0x0000, + +/* Character ò (0xf2): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x2000, +0x1000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ó (0xf3): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0800, +0x1000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ô (0xf4): + ht=13, width=6 + +------+ + | | + | | + | * | + | * * | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x1000, +0x2800, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character õ (0xf5): + ht=13, width=6 + +------+ + | | + | | + | ** *| + | * ** | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3400, +0x5800, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ö (0xf6): + ht=13, width=6 + +------+ + | | + | | + | * *| + | | + | | + | *** | + | * *| + | * *| + | * *| + | * *| + | *** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x4400, +0x0000, +0x0000, +0x3800, +0x4400, +0x4400, +0x4400, +0x4400, +0x3800, +0x0000, +0x0000, + +/* Character ÷ (0xf7): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | * | + | | + | *****| + | | + | * | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1000, +0x0000, +0x7c00, +0x0000, +0x1000, +0x0000, +0x0000, +0x0000, + +/* Character ø (0xf8): + ht=13, width=6 + +------+ + | | + | | + | | + | | + | | + | ****| + | * **| + | * * *| + | * * *| + | ** *| + | **** | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x4c00, +0x5400, +0x5400, +0x6400, +0x7800, +0x0000, +0x0000, + +/* Character ù (0xf9): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | * *| + | * *| + | * *| + | * *| + | * **| + | ** *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x2000, +0x1000, +0x0000, +0x4400, +0x4400, +0x4400, +0x4400, +0x4c00, +0x3400, +0x0000, +0x0000, + +/* Character ú (0xfa): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | | + | * *| + | * *| + | * *| + | * *| + | * **| + | ** *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x0800, +0x1000, +0x0000, +0x4400, +0x4400, +0x4400, +0x4400, +0x4c00, +0x3400, +0x0000, +0x0000, + +/* Character û (0xfb): + ht=13, width=6 + +------+ + | | + | | + | * | + | * * | + | | + | * *| + | * *| + | * *| + | * *| + | * **| + | ** *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x1000, +0x2800, +0x0000, +0x4400, +0x4400, +0x4400, +0x4400, +0x4c00, +0x3400, +0x0000, +0x0000, + +/* Character ü (0xfc): + ht=13, width=6 + +------+ + | | + | | + | * *| + | | + | | + | * *| + | * *| + | * *| + | * *| + | * **| + | ** *| + | | + | | + +------+ */ +0x0000, +0x0000, +0x4400, +0x0000, +0x0000, +0x4400, +0x4400, +0x4400, +0x4400, +0x4c00, +0x3400, +0x0000, +0x0000, + +/* Character ý (0xfd): + ht=13, width=5 + +-----+ + | | + | | + | * | + | * | + | | + | * *| + | * *| + | * *| + | * *| + | ** | + | * | + | * | + |** | + +-----+ */ +0x0000, +0x0000, +0x1000, +0x2000, +0x0000, +0x4800, +0x4800, +0x4800, +0x4800, +0x3000, +0x2000, +0x2000, +0xc000, + +/* Character þ (0xfe): + ht=13, width=6 + +------+ + | | + | | + | * | + | * | + | * | + | **** | + | * *| + | * *| + | * *| + | * *| + | **** | + | * | + | * | + +------+ */ +0x0000, +0x0000, +0x4000, +0x4000, +0x4000, +0x7800, +0x4400, +0x4400, +0x4400, +0x4400, +0x7800, +0x4000, +0x4000, + +/* Character ÿ (0xff): + ht=13, width=5 + +-----+ + | | + | | + | * *| + | | + | | + | * *| + | * *| + | * *| + | * *| + | ** | + | * | + | * | + |** | + +-----+ */ +0x0000, +0x0000, +0x4800, +0x0000, +0x0000, +0x4800, +0x4800, +0x4800, +0x4800, +0x3000, +0x2000, +0x2000, +0xc000, + +}; + +/* Character->glyph data. */ +static unsigned short winFreeSansSerif11x13_offset[] = { + 0, /* (0x20) */ + 13, /* ! (0x21) */ + 26, /* " (0x22) */ + 39, /* # (0x23) */ + 52, /* $ (0x24) */ + 65, /* % (0x25) */ + 78, /* & (0x26) */ + 91, /* ' (0x27) */ + 104, /* ( (0x28) */ + 117, /* ) (0x29) */ + 130, /* * (0x2a) */ + 143, /* + (0x2b) */ + 156, /* , (0x2c) */ + 169, /* - (0x2d) */ + 182, /* . (0x2e) */ + 195, /* / (0x2f) */ + 208, /* 0 (0x30) */ + 221, /* 1 (0x31) */ + 234, /* 2 (0x32) */ + 247, /* 3 (0x33) */ + 260, /* 4 (0x34) */ + 273, /* 5 (0x35) */ + 286, /* 6 (0x36) */ + 299, /* 7 (0x37) */ + 312, /* 8 (0x38) */ + 325, /* 9 (0x39) */ + 338, /* : (0x3a) */ + 351, /* ; (0x3b) */ + 364, /* < (0x3c) */ + 377, /* = (0x3d) */ + 390, /* > (0x3e) */ + 403, /* ? (0x3f) */ + 416, /* @ (0x40) */ + 429, /* A (0x41) */ + 442, /* B (0x42) */ + 455, /* C (0x43) */ + 468, /* D (0x44) */ + 481, /* E (0x45) */ + 494, /* F (0x46) */ + 507, /* G (0x47) */ + 520, /* H (0x48) */ + 533, /* I (0x49) */ + 546, /* J (0x4a) */ + 559, /* K (0x4b) */ + 572, /* L (0x4c) */ + 585, /* M (0x4d) */ + 598, /* N (0x4e) */ + 611, /* O (0x4f) */ + 624, /* P (0x50) */ + 637, /* Q (0x51) */ + 650, /* R (0x52) */ + 663, /* S (0x53) */ + 676, /* T (0x54) */ + 689, /* U (0x55) */ + 702, /* V (0x56) */ + 715, /* W (0x57) */ + 728, /* X (0x58) */ + 741, /* Y (0x59) */ + 754, /* Z (0x5a) */ + 767, /* [ (0x5b) */ + 780, /* \ (0x5c) */ + 793, /* ] (0x5d) */ + 806, /* ^ (0x5e) */ + 819, /* _ (0x5f) */ + 832, /* ` (0x60) */ + 845, /* a (0x61) */ + 858, /* b (0x62) */ + 871, /* c (0x63) */ + 884, /* d (0x64) */ + 897, /* e (0x65) */ + 910, /* f (0x66) */ + 923, /* g (0x67) */ + 936, /* h (0x68) */ + 949, /* i (0x69) */ + 962, /* j (0x6a) */ + 975, /* k (0x6b) */ + 988, /* l (0x6c) */ + 1001, /* m (0x6d) */ + 1014, /* n (0x6e) */ + 1027, /* o (0x6f) */ + 1040, /* p (0x70) */ + 1053, /* q (0x71) */ + 1066, /* r (0x72) */ + 1079, /* s (0x73) */ + 1092, /* t (0x74) */ + 1105, /* u (0x75) */ + 1118, /* v (0x76) */ + 1131, /* w (0x77) */ + 1144, /* x (0x78) */ + 1157, /* y (0x79) */ + 1170, /* z (0x7a) */ + 1183, /* { (0x7b) */ + 1196, /* | (0x7c) */ + 1209, /* } (0x7d) */ + 1222, /* ~ (0x7e) */ + 1235, /*  (0x7f) */ + 1248, /* € (0x80) */ + 1261, /* (0x81) */ + 1274, /* ‚ (0x82) */ + 1287, /* ƒ (0x83) */ + 1300, /* „ (0x84) */ + 1313, /* … (0x85) */ + 1326, /* † (0x86) */ + 1339, /* ‡ (0x87) */ + 1352, /* ˆ (0x88) */ + 1365, /* ‰ (0x89) */ + 1378, /* Š (0x8a) */ + 1391, /* ‹ (0x8b) */ + 1404, /* Œ (0x8c) */ + 1417, /* (0x8d) */ + 1430, /* Ž (0x8e) */ + 1443, /* (0x8f) */ + 1456, /* (0x90) */ + 1469, /* ‘ (0x91) */ + 1482, /* ’ (0x92) */ + 1495, /* “ (0x93) */ + 1508, /* ” (0x94) */ + 1521, /* • (0x95) */ + 1534, /* – (0x96) */ + 1547, /* — (0x97) */ + 1560, /* ˜ (0x98) */ + 1573, /* ™ (0x99) */ + 1586, /* š (0x9a) */ + 1599, /* › (0x9b) */ + 1612, /* œ (0x9c) */ + 1625, /* (0x9d) */ + 1638, /* ž (0x9e) */ + 1651, /* Ÿ (0x9f) */ + 1664, /*   (0xa0) */ + 1677, /* ¡ (0xa1) */ + 1690, /* ¢ (0xa2) */ + 1703, /* £ (0xa3) */ + 1716, /* ¤ (0xa4) */ + 1729, /* ¥ (0xa5) */ + 1742, /* ¦ (0xa6) */ + 1755, /* § (0xa7) */ + 1768, /* ¨ (0xa8) */ + 1781, /* © (0xa9) */ + 1794, /* ª (0xaa) */ + 1807, /* « (0xab) */ + 1820, /* ¬ (0xac) */ + 1833, /* ­ (0xad) */ + 1846, /* ® (0xae) */ + 1859, /* ¯ (0xaf) */ + 1872, /* ° (0xb0) */ + 1885, /* ± (0xb1) */ + 1898, /* ² (0xb2) */ + 1911, /* ³ (0xb3) */ + 1924, /* ´ (0xb4) */ + 1937, /* µ (0xb5) */ + 1950, /* ¶ (0xb6) */ + 1963, /* · (0xb7) */ + 1976, /* ¸ (0xb8) */ + 1989, /* ¹ (0xb9) */ + 2002, /* º (0xba) */ + 2015, /* » (0xbb) */ + 2028, /* ¼ (0xbc) */ + 2041, /* ½ (0xbd) */ + 2054, /* ¾ (0xbe) */ + 2067, /* ¿ (0xbf) */ + 2080, /* À (0xc0) */ + 2093, /* Á (0xc1) */ + 2106, /*  (0xc2) */ + 2119, /* à (0xc3) */ + 2132, /* Ä (0xc4) */ + 2145, /* Å (0xc5) */ + 2158, /* Æ (0xc6) */ + 2171, /* Ç (0xc7) */ + 2184, /* È (0xc8) */ + 2197, /* É (0xc9) */ + 2210, /* Ê (0xca) */ + 2223, /* Ë (0xcb) */ + 2236, /* Ì (0xcc) */ + 2249, /* Í (0xcd) */ + 2262, /* Î (0xce) */ + 2275, /* Ï (0xcf) */ + 2288, /* Ð (0xd0) */ + 2301, /* Ñ (0xd1) */ + 2314, /* Ò (0xd2) */ + 2327, /* Ó (0xd3) */ + 2340, /* Ô (0xd4) */ + 2353, /* Õ (0xd5) */ + 2366, /* Ö (0xd6) */ + 2379, /* × (0xd7) */ + 2392, /* Ø (0xd8) */ + 2405, /* Ù (0xd9) */ + 2418, /* Ú (0xda) */ + 2431, /* Û (0xdb) */ + 2444, /* Ü (0xdc) */ + 2457, /* Ý (0xdd) */ + 2470, /* Þ (0xde) */ + 2483, /* ß (0xdf) */ + 2496, /* à (0xe0) */ + 2509, /* á (0xe1) */ + 2522, /* â (0xe2) */ + 2535, /* ã (0xe3) */ + 2548, /* ä (0xe4) */ + 2561, /* å (0xe5) */ + 2574, /* æ (0xe6) */ + 2587, /* ç (0xe7) */ + 2600, /* è (0xe8) */ + 2613, /* é (0xe9) */ + 2626, /* ê (0xea) */ + 2639, /* ë (0xeb) */ + 2652, /* ì (0xec) */ + 2665, /* í (0xed) */ + 2678, /* î (0xee) */ + 2691, /* ï (0xef) */ + 2704, /* ð (0xf0) */ + 2717, /* ñ (0xf1) */ + 2730, /* ò (0xf2) */ + 2743, /* ó (0xf3) */ + 2756, /* ô (0xf4) */ + 2769, /* õ (0xf5) */ + 2782, /* ö (0xf6) */ + 2795, /* ÷ (0xf7) */ + 2808, /* ø (0xf8) */ + 2821, /* ù (0xf9) */ + 2834, /* ú (0xfa) */ + 2847, /* û (0xfb) */ + 2860, /* ü (0xfc) */ + 2873, /* ý (0xfd) */ + 2886, /* þ (0xfe) */ + 2899, /* ÿ (0xff) */ +}; + +/* Character width data. */ +static unsigned char winFreeSansSerif11x13_width[] = { + 3, /* (0x20) */ + 3, /* ! (0x21) */ + 5, /* " (0x22) */ + 7, /* # (0x23) */ + 6, /* $ (0x24) */ + 8, /* % (0x25) */ + 6, /* & (0x26) */ + 2, /* ' (0x27) */ + 3, /* ( (0x28) */ + 3, /* ) (0x29) */ + 4, /* * (0x2a) */ + 6, /* + (0x2b) */ + 3, /* , (0x2c) */ + 3, /* - (0x2d) */ + 3, /* . (0x2e) */ + 5, /* / (0x2f) */ + 6, /* 0 (0x30) */ + 6, /* 1 (0x31) */ + 6, /* 2 (0x32) */ + 6, /* 3 (0x33) */ + 6, /* 4 (0x34) */ + 6, /* 5 (0x35) */ + 6, /* 6 (0x36) */ + 6, /* 7 (0x37) */ + 6, /* 8 (0x38) */ + 6, /* 9 (0x39) */ + 3, /* : (0x3a) */ + 3, /* ; (0x3b) */ + 6, /* < (0x3c) */ + 6, /* = (0x3d) */ + 6, /* > (0x3e) */ + 6, /* ? (0x3f) */ + 11, /* @ (0x40) */ + 7, /* A (0x41) */ + 7, /* B (0x42) */ + 7, /* C (0x43) */ + 8, /* D (0x44) */ + 7, /* E (0x45) */ + 6, /* F (0x46) */ + 8, /* G (0x47) */ + 8, /* H (0x48) */ + 3, /* I (0x49) */ + 5, /* J (0x4a) */ + 7, /* K (0x4b) */ + 6, /* L (0x4c) */ + 9, /* M (0x4d) */ + 8, /* N (0x4e) */ + 8, /* O (0x4f) */ + 7, /* P (0x50) */ + 8, /* Q (0x51) */ + 8, /* R (0x52) */ + 7, /* S (0x53) */ + 7, /* T (0x54) */ + 8, /* U (0x55) */ + 7, /* V (0x56) */ + 11, /* W (0x57) */ + 7, /* X (0x58) */ + 7, /* Y (0x59) */ + 7, /* Z (0x5a) */ + 3, /* [ (0x5b) */ + 5, /* \ (0x5c) */ + 3, /* ] (0x5d) */ + 6, /* ^ (0x5e) */ + 6, /* _ (0x5f) */ + 3, /* ` (0x60) */ + 6, /* a (0x61) */ + 6, /* b (0x62) */ + 6, /* c (0x63) */ + 6, /* d (0x64) */ + 6, /* e (0x65) */ + 3, /* f (0x66) */ + 6, /* g (0x67) */ + 6, /* h (0x68) */ + 2, /* i (0x69) */ + 2, /* j (0x6a) */ + 6, /* k (0x6b) */ + 2, /* l (0x6c) */ + 8, /* m (0x6d) */ + 6, /* n (0x6e) */ + 6, /* o (0x6f) */ + 6, /* p (0x70) */ + 6, /* q (0x71) */ + 3, /* r (0x72) */ + 5, /* s (0x73) */ + 3, /* t (0x74) */ + 6, /* u (0x75) */ + 6, /* v (0x76) */ + 8, /* w (0x77) */ + 5, /* x (0x78) */ + 5, /* y (0x79) */ + 5, /* z (0x7a) */ + 4, /* { (0x7b) */ + 2, /* | (0x7c) */ + 4, /* } (0x7d) */ + 7, /* ~ (0x7e) */ + 3, /*  (0x7f) */ + 6, /* € (0x80) */ + 3, /* (0x81) */ + 3, /* ‚ (0x82) */ + 3, /* ƒ (0x83) */ + 3, /* „ (0x84) */ + 3, /* … (0x85) */ + 3, /* † (0x86) */ + 3, /* ‡ (0x87) */ + 3, /* ˆ (0x88) */ + 3, /* ‰ (0x89) */ + 3, /* Š (0x8a) */ + 3, /* ‹ (0x8b) */ + 3, /* Œ (0x8c) */ + 3, /* (0x8d) */ + 3, /* Ž (0x8e) */ + 3, /* (0x8f) */ + 3, /* (0x90) */ + 3, /* ‘ (0x91) */ + 3, /* ’ (0x92) */ + 3, /* “ (0x93) */ + 3, /* ” (0x94) */ + 3, /* • (0x95) */ + 3, /* – (0x96) */ + 3, /* — (0x97) */ + 3, /* ˜ (0x98) */ + 3, /* ™ (0x99) */ + 3, /* š (0x9a) */ + 3, /* › (0x9b) */ + 3, /* œ (0x9c) */ + 3, /* (0x9d) */ + 3, /* ž (0x9e) */ + 3, /* Ÿ (0x9f) */ + 3, /*   (0xa0) */ + 3, /* ¡ (0xa1) */ + 6, /* ¢ (0xa2) */ + 6, /* £ (0xa3) */ + 6, /* ¤ (0xa4) */ + 6, /* ¥ (0xa5) */ + 2, /* ¦ (0xa6) */ + 6, /* § (0xa7) */ + 3, /* ¨ (0xa8) */ + 9, /* © (0xa9) */ + 4, /* ª (0xaa) */ + 6, /* « (0xab) */ + 6, /* ¬ (0xac) */ + 3, /* ­ (0xad) */ + 8, /* ® (0xae) */ + 6, /* ¯ (0xaf) */ + 4, /* ° (0xb0) */ + 6, /* ± (0xb1) */ + 3, /* ² (0xb2) */ + 3, /* ³ (0xb3) */ + 3, /* ´ (0xb4) */ + 6, /* µ (0xb5) */ + 6, /* ¶ (0xb6) */ + 3, /* · (0xb7) */ + 3, /* ¸ (0xb8) */ + 3, /* ¹ (0xb9) */ + 4, /* º (0xba) */ + 6, /* » (0xbb) */ + 8, /* ¼ (0xbc) */ + 8, /* ½ (0xbd) */ + 8, /* ¾ (0xbe) */ + 6, /* ¿ (0xbf) */ + 7, /* À (0xc0) */ + 7, /* Á (0xc1) */ + 7, /*  (0xc2) */ + 7, /* à (0xc3) */ + 7, /* Ä (0xc4) */ + 7, /* Å (0xc5) */ + 10, /* Æ (0xc6) */ + 7, /* Ç (0xc7) */ + 7, /* È (0xc8) */ + 7, /* É (0xc9) */ + 7, /* Ê (0xca) */ + 7, /* Ë (0xcb) */ + 3, /* Ì (0xcc) */ + 3, /* Í (0xcd) */ + 3, /* Î (0xce) */ + 3, /* Ï (0xcf) */ + 8, /* Ð (0xd0) */ + 8, /* Ñ (0xd1) */ + 8, /* Ò (0xd2) */ + 8, /* Ó (0xd3) */ + 8, /* Ô (0xd4) */ + 8, /* Õ (0xd5) */ + 8, /* Ö (0xd6) */ + 6, /* × (0xd7) */ + 8, /* Ø (0xd8) */ + 8, /* Ù (0xd9) */ + 8, /* Ú (0xda) */ + 8, /* Û (0xdb) */ + 8, /* Ü (0xdc) */ + 7, /* Ý (0xdd) */ + 7, /* Þ (0xde) */ + 6, /* ß (0xdf) */ + 6, /* à (0xe0) */ + 6, /* á (0xe1) */ + 6, /* â (0xe2) */ + 6, /* ã (0xe3) */ + 6, /* ä (0xe4) */ + 6, /* å (0xe5) */ + 10, /* æ (0xe6) */ + 6, /* ç (0xe7) */ + 6, /* è (0xe8) */ + 6, /* é (0xe9) */ + 6, /* ê (0xea) */ + 6, /* ë (0xeb) */ + 2, /* ì (0xec) */ + 4, /* í (0xed) */ + 4, /* î (0xee) */ + 4, /* ï (0xef) */ + 6, /* ð (0xf0) */ + 6, /* ñ (0xf1) */ + 6, /* ò (0xf2) */ + 6, /* ó (0xf3) */ + 6, /* ô (0xf4) */ + 6, /* õ (0xf5) */ + 6, /* ö (0xf6) */ + 6, /* ÷ (0xf7) */ + 6, /* ø (0xf8) */ + 6, /* ù (0xf9) */ + 6, /* ú (0xfa) */ + 6, /* û (0xfb) */ + 6, /* ü (0xfc) */ + 5, /* ý (0xfd) */ + 6, /* þ (0xfe) */ + 5, /* ÿ (0xff) */ +}; + +/* Exported structure definition. */ +MWCFONT font_winFreeSansSerif11x13 = { + "winFreeSansSerif11x13", + 11, + 13, + 11, + 32, + 224, + winFreeSansSerif11x13_bits, + winFreeSansSerif11x13_offset, + winFreeSansSerif11x13_width, +}; diff --git a/packages/net/vnc_server/current/src/fonts/winFreeSystem14x16.c b/packages/net/vnc_server/current/src/fonts/winFreeSystem14x16.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/fonts/winFreeSystem14x16.c @@ -0,0 +1,8771 @@ +/* Generated by convfnt.exe*/ +#include "device.h" + +/* Windows FreeSystem 14x16 Font */ + +/* + * FONTRES 100,96,96:Free System 10 + * Distributed under the MPL (c) 1999 darran@rimron.co.uk v0.1 + * Free System + */ + +static MWIMAGEBITS winFreeSystem14x16_bits[] = { + +/* Character (0x20): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ! (0x21): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character " (0x22): + ht=16, width=6 + +------+ + | | + | | + |** **| + |** **| + |** **| + |** **| + |** **| + | | + | | + | | + | | + | | + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0xcc00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character # (0x23): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | ** ** | + | *******| + | *******| + | ** ** | + | ** ** | + | ** ** | + | ** ** | + |******* | + |******* | + | ** ** | + | ** ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3600, +0x3600, +0x7f00, +0x7f00, +0x3600, +0x3600, +0x6c00, +0x6c00, +0xfe00, +0xfe00, +0x6c00, +0x6c00, +0x0000, +0x0000, + +/* Character $ (0x24): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ****** | + |** ** **| + |** ** **| + |** ** | + |****** | + | ***** | + | ** **| + |** ** **| + |** ** **| + | ****** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x7e00, +0xdb00, +0xdb00, +0xd800, +0xfc00, +0x3e00, +0x1b00, +0xdb00, +0xdb00, +0x7e00, +0x1800, +0x0000, +0x0000, + +/* Character % (0x25): + ht=16, width=11 + +-----------+ + | | + | | + | *** **| + |** ** ** | + |** ** ** | + |** ** ** | + | *** ** | + | ** | + | ** *** | + | ** ** **| + | ** ** **| + | ** ** **| + |** *** | + | | + | | + | | + +-----------+ */ +0x0000, +0x0000, +0x7060, +0xd8c0, +0xd980, +0xdb00, +0x7600, +0x0600, +0x0dc0, +0x1b60, +0x3360, +0x6360, +0xc1c0, +0x0000, +0x0000, +0x0000, + +/* Character & (0x26): + ht=16, width=9 + +---------+ + | | + | | + | *** | + | ** ** | + | * * | + | * * | + | ** ** | + | *** | + | *** * | + | ** ** * | + | * *** | + | ** ** | + | ****** | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x1c00, +0x3600, +0x2200, +0x2200, +0x3600, +0x1c00, +0x3900, +0x6d00, +0x4700, +0x6600, +0x3f00, +0x0000, +0x0000, +0x0000, + +/* Character ' (0x27): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ( (0x28): + ht=16, width=4 + +----+ + | | + | | + | **| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **| + +----+ */ +0x0000, +0x0000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, + +/* Character ) (0x29): + ht=16, width=4 + +----+ + | | + | | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +----+ */ +0x0000, +0x0000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character * (0x2a): + ht=16, width=6 + +------+ + | | + | | + | ** | + | ** | + |******| + | ** | + | **** | + | * * | + | | + | | + | | + | | + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x3000, +0x3000, +0xfc00, +0x3000, +0x7800, +0x4800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character + (0x2b): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + |********| + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x1800, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character , (0x2c): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | ** | + |** | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0xc000, +0x0000, +0x0000, + +/* Character - (0x2d): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + |****| + |****| + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character . (0x2e): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |*** | + |*** | + |*** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xe000, +0xe000, +0xe000, +0x0000, +0x0000, +0x0000, + +/* Character / (0x2f): + ht=16, width=4 + +----+ + | | + | | + | **| + | **| + | **| + | **| + | ***| + | ** | + | ** | + | ** | + | ** | + |*** | + |** | + |** | + |** | + | | + +----+ */ +0x0000, +0x0000, +0x3000, +0x3000, +0x3000, +0x3000, +0x7000, +0x6000, +0x6000, +0x6000, +0x6000, +0xe000, +0xc000, +0xc000, +0xc000, +0x0000, + +/* Character 0 (0x30): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character 1 (0x31): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x7800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character 2 (0x32): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0x6000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character 3 (0x33): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** | + | ** | + | *** | + | ** | + | ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x0600, +0x0600, +0x1c00, +0x0600, +0x0600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character 4 (0x34): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | ****** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7e00, +0x7e00, +0x0600, +0x0600, +0x0600, +0x0000, +0x0000, +0x0000, + +/* Character 5 (0x35): + ht=16, width=8 + +--------+ + | | + | | + | ****** | + | ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** | + | ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x0600, +0x0600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character 6 (0x36): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character 7 (0x37): + ht=16, width=8 + +--------+ + | | + | | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7e00, +0x0600, +0x0600, +0x0c00, +0x0c00, +0x7e00, +0x1800, +0x1800, +0x3000, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character 8 (0x38): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character 9 (0x39): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0600, +0x0600, +0x0600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character : (0x3a): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ; (0x3b): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + | ** | + | ** | + | ** | + |** | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0xc000, +0x0000, +0x0000, + +/* Character < (0x3c): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0000, +0x0000, +0x0000, + +/* Character = (0x3d): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ****** | + | ****** | + | | + | ****** | + | ****** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x7e00, +0x0000, +0x7e00, +0x7e00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character > (0x3e): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x3000, +0x1800, +0x0c00, +0x0600, +0x0600, +0x0c00, +0x1800, +0x3000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ? (0x3f): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** | + | ** | + | ** | + | ** | + | | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x0600, +0x0c00, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character @ (0x40): + ht=16, width=14 + +--------------+ + | | + | **** | + | *** *** | + | *** *** | + | ** ** ** | + | ** **** ** | + | ** ** ** ** | + | ** ** ** ** | + | ** ** ** ** | + | ** ** ** ** | + | ** **** ** | + | ** * **** | + | ** | + | *** *** | + | ***** | + | | + +--------------+ */ +0x0000, +0x0780, +0x1ce0, +0x3870, +0x3330, +0x6798, +0x66d8, +0x6cd8, +0x6cd8, +0x6d98, +0x6798, +0x32f0, +0x3000, +0x1c70, +0x07c0, +0x0000, + +/* Character A (0x41): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ****** | + | ****** | + |*** ***| + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x7e00, +0x7e00, +0xe700, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character B (0x42): + ht=16, width=10 + +----------+ + | | + | | + | ******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******* | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x7f00, +0x6180, +0x6180, +0x6180, +0x6180, +0x7f00, +0x6180, +0x6180, +0x6180, +0x6180, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character C (0x43): + ht=16, width=9 + +---------+ + | | + | | + | **** | + | ** ** | + | ** * | + | ** * | + | ** | + | ** | + | ** | + | ** * | + | ** * | + | ** ** | + | **** | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6100, +0x6100, +0x6000, +0x6000, +0x6000, +0x6100, +0x6100, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character D (0x44): + ht=16, width=10 + +----------+ + | | + | | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x7e00, +0x6300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6300, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character E (0x45): + ht=16, width=9 + +---------+ + | | + | | + | ******* | + | ** | + | ** | + | ** | + | ** | + | ******* | + | ** | + | ** | + | ** | + | ** | + | ******* | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x7f00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character F (0x46): + ht=16, width=8 + +--------+ + | | + | | + | *******| + | ** | + | ** | + | ** | + | ** | + | *******| + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x7f00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character G (0x47): + ht=16, width=10 + +----------+ + | | + | | + | ***** | + | ** ** | + | ** * | + | ** * | + | ** | + | ** | + | ** **** | + | ** ** | + | ** ** | + | ** ** | + | **** * | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x1f00, +0x3180, +0x6080, +0x6080, +0x6000, +0x6000, +0x6780, +0x6180, +0x6180, +0x3180, +0x1e80, +0x0000, +0x0000, +0x0000, + +/* Character H (0x48): + ht=16, width=10 + +----------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x7f80, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x0000, +0x0000, +0x0000, + +/* Character I (0x49): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character J (0x4a): + ht=16, width=7 + +-------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** ** | + |** ** | + |** ** | + | **** | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0xcc00, +0xcc00, +0xcc00, +0x7800, +0x0000, +0x0000, +0x0000, + +/* Character K (0x4b): + ht=16, width=9 + +---------+ + | | + | | + | ** **| + | ** ** | + | ** ** | + | ** ** | + | **** | + | *** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** **| + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x6180, +0x6300, +0x6600, +0x6c00, +0x7800, +0x7000, +0x7800, +0x6c00, +0x6600, +0x6300, +0x6180, +0x0000, +0x0000, +0x0000, + +/* Character L (0x4c): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | *******| + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character M (0x4d): + ht=16, width=12 + +------------+ + | | + | | + | ** ** | + | ** ** | + | *** *** | + | *** *** | + | **** **** | + | **** **** | + | ** **** ** | + | ** **** ** | + | ** ** ** | + | ** ** ** | + | ** ** | + | | + | | + | | + +------------+ */ +0x0000, +0x0000, +0x6060, +0x6060, +0x70e0, +0x70e0, +0x79e0, +0x79e0, +0x6f60, +0x6f60, +0x6660, +0x6660, +0x6060, +0x0000, +0x0000, +0x0000, + +/* Character N (0x4e): + ht=16, width=10 + +----------+ + | | + | | + | ** ** | + | *** ** | + | *** ** | + | **** ** | + | ***** ** | + | ** ** ** | + | ** ***** | + | ** **** | + | ** *** | + | ** *** | + | ** ** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x6180, +0x7180, +0x7180, +0x7980, +0x7d80, +0x6d80, +0x6f80, +0x6780, +0x6380, +0x6380, +0x6180, +0x0000, +0x0000, +0x0000, + +/* Character O (0x4f): + ht=16, width=10 + +----------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character P (0x50): + ht=16, width=9 + +---------+ + | | + | | + | ******* | + | ** **| + | ** **| + | ** **| + | ** **| + | ** **| + | ******* | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x7f00, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x7f00, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Q (0x51): + ht=16, width=10 + +----------+ + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** * ** | + | ** **** | + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6580, +0x6780, +0x3300, +0x1f80, +0x0000, +0x0000, +0x0000, + +/* Character R (0x52): + ht=16, width=10 + +----------+ + | | + | | + | ******* | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ******* | + | ** ** | + | ** ** | + | ** ** | + | ** **| + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x7f00, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x7f00, +0x6180, +0x6180, +0x6180, +0x60c0, +0x0000, +0x0000, +0x0000, + +/* Character S (0x53): + ht=16, width=9 + +---------+ + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | *** | + | *** | + | ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x3e00, +0x6300, +0x6300, +0x6300, +0x3800, +0x0e00, +0x0300, +0x6300, +0x6300, +0x6300, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character T (0x54): + ht=16, width=8 + +--------+ + | | + | | + |********| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xff00, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character U (0x55): + ht=16, width=10 + +----------+ + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character V (0x56): + ht=16, width=8 + +--------+ + | | + | | + |** **| + |** **| + |** **| + | ** ** | + | ** ** | + | ** ** | + | * * | + | **** | + | **** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0xc300, +0x6600, +0x6600, +0x6600, +0x2400, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character W (0x57): + ht=16, width=14 + +--------------+ + | | + | | + |** **| + |** ** **| + |** ** **| + |** ** **| + | ** **** ** | + | ** **** ** | + | ** * * ** | + | **** **** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +--------------+ */ +0x0000, +0x0000, +0xc00c, +0xc30c, +0xc30c, +0xc30c, +0x6798, +0x6798, +0x34b0, +0x3cf0, +0x1860, +0x1860, +0x1860, +0x0000, +0x0000, +0x0000, + +/* Character X (0x58): + ht=16, width=9 + +---------+ + | | + | | + |** **| + |** **| + | ** ** | + | ** ** | + | *** | + | *** | + | *** | + | ** ** | + | ** ** | + |** **| + |** **| + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0xc180, +0xc180, +0x6300, +0x3600, +0x1c00, +0x1c00, +0x1c00, +0x3600, +0x6300, +0xc180, +0xc180, +0x0000, +0x0000, +0x0000, + +/* Character Y (0x59): + ht=16, width=10 + +----------+ + | | + | | + |** **| + |** **| + |** **| + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0xc0c0, +0xc0c0, +0xc0c0, +0x6180, +0x3300, +0x1e00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0000, + +/* Character Z (0x5a): + ht=16, width=9 + +---------+ + | | + | | + |*********| + | **| + | ** | + | ** | + | ** | + | * | + | ** | + | ** | + | ** | + |** | + |*********| + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0xff80, +0x0180, +0x0300, +0x0600, +0x0c00, +0x0800, +0x1800, +0x3000, +0x6000, +0xc000, +0xff80, +0x0000, +0x0000, +0x0000, + +/* Character [ (0x5b): + ht=16, width=4 + +----+ + | | + | | + | ***| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ***| + +----+ */ +0x0000, +0x0000, +0x7000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7000, + +/* Character \ (0x5c): + ht=16, width=4 + +----+ + | | + | | + |** | + |** | + |** | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **| + | **| + | **| + | **| + | | + +----+ */ +0x0000, +0x0000, +0xc000, +0xc000, +0xc000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, +0x3000, +0x3000, +0x3000, +0x0000, + +/* Character ] (0x5d): + ht=16, width=4 + +----+ + | | + | | + |*** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |*** | + +----+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xe000, + +/* Character ^ (0x5e): + ht=16, width=5 + +-----+ + | | + | | + | * | + | *** | + |*****| + |** **| + |* *| + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x2000, +0x7000, +0xf800, +0xd800, +0x8800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character _ (0x5f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + |********| + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xff00, + +/* Character ` (0x60): + ht=16, width=5 + +-----+ + | | + | ** | + | *** | + | ** | + | **| + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x6000, +0x7000, +0x3000, +0x1800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character a (0x61): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | **** | + | ** ** | + | * ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x4600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character b (0x62): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x0000, +0x0000, +0x0000, + +/* Character c (0x63): + ht=16, width=7 + +-------+ + | | + | | + | | + | | + | | + | **** | + | ** **| + | ** | + | ** | + | ** | + | ** | + | ** **| + | **** | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6000, +0x6000, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character d (0x64): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0600, +0x0600, +0x0600, +0x0600, +0x3e00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character e (0x65): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | **** | + | ** ** | + | ** ** | + | ****** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x7e00, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character f (0x66): + ht=16, width=4 + +----+ + | | + | | + | **| + | ** | + | ** | + | ** | + |****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x3000, +0x6000, +0x6000, +0x6000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character g (0x67): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** ** | + | **** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3e00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0600, +0x6600, +0x3c00, + +/* Character h (0x68): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x0000, +0x0000, + +/* Character i (0x69): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character j (0x6a): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character k (0x6b): + ht=16, width=7 + +-------+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** **| + | ** ** | + | **** | + | *** | + | **** | + | ** ** | + | ** **| + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6600, +0x6c00, +0x7800, +0x7000, +0x7800, +0x6c00, +0x6600, +0x0000, +0x0000, +0x0000, + +/* Character l (0x6c): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character m (0x6d): + ht=16, width=12 + +------------+ + | | + | | + | | + | | + | | + | ********* | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | ** ** ** | + | | + | | + | | + +------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7fc0, +0x6660, +0x6660, +0x6660, +0x6660, +0x6660, +0x6660, +0x6660, +0x0000, +0x0000, +0x0000, + +/* Character n (0x6e): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x0000, +0x0000, + +/* Character o (0x6f): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character p (0x70): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6000, +0x6000, +0x6000, + +/* Character q (0x71): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3e00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0600, +0x0600, +0x0600, + +/* Character r (0x72): + ht=16, width=5 + +-----+ + | | + | | + | | + | | + | | + | ****| + | *** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7800, +0x7000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character s (0x73): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | **** | + | ** ** | + | ** * | + | *** | + | *** | + | * ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6200, +0x3800, +0x1c00, +0x4600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character t (0x74): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + |****| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **| + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0xf000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, +0x0000, +0x0000, +0x0000, + +/* Character u (0x75): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character v (0x76): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** **| + |** **| + | ** ** | + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x6600, +0x3c00, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character w (0x77): + ht=16, width=10 + +----------+ + | | + | | + | | + | | + | | + |** **| + |** ** **| + |** ** **| + | ** ** ** | + | ** ** ** | + | ******** | + | ** ** | + | ** ** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc0c0, +0xccc0, +0xccc0, +0x6d80, +0x6d80, +0x7f80, +0x3300, +0x3300, +0x0000, +0x0000, +0x0000, + +/* Character x (0x78): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** **| + | ** ** | + | **** | + | ** | + | ** | + | **** | + | ** ** | + |** **| + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc300, +0x6600, +0x3c00, +0x1800, +0x1800, +0x3c00, +0x6600, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character y (0x79): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + |** **| + |** **| + |** **| + | ** ** | + | ** ** | + | **** | + | **** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xc300, +0xc300, +0xc300, +0x6600, +0x6600, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x3000, +0x6000, + +/* Character z (0x7a): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ****** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x0600, +0x0c00, +0x1800, +0x1800, +0x3000, +0x6000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character { (0x7b): + ht=16, width=5 + +-----+ + | | + | | + | **| + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | **| + +-----+ */ +0x0000, +0x0000, +0x1800, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x6000, +0x6000, +0x3000, +0x3000, +0x3000, +0x3000, +0x3000, +0x1800, + +/* Character | (0x7c): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, + +/* Character } (0x7d): + ht=16, width=5 + +-----+ + | | + | | + |** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + |** | + +-----+ */ +0x0000, +0x0000, +0xc000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x3000, +0x3000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0xc000, + +/* Character ~ (0x7e): + ht=16, width=5 + +-----+ + | | + | | + |*** *| + |* ***| + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0xe800, +0xb800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character  (0x7f): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character € (0x80): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x81): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ‚ (0x82): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ƒ (0x83): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character „ (0x84): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character … (0x85): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character † (0x86): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ‡ (0x87): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ˆ (0x88): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ‰ (0x89): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Š (0x8a): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ‹ (0x8b): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Œ (0x8c): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x8d): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Ž (0x8e): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x8f): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x90): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ‘ (0x91): + ht=16, width=4 + +----+ + | | + | **| + | **| + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x3000, +0x3000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ’ (0x92): + ht=16, width=4 + +----+ + | | + | ** | + | ** | + |** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x6000, +0x6000, +0xc000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character “ (0x93): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ” (0x94): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character • (0x95): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character – (0x96): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character — (0x97): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ˜ (0x98): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ™ (0x99): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character š (0x9a): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character › (0x9b): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character œ (0x9c): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character (0x9d): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ž (0x9e): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Ÿ (0x9f): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character   (0xa0): + ht=16, width=9 + +---------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¡ (0xa1): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ¢ (0xa2): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | ** | + | **** | + | ** *** | + | ** * | + | ** * | + | ** * | + | *** | + | *** ** | + | **** | + | ** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0c00, +0x3c00, +0x6e00, +0x6800, +0x6800, +0x6800, +0x7000, +0x7600, +0x3c00, +0x3000, +0x0000, +0x0000, + +/* Character £ (0xa3): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** ** | + | ** | + | ** | + | ** | + | ** | + | **** | + | ** | + | ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x6c00, +0x6000, +0x6000, +0x6000, +0x3000, +0x7800, +0x3000, +0x3000, +0x6600, +0x7c00, +0x0000, +0x0000, +0x0000, + +/* Character ¤ (0xa4): + ht=16, width=8 + +--------+ + | | + | | + | ** ** | + | **** | + | * * | + | * * | + | * * | + | **** | + | ** ** | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x6600, +0x3c00, +0x2400, +0x2400, +0x2400, +0x3c00, +0x6600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¥ (0xa5): + ht=16, width=8 + +--------+ + | | + | | + |** **| + |** **| + |** **| + | ** ** | + | ** ** | + |********| + | ** | + |********| + | ** | + | ** | + | ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0xc300, +0xc300, +0xc300, +0x6600, +0x6600, +0xff00, +0x1800, +0xff00, +0x1800, +0x1800, +0x1800, +0x0000, +0x0000, +0x0000, + +/* Character ¦ (0xa6): + ht=16, width=4 + +----+ + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + +----+ */ +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, + +/* Character § (0xa7): + ht=16, width=8 + +--------+ + | | + | | + | **** | + | ** ** | + | * * | + | *** | + | *** | + | ** ** | + | ** ** | + | *** | + | *** | + | * * | + | ** ** | + | **** | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3c00, +0x6600, +0x2400, +0x3800, +0x3800, +0x6c00, +0x3600, +0x1c00, +0x1c00, +0x2400, +0x6600, +0x3c00, +0x0000, +0x0000, + +/* Character ¨ (0xa8): + ht=16, width=5 + +-----+ + | | + | | + |** **| + |** **| + |** **| + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0xd800, +0xd800, +0xd800, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character © (0xa9): + ht=16, width=10 + +----------+ + | | + | | + | ****** | + | ** ** | + |** ** **| + |** * * **| + |** * * **| + |** * **| + |** * * **| + |** * * **| + |** ** **| + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x3f00, +0x6180, +0xccc0, +0xd2c0, +0xd2c0, +0xd0c0, +0xd2c0, +0xd2c0, +0xccc0, +0x6180, +0x3f00, +0x0000, +0x0000, +0x0000, + +/* Character ª (0xaa): + ht=16, width=5 + +-----+ + | | + | | + | | + | * | + | * | + | ** | + | * * | + | ** | + | | + | *** | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x2000, +0x1000, +0x3000, +0x5000, +0x3000, +0x0000, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character « (0xab): + ht=16, width=7 + +-------+ + | | + | | + | | + | | + | | + | | + | | + | ** **| + | ** ** | + |** ** | + | ** ** | + | ** **| + | | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3600, +0x6c00, +0xd800, +0x6c00, +0x3600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¬ (0xac): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ****** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x7e00, +0x0600, +0x0600, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ­ (0xad): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + | | + |****| + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ® (0xae): + ht=16, width=10 + +----------+ + | | + | | + | ****** | + | ** ** | + |** *** **| + |** * * **| + |** * * **| + |** * * **| + |** *** **| + |** * * **| + |** * * **| + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x3f00, +0x6180, +0xdcc0, +0xd2c0, +0xd2c0, +0xd2c0, +0xdcc0, +0xd4c0, +0xd2c0, +0x6180, +0x3f00, +0x0000, +0x0000, +0x0000, + +/* Character ¯ (0xaf): + ht=16, width=8 + +--------+ + | | + |********| + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +--------+ */ +0x0000, +0xff00, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ° (0xb0): + ht=16, width=5 + +-----+ + | | + | | + | | + | *** | + | * * | + | * * | + | *** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x7000, +0x5000, +0x5000, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ± (0xb1): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | ****** | + | ** | + | ** | + | | + | ****** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x7e00, +0x1800, +0x1800, +0x0000, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character ² (0xb2): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + |* **| + | **| + | ** | + |****| + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0xb000, +0x3000, +0x6000, +0xf000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ³ (0xb3): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + |* **| + | ** | + |* **| + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0xb000, +0x6000, +0xb000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ´ (0xb4): + ht=16, width=5 + +-----+ + | | + | | + | ***| + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x3800, +0x3000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character µ (0xb5): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | *******| + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7f00, +0x6000, +0x6000, +0x6000, + +/* Character ¶ (0xb6): + ht=16, width=7 + +-------+ + | | + | | + | | + | **** | + | ***** | + | ***** | + | ***** | + | ***** | + | **** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x3c00, +0x7c00, +0x7c00, +0x7c00, +0x7c00, +0x3c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0000, + +/* Character · (0xb7): + ht=16, width=4 + +----+ + | | + | | + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¸ (0xb8): + ht=16, width=5 + +-----+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | ** | + | **| + | *** | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x1800, +0x7000, + +/* Character ¹ (0xb9): + ht=16, width=4 + +----+ + | | + | | + | | + | ** | + |*** | + | ** | + | ** | + | ** | + | | + | | + | | + | | + | | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0xe000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character º (0xba): + ht=16, width=5 + +-----+ + | | + | | + | | + | *** | + | * * | + | * * | + | * * | + | *** | + | | + | *** | + | | + | | + | | + | | + | | + | | + +-----+ */ +0x0000, +0x0000, +0x0000, +0x7000, +0x5000, +0x5000, +0x5000, +0x7000, +0x0000, +0x7000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character » (0xbb): + ht=16, width=7 + +-------+ + | | + | | + | | + | | + | | + | | + | | + |** ** | + | ** ** | + | ** **| + | ** ** | + |** ** | + | | + | | + | | + | | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0xd800, +0x6c00, +0x3600, +0x6c00, +0xd800, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ¼ (0xbc): + ht=16, width=11 + +-----------+ + | | + | | + | | + | ** **| + | *** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** *** | + | ** ** * | + | ** **** | + |** ** | + | | + | | + | | + +-----------+ */ +0x0000, +0x0000, +0x0000, +0x3060, +0x70c0, +0x3180, +0x3300, +0x3600, +0x0cc0, +0x19c0, +0x3340, +0x63c0, +0xc0c0, +0x0000, +0x0000, +0x0000, + +/* Character ½ (0xbd): + ht=16, width=11 + +-----------+ + | | + | | + | | + | ** **| + | *** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** * ** | + | ** ** | + | ** ** | + |** **** | + | | + | | + | | + +-----------+ */ +0x0000, +0x0000, +0x0000, +0x3060, +0x70c0, +0x3180, +0x3300, +0x3600, +0x0d80, +0x1ac0, +0x30c0, +0x6180, +0xc3c0, +0x0000, +0x0000, +0x0000, + +/* Character ¾ (0xbe): + ht=16, width=11 + +-----------+ + | | + | | + | | + | ** **| + | * ** ** | + | ** ** | + | * ** ** | + | ** ** | + | ** ** | + | ** *** | + | ** ** * | + | ** **** | + |** ** | + | | + | | + | | + +-----------+ */ +0x0000, +0x0000, +0x0000, +0x3060, +0x58c0, +0x3180, +0x5b00, +0x3600, +0x0cc0, +0x19c0, +0x3340, +0x63c0, +0xc0c0, +0x0000, +0x0000, +0x0000, + +/* Character ¿ (0xbf): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x1800, +0x1800, +0x0000, +0x1800, +0x1800, +0x3000, +0x6000, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character À (0xc0): + ht=16, width=8 + +--------+ + | *** | + | ** | + | ** | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x3800, +0x1800, +0x0c00, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character Á (0xc1): + ht=16, width=8 + +--------+ + | *** | + | ** | + | ** | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x1c00, +0x1800, +0x3000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character  (0xc2): + ht=16, width=8 + +--------+ + | ** | + | **** | + | ** ** | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x1800, +0x3c00, +0x6600, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character à (0xc3): + ht=16, width=8 + +--------+ + | **** * | + | * **** | + | | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x7a00, +0x5e00, +0x0000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character Ä (0xc4): + ht=16, width=8 + +--------+ + | ** ** | + | ** ** | + | | + | ** | + | ** | + | **** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x6600, +0x6600, +0x0000, +0x1800, +0x1800, +0x3c00, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character Å (0xc5): + ht=16, width=8 + +--------+ + | ** | + | **** | + | ** | + | | + | ** | + | ** | + | **** | + | * * | + | ** ** | + | ** ** | + | ****** | + |** **| + |** **| + | | + | | + | | + +--------+ */ +0x1800, +0x3c00, +0x1800, +0x0000, +0x1800, +0x1800, +0x3c00, +0x2400, +0x6600, +0x6600, +0x7e00, +0xc300, +0xc300, +0x0000, +0x0000, +0x0000, + +/* Character Æ (0xc6): + ht=16, width=13 + +-------------+ + | | + | | + | | + | ********* | + | **** | + | ** ** | + | ** ** | + | ** ****** | + | ** ** | + | ** ** | + | ****** | + |** ** | + |** ******* | + | | + | | + | | + +-------------+ */ +0x0000, +0x0000, +0x0000, +0x1ff0, +0x1e00, +0x3600, +0x3600, +0x37e0, +0x6600, +0x6600, +0x7e00, +0xc600, +0xc7f0, +0x0000, +0x0000, +0x0000, + +/* Character Ç (0xc7): + ht=16, width=9 + +---------+ + | | + | | + | | + | **** | + | ** ** | + | ** * | + | ** | + | ** | + | ** | + | ** | + | ** * | + | ** ** | + | **** | + | ** | + | ** | + | *** | + +---------+ */ +0x0000, +0x0000, +0x0000, +0x1e00, +0x3300, +0x6100, +0x6000, +0x6000, +0x6000, +0x6000, +0x6100, +0x3300, +0x1e00, +0x0c00, +0x0600, +0x1c00, + +/* Character È (0xc8): + ht=16, width=9 + +---------+ + | *** | + | ** | + | ** | + | ******* | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ******* | + | | + | | + | | + +---------+ */ +0x1c00, +0x0c00, +0x0600, +0x7f00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character É (0xc9): + ht=16, width=9 + +---------+ + | *** | + | ** | + | ** | + | ******* | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ******* | + | | + | | + | | + +---------+ */ +0x0e00, +0x0c00, +0x1800, +0x7f00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character Ê (0xca): + ht=16, width=9 + +---------+ + | ** | + | **** | + | ** ** | + | ******* | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ******* | + | | + | | + | | + +---------+ */ +0x0c00, +0x1e00, +0x3300, +0x7f00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character Ë (0xcb): + ht=16, width=9 + +---------+ + | ** ** | + | ** ** | + | | + | ******* | + | ** | + | ** | + | ** | + | ****** | + | ** | + | ** | + | ** | + | ** | + | ******* | + | | + | | + | | + +---------+ */ +0x3300, +0x3300, +0x0000, +0x7f00, +0x6000, +0x6000, +0x6000, +0x7e00, +0x6000, +0x6000, +0x6000, +0x6000, +0x7f00, +0x0000, +0x0000, +0x0000, + +/* Character Ì (0xcc): + ht=16, width=4 + +----+ + |** | + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0xc000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Í (0xcd): + ht=16, width=4 + +----+ + | **| + | ** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x3000, +0x6000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Î (0xce): + ht=16, width=4 + +----+ + | ** | + |* *| + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x6000, +0x9000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Ï (0xcf): + ht=16, width=4 + +----+ + |* *| + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x9000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character Ð (0xd0): + ht=16, width=10 + +----------+ + | | + | | + | | + | ****** | + | ** ** | + | ** ** | + | ** ** | + |***** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x0000, +0x7e00, +0x6300, +0x6180, +0x6180, +0xf980, +0x6180, +0x6180, +0x6180, +0x6300, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character Ñ (0xd1): + ht=16, width=10 + +----------+ + | **** * | + | * **** | + | | + | ** ** | + | *** ** | + | **** ** | + | **** ** | + | ** ** ** | + | ** ** ** | + | ** **** | + | ** **** | + | ** *** | + | ** ** | + | | + | | + | | + +----------+ */ +0x3d00, +0x2f00, +0x0000, +0x6180, +0x7180, +0x7980, +0x7980, +0x6d80, +0x6d80, +0x6780, +0x6780, +0x6380, +0x6180, +0x0000, +0x0000, +0x0000, + +/* Character Ò (0xd2): + ht=16, width=10 + +----------+ + | *** | + | ** | + | ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x1c00, +0x0c00, +0x0600, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ó (0xd3): + ht=16, width=10 + +----------+ + | *** | + | ** | + | ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0e00, +0x0c00, +0x1800, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ô (0xd4): + ht=16, width=10 + +----------+ + | ** | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0c00, +0x1e00, +0x3300, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Õ (0xd5): + ht=16, width=10 + +----------+ + | **** * | + | * **** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x3d00, +0x2f00, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ö (0xd6): + ht=16, width=10 + +----------+ + | ** ** | + | ** ** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x3300, +0x3300, +0x0000, +0x1e00, +0x3300, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character × (0xd7): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | | + | ** ** | + | **** | + | ** | + | **** | + | ** ** | + | | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x6600, +0x3c00, +0x1800, +0x3c00, +0x6600, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character Ø (0xd8): + ht=16, width=10 + +----------+ + | | + | | + | | + | ****** | + | ** ** | + | ** *** | + | ** **** | + | ** ** ** | + | ** ** ** | + | **** ** | + | *** ** | + | ** ** | + | ****** | + | | + | | + | | + +----------+ */ +0x0000, +0x0000, +0x0000, +0x1f80, +0x3300, +0x6380, +0x6780, +0x6d80, +0x6d80, +0x7980, +0x7180, +0x3300, +0x7e00, +0x0000, +0x0000, +0x0000, + +/* Character Ù (0xd9): + ht=16, width=10 + +----------+ + | *** | + | ** | + | ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x1c00, +0x0c00, +0x0600, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ú (0xda): + ht=16, width=10 + +----------+ + | *** | + | ** | + | ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0e00, +0x0c00, +0x1800, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Û (0xdb): + ht=16, width=10 + +----------+ + | ** | + | **** | + | ** ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x0c00, +0x1e00, +0x3300, +0x0000, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ü (0xdc): + ht=16, width=10 + +----------+ + | ** ** | + | ** ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +----------+ */ +0x3300, +0x3300, +0x0000, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x6180, +0x3300, +0x1e00, +0x0000, +0x0000, +0x0000, + +/* Character Ý (0xdd): + ht=16, width=10 + +----------+ + | *** | + | ** | + | ** | + |** **| + |** **| + | ** ** | + | ** ** | + | **** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----------+ */ +0x0e00, +0x0c00, +0x1800, +0xc0c0, +0xc0c0, +0x6180, +0x3300, +0x1e00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0c00, +0x0000, +0x0000, +0x0000, + +/* Character Þ (0xde): + ht=16, width=9 + +---------+ + | | + | | + | | + | ** | + | ** | + | ****** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ****** | + | ** | + | ** | + | | + | | + | | + +---------+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x7e00, +0x6300, +0x6300, +0x6300, +0x6300, +0x7e00, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ß (0xdf): + ht=16, width=8 + +--------+ + | | + | | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6c00, +0x0000, +0x0000, +0x0000, + +/* Character à (0xe0): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x1800, +0x0c00, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character á (0xe1): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x1800, +0x3000, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character â (0xe2): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** ** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x6600, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character ã (0xe3): + ht=16, width=8 + +--------+ + | | + | | + | | + | **** * | + | * **** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7a00, +0x5e00, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character ä (0xe4): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character å (0xe5): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** | + | | + | **** | + | ** ** | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x1800, +0x0000, +0x3c00, +0x6600, +0x1e00, +0x3600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character æ (0xe6): + ht=16, width=12 + +------------+ + | | + | | + | | + | | + | | + | | + | ******** | + | ** ** ** | + | ******** | + | ** ** | + | ** ** | + | ** ** ** | + | ******** | + | | + | | + | | + +------------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3fc0, +0x6660, +0x1fe0, +0x3600, +0x6600, +0x6660, +0x3fc0, +0x0000, +0x0000, +0x0000, + +/* Character ç (0xe7): + ht=16, width=7 + +-------+ + | | + | | + | | + | | + | | + | | + | **** | + | ** **| + | ** | + | ** | + | ** | + | ** **| + | **** | + | ** | + | ** | + | *** | + +-------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3c00, +0x6600, +0x6000, +0x6000, +0x6000, +0x6600, +0x3c00, +0x1800, +0x0c00, +0x3800, + +/* Character è (0xe8): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | ****** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x1800, +0x0c00, +0x0000, +0x3c00, +0x6600, +0x7e00, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character é (0xe9): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | ****** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x1800, +0x3000, +0x0000, +0x3c00, +0x6600, +0x7e00, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ê (0xea): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** ** | + | | + | **** | + | ** ** | + | ****** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x6600, +0x0000, +0x3c00, +0x6600, +0x7e00, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ë (0xeb): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | | + | **** | + | ** ** | + | ****** | + | ** | + | ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x0000, +0x3c00, +0x6600, +0x7e00, +0x6000, +0x6000, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ì (0xec): + ht=16, width=4 + +----+ + | | + | | + |*** | + | ** | + | **| + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0xe000, +0x6000, +0x3000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character í (0xed): + ht=16, width=4 + +----+ + | | + | | + | ***| + | ** | + |** | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x7000, +0x6000, +0xc000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character î (0xee): + ht=16, width=4 + +----+ + | | + | | + | ** | + |****| + | | + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x6000, +0xf000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ï (0xef): + ht=16, width=4 + +----+ + | | + | | + | | + |* *| + |* *| + | | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | ** | + | | + | | + | | + +----+ */ +0x0000, +0x0000, +0x0000, +0x9000, +0x9000, +0x0000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x6000, +0x0000, +0x0000, +0x0000, + +/* Character ð (0xf0): + ht=16, width=8 + +--------+ + | | + | | + | | + | *** ** | + | ** | + | ** ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7600, +0x1800, +0x6c00, +0x0c00, +0x3e00, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ñ (0xf1): + ht=16, width=8 + +--------+ + | | + | | + | | + | **** * | + | * **** | + | | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7a00, +0x5e00, +0x0000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x0000, +0x0000, +0x0000, + +/* Character ò (0xf2): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x1800, +0x0c00, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ó (0xf3): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x1800, +0x3000, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ô (0xf4): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** ** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x6600, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character õ (0xf5): + ht=16, width=8 + +--------+ + | | + | | + | | + | **** * | + | * **** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x7a00, +0x5e00, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ö (0xf6): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | | + | **** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | **** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x0000, +0x3c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3c00, +0x0000, +0x0000, +0x0000, + +/* Character ÷ (0xf7): + ht=16, width=6 + +------+ + | | + | | + | | + | | + | | + | ** | + | ** | + | | + | **** | + | | + | ** | + | ** | + | | + | | + | | + | | + +------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3000, +0x3000, +0x0000, +0x7800, +0x0000, +0x3000, +0x3000, +0x0000, +0x0000, +0x0000, +0x0000, + +/* Character ø (0xf8): + ht=16, width=8 + +--------+ + | | + | | + | | + | | + | | + | | + | ***** | + | ** *** | + | ** *** | + | ** ** | + | *** ** | + | *** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x0000, +0x3e00, +0x6e00, +0x6e00, +0x6600, +0x7600, +0x7600, +0x7c00, +0x0000, +0x0000, +0x0000, + +/* Character ù (0xf9): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x3800, +0x1800, +0x0c00, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character ú (0xfa): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x1800, +0x3000, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character û (0xfb): + ht=16, width=8 + +--------+ + | | + | | + | ** | + | **** | + | ** ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x1800, +0x3c00, +0x6600, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character ü (0xfc): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | | + | | + | | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x0000, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x3e00, +0x0000, +0x0000, +0x0000, + +/* Character ý (0xfd): + ht=16, width=8 + +--------+ + | | + | | + | *** | + | ** | + | ** | + | | + |** **| + |** **| + | ** ** | + | ** ** | + | **** | + | **** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x1c00, +0x1800, +0x3000, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x3000, +0x6000, + +/* Character þ (0xfe): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** | + | ** | + | ** | + | ***** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ** ** | + | ***** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6000, +0x6000, +0x6000, +0x7c00, +0x6600, +0x6600, +0x6600, +0x6600, +0x6600, +0x7c00, +0x6000, +0x6000, +0x6000, + +/* Character ÿ (0xff): + ht=16, width=8 + +--------+ + | | + | | + | | + | ** ** | + | ** ** | + | | + |** **| + |** **| + | ** ** | + | ** ** | + | **** | + | **** | + | ** | + | ** | + | ** | + | ** | + +--------+ */ +0x0000, +0x0000, +0x0000, +0x6600, +0x6600, +0x0000, +0xc300, +0xc300, +0x6600, +0x6600, +0x3c00, +0x3c00, +0x1800, +0x1800, +0x3000, +0x6000, + +}; + +/* Character->glyph data. */ +static unsigned short winFreeSystem14x16_offset[] = { + 0, /* (0x20) */ + 16, /* ! (0x21) */ + 32, /* " (0x22) */ + 48, /* # (0x23) */ + 64, /* $ (0x24) */ + 80, /* % (0x25) */ + 96, /* & (0x26) */ + 112, /* ' (0x27) */ + 128, /* ( (0x28) */ + 144, /* ) (0x29) */ + 160, /* * (0x2a) */ + 176, /* + (0x2b) */ + 192, /* , (0x2c) */ + 208, /* - (0x2d) */ + 224, /* . (0x2e) */ + 240, /* / (0x2f) */ + 256, /* 0 (0x30) */ + 272, /* 1 (0x31) */ + 288, /* 2 (0x32) */ + 304, /* 3 (0x33) */ + 320, /* 4 (0x34) */ + 336, /* 5 (0x35) */ + 352, /* 6 (0x36) */ + 368, /* 7 (0x37) */ + 384, /* 8 (0x38) */ + 400, /* 9 (0x39) */ + 416, /* : (0x3a) */ + 432, /* ; (0x3b) */ + 448, /* < (0x3c) */ + 464, /* = (0x3d) */ + 480, /* > (0x3e) */ + 496, /* ? (0x3f) */ + 512, /* @ (0x40) */ + 528, /* A (0x41) */ + 544, /* B (0x42) */ + 560, /* C (0x43) */ + 576, /* D (0x44) */ + 592, /* E (0x45) */ + 608, /* F (0x46) */ + 624, /* G (0x47) */ + 640, /* H (0x48) */ + 656, /* I (0x49) */ + 672, /* J (0x4a) */ + 688, /* K (0x4b) */ + 704, /* L (0x4c) */ + 720, /* M (0x4d) */ + 736, /* N (0x4e) */ + 752, /* O (0x4f) */ + 768, /* P (0x50) */ + 784, /* Q (0x51) */ + 800, /* R (0x52) */ + 816, /* S (0x53) */ + 832, /* T (0x54) */ + 848, /* U (0x55) */ + 864, /* V (0x56) */ + 880, /* W (0x57) */ + 896, /* X (0x58) */ + 912, /* Y (0x59) */ + 928, /* Z (0x5a) */ + 944, /* [ (0x5b) */ + 960, /* \ (0x5c) */ + 976, /* ] (0x5d) */ + 992, /* ^ (0x5e) */ + 1008, /* _ (0x5f) */ + 1024, /* ` (0x60) */ + 1040, /* a (0x61) */ + 1056, /* b (0x62) */ + 1072, /* c (0x63) */ + 1088, /* d (0x64) */ + 1104, /* e (0x65) */ + 1120, /* f (0x66) */ + 1136, /* g (0x67) */ + 1152, /* h (0x68) */ + 1168, /* i (0x69) */ + 1184, /* j (0x6a) */ + 1200, /* k (0x6b) */ + 1216, /* l (0x6c) */ + 1232, /* m (0x6d) */ + 1248, /* n (0x6e) */ + 1264, /* o (0x6f) */ + 1280, /* p (0x70) */ + 1296, /* q (0x71) */ + 1312, /* r (0x72) */ + 1328, /* s (0x73) */ + 1344, /* t (0x74) */ + 1360, /* u (0x75) */ + 1376, /* v (0x76) */ + 1392, /* w (0x77) */ + 1408, /* x (0x78) */ + 1424, /* y (0x79) */ + 1440, /* z (0x7a) */ + 1456, /* { (0x7b) */ + 1472, /* | (0x7c) */ + 1488, /* } (0x7d) */ + 1504, /* ~ (0x7e) */ + 1520, /*  (0x7f) */ + 1536, /* € (0x80) */ + 1552, /* (0x81) */ + 1568, /* ‚ (0x82) */ + 1584, /* ƒ (0x83) */ + 1600, /* „ (0x84) */ + 1616, /* … (0x85) */ + 1632, /* † (0x86) */ + 1648, /* ‡ (0x87) */ + 1664, /* ˆ (0x88) */ + 1680, /* ‰ (0x89) */ + 1696, /* Š (0x8a) */ + 1712, /* ‹ (0x8b) */ + 1728, /* Œ (0x8c) */ + 1744, /* (0x8d) */ + 1760, /* Ž (0x8e) */ + 1776, /* (0x8f) */ + 1792, /* (0x90) */ + 1808, /* ‘ (0x91) */ + 1824, /* ’ (0x92) */ + 1840, /* “ (0x93) */ + 1856, /* ” (0x94) */ + 1872, /* • (0x95) */ + 1888, /* – (0x96) */ + 1904, /* — (0x97) */ + 1920, /* ˜ (0x98) */ + 1936, /* ™ (0x99) */ + 1952, /* š (0x9a) */ + 1968, /* › (0x9b) */ + 1984, /* œ (0x9c) */ + 2000, /* (0x9d) */ + 2016, /* ž (0x9e) */ + 2032, /* Ÿ (0x9f) */ + 2048, /*   (0xa0) */ + 2064, /* ¡ (0xa1) */ + 2080, /* ¢ (0xa2) */ + 2096, /* £ (0xa3) */ + 2112, /* ¤ (0xa4) */ + 2128, /* ¥ (0xa5) */ + 2144, /* ¦ (0xa6) */ + 2160, /* § (0xa7) */ + 2176, /* ¨ (0xa8) */ + 2192, /* © (0xa9) */ + 2208, /* ª (0xaa) */ + 2224, /* « (0xab) */ + 2240, /* ¬ (0xac) */ + 2256, /* ­ (0xad) */ + 2272, /* ® (0xae) */ + 2288, /* ¯ (0xaf) */ + 2304, /* ° (0xb0) */ + 2320, /* ± (0xb1) */ + 2336, /* ² (0xb2) */ + 2352, /* ³ (0xb3) */ + 2368, /* ´ (0xb4) */ + 2384, /* µ (0xb5) */ + 2400, /* ¶ (0xb6) */ + 2416, /* · (0xb7) */ + 2432, /* ¸ (0xb8) */ + 2448, /* ¹ (0xb9) */ + 2464, /* º (0xba) */ + 2480, /* » (0xbb) */ + 2496, /* ¼ (0xbc) */ + 2512, /* ½ (0xbd) */ + 2528, /* ¾ (0xbe) */ + 2544, /* ¿ (0xbf) */ + 2560, /* À (0xc0) */ + 2576, /* Á (0xc1) */ + 2592, /*  (0xc2) */ + 2608, /* à (0xc3) */ + 2624, /* Ä (0xc4) */ + 2640, /* Å (0xc5) */ + 2656, /* Æ (0xc6) */ + 2672, /* Ç (0xc7) */ + 2688, /* È (0xc8) */ + 2704, /* É (0xc9) */ + 2720, /* Ê (0xca) */ + 2736, /* Ë (0xcb) */ + 2752, /* Ì (0xcc) */ + 2768, /* Í (0xcd) */ + 2784, /* Î (0xce) */ + 2800, /* Ï (0xcf) */ + 2816, /* Ð (0xd0) */ + 2832, /* Ñ (0xd1) */ + 2848, /* Ò (0xd2) */ + 2864, /* Ó (0xd3) */ + 2880, /* Ô (0xd4) */ + 2896, /* Õ (0xd5) */ + 2912, /* Ö (0xd6) */ + 2928, /* × (0xd7) */ + 2944, /* Ø (0xd8) */ + 2960, /* Ù (0xd9) */ + 2976, /* Ú (0xda) */ + 2992, /* Û (0xdb) */ + 3008, /* Ü (0xdc) */ + 3024, /* Ý (0xdd) */ + 3040, /* Þ (0xde) */ + 3056, /* ß (0xdf) */ + 3072, /* à (0xe0) */ + 3088, /* á (0xe1) */ + 3104, /* â (0xe2) */ + 3120, /* ã (0xe3) */ + 3136, /* ä (0xe4) */ + 3152, /* å (0xe5) */ + 3168, /* æ (0xe6) */ + 3184, /* ç (0xe7) */ + 3200, /* è (0xe8) */ + 3216, /* é (0xe9) */ + 3232, /* ê (0xea) */ + 3248, /* ë (0xeb) */ + 3264, /* ì (0xec) */ + 3280, /* í (0xed) */ + 3296, /* î (0xee) */ + 3312, /* ï (0xef) */ + 3328, /* ð (0xf0) */ + 3344, /* ñ (0xf1) */ + 3360, /* ò (0xf2) */ + 3376, /* ó (0xf3) */ + 3392, /* ô (0xf4) */ + 3408, /* õ (0xf5) */ + 3424, /* ö (0xf6) */ + 3440, /* ÷ (0xf7) */ + 3456, /* ø (0xf8) */ + 3472, /* ù (0xf9) */ + 3488, /* ú (0xfa) */ + 3504, /* û (0xfb) */ + 3520, /* ü (0xfc) */ + 3536, /* ý (0xfd) */ + 3552, /* þ (0xfe) */ + 3568, /* ÿ (0xff) */ +}; + +/* Character width data. */ +static unsigned char winFreeSystem14x16_width[] = { + 4, /* (0x20) */ + 4, /* ! (0x21) */ + 6, /* " (0x22) */ + 8, /* # (0x23) */ + 8, /* $ (0x24) */ + 11, /* % (0x25) */ + 9, /* & (0x26) */ + 4, /* ' (0x27) */ + 4, /* ( (0x28) */ + 4, /* ) (0x29) */ + 6, /* * (0x2a) */ + 8, /* + (0x2b) */ + 4, /* , (0x2c) */ + 4, /* - (0x2d) */ + 4, /* . (0x2e) */ + 4, /* / (0x2f) */ + 8, /* 0 (0x30) */ + 8, /* 1 (0x31) */ + 8, /* 2 (0x32) */ + 8, /* 3 (0x33) */ + 8, /* 4 (0x34) */ + 8, /* 5 (0x35) */ + 8, /* 6 (0x36) */ + 8, /* 7 (0x37) */ + 8, /* 8 (0x38) */ + 8, /* 9 (0x39) */ + 4, /* : (0x3a) */ + 4, /* ; (0x3b) */ + 8, /* < (0x3c) */ + 8, /* = (0x3d) */ + 8, /* > (0x3e) */ + 8, /* ? (0x3f) */ + 14, /* @ (0x40) */ + 8, /* A (0x41) */ + 10, /* B (0x42) */ + 9, /* C (0x43) */ + 10, /* D (0x44) */ + 9, /* E (0x45) */ + 8, /* F (0x46) */ + 10, /* G (0x47) */ + 10, /* H (0x48) */ + 4, /* I (0x49) */ + 7, /* J (0x4a) */ + 9, /* K (0x4b) */ + 8, /* L (0x4c) */ + 12, /* M (0x4d) */ + 10, /* N (0x4e) */ + 10, /* O (0x4f) */ + 9, /* P (0x50) */ + 10, /* Q (0x51) */ + 10, /* R (0x52) */ + 9, /* S (0x53) */ + 8, /* T (0x54) */ + 10, /* U (0x55) */ + 8, /* V (0x56) */ + 14, /* W (0x57) */ + 9, /* X (0x58) */ + 10, /* Y (0x59) */ + 9, /* Z (0x5a) */ + 4, /* [ (0x5b) */ + 4, /* \ (0x5c) */ + 4, /* ] (0x5d) */ + 5, /* ^ (0x5e) */ + 8, /* _ (0x5f) */ + 5, /* ` (0x60) */ + 8, /* a (0x61) */ + 8, /* b (0x62) */ + 7, /* c (0x63) */ + 8, /* d (0x64) */ + 8, /* e (0x65) */ + 4, /* f (0x66) */ + 8, /* g (0x67) */ + 8, /* h (0x68) */ + 4, /* i (0x69) */ + 4, /* j (0x6a) */ + 7, /* k (0x6b) */ + 4, /* l (0x6c) */ + 12, /* m (0x6d) */ + 8, /* n (0x6e) */ + 8, /* o (0x6f) */ + 8, /* p (0x70) */ + 8, /* q (0x71) */ + 5, /* r (0x72) */ + 8, /* s (0x73) */ + 4, /* t (0x74) */ + 8, /* u (0x75) */ + 8, /* v (0x76) */ + 10, /* w (0x77) */ + 8, /* x (0x78) */ + 8, /* y (0x79) */ + 8, /* z (0x7a) */ + 5, /* { (0x7b) */ + 4, /* | (0x7c) */ + 5, /* } (0x7d) */ + 5, /* ~ (0x7e) */ + 4, /*  (0x7f) */ + 4, /* € (0x80) */ + 4, /* (0x81) */ + 4, /* ‚ (0x82) */ + 4, /* ƒ (0x83) */ + 4, /* „ (0x84) */ + 4, /* … (0x85) */ + 4, /* † (0x86) */ + 4, /* ‡ (0x87) */ + 4, /* ˆ (0x88) */ + 4, /* ‰ (0x89) */ + 4, /* Š (0x8a) */ + 4, /* ‹ (0x8b) */ + 4, /* Œ (0x8c) */ + 4, /* (0x8d) */ + 4, /* Ž (0x8e) */ + 4, /* (0x8f) */ + 4, /* (0x90) */ + 4, /* ‘ (0x91) */ + 4, /* ’ (0x92) */ + 4, /* “ (0x93) */ + 4, /* ” (0x94) */ + 4, /* • (0x95) */ + 4, /* – (0x96) */ + 4, /* — (0x97) */ + 4, /* ˜ (0x98) */ + 4, /* ™ (0x99) */ + 4, /* š (0x9a) */ + 4, /* › (0x9b) */ + 4, /* œ (0x9c) */ + 4, /* (0x9d) */ + 4, /* ž (0x9e) */ + 4, /* Ÿ (0x9f) */ + 9, /*   (0xa0) */ + 4, /* ¡ (0xa1) */ + 8, /* ¢ (0xa2) */ + 8, /* £ (0xa3) */ + 8, /* ¤ (0xa4) */ + 8, /* ¥ (0xa5) */ + 4, /* ¦ (0xa6) */ + 8, /* § (0xa7) */ + 5, /* ¨ (0xa8) */ + 10, /* © (0xa9) */ + 5, /* ª (0xaa) */ + 7, /* « (0xab) */ + 8, /* ¬ (0xac) */ + 4, /* ­ (0xad) */ + 10, /* ® (0xae) */ + 8, /* ¯ (0xaf) */ + 5, /* ° (0xb0) */ + 8, /* ± (0xb1) */ + 4, /* ² (0xb2) */ + 4, /* ³ (0xb3) */ + 5, /* ´ (0xb4) */ + 8, /* µ (0xb5) */ + 7, /* ¶ (0xb6) */ + 4, /* · (0xb7) */ + 5, /* ¸ (0xb8) */ + 4, /* ¹ (0xb9) */ + 5, /* º (0xba) */ + 7, /* » (0xbb) */ + 11, /* ¼ (0xbc) */ + 11, /* ½ (0xbd) */ + 11, /* ¾ (0xbe) */ + 8, /* ¿ (0xbf) */ + 8, /* À (0xc0) */ + 8, /* Á (0xc1) */ + 8, /*  (0xc2) */ + 8, /* à (0xc3) */ + 8, /* Ä (0xc4) */ + 8, /* Å (0xc5) */ + 13, /* Æ (0xc6) */ + 9, /* Ç (0xc7) */ + 9, /* È (0xc8) */ + 9, /* É (0xc9) */ + 9, /* Ê (0xca) */ + 9, /* Ë (0xcb) */ + 4, /* Ì (0xcc) */ + 4, /* Í (0xcd) */ + 4, /* Î (0xce) */ + 4, /* Ï (0xcf) */ + 10, /* Ð (0xd0) */ + 10, /* Ñ (0xd1) */ + 10, /* Ò (0xd2) */ + 10, /* Ó (0xd3) */ + 10, /* Ô (0xd4) */ + 10, /* Õ (0xd5) */ + 10, /* Ö (0xd6) */ + 8, /* × (0xd7) */ + 10, /* Ø (0xd8) */ + 10, /* Ù (0xd9) */ + 10, /* Ú (0xda) */ + 10, /* Û (0xdb) */ + 10, /* Ü (0xdc) */ + 10, /* Ý (0xdd) */ + 9, /* Þ (0xde) */ + 8, /* ß (0xdf) */ + 8, /* à (0xe0) */ + 8, /* á (0xe1) */ + 8, /* â (0xe2) */ + 8, /* ã (0xe3) */ + 8, /* ä (0xe4) */ + 8, /* å (0xe5) */ + 12, /* æ (0xe6) */ + 7, /* ç (0xe7) */ + 8, /* è (0xe8) */ + 8, /* é (0xe9) */ + 8, /* ê (0xea) */ + 8, /* ë (0xeb) */ + 4, /* ì (0xec) */ + 4, /* í (0xed) */ + 4, /* î (0xee) */ + 4, /* ï (0xef) */ + 8, /* ð (0xf0) */ + 8, /* ñ (0xf1) */ + 8, /* ò (0xf2) */ + 8, /* ó (0xf3) */ + 8, /* ô (0xf4) */ + 8, /* õ (0xf5) */ + 8, /* ö (0xf6) */ + 6, /* ÷ (0xf7) */ + 8, /* ø (0xf8) */ + 8, /* ù (0xf9) */ + 8, /* ú (0xfa) */ + 8, /* û (0xfb) */ + 8, /* ü (0xfc) */ + 8, /* ý (0xfd) */ + 8, /* þ (0xfe) */ + 8, /* ÿ (0xff) */ +}; + +/* Exported structure definition. */ +MWCFONT font_winFreeSystem14x16 = { + "winFreeSystem14x16", + 14, + 16, + 13, + 32, + 224, + winFreeSystem14x16_bits, + winFreeSystem14x16_offset, + winFreeSystem14x16_width, +}; diff --git a/packages/net/vnc_server/current/src/init.cxx b/packages/net/vnc_server/current/src/init.cxx new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/init.cxx @@ -0,0 +1,88 @@ +//========================================================================== +// +// init.cxx +// +// +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +//#####DESCRIPTIONBEGIN#### +// +// Author(s): Chris Garry +// Contributors: +// Date: 2003-08-22 +// Purpose: +// Description: Constructor for VNC Server +// +//####DESCRIPTIONEND#### +// +//========================================================================*/ + + +#include +#include +#include // assertion macros + +/* ================================================================= */ + +__externC void cyg_vnc_server_startup(void); + +/* ================================================================= */ +/* Initialization object + */ + +class Cyg_Vnc_Server_Init_Class +{ +public: + Cyg_Vnc_Server_Init_Class(); +}; + +/* ----------------------------------------------------------------- */ +/* Static initialization object instance. The constructor is + * prioritized to run at the same time as any filesystem constructors. + */ +static Cyg_Vnc_Server_Init_Class vnc_initializer CYGBLD_ATTRIB_INIT_PRI(CYG_INIT_IO_FS); + +/* ----------------------------------------------------------------- */ +/* Constructor, just calls the startup routine. + */ + +Cyg_Vnc_Server_Init_Class::Cyg_Vnc_Server_Init_Class() +{ + cyg_vnc_server_startup(); +} + +/* ----------------------------------------------------------------- */ +/* end of init.cxx */ diff --git a/packages/net/vnc_server/current/src/vnc-server.c b/packages/net/vnc_server/current/src/vnc-server.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/vnc-server.c @@ -0,0 +1,1677 @@ +//========================================================================== +// +// vnc-server.c +// +// +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +//#####DESCRIPTIONBEGIN#### +// +// Author(s): Chris Garry +// Contributors: +// Date: 2003-08-22 +// Purpose: +// Description: VNC server for eCos +// +//####DESCRIPTIONEND#### +// +//========================================================================*/ + + +#include /* CYGNUM_HAL_STACK_SIZE_MINIMUM & CYGNUM_HAL_STACK_SIZE_TYPICAL */ +#include /* CYG_BYTEORDER */ +#include +#include /* diag_printf */ +#include +#include +#include + +#ifdef CYGPKG_NET +/* eCos (BSD stack) include */ +#include +#else +/* eCos (lwIP stack) include */ +#include "lwip/sys.h" /* lwIP stack includes */ +#define LWIP_COMPAT_SOCKETS 1 +#include "lwip/sockets.h" +#endif + +#ifndef CYGPKG_NET +/* Function prototypes that should really be in lwIP header files */ +/* Included here to remove compiler warnings */ +u32_t htonl(u32_t); +u16_t htons(u16_t); +void lwip_init(void); +#endif + +#define BACKLOG 5 /* Number of pending connections queue will hold */ +#define MESSAGE_BUFFER_SIZE 50 +#define TILE_SIZE CYGNUM_VNC_SERVER_TILE_SIZE +#define TRUE_COLOUR_FLAG 1 /* True colour is set */ + +/* Various definitions for different pixel types */ +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB332 +#define BITS_PER_PIXEL 8 /* Bits per pixel */ +#define PIXEL_DEPTH 8 /* Usefull bits per pixel */ +#define RED_MAX 7 +#define GREEN_MAX 7 +#define BLUE_MAX 3 +#define RED_SHIFT 5 +#define GREEN_SHIFT 2 +#define BLUE_SHIFT 0 +#endif + +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB555 +#define BITS_PER_PIXEL 16 /* Bits per pixel */ +#define PIXEL_DEPTH 15 /* Usefull bits per pixel */ +#define RED_MAX 31 +#define GREEN_MAX 31 +#define BLUE_MAX 31 +#define RED_SHIFT 10 +#define GREEN_SHIFT 5 +#define BLUE_SHIFT 0 +#endif + +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB565 +#define BITS_PER_PIXEL 16 /* Bits per pixel */ +#define PIXEL_DEPTH 16 /* Usefull bits per pixel */ +#define RED_MAX 31 +#define GREEN_MAX 63 +#define BLUE_MAX 31 +#define RED_SHIFT 11 +#define GREEN_SHIFT 5 +#define BLUE_SHIFT 0 +#endif + +/* Client to Server message types */ +#define SET_PIXEL_FORMAT 0 +#define FIX_COLOUR_MAP_ENTRIES 1 +#define SET_ENCODINGS 2 +#define FRAME_BUFFER_UPDATE_REQ 3 +#define KEY_EVENT 4 +#define POINTER_EVENT 5 +#define CLIENT_CUT_TEXT 6 + +#if CYG_BYTEORDER == CYG_MSBFIRST +#define REQUESTED_BIG_ENDIAN_FLAG 1 /* We are big endian */ +#else +#define REQUESTED_BIG_ENDIAN_FLAG 0 /* We are little endian */ +#endif + +/* Give these variables initial values - they may be set again */ +/* after a SetPixelFormat message from the client */ +volatile int clr_byte0_shift = 0; +volatile int clr_byte1_shift = 8; + +/* Macro to split colour to bytes depending on required endian and so on */ +#define COLOUR2BYTE0(col) ((col>>clr_byte0_shift)&0xFF) +#define COLOUR2BYTE1(col) ((col>>clr_byte1_shift)&0xFF) + +/* Function prototype */ +static int GetMessageData(int, char *, int); +static int GenTileUpdateData(cyg_uint8 *); + +/* Mouse handler funcrion - in vnc_mouse.c */ +void vnc_mouse_handler(cyg_uint8 *data); +/* Keyboard handler funcrion - in vnc_kbd.c */ +void vnc_kbd_handler(cyg_uint8 *data); + + +/* Thread function prototypes */ +#ifdef CYGPKG_NET +cyg_thread_entry_t client_handler, frame_update; +#else +cyg_thread_entry_t tMain; +static void client_handler(void *); +static void frame_update(void *); +#endif + +#ifdef CYGPKG_NET +/* Handles for the threads */ +cyg_handle_t client_handler_hndl, frame_update_hndl; +/* Thread objects for the system to manipulate threads */ +cyg_thread thread_s[2]; +#else +cyg_handle_t lwip_startup_hndl; +cyg_thread thread_s; +#endif + +/* Define size of each thread's stack */ +#define MIN_STACK_SIZE (CYGNUM_HAL_STACK_SIZE_MINIMUM) +#define MAIN_STACK_SIZE (CYGNUM_HAL_STACK_SIZE_TYPICAL) + +/* Allocate space for stacks */ +#ifdef CYGPKG_NET +static char client_handler_stack[MAIN_STACK_SIZE]; +static char frame_update_stack[MAIN_STACK_SIZE]; +#else +static char lwip_startup_stack[MIN_STACK_SIZE]; +#endif + +/* Messages */ +char server_ProtocolVersion[] = "RFB 003.003\n"; +char bad_protocol[] = "Unsupported ProtocolVersion"; +char sound_bell[] = "\2"; +char desktop_name[] = CYGDAT_VNC_DESKTOP_NAME; + +/* Frame Buffer */ +volatile vnc_colour_t frame_buffer[CYGNUM_VNC_SERVER_FRAME_HEIGHT][CYGNUM_VNC_SERVER_FRAME_WIDTH]; + +/* Calculate the number of tiles in the X and Y directions */ +#if (CYGNUM_VNC_SERVER_FRAME_HEIGHT % TILE_SIZE) != 0 +#define NUM_TILES_Y_AXIS (CYGNUM_VNC_SERVER_FRAME_HEIGHT/TILE_SIZE + 1) +#define LAST_TILE_HEIGHT (CYGNUM_VNC_SERVER_FRAME_HEIGHT % TILE_SIZE) +#else +#define NUM_TILES_Y_AXIS (CYGNUM_VNC_SERVER_FRAME_HEIGHT/TILE_SIZE) +#define LAST_TILE_HEIGHT TILE_SIZE +#endif + +#if (CYGNUM_VNC_SERVER_FRAME_WIDTH % TILE_SIZE) != 0 +#define NUM_TILES_X_AXIS (CYGNUM_VNC_SERVER_FRAME_WIDTH/TILE_SIZE + 1) +#define LAST_TILE_WIDTH (CYGNUM_VNC_SERVER_FRAME_WIDTH % TILE_SIZE) +#else +#define NUM_TILES_X_AXIS (CYGNUM_VNC_SERVER_FRAME_WIDTH/TILE_SIZE) +#define LAST_TILE_WIDTH TILE_SIZE +#endif + +/* Array for marking tiles that have been updated */ +volatile int tile_updated[NUM_TILES_Y_AXIS][NUM_TILES_X_AXIS]; + +/* Conditional variable to signal that a client is connected and initialised */ +cyg_mutex_t client_active_lock; +cyg_cond_t client_active_wait; +volatile int update_req; + +/* Mutex and variable for sounding the client's bell */ +cyg_mutex_t SoundBell_lock; +volatile int SoundBellCount; + +volatile int client_sock; /* Socket descriptor for client connection */ + + +/* Variable to hold the frame format details */ +vnc_frame_format_t frame_format = {CYGNUM_VNC_SERVER_FRAME_WIDTH, + CYGNUM_VNC_SERVER_FRAME_HEIGHT, + frame_buffer, +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB332 + 1, +#else + 0, +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB555 + 1, +#else + 0, +#endif +#ifdef CYGNUM_VNC_SERVER_PIXEL_RGB565 + 1}; +#else + 0}; +#endif + + +/* Structure to hold the encoding type details */ +volatile struct encoding_type_struct +{ + cyg_uint8 raw; + cyg_uint8 copy_rectangle; + cyg_uint8 rre; + cyg_uint8 corre; + cyg_uint8 hextile; +} encoding_type; + + +/*****************************************************************************/ +/** System initializer + * + * This is called from the static constructor in init.cxx. It spawns + * the main server thread and makes it ready to run. + * + *****************************************************************************/ +__externC void cyg_vnc_server_startup(void) +{ +#ifdef CYGPKG_NET + /* BSD TCP/IP stack version */ + cyg_thread_create(CYGNUM_VNC_SERVER_PRIORITY, + client_handler, + 0, + "ClientHandler", + (void *) client_handler_stack, + MAIN_STACK_SIZE, + &client_handler_hndl, + &thread_s[0]); + + cyg_thread_resume(client_handler_hndl); + +#else + /* lwIP TCP/IP stack version */ + cyg_thread_create(CYGNUM_VNC_SERVER_PRIORITY, + tMain, + 0, + "lwIP_Startup", + (void *) lwip_startup_stack, + MIN_STACK_SIZE, + &lwip_startup_hndl, + &thread_s); + + cyg_thread_resume(lwip_startup_hndl); +#endif +} + + +#ifndef CYGPKG_NET +/* Startup thread for lwIP stack */ +void tMain(cyg_addrword_t data) +{ + lwip_init(); + sys_thread_new(client_handler, (void *) 0, CYGNUM_VNC_SERVER_PRIORITY); +} +#endif + + +/*****************************************************************************/ +/** Client Handler Thread. + * + * @param data Ignored + * + * This thread handles the client initialisation sequence. Once the client + * is initialised this thread handles all received messages from the client, + * but does not send any data to the client. + * + *****************************************************************************/ +#ifdef CYGPKG_NET +void client_handler(cyg_addrword_t data) +#else +static void client_handler(void *data) +#endif +{ + int server_sock; /* Socket descriptor for server */ + struct sockaddr_in server_addr; /* Details of my IP address and port */ + struct sockaddr_in client_addr; /* Details of new connection IP address */ + int client_addr_size; + + int i, j; + long int temp_long; + char message_buffer[MESSAGE_BUFFER_SIZE]; + char protocol_ver[8]; + int message_len; + int ProtocolOkay; + cyg_uint32 *ptr_to_uint32; + cyg_uint16 *ptr_to_uint16; + + if (CYGNUM_VNC_SERVER_DELAY) + { + cyg_thread_delay(CYGNUM_VNC_SERVER_DELAY); + } + + /* Initialise mutex & cond vars */ + cyg_mutex_init(&client_active_lock); + cyg_cond_init(&client_active_wait, &client_active_lock); + update_req = 0; + cyg_mutex_init(&SoundBell_lock); + + /* Create thread to handle frame_updates */ +#ifdef CYGPKG_NET + cyg_thread_create(CYGNUM_VNC_SERVER_PRIORITY, + frame_update, + 0, + "FrameUpdate", + (void *) frame_update_stack, + MAIN_STACK_SIZE, + &frame_update_hndl, + &thread_s[1]); + + cyg_thread_resume(frame_update_hndl); +#else + sys_thread_new(frame_update, (void *) 0, CYGNUM_VNC_SERVER_PRIORITY); +#endif + + /* Clear the encoding type structure */ + encoding_type.raw = 0; + encoding_type.copy_rectangle = 0; + encoding_type.rre = 0; + encoding_type.corre = 0; + encoding_type.hextile = 0; + + /* Clear the sound bell counter */ + SoundBellCount = 0; + +#ifdef CYGPKG_NET + /* Initialisation routine for BSD TCP/IP stack */ + init_all_network_interfaces(); +#endif + + /* Create socket for incomming connections */ + if ((server_sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) + { + diag_printf("socket() function failed\n"); + exit(1); + } + + /* Construct the server address structure */ + memset(&server_addr, 0, sizeof(server_addr)); /* Fill entire structure with 0's */ + server_addr.sin_family = AF_INET; /* Internet address family */ + server_addr.sin_addr.s_addr = INADDR_ANY; /* Autofill with my IP address */ + server_addr.sin_port = htons(CYGNUM_VNC_SERVER_PORT); + + /* Bind socket to local address */ + if (bind(server_sock, (struct sockaddr *) &server_addr, sizeof(server_addr)) < 0) + { + diag_printf("bind() function failed"); + exit(1); + } + + /* Set the socket to listen for incoming connections */ + if (listen(server_sock, BACKLOG) < 0) + { + diag_printf("listen() function failed"); + exit(1); + } + + while(1) + { + + /* Wait to accept a connection on this socket */ + client_addr_size = sizeof(client_addr); + client_sock = (accept(server_sock, (struct sockaddr *) &client_addr, &client_addr_size)); + + if(client_sock < 0) + { + diag_printf("accept() function failed"); + exit(1); + } + + /* + ProtocolVersion Handshake - begin + */ + + /* Send ProtocolVersion we want to use to client */ + message_len = diag_sprintf(message_buffer, "RFB 003.003\n"); + if (send(client_sock, message_buffer, message_len, 0) != message_len) + { + goto close_connection; + } + + /* Receive ProtocolVersion the client wants to use */ + if (GetMessageData(client_sock, &(message_buffer[0]), 12) == 0) + { + goto close_connection; + } + + /* Check this is acceptable (RFB 003.xxx is okay) */ + ProtocolOkay = 1; + for (i=0; i < 8; i++) + { + if (message_buffer[i] != server_ProtocolVersion[i]) + { + ProtocolOkay = 0; + } + + /* Store the protocol version - ignoring thr 'RFB ' part */ + protocol_ver[i] = message_buffer[i + 4]; + } + + protocol_ver[7] = 0; + /* + ProtocolVersion Handshake - end + */ + + + /* + Authentication - begin + */ + + /* Send Authentication scheme to be used to client */ + if (ProtocolOkay == 0) + { + /* ProtocolVerion is not okay */ + + /* Generate the Bad ProtocolVerion message */ + ptr_to_uint32 = (cyg_uint32 *) &(message_buffer[0]); + *ptr_to_uint32 = htonl(0); + ptr_to_uint32 = (cyg_uint32 *) &(message_buffer[4]); + *ptr_to_uint32 = htonl(strlen(bad_protocol)); + strcpy(&(message_buffer[8]), bad_protocol); + + if (send(client_sock, message_buffer, 8 + strlen(bad_protocol), 0) != (8 + strlen(bad_protocol))) + { + diag_printf("Call to send() failed\n"); + } + + goto close_connection; + } + + else + { + /* ProtocolVerion is not okay - connect with no authentication*/ + + /* Generate the No Authentication message */ + ptr_to_uint32 = (cyg_uint32 *) &(message_buffer[0]); + *ptr_to_uint32 = htonl((cyg_uint32)1); + + if (send(client_sock, message_buffer, 4, 0) != 4) + { + diag_printf("Call to send() failed\n"); + goto close_connection; + } + } + + /* + Authentication - end + */ + + + /* + ClientInitialisation - begin + */ + + /* Receive initialisation message from client (1 byte) */ + if (GetMessageData(client_sock, &(message_buffer[0]), 1) == 0) + { + goto close_connection; + } + + /* Do nothing with this as we only support 1 Client at a time */ + + /* + ClientInitialisation - end + */ + + + /* + ServerInitialisation - begin + */ + + /* Create Initialisation message for client */ + ptr_to_uint16 = (cyg_uint16 *) &(message_buffer[0]); + *ptr_to_uint16 = htons((cyg_uint16)CYGNUM_VNC_SERVER_FRAME_WIDTH); + + ptr_to_uint16 = (cyg_uint16 *) &(message_buffer[2]); + *ptr_to_uint16 = htons((cyg_uint16)CYGNUM_VNC_SERVER_FRAME_HEIGHT); + + message_buffer[4] = (cyg_uint8)BITS_PER_PIXEL; + message_buffer[5] = (cyg_uint8)PIXEL_DEPTH; + message_buffer[6] = (cyg_uint8)REQUESTED_BIG_ENDIAN_FLAG; + message_buffer[7] = (cyg_uint8)TRUE_COLOUR_FLAG; + + ptr_to_uint16 = (cyg_uint16 *) &(message_buffer[8]); + *ptr_to_uint16 = htons((cyg_uint16)RED_MAX); + + ptr_to_uint16 = (cyg_uint16 *) &(message_buffer[10]); + *ptr_to_uint16 = htons((cyg_uint16)GREEN_MAX); + + ptr_to_uint16 = (cyg_uint16 *) &(message_buffer[12]); + *ptr_to_uint16 = htons((cyg_uint16)BLUE_MAX); + + message_buffer[14] = (cyg_uint8)RED_SHIFT; + message_buffer[15] = (cyg_uint8)GREEN_SHIFT; + message_buffer[16] = (cyg_uint8)BLUE_SHIFT; + + ptr_to_uint32 = (cyg_uint32 *) &(message_buffer[20]); + *ptr_to_uint32 = htonl(strlen(desktop_name)); + strcpy(&(message_buffer[24]), desktop_name); + + if (send(client_sock, message_buffer, 24 + strlen(desktop_name), 0) != (24 + strlen(desktop_name))) + { + diag_printf("Call to send() failed\n"); + } + + /* + ServerInitialisation - end + */ + + /* Cancel any outstanding Sound Bell requests */ + cyg_mutex_lock(&SoundBell_lock); + SoundBellCount = 0; + cyg_mutex_unlock(&SoundBell_lock); + + diag_printf("VNC client connected (RFB Protocol Ver: %s)\n", protocol_ver); + + /* Main message handling loop */ + while(1) + { + int num_of_encodings; + + /* Receive 1st byte of message from client */ + if (GetMessageData(client_sock, &(message_buffer[0]), 1) == 0) + { + goto close_connection; + } + + switch(message_buffer[0]) + { + case SET_PIXEL_FORMAT: + + /* Get the remainder (19 bytes) of message */ + if (GetMessageData(client_sock, &(message_buffer[1]), 19) == 0) + { + goto close_connection; + } + + /* Check pixel format is as expected */ + i = 0; + if (message_buffer[4] != BITS_PER_PIXEL) + { + diag_printf("SetPixelFormat message from client has incompatible bits-per-pixel field:\n"); + diag_printf(" Expected: %d - Got: %d\n", BITS_PER_PIXEL, message_buffer[4]); + i++; + } + + if (message_buffer[5] != PIXEL_DEPTH) + { + diag_printf("SetPixelFormat message from client has incompatible pixel-depth field:\n"); + diag_printf(" Expected: %d - Got: %d\n", PIXEL_DEPTH, message_buffer[5]); + i++; + } + + if (message_buffer[7] != TRUE_COLOUR_FLAG) + { + diag_printf("SetPixelFormat message from client has incompatible true-colour-flag field:\n"); + diag_printf(" Expected: %d - Got: %d\n", TRUE_COLOUR_FLAG, message_buffer[7]); + i++; + } + + ptr_to_uint16 = (cyg_uint16 *)&(message_buffer[8]); + if (htons(*ptr_to_uint16) != RED_MAX) + { + diag_printf("SetPixelFormat message from client has incompatible red-max field:\n"); + diag_printf(" Expected: %d - Got: %d\n", RED_MAX, htons(*ptr_to_uint16)); + i++; + } + + ptr_to_uint16 = (cyg_uint16 *)&(message_buffer[10]); + if (htons(*ptr_to_uint16) != GREEN_MAX) + { + diag_printf("SetPixelFormat message from client has incompatible green-max field:\n"); + diag_printf(" Expected: %d - Got: %d\n", GREEN_MAX, htons(*ptr_to_uint16)); + i++; + } + + ptr_to_uint16 = (cyg_uint16 *)&(message_buffer[12]); + if (htons(*ptr_to_uint16) != BLUE_MAX) + { + diag_printf("SetPixelFormat message from client has incompatible blue-max field:\n"); + diag_printf(" Expected: %d - Got: %d\n", BLUE_MAX, htons(*ptr_to_uint16)); + i++; + } + + if (message_buffer[14] != RED_SHIFT) + { + diag_printf("SetPixelFormat message from client has incompatible red-shift field:\n"); + diag_printf(" Expected: %d - Got: %d\n", RED_SHIFT, message_buffer[14]); + i++; + } + + if (message_buffer[15] != GREEN_SHIFT) + { + diag_printf("SetPixelFormat message from client has incompatible green-shift field:\n"); + diag_printf(" Expected: %d - Got: %d\n", GREEN_SHIFT, message_buffer[15]); + i++; + } + + if (message_buffer[16] != BLUE_SHIFT) + { + diag_printf("SetPixelFormat message from client has incompatible blue-shift field:\n"); + diag_printf(" Expected: %d - Got: %d\n", BLUE_SHIFT, message_buffer[16]); + i++; + } + + if (i) + { + diag_printf("Disconnecting from client\n"); + diag_printf("Please ensure the 'Auto select' is not enabled in your vncviewer options,\n"); + diag_printf("then try connecting again.\n"); + goto close_connection_quietly; + } + + if ( (message_buffer[6] && !REQUESTED_BIG_ENDIAN_FLAG) + || (!message_buffer[6] && REQUESTED_BIG_ENDIAN_FLAG) ) + { + /* Colour values are stored in a different endianess */ + clr_byte0_shift = 8; + clr_byte1_shift = 0; + } + else + { + /* Colour values are stored in the same endianess */ + clr_byte0_shift = 0; + clr_byte1_shift = 8; + } + + break; + + case FIX_COLOUR_MAP_ENTRIES: + /* Not supported, just get the data from the buffer and ignore it */ + + /* Get the next 5 bytes of message */ + if (GetMessageData(client_sock, &(message_buffer[1]), 5) == 0) + { + goto close_connection; + } + + /* Calculate how many colour entries are in the buffer */ + i = message_buffer[4]*255 + message_buffer[5]; + i *= 6; + + /* Get this amount of data from the buffer */ + for (j = 0; j < i; j++) + { + if (GetMessageData(client_sock, &(message_buffer[6]), 6) == 0) + { + goto close_connection; + } + } + + break; + + case SET_ENCODINGS: + /* Get the next 3 bytes of message */ + if (GetMessageData(client_sock, &(message_buffer[1]), 3) == 0) + { + goto close_connection; + } + + num_of_encodings = message_buffer[2]*255 + message_buffer[3]; + + /* Get the remainder of message */ + if (GetMessageData(client_sock, &(message_buffer[0]), 4 * num_of_encodings) == 0) + { + goto close_connection; + } + + /* Clear the encoding type structure */ + encoding_type.raw = 0; + encoding_type.copy_rectangle = 0; + encoding_type.rre = 0; + encoding_type.corre = 0; + encoding_type.hextile = 0; + + for (i = 0; i < num_of_encodings; i++) + { + switch(message_buffer[3 + (i*4)]) + { + case 0: /* Raw encoding */ + encoding_type.raw = i + 1; + break; + case 1: /* Copy rectangle encoding */ + encoding_type.copy_rectangle = i + 1; + break; + case 2: /* RRE encoding */ + encoding_type.rre = i + 1; + break; + case 4: /* CoRRE encoding */ + encoding_type.corre = i + 1; + break; + case 5: /* Hextile encoding */ + encoding_type.hextile = i + 1; + break; + default: /* Unknown coding type - do nothing */ + break; + } + } + + if (!encoding_type.corre) + { + diag_printf("Warning: SetEncoding message from client does not support CoRRE Encoding\n"); + diag_printf("Raw encoding will be used instead\n"); + } + + break; + + case FRAME_BUFFER_UPDATE_REQ: + /* Get the remainder of message (9 bytes) */ + if (GetMessageData(client_sock, &(message_buffer[1]), 9) == 0) + { + goto close_connection; + } + + if (!message_buffer[1]) + { + /* Non-incremental mode - mark the squares that need to be updated */ + for (i = (message_buffer[2]*255 + message_buffer[3])/TILE_SIZE; + i <= (message_buffer[2]*255 + message_buffer[3] + message_buffer[6]*255 + message_buffer[7])/TILE_SIZE; + i++) + { + for (j = (message_buffer[4]*255 + message_buffer[5])/TILE_SIZE; + j <= (message_buffer[4]*255 + message_buffer[5] + message_buffer[8]*255 + message_buffer[9])/TILE_SIZE; + j++) + { + tile_updated[j][i] = 1; + } + } + } + + /* Signal that there is now a pending update request */ + cyg_mutex_lock(&client_active_lock); + update_req = 1; + cyg_cond_signal(&client_active_wait); + cyg_mutex_unlock(&client_active_lock); + + break; + + case KEY_EVENT: + /* Handle the key event */ + /* Get the remainder of message (7 bytes) */ + if (GetMessageData(client_sock, &(message_buffer[1]), 7) == 0) + { + goto close_connection; + } + +#ifdef CYGPKG_VNC_SERVER_BUILD_KEYBOARD_DRIVER + /* Call the keyboard handle function */ + vnc_kbd_handler(&(message_buffer[0])); +#endif + break; + + case POINTER_EVENT: + /* Handle the pointer event */ + /* Get the remainder of message (5 bytes) */ + if (GetMessageData(client_sock, &(message_buffer[1]), 5) == 0) + { + goto close_connection; + } + /* Button mask: message_buffer[1] */ + /* X-position: message_buffer[2]*255 + message_buffer[3] */ + /* Y-position: message_buffer[4]*255 + message_buffer[5] */ + +#ifdef CYGPKG_VNC_SERVER_BUILD_MOUSE_DRIVER + /* Called the mouse handler function */ + vnc_mouse_handler(&(message_buffer[0])); +#endif + break; + + case CLIENT_CUT_TEXT: + /* Handle the client has cut text event */ + /* Current we just get and discard the data */ + /* In future it might be nice to expand the API to */ + /* allow this data to be passed to the application */ + + /* Get the next 7 bytes of the message */ + if (GetMessageData(client_sock, &(message_buffer[1]), 7) == 0) + { + goto close_connection; + } + + ptr_to_uint32 = (cyg_uint32 *)&(message_buffer[4]); + temp_long = htonl(*ptr_to_uint32); + + while (temp_long > 0) + { + /* Get the text in chunks MESSAGE_BUFFER_SIZE-1 characters */ + if (temp_long > MESSAGE_BUFFER_SIZE-2) + { + if (GetMessageData(client_sock, &(message_buffer[0]), MESSAGE_BUFFER_SIZE-1) == 0) + { + goto close_connection; + } + + message_buffer[MESSAGE_BUFFER_SIZE-1] = 0; + temp_long -= (MESSAGE_BUFFER_SIZE-1); + } + else + { + if (GetMessageData(client_sock, &(message_buffer[0]), temp_long) == 0) + { + goto close_connection; + } + + message_buffer[temp_long] = 0; + temp_long = 0; + } + } + + break; + + default: + diag_printf("Unknown message from client\n"); + } + } + + close_connection: + diag_printf("VNC client disconnected\n"); + + close_connection_quietly: + + /* Cancel any outstanding update requests */ + cyg_mutex_lock(&client_active_lock); + update_req = 0; + cyg_mutex_unlock(&client_active_lock); + + close(client_sock); + } +} + + +/*****************************************************************************/ +/** Frame update thread. + * + * @param data Ignored + * + * This thread handles the sending of all frame update data to the client and + * sends the 'ring bell' message to the client when required. + * + *****************************************************************************/ +#ifdef CYGPKG_NET +void frame_update(cyg_addrword_t data) +#else +static void frame_update(void *data) +#endif +{ + int i, j; + int x_pos, y_pos; + int packet_length; + int num_updated_tiles; + cyg_uint16 *ptr_to_uint16; + static long rtc_resolution[] = CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION; + + /* These are declared static so they don't use thread stack memory */ + static cyg_uint8 FramebufferUpdate_msg[4 + 12 + TILE_SIZE*TILE_SIZE*BITS_PER_PIXEL/8]; + static int tile_updated_local[NUM_TILES_Y_AXIS][NUM_TILES_X_AXIS]; + + while(1) + { + /* Wait until client sends a frame update request */ + wait_for_client: + cyg_mutex_lock(&client_active_lock); /* Lock the mutex */ + while( update_req == 0 ) /* Wait until the client is active */ + { + cyg_cond_wait(&client_active_wait); + } + + cyg_mutex_unlock(&client_active_lock); + + /* Copy tile_updated array to local version and clear copied tiles */ + cyg_scheduler_lock(); + num_updated_tiles = 0; + for (i = 0; i < NUM_TILES_Y_AXIS; i++) + { + for (j = 0; j < NUM_TILES_X_AXIS; j++) + { + if (tile_updated[i][j]) + { + tile_updated_local[i][j] = 1; + tile_updated[i][j] = 0; + num_updated_tiles++; /* Keep count of the updated tiles */ + } + } + } + + cyg_scheduler_unlock(); + + if (num_updated_tiles) + { + /* Fill in constant parts of FramebufferUpdate Message */ + FramebufferUpdate_msg[0] = 0; /* Message-type */ + FramebufferUpdate_msg[1] = 0; /* Padding */ + ptr_to_uint16 = (cyg_uint16 *) &(FramebufferUpdate_msg[2]); + *ptr_to_uint16 = htons(num_updated_tiles); /* Number-of-rectangles */ + + /* Send the first 4 bytes of the frame update message to the client */ + if (send(client_sock, FramebufferUpdate_msg, 4, 0) != 4) + { + goto wait_for_client; + } + + for (y_pos = 0; y_pos < NUM_TILES_Y_AXIS; y_pos++) + { + for (x_pos = 0; x_pos < NUM_TILES_X_AXIS; x_pos++) + { + if (tile_updated_local[y_pos][x_pos]) + { + if (update_req) + { + cyg_mutex_lock(&client_active_lock); /* Lock the mutex */ + update_req = 0; /* Cancel the update request flag */ + cyg_mutex_unlock(&client_active_lock); /* Unlock the mutex */ + } + + /* Send current square data to client */ + ptr_to_uint16 = (cyg_uint16 *) &(FramebufferUpdate_msg[4-4]); + *ptr_to_uint16 = htons(x_pos * TILE_SIZE); /* x-position */ + ptr_to_uint16 = (cyg_uint16 *) &(FramebufferUpdate_msg[6-4]); + *ptr_to_uint16 = htons(y_pos * TILE_SIZE); /* y-position */ + + /* Set width of tile in packet */ + ptr_to_uint16 = (cyg_uint16 *) &(FramebufferUpdate_msg[8-4]); + if (x_pos == (NUM_TILES_X_AXIS -1)) + { + /* Last tile in X-axis */ + *ptr_to_uint16 = htons(LAST_TILE_WIDTH); /* Width */ + } + else + { + *ptr_to_uint16 = htons(TILE_SIZE); /* Width */ + } + + ptr_to_uint16 = (cyg_uint16 *) &(FramebufferUpdate_msg[10-4]); + if (y_pos == (NUM_TILES_Y_AXIS -1)) + { + /* Last tile in Y-axis */ + *ptr_to_uint16 = htons(LAST_TILE_HEIGHT); /* Height */ + } + else + { + *ptr_to_uint16 = htons(TILE_SIZE); /* Height */ + } + + /* Generate the packet data for this tile */ + packet_length = GenTileUpdateData(FramebufferUpdate_msg); + + /* Send the packet data for this tile to the client */ + if (send(client_sock, FramebufferUpdate_msg, packet_length, 0) != packet_length) + { + goto wait_for_client; + } + + tile_updated_local[y_pos][x_pos] = 0; /* Clear the update bit for this square */ + } + } + } + } + else /* if (num_updated_tiles) */ + { + /* There was no new display data to send to the client */ + /* Sleep for 1/20th second before checking again */ + cyg_thread_delay(rtc_resolution[1]/20); + } + + /* Check for sound bell event */ + cyg_mutex_lock(&SoundBell_lock); + if (SoundBellCount) + { + --SoundBellCount; + cyg_mutex_unlock(&SoundBell_lock); + + if (send(client_sock, sound_bell, 1, 0) != 1) + { + goto wait_for_client; + } + } + else + { + cyg_mutex_unlock(&SoundBell_lock); + } + } +} + + +/*****************************************************************************/ +/** Generate tile update data function + * + * @param *packet_buffer Buffer to store tile data + * + * @return Length of generated data in bytes + * + * This function is called by the frame_update thread to generate the message + * data for a tile to send to the client. This function expects the + * x-position, y-position, width and height fields of the buffer to be filled + * in before it is called. + * + * The format of the buffer is: + * packet_buffer[0:1] - x-position of tile + * packet_buffer[2:3] - y-position of tile + * packet_buffer[4:5] - width of tile + * packet_buffer[6:7] - height of tile + * packet_buffer[8 onwards] - Pixel data for the tile + * + * The pixel data will be encoded with CoRRE encoding (if the CDL option is + * enabled and the client can handle it) or RAW encoding if that is smaller + * than CoRRE encoding for that particular tile. + * + *****************************************************************************/ +static int GenTileUpdateData(cyg_uint8 *packet_buffer) +{ + cyg_uint16 *ptr_to_uint16; + cyg_uint32 *ptr_to_uint32; + cyg_uint16 x_pos, y_pos; + int i, j; + int packet_length; + int tile_width, tile_height; + +#ifdef CYGNUM_VNC_SERVER_USE_CORRE_ENCODING + static vnc_colour_t tile_buffer[TILE_SIZE][TILE_SIZE]; /* Buffer to hold tile to be encoded */ + vnc_colour_t pixel_colour; + vnc_colour_t bg_colour; + int no_of_subrects, subrect_width, subrect_height; + int k, l; + + no_of_subrects = 0; /* Set to no sub-rectangles to start with */ +#endif //CYGNUM_VNC_SERVER_USE_CORRE_ENCODING + + packet_length = 20-4+(BITS_PER_PIXEL/8); /* Set to minimum packet length to start with */ + + /* Get the X and Y positions of this tile from the packet buffer */ + ptr_to_uint16 = (cyg_uint16 *) &(packet_buffer[4-4]); + x_pos = htons(*ptr_to_uint16); + ptr_to_uint16 = (cyg_uint16 *) &(packet_buffer[6-4]); + y_pos = htons(*ptr_to_uint16); + + /* Get the tile width and height from the packet buffer */ + ptr_to_uint16 = (cyg_uint16 *) &(packet_buffer[8-4]); + tile_width = htons(*ptr_to_uint16); + ptr_to_uint16 = (cyg_uint16 *) &(packet_buffer[10-4]); + tile_height = htons(*ptr_to_uint16); + +#ifdef CYGNUM_VNC_SERVER_USE_CORRE_ENCODING + /* Set the encoding type to RRE */ + if (!encoding_type.corre) + { + /* CoRRE encoding is not supported - just use raw encoding */ + goto use_raw_encoding; + } + + /* Set encoding type to CoRRE encoding in packet buffer */ + ptr_to_uint32 = (cyg_uint32 *) &(packet_buffer[12-4]); + *ptr_to_uint32 = htonl(4); /* Encoding-type = CoRRE encoding */ + + /* Copy tile from the main frame buffer to the local tile buffer */ + for (i = 0; i < tile_height; i++) + { + for (j = 0; j < tile_width; j++) + { + tile_buffer[i][j] = frame_buffer[y_pos + i][x_pos + j]; + } + } + + /* Find the background colour */ + /* We just assume the (0, 0) pixel in the tile is the bgcolour */ + /* Its quick!!! */ + bg_colour = frame_buffer[y_pos][x_pos]; + + /* Set the background colour in the packet buffer */ +#if BITS_PER_PIXEL == 8 + packet_buffer[20-4] = (vnc_colour_t) bg_colour; +#endif +#if BITS_PER_PIXEL == 16 + packet_buffer[20-4] = COLOUR2BYTE0(bg_colour); + packet_buffer[20-4+1] = COLOUR2BYTE1(bg_colour); +#endif + +#ifdef CYGNUM_VNC_SERVER_CORRE_ENCODING_HACK + /* Add an initial sub-rectangle to paint the background the background colour */ + /* This is required because of a known bug in the VNC viewer (x86 version) */ +#if BITS_PER_PIXEL == 8 + packet_buffer[packet_length] = (vnc_colour_t) bg_colour; + packet_length++; +#endif +#if BITS_PER_PIXEL == 16 + packet_buffer[packet_length] = packet_buffer[20-4]; + packet_buffer[packet_length+1] = packet_buffer[20-4+1]; + packet_length += 2; +#endif + packet_buffer[packet_length] = (cyg_uint8) 0; /* Sub-rect x-pos */ + packet_buffer[packet_length+1] = (cyg_uint8) 0; /* Sub-rect y-pos*/ + packet_buffer[packet_length+2] = (cyg_uint8) tile_width; /* Sub-rect width*/ + packet_buffer[packet_length+3] = (cyg_uint8) tile_height; /* Sub-rect height*/ + packet_length += 4; + no_of_subrects++; /* Increment sub-rectangle count */ +#endif + + /* Scan trough tile and find sub-rectangles */ + for (i = 0; i < tile_height; i++) + { + for (j = 0; j < tile_width; j++) + { + if (tile_buffer[i][j] != bg_colour) + { + /* This is a non-background pixel */ + subrect_width = 1; + pixel_colour = tile_buffer[i][j]; + + /* Extend the sub-rectangle to its maximum width */ + for (subrect_width = 1; subrect_width <= tile_width-j-1; subrect_width++) + { + if (tile_buffer[i][j+subrect_width] != pixel_colour) + { + goto got_subrect_width; + } + } + + got_subrect_width: + + /* Extend the sub-rectangle to its maximum height */ + for (subrect_height=1; subrect_height <= tile_height-i-1; subrect_height++) + { + for (k = j; k < j+subrect_width; k++) + { + if (tile_buffer[i+subrect_height][k] != pixel_colour) + { + goto got_subrect_height; + } + } + } + + got_subrect_height: + + /* Delete the pixels for the sub-rectangle from the sub-rectangle */ + for (k = i; k < i+subrect_height; k++) + { + for (l = j; l < j+subrect_width; l++) + { + tile_buffer[k][l] = bg_colour; + } + } + + /* Append new sub-rectangle data to the packet buffer */ +#if BITS_PER_PIXEL == 8 + packet_buffer[packet_length] = (vnc_colour_t) pixel_colour; + packet_length++; +#endif +#if BITS_PER_PIXEL == 16 + packet_buffer[packet_length] = COLOUR2BYTE0(pixel_colour); + packet_buffer[packet_length+1] = COLOUR2BYTE1(pixel_colour); + packet_length += 2; +#endif + + packet_buffer[packet_length] = (cyg_uint8) j; /* Sub-rect x-pos */ + packet_length++; + + packet_buffer[packet_length] = (cyg_uint8) i; /* Sub-rect y-pos*/ + packet_length++; + + packet_buffer[packet_length] = (cyg_uint8) subrect_width; /* Sub-rect width*/ + packet_length++; + + packet_buffer[packet_length] = (cyg_uint8) subrect_height; /* Sub-rect height*/ + packet_length++; + + no_of_subrects++; /* Increment sub-rectangle count */ + + if (packet_length >= 16-4 + tile_height*tile_width*(BITS_PER_PIXEL/8) - 6) + { + /* The next sub-rectangle will make the packet size */ + /* larger than a rew encoded packet - so just use raw */ + goto use_raw_encoding; + } + } + } + } + + /* Fill in no_of_sub-rectangles field in packet buffer */ + ptr_to_uint32 = (cyg_uint32 *) &(packet_buffer[16-4]); + *ptr_to_uint32 = htonl(no_of_subrects); + + /* CoRRE data encoding for tile complete */ + return packet_length; + + use_raw_encoding: +#endif //CYGNUM_VNC_SERVER_USE_CORRE_ENCODING + + /* Create packet data using RAW encoding */ + for (i = 0; i < tile_height; i++) + { + for (j = 0; j < tile_width; j++) + { +#if BITS_PER_PIXEL == 8 + packet_buffer[16-4 + tile_width * i + j] = frame_buffer[y_pos + i][x_pos + j]; +#endif +#if BITS_PER_PIXEL == 16 + packet_buffer[16-4 + 2 * tile_width * i + 2*j] = COLOUR2BYTE0(frame_buffer[y_pos + i][x_pos + j]); + packet_buffer[16-4 + 2 * tile_width * i + 2*j+ 1] = COLOUR2BYTE1(frame_buffer[y_pos + i][x_pos + j]); +#endif + } + } + + /* Set the encoding type to raw */ + ptr_to_uint32 = (cyg_uint32 *) &(packet_buffer[12-4]); + *ptr_to_uint32 = htonl(0); /* Encoding-type = raw */ + + return (16-4 + tile_width*tile_height*(BITS_PER_PIXEL/8)); +} + + +/*****************************************************************************/ +/** Get message data function + * + * @param socket_fd File descriptor of the socket to get the data from. + * @param *buffer Buffer to store received data in. + * @param num_bytes Number of bytes to attempt to get. + * + * @return 1 on sucessfull completion - 0 on error. + * + * This function is called by the client_handler thread to get data from the + * client's socket. + * + *****************************************************************************/ +static int GetMessageData(int socket_fd, char *buffer, int num_bytes) +{ + int bytes_rxd; + int message_len = 0; + + while (message_len < num_bytes) + { + if ((bytes_rxd = recv(socket_fd, buffer, num_bytes, 0)) <= 0) + { + return 0; + } + message_len += bytes_rxd; + } + + return 1; +} + + +/* Driver functions */ +vnc_frame_format_t* VncGetInfo(void) +{ + return &frame_format; +} + + +void VncInit(vnc_colour_t colour) +{ + /* Initialise the frame buffer */ + int i, j; + + for (i = 0; i < CYGNUM_VNC_SERVER_FRAME_HEIGHT; i++) + { + for (j = 0; j < CYGNUM_VNC_SERVER_FRAME_WIDTH; j++) + { + frame_buffer[i][j] = colour; + } + } + + for (i = 0; i < CYGNUM_VNC_SERVER_FRAME_HEIGHT/TILE_SIZE; i++) + { + for (j = 0; j < CYGNUM_VNC_SERVER_FRAME_WIDTH/TILE_SIZE; j++) + { + tile_updated[i][j] = 1; + } + } +} + + +void VncDrawPixel(cyg_uint16 x, cyg_uint16 y, vnc_colour_t colour) +{ + /* Set that pixel to 'colour' */ + frame_buffer[y][x] = colour; + + /* Mark the tile for update */ + tile_updated[y/TILE_SIZE][x/TILE_SIZE] = 1; +} + + +vnc_colour_t VncReadPixel(cyg_uint16 x, cyg_uint16 y) +{ + return frame_buffer[y][x]; +} + + +void VncDrawHorzLine(cyg_uint16 x1, cyg_uint16 x2, cyg_uint16 y, vnc_colour_t colour) +{ + int i; + + /* Draw the line */ + for (i = x1; i <= x2; i++) + { + + frame_buffer[y][i] = colour; + } + + /* Mark the tiles for update */ + for (i = x1/TILE_SIZE; i <= x2/TILE_SIZE; i++) + { + tile_updated[y/TILE_SIZE][i] = 1; + } +} + +void VncDrawVertLine(cyg_uint16 x, cyg_uint16 y1, cyg_uint16 y2, vnc_colour_t colour) +{ + int i; + + /* Draw the line */ + for (i = y1; i <= y2; i++) + { + frame_buffer[i][x] = colour; + } + + /* Mark the tiles for update */ + for (i = y1/TILE_SIZE; i <= y2/TILE_SIZE; i++) + { + tile_updated[i][x/TILE_SIZE] = 1; + } +} + + +void VncFillRect(cyg_uint16 x1, cyg_uint16 y1, cyg_uint16 x2, cyg_uint16 y2, vnc_colour_t colour) +{ + /* Draw a solid rectangle */ + int i, j; + + for (i = y1; i <= y2; i++) + { + for (j = x1; j <= x2; j++) + { + frame_buffer[i][j] = colour; + } + } + + for (i = y1/TILE_SIZE; i <= y2/TILE_SIZE; i++) + { + for (j = x1/TILE_SIZE; j <= x2/TILE_SIZE; j++) + { + tile_updated[i][j] = 1; + } + } +} + + +/* Copy rectangle of size widthxheight form (x1, y1) to (x2, y2) */ +void VncCopyRect(cyg_uint16 x1, cyg_uint16 y1, cyg_uint16 width, cyg_uint16 height, cyg_uint16 x2, cyg_uint16 y2) +{ + int i, j; + int xmove, ymove; + + /* Calulate how much to move the rectangle by */ + xmove = x2 - x1; + ymove = y2 - y1; + + if ((xmove == 0) && (ymove == 0)) + { + /* No move required */ + return; + } + + if (ymove < 0) + { + /* Copy pixels from top to bottom */ + if (x1 >= x2) + { + /* Copy pixels from left to right */ + for (i = y1; i < y1 + height; i++) + { + for (j = x1; j < x1 + width; j++) + { + frame_buffer[i + ymove][j + xmove] = frame_buffer[i][j]; + } + } + } + else + { + /* Copy pixels from right to left */ + for (i = y1; i < y1 + height; i++) + { + for (j = x1 + width - 1; j >= x1 ; j--) + { + frame_buffer[i + ymove][j + xmove] = frame_buffer[i][j]; + } + } + } + } + else + { + /* Copy pixels from bottom to top */ + if (xmove < 0) + { + /* Copy pixels from left to right */ + for (i = y1 + height - 1; i >= y1; i--) + { + for (j = x1; j < x1 + width; j++) + { + frame_buffer[i + ymove][j + xmove] = frame_buffer[i][j]; + } + } + } + else + { + /* Copy pixels from right to left */ + for (i = y1 + height - 1; i >= y1; i--) + { + for (j = x1 + width - 1; j >= x1 ; j--) + { + frame_buffer[i + ymove][j + xmove] = frame_buffer[i][j]; + } + } + } + + } + + /* Mark the required tiles for update */ + for (i = y2/TILE_SIZE; i <= (y2 + height - 1) /TILE_SIZE; i++) + { + for (j = x2/TILE_SIZE; j <= (x2 + width - 1)/TILE_SIZE; j++) + { + tile_updated[i][j] = 1; + } + } +} + + +/* Function to copy a rectangle from the frame buffer to a supplied buffer */ +void VncCopyRect2Buffer(cyg_uint16 x, cyg_uint16 y, cyg_uint16 width, cyg_uint16 height, + void *buffer, cyg_uint16 buff_w, cyg_uint16 buff_h, cyg_uint16 x_off, cyg_uint16 y_off) +{ + int i, j; + cyg_uint16 eol_padding = buff_w - width - x_off; + +#if (BITS_PER_PIXEL == 8) + cyg_uint8 *dst_buffer; + dst_buffer = (cyg_uint8 *)buffer; +#else + cyg_uint16 *dst_buffer; + dst_buffer = (cyg_uint16 *)buffer; +#endif + + dst_buffer += ((x_off + width) * y_off); /* Allow for a y offset into supplied buffer */ + for (i = y; i < y + height; i++) + { + dst_buffer += x_off; /* Allow for an x offset into supplied buffer */ + for (j = x; j < x + width; j++) + { + /* Copy each pixel in the rectangle to the supplied buffer */ + *dst_buffer = frame_buffer[i][j]; + dst_buffer++; + } + + dst_buffer += eol_padding; /* Allow for unused space at the end of each line */ + } +} + + +/* Function to copy data from a supplied buffer to a rectangle in the frame buffer */ +void VncCopyBuffer2Rect( void *buffer, cyg_uint16 buff_w, cyg_uint16 buff_h ,cyg_uint16 x_off, cyg_uint16 y_off, + cyg_uint16 x, cyg_uint16 y, cyg_uint16 width, cyg_uint16 height) +{ + int i, j; + cyg_uint16 eol_padding = buff_w - width - x_off; + +#if (BITS_PER_PIXEL == 8) + cyg_uint8 *src_buffer = (cyg_uint8 *)buffer; +#else + cyg_uint16 *src_buffer = (cyg_uint16 *)buffer; +#endif + + src_buffer += ((x_off + width) * y_off); /* Allow for a y offset into supplied buffer */ + for (i = y; i < y + height; i++) + { + src_buffer += x_off; /* Allow for an x offset into supplied buffer */ + for (j = x; j < x + width; j++) + { + /* Copy each pixel in the rectangle to the supplied buffer */ + frame_buffer[i][j] = *src_buffer; + src_buffer++; + } + + src_buffer += eol_padding; /* Allow for unused space at the end of each line */ + } + + /* Mark the required tiles for update */ + for (i = y/TILE_SIZE; i <= (y + height - 1) /TILE_SIZE; i++) + { + for (j = x/TILE_SIZE; j <= (x + width - 1)/TILE_SIZE; j++) + { + tile_updated[i][j] = 1; + } + } +} + + +void VncSoundBell(void) +{ + cyg_mutex_lock(&SoundBell_lock); + SoundBellCount++; + cyg_mutex_unlock(&SoundBell_lock); +} + + +#ifdef CYGNUM_VNC_SERVER_INCLUDE_VNC_PRINTF + +vnc_printf_return_t VncPrintf(MWCFONT* font, int do_print, vnc_colour_t colour, int x, int y, const char *fmt, ... ) +{ + va_list args; + static char buf[200]; + int x_pos, x_max, y_pos, y_max, char_pos; + int char_offset, char_width; + int ret, i, j; + MWCFONT* sel_font; + vnc_printf_return_t ret_vals; + + cyg_scheduler_lock(); /* Prevent other threads from running */ + + va_start(args, fmt); + ret = diag_vsprintf(buf, fmt, args); + va_end(args); + + if (ret <= 0) + { + /* sprintf failed */ + ret_vals.width = 0; + ret_vals.height = 0; + return ret_vals; + } + + x_pos = x; /* Initial print positions */ + x_max = x_pos; + y_pos = y; + y_max = y_pos; + char_pos = 0; + + if (font == NULL) + { + /* No font specified - use default font */ + sel_font = &font_winFreeSystem14x16; + } + else + { + /* Font has been specified */ + sel_font = font; + } + + while (buf[char_pos] != 0) + { + /* Check for '\n' character */ + if (buf[char_pos] == '\n') + { + x_pos = x; + y_pos += sel_font->height; + char_pos++; + continue; + } + + char_offset = ((cyg_uint8) buf[char_pos]) - sel_font->firstchar; + + /* Get the character width */ + if (sel_font->width != 0) + { + char_width = sel_font->width[char_offset]; + } + else + { + char_width = sel_font->maxwidth; + } + + if (sel_font->offset != 0) + { + char_offset = sel_font->offset[char_offset]; + } + else + { + char_offset *= sel_font->height; + } + + y_max = y_pos; + + /* Draw the character in the frame buffer */ + for (i = char_offset; i < (char_offset + sel_font->height); i++) + { + if ((y_pos + i - char_offset) < CYGNUM_VNC_SERVER_FRAME_HEIGHT) + { + if (do_print) + { + /* Actually print the text */ + /* This has not gone off the bottom of the frame */ + for (j = 0; j < char_width; j++) + { + if ((x_pos + j) < CYGNUM_VNC_SERVER_FRAME_WIDTH) + { + /* This has not gone off the right edge of the frame */ + if (sel_font->bits[i] & (0x8000 >> j)) + { + /* This pixel should be drawn */ + frame_buffer[y_pos + i - char_offset][x_pos + j] = colour; + } + } + } + } + } + } + + x_pos += char_width; + if (x_pos > x_max) + { + x_max = x_pos; + } + + char_pos++; + } + + /* Mark the required tiles for update */ + for (i = y/TILE_SIZE; i <= (y_max + sel_font->height)/TILE_SIZE; i++) + { + for (j = x/TILE_SIZE; j <= x_max/TILE_SIZE; j++) + { + tile_updated[i][j] = 1; + } + } + + ret_vals.width = x_max - x; + ret_vals.height = y_max + sel_font->height - y; + + cyg_scheduler_unlock(); /* Allow other threads to run */ + + return ret_vals; +} +#endif diff --git a/packages/net/vnc_server/current/src/vnc_kbd.c b/packages/net/vnc_server/current/src/vnc_kbd.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/vnc_kbd.c @@ -0,0 +1,258 @@ +//========================================================================== +// +// vnc_kbd.c +// +// +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +//#####DESCRIPTIONBEGIN#### +// +// Author(s): Chris Garry +// Contributors: +// Date: 2003-08-22 +// Purpose: +// Description: Keyboard driver for the VNC serevr +// +//####DESCRIPTIONEND#### +// +//========================================================================*/ + + +#include +#include /* diag_printf */ +#include +#include +#include +#include +#include +#include +#include // For select() functionality +#include +#include + +/* Local function prototypes */ +static Cyg_ErrNo kbd_read(cyg_io_handle_t handle, + void *buffer, + cyg_uint32 *len); +static cyg_bool kbd_select(cyg_io_handle_t handle, + cyg_uint32 which, + cyg_addrword_t info); +static Cyg_ErrNo kbd_set_config(cyg_io_handle_t handle, + cyg_uint32 key, + const void *buffer, + cyg_uint32 *len); +static Cyg_ErrNo kbd_get_config(cyg_io_handle_t handle, + cyg_uint32 key, + void *buffer, + cyg_uint32 *len); +static bool kbd_init(struct cyg_devtab_entry *tab); +static Cyg_ErrNo kbd_lookup(struct cyg_devtab_entry **tab, + struct cyg_devtab_entry *st, + const char *name); + +CHAR_DEVIO_TABLE(vnc_kbd_handlers, + NULL, /* Unsupported write() function */ + kbd_read, + kbd_select, + kbd_get_config, + kbd_set_config); + +CHAR_DEVTAB_ENTRY(vnc_kbd_device, + CYGDAT_VNC_SERVER_KEYBOARD_NAME, + NULL, /* Base device name */ + &vnc_kbd_handlers, + kbd_init, + kbd_lookup, + NULL); /* Private data pointer */ + +#define MAX_EVENTS CYGNUM_VNC_SERVER_KEYBOARD_EVENTS +static cyg_uint8 data_queue[MAX_EVENTS*4]; +static int queue_put_ptr = 0; +static int queue_get_ptr = 0; +static int data_in_queue = 0; + +static cyg_selinfo kbd_select_info; +static cyg_bool kbd_select_active; +static int kbd_active = 0; + + +/* + * Keystroke event handler routine - called by main VNC server loop + * when new keystroke data is received from client + */ +void vnc_kbd_handler(cyg_uint8 *data) +{ + if (!kbd_active) + { + /* Keyboard is not active yet - ignore incoming data */ + return; + } + + /* Add the keystroke event data to the data queue */ + cyg_scheduler_lock(); + + if (data_in_queue >= (MAX_EVENTS*4)) + { + diag_printf("VNC mouse driver buffer overflow\n"); + cyg_scheduler_unlock(); + return; + } + + data_queue[queue_put_ptr] = 0; /* Padding */ + data_queue[queue_put_ptr+1] = data[1]; /* Key pressed (1 when pressed) */ + data_queue[queue_put_ptr+2] = data[6]; /* Keysym value for key MSB */ + data_queue[queue_put_ptr+3] = data[7]; /* Keysym value for key LSB */ + + /* Increment pointer */ + queue_put_ptr +=4; + if (queue_put_ptr >= (MAX_EVENTS*4)) + { + queue_put_ptr = 0; + } + + /* Increment count of data in queue */ + data_in_queue += 4; + + /* Wake up select() */ + if (kbd_select_active) { + kbd_select_active = false; + cyg_selwakeup(&kbd_select_info); + } + + cyg_scheduler_unlock(); +} + + +static Cyg_ErrNo kbd_read(cyg_io_handle_t handle, + void *buffer, + cyg_uint32 *len) +{ + int total; /* Total bytes to read */ + cyg_uint8 *bp = (unsigned char *)buffer; + int i; + + cyg_scheduler_lock(); + + /* Each keystroke event generates 4 x cyg_uint8 values in the queue + * 0: Padding - always zero + * 1: Key pressed (1 when key is pressed) + * 2: Keysym value MSB + * 3: Keysym value LSB + */ + if (*len <= data_in_queue) + { + /* Send all requested data */ + total = *len; + } + else + { + /* read() is requesting more data than there is in the queue */ + /* Send all data from the queue */ + total = data_in_queue; + } + + for (i = 0; i < total; i++) + { + bp[i] = data_queue[queue_get_ptr]; + if (++queue_get_ptr >= (MAX_EVENTS*4)) + { + queue_get_ptr = 0; + } + } + + data_in_queue -= total; + + cyg_scheduler_unlock(); + + *len = total; + return ENOERR; +} + + +static cyg_bool kbd_select(cyg_io_handle_t handle, + cyg_uint32 which, + cyg_addrword_t info) +{ + if (which == CYG_FREAD) { + cyg_scheduler_lock(); + if (data_in_queue >= 4) { + cyg_scheduler_unlock(); + return true; + } + + if (!kbd_select_active) { + kbd_select_active = true; + cyg_selrecord(info, &kbd_select_info); + } + + cyg_scheduler_unlock(); + } + return false; +} + + +static Cyg_ErrNo kbd_set_config(cyg_io_handle_t handle, + cyg_uint32 key, + const void *buffer, + cyg_uint32 *len) +{ + return EINVAL; +} + + +static Cyg_ErrNo kbd_get_config(cyg_io_handle_t handle, + cyg_uint32 key, + void *buffer, + cyg_uint32 *len) +{ + return EINVAL; +} + + +static bool kbd_init(struct cyg_devtab_entry *tab) +{ + cyg_selinit(&kbd_select_info); + return true; +} + + +static Cyg_ErrNo kbd_lookup(struct cyg_devtab_entry **tab, + struct cyg_devtab_entry *st, + const char *name) +{ + kbd_active = 1; + return ENOERR; +} diff --git a/packages/net/vnc_server/current/src/vnc_mouse.c b/packages/net/vnc_server/current/src/vnc_mouse.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/src/vnc_mouse.c @@ -0,0 +1,262 @@ +//========================================================================== +// +// vnc_mouse.c +// +// +// +//========================================================================== +//####ECOSGPLCOPYRIGHTBEGIN#### +// ------------------------------------------- +// This file is part of eCos, the Embedded Configurable Operating System. +// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc. +// +// eCos is free software; you can redistribute it and/or modify it under +// the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2 or (at your option) any later version. +// +// eCos is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +// for more details. +// +// You should have received a copy of the GNU General Public License along +// with eCos; if not, write to the Free Software Foundation, Inc., +// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +// +// As a special exception, if other files instantiate templates or use macros +// or inline functions from this file, or you compile this file and link it +// with other works to produce a work based on this file, this file does not +// by itself cause the resulting work to be covered by the GNU General Public +// License. However the source code for this file must still be made available +// in accordance with section (3) of the GNU General Public License. +// +// This exception does not invalidate any other reasons why a work based on +// this file might be covered by the GNU General Public License. +// +// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. +// at http://sources.redhat.com/ecos/ecos-license/ +// ------------------------------------------- +//####ECOSGPLCOPYRIGHTEND#### +//========================================================================== +//#####DESCRIPTIONBEGIN#### +// +// Author(s): Chris Garry +// Contributors: +// Date: 2003-08-22 +// Purpose: +// Description: mouse driver for the VNC serevr +// +//####DESCRIPTIONEND#### +// +//========================================================================*/ + +#include +#include /* diag_printf */ +#include +#include +#include +#include +#include +#include +#include /*select() functionality */ +#include +#include + +/* Local function prototypes */ +static Cyg_ErrNo mouse_read(cyg_io_handle_t handle, + void *buffer, + cyg_uint32 *len); +static cyg_bool mouse_select(cyg_io_handle_t handle, + cyg_uint32 which, + cyg_addrword_t info); +static Cyg_ErrNo mouse_set_config(cyg_io_handle_t handle, + cyg_uint32 key, + const void *buffer, + cyg_uint32 *len); +static Cyg_ErrNo mouse_get_config(cyg_io_handle_t handle, + cyg_uint32 key, + void *buffer, + cyg_uint32 *len); +static bool mouse_init(struct cyg_devtab_entry *tab); +static Cyg_ErrNo mouse_lookup(struct cyg_devtab_entry **tab, + struct cyg_devtab_entry *st, + const char *name); + +CHAR_DEVIO_TABLE(vnc_mouse_handlers, + NULL, /* Unsupported write() function */ + mouse_read, + mouse_select, + mouse_get_config, + mouse_set_config); + +CHAR_DEVTAB_ENTRY(vnc_mouse_device, + CYGDAT_VNC_SERVER_MOUSE_NAME, + NULL, /* Base device name */ + &vnc_mouse_handlers, + mouse_init, + mouse_lookup, + NULL); /* Private data pointer */ + +#define MAX_EVENTS CYGNUM_VNC_SERVER_MOUSE_EVENTS +static cyg_uint8 data_queue[MAX_EVENTS*8]; +static int queue_put_ptr = 0; +static int queue_get_ptr = 0; +static int data_in_queue = 0; + +static cyg_selinfo mouse_select_info; +static cyg_bool mouse_select_active; +static int mouse_active = 0; + + +/* + * Mouse event handler routine - called by main VNC server loop + * when new mouse data is received from client + */ +void vnc_mouse_handler(cyg_uint8 *data) +{ + if (!mouse_active) + { + /* Mouse is not active yet - ignore incoming data */ + return; + } + + /* Add the single mouse event data to the data queue */ + cyg_scheduler_lock(); + + if (data_in_queue >= (MAX_EVENTS*8)) + { + diag_printf("VNC mouse driver buffer overflow\n"); + cyg_scheduler_unlock(); + return; + } + + data_queue[queue_put_ptr] = 0; /* Button info MSB */ + data_queue[queue_put_ptr+1] = data[1]; /* Button info LSB */ + data_queue[queue_put_ptr+2] = data[2]; /* x-coord MSB */ + data_queue[queue_put_ptr+3] = data[3]; /* x-coord LSB */ + data_queue[queue_put_ptr+4] = data[4]; /* y-coord MSB */ + data_queue[queue_put_ptr+5] = data[5]; /* y-coord LSB */ + data_queue[queue_put_ptr+6] = 0; + data_queue[queue_put_ptr+7] = 0; + + /* Increment pointer */ + queue_put_ptr +=8; + if (queue_put_ptr >= (MAX_EVENTS*8)) + { + queue_put_ptr = 0; + } + + /* Increment count of data in queue */ + data_in_queue += 8; + + /* Wake up select() */ + if (mouse_select_active) { + mouse_select_active = false; + cyg_selwakeup(&mouse_select_info); + } + + cyg_scheduler_unlock(); +} + + +static Cyg_ErrNo mouse_read(cyg_io_handle_t handle, + void *buffer, + cyg_uint32 *len) +{ + int total; /* Total bytes to read */ + cyg_uint8 *bp = (unsigned char *)buffer; + int i; + + cyg_scheduler_lock(); /* Prevent interaction with mouse_handler funcion */ + + /* Each mouse event generates 8 x cyg_uint8 values in the queue + * 0-1: Mouse button data + * 2-3: x-coord of mouse + * 4-5: y-coord of mouse + * 6-7: always zero + + */ + if (*len <= data_in_queue) + { + /* Send all requested data */ + total = *len; + } + else + { + /* read() is requesting more data than there is in the queue */ + /* Send all data from the queue */ + total = data_in_queue; + } + + for (i = 0; i < total; i++) + { + bp[i] = data_queue[queue_get_ptr]; + if (++queue_get_ptr >= (MAX_EVENTS*8)) + { + queue_get_ptr = 0; + } + } + + data_in_queue -= total; + + cyg_scheduler_unlock(); // Allow DSRs again + + *len = total; + return ENOERR; +} + + +static cyg_bool mouse_select(cyg_io_handle_t handle, + cyg_uint32 which, + cyg_addrword_t info) +{ + if (which == CYG_FREAD) { + cyg_scheduler_lock(); + if (data_in_queue >= 8) { + cyg_scheduler_unlock(); + return true; + } + + if (!mouse_select_active) { + mouse_select_active = true; + cyg_selrecord(info, &mouse_select_info); + } + + cyg_scheduler_unlock(); + } + return false; +} + + +static Cyg_ErrNo mouse_set_config(cyg_io_handle_t handle, + cyg_uint32 key, + const void *buffer, + cyg_uint32 *len) +{ + return EINVAL; +} + + +static Cyg_ErrNo mouse_get_config(cyg_io_handle_t handle, + cyg_uint32 key, + void *buffer, + cyg_uint32 *len) +{ + return EINVAL; +} + + +static bool mouse_init(struct cyg_devtab_entry *tab) +{ + cyg_selinit(&mouse_select_info); + return true; +} + + +static Cyg_ErrNo mouse_lookup(struct cyg_devtab_entry **tab, + struct cyg_devtab_entry *st, + const char *name) +{ + mouse_active = 1; + return ENOERR; +} diff --git a/packages/net/vnc_server/current/tests/vnc-test.c b/packages/net/vnc_server/current/tests/vnc-test.c new file mode 100644 --- /dev/null +++ b/packages/net/vnc_server/current/tests/vnc-test.c @@ -0,0 +1,162 @@ +//========================================================================== +// +// vnc-test.c +// +//==================================================================== +// Copyright (C) 2003 Sweeney Design Ltd +// +// This software is provided 'as-is', without any express or implied +// warranty. Permission is granted to anyone to use this software for +// any purpose, including commercial applications, and to alter it and +// redistribute it freely. +// +// http://www.sweeneydesign.co.uk +// +//==================================================================== +// +// Test app for eCos VNC-server +// +//========================================================================== + + +#include +#include /* Kernel API */ +#include /* Required for diag_printf */ +#include /* Cyg_ErrNo, ENOENT */ +#include /* cyg_io_handle_t */ + +int main() +{ + Cyg_ErrNo mouse_err, kbd_err; + cyg_io_handle_t mouse_handle, kbd_handle; + cyg_uint8 mouse_data[8], kbd_data[4]; + cyg_uint8 last_mouse_button = 0; + cyg_uint32 mouse_len = 0; + cyg_uint32 kbd_len = 0; + vnc_printf_return_t print_area; + cyg_uint16 text_y_pos; + + VncInit(VNC_WHITE); + + mouse_err = cyg_io_lookup("/dev/vnc_mouse", &mouse_handle); /* Open mouse device */ + if (mouse_err == -ENOENT) + { + diag_printf("Could not open mouse device\n"); + } + + kbd_err = cyg_io_lookup("/dev/vnc_kbd", &kbd_handle); /* Open keyboard device */ + if (kbd_err == -ENOENT) + { + diag_printf("Could not open kbd device\n"); + } + + VncFillRect(0, 0, 50, 50, VNC_BLACK); + VncFillRect(50, 0, 100, 50, VNC_BLUE); + VncFillRect(100, 0, 150, 50, VNC_GREEN); + VncFillRect(150, 0, 200, 50, VNC_CYAN); + + VncFillRect(0, 50, 50, 100, VNC_RED); + VncFillRect(50, 50, 100, 100, VNC_MAGENTA); + VncFillRect(100, 50, 150, 100, VNC_BROWN); + VncFillRect(150, 50, 200, 100, VNC_GRAY); + + VncFillRect(0, 100, 50, 150, VNC_LTGRAY); + VncFillRect(50, 100, 100, 150, VNC_LTBLUE); + VncFillRect(100, 100, 150, 150, VNC_LTGREEN); + VncFillRect(150, 100, 200, 150, VNC_LTCYAN); + + VncFillRect(0, 150, 50, 200, VNC_LTRED); + VncFillRect(50, 150, 100, 200, VNC_LTMAGENTA); + VncFillRect(100, 150, 150, 200, VNC_YELLOW); + VncFillRect(150, 150, 200, 200, VNC_WHITE); + + text_y_pos = 0; + print_area = VncPrintf(&font_rom8x8, 1, VNC_BLACK, 250, text_y_pos, "Hello World!\nUsing rom8x8 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_rom8x16, 1, VNC_BLUE, 250, text_y_pos, "Hello World!\nUsing rom8x16 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_winFreeSansSerif11x13, 1, VNC_CYAN, 250, text_y_pos, "Hello World!\nUsing winFreeSansSerif11x13 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(0, 1, VNC_RED, 250, text_y_pos, "Hello World!\nUsing default (winFreeSystem14x16) font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_helvB10, 1, VNC_MAGENTA, 250, text_y_pos, "Hello World!\nUsing helvB10 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_helvB12, 1, VNC_BROWN, 250, text_y_pos, "Hello World!\nUsing helvB12 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_helvR10, 1, VNC_GREEN, 250, text_y_pos, "Hello World!\nUsing helvR10 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_X5x7, 1, VNC_BLACK, 250, text_y_pos, "Hello World!\nUsing X5x7 font"); + text_y_pos += (print_area.height * 1.5); + print_area = VncPrintf(&font_X6x13, 1, VNC_LTRED, 250, text_y_pos, "Hello World!\nUsing X6x13 font"); + + /* Get the details of the area the text will occupy */ + print_area = VncPrintf(0, 0, VNC_BLACK, 150, 400, "Click on a yellow pixel to sound the bell!!\n"); + /* Draw a background for the text */ + VncFillRect(150, 400, 150 + print_area.width, 400 + print_area.height, VNC_BLUE); + /* Write the text on the background */ + print_area = VncPrintf(0, 1, VNC_YELLOW, 150, 400, "Click on a yellow pixel to sound the bell!!\n"); + + + diag_printf("mouse_handle: %d\n", mouse_handle); + diag_printf("kbd_handle: %d\n", kbd_handle); + + while(1) + { + if (kbd_handle) + { + kbd_len = 4; /* Try to read 4 bytes from keyboard */ + cyg_io_read(kbd_handle, kbd_data, &kbd_len ); + } + + if (mouse_handle) + { + mouse_len = 8; /* Try to read 8 bytes from mouse */ + cyg_io_read(mouse_handle, mouse_data, &mouse_len ); + } + + if (!mouse_len && !kbd_len) + { + /* There was no mouse or keyboard data */ + cyg_thread_delay(5); + } + + if (mouse_len) + { + diag_printf("Mouse data: (%d, %d) - Button = 0x%x\n", + mouse_data[2]*256 + mouse_data[3], + mouse_data[4]*256 + mouse_data[5], + mouse_data[1]); + + if (mouse_data[1] && !last_mouse_button) + { + /* Ring bell if mouse button is pressed on a yellow pixel */ + if (VncReadPixel(mouse_data[2]*256 + mouse_data[3], + mouse_data[4]*256 + mouse_data[5]) == VNC_YELLOW) + { + VncSoundBell(); + print_area = VncPrintf(0, 0, VNC_LTBLUE, 150, 400, "Click on a yellow pixel to sound the bell!!\n"); + VncFillRect(150, 400, 150 + print_area.width, 400 + print_area.height, VNC_YELLOW); + print_area = VncPrintf(0, 1, VNC_BLACK, 150, 400, "Click on a yellow pixel to sound the bell!!\n"); + } + } + + last_mouse_button = mouse_data[1]; + } + + if (kbd_len) + { + if (kbd_data[1]) + { + diag_printf("Keyboard data: keysym value 0x%x is pressed\n", + kbd_data[2]*256 + kbd_data[3]); + } + else + { + diag_printf("Keyboard data: keysym value 0x%x is released\n", + kbd_data[2]*256 + kbd_data[3]); + } + } + } + + return 1; +}