NAME
	  fglTexSubImage2D - specify a two-dimensional texture
	  subimage


     FORTRAN SPECIFICATION
	  SUBROUTINE fglTexSubImage2D( INTEGER*4 target,
				       INTEGER*4 level,
				       INTEGER*4 xoffset,
				       INTEGER*4 yoffset,
				       INTEGER*4 width,
				       INTEGER*4 height,
				       INTEGER*4 format,
				       INTEGER*4 type,
				       CHARACTER*8 pixels )


     PARAMETERS
	  target   Specifies the target	texture.  Must be
		   GL_TEXTURE_2D.

	  level	   Specifies the level-of-detail number.  Level	0 is
		   the base image level.  Level	n is the nth mipmap
		   reduction image.

	  xoffset  Specifies a texel offset in the x direction within
		   the texture array.

	  yoffset  Specifies a texel offset in the y direction within
		   the texture array.

	  width	   Specifies the width of the texture subimage.

	  height   Specifies the height	of the texture subimage.

	  format   Specifies the format	of the pixel data.  The
		   following symbolic values are accepted:
		   GL_COLOR_INDEX, GL_RED, GL_GREEN, GL_BLUE,
		   GL_ALPHA, GL_RGB, GL_RGBA, GL_LUMINANCE, and
		   GL_LUMINANCE_ALPHA.

	  type	   Specifies the data type of the pixel	data.  The
		   following symbolic values are accepted:
		   GL_UNSIGNED_BYTE, GL_BYTE, GL_BITMAP,
		   GL_UNSIGNED_SHORT, GL_SHORT,	GL_UNSIGNED_INT,
		   GL_INT, and GL_FLOAT.

	  pixels   Specifies a pointer to the image data in memory.

     DESCRIPTION
	  Texturing maps a portion of a	specified texture image	onto
	  each graphical primitive for which texturing is enabled.  To
	  enable and disable two-dimensional texturing,	call fglEnable
	  and fglDisable with argument GL_TEXTURE_2D.

	  fglTexSubImage2D redefines a contiguous subregion of an
	  existing two-dimensional texture image.  The texels
	  referenced by	pixels replace the portion of the existing
	  texture array	with x indices xoffset and
	  xoffset + width - 1, inclusive, and y	indices	yoffset	and
	  yoffset + height - 1,	inclusive. This	region may not include
	  any texels outside the range of the texture array as it was
	  originally specified.	 It is not an error to specify a
	  subtexture with zero width or	height,	but such a
	  specification	has no effect.

     NOTES
	  fglTexSubImage2D is available	only if	the GL version is 1.1
	  or greater.

	  Texturing has	no effect in color index mode.

	  fglPixelStore	and fglPixelTransfer modes affect texture
	  images in exactly the	way they affect	fglDrawPixels.

     ERRORS
	  GL_INVALID_ENUM is generated if target is not	GL_TEXTURE_2D.

	  GL_INVALID_OPERATION is generated if the texture array has
	  not been defined by a	previous fglTexImage2D operation.

	  GL_INVALID_VALUE is generated	if level is less than 0.

	  P GL_INVALID_VALUE may be generated if level is greater than
	  log max, where max is	the returned value of
	  GL_MAX_TEXTURE_SIZE.

	  GL_INVALID_VALUE is generated	if xoffset <  -b,
	  (xoffset + width) > (w - b), yoffset <  -b, or
	  (yoffset + height) > (h - b).	 Where w is the
	  GL_TEXTURE_WIDTH, h is the GL_TEXTURE_HEIGHT,	and b is the
	  border width of the texture image being modified.  Note that
	  w and	h include twice	the border width.

	  GL_INVALID_VALUE is generated	if width or height is less
	  than 0.

	  GL_INVALID_ENUM is generated if format is not	an accepted
	  format constant.

	  GL_INVALID_ENUM is generated if type is not a	type constant.

	  GL_INVALID_ENUM is generated if type is GL_BITMAP and	format
	  is not GL_COLOR_INDEX.
	  GL_INVALID_OPERATION is generated if fglTexSubImage2D	is
	  executed between the execution of fglBegin and the
	  corresponding	execution of fglEnd.

     ASSOCIATED	GETS
	  fglGetTexImage
	  fglIsEnabled with argument GL_TEXTURE_2D

     SEE ALSO
	  fglCopyTexImage1D, fglCopyTexImage2D,	fglCopyTexSubImage1D,
	  fglCopyTexSubImage2D,	fglDrawPixels, fglPixelStore,
	  fglPixelTransfer, fglTexEnv, fglTexGen, fglTexImage1D,
	  fglTexImage2D, fglTexSubImage1D, fglTexParameter