WINAPI: glColor4f OpenGL32.DLL WINAPI: glPushAttrib OpenGL32.DLL WINAPI: glPopAttrib OpenGL32.DLL WINAPI: glFlush OpenGL32.DLL WINAPI: wglUseFontOutlinesA OpenGL32.DLL WINAPI: glCallLists OpenGL32.DLL WINAPI: glListBase OpenGL32.DLL WINAPI: wglGetCurrentDC OpenGL32.DLL WINAPI: CreateFontA GDI32.DLL CLASS CGLText VAR ubase 256 CELLS DEFS agmf VAR font VAR hdc : zinit hdc ! \ Storage For 256 Characters 256 glGenLists ubase ! S" Comic Sans MS" DROP \ Font Name FF_DONTCARE DEFAULT_PITCH OR \ Family And Pitch ANTIALIASED_QUALITY \ Output Quality CLIP_DEFAULT_PRECIS \ Clipping Precision OUT_TT_PRECIS \ Output Precision ANSI_CHARSET \ Character Set Identifier FALSE \ Strikeout FALSE \ Underline FALSE \ Italic \ You can put a number from 0 - 1000 or you can use one of the predefined values. \ FW_DONTCARE is 0, FW_NORMAL is 400, FW_BOLD is 700 and FW_BLACK is 900. FW_BOLD \ Font Weight 0 \ Orientation Angle 0 \ Angle Of Escapement 0 \ Width Of Font -12 \ Height Of Font CreateFontA font ! font @ hdc @ SelectObject DROP \ Selects The Font We Created agmf @ \ Address Of Buffer To Recieve Data WGL_FONT_POLYGONS \ Use Polygons, Not Lines 0.2e float \ Font Thickness In The Z Direction 0.0e float \ deviation from the true outlines ubase @ \ displist start 255 \ Number of display lists 0 \ Starting character hdc @ wglUseFontOutlinesA 0= S" wglUseFontOutlinesA FAILED!!" SUPER abort ; : write { a u } GL_MODELVIEW glMatrixMode DROP glPushMatrix DROP GL_LIST_BIT glPushAttrib DROP \ set up for a string-drawing display list call ubase @ glListBase DROP \ magic a GL_UNSIGNED_BYTE u glCallLists DROP glFlush DROP glPopAttrib DROP glPopMatrix DROP ; ;CLASS