Compare commits
	
		
			1400 Commits
		
	
	
		
			mesa_4_0_4
			...
			vtx-0-2-21
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					f2f09abce4 | ||
| 
						 | 
					93320957f2 | ||
| 
						 | 
					374a09c4f7 | ||
| 
						 | 
					1302fd3b25 | ||
| 
						 | 
					5198950cde | ||
| 
						 | 
					88d66b7208 | ||
| 
						 | 
					701208d259 | ||
| 
						 | 
					dfd3c9c40f | ||
| 
						 | 
					cef9471ab2 | ||
| 
						 | 
					8d8bb0679c | ||
| 
						 | 
					5affcd3cbb | ||
| 
						 | 
					86ac3e3c2d | ||
| 
						 | 
					5c2d467e6d | ||
| 
						 | 
					c00a1c4622 | ||
| 
						 | 
					dad38213e7 | ||
| 
						 | 
					9cbad64314 | ||
| 
						 | 
					f0bf8c0ed1 | ||
| 
						 | 
					6b692dc06c | ||
| 
						 | 
					be3c25458b | ||
| 
						 | 
					a384b0c5eb | ||
| 
						 | 
					acfa4d46a4 | ||
| 
						 | 
					df3b1eb5bc | ||
| 
						 | 
					34a9e4adaf | ||
| 
						 | 
					34f6df8b6d | ||
| 
						 | 
					5fc6940aca | ||
| 
						 | 
					c9c27a6efd | ||
| 
						 | 
					79a49e30a1 | ||
| 
						 | 
					f1582dbe52 | ||
| 
						 | 
					4fc77f884c | ||
| 
						 | 
					398f8d10a2 | ||
| 
						 | 
					5b9ad341a0 | ||
| 
						 | 
					fcd68a2b30 | ||
| 
						 | 
					f1bbe8d0a5 | ||
| 
						 | 
					3c0cfda46b | ||
| 
						 | 
					5d80efc35e | ||
| 
						 | 
					e01f56b3a8 | ||
| 
						 | 
					30cd200068 | ||
| 
						 | 
					e55c545d4a | ||
| 
						 | 
					b101554d16 | ||
| 
						 | 
					1b8c209523 | ||
| 
						 | 
					d46adad5cd | ||
| 
						 | 
					bfc37379cc | ||
| 
						 | 
					0c390fec04 | ||
| 
						 | 
					d5c9fd383b | ||
| 
						 | 
					8ae69294ad | ||
| 
						 | 
					46330d3aa7 | ||
| 
						 | 
					c91f7ad52b | ||
| 
						 | 
					5b40d6924c | ||
| 
						 | 
					27b4c2d675 | ||
| 
						 | 
					051a8141d1 | ||
| 
						 | 
					9b6d6988c4 | ||
| 
						 | 
					967fa00a7f | ||
| 
						 | 
					2cdd699a77 | ||
| 
						 | 
					4e5b58f483 | ||
| 
						 | 
					a4fc8035f1 | ||
| 
						 | 
					3e291c01ea | ||
| 
						 | 
					facb597f48 | ||
| 
						 | 
					5fd77da4f6 | ||
| 
						 | 
					7d8eb0604a | ||
| 
						 | 
					d7fe183f76 | ||
| 
						 | 
					adbbea9b51 | ||
| 
						 | 
					a75246f8f5 | ||
| 
						 | 
					d6643331ab | ||
| 
						 | 
					7214e1a1c4 | ||
| 
						 | 
					e508f7f08e | ||
| 
						 | 
					0f2e186926 | ||
| 
						 | 
					525dda4f26 | ||
| 
						 | 
					6bec5b30e1 | ||
| 
						 | 
					73b0420bba | ||
| 
						 | 
					5b5142b543 | ||
| 
						 | 
					cafc787027 | ||
| 
						 | 
					26577e4939 | ||
| 
						 | 
					1a89978d83 | ||
| 
						 | 
					77a505a4bb | ||
| 
						 | 
					c1cbde2ae1 | ||
| 
						 | 
					2c9618bb12 | ||
| 
						 | 
					9b101c34da | ||
| 
						 | 
					b0cde83906 | ||
| 
						 | 
					d7dabacfa3 | ||
| 
						 | 
					8f7141e970 | ||
| 
						 | 
					d01681d6c9 | ||
| 
						 | 
					d11bb2b297 | ||
| 
						 | 
					f3a63d69ff | ||
| 
						 | 
					ea9365b48a | ||
| 
						 | 
					6872c21ace | ||
| 
						 | 
					9d55394471 | ||
| 
						 | 
					a13fb034cb | ||
| 
						 | 
					e4fcea2e06 | ||
| 
						 | 
					74c33393b4 | ||
| 
						 | 
					ff750fe8cb | ||
| 
						 | 
					04e6987de1 | ||
| 
						 | 
					b263802bcf | ||
| 
						 | 
					361a9ac966 | ||
| 
						 | 
					a588e5af3b | ||
| 
						 | 
					effa9af9b1 | ||
| 
						 | 
					98cdf71f5a | ||
| 
						 | 
					29b4076f9a | ||
| 
						 | 
					1a8ebb8c2f | ||
| 
						 | 
					87f858dd7c | ||
| 
						 | 
					e4b40a7cf1 | ||
| 
						 | 
					85be17868c | ||
| 
						 | 
					84c2730866 | ||
| 
						 | 
					80d719f11a | ||
| 
						 | 
					315e78b0b5 | ||
| 
						 | 
					2c5f5dc7fe | ||
| 
						 | 
					06588db3fa | ||
| 
						 | 
					3173277e20 | ||
| 
						 | 
					8512074b90 | ||
| 
						 | 
					bd3096edc3 | ||
| 
						 | 
					99823b3744 | ||
| 
						 | 
					0c415bca5c | ||
| 
						 | 
					4ba2986c06 | ||
| 
						 | 
					a01566e468 | ||
| 
						 | 
					df8d337eec | ||
| 
						 | 
					65f605849a | ||
| 
						 | 
					83f57e32ca | ||
| 
						 | 
					bbd9a0c2b4 | ||
| 
						 | 
					66e6e3e8e1 | ||
| 
						 | 
					ea7bf8b130 | ||
| 
						 | 
					6296276ebe | ||
| 
						 | 
					1ceeac29ec | ||
| 
						 | 
					de8d410a99 | ||
| 
						 | 
					d2afb39d19 | ||
| 
						 | 
					1a5709dc5b | ||
| 
						 | 
					9109625c03 | ||
| 
						 | 
					6bced0148e | ||
| 
						 | 
					57d882b684 | ||
| 
						 | 
					397d1e4d57 | ||
| 
						 | 
					5543901b96 | ||
| 
						 | 
					84351999ec | ||
| 
						 | 
					148a2847a1 | ||
| 
						 | 
					4561f84183 | ||
| 
						 | 
					278ce99171 | ||
| 
						 | 
					b04633d727 | ||
| 
						 | 
					458c900d3b | ||
| 
						 | 
					978646d86f | ||
| 
						 | 
					1d57658ee5 | ||
| 
						 | 
					aa00d122b8 | ||
| 
						 | 
					b29b8ca47d | ||
| 
						 | 
					438a898dcf | ||
| 
						 | 
					973da83f62 | ||
| 
						 | 
					5c480a4887 | ||
| 
						 | 
					90f673e3ec | ||
| 
						 | 
					ca29a7c731 | ||
| 
						 | 
					c7b872a277 | ||
| 
						 | 
					39c65bfb93 | ||
| 
						 | 
					0207b47aaf | ||
| 
						 | 
					0a363f4e87 | ||
| 
						 | 
					50253ea0a3 | ||
| 
						 | 
					176108767d | ||
| 
						 | 
					e39cbf63f6 | ||
| 
						 | 
					445ecdcebd | ||
| 
						 | 
					91253e7be5 | ||
| 
						 | 
					054fedb455 | ||
| 
						 | 
					94f944762d | ||
| 
						 | 
					6c57b379a4 | ||
| 
						 | 
					1ac73bc993 | ||
| 
						 | 
					5f37abfc43 | ||
| 
						 | 
					ade4de9b5d | ||
| 
						 | 
					044f20d1ea | ||
| 
						 | 
					054b5aef92 | ||
| 
						 | 
					d402cb97bd | ||
| 
						 | 
					0d08399d8d | ||
| 
						 | 
					0ac157ddc4 | ||
| 
						 | 
					9c9c2cd725 | ||
| 
						 | 
					e082348a4b | ||
| 
						 | 
					afc0428b5c | ||
| 
						 | 
					56e9efa15d | ||
| 
						 | 
					eaf2f5bb4f | ||
| 
						 | 
					feb9e4c432 | ||
| 
						 | 
					03f0ddbe4c | ||
| 
						 | 
					67c1fd2fdb | ||
| 
						 | 
					c8363a31cf | ||
| 
						 | 
					886bc6f36c | ||
| 
						 | 
					c86eab8478 | ||
| 
						 | 
					352e0d0d27 | ||
| 
						 | 
					21d956106e | ||
| 
						 | 
					08dbe5664d | ||
| 
						 | 
					77e85f133c | ||
| 
						 | 
					0d4da529bd | ||
| 
						 | 
					b3680df593 | ||
| 
						 | 
					254e201721 | ||
| 
						 | 
					2b7a01a39b | ||
| 
						 | 
					7961e67c2a | ||
| 
						 | 
					1c5ff572aa | ||
| 
						 | 
					bd7a3de4b3 | ||
| 
						 | 
					04a81da03b | ||
| 
						 | 
					e38a55ecb2 | ||
| 
						 | 
					dc24230de7 | ||
| 
						 | 
					d12a871b21 | ||
| 
						 | 
					e39a334f1a | ||
| 
						 | 
					c769a7febf | ||
| 
						 | 
					f5515cb4af | ||
| 
						 | 
					760960028f | ||
| 
						 | 
					9e94aaf6e3 | ||
| 
						 | 
					3a604da4cc | ||
| 
						 | 
					58c5df87be | ||
| 
						 | 
					0b12650701 | ||
| 
						 | 
					781fb93877 | ||
| 
						 | 
					a6ed6f48e6 | ||
| 
						 | 
					d49acd629b | ||
| 
						 | 
					d2d3052378 | ||
| 
						 | 
					371f7cdb7a | ||
| 
						 | 
					f9dbd07e14 | ||
| 
						 | 
					dc22a652c9 | ||
| 
						 | 
					d620015abd | ||
| 
						 | 
					2230b8518e | ||
| 
						 | 
					4be6c0f04b | ||
| 
						 | 
					a3a10e6dfc | ||
| 
						 | 
					e28a4c147c | ||
| 
						 | 
					1da1f1e4ba | ||
| 
						 | 
					7c819439ba | ||
| 
						 | 
					52f246bd23 | ||
| 
						 | 
					724c2c7f6f | ||
| 
						 | 
					ae530c2ff9 | ||
| 
						 | 
					6373672367 | ||
| 
						 | 
					3baefe663b | ||
| 
						 | 
					5df82c82bd | ||
| 
						 | 
					1a84876d79 | ||
| 
						 | 
					4778beb761 | ||
| 
						 | 
					12c037dbff | ||
| 
						 | 
					9ec58c2c5b | ||
| 
						 | 
					3dc8cc4ebc | ||
| 
						 | 
					9d73b81068 | ||
| 
						 | 
					d4576154e6 | ||
| 
						 | 
					bb93870133 | ||
| 
						 | 
					8a033fa135 | ||
| 
						 | 
					01bb309cce | ||
| 
						 | 
					f2dd273322 | ||
| 
						 | 
					4f12be0249 | ||
| 
						 | 
					3bbe68510f | ||
| 
						 | 
					e17c1abd67 | ||
| 
						 | 
					b5a41d6050 | ||
| 
						 | 
					2c50b922d6 | ||
| 
						 | 
					49555d14a8 | ||
| 
						 | 
					8f44286b29 | ||
| 
						 | 
					1b252a4f6f | ||
| 
						 | 
					824a4fc34f | ||
| 
						 | 
					93a458840c | ||
| 
						 | 
					b32a036059 | ||
| 
						 | 
					b93652d67e | ||
| 
						 | 
					676cf71852 | ||
| 
						 | 
					848ff108a0 | ||
| 
						 | 
					adbec39bbf | ||
| 
						 | 
					a7ea785a10 | ||
| 
						 | 
					fb4d5492e0 | ||
| 
						 | 
					ff56908e09 | ||
| 
						 | 
					e6dea091c0 | ||
| 
						 | 
					304d11e0e1 | ||
| 
						 | 
					2880669853 | ||
| 
						 | 
					1a615070ed | ||
| 
						 | 
					f88d846255 | ||
| 
						 | 
					acad0fae7f | ||
| 
						 | 
					e7d9b3fdd7 | ||
| 
						 | 
					1b41c0d3d8 | ||
| 
						 | 
					4894df6cf2 | ||
| 
						 | 
					b9d9c1f40d | ||
| 
						 | 
					9b0bb3d052 | ||
| 
						 | 
					fd5889f975 | ||
| 
						 | 
					c2b39d0312 | ||
| 
						 | 
					00d7f16dbd | ||
| 
						 | 
					c2aee04666 | ||
| 
						 | 
					838bb33fe1 | ||
| 
						 | 
					0a5957bfb1 | ||
| 
						 | 
					eb226f118f | ||
| 
						 | 
					a3286498e6 | ||
| 
						 | 
					bd36e5f17b | ||
| 
						 | 
					4e245c334d | ||
| 
						 | 
					7d3bf7f6d1 | ||
| 
						 | 
					3a25e2350a | ||
| 
						 | 
					df03f8ed6d | ||
| 
						 | 
					adb5e0bb1d | ||
| 
						 | 
					95a791bb3e | ||
| 
						 | 
					c7363f7a48 | ||
| 
						 | 
					c06ff13b14 | ||
| 
						 | 
					5c04693a3f | ||
| 
						 | 
					b6a74a4f6e | ||
| 
						 | 
					fbd052efed | ||
| 
						 | 
					9baab01c1f | ||
| 
						 | 
					bff1bf9794 | ||
| 
						 | 
					b1bc0dc3f4 | ||
| 
						 | 
					341313b601 | ||
| 
						 | 
					f78311ed64 | ||
| 
						 | 
					6ff00f91c8 | ||
| 
						 | 
					6b4716c63a | ||
| 
						 | 
					9c7b81697b | ||
| 
						 | 
					9f9bed9c8e | ||
| 
						 | 
					d19b5db5dc | ||
| 
						 | 
					ad6ecf0227 | ||
| 
						 | 
					6a940e8946 | ||
| 
						 | 
					05944c031c | ||
| 
						 | 
					f7fda86c6d | ||
| 
						 | 
					389858ee7b | ||
| 
						 | 
					64da663f51 | ||
| 
						 | 
					5366b01d86 | ||
| 
						 | 
					08ff059f20 | ||
| 
						 | 
					190c11e06d | ||
| 
						 | 
					9a0d97a21c | ||
| 
						 | 
					f44898c088 | ||
| 
						 | 
					702ca20bf0 | ||
| 
						 | 
					c19cbb58cd | ||
| 
						 | 
					6dc8557500 | ||
| 
						 | 
					44c699949a | ||
| 
						 | 
					356959952c | ||
| 
						 | 
					f6e76fe9b5 | ||
| 
						 | 
					ef751eb08b | ||
| 
						 | 
					92d31641d2 | ||
| 
						 | 
					b464dee72b | ||
| 
						 | 
					7568561fa7 | ||
| 
						 | 
					235c150f0a | ||
| 
						 | 
					887e2cf01a | ||
| 
						 | 
					32bac60519 | ||
| 
						 | 
					de4f460e20 | ||
| 
						 | 
					9826ca3ef5 | ||
| 
						 | 
					4e28d962ff | ||
| 
						 | 
					a58214e417 | ||
| 
						 | 
					fb8105fbaa | ||
| 
						 | 
					ccb8284a5b | ||
| 
						 | 
					642699a19f | ||
| 
						 | 
					710207c46f | ||
| 
						 | 
					225517aff0 | ||
| 
						 | 
					8fa507592b | ||
| 
						 | 
					86258034d5 | ||
| 
						 | 
					b17a722ca3 | ||
| 
						 | 
					0c0e583c01 | ||
| 
						 | 
					93db675bd9 | ||
| 
						 | 
					6a0db56269 | ||
| 
						 | 
					5ac9e660a6 | ||
| 
						 | 
					b1d53d909d | ||
| 
						 | 
					196a90b511 | ||
| 
						 | 
					5c08c5bff3 | ||
| 
						 | 
					f499860de4 | ||
| 
						 | 
					de5496d2a6 | ||
| 
						 | 
					5f3439916b | ||
| 
						 | 
					5e04bcf6de | ||
| 
						 | 
					66a83c9e17 | ||
| 
						 | 
					9a2121cfb6 | ||
| 
						 | 
					cd0fbde699 | ||
| 
						 | 
					829703316d | ||
| 
						 | 
					b953bebc25 | ||
| 
						 | 
					9ac51f57ef | ||
| 
						 | 
					b9e1411660 | ||
| 
						 | 
					3c28d1e2a9 | ||
| 
						 | 
					09dbc1e5ae | ||
| 
						 | 
					a189e4c1e1 | ||
| 
						 | 
					c9ab99ced1 | ||
| 
						 | 
					45e9a5c46b | ||
| 
						 | 
					698e67d409 | ||
| 
						 | 
					68155873bd | ||
| 
						 | 
					c0e1189bad | ||
| 
						 | 
					3ba8a49c81 | ||
| 
						 | 
					8c20c7ba0c | ||
| 
						 | 
					f1163a3769 | ||
| 
						 | 
					236d2dbc72 | ||
| 
						 | 
					80f669b9b0 | ||
| 
						 | 
					882caa18c6 | ||
| 
						 | 
					b2a4aecd80 | ||
| 
						 | 
					f8f830d59d | ||
| 
						 | 
					62dc802818 | ||
| 
						 | 
					80b8665438 | ||
| 
						 | 
					f98921d344 | ||
| 
						 | 
					785774deb2 | ||
| 
						 | 
					dc3e0f0f5d | ||
| 
						 | 
					d18c08fe89 | ||
| 
						 | 
					0b52018df2 | ||
| 
						 | 
					e8e93e9cc6 | ||
| 
						 | 
					2c5f93784e | ||
| 
						 | 
					8750668ad7 | ||
| 
						 | 
					a3793214e9 | ||
| 
						 | 
					27358a24a0 | ||
| 
						 | 
					eea72ff722 | ||
| 
						 | 
					0421ce4b46 | ||
| 
						 | 
					12f8fb6084 | ||
| 
						 | 
					06a03bfb2a | ||
| 
						 | 
					3ef8ed72ca | ||
| 
						 | 
					b93df0af47 | ||
| 
						 | 
					e591ad7350 | ||
| 
						 | 
					0295088118 | ||
| 
						 | 
					3fdb8fbfc5 | ||
| 
						 | 
					ea31ca4720 | ||
| 
						 | 
					baa42c3364 | ||
| 
						 | 
					a96d596be9 | ||
| 
						 | 
					6636a61418 | ||
| 
						 | 
					7357f20b1e | ||
| 
						 | 
					c784d87b0f | ||
| 
						 | 
					e53aa5022f | ||
| 
						 | 
					92f9785c72 | ||
| 
						 | 
					09b00c5ded | ||
| 
						 | 
					1a8d64e6e9 | ||
| 
						 | 
					5329d0ca7a | ||
| 
						 | 
					f34de59b3e | ||
| 
						 | 
					370d7ad007 | ||
| 
						 | 
					9e3a7cd6dd | ||
| 
						 | 
					c8f2f456f9 | ||
| 
						 | 
					c6506004d4 | ||
| 
						 | 
					3e50d140f5 | ||
| 
						 | 
					e78f823724 | ||
| 
						 | 
					a83b4b1f2c | ||
| 
						 | 
					464bc3b674 | ||
| 
						 | 
					7bb832f9f7 | ||
| 
						 | 
					e5b244ff7f | ||
| 
						 | 
					2780bb824f | ||
| 
						 | 
					b0b9b798ac | ||
| 
						 | 
					e4eae45512 | ||
| 
						 | 
					8eb2fe0e15 | ||
| 
						 | 
					d93b68f17a | ||
| 
						 | 
					ff389b00a5 | ||
| 
						 | 
					95210bc806 | ||
| 
						 | 
					e5db876329 | ||
| 
						 | 
					a0ef56fd15 | ||
| 
						 | 
					edd677454d | ||
| 
						 | 
					9b14e0fbfd | ||
| 
						 | 
					77eec61e21 | ||
| 
						 | 
					5e92a7c745 | ||
| 
						 | 
					3ca3ab0cd1 | ||
| 
						 | 
					24339179a4 | ||
| 
						 | 
					da74a60e4c | ||
| 
						 | 
					5960105ca3 | ||
| 
						 | 
					af0c247021 | ||
| 
						 | 
					451f31093e | ||
| 
						 | 
					2db8041ffe | ||
| 
						 | 
					d0492cf137 | ||
| 
						 | 
					6cfaff1633 | ||
| 
						 | 
					bf7128a682 | ||
| 
						 | 
					ebab631c9c | ||
| 
						 | 
					0b77a1c635 | ||
| 
						 | 
					ad80233d5d | ||
| 
						 | 
					4c928471c1 | ||
| 
						 | 
					ef393cbb54 | ||
| 
						 | 
					aac732546a | ||
| 
						 | 
					c708ac2afe | ||
| 
						 | 
					38c619bf15 | ||
| 
						 | 
					dcf3d8d61d | ||
| 
						 | 
					36a0a3252e | ||
| 
						 | 
					0cebd5822a | ||
| 
						 | 
					b8ca0172e7 | ||
| 
						 | 
					071a4ddd92 | ||
| 
						 | 
					4cef881e1f | ||
| 
						 | 
					14995b3d3b | ||
| 
						 | 
					670c8780f7 | ||
| 
						 | 
					0e7f2952fe | ||
| 
						 | 
					e3dd0a4e7f | ||
| 
						 | 
					69ffa43656 | ||
| 
						 | 
					33ce405e86 | ||
| 
						 | 
					c0eebd723f | ||
| 
						 | 
					ce7f006e66 | ||
| 
						 | 
					738318bb75 | ||
| 
						 | 
					b0e90cc839 | ||
| 
						 | 
					7823388744 | ||
| 
						 | 
					bb5ebf1724 | ||
| 
						 | 
					0983163fde | ||
| 
						 | 
					27f4484fb7 | ||
| 
						 | 
					dd26d02889 | ||
| 
						 | 
					12fca20e1f | ||
| 
						 | 
					b852f048ee | ||
| 
						 | 
					8d7a2504c3 | ||
| 
						 | 
					4b28b5a885 | ||
| 
						 | 
					97bc3d7e78 | ||
| 
						 | 
					525f04389f | ||
| 
						 | 
					f0805670a1 | ||
| 
						 | 
					6fafc7ad19 | ||
| 
						 | 
					1e24d3318d | ||
| 
						 | 
					a3f137094c | ||
| 
						 | 
					926c34f894 | ||
| 
						 | 
					e9f4ee87d8 | ||
| 
						 | 
					8412c60451 | ||
| 
						 | 
					b8b50cc5c4 | ||
| 
						 | 
					dc27b33fb4 | ||
| 
						 | 
					d78c57e8b5 | ||
| 
						 | 
					6045b0501d | ||
| 
						 | 
					05b2651066 | ||
| 
						 | 
					55b0ff2193 | ||
| 
						 | 
					c765d44650 | ||
| 
						 | 
					a376e339a5 | ||
| 
						 | 
					954a9b8885 | ||
| 
						 | 
					bc6dfeb865 | ||
| 
						 | 
					871a881899 | ||
| 
						 | 
					7f223f2060 | ||
| 
						 | 
					408722351d | ||
| 
						 | 
					56fe21b3e7 | ||
| 
						 | 
					1c455e4843 | ||
| 
						 | 
					6061df09a4 | ||
| 
						 | 
					c13a05547d | ||
| 
						 | 
					c310570215 | ||
| 
						 | 
					9c27050e27 | ||
| 
						 | 
					997d468afe | ||
| 
						 | 
					88e3ed2d81 | ||
| 
						 | 
					29af3b2be6 | ||
| 
						 | 
					52334967ed | ||
| 
						 | 
					c6d030a597 | ||
| 
						 | 
					861a60fd40 | ||
| 
						 | 
					183aea64d3 | ||
| 
						 | 
					a8d4963fbc | ||
| 
						 | 
					8856cece54 | ||
| 
						 | 
					98fc9b36b6 | ||
| 
						 | 
					a5607f2a04 | ||
| 
						 | 
					a46bd6f96a | ||
| 
						 | 
					45bc887da2 | ||
| 
						 | 
					af1bfb7281 | ||
| 
						 | 
					6d6efd605f | ||
| 
						 | 
					ee2b34215f | ||
| 
						 | 
					bb21846b2f | ||
| 
						 | 
					d40f9fa0ec | ||
| 
						 | 
					efe5671eef | ||
| 
						 | 
					b0f347872d | ||
| 
						 | 
					4515663052 | ||
| 
						 | 
					762c115242 | ||
| 
						 | 
					aaa46798f1 | ||
| 
						 | 
					c6dcb0fe89 | ||
| 
						 | 
					54e92e8420 | ||
| 
						 | 
					a79b55ae65 | ||
| 
						 | 
					dec3ed69e2 | ||
| 
						 | 
					b0eee79868 | ||
| 
						 | 
					350353adcd | ||
| 
						 | 
					add99d01ee | ||
| 
						 | 
					5b8ed51501 | ||
| 
						 | 
					f386f73f9e | ||
| 
						 | 
					a2da1155c2 | ||
| 
						 | 
					57ad382b8d | ||
| 
						 | 
					971e4d6160 | ||
| 
						 | 
					7954480d65 | ||
| 
						 | 
					24e81fda4d | ||
| 
						 | 
					08953c318e | ||
| 
						 | 
					47d8adde43 | ||
| 
						 | 
					f4b21ab645 | ||
| 
						 | 
					0b27aceae2 | ||
| 
						 | 
					dc32636cfd | ||
| 
						 | 
					009bbccb69 | ||
| 
						 | 
					b5a56e2480 | ||
| 
						 | 
					cc9464e082 | ||
| 
						 | 
					612cf792db | ||
| 
						 | 
					f9b1e5241f | ||
| 
						 | 
					386578c5bc | ||
| 
						 | 
					42ad8664f9 | ||
| 
						 | 
					078418208f | ||
| 
						 | 
					a59ce9041d | ||
| 
						 | 
					0168240c5c | ||
| 
						 | 
					490a8b8315 | ||
| 
						 | 
					27558a160a | ||
| 
						 | 
					4e50ab5f70 | ||
| 
						 | 
					001a3012ac | ||
| 
						 | 
					7acd88c6d9 | ||
| 
						 | 
					a20ed72003 | ||
| 
						 | 
					13c4c046a5 | ||
| 
						 | 
					e9218448ca | ||
| 
						 | 
					65098ec9f5 | ||
| 
						 | 
					72baa3126b | ||
| 
						 | 
					6a98bef961 | ||
| 
						 | 
					759c8f92e9 | ||
| 
						 | 
					730c924943 | ||
| 
						 | 
					ec35842990 | ||
| 
						 | 
					9f4d812aa7 | ||
| 
						 | 
					f9ff2657c4 | ||
| 
						 | 
					8488c9f3cb | ||
| 
						 | 
					1bdc52f86e | ||
| 
						 | 
					adb1a2911a | ||
| 
						 | 
					a10be7fb85 | ||
| 
						 | 
					4039cb8ca8 | ||
| 
						 | 
					b10c434a8f | ||
| 
						 | 
					d804fd1f4d | ||
| 
						 | 
					25fea6be0a | ||
| 
						 | 
					736d10c274 | ||
| 
						 | 
					25060c1f29 | ||
| 
						 | 
					b8d6607acd | ||
| 
						 | 
					4e44d8c4c6 | ||
| 
						 | 
					14e6bbccff | ||
| 
						 | 
					3a4231e132 | ||
| 
						 | 
					ea20dfa7a8 | ||
| 
						 | 
					19b3b0a0ff | ||
| 
						 | 
					60f84fcc91 | ||
| 
						 | 
					449e47f06a | ||
| 
						 | 
					85109b063c | ||
| 
						 | 
					04cbad84e8 | ||
| 
						 | 
					2c1912fe84 | ||
| 
						 | 
					a89cc0edad | ||
| 
						 | 
					f2f5f4f884 | ||
| 
						 | 
					095f59a303 | ||
| 
						 | 
					e07618fb57 | ||
| 
						 | 
					615991ac66 | ||
| 
						 | 
					a4a5da745b | ||
| 
						 | 
					b6b39455e3 | ||
| 
						 | 
					92d7935074 | ||
| 
						 | 
					b8e3eb95d0 | ||
| 
						 | 
					c8e28650c9 | ||
| 
						 | 
					7d0522e16a | ||
| 
						 | 
					66dce0875e | ||
| 
						 | 
					6cf845f338 | ||
| 
						 | 
					dd5f1f43ac | ||
| 
						 | 
					e5ed2f07d8 | ||
| 
						 | 
					398c6b7980 | ||
| 
						 | 
					657a9d64d7 | ||
| 
						 | 
					95e67dc99d | ||
| 
						 | 
					3d7071b8a5 | ||
| 
						 | 
					c0f1a69a96 | ||
| 
						 | 
					4f615d7fa3 | ||
| 
						 | 
					839bef921c | ||
| 
						 | 
					4c3bb69a94 | ||
| 
						 | 
					5c31f8678b | ||
| 
						 | 
					35d03a6b3e | ||
| 
						 | 
					02de45dced | ||
| 
						 | 
					f4418f4d1c | ||
| 
						 | 
					45b47d079f | ||
| 
						 | 
					7cac85d00a | ||
| 
						 | 
					9067c26e5d | ||
| 
						 | 
					9d169138d0 | ||
| 
						 | 
					b7209b54f7 | ||
| 
						 | 
					388781a526 | ||
| 
						 | 
					b3f717037d | ||
| 
						 | 
					d737ad5272 | ||
| 
						 | 
					a7c52c61e5 | ||
| 
						 | 
					a2473160d4 | ||
| 
						 | 
					7ab14f00f0 | ||
| 
						 | 
					041d5d3aee | ||
| 
						 | 
					ccec647f1c | ||
| 
						 | 
					418ac00e75 | ||
| 
						 | 
					068a4812fc | ||
| 
						 | 
					943f0c6a41 | ||
| 
						 | 
					19ad3fee8c | ||
| 
						 | 
					64b4298181 | ||
| 
						 | 
					a12d12d119 | ||
| 
						 | 
					8f95d790da | ||
| 
						 | 
					2e5c1dce4e | ||
| 
						 | 
					47ecdf55da | ||
| 
						 | 
					5e9dd04077 | ||
| 
						 | 
					1596bf398c | ||
| 
						 | 
					08e1ef79cc | ||
| 
						 | 
					ed96f46637 | ||
| 
						 | 
					b6f2dd2a99 | ||
| 
						 | 
					ec4c882e47 | ||
| 
						 | 
					4fc647c397 | ||
| 
						 | 
					890bcc0be3 | ||
| 
						 | 
					610d59981a | ||
| 
						 | 
					cf01d97dc3 | ||
| 
						 | 
					e58286ccb6 | ||
| 
						 | 
					3c5bfac63b | ||
| 
						 | 
					e1e446bf77 | ||
| 
						 | 
					44257dacc0 | ||
| 
						 | 
					4097ea012a | ||
| 
						 | 
					dad19f51c3 | ||
| 
						 | 
					ce352387fb | ||
| 
						 | 
					e27f5e5254 | ||
| 
						 | 
					25e38ce9e5 | ||
| 
						 | 
					9108b29dbf | ||
| 
						 | 
					e772bee10b | ||
| 
						 | 
					ff9ef3baed | ||
| 
						 | 
					1e091f48f0 | ||
| 
						 | 
					fa268adc9d | ||
| 
						 | 
					95249b2d18 | ||
| 
						 | 
					0070285b32 | ||
| 
						 | 
					518b6f44b4 | ||
| 
						 | 
					10d2259baa | ||
| 
						 | 
					2df7cd4f0c | ||
| 
						 | 
					03516d9efa | ||
| 
						 | 
					c0fc0d4e5f | ||
| 
						 | 
					866023da66 | ||
| 
						 | 
					7c0e32bbf0 | ||
| 
						 | 
					7956321bf1 | ||
| 
						 | 
					e15fd85727 | ||
| 
						 | 
					76d2a77291 | ||
| 
						 | 
					6f458650bf | ||
| 
						 | 
					46b99c9016 | ||
| 
						 | 
					6cb5b3475d | ||
| 
						 | 
					93e0ba8b80 | ||
| 
						 | 
					6e179ad9ef | ||
| 
						 | 
					91e98cd153 | ||
| 
						 | 
					66fa33e576 | ||
| 
						 | 
					2a7243481a | ||
| 
						 | 
					e7cf569475 | ||
| 
						 | 
					d37363d4c0 | ||
| 
						 | 
					2569c3c744 | ||
| 
						 | 
					0f8daaf670 | ||
| 
						 | 
					1b94df053d | ||
| 
						 | 
					957a0cdb13 | ||
| 
						 | 
					f345c61a59 | ||
| 
						 | 
					a87514f58e | ||
| 
						 | 
					3ac375b174 | ||
| 
						 | 
					e44bf40402 | ||
| 
						 | 
					3ac8105e9c | ||
| 
						 | 
					3a212032e7 | ||
| 
						 | 
					d6113fc20d | ||
| 
						 | 
					a8f002f4f4 | ||
| 
						 | 
					1fe3b1d964 | ||
| 
						 | 
					69e3c8b323 | ||
| 
						 | 
					22a47c5251 | ||
| 
						 | 
					4839824587 | ||
| 
						 | 
					1b260aee24 | ||
| 
						 | 
					9c799cdc49 | ||
| 
						 | 
					b4497c5843 | ||
| 
						 | 
					cdf2da368d | ||
| 
						 | 
					36723b6538 | ||
| 
						 | 
					e21a79bfdd | ||
| 
						 | 
					4d7a1289ed | ||
| 
						 | 
					9d88c7d8f4 | ||
| 
						 | 
					21709b354b | ||
| 
						 | 
					62d821786c | ||
| 
						 | 
					101b16cf41 | ||
| 
						 | 
					069ad023b5 | ||
| 
						 | 
					43cb96cbf6 | ||
| 
						 | 
					1e9d43f56c | ||
| 
						 | 
					7069a7e3d6 | ||
| 
						 | 
					d5cbe1e924 | ||
| 
						 | 
					d8c6273cf6 | ||
| 
						 | 
					68b1d5c315 | ||
| 
						 | 
					f104619b8f | ||
| 
						 | 
					04cf6f4958 | ||
| 
						 | 
					ad8cd6111e | ||
| 
						 | 
					e307931314 | ||
| 
						 | 
					2dee6187e4 | ||
| 
						 | 
					b6d90e50ea | ||
| 
						 | 
					aa80f05484 | ||
| 
						 | 
					af76b4280c | ||
| 
						 | 
					456bc69ac4 | ||
| 
						 | 
					872c9baf00 | ||
| 
						 | 
					0b0245c160 | ||
| 
						 | 
					2c9e7ae38b | ||
| 
						 | 
					7a4a6a3c4c | ||
| 
						 | 
					d1efbf0456 | ||
| 
						 | 
					6e40539490 | ||
| 
						 | 
					7348df5937 | ||
| 
						 | 
					c542351085 | ||
| 
						 | 
					1cfae1adb2 | ||
| 
						 | 
					42ace1c150 | ||
| 
						 | 
					cf1c860a34 | ||
| 
						 | 
					8bfc9d71aa | ||
| 
						 | 
					36b9b0e9d1 | ||
| 
						 | 
					f48216ad0f | ||
| 
						 | 
					0d88328c7e | ||
| 
						 | 
					66ab727101 | ||
| 
						 | 
					25af66a67f | ||
| 
						 | 
					aca31cf6de | ||
| 
						 | 
					c4b40cc404 | ||
| 
						 | 
					aa3029bce1 | ||
| 
						 | 
					8a738db519 | ||
| 
						 | 
					4b01eb6e08 | ||
| 
						 | 
					7d4d41a984 | ||
| 
						 | 
					8115e29ddc | ||
| 
						 | 
					df45a985ed | ||
| 
						 | 
					d2e39bb050 | ||
| 
						 | 
					969e1ac233 | ||
| 
						 | 
					772752449d | ||
| 
						 | 
					a85fae9cb0 | ||
| 
						 | 
					034e8641bb | ||
| 
						 | 
					026b40f416 | ||
| 
						 | 
					561e6723cf | ||
| 
						 | 
					e89f0792eb | ||
| 
						 | 
					e0e6bd7ae1 | ||
| 
						 | 
					36481524ba | ||
| 
						 | 
					07624e347b | ||
| 
						 | 
					9627ed0631 | ||
| 
						 | 
					8d43976858 | ||
| 
						 | 
					9167d04dea | ||
| 
						 | 
					2ad5921cf3 | ||
| 
						 | 
					e1e867c3b2 | ||
| 
						 | 
					4663bd50f1 | ||
| 
						 | 
					68a7ee5cbb | ||
| 
						 | 
					36b518a7ca | ||
| 
						 | 
					f16a66e97d | ||
| 
						 | 
					6ec6b845fd | ||
| 
						 | 
					9dc11a3e38 | ||
| 
						 | 
					c5934054f3 | ||
| 
						 | 
					3160edec33 | ||
| 
						 | 
					b2289a944e | ||
| 
						 | 
					42649700e2 | ||
| 
						 | 
					ebe0b30c3e | ||
| 
						 | 
					9bd8f97ea4 | ||
| 
						 | 
					46b3f97654 | ||
| 
						 | 
					05a4b37707 | ||
| 
						 | 
					fd062077c6 | ||
| 
						 | 
					153f15497c | ||
| 
						 | 
					dec2a4d4b7 | ||
| 
						 | 
					d3975341e7 | ||
| 
						 | 
					5f1651ddc5 | ||
| 
						 | 
					367d308b82 | ||
| 
						 | 
					e781aec85d | ||
| 
						 | 
					a4f0b6884c | ||
| 
						 | 
					92c195211a | ||
| 
						 | 
					c2836e9ac6 | ||
| 
						 | 
					46458ba213 | ||
| 
						 | 
					3c63452e64 | ||
| 
						 | 
					d0add7cf1a | ||
| 
						 | 
					cca4dedbfd | ||
| 
						 | 
					4fbdedc0d5 | ||
| 
						 | 
					47fe2fc105 | ||
| 
						 | 
					8e6926f7c3 | ||
| 
						 | 
					e9283774dc | ||
| 
						 | 
					cf46208624 | ||
| 
						 | 
					e6962b183d | ||
| 
						 | 
					60b003e197 | ||
| 
						 | 
					c7a219ec6f | ||
| 
						 | 
					ac9a65b1dd | ||
| 
						 | 
					ef31f60b12 | ||
| 
						 | 
					53d30c56eb | ||
| 
						 | 
					2ce0654eba | ||
| 
						 | 
					8eaa290216 | ||
| 
						 | 
					6ac04f2fc6 | ||
| 
						 | 
					6e1ceff48b | ||
| 
						 | 
					e716549618 | ||
| 
						 | 
					8c2a1f0e4d | ||
| 
						 | 
					798d83cf67 | ||
| 
						 | 
					6afdc0bec2 | ||
| 
						 | 
					3e2fa3fd5c | ||
| 
						 | 
					bc36ee25d8 | ||
| 
						 | 
					944ea204a8 | ||
| 
						 | 
					10d343f407 | ||
| 
						 | 
					673077c613 | ||
| 
						 | 
					8dfc5b9863 | ||
| 
						 | 
					e32b909054 | ||
| 
						 | 
					2efb3029f0 | ||
| 
						 | 
					10882b17c9 | ||
| 
						 | 
					0977fa67b8 | ||
| 
						 | 
					f7657d037e | ||
| 
						 | 
					d2ec14c4aa | ||
| 
						 | 
					d4ffbe4cca | ||
| 
						 | 
					dfedb8b78e | ||
| 
						 | 
					9d00b68482 | ||
| 
						 | 
					7c5282d2a8 | ||
| 
						 | 
					f2e21e1026 | ||
| 
						 | 
					11fd2d7558 | ||
| 
						 | 
					60b6e4fd7e | ||
| 
						 | 
					795ae30787 | ||
| 
						 | 
					45c569860c | ||
| 
						 | 
					cb4253a546 | ||
| 
						 | 
					2871f57bcf | ||
| 
						 | 
					32d0d5aec4 | ||
| 
						 | 
					f58826db57 | ||
| 
						 | 
					8ad1076dc2 | ||
| 
						 | 
					9e84910749 | ||
| 
						 | 
					b110ca34f0 | ||
| 
						 | 
					d54d4633fd | ||
| 
						 | 
					813c96f458 | ||
| 
						 | 
					fbc236b401 | ||
| 
						 | 
					23cdcede5d | ||
| 
						 | 
					71072be182 | ||
| 
						 | 
					0670eb259d | ||
| 
						 | 
					433a084130 | ||
| 
						 | 
					008a5dd7bb | ||
| 
						 | 
					85678e0399 | ||
| 
						 | 
					c20579d651 | ||
| 
						 | 
					f2c5296dd7 | ||
| 
						 | 
					59c5cf35c9 | ||
| 
						 | 
					614301faca | ||
| 
						 | 
					ece3e63c98 | ||
| 
						 | 
					5fd1cc2e0e | ||
| 
						 | 
					d3f6b0559f | ||
| 
						 | 
					b5974db277 | ||
| 
						 | 
					8455203bc7 | ||
| 
						 | 
					f72a3da697 | ||
| 
						 | 
					cf69eeb1aa | ||
| 
						 | 
					73029c5d75 | ||
| 
						 | 
					5687740762 | ||
| 
						 | 
					21666e3db4 | ||
| 
						 | 
					e4656003ca | ||
| 
						 | 
					fa647e8336 | ||
| 
						 | 
					3265fe5f8e | ||
| 
						 | 
					f42d366bb6 | ||
| 
						 | 
					4b334b2db6 | ||
| 
						 | 
					6640bc3bfa | ||
| 
						 | 
					248b3cf727 | ||
| 
						 | 
					072edaf126 | ||
| 
						 | 
					fc80ad6e62 | ||
| 
						 | 
					f782b8189e | ||
| 
						 | 
					f8acbed50d | ||
| 
						 | 
					a42e7c9172 | ||
| 
						 | 
					be99e845bd | ||
| 
						 | 
					0adce5d0ed | ||
| 
						 | 
					641b2307ec | ||
| 
						 | 
					8420ad94f2 | ||
| 
						 | 
					d8419c730e | ||
| 
						 | 
					54f3aab0c7 | ||
| 
						 | 
					a329d68903 | ||
| 
						 | 
					89fb06fcc1 | ||
| 
						 | 
					1a0bfdc8c1 | ||
| 
						 | 
					681b8c9d1b | ||
| 
						 | 
					b7808884bb | ||
| 
						 | 
					551b65f137 | ||
| 
						 | 
					c5b9950660 | ||
| 
						 | 
					c62aeed003 | ||
| 
						 | 
					f022463aa6 | ||
| 
						 | 
					5b18bb6a60 | ||
| 
						 | 
					ca6647b307 | ||
| 
						 | 
					473e51f2fb | ||
| 
						 | 
					cbc1fb0a9a | ||
| 
						 | 
					b6e04ee7c8 | ||
| 
						 | 
					a9be374f82 | ||
| 
						 | 
					e1cb2fb571 | ||
| 
						 | 
					d5bbbd41c4 | ||
| 
						 | 
					8cd2d0e782 | ||
| 
						 | 
					c84e84a734 | ||
| 
						 | 
					57aca2bf6e | ||
| 
						 | 
					99683bd830 | ||
| 
						 | 
					4991d0f9f3 | ||
| 
						 | 
					3ce6dc7f1d | ||
| 
						 | 
					6c25e3a111 | ||
| 
						 | 
					3f25b1a358 | ||
| 
						 | 
					57df24a86c | ||
| 
						 | 
					28bc6cb479 | ||
| 
						 | 
					2f7ef5fae8 | ||
| 
						 | 
					e41c57758d | ||
| 
						 | 
					7d7ec0ea91 | ||
| 
						 | 
					6a1e1623fd | ||
| 
						 | 
					fdaa72bc43 | ||
| 
						 | 
					5f60a0b50a | ||
| 
						 | 
					a2ae6faf1a | ||
| 
						 | 
					e14c151f0a | ||
| 
						 | 
					530d4611eb | ||
| 
						 | 
					3a03211aee | ||
| 
						 | 
					e7abc078ab | ||
| 
						 | 
					0a7fc572a7 | ||
| 
						 | 
					7e35cc53ce | ||
| 
						 | 
					528afb5ff4 | ||
| 
						 | 
					05ed911aca | ||
| 
						 | 
					b9f75444e6 | ||
| 
						 | 
					ba88dd0d92 | ||
| 
						 | 
					ed00b2ef33 | ||
| 
						 | 
					391876e5e6 | ||
| 
						 | 
					53880a85b6 | ||
| 
						 | 
					41771982c4 | ||
| 
						 | 
					fb657ef91d | ||
| 
						 | 
					8fefafa220 | ||
| 
						 | 
					2188d002df | ||
| 
						 | 
					62166908a9 | ||
| 
						 | 
					1e0241d3c6 | ||
| 
						 | 
					713800a495 | ||
| 
						 | 
					2b930072b3 | ||
| 
						 | 
					b79e99ad60 | ||
| 
						 | 
					3ac01f5e47 | ||
| 
						 | 
					34713c1a3c | ||
| 
						 | 
					5117a8214d | ||
| 
						 | 
					f569dc447a | ||
| 
						 | 
					9f7011b88b | ||
| 
						 | 
					af3265fabd | ||
| 
						 | 
					6bf6cd3418 | ||
| 
						 | 
					7ae671446a | ||
| 
						 | 
					46a035f76d | ||
| 
						 | 
					10730663a1 | ||
| 
						 | 
					1972ac661c | ||
| 
						 | 
					3efe5beefc | ||
| 
						 | 
					352c13f783 | ||
| 
						 | 
					ebe671cfad | ||
| 
						 | 
					ea53a5b5ab | ||
| 
						 | 
					946ad2720a | ||
| 
						 | 
					2a1abe3b46 | ||
| 
						 | 
					fb8ca95dff | ||
| 
						 | 
					a4ac844979 | ||
| 
						 | 
					e968686133 | ||
| 
						 | 
					77df88727c | ||
| 
						 | 
					2353e96c32 | ||
| 
						 | 
					971df9b389 | ||
| 
						 | 
					c2656d588b | ||
| 
						 | 
					f1dee4fe8f | ||
| 
						 | 
					54572c1b93 | ||
| 
						 | 
					c712425d0d | ||
| 
						 | 
					5c711e3671 | ||
| 
						 | 
					e237491493 | ||
| 
						 | 
					f02a5f6cc5 | ||
| 
						 | 
					902d2faadf | ||
| 
						 | 
					8eaffa2a1c | ||
| 
						 | 
					55c82c596e | ||
| 
						 | 
					3b4fbbc129 | ||
| 
						 | 
					b4338e5887 | ||
| 
						 | 
					89f9cf8add | ||
| 
						 | 
					c2fa38d5ae | ||
| 
						 | 
					4336c28c84 | ||
| 
						 | 
					e201bef913 | ||
| 
						 | 
					3c342ebd78 | ||
| 
						 | 
					e8ed14d0c2 | ||
| 
						 | 
					2525bc7d30 | ||
| 
						 | 
					1074d8c361 | ||
| 
						 | 
					487047c060 | ||
| 
						 | 
					4e9676fb13 | ||
| 
						 | 
					f1ad551604 | ||
| 
						 | 
					058f319f60 | ||
| 
						 | 
					7082420653 | ||
| 
						 | 
					07bb9884a5 | ||
| 
						 | 
					82d9f3c034 | ||
| 
						 | 
					0c3f820bf0 | ||
| 
						 | 
					4db3c48a13 | ||
| 
						 | 
					581cc2025f | ||
| 
						 | 
					8e7bd03760 | ||
| 
						 | 
					2abbb660a2 | ||
| 
						 | 
					d65e0beb68 | ||
| 
						 | 
					455d262c55 | ||
| 
						 | 
					837bf6e2df | ||
| 
						 | 
					775669f6ef | ||
| 
						 | 
					02c03ef6b4 | ||
| 
						 | 
					f922986238 | ||
| 
						 | 
					10d7f540ff | ||
| 
						 | 
					85d816028a | ||
| 
						 | 
					d373819b8c | ||
| 
						 | 
					83b820aa98 | ||
| 
						 | 
					1043a6498a | ||
| 
						 | 
					d834e8da88 | ||
| 
						 | 
					8816c70a61 | ||
| 
						 | 
					d66ca10c53 | ||
| 
						 | 
					e514cfea74 | ||
| 
						 | 
					4e99da15eb | ||
| 
						 | 
					9c0babf24f | ||
| 
						 | 
					e769cda1eb | ||
| 
						 | 
					bfa168e3fc | ||
| 
						 | 
					8afe7de8de | ||
| 
						 | 
					8bdd0dc8d0 | ||
| 
						 | 
					9d47f3d6b8 | ||
| 
						 | 
					4753d60dd0 | ||
| 
						 | 
					5e54ddc3a6 | ||
| 
						 | 
					f8035450bb | ||
| 
						 | 
					4c4663747c | ||
| 
						 | 
					d09a1d8b29 | ||
| 
						 | 
					2f35d5e9d5 | ||
| 
						 | 
					9a33a11d71 | ||
| 
						 | 
					1013e46504 | ||
| 
						 | 
					35883ceb93 | ||
| 
						 | 
					4fe2f3f1a0 | ||
| 
						 | 
					b58c5ad7b0 | ||
| 
						 | 
					dd41748f63 | ||
| 
						 | 
					3f058cd2c5 | ||
| 
						 | 
					9800adaed2 | ||
| 
						 | 
					112f7cdeab | ||
| 
						 | 
					f21a4872e8 | ||
| 
						 | 
					e0107e87a7 | ||
| 
						 | 
					241afd837c | ||
| 
						 | 
					af2a1c1d67 | ||
| 
						 | 
					28b03c6acb | ||
| 
						 | 
					f5a0781975 | ||
| 
						 | 
					91d6f12b4a | ||
| 
						 | 
					60f1a3c288 | ||
| 
						 | 
					1d155c1dd8 | ||
| 
						 | 
					4290dbac4d | ||
| 
						 | 
					a078d75a27 | ||
| 
						 | 
					1c40d50014 | ||
| 
						 | 
					f105bc4095 | ||
| 
						 | 
					6c408b4667 | ||
| 
						 | 
					23d8ef3937 | ||
| 
						 | 
					22538b23b4 | ||
| 
						 | 
					ee29d3b42a | ||
| 
						 | 
					02e0de263e | ||
| 
						 | 
					002483e009 | ||
| 
						 | 
					9228a9362c | ||
| 
						 | 
					79cfdebbe0 | ||
| 
						 | 
					30ec9dbaed | ||
| 
						 | 
					a5cdf99951 | ||
| 
						 | 
					056b35874b | ||
| 
						 | 
					f595212336 | ||
| 
						 | 
					c450d57991 | ||
| 
						 | 
					18385b0f4e | ||
| 
						 | 
					57c35b162e | ||
| 
						 | 
					df7bd4bf11 | ||
| 
						 | 
					fb68919362 | ||
| 
						 | 
					dc2270b461 | ||
| 
						 | 
					e694a8765a | ||
| 
						 | 
					62c36a2ff3 | ||
| 
						 | 
					dec0131a29 | ||
| 
						 | 
					fdd631a941 | ||
| 
						 | 
					62954c8c30 | ||
| 
						 | 
					bcc5d46b08 | ||
| 
						 | 
					f55b303fc2 | ||
| 
						 | 
					61bac6014a | ||
| 
						 | 
					28c61d5b49 | ||
| 
						 | 
					12bab63f09 | ||
| 
						 | 
					f3781eaafa | ||
| 
						 | 
					b7752724d9 | ||
| 
						 | 
					1113e3266f | ||
| 
						 | 
					04df3bbe8e | ||
| 
						 | 
					3fe2bb8933 | ||
| 
						 | 
					4fa66fa85c | ||
| 
						 | 
					bf80e1ed62 | ||
| 
						 | 
					05be7ae125 | ||
| 
						 | 
					0c527ab054 | ||
| 
						 | 
					533e88824a | ||
| 
						 | 
					68c48df2bf | ||
| 
						 | 
					26e2fb062a | ||
| 
						 | 
					4c5f8a8207 | ||
| 
						 | 
					7322cccfb9 | ||
| 
						 | 
					6c5b7029b3 | ||
| 
						 | 
					a670c1280b | ||
| 
						 | 
					db07de057f | ||
| 
						 | 
					36c3df78f4 | ||
| 
						 | 
					55d9ee83b4 | ||
| 
						 | 
					9ff3e9d992 | ||
| 
						 | 
					ef65c60d88 | ||
| 
						 | 
					4c1f79264e | ||
| 
						 | 
					620735af45 | ||
| 
						 | 
					d60bb2fbc8 | ||
| 
						 | 
					cffb351a62 | ||
| 
						 | 
					8c598cfd82 | ||
| 
						 | 
					cb445412fc | ||
| 
						 | 
					d23de4d334 | ||
| 
						 | 
					b7f5e92f17 | ||
| 
						 | 
					9add9a21d8 | ||
| 
						 | 
					0cd8a1ea13 | ||
| 
						 | 
					306d3fcdba | ||
| 
						 | 
					e503d8b56f | ||
| 
						 | 
					0a79baf1bf | ||
| 
						 | 
					851de7ded1 | ||
| 
						 | 
					c030a18ea6 | ||
| 
						 | 
					17642eddf4 | ||
| 
						 | 
					ebe4e3237c | ||
| 
						 | 
					14209028b6 | ||
| 
						 | 
					4d030ba651 | ||
| 
						 | 
					db0944b08a | ||
| 
						 | 
					42f916de5c | ||
| 
						 | 
					01dc182ee8 | ||
| 
						 | 
					486734a5d5 | ||
| 
						 | 
					09784e1e15 | ||
| 
						 | 
					d5c94ef40d | ||
| 
						 | 
					543381510d | ||
| 
						 | 
					1d84421b7e | ||
| 
						 | 
					6b50a004ff | ||
| 
						 | 
					02ee456248 | ||
| 
						 | 
					db30cc8d00 | ||
| 
						 | 
					99aab34199 | ||
| 
						 | 
					b63e8556fa | ||
| 
						 | 
					31fe0ade35 | ||
| 
						 | 
					9de4782e49 | ||
| 
						 | 
					f9e75c31e8 | ||
| 
						 | 
					17b7cc4cae | ||
| 
						 | 
					01bcd83def | ||
| 
						 | 
					1537b63fce | ||
| 
						 | 
					86a7cc6f2c | ||
| 
						 | 
					6c921af034 | ||
| 
						 | 
					a97d216adb | ||
| 
						 | 
					103bc0f75c | ||
| 
						 | 
					23d319fc7d | ||
| 
						 | 
					a68b8dfd76 | ||
| 
						 | 
					f66de79365 | ||
| 
						 | 
					934bee04f2 | ||
| 
						 | 
					7c8b5399f0 | ||
| 
						 | 
					c028617784 | ||
| 
						 | 
					e6f2b4174b | ||
| 
						 | 
					2161b8cf03 | ||
| 
						 | 
					3c70f6f2ac | ||
| 
						 | 
					636b2801d9 | ||
| 
						 | 
					25b85bf02a | ||
| 
						 | 
					4544bd22fd | ||
| 
						 | 
					252250ae64 | ||
| 
						 | 
					e69bfe74d7 | ||
| 
						 | 
					6211144e05 | ||
| 
						 | 
					7de02fef5b | ||
| 
						 | 
					819505ad2a | ||
| 
						 | 
					8334c89e70 | ||
| 
						 | 
					e3af5354a6 | ||
| 
						 | 
					491e573c38 | ||
| 
						 | 
					80ac8d171c | ||
| 
						 | 
					aeb4434563 | ||
| 
						 | 
					d0570646bd | ||
| 
						 | 
					f7c830e35c | ||
| 
						 | 
					ac5bbe4c4a | ||
| 
						 | 
					31f12f504e | ||
| 
						 | 
					bc6b60c4ff | ||
| 
						 | 
					93c132a058 | ||
| 
						 | 
					18a285a5e2 | ||
| 
						 | 
					8d687e7e58 | ||
| 
						 | 
					1d822ea8cf | ||
| 
						 | 
					a72edf01ba | ||
| 
						 | 
					8843d52af1 | ||
| 
						 | 
					612fc01293 | ||
| 
						 | 
					d488af5b34 | ||
| 
						 | 
					9a888bdc2a | ||
| 
						 | 
					f9708e45ac | ||
| 
						 | 
					1d01794e6e | ||
| 
						 | 
					5033f21d05 | ||
| 
						 | 
					1c91fe2e3f | ||
| 
						 | 
					a3e44f4531 | ||
| 
						 | 
					b43a828ad4 | ||
| 
						 | 
					7fd50afbbf | ||
| 
						 | 
					2b9ba3f84f | ||
| 
						 | 
					5104b4d9df | ||
| 
						 | 
					0b2fa873c6 | ||
| 
						 | 
					c5a76cbed4 | ||
| 
						 | 
					09a0cb464d | ||
| 
						 | 
					aa24e9171a | ||
| 
						 | 
					e0193a9425 | ||
| 
						 | 
					c7a3356746 | ||
| 
						 | 
					d0271502f8 | ||
| 
						 | 
					ad7306b23c | ||
| 
						 | 
					9ff74a0f15 | ||
| 
						 | 
					711e27fda2 | ||
| 
						 | 
					983bc3e018 | ||
| 
						 | 
					4f252bd980 | ||
| 
						 | 
					c14a5a6c62 | ||
| 
						 | 
					8baae48fb7 | ||
| 
						 | 
					f204c9d2bb | ||
| 
						 | 
					9ac7182ec4 | ||
| 
						 | 
					026c036be0 | ||
| 
						 | 
					78a21f96b5 | ||
| 
						 | 
					2e47ff7b9c | ||
| 
						 | 
					9a3061715c | ||
| 
						 | 
					4182cf60d9 | ||
| 
						 | 
					c9ceef41fe | ||
| 
						 | 
					a8f2efd147 | ||
| 
						 | 
					70b8d304bb | ||
| 
						 | 
					4ba35633d6 | ||
| 
						 | 
					c4c4213b69 | ||
| 
						 | 
					ce57201825 | ||
| 
						 | 
					09700ee358 | ||
| 
						 | 
					a048da0767 | ||
| 
						 | 
					3ff07d2062 | ||
| 
						 | 
					ca7596e834 | ||
| 
						 | 
					95e2c72fd5 | ||
| 
						 | 
					d4e02d6026 | ||
| 
						 | 
					cbd9a0254e | ||
| 
						 | 
					0cb28418d0 | ||
| 
						 | 
					12a1024d9d | ||
| 
						 | 
					38d042a4ad | ||
| 
						 | 
					69d4ae7bb3 | ||
| 
						 | 
					db41d2ea8c | ||
| 
						 | 
					cc27365d77 | ||
| 
						 | 
					bcb148de92 | ||
| 
						 | 
					2784dadafc | ||
| 
						 | 
					c4afba36c3 | ||
| 
						 | 
					79c2f53491 | ||
| 
						 | 
					ac8c241e64 | ||
| 
						 | 
					b37a084357 | ||
| 
						 | 
					733a4b602b | ||
| 
						 | 
					ceb39f4f8d | ||
| 
						 | 
					e79de014c5 | ||
| 
						 | 
					e0bafefd7a | ||
| 
						 | 
					1cefc83a88 | ||
| 
						 | 
					eae38ca1b2 | ||
| 
						 | 
					6e1666437e | ||
| 
						 | 
					7956292a76 | ||
| 
						 | 
					f1e2369878 | ||
| 
						 | 
					2a182a9897 | ||
| 
						 | 
					6a731f343e | ||
| 
						 | 
					ad7e727024 | ||
| 
						 | 
					6ee7a02852 | ||
| 
						 | 
					8bd13de4cc | ||
| 
						 | 
					4c8fadc6d9 | ||
| 
						 | 
					9b681dcc17 | ||
| 
						 | 
					2bc668d092 | ||
| 
						 | 
					ac9aa22174 | ||
| 
						 | 
					2ef866d1fc | ||
| 
						 | 
					674012f083 | ||
| 
						 | 
					9958ace401 | ||
| 
						 | 
					658702df97 | ||
| 
						 | 
					028fe46fc5 | ||
| 
						 | 
					72574b959c | ||
| 
						 | 
					78940758e9 | ||
| 
						 | 
					b311950dde | ||
| 
						 | 
					4197c0ea9b | ||
| 
						 | 
					43df32e438 | ||
| 
						 | 
					40fac75370 | ||
| 
						 | 
					3d587f6432 | ||
| 
						 | 
					164ce12202 | ||
| 
						 | 
					83356781e1 | ||
| 
						 | 
					858b694b64 | ||
| 
						 | 
					25c5f1b448 | ||
| 
						 | 
					2ff30b21bc | ||
| 
						 | 
					e19f5d7cb7 | ||
| 
						 | 
					47507f4464 | ||
| 
						 | 
					f2e5c19a2f | ||
| 
						 | 
					807aea838b | ||
| 
						 | 
					24f7c0c944 | ||
| 
						 | 
					03c0c2e8aa | ||
| 
						 | 
					fe9f62ff18 | ||
| 
						 | 
					7fc487d38b | ||
| 
						 | 
					1bb17ed0f2 | ||
| 
						 | 
					21cb88911a | ||
| 
						 | 
					3e276d43a2 | ||
| 
						 | 
					166718f749 | ||
| 
						 | 
					c6755aa6d5 | ||
| 
						 | 
					8e6d305c89 | ||
| 
						 | 
					2edd1807f8 | ||
| 
						 | 
					9927f1978d | ||
| 
						 | 
					2e99cbd953 | ||
| 
						 | 
					26c878ac16 | ||
| 
						 | 
					0c5c1392ab | ||
| 
						 | 
					a701a1445c | ||
| 
						 | 
					35e5e89f56 | ||
| 
						 | 
					8927fbe9c5 | ||
| 
						 | 
					fd1727bd10 | ||
| 
						 | 
					d599190575 | ||
| 
						 | 
					97291208cb | ||
| 
						 | 
					571a1ac6ee | ||
| 
						 | 
					363049160d | ||
| 
						 | 
					e2053d1690 | ||
| 
						 | 
					bc42c19f22 | ||
| 
						 | 
					bd1a9dacf6 | ||
| 
						 | 
					ca209ae1f9 | ||
| 
						 | 
					cab83b8aa9 | ||
| 
						 | 
					f48bfd66da | ||
| 
						 | 
					714cdd88a4 | ||
| 
						 | 
					5e1a4fdc3c | ||
| 
						 | 
					8d0499b75e | ||
| 
						 | 
					735d92029c | ||
| 
						 | 
					78c2aa0b51 | ||
| 
						 | 
					efe2baadb8 | ||
| 
						 | 
					a0f923d286 | ||
| 
						 | 
					1fb0a43c16 | ||
| 
						 | 
					1a6f488908 | ||
| 
						 | 
					2391f4cec6 | ||
| 
						 | 
					fc00cbe8d1 | ||
| 
						 | 
					1643203a93 | ||
| 
						 | 
					a359d3488a | ||
| 
						 | 
					3f9be68dc4 | ||
| 
						 | 
					fa6b2fba7a | ||
| 
						 | 
					f47efb5ab3 | ||
| 
						 | 
					c6a14906c6 | ||
| 
						 | 
					530da27edb | ||
| 
						 | 
					30f51ae067 | ||
| 
						 | 
					645ced2955 | ||
| 
						 | 
					aea09490f5 | ||
| 
						 | 
					3ade8af7ff | ||
| 
						 | 
					10f30eb438 | ||
| 
						 | 
					57d6e1aebf | ||
| 
						 | 
					c843a1a039 | ||
| 
						 | 
					54772892bd | ||
| 
						 | 
					c11120270c | ||
| 
						 | 
					9cb3947c56 | ||
| 
						 | 
					e3a0f39824 | ||
| 
						 | 
					56790ced1a | ||
| 
						 | 
					b15a3b4d13 | ||
| 
						 | 
					d2237d48ec | ||
| 
						 | 
					c3d90f3211 | ||
| 
						 | 
					36c77a81ad | ||
| 
						 | 
					9745d47991 | ||
| 
						 | 
					5cbd179121 | ||
| 
						 | 
					92512085d5 | ||
| 
						 | 
					16e2d94cc7 | ||
| 
						 | 
					c589af2fe2 | ||
| 
						 | 
					7c8db694cc | ||
| 
						 | 
					1668d4bab8 | ||
| 
						 | 
					eaf0eac7d3 | ||
| 
						 | 
					b70f5c21e7 | ||
| 
						 | 
					15d4a2327d | ||
| 
						 | 
					a19d7c35cd | ||
| 
						 | 
					1d1635d27b | ||
| 
						 | 
					b638c34381 | ||
| 
						 | 
					797ea81d63 | ||
| 
						 | 
					86b842790b | ||
| 
						 | 
					680522f74c | ||
| 
						 | 
					faaa88fc48 | ||
| 
						 | 
					d313068dc8 | ||
| 
						 | 
					d9331ae71e | ||
| 
						 | 
					59235bd5da | ||
| 
						 | 
					c3209d45ad | ||
| 
						 | 
					5246b6c9d1 | ||
| 
						 | 
					59e5b90452 | ||
| 
						 | 
					09fc9324f6 | ||
| 
						 | 
					74df2ef732 | ||
| 
						 | 
					ef4f5b391e | ||
| 
						 | 
					aecfb51c30 | ||
| 
						 | 
					014ec1ac5e | ||
| 
						 | 
					471a774f43 | ||
| 
						 | 
					c34cb25bdd | ||
| 
						 | 
					aa46094ca6 | ||
| 
						 | 
					4ea18fc2dc | ||
| 
						 | 
					a8b25ada45 | ||
| 
						 | 
					3a825a85f1 | ||
| 
						 | 
					bfd2ae6e99 | ||
| 
						 | 
					e6373ba6d7 | ||
| 
						 | 
					3ac348c17a | ||
| 
						 | 
					fcc0abe6cf | ||
| 
						 | 
					bce1689d5b | ||
| 
						 | 
					7b2a146d3a | ||
| 
						 | 
					209e1348bd | ||
| 
						 | 
					8ff271548a | ||
| 
						 | 
					9c8cbe6950 | ||
| 
						 | 
					4e6c835210 | ||
| 
						 | 
					d8af040f5e | ||
| 
						 | 
					e4eba73060 | ||
| 
						 | 
					253270dfcc | ||
| 
						 | 
					2f3d620398 | ||
| 
						 | 
					70c05e6781 | ||
| 
						 | 
					20517ce040 | ||
| 
						 | 
					1b2976f79b | ||
| 
						 | 
					f660ec6ff8 | ||
| 
						 | 
					358ed73e1d | ||
| 
						 | 
					3183af39d0 | ||
| 
						 | 
					cbf9731119 | ||
| 
						 | 
					d4ece7b2f4 | ||
| 
						 | 
					d3be982783 | ||
| 
						 | 
					3f766b7a89 | ||
| 
						 | 
					71340e861e | ||
| 
						 | 
					71515b9175 | ||
| 
						 | 
					6d9b899342 | ||
| 
						 | 
					50c31d6861 | ||
| 
						 | 
					5b7dab2e4c | ||
| 
						 | 
					17fe22d3bf | ||
| 
						 | 
					a6fdefa322 | ||
| 
						 | 
					94dd6b8927 | ||
| 
						 | 
					a6a997c234 | ||
| 
						 | 
					b5fd886ee1 | ||
| 
						 | 
					4fe0f9d2a9 | ||
| 
						 | 
					6c0d72f9c0 | ||
| 
						 | 
					199b931c07 | ||
| 
						 | 
					0ee6a5604d | ||
| 
						 | 
					1b37d6c305 | ||
| 
						 | 
					cd060fc3b4 | ||
| 
						 | 
					c32fe22168 | ||
| 
						 | 
					853a4abab2 | ||
| 
						 | 
					fe9b705a2c | ||
| 
						 | 
					4b7ccad682 | ||
| 
						 | 
					87c964d388 | ||
| 
						 | 
					85e7d7c1d8 | ||
| 
						 | 
					dc31d67c0e | ||
| 
						 | 
					acf0c0a1e1 | ||
| 
						 | 
					52ef4cc59a | ||
| 
						 | 
					9baad8e1ff | ||
| 
						 | 
					b10f995edf | ||
| 
						 | 
					a4b42200e9 | 
							
								
								
									
										1293
									
								
								Make-config
									
									
									
									
									
								
							
							
						
						
									
										1293
									
								
								Make-config
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										108
									
								
								Makefile.DJ
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								Makefile.DJ
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,108 @@
 | 
			
		||||
# Mesa 3-D graphics library
 | 
			
		||||
# Version:  4.0
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 1999  Brian Paul   All Rights Reserved.
 | 
			
		||||
# 
 | 
			
		||||
# Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
# copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
# to deal in the Software without restriction, including without limitation
 | 
			
		||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
# and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
# Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
# 
 | 
			
		||||
# The above copyright notice and this permission notice shall be included
 | 
			
		||||
# in all copies or substantial portions of the Software.
 | 
			
		||||
# 
 | 
			
		||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 | 
			
		||||
# DOS/DJGPP makefile v1.4 for Mesa
 | 
			
		||||
#
 | 
			
		||||
#  Copyright (C) 2002 - Borca Daniel
 | 
			
		||||
#  Email : dborca@users.sourceforge.net
 | 
			
		||||
#  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
#  Available options:
 | 
			
		||||
#
 | 
			
		||||
#    Environment variables:
 | 
			
		||||
#	CPU		optimize for the given processor.
 | 
			
		||||
#			default = pentium
 | 
			
		||||
#	GLU=[mesa|sgi]	specify GLU directory; can be `sgi' (requires GNU/C++)
 | 
			
		||||
#			or `mesa'.
 | 
			
		||||
#			default = mesa
 | 
			
		||||
#	GLIDE		path to Glide3 SDK; used with FX.
 | 
			
		||||
#			default = $(TOP)/glide3
 | 
			
		||||
#	FX=1		build for 3dfx Glide3. Note that this disables
 | 
			
		||||
#			compilation of most DMesa code and requires fxMesa.
 | 
			
		||||
#			As a consequence, you'll need the DJGPP Glide3
 | 
			
		||||
#			library to build any application.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	MATROX=1	build for Matrox Millennium I (MGA2064W) cards.
 | 
			
		||||
#			This is experimental and not intensively tested.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_X86=1	optimize for i386.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_MMX=1	allow MMX specializations, provided your assembler
 | 
			
		||||
#			supports MMX instruction set. However, the true CPU
 | 
			
		||||
#			capabilities are checked at run-time to avoid crashes.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_SSE=1	(see HAVE_MMX)
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_3DNOW=1	(see HAVE_MMX)
 | 
			
		||||
#			default = no
 | 
			
		||||
#
 | 
			
		||||
#    Targets:
 | 
			
		||||
#	all:		build everything
 | 
			
		||||
#	libgl:		build GL
 | 
			
		||||
#	libglu:		build GLU
 | 
			
		||||
#	libglut:	build GLUT
 | 
			
		||||
#	clean:		remove object files
 | 
			
		||||
#	realclean:	remove all generated files
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY : all libgl libglu libglut clean realclean
 | 
			
		||||
 | 
			
		||||
CPU ?= pentium
 | 
			
		||||
 | 
			
		||||
GLU ?= mesa
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -W -pedantic
 | 
			
		||||
CFLAGS += -O2 -ffast-math -mcpu=$(CPU)
 | 
			
		||||
 | 
			
		||||
export CFLAGS
 | 
			
		||||
 | 
			
		||||
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
 | 
			
		||||
UNLINK = del $(subst /,\,$(1))
 | 
			
		||||
else
 | 
			
		||||
UNLINK = $(RM) $(1)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
all: libgl libglu libglut
 | 
			
		||||
 | 
			
		||||
libgl: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/mesa
 | 
			
		||||
libglu: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
 | 
			
		||||
libglut: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/glut/dos
 | 
			
		||||
 | 
			
		||||
lib:
 | 
			
		||||
	mkdir lib
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/mesa
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glu/mesa
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glu/sgi
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glut/dos
 | 
			
		||||
 | 
			
		||||
realclean: clean
 | 
			
		||||
	-$(call UNLINK,lib/*.a)
 | 
			
		||||
	-$(call UNLINK,lib/*.dxe)
 | 
			
		||||
							
								
								
									
										953
									
								
								Makefile.X11
									
									
									
									
									
								
							
							
						
						
									
										953
									
								
								Makefile.X11
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										91
									
								
								Makefile.mgw
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								Makefile.mgw
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,91 @@
 | 
			
		||||
# Mesa 3-D graphics library
 | 
			
		||||
# Version:  4.0
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 1999  Brian Paul   All Rights Reserved.
 | 
			
		||||
# 
 | 
			
		||||
# Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
# copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
# to deal in the Software without restriction, including without limitation
 | 
			
		||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
# and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
# Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
# 
 | 
			
		||||
# The above copyright notice and this permission notice shall be included
 | 
			
		||||
# in all copies or substantial portions of the Software.
 | 
			
		||||
# 
 | 
			
		||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 | 
			
		||||
# MinGW makefile v1.0 for Mesa
 | 
			
		||||
#
 | 
			
		||||
#  Copyright (C) 2002 - Borca Daniel
 | 
			
		||||
#  Email : dborca@users.sourceforge.net
 | 
			
		||||
#  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
#  Available options:
 | 
			
		||||
#
 | 
			
		||||
#    Environment variables:
 | 
			
		||||
#	CPU		optimize for the given processor.
 | 
			
		||||
#			default = pentium
 | 
			
		||||
#	GLIDE		path to Glide3 SDK; used with FX.
 | 
			
		||||
#			default = $(TOP)/glide3
 | 
			
		||||
#	FX=1		build for 3dfx Glide3. Note that this disables
 | 
			
		||||
#			compilation of most WMesa code and requires fxMesa.
 | 
			
		||||
#			As a consequence, you'll need the Win32 Glide3
 | 
			
		||||
#			library to build any application.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_X86=1	optimize for i386.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_MMX=1	allow MMX specializations, provided your assembler
 | 
			
		||||
#			supports MMX instruction set. However, the true CPU
 | 
			
		||||
#			capabilities are checked at run-time to avoid crashes.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_SSE=1	(see HAVE_MMX)
 | 
			
		||||
#			default = no
 | 
			
		||||
#	HAVE_3DNOW=1	(see HAVE_MMX)
 | 
			
		||||
#			default = no
 | 
			
		||||
#
 | 
			
		||||
#    Targets:
 | 
			
		||||
#	all:		build everything
 | 
			
		||||
#	libgl:		build GL
 | 
			
		||||
#	clean:		remove object files
 | 
			
		||||
#	realclean:	remove all generated files
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY : all libgl clean realclean
 | 
			
		||||
 | 
			
		||||
CPU ?= pentium
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -W -pedantic
 | 
			
		||||
CFLAGS += -O2 -ffast-math -mcpu=$(CPU)
 | 
			
		||||
 | 
			
		||||
export CFLAGS
 | 
			
		||||
 | 
			
		||||
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
 | 
			
		||||
UNLINK = del $(subst /,\,$(1))
 | 
			
		||||
else
 | 
			
		||||
UNLINK = $(RM) $(1)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
all: libgl
 | 
			
		||||
 | 
			
		||||
libgl: lib
 | 
			
		||||
	$(MAKE) -f Makefile.mgw -C src/mesa
 | 
			
		||||
 | 
			
		||||
lib:
 | 
			
		||||
	mkdir lib
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	$(MAKE) -f Makefile.mgw clean -C src/mesa
 | 
			
		||||
 | 
			
		||||
realclean: clean
 | 
			
		||||
	-$(call UNLINK,lib/*.a)
 | 
			
		||||
	-$(call UNLINK,lib/*.dll)
 | 
			
		||||
							
								
								
									
										179
									
								
								Mesa.dsw
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										179
									
								
								Mesa.dsw
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,179 @@
 | 
			
		||||
Microsoft Developer Studio Workspace File, Format Version 6.00
 | 
			
		||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "array_cache"=".\SRC\MESA\array_cache\array_cache.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "gdi"=".\src\mesa\drivers\windows\gdi\gdi.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name array_cache
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name main
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name math
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name swrast_setup
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name swrast
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name tnl
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name glapi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "glapi"=".\SRC\MESA\glapi\glapi.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "glu"=".\src\glu\sgi\glu.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name gdi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "glut"=".\src\glut\glx\glut.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name glu
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "main"=".\SRC\MESA\main\main.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "math"=".\SRC\MESA\math\math.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "osmesa"=".\SRC\MESA\DRIVERS\osmesa\osmesa.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name gdi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "swrast"=".\SRC\MESA\swrast\swrast.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "swrast_setup"=".\SRC\MESA\swrast_setup\swrast_setup.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "tnl"=".\SRC\MESA\tnl\tnl.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Global:
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<3>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										331
									
								
								bin/mklib
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										331
									
								
								bin/mklib
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,331 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Make a shared library.
 | 
			
		||||
# Basically do a switch/case depending on the OS and make a shared
 | 
			
		||||
# lib conforming to that OS.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Usage:
 | 
			
		||||
#   mklib [options] objects ...
 | 
			
		||||
# Options:
 | 
			
		||||
#   -o LIBRARY    specifies the name of resulting library ("GL" for example)
 | 
			
		||||
#   -major N      specifies major version number (default is 1)
 | 
			
		||||
#   -minor N      specifies minor version number (default is 0)
 | 
			
		||||
#   -patch N      specifies patch version number (default is 0)
 | 
			
		||||
#   -lLIBRARY     specifies a dependency on LIBRARY
 | 
			
		||||
#   -LDIR         search in DIR for library dependencies
 | 
			
		||||
#   -cplusplus    link with C++ runtime
 | 
			
		||||
#   -static       make a static library (default is dynamic/shared)
 | 
			
		||||
#   -install DIR  move resulting library files to DIR
 | 
			
		||||
#   -arch ARCH    override using `uname` to determine architecture
 | 
			
		||||
#   -archopt OPT  specify an extra achitecture-specific option OPT
 | 
			
		||||
#
 | 
			
		||||
# The library name should just be "GL" or "GLU", etc.  The 'lib' prefix
 | 
			
		||||
# will be added here if needed, as well as the ".so" or ".a" suffix, etc.
 | 
			
		||||
#
 | 
			
		||||
# objects should be:  foo.o bar.o etc.o
 | 
			
		||||
#
 | 
			
		||||
# Environment variables recognized:
 | 
			
		||||
#   CC   C compiler command
 | 
			
		||||
#   CXX  C++ compiler command
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Option defaults
 | 
			
		||||
#
 | 
			
		||||
LIBNAME=""
 | 
			
		||||
MAJOR=1
 | 
			
		||||
MINOR=0
 | 
			
		||||
PATCH=0
 | 
			
		||||
DEPS=""
 | 
			
		||||
CPLUSPLUS=0
 | 
			
		||||
STATIC=0
 | 
			
		||||
INSTALLDIR="."
 | 
			
		||||
ARCH="auto"
 | 
			
		||||
ARCHOPT=""
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Parse arguments
 | 
			
		||||
#
 | 
			
		||||
while true
 | 
			
		||||
do
 | 
			
		||||
    case $1 in
 | 
			
		||||
	'-o')         shift 1; LIBNAME=$1;;
 | 
			
		||||
	'-major')     shift 1; MAJOR=$1;;
 | 
			
		||||
	'-minor')     shift 1; MINOR=$1;;
 | 
			
		||||
	'-patch')     shift 1; PATCH=$1;;
 | 
			
		||||
	-l*)          DEPS="$DEPS $1";;
 | 
			
		||||
	-L*)          DEPS="$DEPS $1";;
 | 
			
		||||
	'-cplusplus') CPLUSPLUS=1;;
 | 
			
		||||
	'-static')    STATIC=1;;
 | 
			
		||||
	'-install')   shift 1; INSTALLDIR=$1;;
 | 
			
		||||
	'-arch')      shift 1; ARCH=$1;;
 | 
			
		||||
	'-archopt')   shift 1; ARCHOPT=$1;;
 | 
			
		||||
	-*)           echo "mklib: Unknown option: " $1 ; exit 1;;
 | 
			
		||||
	*) break
 | 
			
		||||
    esac
 | 
			
		||||
    shift 1
 | 
			
		||||
done
 | 
			
		||||
OBJECTS=$@
 | 
			
		||||
 | 
			
		||||
if [ ${ARCH} = "auto" ] ; then
 | 
			
		||||
    ARCH=`uname`
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Error checking
 | 
			
		||||
#
 | 
			
		||||
if [ "x${LIBNAME}" = "x" ] ; then
 | 
			
		||||
    echo "mklib: Error: no library name specified"
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
if [ "x${OBJECTS}" = "x" ] ; then
 | 
			
		||||
    echo "mklib: Error: no object files specified"
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Debugging info
 | 
			
		||||
#
 | 
			
		||||
if [  ]  ; then
 | 
			
		||||
    echo "-----------------"
 | 
			
		||||
    echo ARCH is $ARCH
 | 
			
		||||
    echo LIBNAME is $LIBNAME
 | 
			
		||||
    echo MAJOR is $MAJOR
 | 
			
		||||
    echo MINOR is $MINOR
 | 
			
		||||
    echo PATCH is $PATCH
 | 
			
		||||
    echo DEPS are $DEPS
 | 
			
		||||
    echo "-----------------"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# OK, make the library now
 | 
			
		||||
#
 | 
			
		||||
case $ARCH in
 | 
			
		||||
 | 
			
		||||
    'Linux')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}"     # prefix with "lib"
 | 
			
		||||
	OPTS="-Xlinker -Bsymbolic -shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
 | 
			
		||||
	VERSION="${MAJOR}.${MINOR}.${PATCH}"
 | 
			
		||||
 | 
			
		||||
	echo "mklib: Making Linux shared library: " ${LIBNAME}.so.${VERSION}
 | 
			
		||||
 | 
			
		||||
	if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
	    LINK="g++"
 | 
			
		||||
	else
 | 
			
		||||
	    LINK="gcc"
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	# rm any old libs
 | 
			
		||||
	rm -f ${LIBNAME}.so.${VERSION}
 | 
			
		||||
	rm -f ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
	rm -f ${LIBNAME}.so
 | 
			
		||||
 | 
			
		||||
	# make lib
 | 
			
		||||
	${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
 | 
			
		||||
	# make usual symlinks
 | 
			
		||||
	ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
	ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
 | 
			
		||||
	# finish up
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'SunOS')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	echo "mklib: Making SunOS shared library: " ${LIBNAME}
 | 
			
		||||
	OPTS="-G"
 | 
			
		||||
	if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
	    # link for C++
 | 
			
		||||
	    if [ "x${CXX}" = "xg++" ] ; then
 | 
			
		||||
		LINK="g++"
 | 
			
		||||
	    elif [ "x${CXX}" = "xCC" ] ; then
 | 
			
		||||
		LINK="CC"
 | 
			
		||||
	    elif [ `which c++` ] ; then
 | 
			
		||||
		LINK="c++"
 | 
			
		||||
	    elif [ `type g++` ] ; then
 | 
			
		||||
		LINK="g++"
 | 
			
		||||
	    else
 | 
			
		||||
		echo "mklib: warning: can't find C++ comiler, trying CC."
 | 
			
		||||
		LINK="CC"
 | 
			
		||||
	    fi
 | 
			
		||||
	elif [ "x${CC}" = "xgcc" ] ; then
 | 
			
		||||
	    # use gcc for linking
 | 
			
		||||
	    LINK="gcc"
 | 
			
		||||
	else
 | 
			
		||||
	    # use native Sun linker
 | 
			
		||||
	    LINK="ld"
 | 
			
		||||
	fi
 | 
			
		||||
	echo "mklib: linker is " ${LINK}
 | 
			
		||||
	rm -f ${LIBNAME}
 | 
			
		||||
	${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'FreeBSD')
 | 
			
		||||
	SHLIB="lib${LIBNAME}.so.${MAJOR}.${MINOR}"
 | 
			
		||||
	STLIB="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making FreeBSD shared library: " ${SHLIB}
 | 
			
		||||
	rm -f ${SHLIB} ${STLIB}
 | 
			
		||||
	ar cq ${STLIB} ${OBJECTS}
 | 
			
		||||
	ranlib ${STLIB}
 | 
			
		||||
	ld -Bshareable -o ${SHLIB} ${OBJECTS}
 | 
			
		||||
	# XXX make lib${LIBNAME}.so.${MAJOR} symlink?
 | 
			
		||||
	FINAL_LIBS="${SHLIB} ${STLIB}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'OpenBSD')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}"
 | 
			
		||||
	VERSION="${MAJOR}.${MINOR}"
 | 
			
		||||
	echo "Building OpenBSD PIC library: " ${LIBNAME}
 | 
			
		||||
	rm -f ${LIBNAME}_pic.a ${LIBNAME}.so.${VERSION}
 | 
			
		||||
	ar cq ${LIBNAME}_pic.a ${OBJECTS}
 | 
			
		||||
	ranlib ${LIBNAME}_pic.a
 | 
			
		||||
	ld -x -Bshareable -Bforcearchive -o ${LIBNAME}.so.${VERSION} ${LIBNAME}_pic.a
 | 
			
		||||
	ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}_pic.a ${LIBNAME}.so.${VERSION} ${LIBNAME}.so"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'NetBSD')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}"
 | 
			
		||||
	echo "mklib: Making NetBSD PIC shared library: " ${LIBNAME}
 | 
			
		||||
	VERSION="${MAJOR}.${MINOR}"
 | 
			
		||||
	rm -f ${LIBNAME}_pic.a ${LIBNAME}.so.${VERSION}
 | 
			
		||||
	ar cq ${LIBNAME}_pic.a ${OBJECTS}
 | 
			
		||||
	ranlib ${LIBNAME}_pic.a
 | 
			
		||||
	ld -x -Bshareable -Bforcearchive -o ${LIBNAME}.so.${VERSION} ${LIBNAME}_pic.a
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}_pic.a ${LIBNAME}.so.${VERSION}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'IRIX')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so"
 | 
			
		||||
	if [ $ARCHOPTS = "64" ] ; then
 | 
			
		||||
	    # 64-bit ABI
 | 
			
		||||
	    OPTS="-64 -shared -all"
 | 
			
		||||
	    echo "mklib: Making IRIX 64-bit shared library: " ${LIBNAME}
 | 
			
		||||
	elif [ $ARCHOPTS = "o32" ] ; then
 | 
			
		||||
	    # old 32-bit ABI
 | 
			
		||||
	    OPTS="-32 -shared -all"
 | 
			
		||||
	    echo "mklib: Making IRIX o32-bit shared library: " ${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    # new 32-bit ABI
 | 
			
		||||
	    OPTS="-n32 -shared -all"
 | 
			
		||||
	    echo "mklib: Making IRIX n32-bit shared library: " ${LIBNAME}
 | 
			
		||||
	fi
 | 
			
		||||
	ld ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'IRIX64')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so"
 | 
			
		||||
	echo "mklib: Making IRIX64 library: " ${LIBNAME}
 | 
			
		||||
	# 64-bit ABI
 | 
			
		||||
	OPTS="-64 -shared -all"
 | 
			
		||||
	ld ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'linux-cygwin')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making linux-cygwin library: " ${LIBNAME}
 | 
			
		||||
	gnuwin32ar ruv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'HPUX')
 | 
			
		||||
	RUNLIB="lib${LIBNAME}.${MAJOR}"
 | 
			
		||||
	DEVLIB="lib${LIBNAME}.sl"
 | 
			
		||||
	echo "mklib: Making HPUX library: " ${RUNLIB} ${DEVLIB}
 | 
			
		||||
	ld -b -o ${RUNLIB} +b ${RUNLIB} ${OBJECTS} ${DEPS}
 | 
			
		||||
	ln -s ${RUNLIB} ${DEVLIB}
 | 
			
		||||
	FINAL_LIBS="{RUNLIB} ${DEVLIB}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'OpenSTEP')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making OpenSTEP static library: " ${LIBNAME}
 | 
			
		||||
	libtool -static -o ${LIBNAME} - ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'OSF1')
 | 
			
		||||
	VERSION="${MAJOR}.${MINOR}"
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	ARNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making OSF/1 library: " ${LIBNAME}
 | 
			
		||||
	rm -f ${LIBNAME}.${VERSION}
 | 
			
		||||
	ld -o ${LIBNAME}.${VERSION} -shared -no_archive -set_version ${VERSION} -soname ${LIBNAME}.${VERSION} -expect_unresolved \* -all ${OBJECTS} ${DEPS}
 | 
			
		||||
	ln -sf ${LIBNAME}.${VERSION} ${LIBNAME}
 | 
			
		||||
 | 
			
		||||
	# also make static lib
 | 
			
		||||
	rm -f ${ARNAME}
 | 
			
		||||
	ar clqz ${ARNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS="${ARNAME} ${LIBNAME} ${LIBNAME}.${VERSION}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'Darwin')
 | 
			
		||||
	VERSION="${MAJOR}.${MINOR}.${TINY}"
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.dylib"
 | 
			
		||||
	ARNAME="lib${LIBNAME}.dylib.a"
 | 
			
		||||
	echo "mklib: Making Darwin libraries: " ${LIBNAME} ${ARNAME}
 | 
			
		||||
	FLAGS="-dynamiclib -multiply_defined suppress"
 | 
			
		||||
	cc ${FLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	# also make regular .a files,
 | 
			
		||||
	# provided by Danek Duvall (duvall@dhduvall.student.princeton.edu)
 | 
			
		||||
	ar ruv ${ARNAME} ${OBJECTS}
 | 
			
		||||
	ranlib ${ARNAME}
 | 
			
		||||
	FINAL_LIBS="${ARNAME} ${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'LynxOS')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making LynxOS library: " ${LIBNAME}
 | 
			
		||||
	ar ru ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'BeOS')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	echo "mklib: Making BeOS shared library: " ${LIBNAME}
 | 
			
		||||
	gcc -nostart -Xlinker -soname=${LIBNAME} -L/Be/develop/lib/x86 ${OBJECTS} -lbe -o ${LIBNAME}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'QNX')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making QNX library: " ${LIBNAME}
 | 
			
		||||
	wlib ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'example')
 | 
			
		||||
	# If you're adding support for a new architecture, you can
 | 
			
		||||
	# start with this:
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.so"  # prefix with "lib"
 | 
			
		||||
	echo "mklib: Making library for example arch: " ${LIBNAME}
 | 
			
		||||
	ld -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    *)
 | 
			
		||||
	echo "mklib: WARNING: making library for unknown platform!"
 | 
			
		||||
	echo "mklib: WARNING: this may not work!"
 | 
			
		||||
	echo "mklib: WARNING: please update the bin/mklib script!"
 | 
			
		||||
	# XXX this is a total hack for Mesa - remove someday
 | 
			
		||||
	# fall-back to an old mklib.* script
 | 
			
		||||
	${MAKELIB} "lib${LIBNAME}.a" ${MAJOR} ${MINOR} ${PATCH} ${OBJECTS}
 | 
			
		||||
	;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Put library files into installation directory if specified.
 | 
			
		||||
#
 | 
			
		||||
if [ ${INSTALLDIR} != "." ] ; then
 | 
			
		||||
    echo "mklib: Installing" ${FINAL_LIBS} "in" ${INSTALLDIR}
 | 
			
		||||
    mv ${FINAL_LIBS} ${INSTALLDIR}/
 | 
			
		||||
fi
 | 
			
		||||
@@ -1,52 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Make a Solaris shared library
 | 
			
		||||
# contributed by Arno Hahma (arno@nitro.pp.utu.fi)
 | 
			
		||||
 | 
			
		||||
#--identification------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
# $Id: mklib.solaris,v 1.2 1999/09/15 15:10:20 brianp Exp $
 | 
			
		||||
 | 
			
		||||
# $Log: mklib.solaris,v $
 | 
			
		||||
# Revision 1.2  1999/09/15 15:10:20  brianp
 | 
			
		||||
# added third, tiny version number to arguments
 | 
			
		||||
#
 | 
			
		||||
# Revision 1.1  1999/08/19 13:53:06  brianp
 | 
			
		||||
# initial check-in (post-crash)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#--common--------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
LIBRARY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MAJOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MINOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
TINY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
OBJECTS=$*
 | 
			
		||||
 | 
			
		||||
#--platform-------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
set -x
 | 
			
		||||
 | 
			
		||||
LIBRARY=`basename $LIBRARY .a`
 | 
			
		||||
 | 
			
		||||
VERSION=$MAJOR.$MINOR
 | 
			
		||||
 | 
			
		||||
echo "Building shared object $LIBRARY.so.$VERSION and the archive library $LIBRARY.a"
 | 
			
		||||
rm -f ${LIBRARY}.a ${LIBRARY}.so.${VERSION}
 | 
			
		||||
ar ruv ${LIBRARY}.a ${OBJECTS}
 | 
			
		||||
 | 
			
		||||
ld -G -o ${LIBRARY}.so.${VERSION} ${OBJECTS}
 | 
			
		||||
 | 
			
		||||
cp ${LIBRARY}.a ${LIBRARY}.so.${VERSION} ../lib
 | 
			
		||||
cd ../lib
 | 
			
		||||
ln -s ${LIBRARY}.so.${VERSION} ${LIBRARY}.so
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										21
									
								
								descrip.mms
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								descrip.mms
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
# Makefile for Mesa for VMS
 | 
			
		||||
# contributed by Jouk Jansen  joukj@hrem.stm.tudelft.nl
 | 
			
		||||
 | 
			
		||||
macro : 
 | 
			
		||||
        @ macro=""
 | 
			
		||||
.ifdef NOSHARE
 | 
			
		||||
.else
 | 
			
		||||
	@ if f$getsyi("HW_MODEL") .ge. 1024 then macro= "/MACRO=(SHARE=1)"
 | 
			
		||||
.endif
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)'macro' all
 | 
			
		||||
 | 
			
		||||
all :
 | 
			
		||||
	if f$search("lib.dir") .eqs. "" then create/directory [.lib]
 | 
			
		||||
	set default [.src]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.progs.demos]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.xdemos]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.tests]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_packed_depth_stencil
 | 
			
		||||
@@ -15,11 +13,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    OBSOLETE - NEVER SHIPPED (use GL_NV_packed_depth_stencil)
 | 
			
		||||
    Obsolete.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_packed_depth_stencil.spec,v 1.1.2.1 2002/09/20 19:14:11 brianp Exp $
 | 
			
		||||
    $Id: MESA_packed_depth_stencil.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										357
									
								
								docs/MESA_program_debug.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										357
									
								
								docs/MESA_program_debug.spec
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,357 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_program_debug
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GL_MESA_program_debug
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian @ tungstengraphics.com)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Last Modified Date: July 20, 2003
 | 
			
		||||
    Author Revision: 1.0
 | 
			
		||||
    $Date: 2003/09/23 14:46:11 $ $Revision: 1.3 $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    TBD
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    OpenGL 1.4 is required
 | 
			
		||||
    The extension is written against the OpenGL 1.4 specification.
 | 
			
		||||
    ARB_vertex_program or ARB_fragment_program or NV_vertex_program
 | 
			
		||||
    or NV_fragment_program is required.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    The extension provides facilities for implementing debuggers for
 | 
			
		||||
    vertex and fragment programs.
 | 
			
		||||
 | 
			
		||||
    The concept is that vertex and fragment program debuggers will be
 | 
			
		||||
    implemented outside of the GL as a utility package.  This extension
 | 
			
		||||
    only provides the minimal hooks required to implement a debugger.
 | 
			
		||||
 | 
			
		||||
    There are facilities to do the following:
 | 
			
		||||
    1. Have the GL call a user-specified function prior to executing
 | 
			
		||||
       each vertex or fragment instruction.
 | 
			
		||||
    2. Query the current program string's execution position.
 | 
			
		||||
    3. Query the current values of intermediate program values.
 | 
			
		||||
 | 
			
		||||
    The main feature is the ProgramCallbackMESA function.  It allows the
 | 
			
		||||
    user to register a callback function with the GL.  The callback will
 | 
			
		||||
    be called prior to executing each vertex or fragment program instruction.
 | 
			
		||||
 | 
			
		||||
    From within the callback, the user may issue Get* commands to
 | 
			
		||||
    query current GL state.  The GetProgramRegisterfvMESA function allows
 | 
			
		||||
    current program values to be queried (such as temporaries, input
 | 
			
		||||
    attributes, and result registers).
 | 
			
		||||
 | 
			
		||||
    There are flags for enabling/disabling the program callbacks.
 | 
			
		||||
 | 
			
		||||
    The current execution position (as an offset from the start of the
 | 
			
		||||
    program string) can be queried with
 | 
			
		||||
    GetIntegerv(GL_FRAGMENT_PROGRAM_POSITION_MESA, &pos) or
 | 
			
		||||
    GetIntegerv(GL_VERTEX_PROGRAM_POSITION_MESA, &pos).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
IP Status
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    1. Is this the right model for a debugger?
 | 
			
		||||
 | 
			
		||||
       It seems prudent to minimize the scope of this extension and leave
 | 
			
		||||
       it up to the developer (or developer community) to write debuggers
 | 
			
		||||
       that layer on top of this extension.
 | 
			
		||||
 | 
			
		||||
       If the debugger were fully implemented within the GL it's not
 | 
			
		||||
       clear how terminal and GUI-based interfaces would work, for
 | 
			
		||||
       example.
 | 
			
		||||
 | 
			
		||||
    2. There aren't any other extensions that register callbacks with
 | 
			
		||||
       the GL.  Isn't there another solution?
 | 
			
		||||
 | 
			
		||||
       If we want to be able to single-step through vertex/fragment
 | 
			
		||||
       programs I don't see another way to do it.
 | 
			
		||||
 | 
			
		||||
    3. How do we prevent the user from doing something crazy in the
 | 
			
		||||
       callback function, like trying to call glBegin (leading to
 | 
			
		||||
       recursion)?
 | 
			
		||||
 | 
			
		||||
       The rule is that the callback function can only issue glGet*()
 | 
			
		||||
       functions and no other GL commands.  It could be difficult to
 | 
			
		||||
       enforce this, however.  Therefore, calling any non-get GL
 | 
			
		||||
       command from within the callback will result in undefined
 | 
			
		||||
       results.    
 | 
			
		||||
 | 
			
		||||
    4. Is this extension amenable to hardware implementation?
 | 
			
		||||
 | 
			
		||||
       Hopefully, but if not, the GL implementation will have to fall
 | 
			
		||||
       back to a software path when debugging.  This may be acceptable
 | 
			
		||||
       for debugging.
 | 
			
		||||
 | 
			
		||||
    5. What's the <data> parameter to ProgramCallbackMESA for?
 | 
			
		||||
 | 
			
		||||
       It's a common programming practice to associate a user-supplied
 | 
			
		||||
       value with callback functions.
 | 
			
		||||
 | 
			
		||||
    6. Debuggers often allow one to modify intermediate program values,
 | 
			
		||||
       then continue.  Does this extension support that?
 | 
			
		||||
 | 
			
		||||
       No.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions (and datatypes)
 | 
			
		||||
 | 
			
		||||
    typedef void (*programcallbackMESA)(enum target, void *data)
 | 
			
		||||
 | 
			
		||||
    void ProgramCallbackMESA(enum target, programcallbackMESA callback,
 | 
			
		||||
                             void *data)
 | 
			
		||||
 | 
			
		||||
    void GetProgramRegisterfvMESA(enum target, sizei len,
 | 
			
		||||
                                  const ubyte *registerName, float *v)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    Accepted by the <cap> parameter of Enable, Disable, IsEnabled,
 | 
			
		||||
    GetBooleanv, GetDoublev, GetFloatv and GetIntegerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_MESA      0x8bb1
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_MESA        0x8bb4
 | 
			
		||||
 | 
			
		||||
    Accepted by the <pname> parameter GetBooleanv, GetDoublev,
 | 
			
		||||
    GetFloatv and GetIntegerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_POSITION_MESA      0x8bb0
 | 
			
		||||
        VERTEX_PROGRAM_POSITION_MESA        0x8bb4
 | 
			
		||||
 | 
			
		||||
    Accepted by the <pname> parameter of GetPointerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x8bb2
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x8bb3
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_FUNC_MESA   0x8bb6
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_DATA_MESA   0x8bb7
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment
 | 
			
		||||
Operations and the Frame Buffer)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    In section 5.4 "Display Lists", page 202, add the following command
 | 
			
		||||
    to the list of those that are not compiled into display lists:
 | 
			
		||||
 | 
			
		||||
        ProgramCallbackMESA.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    Add a new section 5.7 "Callback Functions"
 | 
			
		||||
 | 
			
		||||
    The function
 | 
			
		||||
 | 
			
		||||
        void ProgramCallbackMESA(enum target, programcallbackMESA callback,
 | 
			
		||||
                                 void *data)
 | 
			
		||||
 | 
			
		||||
    registers a user-defined callback function with the GL.  <target>
 | 
			
		||||
    may be FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB.  The enabled
 | 
			
		||||
    callback functions registered with these targets will be called
 | 
			
		||||
    prior to executing each instruction in the current fragment or
 | 
			
		||||
    vertex program, respectively.  The callbacks are enabled and
 | 
			
		||||
    disabled by calling Enable or Disable with <cap>
 | 
			
		||||
    FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB.
 | 
			
		||||
 | 
			
		||||
    The callback function's signature must match the typedef
 | 
			
		||||
 | 
			
		||||
        typedef void (*programcallbackMESA)(enum target, void *data)
 | 
			
		||||
 | 
			
		||||
    When the callback function is called, <target> will either be
 | 
			
		||||
    FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB to indicate which
 | 
			
		||||
    program is currently executing and <data> will be the value
 | 
			
		||||
    specified when ProgramCallbackMESA was called.
 | 
			
		||||
 | 
			
		||||
    From within the callback function, only the following GL commands
 | 
			
		||||
    may be called:
 | 
			
		||||
 | 
			
		||||
        GetBooleanv
 | 
			
		||||
        GetDoublev
 | 
			
		||||
        GetFloatv
 | 
			
		||||
        GetIntegerv
 | 
			
		||||
        GetProgramLocalParameter
 | 
			
		||||
        GetProgramEnvParameter
 | 
			
		||||
        GetProgramRegisterfvMESA
 | 
			
		||||
        GetProgramivARB
 | 
			
		||||
        GetProgramStringARB
 | 
			
		||||
        GetError
 | 
			
		||||
 | 
			
		||||
    Calling any other command from within the callback results in
 | 
			
		||||
    undefined behaviour.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the OpenGL 1.4 Specification (State and
 | 
			
		||||
State Requests)
 | 
			
		||||
 | 
			
		||||
    Add a new section 6.1.3 "Program Value Queries":
 | 
			
		||||
 | 
			
		||||
    The command
 | 
			
		||||
 | 
			
		||||
        void GetProgramRegisterfvMESA(enum target, sizei len,
 | 
			
		||||
                                      const ubyte *registerName,
 | 
			
		||||
                                      float *v)
 | 
			
		||||
        
 | 
			
		||||
    Is used to query the value of program variables and registers
 | 
			
		||||
    during program execution.  GetProgramRegisterfvMESA may only be
 | 
			
		||||
    called from within a callback function registered with
 | 
			
		||||
    ProgramCallbackMESA.
 | 
			
		||||
 | 
			
		||||
    <registerName> and <len> specify the name a variable, input
 | 
			
		||||
    attribute, temporary, or result register in the program string.
 | 
			
		||||
    The current value of the named variable is returned as four
 | 
			
		||||
    values in <v>.  If <name> doesn't exist in the program string,
 | 
			
		||||
    the error INVALID_OPERATION is generated.
 | 
			
		||||
 | 
			
		||||
Additions to Appendix A of the OpenGL 1.4 Specification (Invariance)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to the AGL/GLX/WGL Specifications
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    XXX TBD
 | 
			
		||||
 | 
			
		||||
Dependencies on NV_vertex_program and NV_fragment_program
 | 
			
		||||
 | 
			
		||||
    If NV_vertex_program and/or NV_fragment_program are supported,
 | 
			
		||||
    vertex and/or fragment programs defined by those extensions may
 | 
			
		||||
    be debugged as well.  Register queries will use the syntax used
 | 
			
		||||
    by those extensions (i.e. "v[X]" to query vertex attributes,
 | 
			
		||||
    "o[X]" for vertex outputs, etc.)
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated if ProgramCallbackMESA is called
 | 
			
		||||
    between Begin and End.
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by ProgramCallbackMESA if <target> is not
 | 
			
		||||
    a supported vertex or fragment program type.
 | 
			
		||||
 | 
			
		||||
    Note: INVALID_OPERAION IS NOT generated by GetProgramRegisterfvMESA,
 | 
			
		||||
    GetBooleanv, GetDoublev, GetFloatv, or GetIntegerv if called between
 | 
			
		||||
    Begin and End when a vertex or fragment program is currently executing.
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by ProgramCallbackMESA,
 | 
			
		||||
    GetProgramRegisterfvMESA if <target> is not a program target supported
 | 
			
		||||
    by ARB_vertex_program, ARB_fragment_program (or NV_vertex_program or
 | 
			
		||||
    NV_fragment_program).
 | 
			
		||||
 | 
			
		||||
    INVALID_VALUE is generated by GetProgramRegisterfvMESA if <registerName>
 | 
			
		||||
    does not name a known program register or variable.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by GetProgramRegisterfvMESA when a
 | 
			
		||||
    register query is attempted for a program target that's not currently
 | 
			
		||||
    being executed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    XXX finish
 | 
			
		||||
 | 
			
		||||
(table 6.N, p. ###)
 | 
			
		||||
                                                            Initial
 | 
			
		||||
    Get Value                            Type Get Command   Value    Description  Sec.  Attribute
 | 
			
		||||
    ---------                            ---- -----------   -----    -----------  ----  ---------
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_MESA        B   IsEnabled     FALSE    XXX          XXX   enable
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_MESA          B   IsEnabled     FALSE    XXX          XXX   enable
 | 
			
		||||
    FRAGMENT_PROGRAM_POSITION_MESA        Z+  GetIntegerv   -1       XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_POSITION_MESA          Z+  GetIntegerv   -1       XXX          XXX   -
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA   P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_FUNC_MESA     P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_DATA_MESA   P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_DATA_MESA     P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
 | 
			
		||||
    XXX more?
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    8 July 2003
 | 
			
		||||
        Initial draft. (Brian Paul)
 | 
			
		||||
    11 July 2003
 | 
			
		||||
        Second draft. (Brian Paul)
 | 
			
		||||
    20 July 2003
 | 
			
		||||
        Third draft.  Lots of fundamental changes. (Brian Paul)
 | 
			
		||||
    23 July 2003
 | 
			
		||||
        Added chapter 5 and 6 spec language. (Brian Paul)
 | 
			
		||||
 | 
			
		||||
Example Usage
 | 
			
		||||
 | 
			
		||||
   The following is a very simple example of how this extension may
 | 
			
		||||
   be used to print the values of R0, R1, R2 and R3 while executing
 | 
			
		||||
   vertex programs.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /* This is called by the GL when the vertex program is executing.
 | 
			
		||||
     * We can only make glGet* calls from within this function!
 | 
			
		||||
     */
 | 
			
		||||
    void DebugCallback(GLenum target, GLvoid *data)
 | 
			
		||||
    {
 | 
			
		||||
       GLint pos;
 | 
			
		||||
       GLuint i;
 | 
			
		||||
 | 
			
		||||
       /* Get PC and current instruction string */
 | 
			
		||||
       glGetIntegerv(GL_VERTEX_PROGRAM_POSITION_ARB, &pos);
 | 
			
		||||
 | 
			
		||||
       printf("Current position: %d\n", pos);
 | 
			
		||||
 | 
			
		||||
       printf("Current temporary registers:\n");
 | 
			
		||||
       for (i = 0; i < 4; i++) {
 | 
			
		||||
	  GLfloat v[4];
 | 
			
		||||
	  char s[10];
 | 
			
		||||
	  sprintf(s, "R%d", i);
 | 
			
		||||
	  glGetProgramRegisterfvMESA(GL_VERTEX_PROGRAM_ARB, strlen(s), s, v);
 | 
			
		||||
	  printf("R%d = %g, %g, %g, %g\n", i, v[0], v[1], v[2], v[3]);
 | 
			
		||||
       }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * elsewhere...
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    /* Register our debugger callback function */
 | 
			
		||||
    glProgramCallbackMESA(GL_VERTEX_PROGRAM_ARB, DebugCallback, NULL);
 | 
			
		||||
    glEnable(GL_VERTEX_PROGRAM_CALLBACK_MESA);
 | 
			
		||||
 | 
			
		||||
    /* define/bind a vertex program */
 | 
			
		||||
 | 
			
		||||
    glEnable(GL_VERTEX_PROGRAM);
 | 
			
		||||
 | 
			
		||||
    /* render something */
 | 
			
		||||
    glBegin(GL_POINTS);
 | 
			
		||||
    glVertex2f(0, 0);
 | 
			
		||||
    glEnd();
 | 
			
		||||
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_sprite_point
 | 
			
		||||
@@ -14,11 +12,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    OBSOLETE - NEVER SHIPPED (use GL_NV_point_sprite)
 | 
			
		||||
    Obsolete - see GL_ARB_point_sprite.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_sprite_point.spec,v 1.1.2.1 2002/09/20 19:14:11 brianp Exp $
 | 
			
		||||
    $Id: MESA_sprite_point.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										132
									
								
								docs/MESA_swap_control.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										132
									
								
								docs/MESA_swap_control.spec
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,132 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_swap_control
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GLX_MESA_swap_control
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Ian Romanick, IBM, idr at us.ibm.com
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Deployed in DRI drivers post-XFree86 4.3.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Date: 5/1/2003   Revision: 1.1
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    ???
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
    Based on GLX_SGI_swap_control version 1.9 and WGL_EXT_swap_control
 | 
			
		||||
    version 1.5.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension allows an application to specify a minimum periodicity
 | 
			
		||||
    of color buffer swaps, measured in video frame periods.
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    * Should implementations that export GLX_MESA_swap_control also export
 | 
			
		||||
      GL_EXT_swap_control for compatibility with WGL_EXT_swap_control?
 | 
			
		||||
 | 
			
		||||
    UNRESOLVED.
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    int glXSwapIntervalMESA(int interval)
 | 
			
		||||
    int glXGetSwapIntervalMESA(void)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
 | 
			
		||||
and the Framebuffer)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the GLX 1.3 Specification
 | 
			
		||||
 | 
			
		||||
    [Add the following to Section 3.3.10 of the GLX Specification (Double
 | 
			
		||||
     Buffering)]
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA specifies the minimum number of video frame periods
 | 
			
		||||
    per buffer swap.  (e.g. a value of two means that the color buffers
 | 
			
		||||
    will be swapped at most every other video frame.)  A return value
 | 
			
		||||
    of zero indicates success; otherwise an error occurred.  The interval
 | 
			
		||||
    takes effect when glXSwapBuffers is first called subsequent to the
 | 
			
		||||
    glXSwapIntervalMESA call.
 | 
			
		||||
 | 
			
		||||
    A video frame period is the time required by the monitor to display a 
 | 
			
		||||
    full frame of video data.  In the case of an interlaced monitor,
 | 
			
		||||
    this is typically the time required to display both the even and odd 
 | 
			
		||||
    fields of a frame of video data.
 | 
			
		||||
 | 
			
		||||
    If <interval> is set to a value of 0, buffer swaps are not synchron-
 | 
			
		||||
    ized to a video frame.  The <interval> value is silently clamped to
 | 
			
		||||
    the maximum implementation-dependent value supported before being
 | 
			
		||||
    stored.
 | 
			
		||||
 | 
			
		||||
    The swap interval is not part of the render context state.  It cannot
 | 
			
		||||
    be pushed or popped.  The current swap interval for the window
 | 
			
		||||
    associated with the current context can be obtained by calling
 | 
			
		||||
    glXGetSwapIntervalMESA.  The default swap interval is 0.
 | 
			
		||||
 | 
			
		||||
    On XFree86, setting the environment variable LIBGL_THROTTLE_REFRESH sets
 | 
			
		||||
    the swap interval to 1.
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA returns GLX_BAD_VALUE if parameter <interval> is
 | 
			
		||||
    less than zero.
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
 | 
			
		||||
    GLXContext.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None.  This extension only extends to direct rendering contexts.
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    Get Value		Get Command	Type	    Initial Value
 | 
			
		||||
    ---------		-----------	----	    -------------
 | 
			
		||||
    [swap interval]	GetSwapInterval	Z+	    0
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    1.1,  5/1/03   Added the issues section and contact information.
 | 
			
		||||
    	  	   Changed the default swap interval to 0.
 | 
			
		||||
    1.0,  3/17/03  Initial version based on GLX_SGI_swap_control and
 | 
			
		||||
                   WGL_EXT_swap_control.
 | 
			
		||||
							
								
								
									
										201
									
								
								docs/MESA_swap_frame_usage.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										201
									
								
								docs/MESA_swap_frame_usage.spec
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,201 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_swap_frame_usage
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GLX_MESA_swap_frame_usage
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Ian Romanick, IBM, idr at us.ibm.com
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Deployed in DRI drivers post-XFree86 4.3.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Date: 5/1/2003   Revision: 1.1
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    ???
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    GLX_SGI_swap_control affects the definition of this extension.
 | 
			
		||||
    GLX_MESA_swap_control affects the definition of this extension.
 | 
			
		||||
    GLX_OML_sync_control affects the definition of this extension.
 | 
			
		||||
 | 
			
		||||
    Based on WGL_I3D_swap_frame_usage version 1.3.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension allows an application to deterine what portion of the
 | 
			
		||||
    swap period has elapsed since the last swap operation completed.  The
 | 
			
		||||
    "usage" value is a floating point value on the range [0,max] which is
 | 
			
		||||
    calculated as follows:
 | 
			
		||||
 | 
			
		||||
                              td
 | 
			
		||||
                   percent = ----
 | 
			
		||||
                              tf
 | 
			
		||||
 | 
			
		||||
    where td is the time measured from the last completed buffer swap (or
 | 
			
		||||
    call to enable the statistic) to when the next buffer swap completes, tf
 | 
			
		||||
    is the entire time for a frame which may be multiple screen refreshes
 | 
			
		||||
    depending on the swap interval as set by the GLX_SGI_swap_control or
 | 
			
		||||
    GLX_OML_sync_control extensions. 
 | 
			
		||||
 | 
			
		||||
    The value, percent, indicates the amount of time spent between the
 | 
			
		||||
    completion of the two swaps.  If the value is in the range [0,1], the
 | 
			
		||||
    buffer swap occurred within the time period required to maintain a
 | 
			
		||||
    constant frame rate.  If the value is in the range (1,max], a constant
 | 
			
		||||
    frame rate was not achieved.  The value indicates the number of frames
 | 
			
		||||
    required to draw.
 | 
			
		||||
 | 
			
		||||
    This definition of "percent" differs slightly from
 | 
			
		||||
    WGL_I3D_swap_frame_usage.  In WGL_I3D_swap_frame_usage, the measurement
 | 
			
		||||
    is taken from the completion of one swap to the issuance of the next.
 | 
			
		||||
    This representation may not be as useful as measuring between
 | 
			
		||||
    completions, as a significant amount of time may pass between the
 | 
			
		||||
    issuance of a swap and the swap actually occuring.
 | 
			
		||||
 | 
			
		||||
    There is also a mechanism to determine whether a frame swap was
 | 
			
		||||
    missed.
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    int glXGetFrameUsageMESA(Display *dpy,
 | 
			
		||||
                             GLXDrawable drawable,
 | 
			
		||||
    	                     float *usage)
 | 
			
		||||
 | 
			
		||||
    int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                  GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    int glXEndFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    int glXQueryFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                  GLXDrawable drawable,
 | 
			
		||||
				  int64_t *swapCount,
 | 
			
		||||
                                  int64_t *missedFrames,
 | 
			
		||||
                                  float *lastMissedUsage)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
 | 
			
		||||
and the Framebuffer)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the GLX 1.3 Specification
 | 
			
		||||
 | 
			
		||||
    The frame usage is measured as the percentage of the swap period elapsed
 | 
			
		||||
    between two buffer-swap operations being commited.  In unextened GLX the
 | 
			
		||||
    swap period is the vertical refresh time.  If SGI_swap_control or
 | 
			
		||||
    MESA_swap_control are supported, the swap period is the vertical refresh
 | 
			
		||||
    time multiplied by the swap interval (or one if the swap interval is set
 | 
			
		||||
    to zero).
 | 
			
		||||
    
 | 
			
		||||
    If OML_sync_control is supported, the swap period is the vertical
 | 
			
		||||
    refresh time multiplied by the divisor parameter to
 | 
			
		||||
    glXSwapBuffersMscOML.  The frame usage in this case is less than 1.0 if
 | 
			
		||||
    the swap is commited before target_msc, and is greater than or equal to
 | 
			
		||||
    1.0 otherwise.  The actual usage value is based on the divisor and is
 | 
			
		||||
    never less than 0.0.
 | 
			
		||||
 | 
			
		||||
       int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable,
 | 
			
		||||
				     float *usage)
 | 
			
		||||
 | 
			
		||||
    glXGetFrameUsageMESA returns a floating-point value in <usage>
 | 
			
		||||
    that represents the current swap usage, as defined above.
 | 
			
		||||
 | 
			
		||||
    Missed frame swaps can be tracked by calling the following function:
 | 
			
		||||
 | 
			
		||||
       int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    glXBeginFrameTrackingMESA resets a "missed frame" count and
 | 
			
		||||
    synchronizes with the next frame vertical sync before it returns.
 | 
			
		||||
    If a swap is missed based in the rate control specified by the
 | 
			
		||||
    <interval> set by glXSwapIntervalSGI or the default swap of once
 | 
			
		||||
    per frame, the missed frame count is incremented.
 | 
			
		||||
 | 
			
		||||
    The current missed frame count and total number of swaps since
 | 
			
		||||
    the last call to glXBeginFrameTrackingMESA can be obtained by
 | 
			
		||||
    callling the following function:
 | 
			
		||||
 | 
			
		||||
       int glXQueryFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable,
 | 
			
		||||
				     int64_t *swapCount,
 | 
			
		||||
                                     int64_t *missedFrames,
 | 
			
		||||
                                     float *lastMissedUsage)
 | 
			
		||||
 | 
			
		||||
    The location pointed to by <swapCount> will be updated with the
 | 
			
		||||
    number of swaps that have been commited.  This value may not match the
 | 
			
		||||
    number of swaps that have been requested since swaps may be
 | 
			
		||||
    queued by the implementation.  This function can be called at any
 | 
			
		||||
    time and does not synchronize to vertical blank.
 | 
			
		||||
 | 
			
		||||
    The location pointed to by <missedFrames> will contain the number
 | 
			
		||||
    swaps that missed the specified frame.  The frame usage for the
 | 
			
		||||
    last missed frame is returned in the location pointed to by
 | 
			
		||||
    <lastMissedUsage>.
 | 
			
		||||
 | 
			
		||||
    Frame tracking is disabled by calling the function
 | 
			
		||||
 | 
			
		||||
       int glXEndFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                   GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    This function will not return until all swaps have occurred.  The
 | 
			
		||||
    application can call glXQueryFrameTrackingMESA for a final swap and
 | 
			
		||||
    missed frame count.
 | 
			
		||||
 | 
			
		||||
    If these functions are succesful, zero is returned.  If the context
 | 
			
		||||
    associated with dpy and drawable is not a direct context,
 | 
			
		||||
    GLX_BAD_CONTEXT is returned.
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    If the function succeeds, zero is returned.  If the function
 | 
			
		||||
    fails, one of the following error codes is returned:
 | 
			
		||||
 | 
			
		||||
       GLX_BAD_CONTEXT         The current rendering context is not a direct
 | 
			
		||||
       			       context.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None.  This extension only extends to direct rendering contexts.
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    1.1,  5/1/03   Added contact information.
 | 
			
		||||
    1.0,  3/17/03  Initial version based on WGL_I3D_swap_frame_usage.
 | 
			
		||||
@@ -13,11 +13,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    XXX - Not complete yet!!!
 | 
			
		||||
    Obsolete.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_trace.spec,v 1.2 2001/01/29 16:10:18 brianp Exp $
 | 
			
		||||
    $Id: MESA_trace.spec,v 1.3 2003/09/19 14:58:21 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -31,11 +31,12 @@ Dependencies
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension supports texture images in the YCbCr format.  There is
 | 
			
		||||
    no support for converting YCbCr images to RGB or vice versa.  The
 | 
			
		||||
    intention is for YCbCr image data to be directly sent to the renderer
 | 
			
		||||
    without any pixel transfer operations.  Only 2D texture images are
 | 
			
		||||
    supported (not glDrawPixels, glReadPixels, etc).
 | 
			
		||||
    This extension supports texture images stored in the YCbCr format.
 | 
			
		||||
    There is no support for converting YCbCr images to RGB or vice versa
 | 
			
		||||
    during pixel transfer.  The texture's YCbCr colors are converted to
 | 
			
		||||
    RGB during texture sampling, after-which, all the usual per-fragment
 | 
			
		||||
    operations take place.  Only 2D texture images are supported (not
 | 
			
		||||
    glDrawPixels, glReadPixels, etc).
 | 
			
		||||
 | 
			
		||||
    A YCbCr pixel (texel) is a 16-bit unsigned short with two components.
 | 
			
		||||
    The first component is luminance (Y).  For pixels in even-numbered
 | 
			
		||||
@@ -61,12 +62,12 @@ New Tokens
 | 
			
		||||
    Accepted by the <internalFormat> and <format> parameters of
 | 
			
		||||
    TexImage2D and TexSubImage2D:
 | 
			
		||||
 | 
			
		||||
        GL_YCBCR_MESA                   0x8757
 | 
			
		||||
        YCBCR_MESA                   0x8757
 | 
			
		||||
 | 
			
		||||
    Accepted by the <type> parameter of TexImage2D and TexSubImage2D:
 | 
			
		||||
 | 
			
		||||
        GL_UNSIGNED_SHORT_8_8_MESA      0x85BA /* same as Apple's */
 | 
			
		||||
        GL_UNSIGNED_SHORT_8_8_REV_MESA  0x85BB /* same as Apple's */
 | 
			
		||||
        UNSIGNED_SHORT_8_8_MESA      0x85BA /* same as Apple's */
 | 
			
		||||
        UNSIGNED_SHORT_8_8_REV_MESA  0x85BB /* same as Apple's */
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
@@ -124,7 +125,8 @@ Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization)
 | 
			
		||||
      TEXTURE_RECTANGLE_NV or PROXY_TEXTURE_RECTANGLE_NV.
 | 
			
		||||
      All pixel transfer operations are bypassed.  The texture is stored as
 | 
			
		||||
      YCbCr, not RGB.  Queries of the texture's red, green and blue component
 | 
			
		||||
      sizes will return zero.
 | 
			
		||||
      sizes will return zero.  The YCbCr colors are converted to RGB during
 | 
			
		||||
      texture sampling using an implementation dependent conversion.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.8.1, Texture Image Specification, on page 126, add
 | 
			
		||||
@@ -181,7 +183,7 @@ Errors
 | 
			
		||||
    <internalFormat> is MESA_YCBCR and <border> is not zero.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by TexSubImage2D if the internal image
 | 
			
		||||
    format is YCBCR_MESA and format is not YCBCR_MESA.
 | 
			
		||||
    format is YCBCR_MESA and <format> is not YCBCR_MESA.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by CopyTexSubImage2D if the internal
 | 
			
		||||
    image is YCBCR_MESA.
 | 
			
		||||
@@ -195,3 +197,7 @@ New State
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    20 September 2002 - Initial draft
 | 
			
		||||
    29 April 2003 - minor updates
 | 
			
		||||
     3 September 2003 - further clarify when YCbCr->RGB conversion takes place
 | 
			
		||||
    19 September 2003 - a few more updates prior to submitting to extension
 | 
			
		||||
                        registry.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										547
									
								
								docs/MiniGLX.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										547
									
								
								docs/MiniGLX.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,547 @@
 | 
			
		||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | 
			
		||||
<html>
 | 
			
		||||
<head>
 | 
			
		||||
  <title>Mini GLX Specification</title>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<h1>
 | 
			
		||||
<center>Mini GLX Specification</center>
 | 
			
		||||
</h1>
 | 
			
		||||
<h2>
 | 
			
		||||
<center>Tungsten Graphics, Inc.<br>
 | 
			
		||||
<br>
 | 
			
		||||
January 20, 2003<br>
 | 
			
		||||
<br>
 | 
			
		||||
</center>
 | 
			
		||||
</h2>
 | 
			
		||||
<p> Copyright © 2002-2003 by Tungsten Graphics, Inc., Cedar Park,
 | 
			
		||||
Texas. All Rights Reserved. <br>
 | 
			
		||||
<br>
 | 
			
		||||
Permission is granted to make and distribute verbatim copies of this
 | 
			
		||||
document provided the copyright notice and this permission notice are
 | 
			
		||||
preserved on all copies.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>1. Introduction</h1>
 | 
			
		||||
<p>The Mini GLX interface facilitates OpenGL rendering on embedded
 | 
			
		||||
devices. The interface is a subset of the GLX interface, plus a minimal
 | 
			
		||||
set of Xlib-like functions.</p>
 | 
			
		||||
<p>Programs written to the Mini GLX specification should run unchanged
 | 
			
		||||
on systems with the X Window System and the GLX extension. The intention
 | 
			
		||||
is to allow flexibility for prototyping and testing.</p>
 | 
			
		||||
<p>This document serves as both the reference guide and programming
 | 
			
		||||
guide for Mini GLX.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>2. Mini GLX Concepts</h1>
 | 
			
		||||
<p>The OpenGL specification does not describe how OpenGL rendering
 | 
			
		||||
contexts and drawing surfaces (i.e. the frame buffer) are created and
 | 
			
		||||
managed. Rather, this is handled by an OpenGL window system interface,
 | 
			
		||||
such as Mini GLX.</p>
 | 
			
		||||
<p>There are three main datatypes or resources managed by Mini GLX. The
 | 
			
		||||
resources and their corresponding GLX or Xlib data types are:</p>
 | 
			
		||||
<table cellspacing="10" align="center">
 | 
			
		||||
  <tbody>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td><u>Resource</u></td>
 | 
			
		||||
      <td><u>Data type</u></td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>pixel formats</td>
 | 
			
		||||
      <td>X Visual and XVisualInfo</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>drawing surfaces</td>
 | 
			
		||||
      <td>X Window or GLXDrawable</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>rendering contexts</td>
 | 
			
		||||
      <td>GLXContext</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
  </tbody>
 | 
			
		||||
</table>
 | 
			
		||||
<p>Pixel formats or X Visuals describe the per-pixel attributes of the
 | 
			
		||||
frame buffer.  For example, bits per color component, Z buffer size,
 | 
			
		||||
stencil size, TrueColor vs PseudoColor, etc.</p>
 | 
			
		||||
<p>Drawing surfaces or X Windows typically describe a spatial
 | 
			
		||||
allocation of the frame buffer (i.e. the position and size of a
 | 
			
		||||
rectangular region of pixels).  Since MiniGLX doesn't really support a
 | 
			
		||||
window system, the window is effectively the entire frame buffer.</p>
 | 
			
		||||
<p>A rendering context represents the current OpenGL state such as
 | 
			
		||||
current drawing color, line width, blending mode, texture parameters,
 | 
			
		||||
etc. Several rendering contexts can be created but only one can be in
 | 
			
		||||
use at any given time.</p>
 | 
			
		||||
<p>The Mini GLX interface provides all the functions needed for
 | 
			
		||||
choosing pixel formats, create drawing surfaces, creating rendering
 | 
			
		||||
contexts and binding rendering contexts to drawing surfaces.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>3. Using Mini GLX</h1>
 | 
			
		||||
<p>To use the Mini GLX interface in your application, include the
 | 
			
		||||
GL/miniglx.h header file at compile time:</p>
 | 
			
		||||
<blockquote><code>	#include <GL/miniglx.h><br>
 | 
			
		||||
  </code></blockquote>
 | 
			
		||||
<code></code>Applications should link with libGL.so (i.e. <code>gcc
 | 
			
		||||
myprogram.o -lGL -o myprogram</code>).  libGL.so implements the
 | 
			
		||||
MiniGLX API functions and, in turn, loads a hardware-specific device
 | 
			
		||||
driver (such as <code>radeon_dri.so</code>) at runtime.  The
 | 
			
		||||
environment variable <code>LIBGL_DRIVERS_PATH</code> should name the
 | 
			
		||||
directory where these modules are located.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Prior to running a MiniGXL application, the following kernel modules
 | 
			
		||||
must be installed:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"> agpgart.o<br>
 | 
			
		||||
radeonfb.o  (assuming Radeon hardware)<br>
 | 
			
		||||
radeon.o  (assuming Radeon hardware)<br>
 | 
			
		||||
</div>
 | 
			
		||||
<code></code> <br>
 | 
			
		||||
Finally, MiniGLX reads a configuration file (by default,<code>
 | 
			
		||||
/etc/miniglx.conf</code>) to determine basic configuration information.
 | 
			
		||||
 The configuration file may also be located in the directory
 | 
			
		||||
specified by the <code>MINIGLX_CONF</code> environment variable).<br>
 | 
			
		||||
<br>
 | 
			
		||||
The remainder of this section describes the MiniGLX API functions.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.1 Initialization</h2>
 | 
			
		||||
<p>The XOpenDisplay function is used to initialize the graphics system:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Display *XOpenDisplay(const char *displayname)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The <code>displayName</code> parameter is currently ignored in Mini
 | 
			
		||||
GLX. It is recommended that <code>NULL</code> be passed as the<code>displayName</code>
 | 
			
		||||
parameter.</p>
 | 
			
		||||
<p>If XOpenDisplay is able to initialize the graphics system a pointer
 | 
			
		||||
to a Display will be returned.  Otherwise, NULL will be returned.</p>
 | 
			
		||||
<h2>3.2 Choosing a Visual</h2>
 | 
			
		||||
<p>A visual (i.e. pixel format) must be chosen before a drawing surface
 | 
			
		||||
or rendering context can be created.  This is done with the
 | 
			
		||||
glXChooseVisual function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>XVisualInfo *glXChooseVisual(Display *dpy, int screen, const int *attribList)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>dpy</code> is a pointer to the display returned by
 | 
			
		||||
XOpenDisplay. </p>
 | 
			
		||||
<p><code>screen</code> is currently ignored by Mini GLX and should be
 | 
			
		||||
zero. </p>
 | 
			
		||||
<p><code>attribList</code> is a list of GLX attributes which describe
 | 
			
		||||
the desired pixel format.  It is terminated by the token <code>None</code>.
 | 
			
		||||
The attributes are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>GLX_USE_GL</code></dt>
 | 
			
		||||
    <dd>This attribute should always be present in order to maintain
 | 
			
		||||
compatibility with GLX.</dd>
 | 
			
		||||
    <dt><code>GLX_RGBA</code></dt>
 | 
			
		||||
    <dd>If present, only RGBA pixel formats will be considered.
 | 
			
		||||
Otherwise, only color index formats are considered.</dd>
 | 
			
		||||
    <dt><code>GLX_DOUBLEBUFFER</code></dt>
 | 
			
		||||
    <dd>if present, only double-buffered pixel formats will	be chosen.</dd>
 | 
			
		||||
    <dt><code>GLX_RED_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per red pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_GREEN_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per green pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_BLUE_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per blue pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_ALPHA_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per alpha pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_STENCIL_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per stencil value that is acceptable.</dd>
 | 
			
		||||
    <dt><code>None</code></dt>
 | 
			
		||||
    <dd>This token is used to terminate the attribute list.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>glXChooseVisual will return a pointer to an XVisualInfo object which
 | 
			
		||||
most closely matches the requirements of the attribute list.  If there
 | 
			
		||||
is no visual which matches the request, NULL will be returned.</p>
 | 
			
		||||
<p>Note that visuals with accumulation buffers and depth buffers are
 | 
			
		||||
not available.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.3 Creating a Drawing Surface</h2>
 | 
			
		||||
<p>Drawing surfaces are created as X windows.  For Mini GLX,
 | 
			
		||||
windows are <i>full-screen</i>; they cover the entire frame buffer.
 | 
			
		||||
 Also, Mini GLX imposes a limit of one window.  A second window
 | 
			
		||||
cannot be created until the first one is destroyed.</p>
 | 
			
		||||
<h3>3.3.1 Window Creation</h3>
 | 
			
		||||
<p>The XCreateWindow function is used to create a drawing surface:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Window XCreateWindow( Display *display,<br>                      Window parent,<br>                      int x, int y,<br>                      unsigned int width, unsigned int height,<br>                      unsigned int borderWidth,<br>                      int depth,<br>                      unsigned int class,<br>                      Visual *visual,<br>                      unsigned long valuemask,<br>                      XSetWindowAttributes *attributes )<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>display</code></dt>
 | 
			
		||||
    <dd>A Display pointer, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>parent</code></dt>
 | 
			
		||||
    <dd>The parent window for the new window.  For Mini GLX, this
 | 
			
		||||
should be<code>RootWindow(dpy, 0)</code>.</dd>
 | 
			
		||||
    <dt><code>x, y</code></dt>
 | 
			
		||||
    <dd>The position of the window.  For Mini GLX, both values should
 | 
			
		||||
be zero.</dd>
 | 
			
		||||
    <dt><code>width, height</code></dt>
 | 
			
		||||
    <dd>The size of the window.  For Mini GLX, this specifies the
 | 
			
		||||
desired screen size such as 1024, 768 or 1280, 1024.</dd>
 | 
			
		||||
    <dt><code>borderWidth</code></dt>
 | 
			
		||||
    <dd>This parameter should be zero.</dd>
 | 
			
		||||
    <dt><code>depth</code></dt>
 | 
			
		||||
    <dd>The pixel depth for the window.  For Mini GLX this should be
 | 
			
		||||
the depth found in the XVisualInfo object returned by <code>glxChooseVisual</code>.</dd>
 | 
			
		||||
    <dt><code>class</code></dt>
 | 
			
		||||
    <dd>The window class.  For Mini GLX this value should be <code>InputOutput</code>.</dd>
 | 
			
		||||
    <dt><code>visual</code></dt>
 | 
			
		||||
    <dd>This parameter should be the <code>visual</code> field of the <code>XVisualInfo</code>
 | 
			
		||||
object returned by <code>glxChooseVisual</code>.</dd>
 | 
			
		||||
    <dt><code>valuemask</code></dt>
 | 
			
		||||
    <dd>This parameter indicates which fields of the <code>XSetWindowAttributes</code>
 | 
			
		||||
are to be used. For Mini GLX this is typically the bitmask<code>CWBackPixel
 | 
			
		||||
| CWBorderPixel | CWColormap</code>.</dd>
 | 
			
		||||
    <dt><code>attributes</code></dt>
 | 
			
		||||
    <dd>Initial window attributes. Of the fields in the <code>XSetWindowAttributes</code>
 | 
			
		||||
structure, the<code>background_pixel</code>, <code>border_pixel</code>
 | 
			
		||||
and <code>colormap</code> fields should be set.  See the discussion
 | 
			
		||||
below regarding colormaps.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>XCreateWindow</code> will return a window handle if it succeeds
 | 
			
		||||
or zero if it fails.</p>
 | 
			
		||||
<h3>3.3.2 Window Mapping</h3>
 | 
			
		||||
<p>To display the window the XMapWindow function must be called:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XMapWindow(Display *dpy, Window w)</pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>This function does nothing in Mini GLX but is required for Xlib/GLX
 | 
			
		||||
compatibility</p>
 | 
			
		||||
<h3>3.3.3 Colormaps<br>
 | 
			
		||||
</h3>
 | 
			
		||||
<p>Xlib requires specification of a colormap when creating a window.
 | 
			
		||||
 For purposes of interoperability, Mini GLX requires this as well,
 | 
			
		||||
though the colormap is not actually used.  The XCreateColormap
 | 
			
		||||
function is used to create a colormap:</p>
 | 
			
		||||
<blockquote><code>Colormap XCreateColormap(Display *dpy, Window window,
 | 
			
		||||
Visual *visual, int alloc)</code><br>
 | 
			
		||||
  <code></code></blockquote>
 | 
			
		||||
<p>The parameters are as follows:<br>
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>window</code></dt>
 | 
			
		||||
    <dd> This parameter is ignored by Mini GLX but should be the value
 | 
			
		||||
returned by the <code>RootWindow(dpy, 0)</code> macro.<br>
 | 
			
		||||
    </dd>
 | 
			
		||||
    <dt><code>visual</code></dt>
 | 
			
		||||
    <dd>This parameter is ignored by Mini GLX but should be the visual
 | 
			
		||||
field of the XVisualInfo object returned by glXChooseVisual. </dd>
 | 
			
		||||
    <dt><code>alloc</code></dt>
 | 
			
		||||
    <dd>This parameter is ignored by Mini GLX but should be set to <code>AllocNone</code>.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.4 Creating a Rendering Context</h2>
 | 
			
		||||
<p>An OpenGL rendering context is created with the <code>glXCreateContext</code>
 | 
			
		||||
function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXContext glXCreateContext(Display *dpy, XVisualInfo *visInfo, GLXContext shareList, Bool direct)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>visInfo</code></dt>
 | 
			
		||||
    <dd>The visual as returned by glXChooseVisual.</dd>
 | 
			
		||||
    <dt><code>shareList</code></dt>
 | 
			
		||||
    <dd>If non-zero, texture objects and display lists are shared with
 | 
			
		||||
the named rendering context. If zero, texture objects and display lists
 | 
			
		||||
will (initially) be private to this context. They may be shared when a
 | 
			
		||||
subsequent context is created.</dd>
 | 
			
		||||
    <dt><code>direct</code></dt>
 | 
			
		||||
    <dd>Specifies whether direct or indirect rendering is desired. For
 | 
			
		||||
Mini GLX this value is ignored but it should be set to <code>True</code>.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>glXCreateContext</code> will return a GLXContext handle if it
 | 
			
		||||
succeeds or zero if it fails due to invalid parameter or insufficient
 | 
			
		||||
resources.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.5 Binding a Rendering Context</h2>
 | 
			
		||||
<p>The final step before beginning OpenGL rendering is to bind (i.e.
 | 
			
		||||
activate) a rendering context and drawing surface with the
 | 
			
		||||
glXMakeCurrent function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Bool glXMakeCurrent(Display *dpy, GLXDrawable drawable, GLXContext ctx)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>drawable</code></dt>
 | 
			
		||||
    <dd>The window or drawable to bind to the rendering context. This
 | 
			
		||||
should be the value returned by XCreateWindow.</dd>
 | 
			
		||||
    <dt><code>ctx</code></dt>
 | 
			
		||||
    <dd>The rendering context to bind, as returned by glXCreateContext.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>If glXMakeCurrent succeeds True is returned.  Otherwise False is
 | 
			
		||||
returned to indicate an invalid display, window or context parameter.</p>
 | 
			
		||||
<p>After the rendering context has been bound to the drawing surface
 | 
			
		||||
OpenGL rendering can begin.</p>
 | 
			
		||||
<p>The current rendering context may be unbound by calling
 | 
			
		||||
glXMakeCurrent with the window and context parameters set to zero.</p>
 | 
			
		||||
<p>An application may create any number of rendering contexts and bind
 | 
			
		||||
them as needed. Note that binding a rendering context is generally not a
 | 
			
		||||
light-weight operation.  Most simple OpenGL applications create
 | 
			
		||||
only one rendering context.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.6 Color Buffer Swapping</h2>
 | 
			
		||||
<p>A double buffered window has two color buffers: a front buffer and a
 | 
			
		||||
back buffer.  Normally, rendering is directed to the back buffer while
 | 
			
		||||
the front buffer is displayed.  When rendering of a frame is finished
 | 
			
		||||
the front and back buffers are swapped to provide the illusion of
 | 
			
		||||
instanteous screen updates.</p>
 | 
			
		||||
<p>The color buffers for a particular window (i.e. drawable) may be
 | 
			
		||||
swapped with the glXSwapBuffers command:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void glXSwapBuffers(Display *dpy, GLXDrawable drawable)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
Any pending rendering commands will be completed before the buffer swap
 | 
			
		||||
takes place.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Calling glXSwapBuffers on a window which is single-buffered has no
 | 
			
		||||
effect.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.7 Releasing Resources</h2>
 | 
			
		||||
<h3>3.7.1 Releasing Rendering Contexts</h3>
 | 
			
		||||
<p>A rendering context may be destroyed by calling glXDestroyContext:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void glXDestroyContext(Display *dpy, GLXContext ctx)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.2 Releasing Windows</h3>
 | 
			
		||||
<p>A window may be destroyed by calling XDestroyWindow:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XDestroyWindow(Display *dpy, Window window)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.3 Releasing Visuals</h3>
 | 
			
		||||
<p>An XVisualInfo object may be freed by calling XFree:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XFree(void *data)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.4 Releasing Colormaps</h3>
 | 
			
		||||
<p>A colormap may be freed by calling XFreeColormap:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XFreeColormap(Display *dpy, Colormap colormap)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.4 Releasing Display Resources</h3>
 | 
			
		||||
<p>When the application is about to exit, the resources associated with
 | 
			
		||||
the graphics system can be released by calling XCloseDisplay:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XCloseDisplay(Display *dpy)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The display handle becomes invalid at this point.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.8 Query Functions</h2>
 | 
			
		||||
<h3>3.8.1 Querying Available Visuals</h3>
 | 
			
		||||
A list of all available visuals can be obtained with the XGetVisualInfo
 | 
			
		||||
function:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"><code>XVisualInfo
 | 
			
		||||
*XGetVisualInfo(Display *dpy, long vinfo_mask, XVisualInfo
 | 
			
		||||
*vinfo_template, int *nitems_return)<br>
 | 
			
		||||
</code></div>
 | 
			
		||||
<br>
 | 
			
		||||
The parameters are as follows:<br>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>vinfo_mask</code></dt>
 | 
			
		||||
    <dd>A bitmask indicating which fields of the vinfo_template are to
 | 
			
		||||
be matched.  The value must be VisualScreenMask.</dd>
 | 
			
		||||
    <dt><code>vinfo_template</code></dt>
 | 
			
		||||
    <dd>A template whose fields indicate which visual attributes must
 | 
			
		||||
be matched by the results.  The screen field of this structure must
 | 
			
		||||
be zero.</dd>
 | 
			
		||||
    <dt><code>nitems_return</code></dt>
 | 
			
		||||
    <dd>Returns the number of visuals returned. </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
The return value is the address of an array of all available visuals.<br>
 | 
			
		||||
<br>
 | 
			
		||||
An example of using XGetVisualInfo to get all available visuals follows:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"><code>XVisualInfo visTemplate, *results;</code><br>
 | 
			
		||||
<code>int numVisuals;</code><br>
 | 
			
		||||
<code>Display *dpy = XOpenDisplay(NULL);</code><br>
 | 
			
		||||
<code>visTemplate.screen = 0;</code><br>
 | 
			
		||||
<code>results = XGetVisualInfo(dpy, VisualScreenMask, &visTemplate,
 | 
			
		||||
&numVisuals);</code><br>
 | 
			
		||||
<code></code></div>
 | 
			
		||||
<br>
 | 
			
		||||
<h3>3.8.2 Querying Visual Attributes</h3>
 | 
			
		||||
<p>The GLX attributes of an X visual may be queried with the
 | 
			
		||||
glXGetConfig function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>int glXGetConfig(Display *dpy, XVisualInfo *vis, int attribute, int *value)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>vis</code></dt>
 | 
			
		||||
    <dd>The visual, as returned by glXChooseVisual.</dd>
 | 
			
		||||
    <dt><code>attribute</code></dt>
 | 
			
		||||
    <dd>The attribute to query.  The attributes are listed below.</dd>
 | 
			
		||||
    <dt><code>value</code></dt>
 | 
			
		||||
    <dd>Pointer to an integer in which the result of the query will be
 | 
			
		||||
stored. </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The return value will be zero if no error occurs.<code>
 | 
			
		||||
 GLX_INVALID_ATTRIBUTE</code> will be returned if the attribute
 | 
			
		||||
parameter is invalid.<code>  GLX_BAD_VISUAL</code> will be returned
 | 
			
		||||
if the XVisualInfo parameter is invalid.</p>
 | 
			
		||||
<p>The following attributes may be queried:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>GLX_USE_GL</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> or <code>False</code> to
 | 
			
		||||
indicate if OpenGL rendering is supported with the visual.  Mini GLX
 | 
			
		||||
always return <code>True</code>.</dd>
 | 
			
		||||
    <dt><code>GLX_RGBA</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> for RGBA visuals or <code>False</code>
 | 
			
		||||
for color index visuals.</dd>
 | 
			
		||||
    <dt><code>GLX_DOUBLEBUFFER</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> if the visual has two
 | 
			
		||||
color buffers or <code>False</code> if the visual has one color buffer.</dd>
 | 
			
		||||
    <dt><code>GLX_RED_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of red bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_GREEN_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of green bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_BLUE_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of blue bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_ALPHA_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of alpha bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_DEPTH_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of bits per Z value.</dd>
 | 
			
		||||
    <dt><code>GLX_STENCIL_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of bits per stencil value.<br>
 | 
			
		||||
      <br>
 | 
			
		||||
    </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.8.3 Querying the Current Rendering Context</h3>
 | 
			
		||||
<p>The current rendering context can be queried with
 | 
			
		||||
glXGetCurrentContext: </p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXContext glXGetCurrentContext(void)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>Zero will be returned if no context is currently bound.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h3>3.8.4 Querying the Current Drawable</h3>
 | 
			
		||||
<p>The current drawable (i.e. window or drawing surface) can be queried
 | 
			
		||||
with glXGetCurrentDrawable:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXDrawable glXGetCurrentDrawable(void)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>Zero will be returned if no drawable is currently bound.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h3>3.8.5 Function Address Queries</h3>
 | 
			
		||||
<p>The glXGetProcAddress function will return the address of any
 | 
			
		||||
available OpenGL or Mini GLX function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void *glXGetProcAddress(const GLubyte *procName)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>If <code>procName</code> is a valid function name, a pointer to that
 | 
			
		||||
function will be returned.  Otherwise, NULL will be returned.</p>
 | 
			
		||||
<p>The purpose of glXGetProcAddress is to facilitate using future
 | 
			
		||||
extensions to OpenGL or Mini GLX.  If a future version of the library
 | 
			
		||||
adds new extension functions they'll be accessible via
 | 
			
		||||
glXGetProcAddress. The alternative is to hard-code calls to the new
 | 
			
		||||
functions in the application but doing so will prevent linking the
 | 
			
		||||
application with older versions of the library.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.9 Versioning</h2>
 | 
			
		||||
The Mini GLX version can be queried at run time with glXQueryVersion:
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Bool glXQueryVersion(Display *dpy, int *major, int *minor)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>major</code> will be set to the major version number and<code>minor</code>
 | 
			
		||||
will be set to the minor version number.<code>True</code> will be
 | 
			
		||||
returned if the function succeeds. <code>False</code> will be returned
 | 
			
		||||
if the function fails due to invalid parameters. The <code>dpy</code>
 | 
			
		||||
argument is currently ignored, but should be the value returned by
 | 
			
		||||
XOpenDisplay.</p>
 | 
			
		||||
<p>At compile time, the Mini GLX interface version can be tested with
 | 
			
		||||
the MINI_GLX_VERSION_1_<i>x</i> preprocessor tokens. For example, if
 | 
			
		||||
version 1.0 of Mini GLX is supported, then<code> MINI_GLX_VERSION_1_0</code>
 | 
			
		||||
will be defined. If version 1.1 of Mini GLX is supported, then<code>
 | 
			
		||||
MINI_GLX_VERSION_1_1</code> will be defined.</p>
 | 
			
		||||
<p>At the time of writing the current Mini GLX version is 1.0.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>4.0 Interoperability with GLX and Xlib</h1>
 | 
			
		||||
While Mini GLX strives to be compatible with GLX and Xlib there are
 | 
			
		||||
some unavoidable differences which must be taken into consideration.<br>
 | 
			
		||||
<h2>4.1 Public vs Private Structures</h2>
 | 
			
		||||
The structure of many X data types is public.  For example, the <code>Display</code>
 | 
			
		||||
data type is defined as a structure in /usr/include/X11/Xlib.h and
 | 
			
		||||
programmers may access any fields of that structure at will.  Mini
 | 
			
		||||
GLX also defines a Display data type but its fields are hidden and not
 | 
			
		||||
visiblein <code>miniglx.h</code>.  Duplicating the Xlib
 | 
			
		||||
declaration for the <code>Display</code> data type in minigl.h would
 | 
			
		||||
require defining a large number of other superfluous Xlib datatypes.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Mini GLX users are discouraged from directly accessing the fields of
 | 
			
		||||
Xlib data types to maximize portability - though this is unavoidable to
 | 
			
		||||
some extent.  For example, the <code>XVisualInfo</code> and <code>XSetWindowAtttributes</code>
 | 
			
		||||
data types must be completely public.
 | 
			
		||||
<h2>4.2 Macros</h2>
 | 
			
		||||
In some cases, Xlib defines macros which are meant to be used instead
 | 
			
		||||
of direct structure accesses.  For example, the <code>RootWindow(dpy,
 | 
			
		||||
screen)</code> macro returns the root window for a given screen on a
 | 
			
		||||
given display.  Unfortunately, macros do nothing to aid in ABI
 | 
			
		||||
compatibility since they are resolved at compile time instead of at
 | 
			
		||||
link/run time.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Mini GLX also defines a <code>RootWindow</code> macro since it's
 | 
			
		||||
essential for creating windows.  But the implementation of this
 | 
			
		||||
macro by Xlib and Mini GLX is completely different.<br>
 | 
			
		||||
<h2>4.3 Summary</h2>
 | 
			
		||||
Because Xlib and Mini GLX define data types and macros differently,
 | 
			
		||||
Mini GLX applications must be recompiled when retargeting Mini GLX or
 | 
			
		||||
native Xlib/GLX.  That is, applications can't simply be re-linked
 | 
			
		||||
because of ABI incompatibilities.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Nevertheless, the fact that Mini GLX programs can be recompiled for
 | 
			
		||||
Xlib and GLX increases portability and flexibility for testing and
 | 
			
		||||
prototyping.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h1>5.0 Example Program</h1>
 | 
			
		||||
<p>This section shows an example program which uses the Mini GLX
 | 
			
		||||
interface. The program simply draws several frames of a rotating square.<br>
 | 
			
		||||
</p>
 | 
			
		||||
<p>The program may be compiled for use with Xlib/GLX or Mini GLX by
 | 
			
		||||
setting the <code>USE_MINIGLX</code> token to 0 or 1, respectively.
 | 
			
		||||
 Note that the only difference is the header files which are
 | 
			
		||||
included.<br>
 | 
			
		||||
</p>
 | 
			
		||||
<p> </p>
 | 
			
		||||
<pre><code><br></code>#define USE_MINIGLX 1  /* 1 = use Mini GLX, 0 = use Xlib/GLX */<br><br>#include <stdio.h><br>#include <stdlib.h><br>#include <GL/gl.h><br><br>#if USE_MINIGLX<br>#include <GL/miniglx.h><br>#else<br>#include <GL/glx.h><br>#include <X11/Xlib.h><br>#endif<br><br><code>/*<br> * Create a simple double-buffered RGBA window.<br> */<br>static Window<br>MakeWindow(Display * dpy, unsigned int width, unsigned int height)<br>{<br>   int visAttributes[] = {<br>      GLX_RGBA,<br>      GLX_RED_SIZE, 1,<br>      GLX_GREEN_SIZE, 1,<br>      GLX_BLUE_SIZE, 1,<br>      GLX_DOUBLEBUFFER,<br>      None<br>   };<br>   XSetWindowAttributes attr;<br>   unsigned long attrMask;<br>   Window root;<br>   Window win;<br>   GLXContext ctx;<br>   XVisualInfo *visinfo;<br><br>   root = RootWindow(dpy, 0);<br><br>   /* Choose GLX visual / pixel format */<br>   visinfo = glXChooseVisual(dpy, 0, visAttributes);<br>   if (!visinfo) {<br>      printf("Error: couldn't get an RGB, Double-buffered visual\n");<br>      exit(1);<br>   }<br><br>   /* Create the window */<br>   attr.background_pixel = 0;<br>   attr.border_pixel = 0;<br>   attr.colormap = XCreateColormap(dpy, root, visinfo->visual, AllocNone);<br>   attrMask = CWBackPixel | CWBorderPixel | CWColormap;<br>   win = XCreateWindow(dpy, root, 0, 0, width, height,<br>		       0, visinfo->depth, InputOutput,<br>		       visinfo->visual, attrMask, &attr);<br>   if (!win) {<br>      printf("Error: XCreateWindow failed\n");<br>      exit(1);<br>   }<br><br>   /* Display the window */<br>   XMapWindow(dpy, win);<br><br>   /* Create GLX rendering context */<br>   ctx = glXCreateContext(dpy, visinfo, NULL, True);<br>   if (!ctx) {<br>      printf("Error: glXCreateContext failed\n");<br>      exit(1);<br>   }<br><br>   /* Bind the rendering context and window */<br>   glXMakeCurrent(dpy, win, ctx);<br><br>   return win;<br>}<br><br><br>/*<br> * Draw a few frames of a rotating square.<br> */<br>static void<br>DrawFrames(Display * dpy, Window win)<br>{<br>   int angle;<br>   glShadeModel(GL_FLAT);<br>   glClearColor(0.5, 0.5, 0.5, 1.0);<br>   for (angle = 0; angle < 360; angle += 10) {<br>      glClear(GL_COLOR_BUFFER_BIT);<br>      glColor3f(1.0, 1.0, 0.0);<br>      glPushMatrix();<br>      glRotatef(angle, 0, 0, 1);<br>      glRectf(-0.8, -0.8, 0.8, 0.8);<br>      glPopMatrix();<br>      glXSwapBuffers(dpy, win);<br>   }<br>}<br><br><br>int<br>main(int argc, char *argv[])<br>{<br>   Display *dpy;<br>   Window win;<br><br>   dpy = XOpenDisplay(NULL);<br>   if (!dpy) {<br>      printf("Error: XOpenDisplay failed\n");<br>      return 1;<br>   }<br><br>   win = MakeWindow(dpy, 300, 300);<br><br>   DrawFrames(dpy, win);<br><br>   return 0;<br>}<br></code></pre>
 | 
			
		||||
<br>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
@@ -1,10 +1,25 @@
 | 
			
		||||
 | 
			
		||||
                     3Dfx Glide device driver for Mesa 3.3
 | 
			
		||||
				(see below for FAQ)
 | 
			
		||||
                            3Dfx Glide device driver
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Warning: this document is rather out of date, but most of the information
 | 
			
		||||
should still apply.
 | 
			
		||||
 | 
			
		||||
Info for Mesa 4.1
 | 
			
		||||
-----------------
 | 
			
		||||
 | 
			
		||||
The 3dfx Glide driver in Mesa is disabled by default.  Not too many people
 | 
			
		||||
use this driver anymore and at some point down the road it will be dropped.
 | 
			
		||||
 | 
			
		||||
To use/enable the Glide driver either do this:
 | 
			
		||||
 | 
			
		||||
'./configure --with-glide=DIR'    Where DIR is the location of Glide, like
 | 
			
		||||
                                  /usr/ or /usr/local
 | 
			
		||||
 | 
			
		||||
OR
 | 
			
		||||
 | 
			
		||||
'make linux-x86-glide'     If using the old-style Makefile system.
 | 
			
		||||
 | 
			
		||||
The rest of this file hasn't changed since Mesa 3.3.  Some of it's out of
 | 
			
		||||
date, but some is still valid.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -17,8 +32,6 @@ What do you need ?
 | 
			
		||||
	  under Linux (more information in the "Useful Glide Environment
 | 
			
		||||
	  Variables");
 | 
			
		||||
 | 
			
		||||
	- Mesa 3.1;
 | 
			
		||||
 | 
			
		||||
	- The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine).
 | 
			
		||||
	  The Voodoo2 requires the Glide library 2.51. The Glide 3.1 is not
 | 
			
		||||
	  compatible with the Glide 2.x so it doesn't work with the current
 | 
			
		||||
@@ -27,8 +40,6 @@ What do you need ?
 | 
			
		||||
	- A compiler supported by the Glide library (Micro$oft VC++ (tested),
 | 
			
		||||
	  Watcom (tested), GCC for Linux (tested), etc.);
 | 
			
		||||
 | 
			
		||||
	- A lot of patience, this is an alpha release.
 | 
			
		||||
 | 
			
		||||
	- It's nice to have two monitors - one for your normal graphics
 | 
			
		||||
	  card and one for your 3Dfx card. If something goes wrong with
 | 
			
		||||
	  an application using the 3Dfx hardware you can still see your
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										153
									
								
								docs/README.BEOS
									
									
									
									
									
								
							
							
						
						
									
										153
									
								
								docs/README.BEOS
									
									
									
									
									
								
							@@ -1,65 +1,114 @@
 | 
			
		||||
Mesa-4.0.3 BeOS R5 driver patch
 | 
			
		||||
Version alpha v0.3
 | 
			
		||||
 | 
			
		||||
HOW TO BUILD:
 | 
			
		||||
                         Mesa / BeOS Information
 | 
			
		||||
 | 
			
		||||
1) You need gcc 2.95.3 to be installed: 
 | 
			
		||||
http://www.bebits.com/app/2157
 | 
			
		||||
Check your installed gcc version by running this command from a Terminal:
 | 
			
		||||
gcc -v
 | 
			
		||||
 | 
			
		||||
2) Download Mesa-4.0.3 sources 
 | 
			
		||||
http://prdownloads.sourceforge.net/mesa3d/MesaLib-4.0.3.tar.gz?download
 | 
			
		||||
 | 
			
		||||
3) Extract official 4.0.3 sources code somewhere
 | 
			
		||||
* Introduction
 | 
			
		||||
 | 
			
		||||
4) Then, extract the BeOS driver patch at same place. This will 
 | 
			
		||||
overwrite modified sources and add BeOS-specific ones.
 | 
			
		||||
Mesa 4.1 features a driver for the BeOS.  The driver implements
 | 
			
		||||
a clone of the BGLView class.  This class, derived from BView, allows
 | 
			
		||||
OpenGL rendering into a BeOS window.
 | 
			
		||||
The 4.1 BeOS driver is an update of Brian Paul's BeOS driver released in Mesa 3.1.
 | 
			
		||||
 | 
			
		||||
5) Open a new Terminal window:
 | 
			
		||||
  $ cd /path/to/Mesa-4.0.3/src
 | 
			
		||||
  $ make -f Makefile.BeOS-R5
 | 
			
		||||
Any application which uses the BGLView should be able to use Mesa
 | 
			
		||||
instead of Be's OpenGL without changing any code.
 | 
			
		||||
 | 
			
		||||
6) Take a cup of coffee!
 | 
			
		||||
Since Be's OpenGL implementation (as of R5) is basically just the
 | 
			
		||||
SGI sample implementation, it's pretty slow.  You'll see that Mesa
 | 
			
		||||
is considerably faster.
 | 
			
		||||
 | 
			
		||||
7) When done, you should find a obj.x86/libGL.so
 | 
			
		||||
 | 
			
		||||
8) To test this library as a Be Inc's one:
 | 
			
		||||
- rename /boot/beos/system/lib/libGL.so into libGL.so.r5
 | 
			
		||||
- put/copy obj.x86/libGL.so file into /boot/home/config/lib directory
 | 
			
		||||
- run GLTeapot...
 | 
			
		||||
 | 
			
		||||
To see more information, run your(s) GL app(s) from Terminal:
 | 
			
		||||
  $ export MESA_INFO=1
 | 
			
		||||
  $ export MESA_DEBUG=1
 | 
			
		||||
  $ myGLapp
 | 
			
		||||
  MMX cpu detected.
 | 
			
		||||
  Not testing OS support for SSE, leaving enabled.
 | 
			
		||||
  SSE cpu detected.
 | 
			
		||||
  Mesa GL_VERSION = 1.2 Mesa 4.0.3
 | 
			
		||||
  Mesa GL_RENDERER = BGLView
 | 
			
		||||
  Mesa GL_VENDOR = Brian Paul
 | 
			
		||||
  Mesa GL_EXTENSIONS = GL_ARB_imaging GL_ARB_multitexture 
 | 
			
		||||
  [...]
 | 
			
		||||
  GL_SGIX_shadow GL_SGIX_shadow_ambient
 | 
			
		||||
  Mesa thread-safe: NO
 | 
			
		||||
  Mesa x86-optimized: YES
 | 
			
		||||
  Mesa sparc-optimized: NO    
 | 
			
		||||
* Source Code
 | 
			
		||||
 | 
			
		||||
BUILD ISSUES:
 | 
			
		||||
- If the build stop on math/m_*.c files, you're not using gcc 2.95.3.
 | 
			
		||||
- The Makefile.BeOS-R5 is set currently to build a non-debug x86/mmx/sse/3dnow optimized libGL.so.
 | 
			
		||||
It's a modified BeOS standard makefile, so editing it to follow your needs should be easy...
 | 
			
		||||
- NASM support instead of built-in gcc assembler (GAS) is not supported yet...
 | 
			
		||||
- "Mesa thread-safe: NO" is correct: the Mesa multithread support don't allow to share a gl context 
 | 
			
		||||
between any thread, only give you one thread <-> one context, which is inaccurate under BeOS...  
 | 
			
		||||
The source code for the driver is in Mesa-4.1/src/BeOS/ directory.
 | 
			
		||||
It's not 100% finished at this time but many GLUT-based demos are
 | 
			
		||||
working.  No optimizations have been made at this time.
 | 
			
		||||
 | 
			
		||||
KNOWN LIMITATIONS & BUGS:
 | 
			
		||||
- BeOS driver only support software rendition ATM
 | 
			
		||||
- No BDirectWindow support yet, too. GLLife will not work for this reason.
 | 
			
		||||
- 3dnow support untested
 | 
			
		||||
- GLTeapot: object mouse control don't work
 | 
			
		||||
- GLTeapot: window resizing don't work
 | 
			
		||||
- many others: ALPHA VERSION, remember.
 | 
			
		||||
 | 
			
		||||
philippe.houdoin@free.fr
 | 
			
		||||
 | 
			
		||||
* Compiling
 | 
			
		||||
 | 
			
		||||
Requirements:
 | 
			
		||||
  - gcc version 2.95.3 for BeOS 
 | 
			
		||||
  You can find it here: http://www.bebits.com/app/2157
 | 
			
		||||
 | 
			
		||||
Move to the Mesa-4.x src sub-directory and then type "make -f Makefile.BeOS-R5".
 | 
			
		||||
When it finishes the Mesa based libGL.so library for
 | 
			
		||||
BeOS will be in the Mesa-4.x/src/obj.{x86|ppc}/ directory.
 | 
			
		||||
 | 
			
		||||
To install it as Be's default libGL.so replacement, put it in your 
 | 
			
		||||
/boot/home/config/lib/ directory. All your GL/GLUTapps will use 
 | 
			
		||||
the Mesa based then. 
 | 
			
		||||
 | 
			
		||||
By default, it build a non-debug version library.
 | 
			
		||||
The x86 (MMX, SSE and 3DNOW) optimizations are also supported for x86 target.
 | 
			
		||||
Sorry, Mesa don't have ppc (Altivec) optimizations yet.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Example Programs
 | 
			
		||||
 | 
			
		||||
Look in the Mesa-4.x/BeOS/ directory for one or two BGLView demo
 | 
			
		||||
programs.  They should have been compiled along with the Mesa
 | 
			
		||||
library.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* GLUT
 | 
			
		||||
 | 
			
		||||
A beta version of GLUT 3.7 port for BeOS can be found at 
 | 
			
		||||
http://anobject.com/jehamby/Code/Glut-3.7-x86.zip.
 | 
			
		||||
 
 | 
			
		||||
There's is a 2.5 version in src-glut.beos/, too.
 | 
			
		||||
The original distribution can be obtained from
 | 
			
		||||
http://home.beoscentral.com/jehamby/Glut-3.5-x86.zip
 | 
			
		||||
 | 
			
		||||
They are special version of GLUT adapted for the BeOS.  I don't
 | 
			
		||||
believe Mark Kilgard's normal GLUT distribution includes BeOS
 | 
			
		||||
support.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Special Features
 | 
			
		||||
 | 
			
		||||
Mesa's implementation of the BGLView class has an extra member
 | 
			
		||||
function:  CopySubBufferMESA().  It basically works like SwapBuffers()
 | 
			
		||||
but it only copies a sub region from the back buffer to the front
 | 
			
		||||
buffer.  This is a useful optimization for some applications.
 | 
			
		||||
If you use this method in your code be sure that you check at runtime
 | 
			
		||||
that you're actually using Mesa (with glGetString) so you don't
 | 
			
		||||
cause a fatal error when running with Be's OpenGL.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Work Left To Do
 | 
			
		||||
 | 
			
		||||
BDirectWindow single buffering support is not implemented yet.
 | 
			
		||||
 | 
			
		||||
Color index mode is not implemented yet.
 | 
			
		||||
 | 
			
		||||
Reading pixels from the front buffer not implemented yet.
 | 
			
		||||
 | 
			
		||||
There is also a BGLScreen class in BeOS for full-screen OpenGL
 | 
			
		||||
rendering.  This should also be implemented for Mesa.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Old BeOS Driver
 | 
			
		||||
 | 
			
		||||
Mesa 2.6 had an earlier BeOS driver.  It was based on Mesa's Off-screen
 | 
			
		||||
rendering interface, not BGLView.  If you're interested in the older
 | 
			
		||||
driver you should get Mesa 2.6.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* BeOS and Glide
 | 
			
		||||
 | 
			
		||||
Mesa 3.0 supported the 3Dfx/Glide library on Beos.  Download Mesa 3.0
 | 
			
		||||
if interested.  Ideally, the 3Dfx/Glide support should be updated to
 | 
			
		||||
work with the new Mesa 3.1 BGLView implementation.
 | 
			
		||||
 | 
			
		||||
The Glide library hasn't been updated for BeOS R4, to my knowledge, as
 | 
			
		||||
of February, 1999.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: README.BEOS,v 1.7 2002/09/19 16:19:44 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										437
									
								
								docs/README.DJ
									
									
									
									
									
								
							
							
						
						
									
										437
									
								
								docs/README.DJ
									
									
									
									
									
								
							@@ -1,211 +1,226 @@
 | 
			
		||||
			Mesa 4.0 DOS/DJGPP Port v1.1
 | 
			
		||||
			~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Description:
 | 
			
		||||
~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Well, guess what... this is the DOS port of Mesa 4.0.4, for DJGPP fans... Whoa!
 | 
			
		||||
The driver has its origins in ddsample.c, written by Brian Paul and found by me
 | 
			
		||||
in Mesa 3.4.2.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Legal:
 | 
			
		||||
~~~~~~
 | 
			
		||||
 | 
			
		||||
Mesa copyright applies, provided this package is used within Mesa. For anything
 | 
			
		||||
else, see GPL.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Installation:
 | 
			
		||||
~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Unzip and type:
 | 
			
		||||
 | 
			
		||||
	make -f Makefile.DJ [OPTIONS...]
 | 
			
		||||
 | 
			
		||||
Available options:
 | 
			
		||||
 | 
			
		||||
     Environment variables:
 | 
			
		||||
	CPU		optimize for the given processor.
 | 
			
		||||
			default = k6
 | 
			
		||||
	BIG_OPT=1	crazy optimizations; not very useful, though...
 | 
			
		||||
			default = no
 | 
			
		||||
	GLIDE		absolute path to Glide library; used with FX.
 | 
			
		||||
			default = $(TOP)/include/glide3
 | 
			
		||||
	FX=1		build for 3dfx Glide3; use it if you have the Glide
 | 
			
		||||
			SDK (designed for your platform), and, of course, a
 | 
			
		||||
			3dfx card... Note that this disables compilation of
 | 
			
		||||
			actual DMesa code, as Glide does all the stuff!
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_X86=1	optimize for i386.
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_MMX=1	MMX instructions; use only if you assembler/compiler
 | 
			
		||||
			supports MMX instruction set; backwards compatibility
 | 
			
		||||
			with older processors is still preserved.
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_SSE=1	(see HAVE_MMX)
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_3DNOW=1	(see HAVE_MMX)
 | 
			
		||||
			default = no
 | 
			
		||||
 | 
			
		||||
     Targets:
 | 
			
		||||
	all:		build everything
 | 
			
		||||
	libgl:		build GL
 | 
			
		||||
	libglu:		build GLU
 | 
			
		||||
	libglut:	build GLUT
 | 
			
		||||
	clean:		remove object files
 | 
			
		||||
	realclean:	remove all generated files
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Tested on:
 | 
			
		||||
	CPU:		K6-2 (CXT) @500(412.5) MHz
 | 
			
		||||
	Mainboard:	ViA Apollo VP2/97 w/ 128 MB SDRAM
 | 
			
		||||
	Video card:	PowerColor Evil King3 (Voodoo3 3000) w/ 16384 kB SDRAM
 | 
			
		||||
	DJGPP:		djdev 2.03 + gcc v3.1 + make v3.79.1
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
FAQ:
 | 
			
		||||
~~~~
 | 
			
		||||
 | 
			
		||||
1. Compilation
 | 
			
		||||
 | 
			
		||||
   Q) I tried to run `make' and it exits because `gcc' complains it cannot find
 | 
			
		||||
      some stupid file.
 | 
			
		||||
   A) You need LFN support.
 | 
			
		||||
   A) When compiling for Glide (FX=1), pay attention to Glide path.
 | 
			
		||||
 | 
			
		||||
2. Dynamic modules
 | 
			
		||||
 | 
			
		||||
   Q) What are you mumbling about dynamic modules?
 | 
			
		||||
   A) You must have the DXE2 package (available on SimTel.Net, courtesy of
 | 
			
		||||
      Andrew Zabolotny) installed in order to build the dynamic modules.
 | 
			
		||||
 | 
			
		||||
   Q) I have DXE2, but I couln'd build the `dxe2gen.exe'.
 | 
			
		||||
   Q) I built `dxe2gen.exe', but it doesn't do the job right.
 | 
			
		||||
   A) There is a patched version on my web page.
 | 
			
		||||
 | 
			
		||||
   Q) DXE2 modules give me headaches...
 | 
			
		||||
   A) The DXE2 modules are not compulsory. The static libraries are still built
 | 
			
		||||
      and you can use them in the old-fashioned, classic way. For example:
 | 
			
		||||
	gcc -o OUT.exe IN.c -lglut -lglu -lgl
 | 
			
		||||
 | 
			
		||||
   Q) Okay, DXE2 modules are built. How can I use them?
 | 
			
		||||
   A) Usage of the dynamic modules requires three things:
 | 
			
		||||
	- include DMESADXE.H in one of the sources, so references inside
 | 
			
		||||
	  dynamic modules will get resolved (or use `-include' directive).
 | 
			
		||||
	- link against import libraries (libI*.a) and LIBDL.A, which will do
 | 
			
		||||
	  the dynamic linkage job for you
 | 
			
		||||
	- put the DXEs somewhere along the library path (LD_LIBRARY_PATH) or
 | 
			
		||||
	  in the current directory
 | 
			
		||||
      For example:
 | 
			
		||||
	gcc -o OUT.exe -include dmesadxe.h IN.c -ligl -liglu -liglut -ldl
 | 
			
		||||
 | 
			
		||||
   Q) The application dies with "Abort!" due to unresolved symbols.
 | 
			
		||||
   A) This is bad! Extract the unresolved symbol list from this module. For
 | 
			
		||||
      example:
 | 
			
		||||
	dxe2gen --show-unres gl.dxe > u
 | 
			
		||||
      Check DMESADXE.H; the symbols in `u' must either be present here or be
 | 
			
		||||
      exported from another module that has to be loaded before your faulting
 | 
			
		||||
      one. Then recompile.
 | 
			
		||||
 | 
			
		||||
3. Using Mesa for DJGPP
 | 
			
		||||
 | 
			
		||||
   Q) Does this build work in Win9x?
 | 
			
		||||
   A) Yes.
 | 
			
		||||
 | 
			
		||||
   Q) Does it work under NT (W2k, XP) core?
 | 
			
		||||
   A) Uh... probably not!
 | 
			
		||||
 | 
			
		||||
   Q) I made a simple application and it does nothing. It exits right away. Not
 | 
			
		||||
      even a blank screen.
 | 
			
		||||
   A) The current version supports only RGB[A] modes, for it made no sense to
 | 
			
		||||
      me to endorse color-index (aka palette) modes.
 | 
			
		||||
   A) Single-buffered is not allowed at all. Until I can find a way to use
 | 
			
		||||
      *REAL* hardware acceleration, it won't get implemented.
 | 
			
		||||
   A) Another weird "feature" is that buffer width must be multiple of 4 (I'm a
 | 
			
		||||
      lazy programmer and I found that the easiest way to keep buffer handling
 | 
			
		||||
      at peak performance ;-).
 | 
			
		||||
 | 
			
		||||
   Q) My demo doesn't display text. I know I used the glut font routines!
 | 
			
		||||
   A) Then you probably use GLUT as a DXE. Well, there is no direct access to
 | 
			
		||||
      variables due to the way DXE works. Read the documentation. The author of
 | 
			
		||||
      GLUT took this into account for _WIN32 DLL's only; I don't want to modify
 | 
			
		||||
      his headers. The only workaround is to link GLUT the old way :-(
 | 
			
		||||
 | 
			
		||||
   Q) The DJGPP port of Mesa is so SLOOOW! The Win32 OpenGL performs so much
 | 
			
		||||
      better...
 | 
			
		||||
   A) Is that a question? If you have a Voodoo3/Banshee card, you're lucky. The
 | 
			
		||||
      Glide port is on my web page. If you haven't, sorry; everything is done
 | 
			
		||||
      in software. Suggestions?
 | 
			
		||||
 | 
			
		||||
   Q) I have a super/mega/ultra monitor and all you can do is 60Hz? My eyes are
 | 
			
		||||
      leaking from the orbits...
 | 
			
		||||
   A) If you were compiling for Glide, see Glide info. If not, be aware that
 | 
			
		||||
      refresh rate control works only for VESA 3.0. The environment variable
 | 
			
		||||
      DMESA_REFRESH sets the default screen refresh. For example:
 | 
			
		||||
	set DMESA_REFRESH=75
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
libGLUT (the toolkit):
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Well, this "skeletal" GLUT implementation is not mine. Thanks should go to
 | 
			
		||||
Bernhard Tschirren, Mark Kilgard, Brian Paul and probably others (or probably
 | 
			
		||||
not ;-). I only changed it to be self-standing (Allegro-free). The keyboard,
 | 
			
		||||
mouse and timer drivers were inspired from an old project of mine (D3Xl) and
 | 
			
		||||
fixed with many Allegro "infusions"; I deeply thank to Shawn Hargreaves et co.
 | 
			
		||||
 | 
			
		||||
My keyboard driver used only scancodes, but since GLUT requires ASCII values
 | 
			
		||||
for keys, I borrowed the translation tables (and maybe more) from Allegro.
 | 
			
		||||
Ctrl-Alt-Del (plus Ctrl-Alt-End, for Windows users) will shut down the GLUT
 | 
			
		||||
engine unconditionally: it will raise SIGINT, which in turn will call the
 | 
			
		||||
destructors (let's hope), thus cleaning up your/my mess ;-) NB: since the
 | 
			
		||||
DJGPP guys ensured signal handlers won't go beyond program's space (and since
 | 
			
		||||
dynamic modules shall) the SIGINT can't be hooked (well, it can, but it is
 | 
			
		||||
useless), therefore you must live with the 'Exiting due to signal SIGINT'
 | 
			
		||||
message...
 | 
			
		||||
 | 
			
		||||
The mouse driver is far from complete (lack of positioning, drawing, etc),
 | 
			
		||||
but is enough to make almost all the demos work.
 | 
			
		||||
 | 
			
		||||
The timer is pretty versatile for it supports multiple timers with different
 | 
			
		||||
frequencies. It may not be the most accurate timer in the known universe, but
 | 
			
		||||
I think it's OK. Take this example: you have timer A with a very high rate,
 | 
			
		||||
and then you have timer B with very low rate compared to A; now, A ticks OK,
 | 
			
		||||
but timer B will probably loose precision!
 | 
			
		||||
 | 
			
		||||
As an addition, stdout and stderr are redirected and dumped upon exit. This
 | 
			
		||||
means that printf can be safely called during graphics, but all messages come
 | 
			
		||||
in bulk! A bit of a hack, I know, but I think it's better than to miss them
 | 
			
		||||
at all. "Borrowed" from RHIDE (Robert Hoehne) or SETEDIT (Salvador Eduardo
 | 
			
		||||
Tropea)... I'm not sure.
 | 
			
		||||
 | 
			
		||||
Window creating defaults: 640x480x16 at (0,0), 8-bit stencil, 16-bit accum.
 | 
			
		||||
However, the video mode is chosen in such a way that first window will fit.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
History:
 | 
			
		||||
~~~~~~~~
 | 
			
		||||
 | 
			
		||||
v1.0	mar-2002	initial release
 | 
			
		||||
v1.1	sep-2002	+ added 3dfx Glide3 support
 | 
			
		||||
			+ added refresh rate control
 | 
			
		||||
			+ added fonts in glut
 | 
			
		||||
			* lots of minor changes
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Contact:
 | 
			
		||||
~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Name:   Borca Daniel
 | 
			
		||||
E-mail: dborca@yahoo.com
 | 
			
		||||
WWW:    http://www.geocities.com/dborca/
 | 
			
		||||
			Mesa 5.1 DOS/DJGPP Port v1.4
 | 
			
		||||
			~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Description:
 | 
			
		||||
~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Well, guess what... this is the DOS port of Mesa 5.1, for DJGPP fans... Whoa!
 | 
			
		||||
The driver has its origins in ddsample.c, written by Brian Paul and found by me
 | 
			
		||||
in Mesa 3.4.2.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Legal:
 | 
			
		||||
~~~~~~
 | 
			
		||||
 | 
			
		||||
Mesa copyright applies, provided this package is used within Mesa. For anything
 | 
			
		||||
else, see GPL.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Installation:
 | 
			
		||||
~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Unzip and type:
 | 
			
		||||
 | 
			
		||||
	make -f Makefile.DJ [OPTIONS...]
 | 
			
		||||
 | 
			
		||||
Available options:
 | 
			
		||||
 | 
			
		||||
     Environment variables:
 | 
			
		||||
	CPU		optimize for the given processor.
 | 
			
		||||
			default = pentium
 | 
			
		||||
	GLU=[mesa|sgi]	specify GLU directory; can be `sgi' (requires GNU/C++)
 | 
			
		||||
			or `mesa'.
 | 
			
		||||
			default = mesa
 | 
			
		||||
	GLIDE		path to Glide3 SDK; used with FX.
 | 
			
		||||
			default = $(TOP)/glide3
 | 
			
		||||
	FX=1		build for 3dfx Glide3. Note that this disables
 | 
			
		||||
			compilation of most DMesa code and requires fxMesa.
 | 
			
		||||
			As a consequence, you'll need the DJGPP Glide3
 | 
			
		||||
			library to build any application.
 | 
			
		||||
			default = no
 | 
			
		||||
	MATROX=1	build for Matrox Millennium I (MGA2064W) cards.
 | 
			
		||||
			This is experimental and not intensively tested.
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_X86=1	optimize for i386.
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_MMX=1	allow MMX specializations, provided your assembler
 | 
			
		||||
			supports MMX instruction set. However, the true CPU
 | 
			
		||||
			capabilities are checked at run-time to avoid lockups.
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_SSE=1	(see HAVE_MMX)
 | 
			
		||||
			default = no
 | 
			
		||||
	HAVE_3DNOW=1	(see HAVE_MMX)
 | 
			
		||||
			default = no
 | 
			
		||||
 | 
			
		||||
     Targets:
 | 
			
		||||
	all:		build everything
 | 
			
		||||
	libgl:		build GL
 | 
			
		||||
	libglu:		build GLU
 | 
			
		||||
	libglut:	build GLUT
 | 
			
		||||
	clean:		remove object files
 | 
			
		||||
	realclean:	remove all generated files
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Tested on:
 | 
			
		||||
	CPU:		AMD Athlon XP 1800+
 | 
			
		||||
	Mainboard:	EP-8KTA3 w/ 128 MB SDRAM
 | 
			
		||||
	Video card:	Voodoo5 5500 AGP w/ 64 MB SDRAM
 | 
			
		||||
	DJGPP:		djdev 2.04 + gcc v3.2.2 + make v3.80
 | 
			
		||||
	OS:		DOS and Win98SE
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
FAQ:
 | 
			
		||||
~~~~
 | 
			
		||||
 | 
			
		||||
1. Compilation
 | 
			
		||||
 | 
			
		||||
   Q) `make' barfs and exits because it cannot find some stupid file.
 | 
			
		||||
   A) You need LFN support.
 | 
			
		||||
   A) When compiling for Glide (FX=1), pay attention to Glide path.
 | 
			
		||||
 | 
			
		||||
   Q) Libraries built OK, but linker complains about `vsnprintf' every time I
 | 
			
		||||
      compile some demo.
 | 
			
		||||
   A) Upgrade to DJGPP 2.04.
 | 
			
		||||
   A) Add `vsnprintf.c' to the CORE_SOURCES in `src/Makefile.DJ' (untested!).
 | 
			
		||||
   A) Patch `src/mesa/main/imports.c' with the following line:
 | 
			
		||||
	#define vsnprintf(buf, max, fmt, arg) vsprintf(buf, fmt, arg)
 | 
			
		||||
      This hack should be safe in 90% of the cases, but if anything goes wrong,
 | 
			
		||||
      don't come back to me crying.
 | 
			
		||||
 | 
			
		||||
   Q) `make' complains about DXE3 or something, yet it builds the libraries.
 | 
			
		||||
   A) DXE3 refers to the DJGPP dynamic modules. You'll need either the latest
 | 
			
		||||
      DJGPP distro, or download the separate package from my web page. Read the
 | 
			
		||||
      DXE3 documentation on how to use them.
 | 
			
		||||
   A) When compiling for Glide (FX=1), make sure `glide3x.dxe' can be found in
 | 
			
		||||
      LD_LIBRARY_PATH (or top `lib' directory).
 | 
			
		||||
 | 
			
		||||
2. Using Mesa for DJGPP
 | 
			
		||||
 | 
			
		||||
   Q) DMesa is so SLOOOW! The Win32 OpenGL performs so much better...
 | 
			
		||||
   A) Is that a question? If you have a 3dfx Voodoo Banshee or higher card,
 | 
			
		||||
      you're lucky (check http://sourceforge.net/projects/glide for the DJGPP
 | 
			
		||||
      port). If you have a Matrox Millennium I card, you just MIGHT be lucky...
 | 
			
		||||
      If you haven't, sorry; everything is done in software. Suggestions?
 | 
			
		||||
 | 
			
		||||
   Q) I tried to set refresh rate w/ DMesa, but without success.
 | 
			
		||||
   A) Refresh rate control works only for VESA 3.0. If you were compiling for
 | 
			
		||||
      Glide, see Glide info. If not, sorry!
 | 
			
		||||
 | 
			
		||||
   Q) I made a simple application and it does nothing. It exits right away. Not
 | 
			
		||||
      even a blank screen.
 | 
			
		||||
   A) The pure software drivers (VESA/VGA) support only double-buffered modes.
 | 
			
		||||
   A) Another weird "feature" is that buffer width must be multiple of 8 (I'm a
 | 
			
		||||
      lazy programmer and I found that the easiest way to keep buffer handling
 | 
			
		||||
      at peak performance ;-).
 | 
			
		||||
 | 
			
		||||
   Q) The GLUT is incomplete.
 | 
			
		||||
   A) See below.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
libGLUT (the toolkit):
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Well, this "skeletal" GLUT implementation was taken from AllegGL project and
 | 
			
		||||
heavily changed. Thanks should go to Bernhard Tschirren, Mark Kilgard, Brian
 | 
			
		||||
Paul and probably others (or probably not ;-). GLUT functionality will be
 | 
			
		||||
extended only on an "as needed" basis.
 | 
			
		||||
 | 
			
		||||
GLUT talks to hardware via PC_HW package which was put together from various
 | 
			
		||||
pieces I wrote long time ago. It consists from the keyboard, mouse and timer
 | 
			
		||||
drivers.
 | 
			
		||||
 | 
			
		||||
My keyboard driver used only scancodes; as GLUT requires ASCII values for keys,
 | 
			
		||||
I borrowed the translation tables (and maybe more) from Allegro -- many thanks
 | 
			
		||||
to Shawn Hargreaves et co. Ctrl-Alt-Del (plus Ctrl-Alt-End, for Windows users)
 | 
			
		||||
will shut down the GLUT engine unconditionally: it will raise SIGINT, which in
 | 
			
		||||
turn will (hopefully) call the destructors, thus cleaning up your/my mess ;-)
 | 
			
		||||
NB: since the DJGPP guys ensured signal handlers won't go beyond program's
 | 
			
		||||
space (and since dynamic modules shall) the SIGINT can't be hooked (well, it
 | 
			
		||||
can, but it is useless), therefore you must live with the 'Exiting due to
 | 
			
		||||
signal SIGINT' message...
 | 
			
		||||
 | 
			
		||||
The mouse driver is far from complete (lack of drawing, etc), but is enough to
 | 
			
		||||
make almost all the demos work. Supports the CuteMouse WheelAPI.
 | 
			
		||||
 | 
			
		||||
The timer is pretty versatile for it supports multiple timers with different
 | 
			
		||||
frequencies. While not being the most accurate timer in the known universe, I
 | 
			
		||||
think it's OK. Take this example: you have timer A with a very high rate, and
 | 
			
		||||
then you have timer B with very low rate compared to A; now, A ticks OK, but
 | 
			
		||||
timer B will probably loose precision!
 | 
			
		||||
 | 
			
		||||
As an addition, stdout and stderr are redirected and dumped upon exit. This
 | 
			
		||||
means that `printf' can be safely called during graphics. A bit of a hack, I
 | 
			
		||||
know, because all messages come in bulk, but I think it's better than nothing.
 | 
			
		||||
"Borrowed" from LIBRHUTI (Robert Hoehne).
 | 
			
		||||
 | 
			
		||||
Window creating defaults: (0, 0, 300, 300), 16bpp. However, the video mode is
 | 
			
		||||
chosen in such a way that first window will fit. If you need high resolution
 | 
			
		||||
with small windows, set initial position far to the right (or way down); then
 | 
			
		||||
you can move them back to any position right before the main loop.
 | 
			
		||||
 | 
			
		||||
The following environment variables can customize GLUT behaviour:
 | 
			
		||||
	GLUT_FPS		- print frames/second statistics to stderr
 | 
			
		||||
	DMESA_GLUT_REFRESH	- set vertical screen refresh rate (VESA3)
 | 
			
		||||
	DMESA_GLUT_BPP		- set default bits per pixel (VGA needs 8)
 | 
			
		||||
	DMESA_GLUT_ALPHA	- set default alpha bits (8)
 | 
			
		||||
	DMESA_GLUT_DEPTH	- set default depth bits (16)
 | 
			
		||||
	DMESA_GLUT_STENCIL	- set default stencil bits (8)
 | 
			
		||||
	DMESA_GLUT_ACCUM	- set default accum bits (16)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
History:
 | 
			
		||||
~~~~~~~~
 | 
			
		||||
 | 
			
		||||
v1.0 (mar-2002)
 | 
			
		||||
	initial release
 | 
			
		||||
 | 
			
		||||
v1.1 (sep-2002)
 | 
			
		||||
	+ added 3dfx Glide3 support
 | 
			
		||||
	+ added refresh rate control
 | 
			
		||||
	+ added fonts in GLUT
 | 
			
		||||
	* lots of minor changes
 | 
			
		||||
 | 
			
		||||
v1.2 (nov-2002)
 | 
			
		||||
	* synced w/ Mesa-4.1
 | 
			
		||||
	- removed dmesadxe.h
 | 
			
		||||
 | 
			
		||||
v1.3 (mar-2003)
 | 
			
		||||
	+ enabled OpenGL 1.4 support
 | 
			
		||||
	+ added MMX clear/blit routines
 | 
			
		||||
	+ enabled SGI's GLU compilation
 | 
			
		||||
	+ added samples makefile
 | 
			
		||||
	+ added new GLUT functions
 | 
			
		||||
	+ added color-index modes
 | 
			
		||||
	+ added Matrox Millennium MGA2064W driver
 | 
			
		||||
	+ added 8bit FakeColor (thanks to Neil Funk)
 | 
			
		||||
	+ added VGA support (to keep Ben Decker happy)
 | 
			
		||||
	! fixed some compilation errors (reported by Chan Kar Heng)
 | 
			
		||||
	* optimized driver for faster callback access... yeah, right :)
 | 
			
		||||
	* overhauled virtual buffer and internal video drivers
 | 
			
		||||
	* better fxMesa integration
 | 
			
		||||
	* revamped GLUT
 | 
			
		||||
	* switched to DXE3
 | 
			
		||||
 | 
			
		||||
v1.4 (oct-2003)
 | 
			
		||||
	+ enabled GLUT fonts with DXE
 | 
			
		||||
	+ truly added multi-window support in GLUT (for Adrian Woodward)
 | 
			
		||||
	* accomodated makefiles with the new sourcetree
 | 
			
		||||
	* fixed some ALPHA issues
 | 
			
		||||
	x hacked and slashed the 3dfx driver (w/ help from Hiroshi Morii)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Contact:
 | 
			
		||||
~~~~~~~~
 | 
			
		||||
 | 
			
		||||
Name:   Borca Daniel
 | 
			
		||||
E-mail: dborca@users.sourceforge.net
 | 
			
		||||
WWW:    http://www.geocities.com/dborca/
 | 
			
		||||
 
 | 
			
		||||
@@ -1,59 +1,52 @@
 | 
			
		||||
File: docs/README.WIN32
 | 
			
		||||
 | 
			
		||||
Last updated: Aug 15, 2002 - Karl Schultz - kschultz@users.sourceforge.net
 | 
			
		||||
Last updated: Sep 18, 2003 - Karl Schultz - kschultz@users.sourceforge.net
 | 
			
		||||
 | 
			
		||||
Quick Start
 | 
			
		||||
 | 
			
		||||
If you have Microsoft Visual C++ 6.0 installed, simply go to the top directory
 | 
			
		||||
of the Mesa distribution and type 'nmake -f Makefile.win NODEBUG=1' for
 | 
			
		||||
an optimized build.  Note that you may have to run ...VC98/BIN/VCVARS32.BAT
 | 
			
		||||
to set up the appropriate compiler environment variables.
 | 
			
		||||
Unzip both ZIP files (MesaLib and MesaDemos) into the same directory.
 | 
			
		||||
The libs and demos build separately, so if you do not care about the
 | 
			
		||||
demos, you do not have to unzip that zip file.  But if you do, it does
 | 
			
		||||
need to be unzipped into the same directory as the lib zip file because
 | 
			
		||||
the demos depend on the libs.
 | 
			
		||||
 | 
			
		||||
The build system has been changed to use Microsoft Visual Studio project
 | 
			
		||||
workspaces and projects.  Makefiles are no longer shipped or supported, but
 | 
			
		||||
can be generated from the projects using Visual Studio.
 | 
			
		||||
 | 
			
		||||
Details and Notes
 | 
			
		||||
 | 
			
		||||
- Building Mesa as noted above should visit and build the following:
 | 
			
		||||
  src        MesaGL.dll, MesaGL.lib, osmesa.dll, osmesa.lib
 | 
			
		||||
  si-glu     MesaGLU.dll, MesaGLU.lib
 | 
			
		||||
  src-glut   glut32.dll, glut32.lib
 | 
			
		||||
  demos      a handful of demo executables.
 | 
			
		||||
- To build the Mesa libraries, open the Mesa.dsw workspace file
 | 
			
		||||
  in the top directory.  You can build each project one-by-one,
 | 
			
		||||
  or build the glut project to build everything except osmesa,
 | 
			
		||||
  which needs to be built separately.  The build process will
 | 
			
		||||
  create a lib directory in the top directory and will put the
 | 
			
		||||
  following files there:
 | 
			
		||||
	OPENGL32.LIB, GLU32.LIB, GLUT32.LIB, OSMESA32.LIB
 | 
			
		||||
	OPENGL32.DLL, GLU32.DLL, GLUT32.DLL, OSMESA32.DLL
 | 
			
		||||
 | 
			
		||||
- After building, you can copy the above DLL files to a place in your PATH
 | 
			
		||||
  such as $SystemRoot/SYSTEM32.  If you don't like putting things in a
 | 
			
		||||
  system directory, place them in the same directory as the executable(s).
 | 
			
		||||
  For example, you can copy the DLL files to the demos directory if you
 | 
			
		||||
  just want to run the demos. The build process places the DLL and LIB files
 | 
			
		||||
  in the ./lib directory.  The makefile creates this directory if it does 
 | 
			
		||||
  not already exist.
 | 
			
		||||
  Be careful about accidentially overwriting files of the same name in
 | 
			
		||||
  the SYSTEM32 directory.
 | 
			
		||||
 | 
			
		||||
- The make targets 'clean' and 'clobber' will remove objects and libraries.
 | 
			
		||||
  But the files in ./lib are never cleaned.
 | 
			
		||||
- Build the demos by opening the appropriate *.dsw file in the
 | 
			
		||||
  progs directory tree.  For example, to build the demos, use
 | 
			
		||||
  progs/demos/Windows/demos.dsw.  The Windows directory contains
 | 
			
		||||
  the workspace and all the projects for each demo program.  Each
 | 
			
		||||
  project places the executable in the same directory as its source
 | 
			
		||||
  code, which is required for some demos.
 | 
			
		||||
 | 
			
		||||
- The make target 'install' will take its best shot at copying DLL files,
 | 
			
		||||
  LIB files, and headers to the right places.  I strongly suggest that
 | 
			
		||||
  you examine the makefiles to make sure that 'install' doesn't do anything
 | 
			
		||||
  that you can't live with.
 | 
			
		||||
 | 
			
		||||
- The makefiles are designed to work with Microsoft's NMAKE, and do,
 | 
			
		||||
  unfortunately, have some Microsoft-specific things in them.  If you
 | 
			
		||||
  would like to use gcc or some other build tools like the Cygnus tools,
 | 
			
		||||
  then you will have to hack the makefiles to make them work with your
 | 
			
		||||
  tools.  I'm sorry about this; I wasn't motivated to make this any
 | 
			
		||||
  different, but if you end up modifying the makefiles for your tools,
 | 
			
		||||
  you can send me the changes and I can apply the changes to the 
 | 
			
		||||
  source tree.
 | 
			
		||||
 | 
			
		||||
- There are no Microsoft Visual Studio project files.  However, these
 | 
			
		||||
  should be very easy to create.  One can use the compiler and linker
 | 
			
		||||
  options found in the makefiles to make quick progress in creating
 | 
			
		||||
  projects.
 | 
			
		||||
- The demo projects also copy the Mesa library DLL files from the lib
 | 
			
		||||
  directory into the same directory as the demo executables, so that
 | 
			
		||||
  the demos use the Mesa libs you just built.
 | 
			
		||||
 | 
			
		||||
- The DLL files are built so that the external entry points use the
 | 
			
		||||
  stdcall calling convention.
 | 
			
		||||
 | 
			
		||||
- Static LIB files are not built.  The LIB files that are built with
 | 
			
		||||
  the current makefiles are the linker import files associated with
 | 
			
		||||
  the DLL files.  If static LIB's are desired, it should not be too
 | 
			
		||||
  difficult to modify the makefiles to generate them.
 | 
			
		||||
  are the linker import files associated with the DLL files.  
 | 
			
		||||
 | 
			
		||||
- The si-glu sources are used to build the GLU libs.  This was done
 | 
			
		||||
  mainly to get the better tessellator code.
 | 
			
		||||
@@ -71,9 +64,9 @@ Details and Notes
 | 
			
		||||
 | 
			
		||||
- There is DirectDraw support in the Windows driver, updated by
 | 
			
		||||
  Daniel Slater.  You'll need to uncomment the #define DDRAW line
 | 
			
		||||
  in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries
 | 
			
		||||
  in src/Makefile.win.  On some systems, you will acheive significantly
 | 
			
		||||
  higher framerates with DirectDraw.
 | 
			
		||||
  in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries.
 | 
			
		||||
  On some systems, you will acheive significantly higher framerates 
 | 
			
		||||
  with DirectDraw.
 | 
			
		||||
 | 
			
		||||
- Some of the more specialized code like FX drivers, stereo, and
 | 
			
		||||
  parallel support isn't compiled or tested.  I left much of this
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
 | 
			
		||||
                      Mesa 4.0.4 Unix/X11 Information
 | 
			
		||||
                          Mesa Unix/X11 Information
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -18,21 +18,15 @@ There are two ways to compile Mesa on Unix/X11 systems:
 | 
			
		||||
    the top-level Makefile and Make-config files.  There are instructions in
 | 
			
		||||
    each file.
 | 
			
		||||
 | 
			
		||||
    When finished, the Mesa libraries will be in the Mesa-x.y/lib/ directory.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
2. The new way:
 | 
			
		||||
    Type './configure' and then 'make'.  This uses GNU autoconfig.
 | 
			
		||||
    Run 'make check' to build the demos.
 | 
			
		||||
    See docs/INSTALL for more details.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
The top-level makefile will execute the makefiles in a number of sub-
 | 
			
		||||
directories.  When finished, the Mesa libraries will be in the Mesa-4.0.4/lib/
 | 
			
		||||
directory.  A few GLUT demos in the demos/ directory should be ready to run.
 | 
			
		||||
 | 
			
		||||
If you also downloaded and unpacked the demos there should be executables
 | 
			
		||||
in the "xdemos/", "samples/", and "book/" directories for you to try out.
 | 
			
		||||
 | 
			
		||||
If you have compilation problems you should try to fix them and return the
 | 
			
		||||
patches to the author.
 | 
			
		||||
    When finished, the Mesa libraries will be in the Mesa-x.y/src/.libs/,
 | 
			
		||||
    Mesa-x.y/si-glu/.libs, etc directories.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Notes on assembly language optimizations:
 | 
			
		||||
@@ -256,15 +250,9 @@ HPCR glClear(GL_COLOR_BUFFER_BIT) dithering
 | 
			
		||||
   to HP systems with the HPCR (Color Recovery) system.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Extensions:
 | 
			
		||||
   The following OpenGL GLX extensions are currently implemented:
 | 
			
		||||
 | 
			
		||||
      GLX_EXT_visual_info - GLX visual and transparent pixel extension
 | 
			
		||||
      GLX_EXT_visual_rating - GLX visual caveats
 | 
			
		||||
 | 
			
		||||
   For detailed information about the extensions see www.opengl.org
 | 
			
		||||
 | 
			
		||||
   There are four Mesa-specific GL/GLX extensions at this time.
 | 
			
		||||
Extensions
 | 
			
		||||
==========
 | 
			
		||||
   There are three Mesa-specific GLX extensions at this time.
 | 
			
		||||
 | 
			
		||||
   GLX_MESA_pixmap_colormap 
 | 
			
		||||
 | 
			
		||||
@@ -323,4 +311,4 @@ Summary of X-related environment variables:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: README.X11,v 3.8.2.4 2002/09/03 17:50:21 brianp Exp $
 | 
			
		||||
$Id: README.X11,v 3.10 2003/03/08 17:38:57 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
@@ -19,4 +19,4 @@ see the VERSIONS file.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-3.4,v 1.1.4.1 2002/03/23 02:36:52 brianp Exp $
 | 
			
		||||
$Id: RELNOTES-3.4,v 1.2 2002/03/23 02:37:17 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
@@ -19,4 +19,4 @@ Mesa 4.0.1 only contains bug fixes since version 4.0.
 | 
			
		||||
See the docs/VERSIONS file for the list of bug fixes.
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-4.0.1,v 1.1.2.2 2001/12/17 19:43:38 brianp Exp $
 | 
			
		||||
$Id: RELNOTES-4.0.1,v 1.2 2001/12/18 14:08:23 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
 | 
			
		||||
                          Mesa 4.0.2 release notes
 | 
			
		||||
 | 
			
		||||
                               April 2, 2002
 | 
			
		||||
                             March 25, 2002
 | 
			
		||||
 | 
			
		||||
                              PLEASE READ!!!!
 | 
			
		||||
 | 
			
		||||
@@ -47,4 +47,4 @@ D3D			needs updating
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-4.0.2,v 1.1.2.3 2002/04/01 16:54:11 brianp Exp $
 | 
			
		||||
$Id: RELNOTES-4.0.2,v 1.2 2002/03/23 02:38:39 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
@@ -49,4 +49,4 @@ D3D			needs updating
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-4.0.3,v 1.1.2.3 2002/06/24 20:44:58 brianp Exp $
 | 
			
		||||
$Id: RELNOTES-4.0.3,v 1.2 2002/06/26 02:36:34 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
 | 
			
		||||
                            Mesa 4.1 release notes
 | 
			
		||||
 | 
			
		||||
                            <month>, <day>, <year>
 | 
			
		||||
                               October 29, 2002
 | 
			
		||||
 | 
			
		||||
                               PLEASE READ!!!!
 | 
			
		||||
                                PLEASE READ!!!!
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -11,18 +11,298 @@ Introduction
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
Mesa uses an even/odd version number scheme like the Linux kernel.
 | 
			
		||||
Odd numbered versions (such as 4.1) designate new developmental releases.
 | 
			
		||||
Even numbered versions (such as 4.0) designate stable releases.
 | 
			
		||||
Odd numbered versions (such as 4.1) designate new developmental releases.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New Features in Mesa 4.1
 | 
			
		||||
------------------------
 | 
			
		||||
 | 
			
		||||
<to be determined>
 | 
			
		||||
New extensions.  Docs at http://oss.sgi.com/projects/ogl-sample/registry/
 | 
			
		||||
 | 
			
		||||
GL_NV_vertex_program
 | 
			
		||||
 | 
			
		||||
    NVIDIA's vertex programming extension
 | 
			
		||||
 | 
			
		||||
GL_NV_vertex_program1_1
 | 
			
		||||
 | 
			
		||||
    A few features built on top of GL_NV_vertex_program
 | 
			
		||||
 | 
			
		||||
GL_ARB_window_pos
 | 
			
		||||
 | 
			
		||||
    This is the ARB-approved version of GL_MESA_window_pos
 | 
			
		||||
 | 
			
		||||
GL_ARB_depth_texture
 | 
			
		||||
 | 
			
		||||
    This is the ARB-approved version of GL_SGIX_depth_texture.
 | 
			
		||||
    It allows depth (Z buffer) data to be stored in textures.
 | 
			
		||||
    This is used by GL_ARB_shadow
 | 
			
		||||
 | 
			
		||||
GL_ARB_shadow
 | 
			
		||||
 | 
			
		||||
    Shadow mapping with depth textures.
 | 
			
		||||
    This is the ARB-approved version of GL_SGIX_shadow.
 | 
			
		||||
 | 
			
		||||
GL_ARB_shadow_ambient
 | 
			
		||||
 | 
			
		||||
    Allows one to specify the luminance of shadowed pixels.
 | 
			
		||||
    This is the ARB-approved version of GL_SGIX_shadow_ambient.
 | 
			
		||||
 | 
			
		||||
GL_EXT_shadow_funcs
 | 
			
		||||
 | 
			
		||||
    Extends the set of GL_ARB_shadow texture comparision functions to
 | 
			
		||||
    include all eight of standard OpenGL dept-test functions.
 | 
			
		||||
 | 
			
		||||
GL_ARB_point_parameters
 | 
			
		||||
 | 
			
		||||
    This is basically the same as GL_EXT_point_parameters.
 | 
			
		||||
 | 
			
		||||
GL_ARB_texture_env_crossbar
 | 
			
		||||
 | 
			
		||||
    Allows any texture combine stage to reference any texture source unit.
 | 
			
		||||
 | 
			
		||||
GL_NV_point_sprite
 | 
			
		||||
 | 
			
		||||
    For rendering points as textured quads.  Useful for particle effects.
 | 
			
		||||
 | 
			
		||||
GL_NV_texture_rectangle  (new in 4.0.4 actually)
 | 
			
		||||
 | 
			
		||||
    Allows one to use textures with sizes that are not powers of two.
 | 
			
		||||
    Note that mipmapping and several texture wrap modes are not allowed.
 | 
			
		||||
 | 
			
		||||
GL_EXT_multi_draw_arrays
 | 
			
		||||
 | 
			
		||||
    Allows arrays of vertex arrays to be rendered with one call.
 | 
			
		||||
 | 
			
		||||
GL_EXT_stencil_two_side
 | 
			
		||||
 | 
			
		||||
   Separate stencil modes for front and back-facing polygons.
 | 
			
		||||
 | 
			
		||||
GLX_SGIX_fbconfig & GLX_SGIX_pbuffer
 | 
			
		||||
 | 
			
		||||
   Off-screen rendering support.
 | 
			
		||||
 | 
			
		||||
GL_ATI_texture_mirror_once
 | 
			
		||||
 | 
			
		||||
   Adds two new texture wrap modes: GL_MIRROR_CLAMP_ATI and
 | 
			
		||||
   GL_MIRROR_CLAMP_TO_EDGE_ATI.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Device Driver Status
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
A number of Mesa's software drivers haven't been actively maintained for
 | 
			
		||||
some time.  We rely on volunteers to maintain many of these drivers.
 | 
			
		||||
Here's the current status of all included drivers:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Driver			Status
 | 
			
		||||
----------------------	---------------------
 | 
			
		||||
XMesa (Xlib)		implements OpenGL 1.3
 | 
			
		||||
OSMesa (off-screen)	implements OpenGL 1.3
 | 
			
		||||
FX (3dfx Voodoo1/2)	implements OpenGL 1.3
 | 
			
		||||
SVGA			implements OpenGL 1.3
 | 
			
		||||
Wind River UGL		implements OpenGL 1.3
 | 
			
		||||
Windows/Win32		implements OpenGL 1.3
 | 
			
		||||
DOS/DJGPP		implements OpenGL 1.3
 | 
			
		||||
GGI			implements OpenGL 1.3
 | 
			
		||||
BeOS			needs updating (underway)
 | 
			
		||||
Allegro			needs updating
 | 
			
		||||
D3D			needs updating
 | 
			
		||||
DOS			needs updating
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New features in GLUT
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
1. Frames per second printing
 | 
			
		||||
 | 
			
		||||
   GLUT now looks for an environment variable called "GLUT_FPS".  If it's
 | 
			
		||||
   set, GLUT will print out a frames/second statistic to stderr when
 | 
			
		||||
   glutSwapBuffers() is called.  By default, frames/second is computed
 | 
			
		||||
   and displayed once every 5 seconds.  You can specify a different
 | 
			
		||||
   interval (in milliseconds) when you set the env var.  For example
 | 
			
		||||
   'export GLUT_FPS=1000' or 'setenv GLUT_FPS 1000' will set the interval
 | 
			
		||||
   to one second.
 | 
			
		||||
 | 
			
		||||
   NOTE: the demo or application must call the glutInit() function for
 | 
			
		||||
   this to work.  Otherwise, the env var will be ignored.
 | 
			
		||||
 | 
			
		||||
   Finally, this feature may not be reliable in multi-window programs.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
2. glutGetProcAddress() function
 | 
			
		||||
 | 
			
		||||
   The new function:
 | 
			
		||||
 | 
			
		||||
        void *glutGetProcAddress(const char *procName)
 | 
			
		||||
 | 
			
		||||
   is a wrapper for glXGetProcAddressARB() and wglGetProcAddress().  It
 | 
			
		||||
   lets you dynamically get the address of an OpenGL function at runtime.
 | 
			
		||||
   The GLUT_API_VERSION has been bumped to 5, but I haven't bumped the
 | 
			
		||||
   GLUT version number from 3.7 since that's probably Mark Kilgard's role.
 | 
			
		||||
 | 
			
		||||
   This function should probably also be able to return the address of
 | 
			
		||||
   GLUT functions themselves, but it doesn't do that yet.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
XXX Things To Do Yet XXXX
 | 
			
		||||
-------------------------
 | 
			
		||||
 | 
			
		||||
isosurf with vertex program exhibits some missing triangles (probably
 | 
			
		||||
when recycling the vertex buffer for long prims).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Porting Info
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
If you're porting a DRI or other driver from Mesa 4.0.x to Mesa 4.1 here
 | 
			
		||||
are some things to change:
 | 
			
		||||
 | 
			
		||||
1. ctx->Texture._ReallyEnabled is obsolete.
 | 
			
		||||
 | 
			
		||||
   Since there are now 5 texture targets (1D, 2D, 3D, cube and rect) that
 | 
			
		||||
   left room for only 6 units (6*5 < 32) in this field.
 | 
			
		||||
   This field is being replaced by ctx->Texture._EnabledUnits which has one
 | 
			
		||||
   bit per texture unit.  If the bit k of _EnabledUnits is set, that means
 | 
			
		||||
   ctx->Texture.Unit[k]._ReallyEnabled is non-zero.  You'll have to look at
 | 
			
		||||
   ctx->Texture.Unit[k]._ReallyEnabled to learn if the 1D, 2D, 3D, cube or
 | 
			
		||||
   rect texture is enabled for unit k.
 | 
			
		||||
 | 
			
		||||
   This also means that the constants TEXTURE1_*, TEXTURE2_*, etc are
 | 
			
		||||
   obsolete.
 | 
			
		||||
 | 
			
		||||
   The tokens TEXTURE0_* have been replaced as well (since there's no
 | 
			
		||||
   significance to the "0" part:
 | 
			
		||||
 | 
			
		||||
   old token           new token
 | 
			
		||||
   TEXTURE0_1D         TEXTURE_1D_BIT
 | 
			
		||||
   TEXTURE0_2D         TEXTURE_2D_BIT
 | 
			
		||||
   TEXTURE0_3D         TEXTURE_3D_BIT
 | 
			
		||||
   TEXTURE0_CUBE       TEXTURE_CUBE_BIT
 | 
			
		||||
   <none>              TEXTURE_RECT_BIT
 | 
			
		||||
 | 
			
		||||
   These tokens are only used for the ctx->Texture.Unit[i].Enabled and
 | 
			
		||||
   ctx->Texture.Unit[i]._ReallyEnabled fields.  Exactly 0 or 1 bits will
 | 
			
		||||
   be set in _ReallyEnabled at any time!
 | 
			
		||||
 | 
			
		||||
   Q: "What's the purpose of Unit[i].Enabled vs Unit[i]._ReallyEnabled?"
 | 
			
		||||
   A: The user can enable GL_TEXTURE_1D, GL_TEXTURE_2D, etc for any
 | 
			
		||||
      texure unit all at once (an unusual thing to do).
 | 
			
		||||
      OpenGL defines priorities that basically say GL_TEXTURE_2D has
 | 
			
		||||
      higher priority than GL_TEXTURE_1D, etc.  Also, just because a
 | 
			
		||||
      texture target is enabled by the user doesn't mean we'll actually
 | 
			
		||||
      use that texture!  If a texture object is incomplete (missing mip-
 | 
			
		||||
      map levels, etc) it's as if texturing is disabled for that target.
 | 
			
		||||
      The _ReallyEnabled field will have a bit set ONLY if the texture
 | 
			
		||||
      target is enabled and complete.  This spares the driver writer from
 | 
			
		||||
      examining a _lot_ of GL state to determine which texture target is
 | 
			
		||||
      to be used.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
2. Tnl tokens changes
 | 
			
		||||
 | 
			
		||||
   During the implementation of GL_NV_vertex_program some of the vertex
 | 
			
		||||
   buffer code was changed.  Specifically, the VERT_* bits defined in
 | 
			
		||||
   tnl/t_context.h have been renamed to better match the conventions of
 | 
			
		||||
   GL_NV_vertex_program.  The old names are still present but obsolete.
 | 
			
		||||
   Drivers should use the newer names.
 | 
			
		||||
 | 
			
		||||
   For example:  VERT_RGBA is now VERT_BIT_COLOR0 and
 | 
			
		||||
   VERT_SPEC_RGB is now VERT_BIT_COLOR1.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
3. Read/Draw Buffer changes
 | 
			
		||||
 | 
			
		||||
   The business of setting the current read/draw buffers in Mesa 4.0.x
 | 
			
		||||
   was complicated.  It's much simpler now in Mesa 4.1.
 | 
			
		||||
 | 
			
		||||
   Here are the changes:
 | 
			
		||||
 | 
			
		||||
   - Renamed ctx->Color.DrawDestMask to ctx->Color._DrawDestMask
 | 
			
		||||
   - Removed ctx->Color.DriverDrawBuffer
 | 
			
		||||
   - Removed ctx->Pixel.DriverReadBuffer
 | 
			
		||||
   - Removed ctx->Color.MultiDrawBuffer
 | 
			
		||||
   - Removed ctx->Driver.SetDrawBuffer()
 | 
			
		||||
   - Removed swrast->Driver.SetReadBuffer().
 | 
			
		||||
   - Added ctx->Color._DrawDestMask - a bitmask of FRONT/BACK_LEFT/RIGHT_BIT
 | 
			
		||||
     values to indicate the current draw buffers.
 | 
			
		||||
   - Added ctx->Pixel._ReadSrcMask to indicate the source for pixel reading.
 | 
			
		||||
     The value is _one_ of the FRONT/BACK_LEFT/RIGHT_BIT values.
 | 
			
		||||
   - Added ctx->Driver.DrawBuffer() and ctx->Driver.ReadBuffer().
 | 
			
		||||
     These functions exactly correspond to glDrawBuffer and glReadBuffer calls.
 | 
			
		||||
     Many drivers will set ctx->Driver.DrawBuffer = _swrast_DrawBuffer and
 | 
			
		||||
     leave ctx->Draw.ReadBuffer NULL.
 | 
			
		||||
     DRI drivers should implement their own function for ctx->Driver.DrawBuffer
 | 
			
		||||
     and use it to set the current hardware drawing buffer.  You'll probably
 | 
			
		||||
     also want to check for GL_FRONT_AND_BACK mode and fall back to software.
 | 
			
		||||
     Call _swrast_DrawBuffer() too, to update the swrast state.
 | 
			
		||||
   - Added swrast->Driver.SetBuffer().
 | 
			
		||||
     This function should be implemented by all device drivers that use swrast.
 | 
			
		||||
     Mesa will call it to specify the buffer to use for span reading AND
 | 
			
		||||
     writing and point/line/triangle rendering.
 | 
			
		||||
     There should be no confusion between current read or draw buffer anymore.
 | 
			
		||||
   - Added swrast->CurrentBuffer to indicate which color buffer to read/draw.
 | 
			
		||||
     Will be FRONT_LEFT_BIT, BACK_LEFT_BIT, FRONT_RIGHT_BIT or BACK_RIGHT_BIT.
 | 
			
		||||
     This value is usually passed to swrast->Driver.SetBuffer().
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
4. _mesa_create_context() changes.  This function now takes a pointer to
 | 
			
		||||
   a __GLimports object.  The __GLimports structure contains function
 | 
			
		||||
   pointers to system functions like fprintf(), malloc(), etc.
 | 
			
		||||
   The _mesa_init_default_imports() function can be used to initialize
 | 
			
		||||
   a __GLimports object.  Most device drivers (like the DRI drivers)
 | 
			
		||||
   should use this.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5. In tnl's struct vertex_buffer, the field "ProjectedClipCoords"
 | 
			
		||||
   has been replaced by "NdcPtr" to better match the OpenGL spec's
 | 
			
		||||
   terminology.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
6. Since GL_EXT_stencil_two_side has been implemented, many of the
 | 
			
		||||
   ctx->Stencil fields are now 2-element arrays.  For example,
 | 
			
		||||
   "GLenum Ref" is now "GLenum Ref[2]"  The [0] elements are the front-face
 | 
			
		||||
   values and the [1] elements are the back-face values.
 | 
			
		||||
   ctx->Stencil.ActiveFace is 0 or 1 to indicate the current face for
 | 
			
		||||
   the glStencilOp/Func/Mask() functions.
 | 
			
		||||
   ctx->Stencil.TestTwoSide controls whether or not 1 or 2-sided stenciling
 | 
			
		||||
   is enabled.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
7. Removed ctx->Polygon._OffsetAny.  Removed ctx->Polygon.OffsetMRD.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
8. GLfloat / GLchan changes:
 | 
			
		||||
 | 
			
		||||
   - Changed ctx->Driver.ClearColor() to take GLfloat[4] instead of GLchan[4].
 | 
			
		||||
     ctx->Color.ClearColor is now GLfloat[4] too.
 | 
			
		||||
   - Changed ctx->Driver.AlphaRef() to take GLfloat instead of GLchan.
 | 
			
		||||
   - ctx->Color.AlphaRef is now GLfloat.
 | 
			
		||||
   - texObj->BorderColor is now GLfloat[4].  texObj->_BorderChan is GLchan[4].
 | 
			
		||||
 | 
			
		||||
   This is part of an effort to remove all GLchan types from core Mesa so
 | 
			
		||||
   that someday we can support 8, 16 and 32-bit color channels dynamically
 | 
			
		||||
   at runtime, instead of at compile-time.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
9. GLboolean ctx->Tranform.ClipEnabled[MAX_CLIP_PLANES] has been replaced
 | 
			
		||||
   by GLuint ctx->Transform.ClipPlanesEnabled.  The later is a bitfield.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
10. There's a new matrix_stack type in mtypes.h used for the Modelview,
 | 
			
		||||
   Projection, Color and Texcoord matrix stacks.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
11. The ctx->Current.* fields have changed a lot.  Now, there's a
 | 
			
		||||
   ctx->Current.Attrib[] array for all vertex attributes which matches
 | 
			
		||||
   the NV vertex program conventions.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-4.1,v 1.1 2001/10/22 22:57:23 brianp Exp $
 | 
			
		||||
$Id: RELNOTES-4.1,v 1.22 2002/10/29 15:06:37 brianp Exp $
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										85
									
								
								docs/RELNOTES-5.0
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								docs/RELNOTES-5.0
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,85 @@
 | 
			
		||||
 | 
			
		||||
                            Mesa 5.0 release notes
 | 
			
		||||
 | 
			
		||||
                              November 13, 2002
 | 
			
		||||
 | 
			
		||||
                                PLEASE READ!!!!
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Introduction
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
Mesa uses an even/odd version number scheme like the Linux kernel.
 | 
			
		||||
Even-numbered versions (such as 5.0) designate stable releases.
 | 
			
		||||
Odd-numbered versions (such as 4.1) designate new developmental releases.
 | 
			
		||||
 | 
			
		||||
Mesa 5.0 is basically just a stabilization of Mesa 4.1.  To see a list of
 | 
			
		||||
bug fixes, etc. see the VERSIONS file.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New Features in Mesa 5.0
 | 
			
		||||
------------------------
 | 
			
		||||
 | 
			
		||||
Mesa 5.0 supports OpenGL 1.4.  Note Mesa's versioning convention:
 | 
			
		||||
 | 
			
		||||
   OpenGL Version    Mesa Version
 | 
			
		||||
   ------------------------------
 | 
			
		||||
        1.0             1.x
 | 
			
		||||
        1.1             2.x
 | 
			
		||||
        1.2             3.x
 | 
			
		||||
        1.3             4.x
 | 
			
		||||
        1.4             5.x
 | 
			
		||||
 | 
			
		||||
OpenGL 1.4 (and Mesa 5.0) incorporates the following OpenGL extensions as
 | 
			
		||||
standard features:
 | 
			
		||||
 | 
			
		||||
	GL_ARB_depth_texture
 | 
			
		||||
	GL_ARB_shadow
 | 
			
		||||
	GL_ARB_texture_env_crossbar
 | 
			
		||||
	GL_ARB_texture_mirror_repeat
 | 
			
		||||
	GL_ARB_window_pos
 | 
			
		||||
	GL_EXT_blend_color
 | 
			
		||||
	GL_EXT_blend_func_separate
 | 
			
		||||
	GL_EXT_blend_logic_op
 | 
			
		||||
	GL_EXT_blend_minmax
 | 
			
		||||
	GL_EXT_blend_subtract
 | 
			
		||||
	GL_EXT_fog_coord
 | 
			
		||||
	GL_EXT_multi_draw_arrays
 | 
			
		||||
	GL_EXT_point_parameters
 | 
			
		||||
	GL_EXT_secondary_color
 | 
			
		||||
	GL_EXT_stencil_wrap
 | 
			
		||||
	GL_SGIS_generate_mipmap
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Device Driver Status
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
A number of Mesa's software drivers haven't been actively maintained for
 | 
			
		||||
some time.  We rely on volunteers to maintain many of these drivers.
 | 
			
		||||
Here's the current status of all included drivers:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Driver			Status
 | 
			
		||||
----------------------	---------------------
 | 
			
		||||
XMesa (Xlib)		implements OpenGL 1.4
 | 
			
		||||
OSMesa (off-screen)	implements OpenGL 1.4
 | 
			
		||||
FX (3dfx Voodoo1/2)	implements OpenGL 1.3
 | 
			
		||||
SVGA			implements OpenGL 1.3
 | 
			
		||||
Wind River UGL		implements OpenGL 1.3
 | 
			
		||||
Windows/Win32		implements OpenGL 1.4
 | 
			
		||||
DOS/DJGPP		implements OpenGL 1.3
 | 
			
		||||
GGI			implements OpenGL 1.3
 | 
			
		||||
DOS			implements OpenGL 1.4
 | 
			
		||||
BeOS			needs updating (underway)
 | 
			
		||||
Allegro			needs updating
 | 
			
		||||
D3D			needs updating
 | 
			
		||||
 | 
			
		||||
Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the
 | 
			
		||||
driver call the _mesa_enable_1_4_extensions() function.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-5.0,v 3.2 2002/11/13 15:33:51 brianp Exp $
 | 
			
		||||
							
								
								
									
										46
									
								
								docs/RELNOTES-5.0.1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								docs/RELNOTES-5.0.1
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,46 @@
 | 
			
		||||
 | 
			
		||||
                           Mesa 5.0.1 release notes
 | 
			
		||||
 | 
			
		||||
                               March 30, 2003
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Introduction
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
Mesa uses an even/odd version number scheme like the Linux kernel.
 | 
			
		||||
Even-numbered versions (such as 5.0.x) designate stable releases.
 | 
			
		||||
Odd-numbered versions (such as 4.1.x) designate new developmental releases.
 | 
			
		||||
 | 
			
		||||
Mesa 5.0.1 just fixes bugs found since the 5.0 release.  See the VERSIONS
 | 
			
		||||
file for details.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Device Driver Status
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
A number of Mesa's software drivers haven't been actively maintained for
 | 
			
		||||
some time.  We rely on volunteers to maintain many of these drivers.
 | 
			
		||||
Here's the current status of all included drivers:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Driver			Status
 | 
			
		||||
----------------------	---------------------
 | 
			
		||||
XMesa (Xlib)		implements OpenGL 1.4
 | 
			
		||||
OSMesa (off-screen)	implements OpenGL 1.4
 | 
			
		||||
FX (3dfx Voodoo1/2)	implements OpenGL 1.3
 | 
			
		||||
SVGA			implements OpenGL 1.3
 | 
			
		||||
Wind River UGL		implements OpenGL 1.3
 | 
			
		||||
Windows/Win32		implements OpenGL 1.4
 | 
			
		||||
DJGPP			implements OpenGL 1.4
 | 
			
		||||
GGI			implements OpenGL 1.3
 | 
			
		||||
BeOS			implements OpenGL 1.4
 | 
			
		||||
Allegro			needs updating
 | 
			
		||||
D3D			needs updating
 | 
			
		||||
 | 
			
		||||
Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the
 | 
			
		||||
driver call the _mesa_enable_1_4_extensions() function.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-5.0.1,v 3.1 2003/03/30 16:17:54 brianp Exp $
 | 
			
		||||
							
								
								
									
										46
									
								
								docs/RELNOTES-5.0.2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								docs/RELNOTES-5.0.2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,46 @@
 | 
			
		||||
 | 
			
		||||
                           Mesa 5.0.2 release notes
 | 
			
		||||
 | 
			
		||||
                               September 5, 2003
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Introduction
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
Mesa uses an even/odd version number scheme like the Linux kernel.
 | 
			
		||||
Even-numbered versions (such as 5.0.x) designate stable releases.
 | 
			
		||||
Odd-numbered versions (such as 4.1.x) designate new developmental releases.
 | 
			
		||||
 | 
			
		||||
Mesa 5.0.2 just fixes bugs found since the 5.0.1 release.  See the VERSIONS
 | 
			
		||||
file for details.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Device Driver Status
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
A number of Mesa's software drivers haven't been actively maintained for
 | 
			
		||||
some time.  We rely on volunteers to maintain many of these drivers.
 | 
			
		||||
Here's the current status of all included drivers:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Driver			Status
 | 
			
		||||
----------------------	---------------------
 | 
			
		||||
XMesa (Xlib)		implements OpenGL 1.4
 | 
			
		||||
OSMesa (off-screen)	implements OpenGL 1.4
 | 
			
		||||
FX (3dfx Voodoo1/2)	implements OpenGL 1.3
 | 
			
		||||
SVGA			implements OpenGL 1.3
 | 
			
		||||
Wind River UGL		implements OpenGL 1.3
 | 
			
		||||
Windows/Win32		implements OpenGL 1.4
 | 
			
		||||
DJGPP			implements OpenGL 1.4
 | 
			
		||||
GGI			implements OpenGL 1.3
 | 
			
		||||
BeOS			implements OpenGL 1.4
 | 
			
		||||
Allegro			needs updating
 | 
			
		||||
D3D			needs updating
 | 
			
		||||
 | 
			
		||||
Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the
 | 
			
		||||
driver call the _mesa_enable_1_4_extensions() function.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
$Id: RELNOTES-5.0.2,v 1.1 2003/09/04 23:10:38 brianp Exp $
 | 
			
		||||
							
								
								
									
										228
									
								
								docs/RELNOTES-5.1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										228
									
								
								docs/RELNOTES-5.1
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,228 @@
 | 
			
		||||
 | 
			
		||||
                            Mesa 5.1 release notes
 | 
			
		||||
 | 
			
		||||
                              Month day, 2003
 | 
			
		||||
 | 
			
		||||
                                PLEASE READ!!!!
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Introduction
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
Mesa uses an even/odd version number scheme like the Linux kernel.
 | 
			
		||||
Even-numbered versions (such as 5.0) designate stable releases.
 | 
			
		||||
Odd-numbered versions (such as 5.1) designate new developmental releases.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Bug fixes
 | 
			
		||||
---------
 | 
			
		||||
See the VERSIONS file for a list of bugs fixed in this release.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New Features in Mesa 5.1
 | 
			
		||||
------------------------
 | 
			
		||||
 | 
			
		||||
GL_ATI_texture_env_combine3 extension
 | 
			
		||||
   This adds a few new texture combine modes.
 | 
			
		||||
   Contributed by Ian Romanick.
 | 
			
		||||
 | 
			
		||||
GL_SGI_texture_color_table
 | 
			
		||||
   Adds a color table lookup to the RGBA texture path.  There's a separate
 | 
			
		||||
   color table for each texture unit.
 | 
			
		||||
   Contributed by Eric Plante.
 | 
			
		||||
 | 
			
		||||
GL_NV_fragment_program
 | 
			
		||||
   NVIDIA's fragment-level programming feature.
 | 
			
		||||
   Possible lurking bugs:
 | 
			
		||||
     - the DDX and DDY commands aren't fully tested
 | 
			
		||||
     - there may be bugs in the parser
 | 
			
		||||
     - the TEX and TXP instructions both do perspective correction
 | 
			
		||||
     - the pack/unpack instructions may not be correct
 | 
			
		||||
 | 
			
		||||
GL_EXT_depth_bounds_test
 | 
			
		||||
   This extension adds a scissor-like test for the Z axis.  It's used to
 | 
			
		||||
   optimize stencil-volume shadow algorithms.
 | 
			
		||||
 | 
			
		||||
GL_NV_light_max_exponent
 | 
			
		||||
   Lifts the 128 limit for max light exponent.
 | 
			
		||||
 | 
			
		||||
GL_EXT_texture_rectangle
 | 
			
		||||
   Identical to GL_NV_texture_rectangle
 | 
			
		||||
 | 
			
		||||
GL_ARB_occlusion_query
 | 
			
		||||
   Useful for visibility-based culling.
 | 
			
		||||
 | 
			
		||||
GL_ARB_texture_non_power_of_two
 | 
			
		||||
   Removes the restriction that texture dimensions must be powers of two.
 | 
			
		||||
 | 
			
		||||
GL_ARB_vertex_buffer_object
 | 
			
		||||
   Allows server-side vertex arrays, optimized host/card data transfers, etc.
 | 
			
		||||
 | 
			
		||||
GL_ARB_point_sprite
 | 
			
		||||
   ARB-approved version of GL_NV_point_sprite.  Basically allows textures
 | 
			
		||||
   to be applied to points.
 | 
			
		||||
 | 
			
		||||
GL_IBM_multimode_draw_arrays
 | 
			
		||||
   Allows multiple vertex arrays to be drawn with one call, including arrays
 | 
			
		||||
   of different types of primitives.
 | 
			
		||||
 | 
			
		||||
GL_SUN_multi_draw_arrays
 | 
			
		||||
   An alias for GL_EXT_multi_draw_arrays, standard in OpenGL 1.4.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
With the addition of GL_ARB_occlusion_query, GL_ARB_vertex_buffer_object,
 | 
			
		||||
GL_ARB_texture_non_power_of_two and GL_EXT_shadow_funcs, Mesa 5.1 supports
 | 
			
		||||
all the new features of OpenGL 1.5.  Mesa 6.0 (the next stable release)
 | 
			
		||||
will advertise GL_VERSION = "1.5".
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Vertex/Fragment program debugger
 | 
			
		||||
--------------------------------
 | 
			
		||||
 | 
			
		||||
GL_MESA_program_debug is an experimental extension to support
 | 
			
		||||
interactive debugging of vertex and fragment programs.  See the
 | 
			
		||||
docs/MESA_program_debug.spec file for details.
 | 
			
		||||
 | 
			
		||||
The bulk of the vertex/fragment program debugger is implemented
 | 
			
		||||
outside of Mesa.  The GL_MESA_program_debug extension just has minimal
 | 
			
		||||
hooks for stopping running programs and inspecting programs.
 | 
			
		||||
 | 
			
		||||
The progs/tests/debugger.c (only in CVS) program is an example of how
 | 
			
		||||
the extension can be used.  Presently, the debugger code and demo code
 | 
			
		||||
is in the same file.  Eventually the debugger code should be moved
 | 
			
		||||
into a reusable module.
 | 
			
		||||
 | 
			
		||||
As it is now, the demo lets you set breakpoings in vertex/fragment
 | 
			
		||||
programs, single step, and print intermediate register values.  It's
 | 
			
		||||
basically just a proof of concept.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Directory tree reorganization
 | 
			
		||||
-----------------------------
 | 
			
		||||
 | 
			
		||||
The directory structure for Mesa has been overhauled to improve its layout.
 | 
			
		||||
All source code for Mesa, GLU, GLUT, etc is now under the src/ directory
 | 
			
		||||
in appropriate subdirectories.
 | 
			
		||||
 | 
			
		||||
The Mesa source code and drivers has been reorganized under src/mesa/.
 | 
			
		||||
 | 
			
		||||
All demonstration programs and tests are now in subdirectories under progs/.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Build System Changes
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
The GNU automake/autoconf support has been removed.  As it was, it seldom
 | 
			
		||||
worked on anything but Linux.  The Mesa developers aren't big fans of
 | 
			
		||||
automake/autoconf/libtool and didn't have the time to maintain it.
 | 
			
		||||
If someone wants to contribute new automake/autoconf support (and is
 | 
			
		||||
willing to maintain it), it may be re-incorporated into Mesa, subject
 | 
			
		||||
to some requirements.
 | 
			
		||||
 | 
			
		||||
The "old style" makefile system has been updated:
 | 
			
		||||
   1. Make-config has been trimmed down to fewer, modern configurations.
 | 
			
		||||
   2. Most of the bin/mklib.* scripts have been rolled into a new "mklib"
 | 
			
		||||
      script that works on all sorts of systems.  There are probably some
 | 
			
		||||
      bugs in it, but it's been tested on Linux, SunOS 5.8 and IRIX 6.5.
 | 
			
		||||
      Improvements/contributes are greatly appreciated.
 | 
			
		||||
   3. The Makefile.X11 files have been cleaned up in various ways
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Source File Changes
 | 
			
		||||
-------------------
 | 
			
		||||
 | 
			
		||||
The mmath.[ch] files are obsolete.  Their contents have been moved
 | 
			
		||||
into the imports.[ch] and macros.[ch] files.
 | 
			
		||||
 | 
			
		||||
The files related to vertex and fragment programming have changed.
 | 
			
		||||
Old files:
 | 
			
		||||
	vpexec.[ch]
 | 
			
		||||
	vpparse.[ch]
 | 
			
		||||
	vpstate.[ch]
 | 
			
		||||
New files:
 | 
			
		||||
	program.[ch]              - generic ARB/NV program code
 | 
			
		||||
	arbprogram.[ch]           - ARB program API functions
 | 
			
		||||
	nvprogram.[ch]            - NV program API functions
 | 
			
		||||
	nvvertprog.h              - NV vertex program definitions
 | 
			
		||||
	nvfragprog.h              - NV fragment program definitions
 | 
			
		||||
	nvvertparse.[ch]          - NV vertex program parser
 | 
			
		||||
	nvfragparse.[ch]          - NV fragment program parser
 | 
			
		||||
	nvvertexec.[ch]           - NV vertex program execution
 | 
			
		||||
	swrast/s_nvfragprog.[ch]  - NV fragment program execution
 | 
			
		||||
 | 
			
		||||
Removed files:
 | 
			
		||||
	swrast/s_histogram.[ch] - moved into src/histogram.c
 | 
			
		||||
 | 
			
		||||
Other New files:
 | 
			
		||||
	bufferobj.[ch]		- GL_ARB_vertex_buffer_object functions
 | 
			
		||||
	version.h		- defines the Mesa version info
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Other Changes
 | 
			
		||||
-------------
 | 
			
		||||
 | 
			
		||||
The ctx->Driver.CreateTexture function has been removed - it wasn't used.
 | 
			
		||||
 | 
			
		||||
New device driver hook functions:
 | 
			
		||||
   NewTextureObject   - used to allocate struct gl_texture_objects
 | 
			
		||||
   NewTextureImage    - used to allocate struct gl_texture_images
 | 
			
		||||
 | 
			
		||||
New ctx->Texture._EnabledCoordUnits field:
 | 
			
		||||
   With the addition of GL_NV_fragment_program we may need to interpolate
 | 
			
		||||
   various sets of texture coordinates even when the corresponding texture
 | 
			
		||||
   unit is not enabled.  That is, glEnable(GL_TEXTURE_xD) may never get
 | 
			
		||||
   called but we still may have to interpolate texture coordinates across
 | 
			
		||||
   triangles so that the fragment program will get them.
 | 
			
		||||
   This new field indicates which sets of texture coordinates are needed.
 | 
			
		||||
   If a bit is set in the ctx->Texture._EnabledUnits bitmask is set, the
 | 
			
		||||
   same bit MUST be set in ctx->Texture._EnabledCoordUnits.
 | 
			
		||||
 | 
			
		||||
The ctx->_TriangleCaps field is deprecated.
 | 
			
		||||
   Instead of testing the DD_* bits in _TriangleCaps, you should instead
 | 
			
		||||
   directly test the relevant state variables, or use one of the helper
 | 
			
		||||
   functions like NEED_SECONDARY_COLOR() at the bottom of context.h
 | 
			
		||||
   While testing _TriangleCaps bits was fast, it was kludgey, and setting
 | 
			
		||||
   the bits in the first place could be error prone.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
To Do
 | 
			
		||||
-----
 | 
			
		||||
Add screen-awareness to fakeglx.c
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Device Driver Status
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
A number of Mesa's software drivers haven't been actively maintained for
 | 
			
		||||
some time.  We rely on volunteers to maintain many of these drivers.
 | 
			
		||||
Here's the current status of all included drivers:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Driver			Status
 | 
			
		||||
----------------------	---------------------
 | 
			
		||||
XMesa (Xlib)		implements OpenGL 1.4
 | 
			
		||||
OSMesa (off-screen)	implements OpenGL 1.4
 | 
			
		||||
FX (3dfx Voodoo1/2)	implements OpenGL 1.3
 | 
			
		||||
SVGA			implements OpenGL 1.3
 | 
			
		||||
Wind River UGL		implements OpenGL 1.3
 | 
			
		||||
Windows/Win32		implements OpenGL 1.4
 | 
			
		||||
DJGPP			implements OpenGL 1.4
 | 
			
		||||
GGI			implements OpenGL 1.3
 | 
			
		||||
BeOS			implements OpenGL 1.4
 | 
			
		||||
Allegro			needs updating
 | 
			
		||||
D3D			needs updating
 | 
			
		||||
 | 
			
		||||
Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the
 | 
			
		||||
driver call the _mesa_enable_1_4_extensions() function.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
							
								
								
									
										167
									
								
								docs/VERSIONS
									
									
									
									
									
								
							
							
						
						
									
										167
									
								
								docs/VERSIONS
									
									
									
									
									
								
							@@ -1,4 +1,3 @@
 | 
			
		||||
$Id: VERSIONS,v 1.73.2.41 2002/10/02 17:36:59 brianp Exp $
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Mesa Version History
 | 
			
		||||
@@ -899,7 +898,7 @@ Mesa Version History
 | 
			
		||||
	- fixed 3DNow! code to not read past end of arrays (Andrew Lewycky)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
4.0.1  December 17, 2001
 | 
			
		||||
4.0.1 December 17, 2001
 | 
			
		||||
    New:
 | 
			
		||||
	- better sub-pixel sample positions for AA triangles (Ray Tice)
 | 
			
		||||
	- slightly faster blending for (GL_ZERO, GL_ONE) and (GL_ONE, GL_ZERO)
 | 
			
		||||
@@ -1010,3 +1009,167 @@ Mesa Version History
 | 
			
		||||
    Changes:
 | 
			
		||||
	- max texture units reduced to six to accomodate texture rectangles
 | 
			
		||||
	- removed unfinished GL_MESA_sprite_point extension code
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
4.1  October 29, 2002
 | 
			
		||||
    New:
 | 
			
		||||
	- GL_NV_vertex_program extension
 | 
			
		||||
	- GL_NV_vertex_program1_1 extension
 | 
			
		||||
	- GL_ARB_window_pos extension
 | 
			
		||||
	- GL_ARB_depth_texture extension
 | 
			
		||||
	- GL_ARB_shadow extension
 | 
			
		||||
	- GL_ARB_shadow_ambient extension
 | 
			
		||||
	- GL_EXT_shadow_funcs extension
 | 
			
		||||
	- GL_ARB_point_parameters extension
 | 
			
		||||
	- GL_ARB_texture_env_crossbar
 | 
			
		||||
	- GL_NV_point_sprite extension
 | 
			
		||||
	- GL_NV_texture_rectangle extension
 | 
			
		||||
	- GL_EXT_multi_draw_arrays extension
 | 
			
		||||
	- GL_EXT_stencil_two_side extension
 | 
			
		||||
	- GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions
 | 
			
		||||
	- GL_ATI_texture_mirror_once extension (Ian Romanick)
 | 
			
		||||
	- massive overhaul/simplification of software rasterizer module,
 | 
			
		||||
	  many contributions from Klaus Niederkrueger
 | 
			
		||||
	- faster software texturing in some cases (i.e. trilinear filtering)
 | 
			
		||||
	- new OSMesaGetProcAddress() function
 | 
			
		||||
	- more blend modes implemented with MMX code (Jose Fonseca)
 | 
			
		||||
	- added glutGetProcAddress() to GLUT
 | 
			
		||||
	- added GLUT_FPS env var to compute frames/second in glutSwapBuffers()
 | 
			
		||||
	- pbinfo and pbdemo PBuffer programs
 | 
			
		||||
	- glxinfo -v prints transprent pixel info (Gerd Sussner)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- better mipmap LOD computation (prevents excessive blurriness)
 | 
			
		||||
	- OSMesaMakeCurrent() didn't recognize buffer size changes
 | 
			
		||||
	- assorted conformance fixes for 16-bit/channel rendering
 | 
			
		||||
	- texcombine alpha subtraction mode was broken
 | 
			
		||||
	- fixed some blend problems when GLchan==GLfloat (Gerk Huisma)
 | 
			
		||||
	- clamp colors to [0,inf] in OSMesa if GLchan==GLfloat (Gerk Huisma)
 | 
			
		||||
	- fixed divide by zero error in NURBS tessellator (Jon Perry)
 | 
			
		||||
	- fixed GL_LINEAR fog bug by adding clamping
 | 
			
		||||
	- fixed FP exceptions found using Alpha CPU
 | 
			
		||||
	- 3dfx/glide driver render-to-window feature was broken
 | 
			
		||||
	- added missing GLX_TRANSPARENT_RGB token to glx.h
 | 
			
		||||
	- fixed error checking related to paletted textures
 | 
			
		||||
	- fixed reference count error in glDeleteTextures (Randy Fayan)
 | 
			
		||||
    Changes:
 | 
			
		||||
	- New spec file and Python code to generate some GL dispatch files
 | 
			
		||||
	- Glide driver defaults to "no" with autoconf/automake
 | 
			
		||||
	- updated demos/stex3d with new options
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5.0  November 13, 2002
 | 
			
		||||
    New:
 | 
			
		||||
	- OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4")
 | 
			
		||||
	- removed some overlooked debugging code
 | 
			
		||||
	- glxinfo updated to support GLX_ARB_multisample
 | 
			
		||||
	- GLUT now support GLX_ARB_multisample
 | 
			
		||||
	- updated DOS driver (Daniel Borca)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- GL_POINT and GL_LINE-mode polygons didn't obey cull state
 | 
			
		||||
	- fixed potential bug in _mesa_align_malloc/calloc()
 | 
			
		||||
	- fixed missing triangle bug when running vertex programs
 | 
			
		||||
	- fixed a few HPUX compilation problems
 | 
			
		||||
	- FX (Glide) driver didn't compile
 | 
			
		||||
	- setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv() didn't work
 | 
			
		||||
	- a few EXT functions, like glGenTexturesEXT, were no-ops
 | 
			
		||||
	- a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate,
 | 
			
		||||
	  glMultiDrawArrays and glMultiDrawElements were missing
 | 
			
		||||
	- glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken
 | 
			
		||||
	- Pentium 4 Mobile was mistakenly identified as having 3DNow!
 | 
			
		||||
	- fixed one-bit error in point/line fragment Z calculation
 | 
			
		||||
	- fixed potential segfault in fakeglx code
 | 
			
		||||
	- fixed color overflow problem in DOT3 texture env mode
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5.0.1  March 30, 2003
 | 
			
		||||
    New:
 | 
			
		||||
	- DOS driver updates from Daniel Borca
 | 
			
		||||
	- updated GL/gl_mangle.h file (Bill Hoffman)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- auto mipmap generation for cube maps was broken (bug 641363)
 | 
			
		||||
	- writing/clearing software alpha channels was unreliable
 | 
			
		||||
	- minor compilation fixes for OS/2 (Evgeny Kotsuba)
 | 
			
		||||
	- fixed some bad assertions found with shadowtex demo
 | 
			
		||||
	- fixed error checking bug in glCopyTexSubImage2D (bug 659020)
 | 
			
		||||
	- glRotate(angle, -x, 0, 0) was incorrect (bug 659677)
 | 
			
		||||
	- fixed potential segfault in texture object validation (bug 659012)
 | 
			
		||||
	- fixed some bogus code in _mesa_test_os_sse_exception_support (Linus)
 | 
			
		||||
	- fix fog stride bug in tnl code for h/w drivers (Michel Danzer)
 | 
			
		||||
	- fixed glActiveTexture / glMatrixMode(GL_TEXTURE) bug (#669080)
 | 
			
		||||
	- glGet(GL_CURRENT_SECONDARY_COLOR) should return 4 values, not 3
 | 
			
		||||
	- fixed compilation problem on Solaris7/x86 (bug 536406)
 | 
			
		||||
	- fixed prefetch bug in 3DNow! code (Felix Kuhling)
 | 
			
		||||
	- fixed NeXT build problem (FABSF macro)
 | 
			
		||||
	- glDrawPixels Z values when glPixelZoom!=1 were invalid (bug 687811)
 | 
			
		||||
	- zoomed glDraw/CopyPixels with clipping sometimes failed (bug 689964)
 | 
			
		||||
	- AA line and triangle Z values are now rounded, not truncated
 | 
			
		||||
	- fixed color interpolation bug when GLchan==GLfloat (bug 694461)
 | 
			
		||||
	- glArePrograms/TexturesResident() wasn't 100% correct (Jose Fonseca)
 | 
			
		||||
	- fixed a minor GL_COLOR_MATERIAL bug
 | 
			
		||||
	- NV vertex program EXP instruction was broken
 | 
			
		||||
	- glColorMask misbehaved with X window / pixmap rendering
 | 
			
		||||
	- fix autoconf/libtool GLU C++ linker problem on Linux (a total hack)
 | 
			
		||||
	- attempt to fix GGI compilation problem when MesaDemos not present
 | 
			
		||||
	- NV vertex program ARL-relative fetches didn't work
 | 
			
		||||
    Changes:
 | 
			
		||||
	- use glPolygonOffset in gloss demo to avoid z-fighting artifacts
 | 
			
		||||
	- updated winpos and pointblast demos to use ARB extensions
 | 
			
		||||
	- disable SPARC normal transformation code (bug 673938)
 | 
			
		||||
	- GLU fixes for OS/2 (Evgeny Kotsuba)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5.0.2  September 5, 2003
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- fixed texgen problem causing texcoord's Q to be zero (stex3d)
 | 
			
		||||
	- default GL_TEXTURE_COMPARE_MODE_ARB was wrong
 | 
			
		||||
	- GL_CURRENT_MATRIX_NV query was wrong
 | 
			
		||||
	- GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
 | 
			
		||||
	- GL_LIST_MODE query wasn't correct
 | 
			
		||||
	- GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
 | 
			
		||||
	- GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong value
 | 
			
		||||
	- blended, wide lines didn't always work correctly (bug 711595)
 | 
			
		||||
	- glVertexAttrib4svNV w component was always 1
 | 
			
		||||
	- fixed bug in GL_IBM_rasterpos_clip (missing return)
 | 
			
		||||
	- GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
 | 
			
		||||
	- a few Solaris compilation fixes
 | 
			
		||||
	- fixed glClear() problem for DRI drivers (non-existant stencil, etc)
 | 
			
		||||
	- fixed int/REAL mixup in GLU NURBS curve evaluator (Eric Cazeaux)
 | 
			
		||||
	- fixed delete [] bug in SI GLU (bug 721765) (Diego Santa Cruz)
 | 
			
		||||
	- glFog() didn't clamp fog colors
 | 
			
		||||
	- fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
 | 
			
		||||
	  gl[Get]TexParameteri[v] functions
 | 
			
		||||
	- fixed invalid memory references in glTexGen functions (bug 781602)
 | 
			
		||||
	- integer-valued color arrays weren't handled correctly
 | 
			
		||||
	- glDrawPixels(GL_DEPTH_COMPONENT) with glPixelZoom didn't work
 | 
			
		||||
	- GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
 | 
			
		||||
    Changes:
 | 
			
		||||
	- build GLUT with -fexceptions so C++ apps propogate exceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
5.1  Month day, 2003  (NOT RELEASED YET)
 | 
			
		||||
    New:
 | 
			
		||||
	- reorganized directory tree
 | 
			
		||||
	- GL_ATI_texture_env_combine3 extension (Ian Romanick)
 | 
			
		||||
	- GL_SGI_texture_color_table extension (Eric Plante)
 | 
			
		||||
	- GL_NV_fragment_program extension
 | 
			
		||||
	- GL_NV_light_max_exponent extension
 | 
			
		||||
	- GL_EXT_texture_rectangle (identical to GL_NV_texture_rectangle)
 | 
			
		||||
	- GL_ARB_occlusion_query extension
 | 
			
		||||
	- GL_ARB_point_sprite extension
 | 
			
		||||
	- GL_ARB_texture_non_power_of_two extension
 | 
			
		||||
	- GL_IBM_multimode_draw_arrays extension
 | 
			
		||||
	- GL_EXT_texture_mirror_clamp extension (Ian Romanick)
 | 
			
		||||
	- GL_ARB_vertex_buffer_object extension
 | 
			
		||||
	- new X86 feature detection code (Petr Sebor)
 | 
			
		||||
	- less memory used for display lists and vertex buffers
 | 
			
		||||
	- demo of per-pixel lighting with a fragment program (demos/fplight.c)
 | 
			
		||||
	- new version (18) of glext.h header
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- really enable OpenGL 1.4 features in DOS driver.
 | 
			
		||||
	- fixed issues in glDrawPixels and glCopyPixels for very wide images
 | 
			
		||||
	- glPixelMapf/ui/usv()'s size parameter is GLsizei, not GLint
 | 
			
		||||
    Changes:
 | 
			
		||||
	- dropped API trace feature (src/Trace/)
 | 
			
		||||
	- documentation overhaul.  merged with website content.  more html.
 | 
			
		||||
	- glxgears.c demo updated to use GLX swap rate extensions
 | 
			
		||||
	- glTexImage1/2/3D now allows width/height/depth = 0
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										15
									
								
								docs/banner.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								docs/banner.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<title>Banner</title>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<body text="#ffffff" bgcolor="#aa4444">
 | 
			
		||||
 | 
			
		||||
<center>
 | 
			
		||||
<p>
 | 
			
		||||
<font size="5">The Mesa 3D Graphics Library</font>
 | 
			
		||||
</p>
 | 
			
		||||
</center>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										35
									
								
								docs/bugs.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								docs/bugs.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Bug Reporting</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Bug Database</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Bug reports can be filed in the <a
 | 
			
		||||
href="http://sourceforge.net/bugs/?group_id=3" target="_parent">Bug
 | 
			
		||||
Database</a> on sourceforge.net. Please follow these guidelines:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li>Make sure you're using the most recent version of Mesa
 | 
			
		||||
<li>Make sure your bug isn't already reported
 | 
			
		||||
<li>Include as much information as possible in the report
 | 
			
		||||
<li>Provide a simple GLUT-based test program if possible
 | 
			
		||||
<li>Check back for follow-ups to the report
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Bug reports will automatically be forwarded to the Mesa developer's list.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The easier a bug is to reproduce, the sooner it will be fixed.
 | 
			
		||||
Please do everything you can to facilitate quickly fixing bugs.
 | 
			
		||||
If your bug report is vague or your test program doesn't compile
 | 
			
		||||
easily, the problem may not be fixed very quickly.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										693
									
								
								docs/conform.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										693
									
								
								docs/conform.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,693 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Conformance</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Conformance</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The SGI OpenGL conformance tests verify correct operation of OpenGL
 | 
			
		||||
implementations.  I, Brian Paul, have been given a copy of the tests
 | 
			
		||||
for testing Mesa.  The tests are not publically available.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
This file has the latest results of testing Mesa with the OpenGL 1.2
 | 
			
		||||
conformance tests.  Testing with the preliminary OpenGL 1.3 tests has
 | 
			
		||||
also been done.  Mesa passes all the 1.3 tests.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The tests were run using the software X11 device driver on 24-bpp
 | 
			
		||||
and 16-bpp displays.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 4.0 and later pass all conformance tests at all path levels.
 | 
			
		||||
Note that this says nothing about the conformance of hardware drivers
 | 
			
		||||
based upon Mesa.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
 | 
			
		||||
COVERAGE TESTS
 | 
			
		||||
--------------
 | 
			
		||||
 | 
			
		||||
Test that all API functions accept the legal parameters and reject
 | 
			
		||||
illegal parameters.  The result of each test is either pass or fail.
 | 
			
		||||
 | 
			
		||||
% covgl
 | 
			
		||||
OpenGL Coverage Test.
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
covgl passed.
 | 
			
		||||
 | 
			
		||||
covgl passed at 1.1 level.
 | 
			
		||||
 | 
			
		||||
covgl passed at 1.2 level.
 | 
			
		||||
 | 
			
		||||
covgl passed for ARB_multitexture.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
% covglu
 | 
			
		||||
OpenGL GLU Coverage Test.
 | 
			
		||||
Version 1.3
 | 
			
		||||
 | 
			
		||||
covglu passed.
 | 
			
		||||
 | 
			
		||||
covglu passed at 1.1 level.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
% covglx
 | 
			
		||||
OpenGL X Coverage Test.
 | 
			
		||||
Version 1.1.1
 | 
			
		||||
 | 
			
		||||
covglx passed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
% primtest -v
 | 
			
		||||
Open GL Primitives Test.
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
[lots of output deleted]
 | 
			
		||||
 | 
			
		||||
292159 Combinations.
 | 
			
		||||
primtest passed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GL CONFORMANCE TEST
 | 
			
		||||
===================
 | 
			
		||||
 | 
			
		||||
Render test images, read them back, then test for expected results.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
% conform -v 2
 | 
			
		||||
 | 
			
		||||
OpenGL Conformance Test
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path inactive.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 35. Indirect Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (5, 6, 5, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
Must Pass test passed.
 | 
			
		||||
Divide By Zero test passed.
 | 
			
		||||
Viewport Clamp test passed.
 | 
			
		||||
Matrix Stack test passed.
 | 
			
		||||
Matrix Stack Mixing test passed.
 | 
			
		||||
Vertex Order test passed.
 | 
			
		||||
Transformations test passed.
 | 
			
		||||
Transformation Normal test passed.
 | 
			
		||||
Viewport Transformation test passed.
 | 
			
		||||
Buffer Clear test passed.
 | 
			
		||||
Buffer Corners test passed.
 | 
			
		||||
Buffer Color test passed.
 | 
			
		||||
Color Ramp test passed.
 | 
			
		||||
Mask test passed.
 | 
			
		||||
Buffer Invariance test passed.
 | 
			
		||||
Accumulation Buffer test passed.
 | 
			
		||||
Select test passed.
 | 
			
		||||
Feedback test passed.
 | 
			
		||||
Scissor test passed.
 | 
			
		||||
Alpha Plane Function test passed.
 | 
			
		||||
Stencil Plane Clear test passed.
 | 
			
		||||
Stencil Plane Corners test passed.
 | 
			
		||||
Stencil Plane Operation test passed.
 | 
			
		||||
Stencil Plane Function test passed.
 | 
			
		||||
Depth Buffer Clear test passed.
 | 
			
		||||
Depth Buffer Function test passed.
 | 
			
		||||
Blend test passed.
 | 
			
		||||
Dither test passed.
 | 
			
		||||
LogicOp Function test does not exist for an RGB visual.
 | 
			
		||||
DrawPixels test passed.
 | 
			
		||||
CopyPixels test passed.
 | 
			
		||||
Bitmap Rasterization test passed.
 | 
			
		||||
Point Rasterization test passed.
 | 
			
		||||
Anti-aliased Point test passed.
 | 
			
		||||
Line Rasterization test passed.
 | 
			
		||||
Line Stipple test passed.
 | 
			
		||||
Anti-aliased Line test passed.
 | 
			
		||||
Horizontal and Vertical Line test passed.
 | 
			
		||||
Triangle Rasterization test passed.
 | 
			
		||||
Triangle Tile test passed.
 | 
			
		||||
Triangle Stipple test passed.
 | 
			
		||||
Anti-aliased Triangles test passed.
 | 
			
		||||
Quad Rasterization test passed.
 | 
			
		||||
Polygon Face test passed.
 | 
			
		||||
Polygon Cull test passed.
 | 
			
		||||
Polygon Stipple test passed.
 | 
			
		||||
Polygon Edge test passed.
 | 
			
		||||
Ambient Material test passed.
 | 
			
		||||
Ambient Scene test passed.
 | 
			
		||||
Attenuation Position test passed.
 | 
			
		||||
Diffuse Light test passed.
 | 
			
		||||
Diffuse Material test passed.
 | 
			
		||||
Diffuse Material Normal test passed.
 | 
			
		||||
Diffuse Material Positioning test passed.
 | 
			
		||||
Emissive Material test passed.
 | 
			
		||||
Specular Exponent test passed.
 | 
			
		||||
Specular Exponent Normal test passed.
 | 
			
		||||
Specular Local Eye Half Angle test passed.
 | 
			
		||||
Specular Light test passed.
 | 
			
		||||
Specular Material test passed.
 | 
			
		||||
Specular Normal test passed.
 | 
			
		||||
Spot Positioning test passed.
 | 
			
		||||
Spot Exponent and Positioning test passed.
 | 
			
		||||
Spot Exponent and Direction test passed.
 | 
			
		||||
Fog Exponential test passed.
 | 
			
		||||
Fog Linear test passed.
 | 
			
		||||
Texture Decal test passed.
 | 
			
		||||
Texture Border test passed.
 | 
			
		||||
Mipmaps Selection test passed.
 | 
			
		||||
Mipmaps Interpolation test passed.
 | 
			
		||||
Display Lists test passed.
 | 
			
		||||
Evaluator test passed.
 | 
			
		||||
Evaluator Color test passed.
 | 
			
		||||
Texture Edge Clamp test passed.
 | 
			
		||||
Packed Pixels test passed.
 | 
			
		||||
Texture LOD test passed.
 | 
			
		||||
Rescale Normal test passed.
 | 
			
		||||
Color Table test passed.
 | 
			
		||||
Convolution test passed.
 | 
			
		||||
Convolution Border test passed.
 | 
			
		||||
Histogram test passed.
 | 
			
		||||
MinMax test passed.
 | 
			
		||||
MultiTexture test passed.
 | 
			
		||||
 | 
			
		||||
Conform passed.
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
% conform -v 2 -p 1
 | 
			
		||||
 | 
			
		||||
OpenGL Conformance Test
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path level = 1.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 35. Indirect Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (5, 6, 5, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
Must Pass test passed.
 | 
			
		||||
Divide By Zero test passed.
 | 
			
		||||
Viewport Clamp test passed.
 | 
			
		||||
Matrix Stack test passed.
 | 
			
		||||
Matrix Stack Mixing test passed.
 | 
			
		||||
Vertex Order test passed.
 | 
			
		||||
Transformations test passed.
 | 
			
		||||
Transformation Normal test passed.
 | 
			
		||||
Viewport Transformation test passed.
 | 
			
		||||
Buffer Clear test passed.
 | 
			
		||||
Buffer Corners test passed.
 | 
			
		||||
Buffer Color test passed.
 | 
			
		||||
Color Ramp test passed.
 | 
			
		||||
Mask test passed.
 | 
			
		||||
Buffer Invariance test passed.
 | 
			
		||||
Accumulation Buffer test passed.
 | 
			
		||||
Select test passed.
 | 
			
		||||
Feedback test passed.
 | 
			
		||||
Scissor test passed.
 | 
			
		||||
Alpha Plane Function test passed.
 | 
			
		||||
Stencil Plane Clear test passed.
 | 
			
		||||
Stencil Plane Corners test passed.
 | 
			
		||||
Stencil Plane Operation test passed.
 | 
			
		||||
Stencil Plane Function test passed.
 | 
			
		||||
Depth Buffer Clear test passed.
 | 
			
		||||
Depth Buffer Function test passed.
 | 
			
		||||
Blend test passed.
 | 
			
		||||
Dither test passed.
 | 
			
		||||
LogicOp Function test does not exist for an RGB visual.
 | 
			
		||||
DrawPixels test passed.
 | 
			
		||||
CopyPixels test passed.
 | 
			
		||||
Bitmap Rasterization test passed.
 | 
			
		||||
Point Rasterization test passed.
 | 
			
		||||
Anti-aliased Point test passed.
 | 
			
		||||
Line Rasterization test passed.
 | 
			
		||||
Line Stipple test passed.
 | 
			
		||||
Anti-aliased Line test passed.
 | 
			
		||||
Horizontal and Vertical Line test passed.
 | 
			
		||||
Triangle Rasterization test passed.
 | 
			
		||||
Triangle Tile test passed.
 | 
			
		||||
Triangle Stipple test passed.
 | 
			
		||||
Anti-aliased Triangles test passed.
 | 
			
		||||
Quad Rasterization test passed.
 | 
			
		||||
Polygon Face test passed.
 | 
			
		||||
Polygon Cull test passed.
 | 
			
		||||
Polygon Stipple test passed.
 | 
			
		||||
Polygon Edge test passed.
 | 
			
		||||
Ambient Material test passed.
 | 
			
		||||
Ambient Scene test passed.
 | 
			
		||||
Attenuation Position test passed.
 | 
			
		||||
Diffuse Light test passed.
 | 
			
		||||
Diffuse Material test passed.
 | 
			
		||||
Diffuse Material Normal test passed.
 | 
			
		||||
Diffuse Material Positioning test passed.
 | 
			
		||||
Emissive Material test passed.
 | 
			
		||||
Specular Exponent test passed.
 | 
			
		||||
Specular Exponent Normal test passed.
 | 
			
		||||
Specular Local Eye Half Angle test passed.
 | 
			
		||||
Specular Light test passed.
 | 
			
		||||
Specular Material test passed.
 | 
			
		||||
Specular Normal test passed.
 | 
			
		||||
Spot Positioning test passed.
 | 
			
		||||
Spot Exponent and Positioning test passed.
 | 
			
		||||
Spot Exponent and Direction test passed.
 | 
			
		||||
Fog Exponential test passed.
 | 
			
		||||
Fog Linear test passed.
 | 
			
		||||
Texture Decal test passed.
 | 
			
		||||
Texture Border test passed.
 | 
			
		||||
Mipmaps Selection test passed.
 | 
			
		||||
Mipmaps Interpolation test passed.
 | 
			
		||||
Display Lists test passed.
 | 
			
		||||
Evaluator test passed.
 | 
			
		||||
Evaluator Color test passed.
 | 
			
		||||
Texture Edge Clamp test passed.
 | 
			
		||||
Packed Pixels test passed.
 | 
			
		||||
Texture LOD test passed.
 | 
			
		||||
Rescale Normal test passed.
 | 
			
		||||
Color Table test passed.
 | 
			
		||||
Convolution test passed.
 | 
			
		||||
Convolution Border test passed.
 | 
			
		||||
Histogram test passed.
 | 
			
		||||
MinMax test passed.
 | 
			
		||||
MultiTexture test passed.
 | 
			
		||||
 | 
			
		||||
Conform passed.
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
% conform -v 2 -p 2
 | 
			
		||||
 | 
			
		||||
OpenGL Conformance Test
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path level = 2.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 35. Indirect Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (5, 6, 5, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
Must Pass test passed.
 | 
			
		||||
Divide By Zero test passed.
 | 
			
		||||
Viewport Clamp test passed.
 | 
			
		||||
Matrix Stack test passed.
 | 
			
		||||
Matrix Stack Mixing test passed.
 | 
			
		||||
Vertex Order test passed.
 | 
			
		||||
Transformations test passed.
 | 
			
		||||
Transformation Normal test passed.
 | 
			
		||||
Viewport Transformation test passed.
 | 
			
		||||
Buffer Clear test passed.
 | 
			
		||||
Buffer Corners test passed.
 | 
			
		||||
Buffer Color test passed.
 | 
			
		||||
Color Ramp test passed.
 | 
			
		||||
Mask test passed.
 | 
			
		||||
Buffer Invariance test passed.
 | 
			
		||||
Accumulation Buffer test passed.
 | 
			
		||||
Select test passed.
 | 
			
		||||
Feedback test passed.
 | 
			
		||||
Scissor test passed.
 | 
			
		||||
Alpha Plane Function test passed.
 | 
			
		||||
Stencil Plane Clear test passed.
 | 
			
		||||
Stencil Plane Corners test passed.
 | 
			
		||||
Stencil Plane Operation test passed.
 | 
			
		||||
Stencil Plane Function test passed.
 | 
			
		||||
Depth Buffer Clear test passed.
 | 
			
		||||
Depth Buffer Function test passed.
 | 
			
		||||
Blend test passed.
 | 
			
		||||
Dither test passed.
 | 
			
		||||
LogicOp Function test does not exist for an RGB visual.
 | 
			
		||||
DrawPixels test passed.
 | 
			
		||||
CopyPixels test passed.
 | 
			
		||||
Bitmap Rasterization test passed.
 | 
			
		||||
Point Rasterization test passed.
 | 
			
		||||
Anti-aliased Point test passed.
 | 
			
		||||
Line Rasterization test passed.
 | 
			
		||||
Line Stipple test passed.
 | 
			
		||||
Anti-aliased Line test passed.
 | 
			
		||||
Horizontal and Vertical Line test passed.
 | 
			
		||||
Triangle Rasterization test passed.
 | 
			
		||||
Triangle Tile test passed.
 | 
			
		||||
Triangle Stipple test passed.
 | 
			
		||||
Anti-aliased Triangles test passed.
 | 
			
		||||
Quad Rasterization test passed.
 | 
			
		||||
Polygon Face test passed.
 | 
			
		||||
Polygon Cull test passed.
 | 
			
		||||
Polygon Stipple test passed.
 | 
			
		||||
Polygon Edge test passed.
 | 
			
		||||
Ambient Material test passed.
 | 
			
		||||
Ambient Scene test passed.
 | 
			
		||||
Attenuation Position test passed.
 | 
			
		||||
Diffuse Light test passed.
 | 
			
		||||
Diffuse Material test passed.
 | 
			
		||||
Diffuse Material Normal test passed.
 | 
			
		||||
Diffuse Material Positioning test passed.
 | 
			
		||||
Emissive Material test passed.
 | 
			
		||||
Specular Exponent test passed.
 | 
			
		||||
Specular Exponent Normal test passed.
 | 
			
		||||
Specular Local Eye Half Angle test passed.
 | 
			
		||||
Specular Light test passed.
 | 
			
		||||
Specular Material test passed.
 | 
			
		||||
Specular Normal test passed.
 | 
			
		||||
Spot Positioning test passed.
 | 
			
		||||
Spot Exponent and Positioning test passed.
 | 
			
		||||
Spot Exponent and Direction test passed.
 | 
			
		||||
Fog Exponential test passed.
 | 
			
		||||
Fog Linear test passed.
 | 
			
		||||
Texture Decal test passed.
 | 
			
		||||
Texture Border test passed.
 | 
			
		||||
Mipmaps Selection test passed.
 | 
			
		||||
Mipmaps Interpolation test passed.
 | 
			
		||||
Display Lists test passed.
 | 
			
		||||
Evaluator test passed.
 | 
			
		||||
Evaluator Color test passed.
 | 
			
		||||
Texture Edge Clamp test passed.
 | 
			
		||||
Packed Pixels test passed.
 | 
			
		||||
Texture LOD test passed.
 | 
			
		||||
Rescale Normal test passed.
 | 
			
		||||
Color Table test passed.
 | 
			
		||||
Convolution test passed.
 | 
			
		||||
Convolution Border test passed.
 | 
			
		||||
Histogram test passed.
 | 
			
		||||
MinMax test passed.
 | 
			
		||||
MultiTexture test passed.
 | 
			
		||||
 | 
			
		||||
Conform passed.
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
% conform -v 2 -p 3
 | 
			
		||||
 | 
			
		||||
OpenGL Conformance Test
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path level = 3.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 35. Indirect Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (5, 6, 5, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
Must Pass test passed.
 | 
			
		||||
Divide By Zero test passed.
 | 
			
		||||
Viewport Clamp test passed.
 | 
			
		||||
Matrix Stack test passed.
 | 
			
		||||
Matrix Stack Mixing test passed.
 | 
			
		||||
Vertex Order test passed.
 | 
			
		||||
Transformations test passed.
 | 
			
		||||
Transformation Normal test passed.
 | 
			
		||||
Viewport Transformation test passed.
 | 
			
		||||
Buffer Clear test passed.
 | 
			
		||||
Buffer Corners test passed.
 | 
			
		||||
Buffer Color test passed.
 | 
			
		||||
Color Ramp test passed.
 | 
			
		||||
Mask test passed.
 | 
			
		||||
Buffer Invariance test passed.
 | 
			
		||||
Accumulation Buffer test passed.
 | 
			
		||||
Select test passed.
 | 
			
		||||
Feedback test passed.
 | 
			
		||||
Scissor test passed.
 | 
			
		||||
Alpha Plane Function test passed.
 | 
			
		||||
Stencil Plane Clear test passed.
 | 
			
		||||
Stencil Plane Corners test passed.
 | 
			
		||||
Stencil Plane Operation test passed.
 | 
			
		||||
Stencil Plane Function test passed.
 | 
			
		||||
Depth Buffer Clear test passed.
 | 
			
		||||
Depth Buffer Function test passed.
 | 
			
		||||
Blend test passed.
 | 
			
		||||
Dither test passed.
 | 
			
		||||
LogicOp Function test does not exist for an RGB visual.
 | 
			
		||||
DrawPixels test passed.
 | 
			
		||||
CopyPixels test passed.
 | 
			
		||||
Bitmap Rasterization test passed.
 | 
			
		||||
Point Rasterization test passed.
 | 
			
		||||
Anti-aliased Point test passed.
 | 
			
		||||
Line Rasterization test passed.
 | 
			
		||||
Line Stipple test passed.
 | 
			
		||||
Anti-aliased Line test passed.
 | 
			
		||||
Horizontal and Vertical Line test passed.
 | 
			
		||||
Triangle Rasterization test passed.
 | 
			
		||||
Triangle Tile test passed.
 | 
			
		||||
Triangle Stipple test passed.
 | 
			
		||||
Anti-aliased Triangles test passed.
 | 
			
		||||
Quad Rasterization test passed.
 | 
			
		||||
Polygon Face test passed.
 | 
			
		||||
Polygon Cull test passed.
 | 
			
		||||
Polygon Stipple test passed.
 | 
			
		||||
Polygon Edge test passed.
 | 
			
		||||
Ambient Material test passed.
 | 
			
		||||
Ambient Scene test passed.
 | 
			
		||||
Attenuation Position test passed.
 | 
			
		||||
Diffuse Light test passed.
 | 
			
		||||
Diffuse Material test passed.
 | 
			
		||||
Diffuse Material Normal test passed.
 | 
			
		||||
Diffuse Material Positioning test passed.
 | 
			
		||||
Emissive Material test passed.
 | 
			
		||||
Specular Exponent test passed.
 | 
			
		||||
Specular Exponent Normal test passed.
 | 
			
		||||
Specular Local Eye Half Angle test passed.
 | 
			
		||||
Specular Light test passed.
 | 
			
		||||
Specular Material test passed.
 | 
			
		||||
Specular Normal test passed.
 | 
			
		||||
Spot Positioning test passed.
 | 
			
		||||
Spot Exponent and Positioning test passed.
 | 
			
		||||
Spot Exponent and Direction test passed.
 | 
			
		||||
Fog Exponential test passed.
 | 
			
		||||
Fog Linear test passed.
 | 
			
		||||
Texture Decal test passed.
 | 
			
		||||
Texture Border test passed.
 | 
			
		||||
Mipmaps Selection test passed.
 | 
			
		||||
Mipmaps Interpolation test passed.
 | 
			
		||||
Display Lists test passed.
 | 
			
		||||
Evaluator test passed.
 | 
			
		||||
Evaluator Color test passed.
 | 
			
		||||
Texture Edge Clamp test passed.
 | 
			
		||||
Packed Pixels test passed.
 | 
			
		||||
Texture LOD test passed.
 | 
			
		||||
Rescale Normal test passed.
 | 
			
		||||
Color Table test passed.
 | 
			
		||||
Convolution test passed.
 | 
			
		||||
Convolution Border test passed.
 | 
			
		||||
Histogram test passed.
 | 
			
		||||
MinMax test passed.
 | 
			
		||||
MultiTexture test passed.
 | 
			
		||||
 | 
			
		||||
Conform passed.
 | 
			
		||||
 | 
			
		||||
----------------------------------------------------------------------
 | 
			
		||||
% conform -v 2 -p 4
 | 
			
		||||
 | 
			
		||||
OpenGL Conformance Test
 | 
			
		||||
Version 1.2
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path level = 4.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 35. Indirect Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (5, 6, 5, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.0324, 0.016, 0.0324, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
Must Pass test passed.
 | 
			
		||||
Divide By Zero test passed.
 | 
			
		||||
Viewport Clamp test passed.
 | 
			
		||||
Matrix Stack test passed.
 | 
			
		||||
Matrix Stack Mixing test passed.
 | 
			
		||||
Vertex Order test passed.
 | 
			
		||||
Transformations test passed.
 | 
			
		||||
Transformation Normal test passed.
 | 
			
		||||
Viewport Transformation test passed.
 | 
			
		||||
Buffer Clear test passed.
 | 
			
		||||
Buffer Corners test passed.
 | 
			
		||||
Buffer Color test passed.
 | 
			
		||||
Color Ramp test passed.
 | 
			
		||||
Mask test passed.
 | 
			
		||||
Buffer Invariance test passed.
 | 
			
		||||
Accumulation Buffer test passed.
 | 
			
		||||
Select test passed.
 | 
			
		||||
Feedback test passed.
 | 
			
		||||
Scissor test passed.
 | 
			
		||||
Alpha Plane Function test passed.
 | 
			
		||||
Stencil Plane Clear test passed.
 | 
			
		||||
Stencil Plane Corners test passed.
 | 
			
		||||
Stencil Plane Operation test passed.
 | 
			
		||||
Stencil Plane Function test passed.
 | 
			
		||||
Depth Buffer Clear test passed.
 | 
			
		||||
Depth Buffer Function test passed.
 | 
			
		||||
Blend test passed.
 | 
			
		||||
Dither test passed.
 | 
			
		||||
LogicOp Function test does not exist for an RGB visual.
 | 
			
		||||
DrawPixels test passed.
 | 
			
		||||
CopyPixels test passed.
 | 
			
		||||
Bitmap Rasterization test passed.
 | 
			
		||||
Point Rasterization test passed.
 | 
			
		||||
Anti-aliased Point test passed.
 | 
			
		||||
Line Rasterization test passed.
 | 
			
		||||
Line Stipple test passed.
 | 
			
		||||
Anti-aliased Line test passed.
 | 
			
		||||
Horizontal and Vertical Line test passed.
 | 
			
		||||
Triangle Rasterization test passed.
 | 
			
		||||
Triangle Tile test passed.
 | 
			
		||||
Triangle Stipple test passed.
 | 
			
		||||
Anti-aliased Triangles test passed.
 | 
			
		||||
Quad Rasterization test passed.
 | 
			
		||||
Polygon Face test passed.
 | 
			
		||||
Polygon Cull test passed.
 | 
			
		||||
Polygon Stipple test passed.
 | 
			
		||||
Polygon Edge test passed.
 | 
			
		||||
Ambient Material test passed.
 | 
			
		||||
Ambient Scene test passed.
 | 
			
		||||
Attenuation Position test passed.
 | 
			
		||||
Diffuse Light test passed.
 | 
			
		||||
Diffuse Material test passed.
 | 
			
		||||
Diffuse Material Normal test passed.
 | 
			
		||||
Diffuse Material Positioning test passed.
 | 
			
		||||
Emissive Material test passed.
 | 
			
		||||
Specular Exponent test passed.
 | 
			
		||||
Specular Exponent Normal test passed.
 | 
			
		||||
Specular Local Eye Half Angle test passed.
 | 
			
		||||
Specular Light test passed.
 | 
			
		||||
Specular Material test passed.
 | 
			
		||||
Specular Normal test passed.
 | 
			
		||||
Spot Positioning test passed.
 | 
			
		||||
Spot Exponent and Positioning test passed.
 | 
			
		||||
Spot Exponent and Direction test passed.
 | 
			
		||||
Fog Exponential test passed.
 | 
			
		||||
Fog Linear test passed.
 | 
			
		||||
Texture Decal test passed.
 | 
			
		||||
Texture Border test passed.
 | 
			
		||||
Mipmaps Selection test passed.
 | 
			
		||||
Mipmaps Interpolation test passed.
 | 
			
		||||
Display Lists test passed.
 | 
			
		||||
Evaluator test passed.
 | 
			
		||||
Evaluator Color test passed.
 | 
			
		||||
Texture Edge Clamp test passed.
 | 
			
		||||
Packed Pixels test passed.
 | 
			
		||||
Texture LOD test passed.
 | 
			
		||||
Rescale Normal test passed.
 | 
			
		||||
Color Table test passed.
 | 
			
		||||
Convolution test passed.
 | 
			
		||||
Convolution Border test passed.
 | 
			
		||||
Histogram test passed.
 | 
			
		||||
MinMax test passed.
 | 
			
		||||
MultiTexture test passed.
 | 
			
		||||
 | 
			
		||||
Conform passed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GLX CONFORMANCE TEST
 | 
			
		||||
====================
 | 
			
		||||
 | 
			
		||||
% conformx -v 2
 | 
			
		||||
 | 
			
		||||
OpenGL X Conformance Test
 | 
			
		||||
Version 1.1.1
 | 
			
		||||
 | 
			
		||||
Setup Report.
 | 
			
		||||
    Verbose level = 2.
 | 
			
		||||
    Random number seed = 1.
 | 
			
		||||
    Path inactive.
 | 
			
		||||
 | 
			
		||||
Visual Report.
 | 
			
		||||
    Display ID = 34. Direct Rendering.
 | 
			
		||||
    Double Buffered.
 | 
			
		||||
    RGBA (8, 8, 8, 0).
 | 
			
		||||
    Stencil (8).
 | 
			
		||||
    Depth (16).
 | 
			
		||||
    Accumulation (16, 16, 16, 16).
 | 
			
		||||
 | 
			
		||||
Epsilon Report.
 | 
			
		||||
    zero error epsilon = 0.000122.
 | 
			
		||||
    RGBA error epsilon = 0.00404, 0.00404, 0.00404, 0.000122.
 | 
			
		||||
    Depth buffer error epsilon = 0.000137.
 | 
			
		||||
    Stencil plane error epsilon = 0.00404.
 | 
			
		||||
    Accumulation error epsilon = 0.000137, 0.000137, 0.000137, 0.000137.
 | 
			
		||||
 | 
			
		||||
Default State test passed.
 | 
			
		||||
glReadPixels() test passed.
 | 
			
		||||
Font test passed.
 | 
			
		||||
 | 
			
		||||
Conformx passed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
NOTE: conformx passes for all machine path levels (-p option).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										78
									
								
								docs/contents.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								docs/contents.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
<html>
 | 
			
		||||
 | 
			
		||||
<title>Contents</title>
 | 
			
		||||
 | 
			
		||||
<body text="#ffffff" bgcolor="#119955" link="#ffffff" vlink="#dddddd" alink="#ffffff">
 | 
			
		||||
 | 
			
		||||
<b>Documentation</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="intro.html" target="MainFrame">Introduction</a>
 | 
			
		||||
<li><a href="news.html" target="MainFrame">News</a>
 | 
			
		||||
<li><a href="systems.html" target="MainFrame">Platforms and Drivers</a>
 | 
			
		||||
<li><a href="license.html" target="MainFrame">License & Copyright</a>
 | 
			
		||||
<li><a href="faq.html" target="MainFrame">FAQ</a>
 | 
			
		||||
<li><a href="VERSIONS" target="MainFrame">Version History</a>
 | 
			
		||||
<li><a href="relnotes.html" target="MainFrame">Release Notes</a>
 | 
			
		||||
<li><a href="thanks.html" target="MainFrame">Acknowledgements</a>
 | 
			
		||||
<li><a href="conform.html" target="MainFrame">Conformance Testing</a>
 | 
			
		||||
<li>more docs below...
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<b>Download / Install</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://www.sourceforge.net/projects/mesa3d" target="_parent">Stable Release (5.0.2)</a>
 | 
			
		||||
<li><a href="download.html" target="MainFrame">Downloading/Unpacking</a>
 | 
			
		||||
<li><a href="install.html" target="MainFrame">Compilation/Installation</a>
 | 
			
		||||
<li><a href="glu.html" target="MainFrame">SGI's GLU</a>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<b>Resources</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="lists.html" target="MainFrame">Mailing Lists</a>
 | 
			
		||||
<li><a href="bugs.html" target="MainFrame">Bug Database</a>
 | 
			
		||||
<li><a href="webmaster.html" target="MainFrame">Webmaster</a>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<b>User Topics</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<LI><A HREF="envvars.html" target="MainFrame">Environment Variables</A>
 | 
			
		||||
<LI><A HREF="osmesa.html" target="MainFrame">Off-Screen Rendering</A>
 | 
			
		||||
<LI><A HREF="pbuffers.html" target="MainFrame">Pbuffer Rendering</A>
 | 
			
		||||
<LI><A HREF="debugging.html" target="MainFrame">Debugging Tips</A>
 | 
			
		||||
<LI><A HREF="perf.html" target="MainFrame">Performance Tips</A>
 | 
			
		||||
<LI><A HREF="extensions.html" target="MainFrame">Mesa Extensions</A>
 | 
			
		||||
<LI><A HREF="mangling.html" target="MainFrame">Function Name Mangling</A>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<b>Developer Topics</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://sourceforge.net/projects/mesa3d" target="_parent">SourceForge homepage</a>
 | 
			
		||||
<li><a href="cvs_branches.html" target="MainFrame">CVS Branch Info</a>
 | 
			
		||||
<li><a href="cvs_anonymous.html" target="MainFrame">Anonymous CVS Access</a>
 | 
			
		||||
<li><a href="utilities.html" target="MainFrame">Utilities</a>
 | 
			
		||||
<li><a href="helpwanted.html" target="MainFrame">Help Wanted</a>
 | 
			
		||||
<li><a href="devinfo.html" target="MainFrame">Development Notes</a>
 | 
			
		||||
<li><a href="sourcedocs.html" target="MainFrame">Source Documentation</a>
 | 
			
		||||
<li><a href="subset.html" target="MainFrame">Subset Information</a>
 | 
			
		||||
<li><a href="fbdev-dri.html" target="MainFrame">fbdev/DRI Environment</a>
 | 
			
		||||
<LI><A HREF="custom.html" target="MainFrame">Custom Development</A>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<b>Links</b>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://www.opengl.org" target="_parent">OpenGL website</a>
 | 
			
		||||
<li><a href="http://dri.sourceforge.net" target="_parent">DRI website</a>
 | 
			
		||||
<li><a href="games.html" target="MainFrame">Games and Entertainment</a>
 | 
			
		||||
<li><a href="libraries.html" target="MainFrame">Libraries and Toolkits</a>
 | 
			
		||||
<li><a href="modelers.html" target="MainFrame">Modeling and Rendering</a>
 | 
			
		||||
<li><a href="science.html" target="MainFrame">Science and Technical</a>
 | 
			
		||||
<li><a href="utility.html" target="MainFrame">Utilities</a>
 | 
			
		||||
<li><a href="demos.html" target="MainFrame">Demos / other</a>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<A HREF="http://sourceforge.net"
 | 
			
		||||
target="_parent"><IMG SRC="http://sourceforge.net/sflogo.php?group_id=3&type=1"
 | 
			
		||||
WIDTH="88" HEIGHT="31" ALIGN="BOTTOM" ALT="Sourceforge.net" BORDER="0"></A>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										25
									
								
								docs/custom.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								docs/custom.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Custom Development</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Custom Development</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa is primarily developed and maintained on a volunteer basis.
 | 
			
		||||
Some Mesa development work has been done in conjuction with contracted
 | 
			
		||||
projects, such as the XFree86/DRI drivers.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<pre>[Begin shameless plug]</pre>
 | 
			
		||||
If you have a need for specific or custom Mesa development work,
 | 
			
		||||
<a href="http://www.tungstengraphics.com/" target="_parent">
 | 
			
		||||
Tungsten Graphics, Inc.</a> may be able to help you.
 | 
			
		||||
<pre>[End shameless plug]</pre>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										37
									
								
								docs/cvs_anonymous.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								docs/cvs_anonymous.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,37 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Anonymous CVS</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Anonymous CVS</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Anonymous, public, read-only access to the code in CVS is
 | 
			
		||||
available. Here are the basic instructions for Unix systems:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ol>
 | 
			
		||||
	<li>Install CVS client software on your computer. Version 1.9.28 is known to work.
 | 
			
		||||
	</li><li>Login as an anonymous user: <code>cvs -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
 | 
			
		||||
	login</code>
 | 
			
		||||
	</li><li>Just hit return at the <code>CVS password:</code> prompt.
 | 
			
		||||
	</li><li>Then checkout mesa: <code>cvs -z3 -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
 | 
			
		||||
	co Mesa</code>
 | 
			
		||||
</li></ol>
 | 
			
		||||
 | 
			
		||||
<p>To update your Mesa CVS source to the latest CVS source:
 | 
			
		||||
 | 
			
		||||
</p><ol>
 | 
			
		||||
	<li><code>cd Mesa</code>
 | 
			
		||||
	</li><li><code>cvs -z3 -d:pserver:anonymous@cvs.mesa3d.sourceforge.net:/cvsroot/mesa3d
 | 
			
		||||
	update</code>
 | 
			
		||||
</li></ol>
 | 
			
		||||
 | 
			
		||||
<p>You can browse the Mesa source code in CVS
 | 
			
		||||
<a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/mesa3d/">here.
 | 
			
		||||
</a>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										59
									
								
								docs/cvs_branches.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								docs/cvs_branches.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>CVS Branches</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>CVS Branch Information</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The Mesa3d sources are split up into two branches. A branch that is to
 | 
			
		||||
remain as stable as possible, and an unstable branch where development
 | 
			
		||||
work for new versions will be done. The current stable branch is
 | 
			
		||||
tagged <code>mesa_3_4_branch</code> while the unstable branch is just
 | 
			
		||||
the default. The goal is to adopt and even/odd stable/unstable
 | 
			
		||||
versioning scheme similar to the Linux kernel. Hence releases of Mesa
 | 
			
		||||
3.2.X should be more stable than Mesa 3.3.X.<p></p> <p>All versions of
 | 
			
		||||
Mesa after 3.0 will also be tagged with a branch id. Mesa 3.1 has the
 | 
			
		||||
tag <code>mesa_3_1</code>, Mesa 3.2 will be <code>mesa_3_2</code>,
 | 
			
		||||
Mesa 3.3 <code>mesa_3_3</code>, etc..</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To checkout a specific branch of mesa just pass <code>-r</code> and
 | 
			
		||||
the branch tag after your cvs command. For example <code>cvs checkout
 | 
			
		||||
-r mesa_3_4_branch Mesa</code> will checkout the 3.4 branch and
 | 
			
		||||
<code>cvs update -r mesa_3_4_branch</code> will convert your current
 | 
			
		||||
branch to the 3.4 dev branch.
 | 
			
		||||
Consult <a href="http://www.durak.org/cvswebsites/doc/cvs_5.php3#SEC54"
 | 
			
		||||
target="_parent">http://www.durak.org/cvswebsites/doc/cvs_5.php3#SEC54</a>
 | 
			
		||||
for more on branching in cvs.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To see a list of all the CVS branchs run <code>cvs log README</code> (or any
 | 
			
		||||
other file) and look for the section labeled <code>symbolic names</code>.
 | 
			
		||||
You'll see something like this:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<pre>  symbolic names:
 | 
			
		||||
        mesa_4_0: 1.3
 | 
			
		||||
        mesa_4_0_branch: 1.3.0.6
 | 
			
		||||
        mesa_3_5: 1.3
 | 
			
		||||
        mesa_3_4_2: 1.3
 | 
			
		||||
        mesa_3_4_1: 1.3
 | 
			
		||||
        mesa_3_4: 1.3
 | 
			
		||||
        mesa_3_4_branch: 1.3.0.4
 | 
			
		||||
        mesa_3_3: 1.3
 | 
			
		||||
        mesa_3_2_1: 1.1.1.1
 | 
			
		||||
        mesa_3_3_texture_env_combine2: 1.3.0.2
 | 
			
		||||
        mesa_3_2: 1.1.1.1
 | 
			
		||||
        mesa_3_2_beta_1: 1.1.1.1
 | 
			
		||||
        mesa_3_1: 1.1.1.1
 | 
			
		||||
        mesa_3_2_dev: 1.1.1.1.0.2
 | 
			
		||||
        mesa_3_1_beta_3: 1.1.1.1
 | 
			
		||||
        start: 1.1.1.1
 | 
			
		||||
        mesa: 1.1.1
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										36
									
								
								docs/debugging.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								docs/debugging.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Debugging Tips</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Debugging Tips</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
   Normally Mesa (and OpenGL) records but does not notify the user of
 | 
			
		||||
   errors.  It is up to the application to call
 | 
			
		||||
   <code>glGetError</code> to check for errors.  Mesa supports an
 | 
			
		||||
   environment variable, MESA_DEBUG, to help with debugging.  If
 | 
			
		||||
   MESA_DEBUG is defined, a message will be printed to stdout whenever
 | 
			
		||||
   an error occurs.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
   More extensive error checking is done when Mesa is compiled with the
 | 
			
		||||
   DEBUG symbol defined.  You'll have to edit the Make-config file and
 | 
			
		||||
   add -DDEBUG to the CFLAGS line for your system configuration.  You may
 | 
			
		||||
   also want to replace any optimization flags with the -g flag so you can
 | 
			
		||||
   use your debugger.  After you've edited Make-config type 'make clean'
 | 
			
		||||
   before recompiling.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
   In your debugger you can set a breakpoint in _mesa_error() to trap Mesa
 | 
			
		||||
   errors.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
   There is a display list printing/debugging facility.  See the end of
 | 
			
		||||
   src/dlist.c for details.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										16
									
								
								docs/demos.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								docs/demos.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Demos</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Demos</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://www.geocities.com/shobhand/homepage.html">Shobhan Dutta's Geartrain and Walkthrough Demos</a>
 | 
			
		||||
</li></ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										230
									
								
								docs/devinfo.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										230
									
								
								docs/devinfo.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,230 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Development Notes</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Development Notes</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Adding Extentions</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To add a new GL extension to Mesa you have to do the following.
 | 
			
		||||
<pre>
 | 
			
		||||
   If glext.h doesn't define the extension, edit include/GL/gl.h and add:
 | 
			
		||||
	- new enum tokens
 | 
			
		||||
	- new API function entry points
 | 
			
		||||
	- #define GL_EXT_the_extension_name 1
 | 
			
		||||
 | 
			
		||||
   If adding a new API function (call it glNewFunctionEXT):
 | 
			
		||||
	- insert glNewFunctionEXT()into src/apiext.h
 | 
			
		||||
	- edit src/types.h and add NewFunction to the gl_api_table struct
 | 
			
		||||
	- implement gl_NewFunction() in the appropriate src file
 | 
			
		||||
	- hook gl_NewFunction() into pointers.c
 | 
			
		||||
	- add display list support in dlist.c for save_NewFunction()
 | 
			
		||||
	- add glNewFunctionEXT to gl_GetProcAddress() in extensions.c or
 | 
			
		||||
	  in the device driver's GetProcAddress() function if appropriate
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
If adding new GL state be sure to update get.c and enable.c
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
In general, look for an extension similar to the new one that's already
 | 
			
		||||
implemented in Mesa and follow it by example.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Coding Style</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa's code style has changed over the years.  Here's the latest.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Comment your code!  It's extremely important that open-source code be
 | 
			
		||||
well documented.  Also, strive to write clean, easily understandable code.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
3-space indentation
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you use tabs, set them to 8 columns
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Brace example:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
	if (condition) {
 | 
			
		||||
	   foo;
 | 
			
		||||
	}
 | 
			
		||||
	else {
 | 
			
		||||
	   bar;
 | 
			
		||||
	}
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Here's the GNU indent command which will best approximate my preferred style:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
	indent -br -i3 -npcs infile.c -o outfile.c
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Local variable name example:  localVarName (no underscores)
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Constants and macros are ALL_UPPERCASE, with _ between words
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Global vars not allowed.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Function name examples:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
	glFooBar()       - a public GL entry point (in dispatch.c)
 | 
			
		||||
	_mesa_FooBar()   - the internal immediate mode function
 | 
			
		||||
	save_FooBar()    - retained mode (display list) function in dlist.c
 | 
			
		||||
	foo_bar()        - a static (private) function
 | 
			
		||||
	_mesa_foo_bar()  - an internal non-static Mesa function
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Writing a Device Driver</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
XXX to do
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Making a New Mesa Release</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
These are the instructions for making a new Mesa release.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Prerequisites (later versions may work):
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>	autoconf 2.50
 | 
			
		||||
<li>	automake 1.4-p2
 | 
			
		||||
<li>	libtool 1.4
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Be sure to do a "cvs update -d ." in the Mesa directory to
 | 
			
		||||
get all the latest files.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Update the version definitions in src/version.h
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Create/edit the docs/RELNOTES-X.Y file to document what's new in the release.
 | 
			
		||||
Edit the docs/VERSIONS file too.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Edit Make-config and change the MESA_MAJOR and/or MESA_MINOR versions.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Edit the GNU configure stuff to change versions numbers as needed:
 | 
			
		||||
Update the version string (second argument) in the line
 | 
			
		||||
"AM_INIT_AUTOMAKE(Mesa, 3.3)" in the configure.in file.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Remove the leading `dnl' from the line "dnl AM_MAINTAINER_MODE".
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Verify the version numbers near the top of configure.in
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Run "fixam -f" to disable automatic dependency tracking.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Run the bootstrap script to generate the configure script.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Edit Makefile.X11 and verify DIRECTORY is set correctly.  The Mesa
 | 
			
		||||
sources must be in that directory (or there must be a symbolic link).
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Edit Makefile.X11 and verify that LIB_NAME and DEMO_NAME are correct.
 | 
			
		||||
If it's a beta release, be sure the bump up the beta release number.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
cp Makefile.X11 to Makefile so that the old-style Mesa makefiles
 | 
			
		||||
still work.  ./configure will overwrite it if that's what the user runs.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Make a symbolic link from $(DIRECTORY) to Mesa.  For example,
 | 
			
		||||
ln -s Mesa Mesa-3.3    This is needed in order to make a correct
 | 
			
		||||
tar file in the next step.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Make the distribution files.  From inside the Mesa directory:
 | 
			
		||||
<pre>
 | 
			
		||||
	make -f Makefile.X11 lib_tar
 | 
			
		||||
	make -f Makefile.X11 demo_tar
 | 
			
		||||
	make -f Makefile.X11 lib_zip
 | 
			
		||||
	make -f Makefile.X11 demo_zip
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Copy the distribution files to a temporary directory, unpack them,
 | 
			
		||||
compile everything, and run some demos to be sure everything works.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Upload the *.tar.gz and *.zip files to ftp.mesa3d.org
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Update the web site.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Make an announcement on the mailing lists:
 | 
			
		||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>d</em><em>e</em><em>v</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em>,
 | 
			
		||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>u</em><em>s</em><em>e</em><em>r</em><em>s</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em>
 | 
			
		||||
and
 | 
			
		||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>a</em><em>n</em><em>n</em><em>o</em><em>u</em><em>n</em><em>c</em><em>e</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Autoconf info</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
In order to run the bootstrap script you'll need:
 | 
			
		||||
<p>
 | 
			
		||||
<pre>
 | 
			
		||||
autoconf 2.50
 | 
			
		||||
automake 1.4-p5
 | 
			
		||||
libtool 1.4
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										104
									
								
								docs/download.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								docs/download.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,104 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Getting Mesa</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Downloading / Unpacking</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa can be downloaded from the
 | 
			
		||||
<a href="http://www.sourceforge.net/projects/mesa3d" target="_parent">
 | 
			
		||||
SourceForge download area</A>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Since version 2.3, Mesa is distributed in two pieces:  main library code
 | 
			
		||||
and demos.  If you're upgrading from a previous version of Mesa or you're not
 | 
			
		||||
interested in the demos you can just download the core Mesa archive file.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa is available in at least three archive formats:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
1. GNU zip/tar
 | 
			
		||||
 | 
			
		||||
	Download MesaLib-X.Y.tar.gz and optionally MesaDemos-X.Y.tar.gz
 | 
			
		||||
	Unpack with:
 | 
			
		||||
		gzcat MesaLib-X.Y.tar.gz | tar xf -
 | 
			
		||||
		gzcat MesaDemos-X.Y.tar.gz | tar xf -
 | 
			
		||||
	or
 | 
			
		||||
		gunzip MesaLib-X.Y.tar.gz ; tar xf MesaLib-X.Y.tar
 | 
			
		||||
		gunzip MesaDemos-X.Y.tar.gz ; tar xf MesaLib-X.Y.tar
 | 
			
		||||
	or
 | 
			
		||||
		tar zxf MesaLib-X.Y.tar.gz
 | 
			
		||||
		tar zxf MesaDemos-X.Y.tar.gz
 | 
			
		||||
 | 
			
		||||
	If you don't have gzcat try zcat instead.
 | 
			
		||||
 | 
			
		||||
2. Unix compressed/tar
 | 
			
		||||
 | 
			
		||||
	Download MesaLib-X.Y.tar.Z and optionally MesaDemos-X.Y.tar.Z
 | 
			
		||||
	Unpack with:
 | 
			
		||||
		zcat MesaLib-X.Y.tar.Z | tar xf -
 | 
			
		||||
		zcat MesaDemos-X.Y.tar.Z | tar xf -
 | 
			
		||||
 | 
			
		||||
3. ZIP format
 | 
			
		||||
 | 
			
		||||
	Download MesaLib-X.Y.zip and optionally MesaDemos-X.Y.zip
 | 
			
		||||
	Unpack with:
 | 
			
		||||
		unzip MesaLib-X.Y.zip
 | 
			
		||||
		unzip MesaDemos-X.Y.zip
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
After unpacking you'll have these directories (and more):
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
Makefile.X11	- top-level Makefile for X11-based systems
 | 
			
		||||
Make-config	- system configurations used by the Makefile.X11
 | 
			
		||||
include/	- GL header (include) files
 | 
			
		||||
bin/		- shell scripts for making shared libraries, etc
 | 
			
		||||
lib/		- final client libraries, created during compilation
 | 
			
		||||
docs/		- documentation
 | 
			
		||||
src/		- source code for libraries
 | 
			
		||||
src/mesa	- sources for the main Mesa library and device drivers
 | 
			
		||||
src/glu		- libGLU source code
 | 
			
		||||
src/glw		- Xt/Motif/OpenGL widget code
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
and if you downloaded and unpacked the MesaDemos.X.Y archive:
 | 
			
		||||
 | 
			
		||||
src/glut	- GLUT source code
 | 
			
		||||
progs/		- OpenGL programs
 | 
			
		||||
progs/demos	- original Mesa demos
 | 
			
		||||
progs/xdemos	- GLX OpenGL/Mesa demos
 | 
			
		||||
progs/redbook	- examples from the OpenGL Programming Guide
 | 
			
		||||
progs/samples	- examples from SGI
 | 
			
		||||
progs/images/	- image files
 | 
			
		||||
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Proceed to <a href="install.html">compilation and installation
 | 
			
		||||
instructions</a>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<H1>GLUT</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 2.5 and later includes Mark Kilgard's GLUT library (GL Utility Toolkit).
 | 
			
		||||
GLUT is built automatically on systems which support it.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The GLUT tests, demos, examples, etc are not included, just the main library.
 | 
			
		||||
To obtain the latest complete release of GLUT please visit the
 | 
			
		||||
<a href="http://www.opengl.org/developers/documentation/glut/index.html"
 | 
			
		||||
target ="_parent">GLUT homepage</a>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										42
									
								
								docs/enums.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								docs/enums.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
 | 
			
		||||
Blocks allocated to Mesa:
 | 
			
		||||
       0x8750-0x875F
 | 
			
		||||
       0x8BB0-0x8BBF
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GL_MESA_packed_depth_stencil
 | 
			
		||||
	GL_DEPTH_STENCIL_MESA            0x8750
 | 
			
		||||
	GL_UNSIGNED_INT_24_8_MESA        0x8751
 | 
			
		||||
	GL_UNSIGNED_INT_8_24_REV_MESA    0x8752
 | 
			
		||||
	GL_UNSIGNED_SHORT_15_1_MESA      0x8753
 | 
			
		||||
	GL_UNSIGNED_SHORT_1_15_REV_MESA  0x8754
 | 
			
		||||
 | 
			
		||||
GL_MESA_trace.spec:
 | 
			
		||||
	GL_TRACE_ALL_BITS_MESA           0xFFFF
 | 
			
		||||
	GL_TRACE_OPERATIONS_BIT_MESA     0x0001
 | 
			
		||||
	GL_TRACE_PRIMITIVES_BIT_MESA     0x0002
 | 
			
		||||
	GL_TRACE_ARRAYS_BIT_MESA         0x0004
 | 
			
		||||
	GL_TRACE_TEXTURES_BIT_MESA       0x0008
 | 
			
		||||
	GL_TRACE_PIXELS_BIT_MESA         0x0010
 | 
			
		||||
	GL_TRACE_ERRORS_BIT_MESA         0x0020
 | 
			
		||||
	GL_TRACE_MASK_MESA               0x8755
 | 
			
		||||
	GL_TRACE_NAME_MESA               0x8756
 | 
			
		||||
 | 
			
		||||
MESA_ycbcr_texture.spec:
 | 
			
		||||
	GL_YCBCR_MESA                    0x8757
 | 
			
		||||
	GL_UNSIGNED_SHORT_8_8_MESA       0x85BA /* same as Apple's */
 | 
			
		||||
	GL_UNSIGNED_SHORT_8_8_REV_MESA   0x85BB /* same as Apple's */
 | 
			
		||||
 | 
			
		||||
GL_MESA_pack_invert.spec
 | 
			
		||||
	GL_PACK_INVERT_MESA              0x8758
 | 
			
		||||
 | 
			
		||||
GL_MESA_program_debug.spec:
 | 
			
		||||
	GL_FRAGMENT_PROGRAM_CALLBACK_MESA      0x????
 | 
			
		||||
	GL_VERTEX_PROGRAM_CALLBACK_MESA        0x????
 | 
			
		||||
	GL_FRAGMENT_PROGRAM_POSITION_MESA      0x????
 | 
			
		||||
	GL_VERTEX_PROGRAM_POSITION_MESA        0x????
 | 
			
		||||
	GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x????
 | 
			
		||||
	GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x????
 | 
			
		||||
	GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA   0x????
 | 
			
		||||
	GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA   0x????
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										25
									
								
								docs/envvars.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								docs/envvars.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Environment Variables</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Environment Variables</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa supports the following environment variables:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>MESA_DEBUG - if defined, error messages are printed to stderr
 | 
			
		||||
<li>MESA_NO_DITHER - disable dithering, overriding glEnable(GL_DITHER)
 | 
			
		||||
<li>MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode (X only)
 | 
			
		||||
<li>MESA_CI_VISUAL - specifies the X visual and depth for CI mode (X only)
 | 
			
		||||
<li>MESA_BACK_BUFFER - specifies how to implement the back color buffer (X only)
 | 
			
		||||
<li>MESA_PRIVATE_CMAP - force aux/tk libraries to use private colormaps (X only)
 | 
			
		||||
<li>MESA_GAMMA - gamma correction coefficients (X only)
 | 
			
		||||
<li>MESA_XSYNC - enable synchronous X behavior (for X debugging only)
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										32
									
								
								docs/extensions.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								docs/extensions.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Extensions</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Mesa Extensions</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
A number of extensions have been developed especially for Mesa.
 | 
			
		||||
The specifications follow.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<UL>
 | 
			
		||||
<LI><A HREF="MESA_agp_offset.spec">MESA_agp_offset.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_copy_sub_buffer.spec">MESA_copy_sub_buffer.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_packed_depth_stencil.spec">MESA_packed_depth_stencil.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_pack_invert.spec">MESA_pack_invert.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_pixmap_colormap.spec">MESA_pixmap_colormap.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_release_buffers.spec">MESA_release_buffers.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_resize_buffers.spec">MESA_resize_buffers.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_sprite_point.spec">MESA_sprite_point.spec</A> (obsolete)
 | 
			
		||||
<LI><A HREF="MESA_trace.spec">MESA_trace.spec</A> (obsolete)
 | 
			
		||||
<LI><A HREF="MESA_window_pos.spec">MESA_window_pos.spec</A>
 | 
			
		||||
<LI><A HREF="MESA_ycbcr_texture.spec">MESA_ycbcr_texture.spec</A>
 | 
			
		||||
</UL>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										343
									
								
								docs/faq.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										343
									
								
								docs/faq.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,343 @@
 | 
			
		||||
<html>
 | 
			
		||||
 | 
			
		||||
<head><title>Mesa FAQ</title></head>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<center>
 | 
			
		||||
<h1>Mesa Frequently Asked Questions</h1>
 | 
			
		||||
Last updated: 6 August 2003
 | 
			
		||||
</center>
 | 
			
		||||
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>Index</h2>
 | 
			
		||||
<a href="#part1">1. High-level Questions and Answers</a>
 | 
			
		||||
<br>
 | 
			
		||||
<a href="#part2">2. Compilation and Installation Problems</a>
 | 
			
		||||
<br>
 | 
			
		||||
<a href="#part3">3. Runtime / Rendering Problems</a>
 | 
			
		||||
<br>
 | 
			
		||||
<a href="#part4">4. Developer Questions</a>
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="part1">
 | 
			
		||||
</a><h1><a name="part1">1. High-level Questions and Answers</a></h1>
 | 
			
		||||
 | 
			
		||||
<h2><a name="part1">1.1 What is Mesa?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part1">Mesa is an open-source implementation of the OpenGL specification.
 | 
			
		||||
OpenGL is a programming library for writing interactive 3D applications.
 | 
			
		||||
See the </a><a href="http://www.opengl.org/">OpenGL website</a> for more
 | 
			
		||||
information.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 5.x supports the OpenGL 1.4 specification.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>1.2 Does Mesa support/use graphics hardware?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Yes.  Specifically, Mesa serves as the OpenGL core for the open-source
 | 
			
		||||
XFree86/DRI OpenGL drivers.  See the <a href="http://dri.sf.net/">DRI
 | 
			
		||||
website</a> for more information.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
There have been other hardware drivers for Mesa over the years (such as
 | 
			
		||||
the 3Dfx Glide/Voodoo driver, an old S3 driver, etc) but the DRI drivers
 | 
			
		||||
are the modern ones.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<h2>1.3 What purpose does Mesa (software-based rendering) serve today?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Hardware-accelerated OpenGL implementations are available for most popular
 | 
			
		||||
operating systems today.
 | 
			
		||||
Still, Mesa serves at least these purposes:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>Mesa is used as the core of the open-source XFree86/DRI hardware drivers.
 | 
			
		||||
</li>
 | 
			
		||||
<li>Mesa is quite portable and allows OpenGL to be used on systems
 | 
			
		||||
    that have no other OpenGL solution.
 | 
			
		||||
</li>
 | 
			
		||||
<li>Software rendering with Mesa serves as a reference for validating the
 | 
			
		||||
    hardware drivers.
 | 
			
		||||
</li>
 | 
			
		||||
<li>A software implementation of OpenGL is useful for experimentation,
 | 
			
		||||
    such as testing new rendering techniques.
 | 
			
		||||
</li>
 | 
			
		||||
<li>Mesa can render images with deep color channels: 16-bit integer
 | 
			
		||||
    and 32-bit floating point color channels are supported.
 | 
			
		||||
    This capability is only now appearing in hardware.
 | 
			
		||||
</li>
 | 
			
		||||
<li>Mesa's internal limits (max lights, clip planes, texture size, etc) can be
 | 
			
		||||
    changed for special needs (hardware limits are hard to overcome).
 | 
			
		||||
</li>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<h2>1.4 How do I upgrade my DRI installation to use a new Mesa release?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
You don't!  A copy of the Mesa source code lives inside the XFree86/DRI source
 | 
			
		||||
tree and gets compiled into the individual DRI driver modules.
 | 
			
		||||
If you try to install Mesa over an XFree86/DRI installation, you'll lose
 | 
			
		||||
hardware rendering (because stand-alone Mesa's libGL.so is different than
 | 
			
		||||
the XFree86 libGL.so).
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The DRI developers will incorporate the latest release of Mesa into the
 | 
			
		||||
DRI drivers when the time is right.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
To upgrade, either look for a new release of <a href="http://www.xfree86.org"
 | 
			
		||||
target="_parent">XFree86</a> or visit the
 | 
			
		||||
<a href="http://dri.sf.net" target="_parent">DRI website</a> to see
 | 
			
		||||
if there's newer drivers.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>1.5 Are there other open-source implementations of OpenGL?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Yes, SGI's <a href="http://oss.sgi.com/projects/ogl-sample/index.html">
 | 
			
		||||
OpenGL Sample Implemenation (SI)</a> is available.
 | 
			
		||||
The SI was written during the time that OpenGL was originally designed.
 | 
			
		||||
Unfortunately, development of the SI has stagnated.
 | 
			
		||||
Mesa is much more up to date with modern features and extensions.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
<a href="http://www.dsbox.com/minigl.html">miniGL</a> is a subset of OpenGL
 | 
			
		||||
for PalmOS devices.
 | 
			
		||||
 | 
			
		||||
<a href="http://fabrice.bellard.free.fr/TinyGL/">TinyGL</a> is another
 | 
			
		||||
subset of OpenGL.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
There may be others but Mesa is the most popular and feature-complete.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="part2">
 | 
			
		||||
</a><h1><a name="part2">2. Compilation and Installation Problems</a></h1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.1 What's the easiest way to install Mesa?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">If you're using a Linux-based system, your distro CD most likely already
 | 
			
		||||
has Mesa packages (like RPM or DEB) which you can easily install.
 | 
			
		||||
</a></p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.2 Running <code>configure; make</code> Doesn't Work</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">Unfortunately, the GNU autoconf/automake/libtool system doesn't seem to work
 | 
			
		||||
too well on non GNU/Linux systems, even after installing gmake, gcc, etc.
 | 
			
		||||
For that reason, Mesa's <b>old-style</b> makefile system is still included.
 | 
			
		||||
The old-style system uses good old traditional Makefiles.  Try the following:
 | 
			
		||||
</a></p><pre><a name="part2">  cd Mesa-x.y.z
 | 
			
		||||
  cp Makefile.X11 Makefile
 | 
			
		||||
  make
 | 
			
		||||
</a></pre>
 | 
			
		||||
<a name="part2">You'll see a list of system configurations from which to choose.
 | 
			
		||||
For example:
 | 
			
		||||
</a><pre><a name="part2">  make linux-x86
 | 
			
		||||
</a></pre>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">If you're experienced with GNU autoconf/automake/libtool and think you can help
 | 
			
		||||
with maintence, contact the Mesa developers.
 | 
			
		||||
FYI, the Mesa developers generally don't use the autoconf/automake system.
 | 
			
		||||
We're especially annoyed with the fact that a +5000-line script (libtool)
 | 
			
		||||
is needed to make shared libraries (ugh).
 | 
			
		||||
</a></p>
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.3 Mesa still doesn't compile</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">If the old-style Makefile system doesn't work either, make sure you have
 | 
			
		||||
the most recent version of Mesa.
 | 
			
		||||
Otherwise, file a bug report or post to the Mesa3d-users mailing list.
 | 
			
		||||
Give as much info as possible when describing your problem.
 | 
			
		||||
</a></p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.4 I get undefined symbols such as bgnpolygon, v3f, etc...</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">You're application is written in IRIS GL, not OpenGL.
 | 
			
		||||
IRIS GL was the predecessor to OpenGL and is a different thing (almost)
 | 
			
		||||
entirely.
 | 
			
		||||
Mesa's not the solution.
 | 
			
		||||
</a></p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.5 Where is the GLUT library?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">GLUT (OpenGL Utility Toolkit) is in the separate MesaDemos-x.y.z.tar.gz file.
 | 
			
		||||
If you don't already have GLUT installed, you should grab the MesaDemos
 | 
			
		||||
package and unpack it before compiling Mesa.
 | 
			
		||||
</a></p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2><a name="part2">2.6 What's the proper place for the libraries and headers?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part2">On Linux-based systems you'll want to follow the
 | 
			
		||||
</a><a href="http://oss.sgi.com/projects/ogl-sample/ABI/index.html">Linux ABI</a>
 | 
			
		||||
standard.
 | 
			
		||||
Basically you'll want the following:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>/usr/include/GL/gl.h - the main OpenGL header
 | 
			
		||||
</li><li>/usr/include/GL/glu.h - the OpenGL GLU (utility) header
 | 
			
		||||
</li><li>/usr/include/GL/glx.h - the OpenGL GLX header
 | 
			
		||||
</li><li>/usr/include/GL/glext.h - the OpenGL extensions header
 | 
			
		||||
</li><li>/usr/include/GL/glxext.h - the OpenGL GLX extensions header
 | 
			
		||||
</li><li>/usr/include/GL/osmesa.h - the Mesa off-screen rendering header
 | 
			
		||||
</li><li>/usr/lib/libGL.so - a symlink to libGL.so.1
 | 
			
		||||
</li><li>/usr/lib/libGL.so.1 - a symlink to libGL.so.1.xyz
 | 
			
		||||
</li><li>/usr/lib/libGL.so.xyz - the actual OpenGL/Mesa library.  xyz denotes the
 | 
			
		||||
Mesa version number.
 | 
			
		||||
</li><li>/usr/lib/libGLU.so - a symlink to libGLU.so.1
 | 
			
		||||
</li><li>/usr/lib/libGLU.so.1 - a symlink to libGLU.so.1.3.xyz
 | 
			
		||||
</li><li>/usr/lib/libGLU.so.xyz - the OpenGL Utility library.  xyz denotes the Mesa
 | 
			
		||||
version number.
 | 
			
		||||
</li></ul>
 | 
			
		||||
<p>
 | 
			
		||||
After installing XFree86 and the DRI drivers, some of these files
 | 
			
		||||
may be symlinks into the /usr/X11R6/ tree.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The old-style Makefile system doesn't install the Mesa libraries; it's
 | 
			
		||||
up to you to copy them (and the headers) to the right place.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The GLUT header and library should go in the same directories.
 | 
			
		||||
</p>
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="part3">
 | 
			
		||||
</a><h1><a name="part3">3. Runtime / Rendering Problems</a></h1>
 | 
			
		||||
 | 
			
		||||
<h2><a name="part3">3.1 Rendering is slow / why isn't my graphics hardware being used?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part3">Stand-alone Mesa (downloaded as MesaLib-x.y.z.tar.gz) doesn't have any
 | 
			
		||||
support for hardware acceleration (with the exception of the 3DFX Voodoo
 | 
			
		||||
driver).
 | 
			
		||||
</a></p>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part3">What you really want is a DRI or NVIDIA (or another vendor's OpenGL) driver
 | 
			
		||||
for your particular hardware.
 | 
			
		||||
</a></p>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part3">You can run the <code>glxinfo</code> program to learn about your OpenGL
 | 
			
		||||
library.
 | 
			
		||||
Look for the GL_VENDOR and GL_RENDERER values.
 | 
			
		||||
That will identify who's OpenGL library you're using and what sort of
 | 
			
		||||
hardware it has detected.
 | 
			
		||||
</a></p>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part3">If your DRI-based driver isn't working, go to the
 | 
			
		||||
</a><a href="http://dri.sf.net/">DRI website</a> for trouble-shooting information.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.2 I'm seeing errors in depth (Z) buffering.  Why?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Make sure the ratio of the far to near clipping planes isn't too great.
 | 
			
		||||
Look
 | 
			
		||||
<a href="http://www.sgi.com/software/opengl/advanced97/notes/node18.html">
 | 
			
		||||
here</a> for details.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
Mesa uses a 16-bit depth buffer by default which is smaller and faster
 | 
			
		||||
to clear than a 32-bit buffer but not as accurate.
 | 
			
		||||
If you need a deeper you can modify the parameters to
 | 
			
		||||
<code> glXChooseVisual</code> in your code.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.3 Why Isn't depth buffering working at all?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Be sure you're requesting a depth buffered-visual.  If you set the MESA_DEBUG
 | 
			
		||||
environment variable it will warn you about trying to enable depth testing
 | 
			
		||||
when you don't have a depth buffer.
 | 
			
		||||
</p>
 | 
			
		||||
<p>Specifically, make sure <code>glutInitDisplayMode</code> is being called
 | 
			
		||||
with <code>GLUT_DEPTH</code> or <code>glXChooseVisual</code> is being
 | 
			
		||||
called with a non-zero value for GLX_DEPTH_SIZE.
 | 
			
		||||
</p>
 | 
			
		||||
<p>This discussion applies to stencil buffers, accumulation buffers and
 | 
			
		||||
alpha channels too.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.4 Why does glGetString() always return NULL?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Be sure you have an active/current OpenGL rendering context before
 | 
			
		||||
calling glGetString.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.5 GL_POINTS and GL_LINES don't touch the right pixels</h2>
 | 
			
		||||
<p>
 | 
			
		||||
If you're trying to draw a filled region by using GL_POINTS or GL_LINES
 | 
			
		||||
and seeing holes or gaps it's because of a float-to-int rounding problem.
 | 
			
		||||
But this is not a bug.
 | 
			
		||||
See Appendix H of the OpenGL Programming Guide - "OpenGL Correctness Tips".
 | 
			
		||||
Basically, applying a translation of (0.375, 0.375, 0.0) to your coordinates
 | 
			
		||||
will fix the problem.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="part4">
 | 
			
		||||
</a><h1><a name="part4">4. Developer Questions</a></h1>
 | 
			
		||||
 | 
			
		||||
<h2><a name="part4">4.1 How can I contribute?</a></h2>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part4">First, join the Mesa3d-dev mailing list.  That's where Mesa development
 | 
			
		||||
is discussed.
 | 
			
		||||
</a></p>
 | 
			
		||||
<p>
 | 
			
		||||
<a name="part4">The </a><a href="http://www.opengl.org/developers/documentation/specs.html">
 | 
			
		||||
OpenGL Specification</a> is the bible for OpenGL implemention work.
 | 
			
		||||
You should read it.
 | 
			
		||||
</p>
 | 
			
		||||
<p>Most of the Mesa development work involves implementing new OpenGL
 | 
			
		||||
extensions, writing hardware drivers (for the DRI), and code optimization.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<h2>4.2 How do I write a new device driver?</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Unfortunately, writing a device driver isn't easy.
 | 
			
		||||
It requires detailed understanding of OpenGL, the Mesa code, and your
 | 
			
		||||
target hardware/operating system.
 | 
			
		||||
3D graphics are not simple.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The best way to get started is to use an existing driver as your starting
 | 
			
		||||
point.
 | 
			
		||||
For a software driver, the X11 and OSMesa drivers are good examples.
 | 
			
		||||
For a hardware driver, the Radeon and R200 DRI drivers are good examples.
 | 
			
		||||
</p>
 | 
			
		||||
<p>The DRI website has more information about writing hardware drivers.
 | 
			
		||||
The process isn't well document because the Mesa driver interface changes
 | 
			
		||||
over time, and we seldome have spare time for writing documentation.
 | 
			
		||||
That being said, many people have managed to figure out the process.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
Joining the appropriate mailing lists and asking questions (and searching
 | 
			
		||||
the archives) is a good way to get information.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										223
									
								
								docs/fbdev-dri.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										223
									
								
								docs/fbdev-dri.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,223 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa fbdev/DRI Environment</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<center><H1>Mesa fbdev/DRI Drivers</H1></center>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H1>1. Introduction</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The fbdev/DRI sub-project within Mesa brings hardware accelerated OpenGL
 | 
			
		||||
rendering to the Linux fbdev environment.
 | 
			
		||||
The X Window System / XFree86 is not needed.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Basically, the <a href="http://dri.sf.net/">DRI</a> drivers for hardware
 | 
			
		||||
accelerated OpenGL for XFree86 have been ported to fbdev so that X is
 | 
			
		||||
not needed.
 | 
			
		||||
This means fbdev/DRI works in full-screen mode only.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
DRI driver writers may find this simplified environment easier to work in,
 | 
			
		||||
compared to the full XFree86/DRI environment.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Much of the work for this project has been done by Jon Smirl and
 | 
			
		||||
Keith Whitwell.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To use fbdev/DRI, you'll need a Linux 2.4 or 2.6 kernel.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The fbdev/DRI Mesa code is in the Mesa CVS trunk (to be released as Mesa
 | 
			
		||||
5.1 in the future).
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h1>2. Compilation</h1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Assuming you're starting with a fresh Mesa CVS checkout, do the following:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   cd Mesa-newtree
 | 
			
		||||
   cp Makefile.X11 Makefile     # or use a symlink
 | 
			
		||||
   make linux-solo
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
When this is finished, check the <code>Mesa-newtree/lib</code> directory
 | 
			
		||||
to verify that the following files were made:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li><code>libGL.so.1.2</code> - the client-side OpenGL library
 | 
			
		||||
    (and a few symlinks to it).
 | 
			
		||||
<li><code>libGLU.so.1.1</code> - the GLU library (and a few symlinks to it).
 | 
			
		||||
<li><code>libglut.so.3.7</code> - the GLUT library (and a few symlinks to it).
 | 
			
		||||
<li><code>mga_dri.so</code> - DRI driver for Matrox G200/G400 cards.
 | 
			
		||||
<li><code>r128_dri.so</code> - DRI driver for ATI Rage 128 cards.
 | 
			
		||||
<li><code>r200_dri.so</code> - DRI driver for ATI R200 Radeon cards.
 | 
			
		||||
<li><code>radeon_dri.so</code> - DRI driver for original ATI Radeon cards.
 | 
			
		||||
<li><code>fb_dri.so</code> - software-only fbdev driver.
 | 
			
		||||
<li><code>miniglx.conf</code> - configuration file for the MiniGLX interface
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h1>3. Using fbdev/DRI</h1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If XFree86 is currently running, exit/stop the X server so you're
 | 
			
		||||
working from the console.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.1 Kernel Modules</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
You'll need to load kernel modules specific to your graphics hardware.
 | 
			
		||||
The following kernel modules should be included with your kernel.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you have ATI Radeon/R200 hardware, run as root:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   modprobe agpgart            # the AGP GART module
 | 
			
		||||
   modprobe radeonfb           # the Radeon fbdev driver
 | 
			
		||||
   modprobe radeon             # the Radeon DRI kernel module
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you have ATI Rage 128 hardware, run as root:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   modprobe agpgart            # the AGP GART module
 | 
			
		||||
   modprobe aty128fb           # the Rage 128 fbdev driver
 | 
			
		||||
   modprobe r128               # the Rage 128 DRI kernel module
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you have Matrox G200/G400 hardware, run as root:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   modprobe agpgart            # the AGP GART module
 | 
			
		||||
   modprobe mgafb              # the Matrox fbdev driver
 | 
			
		||||
   modprobe mga                # the Matrox DRI kernel module
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Then run <code>lsmod</code> to be sure the modules are loaded.
 | 
			
		||||
For a Radeon card, you should see something like this:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
Module                  Size  Used by    Not tainted
 | 
			
		||||
radeon                110308   0  (unused)
 | 
			
		||||
radeonfb               21900   0  (unused)
 | 
			
		||||
agpgart                43072   1 
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.2 Configuration File</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The <code>Mesa-newtree/lib/miniglx.conf</code> file should be installed
 | 
			
		||||
in <code>/etc/</code>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Edit <code>/etc/miniglx.conf</code> to be sure it's set up correctly
 | 
			
		||||
for your hardware.
 | 
			
		||||
Comments in the file explain the options.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>3.3 Running fbdev/DRI Programs</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Make sure your LD_LIBRARY_PATH environment variable is set to the
 | 
			
		||||
<code>Mesa-newtree/lib/</code> directory.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Change to the <code>Mesa-newtree/progs/miniglx/</code> directory and
 | 
			
		||||
start the sample_server program in the background:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   ./sample_server &
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Then try running the <code>miniglxtest</code> program:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   ./miniglxtest
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
You should see a rotating quadrilateral which changes color as it rotates.
 | 
			
		||||
It will exit automatically after a bit.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you run other tests in the miniglx/ directory, you may want to run
 | 
			
		||||
them from a remote shell so that you can stop them with ctrl-C.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h1>4.0 Troubleshooting</h1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you try to run miniglxtest and get the following:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
   [miniglx] failed to probe chipset
 | 
			
		||||
   connect: Connection refused
 | 
			
		||||
   server connection lost
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
It means that the sample_server process is not running.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h1>5.0 Programming Information</h1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The full OpenGL API is available with fbdev/DRI.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
OpenGL/Mesa is interfaced to fbdev via the <a href="MiniGLX.html">MiniGLX</a>
 | 
			
		||||
interface.
 | 
			
		||||
MiniGLX is a subset of Xlib and GLX API functions which provides just
 | 
			
		||||
enough functionality to setup OpenGL rendering and respond to simple
 | 
			
		||||
input events.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Since MiniGLX is a subset of the usual Xlib and GLX APIs, programs written
 | 
			
		||||
to the MiniGLX API can also be run on full Xlib/GLX implementations.
 | 
			
		||||
This allows some degree of flexibility for software development and testing.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
However, the MiniGLX API is not binary-compatible with full Xlib/GLX.
 | 
			
		||||
Some of the structures are different and some macros/functions work
 | 
			
		||||
differently.
 | 
			
		||||
See the <code>GL/miniglx.h</code> header file for details.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										62
									
								
								docs/games.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								docs/games.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Games</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Games</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li><a href="http://www.psc.edu/%7Esmp/a3d/">Asteroids3D</a> - 3D asteroids game
 | 
			
		||||
	</li><li><a href="http://evlweb.eecs.uic.edu/aej/AndyBattalion.html" target="_parent">Battalion</a>
 | 
			
		||||
	- battle game
 | 
			
		||||
	</li><li><a href="http://bzflag.sourceforge.net/" target="_parent">BZFLAG</a> - 3-D tank
 | 
			
		||||
	battle game
 | 
			
		||||
	</li><li><a href="http://www.speakeasy.org/%7Emorse/copter-commander">Copter Commander</a> - 2d multiplayer side scroller
 | 
			
		||||
	</li><li><a href="http://www.crystalspace.org/" target="_parent">CrystalSpace</a> - Free
 | 
			
		||||
	3d game engine
 | 
			
		||||
	</li><li><a href="http://www.afn.org/%7Ecthugha/" target="_parent">Cthugha</a> - music-sync'ed
 | 
			
		||||
	graphical effects
 | 
			
		||||
	</li><li><a href="http://www.sics.se/dive/" target="_parent">DIVE</a> - Distributed Interactive
 | 
			
		||||
	Virtual Environment
 | 
			
		||||
	</li><li><a href="http://www.newdoom.com/doomlegacy/" target="_parent">Doom Legacy</a>
 | 
			
		||||
	- an OpenGL port of id software's popular game, Doom
 | 
			
		||||
	</li><li><a href="http://www.asimov.de/intern_dropit.html" target="_parent">DropIt</a> - 3-D tetris game
 | 
			
		||||
	</li><li><a href="http://www.flightgear.org/" target="_parent">Flight Gear</a> - Flight
 | 
			
		||||
	simulator
 | 
			
		||||
	</li><li><a href="http://freetrek.linuxgames.com/" target="_parent">Free Trek</a> - Star
 | 
			
		||||
	Trek battle simulator
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">Gepetto</a> - Dance Choreography
 | 
			
		||||
	</li><li><a href="http://glchess.sourceforge.net/" target="_parent">GLChess</a> - chess game
 | 
			
		||||
	</li><li><a href="http://heretic.linuxgames.com/" target="_parent">GLHeretic</a> - Heretic
 | 
			
		||||
	for Linux
 | 
			
		||||
	</li><li><a href="http://glider3d.free.fr/" target="_parent">Glider3D</a> - flight simulator
 | 
			
		||||
	</li><li><a href="http://www.gltron.org/" target="_parent">glTron</a> - Tron lightcycles
 | 
			
		||||
	game
 | 
			
		||||
	</li><li><a href="http://gracer.sourceforge.net/" target="_parent">GRacer</a> - 3D Motor
 | 
			
		||||
	Sports Simulator
 | 
			
		||||
	</li><li><a href="http://jongl.home.pages.de/" target="_parent">JONGL</a> - Juggling simulator
 | 
			
		||||
	</li><li><a href="http://samba.anu.edu.au/KnightCap/" target="_parent">KnightCap</a> -
 | 
			
		||||
	chess game
 | 
			
		||||
	</li><li><a href="http://www.hackcraft.de/games/linwarrior_3d/">LinWarrior 3D</a> - A Battle Mech Simulator
 | 
			
		||||
	</li><li><a href="http://www.nada.kth.se/%7Ef96-lfo/lunar/" target="_parent">Lunar Lander
 | 
			
		||||
	2000</a> - 3D version of the classis lunar lander game
 | 
			
		||||
	</li><li><a href="http://www.majik3d.org/" target="_parent">Majik 3D</a> - an online role-playing
 | 
			
		||||
	world
 | 
			
		||||
	</li><li><a href="http://www.pobox.com/%7Eshankel/opentrek.html" target="_parent">OpenTrek</a>
 | 
			
		||||
	- Super Star Trek
 | 
			
		||||
	</li><li><a href="http://www.idsoftware.com/" target="_parent">Quake(2,3)</a> - the popular
 | 
			
		||||
	games from id software
 | 
			
		||||
	</li><li><a href="http://torcs.free.fr/indexm.html" target="_parent">TORCS</a> - car racing
 | 
			
		||||
	simulator
 | 
			
		||||
	</li><li><a href="http://www.woodsoup.org/projs/tux_aqfh" target="_parent">TUX-AQFH</a>
 | 
			
		||||
	- Tux the Penguin - a Quest for Herring
 | 
			
		||||
	</li><li><a href="http://mordred.8m.com/voidrunner/" target="_parent">Void Runner</a>
 | 
			
		||||
	- freeware arcade style game
 | 
			
		||||
	</li><li><a href="http://xracer.annexia.org/" target="_parent">XRacer</a> - Free spaceship
 | 
			
		||||
	racing game, similar to Wipeout
 | 
			
		||||
</li></ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										43
									
								
								docs/glu.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								docs/glu.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,43 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>SGI GLU</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>SGI SI GLU</H1>
 | 
			
		||||
 | 
			
		||||
(Silicon Graphics, Inc. Sample Implementation of the OpenGL Utility library)
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
SGI open-sourced their OpenGL Sample Implementation (SI) in January, 2000.
 | 
			
		||||
This includes the GLU library.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The SI GLU library implements GLU version 1.3 whereas the original
 | 
			
		||||
Mesa GLU library only implemented version 1.2.
 | 
			
		||||
We recommend using the SI GLU library instead of Mesa's GLU library
 | 
			
		||||
since it's more up-to-date, complete and reliable.
 | 
			
		||||
We're no longer developing the original Mesa GLU library.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The new SI GLU library code is included in the Mesa package.
 | 
			
		||||
You don't have to download it separately.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<b>Olivier Michel</b> has made Linux RPMs of GLU for i386 and PowerPC.
 | 
			
		||||
You can download them from the
 | 
			
		||||
<a href="http://www.sourceforge.net/project/showfiles.php?group_id=3"
 | 
			
		||||
target="_parent">download area</a> under <b>Miscellaneous</b>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Visit the <a href="http://oss.sgi.com/projects/ogl-sample/" target="_parent">
 | 
			
		||||
OpenGL Sample Implementation home page</a> for more information about the SI.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										62
									
								
								docs/helpwanted.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								docs/helpwanted.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Help Wanted</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Help Wanted</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
We can always use more help with the Mesa project.  Here are some
 | 
			
		||||
specific areas.  If you think you can help out, post to the mesa3d-dev
 | 
			
		||||
mailing list.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li>Windows 98/NT build/driver maintenance and testing (Karl Schultz has been
 | 
			
		||||
    doing a great job of this lately)
 | 
			
		||||
<li>DOS/DJGPP build/driver maintenance and testing
 | 
			
		||||
<li>GGI driver/build maintenance and testing
 | 
			
		||||
<li>GNU autoconfig/libtool maintenance (esp. on non-Linux systems)
 | 
			
		||||
<li>x86, SSE, 3DNow! and SPARC assembly language programming
 | 
			
		||||
<li>Implement WGL font functions in the WGL interface code
 | 
			
		||||
<li>Implement off-screen bitmap rendering support in the WGL interface code
 | 
			
		||||
<li>Help with writing/testing the new NV_fragment_program extension code
 | 
			
		||||
<li>Implement the ARB_vertex/fragment extensions
 | 
			
		||||
<li>Download/compile/test Mesa and report any bugs found
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you want to help with Mesa, first join the Mesa developer's
 | 
			
		||||
mailing list.  Then post a message explaining what you might like
 | 
			
		||||
to help with.  The Mesa web page has a list of a few work items
 | 
			
		||||
which you may consider.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</p>
 | 
			
		||||
Anyone is welcome to contribute code to the Mesa project, provided you
 | 
			
		||||
agree to the copyright terms of the relevant code.  See the COPYRIGHT
 | 
			
		||||
file.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Unfortunately, all the easy work in Mesa was done years ago.  Nowadays, the
 | 
			
		||||
work is rather complicated and not suited to beginners.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you're contribution code to the Mesa library itself:
 | 
			
		||||
<p>
 | 
			
		||||
<ol>
 | 
			
		||||
<li>Try to write clean code (uniform indentation, comments, meaningful
 | 
			
		||||
      identifiers, etc).  It must be readable and maintainable!
 | 
			
		||||
 | 
			
		||||
<li>Test your code.  On several occations I've incorporated code from
 | 
			
		||||
      users which later turned out to have bugs.  Now, I'm pretty hesitant
 | 
			
		||||
      to use code which doesn't look good.
 | 
			
		||||
</ol>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										23
									
								
								docs/index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								docs/index.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
<html>
 | 
			
		||||
 | 
			
		||||
<title>Mesa Home Page</title></head>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<frameset rows="50,100% " border="1" framespacing="1" frameborder="yes">
 | 
			
		||||
<frame src="banner.html" name="BannerFrame" scrolling="no" marginwidth="1" marginheight="1" resize="">
 | 
			
		||||
<frameset cols="28%,72% " border="1" framespacing="1" frameborder="yes">
 | 
			
		||||
<frame src="contents.html" name="ContentsFrame" marginwidth="2" marginheight="1" resize="">
 | 
			
		||||
<frame src="news.html" name="MainFrame" marginwidth="3" marginheight="1" resize="">
 | 
			
		||||
</frameset>
 | 
			
		||||
</frameset>
 | 
			
		||||
 | 
			
		||||
<noframes>
 | 
			
		||||
 | 
			
		||||
<BODY>
 | 
			
		||||
 | 
			
		||||
<P>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
 | 
			
		||||
</noframes>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										255
									
								
								docs/install.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										255
									
								
								docs/install.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,255 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Compilation and Installation</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H1>Compilation and Installation</H1>
 | 
			
		||||
 | 
			
		||||
<ol>
 | 
			
		||||
<li><a href="#unix-x11">Unix / X11</a>
 | 
			
		||||
<li><a href="#windows">Windows</a>
 | 
			
		||||
<li><a href="#vms">VMS</a>
 | 
			
		||||
<li><a href="#other">Other</a>
 | 
			
		||||
</ol>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="unix-x11">
 | 
			
		||||
<H2>1. Unix/X11 Compilation and Installation</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa uses a rather conventional Makefile system.
 | 
			
		||||
A GNU autoconf/automake system used to be included, but was discarded
 | 
			
		||||
in Mesa 5.1 because:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>It seldom worked on IRIX, Solaris, AIX, etc.
 | 
			
		||||
<li>It was very compilicated
 | 
			
		||||
<li>Nobody maintained it
 | 
			
		||||
<li>libtool was just too weird
 | 
			
		||||
</ul>
 | 
			
		||||
<p>
 | 
			
		||||
If someone strongly feels that Mesa should have a autoconf/automake
 | 
			
		||||
system and wants to contribute one and maintain it, we'll consider
 | 
			
		||||
adding it again.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h3>1.1 Compilation</h3>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you've obtained Mesa through CVS, do this to first:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
    cd Mesa-newtree
 | 
			
		||||
    cp Makefile.X11 Makefile
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Now, just type <b>make</b>.
 | 
			
		||||
You'll see a list of supported system configurations.
 | 
			
		||||
Choose one from the list (such as linux-x86), and type:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
    make linux-x86
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
That's it.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<h3>1.2 The libraries</h3>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
When compilation has finished, look in the top-level <b>lib/</b> directory.
 | 
			
		||||
You'll see a set of library files similar to this:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
lrwxrwxrwx    1 brian    users          10 Sep  4 17:55 libGL.so -> libGL.so.1*
 | 
			
		||||
lrwxrwxrwx    1 brian    users          19 Sep  4 17:55 libGL.so.1 -> libGL.so.1.4.050100*
 | 
			
		||||
-rwxr-xr-x    1 brian    users    13940317 Sep  4 17:55 libGL.so.1.4.050100*
 | 
			
		||||
lrwxrwxrwx    1 brian    users          11 Sep  4 17:54 libGLU.so -> libGLU.so.1*
 | 
			
		||||
lrwxrwxrwx    1 brian    users          20 Sep  4 17:54 libGLU.so.1 -> libGLU.so.1.3.050100*
 | 
			
		||||
-rwxr-xr-x    1 brian    users      324746 Sep  3 13:54 libGLU.so.1.1*
 | 
			
		||||
-rwxr-xr-x    1 brian    users     2830539 Sep  4 17:54 libGLU.so.1.3.050100*
 | 
			
		||||
lrwxrwxrwx    1 brian    users          12 Sep  4 17:53 libglut.so -> libglut.so.3*
 | 
			
		||||
lrwxrwxrwx    1 brian    users          16 Sep  4 17:53 libglut.so.3 -> libglut.so.3.7.1*
 | 
			
		||||
-rwxr-xr-x    1 brian    users     2426683 Sep  4 17:53 libglut.so.3.7.1*
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<b>libGL</b> is the main OpenGL library (i.e. Mesa).
 | 
			
		||||
<br>
 | 
			
		||||
<b>libGLU</b> is the OpenGL Utility library.
 | 
			
		||||
<br>
 | 
			
		||||
<b>libglut</b> is the GLUT library.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h3>1.3 Running the demos</h3>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you downloaded/unpacked the MesaDemos-x.y.z.tar.gz archive or
 | 
			
		||||
obtained Mesa from CVS, the <b>progs/</b> directory will contain a
 | 
			
		||||
bunch of demonstration programs.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Before running a demo, you may have to set an environment variable
 | 
			
		||||
(such as <b>LD_LIBRARY_PATH</b> on Linux) to indicate where the
 | 
			
		||||
libraries are located.  For example:
 | 
			
		||||
<p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>cd</b> into the Mesa <b>lib/</b> directory.
 | 
			
		||||
<br>
 | 
			
		||||
<b>setenv LD_LIBRARY_PATH ${cwd}</b>   (if using csh or tcsh shell)
 | 
			
		||||
<br>
 | 
			
		||||
or,
 | 
			
		||||
<br>
 | 
			
		||||
<b>export LD_LIBRARY_PATH=${PWD}</b>   (if using bash or sh shell)
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Next, change to the Mesa/demos/ directory:
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>cd ../progs/demos</b>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Run a demo such as gears:
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>./gears</b>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If this doesn't work, try the <b>Mesa/progs/xdemos/glxinfo</b> program
 | 
			
		||||
and see that it prints the expected Mesa version number.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you're using Linux or a similar OS, verify that the demo program is
 | 
			
		||||
being linked with the proper library files:
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>ldd gears</b>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
You should see something like this:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
        libglut.so.3 => /home/brian/Mesa/lib/libglut.so.3 (0x40013000)
 | 
			
		||||
        libGLU.so.1 => /home/brian/Mesa/lib/libGLU.so.1 (0x40051000)
 | 
			
		||||
        libGL.so.1 => /home/brian/Mesa/lib/libGL.so.1 (0x400e0000)
 | 
			
		||||
        libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
 | 
			
		||||
        libm.so.6 => /lib/i686/libm.so.6 (0x403da000)
 | 
			
		||||
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x403fc000)
 | 
			
		||||
        libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0x404da000)
 | 
			
		||||
        libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x404f1000)
 | 
			
		||||
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x40543000)
 | 
			
		||||
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4054b000)
 | 
			
		||||
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x405fd000)
 | 
			
		||||
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40605000)
 | 
			
		||||
        libpthread.so.0 => /lib/i686/libpthread.so.0 (0x40613000)
 | 
			
		||||
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
 | 
			
		||||
        libdl.so.2 => /lib/libdl.so.2 (0x40644000)
 | 
			
		||||
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40647000)
 | 
			
		||||
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40650000)
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Retrace your steps if this doesn't look right.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H3>1.4 Installing the header and library files</H3>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The standard location for the OpenGL header files on Unix-type systems is
 | 
			
		||||
in <code>/usr/include/GL/</code>.
 | 
			
		||||
The standard location for the libraries is <code>/usr/lib/</code>.
 | 
			
		||||
For more information see, the
 | 
			
		||||
<a href="http://oss.sgi.com/projects/ogl-sample/ABI/" target="_parent">
 | 
			
		||||
Linux/OpenGL ABI specification</a>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you'd like Mesa to co-exist with another implementation of OpenGL that's
 | 
			
		||||
already installed, you'll have to choose different directories, like
 | 
			
		||||
<code>/usr/local/include/GL/</code> and <code>/usr/local/lib/</code>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To install the Mesa headers, do this:
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>cp -r include/GL /usr/include</b>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To install the Mesa libraries, do this:
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>cp -pd lib/* /usr/lib</b>
 | 
			
		||||
<br>
 | 
			
		||||
(The -pd options preserve symbolic links)
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you install the libraries in a non-standard location you can use
 | 
			
		||||
LD_LIBRARY_PATH (on Linux) to switch between the Mesa libs and another
 | 
			
		||||
vendor libs whenever you want.
 | 
			
		||||
This is a handy way to compare multiple OpenGL implementations.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="windows">
 | 
			
		||||
<H2>2. Windows Compilation and Installation</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Please see the <a href="README.WIN32">README.WIN32</a> file.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="vms">
 | 
			
		||||
<H2>3. VMS Compilation and Installation</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Please see the <a href="README.VMS">README.VMS</a> file.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<a name="other">
 | 
			
		||||
<H2>4. Other systems</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Documentation for other environments (some may be very out of date):
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<UL>
 | 
			
		||||
<LI><A HREF="README.GGI">README.GGI</A> - GGI
 | 
			
		||||
<LI><A HREF="README.3DFX">README.3DFX</A> - 3Dfx/Glide driver
 | 
			
		||||
<LI><A HREF="README.AMIWIN">README.AMIWIN</A> - Amiga Amiwin
 | 
			
		||||
<LI><A HREF="README.BEOS">README.BEOS</A> - BeOS
 | 
			
		||||
<LI><A HREF="README.D3D">README.D3D</A> - Direct3D driver
 | 
			
		||||
<LI><A HREF="README.DJ">README.DJ</A> - DJGPP
 | 
			
		||||
<LI><A HREF="README.LYNXOS">README.LYNXOS</A> - LynxOS
 | 
			
		||||
<LI><A HREF="README.MINGW32">README.MINGW32</A> - Mingw32
 | 
			
		||||
<LI><A HREF="README.NeXT">README.NeXT</A> - NeXT
 | 
			
		||||
<LI><A HREF="README.OpenStep">README.OpenStep</A> - OpenStep
 | 
			
		||||
<LI><A HREF="README.OS2">README.OS2</A> - OS/2
 | 
			
		||||
<LI><A HREF="README.WINDML">README.WINDML</A> - WindML
 | 
			
		||||
</UL>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										256
									
								
								docs/intro.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										256
									
								
								docs/intro.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,256 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Introduction</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff">
 | 
			
		||||
 | 
			
		||||
<H1>Introduction</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa is a 3-D graphics library with an API which is very similar to
 | 
			
		||||
that of <a href="http://www.opengl.org/" target="_parent">OpenGL</a>.*
 | 
			
		||||
To the extent that Mesa utilizes the OpenGL command syntax or state
 | 
			
		||||
machine, it is being used with authorization from <a
 | 
			
		||||
href="http://www.sgi.com/" target="_parent">Silicon Graphics,
 | 
			
		||||
Inc.</a>(SGI). However, the author does not possess an OpenGL license
 | 
			
		||||
from SGI, and makes no claim that Mesa is in any way a compatible
 | 
			
		||||
replacement for OpenGL or associated with SGI. Those who want a
 | 
			
		||||
licensed implementation of OpenGL should contact a licensed
 | 
			
		||||
vendor.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Please do not refer to the library as <em>MesaGL</em> (for legal
 | 
			
		||||
reasons). It's just <em>Mesa</em> or <em>The Mesa 3-D graphics
 | 
			
		||||
library</em>. <br>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
* OpenGL is a trademark of <a href="http://www.sgi.com/"
 | 
			
		||||
target="_parent">Silicon Graphics Incorporated</a>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H1>Project History</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The Mesa project was founded by me, Brian Paul.  Here's a short history
 | 
			
		||||
of the project.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
August, 1993: I begin working on Mesa in my spare time.  The project
 | 
			
		||||
has no name at that point.  I was simply interested in writing a simple
 | 
			
		||||
3D graphics library that used the then-new OpenGL API.  I was partially
 | 
			
		||||
inspired by the <em>VOGL</em> library which emulated a subset of IRIS GL.
 | 
			
		||||
I had been programming with IRIS GL since 1991.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
November 1994: I contact SGI to ask permission to distribute my OpenGL-like
 | 
			
		||||
graphics library on the internet.  SGI was generally receptive to the
 | 
			
		||||
idea and after negotiations with SGI's legal department, I get permission
 | 
			
		||||
to release it.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
February 1995: Mesa 1.0 is released on the internet.  I expected that
 | 
			
		||||
a few people would be interested in it, but not thousands.
 | 
			
		||||
I was soon receiving patches, new features and thank-you notes on a
 | 
			
		||||
daily basis.  That encouraged me to continue working on Mesa.  The
 | 
			
		||||
name Mesa just popped into my head one day.  SGI had asked me not to use
 | 
			
		||||
the terms <em>"Open"</em> or <em>"GL"</em> in the project name and I didn't
 | 
			
		||||
want to make up a new acronym.  Later, I heard of the Mesa programming
 | 
			
		||||
language and the Mesa spreadsheet for NeXTStep.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
In the early days, OpenGL wasn't available on too many systems.
 | 
			
		||||
It even took a while for SGI to support it across their product line.
 | 
			
		||||
Mesa filled a big hole during that time.
 | 
			
		||||
For a lot of people, Mesa was their first introduction to OpenGL.
 | 
			
		||||
I think SGI recognized that Mesa actually helped to promote
 | 
			
		||||
the OpenGL API, so they didn't feel threatened by the project.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
1995-1996: I continue working on Mesa both during my spare time and during
 | 
			
		||||
my work hours at the Space Science and Engineering Center at the University
 | 
			
		||||
of Wisconsin in Madison.  My supervisor, Bill Hibbard, lets me do this because
 | 
			
		||||
Mesa is now being using for the <a href="http://www.ssec.wisc.edu/%7Ebillh/vis.html" target="_parent">Vis5D</a> project.
 | 
			
		||||
</p><p>
 | 
			
		||||
October 1996: Mesa 2.0 is released.  It implementes the OpenGL 1.1 specification.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
March 1997: Mesa 2.2 is released.  It supports the new 3dfx Voodoo graphics
 | 
			
		||||
card via the Glide library.  It's the first really popular hardware OpenGL
 | 
			
		||||
implementation for Linux.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
September 1998: Mesa 3.0 is released.  It's the first publicly-available
 | 
			
		||||
implementation of the OpenGL 1.2 API.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
March 1999: I attend my first OpenGL ARB meeting.  I contribute to the
 | 
			
		||||
development of several official OpenGL extensions over the years.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
September 1999: I'm hired by Precision Insight, Inc.  Mesa is a key
 | 
			
		||||
component of 3D hardware acceleration in the new DRI project for XFree86.
 | 
			
		||||
Drivers for 3dfx, 3dLabs, Intel, Matrox and ATI hardware soon follow.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
October 2001: Mesa 4.0 is released.
 | 
			
		||||
It implements the OpenGL 1.3 specification.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
November 2001: I cofound <a href="http://www.tungstengraphics.com" target="_parent">
 | 
			
		||||
Tungsten Graphics, Inc.</a> with Keith Whitwell, Jens Owen, David Dawes and
 | 
			
		||||
Frank LaMonica.
 | 
			
		||||
I continue to develop Mesa as part of my resposibilities with Tungsten
 | 
			
		||||
Graphics and as a spare-time project.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
November 2002: Mesa 5.0 is released.
 | 
			
		||||
It implements the OpenGL 1.4 specification.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Ongoing: Mesa is used as the core of many hardware OpenGL drivers for XFree86
 | 
			
		||||
within the
 | 
			
		||||
<A href="http://dri.sourceforge.net/" target="_parent">DRI project</A>.
 | 
			
		||||
I continue to enhance Mesa with new extensions and features.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H1>Major Versions</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
This is a summary of the major versions of Mesa.  Note that Mesa's major
 | 
			
		||||
version number tracks OpenGL's minor version number.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Version 5.x features</H2>
 | 
			
		||||
<p>
 | 
			
		||||
Version 5.x of Mesa implements the OpenGL 1.4 API with the following
 | 
			
		||||
extensions incorporated as standard features:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>GL_ARB_depth_texture
 | 
			
		||||
<li>GL_ARB_shadow
 | 
			
		||||
<li>GL_ARB_texture_env_crossbar
 | 
			
		||||
<li>GL_ARB_texture_mirror_repeat
 | 
			
		||||
<li>GL_ARB_window_pos
 | 
			
		||||
<li>GL_EXT_blend_color
 | 
			
		||||
<li>GL_EXT_blend_func_separate
 | 
			
		||||
<li>GL_EXT_blend_logic_op
 | 
			
		||||
<li>GL_EXT_blend_minmax
 | 
			
		||||
<li>GL_EXT_blend_subtract
 | 
			
		||||
<li>GL_EXT_fog_coord
 | 
			
		||||
<li>GL_EXT_multi_draw_arrays
 | 
			
		||||
<li>GL_EXT_point_parameters
 | 
			
		||||
<li>GL_EXT_secondary_color
 | 
			
		||||
<li>GL_EXT_stencil_wrap
 | 
			
		||||
<li>GL_EXT_texture_lod_bias (plus, a per-texture LOD bias parameter)
 | 
			
		||||
<li>GL_SGIS_generate_mipmap
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Version 4.x features</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Version 4.x of Mesa implements the OpenGL 1.3 API with the following
 | 
			
		||||
extensions incorporated as standard features:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li>GL_ARB_multisample
 | 
			
		||||
<li>GL_ARB_multitexture
 | 
			
		||||
<li>GL_ARB_texture_border_clamp
 | 
			
		||||
<li>GL_ARB_texture_compression
 | 
			
		||||
<li>GL_ARB_texture_cube_map
 | 
			
		||||
<li>GL_ARB_texture_env_add
 | 
			
		||||
<li>GL_ARB_texture_env_combine
 | 
			
		||||
<li>GL_ARB_texture_env_dot3
 | 
			
		||||
<li>GL_ARB_transpose_matrix
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<H2>Version 3.x features</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Version 3.x of Mesa implements the OpenGL 1.2 API with the following
 | 
			
		||||
features:
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>BGR, BGRA and packed pixel formats
 | 
			
		||||
<li>New texture border clamp mode
 | 
			
		||||
<li>glDrawRangeElements()
 | 
			
		||||
<li>standard 3-D texturing
 | 
			
		||||
<li>advanced MIPMAP control
 | 
			
		||||
<li>separate specular color interpolation
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Version 2.x features</H2>
 | 
			
		||||
<p>
 | 
			
		||||
Version 2.x of Mesa implements the OpenGL 1.1 API with the following
 | 
			
		||||
features.
 | 
			
		||||
</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li>Texture mapping:
 | 
			
		||||
	<ul>
 | 
			
		||||
	<li>glAreTexturesResident
 | 
			
		||||
	<li>glBindTexture
 | 
			
		||||
	<li>glCopyTexImage1D
 | 
			
		||||
	<li>glCopyTexImage2D
 | 
			
		||||
	<li>glCopyTexSubImage1D
 | 
			
		||||
	<li>glCopyTexSubImage2D
 | 
			
		||||
	<li>glDeleteTextures
 | 
			
		||||
	<li>glGenTextures
 | 
			
		||||
	<li>glIsTexture
 | 
			
		||||
	<li>glPrioritizeTextures
 | 
			
		||||
	<li>glTexSubImage1D
 | 
			
		||||
	<li>glTexSubImage2D
 | 
			
		||||
	</ul>
 | 
			
		||||
<li>Vertex Arrays:
 | 
			
		||||
	<ul>
 | 
			
		||||
	<li>glArrayElement
 | 
			
		||||
	<li>glColorPointer
 | 
			
		||||
	<li>glDrawElements
 | 
			
		||||
	<li>glEdgeFlagPointer
 | 
			
		||||
	<li>glIndexPointer
 | 
			
		||||
	<li>glInterleavedArrays
 | 
			
		||||
	<li>glNormalPointer
 | 
			
		||||
	<li>glTexCoordPointer
 | 
			
		||||
	<li>glVertexPointer
 | 
			
		||||
	</ul>
 | 
			
		||||
<li>Client state management:
 | 
			
		||||
	<ul>
 | 
			
		||||
	<li>glDisableClientState
 | 
			
		||||
	<li>glEnableClientState
 | 
			
		||||
	<li>glPopClientAttrib
 | 
			
		||||
	<li>glPushClientAttrib
 | 
			
		||||
	</ul>
 | 
			
		||||
<li>Misc:
 | 
			
		||||
	<ul>
 | 
			
		||||
	<li>glGetPointer
 | 
			
		||||
	<li>glIndexub
 | 
			
		||||
	<li>glIndexubv
 | 
			
		||||
	<li>glPolygonOffset
 | 
			
		||||
	</ul>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										55
									
								
								docs/libraries.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								docs/libraries.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Libraries and Toolkits</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Libraries and Toolkits</H1>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://mrpowers.com/Apprentice/">Apprentice</a> - free OpenInventor work-alike
 | 
			
		||||
<li><a href="http://www.coin3d.org/coin.html" target="_parent">Coin</a> - OSS Open Inventor clone
 | 
			
		||||
<li><a href="http://www.softintegration.com/products/toolkit/opengl/" target="_parent">Ch</a> - OpenGL bindings for the Ch C/C++ interpreter
 | 
			
		||||
<li><a href="http://www.cfdrc.com/FOX/fox.html" target="_parent">FOX</a> - GUI Library
 | 
			
		||||
<li><a href="http://www.jausoft.com/gl4java.html" target="_parent">GL4Java</a> - a Java wrapper for OpenGL
 | 
			
		||||
<li><a href="http://www.student.oulu.fi/%7Ejlof/gtkglarea/" target="_parent">GtkGLArea</a> - OpenGL Gtk widget
 | 
			
		||||
<li><a href="http://www.ece.ucdavis.edu/%7Ekenelson/gtk-glarea/" target="_parent">GtkGLArea--</a> - OpenGL Gtk-- widget for C++
 | 
			
		||||
<li><a href="http://gtkpas.sourceforge.net/" target="_parent">GTKpas</a> - OpenGL Gtk widget for <a href="http://www.freepascal.org/" target="_parent">FreePascal</a>
 | 
			
		||||
<li><a href="http://freeglut.sourceforge.net/" target="_parent">FreeGLUT</a> - a GLUT work-alike
 | 
			
		||||
<li><a href="http://math.nist.gov/f90gl" target="_parent">Fortran77/90 bindings for OpenGL and Mesa</a> - by William Mitchell
 | 
			
		||||
<li><a href="http://glow.sourceforge.net/" target="_parent">GLOW</a> - a GUI toolkit for GLUT and OpenGL
 | 
			
		||||
<li><a href="http://www.nigels.com/glt/">Glt</a> - an OpenGL C++ toolkit
 | 
			
		||||
<li><a href="http://www.opengl.org/developers/documentation/glut/" target="_parent">GLUT (GL Utility Toolkit)</a> - by Mark Kilgard
 | 
			
		||||
<li><a href="http://atrey.karlin.mff.cuni.cz/%7E0rfelyus/guileGL/" target="_parent">GuileGL</a> - OpenGL and GtkGLArea language bindings for Guile
 | 
			
		||||
<li><a href="http://www.rsinc.com/" target="_parent">IDL</a> - Interactive Data Language
 | 
			
		||||
<li><a href="http://www.newplanetsoftware.com/jx/" target="_parent">JX</a> - C++ application framework and GUI library
 | 
			
		||||
<li><a href="http://www.vrs3d.org/" target="_parent">MAM/VRS</a> - object-oriented toolkit for 3D graphics
 | 
			
		||||
<li><a href="http://www.jwdt.com/%7Epaysan/bigforth.html" target="_parent">MINOS</a> - GUI library
 | 
			
		||||
<li><a href="http://sourceforge.net/project/?group_id=2795" target="_parent">OglCLib</a> - C++ wrapper for OpenGL
 | 
			
		||||
<li><a href="http://oss.sgi.com/projects/inventor" target="_parent"> Open Inventor</a> - the Open Inventor toolkit from SGI
 | 
			
		||||
<li><a href="http://www.tgs.com/" target="_parent">Open Inventor</a> - the Open Inventor toolkit from Template Graphics Software, Inc.
 | 
			
		||||
<li><a href="http://openrm.sourceforge.net/" target="_parent">OpenRM</a>
 | 
			
		||||
- Open Source, multithreaded, parallel scene graph API
 | 
			
		||||
<li><a href="http://www.opensg.org/OpenSGPLUS/index.EN.html" target="_parent">
 | 
			
		||||
Open SG PLUS</a> - a scene-graph library
 | 
			
		||||
<li><a href="http://www.openscenegraph.org/" target="_parent">Open Scene Graph
 | 
			
		||||
</a> - a scene-graph library
 | 
			
		||||
<li><a href="http://www.openvrml.org/" target="_parent">OpenVRML</a>
 | 
			
		||||
- a VRML parsing/display library with "lookat" - an example VRML browser
 | 
			
		||||
<li><a href="http://www.woodsoup.org/projs/plib" target="_parent">PLIB</a> - A collection of portable games libraries, including an OpenGL GUI and a simple Scene Graph API
 | 
			
		||||
<li><a href="ftp://ftp.troll.no/contest/Pryan-1.2.tar.gz" target="_parent">Pryan</a> - an OpenInventor-like toolkit
 | 
			
		||||
<li><a href="http://starship.python.net:9673/crew/da/Code/PyOpenGL" target="_parent">PyOpenGL</a> - OpenGL interface for Python
 | 
			
		||||
<li><a href="http://www.quesa.org/" target="_parent">Quesa</a> - QuickDraw3D-compatible library based on OpenGL, Mesa or Direct3D
 | 
			
		||||
<li><a href="http://www.mesa3d.org/brianp/repgl.txt" target="_parent">repGL</a> - IRIS GL emulated with OpenGL
 | 
			
		||||
<li><a href="http://www.scitechsoft.com/dp_mgl.html" target="_parent">SciTech MGL</a> - A multiplatform (Windows, Linux, OS/2, DOS, QNX, SMX, RT-Target & more) graphics library
 | 
			
		||||
<li><a href="http://sgl.sourceforge.net/" target="_parent">SGL</a> - a 3D Scene Graph Library
 | 
			
		||||
<li><a href="http://www.lal.in2p3.fr/SI/SoFree/" target="_parent">SoFree</a> - a free implementation of Open Inventor
 | 
			
		||||
<li><a href="http://togl.sourceforge.net/" target="_parent">Togl</a> - Tcl/Tk widget for OpenGL
 | 
			
		||||
<li><a href="http://mesa3d.sourceforge.net/notfound.html">VLE</a> - Virtual Reality Toolkit
 | 
			
		||||
<li><a href="http://www.int.com/" target="_parent">View3D Widget</a> - 3-D GUI widget
 | 
			
		||||
<li><a href="http://www.kitware.com/vtk.html" target="_parent">VTK</a> - Visualization Toolkit
 | 
			
		||||
<li><a href="http://home.earthlink.net/%7Erzeh/YAJOGLB/doc/YAJOGLB.html" target="_parent">YAJOGL</a> - Yet Another Java GL Binding.
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										115
									
								
								docs/license.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								docs/license.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,115 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>License / Cppyright Information</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>License / Copyright Information</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The Mesa distribution consists of several components.  Different copyrights
 | 
			
		||||
and licenses apply to different components.  For example, GLUT is copyrighted
 | 
			
		||||
by Mark Kilgard, some demo programs are copyrighted by SGI, some of the Mesa
 | 
			
		||||
device drivers are copyrighted by their authors.  See below for a list of
 | 
			
		||||
Mesa's components and the copyright/license for each.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The core Mesa library is licensed according to the terms of the XFree86
 | 
			
		||||
copyright (an MIT-style license).  This allows integration with the
 | 
			
		||||
XFree86/DRI project.  Unless otherwise stated, the Mesa source code and
 | 
			
		||||
documentation is licensed as follows:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
 | 
			
		||||
 | 
			
		||||
Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
to deal in the Software without restriction, including without limitation
 | 
			
		||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
 | 
			
		||||
The above copyright notice and this permission notice shall be included
 | 
			
		||||
in all copies or substantial portions of the Software.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H1>Attention, Contributors</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
When contributing to the Mesa project you must agree to relinquish your
 | 
			
		||||
work to the holder of the copyright for the particular component you're
 | 
			
		||||
contributing to.  That is, you can't put your own copyright on the code,
 | 
			
		||||
unless it's a modular piece that can be omitted from Mesa (like a new
 | 
			
		||||
device driver).  If for example, you contribute a bug fix to Mesa's
 | 
			
		||||
texture mapping code, your code will become a part of the body of work
 | 
			
		||||
which is copyrighted by Brian Paul and licensed by the above terms.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
Mesa Component Licenses:
 | 
			
		||||
 | 
			
		||||
Component       Files                 Primary Author      License
 | 
			
		||||
----------------------------------------------------------------------------
 | 
			
		||||
core Mesa code  src/*.[ch]            Brian Paul          Mesa
 | 
			
		||||
                include/GL/gl.h
 | 
			
		||||
 | 
			
		||||
GLX driver      src/X/*               Brian Paul          Mesa
 | 
			
		||||
                include/GL/glx.h
 | 
			
		||||
                include/GL/xmesa.h
 | 
			
		||||
 | 
			
		||||
OS/Mesa driver  src/OSmesa/*          Brian Paul          Mesa
 | 
			
		||||
                include/GL/osmesa.h
 | 
			
		||||
 | 
			
		||||
3Dfx driver     src/FX/*              David Bucciarelli   Mesa
 | 
			
		||||
                include/GL/fxmesa.h
 | 
			
		||||
 | 
			
		||||
BeOS R4 driver  src/BeOS/*            Brian Paul          Mesa
 | 
			
		||||
 | 
			
		||||
MGL driver      src/MGL/*             SciTech, Inc        SciTech copyright
 | 
			
		||||
                include/GL/mglmesa.h
 | 
			
		||||
 | 
			
		||||
Windows driver  src/Windows/*         Li Wei              copyright by Li Wei
 | 
			
		||||
                include/GL/wmesa.h
 | 
			
		||||
 | 
			
		||||
SVGA driver     src/SVGA/*            Brian Paul          GNU-LGPL
 | 
			
		||||
                include/GL/svgamesa.h
 | 
			
		||||
 | 
			
		||||
DOS driver      src/DOS/*             Charlie Wallace     GNU-LGPL
 | 
			
		||||
                include/GL/dosmesa.h
 | 
			
		||||
 | 
			
		||||
GGI driver      src/GGI/*             Uwe Maurer          GNU-LGPL
 | 
			
		||||
                include/GL/ggimesa.h
 | 
			
		||||
 | 
			
		||||
S3 driver       src/S3/*              S3, Inc.            S3 copyright
 | 
			
		||||
 | 
			
		||||
GLUT            src-glut/*            Mark Kilgard        Mark's copyright
 | 
			
		||||
                include/GL/*glut*.h
 | 
			
		||||
 | 
			
		||||
GLU library     src-glu/*             Brian Paul          GNU-LGPL
 | 
			
		||||
 | 
			
		||||
SI GLU library  si-glu/*              SGI                 SGI Free B
 | 
			
		||||
                include/GL/glu.h
 | 
			
		||||
 | 
			
		||||
Ext registry    include/GL/glext.h    SGI                 SGI Free B
 | 
			
		||||
                include/GL/glxext.h
 | 
			
		||||
 | 
			
		||||
demo programs   demos/*               various             see source files
 | 
			
		||||
 | 
			
		||||
X demos         xdemos/*              Brian Paul          see source files
 | 
			
		||||
 | 
			
		||||
SGI demos       samples/*             SGI                 SGI copyright
 | 
			
		||||
 | 
			
		||||
RedBook demos   book/*                SGI                 SGI copyright
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										51
									
								
								docs/lists.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								docs/lists.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Mailing Lists</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Mailing Lists</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>There are four Mesa mailing lists:</p>
 | 
			
		||||
<ul>
 | 
			
		||||
<li><b>mesa3d-users</b> - intended for users of the Mesa library.
 | 
			
		||||
Newbie questions are appropriate, but please try reading the Mesa documentation first.
 | 
			
		||||
</li><li><b>mesa3d-dev</b> - intended for developers of the Mesa library.
 | 
			
		||||
This is not for beginners.
 | 
			
		||||
</li><li><b>mesa3d-cvs</b> - CVS check-in messages are sent to this list.
 | 
			
		||||
This is useful for tracking ongoing development changes.
 | 
			
		||||
</li><li><b>mesa3d-announce</b> - announcements of new Mesa versions are sent to this list.
 | 
			
		||||
</li></ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To subscribe or unsubscribe, go to the
 | 
			
		||||
<a href="http://www.sourceforge.net/mail/?group_id=3" target="_parent">
 | 
			
		||||
SourceForge lists page.</a>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>The mailing lists are managed by SourceForge.  If you're having trouble
 | 
			
		||||
with the mailing lists please contact the SourceForge administrators for help.</p>
 | 
			
		||||
 | 
			
		||||
<p>Archives of the old Mesa mailing list which was hosted by unicamp.br
 | 
			
		||||
are available <a href="http://groups.yahoo.com/group/mesa/messages/">here</a>.</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Here are some other OpenGL-related forums you might find useful:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Usenet newsgroups:
 | 
			
		||||
<ul>
 | 
			
		||||
<li>comp.graphics.algorithms
 | 
			
		||||
<li>comp.graphics.api.opengl
 | 
			
		||||
<li>comp.os.linux.x
 | 
			
		||||
</ul>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<a href="http://www.opengl.org/">OpenGL discussion forums</A> at www.opengl.org
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</HTML>
 | 
			
		||||
</BODY>
 | 
			
		||||
							
								
								
									
										26
									
								
								docs/mangling.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								docs/mangling.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Function Name Mangling</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Function Name Mangling</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you want to use Mesa and native OpenGL in the same application at
 | 
			
		||||
the same time you may find it useful to compile Mesa with
 | 
			
		||||
<i>name mangling</i>.
 | 
			
		||||
This results in all the Mesa functions being prefixed with
 | 
			
		||||
<b>mgl</b> instead of <b>gl</b>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
To do this, recompile Mesa with the compiler flag -DUSE_MGL_NAMESPACE.
 | 
			
		||||
Add the flag to the other compiler flags in Make-config (if using the
 | 
			
		||||
old-style build system) or in src/Makefile if using GNU autoconf/
 | 
			
		||||
automake to build Mesa.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										70
									
								
								docs/modelers.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								docs/modelers.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,70 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Modelers, Renderers and Viewers</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Modelers, Renderers and Viewers</H1>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li><a href="http://www.ac3d.org/" target="_parent">AC3D</a> - 3-D modeler
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">ARCAD</a> - CAD program
 | 
			
		||||
	</li><li><a href="http://www.mediascape.com/" target="_parent">Artstream</a> - provides
 | 
			
		||||
	functionality like Corel Draw and Illustrator
 | 
			
		||||
	</li><li><a href="http://www.blender.nl/" target="_parent">Blender</a> - 3-D animation
 | 
			
		||||
	software
 | 
			
		||||
	</li><li><a href="http://www.bmrt.org/" target="_parent">BMRT</a> - Blue Moon Rendering
 | 
			
		||||
	Tools
 | 
			
		||||
	</li><li><a href="http://www.arq.net/%7Ekasten/demtools/" target="_parent">Demtools</a>
 | 
			
		||||
	- Map viewer
 | 
			
		||||
	</li><li><a href="http://www.holometric.de/dimension/" target="_parent">DIMENSION</a>
 | 
			
		||||
	- freeform surface reconstruction
 | 
			
		||||
	</li><li><a href="http://www.vectaport.com/vhclmaps/demviewer.html" target="_parent">demviewer</a>
 | 
			
		||||
	- interactive terrain viewer
 | 
			
		||||
	</li><li><a href="http://www.crc.ca/FreeWRL" target="_parent">FreeWRL</a> - VRML browser
 | 
			
		||||
	</li><li><a href="http://www.geomview.org/" target="_parent">Geomview</a> - 3-D geometry
 | 
			
		||||
	exploration
 | 
			
		||||
	</li><li><a href="http://innovation3d.sourceforge.net/" target="_parent">Innovation3D</a>
 | 
			
		||||
	- 3D modeling program
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html" target="_parent">KWRL</a> - VRML browser
 | 
			
		||||
	</li><li><a href="http://www.vermontel.com/%7Ecmorley/vrml.html" target="_parent">LibVRML97/Lookat</a>
 | 
			
		||||
	- VRML viewer
 | 
			
		||||
	</li><li><a href="http://aig.cs.man.ac.uk/systems/Maverik/" target="_parent">Maverik</a>
 | 
			
		||||
	- VR graphics and interaction system
 | 
			
		||||
	</li><li><a href="http://www.swissquake.ch/chumb.alum-soft" target="_parent">MD2 Viewer</a>
 | 
			
		||||
	- View .MD2 files
 | 
			
		||||
	</li><li><a href="http://www.megacads.dlr.de/" target="_parent">MegaCads</a>
 | 
			
		||||
	- Multiblock-Elliptic-Grid-Generation-And-CAD-System
 | 
			
		||||
	</li><li><a href="http://www.swissquake.ch/chumbalum-soft/" target="_parent">MilkShape
 | 
			
		||||
	3D</a> - 3D modeler/animator
 | 
			
		||||
	</li><li><a href="http://mindseye.sourceforge.net/" target="_parent">Mindseye</a> - Rendering/Modeling
 | 
			
		||||
	Package
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">Moonlight Atelier</a> - modeling and rendering package
 | 
			
		||||
	</li><li><a href="http://www.bittco.com/" target="_parent">NetReality</a> - Virtual Reality
 | 
			
		||||
	web organizer
 | 
			
		||||
	</li><li><a href="http://www.sim.no/reducer.html" target="_parent">Rational Reducer</a>
 | 
			
		||||
	- polygon reduction tool
 | 
			
		||||
	</li><li><a href="http://www.cs.kuleuven.ac.be/cwis/research/graphics/RENDERPARK/" target="_parent">RenderPark</a>
 | 
			
		||||
	- photorealistic rendering
 | 
			
		||||
	</li><li><a href="http://www.hardgeus.com/revolution" target="_parent">Revolution 3D Engine</a>
 | 
			
		||||
	- .3ds rendering engine
 | 
			
		||||
	</li><li><a href="http://www.dgp.toronto.edu/%7Emjmcguff/eversion/" target="_parent">sphereEversion</a>
 | 
			
		||||
	- inside-out sphere visualization
 | 
			
		||||
	</li><li><a href="http://www.cs.kuleuven.ac.be/cwis/research/graphics/3DOM/" target="_parent">3Dom</a>
 | 
			
		||||
	- 3-D modeler
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">3D Studio file viewer</a> - by David Farrell
 | 
			
		||||
	</li><li><a href="http://www.microform.se/" target="_parent">VARKON</a> - product engineering,
 | 
			
		||||
	design, modeling
 | 
			
		||||
	</li><li><a href="http://www.sim.no/vrmlview.html" target="_parent">VRMLview</a> - VRML
 | 
			
		||||
	model viewer
 | 
			
		||||
	</li><li><a href="http://www.iicm.edu/vrwave/" target="_parent">VRWave</a> - a VRML 2.0
 | 
			
		||||
	browser
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">VRweb</a> - VRML browser
 | 
			
		||||
	</li><li><a href="http://www.csv.ica.uni-stuttgart.de/vrml/dune/" target="_parent">white_dune</a>
 | 
			
		||||
	- graphical VRML97 Editor and animation tool
 | 
			
		||||
	</li><li><a href="http://www.wings3d.org/" target="_parent">Wings 3D</a> - static 3D modeller
 | 
			
		||||
	with VRML export.  Uses SDL library.
 | 
			
		||||
</li></ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										678
									
								
								docs/news.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										678
									
								
								docs/news.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,678 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa News</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff">
 | 
			
		||||
 | 
			
		||||
<H1>News</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>September 5, 2003</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 5.0.2 has been released.  This is a stable, bug-fix release.
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- fixed texgen problem causing texcoord's Q to be zero (stex3d)
 | 
			
		||||
	- default GL_TEXTURE_COMPARE_MODE_ARB was wrong
 | 
			
		||||
	- GL_CURRENT_MATRIX_NV query was wrong
 | 
			
		||||
	- GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
 | 
			
		||||
	- GL_LIST_MODE query wasn't correct
 | 
			
		||||
	- GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
 | 
			
		||||
	- GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong value
 | 
			
		||||
	- blended, wide lines didn't always work correctly (bug 711595)
 | 
			
		||||
	- glVertexAttrib4svNV w component was always 1
 | 
			
		||||
	- fixed bug in GL_IBM_rasterpos_clip (missing return)
 | 
			
		||||
	- GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
 | 
			
		||||
	- a few Solaris compilation fixes
 | 
			
		||||
	- fixed glClear() problem for DRI drivers (non-existant stencil, etc)
 | 
			
		||||
	- fixed int/REAL mixup in GLU NURBS curve evaluator (Eric Cazeaux)
 | 
			
		||||
	- fixed delete [] bug in SI GLU (bug 721765) (Diego Santa Cruz)
 | 
			
		||||
	- glFog() didn't clamp fog colors
 | 
			
		||||
	- fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
 | 
			
		||||
	  gl[Get]TexParameteri[v] functions
 | 
			
		||||
	- fixed invalid memory references in glTexGen functions (bug 781602)
 | 
			
		||||
	- integer-valued color arrays weren't handled correctly
 | 
			
		||||
	- glDrawPixels(GL_DEPTH_COMPONENT) with glPixelZoom didn't work
 | 
			
		||||
	- GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
 | 
			
		||||
    Changes:
 | 
			
		||||
	- build GLUT with -fexceptions so C++ apps propogate exceptions
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
MD5 checksums follow:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
2deb4176e7a06a0477ae31cadd55444b  MesaLib-5.0.2.tar.gz
 | 
			
		||||
dc147598ebdff4312260a7f79b3c5c9c  MesaLib-5.0.2.tar.bz2
 | 
			
		||||
1eb0fa7079131efef574e3bda328b8c8  MesaLib-5.0.2.zip
 | 
			
		||||
e0dc86e9417620e794968641403604d4  MesaDemos-5.0.2.tar.gz
 | 
			
		||||
a71afaeddd0b567423f88085576850d3  MesaDemos-5.0.2.tar.bz2
 | 
			
		||||
32fbf1925cf45f548468ddda96087828  MesaDemos-5.0.2.zip
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>June 2003</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa's directory tree has been overhauled.
 | 
			
		||||
Things are better organized now with some thought toward future needs.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
In CVS, the latest Mesa 5.1 development code is now rooted under the
 | 
			
		||||
<b>Mesa-newtree/</b> directory.  The old top-level <b>Mesa/</b> directory
 | 
			
		||||
holds the Mesa 5.0.x code which will be abandoned at some point.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>March 30, 2003</h2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 5.0.1 has been released.  This is a stable, bug-fix release.
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
    New:
 | 
			
		||||
	- DOS driver updates from Daniel Borca
 | 
			
		||||
	- updated GL/gl_mangle.h file (Bill Hoffman)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- auto mipmap generation for cube maps was broken (bug 641363)
 | 
			
		||||
	- writing/clearing software alpha channels was unreliable
 | 
			
		||||
	- minor compilation fixes for OS/2 (Evgeny Kotsuba)
 | 
			
		||||
	- fixed some bad assertions found with shadowtex demo
 | 
			
		||||
	- fixed error checking bug in glCopyTexSubImage2D (bug 659020)
 | 
			
		||||
	- glRotate(angle, -x, 0, 0) was incorrect (bug 659677)
 | 
			
		||||
	- fixed potential segfault in texture object validation (bug 659012)
 | 
			
		||||
	- fixed some bogus code in _mesa_test_os_sse_exception_support (Linus)
 | 
			
		||||
	- fix fog stride bug in tnl code for h/w drivers (Michel Danzer)
 | 
			
		||||
	- fixed glActiveTexture / glMatrixMode(GL_TEXTURE) bug (#669080)
 | 
			
		||||
	- glGet(GL_CURRENT_SECONDARY_COLOR) should return 4 values, not 3
 | 
			
		||||
	- fixed compilation problem on Solaris7/x86 (bug 536406)
 | 
			
		||||
	- fixed prefetch bug in 3DNow! code (Felix Kuhling)
 | 
			
		||||
	- fixed NeXT build problem (FABSF macro)
 | 
			
		||||
	- glDrawPixels Z values when glPixelZoom!=1 were invalid (bug 687811)
 | 
			
		||||
	- zoomed glDraw/CopyPixels with clipping sometimes failed (bug 689964)
 | 
			
		||||
	- AA line and triangle Z values are now rounded, not truncated
 | 
			
		||||
	- fixed color interpolation bug when GLchan==GLfloat (bug 694461)
 | 
			
		||||
	- glArePrograms/TexturesResident() wasn't 100% correct (Jose Fonseca)
 | 
			
		||||
	- fixed a minor GL_COLOR_MATERIAL bug
 | 
			
		||||
	- NV vertex program EXP instruction was broken
 | 
			
		||||
	- glColorMask misbehaved with X window / pixmap rendering
 | 
			
		||||
	- fix autoconf/libtool GLU C++ linker problem on Linux (a total hack)
 | 
			
		||||
	- attempt to fix GGI compilation problem when MesaDemos not present
 | 
			
		||||
	- NV vertex program ARL-relative fetches didn't work
 | 
			
		||||
    Changes:
 | 
			
		||||
	- use glPolygonOffset in gloss demo to avoid z-fighting artifacts
 | 
			
		||||
	- updated winpos and pointblast demos to use ARB extensions
 | 
			
		||||
	- disable SPARC normal transformation code (bug 673938)
 | 
			
		||||
	- GLU fixes for OS/2 (Evgeny Kotsuba)
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
MD5 checksums follow:
 | 
			
		||||
</p>
 | 
			
		||||
<pre>
 | 
			
		||||
b80f8b5d53a3e9f19b9fde5af0c542f0  MesaLib-5.0.1.tar.gz
 | 
			
		||||
513b4bbd7d38951f05027179063d876b  MesaLib-5.0.1.tar.bz2
 | 
			
		||||
eebd395678f4520d33b267e5d5c22651  MesaLib-5.0.1.zip
 | 
			
		||||
49d7feaec6dc1d2091d7c3cc72a9b320  MesaDemos-5.0.1.tar.gz
 | 
			
		||||
37190374a98c3c892f0698be9ca3acf0  MesaDemos-5.0.1.tar.bz2
 | 
			
		||||
becd8bf17f5791361b4a54ba2a78e5c9  MesaDemos-5.0.1.zip
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>March 7, 2003</h2>
 | 
			
		||||
<p>
 | 
			
		||||
Website and documentation overhaul.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The website content and Mesa documentation (from the doc/ directory) have
 | 
			
		||||
been merged together.
 | 
			
		||||
All the documentation files have been entered into the CVS repository.
 | 
			
		||||
Many of the old plain-text files have been converted to html and modernized.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>November 13, 2002</h2>
 | 
			
		||||
<p>Mesa 5.0 has been released.  This is a stable release which
 | 
			
		||||
implements the OpenGL 1.4 specification.
 | 
			
		||||
</p><pre>New:
 | 
			
		||||
    - OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4")
 | 
			
		||||
    - removed some overlooked debugging code
 | 
			
		||||
    - glxinfo updated to support GLX_ARB_multisample
 | 
			
		||||
    - GLUT now support GLX_ARB_multisample
 | 
			
		||||
    - updated DOS driver (Daniel Borca)
 | 
			
		||||
Bug fixes:
 | 
			
		||||
    - GL_POINT and GL_LINE-mode polygons didn't obey cull state
 | 
			
		||||
    - fixed potential bug in _mesa_align_malloc/calloc()
 | 
			
		||||
    - fixed missing triangle bug when running vertex programs
 | 
			
		||||
    - fixed a few HPUX compilation problems
 | 
			
		||||
    - FX (Glide) driver didn't compile
 | 
			
		||||
    - setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv() didn't work
 | 
			
		||||
    - a few EXT functions, like glGenTexturesEXT, were no-ops
 | 
			
		||||
    - a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate,
 | 
			
		||||
      glMultiDrawArrays and glMultiDrawElements were missing
 | 
			
		||||
    - glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken
 | 
			
		||||
    - Pentium 4 Mobile was mistakenly identified as having 3DNow!
 | 
			
		||||
    - fixed one-bit error in point/line fragment Z calculation
 | 
			
		||||
    - fixed potential segfault in fakeglx code
 | 
			
		||||
    - fixed color overflow problem in DOT3 texture env mode
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>October 29, 2002</h2>
 | 
			
		||||
<p>Mesa 4.1 has been released.  This is a new development release.
 | 
			
		||||
For a stable release, get 4.0.4.
 | 
			
		||||
</p><pre>New:
 | 
			
		||||
    - GL_NV_vertex_program extension
 | 
			
		||||
    - GL_NV_vertex_program1_1 extension
 | 
			
		||||
    - GL_ARB_window_pos extension
 | 
			
		||||
    - GL_ARB_depth_texture extension
 | 
			
		||||
    - GL_ARB_shadow extension
 | 
			
		||||
    - GL_ARB_shadow_ambient extension
 | 
			
		||||
    - GL_EXT_shadow_funcs extension
 | 
			
		||||
    - GL_ARB_point_parameters extension
 | 
			
		||||
    - GL_ARB_texture_env_crossbar
 | 
			
		||||
    - GL_NV_point_sprite extension
 | 
			
		||||
    - GL_NV_texture_rectangle extension
 | 
			
		||||
    - GL_EXT_multi_draw_arrays extension
 | 
			
		||||
    - GL_EXT_stencil_two_side extension
 | 
			
		||||
    - GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions
 | 
			
		||||
    - GL_ATI_texture_mirror_once extension (Ian Romanick)
 | 
			
		||||
    - massive overhaul/simplification of software rasterizer module,
 | 
			
		||||
      many contributions from Klaus Niederkrueger
 | 
			
		||||
    - faster software texturing in some cases (i.e. trilinear filtering)
 | 
			
		||||
    - new OSMesaGetProcAddress() function
 | 
			
		||||
    - more blend modes implemented with MMX code (Jose Fonseca)
 | 
			
		||||
    - added glutGetProcAddress() to GLUT
 | 
			
		||||
    - added GLUT_FPS env var to compute frames/second in glutSwapBuffers()
 | 
			
		||||
    - pbinfo and pbdemo PBuffer programs
 | 
			
		||||
    - glxinfo -v prints transprent pixel info (Gerd Sussner)
 | 
			
		||||
Bug fixes:
 | 
			
		||||
    - better mipmap LOD computation (prevents excessive blurriness)
 | 
			
		||||
    - OSMesaMakeCurrent() didn't recognize buffer size changes
 | 
			
		||||
    - assorted conformance fixes for 16-bit/channel rendering
 | 
			
		||||
    - texcombine alpha subtraction mode was broken
 | 
			
		||||
    - fixed some blend problems when GLchan==GLfloat (Gerk Huisma)
 | 
			
		||||
    - clamp colors to [0,1] in OSMesa if GLchan==GLfloat (Gerk Huisma)
 | 
			
		||||
    - fixed divide by zero error in NURBS tessellator (Jon Perry)
 | 
			
		||||
    - fixed GL_LINEAR fog bug by adding clamping
 | 
			
		||||
    - fixed FP exceptions found using Alpha CPU
 | 
			
		||||
    - 3dfx/glide driver render-to-window feature was broken
 | 
			
		||||
    - added missing GLX_TRANSPARENT_RGB token to glx.h
 | 
			
		||||
    - fixed error checking related to paletted textures
 | 
			
		||||
    - fixed reference count error in glDeleteTextures (Randy Fayan)
 | 
			
		||||
Changes:
 | 
			
		||||
    - New spec file and Python code to generate some GL dispatch files
 | 
			
		||||
    - Glide driver defaults to "no" with autoconf/automake
 | 
			
		||||
    - floating point color channels now clamped to [0,inf)
 | 
			
		||||
    - updated demos/stex3d with new options
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>October 4, 2002</h2>
 | 
			
		||||
<p>
 | 
			
		||||
The <a href="http://mesa3d.sourceforge.net/docs/MesaFAQ.html">Mesa FAQ</a> has been rewritten.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<h2>October 3, 2002</h2>
 | 
			
		||||
<p>Mesa 4.0.4 has been released.  This is a stable bug-fix release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
	- GL_NV_texture_rectangle extension
 | 
			
		||||
	- updated glext.h header (version 17)
 | 
			
		||||
	- updated DOS driver (Daniel Borca)
 | 
			
		||||
	- updated BeOS R5 driver (Philippe Houdoin)
 | 
			
		||||
	- added GL_IBM_texture_mirror_repeat
 | 
			
		||||
	- glxinfo now takes -l option to print interesting OpenGL limits info
 | 
			
		||||
	- GL_MESA_ycbcr_texture extension
 | 
			
		||||
	- GL_APPLE_client_storage extension (for some DRI drivers only)
 | 
			
		||||
	- GL_MESA_pack_invert extension
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
	- fixed GL_LINEAR fog bug by adding clamping
 | 
			
		||||
	- fixed FP exceptions found using Alpha CPU
 | 
			
		||||
	- 3dfx MESA_GLX_FX=window (render to window) didn't work
 | 
			
		||||
	- fixed memory leak in wglCreateContest (Karl Schultz)
 | 
			
		||||
	- define GLAPIENTRY and GLAPI if undefined in glu.h
 | 
			
		||||
	- wglGetProcAddress didn't handle all API functions
 | 
			
		||||
	- when testing for OpenGL 1.2 vs 1.3, check for GL_ARB_texture_cube_map
 | 
			
		||||
	- removed GL_MAX_CONVOLUTION_WIDTH/HEIGHT from glGetInteger/Float/etc()
 | 
			
		||||
	- error checking in compressed tex image functions had some glitches
 | 
			
		||||
	- fixed AIX compile problem in src/config.c
 | 
			
		||||
	- glGetTexImage was using pixel unpacking instead of packing params
 | 
			
		||||
	- auto-mipmap generation for cube maps was incorrect
 | 
			
		||||
    Changes:
 | 
			
		||||
	- max texture units reduced to six to accomodate texture rectangles
 | 
			
		||||
	- removed unfinished GL_MESA_sprite_point extension code
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<h2>June 25, 2002</h2>
 | 
			
		||||
<p>Mesa 4.0.3 has been released.  This is a stable bug-fix release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
    - updated GL/glext.h file (version 15)
 | 
			
		||||
    - corrected MMX blend code (Jose Fonseca)
 | 
			
		||||
    - support for software-based alpha planes in Windows driver
 | 
			
		||||
    - updated GGI driver (Filip Spacek)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
    - glext.h had wrong values for GL_DOT3_RGB[A]_EXT tokens
 | 
			
		||||
    - OSMesaMakeCurrent() didn't recognize buffer size changes
 | 
			
		||||
    - assorted conformance fixes for 16-bit/channel rendering
 | 
			
		||||
    - texcombine alpha subtraction mode was broken
 | 
			
		||||
    - fixed lighting bug with non-uniform scaling and display lists
 | 
			
		||||
    - fixed bug when deleting shared display lists
 | 
			
		||||
    - disabled SPARC cliptest assembly code (Mesa bug 544665)
 | 
			
		||||
    - fixed a couple Solaris compilation/link problems
 | 
			
		||||
    - blending clipped glDrawPixels didn't always work
 | 
			
		||||
    - glGetTexImage() didn't accept packed pixel types
 | 
			
		||||
    - glPixelMapu[is]v() could explode given too large of pixelmap
 | 
			
		||||
    - glGetTexParameter[if]v() didn't accept GL_TEXTURE_MAX_ANISOTROPY_EXT
 | 
			
		||||
    - glXCopyContext() could lead to segfaults
 | 
			
		||||
    - glCullFace(GL_FRONT_AND_BACK) didn't work (bug 572665)
 | 
			
		||||
    Changes:
 | 
			
		||||
    - lots of C++ (g++) code clean-ups
 | 
			
		||||
    - lots of T&L updates for the Radeon DRI driver
 | 
			
		||||
    Known bugs:
 | 
			
		||||
    - mipmap LOD computation (fixed for Mesa 4.1)
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<h2>April 2, 2002</h2>
 | 
			
		||||
<p>Mesa 4.0.2 has been released.  This is a stable bug-fix release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
      - New DOS (DJGPP) driver written by Daniel Borca
 | 
			
		||||
      - New driver interface functions for TCL drivers (such as Radeon DRI)
 | 
			
		||||
      - GL_RENDERER string returns "Mesa Offscreen16" or "Mesa Offscreen32"
 | 
			
		||||
        if using deep color channels
 | 
			
		||||
      - latest GL/glext.h and GL/glxext.h headers from SGI
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
      - GL_BLEND with non-black texture env color wasn't always correct
 | 
			
		||||
      - GL_REPLACE with GL_RGB texture format wasn't always correct (alpha)
 | 
			
		||||
      - glTexEnviv( pname != GL_TEXTURE_ENV_COLOR ) was broken
 | 
			
		||||
      - glReadPixels was sometimes mistakenly clipped by the scissor box
 | 
			
		||||
      - glDraw/ReadPixels didn't catch all the errors that they should have
 | 
			
		||||
      - Fixed 24bpp rendering problem in Windows driver (Karl Schultz)
 | 
			
		||||
      - 16-bit GLchan mode fixes (m_trans_tmp.h, s_triangle.c)
 | 
			
		||||
      - Fixed 1-bit float->int conversion bug in glDrawPixels(GL_DEPTH_COMP)
 | 
			
		||||
      - glColorMask as sometimes effecting glXSwapBuffers()
 | 
			
		||||
      - fixed a potential bug in XMesaGarbageCollect()
 | 
			
		||||
      - N threads rendering into one window didn't work reliably
 | 
			
		||||
      - glCopyPixels didn't work for deep color channels
 | 
			
		||||
      - improved 8 -> 16bit/channel texture image conversion (Gerk Huisma)
 | 
			
		||||
      - glPopAttrib() didn't correctly restore user clip planes
 | 
			
		||||
      - user clip planes failed for some perspective projections (Chromium)
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<h2>December 17, 2001</h2>
 | 
			
		||||
<p>Mesa 4.0.1 has been released.  This is a stable bug-fix release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
      - better sub-pixel sample positions for AA triangles (Ray Tice)
 | 
			
		||||
      - slightly faster blending for (GL_ZERO, GL_ONE) and (GL_ONE, GL_ZERO)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
      - added missing break statements in glGet*() for multisample cases
 | 
			
		||||
      - fixed uninitialized hash table mutex bug (display lists / texobjs)
 | 
			
		||||
      - fixed bad teximage error check conditional (bug 476846)
 | 
			
		||||
      - fixed demos readtex.c compilation problem on Windows (Karl Schultz)
 | 
			
		||||
      - added missing glGet() query for GL_MAX_TEXTURE_LOD_BIAS_EXT
 | 
			
		||||
      - silence some compiler warnings (gcc 2.96)
 | 
			
		||||
      - enable the #define GL_VERSION_1_3 in GL/gl.h
 | 
			
		||||
      - added GL 1.3 and GLX 1.4 entries to gl_mangle.h and glx_mangle.h
 | 
			
		||||
      - fixed glu.h typedef problem found with MSDev 6.0
 | 
			
		||||
      - build libGL.so with -Bsymbolic (fixes bug found with Chromium)
 | 
			
		||||
      - added missing 'const' to glXGetContextIDEXT() in glxext.h
 | 
			
		||||
      - fixed a few glXGetProcAddress() errors (texture compression, etc)
 | 
			
		||||
      - fixed start index bug in compiled vertex arrays (Keith)
 | 
			
		||||
      - fixed compilation problems in src/SPARC/glapi_sparc.S
 | 
			
		||||
      - fixed triangle strip "parity" bug found in VTK medical1 demo (Keith)
 | 
			
		||||
      - use glXGetProcAddressARB in GLUT to avoid extension linking problems
 | 
			
		||||
      - provoking vertex of flat-shaded, color-index triangles was wrong
 | 
			
		||||
      - fixed a few display list bugs (GLUT walker, molecule, etc) (Keith)
 | 
			
		||||
      - glTexParameter didn't flush the vertex buffer (Ray Tice)
 | 
			
		||||
      - feedback attributes for glDraw/CopyPixels and glBitmap were wrong
 | 
			
		||||
      - fixed bug in normal length caching (ParaView lighting bug)
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<h2>October 22, 2001</h2>
 | 
			
		||||
<p>Mesa 4.0 has been released.  This is a stable release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
      - Mesa 4.0 implements the OpenGL 1.3 specification
 | 
			
		||||
      - GL_IBM_rasterpos_clip extension
 | 
			
		||||
      - GL_EXT_texture_edge_clamp extension (aka GL_SGIS_texture_edge_clamp)
 | 
			
		||||
      - GL_ARB_texture_mirrored_repeat extension
 | 
			
		||||
      - WindML UGL driver (Stephane Raimbault)
 | 
			
		||||
      - added OSMESA_MAX_WIDTH/HEIGHT queries
 | 
			
		||||
      - attempted compiliation fixes for Solaris 5, 7 and 8
 | 
			
		||||
      - updated glext.h and glxext.h files
 | 
			
		||||
      - updated Windows driver (Karl Schultz)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
      - added some missing GLX 1.3 tokens to include/GL/glx.h
 | 
			
		||||
      - GL_COLOR_MATRIX changes weren't recognized by teximage functions
 | 
			
		||||
      - glCopyPixels with scale and bias was broken
 | 
			
		||||
      - glRasterPos with lighting could segfault
 | 
			
		||||
      - glDeleteTextures could leave a dangling pointer
 | 
			
		||||
      - Proxy textures for cube maps didn't work
 | 
			
		||||
      - fixed a number of 16-bit color channel bugs
 | 
			
		||||
      - fixed a few minor memory leaks
 | 
			
		||||
      - GLX context sharing was broken in 3.5
 | 
			
		||||
      - fixed state-update bugs in glPopClientAttrib()
 | 
			
		||||
      - fixed glDrawRangeElements() bug
 | 
			
		||||
      - fixed a glPush/PopAttrib() bug related to texture binding
 | 
			
		||||
      - flat-shaded, textured lines were broken
 | 
			
		||||
      - fixed a dangling pointer problem in the XMesa code (Chris Burghart)
 | 
			
		||||
      - lighting didn't always produce the correct alpha value
 | 
			
		||||
      - fixed 3DNow! code to not read past end of arrays (Andrew Lewycky)
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>June 21, 2001</h2>
 | 
			
		||||
<p>Mesa 3.5 has been released.  This is a new development release.
 | 
			
		||||
</p><pre>    New:
 | 
			
		||||
	- internals of Mesa divided into modular pieces (Keith Whitwell)
 | 
			
		||||
	- 100% OpenGL 1.2 conformance (passes all conformance tests)
 | 
			
		||||
	- new AA line algorithm
 | 
			
		||||
	- GL_EXT_convolution extension
 | 
			
		||||
        - GL_ARB_imaging subset
 | 
			
		||||
        - OSMesaCreateContextExt() function
 | 
			
		||||
        - GL_ARB_texture_env_add extension (same as GL_EXT_texture_env_add)
 | 
			
		||||
        - GL_MAX_TEXTURE_UNITS_ARB now defaults to eight
 | 
			
		||||
        - GL_EXT_fog_coord extension (Keith Whitwell)
 | 
			
		||||
        - GL_EXT_secondary_color extension (Keith Whitwell)
 | 
			
		||||
        - GL_ARB_texture_env_add extension (same as GL_EXT_texture_env_add)
 | 
			
		||||
        - GL_SGIX_depth_texture extension
 | 
			
		||||
        - GL_SGIX_shadow and GL_SGIX_shadow_ambient extensions
 | 
			
		||||
        - demos/shadowtex.c demo of GL_SGIX_depth_texture and GL_SGIX_shadow
 | 
			
		||||
        - GL_ARB_texture_env_combine extension
 | 
			
		||||
        - GL_ARB_texture_env_dot3 extension
 | 
			
		||||
        - GL_ARB_texture_border_clamp (aka GL_SGIS_texture_border_clamp)
 | 
			
		||||
        - OSMesaCreateContextExt() function
 | 
			
		||||
        - libOSMesa.so library, contains the OSMesa driver interface
 | 
			
		||||
        - GL/glxext.h header file for GLX extensions
 | 
			
		||||
        - somewhat faster software texturing, fogging, depth testing
 | 
			
		||||
        - all color-index conformance tests now pass (only 8bpp tested)
 | 
			
		||||
        - SPARC assembly language TCL optimizations (David Miller)
 | 
			
		||||
        - GL_SGIS_generate_mipmap extension
 | 
			
		||||
    Bug Fixes:
 | 
			
		||||
        - fbiRev and tmuRev were unitialized when using Glide3
 | 
			
		||||
        - fixed a few color index mode conformance failures; all pass now
 | 
			
		||||
        - now appling antialiasing coverage to alpha after texturing
 | 
			
		||||
        - colors weren't getting clamped to [0,1] before color table lookup
 | 
			
		||||
        - fixed RISC alignment errors caused by COPY_4UBV macro
 | 
			
		||||
        - drawing wide, flat-shaded lines could cause a segfault
 | 
			
		||||
        - vertices now snapped to 1/16 pixel to fix rendering of tiny triangles
 | 
			
		||||
    Changes:
 | 
			
		||||
        - SGI's Sample Implementation (SI) 1.3 GLU library replaces Mesa GLU
 | 
			
		||||
        - new libOSMesa.so library, contains the OSMesa driver interface
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>May 17, 2001</h2>
 | 
			
		||||
<p>Mesa 3.4.2 has been released.  This is basically just a bug-fix release.
 | 
			
		||||
Here's what's new:</p>
 | 
			
		||||
<pre>    Bug fixes:
 | 
			
		||||
        - deleting the currently bound texture could cause bad problems
 | 
			
		||||
        - using fog could result in random vertex alpha values
 | 
			
		||||
         - AA triangle rendering could touch pixels outside right window bound
 | 
			
		||||
        - fixed byteswapping problem in clear_32bit_ximage() function
 | 
			
		||||
        - fixed bugs in wglUseFontBitmapsA(), by Frank Warmerdam
 | 
			
		||||
        - fixed memory leak in glXUseXFont()
 | 
			
		||||
        - fragment sampling in AA triangle function was off by 1/2 pixel
 | 
			
		||||
        - Windows: reading pixels from framebuffer didn't always work
 | 
			
		||||
        - glConvolutionFilter2D could segfault or cause FP exception
 | 
			
		||||
        - fixed segfaults in FX and X drivers when using tex unit 1 but not 0
 | 
			
		||||
        - GL_NAND logicop didn't work right in RGBA mode
 | 
			
		||||
        - fixed a memory corruption bug in vertex buffer reset code
 | 
			
		||||
        - clearing the softwara alpha buffer with scissoring was broken
 | 
			
		||||
        - fixed a few color index mode fog bugs
 | 
			
		||||
        - fixed some bad assertions in color index mode
 | 
			
		||||
        - fixed FX line 'stipple' bug #420091
 | 
			
		||||
    Changes:
 | 
			
		||||
        - optimized writing mono-colored pixel spans to X pixmaps
 | 
			
		||||
        - increased max viewport size to 2048 x 2048
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>April 29, 2001</h2>
 | 
			
		||||
<p>New Mesa website</p>
 | 
			
		||||
<p>Mark Manning produced the new website.<br>Thanks, Mark!</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<h2>February 14, 2001</h2>
 | 
			
		||||
<p>Mesa 3.4.1 has been released.  Here's what's new:</p>
 | 
			
		||||
<pre>    New:
 | 
			
		||||
        - fixed some Linux build problems
 | 
			
		||||
        - fixed some Windows build problems
 | 
			
		||||
        - GL_EXT_texture_env_dot3 extension (Gareth Hughes)
 | 
			
		||||
    Bug fixes:
 | 
			
		||||
        - added RENDER_START/RENDER_FINISH macros for glCopyTexImage in DRI
 | 
			
		||||
        - various state-update code changes needed for DRI bugs
 | 
			
		||||
        - disabled pixel transfer ops in glColorTable commands, not needed
 | 
			
		||||
        - fixed bugs in glCopyConvolutionFilter1D/2D, glGetConvolutionFilter
 | 
			
		||||
        - updated sources and fixed compile problems in widgets-mesa/
 | 
			
		||||
        - GLX_PBUFFER enum value was wrong in glx.h
 | 
			
		||||
        - fixed a glColorMaterial lighting bug
 | 
			
		||||
        - fixed bad args to Read/WriteStencilSpan in h/w stencil clear function
 | 
			
		||||
        - glXCopySubBufferMESA() Y position was off by one
 | 
			
		||||
        - Error checking of glTexSubImage3D() was broken (bug 128775)
 | 
			
		||||
        - glPopAttrib() didn't restore all derived Mesa state correctly
 | 
			
		||||
        - Better glReadPixels accuracy for 16bpp color - fixes lots of OpenGL
 | 
			
		||||
          conformance problems at 16bpp.
 | 
			
		||||
        - clearing depth buffer with scissoring was broken, would segfault
 | 
			
		||||
        - OSMesaGetDepthBuffer() returned bad bytesPerValue value
 | 
			
		||||
        - fixed a line clipping bug (reported by Craig McDaniel)
 | 
			
		||||
        - fixed RGB color over/underflow bug for very tiny triangles
 | 
			
		||||
    Known problems:
 | 
			
		||||
        - NURBS or evaluator surfaces inside display lists don't always work
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>November 3, 2000</h2>
 | 
			
		||||
<p>Mesa 3.4 has been released. Here's what's new since the 3.3 release:</p>
 | 
			
		||||
<pre>    New:
 | 
			
		||||
    - optimized glDrawPixels for glPixelZoom(1,-1)
 | 
			
		||||
    Bug Fixes:
 | 
			
		||||
    - widgets-mesa/src/*.c files were missing from 3.3 distro
 | 
			
		||||
    - include/GL/mesa_wgl.h file was missing from 3.3 distro
 | 
			
		||||
    - fixed some Win32 compile problems
 | 
			
		||||
    - texture object priorities weren't getting initialized to 1.0
 | 
			
		||||
    - glAreTexturesResident return value was wrong when using hardware
 | 
			
		||||
    - glXUseXFont segfaulted when using 3dfx driver (via MESA_GLX_FX)
 | 
			
		||||
    - glReadPixels with GLushort packed types was broken
 | 
			
		||||
    - fixed a few bugs in the GL_EXT_texture_env_combine texture code
 | 
			
		||||
    - glPush/PopAttrib(GL_ENABLE_BIT) mishandled multi-texture enables
 | 
			
		||||
    - fixed some typos/bugs in the VB code
 | 
			
		||||
    - glDrawPixels(GL_COLOR_INDEX) to RGB window didn't work
 | 
			
		||||
    - optimized glDrawPixels paths weren't being used
 | 
			
		||||
    - per-fragment fog calculation didn't work without a Z buffer
 | 
			
		||||
    - improved blending accuracy, fixes Glean  blendFunc test failures
 | 
			
		||||
    - glPixelStore(GL_PACK/UNPACK_SKIP_IMAGES) wasn't handled correctly
 | 
			
		||||
    - glXGetProcAddressARB() didn't always return the right address
 | 
			
		||||
    - gluBuild[12]DMipmaps() didn't grok the GL_BGR pixel format
 | 
			
		||||
    - texture matrix changes weren't always detected (GLUT projtex demo)
 | 
			
		||||
    - fixed random color problem in vertex fog code
 | 
			
		||||
    - fixed Glide-related bug that let Quake get a 24-bit Z buffer
 | 
			
		||||
    Changes:
 | 
			
		||||
    - finished internal support for compressed textures for DRI
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>April 24, 2000</h2>
 | 
			
		||||
<p>Mesa 3.2 has been released. Here's what's new since the beta release:</p>
 | 
			
		||||
<pre>    Bug fixes:
 | 
			
		||||
    - fixed memcpy bugs in span.c
 | 
			
		||||
    - fixed missing glEnd problem in demos/tessdemo.c
 | 
			
		||||
    - fixed bug when clearing 24bpp Ximages
 | 
			
		||||
    - fixed clipping problem found in Unreal Tournament
 | 
			
		||||
    - fixed Loki's "ice bug" and "crazy triangles" seen in Heretic2
 | 
			
		||||
    - fixed Loki's 3dfx RGB vs BGR bug
 | 
			
		||||
    - fixed Loki's 3dfx smooth/flat shading bug in SoF
 | 
			
		||||
    Changes:
 | 
			
		||||
    - updated docs/README file
 | 
			
		||||
    - use bcopy() optimizations on FreeBSD
 | 
			
		||||
    - re-enabled the optimized persp_textured_triangle() function
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>March 23, 2000</h2>
 | 
			
		||||
<p>I've just upload the Mesa 3.2 beta 1 files to SourceForge at <a href="http://sourceforge.net/project/showfiles.php?group_id=3" target="_parent">http://sourceforge.net/project/filelist.php?group_id=3</a><a href="http://sourceforge.net/project/showfiles.php?group_id=3"></a></p>
 | 
			
		||||
<p>3.2 (note even number) is a stabilization release of Mesa 3.1 meaning it's mainly
 | 
			
		||||
just bug fixes.</p>
 | 
			
		||||
<p>Here's what's changed:
 | 
			
		||||
 | 
			
		||||
</p><ul>
 | 
			
		||||
	Bug fixes:
 | 
			
		||||
	<ul>
 | 
			
		||||
		- mixed drawing of lines and bitmaps sometimes had wrong colors<br>
 | 
			
		||||
		- added missing glHintPGI() function<br>
 | 
			
		||||
		- fixed a polygon culling bug<br>
 | 
			
		||||
		- fixed bugs in gluPartialDisk()<br>
 | 
			
		||||
		- Z values in selection mode were wrong<br>
 | 
			
		||||
		- added missing tokens:
 | 
			
		||||
		<ul>
 | 
			
		||||
			GL_SMOOTH_POINT_SIZE_RANGE<br>
 | 
			
		||||
			GL_SMOOTH_POINT_SIZE_GRANULARITY<br>
 | 
			
		||||
			GL_SMOOTH_LINE_WIDTH_RANGE<br>
 | 
			
		||||
			GL_SMOOTH_LINE_WIDTH_GRANULARITY<br>
 | 
			
		||||
			GL_ALIASED_POINT_SIZE_RANGE<br>
 | 
			
		||||
			GL_ALIASED_LINE_WIDTH_RANGE
 | 
			
		||||
		</ul>
 | 
			
		||||
		- fixed glCopyPixels when copying from back to front buffer<br>
 | 
			
		||||
		- GL_EXT_compiled_vertex_array tokens had _SGI suffix instead of _EXT<br>
 | 
			
		||||
		- glDrawRangeElements(GL_LINES, 0, 1, 2, type, indices) was broken<br>
 | 
			
		||||
		- glDeleteTextures() didn't decrement reference count correctly<br>
 | 
			
		||||
		- GL_SRCA_ALPHA_SATURATE blend mode didn't work correctly<br>
 | 
			
		||||
		- Actual depth of transformation matrix stacks was off by one<br>
 | 
			
		||||
		- 24bpp visuals didn't address pixels correctly<br>
 | 
			
		||||
		- mipmap level of detail (lambda) calculation simplified, more accurate<br>
 | 
			
		||||
		- 101691 - Polygon clipping and GL_LINE<br>
 | 
			
		||||
		- 101928 - Polygon clipping and GL_LINE (same fix as above)<br>
 | 
			
		||||
		- 101808 - Non-glVertexArrays tristrip bug<br>
 | 
			
		||||
		- 101971 - find_last_3f on Dec OSF (worked around)<br>
 | 
			
		||||
		- 102369 - segv on dec osf (possibly a duplicate of the above)<br>
 | 
			
		||||
		- 102893 - orientations of modelview cause segfault
 | 
			
		||||
	</ul>
 | 
			
		||||
	New:
 | 
			
		||||
	<ul>
 | 
			
		||||
		- updated SVGA Linux driver<br>
 | 
			
		||||
		- added the MESA_FX_NO_SIGNALS env var, see docs/README.3DFX<br>
 | 
			
		||||
		- build libGLw.a (Xt/OpenGL drawing area widget) library by default<br>
 | 
			
		||||
		- changed -O2 to -O3 for a number of gcc configs
 | 
			
		||||
	</ul>
 | 
			
		||||
	Changes:
 | 
			
		||||
	<ul>
 | 
			
		||||
		- glXCopyContext's mask parameter is now unsigned long, per GLX spec
 | 
			
		||||
	</ul>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>Please report any problems with this release ASAP. Bugs should be filed on the
 | 
			
		||||
Mesa3D website at sourceforge.<br>
 | 
			
		||||
After 3.2 is wrapped up I hope to release 3.3 beta 1 soon afterward.</p>
 | 
			
		||||
<p>-- Brian</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>December 17, 1999</h2>
 | 
			
		||||
<p>A Slashdot interview with Brian about Mesa (questions submitted by Slashdot readers)
 | 
			
		||||
can be found at <a href="http://slashdot.org/interviews/99/12/17/0927212.shtml" target="_parent">http://slashdot.org/interviews/99/12/17/0927212.shtml</a>.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>December 14, 1999</h2>
 | 
			
		||||
<p>Mesa 3.1 is released!</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>September 21, 1999</h2>
 | 
			
		||||
<p>There appear to be two new files on the ftp site, <a href="ftp://ftp.mesa3d.org/mesa/beta/MesaLib-3.1beta3.tar.gz">MesaLib-3.1beta3.tar.gz</a>
 | 
			
		||||
and <a href="ftp://ftp.mesa3d.org/mesa/beta/MesaDemos-3.1beta3.tar.gz">MesaDemos-3.1beta3.tar.gz</a>,
 | 
			
		||||
that seem to be... yes, I've just received confirmation from the beta center, they
 | 
			
		||||
are indeed the <b>THIRD</b> beta release of Mesa 3.1! Happy Days. Happy Days. Thanks
 | 
			
		||||
Keith Whitwell for preparing these for us during Brian's absence.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>August 30, 1999</h2>
 | 
			
		||||
<p>I'm pleased to announce that I've accepted a position with Precision Insight,
 | 
			
		||||
Inc. effective October, 1999. I'll be leaving Avid Technology in September.</p>
 | 
			
		||||
<p>I've been working on Mesa in my spare time for over five years. With Precision
 | 
			
		||||
Insight I now have the opportunity to devote my full attention to advancing Mesa
 | 
			
		||||
and OpenGL on Linux.</p>
 | 
			
		||||
<p>While I'll be focused on Linux, the X Window System, and hardware acceleration,
 | 
			
		||||
my work will continue to be open sourced and available to any other programmers who
 | 
			
		||||
may want to contribute to it, or use it for other projects or platforms</p>
 | 
			
		||||
<p>PS: I'm going to be traveling until Sep 6 and won't be reading email until then.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>August 23, 1999</h2>
 | 
			
		||||
<p>Anonymous CVS access is back online so suck up all the bandwidth you can afford.
 | 
			
		||||
Note that this is a new archive, so you will need to re-checkout the archive. That
 | 
			
		||||
means don't <i>cvs update</i> from a previous download.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>August 17, 1999</h2>
 | 
			
		||||
<p>A report from the SIGGRAPH '99 Linux/OpenGL
 | 
			
		||||
BOF meeting is now available.</p>
 | 
			
		||||
<p>-Brian</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>August 14, 1999</h2>
 | 
			
		||||
<p>www.mesa3d.org is having technical problems due to hardware failures at VA Linux
 | 
			
		||||
systems. The Mac pages, ftp, and CVS services aren't fully restored yet. Please be
 | 
			
		||||
patient.</p>
 | 
			
		||||
<p>-Brian</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>June 7, 1999</h2>
 | 
			
		||||
<p>RPMS of the nVidia RIVA server can be found at <a href="ftp://ftp.mesa3d.org/mesa/misc/nVidia/">ftp://ftp.mesa3d.org/mesa/misc/nVidia/</a>.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>June 2, 1999</h2>
 | 
			
		||||
<p><a href="http://www.nvidia.com/">nVidia</a> has released some Linux binaries for
 | 
			
		||||
xfree86 3.3.3.1, along with the <b>full source</b>, which includes GLX acceleration
 | 
			
		||||
based on Mesa 3.0. They can be downloaded from <a href="http://www.nvidia.com/Products.nsf/htmlmedia/software_drivers.html">http://www.nvidia.com/Products.nsf/htmlmedia/software_drivers.html</a>.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>May 24, 1999</h2>
 | 
			
		||||
<p>Beta 2 of Mesa 3.1 has been make available at <a href="ftp://ftp.mesa3d.org/mesa/beta/">ftp://ftp.mesa3d.org/mesa/beta/</a>.
 | 
			
		||||
If you are into the quake scene, you may want to try this out, as it contains some
 | 
			
		||||
optimizations specifically in the Q3A rendering path.
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>May 13, 1999</h2>
 | 
			
		||||
<p>For those interested in the integration of Mesa into XFree86 4.0, Precision Insight
 | 
			
		||||
has posted their lowlevel design documents at http://www.precisioninsight.com.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>May 13, 1999</h2>
 | 
			
		||||
<pre>May 1999 - John Carmack of id Software, Inc. has made a donation of
 | 
			
		||||
US$10,000 to the Mesa project to support its continuing development.
 | 
			
		||||
Mesa is a free implementation of the OpenGL 3D graphics library and id's
 | 
			
		||||
newest game, Quake 3 Arena, will use Mesa as the 3D renderer on Linux.
 | 
			
		||||
 | 
			
		||||
The donation will go to Keith Whitwell, who has been optimizing Mesa to
 | 
			
		||||
improve performance on 3d hardware.  Thanks to Keith's work, many
 | 
			
		||||
applications using Mesa 3.1 will see a dramatic performance increase
 | 
			
		||||
over Mesa 3.0.  The donation will allow Keith to continue working on
 | 
			
		||||
Mesa full time for some time to come.
 | 
			
		||||
 | 
			
		||||
For more information about Mesa see www.mesa3d.org.  For more
 | 
			
		||||
information about id Software, Inc. see www.idsoftware.com.
 | 
			
		||||
 | 
			
		||||
--------------------------------
 | 
			
		||||
 | 
			
		||||
This donation from John/id is very generous.  Keith and I are very
 | 
			
		||||
grateful.
 | 
			
		||||
 | 
			
		||||
</pre>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>May 1, 1999</h2>
 | 
			
		||||
<p>John Carmack made an interesting .plan update yesterday:
 | 
			
		||||
 | 
			
		||||
</p><ul>
 | 
			
		||||
	<i>"I put together a document on optimizing OpenGL drivers for Q3 that
 | 
			
		||||
	should be helpful to the various Linux 3D teams. <br>
 | 
			
		||||
	</i>http://www.quake3arena.com/news/glopt.html</i>"
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>April 7, 1999</h2>
 | 
			
		||||
<p>Updated the Mesa contributors section and added links to RPM Mesa packages.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>March 18, 1999</h2>
 | 
			
		||||
<p>The new webpages are now online. Enjoy, and let me know if you find any errors.
 | 
			
		||||
For an eye-candy free version you can use <a href="http://www.mesa3d.org/txt/">http://www.mesa3d.org/txt/</a>.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>February 16, 1999</h2>
 | 
			
		||||
<p><a href="http://www.sgi.com/">SGI</a> releases its <a href="http://www.sgi.com/software/opensource/glx/">GLX
 | 
			
		||||
source code</a>.</p>
 | 
			
		||||
<p>
 | 
			
		||||
</p><h2>January 22, 1999</h2>
 | 
			
		||||
<p>www.mesa3d.org established</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
$Id: news.html,v 3.7 2003/09/05 13:39:39 brianp Exp $
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										78
									
								
								docs/osmesa.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								docs/osmesa.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Off-screen Rendering</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Off-screen Rendering</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 1.2.4 introduced off-screen rendering, a facility for generating
 | 
			
		||||
3-D imagery without having to open a window on your display.  Mesa's
 | 
			
		||||
simple off-screen rendering interface is completely operating system
 | 
			
		||||
and window system independent so programs which use off-screen
 | 
			
		||||
rendering should be very portable.  This feature effectively
 | 
			
		||||
enables you to use Mesa as an off-line, batch-oriented renderer.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The "OSMesa" API provides 3 functions for making off-screen
 | 
			
		||||
renderings: OSMesaCreateContext(), OSMesaMakeCurrent(), and
 | 
			
		||||
OSMesaDestroyContext().  See the Mesa/include/GL/osmesa.h header for
 | 
			
		||||
more information.  See the demos/osdemo.c file for an example program.
 | 
			
		||||
There is no facility for writing images to files.  That's up to you.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
If you want to generate large images (larger than 1280x1024) you'll
 | 
			
		||||
have to edit the src/config.h file to change MAX_WIDTH and MAX_HEIGHT
 | 
			
		||||
then recompile Mesa.  Image size should only be limited by available
 | 
			
		||||
memory.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<H2>Deep color channels</H2>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
   For some applications 8-bit color channels don't have sufficient
 | 
			
		||||
   accuracy (film and IBR, for example).  If you're in this situation
 | 
			
		||||
   you'll be happy to know that Mesa supports 16-bit and 32-bit color
 | 
			
		||||
   channels through the OSMesa interface.  When using 16-bit channels,
 | 
			
		||||
   channels are GLushorts and RGBA pixels occupy 8 bytes.  When using 32-bit
 | 
			
		||||
   channels, channels are GLfloats and RGBA pixels occupy 16 bytes.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
   To build Mesa/OSMesa with 16-bit color channels:
 | 
			
		||||
<pre>
 | 
			
		||||
      cd Mesa-5.x/src
 | 
			
		||||
      make -f Makefile.X11 clean
 | 
			
		||||
      make -f Makefile.OSMesa16 linux-osmesa16
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
   For 32-bit channels:
 | 
			
		||||
<pre>
 | 
			
		||||
      cd Mesa-5.x/src
 | 
			
		||||
      make -f Makefile.X11 clean
 | 
			
		||||
      make -f Makefile.OSMesa16 linux-osmesa32
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
You'll wind up with a library named libOSMesa16.so or libOSMesa32.so.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you're not using Linux, you can easily edit Make-config and add
 | 
			
		||||
an appropriate configuration.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
The Mesa/tests/osdemo16.c file (available via CVS) demonstrates how
 | 
			
		||||
to use this feature.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
BE WARNED: 16 and 32-bit channel support has not been exhaustively
 | 
			
		||||
tested and there may be some bugs.  However, a number of people have
 | 
			
		||||
been using this feature successfully so it can't be too broken.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										51
									
								
								docs/pbuffers.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								docs/pbuffers.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>PBuffer Rendering</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>PBuffer Rendering</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Basically, FBconfigs and PBuffers allow you to do off-screen rendering
 | 
			
		||||
with OpenGL.  The OSMesa interface does basically the same thing, but
 | 
			
		||||
fbconfigs and pbuffers are supported by more vendors.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
PBuffers are getting more use nowadays, though they've actually been
 | 
			
		||||
around for a long time on IRIX systems and other workstations.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The
 | 
			
		||||
<a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt"
 | 
			
		||||
target="_parent">GL_SGIX_fbconfig</a>
 | 
			
		||||
and
 | 
			
		||||
<a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt"
 | 
			
		||||
target="_parent">
 | 
			
		||||
GL_SGIX_pbuffer</a> extensions describe the functionality.
 | 
			
		||||
More recently, these extensions have been promoted to ARB extensions (on
 | 
			
		||||
Windows at least).
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The Mesa/progs/xdemos/ directory has some useful code for working
 | 
			
		||||
with pbuffers:
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li><b>pbinfo.c</b> - like glxinfo, it prints a list of available
 | 
			
		||||
    fbconfigs and whether each supports pbuffers.
 | 
			
		||||
<li><b>pbutil.c</b> - a few utility functions for dealing with
 | 
			
		||||
    fbconfigs and pbuffers.
 | 
			
		||||
<li><b>pbdemo.c</b> - a demonstration of off-screen rendering with pbuffers.
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa 4.1 and later support GL_SGIX_fbconfig and GL_SGIX_pbuffer (software
 | 
			
		||||
rendering only).
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										66
									
								
								docs/perf.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								docs/perf.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,66 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Performance Tips</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Performance Tips</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Performance tips for software rendering:
 | 
			
		||||
</P>
 | 
			
		||||
<ol>
 | 
			
		||||
 | 
			
		||||
<li> Turn off smooth shading when you don't need it (glShadeModel)
 | 
			
		||||
<li> Turn off depth buffering when you don't need it.
 | 
			
		||||
<li> Turn off dithering when not needed.
 | 
			
		||||
<li> Use double buffering as it's often faster than single buffering
 | 
			
		||||
<li> Compile in the X Shared Memory extension option if it's supported
 | 
			
		||||
      on your system by adding -DSHM to CFLAGS and -lXext to XLIBS for
 | 
			
		||||
      your system in the Make-config file.
 | 
			
		||||
<li> Recompile Mesa with more optimization if possible.
 | 
			
		||||
<li> Try to maximize the amount of drawing done between glBegin/glEnd pairs.
 | 
			
		||||
<li> Use the MESA_BACK_BUFFER variable to find best performance in double
 | 
			
		||||
      buffered mode.  (X users only)
 | 
			
		||||
<li> Optimized polygon rasterizers are employed when:
 | 
			
		||||
         rendering into back buffer which is an XImage
 | 
			
		||||
         RGB mode, not grayscale, not monochrome
 | 
			
		||||
         depth buffering is GL_LESS, or disabled
 | 
			
		||||
         flat or smooth shading
 | 
			
		||||
         dithered or non-dithered
 | 
			
		||||
         no other rasterization operations enabled (blending, stencil, etc)
 | 
			
		||||
<li> Optimized line drawing is employed when:
 | 
			
		||||
         rendering into back buffer which is an XImage
 | 
			
		||||
         RGB mode, not grayscale, not monochrome
 | 
			
		||||
         depth buffering is GL_LESS or disabled
 | 
			
		||||
         flat shading
 | 
			
		||||
         dithered or non-dithered
 | 
			
		||||
         no other rasterization operations enabled (blending, stencil, etc)
 | 
			
		||||
<li> Textured polygons are fastest when:
 | 
			
		||||
         using a 3-component (RGB), 2-D texture
 | 
			
		||||
         minification and magnification filters are GL_NEAREST
 | 
			
		||||
         texture coordinate wrap modes for S and T are GL_REPEAT
 | 
			
		||||
         GL_DECAL environment mode
 | 
			
		||||
         glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST )
 | 
			
		||||
         depth buffering is GL_LESS or disabled
 | 
			
		||||
<li> Lighting is fastest when:
 | 
			
		||||
         Two-sided lighting is disabled
 | 
			
		||||
         GL_LIGHT_MODEL_LOCAL_VIEWER is false
 | 
			
		||||
         GL_COLOR_MATERIAL is disabled
 | 
			
		||||
         No spot lights are used (all GL_SPOT_CUTOFFs are 180.0)
 | 
			
		||||
         No local lights are used (all position W's are 0.0)
 | 
			
		||||
         All material and light coefficients are >= zero
 | 
			
		||||
<li> XFree86 users:  if you want to use 24-bit color try starting your
 | 
			
		||||
      X server in 32-bit per pixel mode for better performance.  That is,
 | 
			
		||||
      start your X server with
 | 
			
		||||
         startx -- -bpp 32
 | 
			
		||||
      instead of
 | 
			
		||||
         startx -- -bpp 24
 | 
			
		||||
<li> Try disabling dithering with the MESA_NO_DITHER environment variable.
 | 
			
		||||
      If this env var is defined Mesa will disable dithering and the
 | 
			
		||||
      command glEnable(GL_DITHER) will be ignored.
 | 
			
		||||
</ol>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										34
									
								
								docs/relnotes.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								docs/relnotes.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Release Notes</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Release Notes</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The release notes summarize what's new or changed in each Mesa release.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<UL>
 | 
			
		||||
<LI><A HREF="RELNOTES-5.0.2">RELNOTES-5.0.2</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-5.0.1">RELNOTES-5.0.1</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-5.0">RELNOTES-5.0</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-4.1">RELNOTES-4.1</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-4.0.3">RELNOTES-4.0.3</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-4.0.2">RELNOTES-4.0.2</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-4.0.1">RELNOTES-4.0.1</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-4.0">RELNOTES-4.0</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.5">RELNOTES-3.5</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.4.2">RELNOTES-3.4.2</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.4.1">RELNOTES-3.4.1</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.4">RELNOTES-3.4</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.3">RELNOTES-3.3</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.2.1">RELNOTES-3.2.1</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.2">RELNOTES-3.2</A>
 | 
			
		||||
<LI><A HREF="RELNOTES-3.1">RELNOTES-3.1</A>
 | 
			
		||||
</UL>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										64
									
								
								docs/science.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								docs/science.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Science and Technical</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Science and Technical</H1>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li><a href="http://www.softintegration.com/products/toolkit/opengl/" target="_parent">Ch</a> - OpenGL bindings for the Ch C/C++ interpreter
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">CLEO3D</a> - event displayer for the CLEOIII detector
 | 
			
		||||
	</li><li><a href="http://www.bioz.unibas.ch/%7Exray/dino/" target="_parent">DINO</a> - Visualizing
 | 
			
		||||
	Structural Biology
 | 
			
		||||
	</li><li><a href="http://www-xdiv.lanl.gov/XCM/gmv/GMVHome.html" target="_parent">General
 | 
			
		||||
	Mesh Viewer (GMV)</a> - scientific vis.
 | 
			
		||||
	</li><li><a href="http://gid.cimne.upc.es/" target="_parent">GiD</a> - finite element
 | 
			
		||||
	analysis
 | 
			
		||||
	</li><li><a href="http://sig.co.za/download.htm" target="_parent">glpoisson</a> - A finite
 | 
			
		||||
	element analysis program that simulates wave in an arbitrary region.
 | 
			
		||||
	</li><li><a href="http://glwaves.sourceforge.net/" target="_parent">GLWaves</a> -
 | 
			
		||||
	Electromagnetic wave visualization
 | 
			
		||||
	</li><li><a href="http://www.geuz.org/gmsh/" target="_parent">Gmsh</a> -
 | 
			
		||||
	finite element mesh generator / viewer
 | 
			
		||||
	</li><li><a href="http://laaksonen.csc.fi/gopenmol/gopenmol.htmls" target="_parent">gOpenMol</a>
 | 
			
		||||
	- computational chemistry
 | 
			
		||||
	</li><li><a href="http://www.mgix.com/gps3d/" target="_parent">GPS 3D</a> - GPS-based map visualization
 | 
			
		||||
	</li><li><a href="http://hirame.hiram.edu/%7Eworleyam/" target="_parent">Hitchhiker</a>
 | 
			
		||||
	- virtual solar system
 | 
			
		||||
	</li><li><a href="http://www-xdiv.lanl.gov/XCM/Hydra/" target="_parent">Hydra</a> - physics
 | 
			
		||||
	and engineering pkg
 | 
			
		||||
	</li><li><a href="http://fox.mit.edu/skunk/soft/lightspeed/" target="_parent">Light Speed</a>
 | 
			
		||||
	- a real-time, interactive relativistic simulator
 | 
			
		||||
	</li><li><a href="http://linkwinds.jpl.nasa.gov/" target="_parent">LinkWinds</a> - scientific
 | 
			
		||||
	vis
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html" target="_parent">MathGL3d</a> - Mathematica viewer
 | 
			
		||||
	</li><li><a href="http://www.mathworks.com/products/matlab" target="_parent">Mathworks</a>
 | 
			
		||||
	- mathematics and visualization
 | 
			
		||||
	  </li><li><a href="http://www-rocq.inria.fr/gamma/medit/medit.html" target="_parent">Medit</a> - 3D surface mesh viewer
 | 
			
		||||
	</li><li><a href="http://www.mol.biol.ethz.ch/wuthrich/software/molmol/" target="_parent">MOLMOL</a>
 | 
			
		||||
	- molecular modeling and analysis
 | 
			
		||||
	</li><li><a href="http://www.avatar.se/molscript/" target="_parent">Molscript</a> - molecular
 | 
			
		||||
	modeling
 | 
			
		||||
	</li><li><a href="http://www.opendx.org/" target="_parent">OpenDX</a> - Data visualization
 | 
			
		||||
	system
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">PHLEX</a> - Finite element vis
 | 
			
		||||
	</li><li><a href="http://root.cern.ch/" target="_parent">ROOT</a> - Object Oriented Data
 | 
			
		||||
	Analysis Framework
 | 
			
		||||
	</li><li><a href="http://www.slffea.com/" target="_parent">SLFFEA</a> - GNU finite element
 | 
			
		||||
	package
 | 
			
		||||
	</li><li><a href="http://quorum.tamu.edu/jon/spock" target="_parent">Spock</a> - molecular
 | 
			
		||||
	modeling
 | 
			
		||||
	</li><li><a href="http://www1.las.es/%7Eamil/ssystem" target="_parent">Ssystem</a> - solar
 | 
			
		||||
	system simulation
 | 
			
		||||
	</li><li><a href="http://mesa3d.sourceforge.net/notfound.html">SPARROW</a> - robot simulation
 | 
			
		||||
	</li><li><a href="http://www.ssec.wisc.edu/%7Ebillh/vis5d.html" target="_parent">Vis5D</a>
 | 
			
		||||
	- atmospheric visualization
 | 
			
		||||
	</li><li><a href="http://www.ks.uiuc.edu/Research/vmd/" target="_parent">VMD</a> - molecular
 | 
			
		||||
	modeling
 | 
			
		||||
	</li><li><a href="http://www.cyberbotics.com/" target="_parent">Webots</a> - 3-D mobile
 | 
			
		||||
	robot simulator
 | 
			
		||||
</li></ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										24
									
								
								docs/sourcedocs.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								docs/sourcedocs.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Source Code Documentation</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Source Code Documentation</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<A HREF="http://www.doxygen.org" target="_parent">Doxygen</A>
 | 
			
		||||
is used to automatically
 | 
			
		||||
produce cross-referenced documentation from the Mesa sources.
 | 
			
		||||
This is not included in the normal Mesa distribution.
 | 
			
		||||
Download Mesa from CVS if interested.
 | 
			
		||||
</P>
 | 
			
		||||
 | 
			
		||||
<P>
 | 
			
		||||
If you're reading this page from your local copy of Mesa, and have
 | 
			
		||||
run the doxygen scripts, you can read the documentation
 | 
			
		||||
<A HREF="../doxy/core/index.html">here</A>
 | 
			
		||||
</P>
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										3579
									
								
								docs/subset-A.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3579
									
								
								docs/subset-A.html
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										31
									
								
								docs/subset.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								docs/subset.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Subset</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Mesa Subset</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
In 2002/2003 Tungsten Graphics was contracted to develop a subset Mesa/Radeon
 | 
			
		||||
driver for an embedded environment.  The result is a reduced-size DRI driver
 | 
			
		||||
for the ATI R200 chip, for use with Linux fbdev rather than XFree86.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The specification for this subset can be found
 | 
			
		||||
<a href="subset-A.html">here</a>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The <a href="MiniGLX.html">MiniGLX specification</a> describes the
 | 
			
		||||
interface between fbdev and Mesa.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
More info to come...
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										109
									
								
								docs/systems.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								docs/systems.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,109 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Supported Systems and Drivers</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Supported Systems and Drivers</H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mesa was originally designed for Unix/X11 systems and is still best
 | 
			
		||||
supported on those systems. All you need is an ANSI C compiler and the
 | 
			
		||||
X development environment to use Mesa.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>Others have contributed drivers
 | 
			
		||||
for the Amiga, Apple Macintosh, BeOS, NeXT, OS/2, MS-DOS, VMS, Windows
 | 
			
		||||
9x/NT, and Direct3D.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The following files describe the details for various platforms.
 | 
			
		||||
Be warned, some of these files (and drivers) may be very out of date.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<UL>
 | 
			
		||||
<LI><A HREF="README.X11">README.X11</A> - X Window System / Unix / Linux
 | 
			
		||||
<LI><A HREF="README.WIN32">README.WIN32</A> - Microsoft Windows
 | 
			
		||||
<LI><A HREF="README.VMS">README.VMS</A> - DEC VMS
 | 
			
		||||
<LI><A HREF="README.GGI">README.GGI</A> - GGI
 | 
			
		||||
<LI><A HREF="README.3DFX">README.3DFX</A> - 3Dfx/Glide driver
 | 
			
		||||
<LI><A HREF="README.AMIWIN">README.AMIWIN</A> - Amiga Amiwin
 | 
			
		||||
<LI><A HREF="README.BEOS">README.BEOS</A> - BeOS
 | 
			
		||||
<LI><A HREF="README.D3D">README.D3D</A> - Direct3D driver
 | 
			
		||||
<LI><A HREF="README.DJ">README.DJ</A> - DJGPP
 | 
			
		||||
<LI><A HREF="README.LYNXOS">README.LYNXOS</A> - LynxOS
 | 
			
		||||
<LI><A HREF="README.MINGW32">README.MINGW32</A> - Mingw32
 | 
			
		||||
<LI><A HREF="README.NeXT">README.NeXT</A> - NeXT
 | 
			
		||||
<LI><A HREF="README.OpenStep">README.OpenStep</A> - OpenStep
 | 
			
		||||
<LI><A HREF="README.OS2">README.OS2</A> - OS/2
 | 
			
		||||
<LI><A HREF="README.WINDML">README.WINDML</A> - WindML
 | 
			
		||||
</UL>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
The standard Mesa distribution only supports software-based rendering, with
 | 
			
		||||
the exception of the 3Dfx Glide driver.
 | 
			
		||||
Information about other hardware support follows.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li>DRI-based hardware support for 3dfx, Intel, Matrox, ATI with XFree86
 | 
			
		||||
<blockquote>
 | 
			
		||||
	<p>The <a href="http://dri.sourceforge.net/" target="_parent">DRI architecture</a>,
 | 
			
		||||
	originally developed by Precision Insight, Inc. uses Mesa and
 | 
			
		||||
        provides hardware acceleration for a number of popular chipsets.<br>
 | 
			
		||||
	<br>
 | 
			
		||||
	The DRI is part of XFree86 4.0 and later.
 | 
			
		||||
        <br><br>
 | 
			
		||||
        If you download and install XFree86 4.x you do not need to
 | 
			
		||||
        install Mesa separately.  All the important parts of Mesa
 | 
			
		||||
        will be installed with the rest of XFree86.
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<li>3dfx Voodoo1, Voodoo2, Voodoo Rush, Voodoo Banshee, Voodoo3
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>All cards based on these chipsets should work with Linux and
 | 
			
		||||
Windows 95 via 3dfx's Glide library.
 | 
			
		||||
The Mesa/Glide driver is included with the Mesa distribution.
 | 
			
		||||
You'll need to install the Glide header files and runtime library.
 | 
			
		||||
</p>
 | 
			
		||||
<p>
 | 
			
		||||
David Bucciarelli wrote the original 3dfx driver for Mesa.<br>
 | 
			
		||||
Daryll Strauss ported Glide to Linux.
 | 
			
		||||
</p>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<li>Matrox G200/G400, nVidia RIVA, ATI Rage Pro, Intel i810 on Linux
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>The <a href="http://utah-glx.sourceforge.net/" target="_parent">
 | 
			
		||||
Utah GLX project</a>
 | 
			
		||||
(no longer active) developed drivers for these chipsets and others.
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<li>Amiga Warp3D
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>Amiga systems can support 3D hardware with the Warp3D API.
 | 
			
		||||
See <a href="http://www.haage-partner.com/3dworld" target="_parent">here</a>.
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
<li>Also see
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p><a href="http://www.linux3d.org/" target="_parent">www.linux3d.org</a> for
 | 
			
		||||
other 3D hardware info for Linux.
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
<b><em>Note:</em></b>
 | 
			
		||||
If you have NVIDIA hardware in your computer,
 | 
			
		||||
you should download and install NVIDIA's OpenGL library.  You may
 | 
			
		||||
however, want to download Mesa in order to use its GLU and GLUT
 | 
			
		||||
libraries, or assorted demo programs.</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										124
									
								
								docs/thanks.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								docs/thanks.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,124 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<HEAD>
 | 
			
		||||
<TITLE>Acknowledgements</TITLE>
 | 
			
		||||
</HEAD>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Acknowledgments</H1>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
The following individuals and groups are to be acknowledged for their
 | 
			
		||||
contributions to Mesa over the years.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li>Early Mesa development was done while Brian was part of the
 | 
			
		||||
<A HREF="http://www.ssec.wisc.edu/~billh/vis.html"
 | 
			
		||||
target="_parent">SSEC Visualization Project</A> at the University of
 | 
			
		||||
Wisconsin. He'd like to thank Bill Hibbard for letting him work on
 | 
			
		||||
Mesa as part of that project.
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
<li>John Carmack of id Software, Inc. funded Keith Whitwell in 1999 in
 | 
			
		||||
order to optimize Mesa's vertex transformation module. This is a very
 | 
			
		||||
substantial piece of work.
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
<li>Precision Insight, Inc., VA Linux Systems, Inc., and most recently,
 | 
			
		||||
Tungsten Graphics, Inc. have supported the ongoing development of Mesa.
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
<li>The <A HREF="http://sourceforge.net/projects/mesa3d"
 | 
			
		||||
target="_parent">Mesa</A>
 | 
			
		||||
project is hosted by<A HREF="http://sourceforge.net"
 | 
			
		||||
target="_parent"><IMG SRC="http://sourceforge.net/sflogo.php?group_id=3&type=1"
 | 
			
		||||
WIDTH="88" HEIGHT="31" ALIGN="BOTTOM" ALT="Sourceforge.net" BORDER="0"></A>
 | 
			
		||||
<br>
 | 
			
		||||
<br>
 | 
			
		||||
 | 
			
		||||
<li><a href="http://www.altsoftware.com/"
 | 
			
		||||
target="_parent">alt.software</a> contributed the Direct3D driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Bernd Barsuhn</b> wrote the evaluator code for (splines,
 | 
			
		||||
patches) in Mesa.
 | 
			
		||||
 | 
			
		||||
<li><b>Bernhard Tschirren</b> wrote the Allegro DJGPP driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Bogdan Sikorski</b> wrote the GLU NURBS and polygon tessellator
 | 
			
		||||
in Mesa.
 | 
			
		||||
 | 
			
		||||
<li><b>Charlie Wallace</b> wrote the MS-DOS driver.
 | 
			
		||||
 | 
			
		||||
<li><b>CJ Beyer</b> was the www.mesa3d.org webmaster.
 | 
			
		||||
 | 
			
		||||
<li><b>Darren Abbott</b> provided the OS/2 driver.
 | 
			
		||||
 | 
			
		||||
<li><b>David Bucciarelli</b> wrote and maintained the 3Dfx Glide
 | 
			
		||||
driver. Thousands of Linux/Quake players thank David!
 | 
			
		||||
 | 
			
		||||
<li><b>Gareth Hughes</b> wrote new GLU 1.2 Polygon Tessellation code
 | 
			
		||||
(now superceded by SGI SI GLU).
 | 
			
		||||
 | 
			
		||||
<li><b>Holger Waechtler</b> contributed AMD 3DNow! assembly code which
 | 
			
		||||
accelerates vertex transformation in Mesa 3.1. Holger also implemented
 | 
			
		||||
the GL_EXT_texture_env_combine extension.
 | 
			
		||||
 | 
			
		||||
<li><b>Jeroen van der Zijp</b> and <b>Thorsten Ohl</b> contributed the
 | 
			
		||||
Xt/Motif widget code.
 | 
			
		||||
 | 
			
		||||
<li><b>John Stone</b> provided the multi-threading support in Mesa 3.0.
 | 
			
		||||
 | 
			
		||||
<li><b>John Watson</b> assisted with web page design.
 | 
			
		||||
 | 
			
		||||
<li><b>Josh Vanderhoof</b> contributed Intel x86 assembly code which
 | 
			
		||||
accelerates vertex transformation in Mesa 3.x.
 | 
			
		||||
 | 
			
		||||
<li><b>Jouk Jansen</b> contributed and continues to maintain the VMS
 | 
			
		||||
support.
 | 
			
		||||
 | 
			
		||||
<li><b>Karl Schultz</b> has been maintaining the Windows driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Keith Whitwell</b> has made extension contributions to Mesa
 | 
			
		||||
since 1999.
 | 
			
		||||
 | 
			
		||||
<li><b>Kendall Bennett</b> wrote the SciTech MGL driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Klaus Niederkrueger</b> contributed many improvements to Mesa's
 | 
			
		||||
software rasterizer.
 | 
			
		||||
 | 
			
		||||
<li><b>Mark Kilgard</b> contributed antialiased line improvements and
 | 
			
		||||
several extensions.
 | 
			
		||||
 | 
			
		||||
<li><b>Michael Pichler</b> contributed <em>many</em> bug fixes
 | 
			
		||||
 | 
			
		||||
<li><b>Miklos Fazekas</b> wrote and maintains the Macintosh driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Pascal Thibaudeau</b> wrote the NeXT driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Pedro Vazquez</b> setup and maintains the Mesa Mailing list.
 | 
			
		||||
 | 
			
		||||
<li><b>Randy Frank</b> contributed <em>many</em> bug fixes.
 | 
			
		||||
 | 
			
		||||
<li><b>Stefan Zivkovic</b> wrote the Amiga driver.
 | 
			
		||||
 | 
			
		||||
<li><b>Stephane Rehel</b> provided the Cygnus Win32 support
 | 
			
		||||
 | 
			
		||||
<li><b>Ted Jump</b> maintained the
 | 
			
		||||
makefiles and project files for Windows 95/98/NT compilation for some time.
 | 
			
		||||
 | 
			
		||||
<li><b>Uwe Maurer</b> wrote the LibGGI driver for Mesa-3.0.
 | 
			
		||||
 | 
			
		||||
<li><b>Victor Ng-Thow-Hing</b> wrote the Amiwin driver for the Amiga.
 | 
			
		||||
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Apologies to anyone who's been omitted.
 | 
			
		||||
Please send corrections and additions to Brian.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</BODY>
 | 
			
		||||
</HTML>
 | 
			
		||||
							
								
								
									
										24
									
								
								docs/utilities.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								docs/utilities.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Development Utilities</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Development Utilities</H1>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
 | 
			
		||||
<li>The Mesa distribution includes several utility routines in the
 | 
			
		||||
progs/util/ directory
 | 
			
		||||
 | 
			
		||||
<li>Allen Akin's <a href="http://glean.sourceforge.net/"
 | 
			
		||||
target="_parent">glean</a> is a framework for OpenGL testing.
 | 
			
		||||
 | 
			
		||||
<li><a href="http://developer.kde.org/~sewardj/"
 | 
			
		||||
target="_parent">Valgrind</a> is a very useful tool for tracking down
 | 
			
		||||
memory-related problems in your code.
 | 
			
		||||
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										42
									
								
								docs/utility.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								docs/utility.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Utilities</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
 | 
			
		||||
 | 
			
		||||
<H1>Utilities</H1>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
<li><a href="http://fox.mit.edu/skunk/soft/fsv/"
 | 
			
		||||
	target="_parent">fvs</a> - 3D file system visualizer
 | 
			
		||||
 | 
			
		||||
<li><a href="http://www.dgp.utoronto.ca/%7Emac/projects/glbiff.html"
 | 
			
		||||
	target="_parent">glbiff</a> - GL version of xbiff
 | 
			
		||||
 | 
			
		||||
<li><a href="http://glload.netpedia.net/" target="_parent">glload</a>
 | 
			
		||||
	- CPU load meter
 | 
			
		||||
 | 
			
		||||
<li><a href="http://www.scitechsoft.com/gldirect.html"
 | 
			
		||||
	target="_parent">SciTech GLDirect</a> - Driver to run OpenGL
 | 
			
		||||
	apps using Direct3D under Windows
 | 
			
		||||
 | 
			
		||||
<li><a href="http://threedsia.sourceforge.net/"
 | 
			
		||||
	target="_parent">3Dsia</a> - 3D user interface
 | 
			
		||||
 | 
			
		||||
<li><a href="http://mesa3d.sourceforge.net/notfound.html">VRML Site
 | 
			
		||||
Map</a> - 3D GUI
 | 
			
		||||
 | 
			
		||||
<li><a href="http://www.vros.com/" target="_parent">VR/OS</a> - VR
 | 
			
		||||
user interface
 | 
			
		||||
 | 
			
		||||
<li><a href="http://wauug.erols.com/%7Ebagleyd/"
 | 
			
		||||
target="_parent">xlockmore</a> - an X screen saver
 | 
			
		||||
 | 
			
		||||
<li><a href="http://www.jwz.org/xscreensaver"
 | 
			
		||||
target="_parent">xscreensaver</a> - X screen saver
 | 
			
		||||
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										22
									
								
								docs/webmaster.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								docs/webmaster.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
<HTML>
 | 
			
		||||
 | 
			
		||||
<TITLE>Mesa Introduction</TITLE>
 | 
			
		||||
 | 
			
		||||
<BODY text="#000000" bgcolor="#55bbff">
 | 
			
		||||
 | 
			
		||||
<H1>Webmaster</font></H1>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
If you have problems, edits or additions for this website send them
 | 
			
		||||
to Brian
 | 
			
		||||
(<em>b</em><em>r</em><em>i</em><em>a</em><em>n</em><em>_</em><em>e</em><em>_</em><em>p</em><em>a</em><em>u</em><em>l</em><em>@</em><em>y</em><em>a</em><em>h</em><em>o</em><em>o</em><em>.</em><em>c</em><em>o</em><em>m</em>)</a>.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<p>
 | 
			
		||||
Mark Manning made the frame-based layout for the website.
 | 
			
		||||
Brian's modified it a lot since then.
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										15
									
								
								doxygen/.cvsignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								doxygen/.cvsignore
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
*.tag
 | 
			
		||||
agpgart
 | 
			
		||||
array_cache
 | 
			
		||||
core
 | 
			
		||||
core_subset
 | 
			
		||||
math
 | 
			
		||||
math_subset
 | 
			
		||||
miniglx
 | 
			
		||||
radeon_subset
 | 
			
		||||
radeondrm
 | 
			
		||||
radeonfb
 | 
			
		||||
swrast
 | 
			
		||||
swrast_setup
 | 
			
		||||
tnl
 | 
			
		||||
tnl_dd
 | 
			
		||||
							
								
								
									
										30
									
								
								doxygen/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								doxygen/Makefile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,30 @@
 | 
			
		||||
default: full
 | 
			
		||||
 | 
			
		||||
all: full subset
 | 
			
		||||
	
 | 
			
		||||
%.tag: %.doxy
 | 
			
		||||
	doxygen $<
 | 
			
		||||
 | 
			
		||||
FULL = \
 | 
			
		||||
	core.doxy \
 | 
			
		||||
	math.doxy \
 | 
			
		||||
	array_cache.doxy \
 | 
			
		||||
	swrast.doxy \
 | 
			
		||||
	swrast_setup.doxy \
 | 
			
		||||
	tnl.doxy \
 | 
			
		||||
	tnl_dd.doxy
 | 
			
		||||
 | 
			
		||||
full: $(FULL:.doxy=.tag)
 | 
			
		||||
	$(foreach FILE,$(FULL),doxygen $(FILE);)
 | 
			
		||||
 | 
			
		||||
SUBSET = \
 | 
			
		||||
	core.doxy \
 | 
			
		||||
	math.doxy \
 | 
			
		||||
	miniglx.doxy
 | 
			
		||||
 | 
			
		||||
subset: $(SUBSET:.doxy=.tag)
 | 
			
		||||
	$(foreach FILE,$(SUBSET),doxygen $(FILE);)
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	rm -rf $(FULL:.doxy=) $(SUBSET:.doxy=)
 | 
			
		||||
	rm -rf *.tag
 | 
			
		||||
							
								
								
									
										10
									
								
								doxygen/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								doxygen/README
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
 | 
			
		||||
This directory is for doxygen (a source code documentation system).
 | 
			
		||||
 | 
			
		||||
See http://www.doxygen.org/ for more info.
 | 
			
		||||
 | 
			
		||||
Either run 'make' (Unix) or 'doxy.bat' (Windows) to run doxygen
 | 
			
		||||
and generate souce code documentation.
 | 
			
		||||
 | 
			
		||||
Then, load either doxy/core/index.html or doxy/core_subset/index.html into
 | 
			
		||||
your web browser.
 | 
			
		||||
							
								
								
									
										49
									
								
								doxygen/array_cache.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								doxygen/array_cache.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa array_cache"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/array_cache/
 | 
			
		||||
FILE_PATTERNS          = *.c \
 | 
			
		||||
                         *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = array_cache
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = core.tag=../core \
 | 
			
		||||
			 tnl.tag=../tnl \
 | 
			
		||||
			 swrast_setup.tag=../swrast_setup \
 | 
			
		||||
			 swrast.tag=../swrast \
 | 
			
		||||
			 math.tag=../math \
 | 
			
		||||
			 tnl_dd.tag=../tnl_dd
 | 
			
		||||
GENERATE_TAGFILE       = array_cache.tag
 | 
			
		||||
							
								
								
									
										1101
									
								
								doxygen/common.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1101
									
								
								doxygen/common.doxy
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										48
									
								
								doxygen/core.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								doxygen/core.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa Core"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/main/
 | 
			
		||||
FILE_PATTERNS          = *.c *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = ../src/glapitemp.h ../src/glapioffsets.h
 | 
			
		||||
EXCLUDE_PATTERNS       = subset_*
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = core
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = YES
 | 
			
		||||
EXPAND_ONLY_PREDEF     = YES
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = ../include/
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = _HAVE_FULL_GL=1
 | 
			
		||||
EXPAND_AS_DEFINED      = _glthread_DECLARE_STATIC_MUTEX
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES		= tnl_dd.tag=../tnl_dd \
 | 
			
		||||
			 array_cache.tag=../array_cache \
 | 
			
		||||
                         math.tag=../math \
 | 
			
		||||
                         swrast.tag=../swrast \
 | 
			
		||||
                         swrast_setup.tag=../swrast_setup \
 | 
			
		||||
                         tnl.tag=../tnl
 | 
			
		||||
GENERATE_TAGFILE       = core.tag
 | 
			
		||||
							
								
								
									
										226
									
								
								doxygen/core_subset.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										226
									
								
								doxygen/core_subset.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,226 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa Core"
 | 
			
		||||
PROJECT_NUMBER         = 
 | 
			
		||||
OUTPUT_DIRECTORY       = 
 | 
			
		||||
OUTPUT_LANGUAGE        = English
 | 
			
		||||
EXTRACT_ALL            = NO
 | 
			
		||||
EXTRACT_PRIVATE        = NO
 | 
			
		||||
EXTRACT_STATIC         = YES
 | 
			
		||||
EXTRACT_LOCAL_CLASSES  = YES
 | 
			
		||||
HIDE_UNDOC_MEMBERS     = NO
 | 
			
		||||
HIDE_UNDOC_CLASSES     = NO
 | 
			
		||||
BRIEF_MEMBER_DESC      = YES
 | 
			
		||||
REPEAT_BRIEF           = YES
 | 
			
		||||
ALWAYS_DETAILED_SEC    = NO
 | 
			
		||||
INLINE_INHERITED_MEMB  = NO
 | 
			
		||||
FULL_PATH_NAMES        = NO
 | 
			
		||||
STRIP_FROM_PATH        = 
 | 
			
		||||
INTERNAL_DOCS          = YES
 | 
			
		||||
STRIP_CODE_COMMENTS    = YES
 | 
			
		||||
CASE_SENSE_NAMES       = YES
 | 
			
		||||
SHORT_NAMES            = NO
 | 
			
		||||
HIDE_SCOPE_NAMES       = NO
 | 
			
		||||
VERBATIM_HEADERS       = YES
 | 
			
		||||
SHOW_INCLUDE_FILES     = YES
 | 
			
		||||
JAVADOC_AUTOBRIEF      = NO
 | 
			
		||||
INHERIT_DOCS           = YES
 | 
			
		||||
INLINE_INFO            = YES
 | 
			
		||||
SORT_MEMBER_DOCS       = NO
 | 
			
		||||
DISTRIBUTE_GROUP_DOC   = NO
 | 
			
		||||
TAB_SIZE               = 8
 | 
			
		||||
GENERATE_TODOLIST      = YES
 | 
			
		||||
GENERATE_TESTLIST      = YES
 | 
			
		||||
GENERATE_BUGLIST       = YES
 | 
			
		||||
ALIASES                = 
 | 
			
		||||
ENABLED_SECTIONS       = subset
 | 
			
		||||
MAX_INITIALIZER_LINES  = 30
 | 
			
		||||
OPTIMIZE_OUTPUT_FOR_C  = NO
 | 
			
		||||
SHOW_USED_FILES        = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to warning and progress messages
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
QUIET                  = YES
 | 
			
		||||
WARNINGS               = YES
 | 
			
		||||
WARN_IF_UNDOCUMENTED   = NO
 | 
			
		||||
WARN_FORMAT            = 
 | 
			
		||||
WARN_LOGFILE           = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/main/
 | 
			
		||||
FILE_PATTERNS          = \
 | 
			
		||||
			accum.h \
 | 
			
		||||
			attrib.h \
 | 
			
		||||
			blend.[ch] \
 | 
			
		||||
			buffers.[ch] \
 | 
			
		||||
			dd.h \
 | 
			
		||||
			debug.h \
 | 
			
		||||
			depth.h \
 | 
			
		||||
			dlist.h \
 | 
			
		||||
			context.[ch] \
 | 
			
		||||
			config.h \
 | 
			
		||||
			colormac.h \
 | 
			
		||||
			colortab.h \
 | 
			
		||||
			enable.h \
 | 
			
		||||
			enums.h \
 | 
			
		||||
			eval.h \
 | 
			
		||||
			extensions.h \
 | 
			
		||||
			feedback.[ch] \
 | 
			
		||||
			fog.h \
 | 
			
		||||
			get.h \
 | 
			
		||||
			glheader.h \
 | 
			
		||||
			glthread.h \
 | 
			
		||||
			hash.[ch] \
 | 
			
		||||
			hint.h \
 | 
			
		||||
			histogram.h \
 | 
			
		||||
			image.[ch] \
 | 
			
		||||
			imports.[ch] \
 | 
			
		||||
			lines.[ch] \
 | 
			
		||||
			light.h \
 | 
			
		||||
			matrix.[ch] \
 | 
			
		||||
			macros.h \
 | 
			
		||||
			mmath.h \
 | 
			
		||||
			mtypes.h \
 | 
			
		||||
			pixel.h \
 | 
			
		||||
			points.[ch] \
 | 
			
		||||
			polygon.[ch] \
 | 
			
		||||
			rastpos.[ch] \
 | 
			
		||||
			simple_list.h \
 | 
			
		||||
			state.[ch] \
 | 
			
		||||
			stencil.[ch] \
 | 
			
		||||
			subset_*.c \
 | 
			
		||||
			texformat.h \
 | 
			
		||||
			teximage.h \
 | 
			
		||||
			texstate.h \
 | 
			
		||||
			texstore.h \
 | 
			
		||||
			texobj.[ch] \
 | 
			
		||||
			texutil_tmp.h \
 | 
			
		||||
			varray.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to source browsing
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SOURCE_BROWSER         = YES
 | 
			
		||||
INLINE_SOURCES         = NO
 | 
			
		||||
REFERENCED_BY_RELATION = YES
 | 
			
		||||
REFERENCES_RELATION    = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the alphabetical class index
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ALPHABETICAL_INDEX     = NO
 | 
			
		||||
COLS_IN_ALPHA_INDEX    = 5
 | 
			
		||||
IGNORE_PREFIX          = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_HTML          = YES
 | 
			
		||||
HTML_OUTPUT            = core_subset
 | 
			
		||||
HTML_HEADER            = header_subset.html
 | 
			
		||||
HTML_FOOTER            = 
 | 
			
		||||
HTML_STYLESHEET        = 
 | 
			
		||||
HTML_ALIGN_MEMBERS     = YES
 | 
			
		||||
GENERATE_HTMLHELP      = NO
 | 
			
		||||
GENERATE_CHI           = NO
 | 
			
		||||
BINARY_TOC             = NO
 | 
			
		||||
TOC_EXPAND             = NO
 | 
			
		||||
DISABLE_INDEX          = NO
 | 
			
		||||
ENUM_VALUES_PER_LINE   = 4
 | 
			
		||||
GENERATE_TREEVIEW      = NO
 | 
			
		||||
TREEVIEW_WIDTH         = 250
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the LaTeX output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_LATEX         = NO
 | 
			
		||||
LATEX_OUTPUT           = 
 | 
			
		||||
COMPACT_LATEX          = NO
 | 
			
		||||
PAPER_TYPE             = a4wide
 | 
			
		||||
EXTRA_PACKAGES         = 
 | 
			
		||||
LATEX_HEADER           = 
 | 
			
		||||
PDF_HYPERLINKS         = NO
 | 
			
		||||
USE_PDFLATEX           = NO
 | 
			
		||||
LATEX_BATCHMODE        = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the RTF output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_RTF           = NO
 | 
			
		||||
RTF_OUTPUT             = 
 | 
			
		||||
COMPACT_RTF            = NO
 | 
			
		||||
RTF_HYPERLINKS         = NO
 | 
			
		||||
RTF_STYLESHEET_FILE    = 
 | 
			
		||||
RTF_EXTENSIONS_FILE    = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the man page output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_MAN           = NO
 | 
			
		||||
MAN_OUTPUT             = 
 | 
			
		||||
MAN_EXTENSION          = 
 | 
			
		||||
MAN_LINKS              = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the XML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_XML           = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options for the AutoGen Definitions output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_AUTOGEN_DEF   = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = ../include/
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES		= \
 | 
			
		||||
			 math_subset.tag=../math_subset \
 | 
			
		||||
			 miniglx.tag=../miniglx
 | 
			
		||||
GENERATE_TAGFILE       = core_subset.tag
 | 
			
		||||
ALLEXTERNALS           = NO
 | 
			
		||||
PERL_PATH              = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the dot tool   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
CLASS_DIAGRAMS         = NO
 | 
			
		||||
HAVE_DOT               = NO
 | 
			
		||||
CLASS_GRAPH            = YES
 | 
			
		||||
COLLABORATION_GRAPH    = YES
 | 
			
		||||
TEMPLATE_RELATIONS     = YES
 | 
			
		||||
HIDE_UNDOC_RELATIONS   = YES
 | 
			
		||||
INCLUDE_GRAPH          = YES
 | 
			
		||||
INCLUDED_BY_GRAPH      = YES
 | 
			
		||||
GRAPHICAL_HIERARCHY    = YES
 | 
			
		||||
DOT_PATH               = 
 | 
			
		||||
DOTFILE_DIRS           = 
 | 
			
		||||
MAX_DOT_GRAPH_WIDTH    = 1024
 | 
			
		||||
MAX_DOT_GRAPH_HEIGHT   = 1024
 | 
			
		||||
GENERATE_LEGEND        = YES
 | 
			
		||||
DOT_CLEANUP            = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to the search engine   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SEARCHENGINE           = NO
 | 
			
		||||
CGI_NAME               = 
 | 
			
		||||
CGI_URL                = 
 | 
			
		||||
DOC_URL                = 
 | 
			
		||||
DOC_ABSPATH            = 
 | 
			
		||||
BIN_ABSPATH            = 
 | 
			
		||||
EXT_DOC_PATHS          = 
 | 
			
		||||
							
								
								
									
										14
									
								
								doxygen/doxy.bat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								doxygen/doxy.bat
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
doxygen tnl_dd.doxy
 | 
			
		||||
doxygen array_cache.doxy
 | 
			
		||||
doxygen math.doxy
 | 
			
		||||
doxygen swrast.doxy
 | 
			
		||||
doxygen swrast_setup.doxy
 | 
			
		||||
doxygen tnl.doxy
 | 
			
		||||
doxygen core.doxy
 | 
			
		||||
echo Building again, to resolve tags
 | 
			
		||||
doxygen tnl_dd.doxy
 | 
			
		||||
doxygen array_cache.doxy
 | 
			
		||||
doxygen math.doxy
 | 
			
		||||
doxygen swrast.doxy
 | 
			
		||||
doxygen swrast_setup.doxy
 | 
			
		||||
doxygen tnl.doxy
 | 
			
		||||
							
								
								
									
										12
									
								
								doxygen/header.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								doxygen/header.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
<html><head><title>Mesa Source Code Documentation</title>
 | 
			
		||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
 | 
			
		||||
</head>
 | 
			
		||||
<body><center>
 | 
			
		||||
<a href="../core/index.html">core</a> 
 | 
			
		||||
<a href="../array_cache/index.html">array_cache</a> 
 | 
			
		||||
<a href="../math/index.html">math</a> 
 | 
			
		||||
<a href="../swrast/index.html">swrast</a> 
 | 
			
		||||
<a href="../swrast_setup/index.html">swrast_setup</a> 
 | 
			
		||||
<a href="../tnl/index.html">tnl</a> 
 | 
			
		||||
<a href="../tnl_dd/index.html">tnl_dd</a> 
 | 
			
		||||
</center>
 | 
			
		||||
							
								
								
									
										9
									
								
								doxygen/header_subset.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								doxygen/header_subset.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
			
		||||
<html><head><title>Mesa Source Code Documentation</title>
 | 
			
		||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
 | 
			
		||||
</head>
 | 
			
		||||
<body><center>
 | 
			
		||||
<a href="../core_subset/index.html">Mesa Core</a> 
 | 
			
		||||
<a href="../math_subset/index.html">math</a> 
 | 
			
		||||
<a href="../miniglx/index.html">MiniGLX</a> 
 | 
			
		||||
<a href="../radeon_subset/index.html">radeon_subset</a> 
 | 
			
		||||
</center>
 | 
			
		||||
							
								
								
									
										49
									
								
								doxygen/math.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								doxygen/math.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa math module"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/math/
 | 
			
		||||
FILE_PATTERNS          = *.c \
 | 
			
		||||
                         *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = math
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = tnl_dd.tag=../tnl_dd \
 | 
			
		||||
                         core.tag=../core \
 | 
			
		||||
                         swrast.tag=../swrast \
 | 
			
		||||
                         swrast_setup.tag=../swrast_setup \
 | 
			
		||||
                         tnl.tag=../tnl \
 | 
			
		||||
                         array_cache.tag=../array_cache
 | 
			
		||||
GENERATE_TAGFILE       = math.tag
 | 
			
		||||
							
								
								
									
										177
									
								
								doxygen/math_subset.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										177
									
								
								doxygen/math_subset.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,177 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa math module"
 | 
			
		||||
PROJECT_NUMBER         = 
 | 
			
		||||
OUTPUT_DIRECTORY       = .
 | 
			
		||||
OUTPUT_LANGUAGE        = English
 | 
			
		||||
EXTRACT_ALL            = NO
 | 
			
		||||
EXTRACT_PRIVATE        = NO
 | 
			
		||||
EXTRACT_STATIC         = YES
 | 
			
		||||
EXTRACT_LOCAL_CLASSES  = YES
 | 
			
		||||
HIDE_UNDOC_MEMBERS     = NO
 | 
			
		||||
HIDE_UNDOC_CLASSES     = NO
 | 
			
		||||
BRIEF_MEMBER_DESC      = YES
 | 
			
		||||
REPEAT_BRIEF           = YES
 | 
			
		||||
ALWAYS_DETAILED_SEC    = NO
 | 
			
		||||
INLINE_INHERITED_MEMB  = NO
 | 
			
		||||
FULL_PATH_NAMES        = NO
 | 
			
		||||
STRIP_FROM_PATH        = 
 | 
			
		||||
INTERNAL_DOCS          = NO
 | 
			
		||||
STRIP_CODE_COMMENTS    = YES
 | 
			
		||||
CASE_SENSE_NAMES       = YES
 | 
			
		||||
SHORT_NAMES            = NO
 | 
			
		||||
HIDE_SCOPE_NAMES       = NO
 | 
			
		||||
VERBATIM_HEADERS       = YES
 | 
			
		||||
SHOW_INCLUDE_FILES     = YES
 | 
			
		||||
JAVADOC_AUTOBRIEF      = NO
 | 
			
		||||
INHERIT_DOCS           = YES
 | 
			
		||||
INLINE_INFO            = YES
 | 
			
		||||
SORT_MEMBER_DOCS       = NO
 | 
			
		||||
DISTRIBUTE_GROUP_DOC   = NO
 | 
			
		||||
TAB_SIZE               = 8
 | 
			
		||||
GENERATE_TODOLIST      = YES
 | 
			
		||||
GENERATE_TESTLIST      = YES
 | 
			
		||||
GENERATE_BUGLIST       = YES
 | 
			
		||||
ALIASES                = 
 | 
			
		||||
ENABLED_SECTIONS       = 
 | 
			
		||||
MAX_INITIALIZER_LINES  = 30
 | 
			
		||||
OPTIMIZE_OUTPUT_FOR_C  = YES
 | 
			
		||||
SHOW_USED_FILES        = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to warning and progress messages
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
QUIET                  = YES
 | 
			
		||||
WARNINGS               = YES
 | 
			
		||||
WARN_IF_UNDOCUMENTED   = NO
 | 
			
		||||
WARN_FORMAT            = 
 | 
			
		||||
WARN_LOGFILE           = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/math/
 | 
			
		||||
FILE_PATTERNS          = m_matrix.[ch]
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to source browsing
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SOURCE_BROWSER         = NO
 | 
			
		||||
INLINE_SOURCES         = NO
 | 
			
		||||
REFERENCED_BY_RELATION = YES
 | 
			
		||||
REFERENCES_RELATION    = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the alphabetical class index
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ALPHABETICAL_INDEX     = NO
 | 
			
		||||
COLS_IN_ALPHA_INDEX    = 5
 | 
			
		||||
IGNORE_PREFIX          = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_HTML          = YES
 | 
			
		||||
HTML_OUTPUT            = math_subset
 | 
			
		||||
HTML_HEADER            = header_subset.html
 | 
			
		||||
HTML_FOOTER            = 
 | 
			
		||||
HTML_STYLESHEET        = 
 | 
			
		||||
HTML_ALIGN_MEMBERS     = YES
 | 
			
		||||
GENERATE_HTMLHELP      = NO
 | 
			
		||||
GENERATE_CHI           = NO
 | 
			
		||||
BINARY_TOC             = NO
 | 
			
		||||
TOC_EXPAND             = NO
 | 
			
		||||
DISABLE_INDEX          = NO
 | 
			
		||||
ENUM_VALUES_PER_LINE   = 4
 | 
			
		||||
GENERATE_TREEVIEW      = NO
 | 
			
		||||
TREEVIEW_WIDTH         = 250
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the LaTeX output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_LATEX         = NO
 | 
			
		||||
LATEX_OUTPUT           = 
 | 
			
		||||
COMPACT_LATEX          = NO
 | 
			
		||||
PAPER_TYPE             = a4wide
 | 
			
		||||
EXTRA_PACKAGES         = 
 | 
			
		||||
LATEX_HEADER           = 
 | 
			
		||||
PDF_HYPERLINKS         = NO
 | 
			
		||||
USE_PDFLATEX           = NO
 | 
			
		||||
LATEX_BATCHMODE        = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the RTF output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_RTF           = NO
 | 
			
		||||
RTF_OUTPUT             = 
 | 
			
		||||
COMPACT_RTF            = NO
 | 
			
		||||
RTF_HYPERLINKS         = NO
 | 
			
		||||
RTF_STYLESHEET_FILE    = 
 | 
			
		||||
RTF_EXTENSIONS_FILE    = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the man page output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_MAN           = NO
 | 
			
		||||
MAN_OUTPUT             = 
 | 
			
		||||
MAN_EXTENSION          = 
 | 
			
		||||
MAN_LINKS              = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the XML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_XML           = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options for the AutoGen Definitions output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_AUTOGEN_DEF   = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = core_subset.tag=../core_subset
 | 
			
		||||
GENERATE_TAGFILE       = math_subset.tag
 | 
			
		||||
ALLEXTERNALS           = NO
 | 
			
		||||
PERL_PATH              = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the dot tool   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
CLASS_DIAGRAMS         = YES
 | 
			
		||||
HAVE_DOT               = NO
 | 
			
		||||
CLASS_GRAPH            = YES
 | 
			
		||||
COLLABORATION_GRAPH    = YES
 | 
			
		||||
TEMPLATE_RELATIONS     = YES
 | 
			
		||||
HIDE_UNDOC_RELATIONS   = YES
 | 
			
		||||
INCLUDE_GRAPH          = YES
 | 
			
		||||
INCLUDED_BY_GRAPH      = YES
 | 
			
		||||
GRAPHICAL_HIERARCHY    = YES
 | 
			
		||||
DOT_PATH               = 
 | 
			
		||||
DOTFILE_DIRS           = 
 | 
			
		||||
MAX_DOT_GRAPH_WIDTH    = 1024
 | 
			
		||||
MAX_DOT_GRAPH_HEIGHT   = 1024
 | 
			
		||||
GENERATE_LEGEND        = YES
 | 
			
		||||
DOT_CLEANUP            = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to the search engine   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SEARCHENGINE           = NO
 | 
			
		||||
CGI_NAME               = 
 | 
			
		||||
CGI_URL                = 
 | 
			
		||||
DOC_URL                = 
 | 
			
		||||
DOC_ABSPATH            = 
 | 
			
		||||
BIN_ABSPATH            = 
 | 
			
		||||
EXT_DOC_PATHS          = 
 | 
			
		||||
							
								
								
									
										179
									
								
								doxygen/miniglx.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										179
									
								
								doxygen/miniglx.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,179 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "MiniGLX"
 | 
			
		||||
PROJECT_NUMBER         = 
 | 
			
		||||
OUTPUT_DIRECTORY       = 
 | 
			
		||||
OUTPUT_LANGUAGE        = English
 | 
			
		||||
EXTRACT_ALL            = NO
 | 
			
		||||
EXTRACT_PRIVATE        = NO
 | 
			
		||||
EXTRACT_STATIC         = YES
 | 
			
		||||
EXTRACT_LOCAL_CLASSES  = YES
 | 
			
		||||
HIDE_UNDOC_MEMBERS     = NO
 | 
			
		||||
HIDE_UNDOC_CLASSES     = NO
 | 
			
		||||
BRIEF_MEMBER_DESC      = YES
 | 
			
		||||
REPEAT_BRIEF           = YES
 | 
			
		||||
ALWAYS_DETAILED_SEC    = NO
 | 
			
		||||
INLINE_INHERITED_MEMB  = NO
 | 
			
		||||
FULL_PATH_NAMES        = NO
 | 
			
		||||
STRIP_FROM_PATH        = 
 | 
			
		||||
INTERNAL_DOCS          = YES
 | 
			
		||||
STRIP_CODE_COMMENTS    = YES
 | 
			
		||||
CASE_SENSE_NAMES       = YES
 | 
			
		||||
SHORT_NAMES            = NO
 | 
			
		||||
HIDE_SCOPE_NAMES       = NO
 | 
			
		||||
VERBATIM_HEADERS       = NO
 | 
			
		||||
SHOW_INCLUDE_FILES     = NO
 | 
			
		||||
JAVADOC_AUTOBRIEF      = NO
 | 
			
		||||
INHERIT_DOCS           = YES
 | 
			
		||||
INLINE_INFO            = YES
 | 
			
		||||
SORT_MEMBER_DOCS       = NO
 | 
			
		||||
DISTRIBUTE_GROUP_DOC   = NO
 | 
			
		||||
TAB_SIZE               = 8
 | 
			
		||||
GENERATE_TODOLIST      = YES
 | 
			
		||||
GENERATE_TESTLIST      = YES
 | 
			
		||||
GENERATE_BUGLIST       = YES
 | 
			
		||||
ALIASES                = 
 | 
			
		||||
ENABLED_SECTIONS       = 
 | 
			
		||||
MAX_INITIALIZER_LINES  = 30
 | 
			
		||||
OPTIMIZE_OUTPUT_FOR_C  = NO
 | 
			
		||||
SHOW_USED_FILES        = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to warning and progress messages
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
QUIET                  = YES
 | 
			
		||||
WARNINGS               = YES
 | 
			
		||||
WARN_IF_UNDOCUMENTED   = NO
 | 
			
		||||
WARN_FORMAT            = 
 | 
			
		||||
WARN_LOGFILE           = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/glx/mini/ ../include/GL/miniglx.h
 | 
			
		||||
FILE_PATTERNS          = *.h *.c
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = ../src/glx/mini/glapi.c
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to source browsing
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SOURCE_BROWSER         = NO
 | 
			
		||||
INLINE_SOURCES         = NO
 | 
			
		||||
REFERENCED_BY_RELATION = YES
 | 
			
		||||
REFERENCES_RELATION    = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the alphabetical class index
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ALPHABETICAL_INDEX     = NO
 | 
			
		||||
COLS_IN_ALPHA_INDEX    = 5
 | 
			
		||||
IGNORE_PREFIX          = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_HTML          = YES
 | 
			
		||||
HTML_OUTPUT            = miniglx
 | 
			
		||||
HTML_HEADER            = header_subset.html
 | 
			
		||||
HTML_FOOTER            = 
 | 
			
		||||
HTML_STYLESHEET        = 
 | 
			
		||||
HTML_ALIGN_MEMBERS     = YES
 | 
			
		||||
GENERATE_HTMLHELP      = NO
 | 
			
		||||
GENERATE_CHI           = NO
 | 
			
		||||
BINARY_TOC             = NO
 | 
			
		||||
TOC_EXPAND             = NO
 | 
			
		||||
DISABLE_INDEX          = NO
 | 
			
		||||
ENUM_VALUES_PER_LINE   = 4
 | 
			
		||||
GENERATE_TREEVIEW      = NO
 | 
			
		||||
TREEVIEW_WIDTH         = 250
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the LaTeX output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_LATEX         = NO
 | 
			
		||||
LATEX_OUTPUT           = 
 | 
			
		||||
COMPACT_LATEX          = NO
 | 
			
		||||
PAPER_TYPE             = a4wide
 | 
			
		||||
EXTRA_PACKAGES         = 
 | 
			
		||||
LATEX_HEADER           = 
 | 
			
		||||
PDF_HYPERLINKS         = NO
 | 
			
		||||
USE_PDFLATEX           = NO
 | 
			
		||||
LATEX_BATCHMODE        = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the RTF output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_RTF           = NO
 | 
			
		||||
RTF_OUTPUT             = 
 | 
			
		||||
COMPACT_RTF            = NO
 | 
			
		||||
RTF_HYPERLINKS         = NO
 | 
			
		||||
RTF_STYLESHEET_FILE    = 
 | 
			
		||||
RTF_EXTENSIONS_FILE    = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the man page output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_MAN           = NO
 | 
			
		||||
MAN_OUTPUT             = 
 | 
			
		||||
MAN_EXTENSION          = 
 | 
			
		||||
MAN_LINKS              = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the XML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_XML           = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options for the AutoGen Definitions output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_AUTOGEN_DEF   = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = ../include/
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES		= \
 | 
			
		||||
			 core_subset.tag=../core_subset \
 | 
			
		||||
                         math_subset.tag=../math_subset
 | 
			
		||||
GENERATE_TAGFILE       = miniglx.tag
 | 
			
		||||
ALLEXTERNALS           = NO
 | 
			
		||||
PERL_PATH              = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the dot tool   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
CLASS_DIAGRAMS         = NO
 | 
			
		||||
HAVE_DOT               = NO
 | 
			
		||||
CLASS_GRAPH            = YES
 | 
			
		||||
COLLABORATION_GRAPH    = YES
 | 
			
		||||
TEMPLATE_RELATIONS     = YES
 | 
			
		||||
HIDE_UNDOC_RELATIONS   = YES
 | 
			
		||||
INCLUDE_GRAPH          = YES
 | 
			
		||||
INCLUDED_BY_GRAPH      = YES
 | 
			
		||||
GRAPHICAL_HIERARCHY    = YES
 | 
			
		||||
DOT_PATH               = 
 | 
			
		||||
DOTFILE_DIRS           = 
 | 
			
		||||
MAX_DOT_GRAPH_WIDTH    = 1024
 | 
			
		||||
MAX_DOT_GRAPH_HEIGHT   = 1024
 | 
			
		||||
GENERATE_LEGEND        = YES
 | 
			
		||||
DOT_CLEANUP            = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to the search engine   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SEARCHENGINE           = NO
 | 
			
		||||
CGI_NAME               = 
 | 
			
		||||
CGI_URL                = 
 | 
			
		||||
DOC_URL                = 
 | 
			
		||||
DOC_ABSPATH            = 
 | 
			
		||||
BIN_ABSPATH            = 
 | 
			
		||||
EXT_DOC_PATHS          = 
 | 
			
		||||
							
								
								
									
										203
									
								
								doxygen/radeon_subset.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										203
									
								
								doxygen/radeon_subset.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,203 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Radeon Subset Driver"
 | 
			
		||||
PROJECT_NUMBER         = 
 | 
			
		||||
OUTPUT_DIRECTORY       = 
 | 
			
		||||
OUTPUT_LANGUAGE        = English
 | 
			
		||||
EXTRACT_ALL            = NO
 | 
			
		||||
EXTRACT_PRIVATE        = NO
 | 
			
		||||
EXTRACT_STATIC         = YES
 | 
			
		||||
EXTRACT_LOCAL_CLASSES  = YES
 | 
			
		||||
HIDE_UNDOC_MEMBERS     = NO
 | 
			
		||||
HIDE_UNDOC_CLASSES     = NO
 | 
			
		||||
BRIEF_MEMBER_DESC      = YES
 | 
			
		||||
REPEAT_BRIEF           = YES
 | 
			
		||||
ALWAYS_DETAILED_SEC    = NO
 | 
			
		||||
INLINE_INHERITED_MEMB  = NO
 | 
			
		||||
FULL_PATH_NAMES        = NO
 | 
			
		||||
STRIP_FROM_PATH        = 
 | 
			
		||||
INTERNAL_DOCS          = YES
 | 
			
		||||
STRIP_CODE_COMMENTS    = YES
 | 
			
		||||
CASE_SENSE_NAMES       = YES
 | 
			
		||||
SHORT_NAMES            = NO
 | 
			
		||||
HIDE_SCOPE_NAMES       = NO
 | 
			
		||||
VERBATIM_HEADERS       = NO
 | 
			
		||||
SHOW_INCLUDE_FILES     = NO
 | 
			
		||||
JAVADOC_AUTOBRIEF      = NO
 | 
			
		||||
INHERIT_DOCS           = YES
 | 
			
		||||
INLINE_INFO            = YES
 | 
			
		||||
SORT_MEMBER_DOCS       = NO
 | 
			
		||||
DISTRIBUTE_GROUP_DOC   = NO
 | 
			
		||||
TAB_SIZE               = 8
 | 
			
		||||
GENERATE_TODOLIST      = YES
 | 
			
		||||
GENERATE_TESTLIST      = YES
 | 
			
		||||
GENERATE_BUGLIST       = YES
 | 
			
		||||
ALIASES                = 
 | 
			
		||||
ENABLED_SECTIONS       = 
 | 
			
		||||
MAX_INITIALIZER_LINES  = 30
 | 
			
		||||
OPTIMIZE_OUTPUT_FOR_C  = NO
 | 
			
		||||
SHOW_USED_FILES        = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to warning and progress messages
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
QUIET                  = YES
 | 
			
		||||
WARNINGS               = YES
 | 
			
		||||
WARN_IF_UNDOCUMENTED   = NO
 | 
			
		||||
WARN_FORMAT            = 
 | 
			
		||||
WARN_LOGFILE           = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = \
 | 
			
		||||
			../src/mesa/drivers/dri/common/mm.c \
 | 
			
		||||
			../src/mesa/drivers/dri/common/mm.h \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_context.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_context.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_ioctl.c \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_ioctl.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_lock.c \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_lock.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_screen.c \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_screen.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_state.c \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_state.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_state_init.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset.h \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset_bitmap.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset_readpix.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset_select.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset_tex.c \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/radeon_subset_vtx.c \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_tcl.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_tex.h \
 | 
			
		||||
		 	../src/mesa/drivers/dri/radeon/radeon_vtxfmt.h \
 | 
			
		||||
			../src/mesa/drivers/dri/radeon/server
 | 
			
		||||
FILE_PATTERNS          = *.h *.c
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to source browsing
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SOURCE_BROWSER         = NO
 | 
			
		||||
INLINE_SOURCES         = NO
 | 
			
		||||
REFERENCED_BY_RELATION = YES
 | 
			
		||||
REFERENCES_RELATION    = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the alphabetical class index
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ALPHABETICAL_INDEX     = NO
 | 
			
		||||
COLS_IN_ALPHA_INDEX    = 5
 | 
			
		||||
IGNORE_PREFIX          = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_HTML          = YES
 | 
			
		||||
HTML_OUTPUT            = radeon_subset
 | 
			
		||||
HTML_HEADER            = header_subset.html
 | 
			
		||||
HTML_FOOTER            = 
 | 
			
		||||
HTML_STYLESHEET        = 
 | 
			
		||||
HTML_ALIGN_MEMBERS     = YES
 | 
			
		||||
GENERATE_HTMLHELP      = NO
 | 
			
		||||
GENERATE_CHI           = NO
 | 
			
		||||
BINARY_TOC             = NO
 | 
			
		||||
TOC_EXPAND             = NO
 | 
			
		||||
DISABLE_INDEX          = NO
 | 
			
		||||
ENUM_VALUES_PER_LINE   = 4
 | 
			
		||||
GENERATE_TREEVIEW      = NO
 | 
			
		||||
TREEVIEW_WIDTH         = 250
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the LaTeX output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_LATEX         = NO
 | 
			
		||||
LATEX_OUTPUT           = 
 | 
			
		||||
COMPACT_LATEX          = NO
 | 
			
		||||
PAPER_TYPE             = a4wide
 | 
			
		||||
EXTRA_PACKAGES         = 
 | 
			
		||||
LATEX_HEADER           = 
 | 
			
		||||
PDF_HYPERLINKS         = NO
 | 
			
		||||
USE_PDFLATEX           = NO
 | 
			
		||||
LATEX_BATCHMODE        = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the RTF output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_RTF           = NO
 | 
			
		||||
RTF_OUTPUT             = 
 | 
			
		||||
COMPACT_RTF            = NO
 | 
			
		||||
RTF_HYPERLINKS         = NO
 | 
			
		||||
RTF_STYLESHEET_FILE    = 
 | 
			
		||||
RTF_EXTENSIONS_FILE    = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the man page output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_MAN           = NO
 | 
			
		||||
MAN_OUTPUT             = 
 | 
			
		||||
MAN_EXTENSION          = 
 | 
			
		||||
MAN_LINKS              = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the XML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_XML           = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options for the AutoGen Definitions output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
GENERATE_AUTOGEN_DEF   = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = ../include/
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES		= \
 | 
			
		||||
			 core_subset.tag=../core_subset \
 | 
			
		||||
                         math_subset.tag=../math_subset \
 | 
			
		||||
                         miniglx.tag=../miniglx
 | 
			
		||||
GENERATE_TAGFILE       = radeon_subset.tag
 | 
			
		||||
ALLEXTERNALS           = NO
 | 
			
		||||
PERL_PATH              = 
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the dot tool   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
CLASS_DIAGRAMS         = NO
 | 
			
		||||
HAVE_DOT               = NO
 | 
			
		||||
CLASS_GRAPH            = YES
 | 
			
		||||
COLLABORATION_GRAPH    = YES
 | 
			
		||||
TEMPLATE_RELATIONS     = YES
 | 
			
		||||
HIDE_UNDOC_RELATIONS   = YES
 | 
			
		||||
INCLUDE_GRAPH          = YES
 | 
			
		||||
INCLUDED_BY_GRAPH      = YES
 | 
			
		||||
GRAPHICAL_HIERARCHY    = YES
 | 
			
		||||
DOT_PATH               = 
 | 
			
		||||
DOTFILE_DIRS           = 
 | 
			
		||||
MAX_DOT_GRAPH_WIDTH    = 1024
 | 
			
		||||
MAX_DOT_GRAPH_HEIGHT   = 1024
 | 
			
		||||
GENERATE_LEGEND        = YES
 | 
			
		||||
DOT_CLEANUP            = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to the search engine   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
SEARCHENGINE           = NO
 | 
			
		||||
CGI_NAME               = 
 | 
			
		||||
CGI_URL                = 
 | 
			
		||||
DOC_URL                = 
 | 
			
		||||
DOC_ABSPATH            = 
 | 
			
		||||
BIN_ABSPATH            = 
 | 
			
		||||
EXT_DOC_PATHS          = 
 | 
			
		||||
							
								
								
									
										48
									
								
								doxygen/swrast.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								doxygen/swrast.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa Software Rasterization (swrast)"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/swrast/
 | 
			
		||||
FILE_PATTERNS          = *.c *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = swrast
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = ../include/
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = core.tag=../core \
 | 
			
		||||
                         math.tag=../math \
 | 
			
		||||
                         tnl_dd.tag=../tnl_dd \
 | 
			
		||||
                         swrast_setup.tag=../swrast_setup \
 | 
			
		||||
                         tnl.tag=../tnl \
 | 
			
		||||
                         array_cache.tag=array_cache
 | 
			
		||||
GENERATE_TAGFILE       = swrast.tag
 | 
			
		||||
							
								
								
									
										49
									
								
								doxygen/swrast_setup.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								doxygen/swrast_setup.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa swrast_setup"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/swrast_setup/
 | 
			
		||||
FILE_PATTERNS          = *.c \
 | 
			
		||||
                         *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = swrast_setup
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = tnl_dd.tag=../tnl_dd \
 | 
			
		||||
                         core.tag=../core \
 | 
			
		||||
                         math.tag=../math \
 | 
			
		||||
                         swrast.tag=../swrast \
 | 
			
		||||
                         tnl.tag=../tnl \
 | 
			
		||||
                         array_cache.tag=../array_cache
 | 
			
		||||
GENERATE_TAGFILE       = swrast_setup.tag
 | 
			
		||||
							
								
								
									
										49
									
								
								doxygen/tnl.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								doxygen/tnl.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa Transform and Lighting (tnl)"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/tnl/
 | 
			
		||||
FILE_PATTERNS          = *.c \
 | 
			
		||||
                         *.h
 | 
			
		||||
RECURSIVE              = NO
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = tnl
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = tnl_dd.tag=../tnl \
 | 
			
		||||
                         core.tag=../core \
 | 
			
		||||
                         math.tag=../math \
 | 
			
		||||
                         swrast.tag=../swrast \
 | 
			
		||||
                         swrast_setup.tag=swrast_setup \
 | 
			
		||||
                         array_cache.tag=array_cache
 | 
			
		||||
GENERATE_TAGFILE       = tnl.tag
 | 
			
		||||
							
								
								
									
										48
									
								
								doxygen/tnl_dd.doxy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								doxygen/tnl_dd.doxy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
# Doxyfile 0.1
 | 
			
		||||
 | 
			
		||||
@INCLUDE               = common.doxy
 | 
			
		||||
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# General configuration options
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
PROJECT_NAME           = "Mesa tnl_dd"
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the input files
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
INPUT                  = ../src/mesa/tnl_dd/
 | 
			
		||||
FILE_PATTERNS          = *.c *.h
 | 
			
		||||
RECURSIVE              = YES
 | 
			
		||||
EXCLUDE                = 
 | 
			
		||||
EXCLUDE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_PATH           = 
 | 
			
		||||
EXAMPLE_PATTERNS       = 
 | 
			
		||||
EXAMPLE_RECURSIVE      = NO
 | 
			
		||||
IMAGE_PATH             = 
 | 
			
		||||
INPUT_FILTER           = 
 | 
			
		||||
FILTER_SOURCE_FILES    = NO
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# configuration options related to the HTML output
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
HTML_OUTPUT            = tnl_dd
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration options related to the preprocessor   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
ENABLE_PREPROCESSING   = YES
 | 
			
		||||
MACRO_EXPANSION        = NO
 | 
			
		||||
EXPAND_ONLY_PREDEF     = NO
 | 
			
		||||
SEARCH_INCLUDES        = YES
 | 
			
		||||
INCLUDE_PATH           = 
 | 
			
		||||
INCLUDE_FILE_PATTERNS  = 
 | 
			
		||||
PREDEFINED             = 
 | 
			
		||||
EXPAND_AS_DEFINED      = 
 | 
			
		||||
SKIP_FUNCTION_MACROS   = YES
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
# Configuration::addtions related to external references   
 | 
			
		||||
#---------------------------------------------------------------------------
 | 
			
		||||
TAGFILES               = core.tag=../core \
 | 
			
		||||
                         math.tag=../math \
 | 
			
		||||
                         swrast.tag=../swrast \
 | 
			
		||||
                         swrast_setup.tag=../swrast_setup \
 | 
			
		||||
                         tnl.tag=../tnl \
 | 
			
		||||
                         array_cache.tag=array_cache
 | 
			
		||||
GENERATE_TAGFILE       = tnl_dd.tag
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id: amesa.h,v 1.2 2000/02/09 19:03:28 brianp Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  3.3
 | 
			
		||||
 
 | 
			
		||||
@@ -1,77 +1,147 @@
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  4.0
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (C) 1999  Brian Paul   All Rights Reserved.
 | 
			
		||||
 * 
 | 
			
		||||
 * Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
 * copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
 * to deal in the Software without restriction, including without limitation
 | 
			
		||||
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
 * and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
 * Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
 * 
 | 
			
		||||
 * The above copyright notice and this permission notice shall be included
 | 
			
		||||
 * in all copies or substantial portions of the Software.
 | 
			
		||||
 * 
 | 
			
		||||
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * DOS/DJGPP device driver v1.0 for Mesa 4.0
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (C) 2002 - Borca Daniel
 | 
			
		||||
 *  Email : dborca@yahoo.com
 | 
			
		||||
 *  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef DMESA_included
 | 
			
		||||
#define DMESA_included
 | 
			
		||||
 | 
			
		||||
#define DMESA_MAJOR_VERSION 4
 | 
			
		||||
#define DMESA_MINOR_VERSION 0
 | 
			
		||||
 | 
			
		||||
typedef struct dmesa_context *DMesaContext;
 | 
			
		||||
typedef struct dmesa_visual *DMesaVisual;
 | 
			
		||||
typedef struct dmesa_buffer *DMesaBuffer;
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
DMesaVisual DMesaCreateVisual (GLint width, GLint height, GLint colDepth,
 | 
			
		||||
                               GLboolean dbFlag, GLint depthSize,
 | 
			
		||||
                               GLint stencilSize,
 | 
			
		||||
                               GLint accumSize);
 | 
			
		||||
 | 
			
		||||
void DMesaDestroyVisual (DMesaVisual v);
 | 
			
		||||
 | 
			
		||||
DMesaBuffer DMesaCreateBuffer (DMesaVisual visual,
 | 
			
		||||
                               GLint xpos, GLint ypos,
 | 
			
		||||
                               GLint width, GLint height);
 | 
			
		||||
 | 
			
		||||
void DMesaDestroyBuffer (DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
DMesaContext DMesaCreateContext (DMesaVisual visual, DMesaContext share);
 | 
			
		||||
 | 
			
		||||
void DMesaDestroyContext (DMesaContext c);
 | 
			
		||||
 | 
			
		||||
GLboolean DMesaViewport (DMesaBuffer b,
 | 
			
		||||
                         GLint xpos, GLint ypos,
 | 
			
		||||
                         GLint width, GLint height);
 | 
			
		||||
 | 
			
		||||
GLboolean DMesaMakeCurrent (DMesaContext c, DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
void DMesaSwapBuffers (DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  5.0
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (C) 1999-2002  Brian Paul   All Rights Reserved.
 | 
			
		||||
 * 
 | 
			
		||||
 * Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
 * copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
 * to deal in the Software without restriction, including without limitation
 | 
			
		||||
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
 * and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
 * Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
 * 
 | 
			
		||||
 * The above copyright notice and this permission notice shall be included
 | 
			
		||||
 * in all copies or substantial portions of the Software.
 | 
			
		||||
 * 
 | 
			
		||||
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * DOS/DJGPP device driver v1.4 for Mesa
 | 
			
		||||
 *
 | 
			
		||||
 *  Copyright (C) 2002 - Borca Daniel
 | 
			
		||||
 *  Email : dborca@users.sourceforge.net
 | 
			
		||||
 *  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef DMESA_H_included
 | 
			
		||||
#define DMESA_H_included
 | 
			
		||||
 | 
			
		||||
#define DMESA_MAJOR_VERSION 5
 | 
			
		||||
#define DMESA_MINOR_VERSION 0
 | 
			
		||||
 | 
			
		||||
/* Sample Usage:
 | 
			
		||||
 *
 | 
			
		||||
 * 1. Call DMesaCreateVisual() to initialize graphics.
 | 
			
		||||
 * 2. Call DMesaCreateContext() to create a DMesa rendering context.
 | 
			
		||||
 * 3. Call DMesaCreateBuffer() to define the window.
 | 
			
		||||
 * 4. Call DMesaMakeCurrent() to bind the DMesaBuffer to a DMesaContext.
 | 
			
		||||
 * 5. Make gl* calls to render your graphics.
 | 
			
		||||
 * 6. Use DMesaSwapBuffers() when double buffering to swap front/back buffers.
 | 
			
		||||
 * 7. Before exiting, destroy DMesaBuffer, DMesaContext and DMesaVisual.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
typedef struct dmesa_context *DMesaContext;
 | 
			
		||||
typedef struct dmesa_visual *DMesaVisual;
 | 
			
		||||
typedef struct dmesa_buffer *DMesaBuffer;
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Create a new Visual and set graphics mode.
 | 
			
		||||
 */
 | 
			
		||||
DMesaVisual DMesaCreateVisual (GLint width,        /* X res */
 | 
			
		||||
                               GLint height,       /* Y res */
 | 
			
		||||
                               GLint colDepth,     /* BPP */
 | 
			
		||||
                               GLint refresh,      /* refresh rate: 0=default */
 | 
			
		||||
                               GLboolean dbFlag,   /* double-buffered */
 | 
			
		||||
                               GLboolean rgbFlag,  /* RGB mode */
 | 
			
		||||
                               GLint alphaSize,    /* requested bits/alpha */
 | 
			
		||||
                               GLint depthSize,    /* requested bits/depth */
 | 
			
		||||
                               GLint stencilSize,  /* requested bits/stencil */
 | 
			
		||||
                               GLint accumSize);   /* requested bits/accum */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Destroy Visual and restore screen.
 | 
			
		||||
 */
 | 
			
		||||
void DMesaDestroyVisual (DMesaVisual v);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Create a new Context for rendering.
 | 
			
		||||
 */
 | 
			
		||||
DMesaContext DMesaCreateContext (DMesaVisual visual, DMesaContext share);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Destroy Context.
 | 
			
		||||
 */
 | 
			
		||||
void DMesaDestroyContext (DMesaContext c);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Return a handle to the current context.
 | 
			
		||||
 */
 | 
			
		||||
void *DMesaGetCurrentContext (void);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Create a new Buffer (window).
 | 
			
		||||
 */
 | 
			
		||||
DMesaBuffer DMesaCreateBuffer (DMesaVisual visual,
 | 
			
		||||
                               GLint xpos, GLint ypos,
 | 
			
		||||
                               GLint width, GLint height);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Destroy Buffer.
 | 
			
		||||
 */
 | 
			
		||||
void DMesaDestroyBuffer (DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Swap the front and back buffers for the given Buffer.
 | 
			
		||||
 * No action is taken if the buffer is not double buffered.
 | 
			
		||||
 */
 | 
			
		||||
void DMesaSwapBuffers (DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Bind Buffer to Context and make the Context the current one.
 | 
			
		||||
 */
 | 
			
		||||
GLboolean DMesaMakeCurrent (DMesaContext c, DMesaBuffer b);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Move/Resize current Buffer.
 | 
			
		||||
 */
 | 
			
		||||
GLboolean DMesaMoveBuffer (GLint xpos, GLint ypos);
 | 
			
		||||
GLboolean DMesaResizeBuffer (GLint width, GLint height);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Set palette index, using normalized values.
 | 
			
		||||
 */
 | 
			
		||||
void DMesaSetCI (int ndx, GLfloat red, GLfloat green, GLfloat blue);
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * DMesa state retrieval.
 | 
			
		||||
 */
 | 
			
		||||
#define DMESA_GET_SCREEN_SIZE 0x0100
 | 
			
		||||
#define DMESA_GET_DRIVER_CAPS 0x0200
 | 
			
		||||
 | 
			
		||||
#define DMESA_DRIVER_SWDB_BIT 0x1 /* software double-buffered */
 | 
			
		||||
#define DMESA_DRIVER_LLWO_BIT 0x2 /* lower-left window origin */
 | 
			
		||||
int DMesaGetIntegerv (GLenum pname, GLint *params);
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id: foomesa.h,v 1.1 1999/08/19 00:55:40 jtg Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  3.0
 | 
			
		||||
@@ -21,17 +19,6 @@
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * $Log: foomesa.h,v $
 | 
			
		||||
 * Revision 1.1  1999/08/19 00:55:40  jtg
 | 
			
		||||
 * Initial revision
 | 
			
		||||
 *
 | 
			
		||||
 * Revision 1.1  1998/06/02 01:34:18  brianp
 | 
			
		||||
 * Initial revision
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Example Foo/Mesa interface.  See src/ddsample.c for more info.
 | 
			
		||||
 */
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id: fxmesa.h,v 1.4 2001/09/23 16:06:13 brianp Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  4.0
 | 
			
		||||
@@ -40,7 +38,7 @@ extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define FXMESA_MAJOR_VERSION 4
 | 
			
		||||
#define FXMESA_MAJOR_VERSION 5
 | 
			
		||||
#define FXMESA_MINOR_VERSION 0
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -53,6 +51,8 @@ extern "C" {
 | 
			
		||||
#define FXMESA_DEPTH_SIZE	12      /* followed by an integer */
 | 
			
		||||
#define FXMESA_STENCIL_SIZE	13      /* followed by an integer */
 | 
			
		||||
#define FXMESA_ACCUM_SIZE	14      /* followed by an integer */
 | 
			
		||||
#define FXMESA_COLORDEPTH	20      /* followed by an integer */
 | 
			
		||||
#define FXMESA_SHARE_CONTEXT 990099	/* keep in sync with xmesa1.c! */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -77,7 +77,7 @@ GLAPI GLboolean GLAPIENTRY fxMesaSelectCurrentBoard(int n);
 | 
			
		||||
 | 
			
		||||
GLAPI void GLAPIENTRY fxMesaMakeCurrent(fxMesaContext ctx);
 | 
			
		||||
 | 
			
		||||
GLAPI fxMesaContext GLAPIENTRY fxMesaGetCurrentContext(void);
 | 
			
		||||
GLAPI void * GLAPIENTRY fxMesaGetCurrentContext(void);
 | 
			
		||||
 | 
			
		||||
GLAPI void GLAPIENTRY fxMesaSwapBuffers(void);
 | 
			
		||||
 | 
			
		||||
@@ -85,10 +85,12 @@ GLAPI void GLAPIENTRY fxMesaSetNearFar(GLfloat nearVal, GLfloat farVal);
 | 
			
		||||
 | 
			
		||||
GLAPI void GLAPIENTRY fxMesaUpdateScreenSize(fxMesaContext ctx);
 | 
			
		||||
 | 
			
		||||
GLAPI int GLAPIENTRY fxQueryHardware(void);
 | 
			
		||||
GLAPI GLboolean GLAPIENTRY fxQueryHardware(void);
 | 
			
		||||
 | 
			
		||||
GLAPI void GLAPIENTRY fxCloseHardware(void);
 | 
			
		||||
 | 
			
		||||
GLAPI void GLAPIENTRY fxGetScreenGeometry (GLint *w, GLint *h);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#if defined (__BEOS__)
 | 
			
		||||
#pragma export off
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id: ggimesa.h,v 1.3.6.1 2002/06/10 15:16:16 brianp Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library GGI bindings (GGIGL [giggle])
 | 
			
		||||
 * Version:  4.0
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1235
									
								
								include/GL/gl.h
									
									
									
									
									
								
							
							
						
						
									
										1235
									
								
								include/GL/gl.h
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2191
									
								
								include/GL/glext.h
									
									
									
									
									
								
							
							
						
						
									
										2191
									
								
								include/GL/glext.h
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,5 +1,3 @@
 | 
			
		||||
/* $Id: glu_mangle.h,v 1.3 2001/09/20 22:18:47 kschultz Exp $ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Mesa 3-D graphics library
 | 
			
		||||
 * Version:  3.0
 | 
			
		||||
@@ -21,25 +19,6 @@
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * $Log: glu_mangle.h,v $
 | 
			
		||||
 * Revision 1.3  2001/09/20 22:18:47  kschultz
 | 
			
		||||
 * add mangling for new entry points
 | 
			
		||||
 *
 | 
			
		||||
 * Revision 1.2  1999/09/10 02:08:19  gareth
 | 
			
		||||
 * Added GLU 1.3 tessellation (except winding rule code).
 | 
			
		||||
 *
 | 
			
		||||
 * Revision 1.1.1.1  1999/08/19 00:55:40  jtg
 | 
			
		||||
 * Imported sources
 | 
			
		||||
 *
 | 
			
		||||
 * Revision 3.1  1999/06/21 22:00:42  brianp
 | 
			
		||||
 * added #ifndef GLU_MANGLE_H stuff
 | 
			
		||||
 *
 | 
			
		||||
 * Revision 3.0  1998/02/20 05:04:45  brianp
 | 
			
		||||
 * initial rev
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef GLU_MANGLE_H
 | 
			
		||||
#define GLU_MANGLE_H
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -223,9 +223,11 @@ WGLAPI int   GLAPIENTRY SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR *);
 | 
			
		||||
 video resize subAPI, glutPostWindowRedisplay, glutKeyboardUpFunc,
 | 
			
		||||
 glutSpecialUpFunc, glutIgnoreKeyRepeat, glutSetKeyRepeat,
 | 
			
		||||
 glutJoystickFunc, glutForceJoystickFunc (NOT FINALIZED!).
 | 
			
		||||
 | 
			
		||||
 GLUT_API_VERSION=5  glutGetProcAddress (added by BrianP)
 | 
			
		||||
**/
 | 
			
		||||
#ifndef GLUT_API_VERSION  /* allow this to be overriden */
 | 
			
		||||
#define GLUT_API_VERSION		3
 | 
			
		||||
#define GLUT_API_VERSION		5
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@@ -348,7 +350,7 @@ WGLAPI int   GLAPIENTRY SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR *);
 | 
			
		||||
#define GLUT_NORMAL			0
 | 
			
		||||
#define GLUT_OVERLAY			1
 | 
			
		||||
 | 
			
		||||
#if defined(_WIN32)
 | 
			
		||||
#if defined(_WIN32) || defined (GLUT_IMPORT_LIB)
 | 
			
		||||
/* Stroke font constants (use these in GLUT program). */
 | 
			
		||||
#define GLUT_STROKE_ROMAN		((void*)0)
 | 
			
		||||
#define GLUT_STROKE_MONO_ROMAN		((void*)1)
 | 
			
		||||
@@ -661,6 +663,9 @@ GLUTAPI int GLUTAPIENTRY glutExtensionSupported(const char *name);
 | 
			
		||||
GLUTAPI int GLUTAPIENTRY glutGetModifiers(void);
 | 
			
		||||
GLUTAPI int GLUTAPIENTRY glutLayerGet(GLenum type);
 | 
			
		||||
#endif
 | 
			
		||||
#if (GLUT_API_VERSION >= 5)
 | 
			
		||||
GLUTAPI void * GLUTAPIENTRY glutGetProcAddress(const char *procName);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/* GLUT font sub-API */
 | 
			
		||||
GLUTAPI void GLUTAPIENTRY glutBitmapCharacter(void *font, int character);
 | 
			
		||||
 
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user