2 * Mesa 3-D graphics library
4 * Copyright (C) 1995-1998 Brian Paul
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the Free
18 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 * DOS/DJGPP glut driver v1.4 for Mesa
24 * Copyright (C) 2002 - Borca Daniel
25 * Email : dborca@yahoo.com
26 * Web : http://www.geocities.com/dborca
31 #include "glutbitmap.h"
32 #include "glutstroke.h"
36 #ifdef GLUT_IMPORT_LIB
37 extern StrokeFontRec glutStrokeRoman
, glutStrokeMonoRoman
;
38 extern BitmapFontRec glutBitmap8By13
, glutBitmap9By15
, glutBitmapTimesRoman10
, glutBitmapTimesRoman24
, glutBitmapHelvetica10
, glutBitmapHelvetica12
, glutBitmapHelvetica18
;
40 /* To get around the fact that DJGPP DXEs only allow functions
41 to be exported and no data addresses (as Unix DSOs support), the
42 GLUT API constants such as GLUT_STROKE_ROMAN have to get passed
43 through a case statement to get mapped to the actual data structure
45 void *__glutFont (void *font
)
48 case (int)GLUT_STROKE_ROMAN
:
49 return &glutStrokeRoman
;
50 case (int)GLUT_STROKE_MONO_ROMAN
:
51 return &glutStrokeMonoRoman
;
52 case (int)GLUT_BITMAP_9_BY_15
:
53 return &glutBitmap9By15
;
54 case (int)GLUT_BITMAP_8_BY_13
:
55 return &glutBitmap8By13
;
56 case (int)GLUT_BITMAP_TIMES_ROMAN_10
:
57 return &glutBitmapTimesRoman10
;
58 case (int)GLUT_BITMAP_TIMES_ROMAN_24
:
59 return &glutBitmapTimesRoman24
;
60 case (int)GLUT_BITMAP_HELVETICA_10
:
61 return &glutBitmapHelvetica10
;
62 case (int)GLUT_BITMAP_HELVETICA_12
:
63 return &glutBitmapHelvetica12
;
64 case (int)GLUT_BITMAP_HELVETICA_18
:
65 return &glutBitmapHelvetica18
;
66 default: /* NOTREACHED */
67 __glutFatalError("bad font!");