Patch Name: PHSS_13524

Patch Description: s700 10.20 OpenGL 1.1 Revision 1.03 Runtime patch

Creation Date: 98/01/19

Post Date:  98/01/22

Hardware Platforms - OS Releases:
	s700: 10.20

Products:
	OpenGLRunTime B.10.20 OpenGL 1.0 Runtime Environment

Filesets:
	OpenGLRunTime.OPENGL-DEMO OpenGLRunTime.OPENGL-RUN
	OpenGLRunTime.OPENGL-SHLIBS Xserver.AGRM

Automatic Reboot?: Yes

Status: General Superseded

Critical: No

Path Name: /hp-ux_patches/s700/10.X/PHSS_13524

Symptoms:
	PHSS_13524:
	- See defect description.

	PHSS_12472:
	- See defect description.

	PHSS_12459:
	 - See defect description.

	PHSS_11405:
	 - See defect description.

Defect Description:
	PHSS_13524:
	- This patch is primarily targetted at
	  texture mapping bug and performance
	  fixes with some number of general
	  performance improvements included.
	  Performance Improvements
	  - texture map improvements, hardware
	    support
	  - ReadPixel improvement for certain
	    pack modes and alignments
	  - DrawArraySetHP improvement
	  - buffer swap improvement (allow apps
	    to not wait for retrace) set
	    HPOGL_DSM_ENABLE_FAST_BUFFER_SWAP to
	    enable
	  - cache prefetch in immediate mode set
	    HPOGL_DISABLE_PREFETCH to disable
	  - stippled line validation improvement
	  Defect Fixes
	  - texture map fixes
	  - prelit texture in protocol mode fixed
	  - resize accum buffer corner case fixed

	PHSS_12472:
	- new rescale normal extension
	- new DrawArraySetHP extension
	- defect fixes:
	  for some fonts the blank character is
	  improperly rendered
	  glReadPixel can sometimes return bad data
	  fixed hang when using display lists with
	  lots of glMaterial
	  calls in select mode lines sometimes return
	  false hits
	  fixed interaction between glxUseFont and X
	  load font
	  GLU has bad version string
	  fix return of gl errors when using protocol mode
	- NOTE: kernel patch PHKL_13260 should be installed
		to prevent system hangs.
	- NOTE: if using texture mapping hardware,
		this patch depends on PHSS_12470.

	PHSS_12459:
	   - Fixes problem with Interleaved Array pointers not
	     always being updated correctly.

	PHSS_11405:
	   - Fragments that lose the alpha test were nonetheless
	     updating the depth and stencil buffers when using
	     VMD/VGL or when texture mapping without TM hardware.
	   - Fixes problem with lines of width < 0.5 not being
	     rendered when using VMD/VGL or texture mapping with
	     no TM hardware.
	   - Fixes problems with writing stencil values in VMD/VGL
	     or when texture mapping with no TM hardware.
	   - Fixes glCopyPixels from incorrectly performing a
	     copy when copying from one color buffer to the other.
	   - Under some corner case timing situations when using
	     indirect contexts with HP OpenGL Release 1.0,
	     incorrect X or GLX error messages can be reported
	     from the X Server.
	   - If a memory allocation error occurs while processing
	     glXUseXFont(), the PixelStore attribute values are not
	     restored as they should be.
	   - VMD/VGL and texture mapping w/o hw texture support
	     could incorrectly clip filled primitives if
	     glViewport mapped NDC to an area larger than the
	     window size.  This was causing incorrect rendering
	     and core dumps.
	   - For Release 1.0 of OpenGL, if an X Server is run in
	     multi-screen mode with an HP_VISUALIZE_?X screen and
	     a non HP_VISUALIZE_?X screen, the non HP_VISUALIZE-?X
	     screen will not operate with HP OpenGL unless the
	     HPOGL_FORCE_VGL environment is set in the client
	     environment.
	   - When using occlusion culling the test may indicate
	     that the object was completely occluded when it
	     actually wasn't.  This is because we didn't wait
	     for all the pixels to get written before looking
	     at the HW status.
	   - When running in indirect (protocol) mode, large OpenGL
	     replies such as glReadPixels() may fail and generate
	     improper Xlib errors.
	   - Texture coordinates are not getting correctly reset to
	     the default values of 0,0,0,1.
	   - Autogen mipmap memory corruption fix.
	   - If a customer closes one X Display connection that has
	     been used for OpenGL, and then immediately opens and
	     attempts to use another for OpenGL, their application
	     may abort because an attempt is made to access
	     global last context and drawable information that was
	     freed during the close display operation and may have
	     been re-used.
	   - This will fix a small offset that when mipmap
	     selection for filters NEAREST_MIPMAP_NEAREST and
	     LINEAR_MIPMAP_NEAREST.
	   - This will fix mipmap calculation coming very near
	     horizontal or vertical lines.
	   - This will fix texture mapping running over the
	     edge when linear interpolated and using clamp
	     to edge.

