diff options
-rw-r--r-- | src/glut/dos/Makefile.DJ | 68 | ||||
-rw-r--r-- | src/glut/dos/bitmap.c | 115 | ||||
-rw-r--r-- | src/glut/dos/callback.c | 100 | ||||
-rw-r--r-- | src/glut/dos/color.c | 45 | ||||
-rw-r--r-- | src/glut/dos/extens.c | 42 | ||||
-rw-r--r-- | src/glut/dos/f8x13.c | 1183 | ||||
-rw-r--r-- | src/glut/dos/f9x15.c | 1407 | ||||
-rw-r--r-- | src/glut/dos/hel10.c | 1019 | ||||
-rw-r--r-- | src/glut/dos/hel12.c | 1029 | ||||
-rw-r--r-- | src/glut/dos/hel18.c | 1138 | ||||
-rw-r--r-- | src/glut/dos/init.c | 380 | ||||
-rw-r--r-- | src/glut/dos/internal.h | 197 | ||||
-rw-r--r-- | src/glut/dos/loop.c | 245 | ||||
-rw-r--r-- | src/glut/dos/menu.c | 65 | ||||
-rw-r--r-- | src/glut/dos/mouse.c | 52 | ||||
-rw-r--r-- | src/glut/dos/mroman.c | 2783 | ||||
-rw-r--r-- | src/glut/dos/overlay.c | 46 | ||||
-rw-r--r-- | src/glut/dos/roman.c | 2783 | ||||
-rw-r--r-- | src/glut/dos/shapes.c | 1143 | ||||
-rw-r--r-- | src/glut/dos/state.c | 95 | ||||
-rw-r--r-- | src/glut/dos/stroke.c | 118 | ||||
-rw-r--r-- | src/glut/dos/teapot.c | 201 | ||||
-rw-r--r-- | src/glut/dos/tr10.c | 1018 | ||||
-rw-r--r-- | src/glut/dos/tr24.c | 1301 | ||||
-rw-r--r-- | src/glut/dos/util.c | 65 | ||||
-rw-r--r-- | src/glut/dos/window.c | 159 |
26 files changed, 16219 insertions, 578 deletions
diff --git a/src/glut/dos/Makefile.DJ b/src/glut/dos/Makefile.DJ index 45658c77d5..7e4e0b8576 100644 --- a/src/glut/dos/Makefile.DJ +++ b/src/glut/dos/Makefile.DJ @@ -1,31 +1,25 @@ -# Mesa 3-D graphics library -# Version: 4.0 -# -# Copyright (C) 1999 Brian Paul All Rights Reserved. -# +# DOS/DJGPP Mesa Utility Toolkit +# Version: 1.0 +# +# Copyright (C) 2005 Daniel Borca All Rights Reserved. +# # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: -# +# # The above copyright notice and this permission notice shall be included # in all copies or substantial portions of the Software. -# +# # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +# DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# DOS/DJGPP glut makefile v1.6 for Mesa -# -# Copyright (C) 2002 - Daniel Borca -# Email : dborca@users.sourceforge.net -# Web : http://www.geocities.com/dborca - # # Available options: @@ -33,8 +27,6 @@ # Environment variables: # CFLAGS # -# MKGLUT absolute path to original GLUT. -# default = $(TOP)/src/glut/glx # GLIDE path to Glide3 SDK; used to resolve DXEs. # default = $(TOP)/glide3 # @@ -49,7 +41,6 @@ TOP = ../../.. GLIDE ?= $(TOP)/glide3 -MKGLUT ?= $(TOP)/src/glut/glx LIBDIR = $(TOP)/lib GLUT_LIB = libglut.a GLUT_DXE = glut.dxe @@ -58,7 +49,7 @@ GLUT_IMP = libiglut.a export LD_LIBRARY_PATH := $(LD_LIBRARY_PATH);$(LIBDIR);$(GLIDE)/lib CC = gcc -CFLAGS += -I- -I$(TOP)/include -I. -I$(MKGLUT) -IPC_HW +CFLAGS += -I$(TOP)/include -I. -IPC_HW CFLAGS += -DGLUT_IMPORT_LIB AR = ar @@ -73,6 +64,7 @@ UNLINK = $(RM) $(1) endif CORE_SOURCES = \ + loop.c \ callback.c \ color.c \ extens.c \ @@ -82,7 +74,20 @@ CORE_SOURCES = \ overlay.c \ state.c \ util.c \ - window.c + window.c \ + f8x13.c \ + f9x15.c \ + hel10.c \ + hel12.c \ + hel18.c \ + tr10.c \ + tr24.c \ + mroman.c \ + roman.c \ + bitmap.c \ + stroke.c \ + teapot.c \ + shapes.c PC_HW_SOURCES = \ PC_HW/pc_hw.c \ @@ -91,25 +96,7 @@ PC_HW_SOURCES = \ PC_HW/pc_timer.c \ PC_HW/pc_irq.S -MKGLUT_SOURCES = \ - $(MKGLUT)/glut_bitmap.c \ - $(MKGLUT)/glut_bwidth.c \ - $(MKGLUT)/glut_stroke.c \ - $(MKGLUT)/glut_swidth.c \ - $(MKGLUT)/glut_shapes.c \ - $(MKGLUT)/glut_teapot.c \ - $(MKGLUT)/glut_8x13.c \ - $(MKGLUT)/glut_9x15.c \ - $(MKGLUT)/glut_hel10.c \ - $(MKGLUT)/glut_hel12.c \ - $(MKGLUT)/glut_hel18.c \ - $(MKGLUT)/glut_tr10.c \ - $(MKGLUT)/glut_tr24.c \ - $(MKGLUT)/glut_roman.c \ - $(MKGLUT)/glut_mroman.c \ - $(MKGLUT)/glut_util.c - -SOURCES = $(CORE_SOURCES) $(PC_HW_SOURCES) $(MKGLUT_SOURCES) +SOURCES = $(CORE_SOURCES) $(PC_HW_SOURCES) OBJECTS = $(addsuffix .o,$(basename $(SOURCES))) @@ -129,12 +116,11 @@ $(LIBDIR)/$(GLUT_DXE) $(LIBDIR)/$(GLUT_IMP): $(OBJECTS) ifeq ($(HAVEDXE3),) $(warning Missing DXE3 package... Skipping $(GLUT_DXE)) else - -dxe3gen -o $(LIBDIR)/$(GLUT_DXE) -Y $(LIBDIR)/$(GLUT_IMP) -D "MesaGLUT DJGPP" -E _glut -P gl.dxe -P glu.dxe -U $^ + -dxe3gen -o $(LIBDIR)/$(GLUT_DXE) -Y $(LIBDIR)/$(GLUT_IMP) -D "MesaGLUT DJGPP" -E _glut -P gl.dxe -U $^ endif clean: -$(call UNLINK,*.o) -$(call UNLINK,PC_HW/*.o) - -$(call UNLINK,$(MKGLUT)/*.o) -include depend diff --git a/src/glut/dos/bitmap.c b/src/glut/dos/bitmap.c new file mode 100644 index 0000000000..6d6b91e1c7 --- /dev/null +++ b/src/glut/dos/bitmap.c @@ -0,0 +1,115 @@ +/* + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 + * + * Copyright (C) 2005 Daniel Borca All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#include "internal.h" + + +void APIENTRY +glutBitmapCharacter (void *font, int c) +{ + const GLUTBitmapFont *bfp = _glut_font(font); + const GLUTBitmapChar *bcp; + + if (c >= bfp->num || !(bcp = bfp->table[c])) + return; + + glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT); + + glPixelStorei(GL_UNPACK_SWAP_BYTES, GL_FALSE); + glPixelStorei(GL_UNPACK_LSB_FIRST, GL_FALSE); + glPixelStorei(GL_UNPACK_ROW_LENGTH, 0); + glPixelStorei(GL_UNPACK_SKIP_ROWS, 0); + glPixelStorei(GL_UNPACK_SKIP_PIXELS, 0); + glPixelStorei(GL_UNPACK_ALIGNMENT, 1); + glBitmap(bcp->width, bcp->height, bcp->xorig, bcp->yorig, + bcp->xmove, 0, bcp->bitmap); + + glPopClientAttrib(); +} + + +void APIENTRY +glutBitmapString (void *font, const unsigned char *string) +{ + const GLUTBitmapFont *bfp = _glut_font(font); + const GLUTBitmapChar *bcp; + unsigned char c; + + glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT); + + glPixelStorei(GL_UNPACK_SWAP_BYTES, GL_FALSE); + glPixelStorei(GL_UNPACK_LSB_FIRST, GL_FALSE); + glPixelStorei(GL_UNPACK_ROW_LENGTH, 0); + glPixelStorei(GL_UNPACK_SKIP_ROWS, 0); + glPixelStorei(GL_UNPACK_SKIP_PIXELS, 0); + glPixelStorei(GL_UNPACK_ALIGNMENT, 1); + + while ((c = *(string++))) { + if (c < bfp->num && (bcp = bfp->table[c])) + glBitmap(bcp->width, bcp->height, bcp->xorig, + bcp->yorig, bcp->xmove, 0, bcp->bitmap); + } + + glPopClientAttrib(); +} + + +int APIENTRY +glutBitmapWidth (void *font, int c) +{ + const GLUTBitmapFont *bfp = _glut_font(font); + const GLUTBitmapChar *bcp; + + if (c >= bfp->num || !(bcp = bfp->table[c])) + return 0; + + return bcp->xmove; +} + + +int APIENTRY +glutBitmapLength (void *font, const unsigned char *string) +{ + const GLUTBitmapFont *bfp = _glut_font(font); + const GLUTBitmapChar *bcp; + unsigned char c; + int length = 0; + + while ((c = *(string++))) { + if (c < bfp->num && (bcp = bfp->table[c])) + length += bcp->xmove; + } + + return length; +} + + +int APIENTRY +glutBitmapHeight (void *font) +{ + const GLUTBitmapFont *bfp = _glut_font(font); + + return bfp->height; +} diff --git a/src/glut/dos/callback.c b/src/glut/dos/callback.c index 6bd05f4065..b6cc58feae 100644 --- a/src/glut/dos/callback.c +++ b/src/glut/dos/callback.c @@ -1,106 +1,103 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.6 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ + +#include "internal.h" -#include "glutint.h" +GLUTSShotCB _glut_timer_cb[MAX_TIMER_CB]; -GLUTSShotCB g_sscb[MAX_SSHOT_CB]; - -GLUTidleCB g_idle_func = NULL; +GLUTidleCB _glut_idle_func = NULL; void APIENTRY glutDisplayFunc (GLUTdisplayCB func) { - g_curwin->display = func; + _glut_current->display = func; } void APIENTRY glutReshapeFunc (GLUTreshapeCB func) { - g_curwin->reshape = func; + _glut_current->reshape = func; } void APIENTRY glutKeyboardFunc (GLUTkeyboardCB func) { - g_curwin->keyboard = func; + _glut_current->keyboard = func; } void APIENTRY glutMouseFunc (GLUTmouseCB func) { - g_curwin->mouse = func; + _glut_current->mouse = func; } void APIENTRY glutMotionFunc (GLUTmotionCB func) { - g_curwin->motion = func; + _glut_current->motion = func; } void APIENTRY glutPassiveMotionFunc (GLUTpassiveCB func) { - g_curwin->passive = func; + _glut_current->passive = func; } void APIENTRY glutEntryFunc (GLUTentryCB func) { - g_curwin->entry = func; + _glut_current->entry = func; } void APIENTRY glutVisibilityFunc (GLUTvisibilityCB func) { - g_curwin->visibility = func; + _glut_current->visibility = func; } void APIENTRY glutWindowStatusFunc (GLUTwindowStatusCB func) { + _glut_current->windowStatus = func; } void APIENTRY glutIdleFunc (GLUTidleCB func) { - g_idle_func = func; + _glut_idle_func = func; } @@ -110,8 +107,8 @@ glutTimerFunc (unsigned int millis, GLUTtimerCB func, int value) int i; if (millis > 0) { - for (i = 0; i < MAX_SSHOT_CB; i++) { - GLUTSShotCB *cb = &g_sscb[i]; + for (i = 0; i < MAX_TIMER_CB; i++) { + GLUTSShotCB *cb = &_glut_timer_cb[i]; if (cb->func == NULL) { cb->value = value; cb->func = func; @@ -126,53 +123,82 @@ glutTimerFunc (unsigned int millis, GLUTtimerCB func, int value) void APIENTRY glutSpecialFunc (GLUTspecialCB func) { - g_curwin->special = func; + _glut_current->special = func; } void APIENTRY glutSpaceballMotionFunc (GLUTspaceMotionCB func) { + _glut_current->spaceMotion = func; } void APIENTRY glutSpaceballRotateFunc (GLUTspaceRotateCB func) { + _glut_current->spaceRotate = func; } void APIENTRY glutSpaceballButtonFunc (GLUTspaceButtonCB func) { + _glut_current->spaceButton = func; } void APIENTRY glutDialsFunc (GLUTdialsCB func) { + _glut_current->dials = func; } void APIENTRY glutButtonBoxFunc (GLUTbuttonBoxCB func) { + _glut_current->buttonBox = func; } void APIENTRY glutTabletMotionFunc (GLUTtabletMotionCB func) { + _glut_current->tabletMotion = func; } void APIENTRY glutTabletButtonFunc (GLUTtabletButtonCB func) { + _glut_current->tabletButton = func; } void APIENTRY glutJoystickFunc (GLUTjoystickCB func, int interval) { + _glut_current->joystick = func; +} + + +void APIENTRY +glutKeyboardUpFunc (GLUTkeyboardCB func) +{ + _glut_current->keyboardUp = func; +} + + +void APIENTRY +glutSpecialUpFunc (GLUTspecialCB func) +{ + _glut_current->specialUp = func; +} + + +void APIENTRY +glutMouseWheelFunc (GLUTmouseWheelCB func) +{ + _glut_current->mouseWheel = func; } diff --git a/src/glut/dos/color.c b/src/glut/dos/color.c index c6033c2d56..5ffc1209a2 100644 --- a/src/glut/dos/color.c +++ b/src/glut/dos/color.c @@ -1,34 +1,29 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.3 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ - -#include "glutint.h" -#include "GL/dmesa.h" + +#include "internal.h" #define CLAMP(i) ((i) > 1.0F ? 1.0F : ((i) < 0.0F ? 0.0F : (i))) @@ -37,7 +32,7 @@ void APIENTRY glutSetColor (int ndx, GLfloat red, GLfloat green, GLfloat blue) { - if (g_display_mode & GLUT_INDEX) { + if (_glut_default.mode & GLUT_INDEX) { if ((ndx >= 0) && (ndx < (256 - RESERVED_COLORS))) { DMesaSetCI(ndx, CLAMP(red), CLAMP(green), CLAMP(blue)); } diff --git a/src/glut/dos/extens.c b/src/glut/dos/extens.c index b0cff698c8..8bb867264e 100644 --- a/src/glut/dos/extens.c +++ b/src/glut/dos/extens.c @@ -1,37 +1,31 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.5 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include <string.h> -#include <GL/glut.h> - -#include "GL/dmesa.h" +#include "internal.h" int APIENTRY diff --git a/src/glut/dos/f8x13.c b/src/glut/dos/f8x13.c new file mode 100644 index 0000000000..bbf58b52b1 --- /dev/null +++ b/src/glut/dos/f8x13.c @@ -0,0 +1,1183 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Public domain font. Share and enjoy." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch0data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch0 = { 8, 13, 0, 2, 8, ch0data }; + +static const unsigned char ch1data[] = { + 0x0,0x0,0x0,0x10,0x38,0x7c,0xfe,0x7c,0x38,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch1 = { 8, 13, 0, 2, 8, ch1data }; + +static const unsigned char ch2data[] = { + 0x55,0xaa,0x55,0xaa,0x55,0xaa,0x55,0xaa,0x55,0xaa,0x55,0xaa,0x0 +}; +static const GLUTBitmapChar ch2 = { 8, 13, 0, 2, 8, ch2data }; + +static const unsigned char ch3data[] = { + 0x8,0x8,0x8,0x3e,0x88,0x88,0xf8,0x88,0x88,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch3 = { 8, 13, 0, 2, 8, ch3data }; + +static const unsigned char ch4data[] = { + 0x10,0x10,0x1c,0x10,0x9e,0x80,0xe0,0x80,0xf0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch4 = { 8, 13, 0, 2, 8, ch4data }; + +static const unsigned char ch5data[] = { + 0x22,0x22,0x3c,0x22,0x3c,0x78,0x80,0x80,0x78,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch5 = { 8, 13, 0, 2, 8, ch5data }; + +static const unsigned char ch6data[] = { + 0x20,0x20,0x3c,0x20,0x3e,0xf8,0x80,0x80,0x80,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch6 = { 8, 13, 0, 2, 8, ch6data }; + +static const unsigned char ch7data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x38,0x44,0x44,0x38,0x0,0x0 +}; +static const GLUTBitmapChar ch7 = { 8, 13, 0, 2, 8, ch7data }; + +static const unsigned char ch8data[] = { + 0x0,0x0,0xfe,0x10,0x10,0xfe,0x10,0x10,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch8 = { 8, 13, 0, 2, 8, ch8data }; + +static const unsigned char ch9data[] = { + 0x3e,0x20,0x20,0x20,0x88,0x98,0xa8,0xc8,0x88,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch9 = { 8, 13, 0, 2, 8, ch9data }; + +static const unsigned char ch10data[] = { + 0x8,0x8,0x8,0x8,0x3e,0x20,0x50,0x88,0x88,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch10 = { 8, 13, 0, 2, 8, ch10data }; + +static const unsigned char ch11data[] = { + 0x0,0x0,0x0,0x0,0x0,0xf0,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch11 = { 8, 13, 0, 2, 8, ch11data }; + +static const unsigned char ch12data[] = { + 0x10,0x10,0x10,0x10,0x10,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch12 = { 8, 13, 0, 2, 8, ch12data }; + +static const unsigned char ch13data[] = { + 0x10,0x10,0x10,0x10,0x10,0x1f,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch13 = { 8, 13, 0, 2, 8, ch13data }; + +static const unsigned char ch14data[] = { + 0x0,0x0,0x0,0x0,0x0,0x1f,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch14 = { 8, 13, 0, 2, 8, ch14data }; + +static const unsigned char ch15data[] = { + 0x10,0x10,0x10,0x10,0x10,0xff,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch15 = { 8, 13, 0, 2, 8, ch15data }; + +static const unsigned char ch16data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch16 = { 8, 13, 0, 2, 8, ch16data }; + +static const unsigned char ch17data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch17 = { 8, 13, 0, 2, 8, ch17data }; + +static const unsigned char ch18data[] = { + 0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch18 = { 8, 13, 0, 2, 8, ch18data }; + +static const unsigned char ch19data[] = { + 0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch19 = { 8, 13, 0, 2, 8, ch19data }; + +static const unsigned char ch20data[] = { + 0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch20 = { 8, 13, 0, 2, 8, ch20data }; + +static const unsigned char ch21data[] = { + 0x10,0x10,0x10,0x10,0x10,0x1f,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch21 = { 8, 13, 0, 2, 8, ch21data }; + +static const unsigned char ch22data[] = { + 0x10,0x10,0x10,0x10,0x10,0xf0,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch22 = { 8, 13, 0, 2, 8, ch22data }; + +static const unsigned char ch23data[] = { + 0x0,0x0,0x0,0x0,0x0,0xff,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch23 = { 8, 13, 0, 2, 8, ch23data }; + +static const unsigned char ch24data[] = { + 0x10,0x10,0x10,0x10,0x10,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch24 = { 8, 13, 0, 2, 8, ch24data }; + +static const unsigned char ch25data[] = { + 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch25 = { 8, 13, 0, 2, 8, ch25data }; + +static const unsigned char ch26data[] = { + 0x0,0x0,0xfe,0x2,0x8,0x20,0x80,0x20,0x8,0x2,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch26 = { 8, 13, 0, 2, 8, ch26data }; + +static const unsigned char ch27data[] = { + 0x0,0x0,0xfe,0x80,0x20,0x8,0x2,0x8,0x20,0x80,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch27 = { 8, 13, 0, 2, 8, ch27data }; + +static const unsigned char ch28data[] = { + 0x0,0x0,0x44,0x24,0x24,0x24,0x24,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch28 = { 8, 13, 0, 2, 8, ch28data }; + +static const unsigned char ch29data[] = { + 0x0,0x0,0x80,0x40,0xfe,0x10,0xfe,0x4,0x2,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch29 = { 8, 13, 0, 2, 8, ch29data }; + +static const unsigned char ch30data[] = { + 0x0,0x0,0xdc,0x62,0x20,0x20,0x20,0x70,0x20,0x22,0x1c,0x0,0x0 +}; +static const GLUTBitmapChar ch30 = { 8, 13, 0, 2, 8, ch30data }; + +static const unsigned char ch31data[] = { + 0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch31 = { 8, 13, 0, 2, 8, ch31data }; + +static const unsigned char ch32data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch32 = { 8, 13, 0, 2, 8, ch32data }; + +static const unsigned char ch33data[] = { + 0x0,0x0,0x10,0x0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch33 = { 8, 13, 0, 2, 8, ch33data }; + +static const unsigned char ch34data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x24,0x24,0x24,0x0,0x0 +}; +static const GLUTBitmapChar ch34 = { 8, 13, 0, 2, 8, ch34data }; + +static const unsigned char ch35data[] = { + 0x0,0x0,0x0,0x24,0x24,0x7e,0x24,0x7e,0x24,0x24,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch35 = { 8, 13, 0, 2, 8, ch35data }; + +static const unsigned char ch36data[] = { + 0x0,0x0,0x0,0x10,0x78,0x14,0x38,0x50,0x3c,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch36 = { 8, 13, 0, 2, 8, ch36data }; + +static const unsigned char ch37data[] = { + 0x0,0x0,0x44,0x2a,0x24,0x10,0x8,0x8,0x24,0x52,0x22,0x0,0x0 +}; +static const GLUTBitmapChar ch37 = { 8, 13, 0, 2, 8, ch37data }; + +static const unsigned char ch38data[] = { + 0x0,0x0,0x3a,0x44,0x4a,0x30,0x48,0x48,0x30,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch38 = { 8, 13, 0, 2, 8, ch38data }; + +static const unsigned char ch39data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x30,0x38,0x0,0x0 +}; +static const GLUTBitmapChar ch39 = { 8, 13, 0, 2, 8, ch39data }; + +static const unsigned char ch40data[] = { + 0x0,0x0,0x4,0x8,0x8,0x10,0x10,0x10,0x8,0x8,0x4,0x0,0x0 +}; +static const GLUTBitmapChar ch40 = { 8, 13, 0, 2, 8, ch40data }; + +static const unsigned char ch41data[] = { + 0x0,0x0,0x20,0x10,0x10,0x8,0x8,0x8,0x10,0x10,0x20,0x0,0x0 +}; +static const GLUTBitmapChar ch41 = { 8, 13, 0, 2, 8, ch41data }; + +static const unsigned char ch42data[] = { + 0x0,0x0,0x0,0x0,0x24,0x18,0x7e,0x18,0x24,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch42 = { 8, 13, 0, 2, 8, ch42data }; + +static const unsigned char ch43data[] = { + 0x0,0x0,0x0,0x0,0x10,0x10,0x7c,0x10,0x10,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch43 = { 8, 13, 0, 2, 8, ch43data }; + +static const unsigned char ch44data[] = { + 0x0,0x40,0x30,0x38,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch44 = { 8, 13, 0, 2, 8, ch44data }; + +static const unsigned char ch45data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch45 = { 8, 13, 0, 2, 8, ch45data }; + +static const unsigned char ch46data[] = { + 0x0,0x10,0x38,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch46 = { 8, 13, 0, 2, 8, ch46data }; + +static const unsigned char ch47data[] = { + 0x0,0x0,0x80,0x80,0x40,0x20,0x10,0x8,0x4,0x2,0x2,0x0,0x0 +}; +static const GLUTBitmapChar ch47 = { 8, 13, 0, 2, 8, ch47data }; + +static const unsigned char ch48data[] = { + 0x0,0x0,0x18,0x24,0x42,0x42,0x42,0x42,0x42,0x24,0x18,0x0,0x0 +}; +static const GLUTBitmapChar ch48 = { 8, 13, 0, 2, 8, ch48data }; + +static const unsigned char ch49data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x50,0x30,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch49 = { 8, 13, 0, 2, 8, ch49data }; + +static const unsigned char ch50data[] = { + 0x0,0x0,0x7e,0x40,0x20,0x18,0x4,0x2,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch50 = { 8, 13, 0, 2, 8, ch50data }; + +static const unsigned char ch51data[] = { + 0x0,0x0,0x3c,0x42,0x2,0x2,0x1c,0x8,0x4,0x2,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch51 = { 8, 13, 0, 2, 8, ch51data }; + +static const unsigned char ch52data[] = { + 0x0,0x0,0x4,0x4,0x7e,0x44,0x44,0x24,0x14,0xc,0x4,0x0,0x0 +}; +static const GLUTBitmapChar ch52 = { 8, 13, 0, 2, 8, ch52data }; + +static const unsigned char ch53data[] = { + 0x0,0x0,0x3c,0x42,0x2,0x2,0x62,0x5c,0x40,0x40,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch53 = { 8, 13, 0, 2, 8, ch53data }; + +static const unsigned char ch54data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x62,0x5c,0x40,0x40,0x20,0x1c,0x0,0x0 +}; +static const GLUTBitmapChar ch54 = { 8, 13, 0, 2, 8, ch54data }; + +static const unsigned char ch55data[] = { + 0x0,0x0,0x20,0x20,0x10,0x10,0x8,0x8,0x4,0x2,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch55 = { 8, 13, 0, 2, 8, ch55data }; + +static const unsigned char ch56data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x3c,0x42,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch56 = { 8, 13, 0, 2, 8, ch56data }; + +static const unsigned char ch57data[] = { + 0x0,0x0,0x38,0x4,0x2,0x2,0x3a,0x46,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch57 = { 8, 13, 0, 2, 8, ch57data }; + +static const unsigned char ch58data[] = { + 0x0,0x10,0x38,0x10,0x0,0x0,0x10,0x38,0x10,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch58 = { 8, 13, 0, 2, 8, ch58data }; + +static const unsigned char ch59data[] = { + 0x0,0x40,0x30,0x38,0x0,0x0,0x10,0x38,0x10,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch59 = { 8, 13, 0, 2, 8, ch59data }; + +static const unsigned char ch60data[] = { + 0x0,0x0,0x2,0x4,0x8,0x10,0x20,0x10,0x8,0x4,0x2,0x0,0x0 +}; +static const GLUTBitmapChar ch60 = { 8, 13, 0, 2, 8, ch60data }; + +static const unsigned char ch61data[] = { + 0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch61 = { 8, 13, 0, 2, 8, ch61data }; + +static const unsigned char ch62data[] = { + 0x0,0x0,0x40,0x20,0x10,0x8,0x4,0x8,0x10,0x20,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch62 = { 8, 13, 0, 2, 8, ch62data }; + +static const unsigned char ch63data[] = { + 0x0,0x0,0x8,0x0,0x8,0x8,0x4,0x2,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch63 = { 8, 13, 0, 2, 8, ch63data }; + +static const unsigned char ch64data[] = { + 0x0,0x0,0x3c,0x40,0x4a,0x56,0x52,0x4e,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch64 = { 8, 13, 0, 2, 8, ch64data }; + +static const unsigned char ch65data[] = { + 0x0,0x0,0x42,0x42,0x42,0x7e,0x42,0x42,0x42,0x24,0x18,0x0,0x0 +}; +static const GLUTBitmapChar ch65 = { 8, 13, 0, 2, 8, ch65data }; + +static const unsigned char ch66data[] = { + 0x0,0x0,0xfc,0x42,0x42,0x42,0x7c,0x42,0x42,0x42,0xfc,0x0,0x0 +}; +static const GLUTBitmapChar ch66 = { 8, 13, 0, 2, 8, ch66data }; + +static const unsigned char ch67data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x40,0x40,0x40,0x40,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch67 = { 8, 13, 0, 2, 8, ch67data }; + +static const unsigned char ch68data[] = { + 0x0,0x0,0xfc,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xfc,0x0,0x0 +}; +static const GLUTBitmapChar ch68 = { 8, 13, 0, 2, 8, ch68data }; + +static const unsigned char ch69data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch69 = { 8, 13, 0, 2, 8, ch69data }; + +static const unsigned char ch70data[] = { + 0x0,0x0,0x40,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch70 = { 8, 13, 0, 2, 8, ch70data }; + +static const unsigned char ch71data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x4e,0x40,0x40,0x40,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch71 = { 8, 13, 0, 2, 8, ch71data }; + +static const unsigned char ch72data[] = { + 0x0,0x0,0x42,0x42,0x42,0x42,0x7e,0x42,0x42,0x42,0x42,0x0,0x0 +}; +static const GLUTBitmapChar ch72 = { 8, 13, 0, 2, 8, ch72data }; + +static const unsigned char ch73data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x7c,0x0,0x0 +}; +static const GLUTBitmapChar ch73 = { 8, 13, 0, 2, 8, ch73data }; + +static const unsigned char ch74data[] = { + 0x0,0x0,0x38,0x44,0x4,0x4,0x4,0x4,0x4,0x4,0x1e,0x0,0x0 +}; +static const GLUTBitmapChar ch74 = { 8, 13, 0, 2, 8, ch74data }; + +static const unsigned char ch75data[] = { + 0x0,0x0,0x42,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x42,0x0,0x0 +}; +static const GLUTBitmapChar ch75 = { 8, 13, 0, 2, 8, ch75data }; + +static const unsigned char ch76data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch76 = { 8, 13, 0, 2, 8, ch76data }; + +static const unsigned char ch77data[] = { + 0x0,0x0,0x82,0x82,0x82,0x92,0x92,0xaa,0xc6,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch77 = { 8, 13, 0, 2, 8, ch77data }; + +static const unsigned char ch78data[] = { + 0x0,0x0,0x42,0x42,0x42,0x46,0x4a,0x52,0x62,0x42,0x42,0x0,0x0 +}; +static const GLUTBitmapChar ch78 = { 8, 13, 0, 2, 8, ch78data }; + +static const unsigned char ch79data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch79 = { 8, 13, 0, 2, 8, ch79data }; + +static const unsigned char ch80data[] = { + 0x0,0x0,0x40,0x40,0x40,0x40,0x7c,0x42,0x42,0x42,0x7c,0x0,0x0 +}; +static const GLUTBitmapChar ch80 = { 8, 13, 0, 2, 8, ch80data }; + +static const unsigned char ch81data[] = { + 0x0,0x2,0x3c,0x4a,0x52,0x42,0x42,0x42,0x42,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch81 = { 8, 13, 0, 2, 8, ch81data }; + +static const unsigned char ch82data[] = { + 0x0,0x0,0x42,0x44,0x48,0x50,0x7c,0x42,0x42,0x42,0x7c,0x0,0x0 +}; +static const GLUTBitmapChar ch82 = { 8, 13, 0, 2, 8, ch82data }; + +static const unsigned char ch83data[] = { + 0x0,0x0,0x3c,0x42,0x2,0x2,0x3c,0x40,0x40,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch83 = { 8, 13, 0, 2, 8, ch83data }; + +static const unsigned char ch84data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0xfe,0x0,0x0 +}; +static const GLUTBitmapChar ch84 = { 8, 13, 0, 2, 8, ch84data }; + +static const unsigned char ch85data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x0,0x0 +}; +static const GLUTBitmapChar ch85 = { 8, 13, 0, 2, 8, ch85data }; + +static const unsigned char ch86data[] = { + 0x0,0x0,0x10,0x28,0x28,0x28,0x44,0x44,0x44,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch86 = { 8, 13, 0, 2, 8, ch86data }; + +static const unsigned char ch87data[] = { + 0x0,0x0,0x44,0xaa,0x92,0x92,0x92,0x82,0x82,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch87 = { 8, 13, 0, 2, 8, ch87data }; + +static const unsigned char ch88data[] = { + 0x0,0x0,0x82,0x82,0x44,0x28,0x10,0x28,0x44,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch88 = { 8, 13, 0, 2, 8, ch88data }; + +static const unsigned char ch89data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x10,0x28,0x44,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch89 = { 8, 13, 0, 2, 8, ch89data }; + +static const unsigned char ch90data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x20,0x10,0x8,0x4,0x2,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch90 = { 8, 13, 0, 2, 8, ch90data }; + +static const unsigned char ch91data[] = { + 0x0,0x0,0x3c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch91 = { 8, 13, 0, 2, 8, ch91data }; + +static const unsigned char ch92data[] = { + 0x0,0x0,0x2,0x2,0x4,0x8,0x10,0x20,0x40,0x80,0x80,0x0,0x0 +}; +static const GLUTBitmapChar ch92 = { 8, 13, 0, 2, 8, ch92data }; + +static const unsigned char ch93data[] = { + 0x0,0x0,0x78,0x8,0x8,0x8,0x8,0x8,0x8,0x8,0x78,0x0,0x0 +}; +static const GLUTBitmapChar ch93 = { 8, 13, 0, 2, 8, ch93data }; + +static const unsigned char ch94data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x44,0x28,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch94 = { 8, 13, 0, 2, 8, ch94data }; + +static const unsigned char ch95data[] = { + 0x0,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch95 = { 8, 13, 0, 2, 8, ch95data }; + +static const unsigned char ch96data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x18,0x38,0x0,0x0 +}; +static const GLUTBitmapChar ch96 = { 8, 13, 0, 2, 8, ch96data }; + +static const unsigned char ch97data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch97 = { 8, 13, 0, 2, 8, ch97data }; + +static const unsigned char ch98data[] = { + 0x0,0x0,0x5c,0x62,0x42,0x42,0x62,0x5c,0x40,0x40,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch98 = { 8, 13, 0, 2, 8, ch98data }; + +static const unsigned char ch99data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x40,0x42,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch99 = { 8, 13, 0, 2, 8, ch99data }; + +static const unsigned char ch100data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x42,0x46,0x3a,0x2,0x2,0x2,0x0,0x0 +}; +static const GLUTBitmapChar ch100 = { 8, 13, 0, 2, 8, ch100data }; + +static const unsigned char ch101data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x7e,0x42,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch101 = { 8, 13, 0, 2, 8, ch101data }; + +static const unsigned char ch102data[] = { + 0x0,0x0,0x20,0x20,0x20,0x20,0x7c,0x20,0x20,0x22,0x1c,0x0,0x0 +}; +static const GLUTBitmapChar ch102 = { 8, 13, 0, 2, 8, ch102data }; + +static const unsigned char ch103data[] = { + 0x3c,0x42,0x3c,0x40,0x38,0x44,0x44,0x3a,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch103 = { 8, 13, 0, 2, 8, ch103data }; + +static const unsigned char ch104data[] = { + 0x0,0x0,0x42,0x42,0x42,0x42,0x62,0x5c,0x40,0x40,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch104 = { 8, 13, 0, 2, 8, ch104data }; + +static const unsigned char ch105data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x30,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch105 = { 8, 13, 0, 2, 8, ch105data }; + +static const unsigned char ch106data[] = { + 0x38,0x44,0x44,0x4,0x4,0x4,0x4,0xc,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch106 = { 8, 13, 0, 2, 8, ch106data }; + +static const unsigned char ch107data[] = { + 0x0,0x0,0x42,0x44,0x48,0x70,0x48,0x44,0x40,0x40,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch107 = { 8, 13, 0, 2, 8, ch107data }; + +static const unsigned char ch108data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x30,0x0,0x0 +}; +static const GLUTBitmapChar ch108 = { 8, 13, 0, 2, 8, ch108data }; + +static const unsigned char ch109data[] = { + 0x0,0x0,0x82,0x92,0x92,0x92,0x92,0xec,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch109 = { 8, 13, 0, 2, 8, ch109data }; + +static const unsigned char ch110data[] = { + 0x0,0x0,0x42,0x42,0x42,0x42,0x62,0x5c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch110 = { 8, 13, 0, 2, 8, ch110data }; + +static const unsigned char ch111data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch111 = { 8, 13, 0, 2, 8, ch111data }; + +static const unsigned char ch112data[] = { + 0x40,0x40,0x40,0x5c,0x62,0x42,0x62,0x5c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch112 = { 8, 13, 0, 2, 8, ch112data }; + +static const unsigned char ch113data[] = { + 0x2,0x2,0x2,0x3a,0x46,0x42,0x46,0x3a,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch113 = { 8, 13, 0, 2, 8, ch113data }; + +static const unsigned char ch114data[] = { + 0x0,0x0,0x20,0x20,0x20,0x20,0x22,0x5c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch114 = { 8, 13, 0, 2, 8, ch114data }; + +static const unsigned char ch115data[] = { + 0x0,0x0,0x3c,0x42,0xc,0x30,0x42,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch115 = { 8, 13, 0, 2, 8, ch115data }; + +static const unsigned char ch116data[] = { + 0x0,0x0,0x1c,0x22,0x20,0x20,0x20,0x7c,0x20,0x20,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch116 = { 8, 13, 0, 2, 8, ch116data }; + +static const unsigned char ch117data[] = { + 0x0,0x0,0x3a,0x44,0x44,0x44,0x44,0x44,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch117 = { 8, 13, 0, 2, 8, ch117data }; + +static const unsigned char ch118data[] = { + 0x0,0x0,0x10,0x28,0x28,0x44,0x44,0x44,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch118 = { 8, 13, 0, 2, 8, ch118data }; + +static const unsigned char ch119data[] = { + 0x0,0x0,0x44,0xaa,0x92,0x92,0x82,0x82,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch119 = { 8, 13, 0, 2, 8, ch119data }; + +static const unsigned char ch120data[] = { + 0x0,0x0,0x42,0x24,0x18,0x18,0x24,0x42,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch120 = { 8, 13, 0, 2, 8, ch120data }; + +static const unsigned char ch121data[] = { + 0x3c,0x42,0x2,0x3a,0x46,0x42,0x42,0x42,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch121 = { 8, 13, 0, 2, 8, ch121data }; + +static const unsigned char ch122data[] = { + 0x0,0x0,0x7e,0x20,0x10,0x8,0x4,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch122 = { 8, 13, 0, 2, 8, ch122data }; + +static const unsigned char ch123data[] = { + 0x0,0x0,0xe,0x10,0x10,0x8,0x30,0x8,0x10,0x10,0xe,0x0,0x0 +}; +static const GLUTBitmapChar ch123 = { 8, 13, 0, 2, 8, ch123data }; + +static const unsigned char ch124data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch124 = { 8, 13, 0, 2, 8, ch124data }; + +static const unsigned char ch125data[] = { + 0x0,0x0,0x70,0x8,0x8,0x10,0xc,0x10,0x8,0x8,0x70,0x0,0x0 +}; +static const GLUTBitmapChar ch125 = { 8, 13, 0, 2, 8, ch125data }; + +static const unsigned char ch126data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x48,0x54,0x24,0x0,0x0 +}; +static const GLUTBitmapChar ch126 = { 8, 13, 0, 2, 8, ch126data }; + +static const unsigned char ch127data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch127 = { 8, 13, 0, 2, 8, ch127data }; + +static const unsigned char ch160data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch160 = { 8, 13, 0, 2, 8, ch160data }; + +static const unsigned char ch161data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x0,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch161 = { 8, 13, 0, 2, 8, ch161data }; + +static const unsigned char ch162data[] = { + 0x0,0x0,0x0,0x10,0x38,0x54,0x50,0x50,0x54,0x38,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch162 = { 8, 13, 0, 2, 8, ch162data }; + +static const unsigned char ch163data[] = { + 0x0,0x0,0xdc,0x62,0x20,0x20,0x20,0x70,0x20,0x22,0x1c,0x0,0x0 +}; +static const GLUTBitmapChar ch163 = { 8, 13, 0, 2, 8, ch163data }; + +static const unsigned char ch164data[] = { + 0x0,0x0,0x0,0x42,0x3c,0x24,0x24,0x3c,0x42,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch164 = { 8, 13, 0, 2, 8, ch164data }; + +static const unsigned char ch165data[] = { + 0x0,0x0,0x10,0x10,0x7c,0x10,0x7c,0x28,0x44,0x82,0x82,0x0,0x0 +}; +static const GLUTBitmapChar ch165 = { 8, 13, 0, 2, 8, ch165data }; + +static const unsigned char ch166data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x0,0x10,0x10,0x10,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch166 = { 8, 13, 0, 2, 8, ch166data }; + +static const unsigned char ch167data[] = { + 0x0,0x0,0x18,0x24,0x4,0x18,0x24,0x24,0x18,0x20,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch167 = { 8, 13, 0, 2, 8, ch167data }; + +static const unsigned char ch168data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6c,0x0,0x0 +}; +static const GLUTBitmapChar ch168 = { 8, 13, 0, 2, 8, ch168data }; + +static const unsigned char ch169data[] = { + 0x0,0x0,0x0,0x38,0x44,0x92,0xaa,0xa2,0xaa,0x92,0x44,0x38,0x0 +}; +static const GLUTBitmapChar ch169 = { 8, 13, 0, 2, 8, ch169data }; + +static const unsigned char ch170data[] = { + 0x0,0x0,0x0,0x0,0x7c,0x0,0x3c,0x44,0x3c,0x4,0x38,0x0,0x0 +}; +static const GLUTBitmapChar ch170 = { 8, 13, 0, 2, 8, ch170data }; + +static const unsigned char ch171data[] = { + 0x0,0x0,0x0,0x12,0x24,0x48,0x90,0x48,0x24,0x12,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch171 = { 8, 13, 0, 2, 8, ch171data }; + +static const unsigned char ch172data[] = { + 0x0,0x0,0x0,0x2,0x2,0x2,0x7e,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch172 = { 8, 13, 0, 2, 8, ch172data }; + +static const unsigned char ch173data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch173 = { 8, 13, 0, 2, 8, ch173data }; + +static const unsigned char ch174data[] = { + 0x0,0x0,0x0,0x38,0x44,0xaa,0xb2,0xaa,0xaa,0x92,0x44,0x38,0x0 +}; +static const GLUTBitmapChar ch174 = { 8, 13, 0, 2, 8, ch174data }; + +static const unsigned char ch175data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0 +}; +static const GLUTBitmapChar ch175 = { 8, 13, 0, 2, 8, ch175data }; + +static const unsigned char ch176data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x24,0x24,0x18,0x0,0x0 +}; +static const GLUTBitmapChar ch176 = { 8, 13, 0, 2, 8, ch176data }; + +static const unsigned char ch177data[] = { + 0x0,0x0,0x0,0x7c,0x0,0x10,0x10,0x7c,0x10,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch177 = { 8, 13, 0, 2, 8, ch177data }; + +static const unsigned char ch178data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x78,0x40,0x30,0x8,0x48,0x30,0x0 +}; +static const GLUTBitmapChar ch178 = { 8, 13, 0, 2, 8, ch178data }; + +static const unsigned char ch179data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x48,0x8,0x10,0x48,0x30,0x0 +}; +static const GLUTBitmapChar ch179 = { 8, 13, 0, 2, 8, ch179data }; + +static const unsigned char ch180data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch180 = { 8, 13, 0, 2, 8, ch180data }; + +static const unsigned char ch181data[] = { + 0x0,0x40,0x5a,0x66,0x42,0x42,0x42,0x42,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch181 = { 8, 13, 0, 2, 8, ch181data }; + +static const unsigned char ch182data[] = { + 0x0,0x0,0x14,0x14,0x14,0x14,0x34,0x74,0x74,0x74,0x3e,0x0,0x0 +}; +static const GLUTBitmapChar ch182 = { 8, 13, 0, 2, 8, ch182data }; + +static const unsigned char ch183data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch183 = { 8, 13, 0, 2, 8, ch183data }; + +static const unsigned char ch184data[] = { + 0x18,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch184 = { 8, 13, 0, 2, 8, ch184data }; + +static const unsigned char ch185data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x20,0x20,0x20,0x60,0x20,0x0 +}; +static const GLUTBitmapChar ch185 = { 8, 13, 0, 2, 8, ch185data }; + +static const unsigned char ch186data[] = { + 0x0,0x0,0x0,0x0,0x0,0x78,0x0,0x30,0x48,0x48,0x30,0x0,0x0 +}; +static const GLUTBitmapChar ch186 = { 8, 13, 0, 2, 8, ch186data }; + +static const unsigned char ch187data[] = { + 0x0,0x0,0x0,0x90,0x48,0x24,0x12,0x24,0x48,0x90,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch187 = { 8, 13, 0, 2, 8, ch187data }; + +static const unsigned char ch188data[] = { + 0x0,0x0,0x6,0x1a,0x12,0xa,0xe6,0x42,0x40,0x40,0xc0,0x40,0x0 +}; +static const GLUTBitmapChar ch188 = { 8, 13, 0, 2, 8, ch188data }; + +static const unsigned char ch189data[] = { + 0x0,0x0,0x1e,0x10,0xc,0x2,0xf2,0x4c,0x40,0x40,0xc0,0x40,0x0 +}; +static const GLUTBitmapChar ch189 = { 8, 13, 0, 2, 8, ch189data }; + +static const unsigned char ch190data[] = { + 0x0,0x0,0x6,0x1a,0x12,0xa,0x66,0x92,0x10,0x20,0x90,0x60,0x0 +}; +static const GLUTBitmapChar ch190 = { 8, 13, 0, 2, 8, ch190data }; + +static const unsigned char ch191data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x40,0x20,0x10,0x10,0x0,0x10,0x0,0x0 +}; +static const GLUTBitmapChar ch191 = { 8, 13, 0, 2, 8, ch191data }; + +static const unsigned char ch192data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch192 = { 8, 13, 0, 2, 8, ch192data }; + +static const unsigned char ch193data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch193 = { 8, 13, 0, 2, 8, ch193data }; + +static const unsigned char ch194data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch194 = { 8, 13, 0, 2, 8, ch194data }; + +static const unsigned char ch195data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch195 = { 8, 13, 0, 2, 8, ch195data }; + +static const unsigned char ch196data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch196 = { 8, 13, 0, 2, 8, ch196data }; + +static const unsigned char ch197data[] = { + 0x0,0x0,0x42,0x42,0x7e,0x42,0x42,0x24,0x18,0x18,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch197 = { 8, 13, 0, 2, 8, ch197data }; + +static const unsigned char ch198data[] = { + 0x0,0x0,0x9e,0x90,0x90,0xf0,0x9c,0x90,0x90,0x90,0x6e,0x0,0x0 +}; +static const GLUTBitmapChar ch198 = { 8, 13, 0, 2, 8, ch198data }; + +static const unsigned char ch199data[] = { + 0x10,0x8,0x3c,0x42,0x40,0x40,0x40,0x40,0x40,0x42,0x3c,0x0,0x0 +}; +static const GLUTBitmapChar ch199 = { 8, 13, 0, 2, 8, ch199data }; + +static const unsigned char ch200data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x78,0x40,0x40,0x7e,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch200 = { 8, 13, 0, 2, 8, ch200data }; + +static const unsigned char ch201data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x78,0x40,0x40,0x7e,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch201 = { 8, 13, 0, 2, 8, ch201data }; + +static const unsigned char ch202data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x78,0x40,0x40,0x7e,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch202 = { 8, 13, 0, 2, 8, ch202data }; + +static const unsigned char ch203data[] = { + 0x0,0x0,0x7e,0x40,0x40,0x78,0x40,0x40,0x7e,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch203 = { 8, 13, 0, 2, 8, ch203data }; + +static const unsigned char ch204data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x7c,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch204 = { 8, 13, 0, 2, 8, ch204data }; + +static const unsigned char ch205data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x7c,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch205 = { 8, 13, 0, 2, 8, ch205data }; + +static const unsigned char ch206data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x7c,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch206 = { 8, 13, 0, 2, 8, ch206data }; + +static const unsigned char ch207data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x10,0x7c,0x0,0x28,0x28,0x0 +}; +static const GLUTBitmapChar ch207 = { 8, 13, 0, 2, 8, ch207data }; + +static const unsigned char ch208data[] = { + 0x0,0x0,0xfc,0x42,0x42,0x42,0xe2,0x42,0x42,0x42,0xfc,0x0,0x0 +}; +static const GLUTBitmapChar ch208 = { 8, 13, 0, 2, 8, ch208data }; + +static const unsigned char ch209data[] = { + 0x0,0x0,0x82,0x86,0x8a,0x92,0xa2,0xc2,0x82,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch209 = { 8, 13, 0, 2, 8, ch209data }; + +static const unsigned char ch210data[] = { + 0x0,0x0,0x7c,0x82,0x82,0x82,0x82,0x82,0x7c,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch210 = { 8, 13, 0, 2, 8, ch210data }; + +static const unsigned char ch211data[] = { + 0x0,0x0,0x7c,0x82,0x82,0x82,0x82,0x82,0x7c,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch211 = { 8, 13, 0, 2, 8, ch211data }; + +static const unsigned char ch212data[] = { + 0x0,0x0,0x7c,0x82,0x82,0x82,0x82,0x82,0x7c,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch212 = { 8, 13, 0, 2, 8, ch212data }; + +static const unsigned char ch213data[] = { + 0x0,0x0,0x7c,0x82,0x82,0x82,0x82,0x82,0x7c,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch213 = { 8, 13, 0, 2, 8, ch213data }; + +static const unsigned char ch214data[] = { + 0x0,0x0,0x7c,0x82,0x82,0x82,0x82,0x82,0x7c,0x0,0x28,0x28,0x0 +}; +static const GLUTBitmapChar ch214 = { 8, 13, 0, 2, 8, ch214data }; + +static const unsigned char ch215data[] = { + 0x0,0x0,0x0,0x42,0x24,0x18,0x18,0x24,0x42,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch215 = { 8, 13, 0, 2, 8, ch215data }; + +static const unsigned char ch216data[] = { + 0x0,0x40,0x3c,0x62,0x52,0x52,0x52,0x4a,0x4a,0x46,0x3c,0x2,0x0 +}; +static const GLUTBitmapChar ch216 = { 8, 13, 0, 2, 8, ch216data }; + +static const unsigned char ch217data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch217 = { 8, 13, 0, 2, 8, ch217data }; + +static const unsigned char ch218data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch218 = { 8, 13, 0, 2, 8, ch218data }; + +static const unsigned char ch219data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch219 = { 8, 13, 0, 2, 8, ch219data }; + +static const unsigned char ch220data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch220 = { 8, 13, 0, 2, 8, ch220data }; + +static const unsigned char ch221data[] = { + 0x0,0x0,0x10,0x10,0x10,0x10,0x28,0x44,0x44,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch221 = { 8, 13, 0, 2, 8, ch221data }; + +static const unsigned char ch222data[] = { + 0x0,0x0,0x40,0x40,0x40,0x7c,0x42,0x42,0x42,0x7c,0x40,0x0,0x0 +}; +static const GLUTBitmapChar ch222 = { 8, 13, 0, 2, 8, ch222data }; + +static const unsigned char ch223data[] = { + 0x0,0x40,0x5c,0x62,0x42,0x42,0x7c,0x42,0x42,0x3c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch223 = { 8, 13, 0, 2, 8, ch223data }; + +static const unsigned char ch224data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch224 = { 8, 13, 0, 2, 8, ch224data }; + +static const unsigned char ch225data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch225 = { 8, 13, 0, 2, 8, ch225data }; + +static const unsigned char ch226data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch226 = { 8, 13, 0, 2, 8, ch226data }; + +static const unsigned char ch227data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch227 = { 8, 13, 0, 2, 8, ch227data }; + +static const unsigned char ch228data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch228 = { 8, 13, 0, 2, 8, ch228data }; + +static const unsigned char ch229data[] = { + 0x0,0x0,0x3a,0x46,0x42,0x3e,0x2,0x3c,0x0,0x18,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch229 = { 8, 13, 0, 2, 8, ch229data }; + +static const unsigned char ch230data[] = { + 0x0,0x0,0x6c,0x92,0x90,0x7c,0x12,0x6c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch230 = { 8, 13, 0, 2, 8, ch230data }; + +static const unsigned char ch231data[] = { + 0x10,0x8,0x3c,0x42,0x40,0x40,0x42,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch231 = { 8, 13, 0, 2, 8, ch231data }; + +static const unsigned char ch232data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x7e,0x42,0x3c,0x0,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch232 = { 8, 13, 0, 2, 8, ch232data }; + +static const unsigned char ch233data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x7e,0x42,0x3c,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch233 = { 8, 13, 0, 2, 8, ch233data }; + +static const unsigned char ch234data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x7e,0x42,0x3c,0x0,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch234 = { 8, 13, 0, 2, 8, ch234data }; + +static const unsigned char ch235data[] = { + 0x0,0x0,0x3c,0x42,0x40,0x7e,0x42,0x3c,0x0,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch235 = { 8, 13, 0, 2, 8, ch235data }; + +static const unsigned char ch236data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x30,0x0,0x0,0x10,0x20,0x0 +}; +static const GLUTBitmapChar ch236 = { 8, 13, 0, 2, 8, ch236data }; + +static const unsigned char ch237data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x30,0x0,0x0,0x20,0x10,0x0 +}; +static const GLUTBitmapChar ch237 = { 8, 13, 0, 2, 8, ch237data }; + +static const unsigned char ch238data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x30,0x0,0x0,0x48,0x30,0x0 +}; +static const GLUTBitmapChar ch238 = { 8, 13, 0, 2, 8, ch238data }; + +static const unsigned char ch239data[] = { + 0x0,0x0,0x7c,0x10,0x10,0x10,0x10,0x30,0x0,0x0,0x28,0x28,0x0 +}; +static const GLUTBitmapChar ch239 = { 8, 13, 0, 2, 8, ch239data }; + +static const unsigned char ch240data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x4,0x28,0x18,0x24,0x0 +}; +static const GLUTBitmapChar ch240 = { 8, 13, 0, 2, 8, ch240data }; + +static const unsigned char ch241data[] = { + 0x0,0x0,0x42,0x42,0x42,0x42,0x62,0x5c,0x0,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch241 = { 8, 13, 0, 2, 8, ch241data }; + +static const unsigned char ch242data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch242 = { 8, 13, 0, 2, 8, ch242data }; + +static const unsigned char ch243data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch243 = { 8, 13, 0, 2, 8, ch243data }; + +static const unsigned char ch244data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch244 = { 8, 13, 0, 2, 8, ch244data }; + +static const unsigned char ch245data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x28,0x14,0x0 +}; +static const GLUTBitmapChar ch245 = { 8, 13, 0, 2, 8, ch245data }; + +static const unsigned char ch246data[] = { + 0x0,0x0,0x3c,0x42,0x42,0x42,0x42,0x3c,0x0,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch246 = { 8, 13, 0, 2, 8, ch246data }; + +static const unsigned char ch247data[] = { + 0x0,0x0,0x0,0x10,0x10,0x0,0x7c,0x0,0x10,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch247 = { 8, 13, 0, 2, 8, ch247data }; + +static const unsigned char ch248data[] = { + 0x0,0x40,0x3c,0x62,0x52,0x4a,0x46,0x3c,0x2,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch248 = { 8, 13, 0, 2, 8, ch248data }; + +static const unsigned char ch249data[] = { + 0x0,0x0,0x3a,0x44,0x44,0x44,0x44,0x44,0x0,0x0,0x8,0x10,0x0 +}; +static const GLUTBitmapChar ch249 = { 8, 13, 0, 2, 8, ch249data }; + +static const unsigned char ch250data[] = { + 0x0,0x0,0x3a,0x44,0x44,0x44,0x44,0x44,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch250 = { 8, 13, 0, 2, 8, ch250data }; + +static const unsigned char ch251data[] = { + 0x0,0x0,0x3a,0x44,0x44,0x44,0x44,0x44,0x0,0x0,0x24,0x18,0x0 +}; +static const GLUTBitmapChar ch251 = { 8, 13, 0, 2, 8, ch251data }; + +static const unsigned char ch252data[] = { + 0x0,0x0,0x3a,0x44,0x44,0x44,0x44,0x44,0x0,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch252 = { 8, 13, 0, 2, 8, ch252data }; + +static const unsigned char ch253data[] = { + 0x3c,0x42,0x2,0x3a,0x46,0x42,0x42,0x42,0x0,0x0,0x10,0x8,0x0 +}; +static const GLUTBitmapChar ch253 = { 8, 13, 0, 2, 8, ch253data }; + +static const unsigned char ch254data[] = { + 0x40,0x40,0x5c,0x62,0x42,0x42,0x62,0x5c,0x40,0x40,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch254 = { 8, 13, 0, 2, 8, ch254data }; + +static const unsigned char ch255data[] = { + 0x3c,0x42,0x2,0x3a,0x46,0x42,0x42,0x42,0x0,0x0,0x24,0x24,0x0 +}; +static const GLUTBitmapChar ch255 = { 8, 13, 0, 2, 8, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + &ch0, &ch1, &ch2, &ch3, &ch4, &ch5, &ch6, &ch7, + &ch8, &ch9, &ch10, &ch11, &ch12, &ch13, &ch14, &ch15, + &ch16, &ch17, &ch18, &ch19, &ch20, &ch21, &ch22, &ch23, + &ch24, &ch25, &ch26, &ch27, &ch28, &ch29, &ch30, &ch31, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, &ch127, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmap8By13 = { + "-Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO8859-1", + 13, 256, chars +}; diff --git a/src/glut/dos/f9x15.c b/src/glut/dos/f9x15.c new file mode 100644 index 0000000000..0e7cd6da51 --- /dev/null +++ b/src/glut/dos/f9x15.c @@ -0,0 +1,1407 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Public domain terminal emulator font. Share and enjoy." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch0data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch0 = { 9, 15, 0, 3, 9, ch0data }; + +static const unsigned char ch1data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x1c,0x0,0x3e,0x0,0x7f,0x0,0x3e,0x0, + 0x1c,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch1 = { 9, 15, 0, 3, 9, ch1data }; + +static const unsigned char ch2data[] = { + 0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0, + 0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0,0x55,0x0,0xaa,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch2 = { 9, 15, 0, 3, 9, ch2data }; + +static const unsigned char ch3data[] = { + 0x0,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x1f,0x0,0x0,0x0,0x44,0x0,0x44,0x0, + 0x7c,0x0,0x44,0x0,0x44,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch3 = { 9, 15, 0, 3, 9, ch3data }; + +static const unsigned char ch4data[] = { + 0x0,0x0,0x8,0x0,0x8,0x0,0xe,0x0,0x8,0x0,0xf,0x0,0x40,0x0,0x40,0x0, + 0x70,0x0,0x40,0x0,0x78,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch4 = { 9, 15, 0, 3, 9, ch4data }; + +static const unsigned char ch5data[] = { + 0x0,0x0,0x11,0x0,0x11,0x0,0x1e,0x0,0x11,0x0,0x1e,0x0,0x0,0x0,0x3c,0x0, + 0x40,0x0,0x40,0x0,0x3c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch5 = { 9, 15, 0, 3, 9, ch5data }; + +static const unsigned char ch6data[] = { + 0x0,0x0,0x10,0x0,0x10,0x0,0x1e,0x0,0x10,0x0,0x1f,0x0,0x0,0x0,0x7c,0x0, + 0x40,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch6 = { 9, 15, 0, 3, 9, ch6data }; + +static const unsigned char ch7data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x1c,0x0,0x22,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch7 = { 9, 15, 0, 3, 9, ch7data }; + +static const unsigned char ch8data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x8,0x0,0x8,0x0,0x7f,0x0,0x8,0x0, + 0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch8 = { 9, 15, 0, 3, 9, ch8data }; + +static const unsigned char ch9data[] = { + 0x0,0x0,0x1f,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x44,0x0,0x4c,0x0, + 0x54,0x0,0x64,0x0,0x44,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch9 = { 9, 15, 0, 3, 9, ch9data }; + +static const unsigned char ch10data[] = { + 0x0,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x1f,0x0,0x0,0x0,0x10,0x0, + 0x28,0x0,0x44,0x0,0x44,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch10 = { 9, 15, 0, 3, 9, ch10data }; + +static const unsigned char ch11data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch11 = { 9, 15, 0, 3, 9, ch11data }; + +static const unsigned char ch12data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xf8,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch12 = { 9, 15, 0, 3, 9, ch12data }; + +static const unsigned char ch13data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xf,0x80,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch13 = { 9, 15, 0, 3, 9, ch13data }; + +static const unsigned char ch14data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x80,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch14 = { 9, 15, 0, 3, 9, ch14data }; + +static const unsigned char ch15data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xff,0x80,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch15 = { 9, 15, 0, 3, 9, ch15data }; + +static const unsigned char ch16data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch16 = { 9, 15, 0, 3, 9, ch16data }; + +static const unsigned char ch17data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch17 = { 9, 15, 0, 3, 9, ch17data }; + +static const unsigned char ch18data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch18 = { 9, 15, 0, 3, 9, ch18data }; + +static const unsigned char ch19data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch19 = { 9, 15, 0, 3, 9, ch19data }; + +static const unsigned char ch20data[] = { + 0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch20 = { 9, 15, 0, 3, 9, ch20data }; + +static const unsigned char ch21data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xf,0x80,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch21 = { 9, 15, 0, 3, 9, ch21data }; + +static const unsigned char ch22data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xf8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch22 = { 9, 15, 0, 3, 9, ch22data }; + +static const unsigned char ch23data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch23 = { 9, 15, 0, 3, 9, ch23data }; + +static const unsigned char ch24data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0xff,0x80,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch24 = { 9, 15, 0, 3, 9, ch24data }; + +static const unsigned char ch25data[] = { + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch25 = { 9, 15, 0, 3, 9, ch25data }; + +static const unsigned char ch26data[] = { + 0x0,0x0,0x3f,0x0,0x0,0x0,0x1,0x0,0x2,0x0,0x4,0x0,0x8,0x0,0x10,0x0, + 0x10,0x0,0x8,0x0,0x4,0x0,0x2,0x0,0x1,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch26 = { 9, 15, 0, 3, 9, ch26data }; + +static const unsigned char ch27data[] = { + 0x0,0x0,0x7f,0x0,0x0,0x0,0x40,0x0,0x20,0x0,0x10,0x0,0x8,0x0,0x4,0x0, + 0x4,0x0,0x8,0x0,0x10,0x0,0x20,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch27 = { 9, 15, 0, 3, 9, ch27data }; + +static const unsigned char ch28data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x12,0x0,0x12,0x0,0x12,0x0,0x12,0x0, + 0x12,0x0,0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch28 = { 9, 15, 0, 3, 9, ch28data }; + +static const unsigned char ch29data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x20,0x0,0x7f,0x0,0x8,0x0,0x7f,0x0, + 0x2,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch29 = { 9, 15, 0, 3, 9, ch29data }; + +static const unsigned char ch30data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x2e,0x0,0x51,0x0,0x30,0x0,0x10,0x0,0x10,0x0, + 0x7c,0x0,0x10,0x0,0x10,0x0,0x11,0x0,0xe,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch30 = { 9, 15, 0, 3, 9, ch30data }; + +static const unsigned char ch31data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0xc,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch31 = { 9, 15, 0, 3, 9, ch31data }; + +static const unsigned char ch32data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch32 = { 9, 15, 0, 3, 9, ch32data }; + +static const unsigned char ch33data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch33 = { 9, 15, 0, 3, 9, ch33data }; + +static const unsigned char ch34data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x12,0x0,0x12,0x0,0x12,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch34 = { 9, 15, 0, 3, 9, ch34data }; + +static const unsigned char ch35data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x24,0x0,0x24,0x0,0x7e,0x0,0x24,0x0, + 0x24,0x0,0x7e,0x0,0x24,0x0,0x24,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch35 = { 9, 15, 0, 3, 9, ch35data }; + +static const unsigned char ch36data[] = { + 0x0,0x0,0x0,0x0,0x8,0x0,0x3e,0x0,0x49,0x0,0x9,0x0,0x9,0x0,0xa,0x0, + 0x1c,0x0,0x28,0x0,0x48,0x0,0x49,0x0,0x3e,0x0,0x8,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch36 = { 9, 15, 0, 3, 9, ch36data }; + +static const unsigned char ch37data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x42,0x0,0x25,0x0,0x25,0x0,0x12,0x0,0x8,0x0, + 0x8,0x0,0x24,0x0,0x52,0x0,0x52,0x0,0x21,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch37 = { 9, 15, 0, 3, 9, ch37data }; + +static const unsigned char ch38data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x31,0x0,0x4a,0x0,0x44,0x0,0x4a,0x0,0x31,0x0, + 0x30,0x0,0x48,0x0,0x48,0x0,0x48,0x0,0x30,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch38 = { 9, 15, 0, 3, 9, ch38data }; + +static const unsigned char ch39data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x10,0x0,0x8,0x0,0x4,0x0,0x6,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch39 = { 9, 15, 0, 3, 9, ch39data }; + +static const unsigned char ch40data[] = { + 0x0,0x0,0x0,0x0,0x4,0x0,0x8,0x0,0x8,0x0,0x10,0x0,0x10,0x0,0x10,0x0, + 0x10,0x0,0x10,0x0,0x10,0x0,0x8,0x0,0x8,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch40 = { 9, 15, 0, 3, 9, ch40data }; + +static const unsigned char ch41data[] = { + 0x0,0x0,0x0,0x0,0x10,0x0,0x8,0x0,0x8,0x0,0x4,0x0,0x4,0x0,0x4,0x0, + 0x4,0x0,0x4,0x0,0x4,0x0,0x8,0x0,0x8,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch41 = { 9, 15, 0, 3, 9, ch41data }; + +static const unsigned char ch42data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x49,0x0,0x2a,0x0,0x1c,0x0, + 0x2a,0x0,0x49,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch42 = { 9, 15, 0, 3, 9, ch42data }; + +static const unsigned char ch43data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x7f,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch43 = { 9, 15, 0, 3, 9, ch43data }; + +static const unsigned char ch44data[] = { + 0x8,0x0,0x4,0x0,0x4,0x0,0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch44 = { 9, 15, 0, 3, 9, ch44data }; + +static const unsigned char ch45data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch45 = { 9, 15, 0, 3, 9, ch45data }; + +static const unsigned char ch46data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch46 = { 9, 15, 0, 3, 9, ch46data }; + +static const unsigned char ch47data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x20,0x0,0x20,0x0,0x10,0x0,0x8,0x0, + 0x8,0x0,0x4,0x0,0x2,0x0,0x2,0x0,0x1,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch47 = { 9, 15, 0, 3, 9, ch47data }; + +static const unsigned char ch48data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch48 = { 9, 15, 0, 3, 9, ch48data }; + +static const unsigned char ch49data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x48,0x0,0x28,0x0,0x18,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch49 = { 9, 15, 0, 3, 9, ch49data }; + +static const unsigned char ch50data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x40,0x0,0x20,0x0,0x18,0x0,0x4,0x0, + 0x2,0x0,0x1,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch50 = { 9, 15, 0, 3, 9, ch50data }; + +static const unsigned char ch51data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x1,0x0,0x1,0x0,0x1,0x0, + 0xe,0x0,0x4,0x0,0x2,0x0,0x1,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch51 = { 9, 15, 0, 3, 9, ch51data }; + +static const unsigned char ch52data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x2,0x0,0x2,0x0,0x7f,0x0,0x42,0x0, + 0x22,0x0,0x12,0x0,0xa,0x0,0x6,0x0,0x2,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch52 = { 9, 15, 0, 3, 9, ch52data }; + +static const unsigned char ch53data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x1,0x0,0x1,0x0,0x1,0x0, + 0x61,0x0,0x5e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch53 = { 9, 15, 0, 3, 9, ch53data }; + +static const unsigned char ch54data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x61,0x0, + 0x5e,0x0,0x40,0x0,0x40,0x0,0x20,0x0,0x1e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch54 = { 9, 15, 0, 3, 9, ch54data }; + +static const unsigned char ch55data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x20,0x0,0x10,0x0,0x10,0x0,0x8,0x0, + 0x4,0x0,0x2,0x0,0x1,0x0,0x1,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch55 = { 9, 15, 0, 3, 9, ch55data }; + +static const unsigned char ch56data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x22,0x0, + 0x1c,0x0,0x22,0x0,0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch56 = { 9, 15, 0, 3, 9, ch56data }; + +static const unsigned char ch57data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x0,0x2,0x0,0x1,0x0,0x1,0x0,0x3d,0x0, + 0x43,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch57 = { 9, 15, 0, 3, 9, ch57data }; + +static const unsigned char ch58data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch58 = { 9, 15, 0, 3, 9, ch58data }; + +static const unsigned char ch59data[] = { + 0x8,0x0,0x4,0x0,0x4,0x0,0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0xc,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch59 = { 9, 15, 0, 3, 9, ch59data }; + +static const unsigned char ch60data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x4,0x0,0x8,0x0,0x10,0x0,0x20,0x0, + 0x20,0x0,0x10,0x0,0x8,0x0,0x4,0x0,0x2,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch60 = { 9, 15, 0, 3, 9, ch60data }; + +static const unsigned char ch61data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x0,0x0,0x0,0x0, + 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch61 = { 9, 15, 0, 3, 9, ch61data }; + +static const unsigned char ch62data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x10,0x0,0x8,0x0,0x4,0x0,0x2,0x0, + 0x2,0x0,0x4,0x0,0x8,0x0,0x10,0x0,0x20,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch62 = { 9, 15, 0, 3, 9, ch62data }; + +static const unsigned char ch63data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x4,0x0, + 0x2,0x0,0x1,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch63 = { 9, 15, 0, 3, 9, ch63data }; + +static const unsigned char ch64data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x4d,0x0,0x53,0x0, + 0x51,0x0,0x4f,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch64 = { 9, 15, 0, 3, 9, ch64data }; + +static const unsigned char ch65data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x22,0x0,0x14,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch65 = { 9, 15, 0, 3, 9, ch65data }; + +static const unsigned char ch66data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x21,0x0, + 0x3e,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch66 = { 9, 15, 0, 3, 9, ch66data }; + +static const unsigned char ch67data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x40,0x0,0x40,0x0,0x40,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch67 = { 9, 15, 0, 3, 9, ch67data }; + +static const unsigned char ch68data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x21,0x0, + 0x21,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch68 = { 9, 15, 0, 3, 9, ch68data }; + +static const unsigned char ch69data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x0, + 0x3c,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch69 = { 9, 15, 0, 3, 9, ch69data }; + +static const unsigned char ch70data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x0, + 0x3c,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch70 = { 9, 15, 0, 3, 9, ch70data }; + +static const unsigned char ch71data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x47,0x0, + 0x40,0x0,0x40,0x0,0x40,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch71 = { 9, 15, 0, 3, 9, ch71data }; + +static const unsigned char ch72data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x7f,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch72 = { 9, 15, 0, 3, 9, ch72data }; + +static const unsigned char ch73data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch73 = { 9, 15, 0, 3, 9, ch73data }; + +static const unsigned char ch74data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x0,0x42,0x0,0x2,0x0,0x2,0x0,0x2,0x0, + 0x2,0x0,0x2,0x0,0x2,0x0,0x2,0x0,0xf,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch74 = { 9, 15, 0, 3, 9, ch74data }; + +static const unsigned char ch75data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x42,0x0,0x44,0x0,0x48,0x0,0x50,0x0, + 0x70,0x0,0x48,0x0,0x44,0x0,0x42,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch75 = { 9, 15, 0, 3, 9, ch75data }; + +static const unsigned char ch76data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x40,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch76 = { 9, 15, 0, 3, 9, ch76data }; + +static const unsigned char ch77data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x49,0x0,0x49,0x0, + 0x55,0x0,0x55,0x0,0x63,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch77 = { 9, 15, 0, 3, 9, ch77data }; + +static const unsigned char ch78data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x43,0x0,0x45,0x0, + 0x49,0x0,0x51,0x0,0x61,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch78 = { 9, 15, 0, 3, 9, ch78data }; + +static const unsigned char ch79data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch79 = { 9, 15, 0, 3, 9, ch79data }; + +static const unsigned char ch80data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x7e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch80 = { 9, 15, 0, 3, 9, ch80data }; + +static const unsigned char ch81data[] = { + 0x0,0x0,0x3,0x0,0x4,0x0,0x3e,0x0,0x49,0x0,0x51,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch81 = { 9, 15, 0, 3, 9, ch81data }; + +static const unsigned char ch82data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x42,0x0,0x44,0x0,0x48,0x0, + 0x7e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch82 = { 9, 15, 0, 3, 9, ch82data }; + +static const unsigned char ch83data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x1,0x0,0x6,0x0, + 0x38,0x0,0x40,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch83 = { 9, 15, 0, 3, 9, ch83data }; + +static const unsigned char ch84data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch84 = { 9, 15, 0, 3, 9, ch84data }; + +static const unsigned char ch85data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch85 = { 9, 15, 0, 3, 9, ch85data }; + +static const unsigned char ch86data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x14,0x0,0x14,0x0,0x14,0x0,0x22,0x0, + 0x22,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch86 = { 9, 15, 0, 3, 9, ch86data }; + +static const unsigned char ch87data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x55,0x0,0x49,0x0,0x49,0x0,0x49,0x0, + 0x49,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch87 = { 9, 15, 0, 3, 9, ch87data }; + +static const unsigned char ch88data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x22,0x0,0x14,0x0,0x8,0x0, + 0x8,0x0,0x14,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch88 = { 9, 15, 0, 3, 9, ch88data }; + +static const unsigned char ch89data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x14,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch89 = { 9, 15, 0, 3, 9, ch89data }; + +static const unsigned char ch90data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x40,0x0,0x40,0x0,0x20,0x0,0x10,0x0, + 0x8,0x0,0x4,0x0,0x2,0x0,0x1,0x0,0x7f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch90 = { 9, 15, 0, 3, 9, ch90data }; + +static const unsigned char ch91data[] = { + 0x0,0x0,0x0,0x0,0x1e,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0, + 0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x1e,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch91 = { 9, 15, 0, 3, 9, ch91data }; + +static const unsigned char ch92data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x2,0x0,0x2,0x0,0x4,0x0,0x8,0x0, + 0x8,0x0,0x10,0x0,0x20,0x0,0x20,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch92 = { 9, 15, 0, 3, 9, ch92data }; + +static const unsigned char ch93data[] = { + 0x0,0x0,0x0,0x0,0x3c,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x4,0x0, + 0x4,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x4,0x0,0x3c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch93 = { 9, 15, 0, 3, 9, ch93data }; + +static const unsigned char ch94data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x41,0x0,0x22,0x0,0x14,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch94 = { 9, 15, 0, 3, 9, ch94data }; + +static const unsigned char ch95data[] = { + 0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch95 = { 9, 15, 0, 3, 9, ch95data }; + +static const unsigned char ch96data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x2,0x0,0x4,0x0,0x8,0x0,0x18,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch96 = { 9, 15, 0, 3, 9, ch96data }; + +static const unsigned char ch97data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch97 = { 9, 15, 0, 3, 9, ch97data }; + +static const unsigned char ch98data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x5e,0x0,0x61,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch98 = { 9, 15, 0, 3, 9, ch98data }; + +static const unsigned char ch99data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch99 = { 9, 15, 0, 3, 9, ch99data }; + +static const unsigned char ch100data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x43,0x0,0x3d,0x0,0x1,0x0,0x1,0x0,0x1,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch100 = { 9, 15, 0, 3, 9, ch100data }; + +static const unsigned char ch101data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch101 = { 9, 15, 0, 3, 9, ch101data }; + +static const unsigned char ch102data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x10,0x0,0x7c,0x0, + 0x10,0x0,0x10,0x0,0x11,0x0,0x11,0x0,0xe,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch102 = { 9, 15, 0, 3, 9, ch102data }; + +static const unsigned char ch103data[] = { + 0x3e,0x0,0x41,0x0,0x41,0x0,0x3e,0x0,0x40,0x0,0x3c,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch103 = { 9, 15, 0, 3, 9, ch103data }; + +static const unsigned char ch104data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch104 = { 9, 15, 0, 3, 9, ch104data }; + +static const unsigned char ch105data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch105 = { 9, 15, 0, 3, 9, ch105data }; + +static const unsigned char ch106data[] = { + 0x3c,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x2,0x0,0x2,0x0,0x2,0x0,0x2,0x0, + 0x2,0x0,0xe,0x0,0x0,0x0,0x0,0x0,0x6,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch106 = { 9, 15, 0, 3, 9, ch106data }; + +static const unsigned char ch107data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x46,0x0,0x58,0x0,0x60,0x0,0x58,0x0, + 0x46,0x0,0x41,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch107 = { 9, 15, 0, 3, 9, ch107data }; + +static const unsigned char ch108data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch108 = { 9, 15, 0, 3, 9, ch108data }; + +static const unsigned char ch109data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x49,0x0,0x49,0x0,0x49,0x0,0x49,0x0, + 0x49,0x0,0x76,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch109 = { 9, 15, 0, 3, 9, ch109data }; + +static const unsigned char ch110data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch110 = { 9, 15, 0, 3, 9, ch110data }; + +static const unsigned char ch111data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch111 = { 9, 15, 0, 3, 9, ch111data }; + +static const unsigned char ch112data[] = { + 0x40,0x0,0x40,0x0,0x40,0x0,0x5e,0x0,0x61,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch112 = { 9, 15, 0, 3, 9, ch112data }; + +static const unsigned char ch113data[] = { + 0x1,0x0,0x1,0x0,0x1,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x43,0x0,0x3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch113 = { 9, 15, 0, 3, 9, ch113data }; + +static const unsigned char ch114data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x21,0x0, + 0x31,0x0,0x4e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch114 = { 9, 15, 0, 3, 9, ch114data }; + +static const unsigned char ch115data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x1,0x0,0x3e,0x0,0x40,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch115 = { 9, 15, 0, 3, 9, ch115data }; + +static const unsigned char ch116data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0,0x11,0x0,0x10,0x0,0x10,0x0,0x10,0x0, + 0x10,0x0,0x7e,0x0,0x10,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch116 = { 9, 15, 0, 3, 9, ch116data }; + +static const unsigned char ch117data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch117 = { 9, 15, 0, 3, 9, ch117data }; + +static const unsigned char ch118data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x14,0x0,0x14,0x0,0x22,0x0,0x22,0x0, + 0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch118 = { 9, 15, 0, 3, 9, ch118data }; + +static const unsigned char ch119data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x55,0x0,0x49,0x0,0x49,0x0,0x49,0x0, + 0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch119 = { 9, 15, 0, 3, 9, ch119data }; + +static const unsigned char ch120data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x22,0x0,0x14,0x0,0x8,0x0,0x14,0x0, + 0x22,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch120 = { 9, 15, 0, 3, 9, ch120data }; + +static const unsigned char ch121data[] = { + 0x3c,0x0,0x42,0x0,0x2,0x0,0x3a,0x0,0x46,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch121 = { 9, 15, 0, 3, 9, ch121data }; + +static const unsigned char ch122data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x10,0x0,0x8,0x0,0x4,0x0, + 0x2,0x0,0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch122 = { 9, 15, 0, 3, 9, ch122data }; + +static const unsigned char ch123data[] = { + 0x0,0x0,0x0,0x0,0x7,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x4,0x0,0x18,0x0, + 0x18,0x0,0x4,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x7,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch123 = { 9, 15, 0, 3, 9, ch123data }; + +static const unsigned char ch124data[] = { + 0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch124 = { 9, 15, 0, 3, 9, ch124data }; + +static const unsigned char ch125data[] = { + 0x0,0x0,0x0,0x0,0x70,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x10,0x0,0xc,0x0, + 0xc,0x0,0x10,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x70,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch125 = { 9, 15, 0, 3, 9, ch125data }; + +static const unsigned char ch126data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x46,0x0,0x49,0x0,0x31,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch126 = { 9, 15, 0, 3, 9, ch126data }; + +static const unsigned char ch127data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch127 = { 9, 15, 0, 3, 9, ch127data }; + +static const unsigned char ch160data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch160 = { 9, 15, 0, 3, 9, ch160data }; + +static const unsigned char ch161data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch161 = { 9, 15, 0, 3, 9, ch161data }; + +static const unsigned char ch162data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x3c,0x0,0x52,0x0,0x50,0x0,0x48,0x0, + 0x4a,0x0,0x3c,0x0,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch162 = { 9, 15, 0, 3, 9, ch162data }; + +static const unsigned char ch163data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x2e,0x0,0x51,0x0,0x30,0x0,0x10,0x0,0x10,0x0, + 0x7c,0x0,0x10,0x0,0x10,0x0,0x11,0x0,0xe,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch163 = { 9, 15, 0, 3, 9, ch163data }; + +static const unsigned char ch164data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x3e,0x0, + 0x22,0x0,0x22,0x0,0x3e,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch164 = { 9, 15, 0, 3, 9, ch164data }; + +static const unsigned char ch165data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x3e,0x0,0x8,0x0, + 0x3e,0x0,0x14,0x0,0x22,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch165 = { 9, 15, 0, 3, 9, ch165data }; + +static const unsigned char ch166data[] = { + 0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0, + 0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch166 = { 9, 15, 0, 3, 9, ch166data }; + +static const unsigned char ch167data[] = { + 0x0,0x0,0x0,0x0,0x1c,0x0,0x22,0x0,0x2,0x0,0x1c,0x0,0x22,0x0,0x22,0x0, + 0x22,0x0,0x1c,0x0,0x20,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch167 = { 9, 15, 0, 3, 9, ch167data }; + +static const unsigned char ch168data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch168 = { 9, 15, 0, 3, 9, ch168data }; + +static const unsigned char ch169data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x0,0x42,0x0,0x99,0x0,0xa5,0x0, + 0xa1,0x0,0xa5,0x0,0x99,0x0,0x42,0x0,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch169 = { 9, 15, 0, 3, 9, ch169data }; + +static const unsigned char ch170data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0x0,0x0,0x0, + 0xf,0x0,0x12,0x0,0xe,0x0,0x12,0x0,0xc,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch170 = { 9, 15, 0, 3, 9, ch170data }; + +static const unsigned char ch171data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x9,0x0,0x12,0x0,0x24,0x0,0x48,0x0, + 0x48,0x0,0x24,0x0,0x12,0x0,0x9,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch171 = { 9, 15, 0, 3, 9, ch171data }; + +static const unsigned char ch172data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x2,0x0,0x2,0x0, + 0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch172 = { 9, 15, 0, 3, 9, ch172data }; + +static const unsigned char ch173data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch173 = { 9, 15, 0, 3, 9, ch173data }; + +static const unsigned char ch174data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x0,0x42,0x0,0xa5,0x0,0xa9,0x0, + 0xbd,0x0,0xa5,0x0,0xb9,0x0,0x42,0x0,0x3c,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch174 = { 9, 15, 0, 3, 9, ch174data }; + +static const unsigned char ch175data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch175 = { 9, 15, 0, 3, 9, ch175data }; + +static const unsigned char ch176data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0xc,0x0,0x12,0x0,0x12,0x0,0xc,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch176 = { 9, 15, 0, 3, 9, ch176data }; + +static const unsigned char ch177data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x0,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x7f,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch177 = { 9, 15, 0, 3, 9, ch177data }; + +static const unsigned char ch178data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78,0x0, + 0x40,0x0,0x30,0x0,0x8,0x0,0x48,0x0,0x30,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch178 = { 9, 15, 0, 3, 9, ch178data }; + +static const unsigned char ch179data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x0, + 0x48,0x0,0x8,0x0,0x10,0x0,0x48,0x0,0x30,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch179 = { 9, 15, 0, 3, 9, ch179data }; + +static const unsigned char ch180data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch180 = { 9, 15, 0, 3, 9, ch180data }; + +static const unsigned char ch181data[] = { + 0x0,0x0,0x40,0x0,0x40,0x0,0x5d,0x0,0x63,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch181 = { 9, 15, 0, 3, 9, ch181data }; + +static const unsigned char ch182data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x5,0x0,0x5,0x0,0x5,0x0,0x5,0x0,0x5,0x0, + 0x3d,0x0,0x45,0x0,0x45,0x0,0x45,0x0,0x3f,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch182 = { 9, 15, 0, 3, 9, ch182data }; + +static const unsigned char ch183data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0, + 0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch183 = { 9, 15, 0, 3, 9, ch183data }; + +static const unsigned char ch184data[] = { + 0x18,0x0,0x24,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch184 = { 9, 15, 0, 3, 9, ch184data }; + +static const unsigned char ch185data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x0, + 0x20,0x0,0x20,0x0,0x20,0x0,0x60,0x0,0x20,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch185 = { 9, 15, 0, 3, 9, ch185data }; + +static const unsigned char ch186data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x7c,0x0,0x0,0x0,0x38,0x0,0x44,0x0,0x44,0x0,0x38,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch186 = { 9, 15, 0, 3, 9, ch186data }; + +static const unsigned char ch187data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x48,0x0,0x24,0x0,0x12,0x0,0x9,0x0, + 0x9,0x0,0x12,0x0,0x24,0x0,0x48,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch187 = { 9, 15, 0, 3, 9, ch187data }; + +static const unsigned char ch188data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0xd,0x0,0x9,0x0,0x5,0x0,0x73,0x0, + 0x21,0x0,0x20,0x0,0x20,0x0,0x60,0x0,0x20,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch188 = { 9, 15, 0, 3, 9, ch188data }; + +static const unsigned char ch189data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x0,0x8,0x0,0x6,0x0,0x1,0x0,0x79,0x0, + 0x26,0x0,0x20,0x0,0x20,0x0,0x60,0x0,0x20,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch189 = { 9, 15, 0, 3, 9, ch189data }; + +static const unsigned char ch190data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0xd,0x0,0x9,0x0,0x5,0x0,0x33,0x0, + 0x49,0x0,0x8,0x0,0x10,0x0,0x48,0x0,0x30,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch190 = { 9, 15, 0, 3, 9, ch190data }; + +static const unsigned char ch191data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x40,0x0,0x20,0x0, + 0x10,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch191 = { 9, 15, 0, 3, 9, ch191data }; + +static const unsigned char ch192data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch192 = { 9, 15, 0, 3, 9, ch192data }; + +static const unsigned char ch193data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch193 = { 9, 15, 0, 3, 9, ch193data }; + +static const unsigned char ch194data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch194 = { 9, 15, 0, 3, 9, ch194data }; + +static const unsigned char ch195data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch195 = { 9, 15, 0, 3, 9, ch195data }; + +static const unsigned char ch196data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch196 = { 9, 15, 0, 3, 9, ch196data }; + +static const unsigned char ch197data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x22,0x0,0x1c,0x0,0x8,0x0,0x14,0x0,0x8,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch197 = { 9, 15, 0, 3, 9, ch197data }; + +static const unsigned char ch198data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x4f,0x0,0x48,0x0,0x48,0x0,0x48,0x0,0x7e,0x0, + 0x48,0x0,0x48,0x0,0x48,0x0,0x48,0x0,0x37,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch198 = { 9, 15, 0, 3, 9, ch198data }; + +static const unsigned char ch199data[] = { + 0x18,0x0,0x24,0x0,0xc,0x0,0x3e,0x0,0x41,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x40,0x0,0x40,0x0,0x40,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch199 = { 9, 15, 0, 3, 9, ch199data }; + +static const unsigned char ch200data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x3c,0x0, + 0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch200 = { 9, 15, 0, 3, 9, ch200data }; + +static const unsigned char ch201data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x3c,0x0, + 0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch201 = { 9, 15, 0, 3, 9, ch201data }; + +static const unsigned char ch202data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x3c,0x0, + 0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch202 = { 9, 15, 0, 3, 9, ch202data }; + +static const unsigned char ch203data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x3c,0x0, + 0x20,0x0,0x20,0x0,0x7f,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch203 = { 9, 15, 0, 3, 9, ch203data }; + +static const unsigned char ch204data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x3e,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch204 = { 9, 15, 0, 3, 9, ch204data }; + +static const unsigned char ch205data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x3e,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch205 = { 9, 15, 0, 3, 9, ch205data }; + +static const unsigned char ch206data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x3e,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch206 = { 9, 15, 0, 3, 9, ch206data }; + +static const unsigned char ch207data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x8,0x0,0x3e,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch207 = { 9, 15, 0, 3, 9, ch207data }; + +static const unsigned char ch208data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x21,0x0, + 0x79,0x0,0x21,0x0,0x21,0x0,0x21,0x0,0x7e,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch208 = { 9, 15, 0, 3, 9, ch208data }; + +static const unsigned char ch209data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x43,0x0,0x45,0x0,0x49,0x0,0x49,0x0, + 0x51,0x0,0x61,0x0,0x41,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch209 = { 9, 15, 0, 3, 9, ch209data }; + +static const unsigned char ch210data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch210 = { 9, 15, 0, 3, 9, ch210data }; + +static const unsigned char ch211data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch211 = { 9, 15, 0, 3, 9, ch211data }; + +static const unsigned char ch212data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch212 = { 9, 15, 0, 3, 9, ch212data }; + +static const unsigned char ch213data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch213 = { 9, 15, 0, 3, 9, ch213data }; + +static const unsigned char ch214data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch214 = { 9, 15, 0, 3, 9, ch214data }; + +static const unsigned char ch215data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x22,0x0,0x14,0x0,0x8,0x0, + 0x14,0x0,0x22,0x0,0x41,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch215 = { 9, 15, 0, 3, 9, ch215data }; + +static const unsigned char ch216data[] = { + 0x0,0x0,0x0,0x0,0x40,0x0,0x3e,0x0,0x61,0x0,0x51,0x0,0x51,0x0,0x49,0x0, + 0x49,0x0,0x45,0x0,0x45,0x0,0x43,0x0,0x3e,0x0,0x1,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch216 = { 9, 15, 0, 3, 9, ch216data }; + +static const unsigned char ch217data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch217 = { 9, 15, 0, 3, 9, ch217data }; + +static const unsigned char ch218data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch218 = { 9, 15, 0, 3, 9, ch218data }; + +static const unsigned char ch219data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch219 = { 9, 15, 0, 3, 9, ch219data }; + +static const unsigned char ch220data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch220 = { 9, 15, 0, 3, 9, ch220data }; + +static const unsigned char ch221data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x14,0x0, + 0x22,0x0,0x41,0x0,0x41,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch221 = { 9, 15, 0, 3, 9, ch221data }; + +static const unsigned char ch222data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x40,0x0,0x40,0x0,0x7e,0x0,0x41,0x0, + 0x41,0x0,0x41,0x0,0x7e,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch222 = { 9, 15, 0, 3, 9, ch222data }; + +static const unsigned char ch223data[] = { + 0x0,0x0,0x0,0x0,0x40,0x0,0x5e,0x0,0x61,0x0,0x41,0x0,0x41,0x0,0x7e,0x0, + 0x41,0x0,0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch223 = { 9, 15, 0, 3, 9, ch223data }; + +static const unsigned char ch224data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch224 = { 9, 15, 0, 3, 9, ch224data }; + +static const unsigned char ch225data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch225 = { 9, 15, 0, 3, 9, ch225data }; + +static const unsigned char ch226data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch226 = { 9, 15, 0, 3, 9, ch226data }; + +static const unsigned char ch227data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch227 = { 9, 15, 0, 3, 9, ch227data }; + +static const unsigned char ch228data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch228 = { 9, 15, 0, 3, 9, ch228data }; + +static const unsigned char ch229data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x43,0x0,0x41,0x0,0x3f,0x0,0x1,0x0, + 0x1,0x0,0x3e,0x0,0x0,0x0,0xc,0x0,0x12,0x0,0xc,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch229 = { 9, 15, 0, 3, 9, ch229data }; + +static const unsigned char ch230data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x37,0x0,0x49,0x0,0x48,0x0,0x3e,0x0,0x9,0x0, + 0x49,0x0,0x36,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch230 = { 9, 15, 0, 3, 9, ch230data }; + +static const unsigned char ch231data[] = { + 0x18,0x0,0x24,0x0,0xc,0x0,0x3e,0x0,0x41,0x0,0x40,0x0,0x40,0x0,0x40,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch231 = { 9, 15, 0, 3, 9, ch231data }; + +static const unsigned char ch232data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch232 = { 9, 15, 0, 3, 9, ch232data }; + +static const unsigned char ch233data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch233 = { 9, 15, 0, 3, 9, ch233data }; + +static const unsigned char ch234data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch234 = { 9, 15, 0, 3, 9, ch234data }; + +static const unsigned char ch235data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x40,0x0,0x40,0x0,0x7f,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch235 = { 9, 15, 0, 3, 9, ch235data }; + +static const unsigned char ch236data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch236 = { 9, 15, 0, 3, 9, ch236data }; + +static const unsigned char ch237data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch237 = { 9, 15, 0, 3, 9, ch237data }; + +static const unsigned char ch238data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x24,0x0,0x18,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch238 = { 9, 15, 0, 3, 9, ch238data }; + +static const unsigned char ch239data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x8,0x0,0x8,0x0,0x8,0x0,0x8,0x0, + 0x8,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch239 = { 9, 15, 0, 3, 9, ch239data }; + +static const unsigned char ch240data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x4,0x0,0x28,0x0,0x18,0x0,0x24,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch240 = { 9, 15, 0, 3, 9, ch240data }; + +static const unsigned char ch241data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x0,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch241 = { 9, 15, 0, 3, 9, ch241data }; + +static const unsigned char ch242data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch242 = { 9, 15, 0, 3, 9, ch242data }; + +static const unsigned char ch243data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch243 = { 9, 15, 0, 3, 9, ch243data }; + +static const unsigned char ch244data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch244 = { 9, 15, 0, 3, 9, ch244data }; + +static const unsigned char ch245data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x28,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch245 = { 9, 15, 0, 3, 9, ch245data }; + +static const unsigned char ch246data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3e,0x0,0x41,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x41,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch246 = { 9, 15, 0, 3, 9, ch246data }; + +static const unsigned char ch247data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x1c,0x0,0x8,0x0,0x0,0x0,0x7f,0x0, + 0x0,0x0,0x8,0x0,0x1c,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch247 = { 9, 15, 0, 3, 9, ch247data }; + +static const unsigned char ch248data[] = { + 0x0,0x0,0x0,0x0,0x40,0x0,0x3e,0x0,0x51,0x0,0x51,0x0,0x49,0x0,0x45,0x0, + 0x45,0x0,0x3e,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch248 = { 9, 15, 0, 3, 9, ch248data }; + +static const unsigned char ch249data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x10,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch249 = { 9, 15, 0, 3, 9, ch249data }; + +static const unsigned char ch250data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch250 = { 9, 15, 0, 3, 9, ch250data }; + +static const unsigned char ch251data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x22,0x0,0x1c,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch251 = { 9, 15, 0, 3, 9, ch251data }; + +static const unsigned char ch252data[] = { + 0x0,0x0,0x0,0x0,0x0,0x0,0x3d,0x0,0x42,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch252 = { 9, 15, 0, 3, 9, ch252data }; + +static const unsigned char ch253data[] = { + 0x3c,0x0,0x42,0x0,0x2,0x0,0x3a,0x0,0x46,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x4,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch253 = { 9, 15, 0, 3, 9, ch253data }; + +static const unsigned char ch254data[] = { + 0x40,0x0,0x40,0x0,0x40,0x0,0x5e,0x0,0x61,0x0,0x41,0x0,0x41,0x0,0x41,0x0, + 0x61,0x0,0x5e,0x0,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch254 = { 9, 15, 0, 3, 9, ch254data }; + +static const unsigned char ch255data[] = { + 0x3c,0x0,0x42,0x0,0x2,0x0,0x3a,0x0,0x46,0x0,0x42,0x0,0x42,0x0,0x42,0x0, + 0x42,0x0,0x42,0x0,0x0,0x0,0x0,0x0,0x14,0x0,0x14,0x0,0x0,0x0 +}; +static const GLUTBitmapChar ch255 = { 9, 15, 0, 3, 9, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + &ch0, &ch1, &ch2, &ch3, &ch4, &ch5, &ch6, &ch7, + &ch8, &ch9, &ch10, &ch11, &ch12, &ch13, &ch14, &ch15, + &ch16, &ch17, &ch18, &ch19, &ch20, &ch21, &ch22, &ch23, + &ch24, &ch25, &ch26, &ch27, &ch28, &ch29, &ch30, &ch31, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, &ch127, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmap9By15 = { + "-Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO8859-1", + 15, 256, chars +}; diff --git a/src/glut/dos/hel10.c b/src/glut/dos/hel10.c new file mode 100644 index 0000000000..3d24ffee1c --- /dev/null +++ b/src/glut/dos/hel10.c @@ -0,0 +1,1019 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch32data[] = { + 0x0 +}; +static const GLUTBitmapChar ch32 = { 1, 1, 0, 0, 3, ch32data }; + +static const unsigned char ch33data[] = { + 0x80,0x0,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch33 = { 1, 8, -1, 0, 3, ch33data }; + +static const unsigned char ch34data[] = { + 0xa0,0xa0 +}; +static const GLUTBitmapChar ch34 = { 3, 2, -1, -6, 4, ch34data }; + +static const unsigned char ch35data[] = { + 0x50,0x50,0xf8,0x28,0x7c,0x28,0x28 +}; +static const GLUTBitmapChar ch35 = { 6, 7, 0, 0, 6, ch35data }; + +static const unsigned char ch36data[] = { + 0x20,0x70,0xa8,0x28,0x70,0xa0,0xa8,0x70,0x20 +}; +static const GLUTBitmapChar ch36 = { 5, 9, 0, 1, 6, ch36data }; + +static const unsigned char ch37data[] = { + 0x26,0x29,0x16,0x10,0x8,0x68,0x94,0x64 +}; +static const GLUTBitmapChar ch37 = { 8, 8, 0, 0, 9, ch37data }; + +static const unsigned char ch38data[] = { + 0x64,0x98,0x98,0xa4,0x60,0x50,0x50,0x20 +}; +static const GLUTBitmapChar ch38 = { 6, 8, -1, 0, 8, ch38data }; + +static const unsigned char ch39data[] = { + 0x80,0x40,0x40 +}; +static const GLUTBitmapChar ch39 = { 2, 3, -1, -5, 3, ch39data }; + +static const unsigned char ch40data[] = { + 0x20,0x40,0x40,0x80,0x80,0x80,0x80,0x40,0x40,0x20 +}; +static const GLUTBitmapChar ch40 = { 3, 10, 0, 2, 4, ch40data }; + +static const unsigned char ch41data[] = { + 0x80,0x40,0x40,0x20,0x20,0x20,0x20,0x40,0x40,0x80 +}; +static const GLUTBitmapChar ch41 = { 3, 10, -1, 2, 4, ch41data }; + +static const unsigned char ch42data[] = { + 0xa0,0x40,0xa0 +}; +static const GLUTBitmapChar ch42 = { 3, 3, 0, -5, 4, ch42data }; + +static const unsigned char ch43data[] = { + 0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch43 = { 5, 5, 0, -1, 6, ch43data }; + +static const unsigned char ch44data[] = { + 0x80,0x40,0x40 +}; +static const GLUTBitmapChar ch44 = { 2, 3, 0, 2, 3, ch44data }; + +static const unsigned char ch45data[] = { + 0xf8 +}; +static const GLUTBitmapChar ch45 = { 5, 1, -1, -3, 7, ch45data }; + +static const unsigned char ch46data[] = { + 0x80 +}; +static const GLUTBitmapChar ch46 = { 1, 1, -1, 0, 3, ch46data }; + +static const unsigned char ch47data[] = { + 0x80,0x80,0x40,0x40,0x40,0x40,0x20,0x20 +}; +static const GLUTBitmapChar ch47 = { 3, 8, 0, 0, 3, ch47data }; + +static const unsigned char ch48data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch48 = { 5, 8, 0, 0, 6, ch48data }; + +static const unsigned char ch49data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0xc0,0x40 +}; +static const GLUTBitmapChar ch49 = { 2, 8, -1, 0, 6, ch49data }; + +static const unsigned char ch50data[] = { + 0xf8,0x80,0x40,0x30,0x8,0x8,0x88,0x70 +}; +static const GLUTBitmapChar ch50 = { 5, 8, 0, 0, 6, ch50data }; + +static const unsigned char ch51data[] = { + 0x70,0x88,0x8,0x8,0x30,0x8,0x88,0x70 +}; +static const GLUTBitmapChar ch51 = { 5, 8, 0, 0, 6, ch51data }; + +static const unsigned char ch52data[] = { + 0x10,0x10,0xf8,0x90,0x50,0x50,0x30,0x10 +}; +static const GLUTBitmapChar ch52 = { 5, 8, 0, 0, 6, ch52data }; + +static const unsigned char ch53data[] = { + 0x70,0x88,0x8,0x8,0xf0,0x80,0x80,0xf8 +}; +static const GLUTBitmapChar ch53 = { 5, 8, 0, 0, 6, ch53data }; + +static const unsigned char ch54data[] = { + 0x70,0x88,0x88,0xc8,0xb0,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch54 = { 5, 8, 0, 0, 6, ch54data }; + +static const unsigned char ch55data[] = { + 0x40,0x40,0x20,0x20,0x10,0x10,0x8,0xf8 +}; +static const GLUTBitmapChar ch55 = { 5, 8, 0, 0, 6, ch55data }; + +static const unsigned char ch56data[] = { + 0x70,0x88,0x88,0x88,0x70,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch56 = { 5, 8, 0, 0, 6, ch56data }; + +static const unsigned char ch57data[] = { + 0x70,0x88,0x8,0x68,0x98,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch57 = { 5, 8, 0, 0, 6, ch57data }; + +static const unsigned char ch58data[] = { + 0x80,0x0,0x0,0x0,0x0,0x80 +}; +static const GLUTBitmapChar ch58 = { 1, 6, -1, 0, 3, ch58data }; + +static const unsigned char ch59data[] = { + 0x80,0x40,0x40,0x0,0x0,0x0,0x0,0x40 +}; +static const GLUTBitmapChar ch59 = { 2, 8, 0, 2, 3, ch59data }; + +static const unsigned char ch60data[] = { + 0x20,0x40,0x80,0x40,0x20 +}; +static const GLUTBitmapChar ch60 = { 3, 5, -1, -1, 6, ch60data }; + +static const unsigned char ch61data[] = { + 0xf0,0x0,0xf0 +}; +static const GLUTBitmapChar ch61 = { 4, 3, 0, -2, 5, ch61data }; + +static const unsigned char ch62data[] = { + 0x80,0x40,0x20,0x40,0x80 +}; +static const GLUTBitmapChar ch62 = { 3, 5, -1, -1, 6, ch62data }; + +static const unsigned char ch63data[] = { + 0x40,0x0,0x40,0x40,0x20,0x10,0x90,0x60 +}; +static const GLUTBitmapChar ch63 = { 4, 8, -1, 0, 6, ch63data }; + +static const unsigned char ch64data[] = { + 0x3e,0x0,0x40,0x0,0x9b,0x0,0xa4,0x80,0xa4,0x80,0xa2,0x40,0x92,0x40,0x4d,0x40, + 0x20,0x80,0x1f,0x0 +}; +static const GLUTBitmapChar ch64 = { 10, 10, 0, 2, 11, ch64data }; + +static const unsigned char ch65data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10 +}; +static const GLUTBitmapChar ch65 = { 7, 8, 0, 0, 7, ch65data }; + +static const unsigned char ch66data[] = { + 0xf0,0x88,0x88,0x88,0xf0,0x88,0x88,0xf0 +}; +static const GLUTBitmapChar ch66 = { 5, 8, -1, 0, 7, ch66data }; + +static const unsigned char ch67data[] = { + 0x78,0x84,0x80,0x80,0x80,0x80,0x84,0x78 +}; +static const GLUTBitmapChar ch67 = { 6, 8, -1, 0, 8, ch67data }; + +static const unsigned char ch68data[] = { + 0xf0,0x88,0x84,0x84,0x84,0x84,0x88,0xf0 +}; +static const GLUTBitmapChar ch68 = { 6, 8, -1, 0, 8, ch68data }; + +static const unsigned char ch69data[] = { + 0xf8,0x80,0x80,0x80,0xf8,0x80,0x80,0xf8 +}; +static const GLUTBitmapChar ch69 = { 5, 8, -1, 0, 7, ch69data }; + +static const unsigned char ch70data[] = { + 0x80,0x80,0x80,0x80,0xf0,0x80,0x80,0xf8 +}; +static const GLUTBitmapChar ch70 = { 5, 8, -1, 0, 6, ch70data }; + +static const unsigned char ch71data[] = { + 0x74,0x8c,0x84,0x8c,0x80,0x80,0x84,0x78 +}; +static const GLUTBitmapChar ch71 = { 6, 8, -1, 0, 8, ch71data }; + +static const unsigned char ch72data[] = { + 0x84,0x84,0x84,0x84,0xfc,0x84,0x84,0x84 +}; +static const GLUTBitmapChar ch72 = { 6, 8, -1, 0, 8, ch72data }; + +static const unsigned char ch73data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch73 = { 1, 8, -1, 0, 3, ch73data }; + +static const unsigned char ch74data[] = { + 0x60,0x90,0x10,0x10,0x10,0x10,0x10,0x10 +}; +static const GLUTBitmapChar ch74 = { 4, 8, 0, 0, 5, ch74data }; + +static const unsigned char ch75data[] = { + 0x88,0x88,0x90,0x90,0xe0,0xa0,0x90,0x88 +}; +static const GLUTBitmapChar ch75 = { 5, 8, -1, 0, 7, ch75data }; + +static const unsigned char ch76data[] = { + 0xf0,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch76 = { 4, 8, -1, 0, 6, ch76data }; + +static const unsigned char ch77data[] = { + 0x92,0x92,0x92,0xaa,0xaa,0xc6,0xc6,0x82 +}; +static const GLUTBitmapChar ch77 = { 7, 8, -1, 0, 9, ch77data }; + +static const unsigned char ch78data[] = { + 0x8c,0x8c,0x94,0x94,0xa4,0xa4,0xc4,0xc4 +}; +static const GLUTBitmapChar ch78 = { 6, 8, -1, 0, 8, ch78data }; + +static const unsigned char ch79data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78 +}; +static const GLUTBitmapChar ch79 = { 6, 8, -1, 0, 8, ch79data }; + +static const unsigned char ch80data[] = { + 0x80,0x80,0x80,0x80,0xf0,0x88,0x88,0xf0 +}; +static const GLUTBitmapChar ch80 = { 5, 8, -1, 0, 7, ch80data }; + +static const unsigned char ch81data[] = { + 0x2,0x7c,0x8c,0x94,0x84,0x84,0x84,0x84,0x78 +}; +static const GLUTBitmapChar ch81 = { 7, 9, -1, 1, 8, ch81data }; + +static const unsigned char ch82data[] = { + 0x88,0x88,0x88,0x88,0xf0,0x88,0x88,0xf0 +}; +static const GLUTBitmapChar ch82 = { 5, 8, -1, 0, 7, ch82data }; + +static const unsigned char ch83data[] = { + 0x70,0x88,0x88,0x8,0x70,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch83 = { 5, 8, -1, 0, 7, ch83data }; + +static const unsigned char ch84data[] = { + 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xf8 +}; +static const GLUTBitmapChar ch84 = { 5, 8, 0, 0, 5, ch84data }; + +static const unsigned char ch85data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84 +}; +static const GLUTBitmapChar ch85 = { 6, 8, -1, 0, 8, ch85data }; + +static const unsigned char ch86data[] = { + 0x10,0x28,0x28,0x44,0x44,0x44,0x82,0x82 +}; +static const GLUTBitmapChar ch86 = { 7, 8, 0, 0, 7, ch86data }; + +static const unsigned char ch87data[] = { + 0x22,0x0,0x22,0x0,0x22,0x0,0x55,0x0,0x49,0x0,0x49,0x0,0x88,0x80,0x88,0x80 +}; +static const GLUTBitmapChar ch87 = { 9, 8, 0, 0, 9, ch87data }; + +static const unsigned char ch88data[] = { + 0x88,0x88,0x50,0x50,0x20,0x50,0x88,0x88 +}; +static const GLUTBitmapChar ch88 = { 5, 8, -1, 0, 7, ch88data }; + +static const unsigned char ch89data[] = { + 0x10,0x10,0x10,0x28,0x28,0x44,0x44,0x82 +}; +static const GLUTBitmapChar ch89 = { 7, 8, 0, 0, 7, ch89data }; + +static const unsigned char ch90data[] = { + 0xf8,0x80,0x40,0x20,0x20,0x10,0x8,0xf8 +}; +static const GLUTBitmapChar ch90 = { 5, 8, -1, 0, 7, ch90data }; + +static const unsigned char ch91data[] = { + 0xc0,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xc0 +}; +static const GLUTBitmapChar ch91 = { 2, 10, -1, 2, 3, ch91data }; + +static const unsigned char ch92data[] = { + 0x20,0x20,0x40,0x40,0x40,0x40,0x80,0x80 +}; +static const GLUTBitmapChar ch92 = { 3, 8, 0, 0, 3, ch92data }; + +static const unsigned char ch93data[] = { + 0xc0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xc0 +}; +static const GLUTBitmapChar ch93 = { 2, 10, 0, 2, 3, ch93data }; + +static const unsigned char ch94data[] = { + 0x88,0x50,0x50,0x20,0x20 +}; +static const GLUTBitmapChar ch94 = { 5, 5, 0, -3, 6, ch94data }; + +static const unsigned char ch95data[] = { + 0xfc +}; +static const GLUTBitmapChar ch95 = { 6, 1, 0, 2, 6, ch95data }; + +static const unsigned char ch96data[] = { + 0x80,0x80,0x40 +}; +static const GLUTBitmapChar ch96 = { 2, 3, 0, -5, 3, ch96data }; + +static const unsigned char ch97data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0 +}; +static const GLUTBitmapChar ch97 = { 5, 6, 0, 0, 5, ch97data }; + +static const unsigned char ch98data[] = { + 0xb0,0xc8,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch98 = { 5, 8, 0, 0, 6, ch98data }; + +static const unsigned char ch99data[] = { + 0x60,0x90,0x80,0x80,0x90,0x60 +}; +static const GLUTBitmapChar ch99 = { 4, 6, 0, 0, 5, ch99data }; + +static const unsigned char ch100data[] = { + 0x68,0x98,0x88,0x88,0x98,0x68,0x8,0x8 +}; +static const GLUTBitmapChar ch100 = { 5, 8, 0, 0, 6, ch100data }; + +static const unsigned char ch101data[] = { + 0x60,0x90,0x80,0xf0,0x90,0x60 +}; +static const GLUTBitmapChar ch101 = { 4, 6, 0, 0, 5, ch101data }; + +static const unsigned char ch102data[] = { + 0x40,0x40,0x40,0x40,0x40,0xe0,0x40,0x30 +}; +static const GLUTBitmapChar ch102 = { 4, 8, 0, 0, 4, ch102data }; + +static const unsigned char ch103data[] = { + 0x70,0x8,0x68,0x98,0x88,0x88,0x98,0x68 +}; +static const GLUTBitmapChar ch103 = { 5, 8, 0, 2, 6, ch103data }; + +static const unsigned char ch104data[] = { + 0x88,0x88,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch104 = { 5, 8, 0, 0, 6, ch104data }; + +static const unsigned char ch105data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch105 = { 1, 8, 0, 0, 2, ch105data }; + +static const unsigned char ch106data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch106 = { 1, 9, 0, 1, 2, ch106data }; + +static const unsigned char ch107data[] = { + 0x90,0x90,0xa0,0xc0,0xa0,0x90,0x80,0x80 +}; +static const GLUTBitmapChar ch107 = { 4, 8, 0, 0, 5, ch107data }; + +static const unsigned char ch108data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch108 = { 1, 8, 0, 0, 2, ch108data }; + +static const unsigned char ch109data[] = { + 0x92,0x92,0x92,0x92,0x92,0xec +}; +static const GLUTBitmapChar ch109 = { 7, 6, 0, 0, 8, ch109data }; + +static const unsigned char ch110data[] = { + 0x88,0x88,0x88,0x88,0xc8,0xb0 +}; +static const GLUTBitmapChar ch110 = { 5, 6, 0, 0, 6, ch110data }; + +static const unsigned char ch111data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch111 = { 5, 6, 0, 0, 6, ch111data }; + +static const unsigned char ch112data[] = { + 0x80,0x80,0xb0,0xc8,0x88,0x88,0xc8,0xb0 +}; +static const GLUTBitmapChar ch112 = { 5, 8, 0, 2, 6, ch112data }; + +static const unsigned char ch113data[] = { + 0x8,0x8,0x68,0x98,0x88,0x88,0x98,0x68 +}; +static const GLUTBitmapChar ch113 = { 5, 8, 0, 2, 6, ch113data }; + +static const unsigned char ch114data[] = { + 0x80,0x80,0x80,0x80,0xc0,0xa0 +}; +static const GLUTBitmapChar ch114 = { 3, 6, 0, 0, 4, ch114data }; + +static const unsigned char ch115data[] = { + 0x60,0x90,0x10,0x60,0x90,0x60 +}; +static const GLUTBitmapChar ch115 = { 4, 6, 0, 0, 5, ch115data }; + +static const unsigned char ch116data[] = { + 0x60,0x40,0x40,0x40,0x40,0xe0,0x40,0x40 +}; +static const GLUTBitmapChar ch116 = { 3, 8, 0, 0, 4, ch116data }; + +static const unsigned char ch117data[] = { + 0x70,0x90,0x90,0x90,0x90,0x90 +}; +static const GLUTBitmapChar ch117 = { 4, 6, 0, 0, 5, ch117data }; + +static const unsigned char ch118data[] = { + 0x20,0x20,0x50,0x50,0x88,0x88 +}; +static const GLUTBitmapChar ch118 = { 5, 6, 0, 0, 6, ch118data }; + +static const unsigned char ch119data[] = { + 0x28,0x28,0x54,0x54,0x92,0x92 +}; +static const GLUTBitmapChar ch119 = { 7, 6, 0, 0, 8, ch119data }; + +static const unsigned char ch120data[] = { + 0x88,0x88,0x50,0x20,0x50,0x88 +}; +static const GLUTBitmapChar ch120 = { 5, 6, 0, 0, 6, ch120data }; + +static const unsigned char ch121data[] = { + 0x80,0x40,0x40,0x60,0xa0,0xa0,0x90,0x90 +}; +static const GLUTBitmapChar ch121 = { 4, 8, 0, 2, 5, ch121data }; + +static const unsigned char ch122data[] = { + 0xf0,0x80,0x40,0x20,0x10,0xf0 +}; +static const GLUTBitmapChar ch122 = { 4, 6, 0, 0, 5, ch122data }; + +static const unsigned char ch123data[] = { + 0x20,0x40,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x20 +}; +static const GLUTBitmapChar ch123 = { 3, 10, 0, 2, 3, ch123data }; + +static const unsigned char ch124data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch124 = { 1, 10, -1, 2, 3, ch124data }; + +static const unsigned char ch125data[] = { + 0x80,0x40,0x40,0x40,0x40,0x20,0x40,0x40,0x40,0x80 +}; +static const GLUTBitmapChar ch125 = { 3, 10, 0, 2, 3, ch125data }; + +static const unsigned char ch126data[] = { + 0x98,0x64 +}; +static const GLUTBitmapChar ch126 = { 6, 2, 0, -3, 7, ch126data }; + +static const unsigned char ch160data[] = { + 0x0 +}; +static const GLUTBitmapChar ch160 = { 1, 1, 0, 0, 3, ch160data }; + +static const unsigned char ch161data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch161 = { 1, 8, -1, 2, 3, ch161data }; + +static const unsigned char ch162data[] = { + 0x40,0x70,0xa8,0xa0,0xa0,0xa8,0x70,0x10 +}; +static const GLUTBitmapChar ch162 = { 5, 8, 0, 1, 6, ch162data }; + +static const unsigned char ch163data[] = { + 0xb0,0x48,0x40,0x40,0xe0,0x40,0x48,0x30 +}; +static const GLUTBitmapChar ch163 = { 5, 8, 0, 0, 6, ch163data }; + +static const unsigned char ch164data[] = { + 0x90,0x60,0x90,0x90,0x60,0x90 +}; +static const GLUTBitmapChar ch164 = { 4, 6, 0, -1, 5, ch164data }; + +static const unsigned char ch165data[] = { + 0x20,0xf8,0x20,0xf8,0x50,0x50,0x88,0x88 +}; +static const GLUTBitmapChar ch165 = { 5, 8, 0, 0, 6, ch165data }; + +static const unsigned char ch166data[] = { + 0x80,0x80,0x80,0x80,0x0,0x0,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch166 = { 1, 10, -1, 2, 3, ch166data }; + +static const unsigned char ch167data[] = { + 0x70,0x88,0x18,0x70,0xc8,0x98,0x70,0xc0,0x88,0x70 +}; +static const GLUTBitmapChar ch167 = { 5, 10, 0, 2, 6, ch167data }; + +static const unsigned char ch168data[] = { + 0xa0 +}; +static const GLUTBitmapChar ch168 = { 3, 1, 0, -7, 3, ch168data }; + +static const unsigned char ch169data[] = { + 0x38,0x44,0x9a,0xa2,0x9a,0x44,0x38 +}; +static const GLUTBitmapChar ch169 = { 7, 7, -1, 0, 9, ch169data }; + +static const unsigned char ch170data[] = { + 0xe0,0x0,0xa0,0x20,0xe0 +}; +static const GLUTBitmapChar ch170 = { 3, 5, 0, -3, 4, ch170data }; + +static const unsigned char ch171data[] = { + 0x28,0x50,0xa0,0x50,0x28 +}; +static const GLUTBitmapChar ch171 = { 5, 5, 0, 0, 6, ch171data }; + +static const unsigned char ch172data[] = { + 0x8,0x8,0xf8 +}; +static const GLUTBitmapChar ch172 = { 5, 3, -1, -2, 7, ch172data }; + +static const unsigned char ch173data[] = { + 0xe0 +}; +static const GLUTBitmapChar ch173 = { 3, 1, 0, -3, 4, ch173data }; + +static const unsigned char ch174data[] = { + 0x38,0x44,0xaa,0xb2,0xba,0x44,0x38 +}; +static const GLUTBitmapChar ch174 = { 7, 7, -1, 0, 9, ch174data }; + +static const unsigned char ch175data[] = { + 0xe0 +}; +static const GLUTBitmapChar ch175 = { 3, 1, 0, -7, 3, ch175data }; + +static const unsigned char ch176data[] = { + 0x60,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch176 = { 4, 4, 0, -3, 4, ch176data }; + +static const unsigned char ch177data[] = { + 0xf8,0x0,0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch177 = { 5, 7, 0, 0, 6, ch177data }; + +static const unsigned char ch178data[] = { + 0xe0,0x40,0xa0,0x60 +}; +static const GLUTBitmapChar ch178 = { 3, 4, 0, -3, 3, ch178data }; + +static const unsigned char ch179data[] = { + 0xc0,0x20,0x40,0xe0 +}; +static const GLUTBitmapChar ch179 = { 3, 4, 0, -3, 3, ch179data }; + +static const unsigned char ch180data[] = { + 0x80,0x40 +}; +static const GLUTBitmapChar ch180 = { 2, 2, 0, -6, 3, ch180data }; + +static const unsigned char ch181data[] = { + 0x80,0x80,0xf0,0x90,0x90,0x90,0x90,0x90 +}; +static const GLUTBitmapChar ch181 = { 4, 8, 0, 2, 5, ch181data }; + +static const unsigned char ch182data[] = { + 0x28,0x28,0x28,0x28,0x28,0x68,0xe8,0xe8,0xe8,0x7c +}; +static const GLUTBitmapChar ch182 = { 6, 10, 0, 2, 6, ch182data }; + +static const unsigned char ch183data[] = { + 0xc0 +}; +static const GLUTBitmapChar ch183 = { 2, 1, 0, -3, 3, ch183data }; + +static const unsigned char ch184data[] = { + 0xc0,0x40 +}; +static const GLUTBitmapChar ch184 = { 2, 2, 0, 2, 3, ch184data }; + +static const unsigned char ch185data[] = { + 0x40,0x40,0xc0,0x40 +}; +static const GLUTBitmapChar ch185 = { 2, 4, 0, -3, 3, ch185data }; + +static const unsigned char ch186data[] = { + 0xe0,0x0,0xe0,0xa0,0xe0 +}; +static const GLUTBitmapChar ch186 = { 3, 5, 0, -3, 4, ch186data }; + +static const unsigned char ch187data[] = { + 0xa0,0x50,0x28,0x50,0xa0 +}; +static const GLUTBitmapChar ch187 = { 5, 5, 0, 0, 6, ch187data }; + +static const unsigned char ch188data[] = { + 0x21,0x0,0x17,0x80,0x13,0x0,0x9,0x0,0x48,0x0,0x44,0x0,0xc4,0x0,0x42,0x0 +}; +static const GLUTBitmapChar ch188 = { 9, 8, 0, 0, 9, ch188data }; + +static const unsigned char ch189data[] = { + 0x27,0x12,0x15,0xb,0x48,0x44,0xc4,0x42 +}; +static const GLUTBitmapChar ch189 = { 8, 8, 0, 0, 9, ch189data }; + +static const unsigned char ch190data[] = { + 0x21,0x0,0x17,0x80,0x13,0x0,0x9,0x0,0xc8,0x0,0x24,0x0,0x44,0x0,0xe2,0x0 +}; +static const GLUTBitmapChar ch190 = { 9, 8, 0, 0, 9, ch190data }; + +static const unsigned char ch191data[] = { + 0x60,0x90,0x80,0x40,0x20,0x20,0x0,0x20 +}; +static const GLUTBitmapChar ch191 = { 4, 8, -1, 2, 6, ch191data }; + +static const unsigned char ch192data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch192 = { 7, 11, 0, 0, 7, ch192data }; + +static const unsigned char ch193data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch193 = { 7, 11, 0, 0, 7, ch193data }; + +static const unsigned char ch194data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch194 = { 7, 11, 0, 0, 7, ch194data }; + +static const unsigned char ch195data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x0,0x28,0x14 +}; +static const GLUTBitmapChar ch195 = { 7, 11, 0, 0, 7, ch195data }; + +static const unsigned char ch196data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x0,0x28 +}; +static const GLUTBitmapChar ch196 = { 7, 10, 0, 0, 7, ch196data }; + +static const unsigned char ch197data[] = { + 0x82,0x82,0x7c,0x44,0x28,0x28,0x10,0x10,0x10,0x28,0x10 +}; +static const GLUTBitmapChar ch197 = { 7, 11, 0, 0, 7, ch197data }; + +static const unsigned char ch198data[] = { + 0x8f,0x80,0x88,0x0,0x78,0x0,0x48,0x0,0x2f,0x80,0x28,0x0,0x18,0x0,0x1f,0x80 +}; +static const GLUTBitmapChar ch198 = { 9, 8, 0, 0, 10, ch198data }; + +static const unsigned char ch199data[] = { + 0x30,0x10,0x78,0x84,0x80,0x80,0x80,0x80,0x84,0x78 +}; +static const GLUTBitmapChar ch199 = { 6, 10, -1, 2, 8, ch199data }; + +static const unsigned char ch200data[] = { + 0xf8,0x80,0x80,0x80,0xf8,0x80,0x80,0xf8,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch200 = { 5, 11, -1, 0, 7, ch200data }; + +static const unsigned char ch201data[] = { + 0xf8,0x80,0x80,0x80,0xf8,0x80,0x80,0xf8,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch201 = { 5, 11, -1, 0, 7, ch201data }; + +static const unsigned char ch202data[] = { + 0xf8,0x80,0x80,0xf8,0x80,0x80,0x80,0xf8,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch202 = { 5, 11, -1, 0, 7, ch202data }; + +static const unsigned char ch203data[] = { + 0xf8,0x80,0x80,0x80,0xf8,0x80,0x80,0xf8,0x0,0x50 +}; +static const GLUTBitmapChar ch203 = { 5, 10, -1, 0, 7, ch203data }; + +static const unsigned char ch204data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch204 = { 2, 11, 0, 0, 3, ch204data }; + +static const unsigned char ch205data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80,0x40 +}; +static const GLUTBitmapChar ch205 = { 2, 11, -1, 0, 3, ch205data }; + +static const unsigned char ch206data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch206 = { 3, 11, 0, 0, 3, ch206data }; + +static const unsigned char ch207data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0 +}; +static const GLUTBitmapChar ch207 = { 3, 10, 0, 0, 3, ch207data }; + +static const unsigned char ch208data[] = { + 0x78,0x44,0x42,0x42,0xf2,0x42,0x44,0x78 +}; +static const GLUTBitmapChar ch208 = { 7, 8, 0, 0, 8, ch208data }; + +static const unsigned char ch209data[] = { + 0x8c,0x8c,0x94,0x94,0xa4,0xa4,0xc4,0xc4,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch209 = { 6, 11, -1, 0, 8, ch209data }; + +static const unsigned char ch210data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch210 = { 6, 11, -1, 0, 8, ch210data }; + +static const unsigned char ch211data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch211 = { 6, 11, -1, 0, 8, ch211data }; + +static const unsigned char ch212data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch212 = { 6, 11, -1, 0, 8, ch212data }; + +static const unsigned char ch213data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch213 = { 6, 11, -1, 0, 8, ch213data }; + +static const unsigned char ch214data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x78,0x0,0x48 +}; +static const GLUTBitmapChar ch214 = { 6, 10, -1, 0, 8, ch214data }; + +static const unsigned char ch215data[] = { + 0x88,0x50,0x20,0x50,0x88 +}; +static const GLUTBitmapChar ch215 = { 5, 5, 0, -1, 6, ch215data }; + +static const unsigned char ch216data[] = { + 0x80,0x78,0xc4,0xa4,0xa4,0x94,0x94,0x8c,0x78,0x4 +}; +static const GLUTBitmapChar ch216 = { 6, 10, -1, 1, 8, ch216data }; + +static const unsigned char ch217data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch217 = { 6, 11, -1, 0, 8, ch217data }; + +static const unsigned char ch218data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch218 = { 6, 11, -1, 0, 8, ch218data }; + +static const unsigned char ch219data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch219 = { 6, 11, -1, 0, 8, ch219data }; + +static const unsigned char ch220data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x48 +}; +static const GLUTBitmapChar ch220 = { 6, 10, -1, 0, 8, ch220data }; + +static const unsigned char ch221data[] = { + 0x10,0x10,0x10,0x28,0x28,0x44,0x44,0x82,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch221 = { 7, 11, 0, 0, 7, ch221data }; + +static const unsigned char ch222data[] = { + 0x80,0x80,0xf0,0x88,0x88,0xf0,0x80,0x80 +}; +static const GLUTBitmapChar ch222 = { 5, 8, -1, 0, 7, ch222data }; + +static const unsigned char ch223data[] = { + 0xa0,0x90,0x90,0x90,0xa0,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch223 = { 4, 8, 0, 0, 5, ch223data }; + +static const unsigned char ch224data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch224 = { 5, 9, 0, 0, 5, ch224data }; + +static const unsigned char ch225data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch225 = { 5, 9, 0, 0, 5, ch225data }; + +static const unsigned char ch226data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch226 = { 5, 9, 0, 0, 5, ch226data }; + +static const unsigned char ch227data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x0,0xa0,0x50 +}; +static const GLUTBitmapChar ch227 = { 5, 9, 0, 0, 5, ch227data }; + +static const unsigned char ch228data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x0,0x50 +}; +static const GLUTBitmapChar ch228 = { 5, 8, 0, 0, 5, ch228data }; + +static const unsigned char ch229data[] = { + 0x68,0x90,0x90,0x70,0x10,0xe0,0x20,0x50,0x20 +}; +static const GLUTBitmapChar ch229 = { 5, 9, 0, 0, 5, ch229data }; + +static const unsigned char ch230data[] = { + 0x6c,0x92,0x90,0x7e,0x12,0xec +}; +static const GLUTBitmapChar ch230 = { 7, 6, 0, 0, 8, ch230data }; + +static const unsigned char ch231data[] = { + 0x60,0x20,0x60,0x90,0x80,0x80,0x90,0x60 +}; +static const GLUTBitmapChar ch231 = { 4, 8, 0, 2, 5, ch231data }; + +static const unsigned char ch232data[] = { + 0x60,0x90,0x80,0xf0,0x90,0x60,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch232 = { 4, 9, 0, 0, 5, ch232data }; + +static const unsigned char ch233data[] = { + 0x60,0x90,0x80,0xf0,0x90,0x60,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch233 = { 4, 9, 0, 0, 5, ch233data }; + +static const unsigned char ch234data[] = { + 0x60,0x90,0x80,0xf0,0x90,0x60,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch234 = { 4, 9, 0, 0, 5, ch234data }; + +static const unsigned char ch235data[] = { + 0x60,0x90,0x80,0xf0,0x90,0x60,0x0,0x50 +}; +static const GLUTBitmapChar ch235 = { 4, 8, 0, 0, 5, ch235data }; + +static const unsigned char ch236data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch236 = { 2, 9, 1, 0, 2, ch236data }; + +static const unsigned char ch237data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80,0x40 +}; +static const GLUTBitmapChar ch237 = { 2, 9, 0, 0, 2, ch237data }; + +static const unsigned char ch238data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch238 = { 3, 9, 1, 0, 2, ch238data }; + +static const unsigned char ch239data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0 +}; +static const GLUTBitmapChar ch239 = { 3, 8, 0, 0, 2, ch239data }; + +static const unsigned char ch240data[] = { + 0x70,0x88,0x88,0x88,0x88,0x78,0x90,0x60,0x50 +}; +static const GLUTBitmapChar ch240 = { 5, 9, 0, 0, 6, ch240data }; + +static const unsigned char ch241data[] = { + 0x90,0x90,0x90,0x90,0x90,0xe0,0x0,0xa0,0x50 +}; +static const GLUTBitmapChar ch241 = { 4, 9, 0, 0, 5, ch241data }; + +static const unsigned char ch242data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch242 = { 5, 9, 0, 0, 6, ch242data }; + +static const unsigned char ch243data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch243 = { 5, 9, 0, 0, 6, ch243data }; + +static const unsigned char ch244data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch244 = { 5, 9, 0, 0, 6, ch244data }; + +static const unsigned char ch245data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch245 = { 5, 9, 0, 0, 6, ch245data }; + +static const unsigned char ch246data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x0,0x50 +}; +static const GLUTBitmapChar ch246 = { 5, 8, 0, 0, 6, ch246data }; + +static const unsigned char ch247data[] = { + 0x20,0x0,0xf8,0x0,0x20 +}; +static const GLUTBitmapChar ch247 = { 5, 5, 0, -1, 6, ch247data }; + +static const unsigned char ch248data[] = { + 0x70,0x88,0xc8,0xa8,0x98,0x74 +}; +static const GLUTBitmapChar ch248 = { 6, 6, 0, 0, 6, ch248data }; + +static const unsigned char ch249data[] = { + 0x70,0x90,0x90,0x90,0x90,0x90,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch249 = { 4, 9, 0, 0, 5, ch249data }; + +static const unsigned char ch250data[] = { + 0x70,0x90,0x90,0x90,0x90,0x90,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch250 = { 4, 9, 0, 0, 5, ch250data }; + +static const unsigned char ch251data[] = { + 0x70,0x90,0x90,0x90,0x90,0x90,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch251 = { 4, 9, 0, 0, 5, ch251data }; + +static const unsigned char ch252data[] = { + 0x70,0x90,0x90,0x90,0x90,0x90,0x0,0x50 +}; +static const GLUTBitmapChar ch252 = { 4, 8, 0, 0, 5, ch252data }; + +static const unsigned char ch253data[] = { + 0x80,0x40,0x40,0x60,0xa0,0xa0,0x90,0x90,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch253 = { 4, 11, 0, 2, 5, ch253data }; + +static const unsigned char ch254data[] = { + 0x80,0x80,0xb0,0xc8,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch254 = { 5, 10, 0, 2, 6, ch254data }; + +static const unsigned char ch255data[] = { + 0x80,0x40,0x40,0x60,0xa0,0xa0,0x90,0x90,0x0,0x50 +}; +static const GLUTBitmapChar ch255 = { 4, 10, 0, 2, 5, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmapHelvetica10 = { + "-Adobe-Helvetica-Medium-R-Normal--10-100-75-75-P-56-ISO8859-1", + 13, 256, chars +}; diff --git a/src/glut/dos/hel12.c b/src/glut/dos/hel12.c new file mode 100644 index 0000000000..0fe8b0919b --- /dev/null +++ b/src/glut/dos/hel12.c @@ -0,0 +1,1029 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch32data[] = { + 0x0 +}; +static const GLUTBitmapChar ch32 = { 1, 1, 0, 0, 4, ch32data }; + +static const unsigned char ch33data[] = { + 0x80,0x0,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch33 = { 1, 9, -1, 0, 3, ch33data }; + +static const unsigned char ch34data[] = { + 0xa0,0xa0,0xa0 +}; +static const GLUTBitmapChar ch34 = { 3, 3, -1, -6, 5, ch34data }; + +static const unsigned char ch35data[] = { + 0x50,0x50,0x50,0xfc,0x28,0xfc,0x28,0x28 +}; +static const GLUTBitmapChar ch35 = { 6, 8, 0, 0, 7, ch35data }; + +static const unsigned char ch36data[] = { + 0x20,0x70,0xa8,0xa8,0x28,0x70,0xa0,0xa8,0x70,0x20 +}; +static const GLUTBitmapChar ch36 = { 5, 10, -1, 1, 7, ch36data }; + +static const unsigned char ch37data[] = { + 0x23,0x0,0x14,0x80,0x14,0x80,0x13,0x0,0x8,0x0,0x68,0x0,0x94,0x0,0x94,0x0, + 0x62,0x0 +}; +static const GLUTBitmapChar ch37 = { 9, 9, -1, 0, 11, ch37data }; + +static const unsigned char ch38data[] = { + 0x72,0x8c,0x84,0x8a,0x50,0x30,0x48,0x48,0x30 +}; +static const GLUTBitmapChar ch38 = { 7, 9, -1, 0, 9, ch38data }; + +static const unsigned char ch39data[] = { + 0x80,0x40,0xc0 +}; +static const GLUTBitmapChar ch39 = { 2, 3, -1, -6, 3, ch39data }; + +static const unsigned char ch40data[] = { + 0x20,0x40,0x40,0x80,0x80,0x80,0x80,0x80,0x80,0x40,0x40,0x20 +}; +static const GLUTBitmapChar ch40 = { 3, 12, -1, 3, 4, ch40data }; + +static const unsigned char ch41data[] = { + 0x80,0x40,0x40,0x20,0x20,0x20,0x20,0x20,0x20,0x40,0x40,0x80 +}; +static const GLUTBitmapChar ch41 = { 3, 12, 0, 3, 4, ch41data }; + +static const unsigned char ch42data[] = { + 0xa0,0x40,0xa0 +}; +static const GLUTBitmapChar ch42 = { 3, 3, -1, -6, 5, ch42data }; + +static const unsigned char ch43data[] = { + 0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch43 = { 5, 5, -1, -1, 7, ch43data }; + +static const unsigned char ch44data[] = { + 0x80,0x40,0x40 +}; +static const GLUTBitmapChar ch44 = { 2, 3, -1, 2, 4, ch44data }; + +static const unsigned char ch45data[] = { + 0xf8 +}; +static const GLUTBitmapChar ch45 = { 5, 1, -1, -3, 8, ch45data }; + +static const unsigned char ch46data[] = { + 0x80 +}; +static const GLUTBitmapChar ch46 = { 1, 1, -1, 0, 3, ch46data }; + +static const unsigned char ch47data[] = { + 0x80,0x80,0x40,0x40,0x40,0x20,0x20,0x10,0x10 +}; +static const GLUTBitmapChar ch47 = { 4, 9, 0, 0, 4, ch47data }; + +static const unsigned char ch48data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch48 = { 5, 9, -1, 0, 7, ch48data }; + +static const unsigned char ch49data[] = { + 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xe0,0x20 +}; +static const GLUTBitmapChar ch49 = { 3, 9, -1, 0, 7, ch49data }; + +static const unsigned char ch50data[] = { + 0xf8,0x80,0x80,0x40,0x20,0x10,0x8,0x88,0x70 +}; +static const GLUTBitmapChar ch50 = { 5, 9, -1, 0, 7, ch50data }; + +static const unsigned char ch51data[] = { + 0x70,0x88,0x88,0x8,0x8,0x30,0x8,0x88,0x70 +}; +static const GLUTBitmapChar ch51 = { 5, 9, -1, 0, 7, ch51data }; + +static const unsigned char ch52data[] = { + 0x8,0x8,0xfc,0x88,0x48,0x28,0x28,0x18,0x8 +}; +static const GLUTBitmapChar ch52 = { 6, 9, 0, 0, 7, ch52data }; + +static const unsigned char ch53data[] = { + 0x70,0x88,0x88,0x8,0x8,0xf0,0x80,0x80,0xf8 +}; +static const GLUTBitmapChar ch53 = { 5, 9, -1, 0, 7, ch53data }; + +static const unsigned char ch54data[] = { + 0x70,0x88,0x88,0x88,0xc8,0xb0,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch54 = { 5, 9, -1, 0, 7, ch54data }; + +static const unsigned char ch55data[] = { + 0x40,0x40,0x20,0x20,0x20,0x10,0x10,0x8,0xf8 +}; +static const GLUTBitmapChar ch55 = { 5, 9, -1, 0, 7, ch55data }; + +static const unsigned char ch56data[] = { + 0x70,0x88,0x88,0x88,0x88,0x70,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch56 = { 5, 9, -1, 0, 7, ch56data }; + +static const unsigned char ch57data[] = { + 0x70,0x88,0x8,0x8,0x78,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch57 = { 5, 9, -1, 0, 7, ch57data }; + +static const unsigned char ch58data[] = { + 0x80,0x0,0x0,0x0,0x0,0x80 +}; +static const GLUTBitmapChar ch58 = { 1, 6, -1, 0, 3, ch58data }; + +static const unsigned char ch59data[] = { + 0x80,0x40,0x40,0x0,0x0,0x0,0x0,0x40 +}; +static const GLUTBitmapChar ch59 = { 2, 8, 0, 2, 3, ch59data }; + +static const unsigned char ch60data[] = { + 0xc,0x30,0xc0,0x30,0xc +}; +static const GLUTBitmapChar ch60 = { 6, 5, 0, -1, 7, ch60data }; + +static const unsigned char ch61data[] = { + 0xf8,0x0,0xf8 +}; +static const GLUTBitmapChar ch61 = { 5, 3, -1, -2, 7, ch61data }; + +static const unsigned char ch62data[] = { + 0xc0,0x30,0xc,0x30,0xc0 +}; +static const GLUTBitmapChar ch62 = { 6, 5, -1, -1, 7, ch62data }; + +static const unsigned char ch63data[] = { + 0x20,0x0,0x20,0x20,0x10,0x10,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch63 = { 5, 9, -1, 0, 7, ch63data }; + +static const unsigned char ch64data[] = { + 0x3e,0x0,0x40,0x0,0x9b,0x0,0xa6,0x80,0xa2,0x40,0xa2,0x40,0x92,0x40,0x4d,0x40, + 0x60,0x80,0x1f,0x0 +}; +static const GLUTBitmapChar ch64 = { 10, 10, -1, 1, 12, ch64data }; + +static const unsigned char ch65data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x28,0x10 +}; +static const GLUTBitmapChar ch65 = { 7, 9, -1, 0, 9, ch65data }; + +static const unsigned char ch66data[] = { + 0xf8,0x84,0x84,0x84,0xf8,0x84,0x84,0x84,0xf8 +}; +static const GLUTBitmapChar ch66 = { 6, 9, -1, 0, 8, ch66data }; + +static const unsigned char ch67data[] = { + 0x3c,0x42,0x80,0x80,0x80,0x80,0x80,0x42,0x3c +}; +static const GLUTBitmapChar ch67 = { 7, 9, -1, 0, 9, ch67data }; + +static const unsigned char ch68data[] = { + 0xf8,0x84,0x82,0x82,0x82,0x82,0x82,0x84,0xf8 +}; +static const GLUTBitmapChar ch68 = { 7, 9, -1, 0, 9, ch68data }; + +static const unsigned char ch69data[] = { + 0xfc,0x80,0x80,0x80,0xfc,0x80,0x80,0x80,0xfc +}; +static const GLUTBitmapChar ch69 = { 6, 9, -1, 0, 8, ch69data }; + +static const unsigned char ch70data[] = { + 0x80,0x80,0x80,0x80,0xf8,0x80,0x80,0x80,0xfc +}; +static const GLUTBitmapChar ch70 = { 6, 9, -1, 0, 8, ch70data }; + +static const unsigned char ch71data[] = { + 0x3a,0x46,0x82,0x82,0x8e,0x80,0x80,0x42,0x3c +}; +static const GLUTBitmapChar ch71 = { 7, 9, -1, 0, 9, ch71data }; + +static const unsigned char ch72data[] = { + 0x82,0x82,0x82,0x82,0xfe,0x82,0x82,0x82,0x82 +}; +static const GLUTBitmapChar ch72 = { 7, 9, -1, 0, 9, ch72data }; + +static const unsigned char ch73data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch73 = { 1, 9, -1, 0, 3, ch73data }; + +static const unsigned char ch74data[] = { + 0x70,0x88,0x88,0x8,0x8,0x8,0x8,0x8,0x8 +}; +static const GLUTBitmapChar ch74 = { 5, 9, -1, 0, 7, ch74data }; + +static const unsigned char ch75data[] = { + 0x82,0x84,0x88,0x90,0xe0,0xa0,0x90,0x88,0x84 +}; +static const GLUTBitmapChar ch75 = { 7, 9, -1, 0, 8, ch75data }; + +static const unsigned char ch76data[] = { + 0xf8,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch76 = { 5, 9, -1, 0, 7, ch76data }; + +static const unsigned char ch77data[] = { + 0x88,0x80,0x88,0x80,0x94,0x80,0x94,0x80,0xa2,0x80,0xa2,0x80,0xc1,0x80,0xc1,0x80, + 0x80,0x80 +}; +static const GLUTBitmapChar ch77 = { 9, 9, -1, 0, 11, ch77data }; + +static const unsigned char ch78data[] = { + 0x82,0x86,0x8a,0x8a,0x92,0xa2,0xa2,0xc2,0x82 +}; +static const GLUTBitmapChar ch78 = { 7, 9, -1, 0, 9, ch78data }; + +static const unsigned char ch79data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c +}; +static const GLUTBitmapChar ch79 = { 8, 9, -1, 0, 10, ch79data }; + +static const unsigned char ch80data[] = { + 0x80,0x80,0x80,0x80,0xf8,0x84,0x84,0x84,0xf8 +}; +static const GLUTBitmapChar ch80 = { 6, 9, -1, 0, 8, ch80data }; + +static const unsigned char ch81data[] = { + 0x3d,0x42,0x85,0x89,0x81,0x81,0x81,0x42,0x3c +}; +static const GLUTBitmapChar ch81 = { 8, 9, -1, 0, 10, ch81data }; + +static const unsigned char ch82data[] = { + 0x84,0x84,0x84,0x88,0xf8,0x84,0x84,0x84,0xf8 +}; +static const GLUTBitmapChar ch82 = { 6, 9, -1, 0, 8, ch82data }; + +static const unsigned char ch83data[] = { + 0x78,0x84,0x84,0x4,0x18,0x60,0x80,0x84,0x78 +}; +static const GLUTBitmapChar ch83 = { 6, 9, -1, 0, 8, ch83data }; + +static const unsigned char ch84data[] = { + 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0xfe +}; +static const GLUTBitmapChar ch84 = { 7, 9, 0, 0, 7, ch84data }; + +static const unsigned char ch85data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84 +}; +static const GLUTBitmapChar ch85 = { 6, 9, -1, 0, 8, ch85data }; + +static const unsigned char ch86data[] = { + 0x10,0x10,0x28,0x28,0x44,0x44,0x44,0x82,0x82 +}; +static const GLUTBitmapChar ch86 = { 7, 9, -1, 0, 9, ch86data }; + +static const unsigned char ch87data[] = { + 0x22,0x0,0x22,0x0,0x22,0x0,0x55,0x0,0x55,0x0,0x49,0x0,0x88,0x80,0x88,0x80, + 0x88,0x80 +}; +static const GLUTBitmapChar ch87 = { 9, 9, -1, 0, 11, ch87data }; + +static const unsigned char ch88data[] = { + 0x82,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x82 +}; +static const GLUTBitmapChar ch88 = { 7, 9, -1, 0, 9, ch88data }; + +static const unsigned char ch89data[] = { + 0x10,0x10,0x10,0x10,0x28,0x44,0x44,0x82,0x82 +}; +static const GLUTBitmapChar ch89 = { 7, 9, -1, 0, 9, ch89data }; + +static const unsigned char ch90data[] = { + 0xfe,0x80,0x40,0x20,0x10,0x8,0x4,0x2,0xfe +}; +static const GLUTBitmapChar ch90 = { 7, 9, -1, 0, 9, ch90data }; + +static const unsigned char ch91data[] = { + 0xc0,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xc0 +}; +static const GLUTBitmapChar ch91 = { 2, 12, -1, 3, 3, ch91data }; + +static const unsigned char ch92data[] = { + 0x10,0x10,0x20,0x20,0x20,0x40,0x40,0x80,0x80 +}; +static const GLUTBitmapChar ch92 = { 4, 9, 0, 0, 4, ch92data }; + +static const unsigned char ch93data[] = { + 0xc0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xc0 +}; +static const GLUTBitmapChar ch93 = { 2, 12, 0, 3, 3, ch93data }; + +static const unsigned char ch94data[] = { + 0x88,0x50,0x20 +}; +static const GLUTBitmapChar ch94 = { 5, 3, 0, -5, 6, ch94data }; + +static const unsigned char ch95data[] = { + 0xfe +}; +static const GLUTBitmapChar ch95 = { 7, 1, 0, 2, 7, ch95data }; + +static const unsigned char ch96data[] = { + 0xc0,0x80,0x40 +}; +static const GLUTBitmapChar ch96 = { 2, 3, 0, -6, 3, ch96data }; + +static const unsigned char ch97data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70 +}; +static const GLUTBitmapChar ch97 = { 6, 7, -1, 0, 7, ch97data }; + +static const unsigned char ch98data[] = { + 0xb0,0xc8,0x88,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch98 = { 5, 9, -1, 0, 7, ch98data }; + +static const unsigned char ch99data[] = { + 0x70,0x88,0x80,0x80,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch99 = { 5, 7, -1, 0, 7, ch99data }; + +static const unsigned char ch100data[] = { + 0x68,0x98,0x88,0x88,0x88,0x98,0x68,0x8,0x8 +}; +static const GLUTBitmapChar ch100 = { 5, 9, -1, 0, 7, ch100data }; + +static const unsigned char ch101data[] = { + 0x70,0x88,0x80,0xf8,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch101 = { 5, 7, -1, 0, 7, ch101data }; + +static const unsigned char ch102data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0xe0,0x40,0x30 +}; +static const GLUTBitmapChar ch102 = { 4, 9, 0, 0, 3, ch102data }; + +static const unsigned char ch103data[] = { + 0x70,0x88,0x8,0x68,0x98,0x88,0x88,0x88,0x98,0x68 +}; +static const GLUTBitmapChar ch103 = { 5, 10, -1, 3, 7, ch103data }; + +static const unsigned char ch104data[] = { + 0x88,0x88,0x88,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch104 = { 5, 9, -1, 0, 7, ch104data }; + +static const unsigned char ch105data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch105 = { 1, 9, -1, 0, 3, ch105data }; + +static const unsigned char ch106data[] = { + 0x80,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x40 +}; +static const GLUTBitmapChar ch106 = { 2, 12, 0, 3, 3, ch106data }; + +static const unsigned char ch107data[] = { + 0x88,0x90,0xa0,0xc0,0xc0,0xa0,0x90,0x80,0x80 +}; +static const GLUTBitmapChar ch107 = { 5, 9, -1, 0, 6, ch107data }; + +static const unsigned char ch108data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch108 = { 1, 9, -1, 0, 3, ch108data }; + +static const unsigned char ch109data[] = { + 0x92,0x92,0x92,0x92,0x92,0xda,0xa4 +}; +static const GLUTBitmapChar ch109 = { 7, 7, -1, 0, 9, ch109data }; + +static const unsigned char ch110data[] = { + 0x88,0x88,0x88,0x88,0x88,0xc8,0xb0 +}; +static const GLUTBitmapChar ch110 = { 5, 7, -1, 0, 7, ch110data }; + +static const unsigned char ch111data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch111 = { 5, 7, -1, 0, 7, ch111data }; + +static const unsigned char ch112data[] = { + 0x80,0x80,0x80,0xb0,0xc8,0x88,0x88,0x88,0xc8,0xb0 +}; +static const GLUTBitmapChar ch112 = { 5, 10, -1, 3, 7, ch112data }; + +static const unsigned char ch113data[] = { + 0x8,0x8,0x8,0x68,0x98,0x88,0x88,0x88,0x98,0x68 +}; +static const GLUTBitmapChar ch113 = { 5, 10, -1, 3, 7, ch113data }; + +static const unsigned char ch114data[] = { + 0x80,0x80,0x80,0x80,0x80,0xc0,0xa0 +}; +static const GLUTBitmapChar ch114 = { 3, 7, -1, 0, 4, ch114data }; + +static const unsigned char ch115data[] = { + 0x60,0x90,0x10,0x60,0x80,0x90,0x60 +}; +static const GLUTBitmapChar ch115 = { 4, 7, -1, 0, 6, ch115data }; + +static const unsigned char ch116data[] = { + 0x60,0x40,0x40,0x40,0x40,0x40,0xe0,0x40,0x40 +}; +static const GLUTBitmapChar ch116 = { 3, 9, 0, 0, 3, ch116data }; + +static const unsigned char ch117data[] = { + 0x68,0x98,0x88,0x88,0x88,0x88,0x88 +}; +static const GLUTBitmapChar ch117 = { 5, 7, -1, 0, 7, ch117data }; + +static const unsigned char ch118data[] = { + 0x20,0x20,0x50,0x50,0x88,0x88,0x88 +}; +static const GLUTBitmapChar ch118 = { 5, 7, -1, 0, 7, ch118data }; + +static const unsigned char ch119data[] = { + 0x22,0x0,0x22,0x0,0x55,0x0,0x49,0x0,0x49,0x0,0x88,0x80,0x88,0x80 +}; +static const GLUTBitmapChar ch119 = { 9, 7, 0, 0, 9, ch119data }; + +static const unsigned char ch120data[] = { + 0x84,0x84,0x48,0x30,0x30,0x48,0x84 +}; +static const GLUTBitmapChar ch120 = { 6, 7, 0, 0, 6, ch120data }; + +static const unsigned char ch121data[] = { + 0x80,0x40,0x20,0x20,0x50,0x50,0x90,0x88,0x88,0x88 +}; +static const GLUTBitmapChar ch121 = { 5, 10, -1, 3, 7, ch121data }; + +static const unsigned char ch122data[] = { + 0xf0,0x80,0x40,0x40,0x20,0x10,0xf0 +}; +static const GLUTBitmapChar ch122 = { 4, 7, -1, 0, 6, ch122data }; + +static const unsigned char ch123data[] = { + 0x30,0x40,0x40,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x40,0x30 +}; +static const GLUTBitmapChar ch123 = { 4, 12, 0, 3, 4, ch123data }; + +static const unsigned char ch124data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch124 = { 1, 12, -1, 3, 3, ch124data }; + +static const unsigned char ch125data[] = { + 0xc0,0x20,0x20,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0xc0 +}; +static const GLUTBitmapChar ch125 = { 4, 12, 0, 3, 4, ch125data }; + +static const unsigned char ch126data[] = { + 0x98,0x64 +}; +static const GLUTBitmapChar ch126 = { 6, 2, 0, -3, 7, ch126data }; + +static const unsigned char ch160data[] = { + 0x0 +}; +static const GLUTBitmapChar ch160 = { 1, 1, 0, 0, 4, ch160data }; + +static const unsigned char ch161data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch161 = { 1, 10, -1, 3, 3, ch161data }; + +static const unsigned char ch162data[] = { + 0x40,0x70,0xc8,0xa0,0xa0,0xa0,0xa8,0x70,0x10 +}; +static const GLUTBitmapChar ch162 = { 5, 9, -1, 1, 7, ch162data }; + +static const unsigned char ch163data[] = { + 0xb0,0x48,0x20,0x20,0xf0,0x40,0x40,0x48,0x30 +}; +static const GLUTBitmapChar ch163 = { 5, 9, -1, 0, 7, ch163data }; + +static const unsigned char ch164data[] = { + 0x84,0x78,0x48,0x48,0x78,0x84 +}; +static const GLUTBitmapChar ch164 = { 6, 6, 0, -1, 7, ch164data }; + +static const unsigned char ch165data[] = { + 0x20,0x20,0xf8,0x20,0xf8,0x20,0x50,0x88,0x88 +}; +static const GLUTBitmapChar ch165 = { 5, 9, -1, 0, 7, ch165data }; + +static const unsigned char ch166data[] = { + 0x80,0x80,0x80,0x80,0x0,0x0,0x0,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch166 = { 1, 11, -1, 2, 3, ch166data }; + +static const unsigned char ch167data[] = { + 0x70,0x88,0x8,0x30,0x48,0x88,0x88,0x90,0x60,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch167 = { 5, 12, 0, 3, 6, ch167data }; + +static const unsigned char ch168data[] = { + 0xa0 +}; +static const GLUTBitmapChar ch168 = { 3, 1, 0, -8, 3, ch168data }; + +static const unsigned char ch169data[] = { + 0x3e,0x0,0x41,0x0,0x9c,0x80,0xa2,0x80,0xa0,0x80,0xa2,0x80,0x9c,0x80,0x41,0x0, + 0x3e,0x0 +}; +static const GLUTBitmapChar ch169 = { 9, 9, -1, 0, 11, ch169data }; + +static const unsigned char ch170data[] = { + 0xe0,0x0,0xa0,0x20,0xe0 +}; +static const GLUTBitmapChar ch170 = { 3, 5, -1, -4, 5, ch170data }; + +static const unsigned char ch171data[] = { + 0x28,0x50,0xa0,0x50,0x28 +}; +static const GLUTBitmapChar ch171 = { 5, 5, -1, -1, 7, ch171data }; + +static const unsigned char ch172data[] = { + 0x4,0x4,0x4,0xfc +}; +static const GLUTBitmapChar ch172 = { 6, 4, -1, -2, 8, ch172data }; + +static const unsigned char ch173data[] = { + 0xf0 +}; +static const GLUTBitmapChar ch173 = { 4, 1, 0, -3, 5, ch173data }; + +static const unsigned char ch174data[] = { + 0x3e,0x0,0x41,0x0,0x94,0x80,0x94,0x80,0x98,0x80,0x94,0x80,0x9c,0x80,0x41,0x0, + 0x3e,0x0 +}; +static const GLUTBitmapChar ch174 = { 9, 9, -1, 0, 11, ch174data }; + +static const unsigned char ch175data[] = { + 0xf0 +}; +static const GLUTBitmapChar ch175 = { 4, 1, 0, -8, 4, ch175data }; + +static const unsigned char ch176data[] = { + 0x60,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch176 = { 4, 4, 0, -4, 5, ch176data }; + +static const unsigned char ch177data[] = { + 0xf8,0x0,0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch177 = { 5, 7, -1, 0, 7, ch177data }; + +static const unsigned char ch178data[] = { + 0xf0,0x40,0x20,0x90,0x60 +}; +static const GLUTBitmapChar ch178 = { 4, 5, 0, -3, 4, ch178data }; + +static const unsigned char ch179data[] = { + 0xc0,0x20,0x40,0x20,0xe0 +}; +static const GLUTBitmapChar ch179 = { 3, 5, 0, -3, 4, ch179data }; + +static const unsigned char ch180data[] = { + 0x80,0x40 +}; +static const GLUTBitmapChar ch180 = { 2, 2, 0, -8, 2, ch180data }; + +static const unsigned char ch181data[] = { + 0x80,0x80,0x80,0xe8,0x98,0x88,0x88,0x88,0x88,0x88 +}; +static const GLUTBitmapChar ch181 = { 5, 10, -1, 3, 7, ch181data }; + +static const unsigned char ch182data[] = { + 0x28,0x28,0x28,0x28,0x28,0x28,0x68,0xe8,0xe8,0xe8,0x68,0x3c +}; +static const GLUTBitmapChar ch182 = { 6, 12, 0, 3, 7, ch182data }; + +static const unsigned char ch183data[] = { + 0x80 +}; +static const GLUTBitmapChar ch183 = { 1, 1, -1, -3, 3, ch183data }; + +static const unsigned char ch184data[] = { + 0xc0,0x20,0x20,0x40 +}; +static const GLUTBitmapChar ch184 = { 3, 4, 0, 3, 3, ch184data }; + +static const unsigned char ch185data[] = { + 0x40,0x40,0x40,0xc0,0x40 +}; +static const GLUTBitmapChar ch185 = { 2, 5, -1, -3, 4, ch185data }; + +static const unsigned char ch186data[] = { + 0xe0,0x0,0xe0,0xa0,0xe0 +}; +static const GLUTBitmapChar ch186 = { 3, 5, -1, -4, 5, ch186data }; + +static const unsigned char ch187data[] = { + 0xa0,0x50,0x28,0x50,0xa0 +}; +static const GLUTBitmapChar ch187 = { 5, 5, -1, -1, 7, ch187data }; + +static const unsigned char ch188data[] = { + 0x41,0x0,0x27,0x80,0x15,0x0,0x13,0x0,0x49,0x0,0x44,0x0,0x44,0x0,0xc2,0x0, + 0x41,0x0 +}; +static const GLUTBitmapChar ch188 = { 9, 9, 0, 0, 10, ch188data }; + +static const unsigned char ch189data[] = { + 0x47,0x80,0x22,0x0,0x11,0x0,0x14,0x80,0x4b,0x0,0x48,0x0,0x44,0x0,0xc2,0x0, + 0x41,0x0 +}; +static const GLUTBitmapChar ch189 = { 9, 9, 0, 0, 10, ch189data }; + +static const unsigned char ch190data[] = { + 0x21,0x0,0x17,0x80,0x15,0x0,0xb,0x0,0xc9,0x0,0x24,0x0,0x44,0x0,0x22,0x0, + 0xe1,0x0 +}; +static const GLUTBitmapChar ch190 = { 9, 9, 0, 0, 10, ch190data }; + +static const unsigned char ch191data[] = { + 0x70,0x88,0x88,0x40,0x40,0x20,0x20,0x0,0x20 +}; +static const GLUTBitmapChar ch191 = { 5, 9, -1, 3, 7, ch191data }; + +static const unsigned char ch192data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch192 = { 7, 12, -1, 0, 9, ch192data }; + +static const unsigned char ch193data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch193 = { 7, 12, -1, 0, 9, ch193data }; + +static const unsigned char ch194data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch194 = { 7, 12, -1, 0, 9, ch194data }; + +static const unsigned char ch195data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x0,0x28,0x14 +}; +static const GLUTBitmapChar ch195 = { 7, 12, -1, 0, 9, ch195data }; + +static const unsigned char ch196data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x0,0x28 +}; +static const GLUTBitmapChar ch196 = { 7, 11, -1, 0, 9, ch196data }; + +static const unsigned char ch197data[] = { + 0x82,0x82,0x82,0x7c,0x44,0x44,0x28,0x10,0x10,0x10,0x28,0x10 +}; +static const GLUTBitmapChar ch197 = { 7, 12, -1, 0, 9, ch197data }; + +static const unsigned char ch198data[] = { + 0x8f,0x80,0x88,0x0,0x88,0x0,0x78,0x0,0x4f,0x80,0x48,0x0,0x28,0x0,0x28,0x0, + 0x1f,0x80 +}; +static const GLUTBitmapChar ch198 = { 9, 9, -1, 0, 11, ch198data }; + +static const unsigned char ch199data[] = { + 0x30,0x8,0x8,0x3c,0x42,0x80,0x80,0x80,0x80,0x80,0x42,0x3c +}; +static const GLUTBitmapChar ch199 = { 7, 12, -1, 3, 9, ch199data }; + +static const unsigned char ch200data[] = { + 0xfc,0x80,0x80,0x80,0xfc,0x80,0x80,0x80,0xfc,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch200 = { 6, 12, -1, 0, 8, ch200data }; + +static const unsigned char ch201data[] = { + 0xfc,0x80,0x80,0x80,0xfc,0x80,0x80,0x80,0xfc,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch201 = { 6, 12, -1, 0, 8, ch201data }; + +static const unsigned char ch202data[] = { + 0xfc,0x80,0x80,0x80,0xfc,0x80,0x80,0x80,0xfc,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch202 = { 6, 12, -1, 0, 8, ch202data }; + +static const unsigned char ch203data[] = { + 0xfc,0x80,0x80,0x80,0xfc,0x80,0x80,0x80,0xfc,0x0,0x28 +}; +static const GLUTBitmapChar ch203 = { 6, 11, -1, 0, 8, ch203data }; + +static const unsigned char ch204data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch204 = { 2, 12, 0, 0, 3, ch204data }; + +static const unsigned char ch205data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80,0x40 +}; +static const GLUTBitmapChar ch205 = { 2, 12, -1, 0, 3, ch205data }; + +static const unsigned char ch206data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch206 = { 3, 12, 0, 0, 3, ch206data }; + +static const unsigned char ch207data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0 +}; +static const GLUTBitmapChar ch207 = { 3, 11, 0, 0, 3, ch207data }; + +static const unsigned char ch208data[] = { + 0x7c,0x42,0x41,0x41,0xf1,0x41,0x41,0x42,0x7c +}; +static const GLUTBitmapChar ch208 = { 8, 9, 0, 0, 9, ch208data }; + +static const unsigned char ch209data[] = { + 0x82,0x86,0x8a,0x8a,0x92,0xa2,0xa2,0xc2,0x82,0x0,0x28,0x14 +}; +static const GLUTBitmapChar ch209 = { 7, 12, -1, 0, 9, ch209data }; + +static const unsigned char ch210data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c,0x0,0x8,0x10 +}; +static const GLUTBitmapChar ch210 = { 8, 12, -1, 0, 10, ch210data }; + +static const unsigned char ch211data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c,0x0,0x8,0x4 +}; +static const GLUTBitmapChar ch211 = { 8, 12, -1, 0, 10, ch211data }; + +static const unsigned char ch212data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c,0x0,0x14,0x8 +}; +static const GLUTBitmapChar ch212 = { 8, 12, -1, 0, 10, ch212data }; + +static const unsigned char ch213data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c,0x0,0x28,0x14 +}; +static const GLUTBitmapChar ch213 = { 8, 12, -1, 0, 10, ch213data }; + +static const unsigned char ch214data[] = { + 0x3c,0x42,0x81,0x81,0x81,0x81,0x81,0x42,0x3c,0x0,0x24 +}; +static const GLUTBitmapChar ch214 = { 8, 11, -1, 0, 10, ch214data }; + +static const unsigned char ch215data[] = { + 0x88,0x50,0x20,0x50,0x88 +}; +static const GLUTBitmapChar ch215 = { 5, 5, -1, -1, 7, ch215data }; + +static const unsigned char ch216data[] = { + 0x80,0x0,0x5e,0x0,0x21,0x0,0x50,0x80,0x48,0x80,0x44,0x80,0x44,0x80,0x42,0x80, + 0x21,0x0,0x1e,0x80,0x0,0x40 +}; +static const GLUTBitmapChar ch216 = { 10, 11, 0, 1, 10, ch216data }; + +static const unsigned char ch217data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch217 = { 6, 12, -1, 0, 8, ch217data }; + +static const unsigned char ch218data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch218 = { 6, 12, -1, 0, 8, ch218data }; + +static const unsigned char ch219data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch219 = { 6, 12, -1, 0, 8, ch219data }; + +static const unsigned char ch220data[] = { + 0x78,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x0,0x48 +}; +static const GLUTBitmapChar ch220 = { 6, 11, -1, 0, 8, ch220data }; + +static const unsigned char ch221data[] = { + 0x10,0x10,0x10,0x10,0x28,0x44,0x44,0x82,0x82,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch221 = { 7, 12, -1, 0, 9, ch221data }; + +static const unsigned char ch222data[] = { + 0x80,0x80,0xf8,0x84,0x84,0x84,0xf8,0x80,0x80 +}; +static const GLUTBitmapChar ch222 = { 6, 9, -1, 0, 8, ch222data }; + +static const unsigned char ch223data[] = { + 0xb0,0x88,0x88,0x88,0xb0,0x88,0x88,0x88,0x70 +}; +static const GLUTBitmapChar ch223 = { 5, 9, -1, 0, 7, ch223data }; + +static const unsigned char ch224data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch224 = { 6, 10, -1, 0, 7, ch224data }; + +static const unsigned char ch225data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch225 = { 6, 10, -1, 0, 7, ch225data }; + +static const unsigned char ch226data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch226 = { 6, 10, -1, 0, 7, ch226data }; + +static const unsigned char ch227data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch227 = { 6, 10, -1, 0, 7, ch227data }; + +static const unsigned char ch228data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x0,0x50 +}; +static const GLUTBitmapChar ch228 = { 6, 9, -1, 0, 7, ch228data }; + +static const unsigned char ch229data[] = { + 0x74,0x88,0x88,0x78,0x8,0x88,0x70,0x30,0x48,0x30 +}; +static const GLUTBitmapChar ch229 = { 6, 10, -1, 0, 7, ch229data }; + +static const unsigned char ch230data[] = { + 0x77,0x0,0x88,0x80,0x88,0x0,0x7f,0x80,0x8,0x80,0x88,0x80,0x77,0x0 +}; +static const GLUTBitmapChar ch230 = { 9, 7, -1, 0, 11, ch230data }; + +static const unsigned char ch231data[] = { + 0x60,0x10,0x20,0x70,0x88,0x80,0x80,0x80,0x88,0x70 +}; +static const GLUTBitmapChar ch231 = { 5, 10, -1, 3, 7, ch231data }; + +static const unsigned char ch232data[] = { + 0x70,0x88,0x80,0xf8,0x88,0x88,0x70,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch232 = { 5, 10, -1, 0, 7, ch232data }; + +static const unsigned char ch233data[] = { + 0x70,0x88,0x80,0xf8,0x88,0x88,0x70,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch233 = { 5, 10, -1, 0, 7, ch233data }; + +static const unsigned char ch234data[] = { + 0x70,0x88,0x80,0xf8,0x88,0x88,0x70,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch234 = { 5, 10, -1, 0, 7, ch234data }; + +static const unsigned char ch235data[] = { + 0x70,0x88,0x80,0xf8,0x88,0x88,0x70,0x0,0x50 +}; +static const GLUTBitmapChar ch235 = { 5, 9, -1, 0, 7, ch235data }; + +static const unsigned char ch236data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch236 = { 2, 10, 0, 0, 3, ch236data }; + +static const unsigned char ch237data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x0,0x80,0x40 +}; +static const GLUTBitmapChar ch237 = { 2, 10, -1, 0, 3, ch237data }; + +static const unsigned char ch238data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch238 = { 3, 10, 0, 0, 3, ch238data }; + +static const unsigned char ch239data[] = { + 0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x0,0xa0 +}; +static const GLUTBitmapChar ch239 = { 3, 9, 0, 0, 3, ch239data }; + +static const unsigned char ch240data[] = { + 0x70,0x88,0x88,0x88,0x88,0x78,0x8,0x50,0x30,0x68 +}; +static const GLUTBitmapChar ch240 = { 5, 10, -1, 0, 7, ch240data }; + +static const unsigned char ch241data[] = { + 0x88,0x88,0x88,0x88,0x88,0xc8,0xb0,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch241 = { 5, 10, -1, 0, 7, ch241data }; + +static const unsigned char ch242data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch242 = { 5, 10, -1, 0, 7, ch242data }; + +static const unsigned char ch243data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch243 = { 5, 10, -1, 0, 7, ch243data }; + +static const unsigned char ch244data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch244 = { 5, 10, -1, 0, 7, ch244data }; + +static const unsigned char ch245data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch245 = { 5, 10, -1, 0, 7, ch245data }; + +static const unsigned char ch246data[] = { + 0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x0,0x50 +}; +static const GLUTBitmapChar ch246 = { 5, 9, -1, 0, 7, ch246data }; + +static const unsigned char ch247data[] = { + 0x20,0x0,0xf8,0x0,0x20 +}; +static const GLUTBitmapChar ch247 = { 5, 5, -1, -1, 7, ch247data }; + +static const unsigned char ch248data[] = { + 0xb8,0x44,0x64,0x54,0x4c,0x44,0x3a +}; +static const GLUTBitmapChar ch248 = { 7, 7, 0, 0, 7, ch248data }; + +static const unsigned char ch249data[] = { + 0x68,0x98,0x88,0x88,0x88,0x88,0x88,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch249 = { 5, 10, -1, 0, 7, ch249data }; + +static const unsigned char ch250data[] = { + 0x68,0x98,0x88,0x88,0x88,0x88,0x88,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch250 = { 5, 10, -1, 0, 7, ch250data }; + +static const unsigned char ch251data[] = { + 0x68,0x98,0x88,0x88,0x88,0x88,0x88,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch251 = { 5, 10, -1, 0, 7, ch251data }; + +static const unsigned char ch252data[] = { + 0x68,0x98,0x88,0x88,0x88,0x88,0x88,0x0,0x50 +}; +static const GLUTBitmapChar ch252 = { 5, 9, -1, 0, 7, ch252data }; + +static const unsigned char ch253data[] = { + 0x80,0x40,0x20,0x20,0x50,0x50,0x90,0x88,0x88,0x88,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch253 = { 5, 13, -1, 3, 7, ch253data }; + +static const unsigned char ch254data[] = { + 0x80,0x80,0x80,0xb0,0xc8,0x88,0x88,0x88,0xc8,0xb0,0x80,0x80 +}; +static const GLUTBitmapChar ch254 = { 5, 12, -1, 3, 7, ch254data }; + +static const unsigned char ch255data[] = { + 0xc0,0x20,0x20,0x20,0x30,0x50,0x50,0x48,0x88,0x88,0x0,0x50 +}; +static const GLUTBitmapChar ch255 = { 5, 12, -1, 3, 7, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmapHelvetica12 = { + "-Adobe-Helvetica-Medium-R-Normal--12-120-75-75-P-67-ISO8859-1", + 15, 256, chars +}; diff --git a/src/glut/dos/hel18.c b/src/glut/dos/hel18.c new file mode 100644 index 0000000000..f4d4340e3e --- /dev/null +++ b/src/glut/dos/hel18.c @@ -0,0 +1,1138 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch32data[] = { + 0x0 +}; +static const GLUTBitmapChar ch32 = { 1, 1, 0, 0, 5, ch32data }; + +static const unsigned char ch33data[] = { + 0xc0,0xc0,0x0,0x0,0x80,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch33 = { 2, 14, -2, 0, 6, ch33data }; + +static const unsigned char ch34data[] = { + 0x90,0x90,0xd8,0xd8,0xd8 +}; +static const GLUTBitmapChar ch34 = { 5, 5, 0, -9, 5, ch34data }; + +static const unsigned char ch35data[] = { + 0x24,0x0,0x24,0x0,0x24,0x0,0xff,0x80,0xff,0x80,0x12,0x0,0x12,0x0,0x12,0x0, + 0x7f,0xc0,0x7f,0xc0,0x9,0x0,0x9,0x0,0x9,0x0 +}; +static const GLUTBitmapChar ch35 = { 10, 13, 0, 0, 10, ch35data }; + +static const unsigned char ch36data[] = { + 0x8,0x0,0x8,0x0,0x3e,0x0,0x7f,0x0,0xeb,0x80,0xc9,0x80,0x9,0x80,0xf,0x0, + 0x3e,0x0,0x78,0x0,0xe8,0x0,0xc8,0x0,0xcb,0x0,0x7f,0x0,0x3e,0x0,0x8,0x0 +}; +static const GLUTBitmapChar ch36 = { 9, 16, -1, 2, 10, ch36data }; + +static const unsigned char ch37data[] = { + 0x18,0x78,0x18,0xfc,0xc,0xcc,0xc,0xcc,0x6,0xfc,0x6,0x78,0x3,0x0,0x7b,0x0, + 0xfd,0x80,0xcd,0x80,0xcc,0xc0,0xfc,0xc0,0x78,0x60 +}; +static const GLUTBitmapChar ch37 = { 14, 13, -1, 0, 16, ch37data }; + +static const unsigned char ch38data[] = { + 0x3c,0x70,0x7e,0xe0,0xe7,0xc0,0xc3,0x80,0xc3,0xc0,0xc6,0xc0,0xee,0xc0,0x7c,0x0, + 0x3c,0x0,0x66,0x0,0x66,0x0,0x7e,0x0,0x3c,0x0 +}; +static const GLUTBitmapChar ch38 = { 12, 13, -1, 0, 13, ch38data }; + +static const unsigned char ch39data[] = { + 0x80,0x40,0x40,0xc0,0xc0 +}; +static const GLUTBitmapChar ch39 = { 2, 5, -1, -9, 4, ch39data }; + +static const unsigned char ch40data[] = { + 0x10,0x30,0x60,0x60,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x60,0x60, + 0x30,0x10 +}; +static const GLUTBitmapChar ch40 = { 4, 18, -1, 4, 6, ch40data }; + +static const unsigned char ch41data[] = { + 0x80,0xc0,0x60,0x60,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x60,0x60, + 0xc0,0x80 +}; +static const GLUTBitmapChar ch41 = { 4, 18, -1, 4, 6, ch41data }; + +static const unsigned char ch42data[] = { + 0x88,0x70,0x70,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch42 = { 5, 6, -1, -8, 7, ch42data }; + +static const unsigned char ch43data[] = { + 0x18,0x18,0x18,0x18,0xff,0xff,0x18,0x18,0x18,0x18 +}; +static const GLUTBitmapChar ch43 = { 8, 10, -1, 0, 10, ch43data }; + +static const unsigned char ch44data[] = { + 0x80,0x40,0x40,0xc0,0xc0 +}; +static const GLUTBitmapChar ch44 = { 2, 5, -1, 3, 5, ch44data }; + +static const unsigned char ch45data[] = { + 0xff,0xff +}; +static const GLUTBitmapChar ch45 = { 8, 2, -1, -4, 11, ch45data }; + +static const unsigned char ch46data[] = { + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch46 = { 2, 2, -1, 0, 5, ch46data }; + +static const unsigned char ch47data[] = { + 0xc0,0xc0,0x40,0x40,0x60,0x60,0x20,0x20,0x30,0x30,0x10,0x10,0x18,0x18 +}; +static const GLUTBitmapChar ch47 = { 5, 14, 0, 0, 5, ch47data }; + +static const unsigned char ch48data[] = { + 0x3c,0x7e,0x66,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0x66,0x7e,0x3c +}; +static const GLUTBitmapChar ch48 = { 8, 13, -1, 0, 10, ch48data }; + +static const unsigned char ch49data[] = { + 0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xf8,0xf8,0x18 +}; +static const GLUTBitmapChar ch49 = { 5, 13, -2, 0, 10, ch49data }; + +static const unsigned char ch50data[] = { + 0xff,0xff,0xc0,0xe0,0x70,0x38,0x1c,0xe,0x7,0x3,0xc3,0xfe,0x3c +}; +static const GLUTBitmapChar ch50 = { 8, 13, -1, 0, 10, ch50data }; + +static const unsigned char ch51data[] = { + 0x3c,0x7e,0xc7,0xc3,0x3,0x7,0x1e,0x1c,0x6,0xc3,0xc3,0x7e,0x3c +}; +static const GLUTBitmapChar ch51 = { 8, 13, -1, 0, 10, ch51data }; + +static const unsigned char ch52data[] = { + 0x3,0x0,0x3,0x0,0x3,0x0,0xff,0x80,0xff,0x80,0xc3,0x0,0x63,0x0,0x33,0x0, + 0x33,0x0,0x1b,0x0,0xf,0x0,0x7,0x0,0x3,0x0 +}; +static const GLUTBitmapChar ch52 = { 9, 13, -1, 0, 10, ch52data }; + +static const unsigned char ch53data[] = { + 0x7c,0xfe,0xc7,0xc3,0x3,0x3,0xc7,0xfe,0xfc,0xc0,0xc0,0xfe,0xfe +}; +static const GLUTBitmapChar ch53 = { 8, 13, -1, 0, 10, ch53data }; + +static const unsigned char ch54data[] = { + 0x3c,0x7e,0xe3,0xc3,0xc3,0xc3,0xfe,0xdc,0xc0,0xc0,0x63,0x7f,0x3c +}; +static const GLUTBitmapChar ch54 = { 8, 13, -1, 0, 10, ch54data }; + +static const unsigned char ch55data[] = { + 0x60,0x60,0x30,0x30,0x30,0x18,0x18,0xc,0xc,0x6,0x3,0xff,0xff +}; +static const GLUTBitmapChar ch55 = { 8, 13, -1, 0, 10, ch55data }; + +static const unsigned char ch56data[] = { + 0x3c,0x7e,0xe7,0xc3,0xc3,0x66,0x7e,0x66,0xc3,0xc3,0xe7,0x7e,0x3c +}; +static const GLUTBitmapChar ch56 = { 8, 13, -1, 0, 10, ch56data }; + +static const unsigned char ch57data[] = { + 0x7c,0xfe,0xc6,0x3,0x3,0x3b,0x7f,0xc3,0xc3,0xc3,0xc7,0x7e,0x3c +}; +static const GLUTBitmapChar ch57 = { 8, 13, -1, 0, 10, ch57data }; + +static const unsigned char ch58data[] = { + 0xc0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch58 = { 2, 10, -1, 0, 5, ch58data }; + +static const unsigned char ch59data[] = { + 0x80,0x40,0x40,0xc0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch59 = { 2, 13, -1, 3, 5, ch59data }; + +static const unsigned char ch60data[] = { + 0x3,0xf,0x3c,0x70,0xc0,0x70,0x3c,0xf,0x3 +}; +static const GLUTBitmapChar ch60 = { 8, 9, -1, 0, 10, ch60data }; + +static const unsigned char ch61data[] = { + 0xfe,0xfe,0x0,0x0,0xfe,0xfe +}; +static const GLUTBitmapChar ch61 = { 7, 6, -2, -2, 11, ch61data }; + +static const unsigned char ch62data[] = { + 0xc0,0xf0,0x3c,0xe,0x3,0xe,0x3c,0xf0,0xc0 +}; +static const GLUTBitmapChar ch62 = { 8, 9, -1, 0, 10, ch62data }; + +static const unsigned char ch63data[] = { + 0x30,0x30,0x0,0x0,0x30,0x30,0x30,0x38,0x1c,0xe,0xc6,0xc6,0xfe,0x7c +}; +static const GLUTBitmapChar ch63 = { 7, 14, -1, 0, 10, ch63data }; + +static const unsigned char ch64data[] = { + 0x7,0xe0,0x1f,0xf0,0x38,0x0,0x70,0x0,0x67,0x70,0xcf,0xf8,0xcc,0xcc,0xcc,0x66, + 0xcc,0x66,0xcc,0x63,0xc6,0x33,0x67,0x73,0x63,0xb3,0x30,0x6,0x1c,0xe,0xf,0xfc, + 0x3,0xf0 +}; +static const GLUTBitmapChar ch64 = { 16, 17, -1, 3, 18, ch64data }; + +static const unsigned char ch65data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch65 = { 12, 14, 0, 0, 12, ch65data }; + +static const unsigned char ch66data[] = { + 0xff,0x80,0xff,0xc0,0xc0,0xe0,0xc0,0x60,0xc0,0x60,0xc0,0xe0,0xff,0xc0,0xff,0x80, + 0xc1,0x80,0xc0,0xc0,0xc0,0xc0,0xc1,0xc0,0xff,0x80,0xff,0x0 +}; +static const GLUTBitmapChar ch66 = { 11, 14, -1, 0, 13, ch66data }; + +static const unsigned char ch67data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0, + 0xc0,0x0,0xe0,0x0,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80 +}; +static const GLUTBitmapChar ch67 = { 12, 14, -1, 0, 14, ch67data }; + +static const unsigned char ch68data[] = { + 0xff,0x0,0xff,0x80,0xc1,0xc0,0xc0,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0xc0,0xc1,0xc0,0xff,0x80,0xff,0x0 +}; +static const GLUTBitmapChar ch68 = { 11, 14, -1, 0, 13, ch68data }; + +static const unsigned char ch69data[] = { + 0xff,0x80,0xff,0x80,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80 +}; +static const GLUTBitmapChar ch69 = { 9, 14, -1, 0, 11, ch69data }; + +static const unsigned char ch70data[] = { + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80 +}; +static const GLUTBitmapChar ch70 = { 9, 14, -1, 0, 11, ch70data }; + +static const unsigned char ch71data[] = { + 0xf,0xb0,0x3f,0xf0,0x70,0x70,0x60,0x30,0xe0,0x30,0xc1,0xf0,0xc1,0xf0,0xc0,0x0, + 0xc0,0x0,0xe0,0x30,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80 +}; +static const GLUTBitmapChar ch71 = { 12, 14, -1, 0, 14, ch71data }; + +static const unsigned char ch72data[] = { + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xff,0xe0,0xff,0xe0, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60 +}; +static const GLUTBitmapChar ch72 = { 11, 14, -1, 0, 13, ch72data }; + +static const unsigned char ch73data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch73 = { 2, 14, -2, 0, 6, ch73data }; + +static const unsigned char ch74data[] = { + 0x3c,0x7e,0xe7,0xc3,0xc3,0x3,0x3,0x3,0x3,0x3,0x3,0x3,0x3,0x3 +}; +static const GLUTBitmapChar ch74 = { 8, 14, -1, 0, 10, ch74data }; + +static const unsigned char ch75data[] = { + 0xc0,0x70,0xc0,0xe0,0xc1,0xc0,0xc3,0x80,0xc7,0x0,0xce,0x0,0xfc,0x0,0xf8,0x0, + 0xdc,0x0,0xce,0x0,0xc7,0x0,0xc3,0x80,0xc1,0xc0,0xc0,0xe0 +}; +static const GLUTBitmapChar ch75 = { 12, 14, -1, 0, 13, ch75data }; + +static const unsigned char ch76data[] = { + 0xff,0xff,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch76 = { 8, 14, -1, 0, 10, ch76data }; + +static const unsigned char ch77data[] = { + 0xc3,0xc,0xc3,0xc,0xc7,0x8c,0xc4,0x8c,0xcc,0xcc,0xcc,0xcc,0xd8,0x6c,0xd8,0x6c, + 0xf0,0x3c,0xf0,0x3c,0xe0,0x1c,0xe0,0x1c,0xc0,0xc,0xc0,0xc +}; +static const GLUTBitmapChar ch77 = { 14, 14, -1, 0, 16, ch77data }; + +static const unsigned char ch78data[] = { + 0xc0,0x60,0xc0,0xe0,0xc1,0xe0,0xc1,0xe0,0xc3,0x60,0xc6,0x60,0xc6,0x60,0xcc,0x60, + 0xcc,0x60,0xd8,0x60,0xf0,0x60,0xf0,0x60,0xe0,0x60,0xc0,0x60 +}; +static const GLUTBitmapChar ch78 = { 11, 14, -1, 0, 13, ch78data }; + +static const unsigned char ch79data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80 +}; +static const GLUTBitmapChar ch79 = { 13, 14, -1, 0, 15, ch79data }; + +static const unsigned char ch80data[] = { + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x80, + 0xc1,0xc0,0xc0,0xc0,0xc0,0xc0,0xc1,0xc0,0xff,0x80,0xff,0x0 +}; +static const GLUTBitmapChar ch80 = { 10, 14, -1, 0, 12, ch80data }; + +static const unsigned char ch81data[] = { + 0x0,0x30,0xf,0xb0,0x3f,0xe0,0x70,0xf0,0x61,0xb0,0xe1,0xb8,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80 +}; +static const GLUTBitmapChar ch81 = { 13, 15, -1, 1, 15, ch81data }; + +static const unsigned char ch82data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc1,0x80,0xc1,0x80,0xff,0x0,0xff,0x80, + 0xc1,0xc0,0xc0,0xc0,0xc0,0xc0,0xc1,0xc0,0xff,0x80,0xff,0x0 +}; +static const GLUTBitmapChar ch82 = { 10, 14, -1, 0, 12, ch82data }; + +static const unsigned char ch83data[] = { + 0x3f,0x0,0x7f,0xc0,0xe0,0xe0,0xc0,0x60,0x0,0x60,0x0,0xe0,0x3,0xc0,0x1f,0x0, + 0x7c,0x0,0xe0,0x0,0xc0,0x60,0xe0,0xe0,0x7f,0xc0,0x1f,0x0 +}; +static const GLUTBitmapChar ch83 = { 11, 14, -1, 0, 13, ch83data }; + +static const unsigned char ch84data[] = { + 0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0, + 0xc,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0xff,0xc0,0xff,0xc0 +}; +static const GLUTBitmapChar ch84 = { 10, 14, -1, 0, 12, ch84data }; + +static const unsigned char ch85data[] = { + 0x1f,0x0,0x7f,0xc0,0x60,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60 +}; +static const GLUTBitmapChar ch85 = { 11, 14, -1, 0, 13, ch85data }; + +static const unsigned char ch86data[] = { + 0x6,0x0,0xf,0x0,0xf,0x0,0x19,0x80,0x19,0x80,0x19,0x80,0x30,0xc0,0x30,0xc0, + 0x30,0xc0,0x60,0x60,0x60,0x60,0x60,0x60,0xc0,0x30,0xc0,0x30 +}; +static const GLUTBitmapChar ch86 = { 12, 14, -1, 0, 14, ch86data }; + +static const unsigned char ch87data[] = { + 0x18,0x18,0x18,0x18,0x1c,0x38,0x34,0x2c,0x36,0x6c,0x36,0x6c,0x66,0x66,0x66,0x66, + 0x62,0x46,0x63,0xc6,0xc3,0xc3,0xc1,0x83,0xc1,0x83,0xc1,0x83 +}; +static const GLUTBitmapChar ch87 = { 16, 14, -1, 0, 18, ch87data }; + +static const unsigned char ch88data[] = { + 0xc0,0x60,0xe0,0xe0,0x60,0xc0,0x71,0xc0,0x31,0x80,0x1b,0x0,0xe,0x0,0xe,0x0, + 0x1b,0x0,0x31,0x80,0x71,0xc0,0x60,0xc0,0xe0,0xe0,0xc0,0x60 +}; +static const GLUTBitmapChar ch88 = { 11, 14, -1, 0, 13, ch88data }; + +static const unsigned char ch89data[] = { + 0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0xf,0x0,0x19,0x80, + 0x30,0xc0,0x30,0xc0,0x60,0x60,0x60,0x60,0xc0,0x30,0xc0,0x30 +}; +static const GLUTBitmapChar ch89 = { 12, 14, -1, 0, 14, ch89data }; + +static const unsigned char ch90data[] = { + 0xff,0xc0,0xff,0xc0,0xc0,0x0,0x60,0x0,0x30,0x0,0x18,0x0,0x1c,0x0,0xc,0x0, + 0x6,0x0,0x3,0x0,0x1,0x80,0x0,0xc0,0xff,0xc0,0xff,0xc0 +}; +static const GLUTBitmapChar ch90 = { 10, 14, -1, 0, 12, ch90data }; + +static const unsigned char ch91data[] = { + 0xf0,0xf0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xf0,0xf0 +}; +static const GLUTBitmapChar ch91 = { 4, 18, -1, 4, 5, ch91data }; + +static const unsigned char ch92data[] = { + 0x18,0x18,0x10,0x10,0x30,0x30,0x20,0x20,0x60,0x60,0x40,0x40,0xc0,0xc0 +}; +static const GLUTBitmapChar ch92 = { 5, 14, 0, 0, 5, ch92data }; + +static const unsigned char ch93data[] = { + 0xf0,0xf0,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0xf0,0xf0 +}; +static const GLUTBitmapChar ch93 = { 4, 18, 0, 4, 5, ch93data }; + +static const unsigned char ch94data[] = { + 0x82,0xc6,0x6c,0x38,0x10 +}; +static const GLUTBitmapChar ch94 = { 7, 5, -1, -8, 9, ch94data }; + +static const unsigned char ch95data[] = { + 0xff,0xc0,0xff,0xc0 +}; +static const GLUTBitmapChar ch95 = { 10, 2, 0, 4, 10, ch95data }; + +static const unsigned char ch96data[] = { + 0xc0,0xc0,0x80,0x80,0x40 +}; +static const GLUTBitmapChar ch96 = { 2, 5, -1, -9, 4, ch96data }; + +static const unsigned char ch97data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c +}; +static const GLUTBitmapChar ch97 = { 7, 10, -1, 0, 9, ch97data }; + +static const unsigned char ch98data[] = { + 0xde,0x0,0xff,0x0,0xe3,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xe3,0x0, + 0xff,0x0,0xde,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0 +}; +static const GLUTBitmapChar ch98 = { 9, 14, -1, 0, 11, ch98data }; + +static const unsigned char ch99data[] = { + 0x3e,0x7f,0x63,0xc0,0xc0,0xc0,0xc0,0x63,0x7f,0x3e +}; +static const GLUTBitmapChar ch99 = { 8, 10, -1, 0, 10, ch99data }; + +static const unsigned char ch100data[] = { + 0x3d,0x80,0x7f,0x80,0x63,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x80, + 0x7f,0x80,0x3d,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80 +}; +static const GLUTBitmapChar ch100 = { 9, 14, -1, 0, 11, ch100data }; + +static const unsigned char ch101data[] = { + 0x3c,0x7f,0xe3,0xc0,0xc0,0xff,0xc3,0xc3,0x7e,0x3c +}; +static const GLUTBitmapChar ch101 = { 8, 10, -1, 0, 10, ch101data }; + +static const unsigned char ch102data[] = { + 0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xfc,0xfc,0x30,0x30,0x3c,0x1c +}; +static const GLUTBitmapChar ch102 = { 6, 14, 0, 0, 6, ch102data }; + +static const unsigned char ch103data[] = { + 0x1c,0x0,0x7f,0x0,0x63,0x0,0x1,0x80,0x3d,0x80,0x7f,0x80,0x63,0x80,0xc1,0x80, + 0xc1,0x80,0xc1,0x80,0xc1,0x80,0x61,0x80,0x7f,0x80,0x3d,0x80 +}; +static const GLUTBitmapChar ch103 = { 9, 14, -1, 4, 11, ch103data }; + +static const unsigned char ch104data[] = { + 0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xe3,0xdf,0xce,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch104 = { 8, 14, -1, 0, 10, ch104data }; + +static const unsigned char ch105data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch105 = { 2, 14, -1, 0, 4, ch105data }; + +static const unsigned char ch106data[] = { + 0xe0,0xf0,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x0,0x0, + 0x30,0x30 +}; +static const GLUTBitmapChar ch106 = { 4, 18, 1, 4, 4, ch106data }; + +static const unsigned char ch107data[] = { + 0xc7,0xc6,0xce,0xcc,0xd8,0xf8,0xf0,0xd8,0xcc,0xc6,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch107 = { 8, 14, -1, 0, 9, ch107data }; + +static const unsigned char ch108data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch108 = { 2, 14, -1, 0, 4, ch108data }; + +static const unsigned char ch109data[] = { + 0xc6,0x30,0xc6,0x30,0xc6,0x30,0xc6,0x30,0xc6,0x30,0xc6,0x30,0xc6,0x30,0xe7,0x30, + 0xde,0xf0,0xcc,0x60 +}; +static const GLUTBitmapChar ch109 = { 12, 10, -1, 0, 14, ch109data }; + +static const unsigned char ch110data[] = { + 0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xe3,0xdf,0xce +}; +static const GLUTBitmapChar ch110 = { 8, 10, -1, 0, 10, ch110data }; + +static const unsigned char ch111data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0 +}; +static const GLUTBitmapChar ch111 = { 9, 10, -1, 0, 11, ch111data }; + +static const unsigned char ch112data[] = { + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xde,0x0,0xff,0x0,0xe3,0x0,0xc1,0x80, + 0xc1,0x80,0xc1,0x80,0xc1,0x80,0xe3,0x0,0xff,0x0,0xde,0x0 +}; +static const GLUTBitmapChar ch112 = { 9, 14, -1, 4, 11, ch112data }; + +static const unsigned char ch113data[] = { + 0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x3d,0x80,0x7f,0x80,0x63,0x80,0xc1,0x80, + 0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x80,0x7f,0x80,0x3d,0x80 +}; +static const GLUTBitmapChar ch113 = { 9, 14, -1, 4, 11, ch113data }; + +static const unsigned char ch114data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xe0,0xd8,0xd8 +}; +static const GLUTBitmapChar ch114 = { 5, 10, -1, 0, 6, ch114data }; + +static const unsigned char ch115data[] = { + 0x78,0xfc,0xc6,0x6,0x3e,0xfc,0xc0,0xc6,0x7e,0x3c +}; +static const GLUTBitmapChar ch115 = { 7, 10, -1, 0, 9, ch115data }; + +static const unsigned char ch116data[] = { + 0x18,0x38,0x30,0x30,0x30,0x30,0x30,0x30,0xfc,0xfc,0x30,0x30,0x30 +}; +static const GLUTBitmapChar ch116 = { 6, 13, 0, 0, 6, ch116data }; + +static const unsigned char ch117data[] = { + 0x73,0xfb,0xc7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3 +}; +static const GLUTBitmapChar ch117 = { 8, 10, -1, 0, 10, ch117data }; + +static const unsigned char ch118data[] = { + 0x18,0x18,0x3c,0x24,0x66,0x66,0x66,0xc3,0xc3,0xc3 +}; +static const GLUTBitmapChar ch118 = { 8, 10, -1, 0, 10, ch118data }; + +static const unsigned char ch119data[] = { + 0x19,0x80,0x19,0x80,0x39,0xc0,0x29,0x40,0x69,0x60,0x66,0x60,0x66,0x60,0xc6,0x30, + 0xc6,0x30,0xc6,0x30 +}; +static const GLUTBitmapChar ch119 = { 12, 10, -1, 0, 14, ch119data }; + +static const unsigned char ch120data[] = { + 0xc3,0xe7,0x66,0x3c,0x18,0x18,0x3c,0x66,0xe7,0xc3 +}; +static const GLUTBitmapChar ch120 = { 8, 10, -1, 0, 10, ch120data }; + +static const unsigned char ch121data[] = { + 0x70,0x70,0x18,0x18,0x18,0x18,0x3c,0x24,0x66,0x66,0x66,0xc3,0xc3,0xc3 +}; +static const GLUTBitmapChar ch121 = { 8, 14, -1, 4, 10, ch121data }; + +static const unsigned char ch122data[] = { + 0xfe,0xfe,0xc0,0x60,0x30,0x18,0xc,0x6,0xfe,0xfe +}; +static const GLUTBitmapChar ch122 = { 7, 10, -1, 0, 9, ch122data }; + +static const unsigned char ch123data[] = { + 0xc,0x18,0x30,0x30,0x30,0x30,0x30,0x30,0x60,0xc0,0x60,0x30,0x30,0x30,0x30,0x30, + 0x18,0xc +}; +static const GLUTBitmapChar ch123 = { 6, 18, 0, 4, 6, ch123data }; + +static const unsigned char ch124data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch124 = { 2, 18, -1, 4, 4, ch124data }; + +static const unsigned char ch125data[] = { + 0xc0,0x60,0x30,0x30,0x30,0x30,0x30,0x30,0x18,0xc,0x18,0x30,0x30,0x30,0x30,0x30, + 0x60,0xc0 +}; +static const GLUTBitmapChar ch125 = { 6, 18, 0, 4, 6, ch125data }; + +static const unsigned char ch126data[] = { + 0xcc,0x7e,0x33 +}; +static const GLUTBitmapChar ch126 = { 8, 3, -1, -4, 10, ch126data }; + +static const unsigned char ch160data[] = { + 0x0 +}; +static const GLUTBitmapChar ch160 = { 1, 1, 0, 0, 5, ch160data }; + +static const unsigned char ch161data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x40,0x40,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch161 = { 2, 14, -2, 4, 6, ch161data }; + +static const unsigned char ch162data[] = { + 0x10,0x10,0x3e,0x7f,0x6b,0xc8,0xc8,0xc8,0xc8,0x6b,0x7f,0x3e,0x4,0x4 +}; +static const GLUTBitmapChar ch162 = { 8, 14, -1, 2, 10, ch162data }; + +static const unsigned char ch163data[] = { + 0xdf,0x0,0xff,0x80,0x60,0x80,0x30,0x0,0x18,0x0,0x18,0x0,0x7e,0x0,0x30,0x0, + 0x60,0x0,0x61,0x80,0x61,0x80,0x3f,0x0,0x1e,0x0 +}; +static const GLUTBitmapChar ch163 = { 9, 13, 0, 0, 10, ch163data }; + +static const unsigned char ch164data[] = { + 0xc3,0xff,0x66,0x66,0x66,0xff,0xc3 +}; +static const GLUTBitmapChar ch164 = { 8, 7, -1, -3, 10, ch164data }; + +static const unsigned char ch165data[] = { + 0x18,0x18,0x18,0x18,0xff,0x18,0xff,0x3c,0x66,0x66,0x66,0xc3,0xc3 +}; +static const GLUTBitmapChar ch165 = { 8, 13, -1, 0, 10, ch165data }; + +static const unsigned char ch166data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x0,0x0,0x0,0x0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch166 = { 2, 17, -1, 3, 4, ch166data }; + +static const unsigned char ch167data[] = { + 0x3c,0x7e,0xc3,0xc3,0x7,0xe,0x3e,0x73,0xe3,0xc3,0xc7,0x6e,0x7c,0xf0,0xc3,0xc3, + 0x7e,0x3c +}; +static const GLUTBitmapChar ch167 = { 8, 18, -1, 4, 10, ch167data }; + +static const unsigned char ch168data[] = { + 0xd8,0xd8 +}; +static const GLUTBitmapChar ch168 = { 5, 2, 0, -11, 6, ch168data }; + +static const unsigned char ch169data[] = { + 0xf,0x80,0x30,0x60,0x40,0x10,0x47,0x10,0x88,0x88,0x90,0x8,0x90,0x8,0x90,0x8, + 0x88,0x88,0x47,0x10,0x40,0x10,0x30,0x60,0xf,0x80 +}; +static const GLUTBitmapChar ch169 = { 13, 13, -1, 0, 15, ch169data }; + +static const unsigned char ch170data[] = { + 0xf8,0x0,0x68,0xd8,0x48,0x38,0xc8,0x70 +}; +static const GLUTBitmapChar ch170 = { 5, 8, -1, -6, 7, ch170data }; + +static const unsigned char ch171data[] = { + 0x12,0x36,0x6c,0xd8,0xd8,0x6c,0x36,0x12 +}; +static const GLUTBitmapChar ch171 = { 7, 8, -1, -1, 9, ch171data }; + +static const unsigned char ch172data[] = { + 0x1,0x80,0x1,0x80,0x1,0x80,0xff,0x80,0xff,0x80 +}; +static const GLUTBitmapChar ch172 = { 9, 5, -1, -3, 11, ch172data }; + +static const unsigned char ch173data[] = { + 0xf8,0xf8 +}; +static const GLUTBitmapChar ch173 = { 5, 2, -1, -4, 7, ch173data }; + +static const unsigned char ch174data[] = { + 0xf,0x80,0x30,0x60,0x40,0x10,0x48,0x50,0x88,0x88,0x89,0x8,0x8f,0x88,0x88,0x48, + 0x88,0x48,0x4f,0x90,0x40,0x10,0x30,0x60,0xf,0x80 +}; +static const GLUTBitmapChar ch174 = { 13, 13, -1, 0, 14, ch174data }; + +static const unsigned char ch175data[] = { + 0xf8 +}; +static const GLUTBitmapChar ch175 = { 5, 1, 0, -12, 5, ch175data }; + +static const unsigned char ch176data[] = { + 0x70,0xd8,0x88,0xd8,0x70 +}; +static const GLUTBitmapChar ch176 = { 5, 5, -1, -8, 7, ch176data }; + +static const unsigned char ch177data[] = { + 0xff,0xff,0x0,0x18,0x18,0x18,0xff,0xff,0x18,0x18,0x18 +}; +static const GLUTBitmapChar ch177 = { 8, 11, -1, 0, 10, ch177data }; + +static const unsigned char ch178data[] = { + 0xf8,0xf8,0x60,0x30,0x18,0x98,0xf8,0x70 +}; +static const GLUTBitmapChar ch178 = { 5, 8, 0, -5, 6, ch178data }; + +static const unsigned char ch179data[] = { + 0x70,0xf8,0x98,0x30,0x30,0x98,0xf8,0x70 +}; +static const GLUTBitmapChar ch179 = { 5, 8, 0, -5, 6, ch179data }; + +static const unsigned char ch180data[] = { + 0xc0,0x60,0x30 +}; +static const GLUTBitmapChar ch180 = { 4, 3, 0, -11, 4, ch180data }; + +static const unsigned char ch181data[] = { + 0xc0,0xc0,0xc0,0xc0,0xdb,0xff,0xe7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3 +}; +static const GLUTBitmapChar ch181 = { 8, 14, -1, 4, 10, ch181data }; + +static const unsigned char ch182data[] = { + 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x32,0x72,0xf2,0xf2,0xf2,0xf2, + 0x72,0x3f +}; +static const GLUTBitmapChar ch182 = { 8, 18, -1, 4, 10, ch182data }; + +static const unsigned char ch183data[] = { + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch183 = { 2, 2, -1, -4, 4, ch183data }; + +static const unsigned char ch184data[] = { + 0xf0,0xd8,0x18,0x70,0x60 +}; +static const GLUTBitmapChar ch184 = { 5, 5, 0, 4, 5, ch184data }; + +static const unsigned char ch185data[] = { + 0x60,0x60,0x60,0x60,0x60,0xe0,0xe0,0x60 +}; +static const GLUTBitmapChar ch185 = { 3, 8, -1, -5, 6, ch185data }; + +static const unsigned char ch186data[] = { + 0xf8,0x0,0x70,0xd8,0x88,0x88,0xd8,0x70 +}; +static const GLUTBitmapChar ch186 = { 5, 8, -1, -6, 7, ch186data }; + +static const unsigned char ch187data[] = { + 0x90,0xd8,0x6c,0x36,0x36,0x6c,0xd8,0x90 +}; +static const GLUTBitmapChar ch187 = { 7, 8, -1, -1, 9, ch187data }; + +static const unsigned char ch188data[] = { + 0x30,0x30,0x30,0x30,0x19,0xf8,0xd,0xb0,0xc,0xf0,0x66,0x70,0x62,0x30,0x63,0x10, + 0x61,0x80,0x61,0x80,0xe0,0xc0,0xe0,0x60,0x60,0x60 +}; +static const GLUTBitmapChar ch188 = { 13, 13, -1, 0, 15, ch188data }; + +static const unsigned char ch189data[] = { + 0x30,0xf8,0x30,0xf8,0x18,0x60,0xc,0x30,0xc,0x18,0x66,0x98,0x62,0xf8,0x63,0x70, + 0x61,0x80,0x61,0x80,0xe0,0xc0,0xe0,0x60,0x60,0x60 +}; +static const GLUTBitmapChar ch189 = { 13, 13, -1, 0, 15, ch189data }; + +static const unsigned char ch190data[] = { + 0x18,0x18,0x18,0x18,0xc,0xfc,0x6,0xd8,0x6,0x78,0x73,0x38,0xf9,0x18,0x99,0x88, + 0x30,0xc0,0x30,0xc0,0x98,0x60,0xf8,0x30,0x70,0x30 +}; +static const GLUTBitmapChar ch190 = { 14, 13, 0, 0, 15, ch190data }; + +static const unsigned char ch191data[] = { + 0x7c,0xfe,0xc6,0xc6,0xe0,0x70,0x38,0x18,0x18,0x18,0x0,0x0,0x18,0x18 +}; +static const GLUTBitmapChar ch191 = { 7, 14, -1, 4, 10, ch191data }; + +static const unsigned char ch192data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0x0,0x0,0x6,0x0, + 0xc,0x0,0x18,0x0 +}; +static const GLUTBitmapChar ch192 = { 12, 18, 0, 0, 12, ch192data }; + +static const unsigned char ch193data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0x0,0x0,0x6,0x0, + 0x3,0x0,0x1,0x80 +}; +static const GLUTBitmapChar ch193 = { 12, 18, 0, 0, 12, ch193data }; + +static const unsigned char ch194data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0x0,0x0,0x19,0x80, + 0xf,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch194 = { 12, 18, 0, 0, 12, ch194data }; + +static const unsigned char ch195data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0x0,0x0,0x13,0x0, + 0x16,0x80,0xc,0x80 +}; +static const GLUTBitmapChar ch195 = { 12, 18, 0, 0, 12, ch195data }; + +static const unsigned char ch196data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0x0,0x0,0x19,0x80, + 0x19,0x80 +}; +static const GLUTBitmapChar ch196 = { 12, 17, 0, 0, 12, ch196data }; + +static const unsigned char ch197data[] = { + 0xc0,0x30,0xc0,0x30,0x60,0x60,0x60,0x60,0x7f,0xe0,0x3f,0xc0,0x30,0xc0,0x30,0xc0, + 0x19,0x80,0x19,0x80,0xf,0x0,0xf,0x0,0x6,0x0,0x6,0x0,0xf,0x0,0x19,0x80, + 0x19,0x80,0xf,0x0 +}; +static const GLUTBitmapChar ch197 = { 12, 18, 0, 0, 12, ch197data }; + +static const unsigned char ch198data[] = { + 0xc1,0xff,0xc1,0xff,0x61,0x80,0x61,0x80,0x7f,0x80,0x3f,0x80,0x31,0xfe,0x31,0xfe, + 0x19,0x80,0x19,0x80,0xd,0x80,0xd,0x80,0x7,0xff,0x7,0xff +}; +static const GLUTBitmapChar ch198 = { 16, 14, -1, 0, 18, ch198data }; + +static const unsigned char ch199data[] = { + 0x1e,0x0,0x1b,0x0,0x3,0x0,0xe,0x0,0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30, + 0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xe0,0x0,0x60,0x30,0x70,0x70, + 0x3f,0xe0,0xf,0x80 +}; +static const GLUTBitmapChar ch199 = { 12, 18, -1, 4, 14, ch199data }; + +static const unsigned char ch200data[] = { + 0xff,0x80,0xff,0x80,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80,0x0,0x0,0xc,0x0, + 0x18,0x0,0x30,0x0 +}; +static const GLUTBitmapChar ch200 = { 9, 18, -1, 0, 11, ch200data }; + +static const unsigned char ch201data[] = { + 0xff,0x80,0xff,0x80,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80,0x0,0x0,0xc,0x0, + 0x6,0x0,0x3,0x0 +}; +static const GLUTBitmapChar ch201 = { 9, 18, -1, 0, 11, ch201data }; + +static const unsigned char ch202data[] = { + 0xff,0x80,0xff,0x80,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80,0x0,0x0,0x33,0x0, + 0x1e,0x0,0xc,0x0 +}; +static const GLUTBitmapChar ch202 = { 9, 18, -1, 0, 11, ch202data }; + +static const unsigned char ch203data[] = { + 0xff,0x80,0xff,0x80,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80,0xff,0x80,0x0,0x0,0x33,0x0, + 0x33,0x0 +}; +static const GLUTBitmapChar ch203 = { 9, 17, -1, 0, 11, ch203data }; + +static const unsigned char ch204data[] = { + 0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x0,0x30, + 0x60,0xc0 +}; +static const GLUTBitmapChar ch204 = { 4, 18, 0, 0, 6, ch204data }; + +static const unsigned char ch205data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x0,0xc0, + 0x60,0x30 +}; +static const GLUTBitmapChar ch205 = { 4, 18, -2, 0, 6, ch205data }; + +static const unsigned char ch206data[] = { + 0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x0,0xcc, + 0x78,0x30 +}; +static const GLUTBitmapChar ch206 = { 6, 18, 0, 0, 6, ch206data }; + +static const unsigned char ch207data[] = { + 0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x0,0xcc, + 0xcc +}; +static const GLUTBitmapChar ch207 = { 6, 17, 0, 0, 6, ch207data }; + +static const unsigned char ch208data[] = { + 0x7f,0x80,0x7f,0xc0,0x60,0xe0,0x60,0x60,0x60,0x30,0x60,0x30,0xfc,0x30,0xfc,0x30, + 0x60,0x30,0x60,0x30,0x60,0x60,0x60,0xe0,0x7f,0xc0,0x7f,0x80 +}; +static const GLUTBitmapChar ch208 = { 12, 14, 0, 0, 13, ch208data }; + +static const unsigned char ch209data[] = { + 0xc0,0x60,0xc0,0xe0,0xc1,0xe0,0xc1,0xe0,0xc3,0x60,0xc6,0x60,0xc6,0x60,0xcc,0x60, + 0xcc,0x60,0xd8,0x60,0xd8,0x60,0xf0,0x60,0xe0,0x60,0xe0,0x60,0x0,0x0,0x13,0x0, + 0x16,0x80,0xc,0x80 +}; +static const GLUTBitmapChar ch209 = { 11, 18, -1, 0, 13, ch209data }; + +static const unsigned char ch210data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80,0x0,0x0,0x3,0x0, + 0x6,0x0,0xc,0x0 +}; +static const GLUTBitmapChar ch210 = { 13, 18, -1, 0, 15, ch210data }; + +static const unsigned char ch211data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80,0x0,0x0,0x3,0x0, + 0x1,0x80,0x0,0xc0 +}; +static const GLUTBitmapChar ch211 = { 13, 18, -1, 0, 15, ch211data }; + +static const unsigned char ch212data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80,0x0,0x0,0xc,0xc0, + 0x7,0x80,0x3,0x0 +}; +static const GLUTBitmapChar ch212 = { 13, 18, -1, 0, 15, ch212data }; + +static const unsigned char ch213data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80,0x0,0x0,0x9,0x80, + 0xb,0x40,0x6,0x40 +}; +static const GLUTBitmapChar ch213 = { 13, 18, -1, 0, 15, ch213data }; + +static const unsigned char ch214data[] = { + 0xf,0x80,0x3f,0xe0,0x70,0x70,0x60,0x30,0xe0,0x38,0xc0,0x18,0xc0,0x18,0xc0,0x18, + 0xc0,0x18,0xe0,0x38,0x60,0x30,0x70,0x70,0x3f,0xe0,0xf,0x80,0x0,0x0,0xd,0x80, + 0xd,0x80 +}; +static const GLUTBitmapChar ch214 = { 13, 17, -1, 0, 15, ch214data }; + +static const unsigned char ch215data[] = { + 0xc0,0xc0,0x61,0x80,0x33,0x0,0x1e,0x0,0xc,0x0,0x1e,0x0,0x33,0x0,0x61,0x80, + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch215 = { 10, 9, 0, 0, 10, ch215data }; + +static const unsigned char ch216data[] = { + 0xc7,0xc0,0xff,0xf0,0x78,0x38,0x38,0x18,0x6c,0x1c,0x6e,0xc,0x67,0xc,0x63,0x8c, + 0x61,0xcc,0x70,0xdc,0x30,0x78,0x38,0x38,0x1f,0xfc,0x7,0xcc +}; +static const GLUTBitmapChar ch216 = { 14, 14, 0, 0, 15, ch216data }; + +static const unsigned char ch217data[] = { + 0x1f,0x0,0x7f,0xc0,0x60,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0x0,0x0,0x6,0x0, + 0xc,0x0,0x18,0x0 +}; +static const GLUTBitmapChar ch217 = { 11, 18, -1, 0, 13, ch217data }; + +static const unsigned char ch218data[] = { + 0x1f,0x0,0x7f,0xc0,0x60,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0x0,0x0,0xc,0x0, + 0x6,0x0,0x3,0x0 +}; +static const GLUTBitmapChar ch218 = { 11, 18, -1, 0, 13, ch218data }; + +static const unsigned char ch219data[] = { + 0x1f,0x0,0x7f,0xc0,0x60,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0x0,0x0,0x19,0x80, + 0xf,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch219 = { 11, 18, -1, 0, 13, ch219data }; + +static const unsigned char ch220data[] = { + 0x1f,0x0,0x7f,0xc0,0x60,0xc0,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60, + 0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0x0,0x0,0x19,0x80, + 0x19,0x80 +}; +static const GLUTBitmapChar ch220 = { 11, 17, -1, 0, 13, ch220data }; + +static const unsigned char ch221data[] = { + 0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0xf,0x0,0x19,0x80, + 0x30,0xc0,0x30,0xc0,0x60,0x60,0x60,0x60,0xc0,0x30,0xc0,0x30,0x0,0x0,0x6,0x0, + 0x3,0x0,0x1,0x80 +}; +static const GLUTBitmapChar ch221 = { 12, 18, -1, 0, 14, ch221data }; + +static const unsigned char ch222data[] = { + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x0,0xff,0x80,0xc1,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc1,0xc0,0xff,0x80,0xff,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0 +}; +static const GLUTBitmapChar ch222 = { 10, 14, -1, 0, 12, ch222data }; + +static const unsigned char ch223data[] = { + 0xdc,0xde,0xc6,0xc6,0xc6,0xc6,0xdc,0xdc,0xc6,0xc6,0xc6,0xc6,0x7c,0x38 +}; +static const GLUTBitmapChar ch223 = { 7, 14, -1, 0, 9, ch223data }; + +static const unsigned char ch224data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x0,0x18,0x30,0x60 +}; +static const GLUTBitmapChar ch224 = { 7, 14, -1, 0, 9, ch224data }; + +static const unsigned char ch225data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x0,0x30,0x18,0xc +}; +static const GLUTBitmapChar ch225 = { 7, 14, -1, 0, 9, ch225data }; + +static const unsigned char ch226data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x0,0x66,0x3c,0x18 +}; +static const GLUTBitmapChar ch226 = { 7, 14, -1, 0, 9, ch226data }; + +static const unsigned char ch227data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x0,0x4c,0x5a,0x32 +}; +static const GLUTBitmapChar ch227 = { 7, 14, -1, 0, 9, ch227data }; + +static const unsigned char ch228data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x0,0x6c,0x6c +}; +static const GLUTBitmapChar ch228 = { 7, 13, -1, 0, 9, ch228data }; + +static const unsigned char ch229data[] = { + 0x76,0xee,0xc6,0xc6,0xe6,0x7e,0xe,0xc6,0xee,0x7c,0x38,0x6c,0x6c,0x38 +}; +static const GLUTBitmapChar ch229 = { 7, 14, -1, 0, 9, ch229data }; + +static const unsigned char ch230data[] = { + 0x75,0xe0,0xef,0xf8,0xc7,0x18,0xc6,0x0,0xe6,0x0,0x7f,0xf8,0xe,0x18,0xc6,0x18, + 0xef,0xf0,0x7d,0xe0 +}; +static const GLUTBitmapChar ch230 = { 13, 10, -1, 0, 15, ch230data }; + +static const unsigned char ch231data[] = { + 0x78,0x6c,0xc,0x38,0x3e,0x7f,0x63,0xc0,0xc0,0xc0,0xc0,0x63,0x7f,0x3e +}; +static const GLUTBitmapChar ch231 = { 8, 14, -1, 4, 10, ch231data }; + +static const unsigned char ch232data[] = { + 0x3c,0x7f,0xe3,0xc0,0xc0,0xff,0xc3,0xc3,0x7e,0x3c,0x0,0x18,0x30,0x60 +}; +static const GLUTBitmapChar ch232 = { 8, 14, -1, 0, 10, ch232data }; + +static const unsigned char ch233data[] = { + 0x3c,0x7f,0xe3,0xc0,0xc0,0xff,0xc3,0xc3,0x7e,0x3c,0x0,0x18,0xc,0x6 +}; +static const GLUTBitmapChar ch233 = { 8, 14, -1, 0, 10, ch233data }; + +static const unsigned char ch234data[] = { + 0x3c,0x7f,0xe3,0xc0,0xc0,0xff,0xc3,0xc3,0x7e,0x3c,0x0,0x66,0x3c,0x18 +}; +static const GLUTBitmapChar ch234 = { 8, 14, -1, 0, 10, ch234data }; + +static const unsigned char ch235data[] = { + 0x3c,0x7f,0xe3,0xc0,0xc0,0xff,0xc3,0xc3,0x7e,0x3c,0x0,0x36,0x36 +}; +static const GLUTBitmapChar ch235 = { 8, 13, -1, 0, 10, ch235data }; + +static const unsigned char ch236data[] = { + 0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x0,0x30,0x60,0xc0 +}; +static const GLUTBitmapChar ch236 = { 4, 14, 0, 0, 4, ch236data }; + +static const unsigned char ch237data[] = { + 0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x0,0xc0,0x60,0x30 +}; +static const GLUTBitmapChar ch237 = { 4, 14, 0, 0, 4, ch237data }; + +static const unsigned char ch238data[] = { + 0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x0,0xcc,0x78,0x30 +}; +static const GLUTBitmapChar ch238 = { 6, 14, 1, 0, 4, ch238data }; + +static const unsigned char ch239data[] = { + 0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x0,0xd8,0xd8 +}; +static const GLUTBitmapChar ch239 = { 5, 13, 0, 0, 4, ch239data }; + +static const unsigned char ch240data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x4c,0x0,0x38,0x0,0x36,0x0,0x60,0x0 +}; +static const GLUTBitmapChar ch240 = { 9, 14, -1, 0, 11, ch240data }; + +static const unsigned char ch241data[] = { + 0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xe3,0xdf,0xce,0x0,0x4c,0x5a,0x32 +}; +static const GLUTBitmapChar ch241 = { 8, 14, -1, 0, 10, ch241data }; + +static const unsigned char ch242data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x0,0x0,0xc,0x0,0x18,0x0,0x30,0x0 +}; +static const GLUTBitmapChar ch242 = { 9, 14, -1, 0, 11, ch242data }; + +static const unsigned char ch243data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x0,0x0,0x18,0x0,0xc,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch243 = { 9, 14, -1, 0, 11, ch243data }; + +static const unsigned char ch244data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x0,0x0,0x33,0x0,0x1e,0x0,0xc,0x0 +}; +static const GLUTBitmapChar ch244 = { 9, 14, -1, 0, 11, ch244data }; + +static const unsigned char ch245data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x0,0x0,0x26,0x0,0x2d,0x0,0x19,0x0 +}; +static const GLUTBitmapChar ch245 = { 9, 14, -1, 0, 11, ch245data }; + +static const unsigned char ch246data[] = { + 0x3e,0x0,0x7f,0x0,0x63,0x0,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x63,0x0, + 0x7f,0x0,0x3e,0x0,0x0,0x0,0x36,0x0,0x36,0x0 +}; +static const GLUTBitmapChar ch246 = { 9, 13, -1, 0, 11, ch246data }; + +static const unsigned char ch247data[] = { + 0x18,0x18,0x0,0xff,0xff,0x0,0x18,0x18 +}; +static const GLUTBitmapChar ch247 = { 8, 8, -1, -1, 10, ch247data }; + +static const unsigned char ch248data[] = { + 0xce,0x0,0x7f,0x80,0x31,0x80,0x78,0xc0,0x6c,0xc0,0x66,0xc0,0x63,0xc0,0x31,0x80, + 0x3f,0xc0,0xe,0x60 +}; +static const GLUTBitmapChar ch248 = { 11, 10, 0, 0, 11, ch248data }; + +static const unsigned char ch249data[] = { + 0x73,0xfb,0xc7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0x0,0xc,0x18,0x30 +}; +static const GLUTBitmapChar ch249 = { 8, 14, -1, 0, 10, ch249data }; + +static const unsigned char ch250data[] = { + 0x73,0xfb,0xc7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0x0,0x18,0xc,0x6 +}; +static const GLUTBitmapChar ch250 = { 8, 14, -1, 0, 10, ch250data }; + +static const unsigned char ch251data[] = { + 0x73,0xfb,0xc7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0x0,0x66,0x3c,0x18 +}; +static const GLUTBitmapChar ch251 = { 8, 14, -1, 0, 10, ch251data }; + +static const unsigned char ch252data[] = { + 0x73,0xfb,0xc7,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0xc3,0x0,0x66,0x66 +}; +static const GLUTBitmapChar ch252 = { 8, 13, -1, 0, 10, ch252data }; + +static const unsigned char ch253data[] = { + 0x70,0x70,0x18,0x18,0x18,0x18,0x3c,0x24,0x66,0x66,0x66,0xc3,0xc3,0xc3,0x0,0x18, + 0xc,0x6 +}; +static const GLUTBitmapChar ch253 = { 8, 18, -1, 4, 10, ch253data }; + +static const unsigned char ch254data[] = { + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xde,0x0,0xff,0x0,0xe3,0x0,0xc1,0x80, + 0xc1,0x80,0xc1,0x80,0xc1,0x80,0xe3,0x0,0xff,0x0,0xde,0x0,0xc0,0x0,0xc0,0x0, + 0xc0,0x0,0xc0,0x0 +}; +static const GLUTBitmapChar ch254 = { 9, 18, -1, 4, 11, ch254data }; + +static const unsigned char ch255data[] = { + 0x70,0x70,0x18,0x18,0x18,0x18,0x3c,0x24,0x66,0x66,0x66,0xc3,0xc3,0xc3,0x0,0x66, + 0x66 +}; +static const GLUTBitmapChar ch255 = { 8, 17, -1, 4, 10, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmapHelvetica18 = { + "-Adobe-Helvetica-Medium-R-Normal--18-180-75-75-P-98-ISO8859-1", + 22, 256, chars +}; diff --git a/src/glut/dos/init.c b/src/glut/dos/init.c index 85f5da629d..3a98dcf0a4 100644 --- a/src/glut/dos/init.c +++ b/src/glut/dos/init.c @@ -1,62 +1,87 @@ /* - * Mesa 3-D graphics library - * Version: 4.0 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.5 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@users.sourceforge.net - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> #include <string.h> -#include "glutint.h" +#include "internal.h" + -#define DEFAULT_WIDTH 300 -#define DEFAULT_HEIGHT 300 -#define DEFAULT_BPP 16 +char *__glutProgramName = NULL; -#define ALPHA_SIZE 8 -#define DEPTH_SIZE 16 -#define STENCIL_SIZE 8 -#define ACCUM_SIZE 16 +GLUTvisual _glut_visual = { + 16, 8, 16, 8, 16, /* bpp, alpha, depth, stencil, accum */ + { 0, 0 }, 0, /* geometry */ -GLuint g_bpp = DEFAULT_BPP; -GLuint g_alpha = ALPHA_SIZE; -GLuint g_depth = DEPTH_SIZE; -GLuint g_stencil = STENCIL_SIZE; -GLuint g_accum = ACCUM_SIZE; -GLuint g_refresh = 0; -GLuint g_screen_w, g_screen_h; -GLint g_driver_caps; + 0 /* flags */ +}; -GLuint g_fps = 0; +GLUTdefault _glut_default = { + 0, 0, /* glutInitWindowPosition */ + 300, 300, /* glutInitWindowSize */ + 0 /* glutInitDisplayMode */ +}; -GLuint g_display_mode = 0; -int g_init_x = 0, g_init_y = 0; -GLuint g_init_w = DEFAULT_WIDTH, g_init_h = DEFAULT_HEIGHT; +GLuint _glut_fps = 0; -char *__glutProgramName = NULL; +static char *init_string; + + +void +_glut_fatal (char *format,...) +{ + va_list args; + + va_start(args, format); + fprintf(stderr, "GLUT: Fatal Error in %s: ", + __glutProgramName ? __glutProgramName : "(unamed)"); + vfprintf(stderr, format, args); + va_end(args); + putc('\n', stderr); + exit(1); +} + + +/* strdup is actually not a standard ANSI C or POSIX routine + * so implement a private one for GLUT. + */ +static char * +_glut_strdup (const char *string) +{ + if (string != NULL) { + int len = strlen(string) + 1; + char *p = malloc(len); + if (p != NULL) { + return strcpy(p, string); + } + } + return NULL; +} void APIENTRY @@ -66,22 +91,22 @@ glutInit (int *argc, char **argv) const char *env; if ((env = getenv("DMESA_GLUT_BPP")) != NULL) { - g_bpp = atoi(env); + _glut_visual.bpp = atoi(env); } if ((env = getenv("DMESA_GLUT_ALPHA")) != NULL) { - g_alpha = atoi(env); + _glut_visual.alpha = atoi(env); } if ((env = getenv("DMESA_GLUT_DEPTH")) != NULL) { - g_depth = atoi(env); + _glut_visual.depth = atoi(env); } if ((env = getenv("DMESA_GLUT_STENCIL")) != NULL) { - g_stencil = atoi(env); + _glut_visual.stencil = atoi(env); } if ((env = getenv("DMESA_GLUT_ACCUM")) != NULL) { - g_accum = atoi(env); + _glut_visual.accum = atoi(env); } if ((env = getenv("DMESA_GLUT_REFRESH")) != NULL) { - g_refresh = atoi(env); + _glut_visual.refresh = atoi(env); } /* Determine program name. */ @@ -91,12 +116,12 @@ glutInit (int *argc, char **argv) } else { str++; } - __glutProgramName = __glutStrdup(str); + __glutProgramName = _glut_strdup(str); /* check if GLUT_FPS env var is set */ if ((env = getenv("GLUT_FPS")) != NULL) { - if ((g_fps = atoi(env)) <= 0) { - g_fps = 5000; /* 5000 milliseconds */ + if ((_glut_fps = atoi(env)) <= 0) { + _glut_fps = 5000; /* 5000 milliseconds */ } } @@ -108,220 +133,91 @@ glutInit (int *argc, char **argv) void APIENTRY glutInitDisplayMode (unsigned int mode) { - g_display_mode = mode; + _glut_default.mode = mode; } void APIENTRY glutInitWindowPosition (int x, int y) { - g_init_x = x; - g_init_y = y; + _glut_default.x = x; + _glut_default.y = y; } void APIENTRY glutInitWindowSize (int width, int height) { - g_init_w = width; - g_init_h = height; + _glut_default.width = width; + _glut_default.height = height; } -#define DO_REDISPLAY(w, ccin, ccout) \ - do { \ - if (w->redisplay && w->display) { \ - int rv = GL_TRUE; \ - \ - idle = GL_FALSE; \ - w->redisplay = GL_FALSE; \ - \ - /* test IN condition (whether we need to `MakeCurrent') */\ - if (ccin) { \ - rv = DMesaMakeCurrent(w->context, w->buffer); \ - } \ - \ - /* do the display only if `MakeCurrent' didn't failed */ \ - if (rv) { \ - if (w->show_mouse && !(g_display_mode & GLUT_DOUBLE)) {\ - /* XXX scare mouse */ \ - w->display(); \ - /* XXX unscare mouse */ \ - } else { \ - w->display(); \ - } \ - \ - /* update OUT condition */ \ - ccout; \ - } \ - } \ - } while (0) +void APIENTRY +glutInitDisplayString (const char *string) +{ + init_string = _glut_strdup(string); +} void APIENTRY -glutMainLoop (void) +glutSetOption (GLenum pname, int value) { - int i, n; - GLUTwindow *w; - GLboolean idle; - static int old_mouse_x = 0; - static int old_mouse_y = 0; - static int old_mouse_b = 0; - - { - GLint screen_size[2]; - DMesaGetIntegerv(DMESA_GET_SCREEN_SIZE, screen_size); - g_screen_w = screen_size[0]; - g_screen_h = screen_size[1]; - DMesaGetIntegerv(DMESA_GET_DRIVER_CAPS, &g_driver_caps); + switch (pname) { + case GLUT_INIT_WINDOW_X: + _glut_default.x = value; + break; + case GLUT_INIT_WINDOW_Y: + _glut_default.y = value; + break; } +} - pc_install_keyb(); - __glutInitMouse(); - - for (i = 0; i < MAX_WINDOWS; i++) { - w = g_windows[i]; - if (w != NULL) { - glutSetWindow(w->num); - glutPostRedisplay(); - if (w->reshape) { - w->reshape(w->width, w->height); - } - if (w->visibility) { - w->visibility(GLUT_VISIBLE); - } - } - } - while (GL_TRUE) { - idle = GL_TRUE; - - n = 0; - for (i = 0; i < MAX_WINDOWS; i++) { - w = g_windows[i]; - if ((w != NULL) && (w != g_curwin)) { - /* 1) redisplay `w' - * 2) `MakeCurrent' always - * 3) update number of non-default windows - */ - DO_REDISPLAY(w, GL_TRUE, n++); - } - } - /* 1) redisplay `g_curwin' - * 2) `MakeCurrent' only if we previously did non-default windows - * 3) don't update anything - */ - DO_REDISPLAY(g_curwin, n, n); - - if (g_mouse) { - int mouse_x; - int mouse_y; - int mouse_z; - int mouse_b; - - /* query mouse */ - mouse_b = pc_query_mouse(&mouse_x, &mouse_y, &mouse_z); - - /* relative to window coordinates */ - g_mouse_x = mouse_x - g_curwin->xpos; - g_mouse_y = mouse_y - g_curwin->ypos; - - /* mouse was moved? */ - if ((mouse_x != old_mouse_x) || (mouse_y != old_mouse_y)) { - idle = GL_FALSE; - old_mouse_x = mouse_x; - old_mouse_y = mouse_y; - - if (mouse_b) { - /* any button pressed */ - if (g_curwin->motion) { - g_curwin->motion(g_mouse_x, g_mouse_y); - } - } else { - /* no button pressed */ - if (g_curwin->passive) { - g_curwin->passive(g_mouse_x, g_mouse_y); - } - } - } - - /* button state changed? */ - if (mouse_b != old_mouse_b) { - GLUTmouseCB mouse_func; - - if ((mouse_func = g_curwin->mouse)) { - if ((old_mouse_b & 1) && !(mouse_b & 1)) - mouse_func(GLUT_LEFT_BUTTON, GLUT_UP, g_mouse_x, g_mouse_y); - else if (!(old_mouse_b & 1) && (mouse_b & 1)) - mouse_func(GLUT_LEFT_BUTTON, GLUT_DOWN, g_mouse_x, g_mouse_y); - - if ((old_mouse_b & 2) && !(mouse_b & 2)) - mouse_func(GLUT_RIGHT_BUTTON, GLUT_UP, g_mouse_x, g_mouse_y); - else if (!(old_mouse_b & 2) && (mouse_b & 2)) - mouse_func(GLUT_RIGHT_BUTTON, GLUT_DOWN, g_mouse_x, g_mouse_y); - - if ((old_mouse_b & 4) && !(mouse_b & 4)) - mouse_func(GLUT_MIDDLE_BUTTON, GLUT_UP, g_mouse_x, g_mouse_y); - else if (!(old_mouse_b & 3) && (mouse_b & 4)) - mouse_func(GLUT_MIDDLE_BUTTON, GLUT_DOWN, g_mouse_x, g_mouse_y); - } - - idle = GL_FALSE; - old_mouse_b = mouse_b; - } - } +void APIENTRY +glutForceJoystickFunc (void) +{ +} - if (pc_keypressed()) { - int key; - int glut_key; - - idle = GL_FALSE; - key = pc_readkey(); - - switch (key>>16) { - case KEY_F1: glut_key = GLUT_KEY_F1; goto special; - case KEY_F2: glut_key = GLUT_KEY_F2; goto special; - case KEY_F3: glut_key = GLUT_KEY_F3; goto special; - case KEY_F4: glut_key = GLUT_KEY_F4; goto special; - case KEY_F5: glut_key = GLUT_KEY_F5; goto special; - case KEY_F6: glut_key = GLUT_KEY_F6; goto special; - case KEY_F7: glut_key = GLUT_KEY_F7; goto special; - case KEY_F8: glut_key = GLUT_KEY_F8; goto special; - case KEY_F9: glut_key = GLUT_KEY_F9; goto special; - case KEY_F10: glut_key = GLUT_KEY_F10; goto special; - case KEY_F11: glut_key = GLUT_KEY_F11; goto special; - case KEY_F12: glut_key = GLUT_KEY_F12; goto special; - case KEY_LEFT: glut_key = GLUT_KEY_LEFT; goto special; - case KEY_UP: glut_key = GLUT_KEY_UP; goto special; - case KEY_RIGHT: glut_key = GLUT_KEY_RIGHT; goto special; - case KEY_DOWN: glut_key = GLUT_KEY_DOWN; goto special; - case KEY_PGUP: glut_key = GLUT_KEY_PAGE_UP; goto special; - case KEY_PGDN: glut_key = GLUT_KEY_PAGE_DOWN; goto special; - case KEY_HOME: glut_key = GLUT_KEY_HOME; goto special; - case KEY_END: glut_key = GLUT_KEY_END; goto special; - case KEY_INSERT: glut_key = GLUT_KEY_INSERT; goto special; - special: - if (g_curwin->special) { - g_curwin->special(glut_key, g_mouse_x, g_mouse_y); - } - break; - default: - if (g_curwin->keyboard) { - g_curwin->keyboard(key & 0xFF, g_mouse_x, g_mouse_y); - } - } - } - if (idle && g_idle_func) - g_idle_func(); +void APIENTRY +glutIgnoreKeyRepeat (int ignore) +{ +} - for (i = 0; i < MAX_SSHOT_CB; i++) { - int time = glutGet(GLUT_ELAPSED_TIME); - GLUTSShotCB *cb = &g_sscb[i]; - if (cb->func && (time >= cb->time)) { - cb->func(cb->value); - cb->func = NULL; - } - } - } + +void APIENTRY +glutSetKeyRepeat (int repeatMode) +{ +} + + +void APIENTRY +glutVideoPan (int x, int y, int w, int h) +{ +} + + +int APIENTRY +glutVideoResizeGet( GLenum eWhat ) +{ + return 0; +} + + +void APIENTRY +glutSetupVideoResizing (void) +{ +} + + +void APIENTRY +glutStopVideoResizing (void) +{ +} + + +void APIENTRY +glutVideoResize (int x, int y, int w, int h) +{ } diff --git a/src/glut/dos/internal.h b/src/glut/dos/internal.h new file mode 100644 index 0000000000..063c2d00d9 --- /dev/null +++ b/src/glut/dos/internal.h @@ -0,0 +1,197 @@ +/* + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 + * + * Copyright (C) 2005 Daniel Borca All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef INTERNAL_H_included +#define INTERNAL_H_included + +#include <GL/glut.h> + +#include "GL/dmesa.h" + + +#define MAX_WINDOWS 2 +#define MAX_TIMER_CB 8 +#define RESERVED_COLORS 0 + + +/* GLUT function types */ +typedef void (GLUTCALLBACK *GLUTdisplayCB) (void); +typedef void (GLUTCALLBACK *GLUTreshapeCB) (int, int); +typedef void (GLUTCALLBACK *GLUTkeyboardCB) (unsigned char, int, int); +typedef void (GLUTCALLBACK *GLUTmouseCB) (int, int, int, int); +typedef void (GLUTCALLBACK *GLUTmotionCB) (int, int); +typedef void (GLUTCALLBACK *GLUTpassiveCB) (int, int); +typedef void (GLUTCALLBACK *GLUTentryCB) (int); +typedef void (GLUTCALLBACK *GLUTvisibilityCB) (int); +typedef void (GLUTCALLBACK *GLUTwindowStatusCB) (int); +typedef void (GLUTCALLBACK *GLUTidleCB) (void); +typedef void (GLUTCALLBACK *GLUTtimerCB) (int); +typedef void (GLUTCALLBACK *GLUTmenuStateCB) (int); /* DEPRECATED. */ +typedef void (GLUTCALLBACK *GLUTmenuStatusCB) (int, int, int); +typedef void (GLUTCALLBACK *GLUTselectCB) (int); +typedef void (GLUTCALLBACK *GLUTspecialCB) (int, int, int); +typedef void (GLUTCALLBACK *GLUTspaceMotionCB) (int, int, int); +typedef void (GLUTCALLBACK *GLUTspaceRotateCB) (int, int, int); +typedef void (GLUTCALLBACK *GLUTspaceButtonCB) (int, int); +typedef void (GLUTCALLBACK *GLUTdialsCB) (int, int); +typedef void (GLUTCALLBACK *GLUTbuttonBoxCB) (int, int); +typedef void (GLUTCALLBACK *GLUTtabletMotionCB) (int, int); +typedef void (GLUTCALLBACK *GLUTtabletButtonCB) (int, int, int, int); +typedef void (GLUTCALLBACK *GLUTjoystickCB) (unsigned int, int, int, int); + +typedef void (GLUTCALLBACK *GLUTdestroyCB) (void); +typedef void (GLUTCALLBACK *GLUTmouseWheelCB) (int, int, int, int); +typedef void (GLUTCALLBACK *GLUTmenuDestroyCB) (void); + + +typedef struct { + GLuint bpp, alpha; + GLuint depth, stencil; + GLuint accum; + + GLint geometry[2]; + GLuint refresh; + + GLint flags; +} GLUTvisual; + +typedef struct { + GLint x, y; + GLint width, height; + GLuint mode; +} GLUTdefault; + +typedef struct { + void (*func) (int); + int value; + int time; +} GLUTSShotCB; + +typedef struct GLUTwindow { + int num; /* window id */ + + DMesaContext context; + DMesaBuffer buffer; + + int show_mouse; + GLboolean redisplay; + + /* GLUT settable or visible window state. */ + int xpos; + int ypos; + int width; /* window width in pixels */ + int height; /* window height in pixels */ + + /* Per-window callbacks. */ + GLUTdisplayCB display; /* redraw */ + GLUTreshapeCB reshape; /* resize (width,height) */ + GLUTmouseCB mouse; /* mouse (button,state,x,y) */ + GLUTmotionCB motion; /* motion (x,y) */ + GLUTpassiveCB passive; /* passive motion (x,y) */ + GLUTentryCB entry; /* window entry/exit (state) */ + GLUTkeyboardCB keyboard; /* keyboard (ASCII,x,y) */ + GLUTkeyboardCB keyboardUp; /* keyboard up (ASCII,x,y) */ + GLUTwindowStatusCB windowStatus; /* window status */ + GLUTvisibilityCB visibility; /* visibility */ + GLUTspecialCB special; /* special key */ + GLUTspecialCB specialUp; /* special up key */ + GLUTbuttonBoxCB buttonBox; /* button box */ + GLUTdialsCB dials; /* dials */ + GLUTspaceMotionCB spaceMotion; /* Spaceball motion */ + GLUTspaceRotateCB spaceRotate; /* Spaceball rotate */ + GLUTspaceButtonCB spaceButton; /* Spaceball button */ + GLUTtabletMotionCB tabletMotion; /* tablet motion */ + GLUTtabletButtonCB tabletButton; /* tablet button */ + GLUTjoystickCB joystick; /* joystick */ + + GLUTdestroyCB destroy; /* destroy */ + GLUTmouseWheelCB mouseWheel; /* mouse wheel */ + + /* specific data */ + void *data; +} GLUTwindow; + +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; + +typedef struct { + const GLfloat x, y; +} GLUTStrokeVertex; + +typedef struct { + const unsigned num; + const GLUTStrokeVertex *vertex; +} GLUTStrokeStrip; + +typedef struct { + const GLfloat right; + const unsigned num; + const GLUTStrokeStrip *strip; +} GLUTStrokeChar; + +typedef struct { + const char *name; + const unsigned num; + const GLUTStrokeChar *const *table; + const GLfloat height; + const GLfloat descent; +} GLUTStrokeFont; + + +extern char *__glutProgramName; + +extern GLUTvisual _glut_visual; +extern GLUTdefault _glut_default; + +extern GLuint _glut_fps; +extern GLUTidleCB _glut_idle_func; +extern GLUTmenuStatusCB _glut_menu_status_func; +extern GLUTSShotCB _glut_timer_cb[]; + +extern GLUTwindow *_glut_current, *_glut_windows[]; + +extern int _glut_mouse; /* number of buttons, if mouse installed */ +extern int _glut_mouse_x, _glut_mouse_y; /* mouse coords, relative to current win */ + + +extern void _glut_mouse_init (void); +extern void _glut_fatal(char *format,...); +extern void *_glut_font (void *font); + + +#include "pc_hw/pc_hw.h" + +#endif diff --git a/src/glut/dos/loop.c b/src/glut/dos/loop.c new file mode 100644 index 0000000000..36c3adc3ff --- /dev/null +++ b/src/glut/dos/loop.c @@ -0,0 +1,245 @@ +/* + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 + * + * Copyright (C) 2005 Daniel Borca All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#include <string.h> + +#include <GL/glut.h> +#include "GL/dmesa.h" + +#include "PC_HW/pc_hw.h" +#include "internal.h" + + +static int looping = 0; + + +#define DO_REDISPLAY(w, ccin, ccout) \ + do { \ + if (w->redisplay && w->display) { \ + int rv = GL_TRUE; \ + \ + idle = GL_FALSE; \ + w->redisplay = GL_FALSE; \ + \ + /* test IN condition (whether we need to `MakeCurrent') */\ + if (ccin) { \ + rv = DMesaMakeCurrent(w->context, w->buffer); \ + } \ + \ + /* do the display only if `MakeCurrent' didn't failed */ \ + if (rv) { \ + if (w->show_mouse && !(_glut_default.mode & GLUT_DOUBLE)) {\ + /* XXX scare mouse */ \ + w->display(); \ + /* XXX unscare mouse */ \ + } else { \ + w->display(); \ + } \ + \ + /* update OUT condition */ \ + ccout; \ + } \ + } \ + } while (0) + + +void APIENTRY +glutMainLoopEvent (void) +{ + int i, n; + GLUTwindow *w; + GLboolean idle; + static int old_mouse_x = 0; + static int old_mouse_y = 0; + static int old_mouse_b = 0; + + static GLboolean virgin = GL_TRUE; + if (virgin) { + pc_install_keyb(); + _glut_mouse_init(); + + for (i = 0; i < MAX_WINDOWS; i++) { + w = _glut_windows[i]; + if (w != NULL) { + glutSetWindow(w->num); + glutPostRedisplay(); + if (w->reshape) { + w->reshape(w->width, w->height); + } + if (w->visibility) { + w->visibility(GLUT_VISIBLE); + } + } + } + virgin = GL_FALSE; + } + + idle = GL_TRUE; + + n = 0; + for (i = 0; i < MAX_WINDOWS; i++) { + w = _glut_windows[i]; + if ((w != NULL) && (w != _glut_current)) { + /* 1) redisplay `w' + * 2) `MakeCurrent' always + * 3) update number of non-default windows + */ + DO_REDISPLAY(w, GL_TRUE, n++); + } + } + /* 1) redisplay `_glut_current' + * 2) `MakeCurrent' only if we previously did non-default windows + * 3) don't update anything + */ + DO_REDISPLAY(_glut_current, n, n); + + if (_glut_mouse) { + int mouse_x; + int mouse_y; + int mouse_z; + int mouse_b; + + /* query mouse */ + mouse_b = pc_query_mouse(&mouse_x, &mouse_y, &mouse_z); + + /* relative to window coordinates */ + _glut_mouse_x = mouse_x - _glut_current->xpos; + _glut_mouse_y = mouse_y - _glut_current->ypos; + + /* mouse was moved? */ + if ((mouse_x != old_mouse_x) || (mouse_y != old_mouse_y)) { + idle = GL_FALSE; + old_mouse_x = mouse_x; + old_mouse_y = mouse_y; + + if (mouse_b) { + /* any button pressed */ + if (_glut_current->motion) { + _glut_current->motion(_glut_mouse_x, _glut_mouse_y); + } + } else { + /* no button pressed */ + if (_glut_current->passive) { + _glut_current->passive(_glut_mouse_x, _glut_mouse_y); + } + } + } + + /* button state changed? */ + if (mouse_b != old_mouse_b) { + GLUTmouseCB mouse_func; + + if ((mouse_func = _glut_current->mouse)) { + if ((old_mouse_b & 1) && !(mouse_b & 1)) + mouse_func(GLUT_LEFT_BUTTON, GLUT_UP, _glut_mouse_x, _glut_mouse_y); + else if (!(old_mouse_b & 1) && (mouse_b & 1)) + mouse_func(GLUT_LEFT_BUTTON, GLUT_DOWN, _glut_mouse_x, _glut_mouse_y); + + if ((old_mouse_b & 2) && !(mouse_b & 2)) + mouse_func(GLUT_RIGHT_BUTTON, GLUT_UP, _glut_mouse_x, _glut_mouse_y); + else if (!(old_mouse_b & 2) && (mouse_b & 2)) + mouse_func(GLUT_RIGHT_BUTTON, GLUT_DOWN, _glut_mouse_x, _glut_mouse_y); + + if ((old_mouse_b & 4) && !(mouse_b & 4)) + mouse_func(GLUT_MIDDLE_BUTTON, GLUT_UP, _glut_mouse_x, _glut_mouse_y); + else if (!(old_mouse_b & 3) && (mouse_b & 4)) + mouse_func(GLUT_MIDDLE_BUTTON, GLUT_DOWN, _glut_mouse_x, _glut_mouse_y); + } + + idle = GL_FALSE; + old_mouse_b = mouse_b; + } + } + + if (pc_keypressed()) { + int key; + int glut_key; + + idle = GL_FALSE; + key = pc_readkey(); + + switch (key>>16) { + case KEY_F1: glut_key = GLUT_KEY_F1; goto special; + case KEY_F2: glut_key = GLUT_KEY_F2; goto special; + case KEY_F3: glut_key = GLUT_KEY_F3; goto special; + case KEY_F4: glut_key = GLUT_KEY_F4; goto special; + case KEY_F5: glut_key = GLUT_KEY_F5; goto special; + case KEY_F6: glut_key = GLUT_KEY_F6; goto special; + case KEY_F7: glut_key = GLUT_KEY_F7; goto special; + case KEY_F8: glut_key = GLUT_KEY_F8; goto special; + case KEY_F9: glut_key = GLUT_KEY_F9; goto special; + case KEY_F10: glut_key = GLUT_KEY_F10; goto special; + case KEY_F11: glut_key = GLUT_KEY_F11; goto special; + case KEY_F12: glut_key = GLUT_KEY_F12; goto special; + case KEY_LEFT: glut_key = GLUT_KEY_LEFT; goto special; + case KEY_UP: glut_key = GLUT_KEY_UP; goto special; + case KEY_RIGHT: glut_key = GLUT_KEY_RIGHT; goto special; + case KEY_DOWN: glut_key = GLUT_KEY_DOWN; goto special; + case KEY_PGUP: glut_key = GLUT_KEY_PAGE_UP; goto special; + case KEY_PGDN: glut_key = GLUT_KEY_PAGE_DOWN; goto special; + case KEY_HOME: glut_key = GLUT_KEY_HOME; goto special; + case KEY_END: glut_key = GLUT_KEY_END; goto special; + case KEY_INSERT: glut_key = GLUT_KEY_INSERT; goto special; + special: + if (_glut_current->special) { + _glut_current->special(glut_key, _glut_mouse_x, _glut_mouse_y); + } + break; + default: + if (_glut_current->keyboard) { + _glut_current->keyboard(key & 0xFF, _glut_mouse_x, _glut_mouse_y); + } + } + } + + if (idle && _glut_idle_func) + _glut_idle_func(); + + for (i = 0; i < MAX_TIMER_CB; i++) { + int time = glutGet(GLUT_ELAPSED_TIME); + GLUTSShotCB *cb = &_glut_timer_cb[i]; + if (cb->func && (time >= cb->time)) { + cb->func(cb->value); + cb->func = NULL; + } + } +} + + +void APIENTRY +glutMainLoop (void) +{ + looping++; + while (looping) { + glutMainLoopEvent(); + } +} + + +void APIENTRY +glutLeaveMainLoop (void) +{ + looping--; +} diff --git a/src/glut/dos/menu.c b/src/glut/dos/menu.c index 5ca35dcfa4..857d2b4a46 100644 --- a/src/glut/dos/menu.c +++ b/src/glut/dos/menu.c @@ -1,49 +1,45 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.3 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -#include "glutint.h" +#include "internal.h" -GLUTmenuStatusCB g_menu_status_func = NULL; +GLUTmenuStatusCB _glut_menu_status_func = NULL; void APIENTRY glutMenuStateFunc (GLUTmenuStateCB func) { - g_menu_status_func = (GLUTmenuStatusCB)func; + _glut_menu_status_func = (GLUTmenuStatusCB)func; } void APIENTRY glutMenuStatusFunc (GLUTmenuStatusCB func) { - g_menu_status_func = func; + _glut_menu_status_func = func; } @@ -113,3 +109,22 @@ void APIENTRY glutDetachMenu (int button) { } + + +void APIENTRY +glutMenuDestroyFunc ( void (* callback)( void ) ) +{ +} + + +void * APIENTRY +glutGetMenuData (void) +{ + return NULL; +} + + +void APIENTRY +glutSetMenuData (void *data) +{ +} diff --git a/src/glut/dos/mouse.c b/src/glut/dos/mouse.c index 2d8a8ed53d..945e2a5c14 100644 --- a/src/glut/dos/mouse.c +++ b/src/glut/dos/mouse.c @@ -1,46 +1,42 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.3 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -#include "glutint.h" +#include "internal.h" -int g_mouse; -int g_mouse_x = 0, g_mouse_y = 0; +int _glut_mouse; +int _glut_mouse_x = 0, _glut_mouse_y = 0; void -__glutInitMouse (void) +_glut_mouse_init (void) { - if ((g_mouse = pc_install_mouse())) { - pc_mouse_area(g_curwin->xpos, g_curwin->ypos, g_curwin->xpos + g_curwin->width - 1, g_curwin->ypos + g_curwin->height - 1); + if ((_glut_mouse = pc_install_mouse())) { + pc_mouse_area(_glut_current->xpos, _glut_current->ypos, _glut_current->xpos + _glut_current->width - 1, _glut_current->ypos + _glut_current->height - 1); - g_curwin->show_mouse = (g_curwin->mouse || g_curwin->motion || g_curwin->passive); + _glut_current->show_mouse = (_glut_current->mouse || _glut_current->motion || _glut_current->passive); } } diff --git a/src/glut/dos/mroman.c b/src/glut/dos/mroman.c new file mode 100644 index 0000000000..5bf76dbf73 --- /dev/null +++ b/src/glut/dos/mroman.c @@ -0,0 +1,2783 @@ + +/* GENERATED FILE -- DO NOT MODIFY */ + +#include "internal.h" + +/* char: 0x20 */ + +static const GLUTStrokeStrip ch32st[] = +{ +}; + +static const GLUTStrokeChar ch32 = {104.7619f,0,ch32st}; + +/* char: 0x21 */ + +static const GLUTStrokeVertex ch33st0[] = +{ + {52.3810f,100.0000f}, + {52.3810f,33.3333f} +}; + +static const GLUTStrokeVertex ch33st1[] = +{ + {52.3810f,9.5238f}, + {47.6191f,4.7619f}, + {52.3810f,0.0000f}, + {57.1429f,4.7619f}, + {52.3810f,9.5238f} +}; + +static const GLUTStrokeStrip ch33st[] = +{ + {2,ch33st0}, + {5,ch33st1} +}; + +static const GLUTStrokeChar ch33 = {104.7619f,2,ch33st}; + +/* char: 0x22 */ + +static const GLUTStrokeVertex ch34st0[] = +{ + {33.3334f,100.0000f}, + {33.3334f,66.6667f} +}; + +static const GLUTStrokeVertex ch34st1[] = +{ + {71.4286f,100.0000f}, + {71.4286f,66.6667f} +}; + +static const GLUTStrokeStrip ch34st[] = +{ + {2,ch34st0}, + {2,ch34st1} +}; + +static const GLUTStrokeChar ch34 = {104.7619f,2,ch34st}; + +/* char: 0x23 */ + +static const GLUTStrokeVertex ch35st0[] = +{ + {54.7619f,119.0476f}, + {21.4286f,-33.3333f} +}; + +static const GLUTStrokeVertex ch35st1[] = +{ + {83.3334f,119.0476f}, + {50.0000f,-33.3333f} +}; + +static const GLUTStrokeVertex ch35st2[] = +{ + {21.4286f,57.1429f}, + {88.0952f,57.1429f} +}; + +static const GLUTStrokeVertex ch35st3[] = +{ + {16.6667f,28.5714f}, + {83.3334f,28.5714f} +}; + +static const GLUTStrokeStrip ch35st[] = +{ + {2,ch35st0}, + {2,ch35st1}, + {2,ch35st2}, + {2,ch35st3} +}; + +static const GLUTStrokeChar ch35 = {104.7619f,4,ch35st}; + +/* char: 0x24 */ + +static const GLUTStrokeVertex ch36st0[] = +{ + {42.8571f,119.0476f}, + {42.8571f,-19.0476f} +}; + +static const GLUTStrokeVertex ch36st1[] = +{ + {61.9047f,119.0476f}, + {61.9047f,-19.0476f} +}; + +static const GLUTStrokeVertex ch36st2[] = +{ + {85.7143f,85.7143f}, + {76.1905f,95.2381f}, + {61.9047f,100.0000f}, + {42.8571f,100.0000f}, + {28.5714f,95.2381f}, + {19.0476f,85.7143f}, + {19.0476f,76.1905f}, + {23.8095f,66.6667f}, + {28.5714f,61.9048f}, + {38.0952f,57.1429f}, + {66.6666f,47.6190f}, + {76.1905f,42.8571f}, + {80.9524f,38.0952f}, + {85.7143f,28.5714f}, + {85.7143f,14.2857f}, + {76.1905f,4.7619f}, + {61.9047f,0.0000f}, + {42.8571f,0.0000f}, + {28.5714f,4.7619f}, + {19.0476f,14.2857f} +}; + +static const GLUTStrokeStrip ch36st[] = +{ + {2,ch36st0}, + {2,ch36st1}, + {20,ch36st2} +}; + +static const GLUTStrokeChar ch36 = {104.7619f,3,ch36st}; + +/* char: 0x25 */ + +static const GLUTStrokeVertex ch37st0[] = +{ + {95.2381f,100.0000f}, + {9.5238f,0.0000f} +}; + +static const GLUTStrokeVertex ch37st1[] = +{ + {33.3333f,100.0000f}, + {42.8571f,90.4762f}, + {42.8571f,80.9524f}, + {38.0952f,71.4286f}, + {28.5714f,66.6667f}, + {19.0476f,66.6667f}, + {9.5238f,76.1905f}, + {9.5238f,85.7143f}, + {14.2857f,95.2381f}, + {23.8095f,100.0000f}, + {33.3333f,100.0000f}, + {42.8571f,95.2381f}, + {57.1428f,90.4762f}, + {71.4286f,90.4762f}, + {85.7143f,95.2381f}, + {95.2381f,100.0000f} +}; + +static const GLUTStrokeVertex ch37st2[] = +{ + {76.1905f,33.3333f}, + {66.6667f,28.5714f}, + {61.9048f,19.0476f}, + {61.9048f,9.5238f}, + {71.4286f,0.0000f}, + {80.9524f,0.0000f}, + {90.4762f,4.7619f}, + {95.2381f,14.2857f}, + {95.2381f,23.8095f}, + {85.7143f,33.3333f}, + {76.1905f,33.3333f} +}; + +static const GLUTStrokeStrip ch37st[] = +{ + {2,ch37st0}, + {16,ch37st1}, + {11,ch37st2} +}; + +static const GLUTStrokeChar ch37 = {104.7619f,3,ch37st}; + +/* char: 0x26 */ + +static const GLUTStrokeVertex ch38st0[] = +{ + {100.0000f,57.1429f}, + {100.0000f,61.9048f}, + {95.2381f,66.6667f}, + {90.4762f,66.6667f}, + {85.7143f,61.9048f}, + {80.9524f,52.3810f}, + {71.4286f,28.5714f}, + {61.9048f,14.2857f}, + {52.3809f,4.7619f}, + {42.8571f,0.0000f}, + {23.8095f,0.0000f}, + {14.2857f,4.7619f}, + {9.5238f,9.5238f}, + {4.7619f,19.0476f}, + {4.7619f,28.5714f}, + {9.5238f,38.0952f}, + {14.2857f,42.8571f}, + {47.6190f,61.9048f}, + {52.3809f,66.6667f}, + {57.1429f,76.1905f}, + {57.1429f,85.7143f}, + {52.3809f,95.2381f}, + {42.8571f,100.0000f}, + {33.3333f,95.2381f}, + {28.5714f,85.7143f}, + {28.5714f,76.1905f}, + {33.3333f,61.9048f}, + {42.8571f,47.6190f}, + {66.6667f,14.2857f}, + {76.1905f,4.7619f}, + {85.7143f,0.0000f}, + {95.2381f,0.0000f}, + {100.0000f,4.7619f}, + {100.0000f,9.5238f} +}; + +static const GLUTStrokeStrip ch38st[] = +{ + {34,ch38st0} +}; + +static const GLUTStrokeChar ch38 = {104.7619f,1,ch38st}; + +/* char: 0x27 */ + +static const GLUTStrokeVertex ch39st0[] = +{ + {52.3810f,100.0000f}, + {52.3810f,66.6667f} +}; + +static const GLUTStrokeStrip ch39st[] = +{ + {2,ch39st0} +}; + +static const GLUTStrokeChar ch39 = {104.7619f,1,ch39st}; + +/* char: 0x28 */ + +static const GLUTStrokeVertex ch40st0[] = +{ + {69.0476f,119.0476f}, + {59.5238f,109.5238f}, + {50.0000f,95.2381f}, + {40.4762f,76.1905f}, + {35.7143f,52.3810f}, + {35.7143f,33.3333f}, + {40.4762f,9.5238f}, + {50.0000f,-9.5238f}, + {59.5238f,-23.8095f}, + {69.0476f,-33.3333f} +}; + +static const GLUTStrokeStrip ch40st[] = +{ + {10,ch40st0} +}; + +static const GLUTStrokeChar ch40 = {104.7619f,1,ch40st}; + +/* char: 0x29 */ + +static const GLUTStrokeVertex ch41st0[] = +{ + {35.7143f,119.0476f}, + {45.2381f,109.5238f}, + {54.7619f,95.2381f}, + {64.2857f,76.1905f}, + {69.0476f,52.3810f}, + {69.0476f,33.3333f}, + {64.2857f,9.5238f}, + {54.7619f,-9.5238f}, + {45.2381f,-23.8095f}, + {35.7143f,-33.3333f} +}; + +static const GLUTStrokeStrip ch41st[] = +{ + {10,ch41st0} +}; + +static const GLUTStrokeChar ch41 = {104.7619f,1,ch41st}; + +/* char: 0x2a */ + +static const GLUTStrokeVertex ch42st0[] = +{ + {52.3810f,71.4286f}, + {52.3810f,14.2857f} +}; + +static const GLUTStrokeVertex ch42st1[] = +{ + {28.5715f,57.1429f}, + {76.1905f,28.5714f} +}; + +static const GLUTStrokeVertex ch42st2[] = +{ + {76.1905f,57.1429f}, + {28.5715f,28.5714f} +}; + +static const GLUTStrokeStrip ch42st[] = +{ + {2,ch42st0}, + {2,ch42st1}, + {2,ch42st2} +}; + +static const GLUTStrokeChar ch42 = {104.7619f,3,ch42st}; + +/* char: 0x2b */ + +static const GLUTStrokeVertex ch43st0[] = +{ + {52.3809f,85.7143f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch43st1[] = +{ + {9.5238f,42.8571f}, + {95.2381f,42.8571f} +}; + +static const GLUTStrokeStrip ch43st[] = +{ + {2,ch43st0}, + {2,ch43st1} +}; + +static const GLUTStrokeChar ch43 = {104.7619f,2,ch43st}; + +/* char: 0x2c */ + +static const GLUTStrokeVertex ch44st0[] = +{ + {57.1429f,4.7619f}, + {52.3810f,0.0000f}, + {47.6191f,4.7619f}, + {52.3810f,9.5238f}, + {57.1429f,4.7619f}, + {57.1429f,-4.7619f}, + {52.3810f,-14.2857f}, + {47.6191f,-19.0476f} +}; + +static const GLUTStrokeStrip ch44st[] = +{ + {8,ch44st0} +}; + +static const GLUTStrokeChar ch44 = {104.7619f,1,ch44st}; + +/* char: 0x2d */ + +static const GLUTStrokeVertex ch45st0[] = +{ + {9.5238f,42.8571f}, + {95.2381f,42.8571f} +}; + +static const GLUTStrokeStrip ch45st[] = +{ + {2,ch45st0} +}; + +static const GLUTStrokeChar ch45 = {104.7619f,1,ch45st}; + +/* char: 0x2e */ + +static const GLUTStrokeVertex ch46st0[] = +{ + {52.3810f,9.5238f}, + {47.6191f,4.7619f}, + {52.3810f,0.0000f}, + {57.1429f,4.7619f}, + {52.3810f,9.5238f} +}; + +static const GLUTStrokeStrip ch46st[] = +{ + {5,ch46st0} +}; + +static const GLUTStrokeChar ch46 = {104.7619f,1,ch46st}; + +/* char: 0x2f */ + +static const GLUTStrokeVertex ch47st0[] = +{ + {19.0476f,-14.2857f}, + {85.7143f,100.0000f} +}; + +static const GLUTStrokeStrip ch47st[] = +{ + {2,ch47st0} +}; + +static const GLUTStrokeChar ch47 = {104.7619f,1,ch47st}; + +/* char: 0x30 */ + +static const GLUTStrokeVertex ch48st0[] = +{ + {47.6190f,100.0000f}, + {33.3333f,95.2381f}, + {23.8095f,80.9524f}, + {19.0476f,57.1429f}, + {19.0476f,42.8571f}, + {23.8095f,19.0476f}, + {33.3333f,4.7619f}, + {47.6190f,0.0000f}, + {57.1428f,0.0000f}, + {71.4286f,4.7619f}, + {80.9524f,19.0476f}, + {85.7143f,42.8571f}, + {85.7143f,57.1429f}, + {80.9524f,80.9524f}, + {71.4286f,95.2381f}, + {57.1428f,100.0000f}, + {47.6190f,100.0000f} +}; + +static const GLUTStrokeStrip ch48st[] = +{ + {17,ch48st0} +}; + +static const GLUTStrokeChar ch48 = {104.7619f,1,ch48st}; + +/* char: 0x31 */ + +static const GLUTStrokeVertex ch49st0[] = +{ + {40.4762f,80.9524f}, + {50.0000f,85.7143f}, + {64.2857f,100.0000f}, + {64.2857f,0.0000f} +}; + +static const GLUTStrokeStrip ch49st[] = +{ + {4,ch49st0} +}; + +static const GLUTStrokeChar ch49 = {104.7619f,1,ch49st}; + +/* char: 0x32 */ + +static const GLUTStrokeVertex ch50st0[] = +{ + {23.8095f,76.1905f}, + {23.8095f,80.9524f}, + {28.5714f,90.4762f}, + {33.3333f,95.2381f}, + {42.8571f,100.0000f}, + {61.9047f,100.0000f}, + {71.4286f,95.2381f}, + {76.1905f,90.4762f}, + {80.9524f,80.9524f}, + {80.9524f,71.4286f}, + {76.1905f,61.9048f}, + {66.6666f,47.6190f}, + {19.0476f,0.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeStrip ch50st[] = +{ + {14,ch50st0} +}; + +static const GLUTStrokeChar ch50 = {104.7619f,1,ch50st}; + +/* char: 0x33 */ + +static const GLUTStrokeVertex ch51st0[] = +{ + {28.5714f,100.0000f}, + {80.9524f,100.0000f}, + {52.3809f,61.9048f}, + {66.6666f,61.9048f}, + {76.1905f,57.1429f}, + {80.9524f,52.3810f}, + {85.7143f,38.0952f}, + {85.7143f,28.5714f}, + {80.9524f,14.2857f}, + {71.4286f,4.7619f}, + {57.1428f,0.0000f}, + {42.8571f,0.0000f}, + {28.5714f,4.7619f}, + {23.8095f,9.5238f}, + {19.0476f,19.0476f} +}; + +static const GLUTStrokeStrip ch51st[] = +{ + {15,ch51st0} +}; + +static const GLUTStrokeChar ch51 = {104.7619f,1,ch51st}; + +/* char: 0x34 */ + +static const GLUTStrokeVertex ch52st0[] = +{ + {64.2857f,100.0000f}, + {16.6667f,33.3333f}, + {88.0952f,33.3333f} +}; + +static const GLUTStrokeVertex ch52st1[] = +{ + {64.2857f,100.0000f}, + {64.2857f,0.0000f} +}; + +static const GLUTStrokeStrip ch52st[] = +{ + {3,ch52st0}, + {2,ch52st1} +}; + +static const GLUTStrokeChar ch52 = {104.7619f,2,ch52st}; + +/* char: 0x35 */ + +static const GLUTStrokeVertex ch53st0[] = +{ + {76.1905f,100.0000f}, + {28.5714f,100.0000f}, + {23.8095f,57.1429f}, + {28.5714f,61.9048f}, + {42.8571f,66.6667f}, + {57.1428f,66.6667f}, + {71.4286f,61.9048f}, + {80.9524f,52.3810f}, + {85.7143f,38.0952f}, + {85.7143f,28.5714f}, + {80.9524f,14.2857f}, + {71.4286f,4.7619f}, + {57.1428f,0.0000f}, + {42.8571f,0.0000f}, + {28.5714f,4.7619f}, + {23.8095f,9.5238f}, + {19.0476f,19.0476f} +}; + +static const GLUTStrokeStrip ch53st[] = +{ + {17,ch53st0} +}; + +static const GLUTStrokeChar ch53 = {104.7619f,1,ch53st}; + +/* char: 0x36 */ + +static const GLUTStrokeVertex ch54st0[] = +{ + {78.5714f,85.7143f}, + {73.8096f,95.2381f}, + {59.5238f,100.0000f}, + {50.0000f,100.0000f}, + {35.7143f,95.2381f}, + {26.1905f,80.9524f}, + {21.4286f,57.1429f}, + {21.4286f,33.3333f}, + {26.1905f,14.2857f}, + {35.7143f,4.7619f}, + {50.0000f,0.0000f}, + {54.7619f,0.0000f}, + {69.0476f,4.7619f}, + {78.5714f,14.2857f}, + {83.3334f,28.5714f}, + {83.3334f,33.3333f}, + {78.5714f,47.6190f}, + {69.0476f,57.1429f}, + {54.7619f,61.9048f}, + {50.0000f,61.9048f}, + {35.7143f,57.1429f}, + {26.1905f,47.6190f}, + {21.4286f,33.3333f} +}; + +static const GLUTStrokeStrip ch54st[] = +{ + {23,ch54st0} +}; + +static const GLUTStrokeChar ch54 = {104.7619f,1,ch54st}; + +/* char: 0x37 */ + +static const GLUTStrokeVertex ch55st0[] = +{ + {85.7143f,100.0000f}, + {38.0952f,0.0000f} +}; + +static const GLUTStrokeVertex ch55st1[] = +{ + {19.0476f,100.0000f}, + {85.7143f,100.0000f} +}; + +static const GLUTStrokeStrip ch55st[] = +{ + {2,ch55st0}, + {2,ch55st1} +}; + +static const GLUTStrokeChar ch55 = {104.7619f,2,ch55st}; + +/* char: 0x38 */ + +static const GLUTStrokeVertex ch56st0[] = +{ + {42.8571f,100.0000f}, + {28.5714f,95.2381f}, + {23.8095f,85.7143f}, + {23.8095f,76.1905f}, + {28.5714f,66.6667f}, + {38.0952f,61.9048f}, + {57.1428f,57.1429f}, + {71.4286f,52.3810f}, + {80.9524f,42.8571f}, + {85.7143f,33.3333f}, + {85.7143f,19.0476f}, + {80.9524f,9.5238f}, + {76.1905f,4.7619f}, + {61.9047f,0.0000f}, + {42.8571f,0.0000f}, + {28.5714f,4.7619f}, + {23.8095f,9.5238f}, + {19.0476f,19.0476f}, + {19.0476f,33.3333f}, + {23.8095f,42.8571f}, + {33.3333f,52.3810f}, + {47.6190f,57.1429f}, + {66.6666f,61.9048f}, + {76.1905f,66.6667f}, + {80.9524f,76.1905f}, + {80.9524f,85.7143f}, + {76.1905f,95.2381f}, + {61.9047f,100.0000f}, + {42.8571f,100.0000f} +}; + +static const GLUTStrokeStrip ch56st[] = +{ + {29,ch56st0} +}; + +static const GLUTStrokeChar ch56 = {104.7619f,1,ch56st}; + +/* char: 0x39 */ + +static const GLUTStrokeVertex ch57st0[] = +{ + {83.3334f,66.6667f}, + {78.5714f,52.3810f}, + {69.0476f,42.8571f}, + {54.7619f,38.0952f}, + {50.0000f,38.0952f}, + {35.7143f,42.8571f}, + {26.1905f,52.3810f}, + {21.4286f,66.6667f}, + {21.4286f,71.4286f}, + {26.1905f,85.7143f}, + {35.7143f,95.2381f}, + {50.0000f,100.0000f}, + {54.7619f,100.0000f}, + {69.0476f,95.2381f}, + {78.5714f,85.7143f}, + {83.3334f,66.6667f}, + {83.3334f,42.8571f}, + {78.5714f,19.0476f}, + {69.0476f,4.7619f}, + {54.7619f,0.0000f}, + {45.2381f,0.0000f}, + {30.9524f,4.7619f}, + {26.1905f,14.2857f} +}; + +static const GLUTStrokeStrip ch57st[] = +{ + {23,ch57st0} +}; + +static const GLUTStrokeChar ch57 = {104.7619f,1,ch57st}; + +/* char: 0x3a */ + +static const GLUTStrokeVertex ch58st0[] = +{ + {52.3810f,66.6667f}, + {47.6191f,61.9048f}, + {52.3810f,57.1429f}, + {57.1429f,61.9048f}, + {52.3810f,66.6667f} +}; + +static const GLUTStrokeVertex ch58st1[] = +{ + {52.3810f,9.5238f}, + {47.6191f,4.7619f}, + {52.3810f,0.0000f}, + {57.1429f,4.7619f}, + {52.3810f,9.5238f} +}; + +static const GLUTStrokeStrip ch58st[] = +{ + {5,ch58st0}, + {5,ch58st1} +}; + +static const GLUTStrokeChar ch58 = {104.7619f,2,ch58st}; + +/* char: 0x3b */ + +static const GLUTStrokeVertex ch59st0[] = +{ + {52.3810f,66.6667f}, + {47.6191f,61.9048f}, + {52.3810f,57.1429f}, + {57.1429f,61.9048f}, + {52.3810f,66.6667f} +}; + +static const GLUTStrokeVertex ch59st1[] = +{ + {57.1429f,4.7619f}, + {52.3810f,0.0000f}, + {47.6191f,4.7619f}, + {52.3810f,9.5238f}, + {57.1429f,4.7619f}, + {57.1429f,-4.7619f}, + {52.3810f,-14.2857f}, + {47.6191f,-19.0476f} +}; + +static const GLUTStrokeStrip ch59st[] = +{ + {5,ch59st0}, + {8,ch59st1} +}; + +static const GLUTStrokeChar ch59 = {104.7619f,2,ch59st}; + +/* char: 0x3c */ + +static const GLUTStrokeVertex ch60st0[] = +{ + {90.4762f,85.7143f}, + {14.2857f,42.8571f}, + {90.4762f,0.0000f} +}; + +static const GLUTStrokeStrip ch60st[] = +{ + {3,ch60st0} +}; + +static const GLUTStrokeChar ch60 = {104.7619f,1,ch60st}; + +/* char: 0x3d */ + +static const GLUTStrokeVertex ch61st0[] = +{ + {9.5238f,57.1429f}, + {95.2381f,57.1429f} +}; + +static const GLUTStrokeVertex ch61st1[] = +{ + {9.5238f,28.5714f}, + {95.2381f,28.5714f} +}; + +static const GLUTStrokeStrip ch61st[] = +{ + {2,ch61st0}, + {2,ch61st1} +}; + +static const GLUTStrokeChar ch61 = {104.7619f,2,ch61st}; + +/* char: 0x3e */ + +static const GLUTStrokeVertex ch62st0[] = +{ + {14.2857f,85.7143f}, + {90.4762f,42.8571f}, + {14.2857f,0.0000f} +}; + +static const GLUTStrokeStrip ch62st[] = +{ + {3,ch62st0} +}; + +static const GLUTStrokeChar ch62 = {104.7619f,1,ch62st}; + +/* char: 0x3f */ + +static const GLUTStrokeVertex ch63st0[] = +{ + {23.8095f,76.1905f}, + {23.8095f,80.9524f}, + {28.5714f,90.4762f}, + {33.3333f,95.2381f}, + {42.8571f,100.0000f}, + {61.9047f,100.0000f}, + {71.4285f,95.2381f}, + {76.1905f,90.4762f}, + {80.9524f,80.9524f}, + {80.9524f,71.4286f}, + {76.1905f,61.9048f}, + {71.4285f,57.1429f}, + {52.3809f,47.6190f}, + {52.3809f,33.3333f} +}; + +static const GLUTStrokeVertex ch63st1[] = +{ + {52.3809f,9.5238f}, + {47.6190f,4.7619f}, + {52.3809f,0.0000f}, + {57.1428f,4.7619f}, + {52.3809f,9.5238f} +}; + +static const GLUTStrokeStrip ch63st[] = +{ + {14,ch63st0}, + {5,ch63st1} +}; + +static const GLUTStrokeChar ch63 = {104.7619f,2,ch63st}; + +/* char: 0x40 */ + +static const GLUTStrokeVertex ch64st0[] = +{ + {64.2857f,52.3810f}, + {54.7619f,57.1429f}, + {45.2381f,57.1429f}, + {40.4762f,47.6190f}, + {40.4762f,42.8571f}, + {45.2381f,33.3333f}, + {54.7619f,33.3333f}, + {64.2857f,38.0952f} +}; + +static const GLUTStrokeVertex ch64st1[] = +{ + {64.2857f,57.1429f}, + {64.2857f,38.0952f}, + {69.0476f,33.3333f}, + {78.5714f,33.3333f}, + {83.3334f,42.8571f}, + {83.3334f,47.6190f}, + {78.5714f,61.9048f}, + {69.0476f,71.4286f}, + {54.7619f,76.1905f}, + {50.0000f,76.1905f}, + {35.7143f,71.4286f}, + {26.1905f,61.9048f}, + {21.4286f,47.6190f}, + {21.4286f,42.8571f}, + {26.1905f,28.5714f}, + {35.7143f,19.0476f}, + {50.0000f,14.2857f}, + {54.7619f,14.2857f}, + {69.0476f,19.0476f} +}; + +static const GLUTStrokeStrip ch64st[] = +{ + {8,ch64st0}, + {19,ch64st1} +}; + +static const GLUTStrokeChar ch64 = {104.7619f,2,ch64st}; + +/* char: 0x41 */ + +static const GLUTStrokeVertex ch65st0[] = +{ + {52.3809f,100.0000f}, + {14.2857f,0.0000f} +}; + +static const GLUTStrokeVertex ch65st1[] = +{ + {52.3809f,100.0000f}, + {90.4762f,0.0000f} +}; + +static const GLUTStrokeVertex ch65st2[] = +{ + {28.5714f,33.3333f}, + {76.1905f,33.3333f} +}; + +static const GLUTStrokeStrip ch65st[] = +{ + {2,ch65st0}, + {2,ch65st1}, + {2,ch65st2} +}; + +static const GLUTStrokeChar ch65 = {104.7619f,3,ch65st}; + +/* char: 0x42 */ + +static const GLUTStrokeVertex ch66st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch66st1[] = +{ + {19.0476f,100.0000f}, + {61.9047f,100.0000f}, + {76.1905f,95.2381f}, + {80.9524f,90.4762f}, + {85.7143f,80.9524f}, + {85.7143f,71.4286f}, + {80.9524f,61.9048f}, + {76.1905f,57.1429f}, + {61.9047f,52.3810f} +}; + +static const GLUTStrokeVertex ch66st2[] = +{ + {19.0476f,52.3810f}, + {61.9047f,52.3810f}, + {76.1905f,47.6190f}, + {80.9524f,42.8571f}, + {85.7143f,33.3333f}, + {85.7143f,19.0476f}, + {80.9524f,9.5238f}, + {76.1905f,4.7619f}, + {61.9047f,0.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeStrip ch66st[] = +{ + {2,ch66st0}, + {9,ch66st1}, + {10,ch66st2} +}; + +static const GLUTStrokeChar ch66 = {104.7619f,3,ch66st}; + +/* char: 0x43 */ + +static const GLUTStrokeVertex ch67st0[] = +{ + {88.0952f,76.1905f}, + {83.3334f,85.7143f}, + {73.8096f,95.2381f}, + {64.2857f,100.0000f}, + {45.2381f,100.0000f}, + {35.7143f,95.2381f}, + {26.1905f,85.7143f}, + {21.4286f,76.1905f}, + {16.6667f,61.9048f}, + {16.6667f,38.0952f}, + {21.4286f,23.8095f}, + {26.1905f,14.2857f}, + {35.7143f,4.7619f}, + {45.2381f,0.0000f}, + {64.2857f,0.0000f}, + {73.8096f,4.7619f}, + {83.3334f,14.2857f}, + {88.0952f,23.8095f} +}; + +static const GLUTStrokeStrip ch67st[] = +{ + {18,ch67st0} +}; + +static const GLUTStrokeChar ch67 = {104.7619f,1,ch67st}; + +/* char: 0x44 */ + +static const GLUTStrokeVertex ch68st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch68st1[] = +{ + {19.0476f,100.0000f}, + {52.3809f,100.0000f}, + {66.6666f,95.2381f}, + {76.1905f,85.7143f}, + {80.9524f,76.1905f}, + {85.7143f,61.9048f}, + {85.7143f,38.0952f}, + {80.9524f,23.8095f}, + {76.1905f,14.2857f}, + {66.6666f,4.7619f}, + {52.3809f,0.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeStrip ch68st[] = +{ + {2,ch68st0}, + {12,ch68st1} +}; + +static const GLUTStrokeChar ch68 = {104.7619f,2,ch68st}; + +/* char: 0x45 */ + +static const GLUTStrokeVertex ch69st0[] = +{ + {21.4286f,100.0000f}, + {21.4286f,0.0000f} +}; + +static const GLUTStrokeVertex ch69st1[] = +{ + {21.4286f,100.0000f}, + {83.3334f,100.0000f} +}; + +static const GLUTStrokeVertex ch69st2[] = +{ + {21.4286f,52.3810f}, + {59.5238f,52.3810f} +}; + +static const GLUTStrokeVertex ch69st3[] = +{ + {21.4286f,0.0000f}, + {83.3334f,0.0000f} +}; + +static const GLUTStrokeStrip ch69st[] = +{ + {2,ch69st0}, + {2,ch69st1}, + {2,ch69st2}, + {2,ch69st3} +}; + +static const GLUTStrokeChar ch69 = {104.7619f,4,ch69st}; + +/* char: 0x46 */ + +static const GLUTStrokeVertex ch70st0[] = +{ + {21.4286f,100.0000f}, + {21.4286f,0.0000f} +}; + +static const GLUTStrokeVertex ch70st1[] = +{ + {21.4286f,100.0000f}, + {83.3334f,100.0000f} +}; + +static const GLUTStrokeVertex ch70st2[] = +{ + {21.4286f,52.3810f}, + {59.5238f,52.3810f} +}; + +static const GLUTStrokeStrip ch70st[] = +{ + {2,ch70st0}, + {2,ch70st1}, + {2,ch70st2} +}; + +static const GLUTStrokeChar ch70 = {104.7619f,3,ch70st}; + +/* char: 0x47 */ + +static const GLUTStrokeVertex ch71st0[] = +{ + {88.0952f,76.1905f}, + {83.3334f,85.7143f}, + {73.8096f,95.2381f}, + {64.2857f,100.0000f}, + {45.2381f,100.0000f}, + {35.7143f,95.2381f}, + {26.1905f,85.7143f}, + {21.4286f,76.1905f}, + {16.6667f,61.9048f}, + {16.6667f,38.0952f}, + {21.4286f,23.8095f}, + {26.1905f,14.2857f}, + {35.7143f,4.7619f}, + {45.2381f,0.0000f}, + {64.2857f,0.0000f}, + {73.8096f,4.7619f}, + {83.3334f,14.2857f}, + {88.0952f,23.8095f}, + {88.0952f,38.0952f} +}; + +static const GLUTStrokeVertex ch71st1[] = +{ + {64.2857f,38.0952f}, + {88.0952f,38.0952f} +}; + +static const GLUTStrokeStrip ch71st[] = +{ + {19,ch71st0}, + {2,ch71st1} +}; + +static const GLUTStrokeChar ch71 = {104.7619f,2,ch71st}; + +/* char: 0x48 */ + +static const GLUTStrokeVertex ch72st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch72st1[] = +{ + {85.7143f,100.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeVertex ch72st2[] = +{ + {19.0476f,52.3810f}, + {85.7143f,52.3810f} +}; + +static const GLUTStrokeStrip ch72st[] = +{ + {2,ch72st0}, + {2,ch72st1}, + {2,ch72st2} +}; + +static const GLUTStrokeChar ch72 = {104.7619f,3,ch72st}; + +/* char: 0x49 */ + +static const GLUTStrokeVertex ch73st0[] = +{ + {52.3810f,100.0000f}, + {52.3810f,0.0000f} +}; + +static const GLUTStrokeStrip ch73st[] = +{ + {2,ch73st0} +}; + +static const GLUTStrokeChar ch73 = {104.7619f,1,ch73st}; + +/* char: 0x4a */ + +static const GLUTStrokeVertex ch74st0[] = +{ + {76.1905f,100.0000f}, + {76.1905f,23.8095f}, + {71.4286f,9.5238f}, + {66.6667f,4.7619f}, + {57.1429f,0.0000f}, + {47.6191f,0.0000f}, + {38.0953f,4.7619f}, + {33.3334f,9.5238f}, + {28.5715f,23.8095f}, + {28.5715f,33.3333f} +}; + +static const GLUTStrokeStrip ch74st[] = +{ + {10,ch74st0} +}; + +static const GLUTStrokeChar ch74 = {104.7619f,1,ch74st}; + +/* char: 0x4b */ + +static const GLUTStrokeVertex ch75st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch75st1[] = +{ + {85.7143f,100.0000f}, + {19.0476f,33.3333f} +}; + +static const GLUTStrokeVertex ch75st2[] = +{ + {42.8571f,57.1429f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeStrip ch75st[] = +{ + {2,ch75st0}, + {2,ch75st1}, + {2,ch75st2} +}; + +static const GLUTStrokeChar ch75 = {104.7619f,3,ch75st}; + +/* char: 0x4c */ + +static const GLUTStrokeVertex ch76st0[] = +{ + {23.8095f,100.0000f}, + {23.8095f,0.0000f} +}; + +static const GLUTStrokeVertex ch76st1[] = +{ + {23.8095f,0.0000f}, + {80.9524f,0.0000f} +}; + +static const GLUTStrokeStrip ch76st[] = +{ + {2,ch76st0}, + {2,ch76st1} +}; + +static const GLUTStrokeChar ch76 = {104.7619f,2,ch76st}; + +/* char: 0x4d */ + +static const GLUTStrokeVertex ch77st0[] = +{ + {14.2857f,100.0000f}, + {14.2857f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st1[] = +{ + {14.2857f,100.0000f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st2[] = +{ + {90.4762f,100.0000f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st3[] = +{ + {90.4762f,100.0000f}, + {90.4762f,0.0000f} +}; + +static const GLUTStrokeStrip ch77st[] = +{ + {2,ch77st0}, + {2,ch77st1}, + {2,ch77st2}, + {2,ch77st3} +}; + +static const GLUTStrokeChar ch77 = {104.7619f,4,ch77st}; + +/* char: 0x4e */ + +static const GLUTStrokeVertex ch78st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch78st1[] = +{ + {19.0476f,100.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeVertex ch78st2[] = +{ + {85.7143f,100.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeStrip ch78st[] = +{ + {2,ch78st0}, + {2,ch78st1}, + {2,ch78st2} +}; + +static const GLUTStrokeChar ch78 = {104.7619f,3,ch78st}; + +/* char: 0x4f */ + +static const GLUTStrokeVertex ch79st0[] = +{ + {42.8571f,100.0000f}, + {33.3333f,95.2381f}, + {23.8095f,85.7143f}, + {19.0476f,76.1905f}, + {14.2857f,61.9048f}, + {14.2857f,38.0952f}, + {19.0476f,23.8095f}, + {23.8095f,14.2857f}, + {33.3333f,4.7619f}, + {42.8571f,0.0000f}, + {61.9047f,0.0000f}, + {71.4286f,4.7619f}, + {80.9524f,14.2857f}, + {85.7143f,23.8095f}, + {90.4762f,38.0952f}, + {90.4762f,61.9048f}, + {85.7143f,76.1905f}, + {80.9524f,85.7143f}, + {71.4286f,95.2381f}, + {61.9047f,100.0000f}, + {42.8571f,100.0000f} +}; + +static const GLUTStrokeStrip ch79st[] = +{ + {21,ch79st0} +}; + +static const GLUTStrokeChar ch79 = {104.7619f,1,ch79st}; + +/* char: 0x50 */ + +static const GLUTStrokeVertex ch80st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch80st1[] = +{ + {19.0476f,100.0000f}, + {61.9047f,100.0000f}, + {76.1905f,95.2381f}, + {80.9524f,90.4762f}, + {85.7143f,80.9524f}, + {85.7143f,66.6667f}, + {80.9524f,57.1429f}, + {76.1905f,52.3810f}, + {61.9047f,47.6190f}, + {19.0476f,47.6190f} +}; + +static const GLUTStrokeStrip ch80st[] = +{ + {2,ch80st0}, + {10,ch80st1} +}; + +static const GLUTStrokeChar ch80 = {104.7619f,2,ch80st}; + +/* char: 0x51 */ + +static const GLUTStrokeVertex ch81st0[] = +{ + {42.8571f,100.0000f}, + {33.3333f,95.2381f}, + {23.8095f,85.7143f}, + {19.0476f,76.1905f}, + {14.2857f,61.9048f}, + {14.2857f,38.0952f}, + {19.0476f,23.8095f}, + {23.8095f,14.2857f}, + {33.3333f,4.7619f}, + {42.8571f,0.0000f}, + {61.9047f,0.0000f}, + {71.4286f,4.7619f}, + {80.9524f,14.2857f}, + {85.7143f,23.8095f}, + {90.4762f,38.0952f}, + {90.4762f,61.9048f}, + {85.7143f,76.1905f}, + {80.9524f,85.7143f}, + {71.4286f,95.2381f}, + {61.9047f,100.0000f}, + {42.8571f,100.0000f} +}; + +static const GLUTStrokeVertex ch81st1[] = +{ + {57.1428f,19.0476f}, + {85.7143f,-9.5238f} +}; + +static const GLUTStrokeStrip ch81st[] = +{ + {21,ch81st0}, + {2,ch81st1} +}; + +static const GLUTStrokeChar ch81 = {104.7619f,2,ch81st}; + +/* char: 0x52 */ + +static const GLUTStrokeVertex ch82st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch82st1[] = +{ + {19.0476f,100.0000f}, + {61.9047f,100.0000f}, + {76.1905f,95.2381f}, + {80.9524f,90.4762f}, + {85.7143f,80.9524f}, + {85.7143f,71.4286f}, + {80.9524f,61.9048f}, + {76.1905f,57.1429f}, + {61.9047f,52.3810f}, + {19.0476f,52.3810f} +}; + +static const GLUTStrokeVertex ch82st2[] = +{ + {52.3809f,52.3810f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeStrip ch82st[] = +{ + {2,ch82st0}, + {10,ch82st1}, + {2,ch82st2} +}; + +static const GLUTStrokeChar ch82 = {104.7619f,3,ch82st}; + +/* char: 0x53 */ + +static const GLUTStrokeVertex ch83st0[] = +{ + {85.7143f,85.7143f}, + {76.1905f,95.2381f}, + {61.9047f,100.0000f}, + {42.8571f,100.0000f}, + {28.5714f,95.2381f}, + {19.0476f,85.7143f}, + {19.0476f,76.1905f}, + {23.8095f,66.6667f}, + {28.5714f,61.9048f}, + {38.0952f,57.1429f}, + {66.6666f,47.6190f}, + {76.1905f,42.8571f}, + {80.9524f,38.0952f}, + {85.7143f,28.5714f}, + {85.7143f,14.2857f}, + {76.1905f,4.7619f}, + {61.9047f,0.0000f}, + {42.8571f,0.0000f}, + {28.5714f,4.7619f}, + {19.0476f,14.2857f} +}; + +static const GLUTStrokeStrip ch83st[] = +{ + {20,ch83st0} +}; + +static const GLUTStrokeChar ch83 = {104.7619f,1,ch83st}; + +/* char: 0x54 */ + +static const GLUTStrokeVertex ch84st0[] = +{ + {52.3809f,100.0000f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch84st1[] = +{ + {19.0476f,100.0000f}, + {85.7143f,100.0000f} +}; + +static const GLUTStrokeStrip ch84st[] = +{ + {2,ch84st0}, + {2,ch84st1} +}; + +static const GLUTStrokeChar ch84 = {104.7619f,2,ch84st}; + +/* char: 0x55 */ + +static const GLUTStrokeVertex ch85st0[] = +{ + {19.0476f,100.0000f}, + {19.0476f,28.5714f}, + {23.8095f,14.2857f}, + {33.3333f,4.7619f}, + {47.6190f,0.0000f}, + {57.1428f,0.0000f}, + {71.4286f,4.7619f}, + {80.9524f,14.2857f}, + {85.7143f,28.5714f}, + {85.7143f,100.0000f} +}; + +static const GLUTStrokeStrip ch85st[] = +{ + {10,ch85st0} +}; + +static const GLUTStrokeChar ch85 = {104.7619f,1,ch85st}; + +/* char: 0x56 */ + +static const GLUTStrokeVertex ch86st0[] = +{ + {14.2857f,100.0000f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch86st1[] = +{ + {90.4762f,100.0000f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeStrip ch86st[] = +{ + {2,ch86st0}, + {2,ch86st1} +}; + +static const GLUTStrokeChar ch86 = {104.7619f,2,ch86st}; + +/* char: 0x57 */ + +static const GLUTStrokeVertex ch87st0[] = +{ + {4.7619f,100.0000f}, + {28.5714f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st1[] = +{ + {52.3809f,100.0000f}, + {28.5714f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st2[] = +{ + {52.3809f,100.0000f}, + {76.1905f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st3[] = +{ + {100.0000f,100.0000f}, + {76.1905f,0.0000f} +}; + +static const GLUTStrokeStrip ch87st[] = +{ + {2,ch87st0}, + {2,ch87st1}, + {2,ch87st2}, + {2,ch87st3} +}; + +static const GLUTStrokeChar ch87 = {104.7619f,4,ch87st}; + +/* char: 0x58 */ + +static const GLUTStrokeVertex ch88st0[] = +{ + {19.0476f,100.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeVertex ch88st1[] = +{ + {85.7143f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeStrip ch88st[] = +{ + {2,ch88st0}, + {2,ch88st1} +}; + +static const GLUTStrokeChar ch88 = {104.7619f,2,ch88st}; + +/* char: 0x59 */ + +static const GLUTStrokeVertex ch89st0[] = +{ + {14.2857f,100.0000f}, + {52.3809f,52.3810f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch89st1[] = +{ + {90.4762f,100.0000f}, + {52.3809f,52.3810f} +}; + +static const GLUTStrokeStrip ch89st[] = +{ + {3,ch89st0}, + {2,ch89st1} +}; + +static const GLUTStrokeChar ch89 = {104.7619f,2,ch89st}; + +/* char: 0x5a */ + +static const GLUTStrokeVertex ch90st0[] = +{ + {85.7143f,100.0000f}, + {19.0476f,0.0000f} +}; + +static const GLUTStrokeVertex ch90st1[] = +{ + {19.0476f,100.0000f}, + {85.7143f,100.0000f} +}; + +static const GLUTStrokeVertex ch90st2[] = +{ + {19.0476f,0.0000f}, + {85.7143f,0.0000f} +}; + +static const GLUTStrokeStrip ch90st[] = +{ + {2,ch90st0}, + {2,ch90st1}, + {2,ch90st2} +}; + +static const GLUTStrokeChar ch90 = {104.7619f,3,ch90st}; + +/* char: 0x5b */ + +static const GLUTStrokeVertex ch91st0[] = +{ + {35.7143f,119.0476f}, + {35.7143f,-33.3333f} +}; + +static const GLUTStrokeVertex ch91st1[] = +{ + {40.4762f,119.0476f}, + {40.4762f,-33.3333f} +}; + +static const GLUTStrokeVertex ch91st2[] = +{ + {35.7143f,119.0476f}, + {69.0476f,119.0476f} +}; + +static const GLUTStrokeVertex ch91st3[] = +{ + {35.7143f,-33.3333f}, + {69.0476f,-33.3333f} +}; + +static const GLUTStrokeStrip ch91st[] = +{ + {2,ch91st0}, + {2,ch91st1}, + {2,ch91st2}, + {2,ch91st3} +}; + +static const GLUTStrokeChar ch91 = {104.7619f,4,ch91st}; + +/* char: 0x5c */ + +static const GLUTStrokeVertex ch92st0[] = +{ + {19.0476f,100.0000f}, + {85.7143f,-14.2857f} +}; + +static const GLUTStrokeStrip ch92st[] = +{ + {2,ch92st0} +}; + +static const GLUTStrokeChar ch92 = {104.7619f,1,ch92st}; + +/* char: 0x5d */ + +static const GLUTStrokeVertex ch93st0[] = +{ + {64.2857f,119.0476f}, + {64.2857f,-33.3333f} +}; + +static const GLUTStrokeVertex ch93st1[] = +{ + {69.0476f,119.0476f}, + {69.0476f,-33.3333f} +}; + +static const GLUTStrokeVertex ch93st2[] = +{ + {35.7143f,119.0476f}, + {69.0476f,119.0476f} +}; + +static const GLUTStrokeVertex ch93st3[] = +{ + {35.7143f,-33.3333f}, + {69.0476f,-33.3333f} +}; + +static const GLUTStrokeStrip ch93st[] = +{ + {2,ch93st0}, + {2,ch93st1}, + {2,ch93st2}, + {2,ch93st3} +}; + +static const GLUTStrokeChar ch93 = {104.7619f,4,ch93st}; + +/* char: 0x5e */ + +static const GLUTStrokeVertex ch94st0[] = +{ + {52.3809f,109.5238f}, + {14.2857f,42.8571f} +}; + +static const GLUTStrokeVertex ch94st1[] = +{ + {52.3809f,109.5238f}, + {90.4762f,42.8571f} +}; + +static const GLUTStrokeStrip ch94st[] = +{ + {2,ch94st0}, + {2,ch94st1} +}; + +static const GLUTStrokeChar ch94 = {104.7619f,2,ch94st}; + +/* char: 0x5f */ + +static const GLUTStrokeVertex ch95st0[] = +{ + {0.0000f,-33.3333f}, + {104.7619f,-33.3333f}, + {104.7619f,-28.5714f}, + {0.0000f,-28.5714f}, + {0.0000f,-33.3333f} +}; + +static const GLUTStrokeStrip ch95st[] = +{ + {5,ch95st0} +}; + +static const GLUTStrokeChar ch95 = {104.7619f,1,ch95st}; + +/* char: 0x60 */ + +static const GLUTStrokeVertex ch96st0[] = +{ + {42.8572f,100.0000f}, + {66.6667f,71.4286f} +}; + +static const GLUTStrokeVertex ch96st1[] = +{ + {42.8572f,100.0000f}, + {38.0953f,95.2381f}, + {66.6667f,71.4286f} +}; + +static const GLUTStrokeStrip ch96st[] = +{ + {2,ch96st0}, + {3,ch96st1} +}; + +static const GLUTStrokeChar ch96 = {104.7619f,2,ch96st}; + +/* char: 0x61 */ + +static const GLUTStrokeVertex ch97st0[] = +{ + {80.9524f,66.6667f}, + {80.9524f,0.0000f} +}; + +static const GLUTStrokeVertex ch97st1[] = +{ + {80.9524f,52.3810f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch97st[] = +{ + {2,ch97st0}, + {14,ch97st1} +}; + +static const GLUTStrokeChar ch97 = {104.7619f,2,ch97st}; + +/* char: 0x62 */ + +static const GLUTStrokeVertex ch98st0[] = +{ + {23.8095f,100.0000f}, + {23.8095f,0.0000f} +}; + +static const GLUTStrokeVertex ch98st1[] = +{ + {23.8095f,52.3810f}, + {33.3333f,61.9048f}, + {42.8571f,66.6667f}, + {57.1428f,66.6667f}, + {66.6666f,61.9048f}, + {76.1905f,52.3810f}, + {80.9524f,38.0952f}, + {80.9524f,28.5714f}, + {76.1905f,14.2857f}, + {66.6666f,4.7619f}, + {57.1428f,0.0000f}, + {42.8571f,0.0000f}, + {33.3333f,4.7619f}, + {23.8095f,14.2857f} +}; + +static const GLUTStrokeStrip ch98st[] = +{ + {2,ch98st0}, + {14,ch98st1} +}; + +static const GLUTStrokeChar ch98 = {104.7619f,2,ch98st}; + +/* char: 0x63 */ + +static const GLUTStrokeVertex ch99st0[] = +{ + {80.9524f,52.3810f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch99st[] = +{ + {14,ch99st0} +}; + +static const GLUTStrokeChar ch99 = {104.7619f,1,ch99st}; + +/* char: 0x64 */ + +static const GLUTStrokeVertex ch100st0[] = +{ + {80.9524f,100.0000f}, + {80.9524f,0.0000f} +}; + +static const GLUTStrokeVertex ch100st1[] = +{ + {80.9524f,52.3810f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch100st[] = +{ + {2,ch100st0}, + {14,ch100st1} +}; + +static const GLUTStrokeChar ch100 = {104.7619f,2,ch100st}; + +/* char: 0x65 */ + +static const GLUTStrokeVertex ch101st0[] = +{ + {23.8095f,38.0952f}, + {80.9524f,38.0952f}, + {80.9524f,47.6190f}, + {76.1905f,57.1429f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch101st[] = +{ + {17,ch101st0} +}; + +static const GLUTStrokeChar ch101 = {104.7619f,1,ch101st}; + +/* char: 0x66 */ + +static const GLUTStrokeVertex ch102st0[] = +{ + {71.4286f,100.0000f}, + {61.9048f,100.0000f}, + {52.3810f,95.2381f}, + {47.6191f,80.9524f}, + {47.6191f,0.0000f} +}; + +static const GLUTStrokeVertex ch102st1[] = +{ + {33.3334f,66.6667f}, + {66.6667f,66.6667f} +}; + +static const GLUTStrokeStrip ch102st[] = +{ + {5,ch102st0}, + {2,ch102st1} +}; + +static const GLUTStrokeChar ch102 = {104.7619f,2,ch102st}; + +/* char: 0x67 */ + +static const GLUTStrokeVertex ch103st0[] = +{ + {80.9524f,66.6667f}, + {80.9524f,-9.5238f}, + {76.1905f,-23.8095f}, + {71.4285f,-28.5714f}, + {61.9047f,-33.3333f}, + {47.6190f,-33.3333f}, + {38.0952f,-28.5714f} +}; + +static const GLUTStrokeVertex ch103st1[] = +{ + {80.9524f,52.3810f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch103st[] = +{ + {7,ch103st0}, + {14,ch103st1} +}; + +static const GLUTStrokeChar ch103 = {104.7619f,2,ch103st}; + +/* char: 0x68 */ + +static const GLUTStrokeVertex ch104st0[] = +{ + {26.1905f,100.0000f}, + {26.1905f,0.0000f} +}; + +static const GLUTStrokeVertex ch104st1[] = +{ + {26.1905f,47.6190f}, + {40.4762f,61.9048f}, + {50.0000f,66.6667f}, + {64.2857f,66.6667f}, + {73.8095f,61.9048f}, + {78.5715f,47.6190f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeStrip ch104st[] = +{ + {2,ch104st0}, + {7,ch104st1} +}; + +static const GLUTStrokeChar ch104 = {104.7619f,2,ch104st}; + +/* char: 0x69 */ + +static const GLUTStrokeVertex ch105st0[] = +{ + {47.6191f,100.0000f}, + {52.3810f,95.2381f}, + {57.1429f,100.0000f}, + {52.3810f,104.7619f}, + {47.6191f,100.0000f} +}; + +static const GLUTStrokeVertex ch105st1[] = +{ + {52.3810f,66.6667f}, + {52.3810f,0.0000f} +}; + +static const GLUTStrokeStrip ch105st[] = +{ + {5,ch105st0}, + {2,ch105st1} +}; + +static const GLUTStrokeChar ch105 = {104.7619f,2,ch105st}; + +/* char: 0x6a */ + +static const GLUTStrokeVertex ch106st0[] = +{ + {57.1429f,100.0000f}, + {61.9048f,95.2381f}, + {66.6667f,100.0000f}, + {61.9048f,104.7619f}, + {57.1429f,100.0000f} +}; + +static const GLUTStrokeVertex ch106st1[] = +{ + {61.9048f,66.6667f}, + {61.9048f,-14.2857f}, + {57.1429f,-28.5714f}, + {47.6191f,-33.3333f}, + {38.0953f,-33.3333f} +}; + +static const GLUTStrokeStrip ch106st[] = +{ + {5,ch106st0}, + {5,ch106st1} +}; + +static const GLUTStrokeChar ch106 = {104.7619f,2,ch106st}; + +/* char: 0x6b */ + +static const GLUTStrokeVertex ch107st0[] = +{ + {26.1905f,100.0000f}, + {26.1905f,0.0000f} +}; + +static const GLUTStrokeVertex ch107st1[] = +{ + {73.8095f,66.6667f}, + {26.1905f,19.0476f} +}; + +static const GLUTStrokeVertex ch107st2[] = +{ + {45.2381f,38.0952f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeStrip ch107st[] = +{ + {2,ch107st0}, + {2,ch107st1}, + {2,ch107st2} +}; + +static const GLUTStrokeChar ch107 = {104.7619f,3,ch107st}; + +/* char: 0x6c */ + +static const GLUTStrokeVertex ch108st0[] = +{ + {52.3810f,100.0000f}, + {52.3810f,0.0000f} +}; + +static const GLUTStrokeStrip ch108st[] = +{ + {2,ch108st0} +}; + +static const GLUTStrokeChar ch108 = {104.7619f,1,ch108st}; + +/* char: 0x6d */ + +static const GLUTStrokeVertex ch109st0[] = +{ + {0.0000f,66.6667f}, + {0.0000f,0.0000f} +}; + +static const GLUTStrokeVertex ch109st1[] = +{ + {0.0000f,47.6190f}, + {14.2857f,61.9048f}, + {23.8095f,66.6667f}, + {38.0952f,66.6667f}, + {47.6190f,61.9048f}, + {52.3810f,47.6190f}, + {52.3810f,0.0000f} +}; + +static const GLUTStrokeVertex ch109st2[] = +{ + {52.3810f,47.6190f}, + {66.6667f,61.9048f}, + {76.1905f,66.6667f}, + {90.4762f,66.6667f}, + {100.0000f,61.9048f}, + {104.7619f,47.6190f}, + {104.7619f,0.0000f} +}; + +static const GLUTStrokeStrip ch109st[] = +{ + {2,ch109st0}, + {7,ch109st1}, + {7,ch109st2} +}; + +static const GLUTStrokeChar ch109 = {104.7619f,3,ch109st}; + +/* char: 0x6e */ + +static const GLUTStrokeVertex ch110st0[] = +{ + {26.1905f,66.6667f}, + {26.1905f,0.0000f} +}; + +static const GLUTStrokeVertex ch110st1[] = +{ + {26.1905f,47.6190f}, + {40.4762f,61.9048f}, + {50.0000f,66.6667f}, + {64.2857f,66.6667f}, + {73.8095f,61.9048f}, + {78.5715f,47.6190f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeStrip ch110st[] = +{ + {2,ch110st0}, + {7,ch110st1} +}; + +static const GLUTStrokeChar ch110 = {104.7619f,2,ch110st}; + +/* char: 0x6f */ + +static const GLUTStrokeVertex ch111st0[] = +{ + {45.2381f,66.6667f}, + {35.7143f,61.9048f}, + {26.1905f,52.3810f}, + {21.4286f,38.0952f}, + {21.4286f,28.5714f}, + {26.1905f,14.2857f}, + {35.7143f,4.7619f}, + {45.2381f,0.0000f}, + {59.5238f,0.0000f}, + {69.0476f,4.7619f}, + {78.5714f,14.2857f}, + {83.3334f,28.5714f}, + {83.3334f,38.0952f}, + {78.5714f,52.3810f}, + {69.0476f,61.9048f}, + {59.5238f,66.6667f}, + {45.2381f,66.6667f} +}; + +static const GLUTStrokeStrip ch111st[] = +{ + {17,ch111st0} +}; + +static const GLUTStrokeChar ch111 = {104.7619f,1,ch111st}; + +/* char: 0x70 */ + +static const GLUTStrokeVertex ch112st0[] = +{ + {23.8095f,66.6667f}, + {23.8095f,-33.3333f} +}; + +static const GLUTStrokeVertex ch112st1[] = +{ + {23.8095f,52.3810f}, + {33.3333f,61.9048f}, + {42.8571f,66.6667f}, + {57.1428f,66.6667f}, + {66.6666f,61.9048f}, + {76.1905f,52.3810f}, + {80.9524f,38.0952f}, + {80.9524f,28.5714f}, + {76.1905f,14.2857f}, + {66.6666f,4.7619f}, + {57.1428f,0.0000f}, + {42.8571f,0.0000f}, + {33.3333f,4.7619f}, + {23.8095f,14.2857f} +}; + +static const GLUTStrokeStrip ch112st[] = +{ + {2,ch112st0}, + {14,ch112st1} +}; + +static const GLUTStrokeChar ch112 = {104.7619f,2,ch112st}; + +/* char: 0x71 */ + +static const GLUTStrokeVertex ch113st0[] = +{ + {80.9524f,66.6667f}, + {80.9524f,-33.3333f} +}; + +static const GLUTStrokeVertex ch113st1[] = +{ + {80.9524f,52.3810f}, + {71.4285f,61.9048f}, + {61.9047f,66.6667f}, + {47.6190f,66.6667f}, + {38.0952f,61.9048f}, + {28.5714f,52.3810f}, + {23.8095f,38.0952f}, + {23.8095f,28.5714f}, + {28.5714f,14.2857f}, + {38.0952f,4.7619f}, + {47.6190f,0.0000f}, + {61.9047f,0.0000f}, + {71.4285f,4.7619f}, + {80.9524f,14.2857f} +}; + +static const GLUTStrokeStrip ch113st[] = +{ + {2,ch113st0}, + {14,ch113st1} +}; + +static const GLUTStrokeChar ch113 = {104.7619f,2,ch113st}; + +/* char: 0x72 */ + +static const GLUTStrokeVertex ch114st0[] = +{ + {33.3334f,66.6667f}, + {33.3334f,0.0000f} +}; + +static const GLUTStrokeVertex ch114st1[] = +{ + {33.3334f,38.0952f}, + {38.0953f,52.3810f}, + {47.6191f,61.9048f}, + {57.1429f,66.6667f}, + {71.4286f,66.6667f} +}; + +static const GLUTStrokeStrip ch114st[] = +{ + {2,ch114st0}, + {5,ch114st1} +}; + +static const GLUTStrokeChar ch114 = {104.7619f,2,ch114st}; + +/* char: 0x73 */ + +static const GLUTStrokeVertex ch115st0[] = +{ + {78.5715f,52.3810f}, + {73.8095f,61.9048f}, + {59.5238f,66.6667f}, + {45.2381f,66.6667f}, + {30.9524f,61.9048f}, + {26.1905f,52.3810f}, + {30.9524f,42.8571f}, + {40.4762f,38.0952f}, + {64.2857f,33.3333f}, + {73.8095f,28.5714f}, + {78.5715f,19.0476f}, + {78.5715f,14.2857f}, + {73.8095f,4.7619f}, + {59.5238f,0.0000f}, + {45.2381f,0.0000f}, + {30.9524f,4.7619f}, + {26.1905f,14.2857f} +}; + +static const GLUTStrokeStrip ch115st[] = +{ + {17,ch115st0} +}; + +static const GLUTStrokeChar ch115 = {104.7619f,1,ch115st}; + +/* char: 0x74 */ + +static const GLUTStrokeVertex ch116st0[] = +{ + {47.6191f,100.0000f}, + {47.6191f,19.0476f}, + {52.3810f,4.7619f}, + {61.9048f,0.0000f}, + {71.4286f,0.0000f} +}; + +static const GLUTStrokeVertex ch116st1[] = +{ + {33.3334f,66.6667f}, + {66.6667f,66.6667f} +}; + +static const GLUTStrokeStrip ch116st[] = +{ + {5,ch116st0}, + {2,ch116st1} +}; + +static const GLUTStrokeChar ch116 = {104.7619f,2,ch116st}; + +/* char: 0x75 */ + +static const GLUTStrokeVertex ch117st0[] = +{ + {26.1905f,66.6667f}, + {26.1905f,19.0476f}, + {30.9524f,4.7619f}, + {40.4762f,0.0000f}, + {54.7619f,0.0000f}, + {64.2857f,4.7619f}, + {78.5715f,19.0476f} +}; + +static const GLUTStrokeVertex ch117st1[] = +{ + {78.5715f,66.6667f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeStrip ch117st[] = +{ + {7,ch117st0}, + {2,ch117st1} +}; + +static const GLUTStrokeChar ch117 = {104.7619f,2,ch117st}; + +/* char: 0x76 */ + +static const GLUTStrokeVertex ch118st0[] = +{ + {23.8095f,66.6667f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeVertex ch118st1[] = +{ + {80.9524f,66.6667f}, + {52.3809f,0.0000f} +}; + +static const GLUTStrokeStrip ch118st[] = +{ + {2,ch118st0}, + {2,ch118st1} +}; + +static const GLUTStrokeChar ch118 = {104.7619f,2,ch118st}; + +/* char: 0x77 */ + +static const GLUTStrokeVertex ch119st0[] = +{ + {14.2857f,66.6667f}, + {33.3333f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st1[] = +{ + {52.3809f,66.6667f}, + {33.3333f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st2[] = +{ + {52.3809f,66.6667f}, + {71.4286f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st3[] = +{ + {90.4762f,66.6667f}, + {71.4286f,0.0000f} +}; + +static const GLUTStrokeStrip ch119st[] = +{ + {2,ch119st0}, + {2,ch119st1}, + {2,ch119st2}, + {2,ch119st3} +}; + +static const GLUTStrokeChar ch119 = {104.7619f,4,ch119st}; + +/* char: 0x78 */ + +static const GLUTStrokeVertex ch120st0[] = +{ + {26.1905f,66.6667f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeVertex ch120st1[] = +{ + {78.5715f,66.6667f}, + {26.1905f,0.0000f} +}; + +static const GLUTStrokeStrip ch120st[] = +{ + {2,ch120st0}, + {2,ch120st1} +}; + +static const GLUTStrokeChar ch120 = {104.7619f,2,ch120st}; + +/* char: 0x79 */ + +static const GLUTStrokeVertex ch121st0[] = +{ + {26.1905f,66.6667f}, + {54.7619f,0.0000f} +}; + +static const GLUTStrokeVertex ch121st1[] = +{ + {83.3334f,66.6667f}, + {54.7619f,0.0000f}, + {45.2381f,-19.0476f}, + {35.7143f,-28.5714f}, + {26.1905f,-33.3333f}, + {21.4286f,-33.3333f} +}; + +static const GLUTStrokeStrip ch121st[] = +{ + {2,ch121st0}, + {6,ch121st1} +}; + +static const GLUTStrokeChar ch121 = {104.7619f,2,ch121st}; + +/* char: 0x7a */ + +static const GLUTStrokeVertex ch122st0[] = +{ + {78.5715f,66.6667f}, + {26.1905f,0.0000f} +}; + +static const GLUTStrokeVertex ch122st1[] = +{ + {26.1905f,66.6667f}, + {78.5715f,66.6667f} +}; + +static const GLUTStrokeVertex ch122st2[] = +{ + {26.1905f,0.0000f}, + {78.5715f,0.0000f} +}; + +static const GLUTStrokeStrip ch122st[] = +{ + {2,ch122st0}, + {2,ch122st1}, + {2,ch122st2} +}; + +static const GLUTStrokeChar ch122 = {104.7619f,3,ch122st}; + +/* char: 0x7b */ + +static const GLUTStrokeVertex ch123st0[] = +{ + {64.2857f,119.0476f}, + {54.7619f,114.2857f}, + {50.0000f,109.5238f}, + {45.2381f,100.0000f}, + {45.2381f,90.4762f}, + {50.0000f,80.9524f}, + {54.7619f,76.1905f}, + {59.5238f,66.6667f}, + {59.5238f,57.1429f}, + {50.0000f,47.6190f} +}; + +static const GLUTStrokeVertex ch123st1[] = +{ + {54.7619f,114.2857f}, + {50.0000f,104.7619f}, + {50.0000f,95.2381f}, + {54.7619f,85.7143f}, + {59.5238f,80.9524f}, + {64.2857f,71.4286f}, + {64.2857f,61.9048f}, + {59.5238f,52.3810f}, + {40.4762f,42.8571f}, + {59.5238f,33.3333f}, + {64.2857f,23.8095f}, + {64.2857f,14.2857f}, + {59.5238f,4.7619f}, + {54.7619f,0.0000f}, + {50.0000f,-9.5238f}, + {50.0000f,-19.0476f}, + {54.7619f,-28.5714f} +}; + +static const GLUTStrokeVertex ch123st2[] = +{ + {50.0000f,38.0952f}, + {59.5238f,28.5714f}, + {59.5238f,19.0476f}, + {54.7619f,9.5238f}, + {50.0000f,4.7619f}, + {45.2381f,-4.7619f}, + {45.2381f,-14.2857f}, + {50.0000f,-23.8095f}, + {54.7619f,-28.5714f}, + {64.2857f,-33.3333f} +}; + +static const GLUTStrokeStrip ch123st[] = +{ + {10,ch123st0}, + {17,ch123st1}, + {10,ch123st2} +}; + +static const GLUTStrokeChar ch123 = {104.7619f,3,ch123st}; + +/* char: 0x7c */ + +static const GLUTStrokeVertex ch124st0[] = +{ + {52.3810f,119.0476f}, + {52.3810f,-33.3333f} +}; + +static const GLUTStrokeStrip ch124st[] = +{ + {2,ch124st0} +}; + +static const GLUTStrokeChar ch124 = {104.7619f,1,ch124st}; + +/* char: 0x7d */ + +static const GLUTStrokeVertex ch125st0[] = +{ + {40.4762f,119.0476f}, + {50.0000f,114.2857f}, + {54.7619f,109.5238f}, + {59.5238f,100.0000f}, + {59.5238f,90.4762f}, + {54.7619f,80.9524f}, + {50.0000f,76.1905f}, + {45.2381f,66.6667f}, + {45.2381f,57.1429f}, + {54.7619f,47.6190f} +}; + +static const GLUTStrokeVertex ch125st1[] = +{ + {50.0000f,114.2857f}, + {54.7619f,104.7619f}, + {54.7619f,95.2381f}, + {50.0000f,85.7143f}, + {45.2381f,80.9524f}, + {40.4762f,71.4286f}, + {40.4762f,61.9048f}, + {45.2381f,52.3810f}, + {64.2857f,42.8571f}, + {45.2381f,33.3333f}, + {40.4762f,23.8095f}, + {40.4762f,14.2857f}, + {45.2381f,4.7619f}, + {50.0000f,0.0000f}, + {54.7619f,-9.5238f}, + {54.7619f,-19.0476f}, + {50.0000f,-28.5714f} +}; + +static const GLUTStrokeVertex ch125st2[] = +{ + {54.7619f,38.0952f}, + {45.2381f,28.5714f}, + {45.2381f,19.0476f}, + {50.0000f,9.5238f}, + {54.7619f,4.7619f}, + {59.5238f,-4.7619f}, + {59.5238f,-14.2857f}, + {54.7619f,-23.8095f}, + {50.0000f,-28.5714f}, + {40.4762f,-33.3333f} +}; + +static const GLUTStrokeStrip ch125st[] = +{ + {10,ch125st0}, + {17,ch125st1}, + {10,ch125st2} +}; + +static const GLUTStrokeChar ch125 = {104.7619f,3,ch125st}; + +/* char: 0x7e */ + +static const GLUTStrokeVertex ch126st0[] = +{ + {9.5238f,28.5714f}, + {9.5238f,38.0952f}, + {14.2857f,52.3810f}, + {23.8095f,57.1429f}, + {33.3333f,57.1429f}, + {42.8571f,52.3810f}, + {61.9048f,38.0952f}, + {71.4286f,33.3333f}, + {80.9524f,33.3333f}, + {90.4762f,38.0952f}, + {95.2381f,47.6190f} +}; + +static const GLUTStrokeVertex ch126st1[] = +{ + {9.5238f,38.0952f}, + {14.2857f,47.6190f}, + {23.8095f,52.3810f}, + {33.3333f,52.3810f}, + {42.8571f,47.6190f}, + {61.9048f,33.3333f}, + {71.4286f,28.5714f}, + {80.9524f,28.5714f}, + {90.4762f,33.3333f}, + {95.2381f,47.6190f}, + {95.2381f,57.1429f} +}; + +static const GLUTStrokeStrip ch126st[] = +{ + {11,ch126st0}, + {11,ch126st1} +}; + +static const GLUTStrokeChar ch126 = {104.7619f,2,ch126st}; + +static const GLUTStrokeChar *chars[] = +{ + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126 +}; + +const GLUTStrokeFont glutStrokeMonoRoman = {"MonoRoman",128,chars,152.3809f,33.3333f}; diff --git a/src/glut/dos/overlay.c b/src/glut/dos/overlay.c index 11941e0b95..46d3a39577 100644 --- a/src/glut/dos/overlay.c +++ b/src/glut/dos/overlay.c @@ -1,33 +1,29 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.3 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -#include "glutint.h" +#include "internal.h" int APIENTRY @@ -89,3 +85,9 @@ void APIENTRY glutHideOverlay (void) { } + + +void APIENTRY +glutPostWindowOverlayRedisplay (int win) +{ +} diff --git a/src/glut/dos/roman.c b/src/glut/dos/roman.c new file mode 100644 index 0000000000..89867c8f6c --- /dev/null +++ b/src/glut/dos/roman.c @@ -0,0 +1,2783 @@ + +/* GENERATED FILE -- DO NOT MODIFY */ + +#include "internal.h" + +/* char: 0x20 */ + +static const GLUTStrokeStrip ch32st[] = +{ +}; + +static const GLUTStrokeChar ch32 = {104.7619f,0,ch32st}; + +/* char: 0x21 */ + +static const GLUTStrokeVertex ch33st0[] = +{ + {13.3819f,100.0000f}, + {13.3819f,33.3333f} +}; + +static const GLUTStrokeVertex ch33st1[] = +{ + {13.3819f,9.5238f}, + {8.6200f,4.7619f}, + {13.3819f,0.0000f}, + {18.1438f,4.7619f}, + {13.3819f,9.5238f} +}; + +static const GLUTStrokeStrip ch33st[] = +{ + {2,ch33st0}, + {5,ch33st1} +}; + +static const GLUTStrokeChar ch33 = {26.6238f,2,ch33st}; + +/* char: 0x22 */ + +static const GLUTStrokeVertex ch34st0[] = +{ + {4.0200f,100.0000f}, + {4.0200f,66.6667f} +}; + +static const GLUTStrokeVertex ch34st1[] = +{ + {42.1152f,100.0000f}, + {42.1152f,66.6667f} +}; + +static const GLUTStrokeStrip ch34st[] = +{ + {2,ch34st0}, + {2,ch34st1} +}; + +static const GLUTStrokeChar ch34 = {51.4352f,2,ch34st}; + +/* char: 0x23 */ + +static const GLUTStrokeVertex ch35st0[] = +{ + {41.2952f,119.0476f}, + {7.9619f,-33.3333f} +}; + +static const GLUTStrokeVertex ch35st1[] = +{ + {69.8667f,119.0476f}, + {36.5333f,-33.3333f} +}; + +static const GLUTStrokeVertex ch35st2[] = +{ + {7.9619f,57.1429f}, + {74.6286f,57.1429f} +}; + +static const GLUTStrokeVertex ch35st3[] = +{ + {3.2000f,28.5714f}, + {69.8667f,28.5714f} +}; + +static const GLUTStrokeStrip ch35st[] = +{ + {2,ch35st0}, + {2,ch35st1}, + {2,ch35st2}, + {2,ch35st3} +}; + +static const GLUTStrokeChar ch35 = {79.4886f,4,ch35st}; + +/* char: 0x24 */ + +static const GLUTStrokeVertex ch36st0[] = +{ + {28.6295f,119.0476f}, + {28.6295f,-19.0476f} +}; + +static const GLUTStrokeVertex ch36st1[] = +{ + {47.6771f,119.0476f}, + {47.6771f,-19.0476f} +}; + +static const GLUTStrokeVertex ch36st2[] = +{ + {71.4867f,85.7143f}, + {61.9629f,95.2381f}, + {47.6771f,100.0000f}, + {28.6295f,100.0000f}, + {14.3438f,95.2381f}, + {4.8200f,85.7143f}, + {4.8200f,76.1905f}, + {9.5819f,66.6667f}, + {14.3438f,61.9048f}, + {23.8676f,57.1429f}, + {52.4390f,47.6190f}, + {61.9629f,42.8571f}, + {66.7248f,38.0952f}, + {71.4867f,28.5714f}, + {71.4867f,14.2857f}, + {61.9629f,4.7619f}, + {47.6771f,0.0000f}, + {28.6295f,0.0000f}, + {14.3438f,4.7619f}, + {4.8200f,14.2857f} +}; + +static const GLUTStrokeStrip ch36st[] = +{ + {2,ch36st0}, + {2,ch36st1}, + {20,ch36st2} +}; + +static const GLUTStrokeChar ch36 = {76.2067f,3,ch36st}; + +/* char: 0x25 */ + +static const GLUTStrokeVertex ch37st0[] = +{ + {92.0743f,100.0000f}, + {6.3600f,0.0000f} +}; + +static const GLUTStrokeVertex ch37st1[] = +{ + {30.1695f,100.0000f}, + {39.6933f,90.4762f}, + {39.6933f,80.9524f}, + {34.9314f,71.4286f}, + {25.4076f,66.6667f}, + {15.8838f,66.6667f}, + {6.3600f,76.1905f}, + {6.3600f,85.7143f}, + {11.1219f,95.2381f}, + {20.6457f,100.0000f}, + {30.1695f,100.0000f}, + {39.6933f,95.2381f}, + {53.9790f,90.4762f}, + {68.2648f,90.4762f}, + {82.5505f,95.2381f}, + {92.0743f,100.0000f} +}; + +static const GLUTStrokeVertex ch37st2[] = +{ + {73.0267f,33.3333f}, + {63.5029f,28.5714f}, + {58.7410f,19.0476f}, + {58.7410f,9.5238f}, + {68.2648f,0.0000f}, + {77.7886f,0.0000f}, + {87.3124f,4.7619f}, + {92.0743f,14.2857f}, + {92.0743f,23.8095f}, + {82.5505f,33.3333f}, + {73.0267f,33.3333f} +}; + +static const GLUTStrokeStrip ch37st[] = +{ + {2,ch37st0}, + {16,ch37st1}, + {11,ch37st2} +}; + +static const GLUTStrokeChar ch37 = {96.5743f,3,ch37st}; + +/* char: 0x26 */ + +static const GLUTStrokeVertex ch38st0[] = +{ + {101.2181f,57.1429f}, + {101.2181f,61.9048f}, + {96.4562f,66.6667f}, + {91.6943f,66.6667f}, + {86.9324f,61.9048f}, + {82.1705f,52.3810f}, + {72.6467f,28.5714f}, + {63.1229f,14.2857f}, + {53.5990f,4.7619f}, + {44.0752f,0.0000f}, + {25.0276f,0.0000f}, + {15.5038f,4.7619f}, + {10.7419f,9.5238f}, + {5.9800f,19.0476f}, + {5.9800f,28.5714f}, + {10.7419f,38.0952f}, + {15.5038f,42.8571f}, + {48.8371f,61.9048f}, + {53.5990f,66.6667f}, + {58.3610f,76.1905f}, + {58.3610f,85.7143f}, + {53.5990f,95.2381f}, + {44.0752f,100.0000f}, + {34.5514f,95.2381f}, + {29.7895f,85.7143f}, + {29.7895f,76.1905f}, + {34.5514f,61.9048f}, + {44.0752f,47.6190f}, + {67.8848f,14.2857f}, + {77.4086f,4.7619f}, + {86.9324f,0.0000f}, + {96.4562f,0.0000f}, + {101.2181f,4.7619f}, + {101.2181f,9.5238f} +}; + +static const GLUTStrokeStrip ch38st[] = +{ + {34,ch38st0} +}; + +static const GLUTStrokeChar ch38 = {101.7581f,1,ch38st}; + +/* char: 0x27 */ + +static const GLUTStrokeVertex ch39st0[] = +{ + {4.4400f,100.0000f}, + {4.4400f,66.6667f} +}; + +static const GLUTStrokeStrip ch39st[] = +{ + {2,ch39st0} +}; + +static const GLUTStrokeChar ch39 = {13.6200f,1,ch39st}; + +/* char: 0x28 */ + +static const GLUTStrokeVertex ch40st0[] = +{ + {40.9133f,119.0476f}, + {31.3895f,109.5238f}, + {21.8657f,95.2381f}, + {12.3419f,76.1905f}, + {7.5800f,52.3810f}, + {7.5800f,33.3333f}, + {12.3419f,9.5238f}, + {21.8657f,-9.5238f}, + {31.3895f,-23.8095f}, + {40.9133f,-33.3333f} +}; + +static const GLUTStrokeStrip ch40st[] = +{ + {10,ch40st0} +}; + +static const GLUTStrokeChar ch40 = {47.1733f,1,ch40st}; + +/* char: 0x29 */ + +static const GLUTStrokeVertex ch41st0[] = +{ + {5.2800f,119.0476f}, + {14.8038f,109.5238f}, + {24.3276f,95.2381f}, + {33.8514f,76.1905f}, + {38.6133f,52.3810f}, + {38.6133f,33.3333f}, + {33.8514f,9.5238f}, + {24.3276f,-9.5238f}, + {14.8038f,-23.8095f}, + {5.2800f,-33.3333f} +}; + +static const GLUTStrokeStrip ch41st[] = +{ + {10,ch41st0} +}; + +static const GLUTStrokeChar ch41 = {47.5333f,1,ch41st}; + +/* char: 0x2a */ + +static const GLUTStrokeVertex ch42st0[] = +{ + {30.7695f,71.4286f}, + {30.7695f,14.2857f} +}; + +static const GLUTStrokeVertex ch42st1[] = +{ + {6.9600f,57.1429f}, + {54.5790f,28.5714f} +}; + +static const GLUTStrokeVertex ch42st2[] = +{ + {54.5790f,57.1429f}, + {6.9600f,28.5714f} +}; + +static const GLUTStrokeStrip ch42st[] = +{ + {2,ch42st0}, + {2,ch42st1}, + {2,ch42st2} +}; + +static const GLUTStrokeChar ch42 = {59.4390f,3,ch42st}; + +/* char: 0x2b */ + +static const GLUTStrokeVertex ch43st0[] = +{ + {48.8371f,85.7143f}, + {48.8371f,0.0000f} +}; + +static const GLUTStrokeVertex ch43st1[] = +{ + {5.9800f,42.8571f}, + {91.6943f,42.8571f} +}; + +static const GLUTStrokeStrip ch43st[] = +{ + {2,ch43st0}, + {2,ch43st1} +}; + +static const GLUTStrokeChar ch43 = {97.2543f,2,ch43st}; + +/* char: 0x2c */ + +static const GLUTStrokeVertex ch44st0[] = +{ + {18.2838f,4.7619f}, + {13.5219f,0.0000f}, + {8.7600f,4.7619f}, + {13.5219f,9.5238f}, + {18.2838f,4.7619f}, + {18.2838f,-4.7619f}, + {13.5219f,-14.2857f}, + {8.7600f,-19.0476f} +}; + +static const GLUTStrokeStrip ch44st[] = +{ + {8,ch44st0} +}; + +static const GLUTStrokeChar ch44 = {26.0638f,1,ch44st}; + +/* char: 0x2d */ + +static const GLUTStrokeVertex ch45st0[] = +{ + {7.3800f,42.8571f}, + {93.0943f,42.8571f} +}; + +static const GLUTStrokeStrip ch45st[] = +{ + {2,ch45st0} +}; + +static const GLUTStrokeChar ch45 = {100.7543f,1,ch45st}; + +/* char: 0x2e */ + +static const GLUTStrokeVertex ch46st0[] = +{ + {13.1019f,9.5238f}, + {8.3400f,4.7619f}, + {13.1019f,0.0000f}, + {17.8638f,4.7619f}, + {13.1019f,9.5238f} +}; + +static const GLUTStrokeStrip ch46st[] = +{ + {5,ch46st0} +}; + +static const GLUTStrokeChar ch46 = {26.4838f,1,ch46st}; + +/* char: 0x2f */ + +static const GLUTStrokeVertex ch47st0[] = +{ + {7.2400f,-14.2857f}, + {73.9067f,100.0000f} +}; + +static const GLUTStrokeStrip ch47st[] = +{ + {2,ch47st0} +}; + +static const GLUTStrokeChar ch47 = {82.1067f,1,ch47st}; + +/* char: 0x30 */ + +static const GLUTStrokeVertex ch48st0[] = +{ + {33.5514f,100.0000f}, + {19.2657f,95.2381f}, + {9.7419f,80.9524f}, + {4.9800f,57.1429f}, + {4.9800f,42.8571f}, + {9.7419f,19.0476f}, + {19.2657f,4.7619f}, + {33.5514f,0.0000f}, + {43.0752f,0.0000f}, + {57.3610f,4.7619f}, + {66.8848f,19.0476f}, + {71.6467f,42.8571f}, + {71.6467f,57.1429f}, + {66.8848f,80.9524f}, + {57.3610f,95.2381f}, + {43.0752f,100.0000f}, + {33.5514f,100.0000f} +}; + +static const GLUTStrokeStrip ch48st[] = +{ + {17,ch48st0} +}; + +static const GLUTStrokeChar ch48 = {77.0667f,1,ch48st}; + +/* char: 0x31 */ + +static const GLUTStrokeVertex ch49st0[] = +{ + {11.8200f,80.9524f}, + {21.3438f,85.7143f}, + {35.6295f,100.0000f}, + {35.6295f,0.0000f} +}; + +static const GLUTStrokeStrip ch49st[] = +{ + {4,ch49st0} +}; + +static const GLUTStrokeChar ch49 = {66.5295f,1,ch49st}; + +/* char: 0x32 */ + +static const GLUTStrokeVertex ch50st0[] = +{ + {10.1819f,76.1905f}, + {10.1819f,80.9524f}, + {14.9438f,90.4762f}, + {19.7057f,95.2381f}, + {29.2295f,100.0000f}, + {48.2771f,100.0000f}, + {57.8010f,95.2381f}, + {62.5629f,90.4762f}, + {67.3248f,80.9524f}, + {67.3248f,71.4286f}, + {62.5629f,61.9048f}, + {53.0390f,47.6190f}, + {5.4200f,0.0000f}, + {72.0867f,0.0000f} +}; + +static const GLUTStrokeStrip ch50st[] = +{ + {14,ch50st0} +}; + +static const GLUTStrokeChar ch50 = {77.6467f,1,ch50st}; + +/* char: 0x33 */ + +static const GLUTStrokeVertex ch51st0[] = +{ + {14.5238f,100.0000f}, + {66.9048f,100.0000f}, + {38.3333f,61.9048f}, + {52.6190f,61.9048f}, + {62.1429f,57.1429f}, + {66.9048f,52.3810f}, + {71.6667f,38.0952f}, + {71.6667f,28.5714f}, + {66.9048f,14.2857f}, + {57.3810f,4.7619f}, + {43.0952f,0.0000f}, + {28.8095f,0.0000f}, + {14.5238f,4.7619f}, + {9.7619f,9.5238f}, + {5.0000f,19.0476f} +}; + +static const GLUTStrokeStrip ch51st[] = +{ + {15,ch51st0} +}; + +static const GLUTStrokeChar ch51 = {77.0467f,1,ch51st}; + +/* char: 0x34 */ + +static const GLUTStrokeVertex ch52st0[] = +{ + {51.4990f,100.0000f}, + {3.8800f,33.3333f}, + {75.3086f,33.3333f} +}; + +static const GLUTStrokeVertex ch52st1[] = +{ + {51.4990f,100.0000f}, + {51.4990f,0.0000f} +}; + +static const GLUTStrokeStrip ch52st[] = +{ + {3,ch52st0}, + {2,ch52st1} +}; + +static const GLUTStrokeChar ch52 = {80.1686f,2,ch52st}; + +/* char: 0x35 */ + +static const GLUTStrokeVertex ch53st0[] = +{ + {62.0029f,100.0000f}, + {14.3838f,100.0000f}, + {9.6219f,57.1429f}, + {14.3838f,61.9048f}, + {28.6695f,66.6667f}, + {42.9552f,66.6667f}, + {57.2410f,61.9048f}, + {66.7648f,52.3810f}, + {71.5267f,38.0952f}, + {71.5267f,28.5714f}, + {66.7648f,14.2857f}, + {57.2410f,4.7619f}, + {42.9552f,0.0000f}, + {28.6695f,0.0000f}, + {14.3838f,4.7619f}, + {9.6219f,9.5238f}, + {4.8600f,19.0476f} +}; + +static const GLUTStrokeStrip ch53st[] = +{ + {17,ch53st0} +}; + +static const GLUTStrokeChar ch53 = {77.6867f,1,ch53st}; + +/* char: 0x36 */ + +static const GLUTStrokeVertex ch54st0[] = +{ + {62.7229f,85.7143f}, + {57.9610f,95.2381f}, + {43.6752f,100.0000f}, + {34.1514f,100.0000f}, + {19.8657f,95.2381f}, + {10.3419f,80.9524f}, + {5.5800f,57.1429f}, + {5.5800f,33.3333f}, + {10.3419f,14.2857f}, + {19.8657f,4.7619f}, + {34.1514f,0.0000f}, + {38.9133f,0.0000f}, + {53.1990f,4.7619f}, + {62.7229f,14.2857f}, + {67.4848f,28.5714f}, + {67.4848f,33.3333f}, + {62.7229f,47.6190f}, + {53.1990f,57.1429f}, + {38.9133f,61.9048f}, + {34.1514f,61.9048f}, + {19.8657f,57.1429f}, + {10.3419f,47.6190f}, + {5.5800f,33.3333f} +}; + +static const GLUTStrokeStrip ch54st[] = +{ + {23,ch54st0} +}; + +static const GLUTStrokeChar ch54 = {73.8048f,1,ch54st}; + +/* char: 0x37 */ + +static const GLUTStrokeVertex ch55st0[] = +{ + {72.2267f,100.0000f}, + {24.6076f,0.0000f} +}; + +static const GLUTStrokeVertex ch55st1[] = +{ + {5.5600f,100.0000f}, + {72.2267f,100.0000f} +}; + +static const GLUTStrokeStrip ch55st[] = +{ + {2,ch55st0}, + {2,ch55st1} +}; + +static const GLUTStrokeChar ch55 = {77.2267f,2,ch55st}; + +/* char: 0x38 */ + +static const GLUTStrokeVertex ch56st0[] = +{ + {29.4095f,100.0000f}, + {15.1238f,95.2381f}, + {10.3619f,85.7143f}, + {10.3619f,76.1905f}, + {15.1238f,66.6667f}, + {24.6476f,61.9048f}, + {43.6952f,57.1429f}, + {57.9810f,52.3810f}, + {67.5048f,42.8571f}, + {72.2667f,33.3333f}, + {72.2667f,19.0476f}, + {67.5048f,9.5238f}, + {62.7429f,4.7619f}, + {48.4571f,0.0000f}, + {29.4095f,0.0000f}, + {15.1238f,4.7619f}, + {10.3619f,9.5238f}, + {5.6000f,19.0476f}, + {5.6000f,33.3333f}, + {10.3619f,42.8571f}, + {19.8857f,52.3810f}, + {34.1714f,57.1429f}, + {53.2190f,61.9048f}, + {62.7429f,66.6667f}, + {67.5048f,76.1905f}, + {67.5048f,85.7143f}, + {62.7429f,95.2381f}, + {48.4571f,100.0000f}, + {29.4095f,100.0000f} +}; + +static const GLUTStrokeStrip ch56st[] = +{ + {29,ch56st0} +}; + +static const GLUTStrokeChar ch56 = {77.6667f,1,ch56st}; + +/* char: 0x39 */ + +static const GLUTStrokeVertex ch57st0[] = +{ + {68.5048f,66.6667f}, + {63.7429f,52.3810f}, + {54.2190f,42.8571f}, + {39.9333f,38.0952f}, + {35.1714f,38.0952f}, + {20.8857f,42.8571f}, + {11.3619f,52.3810f}, + {6.6000f,66.6667f}, + {6.6000f,71.4286f}, + {11.3619f,85.7143f}, + {20.8857f,95.2381f}, + {35.1714f,100.0000f}, + {39.9333f,100.0000f}, + {54.2190f,95.2381f}, + {63.7429f,85.7143f}, + {68.5048f,66.6667f}, + {68.5048f,42.8571f}, + {63.7429f,19.0476f}, + {54.2190f,4.7619f}, + {39.9333f,0.0000f}, + {30.4095f,0.0000f}, + {16.1238f,4.7619f}, + {11.3619f,14.2857f} +}; + +static const GLUTStrokeStrip ch57st[] = +{ + {23,ch57st0} +}; + +static const GLUTStrokeChar ch57 = {74.0648f,1,ch57st}; + +/* char: 0x3a */ + +static const GLUTStrokeVertex ch58st0[] = +{ + {14.0819f,66.6667f}, + {9.3200f,61.9048f}, + {14.0819f,57.1429f}, + {18.8438f,61.9048f}, + {14.0819f,66.6667f} +}; + +static const GLUTStrokeVertex ch58st1[] = +{ + {14.0819f,9.5238f}, + {9.3200f,4.7619f}, + {14.0819f,0.0000f}, + {18.8438f,4.7619f}, + {14.0819f,9.5238f} +}; + +static const GLUTStrokeStrip ch58st[] = +{ + {5,ch58st0}, + {5,ch58st1} +}; + +static const GLUTStrokeChar ch58 = {26.2238f,2,ch58st}; + +/* char: 0x3b */ + +static const GLUTStrokeVertex ch59st0[] = +{ + {12.9619f,66.6667f}, + {8.2000f,61.9048f}, + {12.9619f,57.1429f}, + {17.7238f,61.9048f}, + {12.9619f,66.6667f} +}; + +static const GLUTStrokeVertex ch59st1[] = +{ + {17.7238f,4.7619f}, + {12.9619f,0.0000f}, + {8.2000f,4.7619f}, + {12.9619f,9.5238f}, + {17.7238f,4.7619f}, + {17.7238f,-4.7619f}, + {12.9619f,-14.2857f}, + {8.2000f,-19.0476f} +}; + +static const GLUTStrokeStrip ch59st[] = +{ + {5,ch59st0}, + {8,ch59st1} +}; + +static const GLUTStrokeChar ch59 = {26.3038f,2,ch59st}; + +/* char: 0x3c */ + +static const GLUTStrokeVertex ch60st0[] = +{ + {79.2505f,85.7143f}, + {3.0600f,42.8571f}, + {79.2505f,0.0000f} +}; + +static const GLUTStrokeStrip ch60st[] = +{ + {3,ch60st0} +}; + +static const GLUTStrokeChar ch60 = {81.6105f,1,ch60st}; + +/* char: 0x3d */ + +static const GLUTStrokeVertex ch61st0[] = +{ + {5.7000f,57.1429f}, + {91.4143f,57.1429f} +}; + +static const GLUTStrokeVertex ch61st1[] = +{ + {5.7000f,28.5714f}, + {91.4143f,28.5714f} +}; + +static const GLUTStrokeStrip ch61st[] = +{ + {2,ch61st0}, + {2,ch61st1} +}; + +static const GLUTStrokeChar ch61 = {97.2543f,2,ch61st}; + +/* char: 0x3e */ + +static const GLUTStrokeVertex ch62st0[] = +{ + {2.7800f,85.7143f}, + {78.9705f,42.8571f}, + {2.7800f,0.0000f} +}; + +static const GLUTStrokeStrip ch62st[] = +{ + {3,ch62st0} +}; + +static const GLUTStrokeChar ch62 = {81.6105f,1,ch62st}; + +/* char: 0x3f */ + +static const GLUTStrokeVertex ch63st0[] = +{ + {8.4200f,76.1905f}, + {8.4200f,80.9524f}, + {13.1819f,90.4762f}, + {17.9438f,95.2381f}, + {27.4676f,100.0000f}, + {46.5152f,100.0000f}, + {56.0390f,95.2381f}, + {60.8010f,90.4762f}, + {65.5629f,80.9524f}, + {65.5629f,71.4286f}, + {60.8010f,61.9048f}, + {56.0390f,57.1429f}, + {36.9914f,47.6190f}, + {36.9914f,33.3333f} +}; + +static const GLUTStrokeVertex ch63st1[] = +{ + {36.9914f,9.5238f}, + {32.2295f,4.7619f}, + {36.9914f,0.0000f}, + {41.7533f,4.7619f}, + {36.9914f,9.5238f} +}; + +static const GLUTStrokeStrip ch63st[] = +{ + {14,ch63st0}, + {5,ch63st1} +}; + +static const GLUTStrokeChar ch63 = {73.9029f,2,ch63st}; + +/* char: 0x40 */ + +static const GLUTStrokeVertex ch64st0[] = +{ + {49.2171f,52.3810f}, + {39.6933f,57.1429f}, + {30.1695f,57.1429f}, + {25.4076f,47.6190f}, + {25.4076f,42.8571f}, + {30.1695f,33.3333f}, + {39.6933f,33.3333f}, + {49.2171f,38.0952f} +}; + +static const GLUTStrokeVertex ch64st1[] = +{ + {49.2171f,57.1429f}, + {49.2171f,38.0952f}, + {53.9790f,33.3333f}, + {63.5029f,33.3333f}, + {68.2648f,42.8571f}, + {68.2648f,47.6190f}, + {63.5029f,61.9048f}, + {53.9790f,71.4286f}, + {39.6933f,76.1905f}, + {34.9314f,76.1905f}, + {20.6457f,71.4286f}, + {11.1219f,61.9048f}, + {6.3600f,47.6190f}, + {6.3600f,42.8571f}, + {11.1219f,28.5714f}, + {20.6457f,19.0476f}, + {34.9314f,14.2857f}, + {39.6933f,14.2857f}, + {53.9790f,19.0476f} +}; + +static const GLUTStrokeStrip ch64st[] = +{ + {8,ch64st0}, + {19,ch64st1} +}; + +static const GLUTStrokeChar ch64 = {74.3648f,2,ch64st}; + +/* char: 0x41 */ + +static const GLUTStrokeVertex ch65st0[] = +{ + {40.5952f,100.0000f}, + {2.5000f,0.0000f} +}; + +static const GLUTStrokeVertex ch65st1[] = +{ + {40.5952f,100.0000f}, + {78.6905f,0.0000f} +}; + +static const GLUTStrokeVertex ch65st2[] = +{ + {16.7857f,33.3333f}, + {64.4048f,33.3333f} +}; + +static const GLUTStrokeStrip ch65st[] = +{ + {2,ch65st0}, + {2,ch65st1}, + {2,ch65st2} +}; + +static const GLUTStrokeChar ch65 = {80.4905f,3,ch65st}; + +/* char: 0x42 */ + +static const GLUTStrokeVertex ch66st0[] = +{ + {11.4200f,100.0000f}, + {11.4200f,0.0000f} +}; + +static const GLUTStrokeVertex ch66st1[] = +{ + {11.4200f,100.0000f}, + {54.2771f,100.0000f}, + {68.5629f,95.2381f}, + {73.3248f,90.4762f}, + {78.0867f,80.9524f}, + {78.0867f,71.4286f}, + {73.3248f,61.9048f}, + {68.5629f,57.1429f}, + {54.2771f,52.3810f} +}; + +static const GLUTStrokeVertex ch66st2[] = +{ + {11.4200f,52.3810f}, + {54.2771f,52.3810f}, + {68.5629f,47.6190f}, + {73.3248f,42.8571f}, + {78.0867f,33.3333f}, + {78.0867f,19.0476f}, + {73.3248f,9.5238f}, + {68.5629f,4.7619f}, + {54.2771f,0.0000f}, + {11.4200f,0.0000f} +}; + +static const GLUTStrokeStrip ch66st[] = +{ + {2,ch66st0}, + {9,ch66st1}, + {10,ch66st2} +}; + +static const GLUTStrokeChar ch66 = {83.6267f,3,ch66st}; + +/* char: 0x43 */ + +static const GLUTStrokeVertex ch67st0[] = +{ + {78.0886f,76.1905f}, + {73.3267f,85.7143f}, + {63.8029f,95.2381f}, + {54.2790f,100.0000f}, + {35.2314f,100.0000f}, + {25.7076f,95.2381f}, + {16.1838f,85.7143f}, + {11.4219f,76.1905f}, + {6.6600f,61.9048f}, + {6.6600f,38.0952f}, + {11.4219f,23.8095f}, + {16.1838f,14.2857f}, + {25.7076f,4.7619f}, + {35.2314f,0.0000f}, + {54.2790f,0.0000f}, + {63.8029f,4.7619f}, + {73.3267f,14.2857f}, + {78.0886f,23.8095f} +}; + +static const GLUTStrokeStrip ch67st[] = +{ + {18,ch67st0} +}; + +static const GLUTStrokeChar ch67 = {84.4886f,1,ch67st}; + +/* char: 0x44 */ + +static const GLUTStrokeVertex ch68st0[] = +{ + {11.9600f,100.0000f}, + {11.9600f,0.0000f} +}; + +static const GLUTStrokeVertex ch68st1[] = +{ + {11.9600f,100.0000f}, + {45.2933f,100.0000f}, + {59.5790f,95.2381f}, + {69.1029f,85.7143f}, + {73.8648f,76.1905f}, + {78.6267f,61.9048f}, + {78.6267f,38.0952f}, + {73.8648f,23.8095f}, + {69.1029f,14.2857f}, + {59.5790f,4.7619f}, + {45.2933f,0.0000f}, + {11.9600f,0.0000f} +}; + +static const GLUTStrokeStrip ch68st[] = +{ + {2,ch68st0}, + {12,ch68st1} +}; + +static const GLUTStrokeChar ch68 = {85.2867f,2,ch68st}; + +/* char: 0x45 */ + +static const GLUTStrokeVertex ch69st0[] = +{ + {11.4200f,100.0000f}, + {11.4200f,0.0000f} +}; + +static const GLUTStrokeVertex ch69st1[] = +{ + {11.4200f,100.0000f}, + {73.3248f,100.0000f} +}; + +static const GLUTStrokeVertex ch69st2[] = +{ + {11.4200f,52.3810f}, + {49.5152f,52.3810f} +}; + +static const GLUTStrokeVertex ch69st3[] = +{ + {11.4200f,0.0000f}, + {73.3248f,0.0000f} +}; + +static const GLUTStrokeStrip ch69st[] = +{ + {2,ch69st0}, + {2,ch69st1}, + {2,ch69st2}, + {2,ch69st3} +}; + +static const GLUTStrokeChar ch69 = {78.1848f,4,ch69st}; + +/* char: 0x46 */ + +static const GLUTStrokeVertex ch70st0[] = +{ + {11.4200f,100.0000f}, + {11.4200f,0.0000f} +}; + +static const GLUTStrokeVertex ch70st1[] = +{ + {11.4200f,100.0000f}, + {73.3248f,100.0000f} +}; + +static const GLUTStrokeVertex ch70st2[] = +{ + {11.4200f,52.3810f}, + {49.5152f,52.3810f} +}; + +static const GLUTStrokeStrip ch70st[] = +{ + {2,ch70st0}, + {2,ch70st1}, + {2,ch70st2} +}; + +static const GLUTStrokeChar ch70 = {78.7448f,3,ch70st}; + +/* char: 0x47 */ + +static const GLUTStrokeVertex ch71st0[] = +{ + {78.4886f,76.1905f}, + {73.7267f,85.7143f}, + {64.2029f,95.2381f}, + {54.6790f,100.0000f}, + {35.6314f,100.0000f}, + {26.1076f,95.2381f}, + {16.5838f,85.7143f}, + {11.8219f,76.1905f}, + {7.0600f,61.9048f}, + {7.0600f,38.0952f}, + {11.8219f,23.8095f}, + {16.5838f,14.2857f}, + {26.1076f,4.7619f}, + {35.6314f,0.0000f}, + {54.6790f,0.0000f}, + {64.2029f,4.7619f}, + {73.7267f,14.2857f}, + {78.4886f,23.8095f}, + {78.4886f,38.0952f} +}; + +static const GLUTStrokeVertex ch71st1[] = +{ + {54.6790f,38.0952f}, + {78.4886f,38.0952f} +}; + +static const GLUTStrokeStrip ch71st[] = +{ + {19,ch71st0}, + {2,ch71st1} +}; + +static const GLUTStrokeChar ch71 = {89.7686f,2,ch71st}; + +/* char: 0x48 */ + +static const GLUTStrokeVertex ch72st0[] = +{ + {11.4200f,100.0000f}, + {11.4200f,0.0000f} +}; + +static const GLUTStrokeVertex ch72st1[] = +{ + {78.0867f,100.0000f}, + {78.0867f,0.0000f} +}; + +static const GLUTStrokeVertex ch72st2[] = +{ + {11.4200f,52.3810f}, + {78.0867f,52.3810f} +}; + +static const GLUTStrokeStrip ch72st[] = +{ + {2,ch72st0}, + {2,ch72st1}, + {2,ch72st2} +}; + +static const GLUTStrokeChar ch72 = {89.0867f,3,ch72st}; + +/* char: 0x49 */ + +static const GLUTStrokeVertex ch73st0[] = +{ + {10.8600f,100.0000f}, + {10.8600f,0.0000f} +}; + +static const GLUTStrokeStrip ch73st[] = +{ + {2,ch73st0} +}; + +static const GLUTStrokeChar ch73 = {21.3000f,1,ch73st}; + +/* char: 0x4a */ + +static const GLUTStrokeVertex ch74st0[] = +{ + {50.1190f,100.0000f}, + {50.1190f,23.8095f}, + {45.3571f,9.5238f}, + {40.5952f,4.7619f}, + {31.0714f,0.0000f}, + {21.5476f,0.0000f}, + {12.0238f,4.7619f}, + {7.2619f,9.5238f}, + {2.5000f,23.8095f}, + {2.5000f,33.3333f} +}; + +static const GLUTStrokeStrip ch74st[] = +{ + {10,ch74st0} +}; + +static const GLUTStrokeChar ch74 = {59.9990f,1,ch74st}; + +/* char: 0x4b */ + +static const GLUTStrokeVertex ch75st0[] = +{ + {11.2800f,100.0000f}, + {11.2800f,0.0000f} +}; + +static const GLUTStrokeVertex ch75st1[] = +{ + {77.9467f,100.0000f}, + {11.2800f,33.3333f} +}; + +static const GLUTStrokeVertex ch75st2[] = +{ + {35.0895f,57.1429f}, + {77.9467f,0.0000f} +}; + +static const GLUTStrokeStrip ch75st[] = +{ + {2,ch75st0}, + {2,ch75st1}, + {2,ch75st2} +}; + +static const GLUTStrokeChar ch75 = {79.3267f,3,ch75st}; + +/* char: 0x4c */ + +static const GLUTStrokeVertex ch76st0[] = +{ + {11.6800f,100.0000f}, + {11.6800f,0.0000f} +}; + +static const GLUTStrokeVertex ch76st1[] = +{ + {11.6800f,0.0000f}, + {68.8229f,0.0000f} +}; + +static const GLUTStrokeStrip ch76st[] = +{ + {2,ch76st0}, + {2,ch76st1} +}; + +static const GLUTStrokeChar ch76 = {71.3229f,2,ch76st}; + +/* char: 0x4d */ + +static const GLUTStrokeVertex ch77st0[] = +{ + {10.8600f,100.0000f}, + {10.8600f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st1[] = +{ + {10.8600f,100.0000f}, + {48.9552f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st2[] = +{ + {87.0505f,100.0000f}, + {48.9552f,0.0000f} +}; + +static const GLUTStrokeVertex ch77st3[] = +{ + {87.0505f,100.0000f}, + {87.0505f,0.0000f} +}; + +static const GLUTStrokeStrip ch77st[] = +{ + {2,ch77st0}, + {2,ch77st1}, + {2,ch77st2}, + {2,ch77st3} +}; + +static const GLUTStrokeChar ch77 = {97.2105f,4,ch77st}; + +/* char: 0x4e */ + +static const GLUTStrokeVertex ch78st0[] = +{ + {11.1400f,100.0000f}, + {11.1400f,0.0000f} +}; + +static const GLUTStrokeVertex ch78st1[] = +{ + {11.1400f,100.0000f}, + {77.8067f,0.0000f} +}; + +static const GLUTStrokeVertex ch78st2[] = +{ + {77.8067f,100.0000f}, + {77.8067f,0.0000f} +}; + +static const GLUTStrokeStrip ch78st[] = +{ + {2,ch78st0}, + {2,ch78st1}, + {2,ch78st2} +}; + +static const GLUTStrokeChar ch78 = {88.8067f,3,ch78st}; + +/* char: 0x4f */ + +static const GLUTStrokeVertex ch79st0[] = +{ + {34.8114f,100.0000f}, + {25.2876f,95.2381f}, + {15.7638f,85.7143f}, + {11.0019f,76.1905f}, + {6.2400f,61.9048f}, + {6.2400f,38.0952f}, + {11.0019f,23.8095f}, + {15.7638f,14.2857f}, + {25.2876f,4.7619f}, + {34.8114f,0.0000f}, + {53.8590f,0.0000f}, + {63.3829f,4.7619f}, + {72.9067f,14.2857f}, + {77.6686f,23.8095f}, + {82.4305f,38.0952f}, + {82.4305f,61.9048f}, + {77.6686f,76.1905f}, + {72.9067f,85.7143f}, + {63.3829f,95.2381f}, + {53.8590f,100.0000f}, + {34.8114f,100.0000f} +}; + +static const GLUTStrokeStrip ch79st[] = +{ + {21,ch79st0} +}; + +static const GLUTStrokeChar ch79 = {88.8305f,1,ch79st}; + +/* char: 0x50 */ + +static const GLUTStrokeVertex ch80st0[] = +{ + {12.1000f,100.0000f}, + {12.1000f,0.0000f} +}; + +static const GLUTStrokeVertex ch80st1[] = +{ + {12.1000f,100.0000f}, + {54.9571f,100.0000f}, + {69.2429f,95.2381f}, + {74.0048f,90.4762f}, + {78.7667f,80.9524f}, + {78.7667f,66.6667f}, + {74.0048f,57.1429f}, + {69.2429f,52.3810f}, + {54.9571f,47.6190f}, + {12.1000f,47.6190f} +}; + +static const GLUTStrokeStrip ch80st[] = +{ + {2,ch80st0}, + {10,ch80st1} +}; + +static const GLUTStrokeChar ch80 = {85.6667f,2,ch80st}; + +/* char: 0x51 */ + +static const GLUTStrokeVertex ch81st0[] = +{ + {33.8714f,100.0000f}, + {24.3476f,95.2381f}, + {14.8238f,85.7143f}, + {10.0619f,76.1905f}, + {5.3000f,61.9048f}, + {5.3000f,38.0952f}, + {10.0619f,23.8095f}, + {14.8238f,14.2857f}, + {24.3476f,4.7619f}, + {33.8714f,0.0000f}, + {52.9190f,0.0000f}, + {62.4429f,4.7619f}, + {71.9667f,14.2857f}, + {76.7286f,23.8095f}, + {81.4905f,38.0952f}, + {81.4905f,61.9048f}, + {76.7286f,76.1905f}, + {71.9667f,85.7143f}, + {62.4429f,95.2381f}, + {52.9190f,100.0000f}, + {33.8714f,100.0000f} +}; + +static const GLUTStrokeVertex ch81st1[] = +{ + {48.1571f,19.0476f}, + {76.7286f,-9.5238f} +}; + +static const GLUTStrokeStrip ch81st[] = +{ + {21,ch81st0}, + {2,ch81st1} +}; + +static const GLUTStrokeChar ch81 = {88.0905f,2,ch81st}; + +/* char: 0x52 */ + +static const GLUTStrokeVertex ch82st0[] = +{ + {11.6800f,100.0000f}, + {11.6800f,0.0000f} +}; + +static const GLUTStrokeVertex ch82st1[] = +{ + {11.6800f,100.0000f}, + {54.5371f,100.0000f}, + {68.8229f,95.2381f}, + {73.5848f,90.4762f}, + {78.3467f,80.9524f}, + {78.3467f,71.4286f}, + {73.5848f,61.9048f}, + {68.8229f,57.1429f}, + {54.5371f,52.3810f}, + {11.6800f,52.3810f} +}; + +static const GLUTStrokeVertex ch82st2[] = +{ + {45.0133f,52.3810f}, + {78.3467f,0.0000f} +}; + +static const GLUTStrokeStrip ch82st[] = +{ + {2,ch82st0}, + {10,ch82st1}, + {2,ch82st2} +}; + +static const GLUTStrokeChar ch82 = {82.3667f,3,ch82st}; + +/* char: 0x53 */ + +static const GLUTStrokeVertex ch83st0[] = +{ + {74.6667f,85.7143f}, + {65.1429f,95.2381f}, + {50.8571f,100.0000f}, + {31.8095f,100.0000f}, + {17.5238f,95.2381f}, + {8.0000f,85.7143f}, + {8.0000f,76.1905f}, + {12.7619f,66.6667f}, + {17.5238f,61.9048f}, + {27.0476f,57.1429f}, + {55.6190f,47.6190f}, + {65.1429f,42.8571f}, + {69.9048f,38.0952f}, + {74.6667f,28.5714f}, + {74.6667f,14.2857f}, + {65.1429f,4.7619f}, + {50.8571f,0.0000f}, + {31.8095f,0.0000f}, + {17.5238f,4.7619f}, + {8.0000f,14.2857f} +}; + +static const GLUTStrokeStrip ch83st[] = +{ + {20,ch83st0} +}; + +static const GLUTStrokeChar ch83 = {80.8267f,1,ch83st}; + +/* char: 0x54 */ + +static const GLUTStrokeVertex ch84st0[] = +{ + {35.6933f,100.0000f}, + {35.6933f,0.0000f} +}; + +static const GLUTStrokeVertex ch84st1[] = +{ + {2.3600f,100.0000f}, + {69.0267f,100.0000f} +}; + +static const GLUTStrokeStrip ch84st[] = +{ + {2,ch84st0}, + {2,ch84st1} +}; + +static const GLUTStrokeChar ch84 = {71.9467f,2,ch84st}; + +/* char: 0x55 */ + +static const GLUTStrokeVertex ch85st0[] = +{ + {11.5400f,100.0000f}, + {11.5400f,28.5714f}, + {16.3019f,14.2857f}, + {25.8257f,4.7619f}, + {40.1114f,0.0000f}, + {49.6352f,0.0000f}, + {63.9210f,4.7619f}, + {73.4448f,14.2857f}, + {78.2067f,28.5714f}, + {78.2067f,100.0000f} +}; + +static const GLUTStrokeStrip ch85st[] = +{ + {10,ch85st0} +}; + +static const GLUTStrokeChar ch85 = {89.4867f,1,ch85st}; + +/* char: 0x56 */ + +static const GLUTStrokeVertex ch86st0[] = +{ + {2.3600f,100.0000f}, + {40.4552f,0.0000f} +}; + +static const GLUTStrokeVertex ch86st1[] = +{ + {78.5505f,100.0000f}, + {40.4552f,0.0000f} +}; + +static const GLUTStrokeStrip ch86st[] = +{ + {2,ch86st0}, + {2,ch86st1} +}; + +static const GLUTStrokeChar ch86 = {81.6105f,2,ch86st}; + +/* char: 0x57 */ + +static const GLUTStrokeVertex ch87st0[] = +{ + {2.2200f,100.0000f}, + {26.0295f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st1[] = +{ + {49.8390f,100.0000f}, + {26.0295f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st2[] = +{ + {49.8390f,100.0000f}, + {73.6486f,0.0000f} +}; + +static const GLUTStrokeVertex ch87st3[] = +{ + {97.4581f,100.0000f}, + {73.6486f,0.0000f} +}; + +static const GLUTStrokeStrip ch87st[] = +{ + {2,ch87st0}, + {2,ch87st1}, + {2,ch87st2}, + {2,ch87st3} +}; + +static const GLUTStrokeChar ch87 = {100.5181f,4,ch87st}; + +/* char: 0x58 */ + +static const GLUTStrokeVertex ch88st0[] = +{ + {2.5000f,100.0000f}, + {69.1667f,0.0000f} +}; + +static const GLUTStrokeVertex ch88st1[] = +{ + {69.1667f,100.0000f}, + {2.5000f,0.0000f} +}; + +static const GLUTStrokeStrip ch88st[] = +{ + {2,ch88st0}, + {2,ch88st1} +}; + +static const GLUTStrokeChar ch88 = {72.3667f,2,ch88st}; + +/* char: 0x59 */ + +static const GLUTStrokeVertex ch89st0[] = +{ + {1.5200f,100.0000f}, + {39.6152f,52.3810f}, + {39.6152f,0.0000f} +}; + +static const GLUTStrokeVertex ch89st1[] = +{ + {77.7105f,100.0000f}, + {39.6152f,52.3810f} +}; + +static const GLUTStrokeStrip ch89st[] = +{ + {3,ch89st0}, + {2,ch89st1} +}; + +static const GLUTStrokeChar ch89 = {79.6505f,2,ch89st}; + +/* char: 0x5a */ + +static const GLUTStrokeVertex ch90st0[] = +{ + {69.1667f,100.0000f}, + {2.5000f,0.0000f} +}; + +static const GLUTStrokeVertex ch90st1[] = +{ + {2.5000f,100.0000f}, + {69.1667f,100.0000f} +}; + +static const GLUTStrokeVertex ch90st2[] = +{ + {2.5000f,0.0000f}, + {69.1667f,0.0000f} +}; + +static const GLUTStrokeStrip ch90st[] = +{ + {2,ch90st0}, + {2,ch90st1}, + {2,ch90st2} +}; + +static const GLUTStrokeChar ch90 = {73.7467f,3,ch90st}; + +/* char: 0x5b */ + +static const GLUTStrokeVertex ch91st0[] = +{ + {7.7800f,119.0476f}, + {7.7800f,-33.3333f} +}; + +static const GLUTStrokeVertex ch91st1[] = +{ + {12.5419f,119.0476f}, + {12.5419f,-33.3333f} +}; + +static const GLUTStrokeVertex ch91st2[] = +{ + {7.7800f,119.0476f}, + {41.1133f,119.0476f} +}; + +static const GLUTStrokeVertex ch91st3[] = +{ + {7.7800f,-33.3333f}, + {41.1133f,-33.3333f} +}; + +static const GLUTStrokeStrip ch91st[] = +{ + {2,ch91st0}, + {2,ch91st1}, + {2,ch91st2}, + {2,ch91st3} +}; + +static const GLUTStrokeChar ch91 = {46.1133f,4,ch91st}; + +/* char: 0x5c */ + +static const GLUTStrokeVertex ch92st0[] = +{ + {5.8400f,100.0000f}, + {72.5067f,-14.2857f} +}; + +static const GLUTStrokeStrip ch92st[] = +{ + {2,ch92st0} +}; + +static const GLUTStrokeChar ch92 = {78.2067f,1,ch92st}; + +/* char: 0x5d */ + +static const GLUTStrokeVertex ch93st0[] = +{ + {33.0114f,119.0476f}, + {33.0114f,-33.3333f} +}; + +static const GLUTStrokeVertex ch93st1[] = +{ + {37.7733f,119.0476f}, + {37.7733f,-33.3333f} +}; + +static const GLUTStrokeVertex ch93st2[] = +{ + {4.4400f,119.0476f}, + {37.7733f,119.0476f} +}; + +static const GLUTStrokeVertex ch93st3[] = +{ + {4.4400f,-33.3333f}, + {37.7733f,-33.3333f} +}; + +static const GLUTStrokeStrip ch93st[] = +{ + {2,ch93st0}, + {2,ch93st1}, + {2,ch93st2}, + {2,ch93st3} +}; + +static const GLUTStrokeChar ch93 = {46.3933f,4,ch93st}; + +/* char: 0x5e */ + +static const GLUTStrokeVertex ch94st0[] = +{ + {44.0752f,109.5238f}, + {5.9800f,42.8571f} +}; + +static const GLUTStrokeVertex ch94st1[] = +{ + {44.0752f,109.5238f}, + {82.1705f,42.8571f} +}; + +static const GLUTStrokeStrip ch94st[] = +{ + {2,ch94st0}, + {2,ch94st1} +}; + +static const GLUTStrokeChar ch94 = {90.2305f,2,ch94st}; + +/* char: 0x5f */ + +static const GLUTStrokeVertex ch95st0[] = +{ + {-1.1000f,-33.3333f}, + {103.6619f,-33.3333f}, + {103.6619f,-28.5714f}, + {-1.1000f,-28.5714f}, + {-1.1000f,-33.3333f} +}; + +static const GLUTStrokeStrip ch95st[] = +{ + {5,ch95st0} +}; + +static const GLUTStrokeChar ch95 = {104.0619f,1,ch95st}; + +/* char: 0x60 */ + +static const GLUTStrokeVertex ch96st0[] = +{ + {33.0219f,100.0000f}, + {56.8314f,71.4286f} +}; + +static const GLUTStrokeVertex ch96st1[] = +{ + {33.0219f,100.0000f}, + {28.2600f,95.2381f}, + {56.8314f,71.4286f} +}; + +static const GLUTStrokeStrip ch96st[] = +{ + {2,ch96st0}, + {3,ch96st1} +}; + +static const GLUTStrokeChar ch96 = {83.5714f,2,ch96st}; + +/* char: 0x61 */ + +static const GLUTStrokeVertex ch97st0[] = +{ + {63.8229f,66.6667f}, + {63.8229f,0.0000f} +}; + +static const GLUTStrokeVertex ch97st1[] = +{ + {63.8229f,52.3810f}, + {54.2990f,61.9048f}, + {44.7752f,66.6667f}, + {30.4895f,66.6667f}, + {20.9657f,61.9048f}, + {11.4419f,52.3810f}, + {6.6800f,38.0952f}, + {6.6800f,28.5714f}, + {11.4419f,14.2857f}, + {20.9657f,4.7619f}, + {30.4895f,0.0000f}, + {44.7752f,0.0000f}, + {54.2990f,4.7619f}, + {63.8229f,14.2857f} +}; + +static const GLUTStrokeStrip ch97st[] = +{ + {2,ch97st0}, + {14,ch97st1} +}; + +static const GLUTStrokeChar ch97 = {66.6029f,2,ch97st}; + +/* char: 0x62 */ + +static const GLUTStrokeVertex ch98st0[] = +{ + {8.7600f,100.0000f}, + {8.7600f,0.0000f} +}; + +static const GLUTStrokeVertex ch98st1[] = +{ + {8.7600f,52.3810f}, + {18.2838f,61.9048f}, + {27.8076f,66.6667f}, + {42.0933f,66.6667f}, + {51.6171f,61.9048f}, + {61.1410f,52.3810f}, + {65.9029f,38.0952f}, + {65.9029f,28.5714f}, + {61.1410f,14.2857f}, + {51.6171f,4.7619f}, + {42.0933f,0.0000f}, + {27.8076f,0.0000f}, + {18.2838f,4.7619f}, + {8.7600f,14.2857f} +}; + +static const GLUTStrokeStrip ch98st[] = +{ + {2,ch98st0}, + {14,ch98st1} +}; + +static const GLUTStrokeChar ch98 = {70.4629f,2,ch98st}; + +/* char: 0x63 */ + +static const GLUTStrokeVertex ch99st0[] = +{ + {62.6629f,52.3810f}, + {53.1390f,61.9048f}, + {43.6152f,66.6667f}, + {29.3295f,66.6667f}, + {19.8057f,61.9048f}, + {10.2819f,52.3810f}, + {5.5200f,38.0952f}, + {5.5200f,28.5714f}, + {10.2819f,14.2857f}, + {19.8057f,4.7619f}, + {29.3295f,0.0000f}, + {43.6152f,0.0000f}, + {53.1390f,4.7619f}, + {62.6629f,14.2857f} +}; + +static const GLUTStrokeStrip ch99st[] = +{ + {14,ch99st0} +}; + +static const GLUTStrokeChar ch99 = {68.9229f,1,ch99st}; + +/* char: 0x64 */ + +static const GLUTStrokeVertex ch100st0[] = +{ + {61.7829f,100.0000f}, + {61.7829f,0.0000f} +}; + +static const GLUTStrokeVertex ch100st1[] = +{ + {61.7829f,52.3810f}, + {52.2590f,61.9048f}, + {42.7352f,66.6667f}, + {28.4495f,66.6667f}, + {18.9257f,61.9048f}, + {9.4019f,52.3810f}, + {4.6400f,38.0952f}, + {4.6400f,28.5714f}, + {9.4019f,14.2857f}, + {18.9257f,4.7619f}, + {28.4495f,0.0000f}, + {42.7352f,0.0000f}, + {52.2590f,4.7619f}, + {61.7829f,14.2857f} +}; + +static const GLUTStrokeStrip ch100st[] = +{ + {2,ch100st0}, + {14,ch100st1} +}; + +static const GLUTStrokeChar ch100 = {70.2629f,2,ch100st}; + +/* char: 0x65 */ + +static const GLUTStrokeVertex ch101st0[] = +{ + {5.7200f,38.0952f}, + {62.8629f,38.0952f}, + {62.8629f,47.6190f}, + {58.1010f,57.1429f}, + {53.3390f,61.9048f}, + {43.8152f,66.6667f}, + {29.5295f,66.6667f}, + {20.0057f,61.9048f}, + {10.4819f,52.3810f}, + {5.7200f,38.0952f}, + {5.7200f,28.5714f}, + {10.4819f,14.2857f}, + {20.0057f,4.7619f}, + {29.5295f,0.0000f}, + {43.8152f,0.0000f}, + {53.3390f,4.7619f}, + {62.8629f,14.2857f} +}; + +static const GLUTStrokeStrip ch101st[] = +{ + {17,ch101st0} +}; + +static const GLUTStrokeChar ch101 = {68.5229f,1,ch101st}; + +/* char: 0x66 */ + +static const GLUTStrokeVertex ch102st0[] = +{ + {38.7752f,100.0000f}, + {29.2514f,100.0000f}, + {19.7276f,95.2381f}, + {14.9657f,80.9524f}, + {14.9657f,0.0000f} +}; + +static const GLUTStrokeVertex ch102st1[] = +{ + {0.6800f,66.6667f}, + {34.0133f,66.6667f} +}; + +static const GLUTStrokeStrip ch102st[] = +{ + {5,ch102st0}, + {2,ch102st1} +}; + +static const GLUTStrokeChar ch102 = {38.6552f,2,ch102st}; + +/* char: 0x67 */ + +static const GLUTStrokeVertex ch103st0[] = +{ + {62.5029f,66.6667f}, + {62.5029f,-9.5238f}, + {57.7410f,-23.8095f}, + {52.9790f,-28.5714f}, + {43.4552f,-33.3333f}, + {29.1695f,-33.3333f}, + {19.6457f,-28.5714f} +}; + +static const GLUTStrokeVertex ch103st1[] = +{ + {62.5029f,52.3810f}, + {52.9790f,61.9048f}, + {43.4552f,66.6667f}, + {29.1695f,66.6667f}, + {19.6457f,61.9048f}, + {10.1219f,52.3810f}, + {5.3600f,38.0952f}, + {5.3600f,28.5714f}, + {10.1219f,14.2857f}, + {19.6457f,4.7619f}, + {29.1695f,0.0000f}, + {43.4552f,0.0000f}, + {52.9790f,4.7619f}, + {62.5029f,14.2857f} +}; + +static const GLUTStrokeStrip ch103st[] = +{ + {7,ch103st0}, + {14,ch103st1} +}; + +static const GLUTStrokeChar ch103 = {70.9829f,2,ch103st}; + +/* char: 0x68 */ + +static const GLUTStrokeVertex ch104st0[] = +{ + {9.6000f,100.0000f}, + {9.6000f,0.0000f} +}; + +static const GLUTStrokeVertex ch104st1[] = +{ + {9.6000f,47.6190f}, + {23.8857f,61.9048f}, + {33.4095f,66.6667f}, + {47.6952f,66.6667f}, + {57.2190f,61.9048f}, + {61.9810f,47.6190f}, + {61.9810f,0.0000f} +}; + +static const GLUTStrokeStrip ch104st[] = +{ + {2,ch104st0}, + {7,ch104st1} +}; + +static const GLUTStrokeChar ch104 = {71.0210f,2,ch104st}; + +/* char: 0x69 */ + +static const GLUTStrokeVertex ch105st0[] = +{ + {10.0200f,100.0000f}, + {14.7819f,95.2381f}, + {19.5438f,100.0000f}, + {14.7819f,104.7619f}, + {10.0200f,100.0000f} +}; + +static const GLUTStrokeVertex ch105st1[] = +{ + {14.7819f,66.6667f}, + {14.7819f,0.0000f} +}; + +static const GLUTStrokeStrip ch105st[] = +{ + {5,ch105st0}, + {2,ch105st1} +}; + +static const GLUTStrokeChar ch105 = {28.8638f,2,ch105st}; + +/* char: 0x6a */ + +static const GLUTStrokeVertex ch106st0[] = +{ + {17.3876f,100.0000f}, + {22.1495f,95.2381f}, + {26.9114f,100.0000f}, + {22.1495f,104.7619f}, + {17.3876f,100.0000f} +}; + +static const GLUTStrokeVertex ch106st1[] = +{ + {22.1495f,66.6667f}, + {22.1495f,-14.2857f}, + {17.3876f,-28.5714f}, + {7.8638f,-33.3333f}, + {-1.6600f,-33.3333f} +}; + +static const GLUTStrokeStrip ch106st[] = +{ + {5,ch106st0}, + {5,ch106st1} +}; + +static const GLUTStrokeChar ch106 = {36.2314f,2,ch106st}; + +/* char: 0x6b */ + +static const GLUTStrokeVertex ch107st0[] = +{ + {9.6000f,100.0000f}, + {9.6000f,0.0000f} +}; + +static const GLUTStrokeVertex ch107st1[] = +{ + {57.2190f,66.6667f}, + {9.6000f,19.0476f} +}; + +static const GLUTStrokeVertex ch107st2[] = +{ + {28.6476f,38.0952f}, + {61.9810f,0.0000f} +}; + +static const GLUTStrokeStrip ch107st[] = +{ + {2,ch107st0}, + {2,ch107st1}, + {2,ch107st2} +}; + +static const GLUTStrokeChar ch107 = {62.5210f,3,ch107st}; + +/* char: 0x6c */ + +static const GLUTStrokeVertex ch108st0[] = +{ + {10.0200f,100.0000f}, + {10.0200f,0.0000f} +}; + +static const GLUTStrokeStrip ch108st[] = +{ + {2,ch108st0} +}; + +static const GLUTStrokeChar ch108 = {19.3400f,1,ch108st}; + +/* char: 0x6d */ + +static const GLUTStrokeVertex ch109st0[] = +{ + {9.6000f,66.6667f}, + {9.6000f,0.0000f} +}; + +static const GLUTStrokeVertex ch109st1[] = +{ + {9.6000f,47.6190f}, + {23.8857f,61.9048f}, + {33.4095f,66.6667f}, + {47.6952f,66.6667f}, + {57.2190f,61.9048f}, + {61.9810f,47.6190f}, + {61.9810f,0.0000f} +}; + +static const GLUTStrokeVertex ch109st2[] = +{ + {61.9810f,47.6190f}, + {76.2667f,61.9048f}, + {85.7905f,66.6667f}, + {100.0762f,66.6667f}, + {109.6000f,61.9048f}, + {114.3619f,47.6190f}, + {114.3619f,0.0000f} +}; + +static const GLUTStrokeStrip ch109st[] = +{ + {2,ch109st0}, + {7,ch109st1}, + {7,ch109st2} +}; + +static const GLUTStrokeChar ch109 = {123.9619f,3,ch109st}; + +/* char: 0x6e */ + +static const GLUTStrokeVertex ch110st0[] = +{ + {9.1800f,66.6667f}, + {9.1800f,0.0000f} +}; + +static const GLUTStrokeVertex ch110st1[] = +{ + {9.1800f,47.6190f}, + {23.4657f,61.9048f}, + {32.9895f,66.6667f}, + {47.2752f,66.6667f}, + {56.7990f,61.9048f}, + {61.5610f,47.6190f}, + {61.5610f,0.0000f} +}; + +static const GLUTStrokeStrip ch110st[] = +{ + {2,ch110st0}, + {7,ch110st1} +}; + +static const GLUTStrokeChar ch110 = {70.8810f,2,ch110st}; + +/* char: 0x6f */ + +static const GLUTStrokeVertex ch111st0[] = +{ + {28.7895f,66.6667f}, + {19.2657f,61.9048f}, + {9.7419f,52.3810f}, + {4.9800f,38.0952f}, + {4.9800f,28.5714f}, + {9.7419f,14.2857f}, + {19.2657f,4.7619f}, + {28.7895f,0.0000f}, + {43.0752f,0.0000f}, + {52.5990f,4.7619f}, + {62.1229f,14.2857f}, + {66.8848f,28.5714f}, + {66.8848f,38.0952f}, + {62.1229f,52.3810f}, + {52.5990f,61.9048f}, + {43.0752f,66.6667f}, + {28.7895f,66.6667f} +}; + +static const GLUTStrokeStrip ch111st[] = +{ + {17,ch111st0} +}; + +static const GLUTStrokeChar ch111 = {71.7448f,1,ch111st}; + +/* char: 0x70 */ + +static const GLUTStrokeVertex ch112st0[] = +{ + {9.4600f,66.6667f}, + {9.4600f,-33.3333f} +}; + +static const GLUTStrokeVertex ch112st1[] = +{ + {9.4600f,52.3810f}, + {18.9838f,61.9048f}, + {28.5076f,66.6667f}, + {42.7933f,66.6667f}, + {52.3171f,61.9048f}, + {61.8410f,52.3810f}, + {66.6029f,38.0952f}, + {66.6029f,28.5714f}, + {61.8410f,14.2857f}, + {52.3171f,4.7619f}, + {42.7933f,0.0000f}, + {28.5076f,0.0000f}, + {18.9838f,4.7619f}, + {9.4600f,14.2857f} +}; + +static const GLUTStrokeStrip ch112st[] = +{ + {2,ch112st0}, + {14,ch112st1} +}; + +static const GLUTStrokeChar ch112 = {70.8029f,2,ch112st}; + +/* char: 0x71 */ + +static const GLUTStrokeVertex ch113st0[] = +{ + {61.9829f,66.6667f}, + {61.9829f,-33.3333f} +}; + +static const GLUTStrokeVertex ch113st1[] = +{ + {61.9829f,52.3810f}, + {52.4590f,61.9048f}, + {42.9352f,66.6667f}, + {28.6495f,66.6667f}, + {19.1257f,61.9048f}, + {9.6019f,52.3810f}, + {4.8400f,38.0952f}, + {4.8400f,28.5714f}, + {9.6019f,14.2857f}, + {19.1257f,4.7619f}, + {28.6495f,0.0000f}, + {42.9352f,0.0000f}, + {52.4590f,4.7619f}, + {61.9829f,14.2857f} +}; + +static const GLUTStrokeStrip ch113st[] = +{ + {2,ch113st0}, + {14,ch113st1} +}; + +static const GLUTStrokeChar ch113 = {70.7429f,2,ch113st}; + +/* char: 0x72 */ + +static const GLUTStrokeVertex ch114st0[] = +{ + {9.4600f,66.6667f}, + {9.4600f,0.0000f} +}; + +static const GLUTStrokeVertex ch114st1[] = +{ + {9.4600f,38.0952f}, + {14.2219f,52.3810f}, + {23.7457f,61.9048f}, + {33.2695f,66.6667f}, + {47.5552f,66.6667f} +}; + +static const GLUTStrokeStrip ch114st[] = +{ + {2,ch114st0}, + {5,ch114st1} +}; + +static const GLUTStrokeChar ch114 = {49.4952f,2,ch114st}; + +/* char: 0x73 */ + +static const GLUTStrokeVertex ch115st0[] = +{ + {57.0810f,52.3810f}, + {52.3190f,61.9048f}, + {38.0333f,66.6667f}, + {23.7476f,66.6667f}, + {9.4619f,61.9048f}, + {4.7000f,52.3810f}, + {9.4619f,42.8571f}, + {18.9857f,38.0952f}, + {42.7952f,33.3333f}, + {52.3190f,28.5714f}, + {57.0810f,19.0476f}, + {57.0810f,14.2857f}, + {52.3190f,4.7619f}, + {38.0333f,0.0000f}, + {23.7476f,0.0000f}, + {9.4619f,4.7619f}, + {4.7000f,14.2857f} +}; + +static const GLUTStrokeStrip ch115st[] = +{ + {17,ch115st0} +}; + +static const GLUTStrokeChar ch115 = {62.3210f,1,ch115st}; + +/* char: 0x74 */ + +static const GLUTStrokeVertex ch116st0[] = +{ + {14.8257f,100.0000f}, + {14.8257f,19.0476f}, + {19.5876f,4.7619f}, + {29.1114f,0.0000f}, + {38.6352f,0.0000f} +}; + +static const GLUTStrokeVertex ch116st1[] = +{ + {0.5400f,66.6667f}, + {33.8733f,66.6667f} +}; + +static const GLUTStrokeStrip ch116st[] = +{ + {5,ch116st0}, + {2,ch116st1} +}; + +static const GLUTStrokeChar ch116 = {39.3152f,2,ch116st}; + +/* char: 0x75 */ + +static const GLUTStrokeVertex ch117st0[] = +{ + {9.4600f,66.6667f}, + {9.4600f,19.0476f}, + {14.2219f,4.7619f}, + {23.7457f,0.0000f}, + {38.0314f,0.0000f}, + {47.5552f,4.7619f}, + {61.8410f,19.0476f} +}; + +static const GLUTStrokeVertex ch117st1[] = +{ + {61.8410f,66.6667f}, + {61.8410f,0.0000f} +}; + +static const GLUTStrokeStrip ch117st[] = +{ + {7,ch117st0}, + {2,ch117st1} +}; + +static const GLUTStrokeChar ch117 = {71.1610f,2,ch117st}; + +/* char: 0x76 */ + +static const GLUTStrokeVertex ch118st0[] = +{ + {1.8000f,66.6667f}, + {30.3714f,0.0000f} +}; + +static const GLUTStrokeVertex ch118st1[] = +{ + {58.9429f,66.6667f}, + {30.3714f,0.0000f} +}; + +static const GLUTStrokeStrip ch118st[] = +{ + {2,ch118st0}, + {2,ch118st1} +}; + +static const GLUTStrokeChar ch118 = {60.6029f,2,ch118st}; + +/* char: 0x77 */ + +static const GLUTStrokeVertex ch119st0[] = +{ + {2.5000f,66.6667f}, + {21.5476f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st1[] = +{ + {40.5952f,66.6667f}, + {21.5476f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st2[] = +{ + {40.5952f,66.6667f}, + {59.6429f,0.0000f} +}; + +static const GLUTStrokeVertex ch119st3[] = +{ + {78.6905f,66.6667f}, + {59.6429f,0.0000f} +}; + +static const GLUTStrokeStrip ch119st[] = +{ + {2,ch119st0}, + {2,ch119st1}, + {2,ch119st2}, + {2,ch119st3} +}; + +static const GLUTStrokeChar ch119 = {80.4905f,4,ch119st}; + +/* char: 0x78 */ + +static const GLUTStrokeVertex ch120st0[] = +{ + {1.6600f,66.6667f}, + {54.0410f,0.0000f} +}; + +static const GLUTStrokeVertex ch120st1[] = +{ + {54.0410f,66.6667f}, + {1.6600f,0.0000f} +}; + +static const GLUTStrokeStrip ch120st[] = +{ + {2,ch120st0}, + {2,ch120st1} +}; + +static const GLUTStrokeChar ch120 = {56.4010f,2,ch120st}; + +/* char: 0x79 */ + +static const GLUTStrokeVertex ch121st0[] = +{ + {6.5619f,66.6667f}, + {35.1333f,0.0000f} +}; + +static const GLUTStrokeVertex ch121st1[] = +{ + {63.7048f,66.6667f}, + {35.1333f,0.0000f}, + {25.6095f,-19.0476f}, + {16.0857f,-28.5714f}, + {6.5619f,-33.3333f}, + {1.8000f,-33.3333f} +}; + +static const GLUTStrokeStrip ch121st[] = +{ + {2,ch121st0}, + {6,ch121st1} +}; + +static const GLUTStrokeChar ch121 = {66.0648f,2,ch121st}; + +/* char: 0x7a */ + +static const GLUTStrokeVertex ch122st0[] = +{ + {56.8210f,66.6667f}, + {4.4400f,0.0000f} +}; + +static const GLUTStrokeVertex ch122st1[] = +{ + {4.4400f,66.6667f}, + {56.8210f,66.6667f} +}; + +static const GLUTStrokeVertex ch122st2[] = +{ + {4.4400f,0.0000f}, + {56.8210f,0.0000f} +}; + +static const GLUTStrokeStrip ch122st[] = +{ + {2,ch122st0}, + {2,ch122st1}, + {2,ch122st2} +}; + +static const GLUTStrokeChar ch122 = {61.8210f,3,ch122st}; + +/* char: 0x7b */ + +static const GLUTStrokeVertex ch123st0[] = +{ + {31.1895f,119.0476f}, + {21.6657f,114.2857f}, + {16.9038f,109.5238f}, + {12.1419f,100.0000f}, + {12.1419f,90.4762f}, + {16.9038f,80.9524f}, + {21.6657f,76.1905f}, + {26.4276f,66.6667f}, + {26.4276f,57.1429f}, + {16.9038f,47.6190f} +}; + +static const GLUTStrokeVertex ch123st1[] = +{ + {21.6657f,114.2857f}, + {16.9038f,104.7619f}, + {16.9038f,95.2381f}, + {21.6657f,85.7143f}, + {26.4276f,80.9524f}, + {31.1895f,71.4286f}, + {31.1895f,61.9048f}, + {26.4276f,52.3810f}, + {7.3800f,42.8571f}, + {26.4276f,33.3333f}, + {31.1895f,23.8095f}, + {31.1895f,14.2857f}, + {26.4276f,4.7619f}, + {21.6657f,0.0000f}, + {16.9038f,-9.5238f}, + {16.9038f,-19.0476f}, + {21.6657f,-28.5714f} +}; + +static const GLUTStrokeVertex ch123st2[] = +{ + {16.9038f,38.0952f}, + {26.4276f,28.5714f}, + {26.4276f,19.0476f}, + {21.6657f,9.5238f}, + {16.9038f,4.7619f}, + {12.1419f,-4.7619f}, + {12.1419f,-14.2857f}, + {16.9038f,-23.8095f}, + {21.6657f,-28.5714f}, + {31.1895f,-33.3333f} +}; + +static const GLUTStrokeStrip ch123st[] = +{ + {10,ch123st0}, + {17,ch123st1}, + {10,ch123st2} +}; + +static const GLUTStrokeChar ch123 = {41.6295f,3,ch123st}; + +/* char: 0x7c */ + +static const GLUTStrokeVertex ch124st0[] = +{ + {11.5400f,119.0476f}, + {11.5400f,-33.3333f} +}; + +static const GLUTStrokeStrip ch124st[] = +{ + {2,ch124st0} +}; + +static const GLUTStrokeChar ch124 = {23.7800f,1,ch124st}; + +/* char: 0x7d */ + +static const GLUTStrokeVertex ch125st0[] = +{ + {9.1800f,119.0476f}, + {18.7038f,114.2857f}, + {23.4657f,109.5238f}, + {28.2276f,100.0000f}, + {28.2276f,90.4762f}, + {23.4657f,80.9524f}, + {18.7038f,76.1905f}, + {13.9419f,66.6667f}, + {13.9419f,57.1429f}, + {23.4657f,47.6190f} +}; + +static const GLUTStrokeVertex ch125st1[] = +{ + {18.7038f,114.2857f}, + {23.4657f,104.7619f}, + {23.4657f,95.2381f}, + {18.7038f,85.7143f}, + {13.9419f,80.9524f}, + {9.1800f,71.4286f}, + {9.1800f,61.9048f}, + {13.9419f,52.3810f}, + {32.9895f,42.8571f}, + {13.9419f,33.3333f}, + {9.1800f,23.8095f}, + {9.1800f,14.2857f}, + {13.9419f,4.7619f}, + {18.7038f,0.0000f}, + {23.4657f,-9.5238f}, + {23.4657f,-19.0476f}, + {18.7038f,-28.5714f} +}; + +static const GLUTStrokeVertex ch125st2[] = +{ + {23.4657f,38.0952f}, + {13.9419f,28.5714f}, + {13.9419f,19.0476f}, + {18.7038f,9.5238f}, + {23.4657f,4.7619f}, + {28.2276f,-4.7619f}, + {28.2276f,-14.2857f}, + {23.4657f,-23.8095f}, + {18.7038f,-28.5714f}, + {9.1800f,-33.3333f} +}; + +static const GLUTStrokeStrip ch125st[] = +{ + {10,ch125st0}, + {17,ch125st1}, + {10,ch125st2} +}; + +static const GLUTStrokeChar ch125 = {41.4695f,3,ch125st}; + +/* char: 0x7e */ + +static const GLUTStrokeVertex ch126st0[] = +{ + {2.9200f,28.5714f}, + {2.9200f,38.0952f}, + {7.6819f,52.3810f}, + {17.2057f,57.1429f}, + {26.7295f,57.1429f}, + {36.2533f,52.3810f}, + {55.3010f,38.0952f}, + {64.8248f,33.3333f}, + {74.3486f,33.3333f}, + {83.8724f,38.0952f}, + {88.6343f,47.6190f} +}; + +static const GLUTStrokeVertex ch126st1[] = +{ + {2.9200f,38.0952f}, + {7.6819f,47.6190f}, + {17.2057f,52.3810f}, + {26.7295f,52.3810f}, + {36.2533f,47.6190f}, + {55.3010f,33.3333f}, + {64.8248f,28.5714f}, + {74.3486f,28.5714f}, + {83.8724f,33.3333f}, + {88.6343f,47.6190f}, + {88.6343f,57.1429f} +}; + +static const GLUTStrokeStrip ch126st[] = +{ + {11,ch126st0}, + {11,ch126st1} +}; + +static const GLUTStrokeChar ch126 = {91.2743f,2,ch126st}; + +static const GLUTStrokeChar *chars[] = +{ + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126 +}; + +const GLUTStrokeFont glutStrokeRoman = {"Roman",128,chars,152.3809f,33.3333f}; diff --git a/src/glut/dos/shapes.c b/src/glut/dos/shapes.c new file mode 100644 index 0000000000..4edebe90ed --- /dev/null +++ b/src/glut/dos/shapes.c @@ -0,0 +1,1143 @@ +/* + * freeglut_geometry.c + * + * Freeglut geometry rendering methods. + * + * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. + * Written by Pawel W. Olszta, <olszta@sourceforge.net> + * Creation date: Fri Dec 3 1999 + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#include <math.h> +#include "internal.h" + +/* + * TODO BEFORE THE STABLE RELEASE: + * + * Following functions have been contributed by Andreas Umbach. + * + * glutWireCube() -- looks OK + * glutSolidCube() -- OK + * + * Those functions have been implemented by John Fay. + * + * glutWireTorus() -- looks OK + * glutSolidTorus() -- looks OK + * glutWireDodecahedron() -- looks OK + * glutSolidDodecahedron() -- looks OK + * glutWireOctahedron() -- looks OK + * glutSolidOctahedron() -- looks OK + * glutWireTetrahedron() -- looks OK + * glutSolidTetrahedron() -- looks OK + * glutWireIcosahedron() -- looks OK + * glutSolidIcosahedron() -- looks OK + * + * The Following functions have been updated by Nigel Stewart, based + * on FreeGLUT 2.0.0 implementations: + * + * glutWireSphere() -- looks OK + * glutSolidSphere() -- looks OK + * glutWireCone() -- looks OK + * glutSolidCone() -- looks OK + */ + + +/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ + +/* + * Draws a wireframed cube. Code contributed by Andreas Umbach <marvin@dataway.ch> + */ +void GLUTAPIENTRY glutWireCube( GLdouble dSize ) +{ + double size = dSize * 0.5; + +# define V(a,b,c) glVertex3d( a size, b size, c size ); +# define N(a,b,c) glNormal3d( a, b, c ); + + /* + * PWO: I dared to convert the code to use macros... + */ + glBegin( GL_LINE_LOOP ); N( 1.0, 0.0, 0.0); V(+,-,+); V(+,-,-); V(+,+,-); V(+,+,+); glEnd(); + glBegin( GL_LINE_LOOP ); N( 0.0, 1.0, 0.0); V(+,+,+); V(+,+,-); V(-,+,-); V(-,+,+); glEnd(); + glBegin( GL_LINE_LOOP ); N( 0.0, 0.0, 1.0); V(+,+,+); V(-,+,+); V(-,-,+); V(+,-,+); glEnd(); + glBegin( GL_LINE_LOOP ); N(-1.0, 0.0, 0.0); V(-,-,+); V(-,+,+); V(-,+,-); V(-,-,-); glEnd(); + glBegin( GL_LINE_LOOP ); N( 0.0,-1.0, 0.0); V(-,-,+); V(-,-,-); V(+,-,-); V(+,-,+); glEnd(); + glBegin( GL_LINE_LOOP ); N( 0.0, 0.0,-1.0); V(-,-,-); V(-,+,-); V(+,+,-); V(+,-,-); glEnd(); + +# undef V +# undef N +} + +/* + * Draws a solid cube. Code contributed by Andreas Umbach <marvin@dataway.ch> + */ +void GLUTAPIENTRY glutSolidCube( GLdouble dSize ) +{ + double size = dSize * 0.5; + +# define V(a,b,c) glVertex3d( a size, b size, c size ); +# define N(a,b,c) glNormal3d( a, b, c ); + + /* + * PWO: Again, I dared to convert the code to use macros... + */ + glBegin( GL_QUADS ); + N( 1.0, 0.0, 0.0); V(+,-,+); V(+,-,-); V(+,+,-); V(+,+,+); + N( 0.0, 1.0, 0.0); V(+,+,+); V(+,+,-); V(-,+,-); V(-,+,+); + N( 0.0, 0.0, 1.0); V(+,+,+); V(-,+,+); V(-,-,+); V(+,-,+); + N(-1.0, 0.0, 0.0); V(-,-,+); V(-,+,+); V(-,+,-); V(-,-,-); + N( 0.0,-1.0, 0.0); V(-,-,+); V(-,-,-); V(+,-,-); V(+,-,+); + N( 0.0, 0.0,-1.0); V(-,-,-); V(-,+,-); V(+,+,-); V(+,-,-); + glEnd(); + +# undef V +# undef N +} + +/* + * Compute lookup table of cos and sin values forming a cirle + * + * Notes: + * It is the responsibility of the caller to free these tables + * The size of the table is (n+1) to form a connected loop + * The last entry is exactly the same as the first + * The sign of n can be flipped to get the reverse loop + */ + +static void circleTable(double **sint,double **cost,const int n) +{ + int i; + + /* Table size, the sign of n flips the circle direction */ + + const int size = abs(n); + + /* Determine the angle between samples */ + + const double angle = 2*M_PI/(double)n; + + /* Allocate memory for n samples, plus duplicate of first entry at the end */ + + *sint = (double *) calloc(sizeof(double), size+1); + *cost = (double *) calloc(sizeof(double), size+1); + + /* Bail out if memory allocation fails, fgError never returns */ + + if (!(*sint) || !(*cost)) + { + free(*sint); + free(*cost); + _glut_fatal("Failed to allocate memory in circleTable"); + } + + /* Compute cos and sin around the circle */ + + for (i=0; i<size; i++) + { + (*sint)[i] = sin(angle*i); + (*cost)[i] = cos(angle*i); + } + + /* Last sample is duplicate of the first */ + + (*sint)[size] = (*sint)[0]; + (*cost)[size] = (*cost)[0]; +} + +/* + * Draws a solid sphere + */ +void GLUTAPIENTRY glutSolidSphere(GLdouble radius, GLint slices, GLint stacks) +{ + int i,j; + + /* Adjust z and radius as stacks are drawn. */ + + double z0,z1; + double r0,r1; + + /* Pre-computed circle */ + + double *sint1,*cost1; + double *sint2,*cost2; + circleTable(&sint1,&cost1,-slices); + circleTable(&sint2,&cost2,stacks*2); + + /* The top stack is covered with a triangle fan */ + + z0 = 1.0; + z1 = cost2[1]; + r0 = 0.0; + r1 = sint2[1]; + + glBegin(GL_TRIANGLE_FAN); + + glNormal3d(0,0,1); + glVertex3d(0,0,radius); + + for (j=slices; j>=0; j--) + { + glNormal3d(cost1[j]*r1, sint1[j]*r1, z1 ); + glVertex3d(cost1[j]*r1*radius, sint1[j]*r1*radius, z1*radius); + } + + glEnd(); + + /* Cover each stack with a quad strip, except the top and bottom stacks */ + + for( i=1; i<stacks-1; i++ ) + { + z0 = z1; z1 = cost2[i+1]; + r0 = r1; r1 = sint2[i+1]; + + glBegin(GL_QUAD_STRIP); + + for(j=0; j<=slices; j++) + { + glNormal3d(cost1[j]*r1, sint1[j]*r1, z1 ); + glVertex3d(cost1[j]*r1*radius, sint1[j]*r1*radius, z1*radius); + glNormal3d(cost1[j]*r0, sint1[j]*r0, z0 ); + glVertex3d(cost1[j]*r0*radius, sint1[j]*r0*radius, z0*radius); + } + + glEnd(); + } + + /* The bottom stack is covered with a triangle fan */ + + z0 = z1; + r0 = r1; + + glBegin(GL_TRIANGLE_FAN); + + glNormal3d(0,0,-1); + glVertex3d(0,0,-radius); + + for (j=0; j<=slices; j++) + { + glNormal3d(cost1[j]*r0, sint1[j]*r0, z0 ); + glVertex3d(cost1[j]*r0*radius, sint1[j]*r0*radius, z0*radius); + } + + glEnd(); + + /* Release sin and cos tables */ + + free(sint1); + free(cost1); + free(sint2); + free(cost2); +} + +/* + * Draws a solid sphere + */ +void GLUTAPIENTRY glutWireSphere(GLdouble radius, GLint slices, GLint stacks) +{ + int i,j; + + /* Adjust z and radius as stacks and slices are drawn. */ + + double r; + double x,y,z; + + /* Pre-computed circle */ + + double *sint1,*cost1; + double *sint2,*cost2; + circleTable(&sint1,&cost1,-slices ); + circleTable(&sint2,&cost2, stacks*2); + + /* Draw a line loop for each stack */ + + for (i=1; i<stacks; i++) + { + z = cost2[i]; + r = sint2[i]; + + glBegin(GL_LINE_LOOP); + + for(j=0; j<=slices; j++) + { + x = cost1[j]; + y = sint1[j]; + + glNormal3d(x,y,z); + glVertex3d(x*r*radius,y*r*radius,z*radius); + } + + glEnd(); + } + + /* Draw a line loop for each slice */ + + for (i=0; i<slices; i++) + { + glBegin(GL_LINE_STRIP); + + for(j=0; j<=stacks; j++) + { + x = cost1[i]*sint2[j]; + y = sint1[i]*sint2[j]; + z = cost2[j]; + + glNormal3d(x,y,z); + glVertex3d(x*radius,y*radius,z*radius); + } + + glEnd(); + } + + /* Release sin and cos tables */ + + free(sint1); + free(cost1); + free(sint2); + free(cost2); +} + +/* + * Draws a solid cone + */ +void GLUTAPIENTRY glutSolidCone( GLdouble base, GLdouble height, GLint slices, GLint stacks ) +{ + int i,j; + + /* Step in z and radius as stacks are drawn. */ + + double z0,z1; + double r0,r1; + + const double zStep = height/stacks; + const double rStep = base/stacks; + + /* Scaling factors for vertex normals */ + + const double cosn = ( height / sqrt ( height * height + base * base )); + const double sinn = ( base / sqrt ( height * height + base * base )); + + /* Pre-computed circle */ + + double *sint,*cost; + circleTable(&sint,&cost,-slices); + + /* Cover the circular base with a triangle fan... */ + + z0 = 0.0; + z1 = zStep; + + r0 = base; + r1 = r0 - rStep; + + glBegin(GL_TRIANGLE_FAN); + + glNormal3d(0.0,0.0,-1.0); + glVertex3d(0.0,0.0, z0 ); + + for (j=0; j<=slices; j++) + glVertex3d(cost[j]*r0, sint[j]*r0, z0); + + glEnd(); + + /* Cover each stack with a quad strip, except the top stack */ + + for( i=0; i<stacks-1; i++ ) + { + glBegin(GL_QUAD_STRIP); + + for(j=0; j<=slices; j++) + { + glNormal3d(cost[j]*sinn, sint[j]*sinn, cosn); + glVertex3d(cost[j]*r0, sint[j]*r0, z0 ); + glVertex3d(cost[j]*r1, sint[j]*r1, z1 ); + } + + z0 = z1; z1 += zStep; + r0 = r1; r1 -= rStep; + + glEnd(); + } + + /* The top stack is covered with individual triangles */ + + glBegin(GL_TRIANGLES); + + glNormal3d(cost[0]*sinn, sint[0]*sinn, cosn); + + for (j=0; j<slices; j++) + { + glVertex3d(cost[j+0]*r0, sint[j+0]*r0, z0 ); + glVertex3d(0, 0, height); + glNormal3d(cost[j+1]*sinn, sint[j+1]*sinn, cosn ); + glVertex3d(cost[j+1]*r0, sint[j+1]*r0, z0 ); + } + + glEnd(); + + /* Release sin and cos tables */ + + free(sint); + free(cost); +} + +/* + * Draws a wire cone + */ +void GLUTAPIENTRY glutWireCone( GLdouble base, GLdouble height, GLint slices, GLint stacks) +{ + int i,j; + + /* Step in z and radius as stacks are drawn. */ + + double z = 0.0; + double r = base; + + const double zStep = height/stacks; + const double rStep = base/stacks; + + /* Scaling factors for vertex normals */ + + const double cosn = ( height / sqrt ( height * height + base * base )); + const double sinn = ( base / sqrt ( height * height + base * base )); + + /* Pre-computed circle */ + + double *sint,*cost; + circleTable(&sint,&cost,-slices); + + /* Draw the stacks... */ + + for (i=0; i<stacks; i++) + { + glBegin(GL_LINE_LOOP); + + for( j=0; j<slices; j++ ) + { + glNormal3d(cost[j]*sinn, sint[j]*sinn, cosn); + glVertex3d(cost[j]*r, sint[j]*r, z ); + } + + glEnd(); + + z += zStep; + r -= rStep; + } + + /* Draw the slices */ + + r = base; + + glBegin(GL_LINES); + + for (j=0; j<slices; j++) + { + glNormal3d(cost[j]*sinn, sint[j]*sinn, cosn ); + glVertex3d(cost[j]*r, sint[j]*r, 0.0 ); + glVertex3d(0.0, 0.0, height); + } + + glEnd(); + + /* Release sin and cos tables */ + + free(sint); + free(cost); +} + + +/* + * Draws a solid cylinder + */ +void GLUTAPIENTRY glutSolidCylinder(GLdouble radius, GLdouble height, GLint slices, GLint stacks) +{ + int i,j; + + /* Step in z and radius as stacks are drawn. */ + + double z0,z1; + const double zStep = height/stacks; + + /* Pre-computed circle */ + + double *sint,*cost; + circleTable(&sint,&cost,-slices); + + /* Cover the base and top */ + + glBegin(GL_TRIANGLE_FAN); + glNormal3d(0.0, 0.0, -1.0 ); + glVertex3d(0.0, 0.0, 0.0 ); + for (j=0; j<=slices; j++) + glVertex3d(cost[j]*radius, sint[j]*radius, 0.0); + glEnd(); + + glBegin(GL_TRIANGLE_FAN); + glNormal3d(0.0, 0.0, 1.0 ); + glVertex3d(0.0, 0.0, height); + for (j=slices; j>=0; j--) + glVertex3d(cost[j]*radius, sint[j]*radius, height); + glEnd(); + + /* Do the stacks */ + + z0 = 0.0; + z1 = zStep; + + for (i=1; i<=stacks; i++) + { + if (i==stacks) + z1 = height; + + glBegin(GL_QUAD_STRIP); + for (j=0; j<=slices; j++ ) + { + glNormal3d(cost[j], sint[j], 0.0 ); + glVertex3d(cost[j]*radius, sint[j]*radius, z0 ); + glVertex3d(cost[j]*radius, sint[j]*radius, z1 ); + } + glEnd(); + + z0 = z1; z1 += zStep; + } + + /* Release sin and cos tables */ + + free(sint); + free(cost); +} + +/* + * Draws a wire cylinder + */ +void GLUTAPIENTRY glutWireCylinder(GLdouble radius, GLdouble height, GLint slices, GLint stacks) +{ + int i,j; + + /* Step in z and radius as stacks are drawn. */ + + double z = 0.0; + const double zStep = height/stacks; + + /* Pre-computed circle */ + + double *sint,*cost; + circleTable(&sint,&cost,-slices); + + /* Draw the stacks... */ + + for (i=0; i<=stacks; i++) + { + if (i==stacks) + z = height; + + glBegin(GL_LINE_LOOP); + + for( j=0; j<slices; j++ ) + { + glNormal3d(cost[j], sint[j], 0.0); + glVertex3d(cost[j]*radius, sint[j]*radius, z ); + } + + glEnd(); + + z += zStep; + } + + /* Draw the slices */ + + glBegin(GL_LINES); + + for (j=0; j<slices; j++) + { + glNormal3d(cost[j], sint[j], 0.0 ); + glVertex3d(cost[j]*radius, sint[j]*radius, 0.0 ); + glVertex3d(cost[j]*radius, sint[j]*radius, height); + } + + glEnd(); + + /* Release sin and cos tables */ + + free(sint); + free(cost); +} + +/* + * + */ +void GLUTAPIENTRY glutWireTorus( GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings ) +{ + double iradius = dInnerRadius, oradius = dOuterRadius, phi, psi, dpsi, dphi; + double *vertex, *normal; + int i, j; + double spsi, cpsi, sphi, cphi ; + + /* + * Allocate the vertices array + */ + vertex = (double *)calloc( sizeof(double), 3 * nSides * nRings ); + normal = (double *)calloc( sizeof(double), 3 * nSides * nRings ); + + glPushMatrix(); + + dpsi = 2.0 * M_PI / (double)nRings ; + dphi = -2.0 * M_PI / (double)nSides ; + psi = 0.0; + + for( j=0; j<nRings; j++ ) + { + cpsi = cos ( psi ) ; + spsi = sin ( psi ) ; + phi = 0.0; + + for( i=0; i<nSides; i++ ) + { + int offset = 3 * ( j * nSides + i ) ; + cphi = cos ( phi ) ; + sphi = sin ( phi ) ; + *(vertex + offset + 0) = cpsi * ( oradius + cphi * iradius ) ; + *(vertex + offset + 1) = spsi * ( oradius + cphi * iradius ) ; + *(vertex + offset + 2) = sphi * iradius ; + *(normal + offset + 0) = cpsi * cphi ; + *(normal + offset + 1) = spsi * cphi ; + *(normal + offset + 2) = sphi ; + phi += dphi; + } + + psi += dpsi; + } + + for( i=0; i<nSides; i++ ) + { + glBegin( GL_LINE_LOOP ); + + for( j=0; j<nRings; j++ ) + { + int offset = 3 * ( j * nSides + i ) ; + glNormal3dv( normal + offset ); + glVertex3dv( vertex + offset ); + } + + glEnd(); + } + + for( j=0; j<nRings; j++ ) + { + glBegin(GL_LINE_LOOP); + + for( i=0; i<nSides; i++ ) + { + int offset = 3 * ( j * nSides + i ) ; + glNormal3dv( normal + offset ); + glVertex3dv( vertex + offset ); + } + + glEnd(); + } + + free ( vertex ) ; + free ( normal ) ; + glPopMatrix(); +} + +/* + * + */ +void GLUTAPIENTRY glutSolidTorus( GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings ) +{ + double iradius = dInnerRadius, oradius = dOuterRadius, phi, psi, dpsi, dphi; + double *vertex, *normal; + int i, j; + double spsi, cpsi, sphi, cphi ; + + /* + * Increment the number of sides and rings to allow for one more point than surface + */ + nSides ++ ; + nRings ++ ; + + /* + * Allocate the vertices array + */ + vertex = (double *)calloc( sizeof(double), 3 * nSides * nRings ); + normal = (double *)calloc( sizeof(double), 3 * nSides * nRings ); + + glPushMatrix(); + + dpsi = 2.0 * M_PI / (double)(nRings - 1) ; + dphi = -2.0 * M_PI / (double)(nSides - 1) ; + psi = 0.0; + + for( j=0; j<nRings; j++ ) + { + cpsi = cos ( psi ) ; + spsi = sin ( psi ) ; + phi = 0.0; + + for( i=0; i<nSides; i++ ) + { + int offset = 3 * ( j * nSides + i ) ; + cphi = cos ( phi ) ; + sphi = sin ( phi ) ; + *(vertex + offset + 0) = cpsi * ( oradius + cphi * iradius ) ; + *(vertex + offset + 1) = spsi * ( oradius + cphi * iradius ) ; + *(vertex + offset + 2) = sphi * iradius ; + *(normal + offset + 0) = cpsi * cphi ; + *(normal + offset + 1) = spsi * cphi ; + *(normal + offset + 2) = sphi ; + phi += dphi; + } + + psi += dpsi; + } + + glBegin( GL_QUADS ); + for( i=0; i<nSides-1; i++ ) + { + for( j=0; j<nRings-1; j++ ) + { + int offset = 3 * ( j * nSides + i ) ; + glNormal3dv( normal + offset ); + glVertex3dv( vertex + offset ); + glNormal3dv( normal + offset + 3 ); + glVertex3dv( vertex + offset + 3 ); + glNormal3dv( normal + offset + 3 * nSides + 3 ); + glVertex3dv( vertex + offset + 3 * nSides + 3 ); + glNormal3dv( normal + offset + 3 * nSides ); + glVertex3dv( vertex + offset + 3 * nSides ); + } + } + + glEnd(); + + free ( vertex ) ; + free ( normal ) ; + glPopMatrix(); +} + +/* + * + */ +void GLUTAPIENTRY glutWireDodecahedron( void ) +{ + /* Magic Numbers: It is possible to create a dodecahedron by attaching two pentagons to each face of + * of a cube. The coordinates of the points are: + * (+-x,0, z); (+-1, 1, 1); (0, z, x ) + * where x = 0.61803398875 and z = 1.61803398875. + */ + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.0, 0.525731112119, 0.850650808354 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.0, 0.525731112119, -0.850650808354 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.0, -0.525731112119, 0.850650808354 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.0, -0.525731112119, -0.850650808354 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.850650808354, 0.0, 0.525731112119 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( -0.850650808354, 0.0, 0.525731112119 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.850650808354, 0.0, -0.525731112119 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( -0.850650808354, 0.0, -0.525731112119 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.525731112119, 0.850650808354, 0.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( 0.525731112119, -0.850650808354, 0.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( -0.525731112119, 0.850650808354, 0.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3d ( -0.525731112119, -0.850650808354, 0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; +} + +/* + * + */ +void GLUTAPIENTRY glutSolidDodecahedron( void ) +{ + /* Magic Numbers: It is possible to create a dodecahedron by attaching two pentagons to each face of + * of a cube. The coordinates of the points are: + * (+-x,0, z); (+-1, 1, 1); (0, z, x ) + * where x = 0.61803398875 and z = 1.61803398875. + */ + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.0, 0.525731112119, 0.850650808354 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.0, 0.525731112119, -0.850650808354 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.0, -0.525731112119, 0.850650808354 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.0, -0.525731112119, -0.850650808354 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.850650808354, 0.0, 0.525731112119 ) ; glVertex3d ( 0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( -0.850650808354, 0.0, 0.525731112119 ) ; glVertex3d ( -0.61803398875, 0.0, 1.61803398875 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.850650808354, 0.0, -0.525731112119 ) ; glVertex3d ( 0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( -0.850650808354, 0.0, -0.525731112119 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.525731112119, 0.850650808354, 0.0 ) ; glVertex3d ( 1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( 1.0, 1.0, -1.0 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( 1.0, 1.0, 1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( 0.525731112119, -0.850650808354, 0.0 ) ; glVertex3d ( 1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( 1.0, -1.0, 1.0 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( 1.0, -1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( -0.525731112119, 0.850650808354, 0.0 ) ; glVertex3d ( -1.61803398875, 0.61803398875, 0.0 ) ; glVertex3d ( -1.0, 1.0, 1.0 ) ; glVertex3d ( 0.0, 1.61803398875, 0.61803398875 ) ; glVertex3d ( 0.0, 1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0, 1.0, -1.0 ) ; + glEnd () ; + glBegin ( GL_POLYGON ) ; + glNormal3d ( -0.525731112119, -0.850650808354, 0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875, 0.61803398875 ) ; glVertex3d ( -1.0, -1.0, 1.0 ) ; + glEnd () ; +} + +/* + * + */ +void GLUTAPIENTRY glutWireOctahedron( void ) +{ +#define RADIUS 1.0f + glBegin( GL_LINE_LOOP ); + glNormal3d( 0.577350269189, 0.577350269189, 0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d( 0.577350269189, 0.577350269189,-0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d( 0.577350269189,-0.577350269189, 0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d( 0.577350269189,-0.577350269189,-0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d(-0.577350269189, 0.577350269189, 0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d(-0.577350269189, 0.577350269189,-0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d(-0.577350269189,-0.577350269189, 0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d(-0.577350269189,-0.577350269189,-0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glEnd(); +#undef RADIUS +} + +/* + * + */ +void GLUTAPIENTRY glutSolidOctahedron( void ) +{ +#define RADIUS 1.0f + glBegin( GL_TRIANGLES ); + glNormal3d( 0.577350269189, 0.577350269189, 0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d( 0.577350269189, 0.577350269189,-0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d( 0.577350269189,-0.577350269189, 0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d( 0.577350269189,-0.577350269189,-0.577350269189); glVertex3d( RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d(-0.577350269189, 0.577350269189, 0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d(-0.577350269189, 0.577350269189,-0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0, RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glNormal3d(-0.577350269189,-0.577350269189, 0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0, RADIUS ); + glNormal3d(-0.577350269189,-0.577350269189,-0.577350269189); glVertex3d(-RADIUS, 0.0, 0.0 ); glVertex3d( 0.0,-RADIUS, 0.0 ); glVertex3d( 0.0, 0.0,-RADIUS ); + glEnd(); +#undef RADIUS +} + +/* + * + */ +void GLUTAPIENTRY glutWireTetrahedron( void ) +{ + /* Magic Numbers: r0 = ( 1, 0, 0 ) + * r1 = ( -1/3, 2 sqrt(2) / 3, 0 ) + * r2 = ( -1/3, -sqrt(2) / 3, sqrt(6) / 3 ) + * r3 = ( -1/3, -sqrt(2) / 3, -sqrt(6) / 3 ) + * |r0| = |r1| = |r2| = |r3| = 1 + * Distance between any two points is 2 sqrt(6) / 3 + * + * Normals: The unit normals are simply the negative of the coordinates of the point not on the surface. + */ + + double r0[3] = { 1.0, 0.0, 0.0 } ; + double r1[3] = { -0.333333333333, 0.942809041582, 0.0 } ; + double r2[3] = { -0.333333333333, -0.471404520791, 0.816496580928 } ; + double r3[3] = { -0.333333333333, -0.471404520791, -0.816496580928 } ; + + glBegin( GL_LINE_LOOP ) ; + glNormal3d ( -1.0, 0.0, 0.0 ) ; glVertex3dv ( r1 ) ; glVertex3dv ( r3 ) ; glVertex3dv ( r2 ) ; + glNormal3d ( 0.333333333333, -0.942809041582, 0.0 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r2 ) ; glVertex3dv ( r3 ) ; + glNormal3d ( 0.333333333333, 0.471404520791, -0.816496580928 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r3 ) ; glVertex3dv ( r1 ) ; + glNormal3d ( 0.333333333333, 0.471404520791, 0.816496580928 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r1 ) ; glVertex3dv ( r2 ) ; + glEnd() ; +} + +/* + * + */ +void GLUTAPIENTRY glutSolidTetrahedron( void ) +{ + /* Magic Numbers: r0 = ( 1, 0, 0 ) + * r1 = ( -1/3, 2 sqrt(2) / 3, 0 ) + * r2 = ( -1/3, -sqrt(2) / 3, sqrt(6) / 3 ) + * r3 = ( -1/3, -sqrt(2) / 3, -sqrt(6) / 3 ) + * |r0| = |r1| = |r2| = |r3| = 1 + * Distance between any two points is 2 sqrt(6) / 3 + * + * Normals: The unit normals are simply the negative of the coordinates of the point not on the surface. + */ + + double r0[3] = { 1.0, 0.0, 0.0 } ; + double r1[3] = { -0.333333333333, 0.942809041582, 0.0 } ; + double r2[3] = { -0.333333333333, -0.471404520791, 0.816496580928 } ; + double r3[3] = { -0.333333333333, -0.471404520791, -0.816496580928 } ; + + glBegin( GL_TRIANGLES ) ; + glNormal3d ( -1.0, 0.0, 0.0 ) ; glVertex3dv ( r1 ) ; glVertex3dv ( r3 ) ; glVertex3dv ( r2 ) ; + glNormal3d ( 0.333333333333, -0.942809041582, 0.0 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r2 ) ; glVertex3dv ( r3 ) ; + glNormal3d ( 0.333333333333, 0.471404520791, -0.816496580928 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r3 ) ; glVertex3dv ( r1 ) ; + glNormal3d ( 0.333333333333, 0.471404520791, 0.816496580928 ) ; glVertex3dv ( r0 ) ; glVertex3dv ( r1 ) ; glVertex3dv ( r2 ) ; + glEnd() ; +} + +/* + * + */ +double icos_r[12][3] = { { 1.0, 0.0, 0.0 }, + { 0.447213595500, 0.894427191000, 0.0 }, { 0.447213595500, 0.276393202252, 0.850650808354 }, { 0.447213595500, -0.723606797748, 0.525731112119 }, { 0.447213595500, -0.723606797748, -0.525731112119 }, { 0.447213595500, 0.276393202252, -0.850650808354 }, + { -0.447213595500, -0.894427191000, 0.0 }, { -0.447213595500, -0.276393202252, 0.850650808354 }, { -0.447213595500, 0.723606797748, 0.525731112119 }, { -0.447213595500, 0.723606797748, -0.525731112119 }, { -0.447213595500, -0.276393202252, -0.850650808354 }, + { -1.0, 0.0, 0.0 } } ; +int icos_v [20][3] = { { 0, 1, 2 }, { 0, 2, 3 }, { 0, 3, 4 }, { 0, 4, 5 }, { 0, 5, 1 }, + { 1, 8, 2 }, { 2, 7, 3 }, { 3, 6, 4 }, { 4, 10, 5 }, { 5, 9, 1 }, + { 1, 9, 8 }, { 2, 8, 7 }, { 3, 7, 6 }, { 4, 6, 10 }, { 5, 10, 9 }, + { 11, 9, 10 }, { 11, 8, 9 }, { 11, 7, 8 }, { 11, 6, 7 }, { 11, 10, 6 } } ; + +void GLUTAPIENTRY glutWireIcosahedron( void ) +{ + int i ; + for ( i = 0; i < 20; i++ ) + { + double normal[3] ; + normal[0] = ( icos_r[icos_v[i][1]][1] - icos_r[icos_v[i][0]][1] ) * ( icos_r[icos_v[i][2]][2] - icos_r[icos_v[i][0]][2] ) - ( icos_r[icos_v[i][1]][2] - icos_r[icos_v[i][0]][2] ) * ( icos_r[icos_v[i][2]][1] - icos_r[icos_v[i][0]][1] ) ; + normal[1] = ( icos_r[icos_v[i][1]][2] - icos_r[icos_v[i][0]][2] ) * ( icos_r[icos_v[i][2]][0] - icos_r[icos_v[i][0]][0] ) - ( icos_r[icos_v[i][1]][0] - icos_r[icos_v[i][0]][0] ) * ( icos_r[icos_v[i][2]][2] - icos_r[icos_v[i][0]][2] ) ; + normal[2] = ( icos_r[icos_v[i][1]][0] - icos_r[icos_v[i][0]][0] ) * ( icos_r[icos_v[i][2]][1] - icos_r[icos_v[i][0]][1] ) - ( icos_r[icos_v[i][1]][1] - icos_r[icos_v[i][0]][1] ) * ( icos_r[icos_v[i][2]][0] - icos_r[icos_v[i][0]][0] ) ; + glBegin ( GL_LINE_LOOP ) ; + glNormal3dv ( normal ) ; + glVertex3dv ( icos_r[icos_v[i][0]] ) ; + glVertex3dv ( icos_r[icos_v[i][1]] ) ; + glVertex3dv ( icos_r[icos_v[i][2]] ) ; + glEnd () ; + } +} + +/* + * + */ +void GLUTAPIENTRY glutSolidIcosahedron( void ) +{ + int i ; + + glBegin ( GL_TRIANGLES ) ; + for ( i = 0; i < 20; i++ ) + { + double normal[3] ; + normal[0] = ( icos_r[icos_v[i][1]][1] - icos_r[icos_v[i][0]][1] ) * ( icos_r[icos_v[i][2]][2] - icos_r[icos_v[i][0]][2] ) - ( icos_r[icos_v[i][1]][2] - icos_r[icos_v[i][0]][2] ) * ( icos_r[icos_v[i][2]][1] - icos_r[icos_v[i][0]][1] ) ; + normal[1] = ( icos_r[icos_v[i][1]][2] - icos_r[icos_v[i][0]][2] ) * ( icos_r[icos_v[i][2]][0] - icos_r[icos_v[i][0]][0] ) - ( icos_r[icos_v[i][1]][0] - icos_r[icos_v[i][0]][0] ) * ( icos_r[icos_v[i][2]][2] - icos_r[icos_v[i][0]][2] ) ; + normal[2] = ( icos_r[icos_v[i][1]][0] - icos_r[icos_v[i][0]][0] ) * ( icos_r[icos_v[i][2]][1] - icos_r[icos_v[i][0]][1] ) - ( icos_r[icos_v[i][1]][1] - icos_r[icos_v[i][0]][1] ) * ( icos_r[icos_v[i][2]][0] - icos_r[icos_v[i][0]][0] ) ; + glNormal3dv ( normal ) ; + glVertex3dv ( icos_r[icos_v[i][0]] ) ; + glVertex3dv ( icos_r[icos_v[i][1]] ) ; + glVertex3dv ( icos_r[icos_v[i][2]] ) ; + } + + glEnd () ; +} + +/* + * + */ +double rdod_r[14][3] = { { 0.0, 0.0, 1.0 }, + { 0.707106781187, 0.000000000000, 0.5 }, { 0.000000000000, 0.707106781187, 0.5 }, { -0.707106781187, 0.000000000000, 0.5 }, { 0.000000000000, -0.707106781187, 0.5 }, + { 0.707106781187, 0.707106781187, 0.0 }, { -0.707106781187, 0.707106781187, 0.0 }, { -0.707106781187, -0.707106781187, 0.0 }, { 0.707106781187, -0.707106781187, 0.0 }, + { 0.707106781187, 0.000000000000, -0.5 }, { 0.000000000000, 0.707106781187, -0.5 }, { -0.707106781187, 0.000000000000, -0.5 }, { 0.000000000000, -0.707106781187, -0.5 }, + { 0.0, 0.0, -1.0 } } ; +int rdod_v [12][4] = { { 0, 1, 5, 2 }, { 0, 2, 6, 3 }, { 0, 3, 7, 4 }, { 0, 4, 8, 1 }, + { 5, 10, 6, 2 }, { 6, 11, 7, 3 }, { 7, 12, 8, 4 }, { 8, 9, 5, 1 }, + { 5, 9, 13, 10 }, { 6, 10, 13, 11 }, { 7, 11, 13, 12 }, { 8, 12, 13, 9 } } ; +double rdod_n[12][3] = { + { 0.353553390594, 0.353553390594, 0.5 }, { -0.353553390594, 0.353553390594, 0.5 }, { -0.353553390594, -0.353553390594, 0.5 }, { 0.353553390594, -0.353553390594, 0.5 }, + { 0.000000000000, 1.000000000000, 0.0 }, { -1.000000000000, 0.000000000000, 0.0 }, { 0.000000000000, -1.000000000000, 0.0 }, { 1.000000000000, 0.000000000000, 0.0 }, + { 0.353553390594, 0.353553390594, -0.5 }, { -0.353553390594, 0.353553390594, -0.5 }, { -0.353553390594, -0.353553390594, -0.5 }, { 0.353553390594, -0.353553390594, -0.5 } + } ; + +void GLUTAPIENTRY glutWireRhombicDodecahedron( void ) +{ + int i ; + for ( i = 0; i < 12; i++ ) + { + glBegin ( GL_LINE_LOOP ) ; + glNormal3dv ( rdod_n[i] ) ; + glVertex3dv ( rdod_r[rdod_v[i][0]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][1]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][2]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][3]] ) ; + glEnd () ; + } +} + +/* + * + */ +void GLUTAPIENTRY glutSolidRhombicDodecahedron( void ) +{ + int i ; + + glBegin ( GL_QUADS ) ; + for ( i = 0; i < 12; i++ ) + { + glNormal3dv ( rdod_n[i] ) ; + glVertex3dv ( rdod_r[rdod_v[i][0]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][1]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][2]] ) ; + glVertex3dv ( rdod_r[rdod_v[i][3]] ) ; + } + + glEnd () ; +} + +#define NUM_FACES 4 + +static GLdouble tetrahedron_v[4][3] = /* Vertices */ +{ + { -0.5, -0.288675134595, -0.144337567297 }, + { 0.5, -0.288675134595, -0.144337567297 }, + { 0.0, 0.577350269189, -0.144337567297 }, + { 0.0, 0.0, 0.672159013631 } +} ; + +static GLint tetrahedron_i[4][3] = /* Vertex indices */ +{ + { 0, 1, 2 }, { 0, 2, 3 }, { 0, 3, 1 }, { 1, 3, 2 } +} ; + +static GLdouble tetrahedron_n[4][3] = /* Normals */ +{ + { 0.0, 0.0, -1.0 }, + { -0.816496580928, 0.471404520791, 0.333333333333 }, + { 0.0, -0.942809041582, 0.333333333333 }, + { 0.816496580928, 0.471404520791, 0.333333333333 } +} ; + +void GLUTAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ) +{ + int i, j ; + + if ( num_levels == 0 ) + { + + for ( i = 0 ; i < NUM_FACES ; i++ ) + { + glBegin ( GL_LINE_LOOP ) ; + glNormal3dv ( tetrahedron_n[i] ) ; + for ( j = 0; j < 3; j++ ) + { + double x = offset[0] + scale * tetrahedron_v[tetrahedron_i[i][j]][0] ; + double y = offset[1] + scale * tetrahedron_v[tetrahedron_i[i][j]][1] ; + double z = offset[2] + scale * tetrahedron_v[tetrahedron_i[i][j]][2] ; + glVertex3d ( x, y, z ) ; + } + + glEnd () ; + } + } + else + { + GLdouble local_offset[3] ; /* Use a local variable to avoid buildup of roundoff errors */ + num_levels -- ; + scale /= 2.0 ; + local_offset[0] = offset[0] + scale * tetrahedron_v[0][0] ; + local_offset[1] = offset[1] + scale * tetrahedron_v[0][1] ; + local_offset[2] = offset[2] + scale * tetrahedron_v[0][2] ; + glutWireSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[0] += scale ; + glutWireSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[0] -= 0.5 * scale ; + local_offset[1] += 0.866025403784 * scale ; + glutWireSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[1] -= 0.577350269189 * scale ; + local_offset[2] += 0.816496580928 * scale ; + glutWireSierpinskiSponge ( num_levels, local_offset, scale ) ; + } +} + +void GLUTAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ) +{ + int i, j ; + + if ( num_levels == 0 ) + { + glBegin ( GL_TRIANGLES ) ; + + for ( i = 0 ; i < NUM_FACES ; i++ ) + { + glNormal3dv ( tetrahedron_n[i] ) ; + for ( j = 0; j < 3; j++ ) + { + double x = offset[0] + scale * tetrahedron_v[tetrahedron_i[i][j]][0] ; + double y = offset[1] + scale * tetrahedron_v[tetrahedron_i[i][j]][1] ; + double z = offset[2] + scale * tetrahedron_v[tetrahedron_i[i][j]][2] ; + glVertex3d ( x, y, z ) ; + } + } + + glEnd () ; + } + else + { + GLdouble local_offset[3] ; /* Use a local variable to avoid buildup of roundoff errors */ + num_levels -- ; + scale /= 2.0 ; + local_offset[0] = offset[0] + scale * tetrahedron_v[0][0] ; + local_offset[1] = offset[1] + scale * tetrahedron_v[0][1] ; + local_offset[2] = offset[2] + scale * tetrahedron_v[0][2] ; + glutSolidSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[0] += scale ; + glutSolidSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[0] -= 0.5 * scale ; + local_offset[1] += 0.866025403784 * scale ; + glutSolidSierpinskiSponge ( num_levels, local_offset, scale ) ; + local_offset[1] -= 0.577350269189 * scale ; + local_offset[2] += 0.816496580928 * scale ; + glutSolidSierpinskiSponge ( num_levels, local_offset, scale ) ; + } +} + +#undef NUM_FACES + +/*** END OF FILE ***/ diff --git a/src/glut/dos/state.c b/src/glut/dos/state.c index 4f74f24304..b0d5d8ae92 100644 --- a/src/glut/dos/state.c +++ b/src/glut/dos/state.c @@ -1,35 +1,31 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.5 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include <stdio.h> -#include "glutint.h" +#include "internal.h" #define FREQUENCY 100 /* set this to zero to use the default timer */ @@ -58,35 +54,35 @@ glutGet (GLenum type) { switch (type) { case GLUT_WINDOW_X: - return g_curwin->xpos; + return _glut_current->xpos; case GLUT_WINDOW_Y: - return g_curwin->ypos; + return _glut_current->ypos; case GLUT_WINDOW_WIDTH: - return g_curwin->width; + return _glut_current->width; case GLUT_WINDOW_HEIGHT: - return g_curwin->height; + return _glut_current->height; case GLUT_WINDOW_STENCIL_SIZE: - return g_stencil; + return _glut_visual.stencil; case GLUT_WINDOW_DEPTH_SIZE: - return g_depth; + return _glut_visual.depth; case GLUT_WINDOW_RGBA: - return !(g_display_mode & GLUT_INDEX); + return !(_glut_default.mode & GLUT_INDEX); case GLUT_WINDOW_COLORMAP_SIZE: - return (g_display_mode & GLUT_INDEX) ? (256 - RESERVED_COLORS) : 0; + return (_glut_default.mode & GLUT_INDEX) ? (256 - RESERVED_COLORS) : 0; case GLUT_SCREEN_WIDTH: - return g_screen_w; + return _glut_visual.geometry[0]; case GLUT_SCREEN_HEIGHT: - return g_screen_h; + return _glut_visual.geometry[1]; case GLUT_INIT_WINDOW_X: - return g_init_x; + return _glut_default.x; case GLUT_INIT_WINDOW_Y: - return g_init_y; + return _glut_default.y; case GLUT_INIT_WINDOW_WIDTH: - return g_init_w; + return _glut_default.width; case GLUT_INIT_WINDOW_HEIGHT: - return g_init_h; + return _glut_default.height; case GLUT_INIT_DISPLAY_MODE: - return g_display_mode; + return _glut_default.mode; case GLUT_ELAPSED_TIME: #if FREQUENCY if (!timer_installed) { @@ -121,9 +117,9 @@ glutDeviceGet (GLenum type) case GLUT_HAS_KEYBOARD: return GL_TRUE; case GLUT_HAS_MOUSE: - return (g_mouse != 0); + return (_glut_mouse != 0); case GLUT_NUM_MOUSE_BUTTONS: - return g_mouse; + return _glut_mouse; case GLUT_HAS_SPACEBALL: case GLUT_HAS_DIAL_AND_BUTTON_BOX: case GLUT_HAS_TABLET: @@ -161,10 +157,17 @@ glutGetModifiers (void) } +void APIENTRY +glutReportErrors (void) +{ + /* reports all the OpenGL errors that happened till now */ +} + + /* GAME MODE * Hack alert: incomplete... what is GameMode, anyway? */ -GLint g_game; +static GLint game; static GLboolean game_possible; static GLboolean game_active; static GLuint game_width; @@ -189,7 +192,7 @@ glutGameModeGet (GLenum mode) case GLUT_GAME_MODE_ACTIVE: return game_active; case GLUT_GAME_MODE_POSSIBLE: - return game_possible && !g_curwin; + return game_possible && !_glut_current; case GLUT_GAME_MODE_WIDTH: return game_active ? (int)game_width : -1; case GLUT_GAME_MODE_HEIGHT: @@ -208,16 +211,16 @@ int APIENTRY glutEnterGameMode (void) { if (glutGameModeGet(GLUT_GAME_MODE_POSSIBLE)) { - g_bpp = game_bpp; - g_refresh = game_refresh; + _glut_visual.bpp = game_bpp; + _glut_visual.refresh = game_refresh; glutInitWindowSize(game_width, game_height); - if ((g_game = glutCreateWindow("<game>")) > 0) { + if ((game = glutCreateWindow("<game>")) > 0) { game_active = GL_TRUE; } - return g_game; + return game; } else { return 0; } @@ -230,6 +233,6 @@ glutLeaveGameMode (void) if (glutGameModeGet(GLUT_GAME_MODE_ACTIVE)) { game_active = GL_FALSE; - glutDestroyWindow(g_game); + glutDestroyWindow(game); } } diff --git a/src/glut/dos/stroke.c b/src/glut/dos/stroke.c new file mode 100644 index 0000000000..aa2c06a7db --- /dev/null +++ b/src/glut/dos/stroke.c @@ -0,0 +1,118 @@ +/* + * FxGLUT version 0.12 - GLUT for Voodoo 1 and 2 under Linux + * Copyright (C) 1999 Christopher John Purnell + * cjp@lost.org.uk + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "internal.h" + + +void +glutStrokeCharacter (void *font, int c) +{ + const GLUTStrokeFont *sfp = _glut_font(font); + const GLUTStrokeChar *scp; + const GLUTStrokeStrip *ssp; + const GLUTStrokeVertex *svp; + unsigned i, j; + + if (((unsigned)c) >= sfp->num || !(scp = sfp->table[c])) + return; + + ssp = scp->strip; + + for (i = 0; i < scp->num; i++, ssp++) { + svp = ssp->vertex; + + glBegin(GL_LINE_STRIP); + for (j = 0; j < ssp->num; j++, svp++) { + glVertex2f(svp->x, svp->y); + } + glEnd(); + } + + glTranslatef(scp->right, 0.0, 0.0); +} + + +void +glutStrokeString (void *font, const unsigned char *string) +{ + const GLUTStrokeFont *sfp = _glut_font(font); + const GLUTStrokeChar *scp; + const GLUTStrokeStrip *ssp; + const GLUTStrokeVertex *svp; + unsigned char c; + unsigned i, j; + + while ((c = *(string++))) { + if (c < sfp->num && (scp = sfp->table[c])) { + ssp = scp->strip; + + for (i = 0; i < scp->num; i++, ssp++) { + svp = ssp->vertex; + + glBegin(GL_LINE_STRIP); + for (j = 0; j < ssp->num; j++, svp++) { + glVertex2f(svp->x, svp->y); + } + glEnd(); + } + + glTranslatef(scp->right, 0.0, 0.0); + } + } +} + + +int +glutStrokeWidth (void *font, int c) +{ + const GLUTStrokeFont *sfp = _glut_font(font); + const GLUTStrokeChar *scp; + + if (((unsigned)c) >= sfp->num || !(scp = sfp->table[c])) + return 0; + + return scp->right; +} + + +int +glutStrokeLength (void *font, const unsigned char *string) +{ + const GLUTStrokeFont *sfp = _glut_font(font); + const GLUTStrokeChar *scp; + unsigned char c; + int length = 0; + + while ((c = *(string++))) { + if (c < sfp->num && (scp = sfp->table[c])) + length += scp->right; + } + + return length; +} + + +GLfloat +glutStrokeHeight (void *font) +{ + const GLUTStrokeFont *sfp = _glut_font(font); + + return sfp->height; +} diff --git a/src/glut/dos/teapot.c b/src/glut/dos/teapot.c new file mode 100644 index 0000000000..8d02eb49f3 --- /dev/null +++ b/src/glut/dos/teapot.c @@ -0,0 +1,201 @@ +/* + * (c) Copyright 1993, Silicon Graphics, Inc. + * + * ALL RIGHTS RESERVED + * + * Permission to use, copy, modify, and distribute this software + * for any purpose and without fee is hereby granted, provided + * that the above copyright notice appear in all copies and that + * both the copyright notice and this permission notice appear in + * supporting documentation, and that the name of Silicon + * Graphics, Inc. not be used in advertising or publicity + * pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU + * "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR + * OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO + * EVENT SHALL SILICON GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE + * ELSE FOR ANY DIRECT, SPECIAL, INCIDENTAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, + * INCLUDING WITHOUT LIMITATION, LOSS OF PROFIT, LOSS OF USE, + * SAVINGS OR REVENUE, OR THE CLAIMS OF THIRD PARTIES, WHETHER OR + * NOT SILICON GRAPHICS, INC. HAS BEEN ADVISED OF THE POSSIBILITY + * OF SUCH LOSS, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * ARISING OUT OF OR IN CONNECTION WITH THE POSSESSION, USE OR + * PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer + * Software clause at DFARS 252.227-7013 and/or in similar or + * successor clauses in the FAR or the DOD or NASA FAR + * Supplement. Unpublished-- rights reserved under the copyright + * laws of the United States. Contractor/manufacturer is Silicon + * Graphics, Inc., 2011 N. Shoreline Blvd., Mountain View, CA + * 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ + +#include "internal.h" + +/* + * Rim, body, lid, and bottom data must be reflected in x and y; + * handle and spout data across the y axis only. + */ +static int patchdata[][16] = +{ + { 102, 103, 104, 105, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15 }, /* rim */ + { 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27 }, /* body */ + { 24, 25, 26, 27, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40 }, + { 96, 96, 96, 96, 97, 98, 99, 100, + 101, 101, 101, 101, 0, 1, 2, 3 }, /* lid */ + { 0, 1, 2, 3, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117 }, + { 118, 118, 118, 118, 124, 122, 119, 121, + 123, 126, 125, 120, 40, 39, 38, 37 }, /* bottom */ + { 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56 }, /* handle */ + { 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 28, 65, 66, 67 }, + { 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83 }, /* spout */ + { 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95 } +}; + +static float cpdata[][3] = +{ + {0.2, 0, 2.7}, {0.2, -0.112, 2.7}, {0.112, -0.2, 2.7}, + {0,-0.2, 2.7}, {1.3375, 0, 2.53125}, {1.3375, -0.749, 2.53125}, + {0.749, -1.3375, 2.53125}, {0, -1.3375, 2.53125}, + {1.4375, 0, 2.53125}, {1.4375, -0.805, 2.53125}, + {0.805, -1.4375, 2.53125}, {0, -1.4375, 2.53125}, + {1.5, 0, 2.4}, {1.5, -0.84, 2.4}, {0.84, -1.5, 2.4}, + {0, -1.5, 2.4}, {1.75, 0, 1.875}, {1.75, -0.98, 1.875}, + {0.98, -1.75, 1.875}, {0, -1.75, 1.875}, {2, 0, 1.35}, + {2, -1.12, 1.35}, {1.12, -2, 1.35}, {0, -2, 1.35}, {2, 0, 0.9}, + {2, -1.12, 0.9}, {1.12, -2, 0.9}, {0, -2, 0.9}, {-2, 0, 0.9}, + {2, 0, 0.45}, {2, -1.12, 0.45}, {1.12, -2, 0.45}, {0, -2, 0.45}, + {1.5, 0, 0.225}, {1.5, -0.84, 0.225}, {0.84, -1.5, 0.225}, + {0, -1.5, 0.225}, {1.5, 0, 0.15}, {1.5, -0.84, 0.15}, + {0.84, -1.5, 0.15}, {0, -1.5, 0.15}, {-1.6, 0, 2.025}, + {-1.6, -0.3, 2.025}, {-1.5, -0.3, 2.25}, {-1.5, 0, 2.25}, + {-2.3, 0, 2.025}, {-2.3, -0.3, 2.025}, {-2.5, -0.3, 2.25}, + {-2.5, 0, 2.25}, {-2.7, 0, 2.025}, {-2.7, -0.3, 2.025}, + {-3, -0.3, 2.25}, {-3, 0, 2.25}, {-2.7, 0, 1.8}, + {-2.7, -0.3, 1.8}, {-3, -0.3, 1.8}, {-3, 0, 1.8}, + {-2.7, 0, 1.575}, {-2.7, -0.3, 1.575}, {-3, -0.3, 1.35}, + {-3, 0, 1.35}, {-2.5, 0, 1.125}, {-2.5, -0.3, 1.125}, + {-2.65, -0.3, 0.9375}, {-2.65, 0, 0.9375}, {-2, -0.3, 0.9}, + {-1.9, -0.3, 0.6}, {-1.9, 0, 0.6}, {1.7, 0, 1.425}, + {1.7, -0.66, 1.425}, {1.7, -0.66, 0.6}, {1.7, 0, 0.6}, + {2.6, 0, 1.425}, {2.6, -0.66, 1.425}, {3.1, -0.66, 0.825}, + {3.1, 0, 0.825}, {2.3, 0, 2.1}, {2.3, -0.25, 2.1}, + {2.4, -0.25, 2.025}, {2.4, 0, 2.025}, {2.7, 0, 2.4}, + {2.7, -0.25, 2.4}, {3.3, -0.25, 2.4}, {3.3, 0, 2.4}, + {2.8, 0, 2.475}, {2.8, -0.25, 2.475}, {3.525, -0.25, 2.49375}, + {3.525, 0, 2.49375}, {2.9, 0, 2.475}, {2.9, -0.15, 2.475}, + {3.45, -0.15, 2.5125}, {3.45, 0, 2.5125}, {2.8, 0, 2.4}, + {2.8, -0.15, 2.4}, {3.2, -0.15, 2.4}, {3.2, 0, 2.4}, + {0, 0, 3.15}, {0.8, 0, 3.15}, {0.8, -0.45, 3.15}, + {0.45, -0.8, 3.15}, {0, -0.8, 3.15}, {0, 0, 2.85}, {1.4, 0, 2.4}, + {1.4, -0.784, 2.4}, {0.784, -1.4, 2.4}, {0, -1.4, 2.4}, + {0.4, 0, 2.55}, {0.4, -0.224, 2.55}, {0.224, -0.4, 2.55}, + {0, -0.4, 2.55}, {1.3, 0, 2.55}, {1.3, -0.728, 2.55}, + {0.728, -1.3, 2.55}, {0, -1.3, 2.55}, {1.3, 0, 2.4}, + {1.3, -0.728, 2.4}, {0.728, -1.3, 2.4}, {0, -1.3, 2.4}, + {0, 0, 0}, {1.425, -0.798, 0}, {1.5, 0, 0.075}, {1.425, 0, 0}, + {0.798, -1.425, 0}, {0, -1.5, 0.075}, {0, -1.425, 0}, + {1.5, -0.84, 0.075}, {0.84, -1.5, 0.075} +}; + +static float tex[2][2][2] = +{ + { {0, 0}, {1, 0} }, + { {0, 1}, {1, 1} } +}; + +static void teapot( GLint grid, GLdouble scale, GLenum type ) +{ + float p[4][4][3], q[4][4][3], r[4][4][3], s[4][4][3]; + long i, j, k, l; + + glPushAttrib( GL_ENABLE_BIT | GL_EVAL_BIT ); + glEnable( GL_AUTO_NORMAL ); + glEnable( GL_NORMALIZE ); + glEnable( GL_MAP2_VERTEX_3 ); + glEnable( GL_MAP2_TEXTURE_COORD_2 ); + + glPushMatrix(); + glRotatef(270.0, 1.0, 0.0, 0.0); + glScalef(0.5 * scale, 0.5 * scale, 0.5 * scale); + glTranslatef(0.0, 0.0, -1.5); + + for (i = 0; i < 10; i++) + { + for (j = 0; j < 4; j++) + { + for (k = 0; k < 4; k++) + { + for (l = 0; l < 3; l++) + { + p[j][k][l] = cpdata[patchdata[i][j * 4 + k]][l]; + q[j][k][l] = cpdata[patchdata[i][j * 4 + (3 - k)]][l]; + if (l == 1) + q[j][k][l] *= -1.0; + if (i < 6) + { + r[j][k][l] = cpdata[patchdata[i][j * 4 + (3 - k)]][l]; + if (l == 0) + r[j][k][l] *= -1.0; + s[j][k][l] = cpdata[patchdata[i][j * 4 + k]][l]; + if (l == 0) + s[j][k][l] *= -1.0; + if (l == 1) + s[j][k][l] *= -1.0; + } + } + } + } + + glMap2f(GL_MAP2_TEXTURE_COORD_2, 0, 1, 2, 2, 0, 1, 4, 2, + &tex[0][0][0]); + glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, + &p[0][0][0]); + glMapGrid2f(grid, 0.0, 1.0, grid, 0.0, 1.0); + glEvalMesh2(type, 0, grid, 0, grid); + glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, + &q[0][0][0]); + glEvalMesh2(type, 0, grid, 0, grid); + if (i < 6) + { + glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, + &r[0][0][0]); + glEvalMesh2(type, 0, grid, 0, grid); + glMap2f(GL_MAP2_VERTEX_3, 0, 1, 3, 4, 0, 1, 12, 4, + &s[0][0][0]); + glEvalMesh2(type, 0, grid, 0, grid); + } + } + + glPopMatrix(); + glPopAttrib(); +} + +void glutWireTeapot(GLdouble size) +{ + teapot(10, size, GL_LINE); +} + +void glutSolidTeapot(GLdouble size) +{ + teapot(7, size, GL_FILL); +} diff --git a/src/glut/dos/tr10.c b/src/glut/dos/tr10.c new file mode 100644 index 0000000000..a1e03f3e1b --- /dev/null +++ b/src/glut/dos/tr10.c @@ -0,0 +1,1018 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch32data[] = { + 0x0 +}; +static const GLUTBitmapChar ch32 = { 1, 1, 0, 0, 2, ch32data }; + +static const unsigned char ch33data[] = { + 0x80,0x0,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch33 = { 1, 7, -1, 0, 3, ch33data }; + +static const unsigned char ch34data[] = { + 0xa0,0xa0 +}; +static const GLUTBitmapChar ch34 = { 3, 2, 0, -5, 4, ch34data }; + +static const unsigned char ch35data[] = { + 0x50,0x50,0xf8,0x50,0xf8,0x50,0x50 +}; +static const GLUTBitmapChar ch35 = { 5, 7, 0, 0, 5, ch35data }; + +static const unsigned char ch36data[] = { + 0x20,0xe0,0x90,0x10,0x60,0x80,0x90,0x70,0x20 +}; +static const GLUTBitmapChar ch36 = { 4, 9, 0, 1, 5, ch36data }; + +static const unsigned char ch37data[] = { + 0x44,0x2a,0x2a,0x56,0xa8,0xa4,0x7e +}; +static const GLUTBitmapChar ch37 = { 7, 7, 0, 0, 8, ch37data }; + +static const unsigned char ch38data[] = { + 0x76,0x8d,0x98,0x74,0x6e,0x50,0x30 +}; +static const GLUTBitmapChar ch38 = { 8, 7, 0, 0, 8, ch38data }; + +static const unsigned char ch39data[] = { + 0x40,0xc0 +}; +static const GLUTBitmapChar ch39 = { 2, 2, 0, -5, 3, ch39data }; + +static const unsigned char ch40data[] = { + 0x20,0x40,0x40,0x80,0x80,0x80,0x40,0x40,0x20 +}; +static const GLUTBitmapChar ch40 = { 3, 9, 0, 2, 4, ch40data }; + +static const unsigned char ch41data[] = { + 0x80,0x40,0x40,0x20,0x20,0x20,0x40,0x40,0x80 +}; +static const GLUTBitmapChar ch41 = { 3, 9, 0, 2, 4, ch41data }; + +static const unsigned char ch42data[] = { + 0xa0,0x40,0xa0 +}; +static const GLUTBitmapChar ch42 = { 3, 3, 0, -4, 5, ch42data }; + +static const unsigned char ch43data[] = { + 0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch43 = { 5, 5, 0, 0, 6, ch43data }; + +static const unsigned char ch44data[] = { + 0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch44 = { 1, 3, -1, 2, 3, ch44data }; + +static const unsigned char ch45data[] = { + 0xf0 +}; +static const GLUTBitmapChar ch45 = { 4, 1, -1, -2, 7, ch45data }; + +static const unsigned char ch46data[] = { + 0x80 +}; +static const GLUTBitmapChar ch46 = { 1, 1, -1, 0, 3, ch46data }; + +static const unsigned char ch47data[] = { + 0x80,0x80,0x40,0x40,0x40,0x20,0x20 +}; +static const GLUTBitmapChar ch47 = { 3, 7, 0, 0, 3, ch47data }; + +static const unsigned char ch48data[] = { + 0x60,0x90,0x90,0x90,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch48 = { 4, 7, 0, 0, 5, ch48data }; + +static const unsigned char ch49data[] = { + 0xe0,0x40,0x40,0x40,0x40,0xc0,0x40 +}; +static const GLUTBitmapChar ch49 = { 3, 7, -1, 0, 5, ch49data }; + +static const unsigned char ch50data[] = { + 0xf0,0x40,0x20,0x20,0x10,0x90,0x60 +}; +static const GLUTBitmapChar ch50 = { 4, 7, 0, 0, 5, ch50data }; + +static const unsigned char ch51data[] = { + 0xe0,0x10,0x10,0x60,0x10,0x90,0x60 +}; +static const GLUTBitmapChar ch51 = { 4, 7, 0, 0, 5, ch51data }; + +static const unsigned char ch52data[] = { + 0x10,0x10,0xf8,0x90,0x50,0x30,0x10 +}; +static const GLUTBitmapChar ch52 = { 5, 7, 0, 0, 5, ch52data }; + +static const unsigned char ch53data[] = { + 0xe0,0x90,0x10,0x10,0xe0,0x40,0x70 +}; +static const GLUTBitmapChar ch53 = { 4, 7, 0, 0, 5, ch53data }; + +static const unsigned char ch54data[] = { + 0x60,0x90,0x90,0x90,0xe0,0x40,0x30 +}; +static const GLUTBitmapChar ch54 = { 4, 7, 0, 0, 5, ch54data }; + +static const unsigned char ch55data[] = { + 0x40,0x40,0x40,0x20,0x20,0x90,0xf0 +}; +static const GLUTBitmapChar ch55 = { 4, 7, 0, 0, 5, ch55data }; + +static const unsigned char ch56data[] = { + 0x60,0x90,0x90,0x60,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch56 = { 4, 7, 0, 0, 5, ch56data }; + +static const unsigned char ch57data[] = { + 0xc0,0x20,0x70,0x90,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch57 = { 4, 7, 0, 0, 5, ch57data }; + +static const unsigned char ch58data[] = { + 0x80,0x0,0x0,0x0,0x80 +}; +static const GLUTBitmapChar ch58 = { 1, 5, -1, 0, 3, ch58data }; + +static const unsigned char ch59data[] = { + 0x80,0x80,0x80,0x0,0x0,0x0,0x80 +}; +static const GLUTBitmapChar ch59 = { 1, 7, -1, 2, 3, ch59data }; + +static const unsigned char ch60data[] = { + 0x20,0x40,0x80,0x40,0x20 +}; +static const GLUTBitmapChar ch60 = { 3, 5, -1, 0, 5, ch60data }; + +static const unsigned char ch61data[] = { + 0xf8,0x0,0xf8 +}; +static const GLUTBitmapChar ch61 = { 5, 3, 0, -1, 6, ch61data }; + +static const unsigned char ch62data[] = { + 0x80,0x40,0x20,0x40,0x80 +}; +static const GLUTBitmapChar ch62 = { 3, 5, 0, 0, 5, ch62data }; + +static const unsigned char ch63data[] = { + 0x40,0x0,0x40,0x40,0x20,0xa0,0xe0 +}; +static const GLUTBitmapChar ch63 = { 3, 7, 0, 0, 4, ch63data }; + +static const unsigned char ch64data[] = { + 0x3e,0x40,0x92,0xad,0xa5,0xa5,0x9d,0x42,0x3c +}; +static const GLUTBitmapChar ch64 = { 8, 9, 0, 2, 9, ch64data }; + +static const unsigned char ch65data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10 +}; +static const GLUTBitmapChar ch65 = { 7, 7, 0, 0, 8, ch65data }; + +static const unsigned char ch66data[] = { + 0xf0,0x48,0x48,0x70,0x48,0x48,0xf0 +}; +static const GLUTBitmapChar ch66 = { 5, 7, 0, 0, 6, ch66data }; + +static const unsigned char ch67data[] = { + 0x78,0xc4,0x80,0x80,0x80,0xc4,0x7c +}; +static const GLUTBitmapChar ch67 = { 6, 7, 0, 0, 7, ch67data }; + +static const unsigned char ch68data[] = { + 0xf8,0x4c,0x44,0x44,0x44,0x4c,0xf8 +}; +static const GLUTBitmapChar ch68 = { 6, 7, 0, 0, 7, ch68data }; + +static const unsigned char ch69data[] = { + 0xf8,0x48,0x40,0x70,0x40,0x48,0xf8 +}; +static const GLUTBitmapChar ch69 = { 5, 7, 0, 0, 6, ch69data }; + +static const unsigned char ch70data[] = { + 0xe0,0x40,0x40,0x70,0x40,0x48,0xf8 +}; +static const GLUTBitmapChar ch70 = { 5, 7, 0, 0, 6, ch70data }; + +static const unsigned char ch71data[] = { + 0x78,0xc4,0x84,0x9c,0x80,0xc4,0x7c +}; +static const GLUTBitmapChar ch71 = { 6, 7, 0, 0, 7, ch71data }; + +static const unsigned char ch72data[] = { + 0xee,0x44,0x44,0x7c,0x44,0x44,0xee +}; +static const GLUTBitmapChar ch72 = { 7, 7, 0, 0, 8, ch72data }; + +static const unsigned char ch73data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xe0 +}; +static const GLUTBitmapChar ch73 = { 3, 7, 0, 0, 4, ch73data }; + +static const unsigned char ch74data[] = { + 0xc0,0xa0,0x20,0x20,0x20,0x20,0x70 +}; +static const GLUTBitmapChar ch74 = { 4, 7, 0, 0, 4, ch74data }; + +static const unsigned char ch75data[] = { + 0xec,0x48,0x50,0x60,0x50,0x48,0xec +}; +static const GLUTBitmapChar ch75 = { 6, 7, 0, 0, 7, ch75data }; + +static const unsigned char ch76data[] = { + 0xf8,0x48,0x40,0x40,0x40,0x40,0xe0 +}; +static const GLUTBitmapChar ch76 = { 5, 7, 0, 0, 6, ch76data }; + +static const unsigned char ch77data[] = { + 0xeb,0x80,0x49,0x0,0x55,0x0,0x55,0x0,0x63,0x0,0x63,0x0,0xe3,0x80 +}; +static const GLUTBitmapChar ch77 = { 9, 7, 0, 0, 10, ch77data }; + +static const unsigned char ch78data[] = { + 0xe4,0x4c,0x4c,0x54,0x54,0x64,0xee +}; +static const GLUTBitmapChar ch78 = { 7, 7, 0, 0, 8, ch78data }; + +static const unsigned char ch79data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78 +}; +static const GLUTBitmapChar ch79 = { 6, 7, 0, 0, 7, ch79data }; + +static const unsigned char ch80data[] = { + 0xe0,0x40,0x40,0x70,0x48,0x48,0xf0 +}; +static const GLUTBitmapChar ch80 = { 5, 7, 0, 0, 6, ch80data }; + +static const unsigned char ch81data[] = { + 0xc,0x18,0x70,0xcc,0x84,0x84,0x84,0xcc,0x78 +}; +static const GLUTBitmapChar ch81 = { 6, 9, 0, 2, 7, ch81data }; + +static const unsigned char ch82data[] = { + 0xec,0x48,0x50,0x70,0x48,0x48,0xf0 +}; +static const GLUTBitmapChar ch82 = { 6, 7, 0, 0, 7, ch82data }; + +static const unsigned char ch83data[] = { + 0xe0,0x90,0x10,0x60,0xc0,0x90,0x70 +}; +static const GLUTBitmapChar ch83 = { 4, 7, 0, 0, 5, ch83data }; + +static const unsigned char ch84data[] = { + 0x70,0x20,0x20,0x20,0x20,0xa8,0xf8 +}; +static const GLUTBitmapChar ch84 = { 5, 7, 0, 0, 6, ch84data }; + +static const unsigned char ch85data[] = { + 0x38,0x6c,0x44,0x44,0x44,0x44,0xee +}; +static const GLUTBitmapChar ch85 = { 7, 7, 0, 0, 8, ch85data }; + +static const unsigned char ch86data[] = { + 0x10,0x10,0x28,0x28,0x6c,0x44,0xee +}; +static const GLUTBitmapChar ch86 = { 7, 7, 0, 0, 8, ch86data }; + +static const unsigned char ch87data[] = { + 0x22,0x0,0x22,0x0,0x55,0x0,0x55,0x0,0xc9,0x80,0x88,0x80,0xdd,0xc0 +}; +static const GLUTBitmapChar ch87 = { 10, 7, 0, 0, 10, ch87data }; + +static const unsigned char ch88data[] = { + 0xee,0x44,0x28,0x10,0x28,0x44,0xee +}; +static const GLUTBitmapChar ch88 = { 7, 7, 0, 0, 8, ch88data }; + +static const unsigned char ch89data[] = { + 0x38,0x10,0x10,0x28,0x28,0x44,0xee +}; +static const GLUTBitmapChar ch89 = { 7, 7, 0, 0, 8, ch89data }; + +static const unsigned char ch90data[] = { + 0xf8,0x88,0x40,0x20,0x10,0x88,0xf8 +}; +static const GLUTBitmapChar ch90 = { 5, 7, 0, 0, 6, ch90data }; + +static const unsigned char ch91data[] = { + 0xc0,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xc0 +}; +static const GLUTBitmapChar ch91 = { 2, 9, 0, 2, 3, ch91data }; + +static const unsigned char ch92data[] = { + 0x20,0x20,0x40,0x40,0x40,0x80,0x80 +}; +static const GLUTBitmapChar ch92 = { 3, 7, 0, 0, 3, ch92data }; + +static const unsigned char ch93data[] = { + 0xc0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xc0 +}; +static const GLUTBitmapChar ch93 = { 2, 9, 0, 2, 3, ch93data }; + +static const unsigned char ch94data[] = { + 0xa0,0xa0,0x40 +}; +static const GLUTBitmapChar ch94 = { 3, 3, -1, -4, 5, ch94data }; + +static const unsigned char ch95data[] = { + 0xf8 +}; +static const GLUTBitmapChar ch95 = { 5, 1, 0, 3, 5, ch95data }; + +static const unsigned char ch96data[] = { + 0xc0,0x80 +}; +static const GLUTBitmapChar ch96 = { 2, 2, 0, -5, 3, ch96data }; + +static const unsigned char ch97data[] = { + 0xe0,0xa0,0x60,0x20,0xc0 +}; +static const GLUTBitmapChar ch97 = { 3, 5, 0, 0, 4, ch97data }; + +static const unsigned char ch98data[] = { + 0xe0,0x90,0x90,0x90,0xe0,0x80,0x80 +}; +static const GLUTBitmapChar ch98 = { 4, 7, 0, 0, 5, ch98data }; + +static const unsigned char ch99data[] = { + 0x60,0x80,0x80,0x80,0x60 +}; +static const GLUTBitmapChar ch99 = { 3, 5, 0, 0, 4, ch99data }; + +static const unsigned char ch100data[] = { + 0x68,0x90,0x90,0x90,0x70,0x10,0x30 +}; +static const GLUTBitmapChar ch100 = { 5, 7, 0, 0, 5, ch100data }; + +static const unsigned char ch101data[] = { + 0x60,0x80,0xc0,0xa0,0x60 +}; +static const GLUTBitmapChar ch101 = { 3, 5, 0, 0, 4, ch101data }; + +static const unsigned char ch102data[] = { + 0xe0,0x40,0x40,0x40,0xe0,0x40,0x30 +}; +static const GLUTBitmapChar ch102 = { 4, 7, 0, 0, 4, ch102data }; + +static const unsigned char ch103data[] = { + 0xe0,0x90,0x60,0x40,0xa0,0xa0,0x70 +}; +static const GLUTBitmapChar ch103 = { 4, 7, 0, 2, 5, ch103data }; + +static const unsigned char ch104data[] = { + 0xd8,0x90,0x90,0x90,0xe0,0x80,0x80 +}; +static const GLUTBitmapChar ch104 = { 5, 7, 0, 0, 5, ch104data }; + +static const unsigned char ch105data[] = { + 0x40,0x40,0x40,0x40,0xc0,0x0,0x40 +}; +static const GLUTBitmapChar ch105 = { 2, 7, 0, 0, 3, ch105data }; + +static const unsigned char ch106data[] = { + 0x80,0x40,0x40,0x40,0x40,0x40,0xc0,0x0,0x40 +}; +static const GLUTBitmapChar ch106 = { 2, 9, 0, 2, 3, ch106data }; + +static const unsigned char ch107data[] = { + 0x98,0x90,0xe0,0xa0,0x90,0x80,0x80 +}; +static const GLUTBitmapChar ch107 = { 5, 7, 0, 0, 5, ch107data }; + +static const unsigned char ch108data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xc0 +}; +static const GLUTBitmapChar ch108 = { 3, 7, 0, 0, 4, ch108data }; + +static const unsigned char ch109data[] = { + 0xdb,0x92,0x92,0x92,0xec +}; +static const GLUTBitmapChar ch109 = { 8, 5, 0, 0, 8, ch109data }; + +static const unsigned char ch110data[] = { + 0xd8,0x90,0x90,0x90,0xe0 +}; +static const GLUTBitmapChar ch110 = { 5, 5, 0, 0, 5, ch110data }; + +static const unsigned char ch111data[] = { + 0x60,0x90,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch111 = { 4, 5, 0, 0, 5, ch111data }; + +static const unsigned char ch112data[] = { + 0xc0,0x80,0xe0,0x90,0x90,0x90,0xe0 +}; +static const GLUTBitmapChar ch112 = { 4, 7, 0, 2, 5, ch112data }; + +static const unsigned char ch113data[] = { + 0x38,0x10,0x70,0x90,0x90,0x90,0x70 +}; +static const GLUTBitmapChar ch113 = { 5, 7, 0, 2, 5, ch113data }; + +static const unsigned char ch114data[] = { + 0xe0,0x40,0x40,0x60,0xa0 +}; +static const GLUTBitmapChar ch114 = { 3, 5, 0, 0, 4, ch114data }; + +static const unsigned char ch115data[] = { + 0xe0,0x20,0x60,0x80,0xe0 +}; +static const GLUTBitmapChar ch115 = { 3, 5, 0, 0, 4, ch115data }; + +static const unsigned char ch116data[] = { + 0x30,0x40,0x40,0x40,0xe0,0x40 +}; +static const GLUTBitmapChar ch116 = { 4, 6, 0, 0, 4, ch116data }; + +static const unsigned char ch117data[] = { + 0x68,0x90,0x90,0x90,0x90 +}; +static const GLUTBitmapChar ch117 = { 5, 5, 0, 0, 5, ch117data }; + +static const unsigned char ch118data[] = { + 0x20,0x60,0x50,0x90,0xd8 +}; +static const GLUTBitmapChar ch118 = { 5, 5, 0, 0, 5, ch118data }; + +static const unsigned char ch119data[] = { + 0x28,0x6c,0x54,0x92,0xdb +}; +static const GLUTBitmapChar ch119 = { 8, 5, 0, 0, 8, ch119data }; + +static const unsigned char ch120data[] = { + 0xd8,0x50,0x20,0x50,0xd8 +}; +static const GLUTBitmapChar ch120 = { 5, 5, 0, 0, 6, ch120data }; + +static const unsigned char ch121data[] = { + 0x40,0x40,0x20,0x30,0x50,0x48,0xdc +}; +static const GLUTBitmapChar ch121 = { 6, 7, 1, 2, 5, ch121data }; + +static const unsigned char ch122data[] = { + 0xf0,0x90,0x40,0x20,0xf0 +}; +static const GLUTBitmapChar ch122 = { 4, 5, 0, 0, 5, ch122data }; + +static const unsigned char ch123data[] = { + 0x20,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x20 +}; +static const GLUTBitmapChar ch123 = { 3, 9, 0, 2, 4, ch123data }; + +static const unsigned char ch124data[] = { + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch124 = { 1, 9, 0, 2, 2, ch124data }; + +static const unsigned char ch125data[] = { + 0x80,0x40,0x40,0x40,0x20,0x40,0x40,0x40,0x80 +}; +static const GLUTBitmapChar ch125 = { 3, 9, 0, 2, 4, ch125data }; + +static const unsigned char ch126data[] = { + 0x98,0x64 +}; +static const GLUTBitmapChar ch126 = { 6, 2, 0, -2, 7, ch126data }; + +static const unsigned char ch160data[] = { + 0x0 +}; +static const GLUTBitmapChar ch160 = { 1, 1, 0, 0, 2, ch160data }; + +static const unsigned char ch161data[] = { + 0x80,0x80,0x80,0x80,0x80,0x0,0x80 +}; +static const GLUTBitmapChar ch161 = { 1, 7, -1, 2, 3, ch161data }; + +static const unsigned char ch162data[] = { + 0x80,0xe0,0x90,0x80,0x90,0x70,0x10 +}; +static const GLUTBitmapChar ch162 = { 4, 7, 0, 1, 5, ch162data }; + +static const unsigned char ch163data[] = { + 0xf0,0xc8,0x40,0xe0,0x40,0x50,0x30 +}; +static const GLUTBitmapChar ch163 = { 5, 7, 0, 0, 5, ch163data }; + +static const unsigned char ch164data[] = { + 0x88,0x70,0x50,0x50,0x70,0x88 +}; +static const GLUTBitmapChar ch164 = { 5, 6, 0, -1, 5, ch164data }; + +static const unsigned char ch165data[] = { + 0x70,0x20,0xf8,0x20,0xd8,0x50,0x88 +}; +static const GLUTBitmapChar ch165 = { 5, 7, 0, 0, 5, ch165data }; + +static const unsigned char ch166data[] = { + 0x80,0x80,0x80,0x0,0x80,0x80,0x80 +}; +static const GLUTBitmapChar ch166 = { 1, 7, 0, 0, 2, ch166data }; + +static const unsigned char ch167data[] = { + 0xe0,0x90,0x20,0x50,0x90,0xa0,0x40,0x90,0x70 +}; +static const GLUTBitmapChar ch167 = { 4, 9, 0, 1, 5, ch167data }; + +static const unsigned char ch168data[] = { + 0xa0 +}; +static const GLUTBitmapChar ch168 = { 3, 1, -1, -6, 5, ch168data }; + +static const unsigned char ch169data[] = { + 0x38,0x44,0x9a,0xa2,0x9a,0x44,0x38 +}; +static const GLUTBitmapChar ch169 = { 7, 7, -1, 0, 9, ch169data }; + +static const unsigned char ch170data[] = { + 0xe0,0x0,0xa0,0x20,0xc0 +}; +static const GLUTBitmapChar ch170 = { 3, 5, 0, -2, 4, ch170data }; + +static const unsigned char ch171data[] = { + 0x50,0xa0,0xa0,0x50 +}; +static const GLUTBitmapChar ch171 = { 4, 4, 0, -1, 5, ch171data }; + +static const unsigned char ch172data[] = { + 0x8,0x8,0xf8 +}; +static const GLUTBitmapChar ch172 = { 5, 3, -1, -1, 7, ch172data }; + +static const unsigned char ch173data[] = { + 0xe0 +}; +static const GLUTBitmapChar ch173 = { 3, 1, 0, -2, 4, ch173data }; + +static const unsigned char ch174data[] = { + 0x38,0x44,0xaa,0xb2,0xba,0x44,0x38 +}; +static const GLUTBitmapChar ch174 = { 7, 7, -1, 0, 9, ch174data }; + +static const unsigned char ch175data[] = { + 0xe0 +}; +static const GLUTBitmapChar ch175 = { 3, 1, 0, -6, 4, ch175data }; + +static const unsigned char ch176data[] = { + 0x60,0x90,0x90,0x60 +}; +static const GLUTBitmapChar ch176 = { 4, 4, 0, -3, 4, ch176data }; + +static const unsigned char ch177data[] = { + 0xf8,0x0,0x20,0x20,0xf8,0x20,0x20 +}; +static const GLUTBitmapChar ch177 = { 5, 7, 0, 0, 6, ch177data }; + +static const unsigned char ch178data[] = { + 0xe0,0x40,0xa0,0x60 +}; +static const GLUTBitmapChar ch178 = { 3, 4, 0, -3, 3, ch178data }; + +static const unsigned char ch179data[] = { + 0xc0,0x20,0x40,0xe0 +}; +static const GLUTBitmapChar ch179 = { 3, 4, 0, -3, 3, ch179data }; + +static const unsigned char ch180data[] = { + 0x80,0x40 +}; +static const GLUTBitmapChar ch180 = { 2, 2, 0, -5, 3, ch180data }; + +static const unsigned char ch181data[] = { + 0x80,0x80,0xe8,0x90,0x90,0x90,0x90 +}; +static const GLUTBitmapChar ch181 = { 5, 7, 0, 2, 5, ch181data }; + +static const unsigned char ch182data[] = { + 0x28,0x28,0x28,0x28,0x68,0xe8,0xe8,0xe8,0x7c +}; +static const GLUTBitmapChar ch182 = { 6, 9, 0, 2, 6, ch182data }; + +static const unsigned char ch183data[] = { + 0x80 +}; +static const GLUTBitmapChar ch183 = { 1, 1, 0, -2, 2, ch183data }; + +static const unsigned char ch184data[] = { + 0xc0,0x20,0x40 +}; +static const GLUTBitmapChar ch184 = { 3, 3, 0, 3, 4, ch184data }; + +static const unsigned char ch185data[] = { + 0xe0,0x40,0xc0,0x40 +}; +static const GLUTBitmapChar ch185 = { 3, 4, 0, -3, 3, ch185data }; + +static const unsigned char ch186data[] = { + 0xe0,0x0,0x40,0xa0,0x40 +}; +static const GLUTBitmapChar ch186 = { 3, 5, 0, -2, 4, ch186data }; + +static const unsigned char ch187data[] = { + 0xa0,0x50,0x50,0xa0 +}; +static const GLUTBitmapChar ch187 = { 4, 4, 0, -1, 5, ch187data }; + +static const unsigned char ch188data[] = { + 0x44,0x3e,0x2c,0xf4,0x48,0xc8,0x44 +}; +static const GLUTBitmapChar ch188 = { 7, 7, 0, 0, 8, ch188data }; + +static const unsigned char ch189data[] = { + 0x4e,0x24,0x2a,0xf6,0x48,0xc8,0x44 +}; +static const GLUTBitmapChar ch189 = { 7, 7, 0, 0, 8, ch189data }; + +static const unsigned char ch190data[] = { + 0x44,0x3e,0x2c,0xd4,0x28,0x48,0xe4 +}; +static const GLUTBitmapChar ch190 = { 7, 7, 0, 0, 8, ch190data }; + +static const unsigned char ch191data[] = { + 0xe0,0xa0,0x80,0x40,0x40,0x0,0x40 +}; +static const GLUTBitmapChar ch191 = { 3, 7, 0, 2, 4, ch191data }; + +static const unsigned char ch192data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch192 = { 7, 10, 0, 0, 8, ch192data }; + +static const unsigned char ch193data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch193 = { 7, 10, 0, 0, 8, ch193data }; + +static const unsigned char ch194data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch194 = { 7, 10, 0, 0, 8, ch194data }; + +static const unsigned char ch195data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x0,0x28,0x14 +}; +static const GLUTBitmapChar ch195 = { 7, 10, 0, 0, 8, ch195data }; + +static const unsigned char ch196data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x0,0x28 +}; +static const GLUTBitmapChar ch196 = { 7, 9, 0, 0, 8, ch196data }; + +static const unsigned char ch197data[] = { + 0xee,0x44,0x7c,0x28,0x28,0x38,0x10,0x10,0x28,0x10 +}; +static const GLUTBitmapChar ch197 = { 7, 10, 0, 0, 8, ch197data }; + +static const unsigned char ch198data[] = { + 0xef,0x49,0x78,0x2e,0x28,0x39,0x1f +}; +static const GLUTBitmapChar ch198 = { 8, 7, 0, 0, 9, ch198data }; + +static const unsigned char ch199data[] = { + 0x60,0x10,0x20,0x78,0xc4,0x80,0x80,0x80,0xc4,0x7c +}; +static const GLUTBitmapChar ch199 = { 6, 10, 0, 3, 7, ch199data }; + +static const unsigned char ch200data[] = { + 0xf8,0x48,0x40,0x70,0x40,0x48,0xf8,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch200 = { 5, 10, 0, 0, 6, ch200data }; + +static const unsigned char ch201data[] = { + 0xf8,0x48,0x40,0x70,0x40,0x48,0xf8,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch201 = { 5, 10, 0, 0, 6, ch201data }; + +static const unsigned char ch202data[] = { + 0xf8,0x48,0x40,0x70,0x40,0x48,0xf8,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch202 = { 5, 10, 0, 0, 6, ch202data }; + +static const unsigned char ch203data[] = { + 0xf8,0x48,0x40,0x70,0x40,0x48,0xf8,0x0,0x50 +}; +static const GLUTBitmapChar ch203 = { 5, 9, 0, 0, 6, ch203data }; + +static const unsigned char ch204data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xe0,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch204 = { 3, 10, 0, 0, 4, ch204data }; + +static const unsigned char ch205data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xe0,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch205 = { 3, 10, 0, 0, 4, ch205data }; + +static const unsigned char ch206data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xe0,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch206 = { 3, 10, 0, 0, 4, ch206data }; + +static const unsigned char ch207data[] = { + 0xe0,0x40,0x40,0x40,0x40,0x40,0xe0,0x0,0xa0 +}; +static const GLUTBitmapChar ch207 = { 3, 9, 0, 0, 4, ch207data }; + +static const unsigned char ch208data[] = { + 0xf8,0x4c,0x44,0xe4,0x44,0x4c,0xf8 +}; +static const GLUTBitmapChar ch208 = { 6, 7, 0, 0, 7, ch208data }; + +static const unsigned char ch209data[] = { + 0xe4,0x4c,0x4c,0x54,0x54,0x64,0xee,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch209 = { 7, 10, 0, 0, 8, ch209data }; + +static const unsigned char ch210data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch210 = { 6, 10, 0, 0, 7, ch210data }; + +static const unsigned char ch211data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch211 = { 6, 10, 0, 0, 7, ch211data }; + +static const unsigned char ch212data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch212 = { 6, 10, 0, 0, 7, ch212data }; + +static const unsigned char ch213data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78,0x0,0x50,0x28 +}; +static const GLUTBitmapChar ch213 = { 6, 10, 0, 0, 7, ch213data }; + +static const unsigned char ch214data[] = { + 0x78,0xcc,0x84,0x84,0x84,0xcc,0x78,0x0,0x50 +}; +static const GLUTBitmapChar ch214 = { 6, 9, 0, 0, 7, ch214data }; + +static const unsigned char ch215data[] = { + 0x88,0x50,0x20,0x50,0x88 +}; +static const GLUTBitmapChar ch215 = { 5, 5, 0, 0, 6, ch215data }; + +static const unsigned char ch216data[] = { + 0x80,0x7c,0x66,0x52,0x52,0x4a,0x66,0x3e,0x1 +}; +static const GLUTBitmapChar ch216 = { 8, 9, 0, 1, 8, ch216data }; + +static const unsigned char ch217data[] = { + 0x38,0x6c,0x44,0x44,0x44,0x44,0xee,0x0,0x10,0x20 +}; +static const GLUTBitmapChar ch217 = { 7, 10, 0, 0, 8, ch217data }; + +static const unsigned char ch218data[] = { + 0x38,0x6c,0x44,0x44,0x44,0x44,0xee,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch218 = { 7, 10, 0, 0, 8, ch218data }; + +static const unsigned char ch219data[] = { + 0x38,0x6c,0x44,0x44,0x44,0x44,0xee,0x0,0x28,0x10 +}; +static const GLUTBitmapChar ch219 = { 7, 10, 0, 0, 8, ch219data }; + +static const unsigned char ch220data[] = { + 0x38,0x6c,0x44,0x44,0x44,0x44,0xee,0x0,0x28 +}; +static const GLUTBitmapChar ch220 = { 7, 9, 0, 0, 8, ch220data }; + +static const unsigned char ch221data[] = { + 0x38,0x10,0x10,0x28,0x28,0x44,0xee,0x0,0x10,0x8 +}; +static const GLUTBitmapChar ch221 = { 7, 10, 0, 0, 8, ch221data }; + +static const unsigned char ch222data[] = { + 0xe0,0x40,0x70,0x48,0x70,0x40,0xe0 +}; +static const GLUTBitmapChar ch222 = { 5, 7, 0, 0, 6, ch222data }; + +static const unsigned char ch223data[] = { + 0xe0,0x50,0x50,0x60,0x50,0x50,0x20 +}; +static const GLUTBitmapChar ch223 = { 4, 7, 0, 0, 5, ch223data }; + +static const unsigned char ch224data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch224 = { 3, 8, 0, 0, 4, ch224data }; + +static const unsigned char ch225data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch225 = { 3, 8, 0, 0, 4, ch225data }; + +static const unsigned char ch226data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch226 = { 3, 8, 0, 0, 4, ch226data }; + +static const unsigned char ch227data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x0,0xa0,0x50 +}; +static const GLUTBitmapChar ch227 = { 4, 8, 0, 0, 4, ch227data }; + +static const unsigned char ch228data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x0,0xa0 +}; +static const GLUTBitmapChar ch228 = { 3, 7, 0, 0, 4, ch228data }; + +static const unsigned char ch229data[] = { + 0xe0,0xa0,0x60,0x20,0xc0,0x40,0xa0,0x40 +}; +static const GLUTBitmapChar ch229 = { 3, 8, 0, 0, 4, ch229data }; + +static const unsigned char ch230data[] = { + 0xd8,0xa0,0x70,0x28,0xd8 +}; +static const GLUTBitmapChar ch230 = { 5, 5, 0, 0, 6, ch230data }; + +static const unsigned char ch231data[] = { + 0xc0,0x20,0x40,0x60,0x80,0x80,0x80,0x60 +}; +static const GLUTBitmapChar ch231 = { 3, 8, 0, 3, 4, ch231data }; + +static const unsigned char ch232data[] = { + 0x60,0x80,0xc0,0xa0,0x60,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch232 = { 3, 8, 0, 0, 4, ch232data }; + +static const unsigned char ch233data[] = { + 0x60,0x80,0xc0,0xa0,0x60,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch233 = { 3, 8, 0, 0, 4, ch233data }; + +static const unsigned char ch234data[] = { + 0x60,0x80,0xc0,0xa0,0x60,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch234 = { 3, 8, 0, 0, 4, ch234data }; + +static const unsigned char ch235data[] = { + 0x60,0x80,0xc0,0xa0,0x60,0x0,0xa0 +}; +static const GLUTBitmapChar ch235 = { 3, 7, 0, 0, 4, ch235data }; + +static const unsigned char ch236data[] = { + 0xe0,0x40,0x40,0x40,0xc0,0x0,0x40,0x80 +}; +static const GLUTBitmapChar ch236 = { 3, 8, 0, 0, 4, ch236data }; + +static const unsigned char ch237data[] = { + 0xe0,0x40,0x40,0x40,0xc0,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch237 = { 3, 8, 0, 0, 4, ch237data }; + +static const unsigned char ch238data[] = { + 0xe0,0x40,0x40,0x40,0xc0,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch238 = { 3, 8, 0, 0, 4, ch238data }; + +static const unsigned char ch239data[] = { + 0xe0,0x40,0x40,0x40,0xc0,0x0,0xa0 +}; +static const GLUTBitmapChar ch239 = { 3, 7, 0, 0, 4, ch239data }; + +static const unsigned char ch240data[] = { + 0x60,0x90,0x90,0x90,0x70,0xa0,0x70,0x40 +}; +static const GLUTBitmapChar ch240 = { 4, 8, 0, 0, 5, ch240data }; + +static const unsigned char ch241data[] = { + 0xd8,0x90,0x90,0x90,0xe0,0x0,0xa0,0x50 +}; +static const GLUTBitmapChar ch241 = { 5, 8, 0, 0, 5, ch241data }; + +static const unsigned char ch242data[] = { + 0x60,0x90,0x90,0x90,0x60,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch242 = { 4, 8, 0, 0, 5, ch242data }; + +static const unsigned char ch243data[] = { + 0x60,0x90,0x90,0x90,0x60,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch243 = { 4, 8, 0, 0, 5, ch243data }; + +static const unsigned char ch244data[] = { + 0x60,0x90,0x90,0x90,0x60,0x0,0xa0,0x40 +}; +static const GLUTBitmapChar ch244 = { 4, 8, 0, 0, 5, ch244data }; + +static const unsigned char ch245data[] = { + 0x60,0x90,0x90,0x90,0x60,0x0,0xa0,0x50 +}; +static const GLUTBitmapChar ch245 = { 4, 8, 0, 0, 5, ch245data }; + +static const unsigned char ch246data[] = { + 0x60,0x90,0x90,0x90,0x60,0x0,0xa0 +}; +static const GLUTBitmapChar ch246 = { 4, 7, 0, 0, 5, ch246data }; + +static const unsigned char ch247data[] = { + 0x20,0x0,0xf8,0x0,0x20 +}; +static const GLUTBitmapChar ch247 = { 5, 5, 0, 0, 6, ch247data }; + +static const unsigned char ch248data[] = { + 0x80,0x70,0x48,0x48,0x48,0x38,0x4 +}; +static const GLUTBitmapChar ch248 = { 6, 7, 1, 1, 5, ch248data }; + +static const unsigned char ch249data[] = { + 0x68,0x90,0x90,0x90,0x90,0x0,0x20,0x40 +}; +static const GLUTBitmapChar ch249 = { 5, 8, 0, 0, 5, ch249data }; + +static const unsigned char ch250data[] = { + 0x68,0x90,0x90,0x90,0x90,0x0,0x40,0x20 +}; +static const GLUTBitmapChar ch250 = { 5, 8, 0, 0, 5, ch250data }; + +static const unsigned char ch251data[] = { + 0x68,0x90,0x90,0x90,0x90,0x0,0x50,0x20 +}; +static const GLUTBitmapChar ch251 = { 5, 8, 0, 0, 5, ch251data }; + +static const unsigned char ch252data[] = { + 0x68,0x90,0x90,0x90,0x90,0x0,0x50 +}; +static const GLUTBitmapChar ch252 = { 5, 7, 0, 0, 5, ch252data }; + +static const unsigned char ch253data[] = { + 0x80,0xc0,0x40,0x60,0xa0,0x90,0xb8,0x0,0x20,0x10 +}; +static const GLUTBitmapChar ch253 = { 5, 10, 0, 2, 5, ch253data }; + +static const unsigned char ch254data[] = { + 0xc0,0x80,0xe0,0x90,0x90,0x90,0xe0,0x80,0x80 +}; +static const GLUTBitmapChar ch254 = { 4, 9, 0, 2, 5, ch254data }; + +static const unsigned char ch255data[] = { + 0x80,0xc0,0x40,0x60,0xa0,0x90,0xb8,0x0,0xa0 +}; +static const GLUTBitmapChar ch255 = { 5, 9, 0, 2, 5, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmapTimesRoman10 = { + "-Adobe-Times-Medium-R-Normal--10-100-75-75-P-54-ISO8859-1", + 13, 256, chars +}; diff --git a/src/glut/dos/tr24.c b/src/glut/dos/tr24.c new file mode 100644 index 0000000000..2dd2a78c83 --- /dev/null +++ b/src/glut/dos/tr24.c @@ -0,0 +1,1301 @@ +/* autogenerated by bdf2c! do not edit */ + +/* "Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved." */ + + +#include "internal.h" +/* +typedef struct { + int width, height; + int xorig, yorig; + int xmove; + const unsigned char *bitmap; +} GLUTBitmapChar; + +typedef struct { + const char *name; + int height; + int num; + const GLUTBitmapChar *const *table; +} GLUTBitmapFont; +*/ + + +static const unsigned char ch32data[] = { + 0x0 +}; +static const GLUTBitmapChar ch32 = { 1, 1, 0, 0, 6, ch32data }; + +static const unsigned char ch33data[] = { + 0xc0,0xc0,0x0,0x0,0x0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch33 = { 2, 17, -3, 0, 8, ch33data }; + +static const unsigned char ch34data[] = { + 0x88,0xcc,0xcc,0xcc,0xcc +}; +static const GLUTBitmapChar ch34 = { 6, 5, -1, -12, 10, ch34data }; + +static const unsigned char ch35data[] = { + 0x22,0x0,0x22,0x0,0x22,0x0,0x22,0x0,0x22,0x0,0xff,0xc0,0xff,0xc0,0x11,0x0, + 0x11,0x0,0x11,0x0,0x7f,0xe0,0x7f,0xe0,0x8,0x80,0x8,0x80,0x8,0x80,0x8,0x80, + 0x8,0x80 +}; +static const GLUTBitmapChar ch35 = { 11, 17, -1, 0, 13, ch35data }; + +static const unsigned char ch36data[] = { + 0x4,0x0,0x4,0x0,0x3f,0x0,0xe5,0xc0,0xc4,0xc0,0x84,0x60,0x84,0x60,0x4,0x60, + 0x4,0xe0,0x7,0xc0,0x7,0x80,0x1e,0x0,0x3c,0x0,0x74,0x0,0x64,0x0,0x64,0x20, + 0x64,0x60,0x34,0xe0,0x1f,0x80,0x4,0x0,0x4,0x0 +}; +static const GLUTBitmapChar ch36 = { 11, 21, 0, 2, 12, ch36data }; + +static const unsigned char ch37data[] = { + 0x30,0x3c,0x0,0x18,0x72,0x0,0xc,0x61,0x0,0x4,0x60,0x80,0x6,0x60,0x80,0x3, + 0x30,0x80,0x1,0x19,0x80,0x1,0x8f,0x0,0x78,0xc0,0x0,0xe4,0x40,0x0,0xc2,0x60, + 0x0,0xc1,0x30,0x0,0xc1,0x10,0x0,0x61,0x18,0x0,0x33,0xfc,0x0,0x1e,0xc,0x0 +}; +static const GLUTBitmapChar ch37 = { 17, 16, -1, 0, 19, ch37data }; + +static const unsigned char ch38data[] = { + 0x3c,0x3c,0x7f,0x7e,0xe1,0xe1,0xc0,0xc0,0xc1,0xc0,0xc1,0xa0,0x63,0x20,0x37,0x10, + 0x1e,0x18,0xe,0x3e,0xf,0x0,0x1d,0x80,0x18,0xc0,0x18,0x40,0x18,0x40,0xc,0xc0, + 0x7,0x80 +}; +static const GLUTBitmapChar ch38 = { 16, 17, -1, 0, 18, ch38data }; + +static const unsigned char ch39data[] = { + 0xc0,0x60,0x20,0xe0,0xc0 +}; +static const GLUTBitmapChar ch39 = { 3, 5, -3, -12, 8, ch39data }; + +static const unsigned char ch40data[] = { + 0x4,0x8,0x10,0x30,0x20,0x60,0x60,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x60, + 0x60,0x20,0x30,0x10,0x8,0x4 +}; +static const GLUTBitmapChar ch40 = { 6, 22, -1, 5, 8, ch40data }; + +static const unsigned char ch41data[] = { + 0x80,0x40,0x20,0x30,0x10,0x18,0x18,0xc,0xc,0xc,0xc,0xc,0xc,0xc,0xc,0x18, + 0x18,0x10,0x30,0x20,0x40,0x80 +}; +static const GLUTBitmapChar ch41 = { 6, 22, -1, 5, 8, ch41data }; + +static const unsigned char ch42data[] = { + 0x8,0x0,0x1c,0x0,0xc9,0x80,0xeb,0x80,0x1c,0x0,0xeb,0x80,0xc9,0x80,0x1c,0x0, + 0x8,0x0 +}; +static const GLUTBitmapChar ch42 = { 9, 9, -2, -8, 12, ch42data }; + +static const unsigned char ch43data[] = { + 0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0xff,0xf0,0xff,0xf0,0x6,0x0, + 0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch43 = { 12, 12, -1, -1, 14, ch43data }; + +static const unsigned char ch44data[] = { + 0xc0,0x60,0x20,0xe0,0xc0 +}; +static const GLUTBitmapChar ch44 = { 3, 5, -2, 3, 7, ch44data }; + +static const unsigned char ch45data[] = { + 0xff,0xf0,0xff,0xf0 +}; +static const GLUTBitmapChar ch45 = { 12, 2, -1, -6, 14, ch45data }; + +static const unsigned char ch46data[] = { + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch46 = { 2, 2, -2, 0, 6, ch46data }; + +static const unsigned char ch47data[] = { + 0xc0,0xc0,0xc0,0x60,0x60,0x20,0x30,0x30,0x10,0x18,0x18,0x8,0xc,0xc,0x4,0x6, + 0x6,0x3,0x3,0x3 +}; +static const GLUTBitmapChar ch47 = { 8, 20, 1, 3, 7, ch47data }; + +static const unsigned char ch48data[] = { + 0x1e,0x0,0x33,0x0,0x61,0x80,0x61,0x80,0xe1,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x61,0x80,0x61,0x80,0x33,0x0, + 0x1e,0x0 +}; +static const GLUTBitmapChar ch48 = { 10, 17, -1, 0, 12, ch48data }; + +static const unsigned char ch49data[] = { + 0xff,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x78,0x18, + 0x8 +}; +static const GLUTBitmapChar ch49 = { 8, 17, -2, 0, 12, ch49data }; + +static const unsigned char ch50data[] = { + 0xff,0x80,0xff,0xc0,0x60,0x40,0x30,0x0,0x18,0x0,0xc,0x0,0x4,0x0,0x6,0x0, + 0x3,0x0,0x3,0x0,0x1,0x80,0x1,0x80,0x81,0x80,0x81,0x80,0x43,0x80,0x7f,0x0, + 0x1c,0x0 +}; +static const GLUTBitmapChar ch50 = { 10, 17, -1, 0, 12, ch50data }; + +static const unsigned char ch51data[] = { + 0x78,0x0,0xe6,0x0,0xc3,0x0,0x1,0x0,0x1,0x80,0x1,0x80,0x1,0x80,0x3,0x80, + 0x7,0x0,0x1e,0x0,0xc,0x0,0x6,0x0,0x83,0x0,0x83,0x0,0x47,0x0,0x7e,0x0, + 0x1c,0x0 +}; +static const GLUTBitmapChar ch51 = { 9, 17, -1, 0, 12, ch51data }; + +static const unsigned char ch52data[] = { + 0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0xff,0xc0,0xff,0xc0,0xc3,0x0,0x43,0x0, + 0x63,0x0,0x23,0x0,0x33,0x0,0x13,0x0,0x1b,0x0,0xb,0x0,0x7,0x0,0x7,0x0, + 0x3,0x0 +}; +static const GLUTBitmapChar ch52 = { 10, 17, -1, 0, 12, ch52data }; + +static const unsigned char ch53data[] = { + 0x7e,0x0,0xe3,0x80,0xc1,0x80,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x1,0xc0, + 0x3,0x80,0xf,0x80,0x7e,0x0,0x78,0x0,0x60,0x0,0x20,0x0,0x20,0x0,0x1f,0x80, + 0x1f,0xc0 +}; +static const GLUTBitmapChar ch53 = { 10, 17, -1, 0, 12, ch53data }; + +static const unsigned char ch54data[] = { + 0x1e,0x0,0x7b,0x80,0x61,0x80,0xe0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc1,0x80,0xf3,0x80,0xee,0x0,0x60,0x0,0x70,0x0,0x30,0x0,0x18,0x0,0xe,0x0, + 0x3,0xc0 +}; +static const GLUTBitmapChar ch54 = { 10, 17, -1, 0, 12, ch54data }; + +static const unsigned char ch55data[] = { + 0x18,0x0,0x18,0x0,0xc,0x0,0xc,0x0,0xc,0x0,0x4,0x0,0x6,0x0,0x6,0x0, + 0x2,0x0,0x3,0x0,0x3,0x0,0x1,0x0,0x1,0x80,0x81,0x80,0xc0,0xc0,0xff,0xc0, + 0x7f,0xc0 +}; +static const GLUTBitmapChar ch55 = { 10, 17, -1, 0, 12, ch55data }; + +static const unsigned char ch56data[] = { + 0x1e,0x0,0x73,0x80,0xe1,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x41,0xc0,0x61,0x80, + 0x37,0x0,0x1e,0x0,0x1e,0x0,0x33,0x0,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x0, + 0x1e,0x0 +}; +static const GLUTBitmapChar ch56 = { 10, 17, -1, 0, 12, ch56data }; + +static const unsigned char ch57data[] = { + 0xf0,0x0,0x1c,0x0,0x6,0x0,0x3,0x0,0x3,0x80,0x1,0x80,0x1d,0x80,0x73,0xc0, + 0x61,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc1,0xc0,0x61,0x80,0x77,0x80, + 0x1e,0x0 +}; +static const GLUTBitmapChar ch57 = { 10, 17, -1, 0, 12, ch57data }; + +static const unsigned char ch58data[] = { + 0xc0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch58 = { 2, 11, -2, 0, 6, ch58data }; + +static const unsigned char ch59data[] = { + 0xc0,0x60,0x20,0xe0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0xc0 +}; +static const GLUTBitmapChar ch59 = { 3, 14, -2, 3, 7, ch59data }; + +static const unsigned char ch60data[] = { + 0x0,0x60,0x1,0xc0,0x7,0x0,0x1c,0x0,0x70,0x0,0xc0,0x0,0x70,0x0,0x1c,0x0, + 0x7,0x0,0x1,0xc0,0x0,0x60 +}; +static const GLUTBitmapChar ch60 = { 11, 11, -1, -1, 13, ch60data }; + +static const unsigned char ch61data[] = { + 0xff,0xf0,0xff,0xf0,0x0,0x0,0x0,0x0,0xff,0xf0,0xff,0xf0 +}; +static const GLUTBitmapChar ch61 = { 12, 6, -1, -4, 14, ch61data }; + +static const unsigned char ch62data[] = { + 0xc0,0x0,0x70,0x0,0x1c,0x0,0x7,0x0,0x1,0xc0,0x0,0x60,0x1,0xc0,0x7,0x0, + 0x1c,0x0,0x70,0x0,0xc0,0x0 +}; +static const GLUTBitmapChar ch62 = { 11, 11, -1, -1, 13, ch62data }; + +static const unsigned char ch63data[] = { + 0x30,0x30,0x0,0x0,0x10,0x10,0x10,0x18,0x18,0xc,0xe,0x7,0xc3,0xc3,0x83,0xc6, + 0x7c +}; +static const GLUTBitmapChar ch63 = { 8, 17, -2, 0, 11, ch63data }; + +static const unsigned char ch64data[] = { + 0x3,0xf0,0x0,0xe,0xc,0x0,0x18,0x0,0x0,0x30,0x0,0x0,0x61,0xde,0x0,0x63, + 0x7b,0x0,0xc6,0x39,0x80,0xc6,0x18,0x80,0xc6,0x18,0xc0,0xc6,0x18,0x40,0xc6,0xc, + 0x40,0xc3,0xc,0x40,0xc3,0x8c,0x40,0xe1,0xfc,0x40,0x60,0xec,0xc0,0x70,0x0,0x80, + 0x38,0x1,0x80,0x1c,0x3,0x0,0xf,0xe,0x0,0x3,0xf8,0x0 +}; +static const GLUTBitmapChar ch64 = { 18, 20, -2, 3, 22, ch64data }; + +static const unsigned char ch65data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0 +}; +static const GLUTBitmapChar ch65 = { 17, 17, 0, 0, 17, ch65data }; + +static const unsigned char ch66data[] = { + 0xff,0xe0,0x30,0x78,0x30,0x18,0x30,0xc,0x30,0xc,0x30,0xc,0x30,0x18,0x30,0x38, + 0x3f,0xe0,0x30,0x40,0x30,0x30,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x30,0x30,0x70, + 0xff,0xc0 +}; +static const GLUTBitmapChar ch66 = { 14, 17, -1, 0, 16, ch66data }; + +static const unsigned char ch67data[] = { + 0x7,0xe0,0x1e,0x38,0x38,0x8,0x60,0x4,0x60,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0x60,0x4,0x60,0x4,0x38,0xc,0x1c,0x3c, + 0x7,0xe4 +}; +static const GLUTBitmapChar ch67 = { 14, 17, -1, 0, 16, ch67data }; + +static const unsigned char ch68data[] = { + 0xff,0xc0,0x30,0x70,0x30,0x38,0x30,0xc,0x30,0xc,0x30,0x6,0x30,0x6,0x30,0x6, + 0x30,0x6,0x30,0x6,0x30,0x6,0x30,0x6,0x30,0xc,0x30,0xc,0x30,0x38,0x30,0x70, + 0xff,0xc0 +}; +static const GLUTBitmapChar ch68 = { 15, 17, -1, 0, 17, ch68data }; + +static const unsigned char ch69data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x40,0x30,0x40, + 0x3f,0xc0,0x30,0x40,0x30,0x40,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0 +}; +static const GLUTBitmapChar ch69 = { 13, 17, -1, 0, 15, ch69data }; + +static const unsigned char ch70data[] = { + 0xfc,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x20,0x30,0x20, + 0x3f,0xe0,0x30,0x20,0x30,0x20,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0 +}; +static const GLUTBitmapChar ch70 = { 12, 17, -1, 0, 14, ch70data }; + +static const unsigned char ch71data[] = { + 0x7,0xe0,0x1e,0x38,0x38,0x1c,0x60,0xc,0x60,0xc,0xc0,0xc,0xc0,0xc,0xc0,0x3f, + 0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0x60,0x4,0x60,0x4,0x38,0xc,0x1c,0x3c, + 0x7,0xe4 +}; +static const GLUTBitmapChar ch71 = { 16, 17, -1, 0, 18, ch71data }; + +static const unsigned char ch72data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x30, + 0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x3f,0xfe,0x0,0x30,0x6,0x0,0x30,0x6, + 0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0,0x30,0x6,0x0, + 0xfc,0x1f,0x80 +}; +static const GLUTBitmapChar ch72 = { 17, 17, -1, 0, 19, ch72data }; + +static const unsigned char ch73data[] = { + 0xfc,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0xfc +}; +static const GLUTBitmapChar ch73 = { 6, 17, -1, 0, 8, ch73data }; + +static const unsigned char ch74data[] = { + 0x78,0x0,0xcc,0x0,0xc6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0, + 0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0, + 0x1f,0x80 +}; +static const GLUTBitmapChar ch74 = { 9, 17, -1, 0, 11, ch74data }; + +static const unsigned char ch75data[] = { + 0xfc,0x1f,0x30,0xe,0x30,0x1c,0x30,0x38,0x30,0x70,0x30,0xe0,0x31,0xc0,0x33,0x80, + 0x3f,0x0,0x3e,0x0,0x33,0x0,0x31,0x80,0x30,0xc0,0x30,0x60,0x30,0x30,0x30,0x18, + 0xfc,0x7e +}; +static const GLUTBitmapChar ch75 = { 16, 17, -1, 0, 17, ch75data }; + +static const unsigned char ch76data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0, + 0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0, + 0xfc,0x0 +}; +static const GLUTBitmapChar ch76 = { 13, 17, -1, 0, 14, ch76data }; + +static const unsigned char ch77data[] = { + 0xf8,0x21,0xf8,0x20,0x60,0x60,0x20,0x60,0x60,0x20,0xd0,0x60,0x20,0xd0,0x60,0x21, + 0x88,0x60,0x21,0x88,0x60,0x23,0x8,0x60,0x23,0x4,0x60,0x26,0x4,0x60,0x26,0x2, + 0x60,0x2c,0x2,0x60,0x2c,0x2,0x60,0x38,0x1,0x60,0x38,0x1,0x60,0x30,0x0,0xe0, + 0xf0,0x0,0xf8 +}; +static const GLUTBitmapChar ch77 = { 21, 17, -1, 0, 22, ch77data }; + +static const unsigned char ch78data[] = { + 0xf8,0xc,0x20,0x1c,0x20,0x1c,0x20,0x34,0x20,0x64,0x20,0x64,0x20,0xc4,0x21,0x84, + 0x21,0x84,0x23,0x4,0x26,0x4,0x26,0x4,0x2c,0x4,0x38,0x4,0x38,0x4,0x30,0x4, + 0xf0,0x1f +}; +static const GLUTBitmapChar ch78 = { 16, 17, -1, 0, 18, ch78data }; + +static const unsigned char ch79data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0 +}; +static const GLUTBitmapChar ch79 = { 16, 17, -1, 0, 18, ch79data }; + +static const unsigned char ch80data[] = { + 0xfc,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0, + 0x3f,0xc0,0x30,0x70,0x30,0x30,0x30,0x18,0x30,0x18,0x30,0x18,0x30,0x30,0x30,0x70, + 0xff,0xc0 +}; +static const GLUTBitmapChar ch80 = { 13, 17, -1, 0, 15, ch80data }; + +static const unsigned char ch81data[] = { + 0x0,0xf,0x0,0x38,0x0,0x70,0x0,0xe0,0x1,0xc0,0x7,0xe0,0x1c,0x38,0x38,0x1c, + 0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38,0x7,0xe0 +}; +static const GLUTBitmapChar ch81 = { 16, 22, -1, 5, 18, ch81data }; + +static const unsigned char ch82data[] = { + 0xfc,0x1e,0x30,0x1c,0x30,0x38,0x30,0x70,0x30,0x60,0x30,0xc0,0x31,0xc0,0x33,0x80, + 0x3f,0xc0,0x30,0x70,0x30,0x30,0x30,0x38,0x30,0x18,0x30,0x38,0x30,0x30,0x30,0x70, + 0xff,0xc0 +}; +static const GLUTBitmapChar ch82 = { 15, 17, -1, 0, 16, ch82data }; + +static const unsigned char ch83data[] = { + 0x9e,0x0,0xf1,0x80,0xc0,0xc0,0x80,0x60,0x80,0x60,0x0,0x60,0x0,0xe0,0x3,0xc0, + 0xf,0x80,0x1e,0x0,0x78,0x0,0xe0,0x0,0xc0,0x40,0xc0,0x40,0xc0,0xc0,0x63,0xc0, + 0x1e,0x40 +}; +static const GLUTBitmapChar ch83 = { 11, 17, -1, 0, 13, ch83data }; + +static const unsigned char ch84data[] = { + 0xf,0xc0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0, + 0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x83,0x4,0x83,0x4,0xc3,0xc, + 0xff,0xfc +}; +static const GLUTBitmapChar ch84 = { 14, 17, -1, 0, 16, ch84data }; + +static const unsigned char ch85data[] = { + 0x7,0xe0,0x1c,0x30,0x18,0x8,0x30,0x8,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0xfc,0x1f +}; +static const GLUTBitmapChar ch85 = { 16, 17, -1, 0, 18, ch85data }; + +static const unsigned char ch86data[] = { + 0x1,0x80,0x0,0x1,0x80,0x0,0x1,0x80,0x0,0x3,0xc0,0x0,0x3,0x40,0x0,0x3, + 0x60,0x0,0x6,0x20,0x0,0x6,0x20,0x0,0x6,0x30,0x0,0xc,0x10,0x0,0xc,0x18, + 0x0,0x18,0x8,0x0,0x18,0x8,0x0,0x18,0xc,0x0,0x30,0x4,0x0,0x30,0x6,0x0, + 0xfc,0x1f,0x80 +}; +static const GLUTBitmapChar ch86 = { 17, 17, 0, 0, 17, ch86data }; + +static const unsigned char ch87data[] = { + 0x1,0x83,0x0,0x1,0x83,0x0,0x1,0x83,0x80,0x3,0x87,0x80,0x3,0x46,0x80,0x3, + 0x46,0xc0,0x6,0x46,0x40,0x6,0x4c,0x40,0x6,0x4c,0x60,0xc,0x2c,0x60,0xc,0x2c, + 0x20,0x18,0x2c,0x20,0x18,0x18,0x30,0x18,0x18,0x10,0x30,0x18,0x10,0x30,0x18,0x18, + 0xfc,0x7e,0x7e +}; +static const GLUTBitmapChar ch87 = { 23, 17, 0, 0, 23, ch87data }; + +static const unsigned char ch88data[] = { + 0xfc,0xf,0xc0,0x30,0x3,0x80,0x18,0x7,0x0,0x8,0xe,0x0,0x4,0xc,0x0,0x6, + 0x18,0x0,0x2,0x38,0x0,0x1,0x70,0x0,0x0,0xe0,0x0,0x0,0xc0,0x0,0x1,0xc0, + 0x0,0x3,0xa0,0x0,0x3,0x10,0x0,0x6,0x8,0x0,0xe,0xc,0x0,0x1c,0x6,0x0, + 0x7e,0xf,0x80 +}; +static const GLUTBitmapChar ch88 = { 18, 17, 0, 0, 18, ch88data }; + +static const unsigned char ch89data[] = { + 0x7,0xe0,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x3,0xc0, + 0x3,0x40,0x6,0x60,0x6,0x20,0xc,0x30,0x1c,0x10,0x18,0x18,0x38,0x8,0x30,0xc, + 0xfc,0x3f +}; +static const GLUTBitmapChar ch89 = { 16, 17, 0, 0, 16, ch89data }; + +static const unsigned char ch90data[] = { + 0xff,0xf8,0xe0,0x18,0x70,0x8,0x30,0x8,0x38,0x0,0x18,0x0,0x1c,0x0,0xe,0x0, + 0x6,0x0,0x7,0x0,0x3,0x0,0x3,0x80,0x1,0xc0,0x80,0xc0,0x80,0xe0,0xc0,0x70, + 0xff,0xf0 +}; +static const GLUTBitmapChar ch90 = { 13, 17, -1, 0, 15, ch90data }; + +static const unsigned char ch91data[] = { + 0xf8,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0xc0,0xc0,0xf8 +}; +static const GLUTBitmapChar ch91 = { 5, 21, -2, 4, 8, ch91data }; + +static const unsigned char ch92data[] = { + 0x6,0x6,0x4,0xc,0xc,0x8,0x18,0x18,0x10,0x30,0x30,0x20,0x60,0x60,0x40,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch92 = { 7, 17, 0, 0, 7, ch92data }; + +static const unsigned char ch93data[] = { + 0xf8,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18, + 0x18,0x18,0x18,0x18,0xf8 +}; +static const GLUTBitmapChar ch93 = { 5, 21, -1, 4, 8, ch93data }; + +static const unsigned char ch94data[] = { + 0x80,0x80,0xc1,0x80,0x41,0x0,0x63,0x0,0x22,0x0,0x36,0x0,0x14,0x0,0x1c,0x0, + 0x8,0x0 +}; +static const GLUTBitmapChar ch94 = { 9, 9, -1, -8, 11, ch94data }; + +static const unsigned char ch95data[] = { + 0xff,0xf8,0xff,0xf8 +}; +static const GLUTBitmapChar ch95 = { 13, 2, 0, 5, 13, ch95data }; + +static const unsigned char ch96data[] = { + 0x60,0xe0,0x80,0xc0,0x60 +}; +static const GLUTBitmapChar ch96 = { 3, 5, -2, -12, 7, ch96data }; + +static const unsigned char ch97data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0 +}; +static const GLUTBitmapChar ch97 = { 9, 12, -1, 0, 11, ch97data }; + +static const unsigned char ch98data[] = { + 0x5e,0x0,0x73,0x80,0x61,0x80,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x61,0x80,0x73,0x80,0x6e,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0, + 0xe0,0x0 +}; +static const GLUTBitmapChar ch98 = { 10, 17, -1, 0, 12, ch98data }; + +static const unsigned char ch99data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0, + 0xc0,0x0,0x41,0x80,0x63,0x80,0x1f,0x0 +}; +static const GLUTBitmapChar ch99 = { 9, 12, -1, 0, 11, ch99data }; + +static const unsigned char ch100data[] = { + 0x1e,0xc0,0x73,0x80,0x61,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80, + 0xc1,0x80,0x61,0x80,0x73,0x80,0x1d,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80, + 0x3,0x80 +}; +static const GLUTBitmapChar ch100 = { 10, 17, -1, 0, 12, ch100data }; + +static const unsigned char ch101data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80, + 0xc1,0x80,0x41,0x80,0x63,0x0,0x1e,0x0 +}; +static const GLUTBitmapChar ch101 = { 9, 12, -1, 0, 11, ch101data }; + +static const unsigned char ch102data[] = { + 0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xfe,0x30,0x30,0x30,0x16, + 0xe +}; +static const GLUTBitmapChar ch102 = { 7, 17, 0, 0, 7, ch102data }; + +static const unsigned char ch103data[] = { + 0x3f,0x0,0xf1,0xc0,0xc0,0x60,0xc0,0x20,0x60,0x60,0x3f,0xc0,0x7f,0x0,0x60,0x0, + 0x30,0x0,0x3e,0x0,0x33,0x0,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x0, + 0x1f,0xc0 +}; +static const GLUTBitmapChar ch103 = { 11, 17, -1, 5, 12, ch103data }; + +static const unsigned char ch104data[] = { + 0xf1,0xe0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x71,0xc0,0x6f,0x80,0x67,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0, + 0xe0,0x0 +}; +static const GLUTBitmapChar ch104 = { 11, 17, -1, 0, 13, ch104data }; + +static const unsigned char ch105data[] = { + 0xf0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0xe0,0x0,0x0,0x0,0x60, + 0x60 +}; +static const GLUTBitmapChar ch105 = { 4, 17, -1, 0, 6, ch105data }; + +static const unsigned char ch106data[] = { + 0xc0,0xe0,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0x70,0x0,0x0,0x0,0x30,0x30 +}; +static const GLUTBitmapChar ch106 = { 4, 22, 0, 5, 6, ch106data }; + +static const unsigned char ch107data[] = { + 0xf3,0xe0,0x61,0xc0,0x63,0x80,0x67,0x0,0x6e,0x0,0x6c,0x0,0x78,0x0,0x68,0x0, + 0x64,0x0,0x66,0x0,0x63,0x0,0x67,0xc0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0, + 0xe0,0x0 +}; +static const GLUTBitmapChar ch107 = { 11, 17, -1, 0, 12, ch107data }; + +static const unsigned char ch108data[] = { + 0xf0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60, + 0xe0 +}; +static const GLUTBitmapChar ch108 = { 4, 17, -1, 0, 6, ch108data }; + +static const unsigned char ch109data[] = { + 0xf1,0xe3,0xc0,0x60,0xc1,0x80,0x60,0xc1,0x80,0x60,0xc1,0x80,0x60,0xc1,0x80,0x60, + 0xc1,0x80,0x60,0xc1,0x80,0x60,0xc1,0x80,0x60,0xc1,0x80,0x71,0xe3,0x80,0x6f,0x9f, + 0x0,0xe7,0xe,0x0 +}; +static const GLUTBitmapChar ch109 = { 18, 12, -1, 0, 20, ch109data }; + +static const unsigned char ch110data[] = { + 0xf1,0xe0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x71,0xc0,0x6f,0x80,0xe7,0x0 +}; +static const GLUTBitmapChar ch110 = { 11, 12, -1, 0, 13, ch110data }; + +static const unsigned char ch111data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0 +}; +static const GLUTBitmapChar ch111 = { 10, 12, -1, 0, 12, ch111data }; + +static const unsigned char ch112data[] = { + 0xf0,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x6e,0x0,0x73,0x80,0x61,0x80, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x61,0x80,0x73,0x80, + 0xee,0x0 +}; +static const GLUTBitmapChar ch112 = { 10, 17, -1, 5, 12, ch112data }; + +static const unsigned char ch113data[] = { + 0x3,0xc0,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1d,0x80,0x73,0x80,0x61,0x80, + 0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0xc1,0x80,0x61,0x80,0x73,0x80, + 0x1d,0x80 +}; +static const GLUTBitmapChar ch113 = { 10, 17, -1, 5, 12, ch113data }; + +static const unsigned char ch114data[] = { + 0xf0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x76,0x6e,0xe6 +}; +static const GLUTBitmapChar ch114 = { 7, 12, -1, 0, 8, ch114data }; + +static const unsigned char ch115data[] = { + 0xf8,0xc6,0x83,0x3,0x7,0x1e,0x7c,0x70,0xe0,0xc2,0x66,0x3e +}; +static const GLUTBitmapChar ch115 = { 8, 12, -1, 0, 10, ch115data }; + +static const unsigned char ch116data[] = { + 0x1c,0x32,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xfe,0x70,0x30,0x10 +}; +static const GLUTBitmapChar ch116 = { 7, 15, 0, 0, 7, ch116data }; + +static const unsigned char ch117data[] = { + 0x1c,0xe0,0x3e,0xc0,0x71,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0xe1,0xc0 +}; +static const GLUTBitmapChar ch117 = { 11, 12, -1, 0, 13, ch117data }; + +static const unsigned char ch118data[] = { + 0x4,0x0,0xe,0x0,0xe,0x0,0x1a,0x0,0x19,0x0,0x19,0x0,0x31,0x0,0x30,0x80, + 0x30,0x80,0x60,0x80,0x60,0xc0,0xf1,0xe0 +}; +static const GLUTBitmapChar ch118 = { 11, 12, 0, 0, 11, ch118data }; + +static const unsigned char ch119data[] = { + 0x4,0x10,0x0,0xe,0x38,0x0,0xe,0x38,0x0,0x1a,0x28,0x0,0x1a,0x64,0x0,0x19, + 0x64,0x0,0x31,0x64,0x0,0x30,0xc2,0x0,0x30,0xc2,0x0,0x60,0xc2,0x0,0x60,0xc3, + 0x0,0xf1,0xe7,0x80 +}; +static const GLUTBitmapChar ch119 = { 17, 12, 0, 0, 17, ch119data }; + +static const unsigned char ch120data[] = { + 0xf1,0xe0,0x60,0xc0,0x21,0x80,0x33,0x80,0x1b,0x0,0xe,0x0,0xc,0x0,0x1a,0x0, + 0x39,0x0,0x31,0x80,0x60,0xc0,0xf1,0xe0 +}; +static const GLUTBitmapChar ch120 = { 11, 12, -1, 0, 13, ch120data }; + +static const unsigned char ch121data[] = { + 0xe0,0x0,0xf0,0x0,0x18,0x0,0x8,0x0,0xc,0x0,0x4,0x0,0xe,0x0,0xe,0x0, + 0x1a,0x0,0x19,0x0,0x19,0x0,0x31,0x0,0x30,0x80,0x30,0x80,0x60,0x80,0x60,0xc0, + 0xf1,0xe0 +}; +static const GLUTBitmapChar ch121 = { 11, 17, 0, 5, 11, ch121data }; + +static const unsigned char ch122data[] = { + 0xff,0xc3,0x61,0x70,0x30,0x38,0x18,0x1c,0xe,0x86,0xc3,0xff +}; +static const GLUTBitmapChar ch122 = { 8, 12, -1, 0, 10, ch122data }; + +static const unsigned char ch123data[] = { + 0x7,0xc,0x18,0x18,0x18,0x18,0x18,0x18,0x10,0x30,0x20,0xc0,0x20,0x30,0x10,0x18, + 0x18,0x18,0x18,0x18,0xc,0x7 +}; +static const GLUTBitmapChar ch123 = { 8, 22, -1, 5, 10, ch123data }; + +static const unsigned char ch124data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch124 = { 2, 17, -2, 0, 6, ch124data }; + +static const unsigned char ch125data[] = { + 0xe0,0x30,0x18,0x18,0x18,0x18,0x18,0x18,0x8,0xc,0x4,0x3,0x4,0xc,0x8,0x18, + 0x18,0x18,0x18,0x18,0x30,0xe0 +}; +static const GLUTBitmapChar ch125 = { 8, 22, -1, 5, 10, ch125data }; + +static const unsigned char ch126data[] = { + 0x83,0x80,0xc7,0xc0,0x7c,0x60,0x38,0x20 +}; +static const GLUTBitmapChar ch126 = { 11, 4, -1, -5, 13, ch126data }; + +static const unsigned char ch160data[] = { + 0x0 +}; +static const GLUTBitmapChar ch160 = { 1, 1, 0, 0, 6, ch160data }; + +static const unsigned char ch161data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x0,0x0,0x0,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch161 = { 2, 17, -4, 5, 8, ch161data }; + +static const unsigned char ch162data[] = { + 0x40,0x0,0x40,0x0,0x3e,0x0,0x7f,0x0,0x70,0x80,0xd0,0x0,0xc8,0x0,0xc8,0x0, + 0xc8,0x0,0xc4,0x0,0xc4,0x0,0x43,0x80,0x63,0x80,0x1f,0x0,0x1,0x0,0x1,0x0 +}; +static const GLUTBitmapChar ch162 = { 9, 16, -1, 2, 12, ch162data }; + +static const unsigned char ch163data[] = { + 0xe7,0x80,0xbe,0xc0,0x78,0x40,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0, + 0x30,0x0,0xfc,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x31,0x80,0x19,0x80, + 0xf,0x0 +}; +static const GLUTBitmapChar ch163 = { 10, 17, -1, 0, 12, ch163data }; + +static const unsigned char ch164data[] = { + 0xc0,0x60,0xee,0xe0,0x7f,0xc0,0x31,0x80,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x31,0x80,0x7f,0xc0,0xee,0xe0,0xc0,0x60 +}; +static const GLUTBitmapChar ch164 = { 11, 12, -1, -3, 13, ch164data }; + +static const unsigned char ch165data[] = { + 0xf,0xc0,0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x0,0x1f,0xe0,0x3,0x0,0x1f,0xe0, + 0x3,0x0,0x7,0x80,0xc,0x80,0xc,0xc0,0x18,0x40,0x18,0x60,0x30,0x20,0x70,0x30, + 0xf8,0x7c +}; +static const GLUTBitmapChar ch165 = { 14, 17, 0, 0, 14, ch165data }; + +static const unsigned char ch166data[] = { + 0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0x0,0x0,0x0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0 +}; +static const GLUTBitmapChar ch166 = { 2, 17, -2, 0, 6, ch166data }; + +static const unsigned char ch167data[] = { + 0x38,0x64,0x62,0x6,0xe,0x1c,0x38,0x74,0xe2,0xc3,0x83,0x87,0x4e,0x3c,0x38,0x70, + 0x60,0x46,0x26,0x1c +}; +static const GLUTBitmapChar ch167 = { 8, 20, -2, 2, 12, ch167data }; + +static const unsigned char ch168data[] = { + 0xcc,0xcc +}; +static const GLUTBitmapChar ch168 = { 6, 2, -1, -14, 8, ch168data }; + +static const unsigned char ch169data[] = { + 0x7,0xf0,0x0,0x1c,0x1c,0x0,0x30,0x6,0x0,0x61,0xc3,0x0,0x47,0x71,0x0,0xc4, + 0x19,0x80,0x8c,0x0,0x80,0x88,0x0,0x80,0x88,0x0,0x80,0x88,0x0,0x80,0x8c,0x0, + 0x80,0xc4,0x19,0x80,0x47,0x31,0x0,0x61,0xe3,0x0,0x30,0x6,0x0,0x1c,0x1c,0x0, + 0x7,0xf0,0x0 +}; +static const GLUTBitmapChar ch169 = { 17, 17, -1, 0, 19, ch169data }; + +static const unsigned char ch170data[] = { + 0x7e,0x0,0x76,0xcc,0xcc,0x7c,0xc,0xcc,0x78 +}; +static const GLUTBitmapChar ch170 = { 7, 9, 0, -8, 8, ch170data }; + +static const unsigned char ch171data[] = { + 0x8,0x80,0x19,0x80,0x33,0x0,0x66,0x0,0xcc,0x0,0xcc,0x0,0x66,0x0,0x33,0x0, + 0x19,0x80,0x8,0x80 +}; +static const GLUTBitmapChar ch171 = { 9, 10, -2, -1, 13, ch171data }; + +static const unsigned char ch172data[] = { + 0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x30,0xff,0xf0,0xff,0xf0 +}; +static const GLUTBitmapChar ch172 = { 12, 7, -1, -3, 14, ch172data }; + +static const unsigned char ch173data[] = { + 0xfe,0xfe +}; +static const GLUTBitmapChar ch173 = { 7, 2, -1, -5, 9, ch173data }; + +static const unsigned char ch174data[] = { + 0x7,0xf0,0x0,0x1c,0x1c,0x0,0x30,0x6,0x0,0x60,0x3,0x0,0x47,0x19,0x0,0xc2, + 0x31,0x80,0x82,0x20,0x80,0x82,0x40,0x80,0x83,0xe0,0x80,0x82,0x30,0x80,0x82,0x10, + 0x80,0xc2,0x11,0x80,0x42,0x31,0x0,0x67,0xe3,0x0,0x30,0x6,0x0,0x1c,0x1c,0x0, + 0x7,0xf0,0x0 +}; +static const GLUTBitmapChar ch174 = { 17, 17, -1, 0, 19, ch174data }; + +static const unsigned char ch175data[] = { + 0xfc,0xfc +}; +static const GLUTBitmapChar ch175 = { 6, 2, -1, -14, 8, ch175data }; + +static const unsigned char ch176data[] = { + 0x38,0x44,0x82,0x82,0x82,0x44,0x38 +}; +static const GLUTBitmapChar ch176 = { 7, 7, -1, -10, 9, ch176data }; + +static const unsigned char ch177data[] = { + 0xff,0xf0,0xff,0xf0,0x0,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0, + 0xff,0xf0,0xff,0xf0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch177 = { 12, 15, -1, 0, 14, ch177data }; + +static const unsigned char ch178data[] = { + 0xfc,0x44,0x20,0x30,0x10,0x8,0xc,0x8c,0x4c,0x38 +}; +static const GLUTBitmapChar ch178 = { 6, 10, 0, -7, 7, ch178data }; + +static const unsigned char ch179data[] = { + 0x70,0x88,0x8c,0xc,0x8,0x30,0x8,0x8c,0x4c,0x38 +}; +static const GLUTBitmapChar ch179 = { 6, 10, 0, -7, 7, ch179data }; + +static const unsigned char ch180data[] = { + 0x80,0x60,0x38,0x18 +}; +static const GLUTBitmapChar ch180 = { 5, 4, -2, -13, 8, ch180data }; + +static const unsigned char ch181data[] = { + 0x40,0x0,0xe0,0x0,0xc0,0x0,0x40,0x0,0x40,0x0,0x5c,0xe0,0x7e,0xc0,0x71,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0xe1,0xc0 +}; +static const GLUTBitmapChar ch181 = { 11, 17, -1, 5, 13, ch181data }; + +static const unsigned char ch182data[] = { + 0x9,0x0,0x9,0x0,0x9,0x0,0x9,0x0,0x9,0x0,0x9,0x0,0x9,0x0,0x9,0x0, + 0x9,0x0,0x9,0x0,0x9,0x0,0x19,0x0,0x39,0x0,0x79,0x0,0x79,0x0,0xf9,0x0, + 0xf9,0x0,0xf9,0x0,0x79,0x0,0x79,0x0,0x39,0x0,0x1f,0x80 +}; +static const GLUTBitmapChar ch182 = { 9, 22, -1, 5, 11, ch182data }; + +static const unsigned char ch183data[] = { + 0xc0,0xc0 +}; +static const GLUTBitmapChar ch183 = { 2, 2, -2, -6, 6, ch183data }; + +static const unsigned char ch184data[] = { + 0x78,0xcc,0xc,0x3c,0x30,0x10 +}; +static const GLUTBitmapChar ch184 = { 6, 6, -1, 6, 8, ch184data }; + +static const unsigned char ch185data[] = { + 0xf8,0x20,0x20,0x20,0x20,0x20,0x20,0xa0,0x60,0x20 +}; +static const GLUTBitmapChar ch185 = { 5, 10, -1, -7, 7, ch185data }; + +static const unsigned char ch186data[] = { + 0xfc,0x0,0x78,0xcc,0xcc,0xcc,0xcc,0xcc,0x78 +}; +static const GLUTBitmapChar ch186 = { 6, 9, -1, -8, 8, ch186data }; + +static const unsigned char ch187data[] = { + 0x88,0x0,0xcc,0x0,0x66,0x0,0x33,0x0,0x19,0x80,0x19,0x80,0x33,0x0,0x66,0x0, + 0xcc,0x0,0x88,0x0 +}; +static const GLUTBitmapChar ch187 = { 9, 10, -2, -1, 12, ch187data }; + +static const unsigned char ch188data[] = { + 0x30,0x4,0x10,0x4,0x18,0xff,0x8,0x44,0xc,0x64,0x6,0x24,0x2,0x14,0xfb,0x1c, + 0x21,0xc,0x21,0x84,0x20,0xc0,0x20,0x40,0x20,0x60,0x20,0x20,0xa0,0x30,0x60,0x18, + 0x20,0x8 +}; +static const GLUTBitmapChar ch188 = { 16, 17, -1, 0, 18, ch188data }; + +static const unsigned char ch189data[] = { + 0x30,0x7e,0x10,0x22,0x18,0x10,0x8,0x18,0xc,0x8,0x6,0x4,0x2,0x6,0xfb,0x46, + 0x21,0x26,0x21,0x9c,0x20,0xc0,0x20,0x40,0x20,0x60,0x20,0x20,0xa0,0x30,0x60,0x18, + 0x20,0x8 +}; +static const GLUTBitmapChar ch189 = { 15, 17, -1, 0, 18, ch189data }; + +static const unsigned char ch190data[] = { + 0x18,0x2,0x0,0x8,0x2,0x0,0xc,0x7f,0x80,0x4,0x22,0x0,0x6,0x32,0x0,0x3, + 0x12,0x0,0x1,0xa,0x0,0x71,0x8e,0x0,0x88,0x86,0x0,0x8c,0xc2,0x0,0xc,0x60, + 0x0,0x8,0x20,0x0,0x30,0x30,0x0,0x8,0x10,0x0,0x8c,0x18,0x0,0x4c,0xc,0x0, + 0x38,0x4,0x0 +}; +static const GLUTBitmapChar ch190 = { 17, 17, 0, 0, 18, ch190data }; + +static const unsigned char ch191data[] = { + 0x3e,0x63,0xc1,0xc3,0xc3,0xe0,0x70,0x30,0x38,0x18,0x18,0x8,0x8,0x0,0x0,0xc, + 0xc +}; +static const GLUTBitmapChar ch191 = { 8, 17, -1, 5, 11, ch191data }; + +static const unsigned char ch192data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x0,0xc0,0x0,0x3,0x80,0x0,0x3, + 0x0,0x0 +}; +static const GLUTBitmapChar ch192 = { 17, 22, 0, 0, 17, ch192data }; + +static const unsigned char ch193data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xc0,0x0,0x0,0x70,0x0,0x0, + 0x30,0x0 +}; +static const GLUTBitmapChar ch193 = { 17, 22, 0, 0, 17, ch193data }; + +static const unsigned char ch194data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x0,0x0,0x0,0x8,0x10,0x0,0x6,0x60,0x0,0x3,0xc0,0x0,0x1, + 0x80,0x0 +}; +static const GLUTBitmapChar ch194 = { 17, 22, 0, 0, 17, ch194data }; + +static const unsigned char ch195data[] = { + 0xfc,0x1f,0x80,0x30,0x7,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0xe0,0x0,0x3,0x90,0x0 +}; +static const GLUTBitmapChar ch195 = { 17, 21, 0, 0, 17, ch195data }; + +static const unsigned char ch196data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x30,0x0,0x6,0x30,0x0 +}; +static const GLUTBitmapChar ch196 = { 17, 21, 0, 0, 17, ch196data }; + +static const unsigned char ch197data[] = { + 0xfc,0x1f,0x80,0x30,0x6,0x0,0x10,0x6,0x0,0x10,0xc,0x0,0x18,0xc,0x0,0x8, + 0xc,0x0,0xf,0xf8,0x0,0xc,0x18,0x0,0x4,0x18,0x0,0x4,0x30,0x0,0x6,0x30, + 0x0,0x2,0x30,0x0,0x2,0x60,0x0,0x1,0x60,0x0,0x1,0xc0,0x0,0x1,0xc0,0x0, + 0x0,0x80,0x0,0x1,0xc0,0x0,0x2,0x20,0x0,0x2,0x20,0x0,0x1,0xc0,0x0 +}; +static const GLUTBitmapChar ch197 = { 17, 21, 0, 0, 17, ch197data }; + +static const unsigned char ch198data[] = { + 0xf9,0xff,0xf0,0x30,0x60,0x30,0x10,0x60,0x10,0x10,0x60,0x10,0x18,0x60,0x0,0x8, + 0x60,0x0,0xf,0xe0,0x80,0xc,0x60,0x80,0x4,0x7f,0x80,0x4,0x60,0x80,0x6,0x60, + 0x80,0x2,0x60,0x0,0x2,0x60,0x0,0x1,0x60,0x20,0x1,0x60,0x20,0x1,0xe0,0x60, + 0x3,0xff,0xe0 +}; +static const GLUTBitmapChar ch198 = { 20, 17, 0, 0, 21, ch198data }; + +static const unsigned char ch199data[] = { + 0x7,0x80,0xc,0xc0,0x0,0xc0,0x3,0xc0,0x3,0x0,0x1,0x0,0x7,0xe0,0x1e,0x38, + 0x38,0x8,0x60,0x4,0x60,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0, + 0xc0,0x0,0xc0,0x0,0x60,0x4,0x60,0x4,0x38,0xc,0x1c,0x3c,0x7,0xe4 +}; +static const GLUTBitmapChar ch199 = { 14, 23, -1, 6, 16, ch199data }; + +static const unsigned char ch200data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x40,0x30,0x40, + 0x3f,0xc0,0x30,0x40,0x30,0x40,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0,0x0,0x0,0x1,0x0,0x6,0x0,0x1c,0x0,0x18,0x0 +}; +static const GLUTBitmapChar ch200 = { 13, 22, -1, 0, 15, ch200data }; + +static const unsigned char ch201data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x40,0x30,0x40, + 0x3f,0xc0,0x30,0x40,0x30,0x40,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0,0x0,0x0,0x4,0x0,0x3,0x0,0x1,0xc0,0x0,0xc0 +}; +static const GLUTBitmapChar ch201 = { 13, 22, -1, 0, 15, ch201data }; + +static const unsigned char ch202data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x40,0x30,0x40, + 0x3f,0xc0,0x30,0x40,0x30,0x40,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0,0x0,0x0,0x10,0x20,0xc,0xc0,0x7,0x80,0x3,0x0 +}; +static const GLUTBitmapChar ch202 = { 13, 22, -1, 0, 15, ch202data }; + +static const unsigned char ch203data[] = { + 0xff,0xf8,0x30,0x18,0x30,0x8,0x30,0x8,0x30,0x0,0x30,0x0,0x30,0x40,0x30,0x40, + 0x3f,0xc0,0x30,0x40,0x30,0x40,0x30,0x0,0x30,0x0,0x30,0x10,0x30,0x10,0x30,0x30, + 0xff,0xf0,0x0,0x0,0x0,0x0,0x19,0x80,0x19,0x80 +}; +static const GLUTBitmapChar ch203 = { 13, 21, -1, 0, 15, ch203data }; + +static const unsigned char ch204data[] = { + 0xfc,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0xfc,0x0,0x8,0x30,0xe0,0xc0 +}; +static const GLUTBitmapChar ch204 = { 6, 22, -1, 0, 8, ch204data }; + +static const unsigned char ch205data[] = { + 0xfc,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0xfc,0x0,0x40,0x30,0x1c,0xc +}; +static const GLUTBitmapChar ch205 = { 6, 22, -1, 0, 8, ch205data }; + +static const unsigned char ch206data[] = { + 0x7e,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18, + 0x7e,0x0,0x81,0x66,0x3c,0x18 +}; +static const GLUTBitmapChar ch206 = { 8, 22, -1, 0, 8, ch206data }; + +static const unsigned char ch207data[] = { + 0xfc,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, + 0xfc,0x0,0x0,0xcc,0xcc +}; +static const GLUTBitmapChar ch207 = { 6, 21, -1, 0, 8, ch207data }; + +static const unsigned char ch208data[] = { + 0x7f,0xe0,0x18,0x38,0x18,0x1c,0x18,0x6,0x18,0x6,0x18,0x3,0x18,0x3,0x18,0x3, + 0xff,0x3,0x18,0x3,0x18,0x3,0x18,0x3,0x18,0x6,0x18,0x6,0x18,0x1c,0x18,0x38, + 0x7f,0xe0 +}; +static const GLUTBitmapChar ch208 = { 16, 17, 0, 0, 17, ch208data }; + +static const unsigned char ch209data[] = { + 0xf8,0xc,0x20,0x1c,0x20,0x1c,0x20,0x34,0x20,0x64,0x20,0x64,0x20,0xc4,0x21,0x84, + 0x21,0x84,0x23,0x4,0x26,0x4,0x26,0x4,0x2c,0x4,0x38,0x4,0x38,0x4,0x30,0x4, + 0xf0,0x1f,0x0,0x0,0x0,0x0,0x4,0xe0,0x3,0x90 +}; +static const GLUTBitmapChar ch209 = { 16, 21, -1, 0, 18, ch209data }; + +static const unsigned char ch210data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0,0x0,0x0,0x0,0x40,0x1,0x80,0x7,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch210 = { 16, 22, -1, 0, 18, ch210data }; + +static const unsigned char ch211data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0,0x0,0x0,0x1,0x0,0x0,0xc0,0x0,0x70,0x0,0x30 +}; +static const GLUTBitmapChar ch211 = { 16, 22, -1, 0, 18, ch211data }; + +static const unsigned char ch212data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0,0x0,0x0,0x8,0x10,0x6,0x60,0x3,0xc0,0x1,0x80 +}; +static const GLUTBitmapChar ch212 = { 16, 22, -1, 0, 18, ch212data }; + +static const unsigned char ch213data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0,0x0,0x0,0x0,0x0,0x4,0xe0,0x3,0x90 +}; +static const GLUTBitmapChar ch213 = { 16, 21, -1, 0, 18, ch213data }; + +static const unsigned char ch214data[] = { + 0x7,0xe0,0x1c,0x38,0x38,0x1c,0x60,0x6,0x60,0x6,0xc0,0x3,0xc0,0x3,0xc0,0x3, + 0xc0,0x3,0xc0,0x3,0xc0,0x3,0xc0,0x3,0x60,0x6,0x60,0x6,0x38,0x1c,0x1c,0x38, + 0x7,0xe0,0x0,0x0,0x0,0x0,0x6,0x60,0x6,0x60 +}; +static const GLUTBitmapChar ch214 = { 16, 21, -1, 0, 18, ch214data }; + +static const unsigned char ch215data[] = { + 0x80,0x40,0xc0,0xc0,0x61,0x80,0x33,0x0,0x1e,0x0,0xc,0x0,0x1e,0x0,0x33,0x0, + 0x61,0x80,0xc0,0xc0,0x80,0x40 +}; +static const GLUTBitmapChar ch215 = { 10, 11, -2, -1, 14, ch215data }; + +static const unsigned char ch216data[] = { + 0x20,0x0,0x27,0xe0,0x1c,0x38,0x38,0x1c,0x68,0x6,0x64,0x6,0xc2,0x3,0xc2,0x3, + 0xc1,0x3,0xc1,0x3,0xc0,0x83,0xc0,0x83,0xc0,0x43,0x60,0x46,0x60,0x26,0x38,0x1c, + 0x1c,0x38,0x7,0xe4,0x0,0x4 +}; +static const GLUTBitmapChar ch216 = { 16, 19, -1, 1, 18, ch216data }; + +static const unsigned char ch217data[] = { + 0x7,0xe0,0x1c,0x30,0x18,0x8,0x30,0x8,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0xfc,0x1f,0x0,0x0,0x0,0x40,0x1,0x80,0x7,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch217 = { 16, 22, -1, 0, 18, ch217data }; + +static const unsigned char ch218data[] = { + 0x7,0xe0,0x1c,0x30,0x18,0x8,0x30,0x8,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0xfc,0x1f,0x0,0x0,0x1,0x0,0x0,0xc0,0x0,0x70,0x0,0x30 +}; +static const GLUTBitmapChar ch218 = { 16, 22, -1, 0, 18, ch218data }; + +static const unsigned char ch219data[] = { + 0x7,0xe0,0x1c,0x30,0x18,0x8,0x30,0x8,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0xfc,0x1f,0x0,0x0,0x8,0x10,0x6,0x60,0x3,0xc0,0x1,0x80 +}; +static const GLUTBitmapChar ch219 = { 16, 22, -1, 0, 18, ch219data }; + +static const unsigned char ch220data[] = { + 0x7,0xe0,0x1c,0x30,0x18,0x8,0x30,0x8,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4,0x30,0x4, + 0xfc,0x1f,0x0,0x0,0x0,0x0,0x6,0x30,0x6,0x30 +}; +static const GLUTBitmapChar ch220 = { 16, 21, -1, 0, 18, ch220data }; + +static const unsigned char ch221data[] = { + 0x7,0xe0,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x1,0x80,0x3,0xc0, + 0x3,0x40,0x6,0x60,0x6,0x20,0xc,0x30,0x1c,0x10,0x18,0x18,0x38,0x8,0x30,0xc, + 0xfc,0x3f,0x0,0x0,0x1,0x0,0x0,0xc0,0x0,0x70,0x0,0x30 +}; +static const GLUTBitmapChar ch221 = { 16, 22, 0, 0, 16, ch221data }; + +static const unsigned char ch222data[] = { + 0xfc,0x0,0x30,0x0,0x30,0x0,0x30,0x0,0x3f,0xc0,0x30,0x70,0x30,0x30,0x30,0x18, + 0x30,0x18,0x30,0x18,0x30,0x30,0x30,0x70,0x3f,0xc0,0x30,0x0,0x30,0x0,0x30,0x0, + 0xfc,0x0 +}; +static const GLUTBitmapChar ch222 = { 13, 17, -1, 0, 15, ch222data }; + +static const unsigned char ch223data[] = { + 0xe7,0x0,0x6c,0x80,0x6c,0xc0,0x60,0xc0,0x60,0xc0,0x61,0xc0,0x61,0x80,0x63,0x80, + 0x67,0x0,0x6c,0x0,0x63,0x0,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x0, + 0x1e,0x0 +}; +static const GLUTBitmapChar ch223 = { 10, 17, -1, 0, 12, ch223data }; + +static const unsigned char ch224data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x4,0x0,0x18,0x0,0x70,0x0, + 0x60,0x0 +}; +static const GLUTBitmapChar ch224 = { 9, 17, -1, 0, 11, ch224data }; + +static const unsigned char ch225data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x10,0x0,0xc,0x0,0x7,0x0, + 0x3,0x0 +}; +static const GLUTBitmapChar ch225 = { 9, 17, -1, 0, 11, ch225data }; + +static const unsigned char ch226data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x42,0x0,0x24,0x0,0x3c,0x0, + 0x18,0x0 +}; +static const GLUTBitmapChar ch226 = { 9, 17, -1, 0, 11, ch226data }; + +static const unsigned char ch227data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x5c,0x0,0x3a,0x0 +}; +static const GLUTBitmapChar ch227 = { 9, 16, -1, 0, 11, ch227data }; + +static const unsigned char ch228data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x66,0x0,0x66,0x0 +}; +static const GLUTBitmapChar ch228 = { 9, 16, -1, 0, 11, ch228data }; + +static const unsigned char ch229data[] = { + 0x71,0x80,0xfb,0x0,0xc7,0x0,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0x0, + 0x3,0x0,0x63,0x0,0x67,0x0,0x3e,0x0,0x0,0x0,0x1c,0x0,0x22,0x0,0x22,0x0, + 0x1c,0x0 +}; +static const GLUTBitmapChar ch229 = { 9, 17, -1, 0, 11, ch229data }; + +static const unsigned char ch230data[] = { + 0x70,0xf0,0xfb,0xf8,0xc7,0x84,0xc3,0x0,0xc3,0x0,0x63,0x0,0x3b,0x0,0xf,0xfc, + 0x3,0xc,0x63,0xc,0x67,0x98,0x3c,0xf0 +}; +static const GLUTBitmapChar ch230 = { 14, 12, -1, 0, 16, ch230data }; + +static const unsigned char ch231data[] = { + 0x3c,0x0,0x66,0x0,0x6,0x0,0x1e,0x0,0x18,0x0,0x8,0x0,0x1e,0x0,0x7f,0x0, + 0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0x41,0x80, + 0x63,0x80,0x1f,0x0 +}; +static const GLUTBitmapChar ch231 = { 9, 18, -1, 6, 11, ch231data }; + +static const unsigned char ch232data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80, + 0xc1,0x80,0x41,0x80,0x63,0x0,0x1e,0x0,0x0,0x0,0x4,0x0,0x18,0x0,0x70,0x0, + 0x60,0x0 +}; +static const GLUTBitmapChar ch232 = { 9, 17, -1, 0, 11, ch232data }; + +static const unsigned char ch233data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80, + 0xc1,0x80,0x41,0x80,0x63,0x0,0x1e,0x0,0x0,0x0,0x10,0x0,0xc,0x0,0x7,0x0, + 0x3,0x0 +}; +static const GLUTBitmapChar ch233 = { 9, 17, -1, 0, 11, ch233data }; + +static const unsigned char ch234data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80, + 0xc1,0x80,0x41,0x80,0x63,0x0,0x1e,0x0,0x0,0x0,0x21,0x0,0x12,0x0,0x1e,0x0, + 0xc,0x0 +}; +static const GLUTBitmapChar ch234 = { 9, 17, -1, 0, 11, ch234data }; + +static const unsigned char ch235data[] = { + 0x1e,0x0,0x7f,0x0,0x70,0x80,0xe0,0x0,0xc0,0x0,0xc0,0x0,0xc0,0x0,0xff,0x80, + 0xc1,0x80,0x41,0x80,0x63,0x0,0x1e,0x0,0x0,0x0,0x0,0x0,0x33,0x0,0x33,0x0 +}; +static const GLUTBitmapChar ch235 = { 9, 16, -1, 0, 11, ch235data }; + +static const unsigned char ch236data[] = { + 0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x70,0x0,0x8,0x30,0xe0, + 0xc0 +}; +static const GLUTBitmapChar ch236 = { 5, 17, 0, 0, 6, ch236data }; + +static const unsigned char ch237data[] = { + 0xf0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0xe0,0x0,0x80,0x60,0x38, + 0x18 +}; +static const GLUTBitmapChar ch237 = { 5, 17, -1, 0, 6, ch237data }; + +static const unsigned char ch238data[] = { + 0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x70,0x0,0x84,0x48,0x78, + 0x30 +}; +static const GLUTBitmapChar ch238 = { 6, 17, 0, 0, 6, ch238data }; + +static const unsigned char ch239data[] = { + 0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x70,0x0,0x0,0xcc,0xcc +}; +static const GLUTBitmapChar ch239 = { 6, 16, 0, 0, 6, ch239data }; + +static const unsigned char ch240data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1f,0x0,0xc6,0x0,0x3c,0x0,0x1e,0x0,0x71,0x80, + 0xc0,0x0 +}; +static const GLUTBitmapChar ch240 = { 10, 17, -1, 0, 12, ch240data }; + +static const unsigned char ch241data[] = { + 0xf1,0xe0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x71,0xc0,0x6f,0x80,0xe7,0x0,0x0,0x0,0x0,0x0,0x27,0x0,0x1c,0x80 +}; +static const GLUTBitmapChar ch241 = { 11, 16, -1, 0, 13, ch241data }; + +static const unsigned char ch242data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0,0x0,0x0,0x2,0x0,0xc,0x0,0x38,0x0, + 0x30,0x0 +}; +static const GLUTBitmapChar ch242 = { 10, 17, -1, 0, 12, ch242data }; + +static const unsigned char ch243data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0,0x0,0x0,0x8,0x0,0x6,0x0,0x3,0x80, + 0x1,0x80 +}; +static const GLUTBitmapChar ch243 = { 10, 17, -1, 0, 12, ch243data }; + +static const unsigned char ch244data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0,0x0,0x0,0x21,0x0,0x12,0x0,0x1e,0x0, + 0xc,0x0 +}; +static const GLUTBitmapChar ch244 = { 10, 17, -1, 0, 12, ch244data }; + +static const unsigned char ch245data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0,0x0,0x0,0x0,0x0,0x27,0x0,0x1c,0x80 +}; +static const GLUTBitmapChar ch245 = { 10, 16, -1, 0, 12, ch245data }; + +static const unsigned char ch246data[] = { + 0x1e,0x0,0x73,0x80,0x61,0x80,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0, + 0xc0,0xc0,0x61,0x80,0x73,0x80,0x1e,0x0,0x0,0x0,0x0,0x0,0x33,0x0,0x33,0x0 +}; +static const GLUTBitmapChar ch246 = { 10, 16, -1, 0, 12, ch246data }; + +static const unsigned char ch247data[] = { + 0x6,0x0,0x6,0x0,0x0,0x0,0x0,0x0,0xff,0xf0,0xff,0xf0,0x0,0x0,0x0,0x0, + 0x6,0x0,0x6,0x0 +}; +static const GLUTBitmapChar ch247 = { 12, 10, -1, -2, 14, ch247data }; + +static const unsigned char ch248data[] = { + 0xc0,0x0,0xde,0x0,0x73,0x80,0x71,0x80,0xd0,0xc0,0xd8,0xc0,0xc8,0xc0,0xcc,0xc0, + 0xc4,0xc0,0xc6,0xc0,0x63,0x80,0x73,0x80,0x1e,0xc0,0x0,0xc0 +}; +static const GLUTBitmapChar ch248 = { 10, 14, -1, 1, 12, ch248data }; + +static const unsigned char ch249data[] = { + 0x1c,0xe0,0x3e,0xc0,0x71,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0xe1,0xc0,0x0,0x0,0x2,0x0,0xc,0x0,0x38,0x0, + 0x30,0x0 +}; +static const GLUTBitmapChar ch249 = { 11, 17, -1, 0, 13, ch249data }; + +static const unsigned char ch250data[] = { + 0x1c,0xe0,0x3e,0xc0,0x71,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0xe1,0xc0,0x0,0x0,0x8,0x0,0x6,0x0,0x3,0x80, + 0x1,0x80 +}; +static const GLUTBitmapChar ch250 = { 11, 17, -1, 0, 13, ch250data }; + +static const unsigned char ch251data[] = { + 0x1c,0xe0,0x3e,0xc0,0x71,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0xe1,0xc0,0x0,0x0,0x21,0x0,0x12,0x0,0x1e,0x0, + 0xc,0x0 +}; +static const GLUTBitmapChar ch251 = { 11, 17, -1, 0, 13, ch251data }; + +static const unsigned char ch252data[] = { + 0x1c,0xe0,0x3e,0xc0,0x71,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0xe1,0xc0,0x0,0x0,0x0,0x0,0x33,0x0,0x33,0x0 +}; +static const GLUTBitmapChar ch252 = { 11, 16, -1, 0, 13, ch252data }; + +static const unsigned char ch253data[] = { + 0xe0,0x0,0xf0,0x0,0x18,0x0,0x8,0x0,0xc,0x0,0x4,0x0,0xe,0x0,0xe,0x0, + 0x1a,0x0,0x19,0x0,0x19,0x0,0x31,0x0,0x30,0x80,0x30,0x80,0x60,0x80,0x60,0xc0, + 0xf1,0xe0,0x0,0x0,0x8,0x0,0x6,0x0,0x3,0x80,0x1,0x80 +}; +static const GLUTBitmapChar ch253 = { 11, 22, 0, 5, 11, ch253data }; + +static const unsigned char ch254data[] = { + 0xf0,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x6e,0x0,0x73,0x80,0x61,0x80, + 0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x60,0xc0,0x61,0x80,0x73,0x80, + 0x6e,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0x60,0x0,0xe0,0x0 +}; +static const GLUTBitmapChar ch254 = { 10, 22, -1, 5, 12, ch254data }; + +static const unsigned char ch255data[] = { + 0xe0,0x0,0xf0,0x0,0x18,0x0,0x8,0x0,0xc,0x0,0x4,0x0,0xe,0x0,0xe,0x0, + 0x1a,0x0,0x19,0x0,0x19,0x0,0x31,0x0,0x30,0x80,0x30,0x80,0x60,0x80,0x60,0xc0, + 0xf1,0xe0,0x0,0x0,0x0,0x0,0x33,0x0,0x33,0x0 +}; +static const GLUTBitmapChar ch255 = { 11, 21, 0, 5, 11, ch255data }; + + +static const GLUTBitmapChar *chars[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, + &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, + &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, + &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, + &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, + &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, + &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, + &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, + &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, + &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, + &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, + &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + &ch160, &ch161, &ch162, &ch163, &ch164, &ch165, &ch166, &ch167, + &ch168, &ch169, &ch170, &ch171, &ch172, &ch173, &ch174, &ch175, + &ch176, &ch177, &ch178, &ch179, &ch180, &ch181, &ch182, &ch183, + &ch184, &ch185, &ch186, &ch187, &ch188, &ch189, &ch190, &ch191, + &ch192, &ch193, &ch194, &ch195, &ch196, &ch197, &ch198, &ch199, + &ch200, &ch201, &ch202, &ch203, &ch204, &ch205, &ch206, &ch207, + &ch208, &ch209, &ch210, &ch211, &ch212, &ch213, &ch214, &ch215, + &ch216, &ch217, &ch218, &ch219, &ch220, &ch221, &ch222, &ch223, + &ch224, &ch225, &ch226, &ch227, &ch228, &ch229, &ch230, &ch231, + &ch232, &ch233, &ch234, &ch235, &ch236, &ch237, &ch238, &ch239, + &ch240, &ch241, &ch242, &ch243, &ch244, &ch245, &ch246, &ch247, + &ch248, &ch249, &ch250, &ch251, &ch252, &ch253, &ch254, &ch255 +}; + +const GLUTBitmapFont glutBitmapTimesRoman24 = { + "-Adobe-Times-Medium-R-Normal--24-240-75-75-P-124-ISO8859-1", + 28, 256, chars +}; diff --git a/src/glut/dos/util.c b/src/glut/dos/util.c index e5969ded49..df126443d3 100644 --- a/src/glut/dos/util.c +++ b/src/glut/dos/util.c @@ -1,40 +1,33 @@ /* - * Mesa 3-D graphics library - * Version: 3.4 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.4 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@yahoo.com - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -#include "glutint.h" -#include "glutbitmap.h" -#include "glutstroke.h" +#include "internal.h" -#ifdef GLUT_IMPORT_LIB -extern StrokeFontRec glutStrokeRoman, glutStrokeMonoRoman; -extern BitmapFontRec glutBitmap8By13, glutBitmap9By15, glutBitmapTimesRoman10, glutBitmapTimesRoman24, glutBitmapHelvetica10, glutBitmapHelvetica12, glutBitmapHelvetica18; +extern GLUTStrokeFont glutStrokeRoman, glutStrokeMonoRoman; +extern GLUTBitmapFont glutBitmap8By13, glutBitmap9By15, glutBitmapTimesRoman10, glutBitmapTimesRoman24, glutBitmapHelvetica10, glutBitmapHelvetica12, glutBitmapHelvetica18; /* To get around the fact that DJGPP DXEs only allow functions to be exported and no data addresses (as Unix DSOs support), the @@ -42,7 +35,7 @@ extern BitmapFontRec glutBitmap8By13, glutBitmap9By15, glutBitmapTimesRoman10, g through a case statement to get mapped to the actual data structure address. */ void * -__glutFont (void *font) +_glut_font (void *font) { switch ((int)font) { case (int)GLUT_STROKE_ROMAN: @@ -63,9 +56,19 @@ __glutFont (void *font) return &glutBitmapHelvetica12; case (int)GLUT_BITMAP_HELVETICA_18: return &glutBitmapHelvetica18; - default: /* NOTREACHED */ - __glutFatalError("bad font!"); + default: + if ((font == &glutStrokeRoman) || + (font == &glutStrokeMonoRoman) || + (font == &glutBitmap9By15) || + (font == &glutBitmap8By13) || + (font == &glutBitmapTimesRoman10) || + (font == &glutBitmapTimesRoman24) || + (font == &glutBitmapHelvetica10) || + (font == &glutBitmapHelvetica12) || + (font == &glutBitmapHelvetica18)) { + return font; + } + _glut_fatal("bad font!"); return NULL; } } -#endif diff --git a/src/glut/dos/window.c b/src/glut/dos/window.c index 1139f48a66..b922746a9e 100644 --- a/src/glut/dos/window.c +++ b/src/glut/dos/window.c @@ -1,43 +1,38 @@ /* - * Mesa 3-D graphics library - * Version: 4.1 - * Copyright (C) 1995-1998 Brian Paul + * DOS/DJGPP Mesa Utility Toolkit + * Version: 1.0 * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * Copyright (C) 2005 Daniel Borca All Rights Reserved. * - * This library 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 - * Library General Public License for more details. + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -/* - * DOS/DJGPP glut driver v1.4 for Mesa + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. * - * Copyright (C) 2002 - Daniel Borca - * Email : dborca@users.sourceforge.net - * Web : http://www.geocities.com/dborca + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * DANIEL BORCA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include <stdio.h> -#include "glutint.h" -#include "GL/dmesa.h" +#include "internal.h" -GLUTwindow *g_curwin; static GLuint swaptime, swapcount; static DMesaVisual visual = NULL; -GLUTwindow *g_windows[MAX_WINDOWS]; + +GLUTwindow *_glut_current, *_glut_windows[MAX_WINDOWS]; static void @@ -55,11 +50,21 @@ clean (void) } +static GLUTwindow * +_glut_window (int win) +{ + if (win > 0 && --win < MAX_WINDOWS) { + return _glut_windows[win]; + } + return NULL; +} + + int APIENTRY glutCreateWindow (const char *title) { int i; - int m8width = (g_init_w + 7) & ~7; + int m8width = (_glut_default.width + 7) & ~7; /* We set the Visual once. This will be our desktop (graphic mode). * We should do this in the `glutInit' code, but we don't have any idea @@ -67,16 +72,19 @@ glutCreateWindow (const char *title) * window, we have a slight idea about resolution. */ if (!visual) { - if ((visual=DMesaCreateVisual(g_init_x + m8width, g_init_y + g_init_h, g_bpp, g_refresh, - g_display_mode & GLUT_DOUBLE, - !(g_display_mode & GLUT_INDEX), - (g_display_mode & GLUT_ALPHA ) ? g_alpha : 0, - (g_display_mode & GLUT_DEPTH ) ? g_depth : 0, - (g_display_mode & GLUT_STENCIL) ? g_stencil : 0, - (g_display_mode & GLUT_ACCUM ) ? g_accum : 0))==NULL) { + if ((visual=DMesaCreateVisual(_glut_default.x + m8width, _glut_default.y + _glut_default.height, _glut_visual.bpp, _glut_visual.refresh, + _glut_default.mode & GLUT_DOUBLE, + !(_glut_default.mode & GLUT_INDEX), + (_glut_default.mode & GLUT_ALPHA ) ? _glut_visual.alpha : 0, + (_glut_default.mode & GLUT_DEPTH ) ? _glut_visual.depth : 0, + (_glut_default.mode & GLUT_STENCIL) ? _glut_visual.stencil : 0, + (_glut_default.mode & GLUT_ACCUM ) ? _glut_visual.accum : 0))==NULL) { return 0; } + DMesaGetIntegerv(DMESA_GET_SCREEN_SIZE, _glut_visual.geometry); + DMesaGetIntegerv(DMESA_GET_DRIVER_CAPS, &_glut_visual.flags); + /* Also hook stdio/stderr once */ pc_open_stdout(); pc_open_stderr(); @@ -87,7 +95,7 @@ glutCreateWindow (const char *title) * Each window has its own rendering Context and its own Buffer. */ for (i=0; i<MAX_WINDOWS; i++) { - if (g_windows[i] == NULL) { + if (_glut_windows[i] == NULL) { DMesaContext c; DMesaBuffer b; GLUTwindow *w; @@ -105,7 +113,7 @@ glutCreateWindow (const char *title) /* Allocate the Buffer (displayable area). * We have to specify buffer size and position (inside the desktop). */ - if ((b = DMesaCreateBuffer(visual, g_init_x, g_init_y, m8width, g_init_h)) == NULL) { + if ((b = DMesaCreateBuffer(visual, _glut_default.x, _glut_default.y, m8width, _glut_default.height)) == NULL) { DMesaDestroyContext(c); free(w); return 0; @@ -119,13 +127,13 @@ glutCreateWindow (const char *title) return 0; } - g_curwin = g_windows[i] = w; + _glut_current = _glut_windows[i] = w; w->num = ++i; - w->xpos = g_init_x; - w->ypos = g_init_y; + w->xpos = _glut_default.x; + w->ypos = _glut_default.y; w->width = m8width; - w->height = g_init_h; + w->height = _glut_default.height; w->context = c; w->buffer = b; @@ -147,13 +155,16 @@ glutCreateSubWindow (int win, int x, int y, int width, int height) void APIENTRY glutDestroyWindow (int win) { - if (g_windows[--win]) { - GLUTwindow *w = g_windows[win]; + GLUTwindow *w = _glut_window(win); + if (w != NULL) { + if (w->destroy) { + w->destroy(); + } DMesaMakeCurrent(NULL, NULL); DMesaDestroyBuffer(w->buffer); DMesaDestroyContext(w->context); free(w); - g_windows[win] = NULL; + _glut_windows[win - 1] = NULL; } } @@ -161,27 +172,27 @@ glutDestroyWindow (int win) void APIENTRY glutPostRedisplay (void) { - g_curwin->redisplay = GL_TRUE; + _glut_current->redisplay = GL_TRUE; } void APIENTRY glutSwapBuffers (void) { - if (g_curwin->show_mouse) { + if (_glut_current->show_mouse) { /* XXX scare mouse */ - DMesaSwapBuffers(g_curwin->buffer); + DMesaSwapBuffers(_glut_current->buffer); /* XXX unscare mouse */ } else { - DMesaSwapBuffers(g_curwin->buffer); + DMesaSwapBuffers(_glut_current->buffer); } - if (g_fps) { + if (_glut_fps) { GLint t = glutGet(GLUT_ELAPSED_TIME); swapcount++; if (swaptime == 0) swaptime = t; - else if (t - swaptime > g_fps) { + else if (t - swaptime > _glut_fps) { double time = 0.001 * (t - swaptime); double fps = (double)swapcount / time; fprintf(stderr, "GLUT: %d frames in %.2f seconds = %.2f FPS\n", swapcount, time, fps); @@ -195,15 +206,18 @@ glutSwapBuffers (void) int APIENTRY glutGetWindow (void) { - return g_curwin->num; + return _glut_current->num; } void APIENTRY glutSetWindow (int win) { - g_curwin = g_windows[win - 1]; - DMesaMakeCurrent(g_curwin->context, g_curwin->buffer); + GLUTwindow *w = _glut_window(win); + if (w != NULL) { + _glut_current = w; + DMesaMakeCurrent(_glut_current->context, _glut_current->buffer); + } } @@ -223,8 +237,8 @@ void APIENTRY glutPositionWindow (int x, int y) { if (DMesaMoveBuffer(x, y)) { - g_curwin->xpos = x; - g_curwin->ypos = y; + _glut_current->xpos = x; + _glut_current->ypos = y; } } @@ -233,10 +247,10 @@ void APIENTRY glutReshapeWindow (int width, int height) { if (DMesaResizeBuffer(width, height)) { - g_curwin->width = width; - g_curwin->height = height; - if (g_curwin->reshape) { - g_curwin->reshape(width, height); + _glut_current->width = width; + _glut_current->height = height; + if (_glut_current->reshape) { + _glut_current->reshape(width, height); } else { glViewport(0, 0, width, height); } @@ -278,3 +292,34 @@ void APIENTRY glutHideWindow (void) { } + + +void APIENTRY +glutCloseFunc (GLUTdestroyCB destroy) +{ + _glut_current->destroy = destroy; +} + + +void APIENTRY +glutPostWindowRedisplay (int win) +{ + GLUTwindow *w = _glut_window(win); + if (w != NULL) { + w->redisplay = GL_TRUE; + } +} + + +void * APIENTRY +glutGetWindowData (void) +{ + return _glut_current->data; +} + + +void APIENTRY +glutSetWindowData (void *data) +{ + _glut_current->data = data; +} |