Subversion Repositories Kolibri OS

Rev

Rev 8442 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #ifndef __L_TINYGL_H_INCLUDED_
  2. #define __L_TINYGL_H_INCLUDED_
  3. //
  4. // tinygl.obj
  5. //
  6.  
  7. enum {
  8.         /* Boolean values */
  9.         GL_FALSE                        = 0,
  10.         GL_TRUE                         = 1,
  11.  
  12.         /* Data types */
  13.         GL_BYTE                         = 0x1400,
  14.         GL_UNSIGNED_BYTE                = 0x1401,
  15.         GL_SHORT                        = 0x1402,
  16.         GL_UNSIGNED_SHORT               = 0x1403,
  17.         GL_INT                          = 0x1404,
  18.         GL_UNSIGNED_INT                 = 0x1405,
  19.         GL_FLOAT                        = 0x1406,
  20.         GL_DOUBLE                       = 0x140A,
  21.         GL_2_BYTES                      = 0x1407,
  22.         GL_3_BYTES                      = 0x1408,
  23.         GL_4_BYTES                      = 0x1409,
  24.  
  25.         /* Primitives */
  26.         GL_LINES                        = 0x0001,
  27.         GL_POINTS                       = 0x0000,
  28.         GL_LINE_STRIP                   = 0x0003,
  29.         GL_LINE_LOOP                    = 0x0002,
  30.         GL_TRIANGLES                    = 0x0004,
  31.         GL_TRIANGLE_STRIP               = 0x0005,
  32.         GL_TRIANGLE_FAN                 = 0x0006,
  33.         GL_QUADS                        = 0x0007,
  34.         GL_QUAD_STRIP                   = 0x0008,
  35.         GL_POLYGON                      = 0x0009,
  36.         GL_EDGE_FLAG                    = 0x0B43,
  37.  
  38.         /* Vertex Arrays */
  39.         GL_VERTEX_ARRAY                 = 0x8074,
  40.         GL_NORMAL_ARRAY                 = 0x8075,
  41.         GL_COLOR_ARRAY                  = 0x8076,
  42.         GL_INDEX_ARRAY                  = 0x8077,
  43.         GL_TEXTURE_COORD_ARRAY          = 0x8078,
  44.         GL_EDGE_FLAG_ARRAY              = 0x8079,
  45.         GL_VERTEX_ARRAY_SIZE            = 0x807A,
  46.         GL_VERTEX_ARRAY_TYPE            = 0x807B,
  47.         GL_VERTEX_ARRAY_STRIDE          = 0x807C,
  48.         GL_VERTEX_ARRAY_COUNT           = 0x807D,
  49.         GL_NORMAL_ARRAY_TYPE            = 0x807E,
  50.         GL_NORMAL_ARRAY_STRIDE          = 0x807F,
  51.         GL_NORMAL_ARRAY_COUNT           = 0x8080,
  52.         GL_COLOR_ARRAY_SIZE             = 0x8081,
  53.         GL_COLOR_ARRAY_TYPE             = 0x8082,
  54.         GL_COLOR_ARRAY_STRIDE           = 0x8083,
  55.         GL_COLOR_ARRAY_COUNT            = 0x8084,
  56.         GL_INDEX_ARRAY_TYPE             = 0x8085,
  57.         GL_INDEX_ARRAY_STRIDE           = 0x8086,
  58.         GL_INDEX_ARRAY_COUNT            = 0x8087,
  59.         GL_TEXTURE_COORD_ARRAY_SIZE     = 0x8088,
  60.         GL_TEXTURE_COORD_ARRAY_TYPE     = 0x8089,
  61.         GL_TEXTURE_COORD_ARRAY_STRIDE   = 0x808A,
  62.         GL_TEXTURE_COORD_ARRAY_COUNT    = 0x808B,
  63.         GL_EDGE_FLAG_ARRAY_STRIDE       = 0x808C,
  64.         GL_EDGE_FLAG_ARRAY_COUNT        = 0x808D,
  65.         GL_VERTEX_ARRAY_POINTER         = 0x808E,
  66.         GL_NORMAL_ARRAY_POINTER         = 0x808F,
  67.         GL_COLOR_ARRAY_POINTER          = 0x8090,
  68.         GL_INDEX_ARRAY_POINTER          = 0x8091,
  69.         GL_TEXTURE_COORD_ARRAY_POINTER  = 0x8092,
  70.         GL_EDGE_FLAG_ARRAY_POINTER      = 0x8093,
  71.         GL_V2F                          = 0x2A20,
  72.         GL_V3F                          = 0x2A21,
  73.         GL_C4UB_V2F                     = 0x2A22,
  74.         GL_C4UB_V3F                     = 0x2A23,
  75.         GL_C3F_V3F                      = 0x2A24,
  76.         GL_N3F_V3F                      = 0x2A25,
  77.         GL_C4F_N3F_V3F                  = 0x2A26,
  78.         GL_T2F_V3F                      = 0x2A27,
  79.         GL_T4F_V4F                      = 0x2A28,
  80.         GL_T2F_C4UB_V3F                 = 0x2A29,
  81.         GL_T2F_C3F_V3F                  = 0x2A2A,
  82.         GL_T2F_N3F_V3F                  = 0x2A2B,
  83.         GL_T2F_C4F_N3F_V3F              = 0x2A2C,
  84.         GL_T4F_C4F_N3F_V4F              = 0x2A2D,
  85.  
  86.         /* Matrix Mode */
  87.         GL_MATRIX_MODE                  = 0x0BA0,
  88.         GL_MODELVIEW                    = 0x1700,
  89.         GL_PROJECTION                   = 0x1701,
  90.         GL_TEXTURE                      = 0x1702,
  91.  
  92.         /* Points */
  93.         GL_POINT_SMOOTH                 = 0x0B10,
  94.         GL_POINT_SIZE                   = 0x0B11,
  95.         GL_POINT_SIZE_GRANULARITY       = 0x0B13,
  96.         GL_POINT_SIZE_RANGE             = 0x0B12,
  97.  
  98.         /* Lines */
  99.         GL_LINE_SMOOTH                  = 0x0B20,
  100.         GL_LINE_STIPPLE                 = 0x0B24,
  101.         GL_LINE_STIPPLE_PATTERN         = 0x0B25,
  102.         GL_LINE_STIPPLE_REPEAT          = 0x0B26,
  103.         GL_LINE_WIDTH                   = 0x0B21,
  104.         GL_LINE_WIDTH_GRANULARITY       = 0x0B23,
  105.         GL_LINE_WIDTH_RANGE             = 0x0B22,
  106.  
  107.         /* Polygons */
  108.         GL_POINT                        = 0x1B00,
  109.         GL_LINE                         = 0x1B01,
  110.         GL_FILL                         = 0x1B02,
  111.         GL_CCW                          = 0x0901,
  112.         GL_CW                           = 0x0900,
  113.         GL_FRONT                        = 0x0404,
  114.         GL_BACK                         = 0x0405,
  115.         GL_CULL_FACE                    = 0x0B44,
  116.         GL_CULL_FACE_MODE               = 0x0B45,
  117.         GL_POLYGON_SMOOTH               = 0x0B41,
  118.         GL_POLYGON_STIPPLE              = 0x0B42,
  119.         GL_FRONT_FACE                   = 0x0B46,
  120.         GL_POLYGON_MODE                 = 0x0B40,
  121.         GL_POLYGON_OFFSET_FACTOR        = 0x3038,
  122.         GL_POLYGON_OFFSET_UNITS         = 0x2A00,
  123.         GL_POLYGON_OFFSET_POINT         = 0x2A01,
  124.         GL_POLYGON_OFFSET_LINE          = 0x2A02,
  125.         GL_POLYGON_OFFSET_FILL          = 0x8037,
  126.  
  127.         /* Display Lists */
  128.         GL_COMPILE                      = 0x1300,
  129.         GL_COMPILE_AND_EXECUTE          = 0x1301,
  130.         GL_LIST_BASE                    = 0x0B32,
  131.         GL_LIST_INDEX                   = 0x0B33,
  132.         GL_LIST_MODE                    = 0x0B30,
  133.  
  134.         /* Depth buffer */
  135.         GL_NEVER                        = 0x0200,
  136.         GL_LESS                         = 0x0201,
  137.         GL_GEQUAL                       = 0x0206,
  138.         GL_LEQUAL                       = 0x0203,
  139.         GL_GREATER                      = 0x0204,
  140.         GL_NOTEQUAL                     = 0x0205,
  141.         GL_EQUAL                        = 0x0202,
  142.         GL_ALWAYS                       = 0x0207,
  143.         GL_DEPTH_TEST                   = 0x0B71,
  144.         GL_DEPTH_BITS                   = 0x0D56,
  145.         GL_DEPTH_CLEAR_VALUE            = 0x0B73,
  146.         GL_DEPTH_FUNC                   = 0x0B74,
  147.         GL_DEPTH_RANGE                  = 0x0B70,
  148.         GL_DEPTH_WRITEMASK              = 0x0B72,
  149.         GL_DEPTH_COMPONENT              = 0x1902,
  150.  
  151.         /* Lighting */
  152.         GL_LIGHTING                     = 0x0B50,
  153.         GL_LIGHT0                       = 0x4000,
  154.         GL_LIGHT1                       = 0x4001,
  155.         GL_LIGHT2                       = 0x4002,
  156.         GL_LIGHT3                       = 0x4003,
  157.         GL_LIGHT4                       = 0x4004,
  158.         GL_LIGHT5                       = 0x4005,
  159.         GL_LIGHT6                       = 0x4006,
  160.         GL_LIGHT7                       = 0x4007,
  161.         GL_SPOT_EXPONENT                = 0x1205,
  162.         GL_SPOT_CUTOFF                  = 0x1206,
  163.         GL_CONSTANT_ATTENUATION         = 0x1207,
  164.         GL_LINEAR_ATTENUATION           = 0x1208,
  165.         GL_QUADRATIC_ATTENUATION        = 0x1209,
  166.         GL_AMBIENT                      = 0x1200,
  167.         GL_DIFFUSE                      = 0x1201,
  168.         GL_SPECULAR                     = 0x1202,
  169.         GL_SHININESS                    = 0x1601,
  170.         GL_EMISSION                     = 0x1600,
  171.         GL_POSITION                     = 0x1203,
  172.         GL_SPOT_DIRECTION               = 0x1204,
  173.         GL_AMBIENT_AND_DIFFUSE          = 0x1602,
  174.         GL_COLOR_INDEXES                = 0x1603,
  175.         GL_LIGHT_MODEL_TWO_SIDE         = 0x0B52,
  176.         GL_LIGHT_MODEL_LOCAL_VIEWER     = 0x0B51,
  177.         GL_LIGHT_MODEL_AMBIENT          = 0x0B53,
  178.         GL_FRONT_AND_BACK               = 0x0408,
  179.         GL_SHADE_MODEL                  = 0x0B54,
  180.         GL_FLAT                         = 0x1D00,
  181.         GL_SMOOTH                       = 0x1D01,
  182.         GL_COLOR_MATERIAL               = 0x0B57,
  183.         GL_COLOR_MATERIAL_FACE          = 0x0B55,
  184.         GL_COLOR_MATERIAL_PARAMETER     = 0x0B56,
  185.         GL_NORMALIZE                    = 0x0BA1,
  186.  
  187.         /* User clipping planes */
  188.         GL_CLIP_PLANE0                  = 0x3000,
  189.         GL_CLIP_PLANE1                  = 0x3001,
  190.         GL_CLIP_PLANE2                  = 0x3002,
  191.         GL_CLIP_PLANE3                  = 0x3003,
  192.         GL_CLIP_PLANE4                  = 0x3004,
  193.         GL_CLIP_PLANE5                  = 0x3005,
  194.  
  195.         /* Accumulation buffer */
  196.         GL_ACCUM_RED_BITS               = 0x0D58,
  197.         GL_ACCUM_GREEN_BITS             = 0x0D59,
  198.         GL_ACCUM_BLUE_BITS              = 0x0D5A,
  199.         GL_ACCUM_ALPHA_BITS             = 0x0D5B,
  200.         GL_ACCUM_CLEAR_VALUE            = 0x0B80,
  201.         GL_ACCUM                        = 0x0100,
  202.         GL_ADD                          = 0x0104,
  203.         GL_LOAD                         = 0x0101,
  204.         GL_MULT                         = 0x0103,
  205.         GL_RETURN                       = 0x0102,
  206.  
  207.         /* Alpha testing */
  208.         GL_ALPHA_TEST                   = 0x0BC0,
  209.         GL_ALPHA_TEST_REF               = 0x0BC2,
  210.         GL_ALPHA_TEST_FUNC              = 0x0BC1,
  211.  
  212.         /* Blending */
  213.         GL_BLEND                        = 0x0BE2,
  214.         GL_BLEND_SRC                    = 0x0BE1,
  215.         GL_BLEND_DST                    = 0x0BE0,
  216.         GL_ZERO                         = 0,
  217.         GL_ONE                          = 1,
  218.         GL_SRC_COLOR                    = 0x0300,
  219.         GL_ONE_MINUS_SRC_COLOR          = 0x0301,
  220.         GL_DST_COLOR                    = 0x0306,
  221.         GL_ONE_MINUS_DST_COLOR          = 0x0307,
  222.         GL_SRC_ALPHA                    = 0x0302,
  223.         GL_ONE_MINUS_SRC_ALPHA          = 0x0303,
  224.         GL_DST_ALPHA                    = 0x0304,
  225.         GL_ONE_MINUS_DST_ALPHA          = 0x0305,
  226.         GL_SRC_ALPHA_SATURATE           = 0x0308,
  227.         GL_CONSTANT_COLOR               = 0x8001,
  228.         GL_ONE_MINUS_CONSTANT_COLOR     = 0x8002,
  229.         GL_CONSTANT_ALPHA               = 0x8003,
  230.         GL_ONE_MINUS_CONSTANT_ALPHA     = 0x8004,
  231.  
  232.         /* Render Mode */
  233.         GL_FEEDBACK                     = 0x1C01,
  234.         GL_RENDER                       = 0x1C00,
  235.         GL_SELECT                       = 0x1C02,
  236.  
  237.         /* Feedback */
  238.         GL_2D                           = 0x0600,
  239.         GL_3D                           = 0x0601,
  240.         GL_3D_COLOR                     = 0x0602,
  241.         GL_3D_COLOR_TEXTURE             = 0x0603,
  242.         GL_4D_COLOR_TEXTURE             = 0x0604,
  243.         GL_POINT_TOKEN                  = 0x0701,
  244.         GL_LINE_TOKEN                   = 0x0702,
  245.         GL_LINE_RESET_TOKEN             = 0x0707,
  246.         GL_POLYGON_TOKEN                = 0x0703,
  247.         GL_BITMAP_TOKEN                 = 0x0704,
  248.         GL_DRAW_PIXEL_TOKEN             = 0x0705,
  249.         GL_COPY_PIXEL_TOKEN             = 0x0706,
  250.         GL_PASS_THROUGH_TOKEN           = 0x0700,
  251.  
  252.         /* Fog */
  253.         GL_FOG                          = 0x0B60,
  254.         GL_FOG_MODE                     = 0x0B65,
  255.         GL_FOG_DENSITY                  = 0x0B62,
  256.         GL_FOG_COLOR                    = 0x0B66,
  257.         GL_FOG_INDEX                    = 0x0B61,
  258.         GL_FOG_START                    = 0x0B63,
  259.         GL_FOG_END                      = 0x0B64,
  260.         GL_LINEAR                       = 0x2601,
  261.         GL_EXP                          = 0x0800,
  262.         GL_EXP2                         = 0x0801,
  263.  
  264.         /* Logic Ops */
  265.         GL_LOGIC_OP                     = 0x0BF1,
  266.         GL_LOGIC_OP_MODE                = 0x0BF0,
  267.         GL_CLEAR                        = 0x1500,
  268.         GL_SET                          = 0x150F,
  269.         GL_COPY                         = 0x1503,
  270.         GL_COPY_INVERTED                = 0x150C,
  271.         GL_NOOP                         = 0x1505,
  272.         GL_INVERT                       = 0x150A,
  273.         GL_AND                          = 0x1501,
  274.         GL_NAND                         = 0x150E,
  275.         GL_OR                           = 0x1507,
  276.         GL_NOR                          = 0x1508,
  277.         GL_XOR                          = 0x1506,
  278.         GL_EQUIV                        = 0x1509,
  279.         GL_AND_REVERSE                  = 0x1502,
  280.         GL_AND_INVERTED                 = 0x1504,
  281.         GL_OR_REVERSE                   = 0x150B,
  282.         GL_OR_INVERTED                  = 0x150D,
  283.  
  284.         /* Stencil */
  285.         GL_STENCIL_TEST                 = 0x0B90,
  286.         GL_STENCIL_WRITEMASK            = 0x0B98,
  287.         GL_STENCIL_BITS                 = 0x0D57,
  288.         GL_STENCIL_FUNC                 = 0x0B92,
  289.         GL_STENCIL_VALUE_MASK           = 0x0B93,
  290.         GL_STENCIL_REF                  = 0x0B97,
  291.         GL_STENCIL_FAIL                 = 0x0B94,
  292.         GL_STENCIL_PASS_DEPTH_PASS      = 0x0B96,
  293.         GL_STENCIL_PASS_DEPTH_FAIL      = 0x0B95,
  294.         GL_STENCIL_CLEAR_VALUE          = 0x0B91,
  295.         GL_STENCIL_INDEX                = 0x1901,
  296.         GL_KEEP                         = 0x1E00,
  297.         GL_REPLACE                      = 0x1E01,
  298.         GL_INCR                         = 0x1E02,
  299.         GL_DECR                         = 0x1E03,
  300.  
  301.         /* Buffers, Pixel Drawing/Reading */
  302.         GL_NONE                         = 0,
  303.         GL_LEFT                         = 0x0406,
  304.         GL_RIGHT                        = 0x0407,
  305.         /*GL_FRONT                      = 0x0404, */
  306.         /*GL_BACK                       = 0x0405, */
  307.         /*GL_FRONT_AND_BACK             = 0x0408, */
  308.         GL_FRONT_LEFT                   = 0x0400,
  309.         GL_FRONT_RIGHT                  = 0x0401,
  310.         GL_BACK_LEFT                    = 0x0402,
  311.         GL_BACK_RIGHT                   = 0x0403,
  312.         GL_AUX0                         = 0x0409,
  313.         GL_AUX1                         = 0x040A,
  314.         GL_AUX2                         = 0x040B,
  315.         GL_AUX3                         = 0x040C,
  316.         GL_COLOR_INDEX                  = 0x1900,
  317.         GL_RED                          = 0x1903,
  318.         GL_GREEN                        = 0x1904,
  319.         GL_BLUE                         = 0x1905,
  320.         GL_ALPHA                        = 0x1906,
  321.         GL_LUMINANCE                    = 0x1909,
  322.         GL_LUMINANCE_ALPHA              = 0x190A,
  323.         GL_ALPHA_BITS                   = 0x0D55,
  324.         GL_RED_BITS                     = 0x0D52,
  325.         GL_GREEN_BITS                   = 0x0D53,
  326.         GL_BLUE_BITS                    = 0x0D54,
  327.         GL_INDEX_BITS                   = 0x0D51,
  328.         GL_SUBPIXEL_BITS                = 0x0D50,
  329.         GL_AUX_BUFFERS                  = 0x0C00,
  330.         GL_READ_BUFFER                  = 0x0C02,
  331.         GL_DRAW_BUFFER                  = 0x0C01,
  332.         GL_DOUBLEBUFFER                 = 0x0C32,
  333.         GL_STEREO                       = 0x0C33,
  334.         GL_BITMAP                       = 0x1A00,
  335.         GL_COLOR                        = 0x1800,
  336.         GL_DEPTH                        = 0x1801,
  337.         GL_STENCIL                      = 0x1802,
  338.         GL_DITHER                       = 0x0BD0,
  339.         GL_RGB                          = 0x1907,
  340.         GL_RGBA                         = 0x1908,
  341.  
  342.         /* Implementation limits */
  343.         GL_MAX_LIST_NESTING             = 0x0B31,
  344.         GL_MAX_ATTRIB_STACK_DEPTH       = 0x0D35,
  345.         GL_MAX_MODELVIEW_STACK_DEPTH    = 0x0D36,
  346.         GL_MAX_NAME_STACK_DEPTH         = 0x0D37,
  347.         GL_MAX_PROJECTION_STACK_DEPTH   = 0x0D38,
  348.         GL_MAX_TEXTURE_STACK_DEPTH      = 0x0D39,
  349.         GL_MAX_EVAL_ORDER               = 0x0D30,
  350.         GL_MAX_LIGHTS                   = 0x0D31,
  351.         GL_MAX_CLIP_PLANES              = 0x0D32,
  352.         GL_MAX_TEXTURE_SIZE             = 0x0D33,
  353.         GL_MAX_PIXEL_MAP_TABLE          = 0x0D34,
  354.         GL_MAX_VIEWPORT_DIMS            = 0x0D3A,
  355.         GL_MAX_CLIENT_ATTRIB_STACK_DEPTH= 0x0D3B,
  356.  
  357.         /* Gets */
  358.         GL_ATTRIB_STACK_DEPTH           = 0x0BB0,
  359.         GL_COLOR_CLEAR_VALUE            = 0x0C22,
  360.         GL_COLOR_WRITEMASK              = 0x0C23,
  361.         GL_CURRENT_INDEX                = 0x0B01,
  362.         GL_CURRENT_COLOR                = 0x0B00,
  363.         GL_CURRENT_NORMAL               = 0x0B02,
  364.         GL_CURRENT_RASTER_COLOR         = 0x0B04,
  365.         GL_CURRENT_RASTER_DISTANCE      = 0x0B09,
  366.         GL_CURRENT_RASTER_INDEX         = 0x0B05,
  367.         GL_CURRENT_RASTER_POSITION      = 0x0B07,
  368.         GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06,
  369.         GL_CURRENT_RASTER_POSITION_VALID = 0x0B08,
  370.         GL_CURRENT_TEXTURE_COORDS       = 0x0B03,
  371.         GL_INDEX_CLEAR_VALUE            = 0x0C20,
  372.         GL_INDEX_MODE                   = 0x0C30,
  373.         GL_INDEX_WRITEMASK              = 0x0C21,
  374.         GL_MODELVIEW_MATRIX             = 0x0BA6,
  375.         GL_MODELVIEW_STACK_DEPTH        = 0x0BA3,
  376.         GL_NAME_STACK_DEPTH             = 0x0D70,
  377.         GL_PROJECTION_MATRIX            = 0x0BA7,
  378.         GL_PROJECTION_STACK_DEPTH       = 0x0BA4,
  379.         GL_RENDER_MODE                  = 0x0C40,
  380.         GL_RGBA_MODE                    = 0x0C31,
  381.         GL_TEXTURE_MATRIX               = 0x0BA8,
  382.         GL_TEXTURE_STACK_DEPTH          = 0x0BA5,
  383.         GL_VIEWPORT                     = 0x0BA2,
  384.  
  385.  
  386.         /* Evaluators */
  387.         GL_AUTO_NORMAL                  = 0x0D80,
  388.         GL_MAP1_COLOR_4                 = 0x0D90,
  389.         GL_MAP1_GRID_DOMAIN             = 0x0DD0,
  390.         GL_MAP1_GRID_SEGMENTS           = 0x0DD1,
  391.         GL_MAP1_INDEX                   = 0x0D91,
  392.         GL_MAP1_NORMAL                  = 0x0D92,
  393.         GL_MAP1_TEXTURE_COORD_1         = 0x0D93,
  394.         GL_MAP1_TEXTURE_COORD_2         = 0x0D94,
  395.         GL_MAP1_TEXTURE_COORD_3         = 0x0D95,
  396.         GL_MAP1_TEXTURE_COORD_4         = 0x0D96,
  397.         GL_MAP1_VERTEX_3                = 0x0D97,
  398.         GL_MAP1_VERTEX_4                = 0x0D98,
  399.         GL_MAP2_COLOR_4                 = 0x0DB0,
  400.         GL_MAP2_GRID_DOMAIN             = 0x0DD2,
  401.         GL_MAP2_GRID_SEGMENTS           = 0x0DD3,
  402.         GL_MAP2_INDEX                   = 0x0DB1,
  403.         GL_MAP2_NORMAL                  = 0x0DB2,
  404.         GL_MAP2_TEXTURE_COORD_1         = 0x0DB3,
  405.         GL_MAP2_TEXTURE_COORD_2         = 0x0DB4,
  406.         GL_MAP2_TEXTURE_COORD_3         = 0x0DB5,
  407.         GL_MAP2_TEXTURE_COORD_4         = 0x0DB6,
  408.         GL_MAP2_VERTEX_3                = 0x0DB7,
  409.         GL_MAP2_VERTEX_4                = 0x0DB8,
  410.         GL_COEFF                        = 0x0A00,
  411.         GL_DOMAIN                       = 0x0A02,
  412.         GL_ORDER                        = 0x0A01,
  413.  
  414.         /* Hints */
  415.         GL_FOG_HINT                     = 0x0C54,
  416.         GL_LINE_SMOOTH_HINT             = 0x0C52,
  417.         GL_PERSPECTIVE_CORRECTION_HINT  = 0x0C50,
  418.         GL_POINT_SMOOTH_HINT            = 0x0C51,
  419.         GL_POLYGON_SMOOTH_HINT          = 0x0C53,
  420.         GL_DONT_CARE                    = 0x1100,
  421.         GL_FASTEST                      = 0x1101,
  422.         GL_NICEST                       = 0x1102,
  423.  
  424.         /* Scissor box */
  425.         GL_SCISSOR_TEST                 = 0x0C11,
  426.         GL_SCISSOR_BOX                  = 0x0C10,
  427.  
  428.         /* Pixel Mode / Transfer */
  429.         GL_MAP_COLOR                    = 0x0D10,
  430.         GL_MAP_STENCIL                  = 0x0D11,
  431.         GL_INDEX_SHIFT                  = 0x0D12,
  432.         GL_INDEX_OFFSET                 = 0x0D13,
  433.         GL_RED_SCALE                    = 0x0D14,
  434.         GL_RED_BIAS                     = 0x0D15,
  435.         GL_GREEN_SCALE                  = 0x0D18,
  436.         GL_GREEN_BIAS                   = 0x0D19,
  437.         GL_BLUE_SCALE                   = 0x0D1A,
  438.         GL_BLUE_BIAS                    = 0x0D1B,
  439.         GL_ALPHA_SCALE                  = 0x0D1C,
  440.         GL_ALPHA_BIAS                   = 0x0D1D,
  441.         GL_DEPTH_SCALE                  = 0x0D1E,
  442.         GL_DEPTH_BIAS                   = 0x0D1F,
  443.         GL_PIXEL_MAP_S_TO_S_SIZE        = 0x0CB1,
  444.         GL_PIXEL_MAP_I_TO_I_SIZE        = 0x0CB0,
  445.         GL_PIXEL_MAP_I_TO_R_SIZE        = 0x0CB2,
  446.         GL_PIXEL_MAP_I_TO_G_SIZE        = 0x0CB3,
  447.         GL_PIXEL_MAP_I_TO_B_SIZE        = 0x0CB4,
  448.         GL_PIXEL_MAP_I_TO_A_SIZE        = 0x0CB5,
  449.         GL_PIXEL_MAP_R_TO_R_SIZE        = 0x0CB6,
  450.         GL_PIXEL_MAP_G_TO_G_SIZE        = 0x0CB7,
  451.         GL_PIXEL_MAP_B_TO_B_SIZE        = 0x0CB8,
  452.         GL_PIXEL_MAP_A_TO_A_SIZE        = 0x0CB9,
  453.         GL_PIXEL_MAP_S_TO_S             = 0x0C71,
  454.         GL_PIXEL_MAP_I_TO_I             = 0x0C70,
  455.         GL_PIXEL_MAP_I_TO_R             = 0x0C72,
  456.         GL_PIXEL_MAP_I_TO_G             = 0x0C73,
  457.         GL_PIXEL_MAP_I_TO_B             = 0x0C74,
  458.         GL_PIXEL_MAP_I_TO_A             = 0x0C75,
  459.         GL_PIXEL_MAP_R_TO_R             = 0x0C76,
  460.         GL_PIXEL_MAP_G_TO_G             = 0x0C77,
  461.         GL_PIXEL_MAP_B_TO_B             = 0x0C78,
  462.         GL_PIXEL_MAP_A_TO_A             = 0x0C79,
  463.         GL_PACK_ALIGNMENT               = 0x0D05,
  464.         GL_PACK_LSB_FIRST               = 0x0D01,
  465.         GL_PACK_ROW_LENGTH              = 0x0D02,
  466.         GL_PACK_SKIP_PIXELS             = 0x0D04,
  467.         GL_PACK_SKIP_ROWS               = 0x0D03,
  468.         GL_PACK_SWAP_BYTES              = 0x0D00,
  469.         GL_UNPACK_ALIGNMENT             = 0x0CF5,
  470.         GL_UNPACK_LSB_FIRST             = 0x0CF1,
  471.         GL_UNPACK_ROW_LENGTH            = 0x0CF2,
  472.         GL_UNPACK_SKIP_PIXELS           = 0x0CF4,
  473.         GL_UNPACK_SKIP_ROWS             = 0x0CF3,
  474.         GL_UNPACK_SWAP_BYTES            = 0x0CF0,
  475.         GL_ZOOM_X                       = 0x0D16,
  476.         GL_ZOOM_Y                       = 0x0D17,
  477.  
  478.         /* Texture mapping */
  479.         GL_TEXTURE_ENV                  = 0x2300,
  480.         GL_TEXTURE_ENV_MODE             = 0x2200,
  481.         GL_TEXTURE_1D                   = 0x0DE0,
  482.         GL_TEXTURE_2D                   = 0x0DE1,
  483.         GL_TEXTURE_WRAP_S               = 0x2802,
  484.         GL_TEXTURE_WRAP_T               = 0x2803,
  485.         GL_TEXTURE_MAG_FILTER           = 0x2800,
  486.         GL_TEXTURE_MIN_FILTER           = 0x2801,
  487.         GL_TEXTURE_ENV_COLOR            = 0x2201,
  488.         GL_TEXTURE_GEN_S                = 0x0C60,
  489.         GL_TEXTURE_GEN_T                = 0x0C61,
  490.         GL_TEXTURE_GEN_MODE             = 0x2500,
  491.         GL_TEXTURE_BORDER_COLOR         = 0x1004,
  492.         GL_TEXTURE_WIDTH                = 0x1000,
  493.         GL_TEXTURE_HEIGHT               = 0x1001,
  494.         GL_TEXTURE_BORDER               = 0x1005,
  495.         GL_TEXTURE_COMPONENTS           = 0x1003,
  496.         GL_NEAREST_MIPMAP_NEAREST       = 0x2700,
  497.         GL_NEAREST_MIPMAP_LINEAR        = 0x2702,
  498.         GL_LINEAR_MIPMAP_NEAREST        = 0x2701,
  499.         GL_LINEAR_MIPMAP_LINEAR         = 0x2703,
  500.         GL_OBJECT_LINEAR                = 0x2401,
  501.         GL_OBJECT_PLANE                 = 0x2501,
  502.         GL_EYE_LINEAR                   = 0x2400,
  503.         GL_EYE_PLANE                    = 0x2502,
  504.         GL_SPHERE_MAP                   = 0x2402,
  505.         GL_DECAL                        = 0x2101,
  506.         GL_MODULATE                     = 0x2100,
  507.         GL_NEAREST                      = 0x2600,
  508.         GL_REPEAT                       = 0x2901,
  509.         GL_CLAMP                        = 0x2900,
  510.         GL_S                            = 0x2000,
  511.         GL_T                            = 0x2001,
  512.         GL_R                            = 0x2002,
  513.         GL_Q                            = 0x2003,
  514.         GL_TEXTURE_GEN_R                = 0x0C62,
  515.         GL_TEXTURE_GEN_Q                = 0x0C63,
  516.  
  517.         GL_PROXY_TEXTURE_1D             = 0x8063,
  518.         GL_PROXY_TEXTURE_2D             = 0x8064,
  519.         GL_TEXTURE_PRIORITY             = 0x8066,
  520.         GL_TEXTURE_RESIDENT             = 0x8067,
  521.         GL_TEXTURE_1D_BINDING           = 0x8068,
  522.         GL_TEXTURE_2D_BINDING           = 0x8069,
  523.  
  524.         /* Internal texture formats */
  525.         GL_ALPHA4                       = 0x803B,
  526.         GL_ALPHA8                       = 0x803C,
  527.         GL_ALPHA12                      = 0x803D,
  528.         GL_ALPHA16                      = 0x803E,
  529.         GL_LUMINANCE4                   = 0x803F,
  530.         GL_LUMINANCE8                   = 0x8040,
  531.         GL_LUMINANCE12                  = 0x8041,
  532.         GL_LUMINANCE16                  = 0x8042,
  533.         GL_LUMINANCE4_ALPHA4            = 0x8043,
  534.         GL_LUMINANCE6_ALPHA2            = 0x8044,
  535.         GL_LUMINANCE8_ALPHA8            = 0x8045,
  536.         GL_LUMINANCE12_ALPHA4           = 0x8046,
  537.         GL_LUMINANCE12_ALPHA12          = 0x8047,
  538.         GL_LUMINANCE16_ALPHA16          = 0x8048,
  539.         GL_INTENSITY                    = 0x8049,
  540.         GL_INTENSITY4                   = 0x804A,
  541.         GL_INTENSITY8                   = 0x804B,
  542.         GL_INTENSITY12                  = 0x804C,
  543.         GL_INTENSITY16                  = 0x804D,
  544.         GL_R3_G3_B2                     = 0x2A10,
  545.         GL_RGB4                         = 0x804F,
  546.         GL_RGB5                         = 0x8050,
  547.         GL_RGB8                         = 0x8051,
  548.         GL_RGB10                        = 0x8052,
  549.         GL_RGB12                        = 0x8053,
  550.         GL_RGB16                        = 0x8054,
  551.         GL_RGBA2                        = 0x8055,
  552.         GL_RGBA4                        = 0x8056,
  553.         GL_RGB5_A1                      = 0x8057,
  554.         GL_RGBA8                        = 0x8058,
  555.         GL_RGB10_A2                     = 0x8059,
  556.         GL_RGBA12                       = 0x805A,
  557.         GL_RGBA16                       = 0x805B,
  558.  
  559.         /* Utility */
  560.         GL_VENDOR                       = 0x1F00,
  561.         GL_RENDERER                     = 0x1F01,
  562.         GL_VERSION                      = 0x1F02,
  563.         GL_EXTENSIONS                   = 0x1F03,
  564.  
  565.         /* Errors */
  566.         GL_INVALID_VALUE                = 0x0501,
  567.         GL_INVALID_ENUM                 = 0x0500,
  568.         GL_INVALID_OPERATION            = 0x0502,
  569.         GL_STACK_OVERFLOW               = 0x0503,
  570.         GL_STACK_UNDERFLOW              = 0x0504,
  571.         GL_OUT_OF_MEMORY                = 0x0505,
  572.  
  573.         /*
  574.          * 1.0 Extensions
  575.          */
  576.  /* GL_EXT_blend_minmax and GL_EXT_blend_color */
  577.         GL_CONSTANT_COLOR_EXT           = 0x8001,
  578.         GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002,
  579.         GL_CONSTANT_ALPHA_EXT           = 0x8003,
  580.         GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004,
  581.         GL_BLEND_EQUATION_EXT           = 0x8009,
  582.         GL_MIN_EXT                      = 0x8007,
  583.         GL_MAX_EXT                      = 0x8008,
  584.         GL_FUNC_ADD_EXT                 = 0x8006,
  585.         GL_FUNC_SUBTRACT_EXT            = 0x800A,
  586.         GL_FUNC_REVERSE_SUBTRACT_EXT    = 0x800B,
  587.         GL_BLEND_COLOR_EXT              = 0x8005,
  588.  
  589.         /* GL_EXT_polygon_offset */
  590.  GL_POLYGON_OFFSET_EXT = 0x8037,
  591.  GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038,
  592.  GL_POLYGON_OFFSET_BIAS_EXT = 0x8039,
  593.  
  594.         /* GL_EXT_vertex_array */
  595.         GL_VERTEX_ARRAY_EXT             = 0x8074,
  596.         GL_NORMAL_ARRAY_EXT             = 0x8075,
  597.         GL_COLOR_ARRAY_EXT              = 0x8076,
  598.         GL_INDEX_ARRAY_EXT              = 0x8077,
  599.         GL_TEXTURE_COORD_ARRAY_EXT      = 0x8078,
  600.         GL_EDGE_FLAG_ARRAY_EXT          = 0x8079,
  601.         GL_VERTEX_ARRAY_SIZE_EXT        = 0x807A,
  602.         GL_VERTEX_ARRAY_TYPE_EXT        = 0x807B,
  603.         GL_VERTEX_ARRAY_STRIDE_EXT      = 0x807C,
  604.         GL_VERTEX_ARRAY_COUNT_EXT       = 0x807D,
  605.         GL_NORMAL_ARRAY_TYPE_EXT        = 0x807E,
  606.         GL_NORMAL_ARRAY_STRIDE_EXT      = 0x807F,
  607.         GL_NORMAL_ARRAY_COUNT_EXT       = 0x8080,
  608.         GL_COLOR_ARRAY_SIZE_EXT         = 0x8081,
  609.         GL_COLOR_ARRAY_TYPE_EXT         = 0x8082,
  610.         GL_COLOR_ARRAY_STRIDE_EXT       = 0x8083,
  611.         GL_COLOR_ARRAY_COUNT_EXT        = 0x8084,
  612.         GL_INDEX_ARRAY_TYPE_EXT         = 0x8085,
  613.         GL_INDEX_ARRAY_STRIDE_EXT       = 0x8086,
  614.         GL_INDEX_ARRAY_COUNT_EXT        = 0x8087,
  615.         GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088,
  616.         GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089,
  617.         GL_TEXTURE_COORD_ARRAY_STRIDE_EXT= 0x808A,
  618.         GL_TEXTURE_COORD_ARRAY_COUNT_EXT= 0x808B,
  619.         GL_EDGE_FLAG_ARRAY_STRIDE_EXT   = 0x808C,
  620.         GL_EDGE_FLAG_ARRAY_COUNT_EXT    = 0x808D,
  621.         GL_VERTEX_ARRAY_POINTER_EXT     = 0x808E,
  622.         GL_NORMAL_ARRAY_POINTER_EXT     = 0x808F,
  623.         GL_COLOR_ARRAY_POINTER_EXT      = 0x8090,
  624.         GL_INDEX_ARRAY_POINTER_EXT      = 0x8091,
  625.         GL_TEXTURE_COORD_ARRAY_POINTER_EXT= 0x8092,
  626.         GL_EDGE_FLAG_ARRAY_POINTER_EXT  = 0x8093
  627.  
  628. };
  629.  
  630. enum {
  631.         GL_CURRENT_BIT          = 0x00000001,
  632.         GL_POINT_BIT            = 0x00000002,
  633.         GL_LINE_BIT             = 0x00000004,
  634.         GL_POLYGON_BIT          = 0x00000008,
  635.         GL_POLYGON_STIPPLE_BIT  = 0x00000010,
  636.         GL_PIXEL_MODE_BIT       = 0x00000020,
  637.         GL_LIGHTING_BIT         = 0x00000040,
  638.         GL_FOG_BIT              = 0x00000080,
  639.         GL_DEPTH_BUFFER_BIT     = 0x00000100,
  640.         GL_ACCUM_BUFFER_BIT     = 0x00000200,
  641.         GL_STENCIL_BUFFER_BIT   = 0x00000400,
  642.         GL_VIEWPORT_BIT         = 0x00000800,
  643.         GL_TRANSFORM_BIT        = 0x00001000,
  644.         GL_ENABLE_BIT           = 0x00002000,
  645.         GL_COLOR_BUFFER_BIT     = 0x00004000,
  646.         GL_HINT_BIT             = 0x00008000,
  647.         GL_EVAL_BIT             = 0x00010000,
  648.         GL_LIST_BIT             = 0x00020000,
  649.         GL_TEXTURE_BIT          = 0x00040000,
  650.         GL_SCISSOR_BIT          = 0x00080000,
  651.         GL_ALL_ATTRIB_BITS      = 0x000fffff
  652. };
  653.  
  654. struct ZBuffer
  655. {
  656.         long int xsize, ysize;
  657.         int linesize; //line size, in bytes
  658.         int mode;
  659.  
  660.         unsigned short int* zbuf;
  661.         unsigned char* pbuf; //PIXEL
  662.         int frame_buffer_allocated;
  663.  
  664.         int nb_colors;
  665.         unsigned char* dctable;
  666.         int* ctable;
  667.         unsigned char* current_texture; //PIXEL
  668.         unsigned int s_log2;
  669.         unsigned int s_bound;
  670.         unsigned int t_bound;
  671. };
  672.  
  673. struct TinyGLContext
  674. {
  675.         ZBuffer* gl_context;
  676.         long int xsize, ysize;
  677.         long int dx, dy, x, y;
  678. };
  679.  
  680. //
  681. // tinygl - import table
  682. //
  683. #define import_tinygl glEnable
  684. void (__stdcall* glEnable)(int code) = (void (__stdcall*)(int))&"glEnable";
  685. void (__stdcall* glDisable)(int code) = (void (__stdcall*)(int))&"glDisable";
  686. void (__stdcall* glShadeModel)(int mode) = (void (__stdcall*)(int))&"glShadeModel";
  687. void (__stdcall* glCullFace)(int mode) = (void (__stdcall*)(int))&"glCullFace";
  688. void (__stdcall* glPolygonMode)(int face, int mode) = (void (__stdcall*)(int, int))&"glPolygonMode";
  689. void (__stdcall* glBegin)(int type) = (void (__stdcall*)(int))&"glBegin";
  690. void (__stdcall* glEnd)() = (void (__stdcall*)())&"glEnd";
  691. void (__stdcall* glVertex2f)(float x, float y) = (void (__stdcall*)(float, float))&"glVertex2f";
  692. void (__stdcall* glVertex2d)(double x, double y) = (void (__stdcall*)(double, double))&"glVertex2d";
  693. void (__stdcall* glVertex2fv)(float* v) = (void (__stdcall*)(float*))&"glVertex2fv";
  694. void (__stdcall* glVertex2dv)(double* v) = (void (__stdcall*)(double*))&"glVertex2dv";
  695. void (__stdcall* glVertex3f)(float x, float y, float z) = (void (__stdcall*)(float, float, float))&"glVertex3f";
  696. void (__stdcall* glVertex3d)(double x, double y, double z) = (void (__stdcall*)(double, double, double))&"glVertex3d";
  697. void (__stdcall* glVertex3fv)(float* v) = (void (__stdcall*)(float*))&"glVertex3fv";
  698. void (__stdcall* glVertex3dv)(double* v) = (void (__stdcall*)(double*))&"glVertex3dv";
  699. void (__stdcall* glVertex4f)(float x, float y, float z, float w) = (void (__stdcall*)(float, float, float, float))&"glVertex4f";
  700. void (__stdcall* glVertex4d)(double x, double y, double z, double w) = (void (__stdcall*)(double, double, double, double))&"glVertex4d";
  701. void (__stdcall* glVertex4fv)(float* v) = (void (__stdcall*)(float*))&"glVertex4fv";
  702. void (__stdcall* glVertex4dv)(double* v) = (void (__stdcall*)(double*))&"glVertex4dv";
  703. void (__stdcall* glColor3f)(float r, float g, float b) = (void (__stdcall*)(float, float, float))&"glColor3f";
  704. //void (__stdcall* glColor3d)(...) = (void (__stdcall*)(...))&"glColor3d";
  705. //void (__stdcall* glColor3fv)(...) = (void (__stdcall*)(...))&"glColor3fv";
  706. //void (__stdcall* glColor3dv)(...) = (void (__stdcall*)(...))&"glColor3dv";
  707. void (__stdcall* glColor3ub)(unsigned char r, unsigned char g, unsigned char b) = (void (__stdcall*)(unsigned char, unsigned char, unsigned char))&"glColor3ub";
  708. //void (__stdcall* glColor4f)(...) = (void (__stdcall*)(...))&"glColor4f";
  709. //void (__stdcall* glColor4d)(...) = (void (__stdcall*)(...))&"glColor4d";
  710. //void (__stdcall* glColor4fv)(...) = (void (__stdcall*)(...))&"glColor4fv";
  711. //void (__stdcall* glColor4dv)(...) = (void (__stdcall*)(...))&"glColor4dv";
  712. void (__stdcall* glNormal3f)(float x, float y, float z) = (void (__stdcall*)(float, float, float))&"glNormal3f";
  713. //void (__stdcall* glNormal3d)(...) = (void (__stdcall*)(...))&"glNormal3d";
  714. //void (__stdcall* glNormal3fv)(...) = (void (__stdcall*)(...))&"glNormal3fv";
  715. //void (__stdcall* glNormal3dv)(...) = (void (__stdcall*)(...))&"glNormal3dv";
  716. //void (__stdcall* glTexCoord1f)(...) = (void (__stdcall*)(...))&"glTexCoord1f";
  717. //void (__stdcall* glTexCoord1d)(...) = (void (__stdcall*)(...))&"glTexCoord1d";
  718. //void (__stdcall* glTexCoord1fv)(...) = (void (__stdcall*)(...))&"glTexCoord1fv";
  719. //void (__stdcall* glTexCoord1dv)(...) = (void (__stdcall*)(...))&"glTexCoord1dv";
  720. void (__stdcall* glTexCoord2f)(float s, float t) = (void (__stdcall*)(float, float))&"glTexCoord2f";
  721. //void (__stdcall* glTexCoord2d)(...) = (void (__stdcall*)(...))&"glTexCoord2d";
  722. void (__stdcall* glTexCoord2fv)(float* v) = (void (__stdcall*)(float*))&"glTexCoord2fv";
  723. //void (__stdcall* glTexCoord2dv)(...) = (void (__stdcall*)(...))&"glTexCoord2dv";
  724. //void (__stdcall* glTexCoord3f)(...) = (void (__stdcall*)(...))&"glTexCoord3f";
  725. //void (__stdcall* glTexCoord3d)(...) = (void (__stdcall*)(...))&"glTexCoord3d";
  726. //void (__stdcall* glTexCoord3fv)(...) = (void (__stdcall*)(...))&"glTexCoord3fv";
  727. //void (__stdcall* glTexCoord3dv)(...) = (void (__stdcall*)(...))&"glTexCoord3dv";
  728. void (__stdcall* glTexCoord4f)(float s, float t, float r, float q) = (void (__stdcall*)(float, float, float, float))&"glTexCoord4f";
  729. //void (__stdcall* glTexCoord4d)(...) = (void (__stdcall*)(...))&"glTexCoord4d";
  730. //void (__stdcall* glTexCoord4fv)(...) = (void (__stdcall*)(...))&"glTexCoord4fv";
  731. //void (__stdcall* glTexCoord4dv)(...) = (void (__stdcall*)(...))&"glTexCoord4dv";
  732. void (__stdcall* glEdgeFlag)(int flag) = (void (__stdcall*)(int))&"glEdgeFlag";
  733. void (__stdcall* glMatrixMode)(int mode) = (void (__stdcall*)(int))&"glMatrixMode";
  734. void (__stdcall* glLoadMatrixf)(const float* m) = (void (__stdcall*)(const float*))&"glLoadMatrixf";
  735. void (__stdcall* glLoadIdentity)() = (void (__stdcall*)())&"glLoadIdentity";
  736. //void (__stdcall* glMultMatrixf)(...) = (void (__stdcall*)(...))&"glMultMatrixf";
  737. void (__stdcall* glPushMatrix)() = (void (__stdcall*)())&"glPushMatrix";
  738. void (__stdcall* glPopMatrix)() = (void (__stdcall*)())&"glPopMatrix";
  739. void (__stdcall* glRotatef)(float angle, float x, float y, float z) = (void (__stdcall*)(float, float, float, float))&"glRotatef";
  740. void (__stdcall* glTranslatef)(float x, float y, float z) = (void (__stdcall*)(float, float, float))&"glTranslatef";
  741. void (__stdcall* glScalef)(float x, float y, float z) = (void (__stdcall*)(float, float, float))&"glScalef";
  742. void (__stdcall* glViewport)(int x, int y, int width, int height) = (void (__stdcall*)(int, int, int, int))&"glViewport";
  743. void (__stdcall* glFrustum)(double l, double r, double b, double t, double n, double f) = (void (__stdcall*)(double, double, double, double, double, double))&"glFrustum";
  744. void (__stdcall* glGenLists)(int range) = (void (__stdcall*)(int))&"glGenLists";
  745. //void (__stdcall* glIsList)(...) = (void (__stdcall*)(...))&"glIsList";
  746. void (__stdcall* glNewList)(unsigned int list, int mode) = (void (__stdcall*)(unsigned int, int))&"glNewList";
  747. void (__stdcall* glEndList)() = (void (__stdcall*)())&"glEndList";
  748. void (__stdcall* glCallList)(unsigned int list) = (void (__stdcall*)(unsigned int))&"glCallList";
  749. void (__stdcall* glClear)(int mask) = (void (__stdcall*)(int))&"glClear";
  750. void (__stdcall* glClearColor)(float r, float g, float b, float a) = (void (__stdcall*)(float, float, float, float))&"glClearColor";
  751. //void (__stdcall* glClearDepth)(...) = (void (__stdcall*)(...))&"glClearDepth";
  752. void (__stdcall* glRenderMode)(int mode) = (void (__stdcall*)(int))&"glRenderMode";
  753. //void (__stdcall* glSelectBuffer)(...) = (void (__stdcall*)(...))&"glSelectBuffer";
  754. //void (__stdcall* glInitNames)(...) = (void (__stdcall*)(...))&"glInitNames";
  755. //void (__stdcall* glPushName)(...) = (void (__stdcall*)(...))&"glPushName";
  756. //void (__stdcall* glPopName)(...) = (void (__stdcall*)(...))&"glPopName";
  757. //void (__stdcall* glLoadName)(...) = (void (__stdcall*)(...))&"glLoadName";
  758. void (__stdcall* glGenTextures)(int n, unsigned int* textures) = (void (__stdcall*)(int, unsigned int *))&"glGenTextures";
  759. //void (__stdcall* glDeleteTextures)(...) = (void (__stdcall*)(...))&"glDeleteTextures";
  760. void (__stdcall* glBindTexture)(int target, int texture) = (void (__stdcall*)(int, int))&"glBindTexture";
  761. void (__stdcall* glTexImage2D)(int target, int level, int components, int width, int height, int border, int format, int type, void *pixels) = (void (__stdcall*)(int, int, int, int, int, int, int, int, void*))&"glTexImage2D";
  762. void (__stdcall* glTexEnvi)(int target, int pname, int param) = (void (__stdcall*)(int, int, int))&"glTexEnvi";
  763. void (__stdcall* glTexParameteri)(int target, int pname, int param) = (void (__stdcall*)(int, int, int))&"glTexParameteri";
  764. //void (__stdcall* glPixelStorei)(...) = (void (__stdcall*)(...))&"glPixelStorei";
  765. void (__stdcall* glMaterialfv)(int mode, int type, float* v) = (void (__stdcall*)(int, int, float*))&"glMaterialfv";
  766. void (__stdcall* glMaterialf)(int mode, int type, float v) = (void (__stdcall*)(int, int, float))&"glMaterialf";
  767. void (__stdcall* glColorMaterial)(int mode, int type) = (void (__stdcall*)(int, int))&"glColorMaterial";
  768. void (__stdcall* glLightfv)(int light, int type, float* v) = (void (__stdcall*)(int, int, float*))&"glLightfv";
  769. //void (__stdcall* glLightf)(...) = (void (__stdcall*)(...))&"glLightf";
  770. //void (__stdcall* glLightModeli)(...) = (void (__stdcall*)(...))&"glLightModeli";
  771. void (__stdcall* glLightModelfv)(int pname, float* param) = (void (__stdcall*)(int, float*))&"glLightModelfv";
  772. //void (__stdcall* glFlush)(...) = (void (__stdcall*)(...))&"glFlush";
  773. //void (__stdcall* glHint)(...) = (void (__stdcall*)(...))&"glHint";
  774. //void (__stdcall* glGetIntegerv)(...) = (void (__stdcall*)(...))&"glGetIntegerv";
  775. //void (__stdcall* glGetFloatv)(...) = (void (__stdcall*)(...))&"glGetFloatv";
  776. //void (__stdcall* glFrontFace)(...) = (void (__stdcall*)(...))&"glFrontFace";
  777. //void (__stdcall* glEnableClientState)(...) = (void (__stdcall*)(...))&"glEnableClientState";
  778. //void (__stdcall* glDisableClientState)(...) = (void (__stdcall*)(...))&"glDisableClientState";
  779. //void (__stdcall* glArrayElement)(...) = (void (__stdcall*)(...))&"glArrayElement";
  780. //void (__stdcall* glDrawArrays)(...) = (void (__stdcall*)(...))&"glDrawArrays";
  781. //void (__stdcall* glDrawElements)(...) = (void (__stdcall*)(...))&"glDrawElements";
  782. //void (__stdcall* glVertexPointer)(...) = (void (__stdcall*)(...))&"glVertexPointer";
  783. //void (__stdcall* glColorPointer)(...) = (void (__stdcall*)(...))&"glColorPointer";
  784. //void (__stdcall* glNormalPointer)(...) = (void (__stdcall*)(...))&"glNormalPointer";
  785. //void (__stdcall* glTexCoordPointer)(...) = (void (__stdcall*)(...))&"glTexCoordPointer";
  786. //void (__stdcall* glPolygonOffset)(...) = (void (__stdcall*)(...))&"glPolygonOffset";
  787. //void (__stdcall* glOrtho)(...) = (void (__stdcall*)(...))&"glOrtho";
  788. //void (__stdcall* glDebug)(...) = (void (__stdcall*)(...))&"glDebug";
  789. //void (__stdcall* glInit)(...) = (void (__stdcall*)(...))&"glInit";
  790. //void (__stdcall* glClose)(...) = (void (__stdcall*)(...))&"glClose";
  791. //void (__stdcall* gluPerspective)(...) = (void (__stdcall*)(...))&"gluPerspective";
  792. //void (__stdcall* gluNewQuadric)(...) = (void (__stdcall*)(...))&"gluNewQuadric";
  793. //void (__stdcall* gluDeleteQuadric)(...) = (void (__stdcall*)(...))&"gluDeleteQuadric";
  794. //void (__stdcall* gluQuadricDrawStyle)(...) = (void (__stdcall*)(...))&"gluQuadricDrawStyle";
  795. //void (__stdcall* gluQuadricOrientation)(...) = (void (__stdcall*)(...))&"gluQuadricOrientation";
  796. //void (__stdcall* gluQuadricTexture)(...) = (void (__stdcall*)(...))&"gluQuadricTexture";
  797. //void (__stdcall* gluCylinder)(...) = (void (__stdcall*)(...))&"gluCylinder";
  798. //void (__stdcall* gluSphere)(...) = (void (__stdcall*)(...))&"gluSphere";
  799. void (__stdcall* kosglMakeCurrent)(long l, long t, long w, long h, TinyGLContext*) = (void (__stdcall*)(long, long, long, long, TinyGLContext*))&"kosglMakeCurrent";
  800. void (__stdcall* kosglSwapBuffers)() = (void (__stdcall*)())&"kosglSwapBuffers";
  801. asm{
  802.         dd 0, 0
  803. }
  804. #endif