1bf215546Sopenharmony_ci#ifndef _HOME_SKEGGSB_GIT_ENVYTOOLS_RNNDB_NV30_40_3D_XML 2bf215546Sopenharmony_ci#define _HOME_SKEGGSB_GIT_ENVYTOOLS_RNNDB_NV30_40_3D_XML 3bf215546Sopenharmony_ci 4bf215546Sopenharmony_ci/* Autogenerated file, DO NOT EDIT manually! 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ciThis file was generated by the rules-ng-ng headergen tool in this git repository: 7bf215546Sopenharmony_cihttp://0x04.net/cgit/index.cgi/rules-ng-ng 8bf215546Sopenharmony_cigit clone git://0x04.net/rules-ng-ng 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ciThe rules-ng-ng source files this header was generated from are: 11bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nv30-40_3d.xml ( 32450 bytes, from 2012-02-10 02:41:48) 12bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/copyright.xml ( 6452 bytes, from 2011-06-30 00:27:55) 13bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nv_3ddefs.xml ( 16394 bytes, from 2011-06-30 00:27:55) 14bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nv_defs.xml ( 4437 bytes, from 2011-06-30 00:27:55) 15bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nv_object.xml ( 12672 bytes, from 2011-07-13 22:28:24) 16bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nvchipsets.xml ( 3617 bytes, from 2011-07-17 23:19:55) 17bf215546Sopenharmony_ci- /home/skeggsb/git/envytools/rnndb/nv50_defs.xml ( 5468 bytes, from 2011-07-08 05:22:51) 18bf215546Sopenharmony_ci 19bf215546Sopenharmony_ciCopyright (C) 2006-2012 by the following authors: 20bf215546Sopenharmony_ci- Artur Huillet <arthur.huillet@free.fr> (ahuillet) 21bf215546Sopenharmony_ci- Ben Skeggs (darktama, darktama_) 22bf215546Sopenharmony_ci- B. R. <koala_br@users.sourceforge.net> (koala_br) 23bf215546Sopenharmony_ci- Carlos Martin <carlosmn@users.sf.net> (carlosmn) 24bf215546Sopenharmony_ci- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr) 25bf215546Sopenharmony_ci- Dawid Gajownik <gajownik@users.sf.net> (gajownik) 26bf215546Sopenharmony_ci- Dmitry Baryshkov 27bf215546Sopenharmony_ci- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag) 28bf215546Sopenharmony_ci- EdB <edb_@users.sf.net> (edb_) 29bf215546Sopenharmony_ci- Erik Waling <erikwailing@users.sf.net> (erikwaling) 30bf215546Sopenharmony_ci- Francisco Jerez <currojerez@riseup.net> (curro) 31bf215546Sopenharmony_ci- imirkin <imirkin@users.sf.net> (imirkin) 32bf215546Sopenharmony_ci- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome) 33bf215546Sopenharmony_ci- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy) 34bf215546Sopenharmony_ci- Laurent Carlier <lordheavym@gmail.com> (lordheavy) 35bf215546Sopenharmony_ci- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1) 36bf215546Sopenharmony_ci- Maarten Maathuis <madman2003@gmail.com> (stillunknown) 37bf215546Sopenharmony_ci- Marcin Kościelnicki <koriakin@0x04.net> (mwk, koriakin) 38bf215546Sopenharmony_ci- Mark Carey <mark.carey@gmail.com> (careym) 39bf215546Sopenharmony_ci- Matthieu Castet <matthieu.castet@parrot.com> (mat-c) 40bf215546Sopenharmony_ci- nvidiaman <nvidiaman@users.sf.net> (nvidiaman) 41bf215546Sopenharmony_ci- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata) 42bf215546Sopenharmony_ci- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen) 43bf215546Sopenharmony_ci- Peter Popov <ironpeter@users.sf.net> (ironpeter) 44bf215546Sopenharmony_ci- Richard Hughes <hughsient@users.sf.net> (hughsient) 45bf215546Sopenharmony_ci- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar) 46bf215546Sopenharmony_ci- Serge Martin 47bf215546Sopenharmony_ci- Simon Raffeiner 48bf215546Sopenharmony_ci- Stephane Loeuillet <leroutier@users.sf.net> (leroutier) 49bf215546Sopenharmony_ci- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu) 50bf215546Sopenharmony_ci- sturmflut <sturmflut@users.sf.net> (sturmflut) 51bf215546Sopenharmony_ci- Sylvain Munaut <tnt@246tNt.com> 52bf215546Sopenharmony_ci- Victor Stinner <victor.stinner@haypocalc.com> (haypo) 53bf215546Sopenharmony_ci- Wladmir van der Laan <laanwj@gmail.com> (miathan6) 54bf215546Sopenharmony_ci- Younes Manton <younes.m@gmail.com> (ymanton) 55bf215546Sopenharmony_ci 56bf215546Sopenharmony_ciPermission is hereby granted, free of charge, to any person obtaining 57bf215546Sopenharmony_cia copy of this software and associated documentation files (the 58bf215546Sopenharmony_ci"Software"), to deal in the Software without restriction, including 59bf215546Sopenharmony_ciwithout limitation the rights to use, copy, modify, merge, publish, 60bf215546Sopenharmony_cidistribute, sublicense, and/or sell copies of the Software, and to 61bf215546Sopenharmony_cipermit persons to whom the Software is furnished to do so, subject to 62bf215546Sopenharmony_cithe following conditions: 63bf215546Sopenharmony_ci 64bf215546Sopenharmony_ciThe above copyright notice and this permission notice (including the 65bf215546Sopenharmony_cinext paragraph) shall be included in all copies or substantial 66bf215546Sopenharmony_ciportions of the Software. 67bf215546Sopenharmony_ci 68bf215546Sopenharmony_ciTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 69bf215546Sopenharmony_ciEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 70bf215546Sopenharmony_ciMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 71bf215546Sopenharmony_ciIN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE 72bf215546Sopenharmony_ciLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 73bf215546Sopenharmony_ciOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 74bf215546Sopenharmony_ciWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 75bf215546Sopenharmony_ci*/ 76bf215546Sopenharmony_ci 77bf215546Sopenharmony_ci 78bf215546Sopenharmony_ci 79bf215546Sopenharmony_ci#define NV30_3D_FLIP_SET_READ 0x00000120 80bf215546Sopenharmony_ci 81bf215546Sopenharmony_ci#define NV30_3D_FLIP_SET_WRITE 0x00000124 82bf215546Sopenharmony_ci 83bf215546Sopenharmony_ci#define NV30_3D_FLIP_MAX 0x00000128 84bf215546Sopenharmony_ci 85bf215546Sopenharmony_ci#define NV30_3D_FLIP_INCR_WRITE 0x0000012c 86bf215546Sopenharmony_ci 87bf215546Sopenharmony_ci#define NV30_3D_FLIP_WAIT 0x00000130 88bf215546Sopenharmony_ci 89bf215546Sopenharmony_ci#define NV30_3D_DMA_NOTIFY 0x00000180 90bf215546Sopenharmony_ci 91bf215546Sopenharmony_ci#define NV30_3D_DMA_TEXTURE0 0x00000184 92bf215546Sopenharmony_ci 93bf215546Sopenharmony_ci#define NV30_3D_DMA_TEXTURE1 0x00000188 94bf215546Sopenharmony_ci 95bf215546Sopenharmony_ci#define NV30_3D_DMA_COLOR1 0x0000018c 96bf215546Sopenharmony_ci 97bf215546Sopenharmony_ci#define NV30_3D_DMA_UNK190 0x00000190 98bf215546Sopenharmony_ci 99bf215546Sopenharmony_ci#define NV30_3D_DMA_COLOR0 0x00000194 100bf215546Sopenharmony_ci 101bf215546Sopenharmony_ci#define NV30_3D_DMA_ZETA 0x00000198 102bf215546Sopenharmony_ci 103bf215546Sopenharmony_ci#define NV30_3D_DMA_VTXBUF0 0x0000019c 104bf215546Sopenharmony_ci 105bf215546Sopenharmony_ci#define NV30_3D_DMA_VTXBUF1 0x000001a0 106bf215546Sopenharmony_ci 107bf215546Sopenharmony_ci#define NV30_3D_DMA_FENCE 0x000001a4 108bf215546Sopenharmony_ci 109bf215546Sopenharmony_ci#define NV30_3D_DMA_QUERY 0x000001a8 110bf215546Sopenharmony_ci 111bf215546Sopenharmony_ci#define NV30_3D_DMA_UNK1AC 0x000001ac 112bf215546Sopenharmony_ci 113bf215546Sopenharmony_ci#define NV30_3D_DMA_UNK1B0 0x000001b0 114bf215546Sopenharmony_ci 115bf215546Sopenharmony_ci#define NV40_3D_DMA_COLOR2 0x000001b4 116bf215546Sopenharmony_ci 117bf215546Sopenharmony_ci#define NV40_3D_DMA_COLOR3 0x000001b8 118bf215546Sopenharmony_ci 119bf215546Sopenharmony_ci#define NV30_3D_RT_HORIZ 0x00000200 120bf215546Sopenharmony_ci#define NV30_3D_RT_HORIZ_X__MASK 0x0000ffff 121bf215546Sopenharmony_ci#define NV30_3D_RT_HORIZ_X__SHIFT 0 122bf215546Sopenharmony_ci#define NV30_3D_RT_HORIZ_W__MASK 0xffff0000 123bf215546Sopenharmony_ci#define NV30_3D_RT_HORIZ_W__SHIFT 16 124bf215546Sopenharmony_ci 125bf215546Sopenharmony_ci#define NV30_3D_RT_VERT 0x00000204 126bf215546Sopenharmony_ci#define NV30_3D_RT_VERT_Y__MASK 0x0000ffff 127bf215546Sopenharmony_ci#define NV30_3D_RT_VERT_Y__SHIFT 0 128bf215546Sopenharmony_ci#define NV30_3D_RT_VERT_H__MASK 0xffff0000 129bf215546Sopenharmony_ci#define NV30_3D_RT_VERT_H__SHIFT 16 130bf215546Sopenharmony_ci 131bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT 0x00000208 132bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR__MASK 0x0000001f 133bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR__SHIFT 0 134bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_R5G6B5 0x00000003 135bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_X8R8G8B8 0x00000005 136bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_A8R8G8B8 0x00000008 137bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_B8 0x00000009 138bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_A16B16G16R16_FLOAT 0x0000000b 139bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_A32B32G32R32_FLOAT 0x0000000c 140bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_R32_FLOAT 0x0000000d 141bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_UNK0D 0x0000000d 142bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_X8B8G8R8 0x0000000f 143bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_COLOR_A8B8G8R8 0x00000010 144bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_ZETA__MASK 0x000000e0 145bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_ZETA__SHIFT 5 146bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_ZETA_Z16 0x00000020 147bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_ZETA_Z24S8 0x00000040 148bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_TYPE__MASK 0x00000f00 149bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_TYPE__SHIFT 8 150bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_TYPE_LINEAR 0x00000100 151bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_TYPE_SWIZZLED 0x00000200 152bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_LOG2_WIDTH__MASK 0x00ff0000 153bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_LOG2_WIDTH__SHIFT 16 154bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_LOG2_HEIGHT__MASK 0xff000000 155bf215546Sopenharmony_ci#define NV30_3D_RT_FORMAT_LOG2_HEIGHT__SHIFT 24 156bf215546Sopenharmony_ci 157bf215546Sopenharmony_ci#define NV30_3D_COLOR0_PITCH 0x0000020c 158bf215546Sopenharmony_ci#define NV30_3D_COLOR0_PITCH_COLOR0__MASK 0x0000ffff 159bf215546Sopenharmony_ci#define NV30_3D_COLOR0_PITCH_COLOR0__SHIFT 0 160bf215546Sopenharmony_ci#define NV30_3D_COLOR0_PITCH_ZETA__MASK 0xffff0000 161bf215546Sopenharmony_ci#define NV30_3D_COLOR0_PITCH_ZETA__SHIFT 16 162bf215546Sopenharmony_ci 163bf215546Sopenharmony_ci#define NV40_3D_COLOR0_PITCH 0x0000020c 164bf215546Sopenharmony_ci 165bf215546Sopenharmony_ci#define NV30_3D_COLOR0_OFFSET 0x00000210 166bf215546Sopenharmony_ci 167bf215546Sopenharmony_ci#define NV30_3D_ZETA_OFFSET 0x00000214 168bf215546Sopenharmony_ci 169bf215546Sopenharmony_ci#define NV30_3D_COLOR1_OFFSET 0x00000218 170bf215546Sopenharmony_ci 171bf215546Sopenharmony_ci#define NV30_3D_COLOR1_PITCH 0x0000021c 172bf215546Sopenharmony_ci 173bf215546Sopenharmony_ci#define NV30_3D_RT_ENABLE 0x00000220 174bf215546Sopenharmony_ci#define NV30_3D_RT_ENABLE_COLOR0 0x00000001 175bf215546Sopenharmony_ci#define NV30_3D_RT_ENABLE_COLOR1 0x00000002 176bf215546Sopenharmony_ci#define NV40_3D_RT_ENABLE_COLOR2 0x00000004 177bf215546Sopenharmony_ci#define NV40_3D_RT_ENABLE_COLOR3 0x00000008 178bf215546Sopenharmony_ci#define NV30_3D_RT_ENABLE_MRT 0x00000010 179bf215546Sopenharmony_ci 180bf215546Sopenharmony_ci#define NV40_3D_ZETA_PITCH 0x0000022c 181bf215546Sopenharmony_ci 182bf215546Sopenharmony_ci#define NV30_3D_HIERZ_PITCH 0x0000022c 183bf215546Sopenharmony_ci 184bf215546Sopenharmony_ci#define NV30_3D_HIERZ_OFFSET 0x00000230 185bf215546Sopenharmony_ci 186bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE 0x0000023c 187bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX0 0x00000001 188bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX1 0x00000002 189bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX2 0x00000004 190bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX3 0x00000008 191bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX4 0x00000010 192bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX5 0x00000020 193bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX6 0x00000040 194bf215546Sopenharmony_ci#define NV30_3D_TEX_UNITS_ENABLE_TX7 0x00000080 195bf215546Sopenharmony_ci 196bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX_ENABLE(i0) (0x00000240 + 0x4*(i0)) 197bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX_ENABLE__ESIZE 0x00000004 198bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX_ENABLE__LEN 0x00000008 199bf215546Sopenharmony_ci 200bf215546Sopenharmony_ci#define NV40_3D_COLOR2_PITCH 0x00000280 201bf215546Sopenharmony_ci 202bf215546Sopenharmony_ci#define NV40_3D_COLOR3_PITCH 0x00000284 203bf215546Sopenharmony_ci 204bf215546Sopenharmony_ci#define NV40_3D_COLOR2_OFFSET 0x00000288 205bf215546Sopenharmony_ci 206bf215546Sopenharmony_ci#define NV40_3D_COLOR3_OFFSET 0x0000028c 207bf215546Sopenharmony_ci 208bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TX_ORIGIN 0x000002b8 209bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TX_ORIGIN_X__MASK 0x0000ffff 210bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TX_ORIGIN_X__SHIFT 0 211bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TX_ORIGIN_Y__MASK 0xffff0000 212bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TX_ORIGIN_Y__SHIFT 16 213bf215546Sopenharmony_ci 214bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_MODE 0x000002bc 215bf215546Sopenharmony_ci 216bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ(i0) (0x000002c0 + 0x8*(i0)) 217bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ__ESIZE 0x00000008 218bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ__LEN 0x00000008 219bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ_L__MASK 0x0000ffff 220bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ_L__SHIFT 0 221bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ_R__MASK 0xffff0000 222bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_HORIZ_R__SHIFT 16 223bf215546Sopenharmony_ci 224bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT(i0) (0x000002c4 + 0x8*(i0)) 225bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT__ESIZE 0x00000008 226bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT__LEN 0x00000008 227bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT_T__MASK 0x0000ffff 228bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT_T__SHIFT 0 229bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT_D__MASK 0xffff0000 230bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_CLIP_VERT_D__SHIFT 16 231bf215546Sopenharmony_ci 232bf215546Sopenharmony_ci#define NV30_3D_DITHER_ENABLE 0x00000300 233bf215546Sopenharmony_ci 234bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_ENABLE 0x00000304 235bf215546Sopenharmony_ci 236bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC 0x00000308 237bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_NEVER 0x00000200 238bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_LESS 0x00000201 239bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_EQUAL 0x00000202 240bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_LEQUAL 0x00000203 241bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204 242bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205 243bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_GEQUAL 0x00000206 244bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_FUNC_ALWAYS 0x00000207 245bf215546Sopenharmony_ci 246bf215546Sopenharmony_ci#define NV30_3D_ALPHA_FUNC_REF 0x0000030c 247bf215546Sopenharmony_ci 248bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_ENABLE 0x00000310 249bf215546Sopenharmony_ci 250bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC 0x00000314 251bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB__MASK 0x0000ffff 252bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB__SHIFT 0 253bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ZERO 0x00000000 254bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE 0x00000001 255bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_SRC_COLOR 0x00000300 256bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR 0x00000301 257bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA 0x00000302 258bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA 0x00000303 259bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_DST_ALPHA 0x00000304 260bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA 0x00000305 261bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_DST_COLOR 0x00000306 262bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR 0x00000307 263bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE 0x00000308 264bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR 0x00008001 265bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002 266bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA 0x00008003 267bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004 268bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA__MASK 0xffff0000 269bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA__SHIFT 16 270bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ZERO 0x00000000 271bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE 0x00010000 272bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_SRC_COLOR 0x03000000 273bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000 274bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA 0x03020000 275bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000 276bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_DST_ALPHA 0x03040000 277bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000 278bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_DST_COLOR 0x03060000 279bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR 0x03070000 280bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE 0x03080000 281bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR 0x80010000 282bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000 283bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA 0x80030000 284bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000 285bf215546Sopenharmony_ci 286bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST 0x00000318 287bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB__MASK 0x0000ffff 288bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB__SHIFT 0 289bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ZERO 0x00000000 290bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE 0x00000001 291bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_SRC_COLOR 0x00000300 292bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR 0x00000301 293bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA 0x00000302 294bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA 0x00000303 295bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_DST_ALPHA 0x00000304 296bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA 0x00000305 297bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_DST_COLOR 0x00000306 298bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR 0x00000307 299bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE 0x00000308 300bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_CONSTANT_COLOR 0x00008001 301bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002 302bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA 0x00008003 303bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004 304bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA__MASK 0xffff0000 305bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA__SHIFT 16 306bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ZERO 0x00000000 307bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE 0x00010000 308bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_SRC_COLOR 0x03000000 309bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000 310bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA 0x03020000 311bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000 312bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_DST_ALPHA 0x03040000 313bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000 314bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_DST_COLOR 0x03060000 315bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR 0x03070000 316bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE 0x03080000 317bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR 0x80010000 318bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000 319bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA 0x80030000 320bf215546Sopenharmony_ci#define NV30_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000 321bf215546Sopenharmony_ci 322bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR 0x0000031c 323bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_B__MASK 0x000000ff 324bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_B__SHIFT 0 325bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_G__MASK 0x0000ff00 326bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_G__SHIFT 8 327bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_R__MASK 0x00ff0000 328bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_R__SHIFT 16 329bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_A__MASK 0xff000000 330bf215546Sopenharmony_ci#define NV30_3D_BLEND_COLOR_A__SHIFT 24 331bf215546Sopenharmony_ci 332bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION 0x00000320 333bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION_FUNC_ADD 0x00008006 334bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION_MIN 0x00008007 335bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION_MAX 0x00008008 336bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION_FUNC_SUBTRACT 0x0000800a 337bf215546Sopenharmony_ci#define NV30_3D_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT 0x0000800b 338bf215546Sopenharmony_ci 339bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION 0x00000320 340bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB__MASK 0x0000ffff 341bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB__SHIFT 0 342bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006 343bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB_MIN 0x00008007 344bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB_MAX 0x00008008 345bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB_FUNC_SUBTRACT 0x0000800a 346bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT 0x0000800b 347bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA__MASK 0xffff0000 348bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA__SHIFT 16 349bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA_FUNC_ADD 0x80060000 350bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA_MIN 0x80070000 351bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA_MAX 0x80080000 352bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT 0x800a0000 353bf215546Sopenharmony_ci#define NV40_3D_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT 0x800b0000 354bf215546Sopenharmony_ci 355bf215546Sopenharmony_ci#define NV30_3D_COLOR_MASK 0x00000324 356bf215546Sopenharmony_ci#define NV30_3D_COLOR_MASK_B 0x000000ff 357bf215546Sopenharmony_ci#define NV30_3D_COLOR_MASK_G 0x0000ff00 358bf215546Sopenharmony_ci#define NV30_3D_COLOR_MASK_R 0x00ff0000 359bf215546Sopenharmony_ci#define NV30_3D_COLOR_MASK_A 0xff000000 360bf215546Sopenharmony_ci 361bf215546Sopenharmony_ci#define NV30_3D_STENCIL(i0) (0x00000328 + 0x20*(i0)) 362bf215546Sopenharmony_ci#define NV30_3D_STENCIL__ESIZE 0x00000020 363bf215546Sopenharmony_ci#define NV30_3D_STENCIL__LEN 0x00000002 364bf215546Sopenharmony_ci 365bf215546Sopenharmony_ci#define NV30_3D_STENCIL_ENABLE(i0) (0x00000328 + 0x20*(i0)) 366bf215546Sopenharmony_ci 367bf215546Sopenharmony_ci#define NV30_3D_STENCIL_MASK(i0) (0x0000032c + 0x20*(i0)) 368bf215546Sopenharmony_ci 369bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC(i0) (0x00000330 + 0x20*(i0)) 370bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_NEVER 0x00000200 371bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_LESS 0x00000201 372bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_EQUAL 0x00000202 373bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_LEQUAL 0x00000203 374bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_GREATER 0x00000204 375bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205 376bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_GEQUAL 0x00000206 377bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_FUNC_ALWAYS 0x00000207 378bf215546Sopenharmony_ci 379bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_REF(i0) (0x00000334 + 0x20*(i0)) 380bf215546Sopenharmony_ci 381bf215546Sopenharmony_ci#define NV30_3D_STENCIL_FUNC_MASK(i0) (0x00000338 + 0x20*(i0)) 382bf215546Sopenharmony_ci 383bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL(i0) (0x0000033c + 0x20*(i0)) 384bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_ZERO 0x00000000 385bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_INVERT 0x0000150a 386bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_KEEP 0x00001e00 387bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_REPLACE 0x00001e01 388bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_INCR 0x00001e02 389bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_DECR 0x00001e03 390bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_INCR_WRAP 0x00008507 391bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_FAIL_DECR_WRAP 0x00008508 392bf215546Sopenharmony_ci 393bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL(i0) (0x00000340 + 0x20*(i0)) 394bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_ZERO 0x00000000 395bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_INVERT 0x0000150a 396bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_KEEP 0x00001e00 397bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_REPLACE 0x00001e01 398bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_INCR 0x00001e02 399bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_DECR 0x00001e03 400bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_INCR_WRAP 0x00008507 401bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZFAIL_DECR_WRAP 0x00008508 402bf215546Sopenharmony_ci 403bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS(i0) (0x00000344 + 0x20*(i0)) 404bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_ZERO 0x00000000 405bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_INVERT 0x0000150a 406bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_KEEP 0x00001e00 407bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_REPLACE 0x00001e01 408bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_INCR 0x00001e02 409bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_DECR 0x00001e03 410bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_INCR_WRAP 0x00008507 411bf215546Sopenharmony_ci#define NV30_3D_STENCIL_OP_ZPASS_DECR_WRAP 0x00008508 412bf215546Sopenharmony_ci 413bf215546Sopenharmony_ci#define NV30_3D_SHADE_MODEL 0x00000368 414bf215546Sopenharmony_ci#define NV30_3D_SHADE_MODEL_FLAT 0x00001d00 415bf215546Sopenharmony_ci#define NV30_3D_SHADE_MODEL_SMOOTH 0x00001d01 416bf215546Sopenharmony_ci 417bf215546Sopenharmony_ci#define NV30_3D_FOG_ENABLE 0x0000036c 418bf215546Sopenharmony_ci 419bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR 0x00000370 420bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_R__MASK 0x000000ff 421bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_R__SHIFT 0 422bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_G__MASK 0x0000ff00 423bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_G__SHIFT 8 424bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_B__MASK 0x00ff0000 425bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_B__SHIFT 16 426bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_A__MASK 0xff000000 427bf215546Sopenharmony_ci#define NV30_3D_FOG_COLOR_A__SHIFT 24 428bf215546Sopenharmony_ci 429bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK 0x00000370 430bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER1_A 0x00000010 431bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER1_R 0x00000020 432bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER1_G 0x00000040 433bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER1_B 0x00000080 434bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER2_A 0x00000100 435bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER2_R 0x00000200 436bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER2_G 0x00000400 437bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER2_B 0x00000800 438bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER3_A 0x00001000 439bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER3_R 0x00002000 440bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER3_G 0x00004000 441bf215546Sopenharmony_ci#define NV40_3D_MRT_COLOR_MASK_BUFFER3_B 0x00008000 442bf215546Sopenharmony_ci 443bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_ENABLE 0x00000374 444bf215546Sopenharmony_ci 445bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP 0x00000378 446bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_CLEAR 0x00001500 447bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_AND 0x00001501 448bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_AND_REVERSE 0x00001502 449bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_COPY 0x00001503 450bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_AND_INVERTED 0x00001504 451bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_NOOP 0x00001505 452bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_XOR 0x00001506 453bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_OR 0x00001507 454bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_NOR 0x00001508 455bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_EQUIV 0x00001509 456bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_INVERT 0x0000150a 457bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_OR_REVERSE 0x0000150b 458bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_COPY_INVERTED 0x0000150c 459bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_OR_INVERTED 0x0000150d 460bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_NAND 0x0000150e 461bf215546Sopenharmony_ci#define NV30_3D_COLOR_LOGIC_OP_OP_SET 0x0000150f 462bf215546Sopenharmony_ci 463bf215546Sopenharmony_ci#define NV30_3D_NORMALIZE_ENABLE 0x0000037c 464bf215546Sopenharmony_ci 465bf215546Sopenharmony_ci#define NV35_3D_DEPTH_BOUNDS_TEST_ENABLE 0x00000380 466bf215546Sopenharmony_ci 467bf215546Sopenharmony_ci#define NV35_3D_DEPTH_BOUNDS_TEST_ZMIN 0x00000384 468bf215546Sopenharmony_ci 469bf215546Sopenharmony_ci#define NV35_3D_DEPTH_BOUNDS_TEST_ZMAX 0x00000388 470bf215546Sopenharmony_ci 471bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL 0x00000390 472bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_EMISSION_ENABLE 0x00000001 473bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_AMBIENT_ENABLE 0x00000004 474bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_DIFFUSE_ENABLE 0x00000010 475bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_SPECULAR_ENABLE 0x00000040 476bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_EMISSION_ENABLE 0x00000100 477bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_AMBIENT_ENABLE 0x00000400 478bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_DIFFUSE_ENABLE 0x00001000 479bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_SPECULAR_ENABLE 0x00004000 480bf215546Sopenharmony_ci 481bf215546Sopenharmony_ci#define NV30_3D_DEPTH_RANGE_NEAR 0x00000394 482bf215546Sopenharmony_ci 483bf215546Sopenharmony_ci#define NV30_3D_DEPTH_RANGE_FAR 0x00000398 484bf215546Sopenharmony_ci 485bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT 0x000003a0 486bf215546Sopenharmony_ci 487bf215546Sopenharmony_ci 488bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_R 0x000003a0 489bf215546Sopenharmony_ci 490bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_G 0x000003a4 491bf215546Sopenharmony_ci 492bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_B 0x000003a8 493bf215546Sopenharmony_ci 494bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_FRONT_A 0x000003ac 495bf215546Sopenharmony_ci 496bf215546Sopenharmony_ci#define NV40_3D_MIPMAP_ROUNDING 0x000003b0 497bf215546Sopenharmony_ci#define NV40_3D_MIPMAP_ROUNDING_MODE__MASK 0x00100000 498bf215546Sopenharmony_ci#define NV40_3D_MIPMAP_ROUNDING_MODE__SHIFT 20 499bf215546Sopenharmony_ci#define NV40_3D_MIPMAP_ROUNDING_MODE_UP 0x00000000 500bf215546Sopenharmony_ci#define NV40_3D_MIPMAP_ROUNDING_MODE_DOWN 0x00100000 501bf215546Sopenharmony_ci 502bf215546Sopenharmony_ci#define NV30_3D_LINE_WIDTH 0x000003b8 503bf215546Sopenharmony_ci 504bf215546Sopenharmony_ci#define NV30_3D_LINE_SMOOTH_ENABLE 0x000003bc 505bf215546Sopenharmony_ci 506bf215546Sopenharmony_ci 507bf215546Sopenharmony_ci 508bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE(i0, i1) (0x00000400 + 0x10*(i0) + 0x4*(i1)) 509bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE__ESIZE 0x00000004 510bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE__LEN 0x00000004 511bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_FALSE 0x00000000 512bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_EYE_LINEAR 0x00002400 513bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_OBJECT_LINEAR 0x00002401 514bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_SPHERE_MAP 0x00002402 515bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_NORMAL_MAP 0x00008511 516bf215546Sopenharmony_ci#define NV30_3D_TEX_GEN_MODE_REFLECTION_MAP 0x00008512 517bf215546Sopenharmony_ci 518bf215546Sopenharmony_ci#define NV30_3D_MODELVIEW_MATRIX(i0) (0x00000480 + 0x4*(i0)) 519bf215546Sopenharmony_ci#define NV30_3D_MODELVIEW_MATRIX__ESIZE 0x00000004 520bf215546Sopenharmony_ci#define NV30_3D_MODELVIEW_MATRIX__LEN 0x00000010 521bf215546Sopenharmony_ci 522bf215546Sopenharmony_ci#define NV30_3D_INVERSE_MODELVIEW_MATRIX(i0) (0x00000580 + 0x4*(i0)) 523bf215546Sopenharmony_ci#define NV30_3D_INVERSE_MODELVIEW_MATRIX__ESIZE 0x00000004 524bf215546Sopenharmony_ci#define NV30_3D_INVERSE_MODELVIEW_MATRIX__LEN 0x0000000c 525bf215546Sopenharmony_ci 526bf215546Sopenharmony_ci#define NV30_3D_PROJECTION_MATRIX(i0) (0x00000680 + 0x4*(i0)) 527bf215546Sopenharmony_ci#define NV30_3D_PROJECTION_MATRIX__ESIZE 0x00000004 528bf215546Sopenharmony_ci#define NV30_3D_PROJECTION_MATRIX__LEN 0x00000010 529bf215546Sopenharmony_ci 530bf215546Sopenharmony_ci 531bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX(i0, i1) (0x000006c0 + 0x40*(i0) + 0x4*(i1)) 532bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX__ESIZE 0x00000004 533bf215546Sopenharmony_ci#define NV30_3D_TEX_MATRIX__LEN 0x00000010 534bf215546Sopenharmony_ci 535bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_HORIZ 0x000008c0 536bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_HORIZ_X__MASK 0x0000ffff 537bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_HORIZ_X__SHIFT 0 538bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_HORIZ_W__MASK 0xffff0000 539bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_HORIZ_W__SHIFT 16 540bf215546Sopenharmony_ci 541bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_VERT 0x000008c4 542bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_VERT_Y__MASK 0x0000ffff 543bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_VERT_Y__SHIFT 0 544bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_VERT_H__MASK 0xffff0000 545bf215546Sopenharmony_ci#define NV30_3D_SCISSOR_VERT_H__SHIFT 16 546bf215546Sopenharmony_ci 547bf215546Sopenharmony_ci#define NV30_3D_FOG_COORD_DIST 0x000008c8 548bf215546Sopenharmony_ci 549bf215546Sopenharmony_ci#define NV30_3D_FOG_MODE 0x000008cc 550bf215546Sopenharmony_ci 551bf215546Sopenharmony_ci#define NV30_3D_FOG_EQUATION_CONSTANT 0x000008d0 552bf215546Sopenharmony_ci 553bf215546Sopenharmony_ci#define NV30_3D_FOG_EQUATION_LINEAR 0x000008d4 554bf215546Sopenharmony_ci 555bf215546Sopenharmony_ci#define NV30_3D_FOG_EQUATION_QUADRATIC 0x000008d8 556bf215546Sopenharmony_ci 557bf215546Sopenharmony_ci#define NV30_3D_FP_ACTIVE_PROGRAM 0x000008e4 558bf215546Sopenharmony_ci#define NV30_3D_FP_ACTIVE_PROGRAM_DMA0 0x00000001 559bf215546Sopenharmony_ci#define NV30_3D_FP_ACTIVE_PROGRAM_DMA1 0x00000002 560bf215546Sopenharmony_ci#define NV30_3D_FP_ACTIVE_PROGRAM_OFFSET__MASK 0xfffffffc 561bf215546Sopenharmony_ci#define NV30_3D_FP_ACTIVE_PROGRAM_OFFSET__SHIFT 2 562bf215546Sopenharmony_ci 563bf215546Sopenharmony_ci 564bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0 0x000008ec 565bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_B__MASK 0x000000ff 566bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_B__SHIFT 0 567bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_G__MASK 0x0000ff00 568bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_G__SHIFT 8 569bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_R__MASK 0x00ff0000 570bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_R__SHIFT 16 571bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_A__MASK 0xff000000 572bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR0_A__SHIFT 24 573bf215546Sopenharmony_ci 574bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1 0x000008f0 575bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_B__MASK 0x000000ff 576bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_B__SHIFT 0 577bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_G__MASK 0x0000ff00 578bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_G__SHIFT 8 579bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_R__MASK 0x00ff0000 580bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_R__SHIFT 16 581bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_A__MASK 0xff000000 582bf215546Sopenharmony_ci#define NV30_3D_RC_COLOR1_A__SHIFT 24 583bf215546Sopenharmony_ci 584bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0 0x000008f4 585bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT__MASK 0x0000000f 586bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT__SHIFT 0 587bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_ZERO 0x00000000 588bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR0 0x00000001 589bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR1 0x00000002 590bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_FOG 0x00000003 591bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_PRIMARY_COLOR 0x00000004 592bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_SECONDARY_COLOR 0x00000005 593bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_TEXTURE0 0x00000008 594bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_TEXTURE1 0x00000009 595bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_TEXTURE2 0x0000000a 596bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_TEXTURE3 0x0000000b 597bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_SPARE0 0x0000000c 598bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_SPARE1 0x0000000d 599bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0000000e 600bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_INPUT_E_TIMES_F 0x0000000f 601bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_COMPONENT_USAGE__MASK 0x00000010 602bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_COMPONENT_USAGE__SHIFT 4 603bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_COMPONENT_USAGE_RGB 0x00000000 604bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_COMPONENT_USAGE_ALPHA 0x00000010 605bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING__MASK 0x000000e0 606bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING__SHIFT 5 607bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_UNSIGNED_IDENTITY 0x00000000 608bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_UNSIGNED_INVERT 0x00000020 609bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_EXPAND_NORMAL 0x00000040 610bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_EXPAND_NEGATE 0x00000060 611bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NORMAL 0x00000080 612bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NEGATE 0x000000a0 613bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_SIGNED_IDENTITY 0x000000c0 614bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_D_MAPPING_SIGNED_NEGATE 0x000000e0 615bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT__MASK 0x00000f00 616bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT__SHIFT 8 617bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_ZERO 0x00000000 618bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR0 0x00000100 619bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR1 0x00000200 620bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_FOG 0x00000300 621bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_PRIMARY_COLOR 0x00000400 622bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_SECONDARY_COLOR 0x00000500 623bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_TEXTURE0 0x00000800 624bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_TEXTURE1 0x00000900 625bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_TEXTURE2 0x00000a00 626bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_TEXTURE3 0x00000b00 627bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_SPARE0 0x00000c00 628bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_SPARE1 0x00000d00 629bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 630bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_INPUT_E_TIMES_F 0x00000f00 631bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_COMPONENT_USAGE__MASK 0x00001000 632bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_COMPONENT_USAGE__SHIFT 12 633bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_COMPONENT_USAGE_RGB 0x00000000 634bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_COMPONENT_USAGE_ALPHA 0x00001000 635bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING__MASK 0x0000e000 636bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING__SHIFT 13 637bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_UNSIGNED_IDENTITY 0x00000000 638bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_UNSIGNED_INVERT 0x00002000 639bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_EXPAND_NORMAL 0x00004000 640bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_EXPAND_NEGATE 0x00006000 641bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NORMAL 0x00008000 642bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NEGATE 0x0000a000 643bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_SIGNED_IDENTITY 0x0000c000 644bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_C_MAPPING_SIGNED_NEGATE 0x0000e000 645bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT__MASK 0x000f0000 646bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT__SHIFT 16 647bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_ZERO 0x00000000 648bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR0 0x00010000 649bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR1 0x00020000 650bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_FOG 0x00030000 651bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_PRIMARY_COLOR 0x00040000 652bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_SECONDARY_COLOR 0x00050000 653bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_TEXTURE0 0x00080000 654bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_TEXTURE1 0x00090000 655bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_TEXTURE2 0x000a0000 656bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_TEXTURE3 0x000b0000 657bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_SPARE0 0x000c0000 658bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_SPARE1 0x000d0000 659bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000e0000 660bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_INPUT_E_TIMES_F 0x000f0000 661bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_COMPONENT_USAGE__MASK 0x00100000 662bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_COMPONENT_USAGE__SHIFT 20 663bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_COMPONENT_USAGE_RGB 0x00000000 664bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_COMPONENT_USAGE_ALPHA 0x00100000 665bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING__MASK 0x00e00000 666bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING__SHIFT 21 667bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_UNSIGNED_IDENTITY 0x00000000 668bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_UNSIGNED_INVERT 0x00200000 669bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_EXPAND_NORMAL 0x00400000 670bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_EXPAND_NEGATE 0x00600000 671bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NORMAL 0x00800000 672bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NEGATE 0x00a00000 673bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_SIGNED_IDENTITY 0x00c00000 674bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_B_MAPPING_SIGNED_NEGATE 0x00e00000 675bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT__MASK 0x0f000000 676bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT__SHIFT 24 677bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_ZERO 0x00000000 678bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR0 0x01000000 679bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR1 0x02000000 680bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_FOG 0x03000000 681bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_PRIMARY_COLOR 0x04000000 682bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_SECONDARY_COLOR 0x05000000 683bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_TEXTURE0 0x08000000 684bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_TEXTURE1 0x09000000 685bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_TEXTURE2 0x0a000000 686bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_TEXTURE3 0x0b000000 687bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_SPARE0 0x0c000000 688bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_SPARE1 0x0d000000 689bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0e000000 690bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_INPUT_E_TIMES_F 0x0f000000 691bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_COMPONENT_USAGE__MASK 0x10000000 692bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_COMPONENT_USAGE__SHIFT 28 693bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_COMPONENT_USAGE_RGB 0x00000000 694bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_COMPONENT_USAGE_ALPHA 0x10000000 695bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING__MASK 0xe0000000 696bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING__SHIFT 29 697bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_UNSIGNED_IDENTITY 0x00000000 698bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_UNSIGNED_INVERT 0x20000000 699bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_EXPAND_NORMAL 0x40000000 700bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_EXPAND_NEGATE 0x60000000 701bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NORMAL 0x80000000 702bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NEGATE 0xa0000000 703bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_SIGNED_IDENTITY 0xc0000000 704bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL0_A_MAPPING_SIGNED_NEGATE 0xe0000000 705bf215546Sopenharmony_ci 706bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1 0x000008f8 707bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_COLOR_SUM_CLAMP 0x00000080 708bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT__MASK 0x00000f00 709bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT__SHIFT 8 710bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_ZERO 0x00000000 711bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR0 0x00000100 712bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR1 0x00000200 713bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_FOG 0x00000300 714bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_PRIMARY_COLOR 0x00000400 715bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_SECONDARY_COLOR 0x00000500 716bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_TEXTURE0 0x00000800 717bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_TEXTURE1 0x00000900 718bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_TEXTURE2 0x00000a00 719bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_TEXTURE3 0x00000b00 720bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_SPARE0 0x00000c00 721bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_SPARE1 0x00000d00 722bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 723bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_INPUT_E_TIMES_F 0x00000f00 724bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_COMPONENT_USAGE__MASK 0x00001000 725bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_COMPONENT_USAGE__SHIFT 12 726bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_COMPONENT_USAGE_RGB 0x00000000 727bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_COMPONENT_USAGE_ALPHA 0x00001000 728bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING__MASK 0x0000e000 729bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING__SHIFT 13 730bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_UNSIGNED_IDENTITY 0x00000000 731bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_UNSIGNED_INVERT 0x00002000 732bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_EXPAND_NORMAL 0x00004000 733bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_EXPAND_NEGATE 0x00006000 734bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NORMAL 0x00008000 735bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NEGATE 0x0000a000 736bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_SIGNED_IDENTITY 0x0000c000 737bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_G_MAPPING_SIGNED_NEGATE 0x0000e000 738bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT__MASK 0x000f0000 739bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT__SHIFT 16 740bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_ZERO 0x00000000 741bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR0 0x00010000 742bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR1 0x00020000 743bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_FOG 0x00030000 744bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_PRIMARY_COLOR 0x00040000 745bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_SECONDARY_COLOR 0x00050000 746bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_TEXTURE0 0x00080000 747bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_TEXTURE1 0x00090000 748bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_TEXTURE2 0x000a0000 749bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_TEXTURE3 0x000b0000 750bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_SPARE0 0x000c0000 751bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_SPARE1 0x000d0000 752bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000e0000 753bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_INPUT_E_TIMES_F 0x000f0000 754bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_COMPONENT_USAGE__MASK 0x00100000 755bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_COMPONENT_USAGE__SHIFT 20 756bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_COMPONENT_USAGE_RGB 0x00000000 757bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_COMPONENT_USAGE_ALPHA 0x00100000 758bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING__MASK 0x00e00000 759bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING__SHIFT 21 760bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_UNSIGNED_IDENTITY 0x00000000 761bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_UNSIGNED_INVERT 0x00200000 762bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_EXPAND_NORMAL 0x00400000 763bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_EXPAND_NEGATE 0x00600000 764bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NORMAL 0x00800000 765bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NEGATE 0x00a00000 766bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_SIGNED_IDENTITY 0x00c00000 767bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_F_MAPPING_SIGNED_NEGATE 0x00e00000 768bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT__MASK 0x0f000000 769bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT__SHIFT 24 770bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_ZERO 0x00000000 771bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR0 0x01000000 772bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR1 0x02000000 773bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_FOG 0x03000000 774bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_PRIMARY_COLOR 0x04000000 775bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_SECONDARY_COLOR 0x05000000 776bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_TEXTURE0 0x08000000 777bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_TEXTURE1 0x09000000 778bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_TEXTURE2 0x0a000000 779bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_TEXTURE3 0x0b000000 780bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_SPARE0 0x0c000000 781bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_SPARE1 0x0d000000 782bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0e000000 783bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_INPUT_E_TIMES_F 0x0f000000 784bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_COMPONENT_USAGE__MASK 0x10000000 785bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_COMPONENT_USAGE__SHIFT 28 786bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_COMPONENT_USAGE_RGB 0x00000000 787bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_COMPONENT_USAGE_ALPHA 0x10000000 788bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING__MASK 0xe0000000 789bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING__SHIFT 29 790bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_UNSIGNED_IDENTITY 0x00000000 791bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_UNSIGNED_INVERT 0x20000000 792bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_EXPAND_NORMAL 0x40000000 793bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_EXPAND_NEGATE 0x60000000 794bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NORMAL 0x80000000 795bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NEGATE 0xa0000000 796bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_SIGNED_IDENTITY 0xc0000000 797bf215546Sopenharmony_ci#define NV30_3D_RC_FINAL1_E_MAPPING_SIGNED_NEGATE 0xe0000000 798bf215546Sopenharmony_ci 799bf215546Sopenharmony_ci#define NV30_3D_RC_ENABLE 0x000008fc 800bf215546Sopenharmony_ci#define NV30_3D_RC_ENABLE_NUM_COMBINERS__MASK 0x0000000f 801bf215546Sopenharmony_ci#define NV30_3D_RC_ENABLE_NUM_COMBINERS__SHIFT 0 802bf215546Sopenharmony_ci#define NV30_3D_RC_ENABLE_STAGE_CONSTANT_COLOR0 0x0000f000 803bf215546Sopenharmony_ci#define NV30_3D_RC_ENABLE_STAGE_CONSTANT_COLOR1 0x000f0000 804bf215546Sopenharmony_ci 805bf215546Sopenharmony_ci 806bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA(i0) (0x00000900 + 0x20*(i0)) 807bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT__MASK 0x0000000f 808bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT__SHIFT 0 809bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_ZERO 0x00000000 810bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR0 0x00000001 811bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR1 0x00000002 812bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_FOG 0x00000003 813bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_PRIMARY_COLOR 0x00000004 814bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_SECONDARY_COLOR 0x00000005 815bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_TEXTURE0 0x00000008 816bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_TEXTURE1 0x00000009 817bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_TEXTURE2 0x0000000a 818bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_TEXTURE3 0x0000000b 819bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_SPARE0 0x0000000c 820bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_SPARE1 0x0000000d 821bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0000000e 822bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_INPUT_E_TIMES_F 0x0000000f 823bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_COMPONENT_USAGE__MASK 0x00000010 824bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_COMPONENT_USAGE__SHIFT 4 825bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_BLUE 0x00000000 826bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_ALPHA 0x00000010 827bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING__MASK 0x000000e0 828bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING__SHIFT 5 829bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_IDENTITY 0x00000000 830bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_INVERT 0x00000020 831bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NORMAL 0x00000040 832bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NEGATE 0x00000060 833bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NORMAL 0x00000080 834bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NEGATE 0x000000a0 835bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_IDENTITY 0x000000c0 836bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_NEGATE 0x000000e0 837bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT__MASK 0x00000f00 838bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT__SHIFT 8 839bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_ZERO 0x00000000 840bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR0 0x00000100 841bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR1 0x00000200 842bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_FOG 0x00000300 843bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_PRIMARY_COLOR 0x00000400 844bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_SECONDARY_COLOR 0x00000500 845bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_TEXTURE0 0x00000800 846bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_TEXTURE1 0x00000900 847bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_TEXTURE2 0x00000a00 848bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_TEXTURE3 0x00000b00 849bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_SPARE0 0x00000c00 850bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_SPARE1 0x00000d00 851bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 852bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_INPUT_E_TIMES_F 0x00000f00 853bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_COMPONENT_USAGE__MASK 0x00001000 854bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_COMPONENT_USAGE__SHIFT 12 855bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_BLUE 0x00000000 856bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_ALPHA 0x00001000 857bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING__MASK 0x0000e000 858bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING__SHIFT 13 859bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_IDENTITY 0x00000000 860bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_INVERT 0x00002000 861bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NORMAL 0x00004000 862bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NEGATE 0x00006000 863bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NORMAL 0x00008000 864bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NEGATE 0x0000a000 865bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_IDENTITY 0x0000c000 866bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_NEGATE 0x0000e000 867bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT__MASK 0x000f0000 868bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT__SHIFT 16 869bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_ZERO 0x00000000 870bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR0 0x00010000 871bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR1 0x00020000 872bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_FOG 0x00030000 873bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_PRIMARY_COLOR 0x00040000 874bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_SECONDARY_COLOR 0x00050000 875bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_TEXTURE0 0x00080000 876bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_TEXTURE1 0x00090000 877bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_TEXTURE2 0x000a0000 878bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_TEXTURE3 0x000b0000 879bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_SPARE0 0x000c0000 880bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_SPARE1 0x000d0000 881bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000e0000 882bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_INPUT_E_TIMES_F 0x000f0000 883bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_COMPONENT_USAGE__MASK 0x00100000 884bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_COMPONENT_USAGE__SHIFT 20 885bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_BLUE 0x00000000 886bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_ALPHA 0x00100000 887bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING__MASK 0x00e00000 888bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING__SHIFT 21 889bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_IDENTITY 0x00000000 890bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_INVERT 0x00200000 891bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NORMAL 0x00400000 892bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NEGATE 0x00600000 893bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NORMAL 0x00800000 894bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NEGATE 0x00a00000 895bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_IDENTITY 0x00c00000 896bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_NEGATE 0x00e00000 897bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT__MASK 0x0f000000 898bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT__SHIFT 24 899bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_ZERO 0x00000000 900bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR0 0x01000000 901bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR1 0x02000000 902bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_FOG 0x03000000 903bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_PRIMARY_COLOR 0x04000000 904bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_SECONDARY_COLOR 0x05000000 905bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_TEXTURE0 0x08000000 906bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_TEXTURE1 0x09000000 907bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_TEXTURE2 0x0a000000 908bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_TEXTURE3 0x0b000000 909bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_SPARE0 0x0c000000 910bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_SPARE1 0x0d000000 911bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0e000000 912bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_INPUT_E_TIMES_F 0x0f000000 913bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_COMPONENT_USAGE__MASK 0x10000000 914bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_COMPONENT_USAGE__SHIFT 28 915bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_BLUE 0x00000000 916bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_ALPHA 0x10000000 917bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING__MASK 0xe0000000 918bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING__SHIFT 29 919bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_IDENTITY 0x00000000 920bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_INVERT 0x20000000 921bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NORMAL 0x40000000 922bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NEGATE 0x60000000 923bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NORMAL 0x80000000 924bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NEGATE 0xa0000000 925bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_IDENTITY 0xc0000000 926bf215546Sopenharmony_ci#define NV30_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_NEGATE 0xe0000000 927bf215546Sopenharmony_ci 928bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB(i0) (0x00000904 + 0x20*(i0)) 929bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT__MASK 0x0000000f 930bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT__SHIFT 0 931bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_ZERO 0x00000000 932bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR0 0x00000001 933bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR1 0x00000002 934bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_FOG 0x00000003 935bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_PRIMARY_COLOR 0x00000004 936bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_SECONDARY_COLOR 0x00000005 937bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_TEXTURE0 0x00000008 938bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_TEXTURE1 0x00000009 939bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_TEXTURE2 0x0000000a 940bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_TEXTURE3 0x0000000b 941bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_SPARE0 0x0000000c 942bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_SPARE1 0x0000000d 943bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0000000e 944bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_INPUT_E_TIMES_F 0x0000000f 945bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_COMPONENT_USAGE__MASK 0x00000010 946bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_COMPONENT_USAGE__SHIFT 4 947bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_COMPONENT_USAGE_RGB 0x00000000 948bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_COMPONENT_USAGE_ALPHA 0x00000010 949bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING__MASK 0x000000e0 950bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING__SHIFT 5 951bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_IDENTITY 0x00000000 952bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_INVERT 0x00000020 953bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_EXPAND_NORMAL 0x00000040 954bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_EXPAND_NEGATE 0x00000060 955bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NORMAL 0x00000080 956bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NEGATE 0x000000a0 957bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_SIGNED_IDENTITY 0x000000c0 958bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_D_MAPPING_SIGNED_NEGATE 0x000000e0 959bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT__MASK 0x00000f00 960bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT__SHIFT 8 961bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_ZERO 0x00000000 962bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR0 0x00000100 963bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR1 0x00000200 964bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_FOG 0x00000300 965bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_PRIMARY_COLOR 0x00000400 966bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_SECONDARY_COLOR 0x00000500 967bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_TEXTURE0 0x00000800 968bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_TEXTURE1 0x00000900 969bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_TEXTURE2 0x00000a00 970bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_TEXTURE3 0x00000b00 971bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_SPARE0 0x00000c00 972bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_SPARE1 0x00000d00 973bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 974bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_INPUT_E_TIMES_F 0x00000f00 975bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_COMPONENT_USAGE__MASK 0x00001000 976bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_COMPONENT_USAGE__SHIFT 12 977bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_COMPONENT_USAGE_RGB 0x00000000 978bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_COMPONENT_USAGE_ALPHA 0x00001000 979bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING__MASK 0x0000e000 980bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING__SHIFT 13 981bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_IDENTITY 0x00000000 982bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_INVERT 0x00002000 983bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_EXPAND_NORMAL 0x00004000 984bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_EXPAND_NEGATE 0x00006000 985bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NORMAL 0x00008000 986bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NEGATE 0x0000a000 987bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_SIGNED_IDENTITY 0x0000c000 988bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_C_MAPPING_SIGNED_NEGATE 0x0000e000 989bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT__MASK 0x000f0000 990bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT__SHIFT 16 991bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_ZERO 0x00000000 992bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR0 0x00010000 993bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR1 0x00020000 994bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_FOG 0x00030000 995bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_PRIMARY_COLOR 0x00040000 996bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_SECONDARY_COLOR 0x00050000 997bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_TEXTURE0 0x00080000 998bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_TEXTURE1 0x00090000 999bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_TEXTURE2 0x000a0000 1000bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_TEXTURE3 0x000b0000 1001bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_SPARE0 0x000c0000 1002bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_SPARE1 0x000d0000 1003bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000e0000 1004bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_INPUT_E_TIMES_F 0x000f0000 1005bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_COMPONENT_USAGE__MASK 0x00100000 1006bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_COMPONENT_USAGE__SHIFT 20 1007bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_COMPONENT_USAGE_RGB 0x00000000 1008bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_COMPONENT_USAGE_ALPHA 0x00100000 1009bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING__MASK 0x00e00000 1010bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING__SHIFT 21 1011bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_IDENTITY 0x00000000 1012bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_INVERT 0x00200000 1013bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_EXPAND_NORMAL 0x00400000 1014bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_EXPAND_NEGATE 0x00600000 1015bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NORMAL 0x00800000 1016bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NEGATE 0x00a00000 1017bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_SIGNED_IDENTITY 0x00c00000 1018bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_B_MAPPING_SIGNED_NEGATE 0x00e00000 1019bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT__MASK 0x0f000000 1020bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT__SHIFT 24 1021bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_ZERO 0x00000000 1022bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR0 0x01000000 1023bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR1 0x02000000 1024bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_FOG 0x03000000 1025bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_PRIMARY_COLOR 0x04000000 1026bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_SECONDARY_COLOR 0x05000000 1027bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_TEXTURE0 0x08000000 1028bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_TEXTURE1 0x09000000 1029bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_TEXTURE2 0x0a000000 1030bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_TEXTURE3 0x0b000000 1031bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_SPARE0 0x0c000000 1032bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_SPARE1 0x0d000000 1033bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0e000000 1034bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_INPUT_E_TIMES_F 0x0f000000 1035bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_COMPONENT_USAGE__MASK 0x10000000 1036bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_COMPONENT_USAGE__SHIFT 28 1037bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_COMPONENT_USAGE_RGB 0x00000000 1038bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_COMPONENT_USAGE_ALPHA 0x10000000 1039bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING__MASK 0xe0000000 1040bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING__SHIFT 29 1041bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_IDENTITY 0x00000000 1042bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_INVERT 0x20000000 1043bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_EXPAND_NORMAL 0x40000000 1044bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_EXPAND_NEGATE 0x60000000 1045bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NORMAL 0x80000000 1046bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NEGATE 0xa0000000 1047bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_SIGNED_IDENTITY 0xc0000000 1048bf215546Sopenharmony_ci#define NV30_3D_RC_IN_RGB_A_MAPPING_SIGNED_NEGATE 0xe0000000 1049bf215546Sopenharmony_ci 1050bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0(i0) (0x00000908 + 0x20*(i0)) 1051bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_B__MASK 0x000000ff 1052bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_B__SHIFT 0 1053bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_G__MASK 0x0000ff00 1054bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_G__SHIFT 8 1055bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_R__MASK 0x00ff0000 1056bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_R__SHIFT 16 1057bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_A__MASK 0xff000000 1058bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR0_A__SHIFT 24 1059bf215546Sopenharmony_ci 1060bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1(i0) (0x0000090c + 0x20*(i0)) 1061bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_B__MASK 0x000000ff 1062bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_B__SHIFT 0 1063bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_G__MASK 0x0000ff00 1064bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_G__SHIFT 8 1065bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_R__MASK 0x00ff0000 1066bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_R__SHIFT 16 1067bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_A__MASK 0xff000000 1068bf215546Sopenharmony_ci#define NV30_3D_RC_CONSTANT_COLOR1_A__SHIFT 24 1069bf215546Sopenharmony_ci 1070bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA(i0) (0x00000910 + 0x20*(i0)) 1071bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT__MASK 0x0000000f 1072bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT__SHIFT 0 1073bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_ZERO 0x00000000 1074bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR0 0x00000001 1075bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR1 0x00000002 1076bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_FOG 0x00000003 1077bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_PRIMARY_COLOR 0x00000004 1078bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_SECONDARY_COLOR 0x00000005 1079bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE0 0x00000008 1080bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE1 0x00000009 1081bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE2 0x0000000a 1082bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE3 0x0000000b 1083bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0 0x0000000c 1084bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE1 0x0000000d 1085bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0000000e 1086bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_OUTPUT_E_TIMES_F 0x0000000f 1087bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT__MASK 0x000000f0 1088bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT__SHIFT 4 1089bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_ZERO 0x00000000 1090bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR0 0x00000010 1091bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR1 0x00000020 1092bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_FOG 0x00000030 1093bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_PRIMARY_COLOR 0x00000040 1094bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_SECONDARY_COLOR 0x00000050 1095bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE0 0x00000080 1096bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE1 0x00000090 1097bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE2 0x000000a0 1098bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE3 0x000000b0 1099bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0 0x000000c0 1100bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE1 0x000000d0 1101bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000000e0 1102bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_OUTPUT_E_TIMES_F 0x000000f0 1103bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT__MASK 0x00000f00 1104bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT__SHIFT 8 1105bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_ZERO 0x00000000 1106bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR0 0x00000100 1107bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR1 0x00000200 1108bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_FOG 0x00000300 1109bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_PRIMARY_COLOR 0x00000400 1110bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_SECONDARY_COLOR 0x00000500 1111bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE0 0x00000800 1112bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE1 0x00000900 1113bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE2 0x00000a00 1114bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE3 0x00000b00 1115bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0 0x00000c00 1116bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE1 0x00000d00 1117bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 1118bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SUM_OUTPUT_E_TIMES_F 0x00000f00 1119bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_CD_DOT_PRODUCT 0x00001000 1120bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_AB_DOT_PRODUCT 0x00002000 1121bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_MUX_SUM 0x00004000 1122bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_BIAS__MASK 0x00008000 1123bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_BIAS__SHIFT 15 1124bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_BIAS_NONE 0x00000000 1125bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_BIAS_BIAS_BY_NEGATIVE_ONE_HALF 0x00008000 1126bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE__MASK 0x00030000 1127bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE__SHIFT 16 1128bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE_NONE 0x00000000 1129bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_TWO 0x00010000 1130bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_FOUR 0x00020000 1131bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_ONE_HALF 0x00030000 1132bf215546Sopenharmony_ci 1133bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB(i0) (0x00000914 + 0x20*(i0)) 1134bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT__MASK 0x0000000f 1135bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT__SHIFT 0 1136bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_ZERO 0x00000000 1137bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR0 0x00000001 1138bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR1 0x00000002 1139bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_FOG 0x00000003 1140bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_PRIMARY_COLOR 0x00000004 1141bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_SECONDARY_COLOR 0x00000005 1142bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE0 0x00000008 1143bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE1 0x00000009 1144bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE2 0x0000000a 1145bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE3 0x0000000b 1146bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0 0x0000000c 1147bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_SPARE1 0x0000000d 1148bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x0000000e 1149bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_OUTPUT_E_TIMES_F 0x0000000f 1150bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT__MASK 0x000000f0 1151bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT__SHIFT 4 1152bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_ZERO 0x00000000 1153bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR0 0x00000010 1154bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR1 0x00000020 1155bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_FOG 0x00000030 1156bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_PRIMARY_COLOR 0x00000040 1157bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_SECONDARY_COLOR 0x00000050 1158bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE0 0x00000080 1159bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE1 0x00000090 1160bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE2 0x000000a0 1161bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE3 0x000000b0 1162bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0 0x000000c0 1163bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_SPARE1 0x000000d0 1164bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x000000e0 1165bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_OUTPUT_E_TIMES_F 0x000000f0 1166bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT__MASK 0x00000f00 1167bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT__SHIFT 8 1168bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_ZERO 0x00000000 1169bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR0 0x00000100 1170bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR1 0x00000200 1171bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_FOG 0x00000300 1172bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_PRIMARY_COLOR 0x00000400 1173bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_SECONDARY_COLOR 0x00000500 1174bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE0 0x00000800 1175bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE1 0x00000900 1176bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE2 0x00000a00 1177bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE3 0x00000b00 1178bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0 0x00000c00 1179bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE1 0x00000d00 1180bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR 0x00000e00 1181bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SUM_OUTPUT_E_TIMES_F 0x00000f00 1182bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_CD_DOT_PRODUCT 0x00001000 1183bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_AB_DOT_PRODUCT 0x00002000 1184bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_MUX_SUM 0x00004000 1185bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_BIAS__MASK 0x00008000 1186bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_BIAS__SHIFT 15 1187bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_BIAS_NONE 0x00000000 1188bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_BIAS_BIAS_BY_NEGATIVE_ONE_HALF 0x00008000 1189bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE__MASK 0x00030000 1190bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE__SHIFT 16 1191bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE_NONE 0x00000000 1192bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE_SCALE_BY_TWO 0x00010000 1193bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE_SCALE_BY_FOUR 0x00020000 1194bf215546Sopenharmony_ci#define NV30_3D_RC_OUT_RGB_SCALE_SCALE_BY_ONE_HALF 0x00030000 1195bf215546Sopenharmony_ci 1196bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_HORIZ 0x00000a00 1197bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_HORIZ_X__MASK 0x0000ffff 1198bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_HORIZ_X__SHIFT 0 1199bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_HORIZ_W__MASK 0xffff0000 1200bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_HORIZ_W__SHIFT 16 1201bf215546Sopenharmony_ci 1202bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_VERT 0x00000a04 1203bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_VERT_Y__MASK 0x0000ffff 1204bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_VERT_Y__SHIFT 0 1205bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_VERT_H__MASK 0xffff0000 1206bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_VERT_H__SHIFT 16 1207bf215546Sopenharmony_ci 1208bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION 0x00000a10 1209bf215546Sopenharmony_ci 1210bf215546Sopenharmony_ci 1211bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R 0x00000a10 1212bf215546Sopenharmony_ci 1213bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G 0x00000a14 1214bf215546Sopenharmony_ci 1215bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B 0x00000a18 1216bf215546Sopenharmony_ci 1217bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TRANSLATE 0x00000a20 1218bf215546Sopenharmony_ci 1219bf215546Sopenharmony_ci 1220bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TRANSLATE_X 0x00000a20 1221bf215546Sopenharmony_ci 1222bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TRANSLATE_Y 0x00000a24 1223bf215546Sopenharmony_ci 1224bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TRANSLATE_Z 0x00000a28 1225bf215546Sopenharmony_ci 1226bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_TRANSLATE_W 0x00000a2c 1227bf215546Sopenharmony_ci 1228bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_SCALE 0x00000a30 1229bf215546Sopenharmony_ci 1230bf215546Sopenharmony_ci 1231bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_SCALE_X 0x00000a30 1232bf215546Sopenharmony_ci 1233bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_SCALE_Y 0x00000a34 1234bf215546Sopenharmony_ci 1235bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_SCALE_Z 0x00000a38 1236bf215546Sopenharmony_ci 1237bf215546Sopenharmony_ci#define NV30_3D_VIEWPORT_SCALE_W 0x00000a3c 1238bf215546Sopenharmony_ci 1239bf215546Sopenharmony_ci#define NV30_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000a60 1240bf215546Sopenharmony_ci 1241bf215546Sopenharmony_ci#define NV30_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000a64 1242bf215546Sopenharmony_ci 1243bf215546Sopenharmony_ci#define NV30_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000a68 1244bf215546Sopenharmony_ci 1245bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC 0x00000a6c 1246bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_NEVER 0x00000200 1247bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_LESS 0x00000201 1248bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_EQUAL 0x00000202 1249bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_LEQUAL 0x00000203 1250bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_GREATER 0x00000204 1251bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_NOTEQUAL 0x00000205 1252bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_GEQUAL 0x00000206 1253bf215546Sopenharmony_ci#define NV30_3D_DEPTH_FUNC_ALWAYS 0x00000207 1254bf215546Sopenharmony_ci 1255bf215546Sopenharmony_ci#define NV30_3D_DEPTH_WRITE_ENABLE 0x00000a70 1256bf215546Sopenharmony_ci 1257bf215546Sopenharmony_ci#define NV30_3D_DEPTH_TEST_ENABLE 0x00000a74 1258bf215546Sopenharmony_ci 1259bf215546Sopenharmony_ci#define NV30_3D_POLYGON_OFFSET_FACTOR 0x00000a78 1260bf215546Sopenharmony_ci 1261bf215546Sopenharmony_ci#define NV30_3D_POLYGON_OFFSET_UNITS 0x00000a7c 1262bf215546Sopenharmony_ci 1263bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY(i0) (0x00000a80 + 0x8*(i0)) 1264bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY__ESIZE 0x00000008 1265bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY__LEN 0x00000010 1266bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY_X__MASK 0x0000ffff 1267bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY_X__SHIFT 0 1268bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY_Y__MASK 0xffff0000 1269bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_XY_Y__SHIFT 16 1270bf215546Sopenharmony_ci 1271bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_Z(i0) (0x00000a84 + 0x8*(i0)) 1272bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_Z__ESIZE 0x00000008 1273bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_Z__LEN 0x00000010 1274bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_Z_Z__MASK 0x0000ffff 1275bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3I_Z_Z__SHIFT 0 1276bf215546Sopenharmony_ci 1277bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_OPTIMIZATION(i0) (0x00000b00 + 0x4*(i0)) 1278bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_OPTIMIZATION__ESIZE 0x00000004 1279bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_OPTIMIZATION__LEN 0x00000004 1280bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR__MASK 0x0000001f 1281bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR__SHIFT 0 1282bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR_OFF 0x00000000 1283bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR_HIGH_QUALITY 0x00000004 1284bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR_QUALITY 0x00000006 1285bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR_PERFORMANCE 0x00000008 1286bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_TRILINEAR_HIGH_PERFORMANCE 0x00000018 1287bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE__MASK 0x000001c0 1288bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE__SHIFT 6 1289bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE_OFF 0x00000000 1290bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE_HIGH_QUALITY 0x000000c0 1291bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE_QUALITY 0x000001c0 1292bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_ANISO_SAMPLE_PERFORMANCE 0x00000140 1293bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_UNKNOWN__MASK 0x00007c00 1294bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_UNKNOWN__SHIFT 10 1295bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_UNKNOWN_OFF 0x00000000 1296bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_UNKNOWN_PARTIAL 0x00002c00 1297bf215546Sopenharmony_ci#define NV40_3D_TEX_FILTER_OPTIMIZATION_UNKNOWN_FULL 0x00007c00 1298bf215546Sopenharmony_ci 1299bf215546Sopenharmony_ci#define NV40_3D_UNK0B40(i0) (0x00000b40 + 0x4*(i0)) 1300bf215546Sopenharmony_ci#define NV40_3D_UNK0B40__ESIZE 0x00000004 1301bf215546Sopenharmony_ci#define NV40_3D_UNK0B40__LEN 0x00000008 1302bf215546Sopenharmony_ci 1303bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_INST(i0) (0x00000b80 + 0x4*(i0)) 1304bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_INST__ESIZE 0x00000004 1305bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_INST__LEN 0x00000004 1306bf215546Sopenharmony_ci 1307bf215546Sopenharmony_ci 1308bf215546Sopenharmony_ci#define NV30_3D_TEX_CLIP_PLANE(i0) (0x00000e00 + 0x10*(i0)) 1309bf215546Sopenharmony_ci 1310bf215546Sopenharmony_ci 1311bf215546Sopenharmony_ci#define NV30_3D_TEX_CLIP_PLANE_X(i0) (0x00000e00 + 0x10*(i0)) 1312bf215546Sopenharmony_ci 1313bf215546Sopenharmony_ci#define NV30_3D_TEX_CLIP_PLANE_Y(i0) (0x00000e04 + 0x10*(i0)) 1314bf215546Sopenharmony_ci 1315bf215546Sopenharmony_ci#define NV30_3D_TEX_CLIP_PLANE_Z(i0) (0x00000e08 + 0x10*(i0)) 1316bf215546Sopenharmony_ci 1317bf215546Sopenharmony_ci#define NV30_3D_TEX_CLIP_PLANE_W(i0) (0x00000e0c + 0x10*(i0)) 1318bf215546Sopenharmony_ci 1319bf215546Sopenharmony_ci#define NV30_3D_LIGHT 0x00001000 1320bf215546Sopenharmony_ci 1321bf215546Sopenharmony_ci 1322bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT(i0) (0x00001000 + 0x40*(i0)) 1323bf215546Sopenharmony_ci 1324bf215546Sopenharmony_ci 1325bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(i0) (0x00001000 + 0x40*(i0)) 1326bf215546Sopenharmony_ci 1327bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(i0) (0x00001004 + 0x40*(i0)) 1328bf215546Sopenharmony_ci 1329bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(i0) (0x00001008 + 0x40*(i0)) 1330bf215546Sopenharmony_ci 1331bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE(i0) (0x0000100c + 0x40*(i0)) 1332bf215546Sopenharmony_ci 1333bf215546Sopenharmony_ci 1334bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(i0) (0x0000100c + 0x40*(i0)) 1335bf215546Sopenharmony_ci 1336bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(i0) (0x00001010 + 0x40*(i0)) 1337bf215546Sopenharmony_ci 1338bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(i0) (0x00001014 + 0x40*(i0)) 1339bf215546Sopenharmony_ci 1340bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR(i0) (0x00001018 + 0x40*(i0)) 1341bf215546Sopenharmony_ci 1342bf215546Sopenharmony_ci 1343bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(i0) (0x00001018 + 0x40*(i0)) 1344bf215546Sopenharmony_ci 1345bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(i0) (0x0000101c + 0x40*(i0)) 1346bf215546Sopenharmony_ci 1347bf215546Sopenharmony_ci#define NV30_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(i0) (0x00001020 + 0x40*(i0)) 1348bf215546Sopenharmony_ci 1349bf215546Sopenharmony_ci#define NV30_3D_LIGHT_UNK24(i0) (0x00001024 + 0x40*(i0)) 1350bf215546Sopenharmony_ci 1351bf215546Sopenharmony_ci#define NV30_3D_LIGHT_HALF_VECTOR(i0) (0x00001028 + 0x40*(i0)) 1352bf215546Sopenharmony_ci 1353bf215546Sopenharmony_ci 1354bf215546Sopenharmony_ci#define NV30_3D_LIGHT_HALF_VECTOR_X(i0) (0x00001028 + 0x40*(i0)) 1355bf215546Sopenharmony_ci 1356bf215546Sopenharmony_ci#define NV30_3D_LIGHT_HALF_VECTOR_Y(i0) (0x0000102c + 0x40*(i0)) 1357bf215546Sopenharmony_ci 1358bf215546Sopenharmony_ci#define NV30_3D_LIGHT_HALF_VECTOR_Z(i0) (0x00001030 + 0x40*(i0)) 1359bf215546Sopenharmony_ci 1360bf215546Sopenharmony_ci#define NV30_3D_LIGHT_DIRECTION(i0) (0x00001034 + 0x40*(i0)) 1361bf215546Sopenharmony_ci 1362bf215546Sopenharmony_ci 1363bf215546Sopenharmony_ci#define NV30_3D_LIGHT_DIRECTION_X(i0) (0x00001034 + 0x40*(i0)) 1364bf215546Sopenharmony_ci 1365bf215546Sopenharmony_ci#define NV30_3D_LIGHT_DIRECTION_Y(i0) (0x00001038 + 0x40*(i0)) 1366bf215546Sopenharmony_ci 1367bf215546Sopenharmony_ci#define NV30_3D_LIGHT_DIRECTION_Z(i0) (0x0000103c + 0x40*(i0)) 1368bf215546Sopenharmony_ci 1369bf215546Sopenharmony_ci 1370bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_CUTOFF_A(i0) (0x00001200 + 0x40*(i0)) 1371bf215546Sopenharmony_ci 1372bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_CUTOFF_B(i0) (0x00001204 + 0x40*(i0)) 1373bf215546Sopenharmony_ci 1374bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_CUTOFF_C(i0) (0x00001208 + 0x40*(i0)) 1375bf215546Sopenharmony_ci 1376bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_DIR(i0) (0x0000120c + 0x40*(i0)) 1377bf215546Sopenharmony_ci 1378bf215546Sopenharmony_ci 1379bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_DIR_X(i0) (0x0000120c + 0x40*(i0)) 1380bf215546Sopenharmony_ci 1381bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_DIR_Y(i0) (0x00001210 + 0x40*(i0)) 1382bf215546Sopenharmony_ci 1383bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_DIR_Z(i0) (0x00001214 + 0x40*(i0)) 1384bf215546Sopenharmony_ci 1385bf215546Sopenharmony_ci#define NV30_3D_LIGHT_SPOT_CUTOFF_D(i0) (0x00001218 + 0x40*(i0)) 1386bf215546Sopenharmony_ci 1387bf215546Sopenharmony_ci#define NV30_3D_LIGHT_POSITION(i0) (0x0000121c + 0x40*(i0)) 1388bf215546Sopenharmony_ci 1389bf215546Sopenharmony_ci 1390bf215546Sopenharmony_ci#define NV30_3D_LIGHT_POSITION_X(i0) (0x0000121c + 0x40*(i0)) 1391bf215546Sopenharmony_ci 1392bf215546Sopenharmony_ci#define NV30_3D_LIGHT_POSITION_Y(i0) (0x00001220 + 0x40*(i0)) 1393bf215546Sopenharmony_ci 1394bf215546Sopenharmony_ci#define NV30_3D_LIGHT_POSITION_Z(i0) (0x00001224 + 0x40*(i0)) 1395bf215546Sopenharmony_ci 1396bf215546Sopenharmony_ci#define NV30_3D_LIGHT_ATTENUATION(i0) (0x00001228 + 0x40*(i0)) 1397bf215546Sopenharmony_ci 1398bf215546Sopenharmony_ci#define NV30_3D_LIGHT_ATTENUATION_CONSTANT(i0) (0x00001228 + 0x40*(i0)) 1399bf215546Sopenharmony_ci 1400bf215546Sopenharmony_ci#define NV30_3D_LIGHT_ATTENUATION_LINEAR(i0) (0x0000122c + 0x40*(i0)) 1401bf215546Sopenharmony_ci 1402bf215546Sopenharmony_ci#define NV30_3D_LIGHT_ATTENUATION_QUADRATIC(i0) (0x00001230 + 0x40*(i0)) 1403bf215546Sopenharmony_ci 1404bf215546Sopenharmony_ci#define NV30_3D_FRONT_MATERIAL_SHININESS(i0) (0x00001400 + 0x4*(i0)) 1405bf215546Sopenharmony_ci#define NV30_3D_FRONT_MATERIAL_SHININESS__ESIZE 0x00000004 1406bf215546Sopenharmony_ci#define NV30_3D_FRONT_MATERIAL_SHININESS__LEN 0x00000006 1407bf215546Sopenharmony_ci 1408bf215546Sopenharmony_ci#define NV30_3D_ENABLED_LIGHTS 0x00001420 1409bf215546Sopenharmony_ci 1410bf215546Sopenharmony_ci#define NV30_3D_VERTEX_TWO_SIDE_ENABLE 0x0000142c 1411bf215546Sopenharmony_ci 1412bf215546Sopenharmony_ci#define NV30_3D_FP_REG_CONTROL 0x00001450 1413bf215546Sopenharmony_ci#define NV30_3D_FP_REG_CONTROL_UNK0__MASK 0x0000ffff 1414bf215546Sopenharmony_ci#define NV30_3D_FP_REG_CONTROL_UNK0__SHIFT 0 1415bf215546Sopenharmony_ci#define NV30_3D_FP_REG_CONTROL_UNK1__MASK 0xffff0000 1416bf215546Sopenharmony_ci#define NV30_3D_FP_REG_CONTROL_UNK1__SHIFT 16 1417bf215546Sopenharmony_ci 1418bf215546Sopenharmony_ci#define NV30_3D_FLATSHADE_FIRST 0x00001454 1419bf215546Sopenharmony_ci 1420bf215546Sopenharmony_ci#define NV30_3D_EDGEFLAG 0x0000145c 1421bf215546Sopenharmony_ci#define NV30_3D_EDGEFLAG_ENABLE 0x00000001 1422bf215546Sopenharmony_ci 1423bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE 0x00001478 1424bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE0 0x00000002 1425bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE1 0x00000020 1426bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE2 0x00000200 1427bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE3 0x00002000 1428bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE4 0x00020000 1429bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANES_ENABLE_PLANE5 0x00200000 1430bf215546Sopenharmony_ci 1431bf215546Sopenharmony_ci#define NV30_3D_POLYGON_STIPPLE_ENABLE 0x0000147c 1432bf215546Sopenharmony_ci 1433bf215546Sopenharmony_ci#define NV30_3D_POLYGON_STIPPLE_PATTERN(i0) (0x00001480 + 0x4*(i0)) 1434bf215546Sopenharmony_ci#define NV30_3D_POLYGON_STIPPLE_PATTERN__ESIZE 0x00000004 1435bf215546Sopenharmony_ci#define NV30_3D_POLYGON_STIPPLE_PATTERN__LEN 0x00000020 1436bf215546Sopenharmony_ci 1437bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F(i0) (0x00001500 + 0x10*(i0)) 1438bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F__ESIZE 0x00000010 1439bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F__LEN 0x00000010 1440bf215546Sopenharmony_ci 1441bf215546Sopenharmony_ci 1442bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F_X(i0) (0x00001500 + 0x10*(i0)) 1443bf215546Sopenharmony_ci 1444bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F_Y(i0) (0x00001504 + 0x10*(i0)) 1445bf215546Sopenharmony_ci 1446bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_3F_Z(i0) (0x00001508 + 0x10*(i0)) 1447bf215546Sopenharmony_ci 1448bf215546Sopenharmony_ci 1449bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANE(i0, i1) (0x00001600 + 0x10*(i0) + 0x4*(i1)) 1450bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANE__ESIZE 0x00000004 1451bf215546Sopenharmony_ci#define NV30_3D_VP_CLIP_PLANE__LEN 0x00000004 1452bf215546Sopenharmony_ci 1453bf215546Sopenharmony_ci#define NV30_3D_VTXBUF(i0) (0x00001680 + 0x4*(i0)) 1454bf215546Sopenharmony_ci#define NV30_3D_VTXBUF__ESIZE 0x00000004 1455bf215546Sopenharmony_ci#define NV30_3D_VTXBUF__LEN 0x00000010 1456bf215546Sopenharmony_ci#define NV30_3D_VTXBUF_OFFSET__MASK 0x0fffffff 1457bf215546Sopenharmony_ci#define NV30_3D_VTXBUF_OFFSET__SHIFT 0 1458bf215546Sopenharmony_ci#define NV30_3D_VTXBUF_DMA1 0x80000000 1459bf215546Sopenharmony_ci 1460bf215546Sopenharmony_ci#define NV40_3D_VTX_CACHE_INVALIDATE 0x00001714 1461bf215546Sopenharmony_ci 1462bf215546Sopenharmony_ci#define NV40_3D_VB_ELEMENT_BASE 0x0000173c 1463bf215546Sopenharmony_ci 1464bf215546Sopenharmony_ci#define NV30_3D_VTXFMT(i0) (0x00001740 + 0x4*(i0)) 1465bf215546Sopenharmony_ci#define NV30_3D_VTXFMT__ESIZE 0x00000004 1466bf215546Sopenharmony_ci#define NV30_3D_VTXFMT__LEN 0x00000010 1467bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE__MASK 0x0000000f 1468bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE__SHIFT 0 1469bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_B8G8R8A8_UNORM 0x00000000 1470bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_V16_SNORM 0x00000001 1471bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_V32_FLOAT 0x00000002 1472bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_V16_FLOAT 0x00000003 1473bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_U8_UNORM 0x00000004 1474bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_V16_SSCALED 0x00000005 1475bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_TYPE_U8_USCALED 0x00000007 1476bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_SIZE__MASK 0x000000f0 1477bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_SIZE__SHIFT 4 1478bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_STRIDE__MASK 0x0000ff00 1479bf215546Sopenharmony_ci#define NV30_3D_VTXFMT_STRIDE__SHIFT 8 1480bf215546Sopenharmony_ci 1481bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION 0x000017a0 1482bf215546Sopenharmony_ci 1483bf215546Sopenharmony_ci 1484bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R 0x000017a0 1485bf215546Sopenharmony_ci 1486bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G 0x000017a4 1487bf215546Sopenharmony_ci 1488bf215546Sopenharmony_ci#define NV30_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B 0x000017a8 1489bf215546Sopenharmony_ci 1490bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK 0x000017b0 1491bf215546Sopenharmony_ci 1492bf215546Sopenharmony_ci 1493bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_R 0x000017b0 1494bf215546Sopenharmony_ci 1495bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_G 0x000017b4 1496bf215546Sopenharmony_ci 1497bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_B 0x000017b8 1498bf215546Sopenharmony_ci 1499bf215546Sopenharmony_ci#define NV30_3D_COLOR_MATERIAL_BACK_A 0x000017bc 1500bf215546Sopenharmony_ci 1501bf215546Sopenharmony_ci#define NV30_3D_QUERY_RESET 0x000017c8 1502bf215546Sopenharmony_ci 1503bf215546Sopenharmony_ci#define NV30_3D_QUERY_ENABLE 0x000017cc 1504bf215546Sopenharmony_ci 1505bf215546Sopenharmony_ci#define NV30_3D_QUERY_GET 0x00001800 1506bf215546Sopenharmony_ci#define NV30_3D_QUERY_GET_OFFSET__MASK 0x00ffffff 1507bf215546Sopenharmony_ci#define NV30_3D_QUERY_GET_OFFSET__SHIFT 0 1508bf215546Sopenharmony_ci#define NV30_3D_QUERY_GET_UNK24__MASK 0xff000000 1509bf215546Sopenharmony_ci#define NV30_3D_QUERY_GET_UNK24__SHIFT 24 1510bf215546Sopenharmony_ci 1511bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END 0x00001808 1512bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_STOP 0x00000000 1513bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_POINTS 0x00000001 1514bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_LINES 0x00000002 1515bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_LINE_LOOP 0x00000003 1516bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_LINE_STRIP 0x00000004 1517bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_TRIANGLES 0x00000005 1518bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_TRIANGLE_STRIP 0x00000006 1519bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_TRIANGLE_FAN 0x00000007 1520bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_QUADS 0x00000008 1521bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_QUAD_STRIP 0x00000009 1522bf215546Sopenharmony_ci#define NV30_3D_VERTEX_BEGIN_END_POLYGON 0x0000000a 1523bf215546Sopenharmony_ci 1524bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U16 0x0000180c 1525bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U16_0__MASK 0x0000ffff 1526bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U16_0__SHIFT 0 1527bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U16_1__MASK 0xffff0000 1528bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U16_1__SHIFT 16 1529bf215546Sopenharmony_ci 1530bf215546Sopenharmony_ci#define NV30_3D_VB_ELEMENT_U32 0x00001810 1531bf215546Sopenharmony_ci 1532bf215546Sopenharmony_ci#define NV30_3D_VB_VERTEX_BATCH 0x00001814 1533bf215546Sopenharmony_ci#define NV30_3D_VB_VERTEX_BATCH_OFFSET__MASK 0x00ffffff 1534bf215546Sopenharmony_ci#define NV30_3D_VB_VERTEX_BATCH_OFFSET__SHIFT 0 1535bf215546Sopenharmony_ci#define NV30_3D_VB_VERTEX_BATCH_COUNT__MASK 0xff000000 1536bf215546Sopenharmony_ci#define NV30_3D_VB_VERTEX_BATCH_COUNT__SHIFT 24 1537bf215546Sopenharmony_ci 1538bf215546Sopenharmony_ci#define NV30_3D_VERTEX_DATA 0x00001818 1539bf215546Sopenharmony_ci 1540bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_OFFSET 0x0000181c 1541bf215546Sopenharmony_ci 1542bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT 0x00001820 1543bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT_DMA1 0x00000001 1544bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT_TYPE__MASK 0x000000f0 1545bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT_TYPE__SHIFT 4 1546bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT_TYPE_U32 0x00000000 1547bf215546Sopenharmony_ci#define NV30_3D_IDXBUF_FORMAT_TYPE_U16 0x00000010 1548bf215546Sopenharmony_ci 1549bf215546Sopenharmony_ci#define NV30_3D_VB_INDEX_BATCH 0x00001824 1550bf215546Sopenharmony_ci#define NV30_3D_VB_INDEX_BATCH_START__MASK 0x00ffffff 1551bf215546Sopenharmony_ci#define NV30_3D_VB_INDEX_BATCH_START__SHIFT 0 1552bf215546Sopenharmony_ci#define NV30_3D_VB_INDEX_BATCH_COUNT__MASK 0xff000000 1553bf215546Sopenharmony_ci#define NV30_3D_VB_INDEX_BATCH_COUNT__SHIFT 24 1554bf215546Sopenharmony_ci 1555bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_FRONT 0x00001828 1556bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_FRONT_POINT 0x00001b00 1557bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_FRONT_LINE 0x00001b01 1558bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_FRONT_FILL 0x00001b02 1559bf215546Sopenharmony_ci 1560bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_BACK 0x0000182c 1561bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_BACK_POINT 0x00001b00 1562bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_BACK_LINE 0x00001b01 1563bf215546Sopenharmony_ci#define NV30_3D_POLYGON_MODE_BACK_FILL 0x00001b02 1564bf215546Sopenharmony_ci 1565bf215546Sopenharmony_ci#define NV30_3D_CULL_FACE 0x00001830 1566bf215546Sopenharmony_ci#define NV30_3D_CULL_FACE_FRONT 0x00000404 1567bf215546Sopenharmony_ci#define NV30_3D_CULL_FACE_BACK 0x00000405 1568bf215546Sopenharmony_ci#define NV30_3D_CULL_FACE_FRONT_AND_BACK 0x00000408 1569bf215546Sopenharmony_ci 1570bf215546Sopenharmony_ci#define NV30_3D_FRONT_FACE 0x00001834 1571bf215546Sopenharmony_ci#define NV30_3D_FRONT_FACE_CW 0x00000900 1572bf215546Sopenharmony_ci#define NV30_3D_FRONT_FACE_CCW 0x00000901 1573bf215546Sopenharmony_ci 1574bf215546Sopenharmony_ci#define NV30_3D_POLYGON_SMOOTH_ENABLE 0x00001838 1575bf215546Sopenharmony_ci 1576bf215546Sopenharmony_ci#define NV30_3D_CULL_FACE_ENABLE 0x0000183c 1577bf215546Sopenharmony_ci 1578bf215546Sopenharmony_ci#define NV30_3D_TEX_PALETTE_OFFSET(i0) (0x00001840 + 0x4*(i0)) 1579bf215546Sopenharmony_ci#define NV30_3D_TEX_PALETTE_OFFSET__ESIZE 0x00000004 1580bf215546Sopenharmony_ci#define NV30_3D_TEX_PALETTE_OFFSET__LEN 0x00000008 1581bf215546Sopenharmony_ci 1582bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1(i0) (0x00001840 + 0x4*(i0)) 1583bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1__ESIZE 0x00000004 1584bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1__LEN 0x00000008 1585bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1_DEPTH__MASK 0xfff00000 1586bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1_DEPTH__SHIFT 20 1587bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1_PITCH__MASK 0x0000ffff 1588bf215546Sopenharmony_ci#define NV40_3D_TEX_SIZE1_PITCH__SHIFT 0 1589bf215546Sopenharmony_ci 1590bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2F(i0) (0x00001880 + 0x8*(i0)) 1591bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2F__ESIZE 0x00000008 1592bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2F__LEN 0x00000010 1593bf215546Sopenharmony_ci 1594bf215546Sopenharmony_ci 1595bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2F_X(i0) (0x00001880 + 0x8*(i0)) 1596bf215546Sopenharmony_ci 1597bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2F_Y(i0) (0x00001884 + 0x8*(i0)) 1598bf215546Sopenharmony_ci 1599bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I(i0) (0x00001900 + 0x4*(i0)) 1600bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I__ESIZE 0x00000004 1601bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I__LEN 0x00000010 1602bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I_X__MASK 0x0000ffff 1603bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I_X__SHIFT 0 1604bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I_Y__MASK 0xffff0000 1605bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_2I_Y__SHIFT 16 1606bf215546Sopenharmony_ci 1607bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB(i0) (0x00001940 + 0x4*(i0)) 1608bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB__ESIZE 0x00000004 1609bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB__LEN 0x00000010 1610bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_X__MASK 0x000000ff 1611bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_X__SHIFT 0 1612bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_Y__MASK 0x0000ff00 1613bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_Y__SHIFT 8 1614bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_Z__MASK 0x00ff0000 1615bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_Z__SHIFT 16 1616bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_W__MASK 0xff000000 1617bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4UB_W__SHIFT 24 1618bf215546Sopenharmony_ci 1619bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I(i0) (0x00001980 + 0x8*(i0)) 1620bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I__ESIZE 0x00000008 1621bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I__LEN 0x00000010 1622bf215546Sopenharmony_ci 1623bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_XY(i0) (0x00001980 + 0x8*(i0)) 1624bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_XY_X__MASK 0x0000ffff 1625bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_XY_X__SHIFT 0 1626bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_XY_Y__MASK 0xffff0000 1627bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_XY_Y__SHIFT 16 1628bf215546Sopenharmony_ci 1629bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_ZW(i0) (0x00001984 + 0x8*(i0)) 1630bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_ZW_Z__MASK 0x0000ffff 1631bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_ZW_Z__SHIFT 0 1632bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_ZW_W__MASK 0xffff0000 1633bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4I_ZW_W__SHIFT 16 1634bf215546Sopenharmony_ci 1635bf215546Sopenharmony_ci#define NV30_3D_TEX_OFFSET(i0) (0x00001a00 + 0x20*(i0)) 1636bf215546Sopenharmony_ci#define NV30_3D_TEX_OFFSET__ESIZE 0x00000020 1637bf215546Sopenharmony_ci#define NV30_3D_TEX_OFFSET__LEN 0x00000008 1638bf215546Sopenharmony_ci 1639bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT(i0) (0x00001a04 + 0x20*(i0)) 1640bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT__ESIZE 0x00000020 1641bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT__LEN 0x00000008 1642bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DMA0 0x00000001 1643bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DMA1 0x00000002 1644bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_CUBIC 0x00000004 1645bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_NO_BORDER 0x00000008 1646bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DIMS__MASK 0x000000f0 1647bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DIMS__SHIFT 4 1648bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DIMS_1D 0x00000010 1649bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DIMS_2D 0x00000020 1650bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_DIMS_3D 0x00000030 1651bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT__MASK 0x0000ff00 1652bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT__SHIFT 8 1653bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_L8 0x00000000 1654bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_I8 0x00000100 1655bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A1R5G5B5 0x00000200 1656bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A4R4G4B4 0x00000400 1657bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_R5G6B5 0x00000500 1658bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A8R8G8B8 0x00000600 1659bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_X8R8G8B8 0x00000700 1660bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_INDEX8 0x00000b00 1661bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_DXT1 0x00000c00 1662bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_DXT3 0x00000e00 1663bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_DXT5 0x00000f00 1664bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A1R5G5B5_RECT 0x00001000 1665bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_R5G6B5_RECT 0x00001100 1666bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A8R8G8B8_RECT 0x00001200 1667bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_L8_RECT 0x00001300 1668bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_DSDT8_RECT 0x00001700 1669bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A8L8 0x00001a00 1670bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_I8_RECT 0x00001b00 1671bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A4R4G4B4_RECT 0x00001d00 1672bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_R8G8B8_RECT 0x00001e00 1673bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A8L8_RECT 0x00002000 1674bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_Z24 0x00002a00 1675bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_Z24_RECT 0x00002b00 1676bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_Z16 0x00002c00 1677bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_Z16_RECT 0x00002d00 1678bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_DSDT8 0x00002800 1679bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_HILO16 0x00003300 1680bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_HILO16_RECT 0x00003600 1681bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_HILO8 0x00004400 1682bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_SIGNED_HILO8 0x00004500 1683bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_HILO8_RECT 0x00004600 1684bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_SIGNED_HILO8_RECT 0x00004700 1685bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A16 0x00003200 1686bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_A16_RECT 0x00003500 1687bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_UNK3F 0x00003f00 1688bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_FLOAT_RGBA16_NV 0x00004a00 1689bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_FLOAT_RGBA32_NV 0x00004b00 1690bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_FORMAT_FLOAT_R32_NV 0x00004c00 1691bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT__MASK 0x00001f00 1692bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT__SHIFT 8 1693bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_L8 0x00000100 1694bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A1R5G5B5 0x00000200 1695bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A4R4G4B4 0x00000300 1696bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_R5G6B5 0x00000400 1697bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A8R8G8B8 0x00000500 1698bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_DXT1 0x00000600 1699bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_DXT3 0x00000700 1700bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_DXT5 0x00000800 1701bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A8L8 0x00000b00 1702bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_Z24 0x00001000 1703bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_Z16 0x00001200 1704bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A16 0x00001400 1705bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_A16L16 0x00001500 1706bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_HILO8 0x00001800 1707bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_RGBA16F 0x00001a00 1708bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_FORMAT_RGBA32F 0x00001b00 1709bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_LINEAR 0x00002000 1710bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_RECT 0x00004000 1711bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_MIPMAP_COUNT__MASK 0x000f0000 1712bf215546Sopenharmony_ci#define NV40_3D_TEX_FORMAT_MIPMAP_COUNT__SHIFT 16 1713bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_MIPMAP 0x00080000 1714bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_U__MASK 0x00f00000 1715bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_U__SHIFT 20 1716bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_V__MASK 0x0f000000 1717bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_V__SHIFT 24 1718bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_W__MASK 0xf0000000 1719bf215546Sopenharmony_ci#define NV30_3D_TEX_FORMAT_BASE_SIZE_W__SHIFT 28 1720bf215546Sopenharmony_ci 1721bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP(i0) (0x00001a08 + 0x20*(i0)) 1722bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP__ESIZE 0x00000020 1723bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP__LEN 0x00000008 1724bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S__MASK 0x000000ff 1725bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S__SHIFT 0 1726bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S_REPEAT 0x00000001 1727bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S_MIRRORED_REPEAT 0x00000002 1728bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S_CLAMP_TO_EDGE 0x00000003 1729bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S_CLAMP_TO_BORDER 0x00000004 1730bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_S_CLAMP 0x00000005 1731bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_S_MIRROR_CLAMP_TO_EDGE 0x00000006 1732bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_S_MIRROR_CLAMP_TO_BORDER 0x00000007 1733bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_S_MIRROR_CLAMP 0x00000008 1734bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION__MASK 0x00000070 1735bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION__SHIFT 4 1736bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION_OFF 0x00000000 1737bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION_QUALITY 0x00000020 1738bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION_PERFORMANCE 0x00000030 1739bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_ANISO_MIP_FILTER_OPTIMIZATION_HIGH_PERFORMANCE 0x00000070 1740bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T__MASK 0x00000f00 1741bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T__SHIFT 8 1742bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T_REPEAT 0x00000100 1743bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T_MIRRORED_REPEAT 0x00000200 1744bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T_CLAMP_TO_EDGE 0x00000300 1745bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T_CLAMP_TO_BORDER 0x00000400 1746bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_T_CLAMP 0x00000500 1747bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_T_MIRROR_CLAMP_TO_EDGE 0x00000600 1748bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_T_MIRROR_CLAMP_TO_BORDER 0x00000700 1749bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_T_MIRROR_CLAMP 0x00000800 1750bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_EXPAND_NORMAL 0x0000f000 1751bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R__MASK 0x000f0000 1752bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R__SHIFT 16 1753bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R_REPEAT 0x00010000 1754bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R_MIRRORED_REPEAT 0x00020000 1755bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R_CLAMP_TO_EDGE 0x00030000 1756bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R_CLAMP_TO_BORDER 0x00040000 1757bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_R_CLAMP 0x00050000 1758bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_R_MIRROR_CLAMP_TO_EDGE 0x00060000 1759bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_R_MIRROR_CLAMP_TO_BORDER 0x00070000 1760bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_R_MIRROR_CLAMP 0x00080000 1761bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER__MASK 0x00f00000 1762bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER__SHIFT 20 1763bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER_NONE 0x00000000 1764bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER_RED 0x00100000 1765bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER_GREEN 0x00200000 1766bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER_BLUE 0x00400000 1767bf215546Sopenharmony_ci#define NV40_3D_TEX_WRAP_GAMMA_DECREASE_FILTER_ALL 0x00f00000 1768bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP__MASK 0xf0000000 1769bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP__SHIFT 28 1770bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_NEVER 0x00000000 1771bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_GREATER 0x10000000 1772bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_EQUAL 0x20000000 1773bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_GEQUAL 0x30000000 1774bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_LESS 0x40000000 1775bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_NOTEQUAL 0x50000000 1776bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_LEQUAL 0x60000000 1777bf215546Sopenharmony_ci#define NV30_3D_TEX_WRAP_RCOMP_ALWAYS 0x70000000 1778bf215546Sopenharmony_ci 1779bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE(i0) (0x00001a0c + 0x20*(i0)) 1780bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE__ESIZE 0x00000020 1781bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE__LEN 0x00000008 1782bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO__MASK 0x00000030 1783bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO__SHIFT 4 1784bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO_NONE 0x00000000 1785bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO_2X 0x00000010 1786bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO_4X 0x00000020 1787bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ANISO_8X 0x00000030 1788bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO__MASK 0x000000f0 1789bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO__SHIFT 4 1790bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_NONE 0x00000000 1791bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_2X 0x00000010 1792bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_4X 0x00000020 1793bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_6X 0x00000030 1794bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_8X 0x00000040 1795bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_10X 0x00000050 1796bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_12X 0x00000060 1797bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ANISO_16X 0x00000070 1798bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_MIPMAP_MAX_LOD__MASK 0x0003c000 1799bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_MIPMAP_MAX_LOD__SHIFT 14 1800bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_MIPMAP_MAX_LOD__MASK 0x00038000 1801bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_MIPMAP_MAX_LOD__SHIFT 15 1802bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_MIPMAP_MIN_LOD__MASK 0x3c000000 1803bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_MIPMAP_MIN_LOD__SHIFT 26 1804bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_MIPMAP_MIN_LOD__MASK 0x38000000 1805bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_MIPMAP_MIN_LOD__SHIFT 27 1806bf215546Sopenharmony_ci#define NV30_3D_TEX_ENABLE_ENABLE 0x40000000 1807bf215546Sopenharmony_ci#define NV40_3D_TEX_ENABLE_ENABLE 0x80000000 1808bf215546Sopenharmony_ci 1809bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE(i0) (0x00001a10 + 0x20*(i0)) 1810bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE__ESIZE 0x00000020 1811bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE__LEN 0x00000008 1812bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W__MASK 0x00000003 1813bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W__SHIFT 0 1814bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W_W 0x00000000 1815bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W_Z 0x00000001 1816bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W_Y 0x00000002 1817bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_W_X 0x00000003 1818bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z__MASK 0x0000000c 1819bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z__SHIFT 2 1820bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z_W 0x00000000 1821bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z_Z 0x00000004 1822bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z_Y 0x00000008 1823bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Z_X 0x0000000c 1824bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y__MASK 0x00000030 1825bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y__SHIFT 4 1826bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y_W 0x00000000 1827bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y_Z 0x00000010 1828bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y_Y 0x00000020 1829bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_Y_X 0x00000030 1830bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X__MASK 0x000000c0 1831bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X__SHIFT 6 1832bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X_W 0x00000000 1833bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X_Z 0x00000040 1834bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X_Y 0x00000080 1835bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S1_X_X 0x000000c0 1836bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_W__MASK 0x00000300 1837bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_W__SHIFT 8 1838bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_W_ZERO 0x00000000 1839bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_W_ONE 0x00000100 1840bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_W_S1 0x00000200 1841bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Z__MASK 0x00000c00 1842bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Z__SHIFT 10 1843bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Z_ZERO 0x00000000 1844bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Z_ONE 0x00000400 1845bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Z_S1 0x00000800 1846bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Y__MASK 0x00003000 1847bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Y__SHIFT 12 1848bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Y_ZERO 0x00000000 1849bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Y_ONE 0x00001000 1850bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_Y_S1 0x00002000 1851bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_X__MASK 0x0000c000 1852bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_X__SHIFT 14 1853bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_X_ZERO 0x00000000 1854bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_X_ONE 0x00004000 1855bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_S0_X_S1 0x00008000 1856bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_RECT_PITCH__MASK 0xffff0000 1857bf215546Sopenharmony_ci#define NV30_3D_TEX_SWIZZLE_RECT_PITCH__SHIFT 16 1858bf215546Sopenharmony_ci 1859bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER(i0) (0x00001a14 + 0x20*(i0)) 1860bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER__ESIZE 0x00000020 1861bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER__LEN 0x00000008 1862bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_LOD_BIAS__MASK 0x00000f00 1863bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_LOD_BIAS__SHIFT 8 1864bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN__MASK 0x000f0000 1865bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN__SHIFT 16 1866bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_NEAREST 0x00010000 1867bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_LINEAR 0x00020000 1868bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_NEAREST_MIPMAP_NEAREST 0x00030000 1869bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_LINEAR_MIPMAP_NEAREST 0x00040000 1870bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_NEAREST_MIPMAP_LINEAR 0x00050000 1871bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MIN_LINEAR_MIPMAP_LINEAR 0x00060000 1872bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MAG__MASK 0x0f000000 1873bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MAG__SHIFT 24 1874bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MAG_NEAREST 0x01000000 1875bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_MAG_LINEAR 0x02000000 1876bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_SIGNED_BLUE 0x10000000 1877bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_SIGNED_GREEN 0x20000000 1878bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_SIGNED_RED 0x40000000 1879bf215546Sopenharmony_ci#define NV30_3D_TEX_FILTER_SIGNED_ALPHA 0x80000000 1880bf215546Sopenharmony_ci 1881bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE(i0) (0x00001a18 + 0x20*(i0)) 1882bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE__ESIZE 0x00000020 1883bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE__LEN 0x00000008 1884bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE_H__MASK 0x0000ffff 1885bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE_H__SHIFT 0 1886bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE_W__MASK 0xffff0000 1887bf215546Sopenharmony_ci#define NV30_3D_TEX_NPOT_SIZE_W__SHIFT 16 1888bf215546Sopenharmony_ci 1889bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR(i0) (0x00001a1c + 0x20*(i0)) 1890bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR__ESIZE 0x00000020 1891bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR__LEN 0x00000008 1892bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_B__MASK 0x000000ff 1893bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_B__SHIFT 0 1894bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_G__MASK 0x0000ff00 1895bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_G__SHIFT 8 1896bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_R__MASK 0x00ff0000 1897bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_R__SHIFT 16 1898bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_A__MASK 0xff000000 1899bf215546Sopenharmony_ci#define NV30_3D_TEX_BORDER_COLOR_A__SHIFT 24 1900bf215546Sopenharmony_ci 1901bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F(i0) (0x00001c00 + 0x10*(i0)) 1902bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F__ESIZE 0x00000010 1903bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F__LEN 0x00000010 1904bf215546Sopenharmony_ci 1905bf215546Sopenharmony_ci 1906bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F_X(i0) (0x00001c00 + 0x10*(i0)) 1907bf215546Sopenharmony_ci 1908bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F_Y(i0) (0x00001c04 + 0x10*(i0)) 1909bf215546Sopenharmony_ci 1910bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F_Z(i0) (0x00001c08 + 0x10*(i0)) 1911bf215546Sopenharmony_ci 1912bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_4F_W(i0) (0x00001c0c + 0x10*(i0)) 1913bf215546Sopenharmony_ci 1914bf215546Sopenharmony_ci#define NV30_3D_FP_CONTROL 0x00001d60 1915bf215546Sopenharmony_ci#define NV30_3D_FP_CONTROL_USED_REGS_MINUS1_DIV2__MASK 0x0000000f 1916bf215546Sopenharmony_ci#define NV30_3D_FP_CONTROL_USED_REGS_MINUS1_DIV2__SHIFT 0 1917bf215546Sopenharmony_ci#define NV30_3D_FP_CONTROL_USES_KIL 0x00000080 1918bf215546Sopenharmony_ci#define NV40_3D_FP_CONTROL_KIL 0x00000080 1919bf215546Sopenharmony_ci#define NV40_3D_FP_CONTROL_TEMP_COUNT__MASK 0xff000000 1920bf215546Sopenharmony_ci#define NV40_3D_FP_CONTROL_TEMP_COUNT__SHIFT 24 1921bf215546Sopenharmony_ci 1922bf215546Sopenharmony_ci#define NV30_3D_FENCE_OFFSET 0x00001d6c 1923bf215546Sopenharmony_ci 1924bf215546Sopenharmony_ci#define NV30_3D_FENCE_VALUE 0x00001d70 1925bf215546Sopenharmony_ci 1926bf215546Sopenharmony_ci#define NV30_3D_DEPTH_CONTROL 0x00001d78 1927bf215546Sopenharmony_ci#define NV30_3D_DEPTH_CONTROL_CLAMP 0x000000f0 1928bf215546Sopenharmony_ci 1929bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL 0x00001d7c 1930bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL_ENABLE 0x00000001 1931bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL_SAMPLE_ALPHA_TO_COVERAGE 0x00000010 1932bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL_SAMPLE_ALPHA_TO_ONE 0x00000100 1933bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL_SAMPLE_COVERAGE__MASK 0xffff0000 1934bf215546Sopenharmony_ci#define NV30_3D_MULTISAMPLE_CONTROL_SAMPLE_COVERAGE__SHIFT 16 1935bf215546Sopenharmony_ci 1936bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS 0x00001d88 1937bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_HEIGHT__MASK 0x00000fff 1938bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_HEIGHT__SHIFT 0 1939bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_ORIGIN__MASK 0x00001000 1940bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_ORIGIN__SHIFT 12 1941bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_ORIGIN_NORMAL 0x00000000 1942bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_ORIGIN_INVERTED 0x00001000 1943bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_CENTER__MASK 0x00010000 1944bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_CENTER__SHIFT 16 1945bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_CENTER_HALF_INTEGER 0x00000000 1946bf215546Sopenharmony_ci#define NV30_3D_COORD_CONVENTIONS_CENTER_INTEGER 0x00010000 1947bf215546Sopenharmony_ci 1948bf215546Sopenharmony_ci#define NV30_3D_CLEAR_DEPTH_VALUE 0x00001d8c 1949bf215546Sopenharmony_ci 1950bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE 0x00001d90 1951bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_B__MASK 0x000000ff 1952bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_B__SHIFT 0 1953bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_G__MASK 0x0000ff00 1954bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_G__SHIFT 8 1955bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_R__MASK 0x00ff0000 1956bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_R__SHIFT 16 1957bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_A__MASK 0xff000000 1958bf215546Sopenharmony_ci#define NV30_3D_CLEAR_COLOR_VALUE_A__SHIFT 24 1959bf215546Sopenharmony_ci 1960bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS 0x00001d94 1961bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_DEPTH 0x00000001 1962bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_STENCIL 0x00000002 1963bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_COLOR_R 0x00000010 1964bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_COLOR_G 0x00000020 1965bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_COLOR_B 0x00000040 1966bf215546Sopenharmony_ci#define NV30_3D_CLEAR_BUFFERS_COLOR_A 0x00000080 1967bf215546Sopenharmony_ci 1968bf215546Sopenharmony_ci#define NV30_3D_PRIMITIVE_RESTART_ENABLE 0x00001dac 1969bf215546Sopenharmony_ci 1970bf215546Sopenharmony_ci#define NV30_3D_PRIMITIVE_RESTART_INDEX 0x00001db0 1971bf215546Sopenharmony_ci 1972bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_ENABLE 0x00001db4 1973bf215546Sopenharmony_ci 1974bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_PATTERN 0x00001db8 1975bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_PATTERN_FACTOR__MASK 0x0000ffff 1976bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_PATTERN_FACTOR__SHIFT 0 1977bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_PATTERN_PATTERN__MASK 0xffff0000 1978bf215546Sopenharmony_ci#define NV30_3D_LINE_STIPPLE_PATTERN_PATTERN__SHIFT 16 1979bf215546Sopenharmony_ci 1980bf215546Sopenharmony_ci#define NV30_3D_BACK_MATERIAL_SHININESS(i0) (0x00001e20 + 0x4*(i0)) 1981bf215546Sopenharmony_ci#define NV30_3D_BACK_MATERIAL_SHININESS__ESIZE 0x00000004 1982bf215546Sopenharmony_ci#define NV30_3D_BACK_MATERIAL_SHININESS__LEN 0x00000006 1983bf215546Sopenharmony_ci 1984bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_1F(i0) (0x00001e40 + 0x4*(i0)) 1985bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_1F__ESIZE 0x00000004 1986bf215546Sopenharmony_ci#define NV30_3D_VTX_ATTR_1F__LEN 0x00000010 1987bf215546Sopenharmony_ci 1988bf215546Sopenharmony_ci#define NV30_3D_ENGINE 0x00001e94 1989bf215546Sopenharmony_ci#define NV30_3D_ENGINE_FP 0x00000001 1990bf215546Sopenharmony_ci#define NV30_3D_ENGINE_VP 0x00000002 1991bf215546Sopenharmony_ci#define NV30_3D_ENGINE_FIXED 0x00000004 1992bf215546Sopenharmony_ci 1993bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_FROM_ID 0x00001e9c 1994bf215546Sopenharmony_ci 1995bf215546Sopenharmony_ci#define NV30_3D_VP_START_FROM_ID 0x00001ea0 1996bf215546Sopenharmony_ci 1997bf215546Sopenharmony_ci#define NV30_3D_POINT_PARAMETERS(i0) (0x00001ec0 + 0x4*(i0)) 1998bf215546Sopenharmony_ci#define NV30_3D_POINT_PARAMETERS__ESIZE 0x00000004 1999bf215546Sopenharmony_ci#define NV30_3D_POINT_PARAMETERS__LEN 0x00000008 2000bf215546Sopenharmony_ci 2001bf215546Sopenharmony_ci#define NV30_3D_POINT_SIZE 0x00001ee0 2002bf215546Sopenharmony_ci 2003bf215546Sopenharmony_ci#define NV30_3D_POINT_PARAMETERS_ENABLE 0x00001ee4 2004bf215546Sopenharmony_ci 2005bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE 0x00001ee8 2006bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_ENABLE 0x00000001 2007bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_R_MODE__MASK 0x00000006 2008bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_R_MODE__SHIFT 1 2009bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_R_MODE_ZERO 0x00000000 2010bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_R_MODE_R 0x00000002 2011bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_R_MODE_S 0x00000004 2012bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_0 0x00000100 2013bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_1 0x00000200 2014bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_2 0x00000400 2015bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_3 0x00000800 2016bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_4 0x00001000 2017bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_5 0x00002000 2018bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_6 0x00004000 2019bf215546Sopenharmony_ci#define NV30_3D_POINT_SPRITE_COORD_REPLACE_7 0x00008000 2020bf215546Sopenharmony_ci 2021bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST_ID 0x00001efc 2022bf215546Sopenharmony_ci 2023bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST(i0) (0x00001f00 + 0x10*(i0)) 2024bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST__ESIZE 0x00000010 2025bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST__LEN 0x00000004 2026bf215546Sopenharmony_ci 2027bf215546Sopenharmony_ci 2028bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST_X(i0) (0x00001f00 + 0x10*(i0)) 2029bf215546Sopenharmony_ci 2030bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST_Y(i0) (0x00001f04 + 0x10*(i0)) 2031bf215546Sopenharmony_ci 2032bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST_Z(i0) (0x00001f08 + 0x10*(i0)) 2033bf215546Sopenharmony_ci 2034bf215546Sopenharmony_ci#define NV30_3D_VP_UPLOAD_CONST_W(i0) (0x00001f0c + 0x10*(i0)) 2035bf215546Sopenharmony_ci 2036bf215546Sopenharmony_ci#define NV30_3D_UNK1F80(i0) (0x00001f80 + 0x4*(i0)) 2037bf215546Sopenharmony_ci#define NV30_3D_UNK1F80__ESIZE 0x00000004 2038bf215546Sopenharmony_ci#define NV30_3D_UNK1F80__LEN 0x00000010 2039bf215546Sopenharmony_ci 2040bf215546Sopenharmony_ci#define NV40_3D_TEX_CACHE_CTL 0x00001fd8 2041bf215546Sopenharmony_ci 2042bf215546Sopenharmony_ci#define NV40_3D_VP_ATTRIB_EN 0x00001ff0 2043bf215546Sopenharmony_ci 2044bf215546Sopenharmony_ci#define NV40_3D_VP_RESULT_EN 0x00001ff4 2045bf215546Sopenharmony_ci 2046bf215546Sopenharmony_ci 2047bf215546Sopenharmony_ci#endif /* _HOME_SKEGGSB_GIT_ENVYTOOLS_RNNDB_NV30_40_3D_XML */ 2048