14c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#ifndef NVC0_3D_XML
24c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_XML
34c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
44c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller/* Autogenerated file, DO NOT EDIT manually!
54c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
64c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerThis file was generated by the rules-ng-ng headergen tool in this git repository:
74c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerhttp://0x04.net/cgit/index.cgi/rules-ng-ng
84c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillergit clone git://0x04.net/rules-ng-ng
94c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerThe rules-ng-ng source files this header was generated from are:
11370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller- nvc0_3d.xml    (  30827 bytes, from 2011-01-13 18:23:07)
122bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller- copyright.xml  (   6452 bytes, from 2010-11-25 23:28:20)
132bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller- nv_defs.xml    (   4437 bytes, from 2010-07-06 07:43:58)
14b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller- nv_3ddefs.xml  (  16394 bytes, from 2010-12-17 15:10:40)
15b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller- nv_object.xml  (  11898 bytes, from 2010-12-23 14:14:20)
162bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller- nvchipsets.xml (   3074 bytes, from 2010-11-07 00:36:28)
17b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller- nv50_defs.xml  (   4487 bytes, from 2010-12-10 00:37:17)
184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
19b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph BumillerCopyright (C) 2006-2011 by the following authors:
204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Artur Huillet <arthur.huillet@free.fr> (ahuillet)
214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Ben Skeggs (darktama, darktama_)
224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- B. R. <koala_br@users.sourceforge.net> (koala_br)
234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Carlos Martin <carlosmn@users.sf.net> (carlosmn)
244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Dawid Gajownik <gajownik@users.sf.net> (gajownik)
264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Dmitry Baryshkov
274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- EdB <edb_@users.sf.net> (edb_)
294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Erik Waling <erikwailing@users.sf.net> (erikwaling)
302bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller- Francisco Jerez <currojerez@riseup.net> (curro)
314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- imirkin <imirkin@users.sf.net> (imirkin)
324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Laurent Carlier <lordheavym@gmail.com> (lordheavy)
354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Maarten Maathuis <madman2003@gmail.com> (stillunknown)
374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Marcin Kościelnicki <koriakin@0x04.net> (mwk, koriakin)
384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Mark Carey <mark.carey@gmail.com> (careym)
394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Peter Popov <ironpeter@users.sf.net> (ironpeter)
444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Richard Hughes <hughsient@users.sf.net> (hughsient)
454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Serge Martin
474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Simon Raffeiner
484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- sturmflut <sturmflut@users.sf.net> (sturmflut)
514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Sylvain Munaut <tnt@246tNt.com>
524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Victor Stinner <victor.stinner@haypocalc.com> (haypo)
534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Wladmir van der Laan <laanwj@gmail.com> (miathan6)
544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller- Younes Manton <younes.m@gmail.com> (ymanton)
554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerPermission is hereby granted, free of charge, to any person obtaining
574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillera copy of this software and associated documentation files (the
584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller"Software"), to deal in the Software without restriction, including
594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerwithout limitation the rights to use, copy, modify, merge, publish,
604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerdistribute, sublicense, and/or sell copies of the Software, and to
614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerpermit persons to whom the Software is furnished to do so, subject to
624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerthe following conditions:
634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerThe above copyright notice and this permission notice (including the
654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillernext paragraph) shall be included in all copies or substantial
664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumillerportions of the Software.
674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerIN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph BumillerWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller*/
764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_NOTIFY_ADDRESS_HIGH				0x00000104
804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_NOTIFY_ADDRESS_LOW				0x00000108
814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_NOTIFY						0x0000010c
824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SERIALIZE					0x00000110
844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
85843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller#define NVC0_3D_LINE_WIDTH_SEPARATE				0x0000020c
86843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller
8736158c199448ce038d9fe913d972f29a655aecabChristoph Bumiller#define NVC0_3D_FORCE_EARLY_FRAGMENT_TESTS			0x00000210
884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
89f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER					0x0000021c
90f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK0				0x00000001
91f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK1				0x00000002
92f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK2				0x00000004
93f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK4				0x00000010
94f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK8				0x00000100
95f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_MEM_BARRIER_UNK12				0x00001000
96f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller
97e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVC0_3D_CACHE_SPLIT					0x00000308
98e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVC1_3D_CACHE_SPLIT_16K_SHARED_48K_L1			0x00000001
99e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVE4_3D_CACHE_SPLIT_32K_SHARED_32K_L1			0x00000002
100e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVC0_3D_CACHE_SPLIT_48K_SHARED_16K_L1			0x00000003
101e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller
1024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE					0x00000320
1034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_PRIM__MASK				0x0000000f
1044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_PRIM__SHIFT				0
1054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_PRIM_ISOLINES				0x00000000
1064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_PRIM_TRIANGLES			0x00000001
1074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_PRIM_QUADS				0x00000002
1084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_SPACING__MASK				0x000000f0
1094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_SPACING__SHIFT			4
1104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_SPACING_EQUAL				0x00000000
1114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_SPACING_FRACTIONAL_ODD		0x00000010
1124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_SPACING_FRACTIONAL_EVEN		0x00000020
1134c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_CW					0x00000100
1144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_MODE_CONNECTED				0x00000200
1154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_OUTER(i0)			       (0x00000324 + 0x4*(i0))
1174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_OUTER__ESIZE				0x00000004
1184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_OUTER__LEN				0x00000004
1194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_INNER(i0)			       (0x00000334 + 0x4*(i0))
1214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_INNER__ESIZE				0x00000004
1224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TESS_LEVEL_INNER__LEN				0x00000002
1234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RASTERIZE_ENABLE				0x0000037c
1254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB(i0)					       (0x00000380 + 0x20*(i0))
1274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB__ESIZE					0x00000020
1284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB__LEN					0x00000004
1294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_BUFFER_ENABLE(i0)			       (0x00000380 + 0x20*(i0))
1314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_ADDRESS_HIGH(i0)			       (0x00000384 + 0x20*(i0))
1334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_ADDRESS_LOW(i0)			       (0x00000388 + 0x20*(i0))
1354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_BUFFER_SIZE(i0)			       (0x0000038c + 0x20*(i0))
1374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13814bd9d764802b5fedb652c791faafe4d13b65262Christoph Bumiller#define NVC0_3D_TFB_BUFFER_OFFSET(i0)			       (0x00000390 + 0x20*(i0))
1394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
14014bd9d764802b5fedb652c791faafe4d13b65262Christoph Bumiller#define NVC0_3D_TFB_STREAM(i0)				       (0x00000700 + 0x10*(i0))
14114bd9d764802b5fedb652c791faafe4d13b65262Christoph Bumiller#define NVC0_3D_TFB_STREAM__ESIZE				0x00000010
14214bd9d764802b5fedb652c791faafe4d13b65262Christoph Bumiller#define NVC0_3D_TFB_STREAM__LEN					0x00000004
1434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_VARYING_COUNT(i0)			       (0x00000704 + 0x10*(i0))
145f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_VARYING_COUNT__ESIZE			0x00000010
146f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_VARYING_COUNT__LEN				0x00000004
1474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_BUFFER_STRIDE(i0)			       (0x00000708 + 0x10*(i0))
149f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_BUFFER_STRIDE__ESIZE			0x00000010
150f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_BUFFER_STRIDE__LEN				0x00000004
1514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_ENABLE					0x00000744
1534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
154b2dcf880e8bcd61be59602f5a2d18c77a5fc60c1Christoph Bumiller#define NVC0_3D_SAMPLE_SHADING					0x00000754
155b2dcf880e8bcd61be59602f5a2d18c77a5fc60c1Christoph Bumiller#define NVC0_3D_SAMPLE_SHADING_MIN_SAMPLES__MASK		0x0000000f
156b2dcf880e8bcd61be59602f5a2d18c77a5fc60c1Christoph Bumiller#define NVC0_3D_SAMPLE_SHADING_MIN_SAMPLES__SHIFT		0
157b2dcf880e8bcd61be59602f5a2d18c77a5fc60c1Christoph Bumiller#define NVC0_3D_SAMPLE_SHADING_ENABLE				0x00000010
158b2dcf880e8bcd61be59602f5a2d18c77a5fc60c1Christoph Bumiller
1594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOCAL_BASE					0x0000077c
1604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1616d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_TEMP_ADDRESS_HIGH				0x00000790
1624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1636d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_TEMP_ADDRESS_LOW				0x00000794
1644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1656d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_TEMP_SIZE_HIGH					0x00000798
1664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1676d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_TEMP_SIZE_LOW					0x0000079c
1686d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1696d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_WARP_TEMP_ALLOC					0x000007a0
1706d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1716d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_WIDTH					0x000007c0
1726d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1736d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_HEIGHT					0x000007c4
1746d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1756d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_ADDRESS_HIGH				0x000007e8
1766d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1776d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_ADDRESS_LOW				0x000007ec
1786d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1796d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_LIMIT_HIGH				0x000007f0
1806d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
1816d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_LIMIT_LOW					0x000007f4
1824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1834fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT(i0)					       (0x00000800 + 0x40*(i0))
1844fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT__ESIZE					0x00000040
1854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT__LEN						0x00000008
1864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
187fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_ADDRESS_HIGH(i0)			       (0x00000800 + 0x40*(i0))
1884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
189fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_ADDRESS_LOW(i0)			       (0x00000804 + 0x40*(i0))
1904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
191fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_HORIZ(i0)				       (0x00000808 + 0x40*(i0))
1924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
193fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_VERT(i0)				       (0x0000080c + 0x40*(i0))
1944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
195fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_FORMAT(i0)				       (0x00000810 + 0x40*(i0))
1964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
197fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_TILE_MODE(i0)			       (0x00000814 + 0x40*(i0))
1984fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_X					0x00000001
1994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_Y__MASK				0x00000070
2004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_Y__SHIFT				4
2014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_Z__MASK				0x00000700
2024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_Z__SHIFT				8
2034fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_LINEAR				0x00001000
2044fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT_TILE_MODE_UNK16				0x00010000
2054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
206fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_ARRAY_MODE(i0)			       (0x00000818 + 0x40*(i0))
2074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_ARRAY_MODE_LAYERS__MASK			0x0000ffff
2084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_ARRAY_MODE_LAYERS__SHIFT			0
2094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_ARRAY_MODE_VOLUME				0x00010000
2104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
211fc798dc37dd8a39c253a436fa0c9dd2071f09270Christoph Bumiller#define NVC0_3D_RT_LAYER_STRIDE(i0)			       (0x0000081c + 0x40*(i0))
2124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2134fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT_BASE_LAYER(i0)			       (0x00000820 + 0x40*(i0))
2144fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller
2154fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_RT_UNK14(i0)				       (0x00000824 + 0x40*(i0))
2164fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller
2174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_X(i0)			       (0x00000a00 + 0x20*(i0))
2184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_X__ESIZE				0x00000020
2194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_X__LEN				0x00000010
2204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Y(i0)			       (0x00000a04 + 0x20*(i0))
2224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Y__ESIZE				0x00000020
2234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Y__LEN				0x00000010
2244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Z(i0)			       (0x00000a08 + 0x20*(i0))
2264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Z__ESIZE				0x00000020
2274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_SCALE_Z__LEN				0x00000010
2284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_X(i0)		       (0x00000a0c + 0x20*(i0))
2304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_X__ESIZE			0x00000020
2314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_X__LEN			0x00000010
2324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Y(i0)		       (0x00000a10 + 0x20*(i0))
2344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Y__ESIZE			0x00000020
2354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Y__LEN			0x00000010
2364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Z(i0)		       (0x00000a14 + 0x20*(i0))
2384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Z__ESIZE			0x00000020
2394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSLATE_Z__LEN			0x00000010
2404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ(i0)			       (0x00000c00 + 0x10*(i0))
2424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ__ESIZE				0x00000010
2434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ__LEN				0x00000010
2444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ_X__MASK				0x0000ffff
2454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ_X__SHIFT				0
2464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ_W__MASK				0xffff0000
2474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_HORIZ_W__SHIFT				16
2484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT(i0)			       (0x00000c04 + 0x10*(i0))
2504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT__ESIZE				0x00000010
2514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT__LEN				0x00000010
2524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT_Y__MASK				0x0000ffff
2534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT_Y__SHIFT				0
2544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT_H__MASK				0xffff0000
2554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_VERT_H__SHIFT				16
2564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_NEAR(i0)			       (0x00000c08 + 0x10*(i0))
2584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_NEAR__ESIZE				0x00000010
2594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_NEAR__LEN				0x00000010
2604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_FAR(i0)			       (0x00000c0c + 0x10*(i0))
2624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_FAR__ESIZE				0x00000010
2634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_RANGE_FAR__LEN				0x00000010
2644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
26519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ(i0)			       (0x00000d00 + 0x8*(i0))
26619f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ__ESIZE				0x00000008
26719f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ__LEN				0x00000008
26819f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ_MIN__MASK			0x0000ffff
26919f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ_MIN__SHIFT			0
27019f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ_MAX__MASK			0xffff0000
27119f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_HORIZ_MAX__SHIFT			16
27219f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller
27319f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT(i0)			       (0x00000d04 + 0x8*(i0))
27419f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT__ESIZE				0x00000008
27519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT__LEN				0x00000008
27619f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT_MIN__MASK			0x0000ffff
27719f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT_MIN__SHIFT			0
27819f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT_MAX__MASK			0xffff0000
27919f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECT_VERT_MAX__SHIFT			16
2804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ(i0)			       (0x00000d40 + 0x8*(i0))
2824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ__ESIZE			0x00000008
2834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ__LEN			0x00000004
2844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ_X__MASK			0x0000ffff
2854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ_X__SHIFT			0
2864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ_W__MASK			0xffff0000
2874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_HORIZ_W__SHIFT			16
2884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
2894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT(i0)			       (0x00000d44 + 0x8*(i0))
2904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT__ESIZE			0x00000008
2914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT__LEN				0x00000004
2924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT_Y__MASK			0x0000ffff
2934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT_Y__SHIFT			0
2944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT_H__MASK			0xffff0000
2954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_REGION_VERT_H__SHIFT			16
2964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
297e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVC0_3D_CALL_LIMIT_LOG					0x00000d64
298e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller
299b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE					0x00000d68
300b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK00				0x00000001
301b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK01				0x00000002
302b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK02				0x00000004
303b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK03				0x00000008
304b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK04				0x00000010
305b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_EMITTED_PRIMITIVES		0x00000020
306b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK06				0x00000040
307b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK07				0x00000080
308b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK08				0x00000100
309b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK09				0x00000200
310b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_GENERATED_PRIMITIVES		0x00000400
311b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK0B				0x00000800
312b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK0C				0x00001000
313b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK0D				0x00002000
314b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK0E				0x00004000
315b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_ENABLE_UNK0F				0x00008000
316b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller
3174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BUFFER_FIRST				0x00000d74
3184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BUFFER_COUNT				0x00000d78
3204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_COLOR(i0)				       (0x00000d80 + 0x4*(i0))
3224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_COLOR__ESIZE				0x00000004
3234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_COLOR__LEN				0x00000004
3244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_DEPTH					0x00000d90
3264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_STENCIL					0x00000da0
3284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_SMOOTH_ENABLE				0x00000db4
3304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_OFFSET_POINT_ENABLE			0x00000dc0
3324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_OFFSET_LINE_ENABLE			0x00000dc4
3344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_OFFSET_FILL_ENABLE			0x00000dc8
3364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_PATCH_VERTICES					0x00000dcc
3384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
339601fb4b746ac498e69356fba0c17a1f6ce78df6cChristoph Bumiller#define NVC0_3D_WATCHDOG_TIMER					0x00000de4
340601fb4b746ac498e69356fba0c17a1f6ce78df6cChristoph Bumiller
3414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_WINDOW_OFFSET_X					0x00000df8
3424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_WINDOW_OFFSET_Y					0x00000dfc
3444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_ENABLE(i0)			       (0x00000e00 + 0x10*(i0))
3464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_ENABLE__ESIZE				0x00000010
3474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_ENABLE__LEN				0x00000010
3484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ(i0)			       (0x00000e04 + 0x10*(i0))
3504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ__ESIZE				0x00000010
3514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ__LEN				0x00000010
3524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ_MIN__MASK				0x0000ffff
3534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ_MIN__SHIFT			0
3544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ_MAX__MASK				0xffff0000
3554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_HORIZ_MAX__SHIFT			16
3564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT(i0)			       (0x00000e08 + 0x10*(i0))
3584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT__ESIZE				0x00000010
3594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT__LEN				0x00000010
3604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT_MIN__MASK				0x0000ffff
3614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT_MIN__SHIFT				0
3624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT_MAX__MASK				0xffff0000
3634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCISSOR_VERT_MAX__SHIFT				16
3644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_REF				0x00000f54
3664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_MASK				0x00000f58
3684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_MASK				0x00000f5c
3704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_RUNOUT_ADDRESS_HIGH			0x00000f84
3724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_RUNOUT_ADDRESS_LOW			0x00000f88
3744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3757b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller#define NVC0_3D_COLOR_MASK_COMMON				0x00000f90
3767b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller
3774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_BOUNDS(i0)			       (0x00000f9c + 0x4*(i0))
3784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_BOUNDS__ESIZE				0x00000004
3794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_BOUNDS__LEN				0x00000002
3804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
381003224bd970e9cb63b0d3d12e1a8f2f3b3a736e6Christoph Bumiller#define NVC0_3D_RT_SEPARATE_FRAG_DATA				0x00000fac
382003224bd970e9cb63b0d3d12e1a8f2f3b3a736e6Christoph Bumiller
3834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MSAA_MASK(i0)				       (0x00000fbc + 0x4*(i0))
3844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MSAA_MASK__ESIZE				0x00000004
3854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MSAA_MASK__LEN					0x00000004
3864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_ADDRESS_HIGH				0x00000fcc
3884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_ADDRESS_LOW				0x00000fd0
3904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ADDRESS_HIGH				0x00000fe0
3924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ADDRESS_LOW				0x00000fe4
3944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_FORMAT					0x00000fe8
3964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_TILE_MODE					0x00000fec
3984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
3994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_LAYER_STRIDE				0x00000ff0
4004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
4014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_HORIZ				0x00000ff4
4024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_HORIZ_W__MASK			0xffff0000
4034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_HORIZ_W__SHIFT			16
4044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_HORIZ_X__MASK			0x0000ffff
4054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_HORIZ_X__SHIFT			0
4064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
4074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_VERT				0x00000ff8
4084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_VERT_H__MASK			0xffff0000
4094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_VERT_H__SHIFT			16
4104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_VERT_Y__MASK			0x0000ffff
4114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SCREEN_SCISSOR_VERT_Y__SHIFT			0
4124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
41319f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLEAR_FLAGS					0x000010f8
41419f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLEAR_FLAGS_STENCIL_MASK			0x00000001
41519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLEAR_FLAGS_UNK4				0x00000010
41619f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLEAR_FLAGS_SCISSOR				0x00000100
41719f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLEAR_FLAGS_VIEWPORT				0x00001000
41819f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller
4192bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_VERTEX_ID					0x00001118
4202bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
4214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE					0x0000114c
4224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_ATTR__MASK			0x000000ff
4234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_ATTR__SHIFT			0
4244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_COMP__MASK			0x00000700
4254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_COMP__SHIFT			8
4264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_COMP__MIN			0x00000001
4274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_COMP__MAX			0x00000004
4284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_SIZE__MASK			0x00007000
4294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_SIZE__SHIFT			12
4304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_SIZE_8				0x00001000
4314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_SIZE_16				0x00002000
4324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_SIZE_32				0x00004000
4334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE__MASK			0x00070000
4344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE__SHIFT			16
4354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_SNORM			0x00010000
4364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_UNORM			0x00020000
4374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_SINT			0x00030000
4384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_UINT			0x00040000
4394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_USCALED			0x00050000
4404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_SSCALED			0x00060000
4414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DEFINE_TYPE_FLOAT			0x00070000
4424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
4434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DATA(i0)			       (0x00001150 + 0x4*(i0))
4444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DATA__ESIZE				0x00000004
4454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VTX_ATTR_DATA__LEN				0x00000004
4464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
4474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT(i0)		       (0x00001160 + 0x4*(i0))
4484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT__ESIZE			0x00000004
4494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT__LEN			0x00000020
4507e2827fad95071e04e382be0117c654445764c52Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_BUFFER__MASK		0x0000001f
4514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_BUFFER__SHIFT		0
4524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_CONST			0x00000040
4534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_OFFSET__MASK		0x001fff80
4544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_OFFSET__SHIFT		7
4554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE__MASK			0x07e00000
4564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE__SHIFT		21
4574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_32_32_32_32		0x00200000
4584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_32_32_32		0x00400000
4594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_16_16_16_16		0x00600000
4604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_32_32			0x00800000
4614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_16_16_16		0x00a00000
4624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_8_8_8_8		0x01400000
4634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_16_16			0x01e00000
4644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_32			0x02400000
4654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_8_8_8			0x02600000
4664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_8_8			0x03000000
4674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_16			0x03600000
4684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_8			0x03a00000
4697e2827fad95071e04e382be0117c654445764c52Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_SIZE_10_10_10_2		0x06000000
4707e2827fad95071e04e382be0117c654445764c52Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE__MASK			0x38000000
4714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE__SHIFT		27
4724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_SNORM			0x08000000
4734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_UNORM			0x10000000
4744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_SINT			0x18000000
4754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_UINT			0x20000000
4764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_USCALED		0x28000000
4774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_SSCALED		0x30000000
4784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_TYPE_FLOAT			0x38000000
4794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ATTRIB_FORMAT_BGRA			0x80000000
4804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
4814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL					0x0000121c
4824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_COUNT__MASK				0x0000000f
4834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_COUNT__SHIFT				0
4844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP0__MASK				0x00000070
4854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP0__SHIFT				4
4864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP1__MASK				0x00000380
4874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP1__SHIFT				7
4884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP2__MASK				0x00001c00
4894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP2__SHIFT				10
4904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP3__MASK				0x0000e000
4914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP3__SHIFT				13
4924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP4__MASK				0x00070000
4934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP4__SHIFT				16
4944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP5__MASK				0x00380000
4954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP5__SHIFT				19
4964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP6__MASK				0x01c00000
4974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP6__SHIFT				22
4984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP7__MASK				0x0e000000
4994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_RT_CONTROL_MAP7__SHIFT				25
5004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_HORIZ					0x00001228
5024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_VERT					0x0000122c
5044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ARRAY_MODE					0x00001230
5064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ARRAY_MODE_LAYERS__MASK			0x0000ffff
5074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ARRAY_MODE_LAYERS__SHIFT			0
5084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ARRAY_MODE_UNK				0x00010000
5094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LINKED_TSC					0x00001234
5114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
512370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_DRAW_TFB_BYTES					0x0000123c
513370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
5144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FP_RESULT_COUNT					0x00001298
5154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_ENABLE				0x000012cc
5174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_FILL_MODE					0x000012d0
5194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_FILL_MODE_POINT				0x00000001
5204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_FILL_MODE_WIREFRAME				0x00000002
5214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_FILL_MODE_SOLID				0x00000003
5224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SHADE_MODEL					0x000012d4
5244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SHADE_MODEL_FLAT				0x00001d00
5254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SHADE_MODEL_SMOOTH				0x00001d01
5264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_INDEPENDENT				0x000012e4
5284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_WRITE_ENABLE				0x000012e8
5304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_ENABLE				0x000012ec
5324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_SETUP				0x00001300
5344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_SETUP_OFFSET__MASK		0xc0000000
5354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_SETUP_OFFSET__SHIFT		30
5364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_SETUP_COUNT__MASK			0x3fffffff
5374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_SETUP_COUNT__SHIFT		0
5384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8					0x00001304
5404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I0__MASK				0x000000ff
5414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I0__SHIFT				0
5424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I1__MASK				0x0000ff00
5434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I1__SHIFT				8
5444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I2__MASK				0x00ff0000
5454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I2__SHIFT				16
5464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I3__MASK				0xff000000
5474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U8_I3__SHIFT				24
5484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_CULL_MODE					0x00001308
5504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_CULL_MODE_NONE				0x00000001
5514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_CULL_MODE_FRONT				0x00000002
5524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_D3D_CULL_MODE_BACK				0x00000003
5534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC					0x0000130c
5554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_NEVER				0x00000200
5564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_LESS				0x00000201
5574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_EQUAL				0x00000202
5584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_LEQUAL				0x00000203
5594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_GREATER				0x00000204
5604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_NOTEQUAL			0x00000205
5614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_GEQUAL				0x00000206
5624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_TEST_FUNC_ALWAYS				0x00000207
5634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_REF					0x00001310
5654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC					0x00001314
5674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_NEVER				0x00000200
5684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_LESS				0x00000201
5694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_EQUAL				0x00000202
5704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_LEQUAL				0x00000203
5714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_GREATER				0x00000204
5724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_NOTEQUAL			0x00000205
5734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_GEQUAL				0x00000206
5744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ALPHA_TEST_FUNC_ALWAYS				0x00000207
5754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
576370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_DRAW_TFB_STRIDE					0x00001318
577370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_DRAW_TFB_STRIDE__MIN				0x00000001
578370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_DRAW_TFB_STRIDE__MAX				0x00000fff
579370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
5804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_COLOR(i0)				       (0x0000131c + 0x4*(i0))
5814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_COLOR__ESIZE				0x00000004
5824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_COLOR__LEN				0x00000004
5834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_FLUSH					0x00001330
585b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TSC_FLUSH_SPECIFIC				0x00000001
586b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TSC_FLUSH_ENTRY__MASK				0x03fffff0
587b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TSC_FLUSH_ENTRY__SHIFT				4
5884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TIC_FLUSH					0x00001334
590b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TIC_FLUSH_SPECIFIC				0x00000001
591b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TIC_FLUSH_ENTRY__MASK				0x03fffff0
592b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_TIC_FLUSH_ENTRY__SHIFT				4
5934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_CACHE_CTL					0x00001338
5954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_CACHE_CTL_UNK1__MASK			0x00000030
5964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_CACHE_CTL_UNK1__SHIFT			4
5974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
5987b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller#define NVC0_3D_BLEND_SEPARATE_ALPHA				0x0000133c
5997b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller
6004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB				0x00001340
6014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB_FUNC_ADD			0x00008006
6024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB_MIN				0x00008007
6034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB_MAX				0x00008008
6044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB_FUNC_SUBTRACT		0x0000800a
6054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT	0x0000800b
6064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_FUNC_SRC_RGB				0x00001344
6084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_FUNC_DST_RGB				0x00001348
6104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA				0x0000134c
6124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA_FUNC_ADD			0x00008006
6134c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA_MIN			0x00008007
6144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA_MAX			0x00008008
6154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT		0x0000800a
6164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT	0x0000800b
6174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_FUNC_SRC_ALPHA				0x00001350
6194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_FUNC_DST_ALPHA				0x00001358
6214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6227b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller#define NVC0_3D_BLEND_ENABLE_COMMON				0x0000135c
6237b4e478496cf45f527f72c39d72efe2e94fe2386Christoph Bumiller
6244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_ENABLE(i0)			       (0x00001360 + 0x4*(i0))
6254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_ENABLE__ESIZE				0x00000004
6264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BLEND_ENABLE__LEN				0x00000008
6274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
628293a8d1b600cd5bd89b3c4c0b6c2bb245d9bd80fChristoph Bumiller#define NVC0_3D_STENCIL_ENABLE					0x00001380
6294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL				0x00001384
6314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_ZERO			0x00000000
6324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_INVERT			0x0000150a
6334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_KEEP			0x00001e00
6344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_REPLACE			0x00001e01
6354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_INCR			0x00001e02
6364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_DECR			0x00001e03
6374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_INCR_WRAP			0x00008507
6384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_FAIL_DECR_WRAP			0x00008508
6394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL				0x00001388
6414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_ZERO			0x00000000
6424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_INVERT			0x0000150a
6434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_KEEP			0x00001e00
6444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_REPLACE			0x00001e01
6454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_INCR			0x00001e02
6464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_DECR			0x00001e03
6474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP		0x00008507
6484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP		0x00008508
6494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS				0x0000138c
6514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_ZERO			0x00000000
6524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_INVERT			0x0000150a
6534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_KEEP			0x00001e00
6544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_REPLACE			0x00001e01
6554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_INCR			0x00001e02
6564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_DECR			0x00001e03
6574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_INCR_WRAP		0x00008507
6584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_OP_ZPASS_DECR_WRAP		0x00008508
6594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC				0x00001390
6614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_NEVER			0x00000200
6624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_LESS			0x00000201
6634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_EQUAL			0x00000202
6644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_LEQUAL			0x00000203
6654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_GREATER			0x00000204
6664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL		0x00000205
6674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_GEQUAL			0x00000206
6684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_FUNC_ALWAYS			0x00000207
6694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_REF				0x00001394
6714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
672293a8d1b600cd5bd89b3c4c0b6c2bb245d9bd80fChristoph Bumiller#define NVC0_3D_STENCIL_FRONT_FUNC_MASK				0x00001398
6734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
674293a8d1b600cd5bd89b3c4c0b6c2bb245d9bd80fChristoph Bumiller#define NVC0_3D_STENCIL_FRONT_MASK				0x0000139c
6754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
676370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_DRAW_TFB_BASE					0x000013a4
677370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
6784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN				0x000013a8
6794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_0				0x00000001
6804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_1				0x00000010
6814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_2				0x00000100
6824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_3				0x00001000
6834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_4				0x00010000
6844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_5				0x00100000
6854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_6				0x01000000
6864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAG_COLOR_CLAMP_EN_7				0x10000000
6874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
688370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_SCREEN_Y_CONTROL				0x000013ac
689370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_SCREEN_Y_CONTROL_Y_NEGATE			0x00000001
690370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_SCREEN_Y_CONTROL_TRIANGLE_RAST_FLIP		0x00000010
6914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
692843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller#define NVC0_3D_LINE_WIDTH_SMOOTH				0x000013b0
693843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller
694843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller#define NVC0_3D_LINE_WIDTH_ALIASED				0x000013b4
6954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
6964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_GP_VERTEX_OUTPUT_COUNT				0x00001420
6974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_GP_VERTEX_OUTPUT_COUNT__MIN			0x00000001
6984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_GP_VERTEX_OUTPUT_COUNT__MAX			0x00000400
6994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
700370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FLUSH				0x0000142c
7014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_BASE					0x00001434
7034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_INSTANCE_BASE				0x00001438
7054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CODE_CB_FLUSH					0x00001440
7074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_HEIGHT					0x00001504
7094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_HEIGHT__MAX				0x00002000
7104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
71119f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_HORIZ				0x00001508
71219f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_HORIZ_LOW__MASK		0x0000ffff
71319f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_HORIZ_LOW__SHIFT		0
71419f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_HORIZ_HIGH__MASK		0xffff0000
71519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_HORIZ_HIGH__SHIFT		16
71619f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller
71719f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_VERT				0x0000150c
71819f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_VERT_LOW__MASK			0x0000ffff
71919f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_VERT_LOW__SHIFT		0
72019f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_VERT_HIGH__MASK		0xffff0000
72119f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL_RECT_VERT_HIGH__SHIFT		16
72219f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller
72373ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE				0x00001510
72473ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_0				0x00000001
72573ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_1				0x00000002
72673ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_2				0x00000004
72773ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_3				0x00000008
72873ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_4				0x00000010
72973ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_5				0x00000020
73073ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_6				0x00000040
73173ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_ENABLE_7				0x00000080
7324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SAMPLECNT_ENABLE				0x00001514
7344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POINT_SIZE					0x00001518
7364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
737e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVC0_3D_ZCULL_STATCTRS_ENABLE				0x0000151c
738e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller
7394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POINT_SPRITE_ENABLE				0x00001520
7404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
741b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET					0x00001530
742b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_SAMPLECNT				0x00000001
743b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK02				0x00000002
744b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK03				0x00000003
745b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK04				0x00000004
746b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_EMITTED_PRIMITIVES		0x00000010
747b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK11				0x00000011
748b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK12				0x00000012
749b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK13				0x00000013
750b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK15				0x00000015
751b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK16				0x00000016
752b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK17				0x00000017
753b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK18				0x00000018
754b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK1A				0x0000001a
755b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK1B				0x0000001b
756b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK1C				0x0000001c
757b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK1D				0x0000001d
758b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_UNK1E				0x0000001e
759b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_COUNTER_RESET_GENERATED_PRIMITIVES		0x0000001f
7604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
761370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_MULTISAMPLE_ENABLE				0x00001534
7624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_ZETA_ENABLE					0x00001538
7644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MULTISAMPLE_CTRL				0x0000153c
7664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MULTISAMPLE_CTRL_ALPHA_TO_COVERAGE		0x00000001
7674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MULTISAMPLE_CTRL_ALPHA_TO_ONE			0x00000010
7684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_ADDRESS_HIGH				0x00001550
7704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_ADDRESS_LOW				0x00001554
7724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE					0x00001558
7744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE_NEVER					0x00000000
7754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE_ALWAYS				0x00000001
7764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE_RES_NON_ZERO				0x00000002
7774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE_EQUAL					0x00000003
7784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COND_MODE_NOT_EQUAL				0x00000004
7794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_ADDRESS_HIGH				0x0000155c
7814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_ADDRESS_LOW					0x00001560
7834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_ADDRESS_LOW__ALIGN				0x00000020
7844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_LIMIT					0x00001564
7864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TSC_LIMIT__MAX					0x00001fff
7874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_OFFSET_FACTOR				0x0000156c
7894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LINE_SMOOTH_ENABLE				0x00001570
7914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TIC_ADDRESS_HIGH				0x00001574
7934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TIC_ADDRESS_LOW					0x00001578
7954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TIC_LIMIT					0x0000157c
7974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
7986d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_REGION					0x00001590
7996d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
8004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_TWO_SIDE_ENABLE				0x00001594
8014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL				0x00001598
8034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_ZERO			0x00000000
8044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_INVERT			0x0000150a
8054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_KEEP			0x00001e00
8064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_REPLACE			0x00001e01
8074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_INCR			0x00001e02
8084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_DECR			0x00001e03
8094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_INCR_WRAP			0x00008507
8104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_FAIL_DECR_WRAP			0x00008508
8114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL				0x0000159c
8134c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_ZERO			0x00000000
8144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_INVERT			0x0000150a
8154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_KEEP			0x00001e00
8164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_REPLACE			0x00001e01
8174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_INCR			0x00001e02
8184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_DECR			0x00001e03
8194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_INCR_WRAP			0x00008507
8204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZFAIL_DECR_WRAP			0x00008508
8214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS				0x000015a0
8234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_ZERO			0x00000000
8244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_INVERT			0x0000150a
8254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_KEEP			0x00001e00
8264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_REPLACE			0x00001e01
8274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_INCR			0x00001e02
8284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_DECR			0x00001e03
8294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_INCR_WRAP			0x00008507
8304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_OP_ZPASS_DECR_WRAP			0x00008508
8314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC				0x000015a4
8334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_NEVER			0x00000200
8344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_LESS			0x00000201
8354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_EQUAL			0x00000202
8364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_LEQUAL			0x00000203
8374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_GREATER			0x00000204
8384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_NOTEQUAL			0x00000205
8394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_GEQUAL			0x00000206
8404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STENCIL_BACK_FUNC_FUNC_ALWAYS			0x00000207
8414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
842370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_CSAA_ENABLE					0x000015b4
8434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRAMEBUFFER_SRGB				0x000015b8
8454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_OFFSET_UNITS				0x000015bc
8474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8484fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_LAYER						0x000015cc
8494fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_LAYER_IDX__MASK					0x0000ffff
8504fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_LAYER_IDX__SHIFT				0
8514fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_LAYER_USE_GP					0x00010000
8524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE				0x000015d0
854cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS1				0x00000000
855cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS2				0x00000001
856cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS4				0x00000002
857cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS8				0x00000003
858cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS8_ALT			0x00000004
859cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS2_ALT			0x00000005
860cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_UNK6				0x00000006
861cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS4_CS4			0x00000008
862cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS4_CS12			0x00000009
863cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS8_CS8			0x0000000a
864cad17554c4b121c03e188dd0281718a52d603a15Christoph Bumiller#define NVC0_3D_MULTISAMPLE_MODE_MS8_CS24			0x0000000b
8654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D				0x000015d4
8674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE__MASK		0x0fffffff
8684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE__SHIFT		0
8694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_POINTS		0x00000001
8704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINES		0x00000002
8714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINE_STRIP		0x00000003
8724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLES		0x00000004
8734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLE_STRIP	0x00000005
8744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINES_ADJACENCY	0x0000000a
8754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_LINE_STRIP_ADJACENCY	0x0000000b
8764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLES_ADJACENCY	0x0000000c
8774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_PRIMITIVE_TRIANGLE_STRIP_ADJACENCY	0x0000000d
8784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_D3D_INSTANCE_NEXT			0x10000000
8794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_D3D					0x000015d8
8814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_D3D_UNK0				0x00000001
8824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_D3D_UNK1				0x00000002
8834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8846d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_EDGEFLAG					0x000015e4
8854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U32					0x000015e8
8874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_SETUP				0x000015ec
8894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_SETUP_OFFSET__MASK		0xc0000000
8904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_SETUP_OFFSET__SHIFT		30
8914c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_SETUP_COUNT__MASK		0x3fffffff
8924c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_SETUP_COUNT__SHIFT		0
8934c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
8944c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16					0x000015f0
8954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_I0__MASK				0x0000ffff
8964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_I0__SHIFT			0
8974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_I1__MASK				0xffff0000
8984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VB_ELEMENT_U16_I1__SHIFT			16
8994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BASE_HIGH				0x000015f4
9014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BASE_LOW					0x000015f8
9034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9046d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_WINDOW_OFFSET_X				0x000015fc
9056d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
9066d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_WINDOW_OFFSET_Y				0x00001600
9076d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
9084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE				0x00001604
909a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_COORD_ORIGIN__MASK		0x00000004
910a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_COORD_ORIGIN__SHIFT		2
911a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_COORD_ORIGIN_LOWER_LEFT	0x00000000
912a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_COORD_ORIGIN_UPPER_LEFT	0x00000004
913a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_ENABLE__MASK		0x000007f8
914a287a758c6567405a7ea10df21e586d1e2ff08ecChristoph Bumiller#define NVC0_3D_POINT_COORD_REPLACE_ENABLE__SHIFT		3
9154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CODE_ADDRESS_HIGH				0x00001608
9174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CODE_ADDRESS_LOW				0x0000160c
9194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_GL					0x00001614
9214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_GL_UNK0				0x00000001
9224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_END_GL_UNK1				0x00000002
9234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL					0x00001618
9254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE__MASK			0x0fffffff
9264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE__SHIFT		0
9274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_POINTS		0x00000000
9284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINES			0x00000001
9294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_LOOP		0x00000002
9304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_STRIP		0x00000003
9314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLES		0x00000004
9324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_STRIP	0x00000005
9334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_FAN		0x00000006
9344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_QUADS			0x00000007
9354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_QUAD_STRIP		0x00000008
9364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_POLYGON		0x00000009
9374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINES_ADJACENCY	0x0000000a
9384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_LINE_STRIP_ADJACENCY	0x0000000b
9394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLES_ADJACENCY	0x0000000c
9404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_TRIANGLE_STRIP_ADJACENCY	0x0000000d
9414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_PRIMITIVE_PATCHES		0x0000000e
942a4742c6a07179f01eebfc486e6cd21be05d9c8aeChristoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_INSTANCE_NEXT			0x04000000
943a4742c6a07179f01eebfc486e6cd21be05d9c8aeChristoph Bumiller#define NVC0_3D_VERTEX_BEGIN_GL_INSTANCE_CONT			0x08000000
9444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9457b6881932a71b36dd47f63200c9dbee8e2b9af4fChristoph Bumiller#define NVC0_3D_VERTEX_ID_REPLACE				0x0000161c
9467b6881932a71b36dd47f63200c9dbee8e2b9af4fChristoph Bumiller#define NVC0_3D_VERTEX_ID_REPLACE_ENABLE			0x00000001
9477b6881932a71b36dd47f63200c9dbee8e2b9af4fChristoph Bumiller#define NVC0_3D_VERTEX_ID_REPLACE_SOURCE__MASK			0x00000ff0
9487b6881932a71b36dd47f63200c9dbee8e2b9af4fChristoph Bumiller#define NVC0_3D_VERTEX_ID_REPLACE_SOURCE__SHIFT			4
9497b6881932a71b36dd47f63200c9dbee8e2b9af4fChristoph Bumiller
9504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_DATA					0x00001640
9514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_PRIM_RESTART_ENABLE				0x00001644
9534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_PRIM_RESTART_INDEX				0x00001648
9554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_GP_BUILTIN_ATTR_EN				0x0000164c
9574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_GP_BUILTIN_ATTR_EN_VERTEX_ID			0x00000001
9584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_GP_BUILTIN_ATTR_EN_INSTANCE_ID		0x00000010
9594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_GP_BUILTIN_ATTR_EN_PRIMITIVE_ID		0x00000100
9604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_GP_BUILTIN_ATTR_EN_UNK12			0x00001000
9614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POINT_SMOOTH_ENABLE				0x00001658
9634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
964370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_POINT_RASTER_RULES				0x0000165c
965370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_POINT_RASTER_RULES_OGL				0x00000000
966370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_POINT_RASTER_RULES_D3D				0x00000001
967370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
9684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_MISC					0x00001664
9694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_MISC_SEAMLESS_CUBE_MAP			0x00000004
9704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LINE_STIPPLE_ENABLE				0x0000166c
9724c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9734c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LINE_STIPPLE_PATTERN				0x00001680
9744c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9754c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_PROVOKING_VERTEX_LAST				0x00001684
9764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_TWO_SIDE_ENABLE				0x00001688
9784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_STIPPLE_ENABLE				0x0000168c
9804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_STIPPLE_PATTERN(i0)		       (0x00001700 + 0x4*(i0))
9824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_STIPPLE_PATTERN__ESIZE			0x00000004
9834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_POLYGON_STIPPLE_PATTERN__LEN			0x00000020
9844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
9854fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller#define NVC0_3D_ZETA_BASE_LAYER					0x0000179c
9864fae7da9a3a3849ca08ffc6fcbdccc6a9c065ad2Christoph Bumiller
9870abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_ADDRESS_HIGH			0x000017bc
9880abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller
9890abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_ADDRESS_LOW			0x000017c0
9900abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller
9910abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_SIZE				0x000017c4
9920abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_SIZE_16K			0x00000001
9930abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_SIZE_32K			0x00000002
9940abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller#define NVC0_3D_VERTEX_QUARANTINE_SIZE_64K			0x00000003
9950abaaac87238c7b9ffd4dc4aacfd30f24da64a41Christoph Bumiller
9964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STRMOUT_UNK1780(i0)			       (0x00001780 + 0x4*(i0))
9974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STRMOUT_UNK1780__ESIZE				0x00000004
9984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_STRMOUT_UNK1780__LEN				0x00000004
9994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_UNK17BC_ADDRESS_HIGH				0x000017bc
10014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_UNK17BC_ADDRESS_LOW				0x000017c0
10034c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10044c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_UNK17BC_LIMIT					0x000017c4
10054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10062bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_ARRAY_START_HIGH				0x000017c8
10072bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10082bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_ARRAY_START_LOW				0x000017cc
10092bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10102bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_ARRAY_LIMIT_HIGH				0x000017d0
10112bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10122bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_ARRAY_LIMIT_LOW				0x000017d4
10132bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10142bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_LOG2_SIZE					0x000017d8
10152bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10162bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_BATCH_FIRST				0x000017dc
10172bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
10182bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_INDEX_BATCH_COUNT				0x000017e0
10192bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
1020b3fa0d311e553ec815d58e58a30aa8b3927e4afdChristoph Bumiller#define NVC0_3D_POLYGON_OFFSET_CLAMP				0x0000187c
1021b3fa0d311e553ec815d58e58a30aa8b3927e4afdChristoph Bumiller
10224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE(i0)		       (0x00001880 + 0x4*(i0))
10234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE__ESIZE		0x00000004
10244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_PER_INSTANCE__LEN			0x00000020
10254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VP_POINT_SIZE_EN				0x00001910
10274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CULL_FACE_ENABLE				0x00001918
10294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRONT_FACE					0x0000191c
10314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRONT_FACE_CW					0x00000900
10324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FRONT_FACE_CCW					0x00000901
10334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CULL_FACE					0x00001920
10354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CULL_FACE_FRONT					0x00000404
10364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CULL_FACE_BACK					0x00000405
10374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CULL_FACE_FRONT_AND_BACK			0x00000408
10384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1039843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller#define NVC0_3D_LINE_LAST_PIXEL					0x00001924
1040843d5391c3b7b80ff2087ce7e6440417aab623ccChristoph Bumiller
10414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEWPORT_TRANSFORM_EN				0x0000192c
10424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
10434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL				0x0000193c
10444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK0			0x00000001
1045e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1__MASK		0x00000006
1046e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1__SHIFT		1
1047e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1_UNK0			0x00000000
1048e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1_UNK1			0x00000002
1049e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1_UNK2			0x00000004
1050e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_NEAR		0x00000008
1051e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_FAR		0x00000010
10524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK7			0x00000080
10534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK10			0x00000400
10544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK11			0x00000800
1055e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK12__MASK		0x00003000
1056e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK12__SHIFT		12
1057e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK0		0x00000000
1058e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK1		0x00001000
1059e7845e319679e3539274c37e9c16692a2dfe59feChristoph Bumiller#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK2		0x00002000
10604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
106173ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE				0x00001940
106273ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_0__MASK			0x00000001
106373ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_0__SHIFT			0
106473ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_0_CLIP			0x00000000
106573ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_0_CULL			0x00000001
106673ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_1__MASK			0x00000010
106773ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_1__SHIFT			4
106873ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_1_CLIP			0x00000000
106973ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_1_CULL			0x00000010
107073ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_2__MASK			0x00000100
107173ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_2__SHIFT			8
107273ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_2_CLIP			0x00000000
107373ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_2_CULL			0x00000100
107473ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_3__MASK			0x00001000
107573ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_3__SHIFT			12
107673ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_3_CLIP			0x00000000
107773ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_3_CULL			0x00001000
107873ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_4__MASK			0x00010000
107973ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_4__SHIFT			16
108073ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_4_CLIP			0x00000000
108173ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_4_CULL			0x00010000
108273ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_5__MASK			0x00100000
108373ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_5__SHIFT			20
108473ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_5_CLIP			0x00000000
108573ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_5_CULL			0x00100000
108673ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_6__MASK			0x01000000
108773ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_6__SHIFT			24
108873ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_6_CLIP			0x00000000
108973ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_6_CULL			0x01000000
109073ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_7__MASK			0x10000000
109173ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_7__SHIFT			28
109273ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_7_CLIP			0x00000000
109373ea0e7fd405af2866062492231c84580a306211Christoph Bumiller#define NVC0_3D_CLIP_DISTANCE_MODE_7_CULL			0x10000000
109473ea0e7fd405af2866062492231c84580a306211Christoph Bumiller
109519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECTS_EN					0x0000194c
10964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
109719f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECTS_MODE					0x00001950
109819f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECTS_MODE_INSIDE_ANY			0x00000000
109919f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECTS_MODE_OUTSIDE_ALL			0x00000001
110019f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIP_RECTS_MODE_NEVER				0x00000002
11014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11026d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_INVALIDATE				0x00001958
11036d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
11046d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_TEST_MASK					0x0000196c
11056d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_TEST_MASK_FAIL_GT_PASS_LT			0x00000001
11066d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller#define NVC0_3D_ZCULL_TEST_MASK_PASS_GT_FAIL_LT			0x00000010
11076d1cdec3ba151168bfc3aef222fba6265dfb41fbChristoph Bumiller
11084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FP_ZORDER_CTRL					0x0000196c
11094c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FP_ZORDER_CTRL_0				0x00000001
11104c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_FP_ZORDER_CTRL_1				0x00000010
11114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_ENABLE					0x0000197c
11134c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_WIDTH					0x00001980
11154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_WIDTH__MAX				0x00002000
11164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_WIDTH__ALIGN				0x00000040
11174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLIPID_ID					0x00001984
11194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_DEPTH_BOUNDS_EN					0x000019bc
11214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_ENABLE					0x000019c4
11234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP					0x000019c8
11254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_CLEAR					0x00001500
11264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_AND					0x00001501
11274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_AND_REVERSE				0x00001502
11284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_COPY					0x00001503
11294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_AND_INVERTED				0x00001504
11304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_NOOP					0x00001505
11314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_XOR					0x00001506
11324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_OR					0x00001507
11334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_NOR					0x00001508
11344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_EQUIV					0x00001509
11354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_INVERT					0x0000150a
11364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_OR_REVERSE				0x0000150b
11374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_COPY_INVERTED				0x0000150c
11384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_OR_INVERTED				0x0000150d
11394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_NAND					0x0000150e
11404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_LOGIC_OP_SET					0x0000150f
11414c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS					0x000019d0
11434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_Z					0x00000001
11444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_S					0x00000002
11454c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_R					0x00000004
11464c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_G					0x00000008
11474c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_B					0x00000010
11484c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_A					0x00000020
11494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_RT__MASK				0x000003c0
11504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_RT__SHIFT				6
11514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_LAYER__MASK			0x001ffc00
11524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CLEAR_BUFFERS_LAYER__SHIFT			10
11534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
115419f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller#define NVC0_3D_CLIPID_FILL					0x000019d4
115519f2272e94895cf241f6b05117535e008e07d0a7Christoph Bumiller
11564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK(i0)				       (0x00001a00 + 0x4*(i0))
11574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK__ESIZE				0x00000004
11584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK__LEN					0x00000008
11594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK_R					0x0000000f
11604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK_G					0x000000f0
11614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK_B					0x00000f00
11624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_COLOR_MASK_A					0x0000f000
11634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_QUERY_ADDRESS_HIGH				0x00001b00
11654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_QUERY_ADDRESS_LOW				0x00001b04
11674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_QUERY_SEQUENCE					0x00001b08
11694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_QUERY_GET					0x00001b0c
1171b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_MODE__MASK				0x00000003
1172b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_MODE__SHIFT				0
1173b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_MODE_WRITE_UNK0			0x00000000
1174b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_MODE_SYNC				0x00000001
1175b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_MODE_WRITE_UNK2			0x00000002
1176b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_FENCE					0x00000010
1177b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_STREAM__MASK				0x000000e0
1178b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_STREAM__SHIFT				5
1179b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_UNK8					0x00000100
1180b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_UNIT__MASK				0x0000f000
1181b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_UNIT__SHIFT				12
1182b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SYNC_COND__MASK			0x00010000
1183b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SYNC_COND__SHIFT			16
1184b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SYNC_COND_NEQUAL			0x00000000
1185b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SYNC_COND_GREATER			0x00010000
1186b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_INTR					0x00100000
1187b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_UNK21					0x00200000
1188b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT__MASK				0x0f800000
1189b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT__SHIFT				23
1190b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT_ZERO				0x00000000
1191b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT_SAMPLECNT			0x01000000
1192b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT_EMITTED_PRIMS			0x05800000
1193b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SELECT_GENERATED_PRIMS		0x09000000
1194b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_QUERY_GET_SHORT					0x10000000
11954c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
11964c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH(i0)			       (0x00001c00 + 0x10*(i0))
11974c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH__ESIZE			0x00000010
11984c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH__LEN				0x00000020
11994c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH_STRIDE__MASK			0x00000fff
12004c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH_STRIDE__SHIFT		0
12014c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_FETCH_ENABLE			0x00001000
12024c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1203370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_HIGH(i0)		       (0x00001c04 + 0x10*(i0))
1204370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_HIGH__ESIZE			0x00000010
1205370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_HIGH__LEN			0x00000020
1206370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
1207370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_LOW(i0)		       (0x00001c08 + 0x10*(i0))
1208370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_LOW__ESIZE			0x00000010
1209370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_START_LOW__LEN			0x00000020
1210370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
12114c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_DIVISOR(i0)		       (0x00001c0c + 0x10*(i0))
12124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_DIVISOR__ESIZE			0x00000010
12134c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_VERTEX_ARRAY_DIVISOR__LEN			0x00000020
12144c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12154c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND(i0)				       (0x00001e00 + 0x20*(i0))
12164c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND__ESIZE					0x00000020
12174c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND__LEN					0x00000008
12184c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12194c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB(i0)			       (0x00001e04 + 0x20*(i0))
12204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB_FUNC_ADD			0x00008006
12214c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB_MIN				0x00008007
12224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB_MAX				0x00008008
12234c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB_FUNC_SUBTRACT		0x0000800a
12244c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT	0x0000800b
12254c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_FUNC_SRC_RGB(i0)			       (0x00001e08 + 0x20*(i0))
12274c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_FUNC_DST_RGB(i0)			       (0x00001e0c + 0x20*(i0))
12294c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12304c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA(i0)		       (0x00001e10 + 0x20*(i0))
12314c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA_FUNC_ADD			0x00008006
12324c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA_MIN			0x00008007
12334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA_MAX			0x00008008
12344c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA_FUNC_SUBTRACT		0x0000800a
12354c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT	0x0000800b
12364c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12374c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_FUNC_SRC_ALPHA(i0)		       (0x00001e14 + 0x20*(i0))
12384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12394c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_IBLEND_FUNC_DST_ALPHA(i0)		       (0x00001e18 + 0x20*(i0))
12404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1241370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_HIGH(i0)		       (0x00001f00 + 0x8*(i0))
1242370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_HIGH__ESIZE			0x00000008
1243370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_HIGH__LEN			0x00000020
1244370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
1245370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_LOW(i0)		       (0x00001f04 + 0x8*(i0))
1246370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_LOW__ESIZE			0x00000008
1247370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller#define NVC0_3D_VERTEX_ARRAY_LIMIT_LOW__LEN			0x00000020
1248370ae0bd614fcbf9c4c0424fb5c41f2cfbc17b3eChristoph Bumiller
12494c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP(i0)					       (0x00002000 + 0x40*(i0))
12504c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP__ESIZE					0x00000040
12514c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP__LEN						0x00000006
12524c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12534c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT(i0)				       (0x00002000 + 0x40*(i0))
12544c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_ENABLE				0x00000001
12554c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM__MASK				0x00000070
12564c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM__SHIFT			4
12574c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_VP_A				0x00000000
12584c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_VP_B				0x00000010
12594c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_TCP				0x00000020
12604c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_TEP				0x00000030
12614c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_GP				0x00000040
12624c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_SELECT_PROGRAM_FP				0x00000050
12634c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12644c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_START_ID(i0)				       (0x00002004 + 0x40*(i0))
12654c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12664c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_SP_GPR_ALLOC(i0)			       (0x0000200c + 0x40*(i0))
12674c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12684c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_LIMITS(i0)				       (0x00002200 + 0x10*(i0))
12694c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_LIMITS__ESIZE				0x00000010
12704c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TEX_LIMITS__LEN					0x00000005
12714c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
1272b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_FIRMWARE(i0)				       (0x00002300 + 0x4*(i0))
1273b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_FIRMWARE__ESIZE					0x00000004
1274b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller#define NVC0_3D_FIRMWARE__LEN					0x00000020
1275b3d8e1fb3bd9b6e5d7a9fc1e710a12547893c487Christoph Bumiller
12764c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_SIZE						0x00002380
12774c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12784c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_ADDRESS_HIGH					0x00002384
12794c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12804c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_ADDRESS_LOW					0x00002388
12814c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12824c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_POS						0x0000238c
12834c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12844c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_DATA(i0)				       (0x00002390 + 0x4*(i0))
12854c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_DATA__ESIZE					0x00000004
12864c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_DATA__LEN					0x00000010
12874c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
12884c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BIND_TSC(i0)				       (0x00002400 + 0x20*(i0))
12894c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BIND_TSC__ESIZE					0x00000020
12904c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_BIND_TSC__LEN					0x00000005
12912bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TSC_ACTIVE					0x00000001
12922bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TSC_SAMPLER__MASK				0x00000ff0
12932bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TSC_SAMPLER__SHIFT				4
12942bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TSC_TSC__MASK				0x01fff000
12952bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TSC_TSC__SHIFT				12
12962bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller
12972bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC(i0)				       (0x00002404 + 0x20*(i0))
12982bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC__ESIZE					0x00000020
12992bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC__LEN					0x00000005
13002bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC_ACTIVE					0x00000001
13012bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC_TEXTURE__MASK				0x000001fe
13022bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC_TEXTURE__SHIFT				1
13032bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC_TIC__MASK				0x7ffffe00
13042bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_BIND_TIC_TIC__SHIFT				9
13054c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13064c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_BIND(i0)				       (0x00002410 + 0x20*(i0))
13074c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_BIND__ESIZE					0x00000020
13084c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_CB_BIND__LEN					0x00000005
13092bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_CB_BIND_VALID					0x00000001
13102bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_CB_BIND_INDEX__MASK				0x000000f0
13112bb377ee02cc956cb3328b6f13320ac709987dd0Christoph Bumiller#define NVC0_3D_CB_BIND_INDEX__SHIFT				4
13124c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
131367d0c3dd792bc2d188f5f53b7e00eb120758d66cChristoph Bumiller#define NVC0_3D_VERT_COLOR_CLAMP_EN				0x00002600
131467d0c3dd792bc2d188f5f53b7e00eb120758d66cChristoph Bumiller
1315e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVE4_3D_TEX_CB_INDEX					0x00002608
1316e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVE4_3D_TEX_CB_INDEX__MIN				0x00000000
1317e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller#define NVE4_3D_TEX_CB_INDEX__MAX				0x00000010
1318e44089b2f79aa2dcaacf348911433d1e21235c0cChristoph Bumiller
1319f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_VARYING_LOCS(i0, i1)		       (0x00002800 + 0x80*(i0) + 0x4*(i1))
13204c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#define NVC0_3D_TFB_VARYING_LOCS__ESIZE				0x00000004
1321f8a7a0b6f30ff38b2743860cbc4caeab102c2c29Christoph Bumiller#define NVC0_3D_TFB_VARYING_LOCS__LEN				0x00000020
13224c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13237a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_VERTEX_ARRAY_PER_INSTANCE			0x00003800
1324edbfeed56f1ebd8517840ef48f8c87e24bb98157Christoph Bumiller
13257a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_VERTEX_ARRAY_SELECT			0x00003808
13264c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13277a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_BLEND_ENABLES				0x00003810
13284c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13297a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_FRONT			0x00003818
13307a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_FRONT_POINT			0x00001b00
13317a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_FRONT_LINE			0x00001b01
13327a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_FRONT_FILL			0x00001b02
13334c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13347a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_BACK				0x00003820
13357a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_BACK_POINT			0x00001b00
13367a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_BACK_LINE			0x00001b01
13377a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_POLYGON_MODE_BACK_FILL			0x00001b02
13384c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13397a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_GP_SELECT					0x00003828
13404c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13417a40ae4a31f3ab526706fdfda7631d54f094512aChristoph Bumiller#define NVC0_3D_MACRO_TEP_SELECT				0x00003830
13424c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13434c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller
13444c2247538394a313e1e90bfcd07c1ab9c7d41281Christoph Bumiller#endif /* NVC0_3D_XML */
1345