SR:
	0000000000

Patch Files:
	/opt/graphics/OpenGL/ReleaseNotes
	/opt/graphics/OpenGL/demos/chess/Data/BlackMarble.ppm
	/opt/graphics/OpenGL/demos/chess/Data/WhiteMarble.ppm
	/opt/graphics/OpenGL/demos/chess/Data/Wood.ppm
	/opt/graphics/OpenGL/demos/chess/Data/bishop.bj
	/opt/graphics/OpenGL/demos/chess/Data/black_top.bj
	/opt/graphics/OpenGL/demos/chess/Data/chassis.bj
	/opt/graphics/OpenGL/demos/chess/Data/king.bj
	/opt/graphics/OpenGL/demos/chess/Data/knight.bj
	/opt/graphics/OpenGL/demos/chess/Data/pawn.bj
	/opt/graphics/OpenGL/demos/chess/Data/queen.bj
	/opt/graphics/OpenGL/demos/chess/Data/rook.bj
	/opt/graphics/OpenGL/demos/chess/Data/white_top.bj
	/opt/graphics/OpenGL/demos/chess/README
	/opt/graphics/OpenGL/demos/chess/chess.uid
	/opt/graphics/OpenGL/demos/chess/chess
	/opt/graphics/OpenGL/demos/chess/crafty
	/opt/graphics/OpenGL/demos/occlusion_cull/README
	/opt/graphics/OpenGL/demos/occlusion_cull/ocComplex
	/opt/graphics/OpenGL/demos/occlusion_cull/ocSimple
	/opt/graphics/OpenGL/demos/occlusion_cull/screwdriver.gz
	/opt/graphics/OpenGL/demos/verify.uid
	/opt/graphics/OpenGL/demos/verify_install
	/opt/graphics/OpenGL/demos/verify_viewer
	/opt/graphics/OpenGL/lbin/ogld
	/opt/graphics/OpenGL/lib/lib2fc1066b.sl
	/opt/graphics/OpenGL/lib/libGL.1
	/opt/graphics/OpenGL/lib/libGL.sl
	/opt/graphics/OpenGL/lib/libGLU.1
	/opt/graphics/OpenGL/lib/libGLU.sl
	/opt/graphics/OpenGL/lib/libddvisxgl.1
	/opt/graphics/OpenGL/lib/libddvisxgl.sl
	/opt/graphics/OpenGL/lib/libddvmd.1
	/opt/graphics/OpenGL/lib/libddvmd.sl
	/opt/graphics/OpenGL/lib/nls/msg/C/glu.cat
	/opt/graphics/OpenGL/lib/nls/msg/en_US.roman8/glu.cat
	/opt/graphics/common/lib/2fc1066block.1
	/opt/graphics/common/lib/dilocking.1
	/opt/graphics/common/lib/libGti.1
	/opt/graphics/common/lib/libGti.sl
	/opt/graphics/common/lib/libtdvisx.1
	/opt/graphics/common/lib/libtdvisx.sl
	/usr/lib/X11/Xserver/brokers/extensions/Glx.1
	/usr/lib/X11/Xserver/modules/extensions/hp/glx.1

