openmv/drivers/dave2d/docs/files/code/dave_blit-c.html
iabdalkader daf2bb30da misc: Restructure repo.
Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
2025-04-13 08:28:34 +02:00

66 lines
31 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Blit Functions</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version 1.52 -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Blit_Functions"></a>Blit Functions</h1><div class=CBody><p>BLock Image Transfer operations</p><p>Blit&rsquo;s are special <a href="dave_render-c.html#Rendering_Functions" class=LSection id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">Rendering Functions</a> to copy one rectangle part of the video memory into another part of the video memory.&nbsp; The operation could be performed using texturemapping and boxrendering as well, but the blit interface avoids setting and restoring all necessary context states.</p><h4 class=CHeading>Texel-to-pixel mapping</h4><p>Conceptually textures are seen the same way as a raster display: Each texel is defined at the exact center of a grid cell.&nbsp; The driver maps the left border of the left-most texel to the left border of the left-most destination pixel and the right border of the right-most texel to the right border of the right-most destination pixel.</p><h4 class=CHeading>Example</h4><p>Find below an example of resizing a source texture with filtering enabled.</p><ul><li>A source image (3x1) is stretched to a destination rectangle (5x1).</li><li>A source image (5x1) is downsized to a destination rectangle (3x1).</li></ul><img src="../doc/images/blit_mapping.png" width="417" height="213"><p>Please not that the texel-to-pixel mapping implementation has changed for the magnification case since D2 Driver version 3.10.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Blit_Functions" >Blit Functions</a></td><td class=SDescription>BLock Image Transfer operations</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#BLIT_Attributes_Writes" >BLIT Attributes Writes</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#d2_setblitsrc" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">d2_setblitsrc</a></td><td class=SDescription>Specify the source for blit operation.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#BLIT_Rendering_Functions" >BLIT Rendering Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#d2_blitcopy" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">d2_blitcopy</a></td><td class=SDescription>Copy rectangle part of the source into destination.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="BLIT_Attributes_Writes"></a>BLIT Attributes Writes</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="d2_setblitsrc"></a>d2_setblitsrc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_setblitsrc(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>ptr,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>pitch,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>width,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>height,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>format</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Specify the source for blit operation.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handle</td><td class=CDLDescription>device pointer (see: <a href="dave_driver-c.html#d2_opendevice" class=LFunction id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">d2_opendevice</a>)</td></tr><tr><td class=CDLEntry>ptr</td><td class=CDLDescription>address of the top left texel (coordinate 0,0)</td></tr><tr><td class=CDLEntry>pitch</td><td class=CDLDescription>number of pixels (<b>not bytes</b>) per scanline</td></tr><tr><td class=CDLEntry>width</td><td class=CDLDescription>width of bitmap in pixels (equal or less than pitch)</td></tr><tr><td class=CDLEntry>height</td><td class=CDLDescription>height of bitmap in pixels</td></tr><tr><td class=CDLEntry>format</td><td class=CDLDescription>pixel encoding type (bitmap format)</td></tr></table><h4 class=CHeading>bitmap formats</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>d2_mode_alpha8</td><td class=CDLDescription>monochrome 8bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_alpha4</td><td class=CDLDescription>monochrome 4bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_alpha2</td><td class=CDLDescription>monochrome 2bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_alpha1</td><td class=CDLDescription>monochrome 1bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgb565</td><td class=CDLDescription>colored 16bit per pixel (alpha is blue)</td></tr><tr><td class=CDLEntry>d2_mode_argb8888</td><td class=CDLDescription>colored 32bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgba8888</td><td class=CDLDescription>colored 32bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgb888</td><td class=CDLDescription>(same as d2_mode_argb8888, in case of RLE textures 24bit pixel are decoded to 32bit)</td></tr><tr><td class=CDLEntry>d2_mode_argb4444</td><td class=CDLDescription>colored 16bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgba4444</td><td class=CDLDescription>colored 16bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgb444</td><td class=CDLDescription>(same as d2_mode_argb4444)</td></tr><tr><td class=CDLEntry>d2_mode_argb1555</td><td class=CDLDescription>colored 16bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgba5551</td><td class=CDLDescription>colored 16bit per pixel</td></tr><tr><td class=CDLEntry>d2_mode_rgb555</td><td class=CDLDescription>(same as d2_mode_argb1555)</td></tr><tr><td class=CDLEntry>d2_mode_ai44</td><td class=CDLDescription>colored, palletized 8bit per pixel, (4 bit alpha, 4 bit indexed RGB: see <a href="dave_texture-c.html#d2_settexclut" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">d2_settexclut</a>)</td></tr><tr><td class=CDLEntry>d2_mode_i8</td><td class=CDLDescription>colored, palletized 8bit per pixel (palette is used if d2_mode_clut is also set)</td></tr><tr><td class=CDLEntry>d2_mode_i4</td><td class=CDLDescription>colored, palletized 4bit per pixel (palette is used if d2_mode_clut is also set)</td></tr><tr><td class=CDLEntry>d2_mode_i2</td><td class=CDLDescription>colored, palletized 2bit per pixel (palette is used if d2_mode_clut is also set)</td></tr><tr><td class=CDLEntry>d2_mode_i1</td><td class=CDLDescription>colored, palletized 1bit per pixel (palette is used if d2_mode_clut is also set)</td></tr></table><p>additional flags (can be combined with all above formats) :</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>d2_mode_rle</td><td class=CDLDescription>Enables the RLE unit (available if the feature bit D2FB_RLEUNIT is set (see <a href="dave_driver-c.html#d2_getrevisionhw" class=LFunction id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">d2_getrevisionhw</a>)).</td></tr><tr><td class=CDLEntry>d2_mode_clut</td><td class=CDLDescription>Enables the color look up table (for d2_mode_i8 through d2_mode_i1) (see <a href="dave_texture-c.html#d2_settexclut" class=LFunction id=link7 onMouseOver="ShowTip(event, 'tt5', 'link7')" onMouseOut="HideTip('tt5')">d2_settexclut</a>).</td></tr></table><p>Modes d2_mode_rgb888, d2_mode_rgb444 and d2_mode_rgb555 can be used as well.&nbsp; Alpha information has to be ignored by not selecting the flag d2_bf_usealpha when calling <a href="#d2_blitcopy" class=LFunction id=link8 onMouseOver="ShowTip(event, 'tt2', 'link8')" onMouseOut="HideTip('tt2')">d2_blitcopy</a>.</p><p>If the CLUT is not enabled with an indexed color format (d2_mode_i8 to d2_mode_i1), the index is written directly to the framebuffer.&nbsp; The index can be combined with the offset, see <a href="dave_texture-c.html#d2_settexclut_offset" class=LFunction id=link9 onMouseOver="ShowTip(event, 'tt7', 'link9')" onMouseOut="HideTip('tt7')">d2_settexclut_offset</a>.</p><p>In case of d2_mode_alpha4 to d2_mode_alpha1 bits are MSB aligned and replicated to the lower bits of the 8 bit format of the internal A, R, G and B channels.</p><h4 class=CHeading>returns</h4><p>errorcode (D2_OK if successful) see list of <a href="../inc/dave_errorcodes-h.html#Errorcodes" class=LSection id=link10 onMouseOver="ShowTip(event, 'tt8', 'link10')" onMouseOut="HideTip('tt8')">Errorcodes</a> for details</p><h4 class=CHeading>note</h4><p>width can be max 2048 pixel, height can be max 1024 pixel.</p><p>Please notice that a cache flush using &lsquo;d1_cacheblockflush&rsquo; might be necessary if memory contents were changed before!&nbsp; To avoid problems you can use the d1 driver memory management functions &lsquo;d1_copytovidmem&rsquo; or &lsquo;d1_copyfromvidmem&rsquo;, which implicitly do a cache flush.</p></div></div></div>
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="BLIT_Rendering_Functions"></a>BLIT Rendering Functions</h3></div></div>
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="d2_blitcopy"></a>d2_blitcopy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_blitcopy(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcwidth,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcheight,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_blitpos&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcx,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_blitpos&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcy,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_width&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstwidth,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_width&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstheight,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_point&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstx,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_point&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dsty,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Copy rectangle part of the source into destination.</p><p>The source is set prior to the blit using <a href="#d2_setblitsrc" class=LFunction id=link11 onMouseOver="ShowTip(event, 'tt1', 'link11')" onMouseOut="HideTip('tt1')">d2_setblitsrc</a> and the destination will be part of the framebuffer (see: <a href="dave_viewport-c.html#d2_framebuffer" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt9', 'link12')" onMouseOut="HideTip('tt9')">d2_framebuffer</a>) just as with any normal rendering function.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handle</td><td class=CDLDescription>device pointer (see: <a href="dave_driver-c.html#d2_opendevice" class=LFunction id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">d2_opendevice</a>)</td></tr><tr><td class=CDLEntry>srcwidth, srcheight</td><td class=CDLDescription>size of source rectangle in pixels (integer)</td></tr><tr><td class=CDLEntry>srcx,srcy</td><td class=CDLDescription>position in source bitmap (integer)</td></tr><tr><td class=CDLEntry>dstwidth, dstheight</td><td class=CDLDescription>size of destination rectangle in pixels (fixedpoint)</td></tr><tr><td class=CDLEntry>dstx,dsty</td><td class=CDLDescription>position in destination bitmap (fixedpoint)</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>any combination of blit flag bits (see below)</td></tr></table><h4 class=CHeading>blit flag bits</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>d2_bf_filteru</td><td class=CDLDescription>apply linear filter on U axis (x-direction)</td></tr><tr><td class=CDLEntry>d2_bf_filterv</td><td class=CDLDescription>apply linear filter in V axis (y-direction)</td></tr><tr><td class=CDLEntry>d2_bf_filter</td><td class=CDLDescription>apply bilinear filter (both axis)</td></tr><tr><td class=CDLEntry>d2_bf_wrapu</td><td class=CDLDescription>wrap bitmap on U axis (x-direction)</td></tr><tr><td class=CDLEntry>d2_bf_wrapv</td><td class=CDLDescription>wrap bitmap on V axis (y-direction)</td></tr><tr><td class=CDLEntry>d2_bf_wrap</td><td class=CDLDescription>wrap bitmap on U and V axis (x/y-direction)</td></tr><tr><td class=CDLEntry>d2_bf_mirroru</td><td class=CDLDescription>mirror bitmap in U axis (x-direction)</td></tr><tr><td class=CDLEntry>d2_bf_mirrorv</td><td class=CDLDescription>mirror bitmap in V axis (y-direction)</td></tr><tr><td class=CDLEntry>d2_bf_colorize</td><td class=CDLDescription>bitmap colors are multiplied by color register index 0 (see: <a href="dave_context-c.html#d2_setcolor" class=LFunction id=link14 onMouseOver="ShowTip(event, 'tt10', 'link14')" onMouseOut="HideTip('tt10')">d2_setcolor</a>)</td></tr><tr><td class=CDLEntry>d2_bf_colorize2</td><td class=CDLDescription>bitmap colors are interpolated between color register index 0 and 1 (see: <a href="dave_context-c.html#d2_setcolor" class=LFunction id=link15 onMouseOver="ShowTip(event, 'tt10', 'link15')" onMouseOut="HideTip('tt10')">d2_setcolor</a>)</td></tr><tr><td class=CDLEntry>d2_bf_usealpha</td><td class=CDLDescription>alpha value from bitmap is used</td></tr><tr><td class=CDLEntry>d2_bf_invertalpha</td><td class=CDLDescription>alpha value from bitmap is inverted before use (requires usealpha)</td></tr><tr><td class=CDLEntry>d2_bf_no_blitctxbackup</td><td class=CDLDescription>for this blit don&rsquo;t backup context data for better performance; previous texture modes get lost and must be set again</td></tr></table><blockquote><pre class="prettyprint">blitsrc.src:+-------------------------------------+
| blitsrc.width |
|&lt;----------blitsrc.pitch------------&gt;|
| |
| srcx/y:+-----------------+ ^
| | | |
| |&lt;---srcwidth----&gt;| |
| | | | srcheight
| | | |
| +-------\\--------+ v
| \\
\\
Display: +--------------------\\----------------------+
| \\ |
| dstx/y:+-----\\-------------+ ^
| | | |
| |&lt;------dstwidth----&gt;| |
| | | | dstheight
| | | |
| | | |
| +--------------------+ v</pre></blockquote><p><a href="#d2_setblitsrc" class=LFunction id=link16 onMouseOver="ShowTip(event, 'tt1', 'link16')" onMouseOut="HideTip('tt1')">d2_setblitsrc</a> sets parameters for the texture buffer.&nbsp; <a href="#d2_blitcopy" class=LFunction id=link17 onMouseOver="ShowTip(event, 'tt2', 'link17')" onMouseOut="HideTip('tt2')">d2_blitcopy</a> sets parameters for an area of the texture buffer and an area of the framebuffer where the texture area will be mapped to.&nbsp; Both areas don&rsquo;t need to be the same size.</p><h4 class=CHeading>note</h4><p>Wrapping will work with source bitmap dimensions that are integer powers of two only (2,4,8,16,32,..)!</p><p>texture pitch can be &gt;= 2048 if (srcheight-1) * pitch &lt; 2048*1024 and if srcheight is multiple of dstheight</p><p>d2_bf_filterv cannot be used if the pitch of the texture is &gt;= 2048</p><h4 class=CHeading>returns</h4><p>errorcode (D2_OK if successfull) see list of <a href="../inc/dave_errorcodes-h.html#Errorcodes" class=LSection id=link18 onMouseOver="ShowTip(event, 'tt8', 'link18')" onMouseOut="HideTip('tt8')">Errorcodes</a> for details</p></div></div></div>
</div><!--Content-->
<div id=Footer>&copy; 2016 by TES Electronic Solutions&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
<div id=Menu><div class=MEntry><div class=MFile><a href="../doc/overview-txt.html">Driver Overview</a></div></div><div class=MEntry><div class=MFile><a href="../doc/limitations-txt.html">Limitations</a></div></div><div class=MEntry><div class=MFile><a href="../inc/dave_driver-h.html">Basic Types</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">API</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="dave_driver-c.html">Basic Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_viewport-c.html">Viewport Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_context-c.html">Context Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_texture-c.html">Texture Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_render-c.html">Rendering Functions</a></div></div><div class=MEntry><div class=MFile id=MSelected>Blit Functions</div></div><div class=MEntry><div class=MFile><a href="dave_rbuffer-c.html">Render Buffers</a></div></div><div class=MEntry><div class=MFile><a href="dave_perfcount-c.html">Profiling</a></div></div><div class=MEntry><div class=MFile><a href="dave_utility-c.html">Utility Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_64bitoperation-c.html">Functions for 64bit operations</a></div></div><div class=MEntry><div class=MFile><a href="dave_dlist-c.html">Dlist Functions</a></div></div><div class=MEntry><div class=MFile><a href="../inc/dave_math-h.html">Math Functions</a></div></div><div class=MEntry><div class=MFile><a href="../inc/dave_errorcodes-h.html">Errorcodes</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Index</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Types.html">Types</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Functions">Functions</option><option value="Types">Types</option></select></div></div><!--Menu-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_setblitsrc(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>ptr,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>pitch,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>width,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>height,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>format</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Specify the source for blit operation.</div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_blitcopy(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcwidth,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcheight,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_blitpos&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcx,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_blitpos&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>srcy,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_width&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstwidth,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_width&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstheight,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_point&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dstx,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_point&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>dsty,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Copy rectangle part of the source into destination.</div></div><div class=CToolTip id="tt3"><div class=CSection>There is a rendering function for each supported geometric shape.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_device * d2_opendevice(</td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Create a new device handle.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_settexclut(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_color&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>clut</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Set texture colour palette pointer.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_u32 d2_getrevisionhw(</td><td class="PTypePrefix prettyprint " nowrap>const&nbsp;</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Query hw revisionID. </div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_settexclut_offset(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>offset</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Set index offset for indexed texture formats.</div></div><div class=CToolTip id="tt8"><div class=CSection>List of all dave driver errorcodes.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_framebuffer(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>ptr,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>pitch,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>width,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>height,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>format</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Specify the rendering target.</div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_setcolor(</td><td class="PType prettyprint " nowrap>d2_device&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>index,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_color&nbsp;</td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>color</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Set color registers.</div></div><!--END_ND_TOOLTIPS-->
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>