what(1) Output:
	/opt/graphics/OpenGL/ReleaseNotes:
		None
	/opt/graphics/OpenGL/demos/chess/Data/BlackMarble.ppm:
		None
	/opt/graphics/OpenGL/demos/chess/Data/WhiteMarble.ppm:
		None
	/opt/graphics/OpenGL/demos/chess/Data/Wood.ppm:
		None
	/opt/graphics/OpenGL/demos/chess/Data/bishop.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/black_top.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/chassis.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/king.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/knight.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/pawn.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/queen.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/rook.bj:
		None
	/opt/graphics/OpenGL/demos/chess/Data/white_top.bj:
		None
	/opt/graphics/OpenGL/demos/chess/README:
		None
	/opt/graphics/OpenGL/demos/chess/chess.uid:
		None
	/opt/graphics/OpenGL/demos/chess/chess:
		None
	/opt/graphics/OpenGL/demos/chess/crafty:
		HP92453-02A.10.00 HP-UX SYMBOLIC DEBUGGER (END.O) $R
			evision: 74.03 $
	/opt/graphics/OpenGL/demos/occlusion_cull/README:
		None
	/opt/graphics/OpenGL/demos/occlusion_cull/ocComplex:
		None
	/opt/graphics/OpenGL/demos/occlusion_cull/ocSimple:
		None
	/opt/graphics/OpenGL/demos/occlusion_cull/screwdriver.gz:
		None
	/opt/graphics/OpenGL/demos/verify.uid:
		None
	/opt/graphics/OpenGL/demos/verify_install:
		None
	/opt/graphics/OpenGL/demos/verify_viewer:
		None
	/opt/graphics/OpenGL/lbin/ogld:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			ogld
	/opt/graphics/OpenGL/lib/lib2fc1066b.sl:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.16:29:21 $ $Revision: 19980113.20228 $
			libddvisxgl.1
	/opt/graphics/OpenGL/lib/libGL.1:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			libGL.1
	/opt/graphics/OpenGL/lib/libGL.sl:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			libGL.1
	/opt/graphics/OpenGL/lib/libGLU.1:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			libGLU.1
	/opt/graphics/OpenGL/lib/libGLU.sl:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			libGLU.1
	/opt/graphics/OpenGL/lib/libddvisxgl.1:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.16:29:21 $ $Revision: 19980113.20228 $
			libddvisxgl.1
	/opt/graphics/OpenGL/lib/libddvisxgl.sl:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.16:29:21 $ $Revision: 19980113.20228 $
			libddvisxgl.1
	/opt/graphics/OpenGL/lib/libddvmd.1:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.17:14:18 $ $Revision: 19980113.28064 $
			libddvmd.1
	/opt/graphics/OpenGL/lib/libddvmd.sl:
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.17:14:18 $ $Revision: 19980113.28064 $
			libddvmd.1
	/opt/graphics/OpenGL/lib/nls/msg/C/glu.cat:
		None
	/opt/graphics/OpenGL/lib/nls/msg/en_US.roman8/glu.cat:
		None
	/opt/graphics/common/lib/2fc1066block.1:
		Graphics Lock Library on HP-UX 10.20 $Date: 13-Jan-9
			8.14:35:08 $ $Revision: 19980113.9616 $ 2fc1
			066block.1
	/opt/graphics/common/lib/dilocking.1:
		Graphics Lock Library on HP-UX 10.20 $Date: 13-Jan-9
			8.14:35:08 $ $Revision: 19980113.9616 $ dilo
			cking.1
	/opt/graphics/common/lib/libGti.1:
		libGti, Version 4.2 11/5/97
	/opt/graphics/common/lib/libGti.sl:
		libGti, Version 4.2 11/5/97
	/opt/graphics/common/lib/libtdvisx.1:
		Texture Daemon on HP-UX 10.20 $Date: 14-Jan-98.04:23
			:43 $ $Revision: 19980114.9762 $ libtdvisx.1
	/opt/graphics/common/lib/libtdvisx.sl:
		Texture Daemon on HP-UX 10.20 $Date: 14-Jan-98.04:23
			:43 $ $Revision: 19980114.9762 $ libtdvisx.1
	/usr/lib/X11/Xserver/brokers/extensions/Glx.1:
		HP_GLX Extension Broker    $Revision: /main/4 $   $D
			ate: 1996/10/29 17:09:27 $
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			Glx.1
	/usr/lib/X11/Xserver/modules/extensions/hp/glx.1:
		HP_GLX Extension         $Revision: /main/10 $   $Da
			te: 1996/11/26 16:52:49 $
		OpenGL 1.1 Revision 1.04 on HP-UX 10.20 $Date: 13-Ja
			n-98.18:09:01 $ $Revision: 19980113.16086 $
			glx.1

cksum(1) Output:
	2639267034 12860 /opt/graphics/OpenGL/ReleaseNotes
	2532825095 49168 /opt/graphics/OpenGL/demos/chess/Data/
		BlackMarble.ppm
	996221197 49168 /opt/graphics/OpenGL/demos/chess/Data/
		WhiteMarble.ppm
	1032795738 49168 /opt/graphics/OpenGL/demos/chess/Data/
		Wood.ppm
	3453883977 63382 /opt/graphics/OpenGL/demos/chess/Data/
		bishop.bj
	381441698 2596 /opt/graphics/OpenGL/demos/chess/Data/
		black_top.bj
	822686284 19847 /opt/graphics/OpenGL/demos/chess/Data/
		chassis.bj
	2634535594 56508 /opt/graphics/OpenGL/demos/chess/Data/
		king.bj
	676604550 56057 /opt/graphics/OpenGL/demos/chess/Data/
		knight.bj
	2013449535 56467 /opt/graphics/OpenGL/demos/chess/Data/
		pawn.bj
	4110072861 66886 /opt/graphics/OpenGL/demos/chess/Data/
		queen.bj
	3716092052 52734 /opt/graphics/OpenGL/demos/chess/Data/
		rook.bj
	2668702744 2604 /opt/graphics/OpenGL/demos/chess/Data/
		white_top.bj
	1072295849 4282 /opt/graphics/OpenGL/demos/chess/README
	305516498 24576 /opt/graphics/OpenGL/demos/chess/chess.uid
	201610975 423674 /opt/graphics/OpenGL/demos/chess/chess
	739186593 1761800 /opt/graphics/OpenGL/demos/chess/crafty
	3449587546 2614 /opt/graphics/OpenGL/demos/occlusion_cull/
		README
	2056752925 98819 /opt/graphics/OpenGL/demos/occlusion_cull/
		ocComplex
	3257426010 98864 /opt/graphics/OpenGL/demos/occlusion_cull/
		ocSimple
	1929283584 2419155 /opt/graphics/OpenGL/demos/
		occlusion_cull/screwdriver.gz
	598688924 16384 /opt/graphics/OpenGL/demos/verify.uid
	1338441258 1255 /opt/graphics/OpenGL/demos/verify_install
	1323668359 889524 /opt/graphics/OpenGL/demos/verify_viewer
	4100297533 232321 /opt/graphics/OpenGL/lbin/ogld
	547023930 1178232 /opt/graphics/OpenGL/lib/lib2fc1066b.sl
	2433269974 1678868 /opt/graphics/OpenGL/lib/libGL.1
	2433269974 1678868 /opt/graphics/OpenGL/lib/libGL.sl
	1479293282 451704 /opt/graphics/OpenGL/lib/libGLU.1
	1479293282 451704 /opt/graphics/OpenGL/lib/libGLU.sl
	547023930 1178232 /opt/graphics/OpenGL/lib/libddvisxgl.1
	547023930 1178232 /opt/graphics/OpenGL/lib/libddvisxgl.sl
	257920665 775023 /opt/graphics/OpenGL/lib/libddvmd.1
	257920665 775023 /opt/graphics/OpenGL/lib/libddvmd.sl
	366412750 2168 /opt/graphics/OpenGL/lib/nls/msg/C/glu.cat
	366412750 2168 /opt/graphics/OpenGL/lib/nls/msg/
		en_US.roman8/glu.cat
	1014027722 24674 /opt/graphics/common/lib/2fc1066block.1
	1109529427 24640 /opt/graphics/common/lib/dilocking.1
	1142176638 32899 /opt/graphics/common/lib/libGti.1
	1142176638 32899 /opt/graphics/common/lib/libGti.sl
	747793527 65730 /opt/graphics/common/lib/libtdvisx.1
	747793527 65730 /opt/graphics/common/lib/libtdvisx.sl
	860896335 12310 /usr/lib/X11/Xserver/brokers/extensions/
		Glx.1
	1859298673 36934 /usr/lib/X11/Xserver/modules/extensions/hp/
		glx.1

Patch Conflicts: None

Patch Dependencies: None

Hardware Dependencies: None

Other Dependencies: None

Supersedes:
	PHSS_11405 PHSS_12459 PHSS_12472

Equivalent Patches: None

Patch Package Size: 10670 KBytes

Installation Instructions:
	Please review all instructions and the Hewlett-Packard
	SupportLine User Guide or your Hewlett-Packard support terms
	and conditions for precautions, scope of license,
	restrictions, and, limitation of liability and warranties,
	before installing this patch.
	------------------------------------------------------------
	1. Back up your system before installing a patch.

	2. Login as root.

	3. Copy the patch to the /tmp directory.

	4. Move to the /tmp directory and unshar the patch:

		cd /tmp
		sh PHSS_13524

	5a. For a standalone system, run swinstall to install the
	    patch:

		swinstall -x autoreboot=true -x match_target=true \
			-s /tmp/PHSS_13524.depot

	5b. For a homogeneous NFS Diskless cluster run swcluster on the
	    server to install the patch on the server and the clients:

		swcluster -i -b

	    This will invoke swcluster in the interactive mode and
	    force all clients to be shut down.

	    WARNING: All cluster clients must be shut down prior to the
		     patch installation.  Installing the patch while the
		     clients are booted is unsupported and can lead to
		     serious problems.

	    The swcluster command will invoke an swinstall session in which
	    you must specify:

		alternate root path  -  default is /export/shared_root/OS_700
		source depot path    -  /tmp/PHSS_13524.depot

	    To complete the installation, select the patch by choosing
	    "Actions -> Match What Target Has" and then "Actions -> Install"
	    from the Menubar.

	5c. For a heterogeneous NFS Diskless cluster:

		- run swinstall on the server as in step 5a to install
		  the patch on the cluster server.

		- run swcluster on the server as in step 5b to install
		  the patch on the cluster clients.

	By default swinstall will archive the original software in
	/var/adm/sw/patch/PHSS_13524.  If you do not wish to retain a
	copy of the original software, you can create an empty file
	named /var/adm/sw/patch/PATCH_NOSAVE.

	Warning: If this file exists when a patch is installed, the
	         patch cannot be deinstalled.  Please be careful
		 when using this feature.

	It is recommended that you move the PHSS_13524.text file to
	/var/adm/sw/patch for future reference.

	To put this patch on a magnetic tape and install from the
	tape drive, use the command:

		dd if=/tmp/PHSS_13524.depot of=/dev/rmt/0m bs=2k

Special Installation Instructions: None